Você está na página 1de 10

Anexo - Schineider TWIDO

Comunicação ente CLPs Schineider Twido

Este arquivo visa demonstrar um exemplo de comunicação entre os CLPs Schineider Twido

Descrição: A comunicação entre os CLPs Schineider é feita através do protocolo modbus,


RS 485. Trata-se de uma comunicação mestre-escravo que possibilita a comunicação em
rede de até 32 componentes.

Cabeamento: O cabeamento em topologia de barramento deve ser feito através dos pinos
1(A(+)) e 2(B(-)) dos CLPs. Para a conexão dos componentes deve ser utilizado um
conector miniDIN de 8 pinos macho. Para esta comunicação os pinos 5 e 7 de cada CLP
devem ser conectados (jumper).

Programação:

Para configurar o CLP para comunicação com protocolo modbus deve-se acessar o menu
Edit Controller Comm Setup.
A janela abaixo surgirá, e deve ser configurada desta forma.

Podem-se fazer seis tipos de comunicações diferentes com o CLP schineider:


 Leitura de N Bits
 Leitura de N Words
 Escrita de 1 Saída de Bit
 Escrita de 1 Saída de Word
 Escrita de N Saídas de Bit
 Escrita de N Saídas de Word
Sendo que os parâmetros de cada tipo de comunicação estão descritos na tabela abaixo:

Introduction
You can use these requests to exchange data between devices to access bit and word
information. The same table format is used for both RTU and ASCII modes.
Format Reference
Bit %Mi, 0x or 1x registers
Word %MWi, 3x or 4x registers

Modbus Master: Read N Bits


This table represents Request 01 and Request 02.
Table Most Significant Byte Least Significant Byte
Index
Control words 0 01 (Tx/Rx) 06 (Length Tx)
1 00 (Rx Offset) 00 (Tx Offset)
Transmission table 2 Slave@(1..247) 01 or 02 (Request code)
3 Number of the first bit to read
4 N = Number of bits to read
Reception table 5 Slave@(1..247) 01 (Response code)
(after response) 6 Number of data bytes transmitted (1 byte by bit)
7 First byte read (value = 00 Second byte read (if N>1)
or 01)
8 Third byte read
...
(N/2)+6 Byte N read (if N>1)

Modbus Master: Read N Words


