Étape 8: Électronique et Arduino code
J’ai branché les composants aux ports LinkIt un de cette manière :
LinkIt 3V3 : à une des bornes du moteur boîte de vitesses.
5V LinkIt : à la borne Vcc du capteur ultrasonique et la borne 5V du relais
LinkIt GND : à la borne de masse de la sonde ultrasonique, la borne GND du relais et l’une des bornes au relais. L’autre borne de l’interrupteur va être connecté à l’autre borne du moteur boîte de vitesses pour l’activer.
LinkIt D13 : à la borne de l’Echo du capteur ultrasonique.
LinkIt D12 : à la borne Trig du capteur ultrasonique.
LinkIt D8 : à la borne SIG du relais.
Pour le sketch, j’ai vérifié un grand nombre d’instructables Arduino pour obtenir de l’inspiration, mais la j’ai analized le plus était le Simple Robot Walker de Randofo. Ensuite, j’essaie de trouver les points communs pour faire un capteur à ultrasons des œuvres.
L’esquisse est le suivant :
/ * Code écrit par M.C. Langer. Soyez gentil, it´s mon Arduino premier croquis
*/
#define trigPin 12 / / define les broches de votre capteur
#define echoPin 13 / / define les broches de votre capteur trop
taux d’int = 1000 ; J’ai vu que tout le monde utilise cette constante pour capteur à ultrasons, donc je vais faire la même chose pour le moment. Cette constante ne changera pas. C’est le nombre de broches
void setup() {Serial.begin(9600); / / Initialise la communication série 9600 bits par seconde
pinMode(8,OUTPUT) ; pinMode (trigPin, sortie); / / définir la trig broche de sortie pour envoyer des ondes sonores
pinMode (echoPin, INPUT); / / définir la goupille d’écho à l’entrée pour recevoir les ondes sonores
Delay(5000) ;
}
void loop() {}
longue durée, distance ; démarrer le scan
pinMode (trigPin, sortie) ;
digitalWrite (trigPin, basse) ;
delayMicroseconds(2) ; Delay
digitalWrite (trigPin, HIGH) ;
delayMicroseconds(5) ; un autre retard (je ne comprends pas. Il est plus facile avec Lego Mindstorms)
digitalWrite (trigPin, basse) ;
durée = pulseIn (echoPin, HIGH) ;
distance = (durée/2) / 29,1; / / convertir en centimètres la distance.
Si (distance < 50) / * si il existe un obstacle à une distance inférieure à 50 centimètres, puis... Attendez, c’est plus comme Lego Mindstorms. Je l’obtiens ! */
{
digitalWrite(8,HIGH) ; Delay(7000) ;
}
d’autre
digitalWrite(8,LOW) ;
}