Come interfacciare via ethernet una schedina con microcontrollore ?

Dispongo di una schedina per l'acquisizione di dati da un sensore temperatura ed altro Vorrei farla comunicare col pc centrale via ethernet In sostanza vorrei realizzare un web server col micro ed interrogarlo via http o telnet Ho visto che esistono dei moduli tipo questi

formatting link
che probabilmente possono essere impiegati Il moxa costa sui 40-50 euri Conoscete qualche sistema simile a costo inferiore? Che altri consigli per raggiungere l'obiettivo prefisso (micro interrogabile via http/telnet su ethernet)? Ciao e grazie RobertoA

Reply to
RobertoA
Loading thread data ...

"RobertoA" ha scritto nel messaggio news:4ae2bd0b$ snipped-for-privacy@newsgate.x-privat.org...

Volevo solo evidenziarti che per fare comunicare la periferica col PC via ethernet non hai necessita' di un web server http o telnet, almeno questi requisiti non ti siano imposti per qualche altro motivo. Basta che ti venga fornita insieme alla porta ethernet lo "stack" relativo al protocollo UDP e TCP/IP che sono i protocolli di base di gran parte delle reti ethernet esistenti. In pratica ti dovranno fornire un soft. che ti permettera' di comunicare via UDP e TCP/IP con qualunque altra periferica (es. il PC) che gestisce questo protocollo. Lato PC ogni Sistema di sviluppo per Windows o per Linux ti mette a disposizioni le analoghe funzioni di comunicazione dei due medesimi protocolli. Costruire un Web server HTTP sulla periferica e' una cosa non da poco che non so se mai sia stata realizzata a prezzi accessibili. Il TCP/IP prevede gia' la tipologia Server/Client, e per comunicare non hai assolutamente bisogno d'altro salvo crearti un semplice protocollo del tipo ad esempio:

(c) Mi connetto ->

(s) Connessione OK ->

(c) Inviami questo dato ->

(s) Dato inviato ->

(c) Conferma dato ricevuto ->

(c) Chiudo la connessione

Il tutto sotto controllo da un'interfaccia GUI a PC fatta a tuo piacimento.

ciao giorgio

Reply to
Giorgio Padoan

Si, lo so Per svincolarmi dalla necessita' di avere un client propietario mi piacerebbe realizzare un qualcosa tipo web server a bordo del micro Cosi' da qualunque postazione pc, dando su un browser qualsiasi un http://indirizzo_scheda:numero_porta_sensore_temperatura potrebbe restituire il valore letto dalla periferica Comuque, anche l'approccio comunicazione diretta mi interessa ovviamente, perche' semplificherebbe di molto le cose Cosa metteresti tra micro e pc ? Ciao e grazie RobertoA

Reply to
RobertoA

RobertoA ha scritto:

