Robot suiveur de ligne le plus simple
Composants et fournitures
| | × | 1 | |
| Drivers de moteur SparkFun Dual H-Bridge L298 | | × | 1 | |
| | × | 2 | |
| Câbles de raccordement (générique) | | × | 1 | |
Applications et services en ligne
À propos de ce projet
Le robot suiveur de ligne est le salut du monde dans l'arène de la robotique. Ce suiveur de ligne est un robot très simple et facile à construire.
Code
- Robot suiveur de ligne basé sur Arduino
Robot suiveur de ligne basé sur Arduino C/C++
/*-------définir les entrées------*/#define LS 2 // capteur gauche#define RS 5 // capteur droit/*-------définir les sorties- -----*/#define LM1 11 // moteur gauche#define LM2 10 // moteur gauche#define RM1 9 // moteur droit#define RM2 6 // configuration motorvoid droite(){ pinMode(LS, INPUT); pinMode(RS, ENTREE); pinMode(LM1, SORTIE); pinMode(LM2, SORTIE); pinMode(RM1, SORTIE); pinMode(RM2, OUTPUT);}boucle vide(){if((digitalRead(LS)==LOW) &&(digitalRead(RS)==LOW)) // Condition_1 stop{ MoveForward(); } if((digitalRead(LS)==HIGH) &&(digitalRead(RS)==HIGH)) //CONDITION-2 FORWRD { Stop(); } if((digitalRead(LS)==LOW) &&(digitalRead(RS)==HIGH)) // RIGHT { TurnLeft(); } if((digitalRead(LS)==HIGH) &&(digitalRead(RS)==LOW)) { TurnRight(); }}void MoveForward(){ analogWrite(LM1, 50); analogWrite(LM2, 0); analogWrite(RM1, 50); analogWrite(RM2, 0); delay(20);}void TurnRight(){ analogWrite(LM1, 0); analogWrite(LM2, 60); analogWrite(RM1, 60); analogWrite(RM2, 0); retard(30); }void TurnLeft(){ analogWrite(LM1, 60); analogWrite(LM2, 0); analogWrite(RM1, 0); analogWrite(RM2, 60); delay(30);}void Stop(){ analogWrite(LM1, 0); analogWrite(LM2, 0); analogWrite(RM1, 0); analogWrite(RM2, 0); retard(20);}
Schémas