Skip to main content

Feed-back post-installation

Il est décidé de procéder aux améliorations suivantes : 

  • Rédaction d'une liste de commande "manuelles"
  • Ajouter un capteur ultrasonique de type HC-SR02SR04 pour Z.
  • Changer la logique de séquence : au lieu d'avoir une gestion par états côté IHM, envoyer une successions de commandes "atomiques", et attendre leur réalisation. Pour débugger cette partie, les indicateurs clignotants de l'état du banc sont restaurés et fiabilisés.

Liste des commandes reconnues par l'IHM : 

StringList cmdList = new StringList(new String[] { "S","+Z","-Z", "IZ","IX","GX", "GZ","VX","VZ","E","WT"});

soit :

CodeSignificationArguments éventuels
SStop
+ZDéplacement Z>0 (vers le haut)
-ZDéplacement Z<0 (vers le bas)
IZInit ZRemonte jusqu'à ce que le contacteur haut soit fermé 
isUp == true
IXInit XEquivalent à GX 120
GXGo Xposition en mm (à partir la "tête" du banc où se situe la cale)
GZGo Zposition en mm (référence : 0 au contact en bas)
VXVitesse Xattention : non pas les vitesses mais les fréquences
VZVitesse Z
EEtat
WTWaitdurée en secondes

Les "flags" : 

boolean isConnected = false;
boolean isBusy = false;
boolean isHoming = false;
boolean isHomingZ = false;
boolean isHomingX = false;
boolean isSequence = false;
boolean isNext = false;
boolean isReady = false;
boolean isWaiting = false;
boolean hasGoals = false;
boolean isMoving = false;  // boolean being read from messages from M5 controller
boolean isUp = false;      // boolean being read from messages from M5 controller
boolean isLeft = false;    // boolean being read from messages from M5 controller

 Parmi ces flags, 4 sont retranscrits par des messages clignotants dans l'interface :

      bkm_moving.Set(isMoving);
      bkm_ready.Set(isReady);
      bkm_waiting.Set(isWaiting);
      bkm_busy.Set(isBusy);

Le code de l'IHM modifiée : IHM_XRF_v5.pde.zip

Le code complété côté M5 : XRF_bench_v1.2.ino.zip

Reste à implémenter la commande ZL pour abaisser le XRF avec le nouveau capteur de distance.

(ZL serait un équivalent de GZ 0)