DRO Console Excel Arduino

  • Auteur de la discussion jpbbricole
  • Date de début
jpbbricole
jpbbricole
Compagnon
26 Mai 2016
2 244
Corsier-sur-Vevey (Vaud)
  • Auteur de la discussion
  • #1
Dans le même ordre d’idée que la discussion que j’ai ouverte (Arduino vers Excel et retour ) qui était plus axée sur l’interfaçage d’un pied à coulisse, j’ai repris le tout.
Maintenant, il est plus tourné vers un usage universel et plus facile d’utilisation du côté Excel.
Il n’est pas forcément nécessaire de faire usage du Basic vba.
Vous pourrez facilement faire des consoles d’affichage et de commandes simplement par des fonctions d’Excel.

Pour expliquer le tout, je suis parti d’un circuit prototype ci-dessous
upload_2016-6-6_19-56-16.png


Avec des entrées :
COMMUT n Commutateur
BP n Bouton poussoir
ANAL n Analogique
TSEN 1 Touche sensor

Et des sorties :
LED n = LED
LTRICOL n = LED Tricolore
SERVO n = Servo modellisme
PWM n = Sortie analogique PWM

Les entrées, dans l’Arduino sont régulièrement scannées et si modification de l’état, cet état est envoyé par un ordre serial.print….. Cela donne ceci :
upload_2016-6-6_17-38-33.png

Pour afficher ces données dans Excel, il suffit de nommer la cellule de cette façon :
upload_2016-6-6_17-28-58.png

ANAL,1 Nom de la cellule ANAL_1
TSEN,1 Nom de la cellule TSEN_1
….
Automatiquement la valeur s’affiche, ainsi vous pourrez utiliser toute la puissance du tableur pour traiter ces données

Les sorties sont commandées, dans le tableur, par des boutons :
upload_2016-6-6_17-24-34.png

La cellule à droite du bouton s’appelle CMD_ avec le chiffre sur le bouton.
Commande 1 = CMD_1
A droite des boutons, sont les paramètres dont le premier est le nom de la sortie et doît être connu de votre programme Arduino.
A la réception, dans l'Arduino, cela donne

LTRICOL,1,bleu,122
LED,1,1,
SERVO,1,1200,
PWM,1,127,

Au lancement de la feuille du tableur, faire contrôle A
upload_2016-6-6_17-30-6.png

Pour sélectionner le port COM et la vitesse. Il ne faut pas fermer cette fenêtre sauf quand la communication a été terminée. Il faut simplement la tirer de côté

A vous de traiter vos entrées dans l’Arduino et de créer vos propres commandes, la « mécanique » est aisément compréhensible dans l’exemple attaché à ce message.

Après tout est une affaire d’imagination.

Le tout donne ceci :
upload_2016-6-6_17-30-45.png

La police du grand affichage (ttf) est comprise dans kit.
Vous pouvez vous passer du tableur et « jouer » avec le programme Terminal également dans le kit.
Si vous connectez un servo n’oubliez pas d’alimenter l’Arduino par une alim externe.

Je vous mets une vidéo pour vous faire une idée de la console avec tableur et quelques possibilités du traitement des données reçues.
Je joins le kit nécessaire.
Dès que possible, je joins le schéma (j’ai quelques problèmes pour renouveler ma licence Eagle)
Je vais encore faire des essais avec LibreOffice et OpenOffice.

Voir la pièce jointe ConsoleExcelArduino_Kit.zip
Merci à Roberto Valgolio qui est le créateur de la base de cette feuille Excel.
 
Dernière édition:
lion10
lion10
Compagnon
7 Mai 2010
4 721
Bonjour
C'est interessant tout cela !
Merci
Pour comprendre comment les données sont elles transférées de la fenêtre serial à excell s'il n'y a pas de VBA ?
cdlt lion10
 
jpbbricole
jpbbricole
Compagnon
26 Mai 2016
2 244
Corsier-sur-Vevey (Vaud)
  • Auteur de la discussion
  • #3
@lion10
Je me suis mal exprimé, le VBA est indispensable pour faire tourner tout ça.
C'est quand tu crée tes propres commandes dans l'arduino, comme un capteur d'angle par ex,
que tu le nomme CANGLE avec le numéro 6, il suffit de nommer une cellule CANGLE_6 pour que automatiquement la veleur du capteur s'affiche. De même pour les commandes depuis le tableur, pour autant que tu aies assez de boutons, tu peux créer ton propre nom de commande pour autant que ton programme Arduino sait la traiter.

Bonne soirée
jpbbricole
 
lion10
lion10
Compagnon
7 Mai 2010
4 721
Bonsoir
Ok merci de la précision.
Cdlt lion10
 
A
Alex31
Compagnon
31 Août 2014
1 928
12350 et 31200
Bonsoir

@lion10le VBA est indispensable pour faire tourner tout ça.
petite précision pour "lion10", le VBA est inclus dans toutes les versions d'EXCEL (en fait il est aussi accessible dans WORD, ACCES)
pour automatiser des taches répétitives
c'est le langage de programmation de ce qu'on appelle "les Marcos excels"

on accède à la console VBA par le menu Développeur (en général, il faut l'ajouter le menu "développeur" dans l'affichage de la barre de menu, en haut, depuis la version 2007)
 
gégé62
gégé62
Compagnon
26 Fev 2013
2 871
Harnes (Pas de Calais)
je l'ai utilisé (VBA) un peu il y a quelques années pour une feuille de calcul dans laquelle j'avais deux itérations à faire en même temps, et en automatique les deux se perturbaient mutuellement, ça ne convergeait jamais.
Bonne expérience à faire mais j'ai trouvé ça assez indigeste. Je suis surtout parti de macros enregistrées qui m'ont servi d'exemples, et j'avais un livre là-dessus, mais depuis que je l'ai prété je ne l'ai plus....

merci @ jpbbricole pour son partage
 
lion10
lion10
Compagnon
7 Mai 2010
4 721
bonsoir

Le VBA j'ai tjs eu l'intention de m'y mettre mais j'ai d'autres priorités et au premier abord cela ne me parait pas très simple, il me manque toute la connaissance de l'environnement de développement VBA et la formation donc sur les objets excell.
C'est sans doute le plus important à acquérir au dela du langage Vba proprement dit qui ne doit pas dépasser le C que je connais bien en terme de complexité. Mais il doit sans doute y avoir des formations sur openclassroom...
cdlt lion10
 
Haut