Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
iii
Resumo
O tema desta dissertação surge no âmbito do projecto de investigação e
desenvolvimento financiado pela Fundação para a Ciência e a Tecnologia, WALC (Web
Assisted Laboratory Control). O objectivo deste trabalho consiste no estudo e implementação de
uma rede de autómatos para controlo e gestão de processos, incluindo sistemas de segurança de
acesso à rede e gestão de rede por via remota.
De forma a entender o funcionamento das redes de comunicação, foi efectuado um
estudo, sobre algumas das redes utilizadas em aplicações industriais, explicando o seu princípio
de funcionamento. Como a aplicação deste trabalho visa a utilização de autómatos
programáveis, é detalhado também, o seu funcionamento, desde o ciclo interno, modos de
programação e a sua organização.
Para desenvolver uma rede de autómatos foi feito um estudo sobre possíveis formas, de
trocas de informação entre um posto de trabalho e os vários PLCs. Como tal, foi efectuado um
estudo entre dois protocolos: Host Link e o FINS, descrevendo as vantagens e limitações de
cada um destes protocolos.
Para aceder remotamente à rede, foram desenvolvidas duas aplicações (servidor e
cliente). Ambas as aplicações foram feitas em LabView. A aplicação servidor, gere as
comunicações, e a segunda identifica as acções a realizar. A comunicação entre o servidor e o
cliente é realizado através de TCP-IP. Deste modo, o acesso à rede pode ser efectuado
remotamente, visto que o servidor é responsável pela gestão das comunicações entre cliente e
rede de PLCs.
Para garantir o acesso limitado à rede de PLCs foi criado uma base de dados de acesso
ao sistema de forma a guardar a informação dos utilizadores. Como tal, o cliente deve efectuar
uma autenticação para ter permissão para aceder à rede. Este sistema é capaz de suportar
múltiplos clientes, na medida em que, o segmento de dado enviado entre o cliente e servidor,
possui uma estrutura de identificação de modo a garantir, que a resposta do servidor seja
recebido pelo cliente destino.
O sistema desenvolvido foi testado em ambiente laboratorial. Brevemente será
incorporado no projecto WALC, onde os alunos de Automação e Controlo poderão testar os
seus conhecimentos neste laboratório virtual e remoto.
v
Abstract
The theme of this thesis is in the scope of the project research and development funded
by the Foundation for Science and Technology, WALC (Web Assisted Control Laboratory).
The aim of this work is the study and implementation of a network of PLCs for control and
management processes, including security systems, network access and network management
by remote access.
In order to understand the operation of communication networks, a study was made on
some of the networks used in industrial applications, explaining their working principle. As the
application of this study is the use of programmable controllers, it is also detailed its operation
from the internal cycle, programming modes and their organization.
To develop a network of industrial controllers, a study was made regarding the
exchanging information between a workstation and various Programmable Logic Controllers
(PLCs). Therefore, two protocols, FINS and Host Link, were studied, in particular, their
advantages and.
To remotely access the network, two applications were developed (server and client).
Both applications were made in LabView. The application server manages the communications,
and the second identifies the actions. The communication between the server and the client is
done through TCP-IP protocol. Thus, the access network can be done remotely, since the server
is responsible for managing communications between client and PLC network.
To ensure limited access to the network of PLCs, it was created a database access
system to save users' information. As such, the client must perform an authentication before
being allowed to access the network. This system is capable of supporting multiple clients, in
that the data’s segment is sent between the client and server; it has a structure of identification
in order to ensure that the server response is received by the target client.
The system has been tested in the laboratory. In the near future it will be incorporated in
the project WALC, where Automation and Control students will test their knowledge in this
remote and virtual laboratory.
vii
Agradecimentos
Começo por agradecer a todas as pessoas que me apoiaram não só durante a realização
da dissertação, mas também ao longo curso.
Aos meus pais e à minha irmã pelo apoio;
À minha amiga e companheira de todas as horas, Lígia Ferreira pela enorme ajuda,
paciência e companheirismo.
Aos meus colegas que me ajudaram ao longo do curso, em especial ao Acácio Crespo
pela sua amizade, e ao Nuno Carvalho, pelas longas horas de trabalho em conjunto e pela ajuda
que me deu.
Um obrigado à professora Filomena Soares e ao Professor José Machado pela
oportunidade que me deram, em trabalhar com eles. Foi muito gratificante, pois concederam-me
oportunidades únicas neste último ano, desde ajudar estagiários, e, a oportunidade de participar
na conferência ICINCO 2009, em Julho do mesmo ano.
Gostaria de agradecer à professora Filomena Soares, por me ter dado imenso apoio, não
só durante a realização da dissertação, mas durante estes últimos dois longos anos. Para além de
me ter ajudado, nunca desistiu de mim, e sempre me ajudou e aconselhou, a ultrapassar os meus
momentos mais difíceis. Um obrigado muito especial.
Não só a estas pessoas, agradeço a todos os meus colegas e amigos que estão presentes
na minha vida.
Agradeço à universidade do Minho pela formação académica, em especial ao
departamento de Engenharia Electrónica Industrial e Computadores.
A todos, muito obrigada.
ix
Índice
Resumo ......................................................................................................................................... iii
Abstract ......................................................................................................................................... v
Agradecimentos ........................................................................................................................... vii
Índice de figuras .......................................................................................................................... xii
Índice de Tabelas ......................................................................................................................... xv
Lista de Acrónimos .................................................................................................................... xvi
1. Introdução ............................................................................................................................. 1
1.1. Enquadramento.............................................................................................................. 1
1.2. Controladores industriais ............................................................................................... 1
1.2.1. Autómatos Programáveis ...................................................................................... 3
1.2.2. Linguagens de programação normalizadas ........................................................... 5
1.2.3. Pirâmide de CIM ................................................................................................... 6
1.3. Objectivos ..................................................................................................................... 8
1.4. Estrutura da dissertação ................................................................................................. 9
2. Redes de comunicação ........................................................................................................ 11
2.1. Modelo OSI ................................................................................................................. 12
2.2. Ethernet – TCP/IP ....................................................................................................... 14
2.2.1. Camadas de Ethernet – TCP/IP ........................................................................... 15
2.2.2. Meio físico........................................................................................................... 15
2.2.3. Ligação de dados ................................................................................................. 16
2.2.4. Rede ..................................................................................................................... 18
2.2.5. Transporte............................................................................................................ 20
2.2.6. Estrutura final do segmento dados ...................................................................... 23
2.3. PROFIBUS .................................................................................................................. 23
2.3.1. Camadas do PROFIBUS ..................................................................................... 24
x
2.3.2. Meio físico........................................................................................................... 24
2.3.3. Ligação de dados ................................................................................................. 25
2.3.4. Configurações do PROFIBUS............................................................................. 26
2.4. AS-I (Actuator Sensor - Interface) .............................................................................. 29
2.4.1. Camadas do AS-Interface .................................................................................... 29
2.4.2. Meio de físico ...................................................................................................... 30
2.4.3. Ligação de dados ................................................................................................. 31
2.5. DeviceNet .................................................................................................................... 32
2.5.1. Camadas do DeviceNet ....................................................................................... 33
2.5.2. Meio físico........................................................................................................... 33
2.5.3. Ligação de dados ................................................................................................. 35
2.6. Análise comparativa .................................................................................................... 36
3. Trabalho experimental ......................................................................................................... 37
3.1. Protocolos de comunicação ......................................................................................... 38
3.2. Host Link ..................................................................................................................... 38
3.2.1. Comando Host Link ............................................................................................ 39
3.2.2. Resposta Host Link ............................................................................................. 41
3.3. FINS – (Factory Interface Network Service) .............................................................. 44
3.3.1. Comando FINS .................................................................................................... 45
3.3.2. Resposta FINS ..................................................................................................... 47
3.4. Comunicação FINS com Host Link ............................................................................ 47
3.4.1. Comando e resposta FINS com Host Link .......................................................... 47
3.4.2. Exemplo prático FINS com Host Link ................................................................ 49
3.5. Comunicação FINS com Ethernet ............................................................................... 60
3.6. Software para acesso remoto ....................................................................................... 61
3.6.1. Software para gestao de rede ............................................................................... 61
3.6.2. Base de dados ...................................................................................................... 62
3.6.2. Comunicação TCP/IP entre cliente e servidor..................................................... 66
3.6.3. Estrutura de segmento de dados .......................................................................... 69
xi
3.6.4. Comunicação servidor – rede de PLCs ............................................................... 71
3.6.5. Software cliente ................................................................................................... 71
3.6.6. Partição dos segmentos de dados ........................................................................ 77
3.6.7. Fluxo de dados .................................................................................................... 79
4. Resultados práticos .............................................................................................................. 81
5. Conclusões e trabalho futuro ............................................................................................... 89
Referências .................................................................................................................................. 91
xii
Índice de figuras
Figura 1 – Organização interna de um PLC [2] ............................................................................ 3
Figura 2 - Ciclo interno do PLC .................................................................................................... 4
Figura 3 – Pirâmide CIM .............................................................................................................. 7
Figura 4 – Topologia em anel, estrela e barramento ................................................................... 11
Figura 5 – Modelo OSI ............................................................................................................... 13
Figura 6 – Modelo OSI para TCP/IP ........................................................................................... 15
Figura 7 – Cabo coaxial grosso, fino e par trançado ................................................................... 15
Figura 8 – Tipos de transmissão .................................................................................................. 16
Figura 9 – Estrutura genérica Ethernet ........................................................................................ 18
Figura 10 – Estrutura genérica do IP [9] ..................................................................................... 18
Figura 11 – Inicio de uma conexão TCP ..................................................................................... 20
Figura 12 – Transmissão de dados TCP ...................................................................................... 21
Figura 13 – Estrutura genérica do TCP [9] ................................................................................. 23
Figura 14 – Acoplamento das estruturas de segmento dados dos níveis OSI ............................. 23
Figura 15 – Modelo OSI de PROFIBUS ..................................................................................... 24
Figura 16 – Passagem do token [10] ........................................................................................... 26
Figura 17 – Topologia PROFIBUS DP e PROFIBUS PA [21] .................................................. 27
Figura 18 – Modelo OSI do AS-Interface ................................................................................... 30
Figura 19 – Cabos para AS-Interface [22] .................................................................................. 30
Figura 20 – Modelo OSI da rede DeviceNet ............................................................................... 33
Figura 21 – Topologia de rede DeviceNet [13] ........................................................................... 34
Figura 22 - Rede WALC ............................................................................................................. 37
Figura 23 – Esquema de ligação com uso de Host Link [15] ...................................................... 39
Figura 24 - Segmento de dado Host Link ................................................................................... 40
Figura 25 - Estrutura de segmento de dados da resposta Host Link ........................................... 41
Figura 26 - Estrutura segmento de dados em caso de erro .......................................................... 42
Figura 27 - Comunicação Host Link PC-PLC ............................................................................. 42
Figura 28 - Comunicação Host Link PC-PLC ............................................................................. 43
Figura 29 - Rede PLC com PC em comum ................................................................................. 43
Figura 30 - Rede de PLCs com diferentes tipos de ligação ......................................................... 44
Figura 31 - Segmento de comando do FINS [16] ....................................................................... 45
xiii
Figura 32 - Configuração ICF ..................................................................................................... 45
Figura 33 - Resposta ao comando FINS [16] .............................................................................. 47
Figura 34 - Comando FINS com Host Link ................................................................................ 47
Figura 35 - Resposta ao comando de FINS com Host Link [16] ................................................ 48
Figura 36 - PC ligado a PLCs em paralelo .................................................................................. 48
Figura 37 - Rede de PLCs com redes interligadas ...................................................................... 49
Figura 38 - PC ligado a um PLC ................................................................................................. 50
Figura 39 - Configuração geral comando FINS com Host Link (PC-PLC) [15] ........................ 50
Figura 40 - Resposta geral ao comando FINS com Host Link (PLC-PC) [15] ........................... 51
Figura 41 - Exemplo prático com PC e um PLC ......................................................................... 52
Figura 42 - PC ligado a vários PLCs ........................................................................................... 53
Figura 43 - Configurações gerais parâmetros FINS [16] ............................................................ 53
Figura 44 - Resposta ao comando FINS com Host Link [15] ..................................................... 54
Figura 45 - Envio de comando de escrita e leitura FINS com Host Link ................................... 54
Figura 46 - Rede de PLCs com várias redes ............................................................................... 55
Figura 47 - Configuração genérica parâmetros FINS cm Host Link [16] ................................... 56
Figura 48 - Estrutura do segmento de dados da resposta ao comando FINS [16] ....................... 57
Figura 49 - Troca de dados entre comando (PC-PLC) e resposta FINS (PLC - PC) .................. 57
Figura 50 - Representação de comando nas redes de PLCs ........................................................ 58
Figura 51 - Comando FINS com acesso a rede mais distante ..................................................... 59
Figura 52 - Ethernet com FINS ................................................................................................... 60
Figura 53 - Estrutura de segmento de dados FINS-TCP/IP ........................................................ 60
Figura 54- Interligação entre os clientes e PLC .......................................................................... 62
Figura 55 - Configuração de um Microsoft Data Link ................................................................ 62
Figura 56 - Algoritmo para conexão e pesquisa na base de dados .............................................. 63
Figura 57 - Porção de código do servidor para pesquisa base de dados ...................................... 64
Figura 58 - Porção de código para conexão, pesquisa e resultado da base de dados .................. 65
Figura 59 - Comunicação entre o cliente e o servidor ................................................................. 66
Figura 60 - Algoritmo servidor para comunicação ..................................................................... 67
Figura 61 - TCP Listen ................................................................................................................ 67
Figura 62 - TCP Write ................................................................................................................. 68
Figura 63 - TCP Read ................................................................................................................. 68
Figura 64 - TCP Close Connection ............................................................................................. 68
Figura 65 - Pedido de acção para o servidor ............................................................................... 69
Figura 66 - Envio de resposta do servidor ................................................................................... 70
Figura 67 - Estrutura segmento de dados entre cliente / servidor ............................................... 70
Figura 68 - Configuração comunicação cliente - servidor .......................................................... 72
xiv
Figura 69 - Fluxograma do software cliente ............................................................................... 72
Figura 70 - Criação do segmento de dados para login ................................................................ 73
Figura 71 - Envio de dados cliente-servidor via TCP ................................................................. 73
Figura 72 - Ambiente do software cliente ................................................................................... 74
Figura 73 - Acesso ao envio de segmento de dados para PLCs .................................................. 75
Figura 74 - Configuração estrutura de dados para envio TCP/IP ................................................ 75
Figura 75 - A selecção da estrutura de dados .............................................................................. 76
Figura 76 - Opções de acção no software cliente ........................................................................ 77
Figura 77 - Detecção do tipo de acção ........................................................................................ 78
Figura 78 - Execução a partição dos parâmetros do segmento de dados .................................... 78
Figura 79 - Execução da acção do segmento no cliente .............................................................. 79
Figura 80 - Fluxo dos vários segmentos de dados na rede .......................................................... 79
Figura 81 - Resultado da configuração de pesquisa na base de dados ........................................ 84
Figura 82 - Conexão multi cliente ao servidor ............................................................................ 85
Figura 83 - Resposta do servidor a um pedido ............................................................................ 86
Figura 84 - Rede testada em laboratório ..................................................................................... 87
Figura 85 - Rede com PROFIBUS testada em laboratório ......................................................... 87
xv
Índice de Tabelas
Tabela 1 – Tabela de velocidade transmissão e comprimento .................................................... 25
Tabela 2 – Trama AS-I ................................................................................................................ 31
Tabela 3 – Velocidade de transmissão DeviceNet ...................................................................... 34
Tabela 4 – Formato da sequência de dados DeviceNet ............................................................... 35
Tabela 5 - Comparação de redes de comunicação ...................................................................... 36
Tabela 6 – Códigos de acesso a áreas de memória do PLC [14] ................................................. 40
Tabela 7 - Códigos de escrita nas áreas de memória do PLC [14] .............................................. 41
Tabela 8 - Comandos de escrita e leitura .................................................................................... 44
Tabela 9 - Configuração dos parâmetros FINS com Host Link .................................................. 52
Tabela 10 - Configuração dos parâmetros de leitura do FINS com Host Link ........................... 52
Tabela 11 - Configuração comando escrita ................................................................................. 55
Tabela 12 - Configuração comando leitura ................................................................................. 55
Tabela 13 - Parâmetros para leitura de valores na posição de memória ..................................... 58
Tabela 14 - Escrita de dados com FINS e Host Link no PLC de outra rede ............................... 59
Tabela 15 – Comando para escrever dados ................................................................................. 82
Tabela 16 – Resposta do PLC ..................................................................................................... 82
Tabela 17 - Leitura de dados do FINS e do Host Link ................................................................ 82
Tabela 18 - Resposta do pedido efectuado pelo Host Link e FINS............................................. 82
Tabela 19 - Uso de FINS para escrita de dados .......................................................................... 83
Tabela 20 - Leitura de dados através do FINS ............................................................................ 83
xvi
Lista de Acrónimos
ACK Acknowledgments
CIM Computer Integrated Manufacturing
CPU Central Processing Unit
CSMA/CD Carrier Sense Multiple Acess / Collision Detection
DP Decentralized Periphery
DTM Device Type Manager
EEPROM Electrical Erasable Programmable Read Only Memory
EPROM Erasable Programmable Read Only Memory
FBD Function Block Diagram
FDT Field Device Tools
FMS Fieldbus Message Specification
GSD General Slave Data File
I/O Input / Output
IL Instruction List
IP Internet Protocol
LD Ladder Diagrams
MAC Media Acess Control
MSACn Message-Slave Acyclic, Class n
OSI Open Systems Interconection
PA Process Automation
PC Personal Computer
PLC Programmable Logic Computer
xvii
SFC Sequencial Function Charts
ST Structured Text
TCP Transmission Control Protocol
WALC Web Assisted Laboratory for Control
CAPÍTULO 1 – INTRODUÇÃO ______________________________________________________________________________________________
1
1. Introdução
Neste capítulo, apresenta-se o enquadramento e os objectivos desta dissertação, fazendo-se,
uma introdução teórica sobre autómatos, e finalmente é indicado a estrutura da dissertação.
1.1. Enquadramento
O tema desta dissertação surge no âmbito do projecto de investigação e
desenvolvimento financiado pela Fundação para a Ciência e a Tecnologia, WALC (Web
Assisted Laboratory for Control).
Este projecto resulta de uma parceria entre vários departamentos da Escola de
Engenharia da Universidade do Minho, mais concretamente, o Departamento de Electrónica
Industrial, o Departamento de Engenharia Mecânica, o Departamento de Produção e Sistemas e
o Departamento de Sistemas de Informação.
Também, no âmbito deste projecto, realizou-se uma parceria com a OMRON, empresa
que forneceu a maior parte dos equipamentos de automação. O projecto WALC, consiste na
implementação de um laboratório virtual e remoto para estudos de automação e controlo de
processos.
A implementação de todo o equipamento que culminará na construção de um protótipo
encontra-se em fase de execução. Por isso, esta tese está orientada para uma das tarefas que
compõem esse projecto (Acesso remoto e controlo de processos de uma rede de autómatos) e
toda a apresentação teórica apresentada neste documento, bem como testes já realizados, podem
ser utilizados para esse efeito.
1.2. Controladores industriais
Dependendo do tipo de processo, existem vários tipos de controladores, desde os relés
(interface com actuadores, quadros de comando, entre outras aplicações), controladores de
temperatura (parametrizado para actuar conforme a variação de temperatura), variadores de
velocidade (aplicados em motores), entre outros. No entanto, existe outro tipo de controladores,
CAPÍTULO 1 – INTRODUÇÃO ______________________________________________________________________________________________
2
programáveis, oferecendo uma vasta área de aplicação. Estes controladores, são denominados
por PLC (Programmable Logic Computer).
No início de 1960 [2], o controlo de sistemas era feito através dos tradicionais
dispositivos electromecânicos, como por exemplo, o uso de relés, sendo o aparelho mais
utilizado para controlo discreto de sistemas (estado On – Off). Apesar de ainda ser um
dispositivo bastante utilizado nos dias de hoje, estes aparelhos associam-se a determinados
problemas, sendo susceptíveis a falhas mecânicas, necessitam de alguma energia para operar, e
geram muito ruído eléctrico para a rede, apesar da tecnologia se ter desenvolvido e diminuindo
estas características físicas [3].
Com efeito, a necessidade de criar um sistema de controlo mais fidedigno,
principalmente na indústria automóvel, surge em 1968, o PLC (Programable Logic Controller),
e um ano depois surge a sua comercialização [2]. Em 1970 apareceu o microprocessador,
fazendo com que os PLCs aumentassem a sua capacidade de acção em sistemas cada vez mais
complexos, expandido para diversas áreas, desde a robótica, controlo de máquinas, controlo de
sistemas hidráulicos, entre outros.
Na década de 1980 o PLC sofreu várias optimizações e melhoramentos. Assim, foi
aumentada a velocidades de processamento e a capacidade de comunicação, tornou-se mais
flexível, aumentou-se o número de entradas e saídas, verificou-se uma diminuição do preço.
Esta situação permitiu que nos anos 90 os PLCs se tornassem uma importante ferramenta para
controlo e recolha de dados em tempo real, alocação de informação e gestão de dados em
processos industriais [4].
Com o aparecimento do controlador digital, surgem novos métodos de controlo e gestão
de processos. Há um forte aumento na fiabilidade e no controlo de qualidade dos processos, no
mundo industrial, surgindo então certas vantagens. Desde o aumento da capacidade de
produção, melhoria do controlo de inventários, reforço da qualidade, e como tal, o aumento da
produção e competitividade empresarial.
No entanto, não existem apenas vantagens para o uso da automação. Existem algumas
limitações nestes sistemas implementados, começando pelo custo elevado de implementação e
manutenção, desactualização do sistema autónomo, aumento significativo da manutenção e
gestão do sistema [1].
CAPÍTULO 1 – INTRODUÇÃO ______________________________________________________________________________________________
3
1.2.1. Autómatos Programáveis
Para melhor compreender o funcionamento de um autómato, é representado na Figura 1
uma estrutura genérica da sua organização [2].
Figura 1 – Organização interna de um PLC [2]
Para entender o funcionamento de um autómato é apresentado de seguida uma breve
explicação [2]:
O CPU (Central Processing Unit), sendo um microprocessador comum, executa o
programa desenvolvido pelo fabricante, sendo guardado na executive memory. O programa
desenvolvido pelo fabricante é executado pelo CPU, e como tal, dá capacidade a este para
interpretar o programa desenvolvido pelo utilizador. Esse código, é guardado na user memory.
Para fazer a aquisição e leitura de sinais, o CPU não opera directamente com o sistema
de I/O (Input / Output), mas trabalha com uma imagem das I/O guardadas no bloco de I/O
image memory. Esse bloco é responsável pela escrita e leitura de dados provenientes das
entradas e saidas na I/O Image, para estabelecer a interface com o meio ambiente [2], [3].
CAPÍTULO 1 – INTRODUÇÃO ______________________________________________________________________________________________
4
O Watchdog timer, tem como função contabilizar o tempo que o CPU demora a
executar o programa feito pelo utilizador. Caso o programa demore mais que o tempo pré
determinado, significa que pode ter ocorrido uma falha ou um erro, o que vai fazer com que haja
um reset ao CPU.
Para estabelecer comunicação entre outros elementos, como enviar e receber dados,
provenientes de outros autómatos, ou de um PC (Personal Computer), existe o bloco dedicado à
comunicação (Comunication Interface). Essa comunicação pode ser estabelecida, por exemplo,
pela comunicação série, ou por outros tipos de comunicações.
Para actualizar as entradas e saídas, e o estado das memórias, é necessário entender o
ciclo interno do PLC. Na Figura 2, é apresentado um esquema do ciclo interno do PLC.
Figura 2 - Ciclo interno do PLC
O ciclo interno do PLC possui três etapas. A primeira verifica o estado das entradas,
onde é guardado na Input Image. A segunda etapa é a verificação do programa criado pelo
utilizador, actualizando deste modo os estados das variáveis, e a Output Image.
Na última étapa, os valores guardados na Output Image, são transferidos para as saídas
do PLC [3].
O tempo de execução do ciclo interno do PLC, desde a leitura das entradas até à
actualização das saídas, é denominado por scan time. Este tempo, geralmente depende de dois
factores. O primeiro é a quantidade de memória ocupada pela programação do PLC, e a
segunda, o tipo de instrução usada no programa. O scan time, necessário para executar um ciclo
varia entre alguns milissegundos até 50 milissegundos [3].
O autómato utiliza dois tipos de memórias para alocar os programas e para guardar
valores intermédios, as voláteis e as memórias não voláteis. A diferença entre estes dois tipos de
memórias, reside na salvaguarda dos valores e do código do utilizador na memória. Quando a
CAPÍTULO 1 – INTRODUÇÃO ______________________________________________________________________________________________
5
alimentação do autómato é desligada, a memória não volátil retém todo o seu conteúdo, ao
contrário das memórias voláteis.
As memórias voláteis tipicamente utilizadas são as RAM (Random Acess Memories),
em que o seu consumo é muito baixo, bastando uma pequena pilha, para reter o conteúdo da
memória durante curtos períodos de tempo, sem alimentação da fonte do PLC.
As memórias não voláteis, normalmente utilizadas são as EPROM (Erasable
Programmable Read Only Memory) e as EEPROM (Electrical Erasable Programmable Read
Only Memory). Ambas podem ser escritas e apagadas mais do que uma vez, sendo diferente o
método utilizado para o efeito.
Para programar uma EPROM, é necessário usar impulsos eléctricos, e para apagar todo
o seu conteúdo é necessária a sua exposição à luz ultra violeta, denominado por UV – EPROM.
O funcionamento das EEPROM, é semelhante às anteriores, modificando apenas o método de
apagar a memória, permitindo fazé-lo através de impulsos eléctricos, não sendo necessária a
exposição à luz ultra violeta [2], [3].
1.2.2. Linguagens de programação normalizadas
Na programação de PLCs, existem várias linguagens de programação normalizadas
(IEC61131-3), ou simplesmente IEC 1131-3, nomeadamente – Ladder Diagrams (LD),
Function Block Diagram (FBD), Instruction List (IL), Structured Text (ST), e por último,
Sequencial Function Charts (SFC). De seguida é apresentado, as características de cada uma:
Ladder Diagrams (LD) – é uma linguagem gráfica, onde o principio do seu
funcionamento deriva da lógica dos relés e contactos. Graficamente, possui regras básicas: as
instruções de saída ficam colocadas no lado direito das linhas horizontais. A execução da
instrução de saída depende da afirmação lógica das instruções de entrada à sua esquerda.
Function Block Diagram (FBD) – utiliza blocos da lógica booleana, adequado para
controlo discreto, onde cada bloco pode ser interpretado como uma função. À esquerda do bloco
são indicados as variáveis de entrada, e à sua direita o resultado da função.
Instruction List (IL) – este método de programação consiste numa sequência de
comandos, onde cada um executa determinada acção. Esta linguagem assemelha-se à linguagem
Assembly, usada nos microprocessadores.
CAPÍTULO 1 – INTRODUÇÃO ______________________________________________________________________________________________
6
Structured Text (ST) – é uma linguagem de programação de alto nível, que suporta
determinadas instruções, como o while (), do while (), if () then else, entre outros.
Sequencial Function Charts (SFC) – É uma linguagem que fornece uma representação
gráfica da sequência de um programa. Basicamente, SFC é uma forma de organizar um
programa, mesmo que este seja desenvolvido noutra linguagem (LD, FBD, IL ou ST), através
de uma representação gráfica. O SFC possui 3 elementos essenciais para a sequência de um
programa e sua estrutura: Etapa (estado do programa onde as acções são executadas), Transição
(condição pela qual o pograma muda de estado), e finalmente a Acção (actividade executada
pelo programa num estado), [5].
1.2.3. Pirâmide de CIM
A evolução dos PLCs, abrange uma área de aplicação cada vez maior, sendo bastantes,
utilizados no mundo industrial. Fornecem grande robustez e fiabilidade em ambientes hostis.
Torna-se possível, a sua utilização em ambientes com vibrações, campos magnéticos, poeiras,
temperaturas elevadas, entre outras. Com o aumento dos processos automáticos controlados por
PLCs, e com o aumento da complexidade e rigor dos processos industrais, torna-se imperativo,
um fácil acesso aos estados de operação dos processos industriais. Este tem sido promovido pela
implementação de redes industriais, o que aumenta a fiabilidade, facilita o acesso e visualização
do estado de operação dos PLCs.
Dentro de uma linha de produção, com vários processos independentes, ligados em rede,
torna-se crucial que o acesso a estes, através de um posto de trabalho, seja rápido, permitindo a
sua supervisão e controlo, mesmo que estejam separados fisicamente.
Numa rede industrial, podem existir vários tipos de dispositivos, desde PLCs, sensores,
actuadores, entre outros, que se interligam de diferentes modos. A forma como este dispositivos
se distribuem numa rede industrial, pode ser descrita através do modelo da pirâmide CIM.
Com o modelo da pirâmide CIM, surge um novo conceito de organização de métodos
de produção industrial. Desde, a automatização de máquinas e processos, organização da troca
de dados entre as várias áreas de uma empresa e a gestão de fluxo de matéria-prima. Como
consequência desta prática, ocorre um melhoramento do processo, optimização e aumento da
velocidade de produção, controlo de qualidade e principalmente o controlo de custos.
A pirâmide CIM está dividida em vários níveis (Figura 3). De seguida, é explicado cada nível
[5].
CAPÍTULO 1 – INTRODUÇÃO ______________________________________________________________________________________________
7
Figura 3 – Pirâmide CIM
• Nível de gestão:
Este é o nível mais elevado na pirâmide CIM, sendo o nível responsável pela
gestão, processamento e tratamento de dados provenientes dos níveis baixos. Os dados
podem ser guardados em base de dados, guardando em histórico de modo a monitorizar
e registar todos os processos.
• Nível de controlo:
Este nível está encarregado de fazer o controlo e gestão de zonas específicas.
Neste nível costumam estar situados os autómatos com maior capacidade de acção,
dispositivos de visualização e controlo (consolas gráficas).
• Nível de processo:
Este nível está encarregue de pequenos automatismos, desde controladores,
autómatos de gama mais baixa, podendo haver topologias de master/slave, entre
autómatos.
• Nível de entradas e saídas:
É o nível onde se encontram os sensores e actuadores, encarregues de controlar e gerir
fisicamente todos os processos e tomar todas as medidas necessárias para um bom
funcionamento de todo o processo.
CAPÍTULO 1 – INTRODUÇÃO ______________________________________________________________________________________________
8
Esta não é uma estrutura obrigatória, podendo variar, por vezes o número de níveis.
Todos estes níveis, estão indirectamente relacionados com alguns meios de comunicação, visto
que os dispositivos usados nas diversas camadas da pirâmide CIM, possuem características
diferentes.
Na actualidade, existe uma grande diversidade de redes que podem ser aplicadas na
indústria, desde Ethernet-TCP/IP, PROFIBUS, DeviceNet, AS-Interface, PROFINET, entre
outras.
Não existe nenhuma regra que indique que uma determinada rede pertence a um
determinado nível da pirâmide CIM. Como tal, é necessário saber qual a finalidade da rede e
estudar as suas aplicações, características e método de comunicação para saber em que camada
da pirâmide CIM se pode utilizar.
Para tal, é efectuado no capítulo seguinte o estudo de algumas das redes, que podem ser
aplicadas nas várias camadas da pirâmide.
1.3. Objectivos
O objectivo desta dissertação consiste no estudo e implementação de uma rede de
autómatos para controlo e gestão de processos, incluindo sistemas de segurança de acesso à rede
e gestão de rede por via remota.
De forma a atingir os objectivos, definiram-se várias metas.
A primeira, consiste em fazer um estudo sobre o funcionamento de várias redes de
comunicações utilizadas para fins industriais.
Uma outra meta, é investigar formas de acesso a vários PLCs de uma rede industrial,
onde o objectivo é aceder a todos os dispositivos, a partir de um único posto de trabalho. As
tarefas executadas por esse posto, podem ser por exemplo, actualizações de estados.
Para facilitar o acesso à rede de PLCs, é importante que esse seja feito remotamente,
concedendo uma maior versatilidade ao sistema.
Um ponto importante é limitar o acesso à rede, isto é, não permitir que qualquer pessoa
seja capaz de utilizar a rede, sem autorização.
CAPÍTULO 1 – INTRODUÇÃO ______________________________________________________________________________________________
9
Como tal, havendo a disponibilidade de aceder remotamente à rede, e havendo a
possibilidade de existirem vários utilizadores, é necessário controlar o tráfego de informação.
Isto é, no caso de múltiplos clientes ligados à rede, é importante que as respostas provenientes
da rede sejam de acordo com o pedido de cada cliente, e que, exista troca de informação.
1.4. Estrutura da dissertação
Esta dissertação encontra-se estruturada em 5 capítulos, onde de seguida é apresentado a
sua organização:
No capítulo 1 é efectuado o enquadramento do trabalho, são indicados os objectivos, a
estrutura da dissertação, e uma introdução teórica dos PLCs.
O capítulo 2 encontra-se orientado de forma a explicar algumas das redes utilizadas em
ambientes industriais. Para entender os modelos utilizados para cada rede, é explicado o modelo
OSI. Posteriormente, é explicado o funcionamento de algumas redes de comunicação,
nomeadamente Ethernet – TCP/IP, PROFIBUS, AS-I (Actuator Sensor Interface) e por fim
DeviceNet. Durante a explicação de cada uma, são indicados os níveis que cada uma possui em
relação ao modelo OSI, e detalhado o funcionamento de cada camada.
O capítulo 3 apresenta a descrição do trabalho prático, onde são explicados os métodos
de comunicação com uma rede de PLCs, utilizando o protocolo Hostlink e FINS. São
detalhadas as suas configurações, estruturas, aplicações e suas limitações. Como meio de
aplicação destes protocolos, é explicado o desenvolvimento de duas aplicações feitas em
LabView (servidor / cliente).
No capítulo 4 apresentam-se os resultados práticos obtidos na comunicação com o
protocolo FINS e Host Link, e da implementação do servidor / cliente.
No capítulo 5 são indicadas as conclusões do trabalho realizado e as possibilidades de
trabalho futuro.
CAPÍTULO 2 – REDES DE COMUNICAÇÃO ______________________________________________________________________________________________
11
2. Redes de comunicação
Na conectividade entre um PC (Personal Computer) e outros dispositivos semelhantes, ou
aparelhos que suportem ligação por uma rede, independentemente qual seja, é necessário
seleccionar a conexão física, que permitirá, uma troca de sinais, electricamente compatíveis.
Após a selecção do meio físico de comunicação, é necessário escolher um método de
transmissão de dados, que se adapte adequadamente à rede seleccionada, e consequentemente ao
dispositivo utilizado.
Para interligar todos os dispositivos neste tipo de rede, existem várias topologias. Estas
topologias vão desde topologia em barramento, estrela, ou em anel. Na Figura 4, é apresentado
um esquema de ligação de cada topologia [6].
Figura 4 – Topologia em anel, estrela e barramento
Topologia em estrela – Neste tipo de rede, um dispositivo pode-se ligar a outro através
de um equipamento central (hub, switch, …), sem nenhuma ligação directa, ou através de outro
computador. A adição de dispositivos à rede é simples, mas a grande desvantagem deste tipo de
rede é a avaria do equipamento central (em caso de avaria desliga toda a rede).
Topologia em anel – Neste tipo de rede os dispositivos encontram-se ligados em série,
formando um circuito fechado. Neste caso, os dados são transmitidos, unidirecionalmente de
dispositivo a dispositivo até atingir o seu destino. A desvantagem deste tipo de rede, é em caso
de avaria de um PC, este pode afectar o funcionamento de toda a rede.
Topologia em barramento – Nesta topologia todos os dispositivos estão ligados
directamente a um barramento. Os dados são transmitidos para este, mas apenas um dispositivo
recebe os dados, porque junto com estes vai o endereço de destino [6]. Em caso de avaria no
cabo de comunicação e toda a rede desliga-se.
CAPÍTULO 2 – REDES DE COMUNICAÇÃO ______________________________________________________________________________________________
12
Ao seleccionar uma rede de comunicação, é necessário saber qual a aplicação e qual a
exigência que será feita à rede. Deste modo, de acordo com o modelo da pirâmide CIM,
seleccionaram-se e estudaram-se algumas redes, aplicadas em níveis diferentes da pirâmide.
Deste modo, seleccionou-se a rede Ethernet-TCP/IP, que pode ser implementada do nível de
controlo até ao nível de gestão; PROFIBUS, podendo ser aplicado do nível de actuadores e
sensores até ao nível de processo; AS-Interface, tem aplicação no nível mais baixo do modelo
CIM e por fim DeviceNet, que pode ser aplicado no nível de sensores e actuadores.
Estas redes podem inserir-se, nos vários níveis do modelo CIM, sendo possível identificar
as diferenças tecnológicas entre elas.
Ao longo deste capítulo, para cada uma das redes, são indicadas as camadas do modelo
OSI, que ela utiliza. Dentro de cada camada são apresentadas as características e funções que
cada camada possui, para cada uma das redes.
Para a organização e a estrutura das redes (meio físico, método de transmissão,
configuração de parâmetros, entre outros), é utilizado o modelo OSI, sendo importante para
estruturar e organizar uma rede, dividindo-a em vários níveis, onde cada um, é responsável pela
execução de uma tarefa específica. De seguida, é apresentado em detalhe o modelo OSI.
2.1. Modelo OSI
Durante a década de 80, um grupo chamado Open Systems Interconect, ou
simplesmente OSI, criou uma organização lógica para as diversas partes que formam uma rede.
Actualmente este modelo não é aplicado na sua íntegra, mas é um modelo para explicar como
deve ser um funcionamento de uma rede. Na Figura 5, é representado o modelo OSI (Open
Systems Interconection model), com as respectivas camadas [7], [6].
CAPÍTULO 2 – REDES DE COMUNICAÇÃO ______________________________________________________________________________________________
13
Figura 5 – Modelo OSI
Para uma melhor compreensão sobre o modelo OSI, apresenta-se uma explicação sobre cada
camada [7],[8]:
1. Meio físico É a camada mais baixa do modelo OSI, suportando as conexões feitas a
múltiplos dispositivos, suportando as comunicações Half-duplex e Full-
duplex. Esta camada define as condições físicas das ligações, desde ao tipo
de cabo utilizado, gestão dos sinais eléctricos gerados para a transmissão de
dados.
2. Ligação de dados A camada de ligação de dados detecta e pode corrigir erros que ocorrem
durante a transmissão feita pela camada física. Para uma comunicação onde
a transmissão é síncrona (fluxo de dados controlado por um sinal de relógio,
dentro do dispositivo), esta camada permite, a detecção e correcção de erros,
ocorridos na transmissão. Mas caso a transmissão de dados seja assíncrona
(ausência do sinal de relógio), esta camada, apenas detecta os erros, e as
camadas superiores ficam responsáveis pela sua correcção.
3. Rede A camada de rede tem como função, decidir qual o caminho físico, que
os dados devem ter, controlando as comunicações, estabelecendo ou
desactivando uma comunicação.
4. Transporte A camada de transporte é responsável pela transmissão de dados,
controlando o fluxo de dados, corrigindo o envio, caso ocorra algum tipo de
erro na comunicação, garantindo deste modo, o sucesso do envio dos dados.
CAPÍTULO 2 – REDES DE COMUNICAÇÃO ______________________________________________________________________________________________
14
5. Sessão Esta camada faz a gestão da comunicação, sendo dependente da camada
abaixo desta (Transporte). Quando é estabelecido a comunicação de dois
processos de dispositivos diferentes, por exemplo dois PCs, é estabelecida
uma sessão. Essa sessão é controlada por esta camada, dando o início e o fim
da comunicação.
6. Apresentação A camada de apresentação do modelo OSI, é responsável pelo formato
dos dados, podendo converter os dados para formatos diferentes do seu
estado de origem. Deste modo, pode ser estabelecida uma ligação entre dois
dispositivos que usam dados com formatos diferentes.
7. Aplicação Esta camada é a camada mais alta no modelo OSI. Contém entidades
responsáveis pela gestão e controlo de recursos, sendo responsável pela
activação da transmissão e comunicação de dados.
2.2. Ethernet – TCP/IP
A maioria das redes existentes utiliza a tecnologia Ethernet. Esta foi criada na década de
70 por Bob Metcalfe da Xerox [8], com o intuito de conectar vários postos de trabalho. O
aparecimento desta nova tecnologia na altura, permitiu comunicações com uma maior
velocidade de transmissão (3Mbps).
O custo para a implementação deste tipo de rede é relativamente baixo, sendo um
sistema flexível, pois pode ser aplicado para diversas situações, como rede local, ou rede
industrial. É uma rede bastante conhecida, concedendo grandes velocidades de comunicação,
podendo ir até 1Gbps. É também possibilitado o acesso remoto a esta, sendo possível a partilha
de dados e acesso a dispositivos.
Os PLCs começam a vir incorporados com componentes que possibilitam o acesso
através de Ethernet TCP/IP.
CAPÍTULO 2 – REDES DE COMUNICAÇÃO ______________________________________________________________________________________________
15
2.2.1. Camadas de Ethernet – TCP/IP
Tendo como base o modelo OSI, este tipo de rede não implementa todas as camadas aí
referenciadas. Na Figura 6, são apresentadas as camadas implementadas nesta rede [9].
Figura 6 – Modelo OSI para TCP/IP
De seguida, apresenta-se uma descrição detalhada de cada camada usada neste tipo de redes.
2.2.2. Meio físico
Para a transmissão de dados numa rede Ethernet, existem várias possibilidades, na
selecção do tipo de cabo utilizado. Na generalidade, a Ethernet funciona a uma velocidade de
10Mbps, e os seus tipos de cabos utilizados são: Cabo coaxial fino, cabo coaxial grosso e par
trançado, como é apresentado na Figura 7 [18],[19], [20].
Figura 7 – Cabo coaxial grosso, fino e par trançado
CAPÍTULO 2 – REDES DE COMUNICAÇÃO ______________________________________________________________________________________________
16
A evolução tecnológica dos dispositivos permitiu o aumento das velocidades de
transmissão para 100Mbps e para 1Gbps. Para velocidades de 100Mbps, os meios físicos para
transmissão são: cabo coaxial fino, par trançado e fibra óptica. Estes mesmos meios também são
usados para a velocidade de transmissão de 1Gbps [8].
2.2.3. Ligação de dados
Nesta camada é utilizado o protocolo MAC (Media Acess Control), sendo o endereço
físico do dispositivo, de 48 bits. Cada dispositivo de rede, possui um endereço, servindo de
referência para troca de dados entre várias estações.
Existem vários modos de transmissão: Simplex, Half-Duplex e o Full-Duplex. Nas
transmissões do tipo Simplex, apenas um dispositivo transmite, significando que esta é feita
unilateralmente. Nas transmissões do tipo Half-Duplex, cada posto pode transmitir ou receber
informações, não acontecendo transmissões simultâneas. Por fim existe a transmissão do tipo
Full-Duplex, onde cada dispositivo transmite e / ou recebe informações. Podendo existir
transmissões simultâneas. A Figura 8 ilustra os três exemplos dos vários tipos de transmissão de
informações [6].
Figura 8 – Tipos de transmissão
Em Half-Duplex e Full-Duplex, é utilizado o CSMA/CD (Carrier Sense Multiple Acess
/ Collision Detection), que garante, que apenas um posto de trabalho está a enviar dados,
ocupando deste modo a linha de comunicação. O Carrier Sense significa que cada dispositivo
escuta antes de transmitir dados para a linha. Caso exista já uma transmissão a decorrer este
aguarda até que a linha esteja desocupada. Multiple Acess significa que mais do que um posto
CAPÍTULO 2 – REDES DE COMUNICAÇÃO ______________________________________________________________________________________________
17
pode escutar e transmitir dados pela linha. Collision Detection significa que, quando ocorrem
acidentalmente transmissões em simultâneo na linha, os postos de trabalho são capazes de
detectar esse erro.
Numa rede Ethernet podem ocorrer colisões. Numa rede de grandes dimensões com
vários postos de trabalho a transmitir, o número de colisões pode chegar a níveis elevados, pois
como estão muitos dispositivos na mesma rede, a probabilidade de ocorrer colisões pode ser
elevada. Para identificação dos dispositivos de uma rede Ethernet, todos eles possuem endereços
próprios, que são dados pelos construtores do equipamento, sendo o endereço físico deste
dispositivo electrónico, com um tamanho de seis bytes.
2.2.3.1. Estrutura de segmento Ethernet
A Ethernet possui uma estrutura de segmento própria com a versatilidade de serem
incluídos, outros segmentos de dados provenientes de camadas acima. Na Figura 9 encontra-se
representada a estrutura de segmento de dados da Ethernet, sendo a configuração de cada um
dos parâmetros[9] :
1. Preâmbulo
Indica o início da transmissão do segmento de dados
2. Endereço destino
Indicação do endereço físico do destino
3. Endereço origem
Indicação do endereço físico da origem
4. Tamanho
Tamanhos dos dados
5. Dados
Dados provenientes dos níveis acima
6. FCS
Verificação de erros durante a comunicação
CAPÍTULO 2 – REDES DE COMUNICAÇÃO ______________________________________________________________________________________________
18
Preambulo Endereço destino Endereço origem Tamanho Dados FCS
Figura 9 – Estrutura genérica Ethernet
Como forma elucidativa desta estrutura é apresentado de seguida um exemplo de configuração
da estrutura genérica da Ethernet.
2.2.4. Rede
Na camada 3 do modelo OSI, situa-se o IP (Internet Protocol). É um protocolo cuja
funcionalidade se aproxima da camada de rede nível três do modelo OSI, usado pelo nível
superior (transporte), onde a sua tarefa e funcionalidades são independentes das camadas
inferiores.
A tarefa do IP é apenas encontrar um caminho que faça com que os dados a transferir
cheguem ao receptor. Para tal é necessário saber qual o endereço final para ser enviado o
segmento de dados. A estrutura de configuração do IP está representada na Figura 10, [9].
Figura 10 – Estrutura genérica do IP [9]
De seguida, detalha-se cada parâmetro da estrutura do segmento IP, [9]:
1. Versão – Contém a versão do protocolo IP
2. Tamanho cabeçalho – É indicado o tamanho do cabeçalho
CAPÍTULO 2 – REDES DE COMUNICAÇÃO ______________________________________________________________________________________________
19
3. Tipo serviço – Especifica o tipo de serviço, isto é, indica qual o tipo de prioridade, e
quais os valores do tipo de serviço, minimizar atrasos, por exemplo.
4. Tamanho total – Indica o tamanho de todo o segmento com o cabeçalho e os dados
incluídos
5. Identificação – Número único enviado pelo emissor para ajudar na reestruturação do
segmento no receptor
6. Flags – Contem flags de controlo, permitindo ou não a fragmentação do
segmento de dados (DF), e o aviso de ser o último fragmento a ser
enviado ou caso ainda haja outro (MF).
7. Fragment offset – Serve para ajudar na reestruturação do segmento de dados
8. TTL – Este campo especifica o tempo, em segundos, que o segmento de dados
tem para chegar ao destino
9. Protocolo – Indicação do tipo de protocolo utilizado na camada superior
10. Checksum – Verificação de erros durante o envio de dados
11. IP fonte – Indicação do endereço IP do dispositivo que envia os dados
12. IP destino – Indicação do endereço IP do destinatário que irá receber os dados
13. IP opções – Opções das variações do tamanho do segmento dependendo do primeiro
byte
14. Dados – Dados a enviar que são passados para o protocolo da camada acima
CAPÍTULO 2 – REDES DE COMUNICAÇÃO ______________________________________________________________________________________________
20
2.2.5. Transporte
Na camada de transporte situa-se o protocolo TCP (Transmission Control Protocol).
Neste protocolo a conexão é estabelecida entre dois pontos, para a transferência de dados. Este
permite a recuperação de dados perdidos durante a comunicação e também a eliminação de
dados duplicados. À medida que os dados são recebidos pelo receptor é enviada uma mensagem
ao emissor de que a recepção do dado foi bem concebida.
Ao iniciar uma ligação é enviado um sinal do emissor (SYN) para o receptor, ao que
este responde com uma confirmação (SYN/ACK). Com a recepção do SYN/ACK, o emissor,
envia uma confirmação da recepção (ACK).
Deste modo, a transferência de dados pode ser iniciada pelo emissor. Na Figura 11, é
apresentada a conexão de dois dispositivos para início de uma transferência de dados, [9].
Figura 11 – Inicio de uma conexão TCP
Nos segmentos destinados a transferência de dados é indicado ao receptor que os dados
serão enviados (PSH), e que deve passá-los para a próxima camada, neste caso a aplicação.
Após o final de transmissão dos dados, o emissor indica ao receptor que esta terminou (FIN), à
qual o receptor confirma com o envio de um ACK, terminando assim a comunicação entre os
dois dispositivos. Na Figura 12 é apresentado um diagrama de como é feito o estabelecimento
de transmissão de dados e o seu término.
CAPÍTULO 2 – REDES DE COMUNICAÇÃO ______________________________________________________________________________________________
21
Figura 12 – Transmissão de dados TCP
Caso seja ultrapassado o limite de tempo de conexão durante a comunicação entre o
emissor e o receptor, o emissor envia uma indicação (RST) de que a conexão vai ser
reinicializada. Esta reinicialização de envio dos dados pode ser causada por várias razões, desde
a perda de acknowledgments em resposta a recepção de dados, ou um reenvio de um
acknowledgment, que foi recebido pelo emissor após o tempo de espera da resposta de receptor.
2.2.5.1. Estrutura do segmento TCP
Para entender melhor o funcionamento do TCP, é apresentado na Figura 13, a estrutura
do segmento de dados desta camada, sendo feita uma descrição detalhada de cada parâmetro,
[9].
1. Porta de origem / destino – É indicado o número da porta TCP de origem e destino
2. Número de sequência – Ordem do primeiro octeto de dados no segmento (se SYN=1,
este número é o initial sequence number, ISN)
3. Número de Ack (32 bits) – O número de ordem do octeto seguinte na sequência que a
entidade TCP espera receber
CAPÍTULO 2 – REDES DE COMUNICAÇÃO ______________________________________________________________________________________________
22
4. Comprimento cabeçalho (4 bits) – Número de palavras de 32 bits no cabeçalho
5. Flags – Indicações específicas
6. Janela – Número de octetos em trânsito sem confirmações (controlo de
fluxo)
7. Soma de controlo (16 bits) – Soma para a detecção de erros
8. Apontador de urgência (16 bits) – Adicionado ao número de sequência dá o número de sequência
do último octeto de dados urgentes
9. Opções – Especifica características opcionais
De seguida, é apresentado o significado das Flags utilizadas no TCP, indicando as suas
funcionalidades, [9]:
1. URG – Indicação no caso do apontador de urgência ser valido
2. ACK – Indica se o número de sequência de confirmação é valido
3. PSH – O receptor deve passar imediatamente os dados para a camada de
aplicação
4. RST – Indica que a conexão TCP foi reinicializada
5. SYN – Indica que os números de sequência devem ser sincronizados para se
iniciar uma conexão
6. FIN – Indica que o emissor terminou o envio de dados
CAPÍTULO 2 – REDES DE COMUNICAÇÃO ______________________________________________________________________________________________
23
Figura 13 – Estrutura genérica do TCP [9]
2.2.6. Estrutura final do segmento dados
A camada de aplicação é responsável por guardar a informação do utilizador. Os dados
gerados por esta aplicação são então transferidos para a camada inferior, e consequentemente
para as outras camadas. Cada uma delas vai colocar informação extra no início do segmento de
dados a transmitir, de modo a poder ser interpretado pela camada do sistema de destino. A
estrutura final do segmento de dados encontra-se representada na Figura 14.
Figura 14 – Acoplamento das estruturas de segmento dados dos níveis OSI
2.3. PROFIBUS
O PROFIBUS (Process FieldBus), pode ser implementado numa grande variedade de
processos automáticos, desde a utilização de sensores, actuadores, e PLCs. Sendo um sistema
aberto, é possível utilizar diversos equipamentos, provenientes de diversos fabricantes, sem
necessidade de fazer qualquer adaptação extra. O Profibus possui três tipos de versões, sendo
denominadas: PROFIBUS FMS, PROFIBUS DP, PROFIBUS PA [10].
CAPÍTULO 2 – REDES DE COMUNICAÇÃO ______________________________________________________________________________________________
24
O uso do PROFIBUS e seus respectivos dispositivos para controlo de processos, fez
com que a complexidade das instalações da parte de comando, diminuísse visto que, este tipo de
rede permite o uso de apenas um cabo para interligar todos os componentes. Isto fez com que
houvesse uma redução no custo da implementação deste sistema. Deste modo, a localização de
possíveis avarias ou falhas, torna-se mais fácil.
2.3.1. Camadas do PROFIBUS
O protocolo do PROFIBUS é baseado no modelo OSI (Open System Interconnection),
sistema no qual existem sete camadas. O PROFIBUS, é apenas definido por três camadas, a
camada 1 (meio físico), camada 2 (ligação de dados) e a camada 7 (aplicação). As duas
primeiras camadas são utilizadas pelo PROFIBUS DP e PA, mas a sétima camada é apenas
utilizada pelo PROFIBUS FMS. Na Figura 15 [10], são apresentadas as camadas do
PROFIBUS.
Figura 15 – Modelo OSI de PROFIBUS
2.3.2. Meio físico
Sendo esta a primeira camada, o meio de transmissão utilizado no PROFIBUS é o RS-
485, utilizando um par trançado. Este tipo de meio permite flexibilidade, onde se torna possível
adicionar ou retirar dispositivos, sem influenciar a configuração e o seu funcionamento. A
velocidade de transmissão (Baudrate) é definida pelo comprimento do cabo onde estão ligados
todos os dispositivos. A Tabela 1 apresenta as velocidades e comunicações possíveis em
PROFIBUS [11].
CAPÍTULO 2 – REDES DE COMUNICAÇÃO ______________________________________________________________________________________________
25
Tabela 1 – Tabela de velocidade transmissão e comprimento
Transmissão (Kbit/s) 9,6 19,2 93,75 187,5 500 1500 12000
Distância (m) 1200 1200 1200 600 200 200 100
Com a excepção das velocidades entre 9,6 a 93,75Kbit/s, quanto maior for a distância
do último dispositivo que se encontra no barramento, menor é a velocidade de transmissão entre
todo o sistema. O PROFIBUS faz a distinção entre o dispositivo master e os slaves. Os masters
são responsáveis pela gestão da comunicação entre os restantes dispositivos (slaves). Estes
podem ser PLCs, sensores ou actuadores.
2.3.3. Ligação de dados
Na segunda camada do PROFIBUS é implementado o Bus Access Protocol, onde está
incluído neste protocolo a segurança dos dados e o manuseamento da transmissão.
O Medium Acess Control (MAC) especifica a permissão de um determinado
dispositivo, para o envio de dados. Perante a possibilidade de existirem vários masters no
mesmo BUS, é utilizado o token (testemunho). Este, é passado entre masters, atribuindo um
determinado período de tempo para comunicação ao master que o possuir. Na Figura 16 é
representada a passagem cíclica do token e o acesso aos slaves [10].
CAPÍTULO 2 – REDES DE COMUNICAÇÃO ______________________________________________________________________________________________
26
Figura 16 – Passagem do token [10]
Quando o token é passado para o próximo master, este fica com os privilégios de aceder
aos slaves, por um tempo limitado. Quando esse tempo é ultrapassado, o token passa para o
próximo master. No exemplo da Figura 16, estão indicados a existência de três masters,
passando o token entre eles, tendo acesso aos slaves.
2.3.4. Configurações do PROFIBUS
A configuração da rede PROFIBUS, apresenta várias configurações possíveis,
nomeadamente [10]:
O PROFIBUS FMS: O termo FMS, significa Fieldbus Message Specification,
apresentando soluções, para extensas e complexas tarefas de comunicação entre dispositivos
mais complexos. Este tipo de rede pode ser implementado até aos níveis de gestão de dados. No
entanto, como o uso crescente do TCP/IP, cada vez mais implementado em ambiente industrial,
o PROFIBUS FMS tem vindo a ser de cada vez menos utilizado.
PROFIBUS DP: O termo DP, significa Decentralized Periphery. Este é um perfil de
comunicação optimizado para maiores velocidades de transmissão e de baixo custo de
implementação. Este perfil foi especialmente desenvolvido para comunicações entre
dispositivos de I/O (Input / Output) e sistemas de controlo em automação.
PROFIBUS PA: O termo PA, significa de Process Automation. Este tipo de perfil,
permite a ligação de sensores e actuadores a uma tecnologia de dois fios, acordando com o
standard IEC 1158-2.
CAPÍTULO 2 – REDES DE COMUNICAÇÃO ______________________________________________________________________________________________
27
Tanto o PROFIBUS DP e o PROFIBUS FMS, utilizam o mesmo tipo de tecnologia de
transmissão. Consequentemente, ambas as versões podem operar simultaneamente no mesmo
barramento. No entanto, os dispositivos com domínio em FMS, não podem ser controlados
pelos dispositivos do domínio DP, e o mesmo acontece em situação contrária.
No PROFIBUS é feita a distinção entre os masters e os slaves. O dispositivo activo
numa rede de PROFIBUS é o master, sendo ele a enviar pedidos para os dispositivos slaves. No
PROFIBUS DP existem vários tipos de classes de masters, o DPM1, e o DPM2 [10]:
PROFIBUS DP Class 1 Master (DPM1): Dispositivo central, que controla trocas de
informação (ex: PLC).
PROFIBUS DP class 2 Master (DPM2): Dispositivos configuráveis, podendo ter
várias aplicações, como monitorização ou operação, (ex: Consola).
Na Figura 17, é apresentada uma topologia em PROFIBUS DP e PROFIBUS PA.
Figura 17 – Topologia PROFIBUS DP e PROFIBUS PA [21]
No protocolo PROFIBUS existem várias extensões, localizadas no PROFIBUS DP,
onde a versão dessa extensão denomina-se por PROFIBUS DP-Vx.
Na extensão PROFIBUS DP-V1 é definida uma mensagem acíclica entre o master e o
slave, com esta extensão. Estas mensagens permitem a troca de configurações de parâmetros,
como diagnósticos e informações de aviso durante a aquisição de dados. Os serviços desta
extensão, são designados por MSACn services (Message – Slave Acyclic, Class n), onde o n
designa a class do master, sendo de classe um ou de classe dois (DPM1, DPM2)[10].
CAPÍTULO 2 – REDES DE COMUNICAÇÃO ______________________________________________________________________________________________
28
As funções de diagnóstico definidas no PROFIBUS DP permitem a indicação de erros
nos slaves. As mensagens são enviadas através do BUS para o master. Existem três tipos de
mensagens:
1. Informação do estado de todos os dispositivos
2. Indicação de erro num dispositivo específico (ex: módulo de saída de oito bits)
3. Indicação de erro numa entrada ou saída de um dispositivo (ex: curto circuito numa
saída)
O processo de configuração é normalmente efectuado por um programa específico para a
comunicação PROFIBUS. No caso da OMRON e a título de exemplo a configuração é
efectuada utilizando o programa CX – PROFIBUS. Para a configuração é necessário configurar
os ficheiros específicos, definindo todos os parâmetros para cada dispositivo da rede. Existem
dois tipos de configuração [10]:
1. Configuração baseada em FDT/DTM
2. Configuração baseada em GSD
O conceito do FDT/DTM distingue os interfaces entre os sistemas denominados Field Device
Tools (FDT), e a especificação do dispositivo chamado por Device Type Manager (DTM). O
FDT/DTM separa a funcionalidade dependente do dispositivo da aplicação. Como tal,
proporciona a separação do interface com a configuração, monitorização do dispositivo. Com
este novo conceito, a tecnologia FDT/DTM, não é limitada às aplicações PROFIBUS [10],
sendo aplicada a qualquer tipo de rede possa ser configurada, desde que haja disponibilidade
deste tipo de tecnologia.
Ora, a FDT facilita a configuração de todos os dispositivos da rede e dos seus
parâmetros. As funcionalidades dos dispositivos estão concentradas no DTM, sendo fornecidos
pelos fabricantes. O DTM pode ser comparado como um driver de uma impressora.
A tecnologia de configuração mais comum, é baseada no GSD files (General Slave
Data File). Este ficheiro é um ficheiro de texto, contendo as características e as opções de
configuração dos dispositivos. O ficheiro de cada dispositivo é carregado para o configurador e
descarregado para o master.
A linguagem utilizada nos ficheiros GSD é indicada pela última letra do nome do
ficheiro, havendo várias alternativas: Portuguese GSP; German GSG; English GSE,
entre outras. Estes ficheiros são preparados individualmente para cada dispositivo de cada
fabricante. Alguns parâmetros são obrigatórios, outros são parâmetros por defeito e outros são
opcionais. Estes ficheiros são divididos em três partes:
CAPÍTULO 2 – REDES DE COMUNICAÇÃO ______________________________________________________________________________________________
29
1. Especificações genéricas: Possuem as características do fabricante, o nome e a versão do dispositivo e do programa a utilizar, o tipo de dispositivo e o número de identificação. O
protocolo e o baudrate também são especificados.
2. Especificações do master: parâmetros apenas para os masters, como por exemplo, o tamanho máximo da memória.
3. Especificação do slave: contem todas as características dos slaves, desde a especificação de entradas e saídas, ou o tempo mínimo para ciclos de leitura das entradas e saídas.
2.4. AS-I (Actuator Sensor - Interface)
A associação AS-Internacional foi fundada em 1991, sendo um agregado de fabricantes
dos sistemas de AS-Interface. Com esta nova associação nasceu um compromisso de criação de
dispositivos capaz de interligar a outros dispositivos. É assim um sistema aberto para todas as
marcas utilizadoras deste sistema, sem limitações de compatibilidade [11].
Com a implementação do AS-Interface é reduzido o custo de implementação, pois é um
sistema fácil de montar, com apenas um fio de dois condutores que interliga todos os
dispositivos. Deste modo, oferece uma maior flexibilidade ao sistema, visto que, uma possível
expansão ao sistema torna-se bastante simples.
Sendo um sistema aberto, é possível interligar dispositivos de fabricantes diferentes,
fornecendo deste modo, uma vasta área de selecção de dispositivos. Este tipo de rede, é
principalmente aplicado em máquinas, como um sub-sistema de sistemas de barramentos mais
complexos (por exemplo, PROFIBUS).
2.4.1. Camadas do AS-Interface
Em relação ao modelo OSI, o AS-Interface, apenas possui três camadas. Como tal, as
camadas utilizadas neste tipo de rede, são a camada do meio físico, que especifica o meio de
ligação entre os dispositivos, a camada de ligação de dados, que especifica a estrutura de
segmento de dados e como é estabelecida a ligação, e por último, a camada de aplicação, que
especifica os serviços para o utilizador, como é indicado na Figura 18 [12].
CAPÍTULO 2 – REDES DE COMUNICAÇÃO ______________________________________________________________________________________________
30
Figura 18 – Modelo OSI do AS-Interface
2.4.2. Meio de físico
A rede de AS-Interface tem a característica de ser uma rede de montagem e aplicação
fácil e rápida. Para tal, os dispositivos são ligados a um barramento constituído por dois
condutores, como é apresentado na Figura 19.
Figura 19 – Cabos para AS-Interface [22]
O alcance desta rede é de cerca de 100 metros, com acoplamento de 31 slaves,
utilizando a configuração padrão. A velocidade de transmissão de dados é de 167 kbps. A cada
slave podem ser acoplados quatro sensores e quatro actuadores, sendo possível colocar 124
sensores e 124 actuadores em toda a rede. A topologia utilizada por este sistema é uma
topologia em árvore, onde o master, situa-se no centro, e os slaves estão acoplados ao
barramento ligado ao dispositivo central.
CAPÍTULO 2 – REDES DE COMUNICAÇÃO ______________________________________________________________________________________________
31
2.4.3. Ligação de dados
Para haver uma interligação de dados, o sistema AS-Interface possui um master, que
envia mensagens para os slaves, e estes respondem com um tempo de ciclo no máximo de 5 ms
(milisegundos).
Para além de saídas digitais, é possível adicionar à rede, sensores digitais mas vai
afectar o tempo de leituras dos sensores, pois é lido em cada ciclo 4 bits. O master que comanda
as mensagens, e os restantes dispositivos, podem ser de fabricantes diferentes, uma vez que se
trata de um padrão aberto.
O ciclo de envio de leituras pelo master até à recepção de dados é feito em quatro
etapas: Pedido do master, pausa do master, resposta do escravo e pausa do escravo. A Tabela 2
[11],[12], indica a estrutura do segmento de dados a enviar para o barramento onde estão
ligados os slaves.
Tabela 2 – Trama AS-I Pedido do Master Resposta do Slave
0 SB A4 A3 A2 A1 A0 I4 I3 I2 I1 I0 PB 1 0 I3 I2 I1 I0 PB 1
ST EB ST EB
De seguida irá ser especificado cada parâmetro do segmento de dados do comando do
sistema AS-Interface:
1. ST - Start bit para indicação do inicio do segmento de dados 2. SB - Este bit é um bit de controlo. Caso seja 0, significa que é um dado ou
parâmetro, e, caso seja 1, significa que é um comando
3. A4 a A0 - Indicação do endereço do slave 4. I4 a I0 - Informação a ser transferida 5. PB - Este bit é o bit de paridade 6. EB - Este bit é o bit de indicação do fim do segmento de dado
Para atribuir endereços aos dispositivos, é necessário utilizar duas mensagens de
comando para o slave. O primeiro comando é denominado por Delete_Operating_Address, que
apaga o endereço respectivo do dispositivo. Isto é essencial pois, para uma nova atribuição de
endereço, é necessário que as configurações estejam todas a zero. Após esse comando é enviado
CAPÍTULO 2 – REDES DE COMUNICAÇÃO ______________________________________________________________________________________________
32
numa segunda mensagem, ou segmento de dados, o respectivo endereço para o slave,
denominado por Assign_Address.
Numa rede deste tipo de sistemas, não só é importante realizar acções ou ler o estado
dos sensores e dos actuadores, mas também é importante saber o estado de todos os
dispositivos, principalmente no caso de falhas ou erros e o tipo de dispositivo que se encontra na
rede. Como tal, o AS-Interface disponibiliza essa possibilidade tendo as funcões ReadID Code e
Read Status.
A função ReadID Code, tem como função ler o código do componente, definido durante
o fabrico deste. Esta identificação não pode ser alterada. A outra funcionalidade disponibilizada
é o Read Status, servindo para ler o estado do dispositivo. A partir desta função, torna-se
possível descobrir a acção que o slave está a realizar. São disponibilizadas 4 tipos de leituras de
estado [11]:
1. Volatile Adress (S0) – Indicação que o slave está a armazenar o endereço destinado para ele
2. Parity error detected (S1) – Indicação de erro no bit de paridade
3. End bit error detected (S2) – Indicação de erro no stop bit
4. Read error non volatile memory (S3)
– Indicação de erro de leitura da memória não volátil
2.5. DeviceNet
A rede de DeviceNet surgiu a partir de uma tecnologia da Allen-Bradley e foi
introduzida no mercado em 1994. É uma rede baseada em CAN, sendo uma rede de baixo custo
e com montagem simples e de pouca complexidade em montagem dos dispositivos. As
especificações do protocolo utilizado são abertas, significando que numa montagem deste tipo
de rede, é possível interligar dispositivos de fabricantes diferentes, fornecendo um leque de
soluções para variadas aplicações, com uma competitividade nos preços dos componentes. O
objectivo do DeviceNet é estabelecer comunicações com os dispositivos de baixo nível, isto é,
actuadores e sensores [11].
O uso do DeviceNet, tem como objectivo a redução dos gastos excessivos, na instalação
de sistemas para controlo de processos. Este tipo de rede é uma solução simples, com uma
CAPÍTULO 2 – REDES DE COMUNICAÇÃO ______________________________________________________________________________________________
33
implementação rápida, reduzindo o tempo de montagem. Este tipo de rede permite uma ligação
de 64 nós onde cada um pode ter actuadores e módulos de entrada e saida acoplados a estes.
2.5.1. Camadas do DeviceNet
Em comparação com o modelo genérico OSI, a rede DeviceNet, não tem implementado
todas as camadas. A Figura 20 representa as camadas que são utilizadas neste tipo de rede [13],
[11].
Figura 20 – Modelo OSI da rede DeviceNet
2.5.2. Meio físico
Uma rede DeviceNet tem a característica de possuir um barramento principal de cabo
DeviceNet grosso, com as respectivas ramificações, com um cabo DeviceNet fino, como é
representado na Figura 21. Os cabos deste sistema são cabos com 2 pares, sendo um para
alimentação (24V), e outro para o estabelecimento de comunicações entre os dispositivos. Este
tipo de rede, permite acoplar 64 dispositivos, contando com o master, e com os slaves.
CAPÍTULO 2 – REDES DE COMUNICAÇÃO _____________________