Capítulo 8 - Dispositivos Opcionales
Enderezo:
El maestro inicia la comunicación enviando un byte con el enderezo del esclavo para el cual se
destina la mensaje. Al enviar la respuesta, el maestro también inicia el telegrama con el su propio
enderezo. El maestro también puede enviar una mensaje destinada al enderezo 0 (cero), el que
significa que el mensaje es destinada a todos los esclavos de la red (broadcast). En este caso, ninguno
esclavo irá contestar al maestro.
Código de la Función:
Este campo también contiene un único byte, donde el maestro especifica el tipo de servicio o
función solicitada al esclavo (lectura, escrita, etc.). De acuerdo con el protocolo, cada función es
utilizada para acceder un tipo específico de dato.
En el MVW-01, los datos relativos a los parámetros y variables básicas están disponibles como
registradores del tipo holding (referenciados a partir del enderezo 40000 o '4x'). Además de estos
registradores, el estado del convertidor (habilitado / deshabilitado, con error / sin error, etc.) y el
comando para el convertidor (gira / para, gira horario / gira Antihorario, etc.), también pueden sierren
acezados a través de la función para lectura/escrita de 'coils' o bits internos (referenciados a partir
del enderezo 00000 o '0x').
Campo de Dados:
Campo con tamaño variable. El formato y el contenido de este campo dependen de la función
utilizada y de los valores transmitidos. Este campo está descrito juntamente con la descripción de las
funciones (mirar ítem 8.14.3).
CRC:
La última parte del telegrama es el campo para chequear el error de transmisión. El método utilizado
es el CRC-16 (Cycling Redundancy Check). Este campo es formado por dos bytes, donde primero
se transmite el byte menos significativo (CRC-) y después el más significativo (CRC+).
El cálculo del CRC es iniciado primeramente cargándose una variable de 16 bits (referenciado
a partir de ahora como variable CRC) con el valor FFFFh. Después ejecutase los pasos de acuerdo
con la siguiente rutina:
1. Someterse el primer byte del mensaje (solamente los bits de datos – Start bit, paridad y stop bit no
son utilizados) a una lógica XOR (O Exclusivo) con los 8 bits menos significativos de la variable
CRC, retornando el resultado en la propia variable CRC.
2. Entonces, la variable CRC es desplazada una posición a la derecha, en dirección al bit menos
significativo y la posición del bit más significativo es rellenado con 0 (cero).
3. Luego del desplazamiento, el bit de flag (bit que fue desplazado para fuera de la variable CRC) es
analizado, ocurriendo el siguiente:
Si el valor del bit es 0 (cero), nada es hecho;
Si el valor del bit es 1, el contenido de la variable CRC es sometido a una lógica XOR con un
valor constante de A001h y el resultado es retornado a la variable CRC.
4. Si repite los pasos 2 y 3 hasta que ocho desplazamiento tengan sido hechos.
5. Si repite los pasos 1 a 4, utilizando el próximo byte del mensaje, hasta que todo el mensaje tenga
sido procesado.
El contenido final de la variable CRC es el valor del campo CRC que es transmitido en el final
del telegrama.
Las partes menos significativa es transmitido por primer (CRC-) y en seguida la parte más
significativa (CRC+).
8-48