Você está na página 1de 17

Comandos de Pesagem para Protocolo ALFA Instrumentos

Protocolo de Comunicao Serial Alfa Instrumentos verso 2.0


1. Introduo Este documento descreve o Protocolo de Comunicao Serial Assncrona de Dados e deve ser utilizado para propiciar a comunicao de dados entre os equipamentos da Alfa Instrumentos e dispositivos que necessitem receber informaes de pesagem. O tipo de interligao para comunicao serial mais simples o ponto ponto, e o mais elaborado o multiponto, tendo os dois suas vantagens e desvantagens. O Protocolo de Comunicao Serial da Alfa Instrumentos foi desenvolvido para poder trabalhar com ambos. A seguir, trataremos do tipo de interligao multiponto, bem como de seu protocolo. 2. Conceitos de Mestre /Escravo Dois conceitos importantes no protocolo so os relativos ao equipamento mestre e ao equipamento escravo. Em qualquer interligao na qual esteja sendo utilizado um protocolo, necessariamente dever existir um e somente um equipamento mestre e pelo menos um equipamento escravo. Defini-se como mestre o equipamento responsvel por toda a iniciativa do processo de comunicao, ou seja, uma troca de dados entre os equipamentos em qualquer dos dois sentidos, iniciado e finalizado pelo mestre. Defini-se como escravo o equipamento que, no processo de comunicao, s realiza alguma funo sob requisio e controle do mestre. Um equipamento pode ser mestre ou escravo dependendo somente de sua aplicao no processo. Isto quer dizer que para um determinado processo, um equipamento pode estar configurado como mestre, sendo que, em outro processo o mesmo equipamento pode estar configurado como escravo. Na comunicao entre um mestre e um escravo existem duas situaes possveis: a) mestre deseja enviar/receber dados para/do escravo b) escravo deseja enviar/receber dados para/do mestre No primeiro caso, como o mestre tem o poder de iniciar o processo de comunicao, ele envia uma mensagem a qualquer momento, de acordo com suas necessidades e independente do estado do escravo, requisitando a este a realizao de uma determinada funo. Ao receber a mensagem, o escravo executa a funo requerida e envia uma resposta contendo o resultado da funo requisitada. Este processo de comunicao chamadao de SELECT. No segundo caso, como o escravo no pode tomar a iniciativa de comear o processo de comunicao, ele aguarda que o mestre pergunte se o escravo deseja enviar/receber alguma mensagem, e s quando isto ocorrer o escravo envia sua mensagem requisitando ao mestre a realizao de determinada funo. Ao receber a mensagem enviada pelo escravo, o mestre realiza a funo solicitada e envia a resposta contendo o resultado da funo. Esse processo recebe o nome de POLLING. 3. Protocolo em termos de enlace O estgio de enlace se preocupa exclusivamente com os procedimentos a serem seguidos na transmisso e recepo das mensagens, recuperao de erros, sincronismo entre as mensagens, sincronismo entre os equipamentos em relao comunicao, conexo e desconexo, etc., deixando para o nvel de aplicao o tratamento das informaes relativas ao processo que se deseja supervisionar e/ou controlar. O controle da comunicao disciplinado por cdigos ASCII em sequncias especiais. Os procedimentos referentes ao sincronismo entre as mensagens e equipamentos so implementados pelos processos de Select e Polling. 3.1 Formato das mensagens Todas as mensagens enviadas no protocolo so classificadas em mensagens de comando e mensagens de resposta. As mensagens de comando so aquelas que contm um comando para a execuo de uma atividade por parte de quem a est recebendo (o receptor). Um comando pode ser uma requisio de dados, uma ordem para uma mudana de estado, uma carga de programa no receptor, uma requisio de status do equipamento, a alterao de um parmetro do receptor, etc.. As mensagens de resposta so aquelas que contm a resposta de um comando recebido. Uma resposta pode conter dados requisitados, status do equipamento, confirmao da carga de programa, confirmao da alterao do parmetro requisitado, etc.. O formato das mensagens, quer seja de comando ou resposta, o seguinte:
DLE STX DST SRC blocos de informaes DLE ETX BCC

DLE (Data Link Escape): cdigo ASCII = 10H - Este caracter tem a funo de informar ao equipamento que est recebendo a mensagem, que o prximo byte da mensagem um caracter ASCII de controle da comunicao (STX, ETX, etc.). Isto permite que no exista confuso entre os caracteres de controle e os outros bytes constituintes da mensagem. Se o equipamento receptor receber um DLE aps outro DLE, deve interpretar isso como apenas um DLE, isto quer dizer que caso se queira enviar um DLE como dado da mensagem, deve ser enviado DLE duas vezes. STX (STart of Text): cdigo ASCII = 02H. DLE STX: sequncia que indica o incio de um bloco de mensagem. DST (DeSTino). Identifica o endereo do equipamento da rede de comunicao que deve receber a mensagem. SRC (SouRCe). Identifica o endereo do equipamento da rede de comunicao que esta enviando a mensagem. Blocos de Informaes: contm os dados binrios referentes ao processo e que so tratados pelo protocolo na aplicao. No caso desses dados se referirem a comando, a mensagem completa, incluindo os caracteres de controle (DLE, STX, ETX, BCC), forma um Quadro de Comando. J no caso dos dados serem referentes a uma resposta, a mensagem completa forma um Quadro de Resposta. ETX (End of TeXt): cdigo ASCII = 03H. DLE ETX: sequncia que indica se a mensagem de comando ou resposta terminou, no existindo nenhum outro bloco a ser enviado.

Protocolo de Comunicao Serial Alfa Instrumentos verso 2.0


