Automatische treinbesturing
Componenten en benodigdheden
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
Apps en online services
|
Over dit project
Met dit zeer eenvoudige schema kunt u de trein snel op uw schema krijgen. U kunt de verplaatsingstijd en de stoptijd van de trein aanpassen. Treinacceleratie en remmen zijn ook configureerbaar. Door de schemaparameters in de schets te wijzigen, kunt u elk type automatische beweging maken. Zet gewoon de stroom aan en je trein vertrekt.
De tijdparameters in de schets wijzigen:
// 1 | 0> Tijd <5 secif (counterScheduler <=5) { ......// 2 | 10 sec> Tijd <15 secif ((counterScheduler>=10) &&(counterScheduler <=15)) { ......// 3 | Verander richtingif (counterScheduler ==16) {.... etc.
maakt een tijdschema.
Variabelen:
int brakeDelta =5; int acceleratieDelta =6;
definieer de bewegingsparameters van de trein
De richting van de trein wordt bepaald door de toestand van de pinnen D6 en D7:
// Stel de standaardrichting in op FORWARD digitalWrite(L298_IN1, HIGH); digitalWrite (L298_IN2, LAAG);
Je kunt deze schets eindeloos veranderen om nieuwe opties voor automatische treinbeweging te krijgen.
Welkom aan boord!
Code
- Zwaaien
Zwaai Arduino
// L298 #define L298_ENA 5#define L298_IN1 6#define L298_IN2 7// SCRIPTS VARIABLESint counterScheduler;unsigned long timerScheduler =0;unsigned long timerLocal =0;byte speedAuto =0;void setup() {// Initialiseren van pinnen pinMode (L298_ENA, UITGANG); pinMode (L298_IN1, UITGANG); pinMode (L298_IN2, OUTPUT);//Stel de standaardrichting in op FORWARD digitalWrite (L298_IN1, HIGH); digitalWrite (L298_IN2, LAAG); }void loop() { // Start Scheduler if (millis()> (timerScheduler + 1000)) { // Vink elke 1 sec counterScheduler++ aan; timerScheduler =millis(); } // ------------- SCRIPT SWING int remmenDelta =5; int acceleratieDelta =6; // 1 | 0> Tijd <5 sec if (counterScheduler <=5) { // Start trein if (millis()> (timerLocal + 100)) { if (speedAuto <240) speedAuto =speedAuto + acceleratieDelta; anders speedAuto =255; analoogWrite(L298_ENA, speedAuto); timerLocal =millis(); } } // 2 | 10 sec> Tijd <15 sec if ((counterScheduler>=10) &&(counterScheduler <=15)) { // Stop trein na 10 sec // Stop trein if (millis()> (timerLocal + 100)) { if ( speedAuto> 30) speedAuto =speedAuto - remmenDelta; anders speedAuto =0; analoogWrite(L298_ENA, speedAuto); timerLocal =millis(); } } // 3 | Verander van richting als (counterScheduler ==16) { digitalWrite (L298_IN1, LOW); digitalWrite (L298_IN2, HOOG); } // 4 | 20 sec> Tijd <30 sec if ((counterScheduler>=20) &&(counterScheduler <=30)) { // Start trein if (millis()> (timerLocal + 100)) { if (speedAuto <240) speedAuto =speedAuto + versnellenDelta; anders speedAuto =255; analoogWrite(L298_ENA, speedAuto); timerLocal =millis(); } } // 5 | 31 sec> Tijd <40 sec if ((counterScheduler>=31) &&(counterScheduler <=40)) { // Stop trein // Stop trein if (millis()> (timerLocal + 100)) { if (speedAuto> 30 ) speedAuto =speedAuto - remmenDelta; anders speedAuto =0; analoogWrite(L298_ENA, speedAuto); timerLocal =millis(); } } // 6 | Keer terug naar stap 1 als (counterScheduler> 40) { counterScheduler =0; digitalWrite (L298_IN1, HOOG); digitalWrite (L298_IN2, LAAG); }}
Schema's
Productieproces
- Besturingscircuits
- Birth Control Pil
- Pool Fill Control
- Wat is benchwork?
- Wat is kwaliteitscontrole?
- Wat is een automatische persmachine?
- Wat is een automatische powerpers?
- Wat is een automatische pijpenbuiger?
- Wat is automatische draaitafel?
- Automatisch transmissiesysteem begrijpen
- Automatisch smeersysteem begrijpen