Goedemorgen.
Voor mijn neefjes heb ik Lego treinen gekocht met de "nieuwe" 88009 Powered up hub. Deze zijn via een afstandsbediening aan te sturen maar ook via de telefoon app.
Nu ben ik zelf programmeur en kan ik via mijn eigen gemaakte app de treinen bedienen (iets handigere functionaliteit vind ik dan de originele Lego app).
Aangezien ik zelf nogal wat 3D print en Lego niet bepaald heel erg goedkoop is print ik zelf bepaalde onderdelen (rails, onderstellen wagons etc).
Nu zou ik ook graag meerdere locomotieven maken (Heb gelukkig nogal wat Lego steentjes).
Het enige "probleem" is dat zo'n Hub minimaal €50 per stuk kost. Om even 4 locs bij te bouwen ben ik dus behalve de motortjes, blokjes etc al €200 kwijt voor de hubs.
Nu zie ik op internet dat deze hub 6 uitgangen heeft (https://www.philohome.com/wedo2reverse/connect.htm)
Waarvan 2 PMW (5v), 2 voeding (GND + 3.3V) en 2 wederom naar VCC en GND (ID1, ID2).
Omdat ik "kan" programmeren en een klein beetje weet hoe ik printplaten kan maken heb ik het idee deze hub zelf te maken via bijvoorbeeld een ESP8266 (heeft bluetooth).
Nu is de vraag. Alles aan de ESP8266 is 3.3V. De PWM signalen naar de treinmotor moeten dus 5V PWM zijn. Nu zal dit vast kunnen maar mijn vraag is of mijn project te ambitieus is of dat dit hardwarematig redelijk goed te doen moet zijn.
In de originele Lego hub moeten 6x AAA batterijen (denk 9V). Dit is niet heel handig aangezien ik behoorlijk wat batterijen nodig heb voor 4 / 6 locs.
Nu dacht ik er zelf aan 1 of 2 x 18650 batterijen te gebruiken maar dit is natuurlijk (enkel) maar 3.7v.
Kan ik dit gemakkelijk boosten naar 5v of blijft van capaciteit dan weinig over, of moet ik 2x 18650 in serie zetten en terug brengen naar 5V en 3.3V
Ik ontvang graag tips of ideeën hoe ik dit het beste kan aanpakken, of dat ik het beter gelijk kan stoppen.
Alvast bedankt!
PS: Elk idee of tip is welkom
benleentje
Golden Member
Een 3,3V PWM signaal is makkelijk om te zetten naar 5V of andere spanningenvia 1 enkel transistor of FET. Nadeel is dat het signaal dan geïnverteerd is, dus hoog is nu ineens laag. Maar in de software szo aan te passen dat het eind signaal weer goed is.

Hier een principe schema, verder niet gecontroleerd of deze fet ook goed werkt met maar 3,3V op de gate. De meeste fet werken goed op 10V, een enkel werkt goed op 5V en maar heel weinig werken goed op 3,3V.
Nu wel even naar gekeken en deze fet werkt heel goed en werk al goed 2,25V op de gate. Het is wel een heel klein SMD ding. En geschikt tot max 4,2 maar meer praktisch tot ca 2A
Nu dacht ik er zelf aan 1 of 2 x 18650 batterijen te gebruiken maar dit is natuurlijk (enkel) maar 3.7v.
Kan ik dit gemakkelijk boosten naar 5v of blijft van capaciteit dan weinig over, of moet ik 2x 18650 in serie zetten en terug brengen naar 5V en 3.3V
Met 1x 3,7V kan je dan beter eerst naar 5V gaan dan van daaruit weer naar 3,3V. Met 2x 3,7 in serie kan je dan direct 5V en 3,3V maken en de stroom uit de in serie geschakelde accu is dan net wat lager en net een heel klein beetje minder verlies. 2 in serie geeft dan net iets meer capaciteit vanwege de net iets kleinere verliezen. Maar zo weinig dat je het niet eens merk
.
Belangrijk bij het werken met dat soort batterijen is ze goed laden en zorgen voor een goede BMS.
[Bericht gewijzigd door benleentje op (18%)]
Bedankt voor de reactie! Ik heb volgens mij nog wat mosfets liggen dus kan eens kijken of die ook werken.
Je hebt een diode(?) parallel aan de motor. Deze moet? En hoe bepaal ik welke ik hiervoor nodig heb?
benleentje
Golden Member
IK zou van de mosfets eerst de datsheet erbij zoeken en dan kijken naar Vgsth. Dat is de drempel waarbij een FET in minimale in geleiding gaat. Als die bv 3,5V is dan werkt die fet zeker niet op 3,3V. Meestal moet de Vgs behoorlijk onder je gewenste schakel niveau zitten. In de datasheet staan dan ook grafieken bij welke spanning op Vgs er welke stroom kan lopen. Als die grafieken bv op 4,5V beginnen dan werkt het zeker niet op een lagere spanning.
Je hebt een diode(?) parallel aan de motor. Deze moet?
IK zei het is een principe schema. Maar zodra je iets van een spoel, relais speol of motor hebt dan moet daar een diode. De spoel wil bij uitschakelen nog juist even doorgaan. Een spoel kan net zoals een condensator energie opslaan. Een spoel doet dat in zijn magnetische veld. Als je de spanning van de spoel afhaalt dan wil die spoel zijn energie kwijt en kan daarbij best hoge spanning pieken generen, denk bv aan een bobine. Die spanning komt over de FEt te staan en die slat bij een te hoge spanning gewoon door. Deze fet kan bv maar 20V aan en zal bij ongeveer 25 - 30v wel een keer doorslaan. Op het moment dat de FET uitschakelt kan de spoel de stroom door de diode sturen.
Als richtwaarde voor de stroom door de diode word de motor stroom genomen. Als daar bv 2A loopt dan moet de diode ook minimaal 2A zijn.
Is de hub enkel voor communicatie en pwm sturing of moet deze ook de spanning van de motor leveren en daarom misschien 9Vdc nodig ?
Dat moet ik eens doormeten. Het schema van de linkt lijkt aan te tonen dat er alleen 5v pwm signaal en 3.3v voedingssignaal nodig is, maar de motor zelf krijgt nergens anders 9v van. Dus of de motor is 3.3v, of iets klopt niet in het schema.
In de originele hub zitten wel 6 batterijen dus 9v zou mogelijk kunnen zijn
Paulinha_B
Honourable Member
"Ik spreek Spaans tegen God, Italiaans tegen de vrouwen, Frans tegen mannen en Duits tegen mijn paard." Dixit Carlos V, Römisch-deutscher Kaiser
Op 13 januari 2023 17:14:10 schreef bbuster:
Bedankt voor de reactie! Ik heb volgens mij nog wat mosfets liggen dus kan eens kijken of die ook werken.Je hebt een diode(?) parallel aan de motor. Deze moet? En hoe bepaal ik welke ik hiervoor nodig heb?
Ja, moet echt. Exacte dimensionering is niet zo eenvoudig om uit te rekenen, het is veelal handiger om er een ruime slag door te slaan. Begin bv. maar eens met een 1N5403, die is gespec't voor 3 amp, dat is al heel wat.
Nu kun je ipv een motor de uitgang ook gebruiken voor bv een led. Zou deze diode niet in de treinmotor zitten?
Of kan een extra diode nooit kwaad?
Een nadeel, je kunt niet achteruit.
Dan moet je of een H_brug maken, of je moet je motor ompolen via twee relais. Dat kan wel in combinatie met één mosfet.
Dat wilde ik al vragen ja, kan de originele motor in twee richtingen draaien? Het kon toch zomaar eens dat er wat meer elektronica in die hub zit.
benleentje
Golden Member
Op 13 januari 2023 18:17:50 schreef bbuster:
Nu kun je ipv een motor de uitgang ook gebruiken voor bv een led. Zou deze diode niet in de treinmotor zitten?
Of kan een extra diode nooit kwaad?
Nogmaals het is een principe schema. Als deze motor al met PWM gestuurd word zal daar best wel ergens een diode zitten.
Maar aangezien je zelf aan het nabouwen bent kan het ook zijn dat je die zelf moet toevegen. In een motor zelf zit nooit een diode die zit dan altijd ergens extern.
Zo een diode dimensioneren is helemaal niet moeilijk gewoon de nominale motor stroom + beetje extra aanhouden.
Ik denk (maar weet het absoluut niet zeker), dat de treinmotor (lego 88011) meer logica zit dan alleen de motor. De uitgang van de hub is namelijk pmw (2x per kanaal). Op die uitgang kunnen sensoren, leds of motoren aangesloten worden. Wat ik verwacht is dat de treinmotor zelf logica heeft om dat pwm signaal te gebruiken om de motor aan te sturen maar zeker weten doe ik dat niet.
De treinmotor kan idd 2 richtingen uit
Misschien kun je zoiets maken, of een gedeelte gebruiken. Dan kun je voor de controller een ESP..... gebruiken in plaats van een PIC.
benleentje
Golden Member
meer logica zit dan alleen de motor.
Dat zou zomaar kunnen. Toevallig een link naar zo een motor.
Het zou bv zomaar kunnen dat de motor dan ook op 3,3V PWM werkt.
Voor mijn principe schema kan dan alles boven de FET vervallen en komt er dan een weerstand van 330 ohm die aan 1 kant aan de 5V hangt en de andere kant aan de bovenkant van de FET.
Nogmaals de FET inverteert het signaal dus in je software moet je dan precies andersom aansturen.
[Bericht gewijzigd door benleentje op (24%)]
Het is deze https://www.lego.com/nl-nl/product/train-motor-88011
Maar ik vind er geen info over. Enige info wat ik vind is over de hub maar geen idee of dat klopt:
https://www.philohome.com/wedo2reverse/connect.htm
Op 13 januari 2023 19:55:44 schreef benleentje:
[...]Nogmaals de FET inverteert het signaal dus in je software moet je dan precies andersom aansturen.
Volgens mij zou dat niet eens uit maken als het pwm is. Ipv de ene kant gaat de trein de andere kant op, maar de trein heeft geen voor of achterkant. Dus welke kant die opgaat maakt weinig uit. Maar kan me vergissen
Ah, hier wel meer info maar in tegenstelling tot bovenstaande info lijkt de vcc hier wel 9v te zijn:
https://www.eurobricks.com/forum/index.php?/forums/topic/162288-powere…
Update:
https://www.eurobricks.com/forum/index.php?/forums/topic/162288-powere…
Hier geven ze aan dat vcc toch 3.3v moet zijn
[Bericht gewijzigd door bbuster op (11%)]
Kijkende naar die hub ... dan zit daar al een motordriver op:
https://www.philohome.com/wedo2reverse/cont.htm
Kan het zijn dat motor1 en motor2 gewoon de aansluitdraden van de motor zijn?
-edit-
Uit je eigen link:
Dus er zit letterlijk niets in die motor behalve een C-tje, een zekering en een paar doorverbonden ID pinnen.
Die VCC is dus helemaal niet interessant, want die wordt niet gebruikt voor de motor zelf, de motordriver zit in de hub.
Ik vermoed dat het gewoon een 9V DC motor is.
Je kunt een h-brug gebruiken van een paar cent om die te sturen:
https://electropeak.com/learn/interfacing-mx1508-motor-driver-module-w…
Bedankt voor de info. Dan ga ik het met een h-brug proberen. De output moet ik dan op de pwm kanalen van de motor zetten?
En hoe kom ik erachter of het 9v is aangezien de links aangeven dat vcc 3.3v is en pwm 5v. De motor is niet heel duur €14 maar toch zonde om hem bewust te vernielen
Bij twijfel met een lage spanning beginnen.
Die 3v3 is voor de logica, maar in die motor zit geen logica.
Dat is een goeie, maar waar stop ik. Hoe weet ik wanneer het teveel is, behalve bij het zien van rook
benleentje
Golden Member
En hoe kom ik erachter of het 9v is aangezien de links aangeven dat vcc 3.3v is en pwm 5v. De motor is niet heel duur €14 maar toch zonde om hem bewust te vernielen
Je hebt nu toch een werkende trein kan je daar niet gewoon de spanning met die naar de motor gaat.
Het leuke is dat een dc-motor niet specifiek voor 1 spanning is het gaat op een 2x hogere spanning gewoon 2x sneller draaien. Echter zitten daar wel grenzen aan een motor kan te snel draaien en dat hoor je in eestte instantie gelijk dat het niet meer goed klinkt. Maar je heb nu al een locomotief en je kan dan eerste de motor op 5V proberen en vergelijken met hoe snel dat draait tegenover de bestaande trein.
Volgens mij zou dat niet eens uit maken als het pwm is.
Dat maakt wel uit. Als je de trein op 80% van snelheid wil laten rijden dan maak je de duty-cycle van het signaal ook 80%. Nu zit daar een FET tussen die dat omdraait en je krijgt dan een duty-cycle van 20%.
[Bericht gewijzigd door benleentje op (17%)]
Ahja idd. Ik zat even met de richting in de war maar het is tussen de 0% en 100% wat dan omgedraaid is. Ik zal morgen eens kijken of ik kan meten wat de originele hun aan volts doorgeeft. Bedankt allemaal alvast voor de hulp!
Op 13 januari 2023 19:55:44 schreef benleentje:
Nogmaals de FET inverteert het signaal dus in je software moet je dan precies andersom aansturen.
Op 13 januari 2023 22:20:02 schreef bbuster:
Ahja idd. Ik zat even met de richting in de war maar het is tussen de 0% en 100% wat dan omgedraaid is.
Ik denk dat jullie iets over het hoofd zien.
Stel je PWM signaal staat op 20%, in het voorbeeld is dat signaal tussen de 0 en 5VDC.
Als het signaal hoog is dan geleid de fet en die trekt de motor naar de 0V/GND. Dat signaal is inderdaad geïnverteerd, maar dat moet ook anders gaat je motor niet draaien.
Dus de tijd dat de fet geleid is gewoon 20%, "in het voorbeeld" als het signaal 0V is dan geleid de fet niet meer en wacht 80% voordat de volgende puls van 20% komt.
Als het PWM signaal laag is aan de gate van de fet, dan staat er op het knooppunt van de motor en de fet 12VDC. De motor wordt op dat moment niet naar de 0VDC/GND getrokken door de fet.
Er hoeft dus niets in de software geïnverteerd te worden, de motor draait gewoon als de puls hoog is en stopt als de puls laag is. Maar daar merk je uiteraard niets van omdat de frequentie groter is dan 10KHz.
Hier kun je de spanning zien op het knooppunt van de motor en de fet als het PWM signaal hoog is.
En hier de spanning als het PWM signaal laag is.
benleentje
Golden Member
Op 14 januari 2023 17:06:47 schreef Lambiek:
Ik denk dat jullie iets over het hoofd zien.
Ik ga ervan uit de het het PWM signaal is naar de HUB die een 5V positieve PWM signaal verwacht ipv een 3,3V.