BCC (Block Check Caracter) - Permite a verificao da consistncia dos dados recebidos, isto , se ocorreu algum erro durante a transmisso ou recepo do bloco da mensagem. O BCC calculado a partir de STX at ETX. calculado atravs da lgica OU EXCLUSIVO do byte de dados atual com o BCC anterior, seguido de um Rotate Left de uma posio. Defini-se 00H como valor inicial do BCC. 3.2 Procedimentos de transmisso e recepo de mensagens: A transmisso e recepo de uma mensagem, do ponto de vista de seus procedimentos de deteo e recuperao de erros, segue sempre uma mesma sequncia e independe do sentido da transmisso (mestre para escravo ou vice-versa), e do tipo da mensagem (Comando ou Resposta). No entanto os procedimentos, relativos ao sincronismo da comunicao entre os equipamentos, dependem da definio mestre e escravo para uma rede multiponto e/ou da definio Source e Sink para comunicao ponto-a-ponto. Este item descreve os procedimentos a serem seguidos na transmisso e recepo do bloco que compem uma mensagem segundo o conceito mestre e escravo. 3.2.1 Escravo: O escravo pode se comportar de duas formas distintas: recepo de mensagens enviadas pelo mestre transmisso de mensagens para o mestre, quando solicitado 3.2.1.1 Recepo: Na recepo de mensagens, o escravo analisa os dados recebidos e pode considerar o bloco recebido como: Invlido - quando o endereo destino (DST) no corresponde ao endereo do escravo ou no reconhece o delimitador de incio ou fim do bloco (DLE STX, DLE ETX). Neste caso o escravo no responde ao mestre. Correto - Neste caso o escravo transmite ao mestre a sequncia de reconhecimento do bloco ( ACK - positive ACKnowledgement = 06H). Ao responder ACK ao mestre, est finalizado o processo de recepo para o escravo. Errado - Neste caso o escravo transmite ao mestre a sequncia de erro de recepo (NAK - negative AcKnowledgement = 15H ). Ocupado para atender - Neste caso o escravo transmite ao mestre a sequncia de impossibilidade de atender (WAK Wait AcKnowledgement = 14H DC4). Ao responder WAK, o mestre finaliza o processo de transmisso para o escravo, e a retransmisso da mensagem decidida pela aplicao. 3.2.1.2 Transmisso: Na transmisso de mensagens para o mestre, o escravo analisa o pedido recebido como: Nenhuma mensagem ou mensagem sendo montada - Neste caso o escravo transmite ao mestre a sequncia de impossibilidade de enviar uma mensagem, pois no h nenhuma mensagem a ser enviada (EOT- End of Transmission = 04H). Ao responder EOT, o mestre poder assumir uma entre duas possibilidades conforme deciso da aplicao, executando uma sequncia de pedidos de transmisso de dados do escravo at um limite definido pela aplicao, ou finaliza o processo de recepo e a deciso de um novo pedido de transmisso de dados do escravo fica a critrio da aplicao. Ocupado para atender - Neste caso o escravo transmite ao mestre a sequncia de impossibilidade de atender ( WAK Wait AcKnowledgement = 14H ). Ao responder WAK, o mestre finaliza o processo de recepo do escravo ou executa uma sequncia de pedidos de transmisso de dados do escravo at um limite definido pela aplicao. Transmite a mensagem - Transmite a mensagem conforme o formato padro. 3.2.2 Mestre: Do mesmo modo que o escravo, o mestre pode ter dois comportamentos distintos: transmissor de mensagens para o escravo receptor de mensagens enviadas pelo escravo 3.2.2.1 Transmissor: Como transmissor, o mestre envia a mensagem e dispara uma contagem mxima (timeout) de espera de confirmao de recepo pelo escravo. Podem ocorrer as seguintes situaes com relao resposta esperada: Ocorreu Timeout - Caso ocorra o timeout de espera de confirmao de resposta, o mestre executa sequncia de retries, ou seja, retransmite a mensagem enviada anteriormente. Esse procedimento de retry se repete at o escravo responder ACK ou NAK, ou at ocorrer o nmero mximo de retries permitidos. Caso ocorra o estouro do nmero de retries, o mestre assume a ocorrncia de um erro de comunicao. Recebeu NAK - Caso receba uma resposta negativa, a mensagem enviada o mestre executa a sequncia de retries idntica ao caso de ocorrncia de timeout. Recebeu ACK - Ao receber ACK da mensagem enviada, o mestre finaliza o processo de transmisso desta mensagem. No compreendeu a resposta ACK ou a resposta NAK - O transmissor executa sequncia de retries, ou seja, retransmite a mensagem enviada anteriormente. Esse procedimento de retry se repete at o escravo responder ACK ou NAK, ou at o nmero mximo de retries ser atingido. Recebeu WAK - Ao receber o WAK o mestre finaliza o processo de transmisso e a retransmisso fica a cargo da aplicao. 3.2.2.2 Receptor Como receptor o mestre questiona o escravo se possui alguma mensagem a ser enviada, podendo ocorrer as seguintes situaes:

Protocolo de Comunicao Serial Alfa Instrumentos verso 2.0


