Différences entre versions de « Projets:Magic Control 2021 »

De wikiup
Sauter à la navigation Sauter à la recherche
Ligne 52 : Ligne 52 :
 
* Dans un terminal de commande
 
* Dans un terminal de commande
  
 +
<pre>
 
<nowiki>git clone https://github.com/myhumankit/MagicJoystick2020.git</nowiki>
 
<nowiki>git clone https://github.com/myhumankit/MagicJoystick2020.git</nowiki>
 
<nowiki>cd ./MagicJoystick2020/</nowiki>
 
<nowiki>cd ./MagicJoystick2020/</nowiki>
Ligne 58 : Ligne 59 :
 
<nowiki>cd ./RnetMitm/</nowiki>
 
<nowiki>cd ./RnetMitm/</nowiki>
 
<nowiki>python3 ./RnetIntercept.py --dual</nowiki>
 
<nowiki>python3 ./RnetIntercept.py --dual</nowiki>
 +
</pre>
  
 
== Composants et circuits électroniques utilisés ==
 
== Composants et circuits électroniques utilisés ==

Version du 19 octobre 2021 à 13:28

Equipe

  • Porteurs du projet : Jonathan (MyHumanKit), accompagné par Romane et Marine.
  • Contribut/eur/rice/s : Christophe (INRIA), Fred (ArianeGroup), Gweltaz (Les portes logiques), Mathilde (ArianeGroup), Mélanie (ArianeGroup), Olivier (ArianeGroup), Tanguy (ArianeGroup).
  • Fabmanageuse référente : Delphine (MyHumanKit).
  • Documentation : Pierre (Flossmanuals FR).

Description du projet

Réaliser un contrôle d'environnement R-net pour fauteuil électrique s'interfaçant avec des périphériques R-net existants (JSM, système applicatif).

Génèse du projet

Ce projet a démarré au Fabrikarium 2019, organisé avec ArianeGroup sur le site des Mureaux. Cette première étape a permis de développer des premiers prototypes de joystick à faible force (minijoy) et de mettre au point la communication avec le fauteuil par le protocole R-net.
Au Fabrikarium 2020, le projet a été poursuivi en améliorant le joystick par deux prototypes, ainsi qu'en approfondissant l'analyse des trames de communication R-net.

État technique

Plusieurs prototypes existent pour le joystick à faible force. L'interface CAN/R-net est fonctionnelle sur carte raspberry pi.

Documentation des étapes précédentes sur le wiki :

Objectifs de cette 3e étape

Objectifs prioritaires

  • (groupe 1) Réglage de la calibration du mini-joystick (minijoy)
  • (groupe 1) Test de la séquence d'initialisation du fauteuil de Jonathan
  • (groupe 1) Ajout d'un bouton d'arrêt d'urgence
  • (groupe 2) Emulation de souris (pour androïd ou apple)
  • (groupe 3) Ajout d'un bouton pour donner le contrôle au Raspberry Pi
  • (groupe 3) Design / expérience utilisateur

Objectifs secondaires

  • Ajout d'un switch pour basculer entre JSM et minijoy : mode «passe-plat» ou mode «minijoy»
  • Reverse du protocole de contrôle des vérins
  • Ajout d'un contrôle de la vitesse maximum et des vérins
  • Contrôle d'environnement par application (androïd, ou par techno web, plus portable)
  • Ajout d'un écran de contrôle d'environnement
  • Ajout de fonctions domotiques

Réalisation

Groupe 1 / Capture des trames R-net

  • Se connecter au Pi en SSH
  • Dans un terminal de commande
git clone https://github.com/myhumankit/MagicJoystick2020.git
cd ./MagicJoystick2020/
git branch -a
git checkout -b experimental origin/experimental
cd ./RnetMitm/
python3 ./RnetIntercept.py --dual

Composants et circuits électroniques utilisés

Carte Raspberry Pi 3 model B+

Pour ce porjet, la carte est dotée d'un système Debian 10 Buster sur carte micro-SD 8 GO

https://www.raspberrypi.com/products/raspberry-pi-3-model-b-plus/

Carte PiCAN2 Duo

Carte électronique additionnelle pour Raspberry Pi 3/4 avec double interface pour bus CAN et transformateur d'alimentation (SMPS) capable de fournir 3A. Fabriquée par SK Pang.

https://www.skpang.co.uk/collections/hats/products/pican2-duo-can-bus-board-for-raspberry-pi-4-with-3a-smps

photo de la carte PiCAN2 Duo

Lexique

CAN (Controller Area Network) : Bus de communication série utilisé en électronique, particulièrement dans l'industrie automobile. Il fonctionne sur le principe du multiplexage ou chaque équipement connecté communique avec tous les autres. https://fr.wikipedia.org/wiki/Bus_de_donn%C3%A9es_CAN

JSM (Joystick Module) (module électronique d'un fauteuil) joystick d'assistance à l'arrière du fauteuil, prioritaire sur le contrôle du déplacement.

PiCAN : carte additionnelle pour Raspberry Pi, permettant de s'interfacer à un bus CAN. Il en existe plusieurs variantes, celles utilisées pour ce fabrikarium est une PiCAN2 Duo.

R-net : Le protocole R-net définit des commandes qui passent sur un bus CAN. Il a été mis au point en 2011 par PGDT (PG Drives Technology) pour le contrôle des fauteuils électriques. Il s'agit d'un protocole propriétaire, en 2016 des informations sur ce protocole ont été trouvées par Stephen Chavez par ingénierie inverse pour le projet https://github.com/redragonx/can2RNET.

Raspberry Pi : nano-ordinateur sur carte électronique unique équipé d'un système linux Debian.

Trame CAN : série de bits envoyés sur le bus CAN et interprêtés par le JSM et le contrôleur de moteur.

Watchdog : trame périodique surveillée afin de détecter une éventuelle rupture de communication.

Journal du projet

Premier jour, matin

  • Présentation des étapes précédentes du projet.
  • Présentation de l'état technique actuel.
  • Définition des objectifs primaires et secondaires du fabrikarium.
  • Répartition en 3 groupes pour un premier passage en revue des solutions.