Sari la conținut
ELFORUM - Forumul electronistilor

Adaptor pt encoder


Postări Recomandate

  • Răspunsuri 10
  • Creat
  • Ultimul Răspuns

Top autori în acest subiect

Top autori în acest subiect

Imagini postate

Nu prea poţi asta simplu.Encoderul dă impulsuri între un pin comun şi două laterale, într-o ordine stabilită de sensul de rotaţie.

Butoanele generatorului au două funcţii, diferenţiate de timpul de apăsare. Ar trebui construită o interfaţă care să transforme impulsurile encoderului în semnale corespunzătoare comenzilor date de butoane.Acea interfaţă ar însemna încă un montaj de sine stătător, cel mai probabil cu un microcontroller.

Link spre comentariu
1 oră în urmă, daniels a spus:

Am acest generator PWM. Cum as putea sa-l modific astfel incat sa-i pun 2 encodere in locul celor 4 butoane?

Nu poti inlocui un buton cu un encoder. Daca in ecuatie mai pui un microcontroller nu mai ai nevoie de genratorul tau PWM. 

Ce vrei sa faci mai exact?

Link spre comentariu

Tu banuiesc ca vrei sa folosesti generatorul PWM pentru a scoate pe iesire PWM de frecventa variabila (sau factor de umplere variabil la o frecventa fixa). Teoretic daca in locul butonului vii cu un semnal dreptunghiular generat asa cum cere generatorul PWM (la sfarsitul mesajului l-am detaliat)  poti sa faci acest lucru, insa esti limitat de debouncing-ul din soft (din soft pentru a preveni contactele parazite la apasarea unui buton). Deci nu ai sa poti sa sa cobori sub acel delay din debouncing. Deci practic nu poti realiza o bucla de reglare continua daca constanta de timp a procesului este mica. Daca este un proces lent atunci teoretic poti insa ramane sa convertesti semnalul de la iesirea decodorului in semnal dreptunghiular de frecventa minima acceptat de generatorul PWM (daca cobori sub ea se pierde informatia). Asta o faci cu un microcontroller, dar daca bagi in ecuatie un microcontroller nu isi mai are rost generatorul PWM (este inlocuit de microcontroller). 

 

Banuiesc ca ai encodere cu iesire in impulsuri si atunci la iesirea lor ai:

600px-Quadrature_Diagram.svg.png

 

si tu citesti pe iesirea lui in permanenta starile: 00, 01, 11, 10.

Incremental_directional_encoder.gif

 

Si tu trebuie sa convertesti in semnal 00 (nu face nimic), 10 (incrementeaza frecventa ), 01 (decrementeaza frecventa) insa nu ai ce cauta cu 11 (este ca si cum apesi concomitent butonul de incrementare si decrementare simultan). 

Apoi mai apare o problema: encoderul genereaza in continuu impulsuri ori pentru setarea gereratorului ai nevoie doar de o secventa si apoi  urmeaza o pauza. 

Deci fara un microcontroller nu vad cum se poate rezolva problema. 

Editat de merck
Link spre comentariu

Se poate simplu. Exista un IC care face exact asta care la baza este un uC cu 8 pini. Se cheama LS7083 sau 7084 dar posbil sa mai fie si altele. Am avut ( si inca mai am in plan ) un proiect care sa faca exact asta cu un PIC cu 8 Pini si un mic PCB direct pe encoder. Nu credeam ca o sa trebuiasca cuiva.... dar vad ca exista interes.

Editat de djvas
Link spre comentariu

Singura solutie este cu un microcontroller.  De exemplu folosesti o placa arduino uno si apoi scoti microcontrollerul din soclu dupa programare, si ii faci o placuta mai mica. Un exemplu poti gasi si aici: rotary encoder arduino

 

Circuite dedicate nu prea se gasesc, iar cu circuite integrate logice este mai costisitor:

piese multe, si gabarit depasit fata de un singur microcontroller. Am incercat si eu demult sa fac asa ceva cand nu stiam sa programez microcontrollere. De exemplu am incercat aceasta schema decoding encoder , dar problema este ca daca encoderul se afla in starea 10 sau 01 la punerea sub tensiune LED-ul D1 este aprins. Am incercat mai multe scheme si la unele se intampla invers, cand encoderul se gasea in starea 11 sau 00, la punerea sub tensiune unul dintre LED-uri este aprins.
 

Link spre comentariu

Folosind componente SMD se poate realliza una din variantele din foaia de mai jos, fara sa fie nevoie de un microcontroller pentru asta. In ambele cazuri se obtin impulsuri pe una dintre iesiri (CW sau CCW), functie de sensul de rotatie a encoderului.

 

image.thumb.png.88d426f6f5814bb1b9ce94c793f1080b.png

 

Si o varianta cu un singur circuit TTL, tipul 74(HC)74, care face acelasi lucru.

 

image.thumb.png.bf900c13f48a2a4e3887eff5737308e3.png

Link spre comentariu

Firul comun al encoderului se conecteaza la GND, nu la +5V, iar pinii A si B, prin rezistente de 10k la +5V.

Pentru a-ti clarifica diferentele intre 7474 si 74174 citeste foile de catalog ale celor doua circuite integrate, in special pinout-ul. Sunt diferente semnificative ce influenteaza functionarea montajului.

Link spre comentariu

Creează un cont sau autentifică-te pentru a adăuga comentariu

Trebuie să fi un membru pentru a putea lăsa un comentariu.

Creează un cont

Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!

Înregistrează un nou cont

Autentificare

Ai deja un cont? Autentifică-te aici.

Autentifică-te acum



×
×
  • Creează nouă...

Informații Importante

Am plasat cookie-uri pe dispozitivul tău pentru a îmbunătății navigarea pe acest site. Poți modifica setările cookie, altfel considerăm că ești de acord să continui.Termeni de Utilizare si Ghidări