Recebeu WAK - Ao receber WAK, pode se comportar de dois modos independentes, conforme deciso da aplicao: executa uma sequncia de retries do pedido de transmisso ou finaliza a recepo, e um novo pedido feito pela aplicao. Recebeu EOT - Ao receber EOT o mestre finaliza o processo de recepo e um novo pedido fica a cargo da aplicao. Recebe a mensagem do escravo - Nesta situao, aps receber a mensagem o mestre envia os seguintes caracteres de controle: ACK, confirmando para o escravo que a recepo da mensagem enviada foi bem sucedida, ou NAK, informando para o escravo que houve erro na recepo da mensagem e solicitando uma retransmisso. Ocorreu Timeout - Existem duas formas de timeout possveis: durante o pedido de transmisso de dados ao escravo no ocorrendo nenhuma resposta ou resposta no compreendida, ou caso a mensagem recebida tenha sido ignorada. Nesta situao o mestre finaliza o processo de recepo, deixando a interpretao do timeout e/ou o pedido de retransmisso a cargo da aplicao. 3.2.3 Notas O numero de retries mximo 2 (dois). Isto significa que ocorreram 3 (trs) transmisses para uma situao de falha: a transmisso inicial e as duas retransmisses provocadas pelo retry. Todos os timeouts desse procedimento devem ser de 500 ms. 3.3 Select Como discutido no item 2, o processo de Select comea quando o mestre necessita enviar dados para o escravo. 3.3.1 Descrio 3.3.1.1 Comportamento do mestre Caso no esteja em andamento um processo de comunicao, o mestre transmite ao escravo a sequncia DLE EOT (End Of Text) enviando em seguida uma mensagem, de acordo com o procedimento de transmisso e recepo de mensagens descrito no item 3.2. No caso de ocorrncia de falha de comunicao na tranmisso da mensagem, o mestre tenta a recuperao da comunicao retransmitindo a mensagem (retry). Caso o nmero de retries atinja o mximo permitido, o mestre executa seu procedimento de falha de comunicao (alarme, mensagem no display, etc.). Ao receber ACK, o mestre informado que a mensagem foi corretamente recebida pelo escravo. Neste momento o mestre finaliza o processo de Select podendo, desta maneira, pedir uma transmisso de dados pelo escravo (Pooling-item 3.4) ou iniciar um novo Select para transmitir uma nova mensagem. Caso ocorra timeout de espera pela confirmao da mensagem enviada para o escravo, o mestre tenta uma sequncia de retries. Se ocorrer o estouro do nmero de retries permitidos o mestre executa o procedimento de falha de comunicao. 3.3.1.2 Comportamento do escravo Quando no est ocorrendo um processo de comunicao todos os escravos da rede esto espera de um Select ou um Polling. Ao receber a sequncia de Select (DLE EOT), todos os escravos conectados rede entendem que est se iniciando um Select. Os escravos disparam um timeout e passam a aguardar a recepo da mensagem. Caso ocorra o timeout de espera da mensagem, os escravos ignoram o ocorrido e voltam a aguardar um novo Select ou um Polling. Ao iniciar a recepo da mensagem os escravos verificam se o endereo destino da mensagem corresponde ao seu endereo de rede. Os escravos no endereados ignoram o Select e voltam a aguardar um novo Select ou um Polling. Aps a recepo correta de toda a mensagem do mestre, o escravo endereado processa o comando e passa a enviar o Quadro de Resposta seguindo o procedimento de transmisso e recepo de mensagens como descrito no item 3.2. No caso de ocorrncia de algum problema na transmisso do Quadro de Resposta, o escravo executa seu procedimento de falha de comunicao voltando a aguardar um novo Select ou Polling do mestre para reiniciar seu processo de comunicao. Ao receber ACK, o escravo considera que finalizou o Select e volta a aguardar um novo Select ou um Polling. 3.3.2 Esquema de Transmisso e Recepo (SELECT)

MESTRE DLE EOT DLE STX DST SRC bloco de informaes DLE ETX BCC retry timeout fim fim ignora WAK NAK ACK

ESCRAVO

mensagem invlida ocupado mensagem com erro mensagem ok 4

Protocolo de Comunicao Serial Alfa Instrumentos verso 2.0

fim quando necessrio resetar todos os escravos da linha. Obs. a sequncia DLE EOT deve ser enviada somente
3.3 Notas O nmero de retries mximo 2 (dois). Isto significa que ocorreram 3 (trs) transmisses para uma situao de falha: a transmisso inicial e as duas retransmisses provocadas pelo retry. Caracteres de Controle utilizados no processo de Select: EOT (End Of Transmission): Cdigo ASCII = 04H - Indica ao escravo o incio de um Select (resseta a linha). WAK (Wait AcKnownlegdement): Cdigo ASCII = 14H (DC4) Os timeouts envolvidos no processo de Select devem ser de 500ms. 3.4 Polling O processo de Polling utilizado pelo mestre para verificar se o escravo possui algum comando pendente a ser enviado. 3.4.1 Descrio 3.4.1.1 Comportamento do Mestre Caso no esteja em andamento um processo de comunicao, o mestre transmite ao escravo a sequncia DLE ENQ DST, onde DST indica o endereo do escravo que est sendo interrogado. Aps enviar o ENQ o mestre dispara uma contagem de tempo mximo (timeout) para aguardar uma resposta positiva ou negativa do escravo. Caso ocorra o timeout, o mestre finaliza o Polling, deixando a cargo da aplicao a deciso de uma nova sequncia de Polling. No caso de estouro do numero mximo de retries, o mestre executa o procedimento de falha de comunicao (alarme, mensagem no display, etc.). Caso o mestre receba como resposta do escravo a sequncia DLE EOT, significa que o escravo no possui nenhuma mensagem a ser enviada, e o mestre encerra o Polling. Se o mestre receber a sequncia DLE WAK significa que o escravo est impossibilitado de enviar a mensagem nesse momento. O mestre faz ou no uma sequncia de retries segundo sua aplicao. Aps a recepo correta de todo o Quadro de Comando do escravo, o mestre processa o comando recebido e passa a enviar o Quadro de Resposta de acordo com o procedimento de transmisso e recepo de mensagens como descrito no item 3.2. Caso ocorra algum problema na transmisso do Quadro de Resposta o mestre executa um retry de todo o Polling, at o nmero mximo de retries permitido e caso no consiga que o escravo receba o Quadro de Resposta corretamente, executa sua sequncia de falha de comunicao. Ao receber ACK o mestre considera finalizado o Polling. 3.4.1.2 Comportamento do Escravo Ao receberem a sequncia DLE ENQ DST todos os escravos da rede verificam se o campo DST (destino da mensagem) contm seu endereo de rede. Os escravos no endereados ignoram o Polling e voltam a aguardar novo Polling ou Select. O escravo endereado verifica se possui algum comando a enviar ao mestre e caso no exista envia a sequncia DLE EOT ao mestre encerrando o processo de Polling . No caso de possuir uma mensagem pendente, envia imediatamente a mensagem ao mestre, seguindo os procedimentos de transmisso e recepo de mensagens como descrito no item 3.2. Quando ocorre falha de comunicao, o escravo no responde mais ao mestre at receber um novo Polling ou um Select. Se o escravo estiver ocupado ele transmite ao mestre a sequncia DLE WAK informando ao mestre a impossibilidade de enviar qualquer mensagem e volta a esperar um novo Select ou Polling. 3.4.2 Esquema de transmisso e recepo (Polling)

MESTRE DLE EOT DLE ENQ DST fim sim timeout ignora

ESCRAVO

no

retry ? fim

DLE EOT DLE WAK

sem mensagem ocupado transmite


DLE STX DST SRC bloco de informaes DLE ETX

mensagem ok

ACK

fim retry 5

