Go Down

Topic: c# e arduino ethernet (Read 237 times) previous topic - next topic

moro85

Salve ragazzi,
finalmente mi sono un po' addomesticato questo dispositivo che subito pareva indomabile ]:D
Però perché accontentarsi di usarlo fine a se stesso... Allora ho deciso di provare a sfruttare l'ethernet e di farlo comunicare con un'applicazione sviluppata con c#.
Mi son documentato in internet e da altri forum per trovare qualche dritta per riuscire nel mio intento ma con scarsissimi risultati... Anzi nulli.
Non ho ancora in mente nessun progetto, volevo solo riuscire tramite un pulsante in c# ad accendere un led e che arduino mi rispondesse con un bel " led 9 acceso" su una memo.
Qualcuno di voi ha qualche misero esempio funzionante da potermi illustrare?
Grazie mille in anticipo

nid69ita

#1
May 25, 2014, 12:10 am Last Edit: May 25, 2014, 12:15 am by nid69ita Reason: 1
Comunicazione tra PC (usando C#) e Arduino con Ethernet?  La shield ufficiale WIZ5100 ?
Puoi usare una comunicazione UDP. Lato C# non saprei però aiutarti.
http://arduino.cc/en/Tutorial/UDPSendReceiveString

Qui un esempio UDP tra Arduino e Processing:
http://forum.arduino.cc/index.php?topic=227626.msg1644953#msg1644953
my name is IGOR, not AIGOR

pablos

#2
May 25, 2014, 12:18 am Last Edit: May 25, 2014, 12:20 am by pablos Reason: 1
Lui si riferisce a  questa scheda http://arduino.cc/en/Main/ArduinoBoardEthernet senza shield ... è già incorporato il w5100
no comment

nid69ita

Ok, ha la Wiz quindi può usare UDP con libreria ufficiale.
La scheda ENC invece usa una libreria diversa.
my name is IGOR, not AIGOR

pablos

#4
May 25, 2014, 12:38 am Last Edit: May 25, 2014, 12:41 am by pablos Reason: 1
@nid - qui non è solo un problema di protocolli e di board, qui si tratta di organizzarsi con i post.

@ moro85 - Sarebbe stato meglio che tu avessi contnuato questo http://forum.arduino.cc/index.php?topic=228576.msg1651028#msg1651028 perchè non abbiamo innanzitutto capito se la porta l'hai trovata, se ora ti compila  e se parli sempre dello stesso sketch (è sempre quello che non ti funziona?).

Se ogni volta che ti manca una virgola apri un nuovo treadh  diventiamo tutti pazzi.
Se hai risolto invece il problema sei pregato di spendere 2 minuti e scriverlo

ciao
no comment

moro85

Scusatemi tanto raga.
Allora io ho arduino ethernet tutto in uno (non ho la shield a parte) come ha detto pablos.
Il problema l'ho risolto con il usb2serial per programmarlo. Non lo avevo capito che si programmasse solo via usb :smiley-sweat:
Mi spiego meglio:
programmandolo fine a se stesso ( quindi non sfruttando l'ethernet) c'ho preso un po' di mano.
So anche un po' di c# che ho imparato a scuola qualche bell'anno fa.
Il punto è che vorrei riuscire mandando dei comandi da un progetto  creato in c# a far accendere dei led al mio arduino via rete.
Una cosa abbastanza banale... Però non riesco a farlo!!!
Ho guardato vari esempi in internet ma son tutti programmi nei quali arduino invia dati al pc. Avete voi sommi maestri qualche esempio per farmi capire come far comunicare le 2 cose?

pablos

#6
May 25, 2014, 03:49 am Last Edit: May 25, 2014, 04:02 am by pablos Reason: 1
Allora andando a vedere lo sketch che hai postato di là direi che mancano dei pezzi importanti, quindi abbandonalo
Lo sai che sul compilatore di arduino ci sono degli esempi belli pronti per quasi tutto quello che la gente terrestre vuole fare? :D

Ad esempio File > Esempi > Ethernet > Webserver
ti do un link così fai prima http://arduino.cc/en/Tutorial/WebServer, per il MAC va bene quello che hai sul retro, per l'IP invece lo metti tu si, ma non a caso, le prima 3 cifre devono corrispondere alla tua rete, il 4 numero va da 1 a 254 purchè non sia in conflitto con altri dispositivi.

Tu hai messo ip = 192, 168, 2, 108 quel 2 indica di norma (non è una regola fissa) che la tua rete ha 3 router (3 sottoreti) e tu sei connesso sul 3°

Quindi dovresti vedere che ip ha il tuo pc e vedi subito a quale gruppo appartiene, il problema è che tu usi un sistema op che non conosco quindi non so dirti che istruzione devi mettere sul (chiamiamolo prompt dei comandi) per leggere il tuo ip.

Andando a logica i router sono configurati per default
192.168.0.1 o 254
192.168.1.1 o 254
192.168.2.1 o 254

quindi tu fai queste 3 prove, metti nello sketch uno di questi
192.168.0.177
192.168.1.177
192.168.2.177
e ogni volta provi dal browser a vedere se carica la paginetta ...... se si vediamo più avanti come accendere un led, io però faccio sempre riferimento ad una pagina del browser.

Ora non mi è chiaro se il C# che intendi tu è lato pc o lato arduino, io e altri ti possiamo aiutare lato arduino, se tu hai un programma in c# sul pc e vuoi usare la rete per comunicare con il micro non ne ho mai visto uno qui sul forum, ma sei tu l'esperto quindi ti posso solo dire che ti devi costruire un client che fa richieste al piccolo webserver e accenderà il led.
ciao

no comment

Go Up