Outils pour utilisateurs

Outils du site


issue90:arduino

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
issue90:arduino [2015/02/07 12:23] andre_domenechissue90:arduino [2015/02/11 17:52] (Version actuelle) auntiee
Ligne 15: Ligne 15:
  
 Code: http://pastebin.com/AjFDajHm Code: http://pastebin.com/AjFDajHm
- 
  
  
Ligne 21: Ligne 20:
 ** **
  
-Le mois dernier, notre circuit a pu déterminer si un code entré par le clavier était bon ou mauvais.  Ce mois-ci, je lui ai ajouté la possibilité de faire une chose ou deux à l'aide d'une simple instruction IF/ESLE.+Le mois dernier, notre circuit a pu déterminer si un code entré par le clavier était bon ou mauvais. Ce mois-ci, je lui ai ajouté la possibilité de faire une chose sur deux à l'aide d'une simple instruction IF/ELSE.
  
-J'ai ajouté une LED et un entier appelé « armed ». Au début « armed » est égal à zéro, et armedLed est égal à A0. Je vais maintenant devoir tordre les règles pour utiliser des broches analogiques pour les composants numériques car j'arrive rapidement à court de broches avec tout çà +J'ai ajouté une LED et un entier appelé « armed ». Au début « armed » est égal à zéro, et armedLed est égal à A0. Je vais maintenant devoir tordre les règles pour utiliser des broches analogiques pour les composants numériques car j'arrive rapidement à court de broches avec tout ça 
  
-Le point crucial de ce changement armed est la commande IF/ELSE qui est encapsulée dans la commande IF/ELSE existante dans la section guessPassword () du code. Fondamentalement voici ce qui se passe : si le mot de passe est correct et armed=0 (en d'autres termes : le système est éteint), alors il va effacer l'écran, afficher ARMED !, changer armed égal à 1, et allumer la LED rouge. Enfin, il affiche « Code to disarm: » (Code pour désarmer). Sinon, armed doit être égal à 1 (le système est allumé), on affiche DISARMED !, on rend armed=0, et on affiche «Code to arm:».+Le point crucial de ce changement armed est la commande IF/ELSE encapsulée dans la commande IF/ELSE existante dans la section guessPassword () du code. Fondamentalementvoici ce qui se passe : si le mot de passe est correct et armed=0 (en d'autres termes : le système est éteint), alors il va effacer l'écran, afficher ARMED !, changer armed égal à 1, et allumer la LED rouge. Enfin, il affiche « Code to disarm: » (Code pour désarmer). Sinon, armed doit être égal à 1 (le système est allumé), on affiche DISARMED !, on rend armed=0, et on affiche « Code to arm: ».
  
-Je dois admettre ma faute d'avoir passé des heures à essayer de comprendre pourquoi mon IF/ELSE ne fonctionnait pas correctement. Erreur de débutant : j'ai oublié d'utiliser == dans l'instruction IF.+Je dois avouer mes erreurs et j'ai passé des heures à essayer de comprendre pourquoi mon IF/ELSE ne fonctionnait pas correctement. Erreur de débutant : j'ai oublié d'utiliser == dans l'instruction IF.
  
-Après avoir réussi avec armé/désarmé, je suis allé exhumer un de mes capteurs 37-en-1 et une photorésistance (une résistance dépendant de la lumière, LDR pour faire court). La LDR va vers A1 avec une résistance de 220 ohms sur une patte et son autre patte branchée à la masse. Le capteur laser va vers la patte positive de la LED et à la masse. Maintenant, quand le système est armé, le laser pulse en pointant vers la LDR.+Après avoir réussi avec armé/désarmé, je suis allé exhumer un de mes capteurs 37-en-1 et une photorésistance (une résistance dépendant de la lumière, LDR pour faire court). La LDR va vers A1 avec une résistance de 220 ohms sur une patte et son autre patte branchée à la masse. Le capteur laser va vers la patte positive de la LED et à la masse. Maintenant, quand le système est armé, le laser s'allume en pointant vers la LDR.
  
-Pour vérifier que la LDR  enregistre effectivement quelque chose, vous remarquerez que j'ai réintroduit le code de série (à nouveau, en utilisant la vitesse de transmission à 9 600 bauds). Dans la boucle principale, mon code fait une lecture analogique de la broche A1 et imprime le résultat dans la fenêtre de série IDE. En d'autres termes, le nombre que la LDR retourne via sa patte analogique. En l'absence de laser et à la lumière de la pièce, la fenêtre de série montre un flux de chiffres valant en moyenne 400-450. Lorsque je couvre la LDR, il tombe aussi bas que 100 à 150. Avec le laserpointant directement vers la LDR, la sortie série montre un pic de plus de 1 000. Presque le maximum qu'il peut atteindre. Donc si, avec le laser allumé, je mets un obstacle sur le rayon, la LDR enregistre la perte du laser.+Pour vérifier que la LDR  enregistre effectivement quelque chose, vous remarquerez que j'ai réintroduit le code de série (à nouveau, en utilisant la vitesse de transmission à 9 600 bauds). Dans la boucle principale, mon code fait une lecture analogique de la broche A1 et imprime le résultat dans la fenêtre de série IDE. En d'autres termes, le nombre que la LDR retourne via sa patte analogique. En l'absence de laser et à la lumière de la pièce, la fenêtre de série montre un flux de chiffres valant en moyenne 400-450. Lorsque je couvre la LDR, il tombe aussi bas que 100 à 150. Avec le laser pointant directement vers la LDR, la sortie série montre un pic de plus de 1 000. Presque le maximum qu'il peut atteindre. Donc si, avec le laser allumé, je mets un obstacle sur le rayon, la LDR enregistre la perte du laser.
  
 Lors de notre prochaine rencontre, nous (je espère !) aurons une alarme avec détecteur de présence laser qui fonctionne... Lors de notre prochaine rencontre, nous (je espère !) aurons une alarme avec détecteur de présence laser qui fonctionne...
- 
  
 Code: http://pastebin.com/AjFDajHm Code: http://pastebin.com/AjFDajHm
issue90/arduino.1423308226.txt.gz · Dernière modification : 2015/02/07 12:23 de andre_domenech