[OT] richiesta di aiuto per programmino x Accordatore

ecco, mi mancava questa variabile, grazie :slight_smile:

Ecco a voi HW 3.0

ciao

Campa1957

Ciao a tutti,

mi servirebbe una dritta per l'utilizzo del ULN2803, mi spiego, come da foto inserita pochi minuti fa, ho inserito nel circuito n.3 ULN2803, n.2 per invertire lo stato delle 16 uscite utilizzate per il pilotaggio dei relè delle due serie "L" e "C" visto che le schedine a relè invertono a loro volta, e n.1 per pilotare con 2 buffer in serie i due led di segnalazione.
Per i primi 2 nessun problema, per quanto riguarda il terzo con cui piloto i 2 Led, i led lampeggiando anzichè spegnersi del tutto rimangono a mezza luminosità e poi si accendono alla massima luminosità regolarmente.
Potrebbe mancare una resistenza verso il positivo o forse verso massa collegata sull'uscita di Arduino?
Prima di fare dei danni chiedo lumi :slight_smile:

grazie

Campa1957

Campa, i lumi, ma quelli al petrolio, te li darei in testa, non puoi continuare a pretendere che ti si leggano gli schemi di collegamento nel pensiero ]:D. Il 2803 si usa collegando il pin 10 a 5V ed il pin 9 a GND; i pin da 1 a 8 sono gli ingressi e quelli da 18 a 11 le relative uscite, attive basse; un LED si collega con il catodo su una uscita e l'anodo ai 5V mediante una R di limitazione (220-330 ohm); se invece di 5V ne stai usando 12 la R diventa di 560-680. Usato così il led si accende con 0 in ingresso e si spegne con 5V in ingresso, a meno che non stai usando qualche sorta di pwm in ingresso.
Se da queste info non trai nulla di utile devi rassegnarti a disegnare lo schema di collegamento tra micro, ULN, LED e quant'altro.

Ciao Michele,
come al solito hai ragione!
pero'................. :slight_smile: :slight_smile: :slight_smile:

Spiego meglio il problema, nel SW Leo72 ha utilizzato le 14 uscite da 0 a 13 più A0 e A1 per avere le 16 uscite di comando per i relè "L" e "C" oltre a questi ha usato A2 e A5, A2 per visualizzare cosa fà il SW e A5 per selezionare il punto di inserimento del ramo "C".
Vedendo i led a 1/2 luce invece che spento, ho pensato che bisognasse in qualche modo 'aiutare' le due uscite in questione, però prima di far fuori delle porte della scheda di Arduino ho chiesto lumi.
Alimento il 2803 a 12v direttamente dalla batteria di alimentazione e la resistenza per consumare meno l'ho messa da 1.000 ohm

Campa1957

Per quanto ne so, i segnali da A02 e A05 appartengono ai sei canali analogici di ingresso, che possono essere commutati come ingressi digitali, ma NON come uscite.

applicando un diodo LED con 1K in serie appeso al +12 V, l' ingresso va in protezione saturato ai +5V con un diodo interno al ATMEL,
la corrente nei diodi vale ( 12V - 5V - cicra 3VLED)/1kohm= 4 mA >> LED sempre accceso con media-bassa intensità.

No, i 6 pin analogici possono essere usati normalmente come pin in/out digitali

Campa, mi dai ragione e non disegni due linee di schema :disappointed_relieved:, confermami almeno che i pin A2 e A5 del micro sono collegati a due pin ingresso del 3° 2803, e sulle due corrispondenti uscite hai collegato i catodi dei led, quindi hai collegato gli anodi alle due R da 1kohm. Il pin 10 del 2803 lo hai collegato ai 12V? il pin 9 lo hai collegato a GND?

@ marco: ti confermo che i 6 pin analogici possono essere regolarmente usati come I/O digitali a tutti gli effetti, senza alcun limite rispetto agli altri 14; non so se nel ragionamento che hai fatto ti è chiaro che questi due pin del micro non sono collegati direttamente ai led ma tramite due stadi di un ULN2803; questo almeno è ciò che mi pare di capire. Purtroppo Campa non si rende conto che è quasi impossibile seguire un discorso, specialmente come li fa lui :sweat_smile:, e tradurlo all'istante in uno schema elettrico, e quindi dobbiamo lavorare di fantasia ed intuito; a volte la cosa può essere divertente, alla lunga stanca ed i problemi restano irrisolti, a buon intenditor....

