Auteur Sujet: Tablette de commande du réseau  (Lu 18086 fois)

Jean-Luc

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 1714
    • Voir le profil
Tablette de commande du réseau
« le: juin 16, 2017, 12:08:14 pm »
Bonjour,

J'ouvre ce fil pour exposer le projet que nous avons de développer une tablette à base d'Arduino. Il s'agit d'un projet collectif mené avec deux camarades, Pierre et Philippe, dans lequel je ne suis pas le programmeur principal et ma part y est pour l'instant extrêmement faible. Je vais donc présenter un travail qui n'est pas le mien car ni Pierre ni Philippe ne participent au forum.

Pour commencer je vais présenter rapidement le système d'exploitation de réseau que nous avons conçu. Il s'agit d'un système de pilotage analogique. Le réseau est donc divisé en zones alimentées séparément. On distingue deux types de zones :
1 - les cantons dans lesquels un convoi peut être à l'arrêt. Le plus petit canton du réseau en longueur de rails définit la longueur maximum d'une rame. les cantons ont une zone de pleine voie et une zone d'arrêt dans chaque sens
2 - les zones d'aiguille

Chaque zone alimentée est gérée par un microcontrôleur et de l'électronique associée : l'alimentation traction.
Une alimentation traction remplit les fonctions suivantes :
* détection en zone de pleine voie et en zone d'arrêt
* mesure du courant (détection des court circuits)
* mesure de la vitesse du convoi (toutes les 10ms)
* calcul de la PWM par un asservissement proportionnel intégral
* alimentation du convoi
* éclairage permanent du convoi

Les alimentations traction sont reliées par un bus CAN à 727Kbits/s à un contrôleur central qui
- diffuse deux signaux de synchronisation pour la synchronisation des PWM (à 32kHz) et la mesure de vitesse (à100Hz)
- reçoit des alimentations traction les informations de détection de présence, de mesure de courant, etc
- envoie aux alimentations traction des ordres d'affection de convoi (gains de l'asservissement), les consignes de vitesse

Un second bus CAN dédié aux accessoires (aiguillages, signaux, ponts tournants, portes de remises, ...) permet de communiquer entre le contrôleur central et les cartes de pilotage des accessoires.

Le contrôleur central contrôle le déplacement des convois et assure la sécurité : block system habituel. Il contrôle également la signalisation. Il reçoit des souhaits de positionnement des aiguillages. Ces derniers sont effectivement positionnés lorsque par le contrôleur central lorsque les contraintes de sécurité le permettent.Le logiciel de suivi de convois, Caniche, a été développé par Pierre.

Toute cette électronique n'est pas entièrement Arduino. Pour ma part, j'ai deux cartes construites autour d'un Arduino Nano : la carte pont tournant et une carte servo pour les portes de remises. Toutefois, pour des évolutions futures, nous pensons remplacer le contrôleur central (actuellement une carte Olimex avec un ARM 7 TDMI à ~60MHz) par un Teensy 3.6 qui dispose de deux contrôleur CAN.

Comme nous ne souhaitons pas avoir un ordinateur de bureau ou portable dans la boucle, l'interface homme-machine pour piloter le réseau choisi est une tablette (entre autre).

Pour répondre à une question qui ne manquera pas d'arriver, pourquoi ne pas avoir utilisé une tablette existante fonctionnant sous iOS ou Android ? Effectivement nous réalisons une tablette qui est plus épaisse et moins performante sans être pour autant vraiment moins chère. Mais un critère essentiel à nos yeux est de ne pas être dépendant d'une infrastructure logicielle complexe et de politique de développement et déploiement évolutives, casse pieds et imprévisibles.

Le hard

Pour l'instant Pierre a développé un prototype composé de :
- Un écran tactile 7" avec interface parallèle :



- Un Teensy 3.6



- Une connectique CAN
- Un ampli audio LM386 (pour faire des blip)
- Un encodeur rotatif (qui n'est pas monté et qui je pense ne le sera pas)

le tout intégré sur une carte.

À l'étude :

- Intégration dans un boîtier
- Alimentation sur batterie LiPo
- Lien radio avec un NRF24

Le soft

Le logiciel Arduino bien sûr,
UTFT, bibliothèque de gestion des écrans LCD
Une bibliothèque de gestion du tactile, URTouch étant mal écrite et buggée
AW (Arduino Widgets), bibliothèque développée par Pierre qui affiche des widgets, gère leur superposition et l'interaction avec l'écran tactile et qui sera disponible bientôt.

Des photos vont suivre :)
« Modifié: juin 16, 2017, 12:11:31 pm par Jean-Luc »
Cordialement

TF53

  • Newbie
  • *
  • Messages: 47
    • Voir le profil
Re : Tablette de commande du réseau
« Réponse #1 le: juin 16, 2017, 01:07:01 pm »
Un beau projet en perspective!

Comment la mesure de la vitesse des convois est-elle réalisée?

Jean-Luc

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 1714
    • Voir le profil
Re : Tablette de commande du réseau
« Réponse #2 le: juin 16, 2017, 03:35:12 pm »
Par mesure de la FCEM. C'est décrit ici http://forum.locoduino.org/index.php?topic=36.0
Cordialement

Jean-Luc

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 1714
    • Voir le profil
Re : Tablette de commande du réseau
« Réponse #3 le: octobre 22, 2017, 09:32:02 am »
Bonjour,

ArduinoWidget a été mise à disposition : https://github.com/Locoduino/ArduinoWidgets

La doc est en cours d’élaboration.
Cordialement

Dominique

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 3039
  • 100% Arduino et N
    • Voir le profil
Re : Tablette de commande du réseau
« Réponse #4 le: octobre 24, 2017, 02:03:16 pm »
Ayant la chance et je dirais aussi l'honneur de pouvoir construire cette tablette avec l'aide de Jean-Luc et de Pierre et pour moins cher que celle qui fonctionne dans mon réseau actuellement (voir http://forum.locoduino.org/index.php?topic=166.msg2923#msg2923), j'avoue que suis super intéressé par son logiciel qui permet d'aller beaucoup plus loin qu'avec UTFT.

Comme mon réseau utilise aussi le bus CAN et que cette tablette dispose d 'un écran 7", elle est donc maintenant mon meilleur choix pour le gestionnaire qui est celui de Pierre.

Comme quoi, avec deux architecture différentes (l'une pour l'analogique, l'autre en DCC) on arrive parfaitement, sur Locoduino, à satisfaire tout le monde  ;D
« Modifié: octobre 24, 2017, 02:10:08 pm par Dominique »
Cordialement,
Dominique