Go Down

Topic: modbus RS-232 and arduino (Read 6 times) previous topic - next topic


chiva

#16
Jul 01, 2010, 05:09 pm Last Edit: Jul 01, 2010, 05:11 pm by chiva Reason: 1
Si escribes:
Serial.println("F7 03 00 00 00 16 D0 92");

Estas enviando código ASCII por el puerto y supongo que no es lo que quieres, lo que querrás será mandar el número hexadecimal, por lo que deberás ponerlo así:

Serial.print(0xF7);
Serial.print(0x03);
.
.
.

Y el serial.read no va dentro del println, además deberás comprobar primero que se haya recibido carácteres.

Y por último el sofwareserial lo has inicializado pero no lo estás usando para nada, asi que quita todo lo de softwareserial, te sirve con el que lleva el arduino en hardware

Un saludo
Mercadillo electrónico. Kit iniciación a Arduino, shield LCD a color y más cosas!

Xals

Buenas chivas,

primero gracias de nuevo.

por ejemplo para hacer una prueba, si quiero enviar este código a mi hardward (trabaja en RS 232 como hexadecimal) eso seria correcto?

F7 10 00 13 00 02 04 4C 2C BA 56 8B 3A 07 03 00
00 00 31 84 78 F7 03 00 00 00 16 D0 92

por hyperterminal enviar:

0xF70x100x000x130x000x020x040x4C0x2C..... todo junto.

he conectado el hardware al ordenador directamente usando el x0n/xoff con hyperterminal y por lo menos el hardware parece estar activo, este sistema es implementable con el arduino. me parece entender que es parecido a un RTS i CTS

saludos

chiva

Hyperterminal siempre envía ASCII, por lo que estás enviando en hexadecimal:
0x30 '0'
0x78 'x'
0x46 'F'
0x37 '7'

Para enviar los valores hexadecimales, tienes que enviar el carácter correspondiente a dicho valor y es bastante lío.
Lo más fácil sería enviarlo desde el Arduino como te he dicho, aunque para leer la respuesta tendrías que tener un puerto serie conectado al pc y otro (el software serial) al sensor y lo que te envíe el sensor redireccionarlo al PC para poder verlo sin complicaciones.

xon/xoff es un rts/cts pero por software en vez de hardware, en la wikipedia hay un explicación:
http://en.wikipedia.org/wiki/Software_flow_control

Un saludo
Mercadillo electrónico. Kit iniciación a Arduino, shield LCD a color y más cosas!

Igor R

#19
Jul 01, 2010, 10:29 pm Last Edit: Jul 01, 2010, 10:30 pm by igorreal Reason: 1
Xals,

Yo creo que deberias empezar por hacerte ejemplos sencillos de comunicacion entre PC y tu Arduino, y luego ir poco a poco elevando el nivel.
Empezar de cero con el modbus, creo que es demasiado correr.... ;)

Ahora que la web esta traducida al español, puedes ver los ejemplos y ayudas en http://www.arduino.cc/es/ .

Para poder enviar carácteres en hexadecimal, puedes usar Realterm:
http://realterm.sourceforge.net/
Aunque deberías empezar primero por la base e ir poco a poco....


Ánimo!!


:D

Xals

gracias chicos, seguiré vuestros consejos. Creo que por hoy ya basta, me va estallar la cabeza!!

Os mantendré informados.

Go Up