This table represents Request 03 and Request 04.
Table Most Significant Byte Least Significant Byte
Index
Control words 0 01 (Tx/Rx) 06 (Length Tx)
1 03 (Rx Offset) 00 (Tx Offset)
Transmission table 2 Slave@(1..247) 03 or 04 (Request code)
3 Number of the first word to read
4 N = Number of words to read
Reception table (after 5 Slave@(1..247) 03 (Response code)
response) 6 00 (byte added by Rx 2*N (number of bytes read)
7 First word read
8 Second word read (if N>1)
...
N+6 word N read (if N>2)
Note: The Rx Offset=3 will add a byte (value=0) at the third position in the reception
table. Allow a good positioning of the number of bytes read and of the read words’
values in this table.

Modbus Master: Write 1 Output Bit


This table represents Request 05.
Table Most Significant Byte Least Significant Byte
Index
Control words 0 01 (Tx/Rx) 06 (Length Tx)
1 00 (Rx Offset) 00 (Tx Offset)
Transmission table 2 Slave@(1..247) 05 (Request code)
3 Number of the bit to write
4 Bit value to write
Reception table 5 Slave@(1..247) 05 (Response code)
(after response) 6 Number of the bit written
7 Value written
Note:
This request does not need the use of offset.

The response frame is the same as the request frame here (in a normal case).

For a bit to write 1, the associated word in the transmission table must contain the
value FF00H. 0 for a bit value is 0.

Modbus Master: Write 1 Output Word


This table represents Request 06.
Table Most Significant Byte Least Significant Byte
Index
Control words 0 01 (Tx/Rx) 06 (Length Tx)
1 00 (Rx Offset) 00 (Tx Offset)
Transmission table 2 Slave@(1..247) 06 (Request code)
3 Number of the word to write
4 Word value to write
Reception table (after 5 Slave@(1..247) 06 (Response code)
response) 6 Number of the word written
7 Value written
Note:
This request does not need the use of offset.

The response frame is the same as the request frame here (in a normal case).

Modbus Master: Write N Output Bits


This table represents Request 15.
Table Most Significant Byte Least Significant Byte
Index
Control words 0 01 (Tx/Rx) 8 + number of bytes (Tx)
1 00 (Rx Offset) 07 (Tx Offset)
Transmission table 2 Slave@(1..247) 15 (Request code)
3 Number of the first bit to write
4 N1 = Number of bits to write
5 00 (byte not sent, offset N2 = Number of data
effect) bytes to write
6 Value of the first byte Value of the second byte
7 Value of the third byte
...
6+(N2/2) Value of the N2th byte
Reception table Slave@(1..247) 15 (Response code)
(after response) Number of the first bit written
Number of bits written (= N1)
Note:
The Tx Offset=7 will suppress the 7th byte in the sent frame. Allow a good
correspondence of words’ values in the transmission table.

Modbus Master: Write N Output Words


This table represents Request 16.
Table Most Significant Byte Least Significant Byte
Index
Control words 0 01 (Tx/Rx) 8 + (2*N) (Length Tx)
1 00 (Rx Offset) 07 (Tx Offset)
Transmission table 2 Slave@(1..247) 16 (Request code)
3 Number of the first word to write
4 N = Number of words to write
5 00 (byte not sent, offset 2*N=NR of bytes to write
effect)
6 First word value to write
7 Second value to write
...
N+5 N value to write
Reception table N+6 Slave@(1..247) 16 (Response code)
(after response) N+7 Number of the first word written
N+8 Number of word written (= N)
Note: The Tx Offset=7 will suppress the 5th MMSB byte in the sent frame. Allow a
good correspondence of words’ values in the transmission table.
Obs.: Dados disponíveis no software de programação.
Os programas a seguir descrevem uma comunicação utilizando, leitura de N words, e
escrita de N words.

MESTRE
A primeira parte do programa descreve como é feita a comunicação, leitura de N word.

Nesta linha toda vez que a entrada 0 e a extrusão de %S5 (clock) estiver acionada ira mover
para a word 0 o valor hexadecimal* 0106, que é indicado na tabela. É um valor padrão.
*O 16# indica que o valor movido está em hexadecimal

Na word 1 é movido o valor 0300, também em hexadecimal e também valor padrão.

Nesta linha é movido para o byte mais significativo da word 2, o endereço do escravo que
se quer ler, e no byte menos significativo o código de comunicação requerido, 03 ou 04 a
depender do tipo de arquivo a ser lido.
Na word 3 é movido o valor que indica a primeira word a ser lida no escravo.

Na word 4 é movido o valor que indica a quantidade de words a ser lida do escravo.

Nesta linha é acionada a extrusão de comunicação “EXCH1”, esta realiza a comunicação,


utilizando os parâmetros descritos nas words acima citadas, deve-se indicar na extrusão
quais são estas words.

Os valores das words 5, 6 e 7 são escritos pelo próprio CLP após a recepção dos dados, e o
valor da primeira word lida do escravo (word 0) estará sendo escrito na word 7 do mestre.
Desta forma podemos acionar as saídas do CLP mestre em função do estado dos bits da
word 7. No programa em questão estão sendo utilizados os quatros primeiros bits.

A segunda parte do programa descreve a comunicação escrita de N word.

Nesta linha toda vez que a entrada 1 estiver ligada e a extrusão de %S5 (clock) estiver
desacionada irá mover para a word 10 o valor hexadecimal 010A, que é indicado na tabela.
É um valor padrão, sedo que o valor do byte menos significativo (0A) é obtido com a
função 8 + (2*N) sendo que N é o número de words escritas.
Na word 11 é movido o valor 0007, também em hexadecimal e também valor padrão.

Nesta linha é movido para o byte mais significativo da word 12, o endereço do escravo que
se quer escrever, e no byte menos significativo o código de comunicação requerido, que
neste caso é 16.

Na word 13 é movido o valor que indica a primeira word a ser escrita no escravo.

Na word 14 é movido o valor que indica a quantidade de words a ser escrita no escravo.

Na word 15 é movido o valor 0002 sendo que o valor do byte menos significativo é obtido
com a função (2*N) sendo que N é o número de words para escrever.

Nesta linha é acionada a extrusão de comunicação “EXCH1”, esta realiza a comunicação,


utilizando os parâmetros descritos a partir da word 10, sendo que estão sendo utilizadas 8
words. Deve ser acionada uma função de comunicação por vez, por isso a necessidade do
endereço %S5.

Na word 16 é escrito o valor que se deseja escrever na word do escravo, (word 1) sendo que
o programa em questão esta manipulando os quatro primeiros bits da word através das
entradas.
ESCRAVO

O campo Controller Comm Setup do CLP escravo deve ser configurado da mesma forma
que o CLP mestre, exceto o campo Address que deve ser configurado com o valor 2.

As quatro primeiras linhas acionam os 4 primeiros bits da word 0 do escravo que será lida
pelo mestre, e as quatro últimas acionam as saídas em função da word 1 do escravo que
será escrita pelo mestre.