Ceci est une ancienne révision du document !
Table des matières
Encodeur rotatif à Effet Hall Pandauto P3022 avec puce AS5048A
Avec Communication en SPI
Arduino UNO
Raspberry Pi
Branchement sur ESP32 et Com en SPI avec Raspi
Activation du SPI
Activation du SPI Aller dans Menu, Settings, Enable SPI, puis Vérifier si SPI est activé
Ressources
- best-microcontroller-projects.com Rotary Encoder: Immediately Tame your Noisy Encoder! Find out how to Instantly Stop Switch Bounce using one of 2 software methods. Easily get Reliable Operation from your Encoder.
- Voir la page dédiée: Réalisation d'un controleur pour capteur de position angulaire optique
Codeurs à Effet Hall de pandauto.com
Ces codeurs sont construits sur une puce AS5048A
ZoetropeLabs propose une lib pour Arduino
Télécharger le projet: aller dans le dossier AS5048A-Arduino-master/lib, compresser en zip le dossier AS5048A.
Dans Arduino IDE, allez à Sketch –> Include Library –> Add ZIP Library –> ajouter le zip de AS5048A
Exemple:
#include <AS5048A.h> AS5048A angleSensor(10); void setup() { Serial.begin(115200); angleSensor.init(); } void loop() { delay(10); word val = angleSensor.getRawRotation(); Serial.println(val, DEC); }
Ressources
- Serial Peripheral Interface Une liaison SPI est un bus de données série synchrone baptisé ainsi par Motorola, au milieu des années 1980 qui opère en mode full-duplex.
- aliexpress.com Capteur d'angle Hall rotatif, sortie de Communication SPI 0-360 degrés, alimentation 5V DC
Doc probable pour le SPI du capteur à effet hall chinois : page aliexpress
Il semblerait que le circuit dans le coder est peut être celui-ci, car le datagramme SPI est très similaire : datasheet
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'angle absolue sur 14 bits.
Lorsqu'on lit les données SPI dans les 2 octets, il y a donc les 6 derniers bits du premier octet à concaténé avec les 8 bits du second octet pour reconstituer le mot de 14 bits.