Protocolo de Comunicao Serial Alfa Instrumentos verso 2.0


mensagem com erro no compreendido NAK timeout fim
obs. a sequncia DLE EOT enviada pelo mestre ao escravo deve ser utilizada somente quando for necessrio resetar todos os escravos da linha. 3.4.3 Notas O nmero de retries mximo 2 (dois). Isto significa que ocorreram 3 (trs) transmisses para uma situao de falha: a transmisso inicial e as duas retransmisses provocadas pelo retry. Caracteres de Controle utilizados no processo de Polling: EOT (End Of Transmission): Cdigo ASCII = 04H ENQ (ENQuire): Cdigo ASCII = 05H WAK (Wait AcKnowledge) : Cdigo ASCII = 14H (DC4) DLE EOT: Quando enviado pelo escravo ao mestre indica que no existe mensagem a ser enviada. Deve portanto ocorrer novo select. DLE WAK: Quando enviado pelo escravo ao mestre indica que est impossibilitado de enviar a mensagem. Se ocorrer outro polling estar vinculado ao ltimo select. DLE ENQ: Indica ao escravo o incio de um processo de Polling. NAK (Negative AcKnowledgement) Cdigo ASCII = 15H. Resposta informando que uma string foi recebida com erro. ACK (positive ACKnowledgement) Cdigo ASCII = 06H. Resposta informando que uma string foi recebida corretamente. Os timeouts envolvidos no processo de Polling devem ser de 500ms.

fim

Protocolo de Comunicao Serial Alfa Instrumentos verso 2.0


4. Protocolo em termos de Aplicao O protocolo do lado da aplicao se preocupa com o tratamento das informaes embutidas em uma mensagem enviada ou recebida pela rede de comunicao.

Quando operando com protocolo ALFA Instrumentos, os parmetros para comunicao so os seguintes: - 19200 bps, 1 START BIT, 8 DATA BITS, SEM paridade, 1 STOP BIT

4.1 Quadro de comando Como j foi dito, Quadro de Comando o nome dado mensagem enviada na rede pelo equipamento que deseja requisitar ao outro equipamento conectado a execuo de determinada tarefa. A tarefa requisitada pode ser o envio de dados de processo, envio de dados de alarme, a alterao de parmetros internos, a alterao de programao, etc.. O Quadro de Comando constitudo pelas sequncias de controle e o bloco de informaes com os dados referentes a um comando. O comando formado pelo cdigo de comando seguido de seus parmetros. CMD PARMETROS O cdigo de comando um nmero binrio de 00H at 7FH, isto , podem existir at 128 cdigos de comando + cdigos de resposta sendo que cada cdigo possui uma determinada funo e aplicao que esto descritas no item Conjunto de Comandos. 4.2 Quadro de resposta Quadro de Resposta o nome dado mensagem enviada atravs da rede de comunicao pelo equipamento que executou um comando requisitado. Essa mensagem pode conter dados de processo, status do equipamento, dados de alarme, confirmao de alterao de parmetros internos, confirmao de alterao de programao, etc.. O Quadro de Resposta constitudo pelas sequncias de controle mais o bloco de informaes com os dados referentes resposta. RSP PARMETROS 4.3 Conjunto de comandos A seguir a apresentao e descrio do conjunto de comandos executados pela rede Alfa. Novos comandos podem ser criados conforme a necessidade de utilizao. 4.3.1 Verificao do status do escravo (01H) Utilizado para reconhecimento pelo mestre da posio atual do escravo. CMD= 01H A resposta enviada pelo escravo : RSP= 01H POSIO 00H 01H a 0DH 0EH a 11H 13H a 18H = estado de indicao de pesos = estado de ajuste de parmetros. = estado de ajuste de valores de setpoints = estado de autocalibrao

4.3.2 Inicializao individual dos escravos (02H) Utilizado para colocao de todos os escravos em um ponto definido do processo. No caso especfico do Indicadores de Pesagem o ponto do processo a indicao de pesos ( estado de indicao de pesos). Este comando tambm permite confirmar ao escravo que o mestre identificou a alterao de parmetros do equipamento via display local (sinalizada pelo escravo atravs do status do comando 08H ) e j atualizou a nova configurao. CMD= 02H A resposta enviada pelo escravo confirma a execuo do comando. RSP= 02H 4.3.3 Programao de Setpoints (03H) modelos 3104/7 Utilizado para programao de valores de nivel de corte (setpoints) do escravo. CMD=03H STATUS SETPOINT 1 ---------SETPOINT N status (1byte) = bit 7 em 1. bit 6 em 0 - no gravar em memria no voltil. 1 - gravar em memria no voltil. bits 0 a 5 = nmero de setpoints em binrio. Setpoints = cada valor composto de 5 bytes em ASCII ( ex. setpoint =10000 --> 31 30 30 30 30 )

Protocolo de Comunicao Serial Alfa Instrumentos verso 2.0


Obs.: O nmero de setpoints igual a 4, sendo o ltimo igual ao valor programado para opo da configurao VAZIA. Todos valores devem sempre ser passados independentemente quantidade de valores a serem alterados. 4.3.4 Programao do Setpoint0 (30H) modelos 3104C/7C Utilizado para programao de valores de nivel de corte (setpoints) do escravo. CMD=30H STATUS SETPOINT0 TRAVA0 STATUS (1byte) = bit 7 fixo em 1 bit 6 em 0 no gravar em memria no voltil em 1 gravar em memria no voltil bits 5 ..1 fixos em 0 bit 0 em 0 setpoint0 opera como VAZIA 1 SETPOINT0 opera como NIVEL0 SETPOINT0 TRAVA0 = composto de 5 bytes em ASCII ( ex. setpoint =10000 --> 31 30 30 30 30 ) = 0 (30H - sem trava), 1 (31H - com trava).

4.3.5 Programao do Setpoint1 (31H) modelos 3104C/7C Utilizado para programao de valores de nivel de corte (setpoints) do escravo. CMD=31H STATUS SETPOINT1 TRAVA1 STATUS (1byte) = bit 7 fixo em 1 bit 6 em 0 no gravar em memria no voltil em 1 gravar em memria no voltil bits 5 ..0 fixos em 0 SETPOINT1 TRAVA1 = composto de 5 bytes em ASCII ( ex. setpoint =10000 --> 31 30 30 30 30 ) = 0 (30H - sem trava), 1 (31H - com trava).

