Étape 10 : Finir vers le haut
Une fois que j’ai fini mon circuit final et obtenu la puissance pour mon Arduino, j’ai mis en place les composants à l’intérieur de la voiture. J’ai utilisé un pistolet à colle chaude pour garder le titulaire de la perfboard et la batterie en place. Afin de placer le capteur à l’avant, j’ai dévissé le pare-brise un peu et nourri le capteur par un petit trou. J’ai ensuite chaud collé en place à l’avant. Une fois que j’ai eu tous les composants en place, j’ai téléchargé du code dans l’Arduino, connecté à l’alimentation et vissé dans le revêtement en place en plastique.
Où nous sommes à présent :
Bon, le plan original était de connecter le récepteur sortie à l’Arduino donc la voiture serait courir normalement jusqu'à ce qu’il m’a trop près d’un mur. Cependant... quand j’ai essayé de souder les connexions aux broches du récepteur, le récepteur a renoncé à moi. Je l’ai eu en fait jusqu’au point où j’ai pu lire les tensions correctes des raccords, j’ai soudé pour le récepteur, mais les broches a rompu après un certain temps.
Plan b :
Maintenant que je ne peux pas contrôler la voiture à l’aide de la télécommande j’ai donc décidé de programmer la voiture et le rendre autonome. Je suis encore en train de rendant totalement autonome (un peu comme un Roomba) mais, j’ai au moins obtenu au point étaient il détecte un mur et il s’arrête. Je peux aussi faire l’avant pneus tourner basés sur les commandes de l’Arduino. Je vais inclure l’extrait de code que je connais des oeuvres pour vous ci-dessous.
Choses possibles pour l’avenir :
J’espère avoir la voiture jusqu’au point où il est complètement autonome. Je crois aussi, il existe un moyen de regagner des capacités de contrôle à distance la voiture à l’aide d’un module Bluetooth comme le BlueSMiRF Silver. Un tel module me permettrait de contrôler la voiture depuis un ordinateur compatible Bluetooth ou le téléphone qui serait cool. Chose que j’ai remarqué est que les piles que j’ai utilisé ont été vidangés rapidement. Cela signifie que je pourrais avoir à changer la façon dont je suis mise sous tension du circuit. En d’autres termes, je dois utiliser autre chose qu’une pile de 9v.
Si je peux, je vais poster toute évolution de la situation que je fais. Mais pour l’instant, je suis juste content il peut détecter des murs et arrêter en conséquence.
Merci pour la lecture et j’espère que vous avez trouvé cela instructif.
Code :
Les broches, que nous allons utiliser l’étiquette
int enable12 = 7 ;
input1 int = 6 ;
input2 int = 5 ;
int enable34 = 4 ;
int input3 = 3 ;
int input4 = 2 ;
void setup() {}
Serial.Begin(9600) ; Réglage débit en bauds
Mettre en place les chevilles nécessaires comme sorties
pinMode(enable12,OUTPUT) ;
pinMode(input1,OUTPUT) ;
pinMode(input2,OUTPUT) ;
pinMode(enable34,OUTPUT) ;
pinMode(input3,OUTPUT) ;
pinMode(input4,OUTPUT) ;
La valeur Enable broches haute
digitalWrite(enable12,HIGH) ;
digitalWrite(enable34,HIGH) ;
}
void loop() {}
int sensorValue=analogRead(A2) ; lu dans la valeur de la sonde
Serial.println(analogRead(a2)) ; permettent d’entrevoir la
valeur de la sonde pour le dépannage
Delay(1) ; petit retard pour la stabilité
Si {(sensorValue < 150)
goForward() ;
}
else {}
stopMovement() ;
}
}
Fonctions utilisées pour contrôler les mouvements de la voiture
void goForward() {}
digitalWrite(input1,HIGH) ;
digitalWrite(input2,LOW) ;
}
void goBack() {}
digitalWrite(input1,LOW) ;
digitalWrite(input2,HIGH) ;
}
void stopMovement() {}
digitalWrite(input1,LOW) ;
digitalWrite(input2,LOW) ;
}
void goLeft() {}
digitalWrite(input3,HIGH) ;
digitalWrite(input4,LOW) ;
}
void goRight() {}
digitalWrite(input3,LOW) ;
digitalWrite(input4,HIGH) ;
}
void stopTurning() {}
digitalWrite(input3,LOW) ;
digitalWrite(input4,LOW) ;
}