Pages: [1] 2   Go Down
Author Topic: Contagiri e come pilotare 22 led?  (Read 1230 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Full Member
***
Karma: 0
Posts: 166
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao a tutti!

Sto cercando di realizzare un bel contagiri con 22 led in riga per la mia old panda  smiley-mr-green

ho solo un paio di domande da porre:

1) come posso pilotare 22 led con un arduino solo  smiley-grin ho a disposizione qualche 74hc595 e 165 ma non so se possono servire
2) dalla centralina che tipo di segnale esce? è tipo un pwm oppure una tensione variabile? eventualmente, con un tester come potrei capire che tipo di segnale ricevo?

That's all folks smiley-grin

Grazie a tutti in anticipo!  smiley
Logged

Mom: Can he lead a normal life?
Doctor: NO! he'll be an engineer!

Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 486
Posts: 12290
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Mi sentirei di consigliarti integrati tipo LM3914 o LM3916 (il 3915 è un logaritmico e non va bene come contagiri): ogni IC pilota 10 LED, puoi usarne due in cascata e arrivare a 20, oppure 3 per 30 (massimo, ma ti puoi fermare a 22); puoi impostarlo per modalità dot o bar (punto o barra); non so che tipo di segnale hai a disposizione, mi pare avesse a che fare con gli impulsi delle puntine; se c'è una centralina predisposta per il montaggio di un contagiri allora non è una OLD Panda, sarà una Panda meno recente di quella attuale smiley-wink Una centralina potrebbe tranquillamente convertire i giri in una tensione continua variabile, per questo integrato sarebbe l'ideale, ma anche per Arduino, ovviamente rapportando opportunamente le tensioni.
Logged

Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Offline Offline
Full Member
***
Karma: 0
Posts: 166
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

scrissi old per indicare la vecchia forma, è una delle ultime uscite in effetti smiley-grin

Comunque, gli lm3914 mi consentirebbero di salvarmi con 5 euri di spesa (costicchiano però smiley-sad) 20 led sono più che sufficienti, giusto per risparmiare al max, con gli shift register non si riesce a far nulla? 
Logged

Mom: Can he lead a normal life?
Doctor: NO! he'll be an engineer!

Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 486
Posts: 12290
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

scrissi old per indicare la vecchia forma, è una delle ultime uscite in effetti smiley-grin

Comunque, gli lm3914 mi consentirebbero di salvarmi con 5 euri di spesa (costicchiano però smiley-sad) 20 led sono più che sufficienti, giusto per risparmiare al max, con gli shift register non si riesce a far nulla? 
Ma non saprei dirti, gli shift register in genere si usano precaricandoli con dei bit che poi puoi usare per tenere accesi o spenti dei LED, p.es.; ma qui si tratta di trasformare in diretta un segnale, che ancora non si sa di che tipo sia, in una barra di led o un solo led che si "muove" tipo punta di lancetta e l'LM3914 (l'LM3916 costa di più ma la funzionalità è identica, solo che è in grado di pilotare diversi tipi di elementi, per i LED va benissimo il 3914); gli shift li vedo male.... oltretutto per caricarli li devi interfacciare, non penso che alla fine risparmi moltissimo. Vedi di capire che segnale hai a disposizione e poi si studia la soluzione migliore e più economica smiley-money
Logged

Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Offline Offline
Full Member
***
Karma: 0
Posts: 166
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

il segnale è un onda tipo pwm a frequenze parecchio basse si parla di circa 30hz, ai minimi regimi, per salire verso le centinaia con l'aumentare dei giri, c'era anche una tabella, ma non me la ricordo più, la tensione a livello alto è superiore ai 7.5V quindi potrei portarla a 5V con un lm7805?

p.s. non ho capito, in caso di pwm è meglio usare l'arduino o un circuito analogico?  smiley-mr-green
Logged

Mom: Can he lead a normal life?
Doctor: NO! he'll be an engineer!

Marche
Offline Offline
Edison Member
*
Karma: 33
Posts: 2261
azioni semplici per risultati complessi
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Da quel poco che ho sperimentato con gli integrati serie LM391* posso dirti che non accettano in ingresso un segnale pwm, ma puoi benissimo adattarlo con un filtro RC (resistenza più condensatore).
Anche secondo me per fare un contagiri questi integrati non se la cavano male, rimangono però un pò ostici per poterli tarare (nulla di tragico comunque).
Ci dovrebbero essere anche degli integrati che restituiscono in uscita una tensione proporzionale alla frequenza del segnale che metti in ingresso ma ora mi sfugge la sigla, pardon.
Con gli shift register si può fare ugualmente ma non so se il gioco vale la candela, è vero che costano meno ma poi devi usare anche un atmega e fronzoli vari, non so se conviene.
Ciao