4.3.6 Programao do Setpoint2 (32H) modelos 3104C/7C Utilizado para programao de valores de nivel de corte (setpoints) do escravo. CMD=32H STATUS SETPOINT2 TRAVA2 STATUS (1byte) = bit 7 fixo em 1 bit 6 em 0 no gravar em memria no voltil em 1 gravar em memria no voltil bits 5 ..1 fixos em 0 bit 0 em 0 setpoint0 opera como VAZIA 1 SETPOINT0 opera como NIVEL0 SETPOINT2 TRAVA2 = composto de 5 bytes em ASCII ( ex. setpoint =10000 --> 31 30 30 30 30 ) = 0 (30H - sem trava), 1 (31H - com trava).

4.3.7 Programao do Setpoint3 (33H) modelos 3104C/7C Utilizado para programao de valores de nivel de corte (setpoints) do escravo. CMD=33H STATUS SETPOINT3 TRAVA3 STATUS (1byte) = bit 7 fixo em 1 bit 6 em 0 no gravar em memria no voltil em 1 gravar em memria no voltil bits 5 ..0 fixos em 0 SETPOINT3 TRAVA3 = composto de 5 bytes em ASCII ( ex. setpoint =10000 --> 31 30 30 30 30 ) = 0 (30H - sem trava), 1 (31H - com trava).

4.3.8 Verificao dos setpoints programados (04H) - modelos 3104/7 Utilizado para verificao de todos valores de nivel de corte programados. CMD= 04H A resposta enviada segue formato: RSP=04H STATUS status (1 byte)

SETPOINT 1

----------------

SETPOINT N

= bit 7 em 1. bit 6 em 0. bits 0 a 5 nmero de setpoints em binrio. Setpoints = cada valor composto de 5 bytes em ASCII. Obs. O setpoint 0, refere-se a programao da opo VAZIA.

Protocolo de Comunicao Serial Alfa Instrumentos verso 2.0


4.3.9 Programao da configurao dos Setpoints (05H) Utilizado para programao de todos parmetros de configurao dos setpoints. CMD=05H HISTERESE LGICA RELE STATUS -------------------TRAVA N

TRAVA 1

histerese (2 bytes ASCII) = valor em % de 00 a 99. lgica rele (1 byte ASCII) = 0 (30H -normalmente aberto) ,1 (31H - normalmente fechado). status (3 bytes) = bit 7 em 1. bit 6* = 0 no gravar configurao em memria no voltil. 1 gravar configurao em memria no voltil. bits 0 a 5 nmero de setpoints em binrio. Se igual a 4, define SETPOINT0 operando como NIVEL0 trava (1 byte ASCII) = 0 (30H - sem trava), 1 (31H - com trava). * cuidado com o envio do status bit 6, pois a memria no voltil uma E2PROM, com vida de gravao limitada aproximadamente 100.000 gravaes. 4.3.10 Verificao da configurao dos setpoints programados (06H) Utilizado para verificao da configurao de todos setpoints programados . CMD=06H A resposta enviada segue formato: RSP=06H HISTERESE -------------------TRAVA N

LGICA RELE

N. SETPOINTS

TRAVA 1

histerese (2 bytes ASCII) = valor em % de 00 a 99. lgica rel (1 byte ASCII) = 0 (30H - normalmente aberto), 1 (31H - normalmente fechado). n.setpoints (1 byte) = bit 7 em 1 bit 6 em 0 bits 0 a 5: nmero de setpoints em binrio trava x (3 bytes ASCII) = 0 (30H - sem trava),1 (31H - com trava) 4.3.11 Programao do endereo do escravo (07H) Coloca um novo endereo de n da rede ao escravo de endereo 0. Todo escravo quando conectado a primeira vez assume seu endereo como 0, a no ser que programado manualmente. CMD=07H NOVO ENDEREO novo endereo (2 bytes ASCII) = de 00 99. Ao receber este comando imediatamente o escravo assume o novo endereo programado, rejeitando a comunicao com o endereo anterior. 4.3.12 Requisio de Pesos e status geral (08H) Solicita ao escravo o envio dos pesos e status geral do Transmissor. CMD=08H A resposta enviada pelo escravo: RSP=08H STATUS 1 status 1: bit 7 bit 6 bit 5 bit 4 bit 3 bit 0 a 2 bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0

STATUS 2

PESO DISPLAY

TARA

status 2:

=1 = Alarme de sobrecarga = Alarme de saturao = Deteco de movimento de peso = peso negativo no display = posio do ponto decimal em binrio =1 = 1 , ocorreu alterao local de parmetros via display/teclado = sistema em modo PESO BRUTO = sistema operando com ZERO FIXO = passagem pelo nvel de corte 0 = passagem pelo nvel de corte 3 = passagem pelo nvel de corte 2 =passagem pelo nvel de corte 1

peso display tara

= 5 bytes ASCII = 5 bytes ASCII

Protocolo de Comunicao Serial Alfa Instrumentos verso 2.0

4.3.13 Acionamento de funes via rede (09H) CMD=09H TECLAS teclas : bit 0 = zero bit 1 = tara bit 2 = RESERVADO bit 3 = destara bit 4 = destrava bit 5 = imprime (3104C/7C) bit 6 = acumula (3104C/7C) bit 7 = RESERVADO 4.3.14 Programao da faixa de peso para atuao da sada analgica (0AH) - modelo 3107 Determinao da faixa de atuao 4/20mA ou 0/20mA e a sua referncia de pesagem ( peso bruto ou Liquido); CMD=0AH REFERNCIA PESO 4 MA OU 0 MA PESO 20 MA peso 4mA ou 0mA peso 20mA referncia = 5 bytes em ASCII. = 5 bytes em ASCII. = 1 byte em ASCII , (B - peso bruto), (L - peso lquido)

4.3.15 Verificao da faixa de peso para atuao da sada analgica (0BH) - modelo 3107 Verificao da faixa de atuao 4/20mA CMD=0BH A resposta enviada segue formato: RSP=0BH REFERNCIA peso 4mA ou 0mA peso 20mA referncia

