Arduino analoge treinsturing.
12 berichten
• Pagina 2 van 2 • 1, 2
Re: Arduino analoge treinsturing.
Hoi
Nico bedankt voor je input.
Paul bedankt voor je input.
Het programma werkt goed en heb mijn proefbaantje er mee bediend, de trein trek op en als ik een stop commando geef stopt de trein.
De blokken worden aangestuurd door een l298 motorshield die regelt de snelheid en de rijrichting van de trein.
Het was dan ook geen vraag waarom het niet werkt, alleen hoe kan ik het een en het ander wat beter kon regelen, met name de wacht functie, ik gebruik nu het delay commando, maar dat vertraagt de loop en ik krijg het mill() commando niet goed werkend.
Waarom moet ik de einden beveiligen met een diodes?
mvg Paul Smits
Nico bedankt voor je input.
Paul bedankt voor je input.
Het programma werkt goed en heb mijn proefbaantje er mee bediend, de trein trek op en als ik een stop commando geef stopt de trein.
De blokken worden aangestuurd door een l298 motorshield die regelt de snelheid en de rijrichting van de trein.
Het was dan ook geen vraag waarom het niet werkt, alleen hoe kan ik het een en het ander wat beter kon regelen, met name de wacht functie, ik gebruik nu het delay commando, maar dat vertraagt de loop en ik krijg het mill() commando niet goed werkend.
Waarom moet ik de einden beveiligen met een diodes?
mvg Paul Smits
Advertisement
Re: Arduino analoge treinsturing.
er bestaan nogal wat delay routines
de simpelste is eigenlijk de starttijd bewaren
dus
starttijd1:=millis();
delaytijd1:=2300;
if ((millis()-starttijd1) > delaytijd1){// nu is de tijd voorbij en dus moet je hier iets doen
zoals starttrein()
}
zo kun je dus vele timers bouwen.
als je deze in de loop zet dan blijft de loop steeds doorlopen tot een tijd geweest is dan gaat de subroutine ook mee doen, als het maar een keer hoeft dan kun je of nieuwe startijd zetten of gelijk terugspringen.
zoek maar eens op delay met millis() op arduino.cc
diodes:
als het een simpel heen en weer stukje rails is, dan kun je de laatse rails isoleren met een diode, dan gaat de loc niet verder, maar kan wel terug, een eenvoudige stootblokbeveiliging dus.
als het een rondje is heb je geen last.
bij seinen speelt dit ook een rol, omdat je een stuk spoor uitzet, maar dat werkt ook de andere kant op, als je daar een diode plaatst dan zal de trein netjes doorijden over het stopstuk, en aan de andere kant opgevangen worden door het uitrijsein.
de simpelste is eigenlijk de starttijd bewaren
dus
starttijd1:=millis();
delaytijd1:=2300;
if ((millis()-starttijd1) > delaytijd1){// nu is de tijd voorbij en dus moet je hier iets doen
zoals starttrein()
}
zo kun je dus vele timers bouwen.
als je deze in de loop zet dan blijft de loop steeds doorlopen tot een tijd geweest is dan gaat de subroutine ook mee doen, als het maar een keer hoeft dan kun je of nieuwe startijd zetten of gelijk terugspringen.
zoek maar eens op delay met millis() op arduino.cc
diodes:
als het een simpel heen en weer stukje rails is, dan kun je de laatse rails isoleren met een diode, dan gaat de loc niet verder, maar kan wel terug, een eenvoudige stootblokbeveiliging dus.
als het een rondje is heb je geen last.
bij seinen speelt dit ook een rol, omdat je een stuk spoor uitzet, maar dat werkt ook de andere kant op, als je daar een diode plaatst dan zal de trein netjes doorijden over het stopstuk, en aan de andere kant opgevangen worden door het uitrijsein.
paul deelen
shooter@home.nl
shooter@home.nl
12 berichten
• Pagina 2 van 2 • 1, 2
Wie is er online?
Gebruikers in dit forum: Geen geregistreerde gebruikers en 12 gasten