"ma non e' praticamente come il mio?"
Simile, ma concettualmente differente.
Nel tuo hai un generatore di tensione, che eroga sempre 3V, ma la corrente assorbita varia a seconda di quale tasto è premuto... e la tensione al teensy varia in modo non lineare.
Nello schema di Boiler si ha un generatore di corrente, che eroga sempre la stessa corrente e quindi con resistenze tutte uguali hai un andamento lineare nel punto di lettura a seconda del tasto premuto.
Facciamo un esempio pratico: supponi nel tuo di avere 24 tasti e quindi 24 resistenze da 10ohm e 1 da 1ohm.
Se premi il primo tasto hai 3*10/(11)=2,72V
Se premi il secondo hai 3*20/(21)=2,85V
e così via, se premi il 20° hai 3*200/201=2,985V
se premi il 21° hai 3*210/211=2,9856V
Le differenze sono sempre diverse e sempre più piccole e quindi difficili da discriminare.
Nello schema di boiler invece avresti sempre la stessa differenza fra le tensioni di tasti contigui
tastiera analogica
Moderatori: g.schgor,
BrunoValente,
carloc,
IsidoroKZ
0
voti
Stavo pensando, vista la tipologia di funzionamento che gli serve non potrebbe usare il più basico dei convertitori DAC cioè a divisione di tensione con R tutte uguali, e non gli serve nemmeno un generatore di corrente:
anche senza il buffer dovrebbe andare, ma occorre considerare la resistenza di ingresso del pin ADC del teensy...
anche senza il buffer dovrebbe andare, ma occorre considerare la resistenza di ingresso del pin ADC del teensy...
0
voti
tzenobite ha scritto:e' possibile assegnare un valore di tensione a ogni tasto e calcolare i valori delle resistenze di conseguenza?
Con il circuito proposto da
![Foto Utente](/users/users_photos/boiler_small.jpg?t=1377753954)
0
voti
GioArca67 ha scritto:Stavo pensando, vista la tipologia di funzionamento che gli serve non potrebbe usare il più basico dei convertitori DAC cioè a divisione di tensione con R tutte uguali, e non gli serve nemmeno un generatore di corrente:
anche senza il buffer dovrebbe andare, ma occorre considerare la resistenza di ingresso del pin ADC del teensy...
Mi autocito, no non va bene per tasti multipli
0
voti
EcoTan ha scritto:Con il circuito proposto daboiler alla fine del post [26], se i valori assegnati sono ordinati, mi pare che si possa fare, a costo di avere dei valori di resistenza fuori standard (e peraltro ciò fin qui sarebbe vero anche col tuo circuito). Se poi i valori assegnati sono in progressione aritmetica, allora la cosa è presto fatta con resistenze tutte uguali (non però col tuo circuito).
Perché dici ciò?
Generatore di corrente, bastano resistenze tutte uguali.
Il tasto più vicino al generatore determina la nota ed esclude tutti gli altri: esattamente quel che gli serve.
1
voti
Solo come esempio di circuito con generatore di corrente.
Se interessa provo ad abbozzare dei valori.
Ci dovrebbe essere di meglio.
Se interessa provo ad abbozzare dei valori.
Ci dovrebbe essere di meglio.
0
voti
ho appena fatto una simulazione con tutti i tasti e funziona
con 100ma di corrente costante senza tasti premuti ho 2,5v, il primo tasto premuto (dal lato del generatore) da 100mv, il secondo 200mv eccetera, con il tasto piu' a sinistra che esclude gli altri.
insomma, perfetto, perlomeno in teoria come tutte le cose, e anche piu' facile da codificare per il software engineer.
https://tinyurl.com/2hgnjp86
vi chiedo ancora una cosa, premettendo tante scuse: che differenza c'e' tra usare i pin analogici del teensy per leggere i valori di tensione della tastiera e invece usare un ADC?
con 100ma di corrente costante senza tasti premuti ho 2,5v, il primo tasto premuto (dal lato del generatore) da 100mv, il secondo 200mv eccetera, con il tasto piu' a sinistra che esclude gli altri.
insomma, perfetto, perlomeno in teoria come tutte le cose, e anche piu' facile da codificare per il software engineer.
https://tinyurl.com/2hgnjp86
vi chiedo ancora una cosa, premettendo tante scuse: che differenza c'e' tra usare i pin analogici del teensy per leggere i valori di tensione della tastiera e invece usare un ADC?
0
voti
![Foto Utente](/users/users_photos/marcod_small.jpg?t=1443127530)
In tal caso bisogna fare una misura raziometrica (i tasti non vanno direttamente a GND, ma ad un nodo comune che poi va a GND tramite un resistore, la cui caduta di tensione viene usata come tensione di riferimento per l'ADC).
Forse è piú semplice usare qualcosa di integrato, come una REF200
tzenobite ha scritto:ecco, appunto. quindi c'e' un modo per calcolare queste resistenze?
Beh, certo. Non è rocket surgery.
Tuo schema (omettendo la resistenza inutile e fastidiosa di destra):
![V_{out} = \frac{V_{in}}{\sum_{i=0}^{k-1} R_i}\left (-R_0 + \sum_{i=0}^{k-1} R_i \right ) V_{out} = \frac{V_{in}}{\sum_{i=0}^{k-1} R_i}\left (-R_0 + \sum_{i=0}^{k-1} R_i \right )](/forum/latexrender/pictures/27f99e8923ab06cdff8718042e2a64d6.png)
Dove k è il numero del tasto premuto. Se non premi nessun tasto, allora k = n + 1
Schema controllato in corrente:
Con
![R_1 = R_2 = ... = R_n R_1 = R_2 = ... = R_n](/forum/latexrender/pictures/495e7afaef993db369ffe8dd3ab2e01e.png)
vale
![V_{out} = I_{in} k R V_{out} = I_{in} k R](/forum/latexrender/pictures/4850c2bd6441334b684147f3daabf225.png)
dove k è il numero del tasto premuto. Se non premi nessun tasto, allora k = n
Osserva le due equazioni: la differenza principale è che nel secondo, scegliendo resistenze tutte uguali, il passo da una tensione a quella successiva è costante.
Nel tuo schema, non solo non è costante, ma dipende da quale tasto hai premuto
![Sick :-](./images/smilies/eusa_sick.gif)
Boiler
0
voti
tzenobite ha scritto:con 100ma di corrente costante senza tasti premuti ho 2,5v, il primo tasto premuto (dal lato del generatore) da 100mv, il secondo 200mv eccetera, con il tasto piu' a sinistra che esclude gli altri
Bene, mi fa piacere che l'hai visto da solo mentre ti rispondevo.
Però i valori dei componenti che usi sono assolutamente assurdi!
Prendi 1 mA di corrente costante e resistori da 100 ohm, o qualcosa in quell'ordine di grandezze.
vi chiedo ancora una cosa, premettendo tante scuse: che differenza c'e' tra usare i pin analogici del teensy per leggere i valori di tensione della tastiera e invece usare un ADC?
Nessuna, il pin analogico del teensy cela un ADC integrato nel microcontroller. Spesso questi ADC sono molto economici (te lo danno "gratis" con il microcontroller) e la performance è limitata. Ma probabilmente con questo circuito ti basta e avanza. Bisogna solo vedere come sono le caratteristiche dell'ingresso. Potrebbe servire un buffer. E ci metterei anche un modesto passabasso per eliminare i glitch che i pulsanti inevitabilmente introdurranno.
Boiler
Chi c’è in linea
Visitano il forum: Nessuno e 115 ospiti