PESO 4 MA OU 0 MA

PESO 20 MA

= 5 bytes em ASCII. = 5 bytes em ASCII. = 1 byte em ASCII, (B - peso bruto), (L - peso lquido)

4.3.16 Verificao e controle acumulador (0CH) - modelos 3104/6/7 Utilizado nos equipamentos que possuam funo de acumulador de peso. Atravs deste comando pode-se ler o valor acumulado, zerar e obter informaes de status. CMD=0CH STATUS status (1 byte) = bit 0 em 1 - ordem para acumular bit 1 em 1 - ordem para limpar o valor acumulado A resposta enviada pelo escravo confirma a execuo do comando e o valor atual acumulado no equipamento. RSP=0CH STATUS VALOR ACUMULADO LTIMO PESO ACUMULADO status (1 byte) = bit 6 em 1 - o equipamento no pode acumular pois ultrapassou a capacidade do buffer bit 5 em 1 - no pode acumular devido a balana estar em movimento. bit 4 em 1 - no pode acumular devido a operao j ter sido realizada com comado manual ou atravs da rede de comunicao, sem ter sido liberada (volta do Indicador a 0) bit 0,1e 2 - posio da casa decimal do valor acumulado. = 8 bytes em ASCII = 5 bytes em ASCII

valor acumulado ltimo peso acumulado

4.3.17 Leitura dos dados de acumulao (0EH) - modelos 3104C/7C Utilizado nos equipamentos que possuam funo de acumulador de peso. Atravs deste comando pode-se ler todos os dados relativos funo de acumulao. CMD=0EH A resposta enviada segue formato: RSP=0EH STATUS TOTAL ACUMULADO status (1 byte)

TOTALIZAES

PESO MDIO

= bits 7 ..3 = 0 bit 0,1 e 2 - posio da casa decimal do valor acumulado.

valor acumulado = 8 bytes em ASCII totalizaes = 5 bytes em ASCII peso mdio = 5 bytes em ASCII

10

Protocolo de Comunicao Serial Alfa Instrumentos verso 2.0


4.3.18 Programao do Relgio Calendrio (10H) - modelo 3104C/7C Programa DATA/HORA. CMD=10 DIA MES ANO HORAS MINUTOS dia mes ano horas minutos segundos = 2 bytes em ASCII = 2 bytes em ASCII = 2 bytes em ASCII, contendo apenas os dgitos da dezena e unidade = 2 bytes em ASCII, no padro 00..23 = 2 bytes em ASCII = 2 bytes em ASCII

SEGUNDO

4.3.19 Leitura do Relgio Calendrio (11H) - modelo 3104C/7C Leitura dos dados de DATA/HORA. CMD=11H A resposta enviada segue formato:
CMD=11H DIA MES ANO HORAS MIN SEG SEMANA

dia mes ano horas minutos segundos semana

= 2 bytes em ASCII = 2 bytes em ASCII = 2 bytes em ASCII, contendo apenas os dgitos da dezena e unidade = 2 bytes em ASCII, no padro 00..23 = 2 bytes em ASCII = 2 bytes em ASCII = 1 byte em ASCII: 31H = segunda, 32H = tera, ... 36H = sbado, 37H = domingo

4.3.20 Captura do Peso ALVO funo SOBRA-FALTA (12H) - modelo 3104C/7C L o peso aplicado balana definindo-o com peso ALVO. CMD=12H A resposta enviada pelo escravo: RSP=12H PESO ALVO peso alvo = 5 bytes ASCII 4.3.21 Programao do PESO ALVO e TOLERNCIA (13H) - modelo 3104C/7C Programa PESO ALVO e respectiva tolerncia. CMD=13H PESO ALVO TOLERNCIA funo = 1 byte em ASCII, (0 - desabilitada), (1 - habilitada) visual = 1 byte em ASCII, (0 - pontual), (1 bargraph) 4.3.22 Leitura do Peso ALVO e TOLERNCIA (14H) - modelo 3104C/7C Solicita ao escravo o envio dos pesos e status geral do Transmissor. CMD=14H A resposta enviada pelo escravo: RSP=14H PESO ALVO peso alvo = 5 bytes ASCII tolerncia = 5 bytes ASCII 4.3.23 Programao dos parmetros da funo SOBRA-FALTA (15H) - modelo 3104C/7C Determinao da faixa de atuao 4/20mA ou 0/20mA e a sua referncia de pesagem ( peso bruto ou Liquido); CMD=15H FUNO VISUAL TOLERNCIA SADAS ALARME funo visual tolerncia sadas = 1 byte em ASCII, (0 - desabilitada), (1 - habilitada) = 1 byte em ASCII, (0 - pontual), (1 - bargraph) = 1 byte em ASCII, (0 - percentual), (1 - numrica) = 1 byte em ASCII, (0 - desabilitadas), (1 - habilitadas) quando habilitadas as sadas de nveis sero atuadas nas seguintes condies: - SETPOINT0: peso na balana <= 1% do peso ALVO - SETPOINT1: peso na balana ABAIXO do peso: ALVO TOLERNCIA - SETPOINT2: peso na balana em torno do peso: ALVO + / TOLERNCIA - SETPOINT3: peso na balana ACIMA do peso: ALVO + TOLERNCIA = 1 byte em ASCII, (0 - desabilitado), (1 - habilitado)

TOLERNCIA

alarme

11

Protocolo de Comunicao Serial Alfa Instrumentos verso 2.0


4.3.24 Leitura dos parmetros da funo SOBRA-FALTA (16H) - modelo 3104C/7C Leitura dos dados de DATA/HORA. CMD=16H A resposta enviada segue formato: CMD=16H FUNO funo visual tolerncia sadas alarme

VISUAL

TOLERNCIA

SADAS

ALARME

= 1 byte em ASCII, (0 - desabilitada), (1 - habilitada) = 1 byte em ASCII, (0 - pontual), (1 - bargraph) = 1 byte em ASCII, (0 - percentual), (1 - numrica) = 1 byte em ASCII, (0 - desabilitadas), (1 - habilitadas) = 1 byte em ASCII, (0 - desabilitado), (1 - habilitado)

