4.9.1. El protocolo TL3000
Es un protocolo propietario basado en una serie de comandos de control que permiten
conocer y modificar los registros de los distintos módulos TL3000. El módulo
TLE3001C02 acepta datos con este protocolo a través del puerto serie y a través de los
puertos 3000 de TCP y UDP.
En el protocolo TL3000 hay una máquina que actúa como cliente (ordenador) que es la
que pide información al módulo TLE3001C02 que actúa como servidor. Los mensajes
que se intercambian el cliente y el servidor se rigen por las siguientes normas:
Todos los mensajes constan de:
- Un identificador de la acción que quiere realizar con ese mensaje, que se
denomina comando (siempre el valor ASCII de una letra minúscula).
- Tres bytes que contienen la dirección del chasis (2) y el vano dentro del chasis (1) al
que va dirigido, o del que procede si se trata de una respuesta, el mensaje.
- Un número variable de parámetros.
- Dos bytes con el checksum.
- Un byte con el carácter ASCII {LF} (0x0Ah).
Todos los mensajes dirigidos al chasis en el que se encuentra el módulo TLE3001C02
tienen una respuesta por parte de él.
La dirección del chasis está comprendida entre 1 y 32. Los dos bytes que se transmiten
se obtienen separando el valor de la dirección en dos nibbles y sumando 0x30h a cada
uno de ellos. El primer byte que se transmite es el que contiene el nibble de mayor
peso. Todos los comandos que el módulo TLE3001C02 recibe por la interfaz de
Ethernet dirigidos al chasis 0 los trata como si fuesen dirigidos al chasis en el que se
aloja él mismo.
El número de vano está comprendido entre 1 y 14. El byte que se transmite se obtiene
sumando 0x30h al número de vano. Los comandos enviados al vano 15 se envían a
todos los módulos del chasis para que los utilicen aquellos que lo necesiten. Los
módulos no responden nunca a comandos dirigidos al vano 15. Todos los comandos
enviados al vano 0 son respondidos por el módulo TLE3001C02 como si fuesen
dirigidos a él.
Los parámetros son siempre números entre 0 y 255 (un byte) que se codifican para su
transmisión como dos bytes. Los dos bytes que se transmiten se obtienen separando
el valor del parámetro en dos nibbles y sumando 0x30h a cada uno de ellos. El primer
byte que se transmite es el que contiene el nibble de mayor peso.
El checksum es un número entre 0 y 255 que se obtiene sumando módulo 256 todos
los bytes que forman el comando a excepción del propio checksum y del {LF}. Los dos
bytes que se transmiten se obtienen por un procedimiento análogo al que se ha
explicado anteriormente.
Albalá Ingenieros | Manual
TLE3001C02
35