Comment régler une valeur à distance via un curseur sur l'application ?
La carte Arduino peut utiliser de nombreuses valeurs commandant des actionneurs.
Il peut être intéressant de les faire varier :
luminosité d'une LED,
vitesse d'un moteur ;
variable pour un calcul, etc....
ÉLÉMENTS DE PROGRAMMATION
Programme Arduino
Le module Grove Bluetooth étant toujours branché sur D8 (elle concerne en fait D8 et D9)
On déclare en début de programme :
la bibliothèque #include <SoftwareSerial.h>
Une liaison série logicielle avec un nom libre , ici "BTserie" : SoftwareSerial BTserie(8,9) ; car on veut Rx à D8 et Tx à D9 coté Arduino ;
La valeur en nombre entier (int) : int valeur = 0 ;
SoftwareSerial BLEserie(8,9);
int valeur = 0 ; //déclaration d'une variable (nombre entier) avec pour valeur 0
Dans le « setup » régler les taux de transfert : BTserie.begin(9600) ; Serial.begin(9600) ;
et configurer la broche « D5 » où la LED est connectée en pin sortie : pinMode(5, OUTPUT);
Serial.begin(9600); //Réglage transmission port série
BTserie.begin(9600); //Réglage transmission bluetooth
pinMode(5, OUTPUT); //Configuration du pin 5 en sortie
Dans la boucle « loop » :
après le test : if (BTserie.available()) {
on lit la valeur sur la liaison série Bluetooth : valeur = BTserie.read() ;
on peut placer un affichage de contrôle sur le moniteur série : Serial.println(valeur) ;
La valeur du curseur varie de 0 à 100. Pour obtenir une tension variant de 0 à 5 Volts il faut appliquer à la pin 5 « PWM » une valeur numérique variant de 0 à 255.
Il faut appliquer à la pin 5, la valeur multipliée par 2.55 pour obtenir 255 (5Volts) lorsque le curseur est à 100% : analogWrite(5,valeur*2.55)
if (BTserie.available()) { //vérifie si des données ont été envoyées depuis le module BTserie
valeur = BTserie.read() ; //Lit la valeur reçue et la stocke dans la variable valeur
Serial.println(valeur) ; //Affiche la valeur sur le moniteur série
analogWrite(5,valeur*2.55);
Programme App Inventor
La valeur à modifier le sera grâce à un curseur appelé « ascenseur ». La valeur modifiée pourra être affichée dans le texte d'un « Label »
En mode Designer :
Exemple d'aspect de l'écran
Conseil : Affichage de la valeur de la consigne sur l'application
La valeur de réglage du curseur peut être affichée sur l'application à la place du « texte » du Label « consigne » :
Ajouter un blocs "Mettre "consigne". "Texte" à associé à "obtenir global valeur" dans la boucle "if Client_Bluetooth1 . Est connecté"