Mestrado Integrado em Engenharia Electrotécnica e de Computadores Disciplina Automação Ramos Energia e Automação Guião do trabalho prático TP6 Introdução ao Autómato Programável e comparação com o FEUPAutom Armando Jorge Sousa asousa@fe.up.pt José António Faria jfaria@fe.up.pt
1. OBJECTIVOS Este trabalho prático tem os seguintes objectivos: Familiarização com a programação do Autómato Programável (AP) Schneider TSX Micro TSX 3721/2 e seu ambiente de desenvolvimento Comparação de características do AP com o FEUPAutom Familiarização das ligações eléctricas ao AP 2. PREPARAÇÃO É necessário ler cuidadosamente o guião do trabalho prático e o seu anexo. Obs.: No final da aula será necessário enviar ao docente o código produzido. 3. APRESENTAÇÃO DO AUTÓMATO PROGRAMÁVEL 3.1. Introdução Na primeira parte da aula, vai tomar contacto com os autómatos programáveis da família TSX Micro e com o respectivo sistema de desenvolvimento de aplicações, através de um pequeno exemplo de demonstração. Este exemplo, embora muito simples, permitir-lhe-á tomar contacto com as funcionalidades fundamentais destes sistemas, habilitando-o a desenvolver o sistema de controlo da porta automática. Antes da aula, deve consultar a selecção do manual de programação do autómato programável TSX Micro fornecida em Anexo, na qual são introduzidas as instruções que utilizará ao longo do trabalho prático. Na parte final da aula, vai desenvolver o mesmo exmplo no FEUPAutom para poder comparar os dois sistemas. Automação, ramos Energia e Automação 2 / 18
3.2. APs da família TSX Micro A gama TSX Micro da Schneider / Telemecanique é constituída por um conjunto de autómatos modulares (figura 1). Cada autómato, além da fonte de alimentação e do CPU, dispõe de um conjunto de posições (canais) onde podem ser instaladas módulos de entradas ou de saídas, conforme as necessidades de cada aplicação. O endereço das linhas de entrada/saída tem o formato x.y, onde x é o número do canal e y o número da linha dentro desse canal (figura 1). Por exemplo, admitindo que no canal 1 foi colocado um módulo de entradas e no canal 5 um módulo de saídas: I1.4 designa a linha 4 do canal 1; I5.2 designa a linha 2 do canal 5. Esta organização modular tem diversas vantagens mas principalmente permite adequar o tipo e a quantidade de entradas e saídas ao projecto que se pretende controlar mantendo custos mínimos e sempre sem mudar o CPU do AP. CPU + Esta numeração de entradas e saídas já era utilizada no FEUPAutom. fonte alimentação canal 1 canal 2 Figura 1 canal 3 canal 4 canal 5 canal 6 3.3. Sistema de desenvolvimento do AP Neste ponto são introduzidas as funcionalidades do sistema de desenvolvimento do autómato programável que permitem: Editar os programas; Inicializar os parâmetros dos temporizadores (modo, valor de pré-selecção, base de tempo) e contadores (valor de pré-selecção); Definir símbolos (isto é, nomes lógicos associados a variáveis recursos do autómato como linhas de entrada/saída, temporizadores, contadores, etc.); Visualizar, no terminal do PC, o estado de variáveis internas do autómato programável; Transferir programas entre o autómato e o PC (nos dois sentidos); Controlar a execução do programa do autómato (start = run, stop). Para tomar contacto com estas funcionalidades, às quais recorrerá ao longo do trabalho prático, começará por desenvolver um primeiro exemplo de aplicação. De seguida, desenvolverá outros programas de aplicação que, embora elementares, lhe serão úteis em trabalhos futuros. Automação, ramos Energia e Automação 3 / 18
3.4. Ligações eléctricas ao AP - Entradas Comece por alimentar devidamente a carta de Entradas/Saídas que vai utilizar no seu trabalho ligando a alimentação (+24V), fio vermelho, no terminal 17 e a alimentação negativa, fio preto, no terminal 18 os fios referidos são os mostrados na figura 1 e o esquema dos terminais do autómato está na figura 2. Seguidamente ligue um interruptor entre a alimentação (+24 Volts) e a linha de entrada I2, conforme representado na figura 3 note que as bananas encaixam umas nas outras. terminal nº 3 (I1.2) interruptor de teste terminal nº 17 (24V) Figura 3 Atente na configuração das entradas (não altere nada): 1 3 5 7 9 11 13 15 2 4 6 8 10 12 14 I0 I1 I2 I3 I4 I5 I6 I7 I8 I9 I10 I11 I12 I13 I14 16 I15 +24VDC 17 0VDC 18 19 NC Figura 4 Confirme o funcionamento do interruptor de teste verificando o sinóptico do autómato. 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7 Q8 Q9 Q10 Q11 Figura 5 +24 Vdc Devido à configuração de Sink na carta entradas (ver figuras 2 e 4), ligando +24V ao terminal nº 3, circulará uma corrente reduzida mas não nula na entrada I2 o que fará com que a variável associada, %Ix.2 assuma o valor de True (o x diz respeito ao canal onde a carta foi colocada, exemplo I3.2). +V 0V -V 0 Vdc -24 Vdc Fonte Figura 2 Automação, ramos Energia e Automação 4 / 18
3.5. Ligações eléctricas ao AP Saídas Tal como mostrado na figura 2, a carta DMZ28DR do autómato tem saídas baseadas em relés. Um relé é um aparelho electro-mecânico de controlo que comuta um interruptor quando passa corrente através de uma bobina magnética. A figura 6 mostra o princípio de funcionamento de um relé. À esquerda temos a sua posição de descanso e à direita o seu estado activo. No estado de descanso (corrente nula), temos uma mola mecânica a puxar o contacto móvel para cima, ligando o pino A ao pino C. Algumas vezes o pino C é acessível mas não na carta DMZ28DR que está montada no autómato (mostrada na figura 2). Na figura 5, ao centro, vemos que a passagem de corrente puxa o contacto móvel ligando os pinos A a B. Não há ligação eléctrica entre o circuito de comando XY e o circuito de potência AB, pelo que este componente é interessante para comutar correntes elevadas (que circulariam no circuito de potência AB) com total segurança e utilizando baixas tensões e baixas correntes no circuito de comando XY. C C A A B B 20 Q0 21 23 22 24 Q1 Q2 Q3 X I=0 I>0 Y X Y 25 Figura 6 Fazendo corresponder a figura 6 à figura 2, o pino A poderia corresponder ao pino 20 e o pino B poderia corresponder ao pino 21 e os pinos X e Y são internos ao Autómato. Quando a saída Q0 está activa, por exemplo através de %Q4.0:=True, então Q0 fará com que passe a existir um curto circuito entre os terminais 20 e 21 da carta do autómato. Da mesma forma, quando Q1 estiver ligado, os terminais 22 e 25 estarão curto circuitados; quando Q2 estiver ligado, os terminais 23 e 25 estarão também curto circuitados; quando Q1, Q2 e Q3 estiverem ligados simultaneamente, todos os terminais 22, 23, 24 e 25 estarão curto circuitados entre si (sem qualquer relação eléctrica com os terminais 20 e 21, independentemente do estado de Q0). Utilize o material disponível para fazer ligações numa outra entrada e numa outra saída à sua escolha, que deve utilizar de seguida. Estude possíveis utilizações e conclua acerca das limitações inerentes à montagem da figura 2 para os relés Q1 a Q3, pinos 22 a 25. Automação, ramos Energia e Automação 5 / 18
4. Desenvolvimento AP Schneider e comparação FEUPAutom 4.1 Aplicação elementar para AP Schneider O objectivo deste capítulo do guião é fazer uma aplicação de complexidade elementar para o autómato e assim testar o seu ambiente de desenvolvimento. Programa elementar: %Q4.5 := %I3.3; Este programa com uma única linha de código ST que põe a saída 5 igual à entrada 3. Se necessário, adeqúe os nomes das variáveis aos canais efectivamente utilizados no seu Autómato. Utilize o procedimento descrito no Anexo A para programar o AP Schneider mas execute apenas os pontos a), b), f) e g) que dizem respeito à criação, edição, transferência e execução da aplicação. Teste o funcionamento deste programa elementar observando a saída e ligando e desligando o interruptor que deve acender e apagar o LED ao seu dispor. Confirme ainda no sinóptico do autómato (figura 5). Nota: Este LED que lhe é fornecido já tem uma resistência em série e o conjunto é adequado a funcionar a 24V (mas só dá luz numa das direcções!) Figura 7 Automação, ramos Energia e Automação 6 / 18
4.2 Transporte de aplicação simples do FEUPAutom para AP Schneider Crie no FEUPAutom uma pequena aplicação com as seguintes características: A entrada %I1.2 tenha o nome comando A saída %Q2.4 tenha o nome resposta Sempre que a entrada comando tenha um flanco ascendente, comuta o estado da saída resposta Verifique o correcto funcionamento da aplicação no diagrama temporal e confronteo com a figura 8. Figura 8 Implemente estas mesmas funcionalidades no AP Schneider. Recorra ao anexo A para o ajudar a criar esta aplicação que não necessita de temporizadores pelo que não é necessário executar o ponto d). Teste a aplicação utilizando o interruptor como entrada comando e a saída resposta com o LED que lhe foi fornecido. Teste ainda todas as funcionalidades do ambiente de desenvolvimento do AP incluindo a criação da tabela de símbolos e de uma tabela de animação. Depois de estar conectado ao AP, experimente na tabela de animação forçar a saída resposta a 1 e depois a 0 para compreender estas funcionalidades. Automação, ramos Energia e Automação 7 / 18
4.3 Transporte de aplicação com temporizador FEUPAutom -> Schneider No TP2 desta cadeira foi-lhe pedido no item Programa Livre 4 para criar um programa que ligue uma saída reposta quando uma entrada comando estiver activa um tempo superior a 1 segundo. Uma possível solução para implementar este problema no FEUPAutom é a seguinte: if RE comando then timer.mode:=ton; timer.p:=10; start timer; end_if; resposta := comando and timer.q; Para facilidade de consulta, no anexo B está o resumo das funcionalidades dos timers no AP Schneider. Crie uma aplicação para o AP Schneider que implemente esta funcionalidade. Teste a aplicação com o interruptor. Automação, ramos Energia e Automação 8 / 18
4.4 Comparação de desenvolvimento FEUPAutom e AP Schneider Implementação no AP Schneider Implementação no FEUPAutom Desenvolvimento o algoritmo a implementar Desenvolvimento o algoritmo a implementar Início da sessão de trabalho (incluindo configuração do hardware) Criação da tabela de símbolos Início de um novo projecto Associação de nomes às variáveis utilizadas Parametrização de temporizadores (e eventualmente contadores) Edição do programa Edição do programa (inclui configuração dos temporizadores) Criação da tabela de animação Transferência para o AP, execução e teste do programa Observação da tabela de animação Correcção de erros do programa Execução e teste do programa Debugging: execução ciclo a ciclo, traçados temporais e exame de valores de variáveis Correcção de erros do programa Consulte ainda os anexos D e E para perceber a similaridade do ciclo de funcionamento de cada um dos sistemas. Automação, ramos Energia e Automação 9 / 18
5. Aplicações a desenvolver 5.1 Caderno de encargos 1 obrigatório Construa um programa que inverta o actual estado da saída Qy.4 resposta sempre que a entrada Ix.2 comando estiver continuamente activa durante mais de dois segundos. Exemplo: se a entrada comando estiver continuamente activa, a saída resposta troca de estado a cada 2 segundos. 5.2 Caderno de encargos 2 - opcional Explore adicionalmente os recursos do AP, em particular relativamente aos diversos modos de funcionamento dos temporizadores e contadores. A utilização de contadores está resumida no anexo C. Crie um novo programa que a cada 4 activações da entrada comando active a saída resposta durante 1,5 segundos. Utilize um contador do AP para contar o número de activações e um timporizador do AP para fazer a contagem dos 1,5 segundos mencionados. 5.3 Caderno de encargos 3 opcional Considere um programa que lida com uma entrada (nome da variável entr) e com 3 saídas (sai0, sai1, sai2) Quando o programa arranca, todas as saídas ficam activas Quando se activa entr, sai1 e sai2 passam a inactivas Quando entr esteve activa um tempo menor que 2 segundos, sai0 deve ser activada (esta é uma activação curta ) Quando entrada esteve activa um tempo não menor que 2 segundos, activa-se sai1 Sempre que existirem 3 ou mais activações curtas seguidas de entr, então comute de estado a sai2 Implemente e teste este novo caderno de encargos no AP da Schneider primeiro e depois no FEUPAutom. Mapeie entr em Ix.2 e as saídas no seu respectivo número de Qy(.z). Automação, ramos Energia e Automação 10 / 18
7. Relatório obrigatório do final da aula No final da aula, os alunos devem enviar ao docente, por E-mail, o código fonte ST relativo à implementação do caderno de encargos 1. É Obrigatório o E-Mail respeitar as seguintes regras: O título deve ser [Auto] TP5_1 Tx Gy - Nomes1+Nomes2 O texto do EMail deve conter a turma, o grupo e o nome COMPLETO dos autores do trabalho. Deve-se seguir uma linha em branco O resto do email deve conter o código ST mencionado, com a opção de visualização de símbolos ligada (não endereços mas sim símbolos!) Se tiver completado os cadernos de encargos opcionais, repita o procedimento com novos EMails, com o subject [Auto] TP5_2 e [Auto] TP5_3 Obs: x representa o número da turma, y o número do grupo e Nomes representa o Primeiro e Último nome dos autores do trabalho Bom Trabalho! Automação, ramos Energia e Automação 11 / 18
Anexo A - Desenvolvimento de aplicações no AP Schneider Para proceder à implementação de aplicações no AP Schneider com o programa PL7, deve executar as seguintes operações: a) Início da sessão de trabalho configurar hardware b) Edição do programa c) Criação da tabela de símbolos d) Eventualmente fazer a parametrização de temporizadores e/ou contadores e) Criação da tabela de animação f) Transferência para o AP, execução e teste do programa g) Correcção de erros do programa Esta sequência de operações é detalhada de seguida. a) Para iniciar a sessão de trabalho arranque a sua estação de trabalho e inicie o software de programação Modicon Telemecanique PL7 Junior V3.4 crie um novo ficheiro em File New e especifique o autómato TSX Micro, o processador indicado na etiqueta lateral do autómato, a versão 3.3 (de firmware) e a opção no grafcet Figura 9 Automação, ramos Energia e Automação 12 / 18
de seguida, no application browser, defina a configuração do hardware (verifique qual é o processador do seu autómato e especifique a carta de I/O clickando sobre a respectiva posição na figura), de tal maneira que a figura represente o hardware escolha o canal adequado para a sua carta DMZ28DR. Figura 10 ainda no application browser, seleccione Programs MAST Task Sections Create. Seleccione a linguagem ST atribua um nome à sua escolha à nova tarefa. Figura 11 b) Para editar o programa após introduzir cada sequência de instruções, valide-a com Edit Confirm ou premindo ctrl+w ou utilizando o botão observe as mensagens de erro apresentados na barra de estado do programa faça as indentações com a tecla TAB grave frequentemente o projecto com File Save Automação, ramos Energia e Automação 13 / 18
c) Para criar a tabela de símbolos em Application Browser Variables, defina todos os símbolos que a aplicação utiliza (ver os mapeamentos dos símbolos na tabela de animação da figura 5) para a atribuição de símbolos a linhas de entrada/saída seleccione I/O e o respectivo endereço do módulo na edição do programa pode alternar entre as vista de símbolos e endereços no menu View -> Simbols e View -> Addresses para a atribuição de símbolos a temporizadores seleccione Predefined FB e, depois, TM d) Se o programa utilizar Temporizadores e ou Contadores, é necessário parametriza-los e para tal: também em Application / Variables, active a opção Parameters de seguida, defina os parâmetros dos temporizadores e contadores que vai utilizar no seu programa. Note que, na parte inferior da figura 5, pode-se ver a janela de configuração de temporizadores com os valores respectivos. e) Para criar a tabela de animação em Application Animation, complete a Tabela de animação com as variáveis cujo valor pretende visualizar durante a execução do programa Quando existir conexão com o PLC (modo On-Line) esta tabela reflectirá os valores das variáveis dentro do PLC Automação, ramos Energia e Automação 14 / 18
f) Para transferir o programa para o autómato transfira o programa do terminal de programação, isto é, da sua estação de trabalho para o autómato em PLC Transfer program estabeleça a ligação entre o terminal de programação e o autómato em PLC Connect (repare na alteração na barra de estados situada ao fundo do ecran) g) Para executar o programa inicie a execução do programa no autómato em PLC / Run (repare na alteração na barra de estados situada ao fundo do ecran e no sinóptico do autómato) visualize o estado das variáveis na tabela de animação e no editor h) Para alterar o programa interrompa a execução do programa do PLC (Stop) e desligue o PLC da estação de trabalho (Disconnect) efectue as alterações ao programa transfira o novo programa para o PLC (Transfer Program) reestabeleça a ligação entre a estação de trabalho (Connect) reinicie a execução do programa do PLC (Run) para ver os nomes das variáveis seleccione View Symbols Automação, ramos Energia e Automação 15 / 18
Anexo B Temporizadores no AP Schneider sob ST Automação, ramos Energia e Automação 16 / 18
Anexo C Contadores no AP Schneider sob ST Nota: O FEUPAutom não implementa contadores Automação, ramos Energia e Automação 17 / 18
Anexo D Ciclo de execução do AP Schneider Anexo E Ciclo de execução do FEUPAutom Process. Interno Execução Script %I %Q Process. Interno (Windows) %I Execução Script %Q Ciclo de execução N Ciclo de execução N+1 Tempo entre ciclos FEUPAutom - Fim dos anexos - Automação, ramos Energia e Automação 18 / 18