salve, ho realizzato una scheda per azionare uno di quei pistoni di chiusura portiere di auto. Ho programmato Arduino perchè leggesse lo stato di un iterruttore. Se è chiuso deve farmi girare il motore in un senso per 1 sec circa. Se è aperto, deve invertire il senso di rotazione. Il pistone funziona a 12 volt e quindi va alimentato a parte, ma devo usare l'unica fonte a 12 volt anche per alimentare arduino, cosi ho montato sulla piastra un LM7805 e con esso alimento sia arduino, sia due microrele' per invertire il senso di rotazione del pistone. Ho usato le uscite 12 ( marcia avanti ) e 11( marcia indietro) mettendo in serie un resistenza da 1 k che va in base ad un BC2222 il cui collettore eccita il rele'. Certamente cercherò di pubblicare lo schema elettrico completo( se riesco a capire come si fa ). A tavolino con alimentatore da 12 volt tutto funziona, ma quando lo piazzo sul posto ( un organo a canne ), come aziono l'interruttore di inserimento, alcune canne suonano a caso come se ci fossero segnali in giro che vanno a disturbare le schede elettroniche già presenti sull'organo, e l'arduino stesso , funziona a casaccio. ( il pistone va avanti e dietro a casaccio ). Se qualcuno avesse dei suggerimenti ve ne sarei grato.
Per evitare disturbi elettromagnetici prodotti dai relè e/o motori conviene utilizzare un'alimentazione solo per arduino e un'altra per i relè motori.
Nel tuo caso usa un alimentatore 5v per arduino e uno da 12v per il motore e i relè, sostituendoli con relè da 12v (masse non in comune).
L'uscita di arduino comanda un foto accopiatore, per isolarlo dai disturbi, e con l'uscita del foto accoppiatore tramite un transistor comandi il relè.
Grazie, gentilissimo. Rifarò l'hardware come suggerito da te. Cercherò dei relè a 12volt equivalenti. Ma toglimi un dubbio, per alimentatori separati , intendi due diversi trasformatori o un unico trasformatore dal quale ricavare il 12 e il 5 volt ? Poi mi dici che le masse devono essere separate e questo purtroppo non mi è possibile in quanto l interruttore si trova sulla tastiera ( collegata al corpo organo con cavo di circa 6 metri ) ho solo un filo che mi arriva e col quale posso : o dare massa, o dare un 5 volt che proviene da un 7805 presente nella scheda tastiera. Quindi la massa comunque non la posso separare. Più tardi farò uno schemino per chiarire il punto.
Ecco lo schema più completo. Per semplificare il circuito, posso pilotare i relè direttamente con dei fotoacvoppiatori adatti ?
DUE alimentatori diversi che nulla hanno con comune.
Guglielmo
Ti faccio vedere come si fa con i moduli che trovi su Amazon con 4 relé separati da fotoaccoppiatori ...
Come vedi si usano due alimentazioni che NON hanno in comune nemmeno il GND
Guglielmo
P.S.: ovviamente il sistema funziona a logica inversa, quando il pin di Arduino è HIGH il relé è diseccitato, quando il pin di Arduino va LOW si eccita il relé
Scusa, ma cosi ho bisogno di tre alimentatori diversi : 5v per arduino, 5 volt per questo modulo e 12v per il motore ? Oltre ciò, vengono azionate due bobine per volta per creare doppio scambio, per cui consuma il doppio. E' bella come basetta ,ma dispendiosa usarla. Non mi hai detto però come la mettiamo con l'interruttore che è sulla tastiera di cui ho a disposizione un solo filo. Devo per forza collegare la massa col resto dell'elettronica dell'organo.
-
10kΩ per i LED degli opto sono troppi, va fatto passare qualche mA considerando che il rapporto di trasferimento corrente tra uscita e ingresso a volte è inferiore a 1, anche solo 0,5.
-
Manca il collegamento di massa per l'alimentazione del motore (svista), ma il vero problema è che se partono entrambi i relé fai un corto secco sui 12V.
-
Ipotizzo che il vero problema delle "attivazioni a casaccio" siano disturbi da quel cavo della tastiera, che non è ben chiaro perché si trovi appeso a un partitore di tensione. Fai letture analogiche o digitali? Che tensioni accetta A0 del nano33?
Se le alimentazioni sono ben filtrate e il circuito di massa è studiato bene, in maniera che le correnti non provochino impulsi di tensione sulla scheda Arduino, puoi tranquillamente fare tutto con una sola 12V come, d'altra parte, fa qualunque apparecchio commerciale... Certo, se una persona collega i fili a caso e non sa come collegarli, separare tutto come dice Guglielmo è la soluzione universale!
Quello che non capisco è il funzionamento del ponte... Metti semplicemente le ancore dei relè ai capi del motore e poi i due contatti di ogni relè uno al positivo e uno a massa! Se il relè 1 chiude a +12, il motore gira in un verso; se, invece, il relè 2 chiude a + 12, gira nell'altro. No?...
Caro Claudio
1- si forse sono troppi 10 k, proverò con meno. Ma ora come ora Arduino sta pilotando egregiamente il 2n2222 con 10k.
2- ho segnato le masse tutte uguali ma gioco forza devono essere separate. Per partire entrambi i relè deve fottersi Arduino, altrimenti non dovrebbe succedere. Sarebbe il massimo della sfiga.
3- il partitore resistivo l ho messo perché leggendo, non si può dare i 5 v diretti all'ingresso A1. In quel modo ci finiscono 3,5 volt ad interruttore chiuso sul 5volt.
Non è il cavo lungo a generare segnali strani , infatti non ha mai avuto problemi in 30 anni. Ma quando collego Arduino sarà lo spunto del motore o l azionamento delle bobine relè, le schede residenti emettono impulsi strani che vanno ad azionare canne a caso, e lo stesso Arduino va in palla azionando a singhiozzi i relè e quindi il motore. A casa funziona perfettamente. All inizio, lo avevo collegato ad un unico alimentatore da 1 ampere e quando partiva il motore sul tester vedevo la tensione andare a pallino. Provato poi con un alimentatore più serio e messo un tantalio all'ingresso del 7805 non ha più dato problemi. Ma montato sull' organo sono cominciati i guai. Quindi devo provare con i fotoaccoppiatori e l alimentazione separa te.
Si Datman, hai capito bene. Perché il pistone è spinto in avanti da un motore che gira in senso orario, mentre se deve tornare indietro, il motore deve girare in senso inverso.
Allora se è così lo schema è sbagliato.
Il primo schema almeno non è sottosopra, il secondo fatico a leggere pure perché è al contrario.
Ok ma nello schema c'è scritto 1k che non sono 10.000 ohm. Poi cosa c'entra il transistor con il fotoaccoppiatore, devi dimensionare la resistenza così:
Vc = 3.3V
Vr = 3.3 - 1.2V = 2.1V
R = V/I = 2.1 / 0.002 = 1050
R = 1k per IF = 2mA.
Non necessariamente è richiesto l'isolamento galvanico, lo si usa per tanti motivi il principale di questi che il mercato offre quei moduli per uso generico e nella mani di principianti l'isolamento è una garanzia in più sia di sicurezza che di funzionamento pratico. Tuttavia ho visto che anche con questi moduli alcuni hanno problemi legati alle emissioni EMI.
PS: non ho idea di come funzionino quei pistoni, ad esempio cosa accade se lo alimento per più di 1 secondo?
Dimenticavo, io uso questo per disegnare schemi:
Mentre per simularne il funzionamento uso questo:
Che volendo può essere usato benissimo come schematico
Ciao.
Quindi non siamo molto lontani... Il fatto che non faccia "il botto" mi fa pensare che Arduino non sia in palla, ma riceva segnali errati in ingresso (basterebbe far lampeggiare un LED ausiliario per verificare, se lampeggia regolare allora Arduino elabora regolarmente).
Bisogna vedere cosa ne pensa l'ingresso di Arduino Il collegamento all'ingresso è sbagliato, metti 10 KΩ in serie all'interruttore e 15..18 kΩ tra ingresso e GND, e magari un condensatore 1µF tra ingresso e GND, così abbiamo partitore, disaccoppiamento, e debounce hardware in un colpo solo.
Inoltre in uno schema vedo due diodi verso Vin, nell'altro no. Se alimenti a 5V, quei diodi non ci vanno, altrimenti potrebbe arrivare troppo poca tensione al regolatore interno 3,3V.
Pensi che dovrei mettere un filtro in ingresso ? Di che tipo ? Il cavo non si può eliminare !
Per evitare l'attivazione contemporanea dei relè utilizza un relè solo per l'inversione la tensione utilizza i contatti comuni del relè (quelli che nello schema vanno al motore) per connettere l'altro relè da utilizzare solo come interruttore per attivare il motore.
Il primo relè a riposo da un senso di marcia quando lo attivi inverte il senso di marcia.
@pinopisca, perdonami se cambio del tutto direzione... ma perché non usi un driver per motori DC al posto dei due relè?
Oltre a semplificare enormemente il cablaggio, eviti tutto il "click-clack" prodotto dallo scambio dei relè e trattandosi di uno strumento musicale la cosa non guasta di sicuro...
grazie per questi link, li provero'.
certo ingombrerebbero meno, ma non li ho mai usati ed ora come ora ho tante cose da studiarmi e problemi da risolver. Ma se puoi suggerirmi un componente adatto e lo sai usare dimmi pure.
avevo provato all'inizio con un unico relè ad 8 scambi, ma assorbiva molta corrente, ed era piu rumoroso. Mi fai uno schemino per favore perchè non mi è chiara la tua modifica.
i due diodi servivano per abbassare i 5 volt, ma visto che funziona tranquillamente anche con 5 li ho tolti.