Etape 3: Intégration de capteurs de lumière
void setup() {}
pinMode (« broche analogique », entrée) ;
digitalWrite ("analogique pin", haut) ;
}
De cette façon, tout ce que vous devez faire est se connecter une seule broche de la LDR à la broche d’entrée analogique et l’autre axe au sol.
En utilisant ce code, vous pouvez lire les valeurs des deux capteurs lumineux et ensuite les afficher par le biais de la série monitor. Il s’agit de la première partie du robot. Plus tard, nous allons utiliser les valeurs de la cellule photoélectrique pour commander les moteurs en conséquence.
La configuration physique est simple. Se connecter une seule broche de deux capteurs de lumière à la terre, les deux autres broches deux analogique entrée 1 et 2.
Broche analogique 1 pour le capteur de droite, 2 entrées analogiques pour le capteur de gauche.
Copier le code à partir de ce moment :
/****************************************************************************************************************
* Programme de lecture deux LDRs
* créé par : Anuj
* (c) tous droits réservés
*
*
* Installation physique :
* Deux LDRs reliés au sol et broche analogique 1(Right) et broche analogique 2(left)
*
*
******************************************************************************************************************/
À l’aide d’Arduino Duemilinove
Définitions de pin - attache une variable à une broche.
const int RightMotor = 2 ; Cette broche est utilisée pour activer ou désactiver le moteur droit. Connecté à la base d’un transistor NPN.
const int LeftMotor = 3 ; Cette broche est utilisée pour activer ou désactiver le moteur gauche. Connecté à la base d’un transistor NPN.
const int RightSensor = 1 ; Cette broche est utilisée pour lire la valeur du capteur droit.
const int LeftSensor = 2 ; Cette broche est utilisée pour lire la valeur du capteur gauche.
Définitions de variable
int SensorLeft ; Cette option stocke la valeur de l’axe gauche capteur à utiliser plus tard dans le sketch
int SensorRight ; Cette option stocke la valeur de l’axe droit capteur à utiliser plus tard dans le sketch
int SensorDifference ; Cette valeur est utilisée pour déterminer la différence entre la gauche et la droite
la méthode setup() s’exécute une fois lorsque le programme est exécuté. Lors de la
Arduino est réinitialisé, la setup() sera exécutée une fois de plus.
void setup() {}
pinMode (entrée, LeftSensor) ; Définit cette broche en tant qu’entrée. L’Arduino lira les valeurs de cette broche.
pinMode (entrée, RightSensor) ; Définit cette broche en tant qu’entrée. L’Arduino lira les valeurs de cette broche.
digitalWrite (A1, élevé) ; Permet une résistance pullup interne
digitalWrite (A2, élevé) ; Permet une résistance pullup interne
Serial.Begin(9600) ; Permet une connexion série par le biais de l’Arduino USB ou UART (bornes 0 & 1). Notez que le débit en bauds correspond à 9600
Serial.println ("\nReading capteurs de lumière.") ; Placé à la fin de void Setup() pour qu’il soit s’exécute une seule fois, juste avant le void Loop()
}
la méthode loop() exécute maintes et maintes fois,
aussi longtemps que l’Arduino a pouvoir
void loop() {}
SensorLeft = analogRead(LeftSensor) ; Ce lit la valeur de la sonde, puis l’enregistre à l’entier correspondant.
Delay(1) ; ce retard permet au convertisseur analogique/numérique IC récupérer pour la prochaine lecture.
SensorRight = analogRead(RightSensor) ; Ce lit la valeur de la sonde, puis l’enregistre à l’entier correspondant.
Delay(1) ; ce retard permet au convertisseur analogique/numérique IC récupérer pour la prochaine lecture.
Cette section de l’esquisse est utilisée pour imprimer les valeurs de la
capteurs à travers de la série de l’ordinateur. Utile pour déterminer
Si les capteurs fonctionnent et si le code fonctionne aussi correctement.
Ceci est connu comme le débogage.
Serial.Print ("capteur à gauche =") ; Imprime le texte à l’intérieur des guillemets.
Serial.Print(SensorLeft) ; Imprime la valeur de la sonde de gauche.
Serial.Print("\t") ; Imprime un onglet (espace).
Serial.Print ("capteur à droite =") ; Imprime le texte à l’intérieur des guillemets.
Serial.Print(SensorRight) ; Imprime la valeur de la sonde de droit.
Serial.Print("\n") ; Imprime une nouvelle ligne après toutes les données nécessaires sont affichées.
}