Taula de continguts:
- Pas 1: flux de pols del codificador rotatiu
- Pas 2: fixació del codificador rotatiu
- Pas 3: Esquema
- Pas 4: Codi
- Pas 5: explicació
- Pas 6: sortida
Vídeo: Tutorial del codificador rotatiu amb Arduino: 6 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:16
El codificador rotatiu és un component electrònic capaç de controlar el moviment i la posició quan gira. El codificador rotatiu utilitza sensors òptics que poden generar impulsos quan el codificador rotatori gira. L'aplicació del codificador rotatiu normalment com a monitor de moviment mecànic o robotitzat també es pot utilitzar per a la selecció de menú a la pantalla. El codificador rotatiu té dues sortides perquè pugui distingir entre rotació negativa (CW) i positiva (CCW) i també té un sol botó.
Pas 1: flux de pols del codificador rotatiu
El flux d’impulsos generat pel següent codificador rotatiu és com la imatge anterior.
Pas 2: fixació del codificador rotatiu
Explicació:
- GND GND
- + + 5V
- Botó SW del codificador rotatiu quan es prem
- Dades DT
- Dades CLK 2
Un dels pins DT o CLK ha d’estar connectat al peu d’interrupció d’Arduino Uno o bé tots dos DT i CLK estan connectats al pin d’interrupció.
Pas 3: Esquema
- GND à GND Arduino Uno
- + à + 5V Arduino Uno
- SW à PIN 4 Arduino Uno
- DT à PIN 3 Arduino Uno
- CLK à PIN2 Arduino Uno
Pas 4: Codi
Al següent tutorial, que s'utilitzarà com a interrupció, hi ha el PIN 2 d'Arduino Uno, mentre que el PIN 3 només s'utilitza com a entrada normal.
#define encoder0PinA 2 # define encoder0PinB 3 #define encoder0Btn 4 int encoder0Pos = 0; configuració nul·la () {Serial.begin (9600); pinMode (codificador0PinA, INPUT_PULLUP); pinMode (codificador0PinB, INPUT_PULLUP); pinMode (codificador0Btn, INPUT_PULLUP); attachInterrupt (0, doEncoder, CHANGE); } int valRotary, lastValRotary; bucle buit () {int btn = DigitalRead (codificador0Btn); Serial.print (btn); Serial.print (""); Serial.print (valRotary); if (valRotary> lastValRotary) {Serial.print ("CW"); } if (valRotary {
Serial.print ("CCW");
} lastValRotary = valRotary; Serial.println (""); retard (250); } void doEncoder () {if (digitalRead (codificador0PinA) == digitalRead (codificador0PinB)) {codificador0Pos ++; } else {encoder0Pos--; } valRotary = codificador0Pos / 2.5; }
A la línia 10 de l'esbós anterior s'utilitza per habilitar la interrupció del pin 2 Arduino Uno. A la funció "doEncoder" es calcula a partir del codificador rotatiu. Si el valor de DT i CLK (interrupció de pin d'Arduino Uno) és el mateix, la variable "encoder0Pos" s'incrementarà / s'afegirà, a més d'aquesta condició, la variable "encoder0Pos" es decrementa.
Pas 5: explicació
El valor ValRotary és el valor del nombre de passos que s’han executat. El valor ValRotary s’obté a partir del valor de lectura del codificador de sensor rotatiu dividit per 2,5. A partir de la prova s’obté un valor de 2,5, ja que un pas del codificador rotatiu pot superar 1, de manera que dividiu per 2,5 pel seu valor d’acord amb el pas i també l’addició del retard de lectura.
Mentre que a la línia 19-25 hi ha un programa per determinar si el codificador rotatiu rotatiu CW o CCW. L'explicació de les línies 19-25 és quan la lectura del codificador rotatiu actual és superior a les dades rotatives anteriors expressades llavors com CW. Mentre que si la lectura actual és menor que la lectura anterior, s'indica com a CCW.
Pas 6: sortida
1 = el valor del botó d'inici del rotatiu quan no s'ha premut
Recomanat:
Botó del codificador rotatiu: 6 passos
Botó de codificador rotatiu: es tracta d’un control remot rotatiu basat en un codificador rotatiu. Té les funcions següents: la bateria funciona amb un consum de corrent molt baix quan s’activa Activació automàtica quan es gira el control Suspensió automàtica després d’un període d’inactivitat Configura
Temporitzador amb Arduino i codificador rotatiu: 5 passos
Temporitzador amb codificador rotatiu i Arduino: el temporitzador és una eina que s’utilitza sovint tant en activitats industrials com domèstiques. Aquest muntatge és barat i fàcil de fer. També és molt versàtil, ja que pot carregar un programa triat segons les necessitats. Hi ha diversos programes escrits per mi, per a Ardui
Substitució del codificador rotatiu ISDT Q6: 4 passos
Substitució del codificador rotatiu ISDT Q6: aquest tutorial serveix per ajudar les persones que els codificadors Q6 han anat a parar al llarg del temps ja no es poden utilitzar. La meva va començar a desplaçar-se en direccions aleatòries i irregulars, i fins i tot després de reflotar les juntes de soldadura i netejar el codificador amb alcohol, encara no funcionava
Temporitzador d’alimentació amb Arduino i codificador rotatiu: 7 passos (amb imatges)
Temporitzador d’alimentació amb codificador rotatiu i Arduino: aquest temporitzador d’alimentació es basa en el temporitzador presentat a: https: //www.instructables.com/id/Timer-With-Arduin … Un mòdul de font d’alimentació i un SSR (relé d’estat sòlid) ) s’hi van connectar. Es poden accionar càrregues de potència de fins a 1 KW i, amb canvis mínims, es pot
Tutorial del kit de codificador rotatiu: 5 passos
Tutorial del kit de codificador rotatiu: Descripció: Aquest kit de codificador rotatiu es pot utilitzar per detectar la posició i la velocitat del motor. És un kit molt senzill format per un sensor de feix òptic (interruptor opto, fototransistor) i un tros de disc ranurat. Es pot connectar a qualsevol microcontro