Logged

Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 486
Posts: 12290
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Gli integrati a cui si riferisce BUD sono dei convertitori frequenza->tensione, ti forniscono in uscita una tensione proporzionale alla frequenza in ingresso, però torniamo al discorso dei costi. Viste le basse frequenze in gioco, potresti misurarle, opportunamente partizionate per abbassarle al limite di 5V (il 7805 è uno stabilizzatore, non c'entra nulla in questa cosa, bastano due resistenze opportunamente calcolate), direttamente con Arduino, se la cosa funziona (e funziona sicuro) usi un 328P come convertitore e poi gli piazzi un bel display LCD e non se ne parla più.....
L'idea del filtro RC dovrebbe essere buona e comunque è di facile sperimentazione: devi mettere in serie al segnale della centralina una R e successivamente un C verso massa, prova con una 330ohm e 10µF; poi misura col tester la tensione continua e vedi che risultati ottieni; se hai un tester a lancetta sarebbe preferibile perché ti renderesti subito conto visivamente della risposta del filtro; puoi variare i valori sperimentalmente fino ad ottenere una risposta valida, a quel punto di applica al 3914.
BUD li ha usati di recente mi pare, però è strano che abbia avuto problemi di taratura, me li ricordo piuttosto precisi, avendo realizzato diversi progetti tanti anni fa; invece da evitare sono i 3915 che hanno comportamento logaritmico e non lineare.
Logged

Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 120
Posts: 9158
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

1) come posso pilotare 22 led con un arduino solo  smiley-grin ho a disposizione qualche 74hc595 e 165 ma non so se possono servire

Implementa il Charlieplexing e non ti serve nessun hardware esterno oltre ai led e le resistenze di limitazione, con cinque pin arrivi a 20 led, con sei pin arrivi a 30 led.

Logged

Offline Offline
Full Member
***
Karma: 0
Posts: 166
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Cacchio mi avete dato una riga di soluzioni non da poco, Grazie davvero! smiley

L'idea del contagiri su schermo LCD è figa, maaaaa.....non quanto i led stile formula1 o WRC  smiley-mr-green
Tuttavia, oltre al contagiri a led, prevedevo l'uso dello schermo per inserirci info sulla temperatura dell'acqua e qualche altra cavolata, ma prima devo vedere se posso prelevare queste info dalla centralina oppure se devo mettere le mani sul motore (cosa che preferirei evitare dato che non ho mai lavorato su quello di una macchina).

Visto che sono un pellegrino il charlieplexing mi pare una soluzione davvero economica (valutando anche quanti pin servono per l'LCD) devo studiarla e vedere come va, tanto per comprare gli integrati faccio sempre a tempo smiley-wink (la strada più facile è quella dove si impara meno  smiley)

Quindi devo calcolare il partitore di tensione, se avessi un oscilloscopio sarebbe più facile, ma vabbè andrò per tentativi, è quel >= 7.5 che mi darà fastidio  smiley-evil
Logged

Mom: Can he lead a normal life?
Doctor: NO! he'll be an engineer!

Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 486
Posts: 12290
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Ti serve un oscilloscopio per calcolare un partitore? smiley-eek-blue

VRead = 7,5V
VIn = 5V
R pull-down = 10K

Rpartitore = (VRead*R pull-down/Vin) - R pull-down = (7,5*10000/5) - 10000 = 5000 ohm

Collega al segnale di 7,5V (ma misura bene il picco massimo!!! in caso rifai il calcolo) ad una R da 5K (o leggermente maggiore, NON minore), l'altro capo di questa R lo colleghi ad una R da 10K; l'altro capo della 10K a massa; tra il punto di contatto tra le due R e la massa (GND) ti troverai 5V quando in ingresso ne hai 7,5; questo punto lo potrai collegare ad Arduino; per sicurezza (eventuali picchi) in parallelo alla R da 10K metti uno zener da 5,1V con anodo a massa e catodo sul pin di Arduino e quindi sul punto di contatto tra le due R.
Logged

Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Offline Offline
Full Member
***
Karma: 0
Posts: 166
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

l'oscilloscopio mi serve per vedere i picchi, e perchè >= 7.5 può voler dire un massimo di 12V, un partitore fatto per 7.5 potrebbe non andare bene per i 12, è concettualmente sbagliato?  smiley-roll-sweat
Logged

Mom: Can he lead a normal life?
Doctor: NO! he'll be an engineer!

Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 120
Posts: 9158
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

l'oscilloscopio mi serve per vedere i picchi, e perchè >= 7.5 può voler dire un massimo di 12V, un partitore fatto per 7.5 potrebbe non andare bene per i 12, è concettualmente sbagliato?  smiley-roll-sweat

Metti uno zener veloce da 5.1 Volt in parallelo alla resistenza dove legge il pin d'ingresso e sei a posto, se la tensione va oltre il massimo ammesso interviene lo zener per tosarla.

Logged

Offline Offline
Full Member
***
Karma: 0
Posts: 166
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Che squalo che sono, è come un diodo di clipping  smiley-mr-green
Logged

Mom: Can he lead a normal life?
Doctor: NO! he'll be an engineer!

Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 486
Posts: 12290
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Dello zener t'avevo consigliato anch'io, se arrivi a 12V puoi ridimensionare il partitore rifacendo il calcolo e mettendo 12 al posto di 7,5. Lo zener ti servirà in caso di picchi >12V (considera che l'alternatore arriva a generare 14-15V per caricare la batteria)
Logged

Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Offline Offline
Full Member
***
Karma: 0
Posts: 166
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ottimo smiley

Purtroppo ho solo un tester digitale, per verificare i picchi come potrei fare?
Logged

Mom: Can he lead a normal life?
Doctor: NO! he'll be an engineer!

Pages: [1] 2   Go Up
Jump to: