Brushed motor modelauto

Ik wil een schakeling bouwen om remlichten te hebben op een modelauto met brushed motor.

Ik heb een ATtiny 45 geprogrammeerd welke schakelt op de pulsbreedte van de ontvanger. Het inschakelmoment is regelbaar via een potmeter welke door de controller uitgelezen wordt. Deze schakeling zit al in een auto en werkt naar behoren.

Het remlicht werkt echter ook als ik achteruit rijd.

Voor een andere auto wil ik nu ook remlichten maken en zorgen dat deze niet branden tijdens het achteruit rijden.

Het signaal van de ontvanger alleen is hiervoor niet genoeg. "Achteruit" kan door de ESC (electronic speed controller) vertaald worden naar een rem- of achteruitrijfunctie.

Om dit probleem te omzeilen wil ik de pulstrein naar de motor uitlezen op de motordraden.

Aannames:
- bij remmen krijgt de motor geen PWM voeding vanuit de ESC.
- bij remmen op de motor verandert de polariteit van de motor NIET
- bij achteruit rijden verandert de polariteit van de motor wel, de plus en de min zijn door de ESC omgedraaid (H-brug).

Hiervan wil ik gebruik maken m.b.v. de volgende schakeling:
(de getekende plus en min bij de motor zijn de plus en min bij vooruit rijden)

http://i60.tinypic.com/15qubev.jpg

Als de motor vooruit loopt dan gebeurt er niets omdat een diode de stroom blokkeert. Achter de diode zit een weerstand om de stroom door de diode te beperken en om als pull down weerstand te dienen voor de optocoupler. Deze krijgt een PWM voor zijn kiezen.

Aan de transistorzijde van de optocoupler zit een weerstand om de stroom de deze transistor te beperken. Parallel hieraan staat een condensator om een comperator een signaal te geven dat niet steeds nul wordt maar zolang er achteruit gereden wordt groter is dan nul zodat de ATtiny een constante input van 5V (1) heeft.

(EDIT: denk trouwens dat er nog een weerstand in serie met de transistor van de coupler moet staan omdat de condensator hem anders te snel "leeg" trekt)

De potmeter zit er om ook hier het inschakelmoment te kunnen afstellen en de ledjes bovenaan zijn de daadwerkelijke remlichten.

Als er geremd wordt dan blijft (hopelijk) de min zoals getekend min en blijft de optocoupler ingang op de chip laag waardoor er bij een bepaalde pulsbreedte remlicht gevoerd mag worden.

Wordt er achteruit gereden dan is het signaal van de optocoupler 1 en mag er ondanks een remstand van de zender geen remlicht gevoerd worden omdat er dan blijkbaar achteruit gereden wordt.

Zijn mijn aannames juist en zou dit schema kunnen werken?

Alvast bedankt voor de reacties.

back to the drawing breadboard

Je aannames zijn niet helemaal correct; tijdens het remmen zal de motor juist wel een PWM signaal krijgen, met een pulsbreedte die kleiner is dan bij het aandrijven, zodat de motorstroom negatief wordt, en je dus gaat remmen. Zonder PWM signaal zou je ofwel helemaal niet kunnen remmen (motor stroomloos), of alleen maximaal remmen, door de motor helemaal kort te sluiten. Als je beheerst wilt remmen, moet er nog steeds een PWM signaal zijn.

De gemiddelde spanning over de motor is bij het vooruit rijden positief en bij het achteruit rijden negatief, maar ook bij het vooruit rijden zul je in een deel van de PWM cyclus een negatieve spanning zien. Waarschijnlijk wordt deze niet groter dan 0.5-1V (spanningsval over een diode), dus daar zou de optocoupler niet op moeten reageren. Als dat wel het geval blijkt, kun je altijd nog een LED of zenerdiode in serie zetten, of besluiten om de spanning over de motor eerst door een low-pass filter te halen, en dan pas aan de optocoupler te voeren.

Een manager is iemand die denkt dat negen vrouwen in één maand een kind kunnen maken
Arco

Special Member

Bij goedkopere regelaars zie je toch vaak dat er geremd wordt door de motor kort te sluiten. (direct of via een weerstand voor meer geleidelijke stilstand)
Ik zou dat voor de zekerheid maar eens opmeten.

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com

Waarom is mijn verhaaltje verplaatst van algemeen naar hier?

Waar kan ik de CO definitie van robotica vinden?

M.i. is dit gewoon voor 95% analoge elektronica.

back to the drawing breadboard
Henry S.

Moderator

Motor, PWM, twee punten die hier robotica (in de breedste zin van het woord) betekenen.

73's de PA2HS - ik ben een radiohead, De 2019 CO labvoeding.

Overigens een kleine toevoeging: dergelijke motorregeling mag je NIET vanuit een gewone (lab)voeding voeden; deze kunnen immers geen stroom opnemen, en als het ding energie terug gaat leveren, danwel door actief te remmen, of op het moment dat hij stopt met remmen en de magnetisch opgeslagen energie terug geleverd wordt, loopt de spanning zeer sterk op met vaak een defecte regelaar en/of voeding tot gevolg. Die laatste "load dump" is wel op te vangen met voldoende buffercapaciteit, maar het is niet eenvoudig om te bepalen wat "voldoende" in dat geval is.

Verder denk ik dat het geheel best zal werken. In plaats van die comparator, weerstanden en condensator kun je de optocoupler natuurlijk ook direct aan de microcontroller hangen, en met de input capture of pulse counter functie (als je die nog beschikbaar hebt) bepalen hoe lang het geleden is dat de optocoupler voor het laatst in geleiding is geweest. Eventueel kun je nog een kleine elco aan de "primaire" kant van de optocoupler zetten, zodat hij gedurende de hele PWM periode aan blijft als de spanning even positief is geweest, dus min of meer een peak detector.

Een manager is iemand die denkt dat negen vrouwen in één maand een kind kunnen maken

Ik heb de laatste paar dagen een motor-controller zitten maken/testen. Inderdaad actief remmen. Voorzichtig omhoog naar 20kRPM en dan "stop/brake" en dan staat ie plots stil! voorwaarts stroompieken tot 3A waar de labvoeding ingrijpt, bij remmen -10A!

De labvoeding hoor ik dan klikken dat ie op z'n hogere spanningsbereik schakelt. Dat gedeelte meet dus de uitgangsspanning, niet de ingestelde spanning. Dat klopt ook wel, hij clickt ook door als ie in stroombegrenzing een /lagere/ spanning moet leveren.

Anyway, de energie die ik zo teruglever moet binnen de perken blijven. De uitgangscondensatoren van de voeding (+controller) moeten voordat ik de 30V max van de voeding bereik alle energie uit de motor hebben opgenomen. Bij mij ging het de eerste paar keer goed en ik ben het maar blijven doen, hoewel ik de energiebalans niet heb nagerekend.

Nu heb ik er een LIPO als buffer tussen, dus kan ik grotere stromen testen, en zonder problemen terugleveren. (alhoewel, de lipo zal officieel wel weer 4.4A max laadstroom hebben... wederom "buiten spec" als je 10A gaat terugleveren.... Maar wederom geldt die max laadstroom? Dat is dat de boel niet te warm wordt tijdens het laden. Even 10A kan ie veel beter hebben dan de labvoeding!)

P.S. Ik test dus nu met motoren zonder "belasting" dus met alleen energie in de rotor-inertie!

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/

Ik heb een losse setup van een modelauto om te testen beschikbaar dus over de energieteruglevering maak ik me geen zorgen.
Maar toch een goede tip voor het geval ik het spul ooit aan een voeding had willen hangen, daar zou ik niet aan gedacht hebben en misschien de voeding om zeep geholpen hebben.

De Lipo's die ik heb kunnen 100A continu leveren (wat nog bescheiden is tegenwoordig maar voor mij meer dan voldoende, ik probeer op een baan snelle ronden te rijden dus de auto mag toch niet te snel zijn anders niet meer te controleren) Heb overigens geen idee wat mijn auto trekt.

Wil alleen nog iets in elkaar zetten om zelf alles te kunnen testen. Moet een schijfje op de motoras maken om wat traagheid te geven zodat ik tijd heb om tijdens het remmen bijv. de polariteit over de motor te meten, anders staat het ding direct stil. Heb nog een oud motortje over hiervoor.

Ga nu eerst voor de simpele oplossing en dan is dit gewoon een elektronisch experiment.

back to the drawing breadboard