Différences entre versions de « Projets:Magic Joystick 2020 »
Ligne 110 : | Ligne 110 : | ||
[https://learn.adafruit.com/raspberry-pi-analog-to-digital-converters/ads1015-slash-ads1115 tutoriel d'utilisation avec Raspberry Pi] | [https://learn.adafruit.com/raspberry-pi-analog-to-digital-converters/ads1015-slash-ads1115 tutoriel d'utilisation avec Raspberry Pi] | ||
− | = Annexe | + | = Annexe - 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 | '''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 |
Version du 21 octobre 2020 à 14:15
Description du projet
Réaliser un joystick à faible force, qui puisse être manipulé avec une mobilité très réduite et interfacé avec un fauteuil électrique.
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 et de mettre au point la communication au fauteuil par le protocole R-net. A la fin de ce premier fabrikarium, il a été fait la preuve que l'on pouvait utiliser une manette xbox reliée au fauteuil.
État technique
Le joystick à faible force existe sous forme de prototype fonctionnel, mais il va être amélioré dans cette deuxième étape.
L'interface CAN/R-net a été testée avec une matériel industriel, il reste à la faire fonctionner sur une carte raspberry pi.
Documentation de l'étape précédente sur le wiki :
Cahier des charges
Améliorer le fonctionnement du joystick, en particulier de la rotule et de la détection.
Mettre au point la communication SPI entre le capteur angulaire et la carte Raspberry Pi.
Traitement des données et calibration.
Mettre au point la communication avec le fauteuil par R-net en utilisant une carte PiCAN2.
Fusionner les 2 fonctions pour qu'elles soient utilisables sur la même carte Raspberry Pi.
Chercher une solution permettant l'alimentation électrique de l'ensemble.
Réalisation
(schéma du mardi 21 oct, 10h)
Matériel nécessaire
imprimante 3D
- pièces en impression 3D
- (rotules en métal à faible frottement)
- aimants néodyme 3x3mm
- capteur de positionnement MLX90333
- écran OLED 0.96 128x64 pixels
- convertisseur 12bits analogique/numérique ADS1015
- Raspberry Pi 3 + carte SD avec système Raspbian 10 «Buster» et driver pour bus CAN
- carte PiCAN2 pour Raspberry Pi
- cables de connection R-net
Configuration du Raspberry Pi
OS : Raspbian 10 «Buster»
Configuration pour utiliser la carte PiCAN2 : https://www.skptechnology.co.uk/pican2-software-installation/
Captation
Pour le circuit, recherche de méthodes pour configurer la carte MLX90333
Pour l'utilisation moulage d'un doigt afin d'y fixer un aimant
Modélisation des pièces 3D pour fixer le joystick (avec Catia)
Moulage
Afin de créer un contrôleur adapté, moulage du doigt en plusieurs étapes. l'aimant est mixé sur le moulage.
La pâte utilisée pour le moulage est de type bi-composant, elle est travaillée directement sur le doigt et sèche en 5 minutes environ.
Pâte RTV 3535 vendue par Rougié & Plé : silicone RTV 3535 300G
Communication
Premiers tests avec un système Raspberry Pi + PiCAN2
Composants utilisés
Capteur de positionnement MLX90333
datasheet du capteur angulaire MLX90333
Module équipé d'un circuit intégré MLX90333 de Melexis, avec la capacité de capter la position 3D d'un aimant (effet Hall). Ce circuit peut communiquer de différentes manières : analogique, PWM ou série SPI. Sur cette carte, il est configuré par défaut pour une double sortie analogique, et donne les valeurs x et y. Recherches en cours pour changer de mode et récupéer les données x,y,z!
carte PiCAN2
Carte additionnelle pour Raspberry Pi, fabriquée par SK Pang Electronics permettant de mettre en oeuvre un bus CAN (nécessite l'installation d'un driver sur le système du Raspberry Pi).
Documentation de la carte PiCAN2 (à télécharger sur le site de SK Pang Electronics)
écran OLED 0.96 avec contrôleur SSD1306
Module d'écran noir et blanc 128x64 pixels avec communication par I2C
datasheet du contrôleur SSD1306
tutoriel d'utilisation avec Raspberry Pi
convertisseur analogique-numérique 12bits ADS1015
Convertisseur analogique numérique à 4 entrées avec communication par I2C
datasheet du composant ADS1015
tutoriel d'utilisation avec Raspberry Pi
Annexe - 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
Effet Hall : https://fr.wikipedia.org/wiki/Effet_Hall
ISM (Intelligent Seating/lighting Module) : (module électronique d'un fauteuil) assise «intelligente» et éclairage.
JSM (Joystick Module) (module électronique d'un fauteuil) joystick d'assistance à l'arrière du fauteuil, prioritaire sur le contrôle du déplacement.
PM (Power Module) : (module électronique d'un fauteuil) bloc moteur, module d’alimentation (unité de commande)
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.
SPI (Serial Peripheral Interface) : Bus de communication série utilisé en électronique. «Les circuits communiquent selon un schéma maître-esclave, où le maître contrôle la communication. Plusieurs esclaves peuvent coexister sur un même bus, dans ce cas, la sélection du destinataire se fait par une ligne dédiée entre le maître et l'esclave appelée « Slave Select (SS) ». https://fr.wikipedia.org/wiki/Serial_Peripheral_Interface