4.3.25 Programao da funo ZERO (17H) - modelo 3104C/7C Programa modo de operao da funo ZERO. CMD=17H MODO BOOT modo = 1 byte em ASCII: 0 = funo desabilitada 1 = modo automtico 2 = modo manual 3 = modo automtico e manual = 1 byte em ASCII, (0 busca de zero ao ligar desabilitada), (1 busca habilitada)

boot

4.3.26 Programao do modo de operao da TARA (19H) - modelo 3104C/7C Programa modo de operao da TARA. CMD=19H MODO modo = 1 byte em ASCII: 0 = no sucessiva 1 = no sucessiva e memorizada 2 = sucessiva 3 = sucessiva e memorizada 4 = editvel 5 = editvel e memorizada 8 = desabilitada

4.3.27 Programao da tipo do FILTRO (1BH) - modelo 3104C/7C Programa o filtro a ser utilizado. CMD=1BH FILTRO VISUALIZAO filtro = 1 byte em ASCII: 0,1,2 = para aplicaes que requeiram repostas rpidas em plataformas com capacidade inferior a 120 kg 3,4,5,6 = para aplicaes que requeiram repostas rpidas em plataformas com capacidade superior a 120 kg 7,8 = para aplicaes com cargas mveis 9= para aplicaes com auto grau de vibraes visualizao = 1 byte em ASCII, (0 no mostra peso at estabilizar), (1 sempre mostra o peso) 4.3.28 Programao do valor da TARA EDITVEL (55H) - modelo 3104C/7C Programa valor da TARA. CMD=55H VALOR TARA valor tara = 5 bytes ASCII 4.3.29 Processo de Calibrao Completo A calibrao dos Transmissores Digital, consiste em comandos que permitem fazer leitura de sistema vazio (sem peso), leitura de sistema com peso de calibrao e passagem de parmetros. Estes comandos (etapas) podem ser realizados em qualquer sequncia, mas com a finalizao do processo utilizando o comando 54H o qual faz a gerao da constante de calibrao e armazenamento dos parmetros. 4.3.29.1 Passagem de parmetros de calibrao (50H) Faz a passagem de todos parmetros existentes no menu de calibrao do Transmissor Digital. Os parmetros de calibrao podem ser alterados em qualquer instante, mesmo que j se tenha feito um processo de calibrao, no esquecendo de se utilizar o comando 54H para finalizao. CMD=50H PARAMETROS Parmetros (todos em ASCII, nesta ordem): casas decimais (1 byte) = 0,1,2,3 ou 4 .

12

Protocolo de Comunicao Serial Alfa Instrumentos verso 2.0


degrau (1 byte) peso de calibrao capacidade mxima autozero (1 byte) filtro digital (1 byte) tara (1 byte) = = = = 1, 2 ou 5 . (5 bytes) (5 bytes) (0 - zero manual e automtico desativados),(1 - zero automtico), (2 - zero manual),(3 - zero manual e automtico ativados). (0 - rpido a 8 - lento), (0 - no sucessiva),( 1 - no sucessiva memorizada), (2 - sucessiva), (3 - sucessiva memorizada)

4.3.29.2 Verificao dos parmetros de calibrao (51H) Obtm todos os parmetros de calibrao do equipamento. CMD=51H resposta do Transmissor ao comando: RSP=51H PARMETROS Parmetros (todos em ASCII, nesta ordem): casas decimais (1 byte) = 0,1,2,3 ou 4 . degrau (1 byte) = 1, 2 ou 5 . peso de calibrao (5 bytes) capacidade mxima (5 bytes) autozero (1 byte) = (0 - zero manual e automtico desativados),(1 - zero automtico), (2 - zero manual),(3 - zero manual e automtico ativados). filtro digital (1 byte) = (0 - rpido a 8 - lento), tara (1 byte) = (0 - no sucessiva),( 1 - no sucessiva memorizada), (2 - sucessiva), (3 - sucessiva memorizada) 4.3.29.3 Etapa de calibrao sem peso (52H) Determina o incio de autocalibrao com sistema sem peso. Neste ponto o sistema de pesagem no deve conter nenhum peso sobre o sistema e que os acessrios que fazem parte do peso morto estejam em seus lugares de trabalho. CMD=52H A resposta enviada pelo Transmissor ao terminar esta etapa. RSP=52H STATUS status ( 1byte em ASCII) = (0 - sem erro),(3 - peso instvel),( 6 - converso fora dos limites).

4.3.29.4 Etapa de calibrao com peso (53H) Determina o incio de autocalibrao com o peso de calibrao. Neste ponto o peso deve estar colocado sobre o sistema. CMD=53H A resposta enviada pelo Transmissor ao terminar esta etapa. RSP=53H STATUS status ( 1byte em ASCII) = (0 - sem erro),(3 - peso instvel),( 6 - converso fora dos limites).

4.3.29.5 Gerao da constante de calibrao (54H) Calcula a constante e armazena parmetros de calibrao. Este comando deve ser feito sempre ao final do processo de calibrao. CMD=54H A resposta enviada pelo Transmissor ao terminar esta etapa. RSP=54H STATUS status (1 byte em ASCII) = (0 - sem erro),(1 - peso balana vazia >= peso de calibrao), (2 - span insulficiente),(9 - peso de calibrao>capacidade mxima)

13

Protocolo de Comunicao Serial Alfa Instrumentos verso 2.0


****** COMANDOS EXCLUSIVOS PARA O INDICADOR 3108 ******
4.3.30 Programao de Setpoints (11H) modelo 3108 Utilizado para programao de valores de nivel de corte (setpoints) do escravo. CMD=11H STATUS SETPOINT 1 ----------SETPOINT 4 status (1byte) = bit 7 em 1. bit 6 em 0 - no gravar em memria no voltil. 1 - gravar em memria no voltil. bits 0 a 5 nmero de setpoints em binrio. Setpoints = cada valor composto de 5 bytes em ASCII ( ex. setpoint =10000 --> 31 30 30 30 30 ) Obs.: Os setpoints 1,2 e 4 so referenciados ao peso, e o setpoint 3 com a vazo. O nmero de setpoints igual a 4, sendo o ltimo igual ao valor programado para opo da configurao VAZIA. Todos valores devem sempre ser passados independentemente quantidade de valores a serem alterados. 4.3.31 Verificao dos setpoints programados (12H) modelo 3108 Utilizado para verificao de todos valores de nivel de corte programados. CMD= 12H A resposta enviada segue formato: RSP=12H STATUS status (1 byte)

