Escolar Documentos
Profissional Documentos
Cultura Documentos
CLP 5 Davila
CLP 5 Davila
Sumrio
Controle em Malha-Fechada................................................................................................ 1 Definies ............................................................................................................................ 1 Introduo ............................................................................................................................ 4 Partida de motores Trifsicos: Acionamento por Boto.................................................... 5 Partida / (Estrela/tringulo) de motores Trifsicos ....................................................... 6 Caractersticas bsicas do Controlador Programvel PS4-201 MM1................................. 7 Fluxograma ........................................................................................................................ 11 Passo: Project Manager Criar um novo projeto ............................................................. 12 Editar o Programa do usurio. POU-Editor Program Organisation Unit-Editor.............. 12 Comeando a Programar em Ladder ................................................................................. 13 Declarando as Variveis................................................................................................. 17 Syntax Check ................................................................................................................. 18 Descobrindo o Erro......................................................................................................... 19 Explicao Detalhada do Bloco de Funo MS_TimeRising.............................................. 24 Lgica................................................................................................................................. 27 Algoritmo ............................................................................................................................ 27 Sumrio das Funes IEC 1131-3 e Moeller...................................................................... 28 Referncias Bibliogrficas ..................................................................................................... 32 Exerccios de Fixao............................................................................................................ 33
1. Automao industrial
O objetivo da Automao industrial o de tornar os processos automticos, isto , desenvolver tecnologias para que os trabalhos realizados por homens sejam realizados por mquinas que se movam, regulem e operem por si mesmas.
Controle em Malha-Fechada
Um sistema de controle pode ser representado pelos blocos da figura 1.1.
Processo
Atuao
Medio
Controle
Figura 1.1 - Sistema de Controle
Podemos dizer que a Automao Industrial um conjunto de tcnicas destinadas a tornar automticos vrios processos numa indstria.
Definies
Medio Responsvel pela transformao da grandeza que se deseja controlar num sinal que possa ser manipulado pelo sistema de controle.
Prof. Eng.M.Sc. d'Avila
Atuao Responsvel pela transformao do sinal de sada do controlador no sinal que possa comandar a varivel de entrada do sistema que est sob controle. Processo Operao que evolui progressivamente e que se constitui por uma srie de aes controladas objetivando um particular resultado. Controle Realimentado uma operao que na presena de distrbios , tende a reduzir a diferena entre a sada de um sistema e a entrada de referncia. Controle Automtico
Para realizar o controle dos processos existe o Controlador Lgico Programvel que pode ocupar o bloco de controle da figura x.x.
Processo
Atuao
Medio
O Sr. Armando confuso, no exemplo da figura x.x, est controlando a temperatura da gua para uso em um hotel. Pode-se ver no exemplo os blocos: Processo, Medio, Controlador, Atuao.
Partida / (Estrela/tringulo)
Introduo
A Norma Tcnica Unificada NTU.01, para fornecimento de energia eltrica em tenso secundria a edificaes individuais tem por objetivo orientar os consumidores individuais das reas de concesso da CESP, CPFL e Eletropaulo.
A NTU.01 orienta que: motores trifsicos de gaiola ou de induo com potncia acima 5 (C.V.), devem partir de forma indireta. Um possvel sistema de partida indireta a manobra / (estrela/tringulo). O sistema de manobra / (estrela/tringulo) tem por objetivo reduzir a corrente de partida de motores.. As companhias fornecedoras de energia eltrica fixam valores mximos para a corrente de partida. Se o motor a ser instalado possu uma corrente de partida maior que a fixada necessrio implementar um circuito que minimize a corrente de partida. A partida / normalmente implementada por contatores e um temporizador. Pode-se, no entanto, utilizar um Controlador Lgico Programvel CLP para esta finalidade. A partida / com contatores e temporizador mais econmica que a partida / utilizando um CLP. Evidentemente a utilizao do CLP numa nica partida de motor est limitada aos casos onde o CLP realiza tambm outras funes e existam entradas e sadas disponveis.
Fusvel Geral
Rel Trmico
b1
c
c1
b0
c
d1
c
d1
c2
d1 N
c1
c2
c3
Ligao: 1. Boto de comando b1 aciona o contator estrela c2e o dispositivo de retardamento d1. 2. O contato fechador c2 atua sobre o contator de rede c1, cujo contato fechador opera. 3. O motor entra em funcionamento em estrela.
Comutao: 1. Decorrido o retardamento, o contato abridor d1 opera e o contator estrela c2 desligado. 2. Quando o contato abridor de c2 fecha, entra o contator tringulo c3, pois o contato fechador de c1 j estava fechado quando c1 ligou. 3. O motor funciona, agora, em tringulo.
Interrupo: 1. Acionado o boto b0, interrompe o contator c1. Contato fechador de c1 abre-se em seguida; o contator tringulo e o motor so desligados.
O PLC um dispositivo que permite construir lgicas de automao flexveis de instalao rpida ocupando pequeno espao fsico. um equipamento para tarefas de automao como: Controle Regulao Operao Clculos Posicionamento Medies Comunicao
1 2 3 4 5 6 7 8 9
Entrada para fonte de alimentao Entrada do contador rpido Entrada de interrupo Presilha de fixao Entradas digitais e alimentao das sadas Conector do tipo plug-in Sinalizao de estado das entradas Sinalizao de estado das sadas Conector do tipo plug-in
10 11 12 13
6 sadas digitais, 02 entradas analgicas Interface SUCOnet K Potencimetros Resistncia de final de bus
14 Interface de Programao 15 Montagem em trilho DIN 16 17 Mdulo de expanso de memria Sinalizao de Estado da CPU
Programando com o SUCOSOFT da Moeller Iniciando o SUCOSOFT O arquivo executvel o WORKB.EXE C:\S40\WORKB.EXE
Com um duplo clique no Atalho S40 tem-se acesso barra de ferramentas do Sucosoft Manager Tools.
Code Generation
Project Manager
Topology Configurator
POU-Editor
Fluxograma
Incio
Sintaxe Correta?
S
Problema de Automao
Algoritmo
Testes e Comissionamento
Configurar Topologia
Testes Ok?
S
Declarar Variveis
Executar Programa
Fim
No conceito de hierarquia do Windows temos: rea de Trabalho Computador do Usurio Unidade de Discos Pastas Subpastas Arquivos. A pasta de projeto pmotoret, com suas subpastas e arquivos, ser guardada na unidade de disco "C".
Para dar nome ao projeto necessrio lembrar as regras para nomear arquivos do DOS Disk Operating System. Embora o SUCOSOFT S40 verso 3.01 seja desenvolvida para o ambiente Windows, ele ainda guarda esta restrio do sistema operacional DOS.
Regras para nomear pastas e arquivos: Podem ter at oito caracteres. No so sensveis a maisculas e minsculas. Podem conter apenas letras de A a Z, os nmeros de 0 a 9, e os seguintes caracteres especiais: _ ^ $ ~ ! # % & - { } @ ' ( ). No podem conter espaos, vrgulas, barras invertidas ou pontos (exceto o ponto que separa o nome da extenso. No podem ser idnticos a outro nome de arquivo ou subpastas da mesma pasta.
Procure criar um nome mnemnico que ajude a memria, que facilite a localizao e a lembrana do contedo. Por exemplo: pmotoret o acrograma de Partida Motor Estrela/Triangulo. Acrograma a palavra formada pela reduo de palavras ou expresses a letras ou slabas iniciais.
A rvore de pastas criada automaticamente. A rvore a hierarquia entre pastas e subpastas com seus respectivos arquivos.
Aps a insero da lgica hora de nomear os contatos. Com um clique do boto direito em cima do contato aparecer o menu de atalho
Com um clique em Name Element..., aparecer a caixa um caixa de dilogo, onde iremos nomear o contato. As regras para nomerar um contato so:
Clicando em Ok o nome aparecer acima do contato nomeado. A seguir vamos inserir um contato em srie com o contato Liga. Clicando sobre a linha na frente do contato Liga a linha ficar sombreada conforme figura x.
Clicando com o boto direito do mouse sobre a rea sombreada aparecer o menu de atalho, escolha a opo insert AND. Apertando a barra de espao o contato passar de normalmente aberto para normalmente fechado, outra opo que gera o mesmo resultado clicar com o boto direito do mouse sobre o contato inserido e escolher a opo Negate Spacebar.
Inserindo nova linha do diagrama Ladder: Vamos inserir um bloco de funo definido pelo fabricante para gerar um atraso de tempo entre o instante que se liga o contator estrela e o instante em que se desliga o contator estrela e se ligue o contator triangulo. O SUCOSOFT da Moeller possui blocos de funo padro IEC1131.3 e blocos padro Moeller, que esto disponveis para o programador. O IEC International Electrotechnical Commission, um orgo de padronizao no mbito internacional. Para acessar os blocos de funo: Symbols ou Data Types Manufactuer-Defined Function Blocks... Selecione MS_TimeRising.
Quando o foco estiver na janela do editor de linguagens aparecer Symbols ao invs de Data Types. O procedimento o mesmo. Para mudar o foco basta clicar na barra de ttulos da janela LD/FDB-Editor.
Foco no Editor de Variveis Barra de Ttulos
Escolha o bloco de funo MS_TimeRising na tela de menu, d um nome, para o bloco escolhido, digite em Instance Name Temp, que a abreviao de temporizador. Para finalizar de um clique no boto Accept.
Barra de Rolagem
Nome do Temporizador
Ao clicar no boto Accept o bloco automaticamente inserido no modo LD/FDB ou no modo IL so inseridas as linhas de programao. Para obter informaes sobre os blocos de funo clique em Help List of Manufacturer Function Blocks no sumrio das funes escolha o bloco.
Por exemplo: o temporizador que iremos utilizar na partida estrela/tringulo o nmero 18 do sumrio de nome: MS_TimeRising e a descrio : On-delay timer, milliseconds. Com um clique sobre On-delay timer, milliseconds, temos a explicao detalhada do bloco, em ingls, no est disponvel a ajuda em espanhol. A linha 2 um vez inserida contm o Ms_TimeRising, conforme figura X.
Com um clique do boto esquerdo do mouse sobre a linha de Set esta ficar selecionada, em seguida com um clique do boto direito pode-se determinar qual o operando que ir setar o bloco. No nosso caso ser o contator de rede C_Rede.
Na entrada do Preset Time ao invs de entrar com um valor diretamente iremos faze-lo atravs de uma varivel que iremos chamar de uiTemp. Explicaes sobre o porque deste nome.
Continuao:
Vamos inserir a terceira linha de programao atravs do boto de insero de linha de programao.
Declarando as Variveis
Aps todas as linha inseridas hora de declarar as variveis. Com um clique na barra de ttulos Syntax-Controled Variable Editor o foco ir para esta janela, ou simplemente maximizamos a janela.
Aps digitar Name, selecionar BOOL em Type, atribuir a entrada zero ao boto de liga e acrescentar um comentrio sobre a varivel basta clicar no boto Add.Na continuao declaramos todas as variveis e os blocos utilizados na lgica. Para declarar o bloco de funo clicamos em DataType e selecionamos o bloco MS_TimeRising. Data Types Manufactuer-Defined Function Blocks... Selecione MS_TimeRising.
Em restaurar pode-se retornar para as duas janelas lado a lado. Para salvar a programao na barra de ferramentas clicar em File e em Save As. Aparecer a caixa de dilogo.
Syntax Check
O programa est salvo hora de verificar se ao digitar cometemos erros de sintaxe. Na barra de ferramentas do POU-Editor encontra-se a Opo Syntax Check
No caso de ocorrer um erro a caixa de mensagens aparecer indicando qual o tipo de erro cometido. No caso existe um identificador que no foi declarado.
Descobrindo o Erro
Clicando duas vezes sobre a linha que identifica o erro o foco deslocado para local onde encontra-se o erro.
No caso da figura x.x o mensagem de erro aponta que um identificador no foi declarado. O foco est sobre o contato Deslig. A varivel foi declarada como Desliga. Pode-se corrigir o Tag do contato para Desliga ou a declarao da varivel para Deslig.
2. Passo: Configurar o Hardware. O CLP PS4-201-MM1, permite a expanso de sua capacidade de controle conectando-se em rede com mdulos externo EM4, e mdulos de expanso local LE4. Topology Configurator Configuration New File Name digite PMOTORET Em PLC Type selecione PS4-201MM1 OK Configuration Save Configuration Exit.
Topology Configurator, os arquivos so criados com a extenso .dcf (device configuration) e salvos em kompo.sys. Em salvar "save" o arquivo criado com o nome do projeto no caso pmotoret com a extenso dcf c:pmotoret\kompo.sys\pmotoret.dcf
O arquivo com o programa do usurio salvo com a extenso .poe. salvo na pasta c:\pmotort\kompo.sys\pmotoret.poe
Outra opo para gerar o cdigo fonte no POU-Editor em File Generate Code. Clicando em sim aparecer a tela da figura x.x
Clicando no boto sim onde est o foco temos: O Program Code Generation criou o arquivo pmotor.mak. O pmortor.mak o cdigo fonte que aps ser "link-editado" poder ser executado pelo CLP.
O status indica que o CLP e o Computador no esto logicamente conectados. Clicando no Boto Connect, o computador tentar uma conexo com o CLP.
Clicar no arquivo pmotoret.pcd Transfer PLC. O programa informar que o CLP est rodando um programa, e perguntar se deseja parar de rodar o programa, conforme tela da figura x.x
Clicando em sim o programa ser transferido conforme tela da figura x.x Aps a transferncia o programa perguntar se deseja rodar o novo programa carregado conforme tela da figura x.x
O boto de compare o programa selecionado no computador com o que est na memria do CLP permite saber qual o programa est rodando no CLP.
Start condition, rising edge Reset condition Time interruption Time setpoint in milliseconds Control output Time actual value in milliseconds
(1)
Set Reset
(2)
(3)
(4)
(5)
Hold
THOLD
T
OutputControl
T T + THOLD
Simbologia
A simbologia dos blocos de funo tem por objetivo representar as relaes entre as entradas e as sadas sem que para isto seja necessrio apresentar explicitamente sua lgica interna.
Smbolo de Qualificao de Entrada
As linhas de entrada so colocadas esquerda, exceto quando indicadas por meio de setas nas linhas de acesso.
A entrada Set aciona a contagem de tempo a partir da borda de subida do sinal aplicado. A partir da borda de subida da entrada Set o temporizador conta o tempo T e a sada OutputControl va para um (1), e permanece em um at que o sinal aplicado a entrada Set volte para zero (0).
Set
OutputControl
Metodologia de Programao
A metodologia de programao tem por objetivos: programas legveis, claros, confiveis, eficazes, de rpida depurao com alta produtividade. Procedurais Estruturada Orientadas a Objetos Orientada a Eventos O prof. Edsgar W. Dijkstra da Tecnological University of Eindhoven, Holanda, 1965, introduziu os primeiros conceitos de programao estruturada.
O programa no um fim em si mesmo. O desenvolvedor apresenta um programa como resposta a uma necessidade do usurio (quem o solicita). Para desenvolver um programa no basta escolher uma linguagem e aprender sua sintaxe. A linguagem de programao a etapa final do desenvolvimento de um programa.
O programa ao longo da vida, til quase que seguramente, ter algumas manutenes que iro gerar nova codificao e testes. Os custos com a manuteno em boa parte das vezes chega a equiparar-se com os custos de elaborao.
aconselhvel que o desenvolvedor, ciente deste problema, dedique tempo elaborao do programa e a documentao. Sem responder algumas perguntas ser difcil garantir a qualidade do programa desenvolvido. Como tratar o problema?, quais os mtodos de soluo? Que tipos de dados de entrada e sada esto envolvidos?.
A partir das respostas a estas perguntas possvel elaborar um algoritmo. S ento passa-se a codificao. Aps execuo e depurao o programa est pronto. A documentao, tambm um histrico e, deve ser construda a cada passo desde a abordagem depurao
Deve-se desenvolver um estilo modular de programao. Os mdulos devem interligar-se por uma lgica clara, sempre de olho na semntica (representao do sentido dos enunciados) da linguagem
Elaborao
Esboo Pseudocdigos, Fluxogramas Mtodo de soluo (algoritmo) Input e output dos dados Codificao Execuo, Depurao
Lgica
"A linguagem natural nem sempre clara e precisa, sendo muito comum a ocorrncia de ambigidades que geram dvidas sobre o significado do que se est falando.
Por isso, um dos objetivos da lgica estabelecer uma linguagem formal, onde se pode expressar com clareza, preciso e emitir juzo de verdadeiro e falso para determinadas frases (elemento de comunicao que relaciona palavras entre si de modo a estabelecer uma mensagem com sentido completo".4
A lgica a arte do pensar correto. Deve-se aprender a ordenar o pensamento e express-lo claramente.
Algoritmo
"O algoritmo no a soluo do problema , mas o meio de obt-la".
Definio: "Um algoritmo uma seqencia ordenada finita de operaes bem definidas e eficazes que, quando executadas por um computador, operando sobre dados caracterizando o estado atual do contexto e o estado desejado, sempre termina num determinado perodo de tempo, produzindo uma soluo ou indicando que a soluo no pde ser obtida". 11
Um componente de controle, que contm a metodologia de como aplicar o conhecimento para resolver o problema.
O algoritmo a descrio de um conjunto de aes conhecidas e ordenadas que resultam no objetivo. Existem algoritmos, no dia-a-dia, prontos na nossa mente, que quase sempre podem ser repensados e redimensionados. Quem tem como objetivo, por exemplo, jogar Duke Nukem 3D em rede, precisa certificar-se de algumas coisas e tomar algumas providncias antes de jogar. Verificar se o a rede est acessvel. Onde est a vtima. opps! Quero dizer o parceiro e assim por diante.
Prever todos os obstculos e situaes possveis nem sempre fcil. Existem algoritmos mais complexos e outros mais simples, depende do objetivo (onde se quer chegar) e da clareza de raciocnio do programador.
A clareza de raciocnio do programador pode avaliada pela legibilidade (qualidade de legvel) do algoritmo.
O algoritmo representado numa linguagem adequada (natural, em portugus estruturado ou grfica), permite que o mesmo seja escrito em qualquer linguagem de computador.
Quase sempre existe mais de um algoritmo para resolver um determinado problema. Qual o melhor? O tamanho do programa e o tempo de execuo devem ser levados em considerao para escolha.
Edge detection 1 2 F_TRIG R_TRIG Edge detection, falling edge Edge detection, rising edge
5 6 7 8 9 10 11 12 13 14 15 16
RealTimeClock RTC
Set real-time clock Read real-time clock Set real-time clock (only PS4-200, PS4-300)
TimeConcat Concatenate TIME TimeSplit TODconcat TODsplit Split TIME Concatenate TOD Split TOD
Timing FBs 17 18 19 20 21 22 23 24 25 MS_TimeFalling MS_TimeRising S_TimeFalling Off-delay timer, milliseconds On-delay timer, milliseconds Off-delay timer, seconds
Pulse generator
Off delay
Counter and comparison FBs 26 27 28 29 30 31 32 33 34 _16BitCounter _32BitCounter CounterLE 16-bit up/down counter 32-bit up/down counter (only PS416, PS4-300)
CTD Down counter CTU Up counter CTUD Up and down counter _16Bit_Compare _32Bit_Compare 16-bit comparator 32-bit comparator (only PS416, PS4-300)
35
IncEncoder
Register operations 36 37 38 39 40 41 42 SR_x 1-bit shift register SRB_x 8-bit shift register SRW_x 16-bit shift register
Code converters 43 44 45 46 _16BitBinaryToBCD 16-bit binary/decimal code converter _32BitBinaryToBCD 32-bit binary/decimal code converter (only PS416, PS4-300) BCDTo16BitBinary 16-bit decimal/binary code converter BCDTo32BitBinary 32-bit decimal/binary code converter (only PS416, PS4-300)
TransferArray Copy or initialise array Serialize Deserialize Copy data structure to array Extract data from array Data block comparison or value search (only PS4-200, PS4-300)
BlockCompare
Sequence control 53 SFC_x Sequence control function block (only PS4-200, PS4-300)
String processing 54 55 56 57 COMtoSTR STRtoCOM ADRtoSTR STRtoADR Convert received characters to STRING Copy string to marker area Convert received characters to STRING (only PS4-200, PS4-300) Copy string to marker area (only PS4-200, PS4-300)
Communication 58 300) 59 60 61 62 300) 63 64 65 66 67 68 69 70 71 SendATCommand Send AT command to a modem (only PS416, PS4-300) {bmc DE4netK Frequency inverters DF4 ASi_PARAM Change slave parameters during operation: ASi_PARAM (only PS4-200, PS4-
MI4K Communication function block MI4 (only PS4-200, PS4-300) MI4netK Communication function block MI4 Establish or clear a connection to a DTE via modem (only PS416, PS4-
DialOrHangup
COM Serial communication function block (only PS416) SCO Serial communication function block (only PS4)
PSCO Profibus-FMS communication (only PS4-200, PS4-300) MOD200 SUCOM_A SuconetP Serial communication via MODBUS /IBUS (only PS416) Protocol emulation for direct memory access (only PS416) PROFIBUS-FMS communication (only PS416) InterBus communication (only PS416) Request diagnostics data from PROFIBUS-DP station (only PS416)
SuconetS_BGKS PdpStationDiag
Reading and writing the memory card 72 73 74 75 76 ReadMC WriteMC Read data from memory card Save data on memory card Create and initialise data file (only PS416)
Read data from memory card (only PS4-200, PS4-300) Save data on memory card (only PS4-200, PS4-300)
Alarm FBs 77 78 79 80 81 82 CounterAlarm Counter alarm (only PS4-200, PS4-300) CAlarm EdgeAlarm FAlarm Counter alarm (only PS416) Edge alarm (only PS4-200, PS4-300) Edge alarm (only PS416)
TimerAlarm Timer alarm (only PS4-200, PS4-300) TAlarm Timer alarm (only PS416)
PS416-specific FBs
Prof. Eng.M.Sc. d'Avila
83 84 85 86 87 88 89 90 91 92 93 94 95
PS_ApplicationHalt Stop the user program (only PS416, PS4-300) PS_ClearKOMBit PS_Diagnostic Clear "KOM" diagnostic bit (only PS416) Read diagnostic flags (only PS416, PS4-300)
PS_GetDateAndTime Read real-time clock (only PS416, PS4-300) PS_Message Scan cycle status (only PS416) PS_SwitchPosition CPUDataExchange ColdstartRetention ReadDirect WriteDirect Read switch position (only PS416, PS4-300) Exchange data between PLCs (only PS416) Definition of cold start retentive marker area (only PS416)
Direct reading from digital inputs (only PS416) Direct writing to digital outputs (only PS416) Direct reading from analog inputs (only PS416) Direct writing to analog outputs (only PS416) Direct reading from counter inputs (only PS416)
Referncias Bibliogrficas
MOELLER. Training Guide Sucosoft S 40 Programming Software. Alemanha: 2a ed. Jul. 1998, 140 p.
Exerccios de Fixao
1. Uma comisso formada por Presidente, diretor Administrativo, diretor Financeiro e diretor de Marketing se renem para analisar e aprovar questes relativas a empresa. Uma proposta aprovada se recebe a maioria dos votos ou se o presidente e qualquer outro membro votar a favor.
S=P.(A+F+ M ) +(A.F.M)