controller effetti chitarra

ciao a tutti,sono un neofita nel campo di arduino ma non nella costruzione di apparecchi elettronici e simili...
stavo cercando di progettare un looper\switching per pedale effetto chitarra...nulla di complicato cme quelli che ho visto in giro per altri post...
sostanzialmente volevo capire come poter comandare i vari relè con arduino e organizzare vari blocchi pronti all'uso (es programmare una memoria A che attiva relè 1-3-4 per poi passare alla memoria B che attiva relè 2-5-7-8)
la quantità di banchi di memoria necessaria non dev'essere eccessiva..una 20 sarebbero sufficienti...
ho già chiara l'idea di collegamento di linea audio principale e tutte le deviazioni di relè e alimentazioni varie..ma brancolo nel buio riguardo quest'ultimo dettaglio

ciao, non sono un esperto perciò prendi i miei consigli solo come uno spunto su cui riflettere in attesa di aiuti da parte di chi è più preparato di me, ma da quel che dici potrebbe esserti utile usare il comando switch così da risparmiarti sfilze di if. per i relè ti consiglio di usare dei transistor, a meno che non siano azionabili a 5volt come le uscite di arduino. per sicurezza userei anche dei fotoaccoppiatori così da separare fisicamente l'arduino dai relè.

Le pedaliere montano in genere dei relè (almeno quelle che ho visto) perchè si cerca di mantenere il segnale audio più pulito possibile.
Per la gestione non è complicato, basterebbero degli shift register per interfacciare i relè, qualche pulsante per la commutazione e se proprio si vuol fare una cosa figa ci vorrebbe anche un lcd con dei pulsanti a parte per impostare e memorizzare le sequenze :wink:

Pelletta:
Le pedaliere montano in genere dei relè (almeno quelle che ho visto) perchè si cerca di mantenere il segnale audio più pulito possibile.
Per la gestione non è complicato, basterebbero degli shift register per interfacciare i relè, qualche pulsante per la commutazione e se proprio si vuol fare una cosa figa ci vorrebbe anche un lcd con dei pulsanti a parte per impostare e memorizzare le sequenze :wink:

ma il shift register non mi mette il tutto in parallelo?nel senso se io ho 8 relè collegati allo shift lui non me li attiva tutti insieme o c'è un modo x dirgli attiva tot relè e poi attiva gli altri ?

Aledexter:
ciao, non sono un esperto perciò prendi i miei consigli solo come uno spunto su cui riflettere in attesa di aiuti da parte di chi è più preparato di me, ma da quel che dici potrebbe esserti utile usare il comando switch così da risparmiarti sfilze di if. per i relè ti consiglio di usare dei transistor, a meno che non siano azionabili a 5volt come le uscite di arduino. per sicurezza userei anche dei fotoaccoppiatori così da separare fisicamente l'arduino dai relè.

si i fotoaccoppiatori me li avevano già consigliati..ma non ho esperienza su quelli...se ho capito bene fungono da transistor separando il segnale e nel collegarli devo mettere comunque una resistenza tra relè e fotoaccoppiatore giusto?

mattwolf:

Pelletta:
Le pedaliere montano in genere dei relè (almeno quelle che ho visto) perchè si cerca di mantenere il segnale audio più pulito possibile.
Per la gestione non è complicato, basterebbero degli shift register per interfacciare i relè, qualche pulsante per la commutazione e se proprio si vuol fare una cosa figa ci vorrebbe anche un lcd con dei pulsanti a parte per impostare e memorizzare le sequenze :wink:

ma il shift register non mi mette il tutto in parallelo?nel senso se io ho 8 relè collegati allo shift lui non me li attiva tutti insieme o c'è un modo x dirgli attiva tot relè e poi attiva gli altri ?

Usando uno shift register puoi scegliere quali e quanti relè attivare per volta, non è un problema.
Puoi attivare il primo e l'ultimo relè, solo il terzo, tutti tranne il quarto, ecc.... in pratica fai come vuoi. Uno shift register ha 8 uscite e si comandano inviando un byte (un byte è composto da 8 bit). Ogni bit rappresenta lo stato di un'uscita quindi se il bit è 0 l'uscita è bassa, se è 1 è alta. A questo punto basta inviare il byte giusto per attivare i relè in tutte le combinazioni possibili

Pelletta:

mattwolf:

Pelletta:
Le pedaliere montano in genere dei relè (almeno quelle che ho visto) perchè si cerca di mantenere il segnale audio più pulito possibile.
Per la gestione non è complicato, basterebbero degli shift register per interfacciare i relè, qualche pulsante per la commutazione e se proprio si vuol fare una cosa figa ci vorrebbe anche un lcd con dei pulsanti a parte per impostare e memorizzare le sequenze :wink:

ma il shift register non mi mette il tutto in parallelo?nel senso se io ho 8 relè collegati allo shift lui non me li attiva tutti insieme o c'è un modo x dirgli attiva tot relè e poi attiva gli altri ?

Usando uno shift register puoi scegliere quali e quanti relè attivare per volta, non è un problema.
Puoi attivare il primo e l'ultimo relè, solo il terzo, tutti tranne il quarto, ecc.... in pratica fai come vuoi. Uno shift register ha 8 uscite e si comandano inviando un byte (un byte è composto da 8 bit). Ogni bit rappresenta lo stato di un'uscita quindi se il bit è 0 l'uscita è bassa, se è 1 è alta. A questo punto basta inviare il byte giusto per attivare i relè in tutte le combinazioni possibili

ah ok ok..io ste cose non le ho mai usate quindi sapresti consigliarmi un qualcosa di più preciso..ho visto che esistono di vari tipi gli shift register(siso,piso...) ed darmi un indirizzo sul come programmarlo?

grazie mille

Eccolo qua
Viene spiegato come usare il 74HC595

Pelletta:
Eccolo qua
Viene spiegato come usare il 74HC595

ho guardato la spiegazione(non troppo chiara per me) e un pò in rete..ma continuo a non capire in quanto il suo compito è far scorrere un bit per volta ma facendo così avrei delle sequenze tipo 10000000 - 01000000 - 00100000 mentra a me servirebbero sequenze come un 01001100 per poi passare magari a una 10001000 ecc...per come l ho visto i ha un funzionamento troppo schematico mentre nel mio caso serve un pò più di variabilità

nel mentre leggevo un pò di roba in rete ho trovato anche l'us di un integrato mpc23s17sp in un progetto simile al mio qui sul forum insieme ad un uln2003an per comandare i relè...sempre studiand post in giro per la rete cred di poter dire che sarebbe meglio come soluzione o forse no?

Io userei i 74HC595, sono più facili da gestire e c'è molta documentazione in giro per usarli.
Per il controllo te l'ho spiegato sopra, le uscite non hanno un ordine stabilito di commutazione quindi sei libero di crearti tutte le sequenze che vuoi.
Per l'uln è meglio che usi un 2803 che è un array di 8 transistor mentre il 2003 ne ha solo 7 quindi se ad esempio metti 16 relè dovresti aggiungere anche altri 2 transistor a parte

mattwolf:
ho guardato la spiegazione(non troppo chiara per me) e un pò in rete..ma continuo a non capire in quanto il suo compito è far scorrere un bit per volta ma facendo così avrei delle sequenze tipo 10000000 - 01000000 - 00100000 mentra a me servirebbero sequenze come un 01001100 per poi passare magari a una 10001000 ecc...per come l ho visto i ha un funzionamento troppo schematico mentre nel mio caso serve un pò più di variabilità

Non funziona così.
Si chiama "registro a scorrimento" (shift register) non perché tu debba far scorrere i suoi bit quanto perché al suo interno contiene appunto un registro che viene caricato bit per bit. Ma l'operazione di caricamento dei dati è indipendente da quella di "presentazione" di tali dati sui pin.
Mi spiego: il 74595 contiene un registro ad 8 bit. I bit vengono spediti 1 ad 1, mentre li spedisci il registro si "riempie". Se tu devi manda 10101010 arriverà 0, poi 1, poi 0 ecc.. Una volta riempito il registro attivi il pin di latch e "spingi" i bit sui pin. Solo a quel punto il valore dei bit interni sarà replicato sui pin esterni. Se tu da 10101010 devi passare a 11110000, basta che tu spedisca il nuovo valore e poi dai il segnale sul latch. E così via. Sei limitato solo dal tempo che ci vuole a caricare il registro del chip e dal tempo richiesto al chip stesso per commutare le uscite

leo72:
....
Sei limitato solo dal tempo che ci vuole a caricare il registro del chip e dal tempo richiesto al chip stesso per commutare le uscite

Giusto per aggiungere un dettaglio: il tempo di commutazione è istantaneo, non si tratta di aspettare dei secondi :wink:

Pelletta:
Io userei i 74HC595, sono più facili da gestire e c'è molta documentazione in giro per usarli.
Per il controllo te l'ho spiegato sopra, le uscite non hanno un ordine stabilito di commutazione quindi sei libero di crearti tutte le sequenze che vuoi.
Per l'uln è meglio che usi un 2803 che è un array di 8 transistor mentre il 2003 ne ha solo 7 quindi se ad esempio metti 16 relè dovresti aggiungere anche altri 2 transistor a parte

si,ne mentra stavo documentandomi e ho letto che posso definirmi io come dare le uscite in maniera libera...ok,segno il 2803 anche perchè al momento necessito solo di 11 out..ma mi conosco e so già che dopo un mese dal completamento avrò da aggiungere in catena altri 2o3 oggettini XD
sempre riguardo il 595...per i tempi di risposta si parla sempre di millisecondi o comunque un tempo non udibile facilmente da un orecchio umano?
un ulteriore domanda è:prima del 2803 conviene sempre inseriere un fotoaccoppiatore per isolare il circuito o lo stesso mi fa già da "isolante"?

grazie mille ancora

Pelletta:

leo72:
....
Sei limitato solo dal tempo che ci vuole a caricare il registro del chip e dal tempo richiesto al chip stesso per commutare le uscite

Giusto per aggiungere un dettaglio: il tempo di commutazione è istantaneo, non si tratta di aspettare dei secondi :wink:

hai risposto alla mia domanda nel mentre la stavo ponendo..oltre ogni limite di rapidità XD

leo72:

mattwolf:
ho guardato la spiegazione(non troppo chiara per me) e un pò in rete..ma continuo a non capire in quanto il suo compito è far scorrere un bit per volta ma facendo così avrei delle sequenze tipo 10000000 - 01000000 - 00100000 mentra a me servirebbero sequenze come un 01001100 per poi passare magari a una 10001000 ecc...per come l ho visto i ha un funzionamento troppo schematico mentre nel mio caso serve un pò più di variabilità

Non funziona così.
Si chiama "registro a scorrimento" (shift register) non perché tu debba far scorrere i suoi bit quanto perché al suo interno contiene appunto un registro che viene caricato bit per bit. Ma l'operazione di caricamento dei dati è indipendente da quella di "presentazione" di tali dati sui pin.
Mi spiego: il 74595 contiene un registro ad 8 bit. I bit vengono spediti 1 ad 1, mentre li spedisci il registro si "riempie". Se tu devi manda 10101010 arriverà 0, poi 1, poi 0 ecc.. Una volta riempito il registro attivi il pin di latch e "spingi" i bit sui pin. Solo a quel punto il valore dei bit interni sarà replicato sui pin esterni. Se tu da 10101010 devi passare a 11110000, basta che tu spedisca il nuovo valore e poi dai il segnale sul latch. E così via. Sei limitato solo dal tempo che ci vuole a caricare il registro del chip e dal tempo richiesto al chip stesso per commutare le uscite

si,come dicevo a Pelletta nel documentarmi mi sono accordo della C***a che ho detto..Signori miei abbiate tutti molta pazienza ma le mie conoscnze su questo lato del campo sono un pò più ristretta..
grazie ancora a tutti quanti..sto finalmente intravedendo la luce e il mio traguardo XD

PS:
sai la differenza fra un 595 ed un 2803, in termini di utilizzo?
Devi ovviamente comprare in base all'uso che devi farne. Il primo può fornire un segnale alto su un pin commutato ad 1 logico, permettendo di erogare una (piccola) corrente utile per pilotare qualcosa mentre il secondo collega il pin attivo a massa, permettendo quindi far scaricare a gnd una corrente che entra nei suoi pin.

leo72:
PS:
sai la differenza fra un 595 ed un 2803, in termini di utilizzo?
Devi ovviamente comprare in base all'uso che devi farne. Il primo può fornire un segnale alto su un pin commutato ad 1 logico, permettendo di erogare una (piccola) corrente utile per pilotare qualcosa mentre il secondo collega il pin attivo a massa, permettendo quindi far scaricare a gnd una corrente che entra nei suoi pin.

da quello che ho capito avrei bisogno di entrambi in quanto l'uln mi evita di fare tutto il collegamento del ponte darlington in quanto lo ha già incluso lui nell integrato...di conseguenza io uscirei da arduino entrando nel 595 poi gli optoisolatori(se necessari) succesivamente uln2803 e da li ai relè

non so quanto valga come schema ma da quello che ho capito grossomodo la situazione di posizionamento materiale dovrebbe essere questa..chiedo venia per l'uso di paint ma non ho ne so usare altri programmi :smiley:

schema pedalboard.jpg