SETPOINT 1

----------------

SETPOINT 4

= bit 7 em 1. bit 6 em 0. bits 0 a 5 nmero de setpoints em binrio. Setpoints = cada valor composto de 5 bytes em ASCII. Obs. O setpoint 4, refere-se a programao da opo VAZIA. 4.3.32 Programao da faixa de vazo para atuao da sada analgica (13H) modelo 3108 Determinao da faixa de atuao 4/20mA ou 0/20mA e a taxa de amostragem ; CMD=13H TAXA AMOSTRA VAZO 4 MA OU 0 MA VAZO 20 MA vazao 4mA ou 0mA vazao 20mA Taxa de amostragem = 5 bytes em ASCII. = 5 bytes em ASCII. = 1 byte em ASCII : 0 ( 0,1 seg), 1( 1 seg), 2(10 seg), 3(60 seg).

4.3.33 Verificao da faixa de vazo para atuao da sada analgica (14H) modelo 3108 Verificao da faixa de atuao 4/20mA CMD=14H A resposta enviada segue formato: RSP=14H TAXA AMOSTRA vazao 4mA ou 0mA vazao 20mA Taxa de amsotragem

VAZO 4 MA OU 0 MA

VAZO 20 MA

= 5 bytes em ASCII. = 5 bytes em ASCII. = 1 byte em ASCII : 0 ( 0,1 seg), 1( 1 seg), 2(10 seg), 3(60 seg).

4.3.34 Requisio de vazo e status (15H) modelo 3108 Solicita ao escravo o envio dos pesos e status geral do Transmissor. CMD=15H A resposta enviada pelo escravo: RSP=15H STATUS 1

STATUS 2

VAZO DISPLAY

vazo display (5 bytes ASCII) status 1: bit 7 =1 bit 6 = Alarme de sobrecarga (referente ao peso) bit 5 = Alarme de saturao (referente ao peso) bit 4 = Alarme medida de vazo > 65535 kg/min bit 3 = vazo negativa no display bit 0 a 2 = posio do ponto decimal em binrio status 2: bit 7 =1

14

Protocolo de Comunicao Serial Alfa Instrumentos verso 2.0


bit 6 bit 3 bit 2 bit 1 bit 0 = 1 , ocorreu alterao local de parmetros via display/teclado = passagem pelo nvel de corte 0 = passagem pelo nvel de corte 3 = passagem pelo nvel de corte 2 = passagem pelo nvel de corte 1

****** COMANDOS EXCLUSIVOS PARA O INDICADOR 3106 ******


4.3.35 Requisio do ltimo Peso Armazenado no Acumulador (18H) - modelo 3106 Solicita ao escravo o envio dos pesos e status geral do Transmissor. CMD=18H A resposta enviada pelo escravo: RSP=18H PESO ARMAZENADO peso armazenado (5 bytes ASCII) 4.3.36 Limpa ltimo Peso Armazenado no Acumulador (19H) - modelo 3106

Ao enviar este comando o mestre indica ao equipamento que pode retirar o sinalizao de peso armazenado (ver comando anterior).
CMD=19H A resposta enviada pelo escravo: RSP=19H

15

Protocolo de Comunicao Serial Alfa Instrumentos verso 2.0


Protocolo de Comunicao - exemplo de uma transmisso completa e correta de mensagem entre mestre-escravo comando de requisio peso e status geral (08H) indicao de peso 29.998 kg tara= 00.000 kg endereo indicador = 1, endereo do mestre = 0 MESTRE DLE STX DST SRC CMD DLE ETX BCC 10H 02H 01H 00H 08H 10H 03H A6H DLE ENQ DST 10H 05H 01H DLE STX DST SRC CMD -------------------------- INFORMAO ---------------DLE ETX BCC 10H 02H 00H 01H 08H 83H 83H 32H 39H 39H 39H 38H 30H 30H 30H 30H 30H 10H 03H 0FH ACK 06H BCC= calculado de STX at ETX (inclusive) sendo o OU exclusivo do byte de dados atual, com o BCC anterior seguido de um rotate left de uma posio. No exemplo acima na transmisso do mestre: 0000 0000 0000 0010 ------------0000 0010 0000 0100 0000 0001 -----------0000 0101 0000 1010 0000 0000 -----------0000 1010 0001 0100 0000 1000 -----------0001 1100 02H (STX) xor rotate 01H (DST) xor rotate 00H (SRC) xor rotate 08H (CMD) xor 0001 1100 0011 1000 rotate 0001 0000 10H (DLE) -----------0010 1000 xor 0101 0000 rotate 0000 0011 03H (ETX) -----------0101 0011 xor 1010 0110 rotate BCC= A6H ESCRAVO(3104) ACK 06H

observao: quando ocorrer um dado de valor igual a um caracter de controle DLE, deve-se enviar duas vezes o valor DLE para que o receptor interprete como dado. exemplo : vamos supor que o endereo do escravo = 16 (10H) a transmisso fica da seguinte forma (display indicando 29.999 kg): MESTRE DLE STX DST SRC CMD DLE ETX BCC 10H 02H 10H 10H 00H 08H 10H 03H 84H DLE ENQ DST 10H 05H 10H 10H DLE STX DST SRC CMD ------------------------- INFORMAO -------------DLE ETX BCC 10H 02H 00H 10H 10H 08H 83H 83H 32H 39H 39H 39H 39H 30H 30H 30H 30H 30H 10H 03H 1FH ACK 06H Para o clculo do BCC deve-se considerar apenas um DLE quando for duplicado. ESCRAVO(3104) ACK 06H

16

Protocolo de Comunicao Serial Alfa Instrumentos verso 2.0

R. Cel. Mrio de Azevedo, 138 So Paulo - SP 02710-020 Brasil Tel: (11) 3952-2299 Fax: (11) 3961-4266 SAC: 0800-772-2910 http://www.alfainstrumentos.com.br

17

Você também pode gostar