Académique Documents
Professionnel Documents
Culture Documents
Sumrio
SUMRIO
SUMRIO............................................................................................................................3 SOBRE O MANUAL............................................................................................................5
ABREVIAES E DEFINIES................................................................................................................... 5 REPRESENTAO NUMRICA .................................................................................................................. 5
1 2
PARAMETRIZAO.....................................................................................................9
3.1 SMBOLOS PARA DESCRIO DAS PROPRIEDADES ................................................................. 9 P0105 SELEO 1/2 RAMPA................................................................................................................. 9 P0220 SELEO FONTE LOCAL/REMOTO ............................................................................................ 9 P0221 SELEO REFERNCIA LOCAL .................................................................................................. 9 P0222 SELEO REFERNCIA REMOTA............................................................................................... 9 P0223 SELEO GIRO LOCAL ................................................................................................................ 9 P0224 SELEO GIRA/PARA LOCAL ..................................................................................................... 9 P0225 SELEO JOG LOCAL .................................................................................................................. 9 P0226 SELEO GIRO REMOTO............................................................................................................. 9 P0227 SELEO GIRA/PARA REMOTO.................................................................................................. 9 P0228 SELEO JOG REMOTO .............................................................................................................. 9 P0308 ENDEREO SERIAL....................................................................................................................... 9 P0310 TAXA DE COMUNICAO SERIAL ............................................................................................ 10 P0311 CONFIGURAO DOS BYTES DA INTERFACE SERIAL.......................................................... 10 P0313 AO PARA ERRO DE COMUNICAO................................................................................... 10 P0314 WATCHDOG SERIAL ................................................................................................................... 11 P0316 ESTADO DA INTERFACE SERIAL .............................................................................................. 11 P0680 ESTADO LGICO ......................................................................................................................... 11 P0681 VELOCIDADE DO MOTOR EM 13 BITS ..................................................................................... 12 P0682 PALAVRA DE CONTROLE VIA SERIAL ...................................................................................... 13 P0683 REFERNCIA DE VELOCIDADE VIA SERIAL ............................................................................ 14 P0695 VALOR PARA AS SADAS DIGITAIS........................................................................................... 14 P0696 VALOR 1 PARA SADAS ANALGICAS ..................................................................................... 15 P0697 VALOR 2 PARA SADAS ANALGICAS ..................................................................................... 15
Sumrio
5.2
MAPA DE MEMRIA....................................................................................................................... 18
I.
APNDICES................................................................................................................25
APNDICE A. APNDICE B. TABELA ASCII ................................................................................................................. 25 CLCULO DO CRC UTILIZANDO TABELAS................................................................ 26
CFW700 | 4
Sobre o Manual
SOBRE O MANUAL
Este manual fornece a descrio necessria para a operao do inversor de frequncia CFW700 utilizando o protocolo Modbus. Este manual deve ser utilizado em conjunto com manual do usurio do CFW700. ABREVIAES E DEFINIES ASCII CRC EIA TIA RTU American Standard Code for Information Interchange Cycling Redundancy Check Electronic Industries Alliance Telecommunications Industry Association Remote Terminal Unit
REPRESENTAO NUMRICA Nmeros decimais so representados atravs de dgitos sem sufixo. Nmeros hexadecimais so representados com a letra h depois do nmero.
CFW700 | 5
CFW700 | 6
Interface segue o padro EIA/TIA-485. Pode operar como escravo da rede Modbus RTU. Possibilita comunicao utilizando taxas de 9600 at 57600 Kbit/s. Interface isolada galvanicamente e com sinal diferencial, conferindo maior robustez contra interferncia eletromagntica. Permite a conexo de at 32 dispositivos no mesmo segmento. Uma quantidade maior de dispositivos pode ser conectada com o uso de repetidores. 1 Comprimento mximo do barramento de 1000 metros. 2.1.2 Pinagem do Conector
A conexo para a interface RS485 est disponvel atravs do conector XC1 utilizando a seguinte pinagem:
Tabela 2.1: Pinagem do conector para RS485 Pino 10 9 8 Nome A-Line (-) B-Line (+) GND Funo RxD/TxD negativo RxD/TxD positivo 0V isolado do circuito RS485
2.1.3
Resistor de terminao
Para cada segmento da rede RS485, necessrio habilitar um resistor de terminao nos pontos extremos do barramento principal. O inversor de frequncia CFW700 possui chaves que podem ser ativadas (colocando ambas as chaves S2 na posio ON) para habilitar o resistor de terminao.
2.1.4
Para a ligao do inversor de frequncia CFW700 utilizando a interface RS485, os seguintes pontos devem ser observados: recomendado o uso de um cabo com par tranado blindado. Recomenda-se tambm que o cabo possua mais um fio para ligao do sinal de referncia (GND). Caso o cabo no possua o fio adicional, deve-se deixar o sinal GND desconectado. A passagem do cabo deve ser feita separadamente (e se possvel distante) dos cabos para alimentao de potncia.
1
O nmero limite de equipamentos que podem ser conectados na rede tambm depende do protocolo utilizado.
CFW700 | 7
Todos os dispositivos da rede devem estar devidamente aterrados, preferencialmente na mesma ligao com o terra. A blindagem do cabo tambm deve ser aterrada. Habilitar os resistores de terminao apenas em dois pontos, nos extremos do barramento principal, mesmo que existam derivaes a partir do barramento.
CFW700 | 8
Parametrizao
3 PARAMETRIZAO
A seguir sero apresentados apenas os parmetros do inversor de frequncia CFW700 que possuem relao direta com a comunicao Modbus RTU. 3.1 SMBOLOS PARA DESCRIO DAS PROPRIEDADES
RO CFG Parmetro somente de leitura Parmetro somente alterado com o motor parado
P0105 SELEO 1/2 RAMPA P0220 SELEO FONTE LOCAL/REMOTO P0221 SELEO REFERNCIA LOCAL P0222 SELEO REFERNCIA REMOTA P0223 SELEO GIRO LOCAL P0224 SELEO GIRA/PARA LOCAL P0225 SELEO JOG LOCAL P0226 SELEO GIRO REMOTO P0227 SELEO GIRA/PARA REMOTO P0228 SELEO JOG REMOTO Estes parmetros so utilizados na configurao da fonte de comandos para os modos local e remoto do produto. Para que o equipamento seja controlado atravs da interface Modbus RTU, deve-se selecionar uma das opes serial disponveis nos parmetros. A descrio detalhada destes parmetros encontra-se no manual de programao do inversor de frequncia CFW700.
P0308 ENDEREO SERIAL Faixa de 1 a 247 Valores: Propriedades: CFG Grupo de acesso via HMI: Padro: 1
NET
Descrio: Permite programar o endereo utilizado para comunicao serial do equipamento. necessrio que cada equipamento da rede possua um endereo diferente dos demais.
CFW700 | 9
Parametrizao
P0310 TAXA DE COMUNICAO SERIAL Faixa de Valores: 0 = 9600 bits/s 1 = 19200 bits/s 2 = 38400 bits/s 3 = 57600 bits/s Propriedades: CFG Grupo de acesso via HMI: NET Padro: 1
Descrio: Permite programar o valor desejado para a taxa de comunicao da interface serial, em bits por segundo. Esta taxa deve ser a mesma para todos os equipamentos conectados na rede.
P0311 CONFIGURAO DOS BYTES DA INTERFACE SERIAL Faixa de Valores: 0 = 8 bits de dados, sem paridade, 1 stop bit 1 = 8 bits de dados, paridade par, 1 stop bit 2 = 8 bits de dados, paridade mpar, 1 stop bit 3 = 8 bits de dados, sem paridade, 2 stop bits 4 = 8 bits de dados, paridade par, 2 stop bits 5 = 8 bits de dados, paridade mpar, 2 stop bits Propriedades: CFG Grupo de acesso via HMI: NET Padro: 1
Descrio: Permite a configurao do nmero de bits de dados, paridade e stop bits nos bytes da interface serial. Esta configurao deve ser a mesma para todos os equipamentos conectados na rede.
P0313 AO PARA ERRO DE COMUNICAO Faixa de Valores: 0 = Inativo 1 = Para por Rampa 2 = Desabilita Geral 3 = Vai para Local 4 = Vai para Local e mantm comandos e referncia 5 = Causa Falha Propriedades: CFG Grupo de acesso via HMI: NET Padro: 0
Descrio: Este parmetro permite selecionar qual a ao deve ser executada pelo equipamento, caso ele seja controlado via rede e um erro de comunicao seja detectado.
Tabela 3.1: Opes para o parmetro P0313 Opo 0 = Inativo 1 = Para por Rampa 2 = Desabilita Geral 3 = Vai para Local 4 = Vai para Local e mantm comandos e referncia Descrio Nenhuma ao tomada, inversor permanece no estado atual. O comando de parada por rampa executado, e o motor para de acordo com a rampa de desacelerao programada. O inversor desabilitado geral, e o motor para por inrcia. O inversor comandado para o modo local. O inversor comandado para o modo local, mas os comandos de habilitao e a referncia de velocidade recebidos via rede so mantidos em modo local, desde que o inversor seja programado para utilizar, em modo local, comandos e referncia de velocidade via HMI. No lugar de alarme, um erro de comunicao causa uma falha no inversor, sendo necessrio fazer o reset de falhas do inversor para o retorno da sua operao normal.
5 = Causa Falha
CFW700 | 10
Parametrizao
So considerados erros de comunicao os seguintes eventos: Comunicao Serial (RS485): Alarme A128/Falha F228: timeout da interface serial. As aes descritas neste parmetro so executadas atravs da escrita automtica dos respectivos bits no parmetro de controle da interface de rede que corresponde falha detectada. Desta forma, para que os comandos escritos neste parmetro tenham efeito, necessrio que o equipamento esteja programado para ser controlado via a interface de rede utilizada. Esta programao feita atravs dos parmetros P0220 at P0228.
P0314 WATCHDOG SERIAL Faixa de 0,0 a 999,0s Valores: Propriedades: CFG Grupo de acesso via HMI: Padro: 0,0
NET
Descrio: Permite programar um tempo para a deteco de erro de comunicao via interface serial. Caso o inversor fique sem receber telegramas vlidos por um tempo maior do que o programado neste parmetro, ser considerado que ocorreu um erro de comunicao, mostrado o alarme A128 na HMI (ou falha F228, dependendo da programao feita no P0313) e a ao programada no P0313 ser executada. Aps energizado, o inversor comear a contar este tempo a partir do primeiro telegrama vlido recebido. O valor 0,0 desabilita esta funo.
P0316 ESTADO DA INTERFACE SERIAL Faixa de Valores: 0 = Inativo 1 = Ativo 2 = Erro de Watchdog Propriedades: RO Grupo de acesso via HMI: NET Padro: -
Descrio: Permite identificar se o carto de interface serial RS485 est devidamente instalado, e se a comunicao serial apresenta erros.
Tabela 3.2: Valores para o parmetro P0316 Valores 0 = Inativo Descrio Interface serial inativa. Ocorre quando o equipamento no possui carto de interface RS485 instalado. No deve ser indicado no CFW700. Carto de interface RS485 instalado e reconhecido. Interface serial ativa, mas detectado erro de comunicao serial alarme A128/falha F228.
P0680 ESTADO LGICO Faixa de 0000h a FFFFh Valores: Propriedades: RO Grupo de acesso via HMI: NET Descrio: Permite a monitorao do estado do drive. Cada bit representa um estado: CFW700 | 11 Padro: -
Parametrizao
Bits
15
14 Reservado
13 Subtenso
12 LOC/REM
11
10 Sentido de Giro
9 Habilitado Geral
8 Motor Girando
7 Em Alarme
6 Em modo de configurao
5 Segunda Rampa
4a0 Reservado
Em Falha
Funo
Tabela 3.3: Funes dos bits para o parmetro P0680 Bits Bits 0 a 3 Bit 4 Parada Rpida Ativa Bit 5 Segunda Rampa Valores Reservado. 0: Drive no possui comando de parada rpida ativo. 1: Drive est executando o comando de parada rpida. 0: Drive est configurado para utilizar como rampa de acelerao e desacelerao para o motor a primeira rampa, programada nos parmetros P0100 e P0101. 1: Drive est configurado para utilizar como rampa de acelerao e desacelerao para o motor a segunda rampa, programada nos parmetros P0102 e P0103. 0: Drive operando normalmente. 1: Drive em modo de configurao. Indica uma condio especial na qual o inversor no pode ser habilitado: Executando rotina de auto-ajuste. Executando rotina de start-up orientado. Executando funo copy da HMI. Executando rotina auto-guiada do carto de memria flash. Possui incompatibilidade de parametrizao. Sem alimentao no circuito de potncia do drive. Obs.: possvel obter a descrio exata do modo especial de operao no parmetro P0692. 0: Drive no est no estado de alarme. 1: Drive est no estado de alarme. Obs.: o nmero do alarme pode ser lido atravs do parmetro P0048 Alarme Atual. 0: Motor est parado. 1: Drive est girando o motor velocidade de referncia, ou executando rampa de acelerao ou desacelerao. 0: Drive est desabilitado geral. 1: Drive est habilitado geral e pronto para girar motor. 0: Motor girando no sentido reverso. 1: Motor girando no sentido direto. 0: Funo JOG inativa. 1: Funo JOG ativa. 0: Drive em modo local. 1: Drive em modo remoto. 0: Sem subtenso. 1: Com subtenso. Reservado 0: Drive no est no estado de falha. 1: Alguma falha registrada pelo drive. Obs.: O nmero da falha pode ser lido atravs do parmetro P0049 Falha Atual.
Bit 7 Em Alarme Bit 8 Rampa Habilitada (RUN) Bit 9 Habilitado Geral Bit 10 Sentido de Giro Bit 11 JOG Bit 12 LOC/REM Bit 13 Subtenso Bit 14 Reservado Bit 15 Em Falha
P0681 VELOCIDADE DO MOTOR EM 13 BITS Faixa de - 32768 a 32767 Valores: Propriedades: RO Grupo de acesso via HMI: NET Padro: -
Descrio: Permite monitorar a velocidade do motor. Esta palavra utiliza resoluo de 13 bits com sinal para representar a rotao sncrona do motor: P0681 = 0000h (0 decimal) P0681 = 2000h (8192 decimal) velocidade do motor = 0 velocidade do motor = rotao sncrona
Valores de velocidade intermedirios ou superiores podem ser obtidos utilizando esta escala. Por exemplo, para um motor de 4 polos e 1800 rpm de rotao sncrona, caso o valor lido seja 2048 (0800h), para obter o valor em rpm deve-se calcular: CFW700 | 12
JOG
Parametrizao
8192 => 1800 rpm 2048 => Velocidade em rpm Velocidade em rpm = 1800 2048 8192 Velocidade em rpm = 450 rpm
Valores negativos para este parmetro indicam motor girando no sentido reverso de rotao.
P0682 PALAVRA DE CONTROLE VIA SERIAL Faixa de 0000h a FFFFh Valores: Propiedades: RW Grupo de acesso via HMI: NET Padro: 0000h
Descrio: Palavra de comando do drive via interface Modbus RTU. Este parmetro somente pode ser alterado via interface serial. Para as demais fontes (HMI, etc.) ele se comporta como um parmetro somente de leitura. Para que os comandos escritos neste parmetro sejam executados, necessrio que o inversor esteja programado para ser controlado via serial. Esta programao feita atravs dos parmetros P0105 e P0220 at P0228. Cada bit desta palavra representa um comando que pode ser executado no produto.
0 15 a 8 7 Reset de Falhas 6 Parada Rpida 5 Utiliza Segunda Rampa 4 3 2 Sentido de Giro 1 Habilita Geral 0
Reservado
LOC/REM
Funo
Tabela 3.4: Funes dos bits para o parmetro P0682 Bits Bit 0 Gira/Para Bit 1 Habilita Geral Bit 2 Sentido de Giro Bit 3 JOG Bit 4 LOC/REM Bit 5 Utiliza Segunda Rampa Valores 0: Para motor por rampa de desacelerao. 1: Gira motor de acordo com a rampa de acelerao at atingir o valor da referncia de velocidade. 0: Desabilita geral o drive, interrompendo a alimentao para o motor. 1: Habilita geral o drive, permitindo a operao do motor. 0: Sentido de giro do motor oposto ao da referncia (sentido reverso). 1: Sentido de giro do motor igual ao da referncia (sentido direto). 0: Desabilita a funo JOG. 1: Habilita a funo JOG. 0: Drive vai para o modo local. 1: Drive vai para o modo remoto. 0: Drive utiliza como rampa de acelerao e desacelerao do motor os tempos da primeira rampa, programada nos parmetros P0100 e P0101. 1: Drive utiliza como rampa de acelerao e desacelerao do motor os tempos da segunda rampa, programada nos parmetros P0102 e P0103. 0: No executa comando de parada rpida. 1: Executa comando de parada rpida. Obs.: quando o tipo de controle (P0202) for V/F ou VVW no se recomenda a utilizao desta funo. 0: Sem funo. 1: Se em estado de falha, executa o reset do drive. Reservado.
CFW700 | 13
Gira/Para
JOG
Parametrizao
P0683 REFERNCIA DE VELOCIDADE VIA SERIAL Faixa de -32768 a 32767 Valores: Propiedades: RW Grupo de acesso via HMI: NET Padro: 0
Descrio: Permite programar a referncia de velocidade para o motor via interface Modbus RTU. Este parmetro somente pode ser alterado via serial. Para as demais fontes (HMI, etc.) ele se comporta como um parmetro somente de leitura. Para que a referncia escrita neste parmetro seja utilizada, necessrio que o produto esteja programado para utilizar a referncia de velocidade via serial. Esta programao feita atravs dos parmetros P0221 e P0222. Esta palavra utiliza resoluo de 13 bits com sinal para representar a rotao sncrona do motor: P0683 = 0000h (0 decimal) P0683 = 2000h (8192 decimal) referncia de velocidade = 0 referncia de velocidade = rotao sncrona
Valores de referncia intermedirios ou superiores podem ser programados utilizando esta escala. Por exemplo, para um motor de 4 polos e 1800 rpm de rotao sncrona, caso deseje-se uma referncia de 900 rpm, devese calcular:
1800 rpm => 8192 900 rpm => Referncia em 13 bits Referncia em 13 bits = 900 8192 1800 Referncia em 13 bits = 4096 => Valor correspondente a 900 rpm na escala em 13 bits
Este parmetro tambm aceita valores negativos para inverter o sentido de rotao do motor. O sentido de rotao da referncia, no entanto, depende tambm do valor do bit 2 da palavra de controle P0682: Bit 2 = 1 e P0683 > 0: referncia para o sentido direto Bit 2 = 1 e P0683 < 0: referncia para o sentido reverso Bit 2 = 0 e P0683 > 0: referncia para o sentido reverso Bit 2 = 0 e P0683 < 0: referncia para o sentido direto
P0695 VALOR PARA AS SADAS DIGITAIS Faixa de 0000h a 001Fh Valores: Propiedades: RW Grupo de acesso via HMI: NET Padro: 0000h
Descrio: Possibilita o controle das sadas digitais atravs das interfaces de rede (Serial, CAN, etc.). Este parmetro no pode ser alterado atravs da HMI. Cada bit deste parmetro corresponde ao valor desejado para uma sada digital. Para que a sada digital correspondente possa ser controlada de acordo com este contedo, necessrio que sua funo seja programada para Contedo P0695, nos parmetros P0275 a P0279.
CFW700 | 14
Parametrizao
Bits
15 a 5 Reservado
Funo
Tabela 3.5: Funes dos bits para o parmetro P0695 Bits Bit 0 Valor para DO1 Bit 1 Valor para DO2 Bit 2 Valor para DO3 Bit 3 Valor para DO4 Bit 4 Valor para DO5 Bits 5 a 15 Valores 0: sada DO1 aberta. 1: sada DO1 fechada. 0: sada DO2 aberta. 1: sada DO2 fechada. 0: sada DO3 aberta. 1: sada DO3 fechada. 0: sada DO4 aberta. 1: sada DO4 fechada. 0: sada DO5 aberta. 1: sada DO5 fechada. Reservado.
P0696 VALOR 1 PARA SADAS ANALGICAS P0697 VALOR 2 PARA SADAS ANALGICAS Faixa de -32768 a 32767 Valores: Propriedades: Net Grupo de acesso via HMI: NET Padro: 0
Descrio: Possibilita o controle das sadas analgicas atravs das interfaces de rede (Serial, CAN, etc.). Estes parmetros no podem ser alterados atravs da HMI. O valor escrito nestes parmetros utilizado como valor para a sada analgica, desde que a funo da sada analgica desejada seja programada para Contedo P0696 / P0697, nos parmetros P0251, P0254. O valor deve ser escrito em uma escala de 15 bits (7FFFh = 32767) 2 para representar 100% do valor desejado para a sada, ou seja: P0696 = 0000h (0 decimal) P0696 = 7FFFh (32767 decimal) valor para a sada analgica = 0 % valor para a sada analgica = 100 %
Neste exemplo foi mostrado o parmetro P0696, mas a mesma escala utilizada para o parmetro P0697. Por exemplo, deseja-se controlar o valor da sada analgica 1 atravs da serial. Neste caso deve fazer a seguinte programao: Escolher um dos parmetros P0696, P0697 para ser o valor utilizado pela sada analgica 1. Neste exemplo, vamos escolher o P0696. Programar, na funo da sada analgica 1 (P0254), a opo Contedo P0696. Atravs da interface de rede, escrever no P0696 o valor desejado para a sada analgica 1, entre 0 e 100 %, de acordo com a escala do parmetro. NOTA! Caso a sada analgica seja programada para operar de -10V at 10V, valores negativos para estes parmetros devem ser utilizados para comandar as sadas com valores negativos de tenso, ou seja, -32768 at 32767 representa uma variao de -10V at 10V na sada analgica.
CFW700 | 15
Na especificao do protocolo esto definidos dois modos de transmisso: ASCII e RTU. Os modos definem a forma como so transmitidos os bytes da mensagem. No possvel utilizar os dois modos de transmisso na mesma rede. O inversor de frequncia CFW700 utiliza somente o modo RTU para a transmisso de telegramas. Os bytes so de acordo com a configurao feita atravs do P0311. 4.2 ESTRUTURA DAS MENSAGENS NO MODO RTU
A rede Modbus RTU utiliza o sistema mestre-escravo para a troca de mensagens. Permite at 247 escravos, mas somente um mestre. Toda comunicao inicia com o mestre fazendo uma solicitao a um escravo, e este responde ao mestre o que foi solicitado. Em ambos os telegramas (pergunta e resposta), a estrutura utilizada a mesma: Endereo, Cdigo da Funo, Dados e CRC. Apenas o campo de dados poder ter tamanho varivel, dependendo do que est sendo solicitado. Mestre (telegrama de requisio):
Endereo (1 byte) Funo (1 byte) Dados da requisio (n bytes) CRC (2 bytes)
4.2.1
Endereo
O mestre inicia a comunicao enviando um byte com o endereo do escravo para o qual se destina a mensagem. Ao enviar a resposta, o escravo tambm inicia o telegrama com o seu prprio endereo. O mestre tambm pode enviar uma mensagem destinada ao endereo 0 (zero), o que significa que a mensagem destinada a todos os escravos da rede (broadcast). Neste caso, nenhum escravo ir responder ao mestre. 4.2.2 Cdigo da Funo
Este campo tambm contm um nico byte, onde o mestre especifica o tipo de servio ou funo solicitada ao escravo (leitura, escrita, etc.). De acordo com o protocolo, cada funo utilizada para acessar um tipo especfico de dado. Para a lista de funes disponveis para acesso aos dados, consulte o item 5. 4.2.3 Campo de Dados
Campo com tamanho varivel. O formato e contedo deste campo dependem da funo utilizada e dos valores transmitidos. Este campo est descrito juntamente com a descrio das funes (ver item 5).
CFW700 | 16
4.2.4
CRC
A ltima parte do telegrama o campo para checagem de erros de transmisso. O mtodo utilizado o CRC16 (Cycling Redundancy Check). Este campo formado por dois bytes, onde primeiro transmitido o byte menos significativo (CRC-), e depois o mais significativo (CRC+). A forma de clculo do CRC descrita na especificao do protocolo, porm informaes para sua implementao tambm so fornecidas no Apndice B. 4.2.5 Tempo entre Mensagens
No modo RTU no existe um caracter especfico que indique o incio ou o fim de um telegrama. A indicao de quando uma nova mensagem comea ou quando ela termina feita pela ausncia de transmisso de dados na rede, por um tempo mnimo de 3,5 vezes o tempo de transmisso de um byte de dados (11 bits). Sendo assim, caso um telegrama tenha iniciado aps a decorrncia deste tempo mnimo, os elementos da rede iro assumir que o primeiro caracter recebido representa o incio de um novo telegrama. E da mesma forma, os elementos da rede iro assumir que o telegrama chegou ao fim quando, recebidos os bytes do telegrama, este tempo decorra novamente. Se durante a transmisso de um telegrama, o tempo entre os bytes for maior que este tempo mnimo, o telegrama ser considerado invlido, pois o inversor de frequncia ir descartar os bytes j recebidos e montar um novo telegrama com os bytes que estiverem sendo transmitidos. Para taxas de comunicao superiores a 19200 bits/s, os tempos utilizados so os mesmos que para esta taxa. A tabela a seguir nos mostra os tempos para diferentes taxas de comunicao:
Tabela 4.1: Taxas de comunicao e tempos envolvidos na transmisso de telegramas Taxa de Comunicao 1200 bits/s 2400 bits/s 4800 bits/s 9600 bits/s 19200 bits/s 38400 bits/s 57600 bits/s T11 bits 9,167 ms 4,583 ms 2,292 ms 1,146 ms 573 s 573 s 573 s T3,5x 32,083 ms 16,042 ms 8,021 ms 4,010 ms 2,005 ms 2,005 ms 2,005 ms
= Tempo para transmitir uma palavra do telegrama. = Tempo entre bytes. = Intervalo mnimo para indicar comeo e fim de telegrama (3,5 x T11bits).
CFW700 | 17
Na especificao do protocolo Modbus RTU so definidas funes utilizadas para acessar diferentes tipos de dados. No CFW700, os parmetros foram definidos como sendo registradores do tipo holding. Para acessar estes dados, foram disponibilizados os seguintes servios (ou funes): Read Coils 3 Descrio: leitura de bloco de bits do tipo coil. Cdigo da funo: 01. Read Discrete Inputs1 Descrio: leitura de bloco de bits do tipo entradas discretas. Cdigo da funo: 02. Read Holding Registers Descrio: leitura de bloco de registradores do tipo holding. Cdigo da funo: 03. Read Input Registers1 Descrio: leitura de bloco de registradores do tipo input. Cdigo da funo: 04. Write Single Coil1 Descrio: escrita em um nico bit do tipo coil. Cdigo da funo: 05. Write Single Register Descrio: escrita em um nico registrador do tipo holding. Cdigo da funo: 06. Write Multiple Coils1 Descrio: escrita em bloco de bits do tipo coil. Cdigo da funo: 15. Write Multiple Registers Descrio: escrita em bloco de registradores do tipo holding. Cdigo da funo: 16. Read Device Identification Descrio: identificao do modelo do dispositivo. Cdigo da funo: 43. O tempo de resposta, do final da transmisso do mestre at o incio da resposta do escravo, varia de 2 a 10 ms, para qualquer uma das funes acima. 5.2 MAPA DE MEMRIA
A comunicao Modbus para o inversor de frequncia CFW700 baseada na leitura/escrita de parmetros do equipamento. Toda a lista de parmetros do equipamento disponibilizada como registradores de 16 bits do tipo holding. O endereamento dos dados feito com offset igual a zero, o que significa que o nmero do
Funes utilizadas para acesso aos dados utilizados pela funo SoftPLC.
CFW700 | 18
parmetro equivale ao nmero do registrador. A tabela a seguir ilustra o endereamento dos parmetros, que podem ser acessados como registradores do tipo holding.
Tabela 5.1: Mapa de memria para a interface Modbus RTU Nmero do Parmetro P0000 P0001 ... P0100 ... Endereo do dado Modbus Decimal Hexadecimal 0 0000h 1 0001h ... 100 ... ... 0064h ...
Para a operao do equipamento, necessrio ento conhecer a lista de parmetros do produto. Desta forma pode-se identificar quais dados so necessrios para monitorao dos estados e controle das funes. Dentre os principais parmetros pode-se citar: Monitorao (leitura): P0680 (holding register 680): Palavra de estado P0681 (holding register 681): Velocidade do motor Comando (escrita): P0682 (holding register 682): Palavra de comando P0683 (holding register 683): Referncia de velocidade Consulte o manual de programao para a lista completa de parmetros do equipamento. NOTA! Todos os parmetros so tratados como registradores do tipo holding. Dependendo do mestre utilizado, estes registradores so referenciados a partir do endereo base 40000 ou 4x. Neste caso, o endereo para um parmetro que deve ser programado no mestre o endereo mostrado na tabela acima adicionado ao endereo base. Consulte a documentao do mestre para saber como acessar registradores do tipo holding. Deve-se observar que parmetros com a propriedade somente leitura apenas podem ser lidos do equipamento, enquanto que demais parmetros podem ser lidos e escritos atravs da rede. Alm dos parmetros, outros tipos de dados como marcadores de bit, word ou float tambm podem ser acessados utilizando a interface Modbus RTU. Estes marcadores so utilizados principalmente pela funo SoftPLC disponvel para o CFW700. Para a descrio destes marcadores, bem como o endereo para acesso via Modbus, deve-se consultar o Manual da SoftPLC.
CFW700 | 19
L o contedo de um grupo de registradores, que necessariamente devem estar em sequncia numrica. Esta funo possui a seguinte estrutura para os telegramas de leitura e resposta (cada campo representa um byte):
Pergunta (Mestre) Endereo do escravo Funo Endereo do registrador inicial (byte high) Endereo do registrador inicial (byte low) Quantidade de registradores (byte high) Quantidade de registradores (byte low) CRCCRC+ Resposta (Escravo) Endereo do escravo Funo Campo Byte Count Dado 1 (high) Dado 1 (low) Dado 2 (high) Dado 2 (low) etc... CRCCRC+
Exemplo: leitura da velocidade do motor (P0002) e corrente do motor (P0003) de escravo no endereo 1 (supondo P0002 = 1000 rpm e P0003 = 3,5 A). Endereo: 1 = 01h (1 byte) Nmero do primeiro parmetro: 2 = 0002h (2 bytes) Valor do primeiro parmetro: 1000 = 03E8h (2 bytes) Valor do segundo parmetro: 35 = 0023h (2 bytes)
Pergunta (Mestre) Resposta (Escravo)
Campo
Endereo do escravo Funo Registrador inicial (high) Registrador inicial (low) Quantidade de registradores (high) Quantidade de registradores (low) CRCCRC+
Valor
01h 03h 00h 02h 00h 02h 65h CBh
Campo
Endereo do escravo Funo Byte Count P0002 (high) P0002 (low) P0003 (high) P0003 (low) CRCCRC+
Valor
01h 03h 04h 03h E8h 00h 23h 3Bh 9Ah
6.2
Esta funo utilizada para escrever um valor para um nico registrador. Possui a seguinte estrutura (cada campo representa um byte):
Pergunta (Mestre) Endereo do escravo Funo Endereo do registrador (byte high) Endereo do registrador (byte low) Valor para o registrador (byte high) Valor para o registrador (byte low) CRCCRC+ Resposta (Escravo) Endereo do escravo Funo Endereo do registrador (byte high) Endereo do registrador (byte low) Valor para o registrador (byte high) Valor para o registrador (byte low) CRCCRC+
CFW700 | 20
Exemplo: escrita da referncia de velocidade (P0683) em 900 rpm (supondo velocidade sncrona de 1800 rpm), para o escravo no endereo 3. Endereo: 3 = 03h (1 byte) Nmero do parmetro: 683 = 02AB (2 bytes) Valor para o parmetro: 1000h (2 bytes)
Pergunta (Mestre) Resposta (Escravo)
Campo
Endereo do escravo Funo Registrador (high) Registrador (low) Valor (high) Valor (low) CRCCRC+
Valor
03h 06h 02h ABh 10h 00h F5h B0h
Campo
Endereo do escravo Funo Registrador (high) Registrador (low) Valor (high equivale ao valor para %CB3001) Valor (low equivale ao valor para %CB3000) CRCCRC+
Valor
03h 06h 02h ABh 10h 00h F5h B0h
Note que para esta funo, a resposta do escravo uma cpia idntica da requisio feita pelo mestre. 6.3 FUNO 16 WRITE MULTIPLE REGISTERS
Esta funo permite escrever valores para um grupo de registradores, que devem estar em sequncia numrica. Tambm pode ser usada para escrever um nico registrador (cada campo representa um byte).
Pergunta (Mestre) Endereo do escravo Funo Endereo do registrador inicial (byte high) Endereo do registrador inicial (byte low) Quantidade de registradores (byte high) Quantidade de registradores (byte low) Campo Byte Count (n de bytes de dados) Dado 1 (high) Dado 1 (low) Dado 2 (high) Dado 2 (low) etc... CRCCRC+ Resposta (Escravo) Endereo do escravo Funo Endereo do registrador inicial (byte high) Endereo do registrador inicial (byte low) Quantidade de registradores (byte high) Quantidade de registradores (byte low) CRCCRC+
Exemplo: escrita do tempo de acelerao (P0100) igual a 1,0s e tempo de desacelerao (P0101) igual a 2,0s, de um escravo no endereo 15. Endereo: 15 = 0Fh (1 byte) Nmero do primeiro parmetro: 100 = 0064h (2 bytes) Valor para o primeiro parmetro: 10 = 000Ah (2 bytes) Valor para o segundo parmetro: 20 = 0014h (2 bytes)
Pergunta (Mestre) Resposta (Escravo)
Campo
Endereo do escravo Funo Registrador inicial (high) Registrador inicial (low) Quantidade de registradores (high) Quantidade de registradores (low) Byte Count P0100 (high) P0100 (low) P0101 (high) P0101 (low) CRCCRC+
Valor
0Fh 10h 00h 64h 00h 02h 04h 00h 0Ah 00h 14h E0h 91h
Campo
Endereo do escravo Funo Registrador inicial (high) Registrador inicial (low) Quantidade de registradores (high) Quantidade de registradores (low) CRCCRC+
Valor
0Fh 10h 00h 64h 00h 02h 01h 39h
CFW700 | 21
6.4
Funo auxiliar, que permite a leitura do fabricante, modelo e verso de firmware do produto. Possui a seguinte estrutura:
Pergunta (Mestre) Endereo do escravo Funo MEI Type Cdigo de leitura Nmero do Objeto CRCCRC+ Resposta (Escravo) Endereo do escravo Funo MEI Type Conformity Level More Follows Prximo objeto Nmero de objetos Cdigo do primeiro objeto Tamanho do primeiro objeto Valor do primeiro objeto (n bytes) Cdigo do segundo objeto Tamanho do segundo objeto Valor do segundo objeto (n bytes) etc... CRCCRC+
Esta funo permite a leitura de trs categorias de informaes: Bsica, Regular e Estendida, e cada categoria formada por um grupo de objetos. Cada objeto formado por uma sequncia de caracteres ASCII. Para o inversor de frequncia CFW700, apenas informaes bsicas esto disponveis, formadas por trs objetos: Objeto 00h VendorName: representa o nome do fabricante do produto. Objeto 01h ProductCode: formado pelo cdigo do produto (CFW700). Objeto 02h MajorMinorRevision: indica a verso de firmware do produto, no formato 'VX.XX'. O cdigo de leitura indica quais as categorias de informaes so lidas, e se os objetos so acessados em sequncia ou individualmente. No caso, o CFW700 suporta os cdigos 01 (informaes bsicas em sequncia), e 04 (acesso individual aos objetos). Os demais campos so especificados pelo protocolo e possuem valores fixos. Exemplo: leitura das informaes bsicas em sequncia, a partir do objeto 02h, de um equipamento no endereo 1:
Pergunta (Mestre) Resposta (Escravo)
Campo
Endereo do escravo Funo MEI Type Cdigo de leitura Nmero do Objeto CRCCRC+
Valor
01h 2Bh 0Eh 01h 02h 70h 77h
Campo
Endereo do escravo Funo MEI Type Cdigo de leitura Conformity Level More Follows Prximo Objeto Nmero de objetos Cdigo do Objeto Tamanho do Objeto Valor do Objeto CRCCRC+
Valor
01h 2Bh 0Eh 01h 81h 00h 00h 01h 02h 05h 'V1.00' 3Ch 53h
Neste exemplo, o valor dos objetos no foi representado em hexadecimal, mas sim utilizando os caracteres ASCII correspondentes. Por exemplo, para o objeto 02h, o valor 'V1.00' foi transmitido como sendo cinco caracteres ASCII, que em hexadecimal possuem os valores 56h ('V'), 31h ('1'), 2Eh ('.'), 30h ('0') e 30h ('0'). 6.5 ERROS DE COMUNICAO
Erros de comunicao podem ocorrer tanto na transmisso dos telegramas quanto no contedo dos telegramas transmitidos. De acordo com o tipo de erro, o escravo poder ou no enviar resposta para o mestre. CFW700 | 22
Quando o mestre envia uma mensagem para um escravo configurado em um determinado endereo da rede, este no ir responder ao mestre caso ocorra um dos seguintes eventos: Erro no bit de paridade. Erro no CRC. Timeout entre os bytes transmitidos (3,5 vezes o tempo de transmisso de um byte). Nestes casos, o mestre dever detectar a ocorrncia do erro pelo timeout na espera da resposta do escravo. No caso de uma recepo com sucesso, durante o tratamento do telegrama, o escravo pode detectar problemas e enviar uma mensagem de erro, indicando o tipo de problema encontrado: Funo invlida (cdigo do erro = 1): a funo solicitada no est implementada para o equipamento. Endereo de dado invlido (cdigo do erro = 2): o endereo do dado (registrador ou bit) no existe. Valor de dado invlido (cdigo do erro = 3): ocorre nas seguintes situaes: Valor est fora da faixa permitida. Escrita em dado que no pode ser alterado (registrador ou bit somente leitura). NOTA! importante que seja possvel identificar no mestre qual o tipo de erro ocorrido para poder diagnosticar problemas durante a comunicao. No caso da ocorrncia de algum destes erros, o escravo deve retornar uma mensagem para o mestre que indica o tipo de erro ocorrido. As mensagens de erro enviadas pelo escravo possuem a seguinte estrutura:
Pergunta (Mestre) Endereo do escravo Funo Dados CRCCRC+ Resposta (Escravo) Endereo do escravo Funo (com o bit mais significativo em 1) Cdigo do erro CRCCRC+
Exemplo: mestre solicita para o escravo no endereo 1 a escrita no registrador 2900 (supondo registrador 2900 como sendo inexistente):
Pergunta (Mestre) Resposta (Escravo)
Campo
Endereo do escravo Funo Registrador (high) Registrador (low) Valor (high) Valor (low) CRCCRC+
Valor
01h 06h 0Bh 54h 00h 00h CAh 3Eh
Campo
Endereo do escravo Funo Cdigo de erro CRCCRC+
Valor
01h 86h 02h C3h A1h
CFW700 | 23
CFW700 | 24
Apndices
I. APNDICES
APNDICE A. TABELA ASCII
Tabela I.1: Caracteres ASCII Dec 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Hex 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F Chr NUL SOH STX ETX EOT ENQ ACK BEL BS HT LF VT FF CR SO SI DLE DC1 DC2 DC3 DC4 NAK SYN ETB CAN EM SUB ESC FS GS RS US (Null char.) (Start of Header) (Start of Text) (End of Text) (End of Transmission) (Enquiry) (Acknowledgment) (Bell) (Backspace) (Horizontal Tab) (Line Feed) (Vertical Tab) (Form Feed) (Carriage Return) (Shift Out) (Shift In) (Data Link Escape) (Device Control 1) (Device Control 2) (Device Control 3) (Device Control 4) (Negative Acknowledgement) (Synchronous Idle) (End of Trans. Block) (Cancel) (End of Medium) (Substitute) (Escape) (File Separator) (Group Separator) (Record Separator) (Unit Separator) Dec 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 Hex 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F 30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F Chr Sp ! " # $ % & ' ( ) * + , . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? Dec 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 Hex 40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F 50 51 52 53 54 55 56 57 58 59 5A 5B 5C 5D 5E 5F Chr @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ Dec 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 Hex 60 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 78 79 7A 7B 7C 7D 7E 7F Chr ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~ DEL
CFW700 | 25
Apndices
APNDICE B. CLCULO DO CRC UTILIZANDO TABELAS A seguir apresentada uma funo, utilizando linguagem de programao "C", que implementa o clculo do CRC para o protocolo Modbus RTU. O clculo utiliza duas tabelas para fornecer valores pr-calculados dos deslocamentos necessrios para a realizao do clculo. O algoritmo foi obtido e explicado nos documentos referenciados no item 4.
/* Table of CRC values for highorder byte */ static unsigned char auchCRCHi[] = { 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40
0x40, 0x41, 0x41, 0x40, 0x41, 0x40, 0x40, 0x41, 0x41, 0x40, 0x40, 0x41, 0x40, 0x41, 0x41, };
/* Table of static char 0x00, 0xC0, 0xCC, 0x0C, 0xD8, 0x18, 0x14, 0xD4, 0xF0, 0x30, 0x3C, 0xFC, 0x28, 0xE8, 0xE4, 0x24, 0xA0, 0x60, 0x6C, 0xAC, 0x78, 0xB8, 0xB4, 0x74, 0x50, 0x90, 0x9C, 0x5C, 0x88, 0x48, 0x44, 0x84,
CRC values for loworder byte */ auchCRCLo[] = { 0xC1, 0x01, 0xC3, 0x03, 0x02, 0xC2, 0xC6, 0x06, 0x07, 0xC7, 0x05, 0xC5, 0xC4, 0x0D, 0xCD, 0x0F, 0xCF, 0xCE, 0x0E, 0x0A, 0xCA, 0xCB, 0x0B, 0xC9, 0x09, 0x08, 0x19, 0xD9, 0x1B, 0xDB, 0xDA, 0x1A, 0x1E, 0xDE, 0xDF, 0x1F, 0xDD, 0x1D, 0x1C, 0xD5, 0x15, 0xD7, 0x17, 0x16, 0xD6, 0xD2, 0x12, 0x13, 0xD3, 0x11, 0xD1, 0xD0, 0x31, 0xF1, 0x33, 0xF3, 0xF2, 0x32, 0x36, 0xF6, 0xF7, 0x37, 0xF5, 0x35, 0x34, 0xFD, 0x3D, 0xFF, 0x3F, 0x3E, 0xFE, 0xFA, 0x3A, 0x3B, 0xFB, 0x39, 0xF9, 0xF8, 0xE9, 0x29, 0xEB, 0x2B, 0x2A, 0xEA, 0xEE, 0x2E, 0x2F, 0xEF, 0x2D, 0xED, 0xEC, 0x25, 0xE5, 0x27, 0xE7, 0xE6, 0x26, 0x22, 0xE2, 0xE3, 0x23, 0xE1, 0x21, 0x20, 0x61, 0xA1, 0x63, 0xA3, 0xA2, 0x62, 0x66, 0xA6, 0xA7, 0x67, 0xA5, 0x65, 0x64, 0xAD, 0x6D, 0xAF, 0x6F, 0x6E, 0xAE, 0xAA, 0x6A, 0x6B, 0xAB, 0x69, 0xA9, 0xA8, 0xB9, 0x79, 0xBB, 0x7B, 0x7A, 0xBA, 0xBE, 0x7E, 0x7F, 0xBF, 0x7D, 0xBD, 0xBC, 0x75, 0xB5, 0x77, 0xB7, 0xB6, 0x76, 0x72, 0xB2, 0xB3, 0x73, 0xB1, 0x71, 0x70, 0x91, 0x51, 0x93, 0x53, 0x52, 0x92, 0x96, 0x56, 0x57, 0x97, 0x55, 0x95, 0x94, 0x5D, 0x9D, 0x5F, 0x9F, 0x9E, 0x5E, 0x5A, 0x9A, 0x9B, 0x5B, 0x99, 0x59, 0x58, 0x49, 0x89, 0x4B, 0x8B, 0x8A, 0x4A, 0x4E, 0x8E, 0x8F, 0x4F, 0x8D, 0x4D, 0x4C, 0x85, 0x45, 0x87, 0x47, 0x46, 0x86, 0x82, 0x42, 0x43, 0x83, 0x41, 0x81, 0x80, 0x40
0x04, 0xC8, 0xDC, 0x10, 0xF4, 0x38, 0x2C, 0xE0, 0xA4, 0x68, 0x7C, 0xB0, 0x54, 0x98, 0x8C, };
/* The function returns the CRC as a unsigned short type */ unsigned short CRC16(puchMsg, usDataLen) unsigned char *puchMsg; /* message to calculate CRC upon unsigned short usDataLen; /* quantity of bytes in message { unsigned char uchCRCHi = 0xFF; /* high byte of CRC initialized unsigned char uchCRCLo = 0xFF; /* low byte of CRC initialized unsigned uIndex; /* will index into CRC lookup table while (usDataLen--) /* pass through message buffer { uIndex = uchCRCLo ^ *puchMsgg++; /* calculate the CRC uchCRCLo = uchCRCHi ^ auchCRCHi[uIndex}; uchCRCHi = auchCRCLo[uIndex]; } return (uchCRCHi << 8 | uchCRCLo); }
*/ */ */ */ */ */ */
CFW700 | 26
WEG Equipamentos Eltricos S.A. Jaragu do Sul SC Brasil Fone 55 (47) 3276-4000 Fax 55 (47) 3276-4020 So Paulo SP Brasil Fone 55 (11) 5053-2300 Fax 55 (11) 5052-4212 automacao@weg.net www.weg.net