comunicazioni seriali

Jan 03, 2005 16 Replies

Salve a tutti. Di sicuro saprete indicarmi qualcosa. Espongo quello che devo fare. Ho una linea seriale sulla quale ascoltano una serie di apparati (meno di 50 diciamo) e sulla quale trasmette un solo apparato. Quello che voglio fare è una trasmissione unidirezionale verso ognuno dei singoli apparati di 1 bit di dato. Ogni apparato sulla linea deve essere identificato da un proprio indirizzo settabile (penso tramite dip switch. Inoltre basterebbero 6 bit di indirizzo date le specifiche) e deve unicamente ricevere il bit di dato.



Il mio problema è quali integrati utilizzare per serializzare e deserializzare l'indirizzo e il dato destinati agli apparati. Mi pare che una cosa simile facciano gli integrati utilizzati nei telecomandi dei cancelli automatici solo che adesso non mi viene in mente nessun codice di integrato. Ricordo che forse c'erano degli integrati motorola ma costavano anche un pò...



In pratica al serializzatore arriverebbe l'indirizzo più il dato il parallelo e il deserializzatore sempre in ascolto dovrebbe vedere se arriva l'indirizzo ad esso corrispondente.



Sto cercando soprattutto una soluzione semplice ed economica. Anche altre soluzioni sono ben accette. Se il problema non è chiaro chiedete.



Grazie Bennny


-------------------------------------------------------------- R: Perché va contro l'ordine con il quale la gente legge il testo normalmente. D: Perché il quoting fatto male è una cosa sbagliata? R: Il quoting fatto male. D: Qual è la cosa più fastidiosa su usenet e in e-mail?

In linea di principio, volendolo fare con logica cablata. Se hai un bit solo di dato da mandare puoi usare dei registri a scorrimento da 8 bit. Così mandi i 6 bit di indirizzo, il bit di dati e visto che hai spazio anche il bit di parità. Ad ogni registro a scorrimento abbini un riconoscitore di sequenza e un circuito per il calcolo del bit di parità. Devi anche generare il clock per sincronizzare tutti gli integrati. Per cui ti trovi con almeno 3 fili, 4 se vuoi anche alimentare i ricevitori. Gli integrati li trovi tutti nella serie 74.

..

Pestando alacremente sulla tastiera Bennny ebbe l'ardire di profferire:

Uhm 1 solo bit di dato? Cioè ON o OFF ? Non è che intendevi 1 Byte? Cmq le soluzioni sono diverse, personalmente mi affiderei a dei banalissimi 12c508/509 che costano ormai un paio di euro e sono facilmente programmabili per ricevere e/o trasmettere su seriale in maniera asincrona, quindi ti levi pure l'impaccio di eventuali clock di sincornismo.

IBM: Invented By Marketing News 2000 [v 2.06] / StopDialer / PopDuster - http://www.socket2000.com Akapulce portal: http://www.akapulce.net

Microcontrollori che possono fare cose simili ne trovi anche a 50 centesimi. Difficile spendere meno :)

Bennny ha scritto:

Gli integrati Motorola erano probabilmente MC145026/27, e andrebbero benissimo per la tua applicazione. Credo costino 2-3 euro.

Ciao. Giuliano