Ciao Michele,

Campa, mi dai ragione e non disegni due linee di schema smiley-sad-blue, confermami almeno che i pin A2 e A5 del micro sono collegati a due pin ingresso del 3° 2803, e sulle due corrispondenti uscite hai collegato i catodi dei led, quindi hai collegato gli anodi alle due R da 1kohm. Il pin 10 del 2803 lo hai collegato ai 12V? il pin 9 lo hai collegato a GND?

ho fatto tutto esattamente come descritto.

Se non ricordo male, in un vecchio post di Leo72 c'è un accenno a delle resistenze di pull-up per gli ingressi analogici.
L'ho cercato ma senza riuscire a trovare nulla.

Campa1957

La versione che ti avevo allegato giorni fa non usa le pull-up interne.

Per Testato e Michele,
Grazie per le info sulla possibilità di adoperare i pin analogici anche come output digi.
Avevo interpretato male il data sheet del ATMega328P:

L'ho riletto e non è di comprensione semplice, e non avendone necessità avevo finora adoperato gli input ana solo come input digi.
A scambiare informazioni si impara sempre qualcosa. Ancora grazie.

Nel mio ultimo messaggio, avevo erroneamente supposto che i LED fossero connessi direttamente al controllore e non tramite il il driver open collector darlington.
Rimane da spiegare il comportamento segnalato da Campa: forse è dovuto alla mancanza di resistori di pull-up sulla uscita del controllore: con uscita open, la corrente nell'ingresso del driver è evanescente, ma sufficiente a fare passare un poco di corrente nel diodo LED. Però credo che le porte digitali siano in grado di fornire una corrente di source quando l'uscita è a livello alto, e questo contrasta con l'ipotesi di uscita open.
In futuro, per evitare cattive figure, mi asterrò dal diffondere supposizioni .

Per Campa57, auguro buon proseguimento nelle prove, e ti invito a diffondere uno schema elettrico con tutti i valori dei componenti.

73 a tutti da Marco

Ciao a tutti

avendo avuto conferma da Leo72 che non vengono usate le resistenze di pull-up interne, ne collegherò una per il pin A2 e una per il pin A5 verso il +5V.
Potrebbe essere utile mettere la resistenza di pull-up anche su A0 e A1 ???
Se ho capito bene il valore dovrebbe essere di 10Kohm, mi date conferma ???

Per quanto rigurda lo schema in questa fase mi sembra talmente semplice da non essere utile, comunque butto giu qualcosa ben volentieri in questi giorni.

Campa1957

Campa1957:
avendo avuto conferma da Leo72 che non vengono usate le resistenze di pull-up interne, ne collegherò una per il pin A2 e una per il pin A5 verso il +5V.

Bastava guardare il codice :wink:

Potrebbe essere utile mettere la resistenza di pull-up anche su A0 e A1 ???
Se ho capito bene il valore dovrebbe essere di 10Kohm, mi date conferma ???

No. Ti altererebbe la lettura. Casomai una pull-down per tenere a 0 il pin in modo da non avere letture flottanti quando non colleghi nulla agli ingressi analogici.

Mi è esploso il 2803 :astonished:

ciao a tutti,

come scritto più sopra ieri pomeriggio dopo la fuoriuscita di un piccolo refolo di fumo è esploso, nel vero senso della parola, un 2803 :astonished: :astonished: :astonished:

In quel momento avevo scollegato la scheda di Arduino e tutti gli ingressi erano scollegati, a vostro parere potrebbe essere che, detta volgarmente, l'integrato per autooscillazione e/o motivi similari ha fatto i botto!
A questo punto le resistenza di pull-up o pull-down mi sembra siano d'obbligo!
Resto in attesa di suggerimenti.

grazie

Campa1957

