Go Down

Topic: PC <-> Arduinio <-> ethernetShield <-> robot (Read 1 time) previous topic - next topic

picassoTease

Bonjour,

J'utilise actuellement un robot qui "parle" via RS232 grace à un soft en VB6 et le port COM.

J'ai en ma possession :
- aduino duemilanove
- ethernetShield
- PC

Comment réaliser un pont pour communiquer avec mon robot via le réseau ?
Je souhaite donc :
- brancher mon robot sur arduino (com RS232 via SoftwareSerial library ),
- ajouter l'ethernet shield,
- brancher l'ethernetShield sur le réseau,
- envoyer des trames à partir du PC sur le robot,
- lire les trames, sur mon PC, envoyées sur le port RS232 par le robots.

est ce que je dois utiliser "Server class" "Client class" "EthernetUDP class" de Ethernet library  ?
un tutoriel ?

Merci par avance



skywodd

Bonjour,


- brancher mon robot sur arduino (com RS232 via SoftwareSerial library ),

Attention RS232 : -12v / +12v, arduino : 0v / 5v
Pour brancher une carte arduino sur un port RS232 il faut un CI type MAX232 sinon il y aura de gros problèmes ;)


est ce que je dois utiliser "Server class" "Client class" "EthernetUDP class" de Ethernet library  ?
un tutoriel ?

Server class, c'est le plus adapté.
J'ai fait un tutoriel avec un relay mais le principe est presque le même.
https://skyduino.wordpress.com/2011/11/03/tutoriel-arduino-et-ethernet-shield/
Des news, des tutos et plein de bonnes choses sur http://skyduino.wordpress.com !

picassoTease

Merci, c'est déjà une bonne aide. Merci
Ce qui me pose plus problème maintenant, c'est le rafraichissement.

Je m'explique :
- le robot va parler au PC (en passant par arduino+ethernet)
- le PC va parler au robot (en passant par arduino+ethernet)

de mon coté, c'est simple, je fais "send(MaParole)" et Arduino se charge de transmettre la chaine de caractères.

comment savoir que le robot essaie de me parler ? une boucle infinie de Read(MonEsclave)?

Merci par avance



Gromain59

Salut,

il me semble qu'utiliser SoftwareSerial library t'oblige à écouter en permanence ton robot sinon tu perds des trames (pas de buffer Rx)

Il est plus souhaitable d'utiliser la liaison série dans ton cas.

Gromain
"pour résoudre un gros problème, il est souvent plus facile de le diviser en petits problèmes élémentaires..."

projet domotique xPLDuino
IRC: freenode #xplduino

skywodd


il me semble qu'utiliser SoftwareSerial library t'oblige à écouter en permanence ton robot sinon tu perds des trames (pas de buffer Rx)

Il est plus souhaitable d'utiliser la liaison série dans ton cas.

C'est valable pour l'ancienne version de SoftwareSerial, depuis NewSoftwareSerial qui est intégré dans arduino 1.0 il y a un buffer intégré donc pas de probléme ;)



comment savoir que le robot essaie de me parler ? une boucle infinie de Read(MonEsclave)?

Tes fonctions Send() et Read() c'est en quel langage de programmation ? (Processing ?)
Si tu as une fonction qui retourne le nombre d'octets reçu il te suffit de faire une boucle dessus.
Je sait pas en quoi tu prog coté pc donc c'est assez dure de t'aider ^^
Des news, des tutos et plein de bonnes choses sur http://skyduino.wordpress.com !

Gromain59

Quote
C'est valable pour l'ancienne version de SoftwareSerial, depuis NewSoftwareSerial qui est intégré dans arduino 1.0 il y a un buffer intégré donc pas de probléme


promis, un jour je passerai à la version 1.0   XD
"pour résoudre un gros problème, il est souvent plus facile de le diviser en petits problèmes élémentaires..."

projet domotique xPLDuino
IRC: freenode #xplduino

picassoTease

en effet , je pense utiliser Processing pour commencer.

J'essaie de faire qqch et je reviens si besoin.
Merci à tous

skywodd


promis, un jour je passerai à la version 1.0   XD

Sinon 0023 :smiley-mr-green:


en effet , je pense utiliser Processing pour commencer.

J'essaie de faire qqch et je reviens si besoin.

Ok :)
Des news, des tutos et plein de bonnes choses sur http://skyduino.wordpress.com !

Go Up