Convertire un encoder da incrementale uscita A-B ad assoluto interfaccia SSI ?
Jan 21, 2024 Last reply: 2 anni fa 41 Replies
R
RobertoA
Mica e' mio l'encoder, e' un'altra parrocchia Facciano quel che vogliono Io devo leggerlo se vedo impulsi che vengono fuori Pensavo di triggerare il risveglio micro su una commutazione qualsiasi del segnale A, leggi stato A, leggi stato B, memorizza posizione, invia su interfaccia ssi, ciao e buonanotte
Didn't find your answer? Ask the community — no account required.
R
RobertoA
Il 23/01/2024 13:30, infar ha scritto:
No, non ho un impulso di 'fine giro' Ho solo il A+B+gnd, fa conto di vedere un ingranaggio con 500 denti ed un sensore magnetico/induttivo che 'legge' il passaggio dei denti
R
RoV
Eh, pero' si sveglieranno poi dicendo che doveva essere assoluto e invece perde la posizione quando spengono l'encoder. Avvisali prima di iniziare! A parte quel problema, se l'encoder assumi che sia alimentato potresti fare "harvesting" e alimentarti coi suoi segnali. La 422 e' bella robusta.
Ciao,
E
emilio
RobertoA ha scritto:
partiamo dal fatto che alla prima accensione devi fare un reset,quindi sei in posizione 0. L'encoder gira verso dx e da fuori 500 imp/giro, se gira verso dx darà sempre 500 imp/giro ,ma ,diciamo che segna -500. In un registro X memorizzi ,sommandoli,il numero degli impulsi; quindi se il tuo encoder ha generato 345 impulsi ,il registro X della tua scheda leggera
345. Dopo 500 impulsi ,devi memorizzare ,in un registro Y, +1, se girava verso dx o -1 se girava verso sx...se gira da una parte sola ,elimina il negativo :-) Per sommare esattamente gli impulsi puoi usare un interrupt di un uC (che secondo me è la cosa migliore da usare)...se l'apparecchiatura B era spenta, ed ora l'accendi ,leggerà dalla tua scheda a uC i valori dei registri X e Y e quindi saprà esattamente quanto ha girato l'encoder; se il consumo di corrente è fondamentale puoi usare un micro che va in sleep e si risveglia con l'interrupt. ps-spero di aver capito bene ed essermi spiegato atrettanto bene
R
RobertoA
Il 23/01/2024 18:53, RobertoA ha scritto:
Pardon l'esempio sopra e' scorretto, i sensori dovrebbero essere due, uno che legge la cresta di un dente, l'altro che legge il fianco di un altro dente
R
RobertoA
Il 23/01/2024 23:06, emilio ha scritto:
Si, hai capito perfettamente E si, un paio di byte saranno per la posizione sul giro, ed altro paio di byte per il numero di giri Con quattro byte memorizzati su eeprom credo "che io me la cavo" Ora vediamo quanto ci mettono ste eeprom a scriversi, che immagino non siano un flash, sicuramente e' piu' lungo il ciclo di scrittura che la durata impulso minimo (abbiamo detto circa 2,5 mSec), e quindi probabilmente andro' a scrivere solamente ogni tot secondi (ipotizzo di metterci un timer a 5/10 secondi) e solo se la lettura encoder e' diversa dall'ultima scrittura
R
RobertoA
Questa non l'ho capita, cosa c'entra la 422?
E
emilio
ma se hai la schedina sempre alimentata,o con una batteria tampone durante la generazione degli impulsi,scrivi in RAM e quando c'è un tempo morto in E2prom o al limite usi una memoria non volatile ext. tipo RAM + batteria o flash; per perdere i dati ti deve andare fuori uso il uC. ci sono delle schedine ,arduino compatibili,che hanno un ARM STM32 che sono delle schegge e costano pochi euro
R
RoV
Esatto, mi ero sicuramente perso qualche dettaglio. Ma se hai la 24 V va ancora bene, no? Almeno uno tra A e B sara' attivo e con due diodi ricavi quasi 24 V. Vai su un DC/DC miniatura (sostituti switching dei 78xx) ed e' fatta, se riesci a contenere i consumi. Ad esempio con un micro della famiglia MSP430, ce ne sono con consumo bassissimo e memoria ferroelettrica non volatile integrata.
Ciao,
R
RobertoA
Non mi risulta che ALMENO una linea sia sempre a livello alto Per ogni periodo completo di una linea c'e' sempre almeno un quarto di periodo dove entrambi i segnali sono bassi
R
RobertoA
Il 24/01/2024 11:44, emilio ha scritto:
Si certo, pensavo inizialmente di fare qualche prova con una schedina coll'esp32, ce ne sono un'infinta' gia' belle e pronte
R
RoV
E' vero, mannaggia... Allora rilancio: attaccati alla 24 V che alimenta l'encoder :-).
Ciao,
R
RobertoA
Se tu rilanci allora rilancio pure io: il 24V non ce l'ho :) Pensa che non mi danno neanche il riferimento dei segnali A-B, lo 0 volt per capirci, "..attaccati alla carcassa della.." dicheno, e via andare
G
Giacobino da Tradate
Il giorno Thu, 25 Jan 2024 06:27:52 +0100 RobertoA snipped-for-privacy@tiscalinet.it ha scritto:
spiegagli che il problema va bene per allungare il thread nei c.d. "social", ma che nella vita reale si risolve con un vecchio reostato rotativo, o con un piu' moderno potenziometro.
Anche a me piace il clic clic clic degli encoder rispetto al frush del potenziometro, ma il livello iniziale non viene memorizzato dall'encoder, deve essere gia' noto per conto suo al circuito a monte.
So di aver detto una banalità, ma ci tenevo a dire la mia, grazie.
R
RobertoA
Il 25/01/2024 10:02, Giacobino da Tradate ha scritto:
Ah beh, quelli che desiderano dire la propria, sono benvenuti (ad eccessione dei due sciocchini su it.comp.arduer)
A
Allen
RobertoA snipped-for-privacy@tiscalinet.it wrote in news:uot8iv$28a0m$ snipped-for-privacy@dont-email.me:
Si si commenò, intanto hai già fatturato & incassato e gli altri lavorano per te aggratisse.
Bella la vita così.
-- ObiWan snipped-for-privacy@mvps.org wrote in news: snipped-for-privacy@mvps.org: ma evidentemente qualcuno qui pensa che il tempo che gli altri dedicano a rispondergli non abbia valore mentre il suo ne ha.
Message-ID: <pan$91027$7e88083$34e36d0$ snipped-for-privacy@carotone.net Come disse un mio amico, a certe persone si fa prima a metterglielo nel c**o che nel capo
R
RobertoA
Il 25/01/2024 18:43, Allen ha scritto:
ad eccessione...
L
LAB
Il 24/01/2024 16:29, RobertoA ha scritto:
Due diodi Schottky e un condensatore... :)
A
Allen
RobertoA snipped-for-privacy@tiscalinet.it wrote in news:uou6oh$2d5di$ snipped-for-privacy@dont-email.me:
No, per te è la norma approfittarsi della stupidità della gente.
R
RobertoA
Il 26/01/2024 18:03, Allen ha scritto:
ad eccessione dei due sciocchini...
Join the Discussion
Have something to add? Share your thoughts — no account required.
Didn't find your answer?
Ask the community — no account required
Report Content
You are reporting this content to the moderators. They will look at it
ASAP.