Non sono esperto di reti a questo basso livello, cmq vi sono nuovi microcontrollori che hanno il Canbus (vai in Wikipedia, la rete usata nelle vetture per i segnali che non richiedono velocita'), abbastanza semplice da utilizzare, grazie alle librerie che forniscono i produttori sia lato microc. che lato PC. Per questo c'e' un'interfaccia USB-CanBus. Questa rete non e' veloce. Senno' se hai gia' scelto il microc. informati su eventuali periferiche Canbus da interfacciargli, questo il mio consiglio per la comunicazione diretta via rete tra piu' punti che non richiedano grandi prestazioni di velocita'. Per quanto riguarda l'HTTP sono poco convinto della fattiva possibilita', in quanto ogni periferica dovrebbe fungere da Server per ottenere quel che affermi e poi come ti dicevo credo che a livello di microcontrollore sia forse impossibile trovare la libreria per renderlo Server o Client HTTP, a meno non passi agli embedded, ma allora e' un'altra storia... e cmq anche per questi nutro dei dubbi.

ciao giorgio

Reply to
Giorgio Padoan

RobertoA ha scritto:

Un'altra possibilita' e' creare un'applicazione web server sul pc (quindi interrogabile con browser da qualunque altro punto della rete) che dialoga con il dispositivo tramite: seriale, seriale virtuale usb, seriale su ethernet.

Io vorrei sperimentare l'ultima possibilita' (che e' la piu' indipendente dall'hardware e dai sistemi operativi usati) ma in questo periodo proprio non ho tempo.

ciao Claudio_F

Reply to
Claudio_F

"Seriale su ethernet" E che de' ? Ciao RobertoA

Reply to
RobertoA

RobertoA ha scritto:

Cosini come questi:

formatting link

ciao Claudio_F

Reply to
Claudio_F

Conscio delle conseguenze, "RobertoA" un bel dì scrisse:

formatting link

--
Never write software that anthropomorphizes the machine.
News 2002 [v 2.4] - [ StopDialers/PopDuster/SMTP Proxy -
http://www.socket2000.com ]
Reply to
Due di Picche

iiNePort_E1.htm

ile

utilizzando un microcontrollore che abbia gi=E0 integrato un controllore ethernet puoi fare molto. vedi il pic18F97J60, che ha gi=E0 integrata l'interfaccia per ethernet

10 base T, che basta e avanza per la tua applicazione. per=F2 risulta complicato sviluppare un web server come vuoi fare tu e come ti hanno gi=E0 fatto notare. magari =E8 pi=F9 comodo fare come ti ha gi=E0 consigliato Giorgio Padoan. oppure comprare un modulino gi=E0 fatto.

saluti

Matteo

Reply to
Linux

Molto interessante questo Grazie mille RobertoA

Reply to
RobertoA

RobertoA ha scritto:

Questo e' uno dei modi possibili di funzionamento, equivalente ad una seriale su USB.

Non usando quei driver il modulo lo contatti direttemente via TCP/UDP, quindi da qualsiasi macchina, qualsiasi SO, qualsiasi luogo della terra;)

L'unica cosa e' che non fa da web server, per cui bisogna scrivere un'applicazione server (sempre su qualsiasi PC / SO ecc) che da un lato gestisca le richieste http del browser, e dall'altro invii/riceva pacchetti TCP o UDP al modulo.

ciao Claudio_F

Reply to
Claudio_F

"Claudio_F" ha scritto nel messaggio news:4ae350cd$0$1111$ snipped-for-privacy@reader1.news.tin.it...

Ah e' come pensavo Con questi moduli pero' non ti sleghi dall'hardware ma ti leghi indissolubilmente Infatti per 'vedere' la seriale sui pc remoti devi installare un software che permetta di simulare un com inesistente, corrispondente a quella sul modulino colegato via ethernet al pc Quello che vorrei fare io e':

- fornire lle schedine col sensore temepratura al cliente

- collegarle via ethernet allo switch

- aprire un browser e, digitando l'indirizzo opportuno, vedere la lettura dei valori sensore sul video, quindi un sistema usabile su Windows, Linux, Mac o qualsiasi altro che disponga di un browser internet Ciao e grazie RobertoA

Reply to
RobertoA

E come fai a "contattarlo direttamente" ? Su che porte invii il comando? Che comando spedisci? Come ottieni la risposta? Ciao e grazie RobertoA

Reply to
RobertoA

RobertoA ha scritto:

Sulla pagina

formatting link
c'e' un manuale utente

Il dispositivo va preventivamente configurato, per cui gli si assegna indirizzo porta protocollo e modo di funzionamento (master / slave) lato ethernet, e i soliti paramentri lato RS232.

Dopo di che una qualsiasi applicazione basata su IP comunica tramite un socket che punta all'indirizzo del modulo. Tutti i bytes inviati nel socket escono come dati seriali dal modulo, e tutti i bytes ricevuti dalla seriale del modulo vengono inviati come pacchetti in rete e ritornati come stringa di bytes dal socket.

Possono esserci piu' o meno passaggi da fare a seconda che si usi un socket TCP (mettere in piedi la connessione prima di trasmettere) o UDP ("tubo" grezzo che trasferisce immediatamente tutto quello che si manda).

Tra l'altro mi sembra piu' comodo mettere insieme un server http (il web server) su un PC piuttosto che costruirlo a basso livello come firmware su un micro, ma questo dipende dal fatto se alla fine il modulo deve essere totalmente autonomo oppure no.

ciao Claudio_F

Reply to
Claudio_F

Hai provato o pensi che sia cosi? RobertoA

Reply to
RobertoA

"RobertoA" wrote in news:4ae2bd0b$ snipped-for-privacy@newsgate.x-privat.org:

Butta anche un occhio a

formatting link

Reply to
Axeman

RobertoA ha scritto:

Non ho ancora provato di persona ma il manuale dice questo (finora ho testato solo la trasmissione UDP/IP tra due PC della lan, mettere da un lato quel modulo non dovrebbe cambiare nulla visto che fa passare i dati in modo trasparente e si limita solo a impachettarli/spachettarli dai protocolli di rete). In questo ng qualcuno ha provato quei convertitori nella modalita' "modem simulato" controllabile dal lato seriale con i comandi AT.

ciao Claudio_F

Reply to
Claudio_F

"Claudio_F" ha scritto nel messaggio news:4ae48ce0$0$1117$ snipped-for-privacy@reader1.news.tin.it...

Sono proprio i '...non dovrebbe cambiar nulla...' quelli che vorrei evitare Ciao e grazie RobertoA

Reply to
RobertoA

Claudio_F ha scritto:

La modalità "modem simulato" di cui tu parli, credo sia quella descritta in dettaglio nella RFC2217.

Io sto proprio in questi giorni giocando con una RB411 mikrotik per controllare il roomba da remoto, sfruttando proprio la modalità RFC2217 (che RouterOS supporta nativamente) per inviare comandi alla piattaforma e ricevere i dati dei sensori (e per rigirare lo stream video di una IP camera a bordo del roomba)

Io ho scritto una applicazione custom, ma esiste un driver free per windows (non ricordo il nome, ce l'ho a casa) che crea una COM virtuale e si smazza tutto il protocollo in mezzo, per cui tu invii e ricevi da una COM "locale" mentre in realtà i tuoi dati arrivano ad una porta che magari sta dall'altra parte del mondo :-)

Reply to
Axeman

Il Sat, 24 Oct 2009 11:33:48 +0200, Giorgio Padoan ha scritto:

Cerca httpd.c in google :-)

Reply to
SilverLeo

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.