Forse focalizzando la ricerca su powerline + protocollo scelto (es: rs485), magari si trova qualcosa di più economico.
Io per sfizio aprirei un adattatore di quelli che hai
Avevo cercato un po' di tempo fa ditte in Italia che facessero schedine powerline modem, tramite Enel ho contattato una ditta di Torino che fa le schede per le letture dei contatori proprio per Enel, Il tecnico voleva avere delle specifiche per poter sapere quanto quantificare il prezzo, però qualcuno che le fa su misura in Italia c'e'. Lo risentirò presto, ma voi come utilizzereste questo modem? cosa dovrebbe fare?
es
collegare 2 o più Arduino tra loro
letture analogiche - digitali
una schedina a 2-4-6-8 relè
Perchè fare un modem powerline non è molto complicato, ma una volta che ho il TX e RX a 1200baud devo poi avere un pic o un altro controller programmato che lo interpreti....... e siamo punto a capo. Tutti gli elettrodomestici, frigo, lavatrice, lavastoviglie devono avere un filtro apposito altrimenti salta la comunicazione o si riempe di errori. Ti basta andare in bagno e inserire un asciugacapelli per mettere in crisi quella parte di imianto...
Inoltre se si comprano gia fatti si spende sui 50-60 euro per la comunicazione più le interfacce, aumentano i consumi e gli ingombri......
Secondo me un bel protocollo su doppino telefonico a 12v che arriva fino a 100mt e oltre è la cosa più semplice e più economica tutte le schede sono in parallelo al bus e via.
pablos71 io volevo fare un circuito di arduino che funzionassero con la comunicazione powerline tipo un bus485(per intenderci)...
Ho letto come funziona questa tipo di comunicazione ma per farla artigianalmente a casa non ne ho le conoscenze.
Però se qualcuno mi può aiutare io posso mottere tranquillamente il tempo per saldare un pò tutto e comprare i componenti.
a pag 31-40 trovi gli schemi, ti posso dire che è stato fatto e un treno di impulsi è stato ricevuto dall'altra parte (entro 15-20mt di linea)
comunque su google trovi abbastanza, ci vuole tempo e pazienza, ma qualcosa trovi.
qui hai un po' di datasheet powerline della STM http://www.st.com/internet/imag_video/product/130228.jsp
Se trovo qualcosa di più utile lo posterò sicuramente, invito anche atri a postare documenti e schemi che trovano, magari ci tiriamo fuori qulcosina. E' un argomento un po' più complicato, ma potrebbe essere utile.
dai un occhio anche qui, da questo schema in teoria potresti escludere il circuito 7805, i 5v li prendi da arduino, alla fine i componenti non sono tantissimi
Facci sapere se fai qualcosa, io non ho più il tempo di una volta
ciao
Ti ringrazio per la grande ricerca che hai fatto per i bus485.
Questo tipo di comunicazione l'ho già utilizzata in passato...però come faccio a utilizzarla con i cavi 220v?
PS: adesso non ho la macchina fotografica. Appena posso ti faccio vedere i miei bus come li ho saldi un lavoro da professionisti !!
hai tolto troppo il 3-11-13 e i 2 condensatori li devi comunque mandare a +5v di arduino, quei collegamenti fanno parte del funzionamento del TDA e la restenza lassu da 100 ohm 0.5w la puoi togliere, era dell'alimentatore
per il clk si hai ragione, qui si presuppone che sia il quarzo del TDA a fornire il clock a un microcontroller qualsiasi, in questo caso il 4 non lo collegheresti, però non so dirti il sincronismo tra i due come si potrebbe fare, a meno che non si faccia asicrono, qui ci vuole uno con esperienza sul comportamento seriali.
Resta da costruirlo e con un oscilloscopio vedere cosa esce dal TDA
DATA_IN 1 digital data input (active LOW)
DATA_OUT 2 digital data output (active LOW)
VDDD 3 digital supply voltage
CLK_OUT 4 clock output
DGND 5 digital ground
SCANTEST 6 test input (LOW in application); on-chip pull-down resistor
OSC1 7 oscillator input
OSC2 8 oscillator output
APGND 9 analog ground for power amplifier
TX_OUT 10 analog signal output
VDDAP 11 analog supply voltage for power amplifier
AGND 12 analog ground
VDDA 13 analog supply voltage
RX_IN 14 analog signal input
PD 15 power-down input (active HIGH); on-chip pull-down resistor
TEST1 16 test input (HIGH in application); on-chip pull-up resistor
RX_IN 14 analog signal input
TX_OUT 10 analog signal output
sono segnali analogici che vanno sulla rete 220v
ma in uscita verso il controller ci sono i segnali digitali
DATA_IN 1 digital data input
DATA_OUT 2 digital data output
ciao
Ps. Lo schema qui sotto modificato è puramente teorico e non ancora provato, quindi usare le dovute cautele. Lunga vita e prosperità
Ottimo fammi sapere, ma per curiosità da una parte ci metti arduino .... e dall'altra? cosa metti?
comunque se hai bisogno scrivi, un modo per risolvere i dubbi lo troviamo.
Che sia un protocollo ethernet o protocollo casalingo trattasi sempre di segnali seriali con richiesta e risposta, correzione dei pacchetti corrotti, errori di mancata risposta ecc.... Qui in teoria ci dobbiamo inventare un linguaggio e un interprete, e anche un prete che ci dia la benedizione, la portante andrà amplificata immagino, ripulita ecc .... si vedrà
uh, ma il bello dell'ethernet è che esistono già dei moduli (che non centrano niente con arduino) plug'n'play, quindi attacchhi l'ethernet shield e via...
in oltre si può cercare qualche schema di quei giocattolini per prendere semplicemente spunto...
Si hai ragione il tuo esempio non fa una piega, però l'intento del progetto è quello di avere arduino master sulla rete elettrica e n schedine con 1 o 2 relè sparse sulla linea elettrica che rispondano a un treno di dati seriali (magari dei piccoli PIC oppure delle porte AND-OR codificate con dei Dip switches)
Esempio il pacchetto buttato sulla rete di 5 bit fa il numero della schedina (quindi max 32 indirizzi) e gli altri 3 bit fanno il comando da eseguire totale un byte. Solo una scheda risponderà.... Ripeto, tutta teoria e qui ci vorrebbe qualcuno capace sulle gestioni delle seriali, spero che qualcuno legga e ci indichi la strada migliore.
..... se avessimo voluto collegare 2 arduino con una lan-powerline ci bastava comprare due t-link powerline.... il concetto sarebbe quello.
basta implementare un sistema a pcchetto sulla seriale...
i sistemi a pacchetto si dividono tra header e dati.
per esempio l'header può essere composto da:
indirizzo ricevente, lunghezza dati (se non fissa), numero messaggio (rivolto a quel ricevente)
e i dati sarano composti da lunghezza dati byte (o meglio baud, visto che parliamo di seriale)
a loro volta dati può essere un pacchetto e via discorrendo.... non è difficile da implementare, visto che ogni livello di pacchetto se ne deve freagare altamente degli altri, e all'applicazione, passato il dato alla libreria per estrapolazione del dato e controllo, gli interessano solo i dati estrapolati, secondo l'ordine in base a numero messaggio