questo articolo e` stato inviato via web dal servizio gratuito http://www.newsland.it/news segnala gli abusi ad abuse@newsland.it

Ok, scopro le carte, devo trasmettere su onde convogliate quindi solo due fili senza fare altri cablaggi. Il sistema deve essere asincrono.

-------------------------------------------------------------- R: Perché va contro l'ordine con il quale la gente legge il testo normalmente. D: Perché il quoting fatto male è una cosa sbagliata? R: Il quoting fatto male. D: Qual è la cosa più fastidiosa su usenet e in e-mail?

Un bit. La soluzione dovrebbe essere il più banale possibile appunto per questo, almeno dalla parte del ricevente.

-------------------------------------------------------------- R: Perché va contro l'ordine con il quale la gente legge il testo normalmente. D: Perché il quoting fatto male è una cosa sbagliata? R: Il quoting fatto male. D: Qual è la cosa più fastidiosa su usenet e in e-mail?

Erano quelli che cercavo... Purtroppo il prezzo non è bassissimo, vedrò di cercare qualcosa di analogo a meno. Qualcuno ha qualche suggerimento? Grazie a tutti comunque

-------------------------------------------------------------- R: Perché va contro l'ordine con il quale la gente legge il testo normalmente. D: Perché il quoting fatto male è una cosa sbagliata? R: Il quoting fatto male. D: Qual è la cosa più fastidiosa su usenet e in e-mail?

SI! Usa un micro! Non c'è niente che costa di meno al momento... non riuscirai mai in logica cablata a spendere di meno! Con meno di un euro hai più funzionalità di quante potresti raggiungere spendendone il doppio con componenti "discreti"

J.

Se vuoi usare le onde convogliate sui fili della 220 posso aiutarti dal momento che ho un po di esperienza, ci ho fatto un sistema di controllo molti anni fa e il prototipo funziona ancora come allarme dal garage a casa mia (nonostante il nuovo contatore enel).

Per la comunicazione ti consiglio di usare un microcontroller e di emulare una UART via software, mandando più segnali per migliorare l'immunità ai disturbi, mi ricordo che mandavo impulsi a circa 100khz per trasmettere a 9600 effettivi.

In uscita basta un operzionale bufferato con due transistori a 24Vdc e un mov di protezione disaccoppiato con un RC sulla 220V, in ingresso un paio di opamp in passabanda centrato a 100khz.

Per il micro penso che basti un Atmel AT90S1200.(magari con un filtro ceramico in osc per risparmiare)

Nei link ci sono esempi di UART software, ma devi modificarli per mandare dieci impulsi per uno start bit e dieci impulsi per ogni '1', e fare diversi campionamenti per decidere gli '1' e gli '0' e fregare i disturbi.

formatting link
formatting link

formatting link
formatting link

Inoltre non sei obbligato ad usare una parola di 8 bits, ma puoi anche usare più bits a seconda dei dati da trasmettere e della sicurezza intrinseca del protocollo che intendi usare.

Se non ci sono carichi disturbanti in linea e puoi mettere un filtro rete a monte avrai sicuramente meno problemi. Anche il filtro rete in ingresso a certi dispositivi può dare fastidio.

ciao Stefano

ciao per tramettere sulla 220V esistone degli integrati dedicati mi ricordo che li fa la PHILIPS e la ST, sono in pratica dei modem che permettono di interfacciarsi alla 220V emilio

ATT: per rispondere (for answer) emiliobrasimone.enea.it

Ok, espongo tutto il progetto che vorrei realizzare. Mi è venuto in mente da qualche post scorso. Vorrei comandare delle prese, accese/spente a distanza. Da una centralina unica comandare ad esempio le luci del giardino, delle stanze certe prese, ecc. La mia idea era di tipo modulare, ovvero ad ogni presa si attacca un dispositivo ricevente che comanda il carico. Il dispositivo ha un proprio indirizzo e ascolta sulla rete se passa il suo indirizzo e il relativo dato acceso/spento. Dalla centralina invio il dato alla singola presa di cui conosco l'indirizzo. Più dispositivi per le prese costruisco, più carichi posso gestire. Essendo solo un progetto sperimentale vorrei ridurre al minimo le funzionalità e il budget. Ad esempio non prevedo che le prese rispondano alla centrale segnalando il loro stato. Semplicemente ascoltano il bit che gli arriva e si comportano di conseguenza. Se una si guasta, pazienza, non lo saprò. Nella centralina pensavo di mantenere il dato acc/spento localmente anche se poi per malfunzionamenti potrebbe non corrispondere con il reale stato della presa che magari può essere stata disattivata. Cercavo una soluzione semplice e anche poco sicura, per questo l'integrato motorola era quello cui pensavo. Molti mi hanno proposto di usare dei micro. Almeno per la centralina dovrò farlo quindi, a che mi addentro in questo campo posso utilizzare la stessa soluzione per tutto. Per serializzare i dati mi suggerite di usare la seriale già implementata nei PIC e adattare con onde convogliate la seriale o di implementare la serializzazione/deserializzazione via software e in modo proprietario? La seconda opzione la vedo più difficile. Aspetto commenti. Grazie

-------------------------------------------------------------- R: Perché va contro l'ordine con il quale la gente legge il testo normalmente. D: Perché il quoting fatto male è una cosa sbagliata? R: Il quoting fatto male. D: Qual è la cosa più fastidiosa su usenet e in e-mail?

Tutto standard fin qui

Questo comunque non comporta una grossa difficoltà ma complica l'hardware perchè devi munire ogni modulo di una parte trasmettitore, in cambio di una sicurezza di funzionamento.

Per me è la soluzione migliore, anzi l'unica possibile.

Non credo che una UART standard possa funzionare in un ambiente come quello, ricorda che usi un filo percorso dalla 220Vac, e i tuoi impulsi possono essere facilmente coperti dai disturbi. Occorre una trasmissione asincrona 'modificata'.

Nel post precedente ti avevo dato alcuni suggerimenti e anche dei link sul software che secondo me non è affatto problematico, ma se vuoi seguire qualche altra strada... auguri.

ciao Stefano

Forse mi sono espresso male... Dicevo che non mi importa della sicurezza. Non mi interessa che i moduli rispondano con il loro stato, devono solo ascoltare.

Ok, la seguirò mi sa...

Alla fine se il 30% delle trasmissioni vanno perse, ancora mi sta bene.

Darò senz'altro un'occhiata. Grazie di tutto.

-------------------------------------------------------------- R: Perché va contro l'ordine con il quale la gente legge il testo normalmente. D: Perché il quoting fatto male è una cosa sbagliata? R: Il quoting fatto male. D: Qual è la cosa più fastidiosa su usenet e in e-mail?

Cioe' vuoi reinventare X10 ? :-)

Dai un'occhiata alle specifiche X10 e materiale annesso. Puo' essere che trovi molti suggerimenti su come farlo. Parti da qui (

formatting link
) o da google.

C'ya Steve

Genius may have its limitations, but stupidity is not thus handicapped. Elbert Hubbard (1856 - 1915) --- sbodini@despammed.com ---

Il problema IMHO non sono i driver o i micro, ma il circuito di interfacciamento alla rete elettrica. Quello ha il costo maggiore ed e' il punto critico. Con un PIC anche base fai tutto e di piu'.

C'ya Steve

Genius may have its limitations, but stupidity is not thus handicapped. Elbert Hubbard (1856 - 1915) --- sbodini@despammed.com ---

Gli ho appena dato un'occhiata veloce ma sembra proprio quello che cercavo. Non sapevo dell'esistenza di questo standard ed è pure di facile realizzazione. Perfetto.

Grazie mille della dritta. Benedetto

-------------------------------------------------------------- R: Perché va contro l'ordine con il quale la gente legge il testo normalmente. D: Perché il quoting fatto male è una cosa sbagliata? R: Il quoting fatto male. D: Qual è la cosa più fastidiosa su usenet e in e-mail?

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required