petit_pendule_de_furuta_software
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédenteDernière révisionLes deux révisions suivantes | ||
petit_pendule_de_furuta_software [2022/06/22 16:46] – [Branchement direct sur la Pi] serge | petit_pendule_de_furuta_software [2023/05/22 14:09] – [Cartel] Benjamin Labomedia | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ====== Petit Pendule de Furuta: Branchements | + | ====== Petit Pendule de Furuta: |
<WRAP center round box 60% centeralign> | <WRAP center round box 60% centeralign> | ||
**{{tagpage> | **{{tagpage> | ||
Ligne 11: | Ligne 11: | ||
**{{tagpage> | **{{tagpage> | ||
</ | </ | ||
+ | ====== Mode d' | ||
+ | Phallocratie n°2 - le pendule de Furuta est presque plug and play, pour l' | ||
+ | Ensuite, une fois l'ordi démarré, on accède à des écrans interactifs : | ||
+ | |||
+ | {{ :: | ||
+ | |||
+ | {{ :: | ||
+ | Il existe 2 modes de fonctionnement : le mode Training qui rejoue l’entraînement du pendule et le mode Testing où le modèle déjà entrainé est utilisé pour maintenir la tige à la verticale | ||
+ | |||
+ | Via ce menu, il est aussi possible d' | ||
+ | |||
+ | {{ :: | ||
+ | Pour ce mode, on peut démarrer ou arrêter l' | ||
+ | |||
+ | {{ :: | ||
+ | Pour ce mode, on peut démarrer ou arrêter le test du modèle | ||
+ | |||
+ | ====== Cartel ====== | ||
+ | Phallocratie même n°2 est un pendule de Furuta réalisé par Serge Pierre dans le cadre des activités de la Labomedia. | ||
+ | |||
+ | Le pendule de Furuta, ou pendule rotationnel inversé, se compose d'un bras entraîné qui tourne dans le plan horizontal et d'un pendule attaché à ce bras qui est libre de tourner dans le plan vertical. Il a été inventé en 1992 au Tokyo Institute of Technology par Katsuhisa Furuta et ses collègues. | ||
+ | |||
+ | Ce robot illustre particulièrement bien ce que l'on appelle " | ||
+ | |||
+ | Ce mode d' | ||
+ | |||
+ | Phallocratie même n°2, pour maintenir sa tige à la verticale, a ainsi appris pendant plusieurs jours, plusieurs sessions d' | ||
+ | |||
+ | Ce dispositif permet soit de démontrer le fonctionnement du pendule avec l'' | ||
+ | |||
+ | Réalisation : Serge Pierre avec l'aide d' | ||
+ | Documentation : https:// | ||
+ | |||
+ | =====Les sources du projet===== | ||
+ | * **[[https:// | ||
+ | {{ : | ||
===== GPIO d'un Pi3 B+ ou d'un Pi4===== | ===== GPIO d'un Pi3 B+ ou d'un Pi4===== | ||
{{ : | {{ : | ||
Ligne 44: | Ligne 80: | ||
====Câblage sur la Pi==== | ====Câblage sur la Pi==== | ||
- | {{: | + | {{ : |
+ | |||
+ | ====Tension d' | ||
+ | Les PINS GPIO sont à 1 si la tension d' | ||
+ | Les entrées A B et Index de chaque codeurs sont baissées à 3V avec une puce [[https:// | ||
+ | {{: | ||
+ | {{: | ||
=====PWM===== | =====PWM===== | ||
- | {{: | + | {{: |
==== Matériels ==== | ==== Matériels ==== | ||
Ligne 69: | Ligne 112: | ||
https:// | https:// | ||
- | **Latence des callbacks** | + | ====Latence des callbacks==== |
- | Dans certains transitoires avec des rotations sur les codeurs rapides, les callbacks | + | Une Raspberry Pi peut gérer |
+ | Un codeur | ||
+ | Un codeur | ||
+ | Soit 20 kHz pour les 2 codeurs à un tour par seconde. Mais certain transitoires vont plus vite que 1 tour par seconde. Les callbacks sont empilé sur une pile qui a été estimée à 2 mn après quelques heures d' | ||
- | ====Branchement sur ESP32 et Com en SPI avec Raspi==== | + | ===Solution=== |
+ | **Le codeur de 4000 points du balancier a été remplacé par un codeur 1000 points**.\\ | ||
+ | La fréquence a 1 tour par seconde devient 8 kHz: ce qui fait une grosse marge par rapport à 20 kHz. | ||
- | ===Activation du SPI=== | + | La précision est tout à fait suffisante: le point zéro est défini à -/+ 1 ou 2 ou 3 points, c'est très sensible. |
- | [[https://www.raspberryme.com/ | + | |
+ | =====Recherche sur ESP32===== | ||
+ | ====Branchement sur ESP32 et Com en SPI avec Raspi==== | ||
+ | {{:media_16: | ||
===Ressources=== | ===Ressources=== | ||
* **[[https:// | * **[[https:// | ||
* Voir la page dédiée: **[[rotary_encoder_controller]]** | * Voir la page dédiée: **[[rotary_encoder_controller]]** | ||
- | =====Codeurs à Effet Hall de pandauto.com===== | ||
- | Les 2 codeurs esclaves sont branchés sur SPI0\\ | ||
- | {{: | ||
- | |||
- | * **[[https:// | ||
- | * https:// | ||
- | * **[[spi_documentation_1|]]** | ||
- | * **[[spi_documentation|]]** | ||
- | * **[[https:// | ||
- | Doc probable pour le SPI du capteur à effet hall chinois : [[https:// | ||
- | Il semblerait que le circuit dans le coder est peut être celui-ci, car le datagramme SPI est très similaire : [[ https:// | ||
- | Il faudrait donc voir, car pour lire une données théoriquement il faut envoyer une commande READ qui permet de recevoir simultanément la valeur au moment du READ précédent.\\ | ||
- | On devrait avoir 16 bits à lire : | ||
- | - 1 bit de parité | ||
- | - 1 bit error flag | ||
- | - 14 bits indiquant l' | ||
- | Lorsqu' | ||
- | Ces codeurs ont fonctionné rarement, en python en direct sur la Pi ou sur Arduino UNO, et le plus souvent rien, nada. | ||
- | |||
- | |||
{{tag> bestiaire_ia petit_pendule_furuta raspberry_pi raspbian sb }} | {{tag> bestiaire_ia petit_pendule_furuta raspberry_pi raspbian sb }} |
petit_pendule_de_furuta_software.txt · Dernière modification : 2023/05/22 14:38 de Benjamin Labomedia