scommetto che è quello dei LED ]:smiley: tu aspetta sempre qualche giorno quando l'elettronica ha problemi e i santi che ti aiutano ti chiedono gli schemi; non ho mai sentito parlare di pull-up e pull-down nel pilotaggio dei 2803 o sulle uscite, visto che hanno già tutto l'occorrente all'interno, essendo dei darlington; semmai ho sentito parlare di collegamenti corretti, polo comune, polo di massa, ecc. ecc., ho sentito parlare di corrente massima erogabile per ogni canale ed in totale, cose che allo stato attuale non sono verificabili, guardando una foto.
Il suggerimento è uno solo, vista la tua dichiarata non-autosufficienza, ed è sempre lo stesso, posta lo schema dei collegamenti, ma confrontalo con il lavoro fatto su millefori, potresti anche aver commesso un involontario errore.

Ecco lo schema...........

Non ho indicato i piedini 9 e 10 dei 2803, mi sembra superfluo dire che sono l'alimentazione, 9 gnd e 10 + (NON corretto, leggi oltre)

Campa1957

Schema_Ardu_01.pdf (113 KB)

Veramente il pin 10 non è il positivo dell'alimentazione ma il pin COM, che va collegato a VCC per usare i diodi interni nel caso l'ULN2803 venga usato per pilotare carichi induttivi (es. motori).

Allora come ti ha detto Leo il pin 10 (COM) va a 12V per il pilotaggio di motori o carichi induttivi, quindi per il chip che alimenta i LED lascialo libero, mentre il 9 va a GND per forza.

Perché usi due linee in serie per un misero LED??? quelle non sono porte NOT, sono circuiti darlington. Prova con una sola, elimina la seconda in serie, il LED con la R da 1k verso 12V vanno bene, secondo me con i due LED risolvi subito.

Con RL1 intendi una schedina da 4 vero? quanto assorbe ognuno di quei 4 relé?

Qual è il chip che si è bruciato, cioè cosa alimentava?

Veramente il pin 10 non è il positivo dell'alimentazione ma il pin COM, che va collegato a VCC per usare i diodi interni nel caso l'ULN2803 venga usato per pilotare carichi induttivi (es. motori).

scollego il pin 10!

Allora come ti ha detto Leo il pin 10 (COM) va a 12V per il pilotaggio di motori o carichi induttivi, quindi per il chip che alimenta i LED lascialo libero, mentre il 9 va a GND per forza.

risposto sopra a Leo72

Perché usi due linee in serie per un misero LED??? quelle non sono porte NOT, sono circuiti darlington. Prova con una sola, elimina la seconda in serie, il LED con la R da 1k verso 12V vanno bene, secondo me con i due LED risolvi subito.

ok

Con RL1 intendi una schedina da 4 vero? quanto assorbe ognuno di quei 4 relé?

si, schedina da 4 relè, ogni relè è pilotato da un transistor smd microscopico, non conosco l'assorbimento, l'unica cosa è che inverte il segnalo, ingres a 0 relè attratto

Qual è il chip che si è bruciato, cioè cosa alimentava?

il chip esploso pilotava una schedina da 4 relè.

Faccio un po di prove e inserico gli aggiornamenti.

Buon ferragosto a tutti!!!

Campa1957

Dopo il ragionamento dei 2 post precedenti ho pensato che potrei pilotare direttamente la schedina da 4 relè con le uscite della scheda di Arduino.
Ho verificato la cosa e funziona perfettamente, bisogna solo alimentare le schedina da un +5 esterno, ma questo non è un problema.
La schedina però eccita il relè quando l'ingresso viene portato a 0, a questo punto si presenta il problema di invertire la gestione delle uscite di Arduino.
Mi ricordo di aver letto in un post precedente che la cosa è possibile a livello SW però non ho la minima idea di quante modifiche richieda al lavoro già fatto da LEO72.

A questo punto DOMANDONA X LEO72 :slight_smile: :slight_smile: :slight_smile:

Nel tuo SW gestire le uscite in modo inverso all'attuale è un grosso problema? comporta molto lavoro?
in caso sia problematica la modifica SW anzichè un 2803 penso di poterci mettere una porta NOT per invertire lo stato.

La mia idea iniziale di utilizzare il 2803 deriva dal fatto che quando pensavo al progetto tempo addietro non conoscevo il funzionamento delle parti che ora ho assemblato!

Campa1957