El sistema de control remoto esta
implementado en un PC en el lenguaje de programación LabVIEWâ.
LabVIEW® es un programa de instrumentación grafico de National
Instruments (www.nat-inst.com) que ofrece una gran versatilidad para
la visualización del monitoreo del robot y para el control
de este. El sistema de control remoto esta orientado al manejo del
protocolo de comunicaciones, y al control y monitoreo de TÓTEM.
Se desarrollaron varios subrutinas o Instrumentos
virtuales "VI" que son las subrutinas en LabVIEW. Cada instrumento
virtual maneja una parte especifica del programa de tal manera que
se tiene un "VI" para la comunicacion y el control de TOTEM,
un "VI" para el monitoreo de los sensores, la velocidad,
el estado de la bateria y el desplazamiento de cada robot y un "VI"
para interpretar los comandos.
Comunicación.vi:
La rutina principal es Comunicacion.vi y a
partir de ella se hace el llamado a los demas Instrumentos Virtuales.
Este "VI" controla la comunicación con los demas
individuos, tiene a su cargo el manejo del puerto serial del computador
y el control del protocolo de comunicaciones. Para el control del
puerto serial se utilizaron los iconos para operar este puerto que
ofrece LabVIEW en la librería "Serial.LLB". Estos
iconos son:
Serial Port INIT: Este "vi"
se utiliza para configurar el Puerto serie antes de iniciar la comunicación.
Sólo se necesita configurarlo una vez, al inicio de la aplicación
y los parámetros se mantienen durante todo el programa. Los
parámetros que se deben configurar son los siguientes: Buffer Size: indica el tamaño de los buffers de entrada
y salida. En nuestro caso este parámetro debe ser configurado
con el tamaño de la trama, es decir 4. Baud rate: indica la velocidad de transmisión y recepción
de datos. Debe ser igual a la configuración hecha en el microprocesador
de la estación base (19600). Port number: Indica el numero del puerto que se va ha usar.
Los demás parámetros se dejan con la configuración
por defecto.
Error code: Indica los errores que se hayan podido cometer en la configuración
del puerto. Su valor es distinto de 0 si hay un error.
Serial Port Write: Este "vi"
se utiliza para enviar una serie de caracteres en código ASCII
por el Puerto serie. Port number: Indica el numero del puerto.
String to write: contiene los caracteres que se quieren enviar. Error Code: su valor es distinto de 0 si existe algún
error.
Serial Port Read: Se emplea para leer
cadenas de caracteres que hayan sido recibidas y almacenadas por el
Puerto serie. Port number: Indica el puerto. Resqueted byte count: Especifica el número de bytes
que se quieren leer de los que se han recibido. String read: Contiene la cadena de caracteres que ha sido leída
del puerto serial.
Bytes at Serial Port: Este "vi"
consulta el número de bytes que se encuentran almacenados en
el buffer. Port number: indica el número del puerto. Bytes count: Indica el número de bytes que hay almacenados
en el buffer.