DRO Arduino vers Excel et retour

  • Auteur de la discussion jpbbricole
  • Date de début
jpbbricole
jpbbricole
Compagnon
Bonjour à tout les mordus d’Arduino.

Ce petit exercice pour démontrer que faire du traditionnel et très utile Serial.println(blabla) autre que l’afficher dans la console de l’IDE Arduino. Pour cela j’ai pris :

1 pied à coulisse électronique PAC (chinois à 6,5$)
upload_2016-6-3_21-40-35.png

équipé d’un connecteur
upload_2016-6-3_21-41-17.png

ainsi que d’une touche sensor
upload_2016-6-3_21-42-2.png

L’arduino Pro Micro (Leonardo en miniature)
upload_2016-6-3_21-42-32.png

Equipé d’une LED tricolore

Du côté du PC il y a au choix:

Un programme terminal
upload_2016-6-3_21-43-59.png

Ou une feuille Excel
upload_2016-6-3_21-45-2.png

Qui permet de traiter les valeurs lues sur le PAC et d’en déduire des actions à renvoyer à l’arduino.

Pour faire dialoguer tout ce petit monde, j’ai défini un petit langage qui passe par la communication série, il est pour le moment assez succint, mais peut facilement évoluer.


Les ordres Arduino vers PC sont :
XLS,VAL,0,2207
XLS = destinataire
VAL = je transmet une valeur
0 = reserve
2207 pour 22.07 mm

XLS,KEY,0,0
KEY = indication de touche sensor pressés.

Les ordres PC vers Arduino sont :
ALERTE,ROUGE,77
ALERTE = fonction décodé dans l’Arduino comme allumage de la LED tricolore
ROUGE ou VERT ou BLEU = couleur de la dite LED
NOIR éteind la LED Tricolore
77 = intensité de la couleur (0-255)

Ainsi, quand, dans le cas Excel, la valeur reçue est testée entre les valeurs minimum et maximum on peut envoyer, en écho, la coloration résultante du test et de par là créer la réaction désirée dans l’Arduino.

Cette feuille Excel est dérivée de l’excellent travail de Roberto Valgolio, un Grand Merci à lui.

En effet, autant il est facile d’envoyer des données sur le port série avec VBA Excel, autant c’est difficile d’en recevoir.
La manipulation de la feuille Excel, si vous désirez modifier les test ou autre, nécessite des connaissances en VBA. Les valeurs Minimum et Maximum se changent sans autre.

ATTENTION, avant tout si vous travaillez sur la feuille Excel ou sur le Terminal, si l’IDE Arduino est ouvert, désactivez le moniteur série.

Un façon plus simple de « manipuler » l’Arduino est avec le programme Terminal.
Le répertoire de ce programme est dans le Zip et il suffit de le copier.

Sélectionnez le port et la vitesse 28800
upload_2016-6-3_21-48-2.png

Activez, si nécessaire le DTR
upload_2016-6-3_21-48-27.png

Cliquez Connect.Cliquez sur Set Macro
upload_2016-6-3_21-48-57.png

Si cela ne ressemble pas à ceci, chargez le fichier de paramètres DigitalCaliper.tmf livré dans le Zip
Cliquez le boutons M1,M2… pour envoyer les commandes. $0A est un code interne pour envoyer le code ASCII Nouvelle ligne ou 10 en décimal.

Du côté du programme Arduino, il n’est pas nécessaire d’utiliser un PAC, toute valeur à transmettre au PC (que soit un potentiomètre, un temps etc) doît être transmise sous la forme XLS,VAL,0,12345
Pour que Excel « encolonne » cette valeur, il faut envoyer XLS,KEY,0,0

Ouf !

Actuellement tout n’est pas absolument prêt.
Dans le Zip attaché, vous trouverez le programme Arduino (Pour PAC) ainsi que les librairies CapacitiveSensor et NeoPixel dans le dossier libraries et le programme Terminal.
Vous pourez déjà jouer avec cela.
Je vais préparer un version Arduino UNO pour potentiomètre qui sera plus facile d’emploi.
Ainsi que le schéma.

Et pour terminer, une petite vidéo.
Voir la pièce jointe DigitalCaliperKit.zip
 
Dernière édition:
wika58
wika58
Compagnon
@jpbbricole,
Qu'utilises-tu comme interface électrique entre l'Arduino et le PAC (Pied à coulisse (F) = Calibre (CH)... :-D)?
 
jpbbricole
jpbbricole
Compagnon
@wika58
C'est très simple
upload_2016-6-4_6-18-7.png

et dans le programme
upload_2016-6-4_6-18-28.png

Le branchement
upload_2016-6-4_6-19-0.png


Je fournirai, prochaînement, le schéma au format Eagle
Bonne journée
 

Sujets similaires

M1M1HRC10
Réponses
7
Affichages
27 344
M1M1HRC10
M1M1HRC10
Loulou
Réponses
11
Affichages
1 490
wika58
wika58
D
Réponses
20
Affichages
9 305
demdandeinfos
D
jpbbricole
Réponses
6
Affichages
3 334
lion10
lion10
jpbbricole
Réponses
113
Affichages
16 664
sabeldom
S
jpbbricole
Réponses
4
Affichages
2 664
bipbip30
bipbip30
wika58
Réponses
31
Affichages
7 235
jpbbricole
jpbbricole
jpbbricole
Réponses
1
Affichages
1 126
pinou29
pinou29
jpbbricole
Réponses
18
Affichages
3 519
jpbbricole
jpbbricole
D
Réponses
9
Affichages
1 493
David80
D
Haut