Home
Manual de Programação IEC 61131
Contents
1. Entradas do Bloco Funcional Tipo de dado ACTUAL REAL Valor atual da vari vel controlada SET POINT REAL Valor desejado vari vel de comando o REAL Coeficiente de proporcionalidade ganho de unidade da parte P Tempo de a o derivativa ganho de unidade da parte D em segundos por exemplo 0 5 para 500 milissegundos Y MANUAL REAL Define o valor da sa da Y em caso da vari vel MANUAL TRUE Y OFFSET REAL Offset para a vari vel Y manipulada Y MIN Y MAX REAL Limites superior e inferior para a vari vel Y manipulada Se Y exceder estes limites a sa da LIMITS ACTIVE ser definida para TRUE e Y ser mantido neste intervalo determinado Este controle somente funcionar se Y MIN lt Y MAX Ei ea Se TRUE a opera o manual ser ativa ou seja o valor manipulado ser definido por Y_MANUAL Ena is TRUE causa um reset no controlador Durante a reinicializa o Y Y OFFSET Tabela 6 3 Vari veis de Entrada PD 208 6 Bibliotecas Sa das do Bloco Funcional PID Tipo de dado REAL Valor manipulado calculado pelo bloco funcional LIMITS ACTIVE BOOL TRUE indica que Y excedeu os limites determinados Y MIN Y MAX Tabela 6 4 Vari veis de Sa da PD Y OFFSET Y MIN e Y MAX s o usadas para a transforma o da vari vel manipulada em um intervalo determinado MANUAL pode ser usado para ligar e desligar a opera o manual RESET serve para resetar o controlador Na opera o norma
2. Atributo Qualified only Ap s atribuir o pragma attribute qualified only na parte superior de uma lista de vari veis globais estas somente podem ser acessadas usando o nome da vari vel global por exemplo evl g var Isto v lido inclusive para as vari veis do tipo enumera o e pode ser til para evitar incompatibilidade de nome nas vari veis locais Sintaxe raccribute qualafrea only Exemplo Suponha a seguinte GVL lista de vari veis globais com o atributo qualified only jarceribute qualifica only VAR GLOBAL ivar INT END VAR 65 4 Refer ncia de Programa o Em uma POU MainPrg por exemplo esta lista de vari veis locais deve ser chamada com o prefixo GVL GVLiVarr 9 A seguinte chamada incompleta da vari vel resultar em erros de compila o Ivar Atributo Reflection O pragma attribute reflection anexado s assinaturas Por quest es de desempenho este um atributo obrigat rio para POUs que apresentam o atributo caminho de inst ncia Sintaxe attribute reflection Exemplo Veja o exemplo do atributo caminho da inst ncia Instance path Atributo Symbol O pragma attribute symbol define quais vari veis devem ser tratadas no Symbol Configuration o que significa que elas ser o exportadas como s mbolos para uma lista um arquivo XML lt Nome do Projeto gt Device Application xml no diret rio do projeto e tamb m para um arquivo n o vis vel par
3. Cada inst ncia tem o seu pr prio identificador nome da inst ncia e uma estrutura de dados contendo entradas sa das e vari veis Internas Assim como as vari veis as inst ncias s o declaradas local ou globalmente e por meio delas o nome do bloco funcional indicado como o tipo de dado de um identificador Sintaxe para declara o de uma inst ncia de bloco funcional lt identificador gt lt nome do bloco FUNCIONAL gt Exemplo Declara o por exemplo na parte de declara o de um programa da inst ncia INSTANCE do bloco funcional FUB INSTANCES FUB As partes de declara o dos blocos funcionais e programas podem conter declara es de inst ncias no entanto nas fun es as declara es de inst ncias n o s o permitidas Chamando um Bloco Funcional Inst ncias de blocos funcionais devem ser declaradas local ou globalmente A vari vel do bloco funcional pode ser acessada usando se a sintaxe abaixo Sintaxe lt NOME DA INST NCIA gt lt NOME DA VARI VEL gt Considere e Somente as vari veis de entrada e sa da de um bloco funcional podem ser acessadas externamente a uma inst ncia do bloco funcional Suas vari veis Internas n o s o acess veis e O acesso a uma Inst ncia do bloco funcional limitado POU na qual ela foi declarada a menos que tenha sido declarada globalmente e Na chamada da inst ncia os valores desejados podem ser atribu dos aos par metros dos blocos funcionais e As
4. LI ai HAX a0 HAX 40 HAX Er ST varl O resultado 90 Exemplo em ST Varl MAX 30 40 O resultado 40 Varl MAX 40 MAX 90 30 O resultado 90 Exemplo em FBD Operador de sele o IEC fun o m nimo Retorna o menor dos dois valores OUT MIN INO IN1 INO IN1 e OUT podem ser de qualquer tipo de vari vel Exemplo em IL LD a HIH a HIH ai HIH q ST Yarl O resultado 30 Exemplo em ST Varl MIN 90 30 O resultado 30 Varl MIN MIN 90 30 40 O resultado 30 95 LIMIT MUX 4 Refer ncia de Programa o Exemplo em FBD Operador de sele o IEC limites OUT LIMIT Min IN Max Que pode ser escrito como OUT MIN MAX IN Min Max Max e Min representam respectivamente os limites superior e inferior para o resultado Se o valor IN exceder o limite superior Max LIMIT retornar Max Se IN for inferior a Min o resultado ser Min IN e OUT podem ser de qualquer tipo de vari vel Exemplo em IL LD ai LIMIT 30 E a ST Yarl O resultado 80 Exemplo em ST Varl LIMIT 30 90 80 O resultado 80 Exemplo em FBD 10 value 100 Operador de sele o IEC operador de multiplexa o OUT MUX K IN INn Que pode ser escrito como OUT INK INO INn e OUT podem ser de qualquer tipo de vari vel K deve ser BYTE WORD DWORD LWORD SINT USINT INT UINT DINT LINT ULINT ou UDINT MUX seleciona
5. SFCError O valor TRUE se houver falha de ver F SFCEnableLimit Habilitarverifica o detempo nos pass F SFCErrorstep Cont m o nome do passo que tornou Figura 5 34 Configura es SFC Leia o SFCError no SFC por exemplo em uma a o via SFCError ou a partir de outra POU via sfc 1 SFCError l PROGRAM MainPro Z YAR 3 err BOOL 4 step STRING 5 EHD VAR 4 iili gt Acesso de outra POU iii gt a E sfcl Es 1l PROGRAM sfcl E VAR Acesso a uma a o E timeoverflow BOOL do mesmo SFC 4 tl BOOL TRUE 5 t BOOL E x IHT 7 y IHT G status s2 BO0L 3 END VAR 4 iili E Figura 5 35 Acessando SFCError SFCError se tornar TRUE assim que ocorrer um timeout em sfc2 147 5 Editores das Linguagens de Programa o Expression Type value Prepared value ti EDOL TRUE to BOL FALSE A x INT 122 Ay INT 0 status 52 BOOL kimeoverflow EDOL TRUE S5FCEnableLimit BOOL TRUE ea SFCError BOL TRUE SFCErrorStep STRING s1 Noo add action T 603100ms Weoo show _timeow Figura 5 36 Visualiza o Online do SFC sfcl As seguintes vari veis impl citas mem rias podem ser usadas Para tanto elas devem estar declaradas e ativadas nas Configura es SFC Vari vel Descri o SFCinit BOOL Se a vari vel for TRUE o sequenciamento gr fico de fun o ser configurado para o passo inicial Todos os passos a es e outras mem rias SFC ser o inicializados
6. importante salientar que quaisquer componentes eletr nicos incorporados em produtos cont m materiais nocivos natureza quando descartados de forma inadequada Recomenda se portanto que quando da inutiliza o deste tipo de produto o mesmo seja encaminhado para usinas de reciclagem que deem o devido tratamento para os res duos E imprescind vel a leitura completa dos manuais e ou caracter sticas t cnicas do produto antes da instala o ou utiliza o do mesmo A Altus garante os seus equipamentos conforme descrito nas Condi es Gerais de Fornecimento anexada s propostas comerciais A Altus garante que seus equipamentos funcionam de acordo com as descri es contidas explicitamente nos manuais e ou caracter sticas t cnicas n o garantindo a satisfa o de algum tipo particular de aplica o dos equipamentos A Altus desconsiderar qualquer outra garantia direta ou impl cita principalmente quando se tratar de fornecimento de terceiros Pedidos de informa es adicionais sobre o fornecimento e ou caracter sticas dos equipamentos e servi os Altus devem ser feitos por escrito A Altus n o se responsabiliza por informa es fornecidas sobre seus equipamentos sem registro formal DIREITOS AUTORAIS Nexto e MasterTool IEC XE s o marcas registradas da Altus Sistemas de Automa o S A Windows marca registrada da Microsoft Corporation Sum rio Sum rio SUMA RTO E E E H k INTRODUCA Ourio a N 6 Documen
7. 43 4 Refer ncia de Programa o Exemplo TYPE CAL Day CAL MONDAY CAL TUESDAY CAL WEDNESDAY CAL THIRSDAY CAL FRIDAY CAL SATURDAY CAL SUNDAY Declara o eToday CAL Day Tipos de Dados Definidos pelo Usu rio DUTSs nas Bibliotecas do MasterTool IEC XE Tipos de dados definidos pelo usu rio DUT s nas bibliotecas do Master Tool IEC XE n o precisam de um prefixo de biblioteca pois os contextos fazem as vezes deste Os componentes da enumera o tamb m s o definidos sem prefixos de biblioteca Exemplo em biblioteca com o contexto CAL Cree DAM SA MONDAY TUESDAY WEDNESDAY THIRSDAY FRIDAY SATURDAY SAN DAS Declara o eToday CAL Day Uso na aplica o IF eToday CAL Day MONDAY THEN Fun es Blocos Funcionais Programas POU e A es Os nomes das fun es blocos funcionais e programas consistem no prefixo da biblioteca exemplo COM um sublinhado e um breve nome exemplo SENDTELEGRAM da POU Assim como com as vari veis sempre a primeira letra do nome da POU mai scula e as demais min sculas Recomenda se que o nome da POU seja composto de um verbo e um substantivo Exemplo FUNCTION BLOCK Com SendTelegram Prefixo comst Na parte de declara o deve ser fornecida uma breve descri o da POU como um coment rio Posteriormente em todas as entradas e sa das tamb m deve haver coment rios No caso de blocos funcionais o prefixo associado para con
8. Manual de Programa o IEC 61131 Rev D 09 2015 C d Doc MP399048 Condi es Gerais de Fornecimento Nenhuma parte deste documento pode ser copiada ou reproduzida sem o consentimento pr vio e por escrito da Altus Sistemas de Automa o S A que se reserva o direito de efetuar altera es sem pr vio comunicado Conforme o C digo de Defesa do Consumidor vigente no Brasil informamos a seguir aos clientes que utilizam nossos produtos aspectos relacionados com a seguran a de pessoas e instala es Os equipamentos de automa o industrial fabricados pela Altus s o robustos e confi veis devido ao r gido controle de qualidade a que s o submetidos No entanto equipamentos eletr nicos de controle industrial controladores program veis comandos num ricos etc podem causar danos s m quinas ou processos por eles controlados em caso de defeito em suas partes e pe as ou de erros de programa o ou instala o podendo inclusive colocar em risco vidas humanas O usu rio deve analisar as poss veis consequ ncias destes defeitos e providenciar Instala es adicionais externas de seguran a que em caso de necessidade sirvam para preservar a seguran a do sistema principalmente nos casos da instala o inicial e de testes Os equipamentos fabricados pela Altus n o trazem riscos ambientais diretos n o emitindo nenhum tipo de poluente durante sua utiliza o No entanto no que se refere ao descarte dos equipamentos
9. Sequenciamento Gr fico de Fun es SFC O Sequenciamento Gr fico de Fun es SFC uma linguagem gr fica orientada que permite descrever a ordem cronol gica de a es determinadas em um programa Estas a es est o dispon veis como objetos de programa o separados escritos em qualquer linguagem de programa o dispon vel Em um SFC elas s o atribu das a elementos de passo e a sequ ncia de processamento controlada por elementos de transi o Para obter uma descri o detalhada sobre como os passos ser o processados no modo online consulte o item Sequ ncia de Processamento no SFC neste cap tulo 132 5 Editores das Linguagens de Programa o Parallel Figura 5 13 Exemplo para uma Sequ ncia de Passos em um M dulo SFC Posi es do Cursor no SFC As posi es poss veis do cursor em um diagrama SFC no editor SFC s o indicadas por padr o por um sombreado cinza ao passar o cursor sobre os elementos H duas categorias de posi es de cursor textos e corpos de elemento Veja as posi es poss veis indicadas pela rea sombreada nos pr ximos cap tulos Textos tl Nome do passo Nome da transi o Brancho ie Qualificador da a o Nome da a o Nome da ramifica o A tepl salto para destino Figura 5 14 Posi es Poss veis do Cursor Textos Ao clicar em uma posi o de texto do cursor o texto poder ser editado ES Figura 5 15 Sele o do Nome
10. lt Tipo gt f lt Literal gt lt Tipo gt especifica o tipo de dado desejado somente o tipo simples poss vel O tipo deve ser escrito em letras mai sculas lt Literal gt especifica a constante O dado inserido deve adequar se ao tipo de dado especificado em lt Tipo gt Exemplo ivar l DINTE34 Se a constante n o pode ser convertida no tipo desejado sem perda de dados a seguinte mensagem de erro exibida Literais tipados podem ser usados da mesma forma que as constantes 52 4 Refer ncia de Programa o Constantes no Modo Online As constantes ser o indicadas pelo s mbolo antes do valor na coluna correspondente da janela de Declara o ou Monitora o no modo online Neste caso elas n o podem ser acessadas por for amento ou escrita por exemplo Configura o de Vari veis VAR CONFIG A configura o de vari veis pode ser usada para mapear as vari veis dos blocos funcionais na imagem do processo isto nas E S do dispositivo sem a necessidade de especificar o endere o definido na declara o da vari vel do bloco funcional O endere o neste caso atribu do de forma centralizada para todas as inst ncias do bloco funcional na lista global VAR CONFIG Para realizar esta configura o atribua endere os incompletos s vari veis do bloco funcional declaradas entre as palavras chave VAR e END VAR Estes endere os s o especificados com um asterisco Sintaxe lt ldentiticador gt
11. o destino Assim que a posi o for alcan ada marcador de posi o verde um s mbolo de mais ser acrescentado ao s mbolo do cursor Solte o bot o do mouse e Insira o elemento e Para saber as posi es poss veis do cursor consulte Posi es do Cursor em FBD LD e IL Percorrendo a tabela e As teclas de seta devem ser usadas para saltar para a posi o do cursor anterior e posterior e entre as redes e A tecla lt TAB gt deve ser usada para saltar para a posi o do cursor anterior e posterior dentro da rede As teclas lt CTRL gt lt HOME gt rolam para o in cio do documento e marcam a primeira rede As teclas lt CTRL gt END gt rolam para o fim do documento e marcam a ltima rede A tecla lt PAGEUP gt rola uma tela para cima e marca o ret ngulo superior mais acima A tecla lt PAGEDOWN gt rola uma tela para baixo e marca o ret ngulo superior mais acima 167 5 Editores das Linguagens de Programa o Selecionando e Um elemento rede pode ser selecionado clicando se na respectiva posi o do cursor ou usando se as teclas de setas ou de tabula o e A sele o de v rios elementos n o adjacentes e redes pode ser feita mantendo estes elementos pressionados ao selecionar os elementos desejados um ap s o outro e No editor LD a sele o de v rios elementos adjacentes ou redes pode ser feita mantendo se simultaneamente pressionadas as teclas lt SHIFT gt e os dois contatos que determina
12. o e que na sequ ncia o fluxo do programa continuar normalmente Esta funcionalidade pode ser alcan ada usando la os WHILE ou REPEAT no exemplo Geralmente as Instru es de salto podem e devem ser evitadas pois reduzem a legibilidade do c digo 159 5 Editores das Linguagens de Programa o Coment rios em ST H duas formas de se escrever coment rios em um objeto de texto estruturado e Iniciar o coment rio com e fech lo com Isto permite coment rios que abranjam uma ou mais linhas Exemplo Isto um coment rio e Coment rios de linha nica s o uma extens o da norma IEC 61131 3 denota o in cio de um coment rio que termina no final da linha Exemplo 27 Bete m coment rio Os coment rios podem estar localizados em qualquer lugar nas partes de declara o ou implementa o do editor ST Coment rios aninhados coment rios podem estar localizados em outros coment rios Exemplo x atsist OU 7 verifica o b b 1 Neste exemplo o coment rio que inicia no primeiro par nteses n o fechado pelo par nteses seguinte apenas pelo ltimo Editor ST O editor ST usado para criar objetos de programa o na linguagem IEC Texto Estruturado ST e Texto Estruturado Estendido Esta ltima inclui algumas extens es norma IEC 61131 3 O editor ST um editor textual e a sua configura o no di logo Op es pode ser usada para configurar o
13. Dependendo do tipo de caixa uma sa da adicional pode ser adicionada Para tanto selecione a caixa na rede CFC e desenhe nela o pino de sa da Tabela 5 1 Elementos na Janela do Editor Exemplo do elemento Compositor Suponha um programa CFC cfc prog lido com uma Inst ncia do bloco funcional fubblol que apresenta a vari vel de entrada struvar do tipo estrutura Usando o Compositor os componentes da estrutura podem ser acessados 126 Defini o de estrutura strul TYPE strul STRUCT IVar INT strvar STRING hallo END STRUCT END TYPE 5 Editores das Linguagens de Programa o Bloco funcional fublol declara o e implementa o FUNCTION BLOCK fublol VAR LNEUT struvar SFRUL END VAR VAR QUIT PUT fbout 1 INT LbOUE SErSSTRING END VAR VAR fbvar STRING world END VAR LhoU t 1i sLruvar ivar a LPOUE SCri CONCAT d otruvarsstivar LEVALIs Programa cfc prog declara o e implementa o PROGRAM cfc prog VAR intvar INT stringvar SIRING fhinst fublol ergl INT erg2 STRING END VAR fbinst fublol siruvar Fbouk Intyar E atringwar sirvar Compositor Bloco Funcional com entrada struvar do tipo stru FB str i Figura 5 7 Exemplo Compositor Exemplo do elemento Seletor suponha um programa CFC cfc prog lido com uma inst ncia do bloco funcional fubblo2 que apresenta a vari vel de sa da fbout do tipo estrutura strul Usando o Seletor os componentes da
14. Exemplo PROGRAM mainprg VAR A INT attribute Mo Init B INT END VAR Se for executado um reset na aplica o associada a vari vel inteira A ser novamente inicializada implicitamente com 0 e a vari vel B manter o valor ao qual est atualmente atribu do Atributo Obsolete Um pragma attribute obsolete pode ser adicionado a uma defini o de tipo de dado para originar uma advert ncia definida pelo usu rio durante a execu o da compila o se o respectivo tipo de dado for usado no projeto estrutura bloco funcional etc Assim por exemplo poss vel anunciar que um determinado tipo de dado n o deve mais ser usado Diferentemente de um pragma de mensagem esta advert ncia determinada na defini o e assim sendo de forma global para todas as inst ncias do tipo de dado Esta instru o de pragma sempre v lida para a linha atual ou se localizado em uma linha separada para a linha subsequente Sintaxe tattrib ute obsolete fTexto definido pelo suariro Exemplo O pragma obsoleto Inserido na defini o do bloco funcional fb1 jattrib te obsolete Tipo de dado fpl inv lido FUNCTION BLOCK CHI VAR INPUT ISLNT END VAR 64 4 Refer ncia de Programa o Se fb1 for usado como tipo de dado em uma declara o por exemplo fbinst fb1 a seguinte advert ncia ser exibida quando o projeto for compilado Tipo de dado fb1 inv lido Atributo Pack mode
15. Selecione os elementos e use o comando Excluir ou a tecla lt DEL gt Considere Excluir um passo exclui tamb m a lista de a es associada Excluir o passo inicial automaticamente define que o passo seguinte ser o inicial A op o Passo Inicial ser ativada nas propriedades deste passo Excluir a linha horizontal que precede uma rea ramificada exclui todas as ramifica es Excluir todos os elementos espec ficos de uma ramifica o exclui a ramifica o Propriedades do Elemento SFC As propriedades de um elemento SFC podem ser visualizadas e editadas na janela aberta via comando Propriedades do Elemento no menu Visualizar As propriedades que ser o exibidas dependem do elemento atualmente selecionado As propriedades s o dispostas em grupos os quais s o abertos ou fechados atrav s dos sinais de mais e menos respectivamente 135 5 Editores das Linguagens de Programa o Na guia Visualizar das op es do Editor SFC menu Ferramentas Op es definido quais propriedades devem ser exibidas ao lado do elemento no gr fico SFC Veja a seguir todas as propriedades poss veis Comum Nome do elemento a princ pio lt elemento gt lt n mero de execu o gt RR Exemplo Step0 nome do passo Step1 branch0 nome da ramifica o etc Coment rio Coment rio do elemento string de texto por exemplo Zerar o contador Quebras de linha podem ser inseridas via lt Ctrl gt lt Enter gt Para c
16. est dispon vel uma vez Se todos os tipos de POU de verifica o j tiverem sido adicionados na aplica o o di logo Acrescentar Objeto n o mais apresentar a categoria POUs para Verifica es Impl citas Gerenciamento de Bibliotecas Bibliotecas podem fornecer fun es blocos funcionais tipos de dados vari veis globais e at mesmo visualiza es que podem ser usadas em um projeto assim como em outras POUSs e vari veis definidas diretamente no projeto A extens o padr o para um arquivo de biblioteca library 30 2 Conceitos e Componentes B sicos O gerenciamento das bibliotecas em um projeto feito no Library Manager df cuja Instala o no sistema feita previamente no di logo do Reposit rio de Bibliotecas NOTA O di logo Reposit rio de Bibliotecas s est dispon vel se as caracter sticas pr definidas escolhidas pelo usu rio for Profissional ou se a op o Habilitar Di logo de Reposit rio estiver habilitado Para mais informa es sobre caracter sticas consulte Caracter sticas no Manual de Utiliza o MasterTool IEC XE MU299048 As fun es do projeto para pesquisa local global e substitui o tamb m s o aplic veis s bibliotecas inclu das Consulte informa es gerais sobre Instala o e inclus o no projeto Bibliotecas referenciadas Vers es de bibliotecas Acesso exclusivo aos m dulos de bibliotecas ou vari veis Criando bibliotecas no MasterTool IEC
17. feito em duas etapas na lista de a es Primeiramente s o executadas todas as a es IEC desativadas no ciclo atual e em seguida todas as a es IEC ativas Verifica o de Transi es s o avaliadas se o passo no ciclo atual estava ativo e a transi o ativando os transi o seguinte retornar TRUE e se aplic vel o tempo ativo pr ximos passos m nimo j tiver transcorrido ent o o passo seguinte ser ativado Tabela 5 6 Ordem de Processamento de Elementos em uma Sequ ncia NOTAS Em rela o implementa o das a es considere que uma a o pode ser transmitida v rias vezes em um ciclo por estar associada a m ltiplas sequ ncias Exemplo um SFC pode ter duas a es IEC A e B sendo ambas implementadas no SFC e ambas chamando a a o IEC C Deste modo as a es A e B podem estar ativas no mesmo ciclo e posteriormente em ambas as a es a a o C pode estar ativa Neste caso C teria sido chamada duas vezes Se a mesma a o IEC for usada simultaneamente em diferentes n veis de um SFC isto poderia causar efeitos indesejados devido ao sequenciamento do processamento descrito acima Por isto uma mensagem de erro apresentada Considere a possibilidade de usar vari veis impl citas para controlar o status dos passos das a es e a execu o do gr fico Editor SFC no Modo Online No modo online o editor SFC fornece visualiza es para monitora o escrita e for amento de var
18. gt Retorno qir Compositor TIE Seletor vi Coment rio lt gt F Pino de Entrada FE Pino de Saida Biblioteca de Produtos MainPra 5P1 wo 0 005 Figura 5 1 Editor CFC O editor CFC ao contr rio dos editores de rede permite o livre posicionamento dos elementos possibilitando a inser o de caminhos de realimenta o A sequ ncia de processamento determinada por uma lista contendo todos os elementos atualmente inseridos a qual pode ser modificada Os seguintes elementos est o dispon veis na Caixa de Ferramentas para inser o caixa operadores fun es blocos funcionais e programas entrada sa da coment rio r tulo salto compositor seletor retorno e pinos de entrada sa da As linhas de entrada e sa da dos elementos podem ser conectadas atrav s do mouse arraste da conex o O curso desta linha ser criado automaticamente seguindo o menor caminho poss vel As linhas de conex o ser o automaticamente ajustadas assim que os elementos forem movidos Veja tamb m Inserir e Organizar Elementos neste cap tulo A dimens o da janela do editor pode ser alterada atrav s do zoom use o bot o EN no canto Inferior direito da janela e escolha uma das op es dispon veis Tamb m poss vel selecionar o item e abrir um di logo para digitar o fator desejado Os comandos para trabalhar no Editor CFC podem ser chamados atrav s do menu de contexto ou do menu CFC dispon vel assim que este e
19. o das POUSs e assim algumas atribui es existentes podem ser removidas Movendo Para mover um elemento selecione o seu corpo com um clique do mouse e arraste o at a posi o desejada mantendo o bot o pressionado Ent o solte o bot o e posicione o elemento Os comandos Recortar e Colar tamb m podem ser utilizados para esta a o Conectando As conex es entre as entradas e sa das de elementos podem ser desenhadas com o mouse A menor conex o poss vel ser criada considerando os outros elementos e conex es A cor verde clara no curso das linhas de conex o indica que os elementos est o posicionados um sobre os outros Copiando Para copiar um elemento selecione o e use os comandos Copiar e Colar Editando Ap s Inserir um elemento a parte do texto representado por 277 Para substituir este sinais pelo texto desejado nome da POU do r tulo da inst ncia coment rio selecione o texto com um clique do mouse para entrar em um campo de edi o O bot o tamb m estar dispon vel para abrir o Assistente de Entrada Excluindo Um elemento pode ser exclu do atrav s do comando Excluir dispon vel no menu de contexto ou atrav s da tecla lt DEL gt Ordem de Execu o N meros de Elemento A sequ ncia na qual os elementos em uma rede CFC s o executados no modo online indicada por n meros no canto superior direito dos elementos caixa sa da salto e retorno O processamento inicia no elemen
20. uma exce o poss vel neste caso Para obter um c digo independente do dispositivo gerencie qualquer excesso de limite da faixa pela aplica o Se o n mero REAL LREAL estiver na faixa de valor do inteiro a convers o funcionar em todos os sistemas da mesma forma Veja tamb m Constantes REAL LREAL Uma vari vel do tipo STRING pode conter qualquer sequ ncia de caracteres O item tamanho na declara o determina quanto espa o de mem ria deve ser reservado para a vari vel Trata se do n mero de caracteres de uma string e pode ser posicionado entre par nteses ou colchetes Se n o for especificado tamanho ser usado o tamanho padr o de 80 caracteres O comprimento da string basicamente n o limitado no MasterTool IEC XE mas as fun es de string somente podem processar strings de 1 a 255 caracteres Se uma vari vel for inicializada com uma string muito longa para os tipos de dados das vari veis a string ser truncada da direita para a esquerda Exemplo de uma declara o de string com 35 caracteres SErISTRING SS 4 CISto uma SEring s Veja tamb m WSTRING e Constantes STRING 74 4 Refer ncia de Programa o Tipos de Dado de Tempo Os tipos de dados TIME TIME OF DAY abrevia o TOD DATE e DATE AND TIME abrevia o DT s o tratados internamente como DWORD O tempo dado em milissegundos em TIME e TOD sendo que neste ltimo o tempo inicia em 12 AM O tempo dado em segun
21. 5 Editores das Linguagens de Programa o RETURN END LES assar ils Se b for TRUE a instru o a a 1 n o ser executada e a POU ser deixada imediatamente Instru o IF A instru o IF permite verificar uma condi o e dependendo desta executar Instru es Sintaxe IF lt Express o booleana 1 gt THEN lt Instru es IF gt ELSIF lt Express o booleana 2 gt THEN lt Instru es ELSIF 1 gt ELSIF lt Express o booleana 2 gt THEN lt Instru es ELSIF n 1 gt ELSE lt Instru es ELSE gt END IF A parte entre chaves opcional Se a lt Express o booleana 1 gt retornar TRUE ent o somente as lt Instru es IF gt ser o executadas as outras Instru es n o Caso contr rio as express es booleanas come ando com a lt Express o booleana 2 gt s o avaliadas uma ap s a outra at que uma das express es retorne TRUE Assim somente aquelas instru es ap s esta express o booleana e antes de ELSE ou ELSIF ser o avaliadas Se nenhuma das express es booleanas retornar TRUE ent o somente as lt Instru es ELSE gt ser o avaliadas Exemplo IF temp lt 17 THEN heating on i TRUE ELSE neatino con t FALSE END IF Neste caso a vari vel HEATING ON acionada quando a TEMP for menor 17 Caso contr rio HEATING ON ser FALSE Instru o CASE Com as instru es CASE uma Instru o pode combinar v rias instru es condicionadas pela a mesma vari vel de
22. 8 Tabela 6 14 Par metros de Sa da Notas de Aplica o Sele o do Tempo de Amostragem A efici ncia do controlador digital est diretamente relacionada com o intervalo de amostragem utilizado A medida que este intervalo diminui o resultado do controlador digital aproxima se do resultado de um controlador anal gico Aconselha se utilizar um tempo de amostragem da ordem de um d cimo da constante de tempo do sistema ou seja TA T 10 onde TA o tempo de amostragem utilizado e T a constante de tempo do sistema Exemplo Pode se obter a constante de tempo de um sistema de primeira ordem a partir do seu gr fico da resposta da vari vel de atua o MV a um degrau no ponto de ajuste SP com o la o de controle aberto PID desabilitado ou em modo manual conforme a Figura 6 19 Figura 6 19 Obten o da Constante de Tempo A Figura 6 19 demonstra a obten o da constante de tempo do sistema por dois modos distintos O mais usual tomar como constante de tempo do sistema o tempo necess rio para o sistema atingir 226 6 Bibliotecas 63 212 do valor final Outro modo tra ar a primeira derivada da curva da resposta ao degrau a constante de tempo aquela onde esta reta cruza o valor final da resposta do sistema Uma vez definida a constante de tempo basta definir o Intervalo de amostragem da ordem de um d cimo deste valor importante lembrar que na S rie Nexto a atualiza o das entradas e sa da
23. AT amp lt L O gt 7 lt Tipo de dado gt Exemplo de uso de endere os n o completamente definidos FUNCTION BLOCK locio VAR xLoclin AT 1 BOOL TRUE xLocOut AT 0 BOOL END VAR Neste exemplo s o definidas duas vari veis locais de E S In I local e Out Q local Assim a defini o final do endere o deve ser feita na lista de vari veis globais na Configura o de vari veis Para isto adicione o objeto Lista de Vari veis Globais GVL janela de dispositivos atrav s do comando Acrescentar Objeto Em seguida insira as declara es das vari veis da inst ncia com os endere os definidos entre as palavras chave VAR_CONFIG e END_VAR As vari veis da inst ncia devem ser especificadas com o caminho da inst ncia completo onde as POUs individuais e os nomes das inst ncias s o separados uns dos outros por pontos A declara o deve conter um endere o cuja classe entrada sa da corresponda quela do endere o n o completamente definido especificado I Q no bloco funcional O tipo de dado tamb m deve concordar com a declara o no bloco funcional Sintaxe lt Caminho da vari vel da inst ncia gt AT 3 lt I Q gt lt Lo ocal gt lt Tipo de dado gt Vari veis de configura o cujo caminho da inst ncia seja inv lido pelo fato da mesma n o existir s o registradas como erros Por outro lado um erro tamb m ser reportado se n o existir configura o de endere o defin
24. DATE DINT DIV DO DT DWORD ELSE ELSIF END ACTION somente no formato Exportar END CASE END FOR END FUNCTION somente no formato Exportar END FUNCTION BLOCK somente no formato Exportar END IF END PROGRAM somente no formato Exportar END REPEAT END STRUCT END TYPE END VAR END WHILE EQ EXIT EXP EXPT FALSE FOR FUNCTION FUNCTION BLOCK GE GT IF INDEXOF INT JMP JMPC JMPCN LD LDN LE LINT LN LOG LREAL LT LTIME LWORD MAX MIN MOD MOVE MUL MUX NE NOT OF OR PARAMS PERSISTENT POINTER PROGRAM R REFERENCE READ ONLY READ WRITE REAL REPEAT RET RETAIN RETC RETCN RETURN ROL ROR S SEL SHL SHR SIN SINT SIZEOF SUPER SQRT ST STN STRING STRUCT SUPER SUB TAN THEN TIME TO TOD TRUE TRUNC TYPE UDINT UINT ULINT UNTIL USINT VAR VAR ACCESS usadas eventualmente dependendo do hardware VAR CONFIG VAR EXTERNAL VAR GLOBAL VAR IN OUT VAR INPUT VAR OUTPUT VAR STAT VAR TEMP WHILE WORD WSTRING e XOR Adicionalmente todos os operadores de convers o listados no Assistente de Entrada s o tratados como palavras chave 47 4 Refer ncia de Programa o Vari veis Locais VAR Entre as palavras chave VAR e END VAR devem ser declaradas todas as vari veis locais de uma POU Estas vari veis n o t m conex o externa ou seja n o podem ser escritas externamente Considere a possibilidade de adicionar um atributo VAR Exemplo VAR LLocis INT 4 Lo Varizavel
25. Declara o na POU VAR xestrulj END VAR Acesso a bit x wvar enable true Isto levar para TRUE o bit 42 na vari vel X Uma vez que bvar tem 8 bits e rvar tem 32 bits o acesso a bit ser feito no segundo bit da vari vel wvar que como resultado assumir o valor 4 Endere os NOTA Altera es online podem alterar os conte dos nos endere os Considere isto ao usar ponteiros em endere os Posi o da Mem ria A posi o da mem ria pode ser acessada por qualquer tamanho suportado Por exemplo o endere o MD48 endere aria os bytes 192 193 194 e 195 na rea de posi o da mem ria 48 4 192 A posi o do primeiro byte zero O exemplo abaixo mostra a posi o da mem ria correspondente dependendo do tamanho X bit B byte W word D dword para endere amento IEC Exemplo O Endere os OOO O O OOOO OO 96 0 96 7 96 8 192 15 97 0 97 7 97 8 97 15 omw 00 da o omo A EE RR d Tabela 4 13 Exemplos Posi es de Mem ria Palavras bytes e at mesmo bits podem ser acessados da mesma forma o endere o WMX96 0 permite o acesso ao primeiro bit na word 96 bits s o geralmente salvos como words especiais Consulte Endere o para obter mais informa es sobre endere amento NOTA Altera es online podem alterar os conte dos nos endere os Considere isto ao usar ponteiros em endere os Endere o Ao especificar um endere o a posi o de mem ria e o tamanho
26. O passo inicial permanecer ativo mas n o ser executado enquanto a vari vel for TRUE SFClnit deve ser redefinida para FALSE para retomar o processamento normal SFCReset BOOL Esta vari vel comporta se de maneira similar a SFClnit Diferentemente desta no entanto outros processamentos ocorrem ap s a inicializa o do passo inicial Assim neste caso por exemplo poderia ser feita uma atribui o FALSE na mem ria SFCReset no passo inicial SFCError BOOL Assim que ocorrer um timeout em um dos passos no SFC a vari vel ser TRUE Pr requisito SFCEnableLimit deve ser TRUE Observe que qualquer outro timeout n o poder ser registrado at que SFCError seja FALSE SFCError deve ser definida para usar a outra mem ria de controle de tempo SFCErrorStep SFCErrorPOU e SFCQUuitError SFCEnableLimit Esta vari vel pode ser usada para a ativa o expl cita TRUE e BOOL desativa o FALSE do controle de tempo nos passos via SFCError Isto significa que se esta vari vel for declarada e ativada Configura es SFC ent o ela deve ser configurada para TRUE para o funcionamento de SFCError Caso contr rio quaisquer timeouts dos passos n o ser o registrados Isto pode ser interessante durante as inicializa es ou na opera o manual Se a vari vel n o est definida SFCError funcionar automaticamente Naturalmente como pr requisito SFCError deve estar definida SFCErrorStep STRING Esta vari vel armazen
27. WriteRecipe SDef SName LF mREI lt gt RECIPE RETURN VALUES ERROR OK THEN boolStartProcess FALSE ELSE boolStartProcess TRUE END IF 238 6 Bibliotecas 7 Gloss rio 7 Gloss rio Algoritmo rvore Barramento Bit Breakpoint Broadcast Byte CAN Controlador program vel CP Diagn stico Download E S Entrada sa da Escravo Gateway Hardware IEC 61131 Interface Interrup o kbytes Linguagem de programa o Login Menu Menu de Contexto Mestre M dulo referindo se a hardware Operandos PC POU Programa aplicativo Protocolo RAM Rede de comunica o Reset RUN Set Software STOP Sequ ncia finita de instru es bem definidas objetivando a resolu o de problemas Estrutura de dados para configura o do hardware Conjunto de m dulos de E S interligados a uma UCP ou cabe a de rede de campo Unidade b sica de informa o cujo estado O falso ou 1 verdadeiro Ponto de parada no aplicativo para depura o Dissemina o simult nea de informa o a todos os n s interligados a uma rede de comunica o Unidade de informa o composta por oito bits Protocolo de comunica o usado largamente em redes automotivas Tamb m chamado de CP Equipamento que realiza controle sob o comando de um programa aplicativo E composto de uma UCP uma fonte de alimenta o e uma estrutura de E S Veja controlador program vel Procedimento util
28. em segundos utilizado para calcular a a o REAL derivativa do bloco PID s Compensa o adicionada vari vel manipulada Valor atribu do vari vel manipulad uando utilizado o modo ManualMV INT e manual M xima varia o da vari vel manipulada entre o ciclo atual e o MaxVarMV INT ciclo anterior Caso seja zero ou negativa o bloco PID n o tem limite de varia o de MV MaxMV M ximo valor da vari vel manipulada 224 6 Bibliotecas Caso o valor calculado seja maior do que o configurado o MV ser igual ao MaxMV M nimo valor da vari vel manipulada Caso o valor calculado seja menor do que o configurado o MV ser igual ao MinMV Tempo morto DeadBand M nimo valor de erro que ir causar a corre o de MV em modo autom tico ou seja pequenos erros menores que DeadBand n o causar o altera es na vari vel manipulada M ximo valor da vari vel de processo Caso o valor de PV seja maior do que o configurado o bloco PID ir parar o c lculo e ser gerado um c digo de erro na sa da M nimo valor da vari vel de processo Caso o valor de PV seja menor do que o configurado o bloco PID ir parar o c lculo e ser gerado um c digo de erro na sa da Tempo de amostragem SampleTime REAL Define o per odo de chamada do bloco PID em segundos podendo variar de 0 001 s 1000 s Esse par metro desconsiderado se o MeasureST for verdadeiro EnableP BOOL Quando verdadeiro
29. fun es de verifica o n o h implementa o padr o de CheckPointer dispon vel a implementa o deixada para o usu rio A fun o CheckPointer deve verificar se o endere o ao qual o ponteiro refere se est dentro do intervalo de mem ria v lido Al m disto o alinhamento da rea de mem ria referenciada deve adequar se ao tipo de dado da vari vel para a qual o ponteiro aponta Se ambas as condi es forem preenchidas CheckPointer deve retornar o ponteiro de entrada inalterado O tratamento adequado dos casos de erro de responsabilidade do usu rio Modelo Parte de declara o C digo implicitamente gerado N O EDITAR FUNCTION CheckPointer POINTER TO BYTE VAR INPUT peTtetest 4 FOINTER TOBY TE iSize DINT teran lt DINTI bWrite BOOL END VAR Parte de Implementa o N o h um modo padr o de implementa o Preencha o seu pr prio c digo aqui CheckPointer ptToTest Ao ser chamada a fun o apresenta os seguintes par metros de entrada e ptToTest endere o de destino do ponteiro e 1Si1ze tamanho da vari vel referenciada O tipo de dado de iSize deve ser Inteiro e compat vel e deve cobrir o tamanho de dados potenciais m ximo armazenados no endere o do ponteiro e iGran granularidade do acesso ou seja o maior tipo de dado n o estruturado usado na vari vel referenciada O tipo de dado de Gran deve ser inteiro e compat vel e bWrite tipo do acesso TRUE aces
30. habilita a a o proporcional do bloco PID Caso seja falso a a o proporcional zerada EnableD BOOL Quando verdadeiro habilita a o derivativa do bloco PID Caso seja falso a a o derivativa zerada Enable poo Quando verdadeiro habilita a a o integral do bloco PID Caso seja falsa a a o integral zerada Quando verdadeiro a a o derivativa calculada na vari vel de processo sendo diferente de zero somente quando PV DerivPV BOOL Ps SOSEN C ZETO a O e alterado Caso seja falso a a o derivativa calculada no erro sendo dependente das vari veis SP e PV Quando verdadeiro habilita o modo manual Caso seja falso BOOL habilita o modo autom tico O modo de controle do bloco PID afeta a maneira como o MV e a a o integral s o calculadas Quando verdadeiro seleciona se o controle direto fazendo BOOL com que MV seja inclu do na resposta para ser inclu do no PV Caso seja falso seleciona se o controle reverso fazendo com que MV seja diminu do da resposta para ser inclu do no PV Quando verdadeiro o tempo de amostragem medido Caso MeasureST BOOL seja falso o tempo de amostragem informado pelo usu rio na vari vel SampleTime Quando verdadeiro o bloco PID reiniciado inicializando todas BOOL as vari veis Tamb m pode ser utilizado para limpar as a es integral e derivativa e os c digos de erro na sa da do bloco Tabela 6 13 Par metros de Entrada
31. local END VAR Vari veis de Entrada VAR INPUT Entre as palavras chave VAR INPUT e END VAR devem ser declaradas todas as vari veis que servem como vari veis de entrada para uma POU Isto significa que na posi o da chamada o valor das vari veis pode ser especificado na mesma Considere a possibilidade de adicionar um atributo VAR INPUT Exemplo VAR INPUT 1Inl INT 1 Vari vel de entrada END VAR Vari veis de Sa da VAR OUTPUT Entre as palavras chave VAR OUTPUT e END VAR todas as vari veis que servem como vari veis de sa da de uma POU devem ser declaradas Isto significa que estes valores s o retornados pela POU chamada Ah elas podem ser respondidas e usadas posteriormente Considere a possibilidade de adicionar um atributo VAR OUTPUT Exemplo VAR OUTPUT 10Out1l INT 1 Vari vel de sa da END VAR Vari veis de Sa da em Fun es e M todos De acordo com a IEC 61131 3 vers o 2 fun es e m todos podem ter sa das adicionais Estas devem ser atribu das na chamada da fun o da seguinte forma Tanaro do ts alnZ p aQUEI gt vhocl 0002 gt ALOG O valor de retorno da fun o fun ser escrito para as vari veis localmente declaradas locl e loc2 por exemplo Vari veis de Entrada e Sa da VAR IN OUT Entre as palavras chave VAR IN OUT e END VAR devem ser declaradas todas as vari veis que servem como vari veis de entrada e sa da para uma POU NOTA Com vari ve
32. m um papel decisivo no endere amento Considere especialmente as diferen as na Interpreta o dos endere os entre dispositivos usando Modo de Endere amento de Byte ou aquelas usando o Modo de Endere amento IEC orientado Word Assim dependendo do tamanho e do modo de endere amento c lulas diferentes de mem ria podem ser endere adas pela mesma defini o de endere o Na Tabela 4 17 veja uma compara o entre o endere amento de byte e o endere amento IEC orientado word para bits bytes palavras e palavras duplas Visualize ainda as reas de sobreposi o de mem ria no caso do modo de endere amento de byte Em rela o nota o considere que para endere os de bit o modo de endere amento sempre orientado word ou seja a posi o antes do ponto corresponde ao n mero da word e a posi o ap s o nome representa o n mero do bit 121 4 Refer ncia de Programa o Obs n n mero do byte DWords Words X bits Endere amento Endere amento Endere amento a Endere amento orientado a EEEN E MET a Words IEC Byte a Words IEC Fun es o 1 e fx flo ximzis xas Tabela 4 17 Compara o Endere amento Byte X Word D W B X Sobreposi o dos intervalos de mem ria em caso de modo de endere amento de byte DO cont m BO B3 WO cont m BO e Bl W1 cont m B1 e B2 W2 cont m B2 e B3 Para acessar a rea fora da sobreposi o W1 D1 D2 e D3 n o devem ser usados para endere
33. processado primeiro seguido pelo segundo mais forte e assim por diante at que todos os operadores tenham sido processados Operadores com a mesma for a de liga o s o processados da esquerda para a direita Abaixo apresentada uma tabela de operadores ST na ordem de sua for a de liga o da mais forte para a mais fraca Opera o S mbolo o Colocar entre par nteses express o Chamada de fun o Nome da fun o lista de par metros EXPT Negar UOT Complementos a igual a Diferente de lt gt Booleano XOR Booleano OR OR ooo Tabela 5 8 Operadores ST Atribui o como Express o Como extens o da norma IEC 61131 3 ExST o MasterTool IEC XE permite que atribui es sejam usadas como express es Exemplos Express es Coment rio int_var1 int_var2 int_var3 9 Atribui o do resultado de uma express o para int_var2 e int_var1 real_var1 real var2 int var Atribui es corretas real var1 e real var2 assumir o o valor de int var int var real var1i int var Isto levar a uma mensagem de erro devido n o correspond ncia dos tipos real e int IF b i 1 THEN Atribui o errada pois est sendo usado o 153 5 Editores das Linguagens de Programa o operador de atribui o para comparar duas express es Tabela 5 9 Atribui es Usadas como Express es Instru es Instru es definem as a es a serem realizadas nas express es As seg
34. r Tle Um salto representado por uma linha de conex o vertical com uma seta horizontal e pelo nome do destino do salto Um salto define o pr ximo passo a ser processado assim que a transi o precedente for TRUE Saltos podem ser necess rios porque as linhas de processamento n o devem cruzar ou retornar para cima Al m do salto padr o no final do gr fico um salto somente pode ser usado no final de uma ramifica o Ele inserido via comando Inserir Salto Ap s quando a ltima transi o da ramifica o estiver selecionada O destino do salto especificado pela string de texto associada que pode ser editada na linha Pode ser o nome de um passo ou o r tulo de uma ramifica o paralela otepl Figura 5 30 Salto S mbolo EEN 143 5 Editores das Linguagens de Programa o Figura 5 32 Visualiza o do Editor da Macro para a Macro 1 Uma macro representada por uma caixa com moldura em negrito contendo o nome da mesma Ela inclui uma parte do gr fico SFC que n o vis vel no editor principal O fluxo do processo n o influenciado pelo uso de macros pois apenas uma maneira de esconder algumas partes do programa por exemplo para simplificar a exibi o Uma caixa de macro inserida pelo comando Inserir Macro ou Inserir Macro Ap s O nome da macro pode ser editado na linha Para abrir o editor da macro execute um clique duplo na sua caixa ou use o comando Zoom na macro Desta fo
35. seleciona se o controle direto fazendo BOOL Com que MV seja inclu do na resposta para ser inclu do no PV Caso seja falso seleciona se o controle reverso fazendo com que MV seja diminu do da resposta para ser inclu do no PV Quando verdadeiro o tempo de amostragem medido Caso MeasureST BOOL seja falso o tempo de amostragem informado pelo usu rio na vari vel SampleTime Quando verdadeiro o bloco PID reiniciado inicializando todas BOOL as vari veis Tamb m pode ser utilizado para limpar as a es integral e derivativa e os c digos de erro na sa da do bloco IntegralAction REAL Ras a a o integral a qual eliminada em estado de Tabela 6 9 Par metros de Entrada Quando verdadeiro habilita o modo manual Caso seja falso BOOL habilita o modo autom tico O modo de controle do bloco PID Par metros de sa da REAL Vari vel manipulada EST REAL Tempo efetivo de amostragem em segundos utilizado para os c lculos de a o derivativa e taxa limite de MV Tempo efetivo de amostragem dos tr s ltimos ciclos em Eff3ST do std segundos utilizado para os c lculos de a o derivativa M ximo valor do tempo efetivo de amostragem em segundos SEANSU i desde a inicializa o do bloco PID MinEffST REAL M nimo valor do tempo efetivo de amostragem em segundos desde a inicializa o do bloco PID oOo NOOA ON C digo de erro exibido pelo bloco PID Para remov lo basta solucio
36. ser FALSE Exemplo Em um primeiro momento declare o tipo de dado DUT no projeto em um segundo momento n o declare veja a diferen a na vari vel booleana bDutDefined IF defined type DUT A seguinte linha de c digo somente ser processada se houver o tipo declarado bDutDefined TRUE END IF Quando aplicado a um nome de POU seu valor ser TRUE se a POU ou uma a o com este nome espec fico foram declaradas Caso contr rio ser FALSE Exemplo Pr requisito Em um cen rio a POU CheckBounds foi adicionado ao projeto e em outra situa o n o Em uma POU existe o c digo abaixo IF defined pou CheckBounds A seguinte linha de c digo somente ser processada no cen rio em que h a POU CheckBounds arrT est CheckBounds 0 i 10 arrTest CheckBounds 0 1 10 1 ELSE A seguinte linha de c digo somente ser processada no cen rio em que n o h a POU CheckBounds arrT est i arrTest i 1 END IF Quando aplicado a uma POU seu valor ser TRUE se este determinado atributo for especificado na primeira linha da parte de declara o das POUSs Exemplo Pr requisito h dois blocos funcionais fun1 e fun2 Em funil adicionalmente h o atributo vision Defini o de funi attribute vision FUNCTION funt INT VAR INPUT i INT END_VAR VAR END_VAR Defini o de fun2 FUNCTION fun1 INT VAR_INPUT i INT END_VAR 68 Hasattribute
37. tamanho 32 bits e resolu o em milissegundos 75 4 Refer ncia de Programa o WSTRING Ponteiros Este tipo de dado de string uma extens o da norma IEC 61131 3 Ele diferente do tipo STRING padr o ASCII porque interpretado no formato Unicode Exemplo wstr WSTRING Isto uma WString Veja tamb m STRING e Constantes STRING Operandos Como uma extens o da norma IEC 61131 3 poss vel usar ponteiros Ponteiros salvam os endere os das vari veis programas blocos funcionais m todos e fun es durante a execu o de um programa aplicativo Um ponteiro pode apontar para qualquer objeto e tipo de dado inclusive os definidos pelo usu rio Observe a possibilidade de usar uma fun o de verifica o de ponteiro impl cita Sintaxe lt Identificador gt POINTER TO lt Tipo de dado Bloco funcional Programa M todo Fun o gt Desreferenciar um ponteiro significa obter o valor atualmente armazenado no endere o para o qual ele est apontando Um ponteiro pode ser desreferenciado adicionando se o operador de conte do A ap s o Identificador do ponteiro Veja pt no exemplo abaixo O operador de endere o ADR pode ser usado para atribuir o endere o de uma vari vel a um ponteiro Exemplo VAR pt POINTER TO INT Declara o do ponteiro pt var IDC INT 3s 57 5 Declara o das variaveis var Anti E ver Ints var Int ENT END VAR DE YS ADE var anti o endere
38. 13 2 Conceitos e Componentes B sicos de inicializa o O comando Criar Aplica o de Inicializa o tamb m permite salvar esta aplica o em um arquivo no modo offline M todo de Envio Login de Projetos Sem Diferen a de Projetos Afim de garantir que o usu rio n o ter problemas ao enviar projetos iguais e logar em UCPs em execu o a partir de diferentes esta es podem ser executados os seguintes passos ap s o envio de um projeto e No di logo Arquivos Adicionais menu Projeto Configura o do Projeto Download de C digo Fonte e bot o Arquivos Adicionais marcar a op o Realizar download dos arquivos de informa es Fechar todos di logos clicando em OK Executar o comando Download do C digo Fonte menu Arquivo No di logo Selecionar Dispositivo que ser aberto escolher a UCP em que o projeto foi enviado Fechar o di logo clicando em OK aguardar o download do projeto Para logar em UCPs em execu o sem gerar altera es de projeto a partir de diferentes esta es deve se abrir um arquivo de projeto gerado a partir do projeto original e executar o comando Login Na falta deste podem ser realizados os seguintes procedimentos Executar o comando Carregar C digo Fonte menu Arquivo No di logo Selecionar Dispositivo que ser aberto escolher a UCP em que o projeto foi enviado Fechar o di logo clicando em OK aguarde o carregamento do projeto No di logo Arquivo de Projeto que ser aberto a
39. AEO EIEEE REPOR E ESPEP Erea NE EEO E SENERE 24 M COUO essea a e a 25 Gio Dino d o ANDO DR SOR DD DIO A PGR E E E TT EE E 26 PICA O ia pio ETEESI TAAA AD o editada e 27 Fun o Externa Bloco F ncional MetodOness eree ieee EE EEEE EEE E E E E ER 28 Litad varivo CS oba GV Don e a A 28 NELA VC e Perise ES oeer a E E e a e a 29 Ardu VO DIO a ada aa E RE Enio Ra cr nina anca ada isa 29 FOGUS para NV CACOS TMP ICIS saias suba fnsa a Eai RUNNER SEDES RSS E 30 Sum rio Gerenciamento de BiDIOtecaS assa E E Cada assan 30 Instala o e Inclus o no Projeto erosoenean eee a aa a area aan eee ee eeii 31 Pipocas Rre a S E 31 Versos de BIDO C E enaa R T DG AS e 32 Acesso nico aos M dulos da Biblioteca ou s Vari veis iieieei aereas 32 Criando Bibliotecas Codifica o Documenta o sas qaaqunrissadaisoaicaaasaanigoLbaslsual asas sUNlsusb EE 33 3 COMANDOS DOMENU cassa zagaaacazacazasaaaal ae e aa a a ic aca cais ana senda ca Eres a onda cai sanada casi cacacicasiado 35 Library Manado RR RR CRC OR DD 35 Comandos do Gerenciador de Bibliotecas ceee rece eerre re rre rea re een re ren renea renan eeeana canada 35 Acrescentar DIDOL Torreren snan ora Ri do pao da a a a 35 ERODRIGAA OS in ioie tata de ainda io ei Dn a Gaia Dana Oia ia iai oi 38 Tentar R ea e eaa IDOE A aaa assar SO a 39 4 REFER NCIA DE PROGRAMA O esesesssseseoseseseoscseseoscecseseoscsessoseseososesesscscseoscscsessoscsecsoscsescsesessosess 40 D
40. Assume se que a gua que chega ao ponto de aquecimento sobre o queimador tem temperatura fixa de 30 C Assume se que a vaz o de gua constante A seguir define se algumas caracter sticas deste processo e dos elementos utilizados A gua aquecida deve ter sua temperatura program vel entre 50 C e 80 C O transmissor de temperatura TT tem sa da de 4 a 20 mA e se comporta de forma linear de tal maneira que 4 mA correspondem a 30 C e 20 mA correspondem a 130 C e Assume se que para aumentar em 10 C a temperatura da gua necess rio injetar 1 m3 h de g s Este comportamento linear e A v lvula de g s se fecha com 4 mA injetando O m h de g s Por outro lado com 20 mA ela injeta 8 m h de g s Descri o dos M dulos Anal gicos Conforme pode ser visto na Figura 6 26 necessita se de uma sa da anal gica 4 a 20 mA e de uma entrada anal gica de 4 a 20 mA como Interfaces entre o controlador e o processo Internamente ao controlador estas faixas de 4 a 20 mA correspondem a vari veis PV e MV Estas faixas de valores num ricos podem variar em fun o dos m dulos de entrada e sa da anal gica selecionados Neste exemplo assume se o seguinte entrada anal gica PV O a 30000 PV 0 gt 4 mA gt 30 C PV 30000 gt 20 mA gt 130 C sa da anal gica MV 0 a 10000 MV 0 gt 4 mA 0 gt 0 m h MV 10000 gt 20 mA gt 8 m3 h 234 6 Bibliotecas Pon
41. Compilada o Salvar Projeto e Instalar no Reposit rio de Bibliotecas 34 3 Comandos do Menu 3 Comandos do Menu Neste cap tulo ser o tratados apenas comandos dos menus que fazem o gerenciamento de bibliotecas para consultar comandos de outros menus consulte Comandos de Menu no Manual de Utiliza o MasterTool IEC XE MU299048 Library Manager Esta categoria fornece os comandos do editor Library Manager para o tratamento das bibliotecas a serem usadas no projeto Comandos do Gerenciador de Bibliotecas Fornece os comandos listados abaixo Eles fazem parte do menu Bibliotecas quando o Library Manager esta ativo Comandos dispon veis e Acrescentar Biblioteca e Propriedades e Tentar Recarregar a Biblioteca Para obter informa es gerais sobre o gerenciamento de bibliotecas no MasterTool IEC XE consulte Library Manager Acrescentar Biblioteca Este comando faz parte do menu Bibliotecas e da janela do editor Library Manager Utiliza se este comando para incluir bibliotecas no projeto Somente podem ser adicionadas bibliotecas que j est o instaladas no sistema E poss vel incluir m ltiplas vers es de uma biblioteca ao mesmo tempo dentro de um gerenciador de bibliotecas O comando abre o di logo Acrescentar Biblioteca e apresenta as guias Biblioteca e Espa o Reservado Espa o Reservado dispon vel somente com a caracter stica Habilitar Di logo do Reposit rio selecionada para mais informa es consulte o
42. DO PASSO gt DO lt INSTRU ES gt END FOR lt INSTRU ES gt ser executado enquanto o contador lt INT_VAR gt n o for maior que lt VALOR FINAL gt Isto ser verificado antes que lt INSTRU OES gt seja executado de forma que nunca haver uma execu o se esta condi o n o for atendida Quando lt ISNTRU ES gt executado lt INT VAR gt incrementado pelo lt TAMANHO DO PASSO gt o qual pode ter qualquer valor inteiro Se este n o existir o valor ser configurado para 1 O la o tamb m ser finalizado quando lt INT_V AR gt se tornar maior do que lt VALOR FINAL gt Exemplo FOR Counter l TO 5 BY 1 DO Varl Varl 2 END FOR Erg Varl Suponha que valor inicial de Varl seja 1 Ent o ela ter o valor 32 ap s o la o FOR NOTA Se lt VALOR FINAL gt for igual ao valor limite do contador lt INT VAR gt por exemplo Counter usado no exemplo mostrado acima declarado como tipo SINT e se lt VALOR FINAL gt for 127 haver um la o sem fim Neste caso lt VALOR FINAL gt n o deve ser igual ao valor limite do contador A instru o CONTINUE pode ser usada em um la o FOR La o WHILE O la o WHILE pode ser usado da mesma forma que o FOR apenas com a diferen a de que a condi o de ruptura pode ser qualquer express o booleana Em outras palavras indica se uma condi o e quando esta atendida o la o executado 157 5 Editores das Linguagens de Prog
43. ET at que seu valor seja igual a PT e a partir de ent o permanecer constante Q ser TRUE quando IN for TRUE e ET for igual ou menor que PT Caso contr rio ser FALSE Q retorna um sinal para o per odo de tempo dado em PT 198 TON 6 Bibliotecas J LAT L 10 1 t213 t lh Q SL ITU Wo AD PT O 2142 PT td id PT PT m f F f Oof Fi i Mon g td t5 Figura 6 1 Exibi o Gr fica da Sequ ncia de Tempo TP Exemplo de declara o TEIAS E 2 TE Exemplo em IL CAL TPinst i IN var B L1l PT T ss f ET gt VarTimelur LD Trinst m ST vYarBDOLo Exemplo em FBD TPinst var Bilz Exemplo em ST TPInst IN VarBOOLI Pr TDS VarBOOL2 s TPInst O Fornecido pela standard library Bloco funcional de tempo que implementa um retardo na energiza o Quando a entrada tornar se TRUE transcorrer um tempo at que a sa da torne se TRUE Entradas IN BOOL borda de subida inicia a contagem ET PT TIME limite superior para contagem ET tempo de atraso Sa das Q BOOL gera uma borda de subida assim que ET tiver atingido o limite superior PV tempo de retardo esgotado ET estado atual do tempo de retardo TON IN PT Q ET Se IN for FALSE Q ser FALSE e ET ser O Assim que IN tornar se TRUE o tempo come ar a ser contado em milissegundos em ET at que seu valor seja igual a PT e a partir de ent o permanecer constante Q ser TRUE quando
44. Editores das Linguagens de Programa o SEC prog SECinite setinity 3C0590 de escrita cmn SECinait no SEC prog Sequ ncia de Processamento no SFC No modo online os tipos de a o espec ficos ser o processados de acordo com uma sequ ncia definida veja na Tabela 5 6 Primeiramente observe a terminologia e Passo ativo o passo no qual a a o est sendo executada No modo online os passos ativos s o exibidos na cor azul e Passo inicial no primeiro ciclo ap s a POU SFC ter sido chamada o passo inicial automaticamente torna se ativo e a a o do passo associada executada e A es IEC s o executadas no m nimo duas vezes a primeira vez quando s o ativadas e a segunda no ciclo seguinte quando s o desativadas e Ramifica es alternativas se o passo anterior linha horizontal das ramifica es estiver ativo ent o a primeira transi o de cada ramifica o espec fica ser avaliada da esquerda para a direita A primeira transi o esquerda que apresentar o valor TRUE provocar a execu o da ramifica o respectiva ou seja o passo subsequente na ramifica o se tornar ativo e Ramifica es paralelas se a linha dupla no in cio de uma ramifica o paralela estiver ativa e a condi o de transi o precedente apresentar o valor TRUE ent o em todas as ramifica es paralelas os passos subsequentes ser o ativados As ramifica es ser o processadas paralelamente O passo segu
45. Exemplo de uso do m todo Init para o bloco funcional serialdevice METHOD fb init BOOL VAR INPUT bInitRetains gt BOOL Inicializa o das retentivas bInCopyCode BOOL Inst ncia movida para o c digo copiado nCOMnum INT Entrada adicional n mero da interface COM a ser ouvida END VAR Exemplo de declara o do bloco funcional serialdevice COMI serialdevice nNnCOMnum 1 COMO serialdevice nCOMnum 0 Se um m todo chamado FB reinit for declarado em uma inst ncia de um bloco funcional este m todo ser chamado quando a inst ncia for copiada que o caso por exemplo de uma altera o online ap s a modifica o da declara o do bloco funcional O m todo causar uma reinicializa o do novo m dulo da inst ncia criado pelo c digo copiado Os dados da inst ncia original s o escritos para a nova Inst ncia ap s a c pia e se o usu rio desejar os valores iniciais originais pode valer se da reinicializa o Este m todo n o tem entradas Considere que ao contr rio do FB nt este m todo deve ser declarado explicitamente Se uma reinicializa o da implementa o do bloco funcional b sico for desejada FB reimit deve ser explicitamente chamado para aquela POU O m todo FB reinit n o tem entradas Na sequ ncia de chamada em caso de heran a consulte FB Exit FB Exit um m todo especial para blocos funcionais Ele deve ser declarado explicitamente n o h
46. FBD aDal STR VYaraTRINGI E LEN 2 POS Exemplo em ST VarSIRINGI z MID SUSI 2 2 CONCAT Fornecido pela standard library Fun o do tipo STRING que executa uma concatena o combina o de duas strings Entradas STR1 STR2 STRING strings a serem concatenadas Valor de retorno STRING string concatenada CONCAT STR1 STR2 significa combinar STR1 e STR2 em uma string nica STR1STR2 Exemplo em IL LD AUST COHC AT WILLI sT Yara TE INE l O resultado ser SUSIWILLT Exemplo em FBD CONCAT S5USI a TRI var STRINGI WILLI a TRA Exemplo em ST VarSIRINGL CONCAT SUBI NILLA S INSERT Fornecido pela standard hbrary Esta fun o do tipo STRING insere uma string em outra em um ponto determinado Entradas STRI STRING string na qual STR2 deve ser inserida 190 6 Bibliotecas STR2 STRING string a ser inserida em STR POS INT posi o em STR1 onde STR2 deve ser inserida n mero de caracteres contados a partir da esquerda Valor de retorno STRING string resultante INSERT STR1 STR2 POS significa inserir STR2 em STRI ap s a posi o POS Exemplo em IL LD anal INSERT IAY r 2 sT Vara TR INE O resultado SUXYST Exemplo em FBD SUSI VYaraTRINGI e Exemplo em ST VarSIRINGL INSERT COUSL XY 2 DELETE Fornecido pela standard hbrary Esta fun o do tipo STRING exclui uma parte de uma string maior em uma determinada po
47. Funcional FB1 For amento de Vari veis Al m da possibilidade de inserir um valor preparado para uma vari vel na declara o de qualquer editor o editor ST permite clicar na caixa de monitora o de uma vari vel na parte de implementa o no modo online onde o valor preparado pode ser inserido Figura 5 41 161 5 Editores das Linguagens de Programa o Preparar Valor Express o Device Application MainProg iInputlevel Tipo INT Valor Atual AF O que voc deseja fazer g Preparar um novo valor para a pr xima opera o de escrita ou for amento 3 Remover prepara o com um valor Liberar o for amento sem modificar o valor Liberar o for amento e restaurar a vari vel para o valor anterior a este en Figura 5 41 Di logo Preparar Valor Neste di logo encontram se a Express o nome da vari vel seguido pelo caminho na rvore de dispositivos seu Tipo e Valor Atual Ativando o item correspondente escolha uma das op es Preparar um novo valor para a pr xima opera o de escrita ou for amento Remover prepara o com um valor Liberar o for amento sem modificar o valor Liberar o for amento e restaurar a vari vel para o valor anterior a este Os valores selecionados ser o atribu dos na execu o do comando For ar Valores menu Comunica o ou pressionando lt F7 gt Posi es de Breakpoint no Editor ST Basicamente um breakpoint localiza se nas posi es de uma POU
48. IN for TRUE e ET for igual a PT Caso contr rio ser FALSE 199 TOF 6 Bibliotecas Assim haver uma borda de subida em Q quando o tempo indicado em PT em milissegundos tiver se esgotado tO PT tl t4 PT t5 PT aS AS O tO t t td t t5 Figura 6 2 Exibi o Gr fica do Comportamento de TON em Fun o do Tempo Exemplo de declara o TONINnSE TON Exemplo em IL CAL TOMinst IM vVarB00LI r Pl i Tghs f ET gt VYarTimelur LD ToNinst i ST vYarBDOLoS Exemplo em FBD T Nins t YarBDOLI vYarBDOL T 53 ET vVarTimelur Exemplo em ST TONINnSE IN VarBOCQLL PT Ta5s Fornecido pela standard hbrary Bloco funcional de tempo que implementa um retardo na desenergiza o Quando a entrada for alterada de TRUE para FALSE borda de descida transcorrer certo tempo at que a sa da v para FALSE Entradas IN BOOL borda de descida inicia a contagem ET PT TIME limite superior para contagem ET tempo de atraso Sa das Q BOOL gera uma borda de descida assim que ET tiver atingido o limite superior PV tempo de retardo esgotado ET estado atual do tempo de retardo TOF IN PT Q ET Se IN for TRUE as duas sa das ser o TRUE e 0 respectivamente 200 RIC 6 Bibliotecas Assim que IN tornar se FALSE o tempo come ar a ser contado em ET em milissegundos at que seu valor seja igual a PT e a partir da permanecer constante Q ser FALSE quando I
49. IWO Tipo Tipo de dado do canal de entrada ou sa da por exemplo BOOL Unidade Unidade do valor do par metro por exemplo MS para milissegundos Descri o Texto de descri o para o par metro Valor Atual valor atual do par metro exibido no modo online Voc pode modificar e corrigir o campo Endere o de uma sa da ou entrada Para isso selecione a coluna de endere os e pressione a tecla lt ESPA O gt para abrir o campo de edi o Agora modifique o valor ou deixe sem modifica es e feche o campo de edi o atrav s da tecla lt ENTER gt O campo de endere o ficar marcado pelo s mbolo D 72 4 Refer ncia de Programa o Canais Vari vel Mapeamento Canal Endere o Tipo Unidade Descri o a Reserved Oh 250685000 Reserved for internal use Figura 4 8 Exemplo de Endere o Manualmente Modificado S poss vel modificar o endere o de entrada ou de sa da inteira n o os seus subelementos Assim se uma entrada ou sa da est representado na tabela de mapeamento com qualquer sub rvore apenas o campo de endere o mais alto pode ser editado Se voc quiser remover a fixa o do valor reabra a edi o do campo Endere o exclua o valor e feche com lt ENTER gt O endere o e os endere os seguintes ser o definido de volta para os valores que tinham antes da modifica o manual e o s mbolo ser removido NOTA Em projetos criados a partir do modelo Projeto M
50. O coment rio pode apresentar v rias linhas Quebras de linha s o inseridas via lt ENTER gt e a entrada do texto do coment rio encerrada com lt CTRL gt lt ENTER gt Para acrescentar um r tulo o qual pode ser endere ado por um salto usa se o comando Inserir R tulo Os r tulos s o exibidos abaixo dos campos t tulo e coment rio e caso estes n o estejam dispon veis diretamente abaixo da borda superior de uma rede 1 T tulo da Rede Coment rio da Rede Rotulo da Rede munnun nas Figura 5 65 Posi es do T tulo Coment rio e R tulo em uma Rede As redes podem ser configuradas em estado de coment rio o que faz com que a rede n o seja processada mas exibida e tratada como um coment rio Os comandos padr o para Copiar Recortar Inserir e Excluir podem ser aplicados a uma rede selecionada NOTA Quando o clique do mouse executado em um t tulo coment rio ou r tulo somente estes ser o selecionados n o a rede inteira Assim sendo a execu o dos comandos padr o n o tem influ ncia na rede em si Para inserir uma rede usa se o comando Inserir Rede ou arrasta se a mesma a partir da caixa de ferramentas Toda rede incluindo seus elementos pode ser copiada ou movida ao ser arrastada e solta no editor Considere a possibilidade de criar subredes atrav s da inser o de ramifica es Rede RET No modo online automaticamente uma rede vazia adicional exibida abaixo das redes ex
51. Par metros de sa da Vari vel manipulada Se o valor calculado pelo algoritmo do bloco funcional para a Overflow BOOL vari vel MV for maior que MaxMV ent o MV ser igual a MaxMV e esta sa da ser igual a TRUE Se o valor calculado pelo algoritmo do bloco funcional para a BOOL vari vel MV for menor que MinMV ent o MV ser igual a MinMV e esta sa da ser igual a TRUE Tempo efetivo de amostragem dos tr s ltimos ciclos em Eff3ST B so segundos utilizado para os c lculos de a o derivativa M ximo valor do tempo efetivo de amostragem em segundos Maxel RE desde a inicializa o do bloco PID MinEffST REAL M nimo valor do tempo efetivo de amostragem em segundos desde a inicializa o do bloco PID C digo de erro exibido pelo bloco PID Para remov lo basta solucionar o problema e reiniciar o bloco atrav s da vari vel EST REAL Tempo efetivo de amostragem em segundos utilizado para os c lculos de a o derivativa e taxa limite de MV ErrorCode 225 6 Bibliotecas Restart Abaixo segue a descri o dos erros sem erro MaxMV lt MinMV MaxPV lt MinPV PV gt MaxPV PV lt MinPV Ti lt 0 001 s com a o integral habilitada Td lt 0 s com a o derivativa habilitada Gp lt 0 MaxVarMV lt 0 9 DeadBand lt 0 10 SampleTime lt 0 001 s ou SampleTime gt 1000 s com MeasureST falso 11 SP gt MaxPV 12 SP lt MinPV O 1 2 3 4 95 6 T
52. RET Retorno antecipado da POU e do salto RET para a POU onde ocorreu a chamada RET C Condicional se o acumulador for TRUE RETC Retorno antecipado da POU e do salto para a POU onde ocorreu a chamada RET CN Condicional se o acumulador for FALSE Retorno antecipado da POU e do salto para a POU onde ocorreu a chamada o D Avalia a opera o de refer ncia Tabela 5 12 Operadores e Modificadores LT cVar1 RETCN Consulte o item Operadores 166 5 Editores das Linguagens de Programa o Para obter informa es sobre o uso e tratamento de operandos m ltiplos operandos complexos fun o m todo bloco funcional programa o chamadas e saltos veja o item Trabalhando na Visualiza o do Editor IL AND TRUE load TERUE to accumulator ANDH bvYarl execute AND with negated value of bVari JMPC ul If accum is TEVE jump to label mi LDH bvar amp store negated value of Wear ST bRes aa IH DRESs mis LD bVYar store valne of bVarz ST bRes 2 IH bRes Figura 5 48 Programa IL com Uso de Operadores Trabalhando na Visualiza o dos Editores FBD e LD Redes s o as unidades b sicas da programa o FBD e LD Cada rede cont m uma estrutura que exibe uma express o l gica ou aritm tica uma POU fun o programa chamada de bloco funcional etc um salto ou uma instru o de retorno Ao criar um novo objeto a janela do editor automaticamente cont m uma rede vazia Consulte as configura
53. TO BYTE ST byt 106 4 Refer ncia de Programa o O resultado 129 LD C 1995 02 13 14 20 DATE TO STERI ST EE O resultado DTH1998 02 13 14 20 Exemplos em ST D E DATE TO BODL DR LO 0 01 01 0 resultado FALSE L PSDATE TO INTIDGIS 00 15 0 resultado 29952 byt DT TO BYTE DT amp 1970 01 15 0 resultado Goc0S 05 129 SERCSDI TO SIRLNC DIG1996 02 13 0 resultado J4ss0 DTH1998 02 13 14 208 Exemplos em FBD DATE TO BOOL D amp la9v0 01 01 h DATE TO IHT b 1970 01 15 al DATE TO EYTE L 1970 01 15 05 05 05 i DT TO STRING L 1995 02 1l3 14 20 Str Convers es STRING TO Operador IEC convers o do tipo de vari vel STRING para um tipo diferente A convers o trabalha de acordo com o mecanismo de compila o C standard STRING para INT e a seguir INT para BYTE O byte maior ser cortado e assim somente resultar o valores entre 0 255 Desta forma poss vel para a maioria dos processadores gerar um c digo timo A convers o pode ser executada atrav s de uma instru o de m quina simples Sintaxe para o operador de convers o STRING TO lt tapo de dados O operando da vari vel do tipo STRING deve conter um valor v lido do tipo de vari vel do dispositivo Caso contr rio o resultado ser O LD TRUE STRING TO BOOL ST b O resultado TRUE LD ahc a STRING TO WORD ST W O resultado 0 107 TRUNC 4 Refer ncia de
54. VarSTRINGI i REPLACE SUXYSL K t 2 2 Fornecido pela standard hbrary Esta fun o do tipo INT procura a posi o de uma parte da string Entradas STR1 STRING string na qual a posi o STR2 ser procurada STR2 STRING string cuja posi o deve ser procurada em STRI Valor de retorno INT posi o inicial de STR2 na STRI Ser O se a posi o de STR2 n o for encontrada em STRI FIND STRI STR2 significa encontrar a posi o do primeiro caractere onde STR2 aparece na STRI pela primeira vez Se STR2 n o for encontrada em STRI ent o a fun o retornar 0 192 Exemplo em IL LD abc def FIHD ide ST Var TE INGI O resultado ser 4 Exemplo em FBD FIHD abode a TRI VarINTI ide a TRE Exemplo em ST arINT1I FIND abcdef de Blocos Funcionais Biest veis SR RS Fornecido pela standard hbrary Bloco funcional que implementa biest veis dominantes Entradas SET1 BOOL RESET BOOL Sa das Q1 BOOL Q1 SR SET1 RESET Q1 NOT RESET AND Q1 OR SETI Exemplo de declara o SRINSL 7 SR Exemplo em IL CAL SRinsat dETl Varkooll p RESET YVYarBoolz LD SRinst il ST vVar Bool Exemplo em FBD Rinst var B L3 Exemplo em ST SRINst SET1 VarBOOLL RESET VarBOOL2 VarBOOLS3 SRInst Ol Fornecido pela standard hbrary 193 6 Bibliotecas 6 Bibliotecas Bloco funcional biest vel Entradas SET BOOL
55. a r starts timer with rising edge reset for tonInst2 Figura 5 51 Editor Tabular IL Percorrendo a tabela e Teclas lt f gt e lt gt possibilitam o deslocamento para os campos superior e inferior respectivamente e lt TAB gt movimenta se para o campo direita e lt SHIFT gt lt TAB gt movimenta se na linha para o campo esquerda e lt SPACE gt abre o campo atualmente selecionado Pode ser aberto com dois cliques no mouse Se aplic vel o Assistente de Entrada pode ser disponibilizado atrav s do bot o LJ o campo aberto pode ser fechado com lt ENTER gt ou lt ESC gt confirmando ou cancelando as escolhas feitas respectivamente e lt CTRL gt lt ENTERS gt insere uma nova linha abaixo da atual e lt DELETE gt exclui a linha atual ou seja onde o campo foi selecionado e Recortar Copiar Colar para copiar uma ou mais linhas selecione no m nimo uma e use o comando correspondente Para recortar uma linha use o comando Recortar O comando Colar insere a linha previamente copiada recortada antes do campo selecionado Se n o houver campo selecionado a linha ser colada ao final da rede M ltiplos Operandos Operadores Extens veis lt CTRL gt lt HOME gt rola para o In cio do documento e marcam a primeira rede lt CTRL gt lt END gt rola para o fim do documento e marcam a ltima rede lt PAGEUP gt rola uma tela para cima e marca o ret ngulo superior mais acima lt
56. amento NOTAS Valores booleanos ser o distribu dos por byte se nenhum endere o de bit nico for explicitamente especificado Exemplo uma altera o no valor de varbooll AT QWO afeta o intervalo de QX0 0 a QOX0 7 Altera es online podem alterar os conte dos nos endere os Considere isto ao usar ponteiros em endere os Em ST uma chamada de fun o pode tamb m funcionar como um operando Exemplo Result Fet 3 TIME Function Esta fun o retorna o tempo em milissegundos decorrido desde a inicializa o do sistema O tipo de dado TIME Exemplo em IL TIME ST tempo Exemplo em ST tempo TIME 122 5 Editores das Linguagens de Programa o 5 Editores das Linguagens de Programa o Editor CFC O editor CFC est dispon vel para objetos de programa o na linguagem Gr fico Funcional Cont nuo CFC que uma extens o das linguagens de programa o IEC 61131 3 Selecione a linguagem ao adicionar um novo objeto POU via comando Acrescentar Objeto no projeto O editor CFC um editor gr fico O editor estar dispon vel na parte inferior da janela que se abre quando o objeto POU CFC aberto Na sua parte superior a janela mostra o Editor de Declara o Eb P gina Inicial 8 Configuration Bus PRG2 x Caixa de Ferramentas 1 PROGRAM PRGZ zaj CFE 2 VAR k Ponteiro s Entrada 4 RESULTI REAL Sa da END VAR in JF Caixa mm Salto R tulo
57. aplica o por exemplo use o comando Acrescentar Objeto no menu de contexto e selecione 15 2 Conceitos e Componentes B sicos POU no submenu que aparecer O di logo Acrescentar POU abrir para que se configure o seu nome tipo e linguagem de implementa o No caso dos blocos funcionais opcionalmente podem ser definidas as propriedades ESTENDER e IMPLEMENTAR No caso das fun es o tipo de retorno tamb m deve ser especificado Veja os respectivos itens em Programa Fun o e Bloco Funcional Acrescentar POU Criar uma nova POU Unidade de Organiza o de Programa Tipo Programa Bloco funcional Estender fbAss1 Implementar Diagrama de Blocos Funcionais FBD Fun o Linguagem de implementa o Texto Estruturado ST Figura 2 1 Di logo Acrescentar POU Dependendo do tipo a POU pode ser complementada por m todos propriedades a es e transi es Para tal tamb m utilizado o comando Acrescentar Objeto A ordem hier rquica de processamento das inst ncias da POU de uma aplica o depende da configura o espec fica do dispositivo pilha de chamadas Cada POU consiste de uma parte de declara o e uma parte de implementa o O corpo escrito em uma das linguagens de programa o dispon veis que s o IL ST SFC FBD LD ou CFC O MasterTool IEC XE suporta todas as POUs descritas pela norma IEC 61131 3 Para usar estas POUSs no projeto deve se incluir a biblioteca st
58. bloco funcional poss vel escolher a op o EXTENDS ao acrescentar o bloco ao projeto atrav s do di logo Acrescentar Objeto Sintaxe 22 2 Conceitos e Componentes B sicos FUNCTION BLOCK lt nome do bloco funcional gt EXTENDS lt nome do bloco ftuncional gt A declara o das vari veis ent o realizada na sequ ncia Exemplo de defini o do bloco funcional fbA FUNCTION BLOCK fbA VAR INPUT Zaint Defini o do bloco funcional fbB FUNCTION BLOCK fbB EXTENDS fbA VAR INPUT iVvarcinto No exemplo acima e FbB cont m todos os dados e m todos definidos por fbA Uma inst ncia de fbB pode agora ser usada em qualquer contexto onde um bloco funcional do tipo fbA esperado e FbB pode substituir os m todos definidos em fbA Isto significa que fbB pode declarar um m todo com o mesmo nome e as mesmas entradas e sa das declaradas em fbA e N o permitido que fbB use as vari veis do bloco funcional com o mesmo nome usado em fbA Neste caso o compilador apontar um erro e Vari veis e m todos de fbA podem ser acessados diretamente dentro do escopo fbB atrav s da palavra chave SUPER SUPER lt m todo gt Invoca o de M todo programa o orientada ao objeto quando aplicada em blocos funcionais al m da op o ESTENDER permite o uso de heran a Ela requer invoca es din micas de m todo conhecidas como chamadas de fun o virtual Para obter maiores informa es consulte o i
59. blocos funcionais vari veis tamb m podem ser especificadas com declara es de endere os incompletos Para que cada vari vel possa ser usada em uma Inst ncia local deve haver um item para ela na configura o de vari veis Tipo de dado v lido opcionalmente complementado por lt Inicializa o gt Opcionalmente podem ser adicionadas instru es de pragma na parte de declara o de um objeto para modificar a gera o de c digo Recomenda es na Nomea o de Identificadores Identificadores s o definidos na declara o de vari veis nomes das vari veis tipos de dados definidos pelo usu rios e na cria o de POUs fun es blocos funcionais e programas Al m das quest es usualmente consideradas na defini o de um identificador alguns itens devem ser observados no intuito de nome los o mais exclusivamente poss vel Nomes de Vari veis A nomea o das vari veis nas aplica es dentro do poss vel deve seguir a nota o h ngara Para cada vari vel deve haver um nome de base isto uma descri o breve por m significativa A primeira letra de cada palavra de um nome de base deve ter uma letra mai scula As demais devem ser min sculas exemplo FileSize 41 4 Refer ncia de Programa o Antes do nome de base s o adicionados prefixos em letras min sculas correspondentes ao tipo de dado da vari vel Veja na tabela abaixo algumas informa es e os prefixos recomendado
60. comportamento e apar ncia Ali se definem as configura es personalizadas para realce de cor n meros de linha guias recuos e outras E poss vel realizar uma sele o de bloco pressionando se lt ALT gt ao selecionar a rea de texto desejada via mouse O editor estar dispon vel na parte inferior da janela que tamb m inclui o Editor de Declara o na parte superior Nos casos de erros sint ticos durante a edi o mensagens correspondentes ser o exibidas na janela de Mensagem s de Pr Compila o Uma atualiza o desta janela ocorrer a cada vez que o foco da janela do editor for reajustado por exemplo posicionando o cursor em outra janela e em seguida retornando janela do editor Editor ST no Modo Online No modo online o Editor de Texto Estruturado editor ST fornece visualiza es para monitora o e para escrita for amento das vari veis e express es no controlador A funcionalidade de depura o breakpoints passo a passo etc est dispon vel Para informa es sobre como abrir objetos no modo online consulte o item Interface do Usu rio no Modo Online no Manual de Utiliza o MasterTool TEC XE MU299048 Para informa es sobre como inserir valores preparados para vari veis no modo online consulte o item For amento de Vari veis Observe que a janela do editor de um objeto ST tamb m inclui o Editor de Declara o na parte superior Para informa es sobre o editor de declara
61. condi o em uma constru o espec fica Sintaxe CASE lt Varl gt OF lt Valor 1 gt lt Instru o L gt lt Valor 2 gt lt INnsSteucao 2 gt Na lor 3y Valor 4 Valor 574 lt Instru o 5 gt lt Valor 6 ss Valor 10 gt lt Instr c o 4 gt lt Valor n gt lt Instru o n gt ELSE lt tnStru o ELSE gt END CASE Uma instru o CASE processada de acordo com o seguinte modelo 156 5 Editores das Linguagens de Programa o e Sea vari vel em lt Varl gt apresentar o valor lt Valor 1 gt ent o a instru o lt Instru o 1 gt ser executada e Se lt Var 1 gt n o apresentar nenhum dos valores indicados ent o a lt instru o ELSE gt ser executada e Sea mesma instru o deve ser executada para muitos valores de vari veis estas escrevem os valores um ap s o outro separados por v rgulas condicionando assim uma execu o em comum e Se uma Instru o deve ser executada em um Intervalo de valores das vari veis estas escrevem o valor inicial e o final separados por dois pontos Assim determina se uma condi o em comum Exemplo CASE INTI QE 1 5 BOOLI TRUE BOOL FALSE 2 BOQL2 FALSE BOOL3 TRUE 10 20 BOOLI TRUE BOOL3 TRUE ELSE BOOL1 NOT BOOLI BOOL2 BOOL1 OR BOOL2 END CASE La o FOR O la o FOR permite a repeti o de processos Sintaxe FOR lt INT VAR gt lt VALOR INICIAL gt TO lt VALOR FINAL gt BY lt TAMANHO
62. de Utiliza o MasterTool IEC XE MU299048 Linguagens de Programa o Suportadas Todas as linguagens de programa o mencionadas na norma IEC 61131 s o suportadas atrav s de editores especialmente adaptados 14 2 Conceitos e Componentes B sicos e Editores FBD LD IL para Diagrama de Bloco Funcional FBD Diagrama Ladder LD e Lista de Instru es IL e Editor SFC para Sequenciamento Gr fico de Fun es e Editor ST para Texto Estruturado O MasterTool IEC XE fornece adicionalmente um editor para programa o em CFC denominado Editor CFC para Gr fico Funcional Cont nuo Este entretanto n o faz parte da norma IEC Unidades de Organiza o de Programas POU O termo POU utilizado basicamente para todos os objetos usados para criar um programa do CP e significa Unidade de Organiza o de Programa POUs gerenciadas na Visualiza o das POUs n o s o espec ficas do dispositivo mas devem ser Instanciadas para uso em um dispositivo aplica o Para tanto POUs de programa devem ser chamadas por uma tarefa da respectiva aplica o As POUS inseridas na rvore de Dispositivos explicitamente em uma aplica o SOMENTE s o gerenciadas na Visualiza o dos Dispositivos ou seja podem ser instanciadas apenas por aplica es recuadas abaixo desta aplica o aplica o secund ria Para obter mais informa es veja as informa es sobre rvore de Dispositivos e Aplica o no Manual de Utiliza o
63. de corrente da fonte de alimenta o regras de posicionamento dos m dulos da S rie Nexto parametriza o e configura o de m dulos Depura o em tempo real que prov uma maneira de verificar a funcionalidade da aplica o passo a passo verificar o conte do de vari veis ou ainda adicionar e remover breakpoints durante a programa o da UCP da S rie Nexto Documentos Relacionados a este Manual Para obter informa es adicionais sobre o MasterTool IEC XE podem ser consultados outros documentos espec ficos al m deste Estes documentos encontram se dispon veis na sua ltima revis o em www altus com br 1 Introdu o Considera es Gerais sobre Documenta o ALTUS Cada produto possui um documento denominado Caracter stica T cnica CT onde se encontram as caracter sticas do produto em quest o Adicionalmente o produto pode possuir Manuais de Utiliza o os c digos dos manuais se aplic veis s o sempre citados na CT Documenta o de Suporte ao MasterTool IEC XE Aconselham se os seguintes documentos como fontes de informa o adicional C digo do documento Descri o idioma CE114000 CT114000 CS114000 CE114100 CT114100 CS114100 CE103705 CT103705 CS103705 MU214600 MU214000 MU214300 MU214605 MU214100 MU214305 MU299609 MU299048 MU299800 MU399609 MU399048 MU399800 Nexto Series Features and Configuration S rie Nexto Caracter sticas e Configura es Serie Nexto Especi
64. de entrada TRUE ou FALSE somente se a vari vel booleana atribu da for FALSE Observe que a caixa de ferramentas fornece diretamente elementos de contatos negados Um contato pode ser inserido em uma rede LD atrav s dos comandos Inserir Contato Inserir Contato Direita Inserir Contato Paralelo Acima ou Inserir Contato Paralelo Abaixo os quais por padr o fazem parte do menu FBD LDY IL Alternativamente o elemento pode ser inserido via arrastar e soltar a partir da Caixa de Ferramentas ou a partir de outra posi o no editor Se o usu rio estiver trabalhando na visualiza o das redes FBD ou IL o comando n o estar dispon vel por m contatos e bobinas de uma rede LD podem ser representados pelos elementos FBD e pelas instru es IL correspondentes Este um elemento LD Do lado direito de uma rede LD pode haver um n mero indeterminado de bobinas as quais s o representadas por par nteses byvare Al Figura 5 73 Bobina Elas podem ser organizadas somente em paralelo Uma bobina transmite o valor das conex es da esquerda para a direita e copia os mesmos para uma vari vel Booleana apropriada Na linha de entrada podem estar presentes os valores ON TRUE ou OFF FALSE Contatos e bobinas tamb m podem ser negados barra no s mbolo da bobina 181 5 Editores das Linguagens de Programa o bvarz Figura 5 74 Bobina Negada Neste caso o valor negado do sinal de entrada ser copiado pa
65. de linguagem 45 4 Refer ncia de Programa o Consulte o cap tulo sobre o Editor de Declara o no Manual de Utiliza o MasterTool IEC XE MU299048 para obter mais informa es Di logo Autodeclarar Pode ser definido no di logo Op es categoria Editor Textual que o di logo Autodeclarar seja aberto assim que uma string ainda n o declarada for inserida na parte de implementa o de um editor e a tecla lt ENTER gt for pressionada Este di logo auxiliar na declara o da vari vel Este di logo tamb m pode ser explicitamente aberto pelo comando Autodeclarar dispon vel no menu Editar ou ainda pressionando as teclas lt SHIFT gt lt F2 gt Se uma vari vel declarada j tiver sido selecionada anteriormente sua declara o pode ser editada no di logo Modo Atalho O editor de declara o assim como outros editores textuais onde s o feitas as declara es permitem o modo de atalho Este modo ativado quando a linha de uma declara o finalizada com lt CTRL gt lt ENTER gt e permite o uso de atalhos ao inv s de digitar a declara o completa por extenso Os seguintes atalhos s o suportados e Todos identificadores de uma linha incluindo o ltimo se tornar o identificadores de vari veis declaradas e O tipo de declara o determinado pelo ltimo identificador da linha Neste contexto aplica se o seguinte Identificador Resultado B ou BOOL resulta em BOOL l ou INT resulta
66. de um passo e a o ou o tempo de processamento de um passo ativo A sintaxe para a declara o da vari vel implicitamente criada lt Nome do passo gt SFCStepTvype E lt Nome da a o gt SECActionType 145 5 Editores das Linguagens de Programa o NOTA As a es sempre s o precedidas por um sublinhado Mem rias booleanas para estados de passos e lt nome do passo gt x mostra o status de ativa o atual e lt nome do passo gt x mostra o status de ativa o para o pr ximo ciclo Se lt nome do passo gt x TRUE o passo ser executado no ciclo atual Se lt nome do passo gt x TRUE e lt nome do passo gt x FALSE o passo ser executado no ciclo seguinte ou seja lt nome do passo gt x ser copiado para lt nome do passo gt x no In cio de um ciclo Mem rias booleanas para estados de a es e _ lt nome da a o gt x TRUE se a a o executada e _ lt nome da a o gt x TRUE se a a o est ativa Gera o de S mbolo Nas propriedades do elemento de um passo ou a o poss vel definir se uma defini o de s mbolo deve ser adicionada a uma aplica o de s mbolo possivelmente criada e enviada em rela o mem ria do nome do passo ou da a o Para tal selecione o item para o direito de acesso desejado na coluna S mbolo da visualiza o das propriedades do elemento NOTA As mem rias descritas acima podem ser usadas para for ar um determinado status
67. de valor para um passo ou seja defini lo como ativo No entanto esteja ciente de que isto pode causar descontrole no SFC Tempo Via Vari veis TIME A mem ria t determina o tempo atual transcorrido desde que o passo se tornou ativo Isto ocorre apenas para passos independentemente do tempo configurado nos atributos de passo veja abaixo as considera es sobre o SFCError Para passos nome do passo gt U lt nome do passo gt s t n o pode ser usado para Lins externos Para a es as vari veis de tempo impl citas n o s o usadas Controle de Execu o SFC Timeouts Reset Modo Auxiliar Algumas vari veis implicitamente dispon veis tamb m denominadas mem rias SFC podem ser usadas para controlar a opera o de um SFC por exemplo para indicar overflows de tempo ou habilitar o modo auxiliar para trocar transi es Para acessar estas mem rias e coloc las em funcionamento elas devem ser declaradas e ativadas Isto deve ser feito no di logo de Configura es SFC subdi logo do di logo Propriedades do objeto A declara o manual s necess ria para habilitar o acesso de escrita a partir de outra POU veja abaixo Acessando Mem rias Entretanto neste caso considere ao declarar a mem ria globalmente a op o Declarar no di logo das Configura es SFC deve estar desativada para n o obter uma mem ria local implicitamente declarada que ent o seria usada em vez da global As configu
68. declara o impl cita O m todo de sa da se estiver presente chamado para todas as inst ncias declaradas dos blocos funcionais antes de um novo envio em um reset ou durante uma altera o online para todas as inst ncias movidas ou exclu das H somente um par metro mandat rio para o m todo de sa da METHOD LER BOOL VAR INPUT bInCopyCode BOOL se TRUE o m todo de sa da chamado para uma inst ncia copiada ap s a altera o online END VAR Considere tamb m o m todo FB_init e a seguinte ordem de execu o e M todo de sa da sa da da antiga inst ncia old inst fb exit bInCopyCode TRUE e M todo de inicializa o inicializa o da nova Inst ncia new inst fb init bInitRetains FALSE bInCopyCode TRUE e Copiar valores de blocos funcionais copiar c digo copy fub amp old Inst amp new Inst 55 4 Refer ncia de Programa o Al m disto em caso de heran a a seguinte sequ ncia de chamada verdadeira para as POUs usadas nesta listagem por exemplo sup e se SubFB EXTENDS MamFB e SubSubFB EXTENDS SubFB LhSubSuBrD FB EXLE ass TDSUDED EB ERICO TPMaInED EB EXI E esi FOMA IDEG SEB TALE a TPO CODE metas aa TDOP SUDEP EB Inv ere 1 Para FB reinit EMEB TeL Mi tsas PH UDEN FE TOINEN reek TOSU POUDEFDe FB ANTE ere Instru es de Pragma Uma instru o de pragma usada para simular as propriedades de uma ou mais vari veis referentes aos pr
69. descarregar eventuais potenciais est ticos acumulados no corpo Para isso toque com as m os nuas em qualquer superficie met lica aterrada antes de manipular os m dulos Tal procedimento garante que os n veis de eletricidade est tica suportados pelo m dulo n o ser o ultrapassados E importante registrar o n mero de s rie de cada equipamento recebido bem como as revis es de software caso existentes Essas informa es ser o necess rias caso seja preciso contatar o Suporte T cnico da Altus Suporte T cnico Para entrar em contato com o Suporte T cnico da Altus em S o Leopoldo RS ligue para 55 51 3589 9500 Para conhecer os centros de Suporte T cnico da Altus existentes em outras localidades consulte nosso site www altus com br ou envie um e mail para altus altus com br 1 Introdu o Se o equipamento j estiver instalado tenha em m os as seguintes informa es ao solicitar assist ncia e os modelos dos equipamentos utilizados e a configura o do sistema Instalado e o n mero de s rie da UCP e arevis o do equipamento e a vers o do software executivo constantes na etiqueta afixada na lateral do produto e as informa es sobre o modo de opera o da UCP obtidas atrav s do programador MasterTool e o conte do do programa aplicativo m dulos obtido atrav s do programador Master Tool e a vers o do programador utilizado Mensagens de Advert ncia Utilizadas neste Manual Neste manual as
70. duas vari veis podem ser comparadas Ganho proporcional utilizado para calcular a a o proporcional REAL do bloco PID i Tempo Integral em segundos utilizado para calcular a a o Ti REAL integral do bloco PID Tempo Derivativo em segundos utilizado para calcular a a o Td REAL an derivativa do bloco PID BIAS REAL Compensa o adicionada vari vel manipulada Valor atribu do vari vel manipulad ndo utilizado o mod ManualMV REAL alor atribu do vari vel manipulada quando utilizado o O manual M xima varia o da vari vel manipulada entre o ciclo atual e o MaxVarMV REAL ciclo anterior Caso seja zero ou negativa o bloco PID n o tem limite de varia o de MV M ximo valor da vari vel manipulada MaxMV REAL Caso o valor calculado seja maior do que o configurado o MV ser igual ao MaxMV M nimo valor da vari vel manipulada MinMV REAL Caso o valor calculado seja menor do que o configurado o MV ser igual ao MinMV Tempo morto DeadBand REAL M nimo valor de erro que ir causar a corre o de MV em modo autom tico ou seja pequenos erros menores que DeadBand n o causar o altera es na vari vel manipulada 222 6 Bibliotecas M ximo valor da vari vel de processo MaxPV REAL Caso o valor de PV seja maior do que o configurado o bloco PID ir parar o c lculo e ser gerado um c digo de erro na sa da M nimo valor da vari vel de processo MinPV REAL Caso o valor de P
71. e do operando OR xVar negado XOR OR EXCLUSIVO bit a bit do acumulador e XOR NOT Nega o bit a bit do conte do do acumulador Soma do acumulador e operando O ADD iVar1 iVar2 resultado copiado para o acumulador Subtra o do acumulador e operando O SUB iVar2 resultado copiado para o acumulador Multiplica o do acumulador e operando MUL iVar2 O resultado copiado para o acumulador Divis o do acumulador e operando O DIV 44 resultado copiado para o acumulador Verifica se o acumulador maior que gt GT 28 o operando O resultado BOOL copiado para o acumulador do operando negado N bVar1 bVar2 MUL DIV G Verifica se o acumulador maior ou igual GE iVar2 gt ao operando O resultado BOOL copiado para o acumulador Verifica se o acumulador igual ao EQ iVar2 operando O resultado BOOL copiado para o acumulador Verifica se o acumulador diferente lt gt NE iVar1 do operando O resultado BOOL copiado para o acumulador m m m 16 Verifica se o acumulador menor ou igual lt ao operando O resultado BOOL copiado para o acumulador LT Verifica se o acumulador menor lt que o operando O resultado BOOL copiado para o acumulador Salto incondicional para o r tulo JMPN next CAL CN Chamada Condicional de PROGRAMA CAL prog1 ou BLOCO FUNCIONAL se o acumulador for TRUE
72. em INT R ou REAL resulta em REAL _Soustring resulta em STRING Tabela 4 2 Tipo de Declara o e Se nenhum tipo tiver sido estabelecido segundo estas regras automaticamente o tipo definido ser BOOL e n o o ltimo identificador e Toda constante dependendo do tipo da declara o se tornar uma inicializa o ou uma string e Um endere o como em MD12 recebe o atributo AT e Um texto ap s um ponto e v rgula torna se um coment rio e Todos outros caracteres na linha s o ignorados Exemplos Atalho O Declara o S ACC AB ABI A BinTes STS 2 string A ST ISTRING 2 String A X MD12 R 5 N mero real X AT MD12 REAL 5 0 N mero real co EEE Tabela 4 3 Exemplos de Atalhos Declara o AT Para vincular uma vari vel de projeto diretamente a um endere o definido este pode ser Inserido na declara o AT da vari vel A atribui o de uma vari vel a um endere o tamb m pode ser feita no di logo de mapeamento de um dispositivo na configura o do CP rvore de dispositivos 46 4 Refer ncia de Programa o Sintaxe lt Identificador gt AT lt Endere o gt lt Tipo de dado gt A palavra chave AT deve ser seguida por um endere o v lido Veja o item Endere o para obter mais informa es e poss veis sobreposi es em caso de modo de endere amento de bytes Esta declara o permite atribuir um nome espec fico a um endere o Quaisquer altera es referentes aos
73. es da DUT estendida ser o automaticamente v lidas dentro da DUT atual Para este prop sito ativa se a op o Estender e digita se o nome da outra DUT Ap s confirmar a configura o pressione o bot o Abrir O editor da nova DUT estar dispon vel e pode se iniciar a edi o Sintaxe para declara o de uma DUT TYPE lt IDENTIFICADOR gt lt DECLARA O DOS COMPONENTES DA DUT gt END TYPE A declara o dos componentes da DUT depende do seu tipo por exemplo se uma estrutura ou uma enumera o Exemplo 24 M todo 2 Conceitos e Componentes B sicos Veja nas duas DUTs abaixo estruturas de defini o struct1 e struct sendo que struct2 estende struct 1 o que significa que se pode usar struct2 A na implementa o para acessar a vari vel A TYPE STRUCT STRUCT A INT B BOOL END STRUCT END ILER TYPE STRUCT EXTENDS SIRUCTI STRUCT C DWORD DESTRING END STRUCT END TYPE at Assim como na programa o orientada a objetos os M todos M podem ser usados para descrever uma sequ ncia de Instru es Assim como a fun o o m todo n o uma POU independente mas deve ser atribu do a um bloco funcional Pode ser considerado como uma fun o que cont m uma Inst ncia do respectivo bloco funcional Inserindo M todos Para atribuir um m todo a um bloco funcional selecione o na rvore das POUs ou Dispositivos No menu de contexto use o comando Acrescentar Objeto M t
74. es do Cursor e Dois Exemplos de Textos Selecionados e Seo cursor estiver posicionado no corpo de um elemento caixa entrada sa da salto r tulo retorno e coment rio este ser exibido em vermelho e poder ser movido com o mouse comment spz Figura 5 4 Poss veis Posi es do Cursor e Exemplo de um Corpo Selecionado e Seo cursor estiver posicionado em uma conex o de entrada ou sa da de um elemento este ser exibido em vermelho e pode ser negado ou submetido a um set reset Figura 5 5 Poss veis Posi es do Cursor e Exemplos de Posi es de Entrada e Sa da Selecionadas 124 5 Editores das Linguagens de Programa o Elementos CFC Caixa de Ferramentas Os elementos gr ficos dispon veis para programa o na janela do editor CFC s o fornecidos por uma Caixa de Ferramentas Ela pode ser aberta em uma janela de visualiza o atrav s do comando correspondente no menu Visualizar Caixa de Ferramentas CFC k Ponteiro Entrada Saida TF Caixa mm Salto R tulo gt Retorno ST Compositor TE Seletor Coment rio Pino de Entrada Pino de Saida Figura 5 6 Caixa de Ferramentas CFC Padr o O elemento desejado pode ser selecionado na Caixa de Ferramentas e inserido na janela do editor arrastando e soltando Al m dos elementos de programa o no topo da lista da Caixa de Ferramentas encontra se o item k Ponteiro Enquanto este item estiver selecionado o cursor t
75. es gerais do editor no di logo Op es guia Editores FBD LDe IL Quando o cursor est posicionado sob nome de uma vari vel ou par metro de caixa ele exibe uma tooltip que indica o respectivo tipo e no caso de inst ncias de blocos funcionais o valor de inicializa o Para os operadores IEC SEL LIMIT MUX uma breve descri o das entradas ser exibida Se definido tamb m ser o exibidos o endere o e coment rio do s mbolo assim como o coment rio do operando entre aspas na segunda linha Inserindo e organizando elementos e Elementos tamb m podem ser diretamente arrastados com o mouse a partir da caixa de ferramentas para a janela do editor ou de uma posi o para outra Para isto selecione o elemento com um clique de mouse mantenha o pressionado e arraste o mesmo para a respectiva rede na visualiza o do editor arrastar e soltar Assim que a rede tiver sido alcan ada todas as poss veis posi es de inser o ser o indicadas por marcadores verdes Ao posicionar o cursor em um destes pontos o marcador mudar para verde e soltando o bot o o elemento poder ser ali posicionado e Os comandos Recortar Copiar Colar e Excluir por padr o dispon veis no menu Editar podem ser usados para organizar elementos A c pia tamb m pode ser feita via arrastar e soltar selecione o elemento na rede com um clique de mouse e pressione a tecla lt CTRL gt do teclado mantendo os pressionados arraste o elemento para a posi
76. exibida uma mensagem apropriada Task Configuration A Task Configuration E define uma ou v rias tarefas para controlar o processamento de um programa aplicativo Ela um objeto de recurso essencial para uma aplica o e inserido automaticamente ao criar um novo projeto a partir do modelo Projeto MasterTool Padr o Uma tarefa pode chamar uma POU de programa espec fica da aplica o que esteja dispon vel na rvore de dispositivos assim como o programa gerenciado na janela das POUSs Neste ltimo caso o programa do projeto global dispon vel ser instanciado pela aplica o Uma task configuration pode ser editada no editor de tarefas sendo as op es dispon veis espec ficas do dispositivo No modo online o editor de tarefas fornece uma visualiza o da monitora o e tamb m informa es sobre os ciclos tempos e status Notas Importantes para Sistemas Multitarefas Em alguns sistemas s o realizadas algumas multitarefas preferenciais Neste caso as seguintes observa es devem ser consideradas 12 2 Conceitos e Componentes B sicos Todas as tarefas compartilham o mesmo mapa de processo pois um mapa para cada tarefa prejudicaria a performance Entretanto o mapa do processo sempre consiste de apenas uma tarefa Assim ao criar um projeto o usu rio deve explicitamente observar que em caso de conflitos os dados de entrada ser o copiados para a rea de salvamento o mesmo ocorre com as sa das Por exemplo
77. fun o ou bloco funcional ELO Figura 5 54 Operador Fun o ou Bloco Funcional 173 5 Editores das Linguagens de Programa o Sa das se uma atribui o ou um salto vier logo em seguida erg Figura 5 55 Sa da Imediatamente antes do pontilhado na atribui o salto ou instru o de retorno Er Figura 5 56 Antes do Pontilhado A posi o do cursor mais a direita na rede ou em qualquer outro lugar desta al m das outras posi es poss veis Isto selecionar toda a rede Fi Teste de chaves softrvare de teste 1 TRUE varinput Yarout put Figura 5 57 Posi o do Cursor a Direita na Rede O pontilhado diretamente a frente de uma atribui o Figura 5 58 Posi o a Frente da Atribui o Em cada contato awitchl A Figura 5 59 Contato Em cada bobina lampl Figura 5 60 Bobina 174 5 Editores das Linguagens de Programa o e Alinha de conex o entre contatos e bobinas bar a ARA Figura 5 61 Posi o na Linha de Conex o e Em uma ramifica o ou subrede Figura 5 62 Ramifica o ou Subrede Menu FBD LD IL Quando o cursor est localizado na janela do editor FBD LDY IL o menu deste est dispon vel na barra do menu e fornece os comandos para programa o na visualiza o do editor atualmente configurado FEDADAL E Inserir Rede Ctrl I EF Inserir Rede abaixo Cti T Em Inserir R tulo es Altern
78. m dulos da biblioteca SysSem podem ser usados para resolver problemas de sincroniza o Ao acessar outros objetos globais vari veis globais m dulos podem ocorrer problemas de consist ncia se o tamanho dos objetos excederem a capacidade do processador estruturas ou ARRAYS formando uma unidade l gica Neste caso os m dulos da biblioteca SysSem tamb m podem ser usados para resolver os problemas Comunica o Para informa es sobre Comunica o Configura o do CP Topologia de rede Endere amento e roteamento Estrutura de endere os e Vari veis de rede consulte o Manual de Utiliza o MasterTool IEC XE MU299048 Gera o de C digo e Altera o Online Gera o de C digo e Informa es de Compila o O c digo fonte n o ser gerado at que o projeto da aplica o seja enviado para o dispositivo CP ou dispositivo de simula o A cada envio as informa es de compila o contendo o c digo e a ID de refer ncia da aplica o carregada ser o armazenadas em um diret rio do projeto em um arquivo lt nome do projeto gt lt nome do dispositivo gt lt ID da aplica o gt compileinfo As informa es de compila o ser o apagadas quando os comandos Limpar e Limpar Tudo forem executados Altera es Online Dependendo da altera o no projeto em execu o no controlador apenas os objetos modificados ser o carregados para o mesmo ATEN O Altera es online modifica
79. m o c digo de inicializa o do bloco funcional conforme declarado na parte de declara o deste Se este m todo for declarado explicitamente o c digo de inicializa o impl cito ser inserido neste m todo O programador pode adicionar outros c digos de inicializa o NOTA Quando a execu o alcan ar o c digo de inicializa o definido pelo usu rio o bloco funcional estar completamente inicializado via c digo de inicializa o impl cita O m todo Init chamado ap s o envio para cada inst ncia declarada ATEN O Na altera o online os valores anteriores substituir o os valores de inicializa o Na sequ ncia de chamada em caso de heran a consulte FB Exit Considere tamb m a possibilidade de definir um m todo de inst ncia de bloco funcional a ser chamado automaticamente ap s a inicializa o via FB imit atributo call after imit Interface do M todo Iniciar METHOD fb init BOOL VAR INPUT bInitRetains BOOL Se TRUE as vari veis retentivas ser o inicializadas a quente a frio bInCopyCode BOOL Se TRUE a inst ncia ser movida para o c digo copiado posteriormente altera o online END VAR O valor de retorno n o interpretado 54 4 Refer ncia de Programa o Entrada Definida pelo Usu rio FB Reinit FB Exit No m todo Init entradas adicionais podem ser declaradas Elas devem estar atribu das a uma Inst ncia de um bloco funcional
80. mensagens de advert ncia apresentar o os seguintes formatos e significados PERIGO Relatam causas potenciais que se n o observadas levam a danos integridade f sica e sa de patrim nio meio ambiente e perda da produ o CUIDADO Relatam detalhes de configura o aplica o e instala o que devem ser seguidos para evitar condi es que possam levar a falha do sistema e suas consequ ncias relacionadas ATEN O Indicam detalhes importantes de configura o aplica o ou instala o para obten o da m xima performance operacional do sistema 2 Conceitos e Componentes B sicos 2 Conceitos e Componentes B sicos Introdu o O MasterTool IEC XE um software programador de CP independente de dispositivo A sua compatibilidade com a IEC 61131 3 permite suporte a todas as linguagens de programa o definidas na norma Conceitos B sicos Considere os seguintes conceitos b sicos que caracterizam a programa o via MasterTool TEC XE Orienta o a objetos a orienta o a objetos contemplada pela disponibilidade das caracter sticas e dos elementos de programa o associados pelo tratamento da estrutura e pela forma como o projeto organizado Estrutura do programador baseada em componentes a funcionalidade dispon vel na Interface do usu rio editores menus depende dos componentes utilizados Existem componentes essenciais e opcionais A organiza o do projeto tamb m determinada pe
81. no sentido justificado esquerda Se estiver definido que ela deve ser mais curta o corte deve ser feito do lado direito As seguintes convers es de tipo s o suportadas Convers es BOOL TO Convers es TO BOOL Convers o entre tipos de n meros Inteiros Convers es REAL TO LREAL TO Convers es TIME TO TIME OF DAY Convers es DATE TO DT TO Convers es STRING TO TRUNC convers o para DINT TRUNC INT ANY NUM TO lt numeric datatype gt ANY TO lt any datatype gt Convers es BOOL TO Operador IEC convers o do tipo BOOL para qualquer outro tipo Sintaxe para um operador de convers o BOOL TO BOOL TO lt tipo de dado gt 101 4 Refer ncia de Programa o Para tipos de n meros o resultado ser 1 quando o operando for TRUE Ser 0 quando o operando for FALSE Para tipo STRING o resultado ser TRUE quando o operando for TRUE Ser FALSE quando o operando for FALSE Exemplos em IL LD TREUE BOOL TO IHT sT i O resultado 1 LD TETE BOOL TO STRI ST SE O resultado TRUE LD TEDE BOOL TO TIME ST t O resultado T 1ms LD TRUE BOOL TO TOD ST t O resultado TOD 00 00 00 001 LD FALSE BOOL TO DATE ST dandt O resultado D 1970 01 01 LD TEUE BOOL TO DT ST dandt O resultado DT 1970 01 01 00 00 01 Exemplos em ST 1 BOOL TO INT TRUE O resultado 1 str BOOL TO STRING TRUE O resultado TRUE t BOOL TO TIME TRUE O r
82. o final do arquivo Um arquivo neste contexto uma parte de declara o implementa o lista de vari veis globais ou declara o de tipo Se o compilador n o conseguir interpretar a Instru o o pragma inteiro ser tratado como um coment rio ignorando o Uma mensagem de advert ncia ser apresentada neste caso Veja os seguintes tipos de pragma e Pragmas de mensagem e Pragmas de atributo e Pragmas condicionais Pragma de Mensagem Pragmas de mensagem podem ser usados para for ar a sa da de mensagens em uma janela de Mensagens durante a compila o do projeto A instru o de pragma pode ser inserida em uma linha existente ou em uma linha separada no editor textual de uma POU Pragmas de mensagem posicionados nas se es atualmente n o definidas do c digo de implementa o n o ser o considerados quando o projeto for compilado Sobre isto veja o exemplo fornecido com a descri o do Pragma condicional defined Identificador Existem quatro tipos de pragmas de mensagens 56 4 Refer ncia de Programa o Tipo de mensagem text string Texto a string especificada ser exibida info string EF Informa o a string especificada ser exibida warning digit string Advert ncia E a string especificada ser exibida Diferentemente de um Pragma obsoleto tipo de dado global esta advert ncia explicitamente definida para a posi o local error string Erro EX a string esp
83. o iguais RAMP INT com a simples diferen a de que as entradas IN ASCEND DESCEND e a sa da OUT s o do tipo REAL Processamento de Valores Anal gicos HYSTERESIS Fornecido pela util library Exemplo de HYSTERESIS em FBD 216 6 Bibliotecas HYSTERESIS A entrada deste bloco funcional consiste de tr s valores INT AN HIGH e LOW A sa da OUT do tipo BOOL Se IN estiver abaixo do valor limite LOW OUT torna se TRUE Se IN exceder o limite superior HIGH a sa da ser FALSE Se IN cair abaixo do limite LOW OUT se tornar TRUE A sa da continuar sendo FALSE at que IN mais uma vez caia abaixo de LOW e assim OUT torne se TRUE novamente HYSTERESIS IN HYSTERESIS OUT Figura 6 15 Compara o Gr fica de Hysteresis IN e Hysteresis OUT LIMITALARM Fornecido pela util library Este bloco funcional especifica se o valor da entrada est em um intervalo definido e quais limites ele violou caso isso tenha ocorrido Os valores das entradas IN HIGH e LOW s o do tipo INT As sa das O U e IL s o do tipo BOOL Se o limite superior HIGH for excedido por IN O torna se TRUE e quando IN estiver abaixo de LOW U torna se TRUE IL TRUE se IN estiver entre LOW e HIGH Exemplo de LIMITALARM em FBD LIMI TALARM 12 IN O 19 5 217 6 Bibliotecas A Biblioteca NextoPID library PID O bloco funcional PID utilizado para controlar um processo real O bloco est presente na biblioteca Ne
84. o no modo online consulte o item Editor de Declara o no Modo Online no Manual de Utiliza o MasterTool IEC XE MU299048 160 5 Editores das Linguagens de Programa o Monitora o Se a monitora o em linha n o for explicitamente desativada no di logo Op es pequenas janelas de monitora o ser o exibidas em cada vari vel mostrando o valor atual destas monitora o em linha Express o Tipo walor valor Preparado EEU INT er2o Fbinst FEI a in INT 11 out INT ii fbwar INT O Fhinstz FEI Perg INT 22 1 ivar eroes ivar 2m2s Hl counter 2 Ebinst in 1 Ji 11j call function block FEi input parameter 3 erg 223 fbinst out 11 read result from FE output out 4 fbinsta in 223 22 call function block FB1 input parapete 5 erg 2 fbinstz out 22 read result from FBI output out Figura 5 39 Visualiza o Online de um Objeto do Tipo Programa MainPrg Em uma visualiza o online de uma POU do tipo bloco funcional os valores n o ser o visualizados e em vez deles o termo lt Valor da express o gt ser exibido na coluna Valor Os campos de monitora o em linha na parte de implementa o exibir o tr s pontos de interroga o cada Express o Tipo valor valor Preparado da in INT valor da express ga out INT valor da express ivar INT Y alor da express 1 out en sid o ivar in Figura 5 40 Visualiza o Online do Bloco
85. ou vari vel TIME o padr o t Os Ativa o Tempo de processamento m ximo do passo Valores permitidos tempo de m xima acordo com a sintaxe IEC por exemplo t 8s ou vari vel TIME o padr o t Os A es Define as a es a serem executadas quando o passo estiver ativo Veja a descri o da sequ ncia de processamento Entrada de Esta a o ser executada ap s o passo ter sido ativado passo Passo ativo Esta a o ser executada quando o passo estiver ativo e as eventuais a es de entrada j tiverem sido processadas Sa da do passo Esta a o ser executada no ciclo subsequente ap s um passo ter sido desativado Tabela 5 3 Descri o das Propriedades Espec ficas NOTA Considere a possibilidade de obter informa es sobre o status do passo a o timeouts etc atrav s das vari veis impl citas e mem rias SFC apropriadas Elementos SFC Caixa de Ferramentas Os elementos gr ficos usados para a programa o na janela do editor SFC podem ser inseridos atrav s dos comandos de inser o menu SFC 136 5 Editores das Linguagens de Programa o Consulte tamb m o item Trabalhando no Editor SFC Os seguintes elementos est o dispon veis e s o descritos a seguir Passo Transi o A o Ramifica o Alternativa Ramifica o Paralela Salto Macro Transi o de Passo S mbolo FT Um passo representado por uma caixa contendo o seu nome conectada s transi
86. outras a es editar ou reorganizar verifique as poss veis posi es do cursor para corpos de elemento entradas sa das e texto Com um clique do mouse no corpo dos elementos os mesmos s o selecionados e exibidos na cor vermelha Mantendo 128 5 Editores das Linguagens de Programa o pressionada a tecla lt SHIFT gt outros elementos podem ser selecionados ao mesmo tempo poss vel tamb m pressionar o bot o esquerdo do mouse e desenhar um ret ngulo pontilhado em volta dos elementos a serem selecionados Ao soltar o bot o a sele o ser indicada Atrav s do comando Selecionar Todos dispon vel no menu de contexto todos os elementos s o selecionados de uma vez S Usando as teclas de seta pode se alterar a sele o entre os elementos selecion veis A sequ ncia depende da ordem de execu o dos elementos indicada por seus n meros Quando um pino de entrada for selecionado e as teclas lt CTRL gt lt SETA ESQUERDA gt forem pressionadas simultaneamente a sa da correspondente ser selecionada tamb m Quando um pino de sa da for selecionado e as teclas lt CTRL gt lt SETA ESQUERDA gt forem pressionadas simultaneamente as sa das correspondentes ser o selecionadas tamb m Substituindo Caixas Para substituir um elemento caixa substitua o identificador atualmente inserido pelo identificador do novo elemento desejado Se aplic vel o n mero dos pinos de entrada e sa da ser o adaptados devido defini
87. para a enumera o BigEnum deve ser DINT TYPE BigEnum yellow blue green 16 8000 DINT END TYPE Tipos Subrange Um tipo subrange um tipo definido pelo usu rio cujo intervalo de valores restrito em rela o ao tipo de dado b sico Observe a possibilidade de usar verifica es de limites de intervalo impl citas A declara o pode ser feita em um objeto DUT mas tamb m uma vari vel pode ser diretamente declarada com um tipo subrange Sintaxe para a declara o como um objeto DUT EPE SNOme SInNttevpe gt isuS gt S002 END TYPE Sintaxe Descri o S O Deve ser um identificador IEC v lido lt Inttype gt um dos tipos de dados SINT USINT INT UINT DINT UDINT BYTE WORD DWORD LINT ULINT LWORD lt ug gt uma constante que deve ser compat vel com o tipo de dado b sico e que define o limite inferior dos tipos de intervalo O limite inferior em si est inclu do neste intervalo lt 0g gt uma constante que deve ser compat vel com o tipo de dado b sico e que define o limite superior dos tipos de intervalo O limite superior em si est inclu do neste intervalo Tabela 4 10 Tipos Subrange Exemplos TYPE cubInt Ss INT 4095r 04009555 END TYPE Declara o direta de uma vari vel com um tipo subrange VAR LC INT 409p urA OIB wi e INE AO CUOU END VAR Se a um tipo subrange estiver atribu do um valor na declara o ou implementa o incompat vel com
88. que VARI Var e varl s o todas a mesma vari vel e O caractere sublinhado por exemplo A BCD e AB CD s o considerados diferentes identificadores por m um identificador n o deve conter mais de um sublinhado por linha e O comprimento do identificador identifica o ilimitado e As regras abaixo se referem ao m ltiplo uso de identificadores Uso M ltiplo de Identificadores Contextos Um identificador n o deve ser usado duplamente no modo local e n o pode ser id ntico a uma palavra chave Globalmente um identificador pode ser usado mais de uma vez Assim uma vari vel local pode ter o mesmo nome de uma vari vel global Em uma POU neste caso a vari vel local ter prioridade Uma vari vel definida em uma lista de vari veis globais pode ter o mesmo nome de uma vari vel definida em outra lista de vari veis globais Neste contexto observe as extens es da norma IEC 61131 3 40 4 Refer ncia de Programa o c6 939 e Operador de escopo global um caminho de inst ncia iniciando com abre um escopo global Assim se houver uma vari vel local por exemplo ivar com o mesmo nome de uma vari vel global 1var est referindo se vari vel global e O nome de uma lista de vari veis globais pode ser usado como um contexto para as vari veis inclu das Assim as vari veis podem ser declaradas com o mesmo nome em diferentes listas e podem ser acessadas precedendo o nome desta lista antes do nome da vari
89. ser declaradas manualmente no editor de declara o ou atrav s do di logo Autodeclarar Consulte os itens relacionados como por exemplo categorias de vari veis locais globais entrada sa da etc inicializa o pragmas m todo init entre outros Declara o de Vari veis A declara o de uma vari vel pode ser realizada na parte de declara o de uma POU ou via di logo Autodeclarar assim como em uma DUT ou editor GVL A classe ou escopo no di logo de declara o da vari vel a ser declarada especificada pelas palavras chave no mbito de sua parte de declara o A declara o de uma vari vel comum por exemplo aparece entre as palavras VAR e END VAR VAR INPUT VAR OUTPUT VAR IN OUT VAR GLOBAL VAR TEMP VAR STAT VAR EXTERNAL VAR CONFIG As palavras chave do tipo da vari vel devem estar complementadas pelas palavras chave de atributo como por exemplo RETAIN VAR INPUT RETAIN A declara o de uma vari vel deve atender a determinadas regras Sintaxe lt IDENTIFICADOR gt AT lt ENDERE O gt lt TIPO gt lt INICIALIZA OD gt As partes entre chaves s o opcionais O identificador o nome da vari vel Os itens listados a seguir em cada caso devem ser considerados ao definir um identificador Veja o item Recomenda es na Nomea o de Identificadores e Ele n o deve conter espa os nem caracteres especiais e Ele n o diferencia mai sculas e min sculas o que significa
90. sinais de entrada e sa da podem ser feitas apenas em uma nica posi o por exemplo na declara o O seguinte deve ser observado ao escolher uma vari vel para ser atribu da a um endere o e Vari veis que requerem uma entrada n o podem ser acessadas por escrita O compilador caracteriza esse acesso como um erro e Declara es AT somente podem ser usadas com vari veis locais ou globais e n o com vari veis de entrada e sa da de POUS e Declara es AT n o devem ser usadas juntamente com VAR RETAIN ou VAR PERSISTENT a n o ser que exista algum mecanismo no CP utilizado que permita este tipo de opera o e Se declara es AT forem usadas com estruturas ou membros de blocos funcionais todas as Inst ncias acessar o a mesma posi o de mem ria o que corresponde s vari veis est ticas nas linguagens de programa o cl ssicas linguagem C por exemplo e O layout de mem ria de estruturas tamb m determinado pelo dispositivo Exemplos counter heat AT lt s0XD 0 BOOL Lightcabinetimpulse AT SLIX7 2 BOOL download AT amp MX2 2 BOOL Palavras chave Palavras chave s o escritas em letras mai sculas em todos os editores As seguintes strings s o consideradas palavras chave isto n o podem ser usadas como identificadores para vari veis ou POUS ABS ACOS ACTION somente no formato Exportar ADD ADR AND ARRAY ASIN AT ATAN BITADR BOOL BY BYTE CAL CALC CALCN CASE CONSTANT COS
91. valor de PV PV WORD limite superior para incremento ou decremento de CV Sa das QU BOOL retorna TRUE quando CV for incrementado em um valor gt PV QD BOOL retorna TRUE quando CV for decrementado at O CV WORD incrementado ou decrementado Exemplo de declara o CTUDINSE CUID 197 6 Bibliotecas Exemplo em IL CAL CTUDinsti CU VarBOOLL RESET VarBDOL3 LOAD VarBDOLA Pw VarWORDI nD gt VarBODLE CY gt Var WORDS LD CTU insat QU ST varBDOnLS Exemplo em FBD CIUDInst VarBOOLI VarBOOLS VarBOOLZ OD fF VarBOOL6 VarBOOLS CV F VarWORD 2 VarBOOL4 VarWORDI Exemplo em ST CTUDInst CU VarBOOL1 CD VarBOOL2 RESET VarBOOL3 LOAD VarBOOL4 PV VarWORDL VarBOOLS CTUDInSt QU VarBOOL6 CTUDInst QD VarINTi s CTUDInst CV Temporizador TP Fornecido pela standard hbrary Bloco funcional temporizador funcionando como disparador O tempo contado at que um determinado limite seja atingido Durante a contagem a vari vel de pulso TRUE caso contr rio FALSE Entradas IN BOOL com uma borda de subida a contagem do tempo em ET ser iniciada PT TIME limite superior do tempo Sa das Q BOOL TRUE enquanto o tempo estiver sendo contado em ET pulso ET TIME estado atual do tempo TP IN PT Q ET Se IN for FALSE Q ser FALSE e ET ser O Assim que IN tornar se TRUE o tempo come ar a ser contado em milissegundos em
92. variable nome da vari vel atributo Hastype variable nome da vari vel tipo 4 Refer ncia de Programa o VAR END VAR Em uma POU existe o c digo abaixo IF hasattribute pou fun1 vision A seguinte linha de c digo ser processada ergvar funi ivar END IF IF hasattribute pou fun2 vision A seguinte linha de c digo n o ser processada ergvar funZ ivar END IF Quando aplicado a uma vari vel seu valor ser TRUE se este determinado atributo for especificado via instru o attribute na linha anterior declara o da vari vel Exemplo Pr requisito h duas POUs POU 1 e POU 2 A vari vel g globalln usada em ambas POUSs por m em POU 1 adicionalmente h o atributo DoCount Declara o de g globallnt em POU 1 VAR GLOBAL attribute DoCount g globallnt INT g multiType STRING END VAR Declara o de g globallnt em POU 2 VAR GLOBAL g globallnt INT g mulkiType STRING END VAR IF hasattribute variable g globallnt DoCount A seguinte linha de c digo somente ser processada em POU 1 pois ali a vari vel g globalInt apresenta o atributo DoCount g globallnt g globallnt 1 END IF Quando aplicado a uma vari vel seu valor ser TRUE se esta determinada vari vel apresentar o tipo especificado Caso contr rio ser FALSE ANY ANY DERIVED ANY ELEMENTARY ANY MAGNITUDE ANY BIT ANY S
93. vel Exemplo GLOBLISTI IVAR GLOBLIST2 IVAR IVAR da GLOBLIST2 copiado para IVAR na CLOBELSTA 3 e Vari veis definidas em uma lista de vari veis globais de uma biblioteca inclu da podem ser acessadas de acordo com a sintaxe lt Contexto da biblioteca gt lt Nome da Lista de Vari veis Globais gt lt Vari vel gt Veja abaixo informa es sobre contextos de bibliotecas Exemplo GLOBLISTI IVAR LIB1 GLOBLISTI IVAR IVAR da GLOBLIST1 na biblioteca LIBI copiada para IVAR na GLOBLIST1I No caso de uma biblioteca um contexto tamb m definido quando esta for inclu da atrav s do Library Manager Assim um m dulo de biblioteca ou vari vel pode se acessado atrav s de lt Contexto da biblioteca gt lt Nome do m dulo Nome da vari vel gt No caso de bibliotecas aninhadas os contextos destas devem ser indicados sucessivamente Se Libl foi referenciado por Lib0 o m dulo fun como parte de Libl acessado por Lib0 Libl fun IVAR LIBO LIBIL FUN 4 5 valor de retorno de FUN copiado para a vari vel IVAR no projeto A ativa o da caixa Publicar todos os s mbolos IEC para o projeto como se esta refer ncia tivesse sido inclu da ali diretamente nas propriedades da biblioteca referenciada Lib faz com que o m dulo fun tamb m possa ser acessado diretamente via LibO fun AT lt Endere o gt Tipo A vari vel pode ser diretamente vinculada a um endere o definido usando a palavra chave AT Nos
94. vel B Se o ndice for maior que o tamanho do bit de uma vari vel a seguinte mensagem de erro ser apresentada Indice lt n gt fora do intervalo v lido para a vari vel lt var gt O endere amento de bit poss vel com os seguintes tipos de vari vel SINT INT DINT USINT UINT UDINT BYTE WORD DWORD Se o tipo da vari vel n o permitir o acesso a bit a seguinte mensagem de erro ser gerada Tipo de dado inv lido lt type gt para indexa o direta Um acesso a bit n o deve ser atribu do uma vari vel VAR IN OUT Acesso a Bit Via Constante Global Se foi declarada uma constante global definindo a indexa o do bit esta constante pode ser usada para um acesso a bit Abaixo se encontram exemplos para um acesso a bit via uma constante global em uma vari vel e em uma vari vel do tipo estrutura Declara o em Listas de Vari veis Globais A vari vel Enable define qual bit deve ser acessado VAR GLOBAL CONSTANT enable int 2 END VAR Exemplo 1 acesso a bit em uma vari vel inteira Declara o na POU VAR SO nto END VAR Bitaccess xxx enable true O terceiro bit na vari vel xxx ser configurado para TRUE A 119 4 Refer ncia de Programa o Exemplo 2 acesso a bit em um componente de estrutura inteiro Declara o da estrutura strul TYPE strul STRUCT bvar BOOL rvar REAL wvar WORD bitaccess enable 42 Start drive END STRUCT END TYPE
95. visualiza o online da POU em uma lista de 62 4 Refer ncia de Programa o monitora o o nome tipo e valor das vari veis de propriedade ser o exibidos Portanto os valores preparados podem ser inseridos para for ar as vari veis pertencentes propriedade Dispositivos Il X FERO lr f Device Nx3010 S E PLC Logic Application EA Bill of Materials F Configuration and Consumption d Diagnostic Explorer ad Diagnostic ff Library Manager E fbi FB BB Prop B fbLProp Ef Get 1 Ep set 2 PROPERTY Prop INT Figura 4 3 Exemplo de Propriedade Preparada para Vari vel de Monitora o Express o Tipo valor Valor Preparado Coment rio SPI REAL 60 42 SP2 REAL 45 36 1 SPA 44 P 45 36 Z RETURN Figura 4 4 Exemplo de Visualiza o de Monitora o Existem duas maneiras de monitorar o valor atual das vari veis de propriedade Para o uso espec fico considere qual atributo melhor se adequa para obter o valor desejado Isto depender de quais opera es nas vari veis s o implementadas na propriedade Pragma attribute monitoring variable Pragma attribute monitoring call No primeiro caso attribute monitoring variable uma vari vel impl cita criada para a propriedade que obter o valor da propriedade atual sempre que a aplica o chamar os m todos Set ou Get O valor desta vari vel impl cita ser monitorado No segundo caso attribute m
96. 0 Dentes de Serra 213 6 Bibliotecas Amplitude Amplitude Amplitude Amplitude Figura 6 11 Seno Cosseno Amplitude Amplitude RECTANGLE Figura 6 12 Ret ngulo BASE define se o per odo do ciclo est realmente relacionado a um tempo definido BASE TRUE ou se est relacionado a um n mero espec fico de ciclos ou seja o n mero de chamadas do bloco funcional BASE FALSE PERIOD ou CYCLES define o per odo do ciclo correspondente AMPLITUDE define a amplitude da fun o a ser gerada O gerador da fun o vai para O assim que RESET TRUE Manipuladores de Fun o CHARCURVE Fornecido pela util library Este bloco funcional serve para representar valores pe a por pe a em uma fun o linear Exemplo de CHARCURVE em FBD 214 6 Bibliotecas charcurve inst CHAR CURVE i Input IN OUT idut byPoints HN EER DYErEDE art Curve F IN do tipo INT alimentado com o valor a ser manipulado N do tipo BYTE designa o n mero de pontos que definem a fun o da apresenta o P do tipo ARRAY P 0 10 OF POINT que uma estrutura baseada em dois valores INT X e Y determina esta curva caracter stica OUT do tipo INT cont m o valor manipulado ERR do tipo BYTE indica um erro Os pontos P 0 P N 1 em ARRAY devem ser classificados de acordo com seus valores de X Caso contr rio ERR receber o valor 1 Se a entrada IN n o estiver entre P 0 X e P N 1 X ERR 2 e OUT conter o v
97. 01 01 00 00 00 Exemplo de declara o RICInSE RIC Exemplo em IL CAL RTCinast EN Var B 0OL1 F PDT DT 2006 03 30 14 00 ChT gt VarTimelur LD RTCinst l ST vYarEDOLa Exemplo em FBD RTCinst varB Ll DT 2006 03 30 14 00 00 VarcBOOLA Exemplo em ST RTC EN VarBOOL1 PDT DT 2006 03 30 14 00 00 Q gt VarBOOL2 CDT gt VarTimeCur A Biblioteca UTIL library Esta biblioteca cont m uma cole o adicional de v rios blocos que podem ser usados para convers o BCD fun es bit byte fun es matem ticas auxiliares como controlador geradores de sinal e manipuladores de fun o e tamb m para processamento de valores an logos Convers o BCD Fornecido pela util library Um byte no formato BCD cont m inteiros entre O e 99 Quatro bits s o usados para cada casa decimal A d cima casa decimal armazenada nos bits 4 7 Assim o formato BCD similar representa o hexadecimal com apenas uma diferen a em um byte BCD somente podem ser armazenados valores entre O e 99 e no byte hexadecimal de O a FF Exemplo Suponha que o inteiro 51 deve ser convertido para o formato BCD Cinco em bin rio 0101 e um 0001 o que torna o byte BCD 01010001 e corresponde ao valor 51 81 BCD TO INT Fornecido pela util library Esta fun o converte um byte em formato BCD em um valor INT O valor de entrada da fun o do tipo BYTE e a sa da do tipo INT Na
98. 3 i out var gt erg I Exemplo em ST PRGEXAMPLE ERG PRGEXAMPLE OUT VAR Atribuindo os par metros Assistente de Entrada com op o Com argumentos PRGEXAMPLE IN VAR 33 OUT VAR gt ERG at rios prog z2 2g ivar result FESVAar a addvar Uma fun o uma POU que produz exatamente um elemento de dados que pode consistir de um ou v rios elementos tais como campos ou estruturas ao ser processada e cuja chamada em linguagens textuais pode ocorrer como um operador em express es Via comando Acrescentar Objeto e Acrescentar POU pode se adicionar uma fun o ao projeto Para atribu la a uma aplica o existente selecione a na visualiza o dos Dispositivos e use o comando do menu de contexto Caso contr rio ela ser adicionada visualiza o das POUs No di logo Acrescentar POU escolha o tipo Fun o digite um nome lt nome da fun o gt e o tipo de dados de 18 2 Conceitos e Componentes B sicos retorno lt tipo de dados gt para a nova fun o e escolha a linguagem de implementa o desejada O editor estar dispon vel via bot o Abrir permitindo na sequ ncia a edi o da POU Declara o A declara o da fun o inicia com a palavra chave FUNCTION Devem ser definidos um nome e um tipo de dados Sintaxe FUNCTION lt NOME DA FUN O gt lt TIPO DE DADOS gt Esta sintaxe seguida pelas declara es das vari veis de entrada e das vari veis da fun o
99. 4ms2us44ns LT IMEI LTIMERS445348M3424 328740253ns5 Veja tamb m Tipos de Dado de Tempo Constantes DATE Estas constantes podem ser usadas para inserir datas Sintaxe dft lt Declara o de data gt Al m de d podem ser usados tamb m DE date e DATERF A declara o da data deve ser inserida no formato lt ano m s dia gt Valores DATE s o tratados internamente como DWORD contendo o intervalo de tempo em segundos desde 01 01 1970 00 00 h Exemplos DATE 1996 05 06 dt1972 03 29 Veja tamb m Tipos de Dado de Tempo Constantes TIME OF DAY Este tipo de constante utilizada para armazenar a hora do dia Sintaxe todi lt Declara o do tempo gt Em vez de tod tamb m podem ser usados TODH time of day e TIME OF DAYF A declara o de tempo deve ser inserida no formato lt hora minuto segundo gt Segundos podem ser inseridos como n meros reais ou seja fra es de um segundo podem ser especificadas Valores TIME OF DAY s o tratados internamente como valores DWORD contendo o intervalo de tempo em milissegundos desde as 00 00 h Exemplos TIME OF DAY415 36 30 123 todt00 00 00 Veja tamb m Tipos de Dado de Tempo 116 4 Refer ncia de Programa o Constantes DATE AND TIME As constantes DATE e TIME OF DAY podem tamb m ser combinadas com as constantes DATE AND TIME Sintaxe dti lt Declara o de data e hora gt Al m de dt po
100. AINPRG VAR a ARRAY 0 7 OF BOOL b INT 10 END VAR alb TRUE Neste caso a chamada impl cita da fun o CheckBounds antes da atribui o faz com que o valor do ndice seja alterado de 10 dez para o limite superior 7 sete Portanto o valor TRUE ser atribu do ao elemento A 7 do ARRAY Esta uma tentativa de via fun o CheckBounds corrigir a tentativa de acesso fora do intervalo Estruturas Estruturas s o criadas como objetos DUT Umidade de Tipo de Dado via di logo Acrescentar Objeto Elas iniciam com as palavras chave TYPE e STRUCT e terminam com END STRUCT e END TYPE A sintaxe para declara es de estrutura se d como segue TYPE lt Nome da estrutura gt STRUCT lt Declara o de vari veis 1 gt lt Declara o de vari veis n gt END STRUCT END TYPE lt Nome da estrutura gt um tipo reconhecido atrav s do projeto e pode ser usado como um tipo de dado padr o Estruturas de intertravamento s o permitidas A nica restri o que as vari veis n o podem ser atribu das aos endere os a declara o AT n o permitida Exemplo para uma defini o de estrutura denominada Polygonline TYPE Polygonline STRUCT SCar EARRAN lasa OE ENIS PoIntI ARRAY 1 42 QE INT POLNTCZ JARRA 4 2 OE INT Point3 ARRAY 1 2 OF INT Point4 ARRAY 1 2 OF INT EndgrARRAY 1Ls42 OF INT END STRUCT END TYPE Inicializa o de Estruturas Exemplo de inicializa o de uma e
101. Band M nimo valor de erro que ir causar a corre o de MV em modo autom tico ou seja pequenos erros menores que DeadBand n o causar o altera es na vari vel manipulada M ximo valor da vari vel de processo MaxPV Caso o valor de PV seja maior do que o configurado o bloco PID ir parar o c lculo e ser gerado um c digo de erro na sa da M nimo valor da vari vel de processo MinPV Caso o valor de PV seja menor do que o configurado o bloco PID ir parar o c lculo e ser gerado um c digo de erro na sa da 220 6 Bibliotecas Tempo de amostragem SampleTime REAL Define o per odo de chamada do bloco PID em segundos podendo variar de 0 001 s 1000 s Esse par metro desconsiderado se o MeasureST for verdadeiro EnableP BOOL Quando verdadeiro habilita a a o proporcional do bloco PID Caso seja falso a a o proporcional zerada EnableD BOOL Quando verdadeiro habilita a o derivativa do bloco PID Caso seja falso a a o derivativa zerada BOOL Quando verdadeiro habilita a a o integral do bloco PID Caso seja falsa a a o integral zerada Quando verdadeiro a a o derivativa calculada na vari vel BOOL de processo sendo diferente de zero somente quando PV DerivPV l E na di alterado Caso seja falso a a o derivativa calculada no erro sendo dependente das vari veis SP e PV afeta a maneira como o MV e a a o integral s o calculadas Quando verdadeiro
102. CU varB0 L3 var Bool RESET CYprvarmuRDo vYacNoRDI PY Exemplo em ST CTUInst CU VarBOOL1 RESET VarBOOL2 PV VarWORD1I VarBOOL3 CTUInst QO VarWORD2 CTUInst CV Fornecido pela standard hbrary Bloco funcional que atua como um decrementador Entradas CD BOOL uma borda de subida nesta entrada inicia a decrementa o de CV LOAD BOOL se TRUE CV igualar o limite superior determinado por PV PV WORD limite superior ou seja valor inicial para decrementa o de CV Sa das Q BOOL torna se TRUE assim que CV for 0 CV WORD decrementado em 1 iniciando com PV at que O seja alcan ado 196 CTUD 6 Bibliotecas Exemplo de declara o CTDInSE CID Exemplo em IL CAL CThinst i Chi VarBOOLI LyUaDb VarBOOLA PyYi VYarWoRDI CY gt VarWORDA LD CThbinst n sT varB0 L3 Exemplo em FBD CT hinast C TO vYarBDWLI Ch var B00L3 vYarBoolz L OA CY Vary 0RD vary OEDl FY Exemplo em ST CTDInst CD VarBOOL1 LOAD VarBOOL2 PV VarWORDL VarBOOL3 CTDInst O VarWORD2 CTDInst CV Fornecido pela standard hbrary Bloco funcional que atua como incrementador e decrementador Entradas CU BOOL se ocorrer uma borda de subida em CU a incrementa o de CV ser iniciada CD BOOL se ocorrer uma borda de subida em CD a decrementa o de CV ser iniciada RESET BOOL se TRUE CV ser zerado LOAD BOOL se TRUE CV ser configurado para o
103. Call i iComteri 1 iDbecrement 1000 WErrOor gt uResult LD POUToCall bError ST DECE Chamada de A o Deve ser realizada conforme um bloco funcional ou chamada de programa O nome da a o deve ser anexado ao nome da inst ncia ou do programa Exemplo de chamada da a o ResetAction em IL CAL Inst Reset ctioni Chamada de M todo Salto Deve ser realizada conforme uma chamada de fun o O nome da inst ncia com o nome do m todo anexado deve ser digitado na primeira coluna operador Exemplo de chamada do m todo Home em IL LD TEUJE IHome Home TEDE TRUE ST amp Um salto programado com JMP na primeira coluna operador e com o nome do r tulo na segunda operando O r tulo deve ser definido na rede destino no campo r tulo Observe que a lista de declara o anterior ao salto incondicional deve ser encerrada com um dos seguintes comandos ST STN S R CAL RET ou outra JMP O mesmo n o ocorre com o salto condicional este programado por JMPC na primeira coluna operador A execu o do salto depende do valor 172 5 Editores das Linguagens de Programa o carregado Exemplo em IL de uma instru o de salto condicional se bCallRestAction for TRUE o programa deve pular para a rede rotulada com Cont LDH hCallFeset ction MPC Cont Posi es do Cursor em FBD LD e IL Editor IL Este um editor textual estruturado sob a forma de tabela Cada c lula uma posi o pos
104. E E q E SR E ETE TN E E E A A 11 Ed o ainiin aaa 1 a aa DER REAR EDIR REAR ARE 11 DEDOS UIOS ee A A TE EE 11 AE O O EE O E E ARS A RAR 12 TAS EEE 1 o PA R E AE E E E S A A TE E 12 Notas Importantes para Sistemas Multitarefas cccci si eerereerererereere area near eeeea renan ceeeearenaea 12 Comun IC IOs ara aaar Er AR 13 Gera o de C digo e Altera o Online sssssscsseeeceeeccscccccsccccccceccecesossocsssssccccccccceesossssssssssscecssececeesssssssss 13 Gera o de C digo e Informa es de Compila o cc erre eereree erre reeea renan reeeearenaea 13 Altera es ONNE saias ad aaa ad o dad a do E E SE E OE E E 13 Aplica o de Inicializa o Projeto de Inicializa o cceee cr eeeererererererererea ceara reeeeerenaaa 13 M todo de Envio Login de Projetos Sem Diferen a de Projetos ccii e eereeeerereerreene 14 MonitoracaAO soatato tias iatiosesdats dias da iadi aodo eara r e Sd Eaa aA 14 Peppar Ona O a E EEE AEO EE ERa 14 Linguagens de Programa o Suportadas eessssecsssseccssseccsseccsseccssseccsscecosseesssseccsssecoseeesosseessssesssssesessseso 14 Unidades de Organiza o de Programas escssceccssceccsseccosscosscecoseeeccsseccossecosssecosseecosecessssecssssesssseesssseeso 15 DOU a na a TE ata DOG E E E E RD 15 EO ST A E e ac ER 17 E UC IOn ee E E EEEE E E A EE E EO CO OOOO OOE 18 PIOCOT UNCION a De at 20 Unidades de Tipo de Dados esoe e eoero E
105. ECINFAC O aaa E ria i ii caca l in ana E dinda uiicadua cdi ui idai inda du indaa d s 40 Decliracao de NV ANOS sans asas aaa ans sound ld o ll ca 40 Recomenda es na Nomea o de Identificadores e a e E 41 Taicizacao de VARA N ai obra ado 2 Rae A ndo a O a A RA E E E A E A 45 Express es Arbitr rias para Inicializa o de Vari veis 00snessaeesseeessersserssreesserssreesaeessseesanrsssresseess 45 Editorido Declara o sms e ae Do Da e Data DDS a e Geto Dede Gebo eee ee 45 Dio o utode asas sos nas ana a ado an Basa aL ORE E ad Tod a e E is o id e ni cod 46 Todo CANT O a E 46 Decl recto AM Rs o POR D E RENDER DRE RRP SEE DERERRRP ERR en pa 46 PARIS CRAVO anal a a o aa a O Sa a 41 NR TA CIO LOCIS VAR sea a E N EE EN ion i 48 Nanavers de Entadas VAR INDO ia a EEE OE a NES EN SEDE DEDE SOTO DOSE SE dass 48 Varaveisde Saida VAR OUTPUT nadando OSSO CANA Da a ada a GAS ada dada aaa cabo a cds ada da As r E 48 Vari veis de Entrada e Sa da VAR IN OUT errar aaa 48 Variaveis Globais VAR GLOBAL a assi ai oia Da ei aaa ia sal coa Geni EE ces cen aa aaa aa 49 Mariavels Foemporariase MAR LEME ga sol foto e RD si 49 Vari veis Est ticas VARSIA Du eeii ad ada sao usa a do dae Da do Usa Tanga nao aaa a 49 Vari veis Externas VAR EXTERNAL ac ssuenencanadisi saradas naun da deves Cad resetest Eso CACAU CERTA CEE CS Co vaia aU Ea ad 49 Atributo Palavras chave para Tipos de Vari veis cei eee E E EE 50 Vari
106. Exemplo em FBD do bloco LIN TRAFO A Figura 6 7 apresenta um exemplo de convers o de uma leitura de entrada de tens o de um m dulo anal gico para um valor do tipo REAL na escala de O a 100 C Assim uma entrada de 4 67 Vdc resultaria em um valor de entrada de 14000 correspondente a uma temperatura de 46 67 C representada em uma vari vel do tipo REAL STATISTICS INT Fornecido pela util library Este bloco funcional calcula alguns valores estat sticos padronizados A entrada IN do tipo INT Todos os valores s o inicializados quando a entrada booleana RESET TRUE A sa das MN e MX cont m os valores m nimo e m ximo de IN respectivamente AVG descreve a m dia ou seja o valor esperado de IN A tr s sa das s o do tipo INT Exemplo de STATISTICS INT em FBD STAT STATISTICS INT STATISTICS_REAL Fornecido pela util library 207 6 Bibliotecas Este bloco funcional corresponde a STATISTICS INT por m a entrada IN do tipo REAL como as sa das MN MX AVG VARIANCE Fornecida pela util library VARIANCE calcula a vari ncia dos valores inseridos A entrada IN do tipo REAL RESET do tipo BOOL e a sa da OUT tamb m do tipo REAL O reset de VARIANCE ocorre quando RESET TRUE O desvio padr o pode ser facilmente calculado como a raiz quadrada de VARIANCE Controllers PD A biblioteca util library fornece o bloco funcional controlador PD Exemplo do bloco PD em FBD pd inst PD Y LIMITS ACTIVE
107. GP GP R Onde R SA S o EA EAo Para o exemplo anterior R 0 3000 0 14 478 8706 6634 Esta raz o R uma constante que quando multiplicada pelo ganho proporcional do controlador compensa as diferen as entre as faixas de entrada e sa da sem a necessidade de uma normaliza o direta Exemplo de Aplica o Nesta se o ser mostrado um exemplo pr tico de utiliza o do bloco funcional PID abrangendo diversas fases do projeto do processo e do seu sistema de controle Descri o do Processo O processo exemplo tem como objetivo o fornecimento de gua aquecida com temperatura controlada para um consumidor O aquecimento ser feito atrav s de um queimador de g s sendo controlado a partir da varia o de vaz o de g s atrav s de uma v lvula A Figura 6 26 ilustra este processo 233 6 Bibliotecas queimador MV 4 20 mA 4 20 mA PV CONTROLADOR 5P Figura 6 26 Exemplo de Controle de Temperatura Observa se que o transmissor de temperatura TT fica perto do consumidor que fica a 20 metros do ponto de aquecimento da gua Processos como este s o bons exemplos de como podem ser introduzidos tempos mortos Isto porque a gua aquecida no ponto de aquecimento leva algum tempo para percorrer a dist ncia at o ponto de medi o junto do consumidor Tempos mortos foram discutidos anteriormente Figura 6 24 Algumas hip teses foram assumidas no modelamento deste processo e
108. ING TO BOOL TRUE H O resultado TRUE Exemplos em ST b O resultado BYTE TO BOOL 2411010101 TRUE no O resultado b INT TO BOOL 0 FALSE no O resultado b TIME TO BOOL T5oms TRUE b O resultado STRING TO BOOL TRUE TRUE Convers o entre Tipos de N meros Inteiros Convers o de um tipo de n mero inteiro em outro tipo Sintaxe para o operador de convers o Tipo de dado INT gt TO lt Cipo de dado INT gt Ao executar uma convers o de um tipo maior para um menor h o risco de perder algumas informa es Se o n mero a ser convertido exceder o limite do Intervalo os primeiros bytes do n mero ser o ignorados Exemplo em ST si SS INT TO SINT 4243 O resultado e 127 Ao salvar o inteiro 4223 16 107F representado hexadecimalmente como uma vari vel SINT o mesmo aparecer como 127 16 7F representado hexadecimalmente Exemplo em IL LD Jaaa IHT TO SINT sT sl Exemplo em FBD no a 104 4 Refer ncia de Programa o Convers es REAL TO LREAL TO Operador IEC convers o da vari vel tipo REAL ou LREAL para um tipo diferente O valor ser arredondado para cima ou para baixo do n mero inteiro mais pr ximo e convertido em um novo tipo de vari vel As exce es desta regra s o os tipos de vari veis STRING BOOL REAL e LREAL NOTA Se um REAL ou LREAL for convertido em SINT USINT INT UINT DINT UDINT LINT ou ULINT e o valor d
109. Master Tool IEC XE MU299048 No entanto POU tamb m o nome de uma determinada subcategoria destes objetos no menu Acrescentar Objeto que a compreende programas blocos funcionais e fun es Assim sendo uma POU Unidade de Organiza o de Programa em geral uma unidade de programa o um objeto gerenciado atrav s de dispositivos n o espec ficos na janela das POUs e espec ficos na janela dos Dispositivos e que pode ser visualizado e editado em uma janela do editor Uma POU pode ser uma fun o bloco funcional m todo a o DUT ou ainda um arquivo externo de qualquer formato Considere a possibilidade de configurar determinadas propriedades como por exemplo condi es de compila o etc da POU Por padr o os seguintes tipos de POU podem ser usados POU A o DUT Unidade de Tipo de Dado Arquivo Externo Lista de Vari veis Globais M todo Propriedades Programa Fun o Bloco Funcional Vari veis Persistentes POUSs para Verifica es Impl citas Al m da Unidade de Organiza o de Programa existem os Dispositivos os quais s o usados para executar o programa recurso aplica o configura o de tarefa etc Estes ltimos s o gerenciados na visualiza o dos Dispositivos Uma POU uma Unidade de Organiza o de Programa do tipo Programa Fun o ou Bloco Funcional Para acrescentar uma POU selecione o item correspondente na janela POUs ou Dispositivos uma
110. MinPV PV gt MaxPV PV lt MinPV Ti lt 0 001 s com a o integral habilitada Td lt 0 s com a o derivativa habilitada Gp lt 0 B PID INT 6 Bibliotecas 8 MaxVarMV lt 0 9 DeadBand lt 0 10 SampleTime lt 0 001 s ou SampleTime gt 1000 s com MeasureST falso 11 SP gt MaxPV 12 SP lt MinPV Tabela 6 12 Par metros de Sa da O bloco funcional PID INT funcionalmente id ntico ao bloco PID REAL Contudo as vari veis de entrada SP PV BIAS ManualMV MaxVarMV MaxMV MinM V DeadBand MaxPV e MinPV e a vari vel de sa da MV s o do tipo INT Este comportamento importante pois permite declarar entradas e sa das anal gicas diretamente as entradas e sa das do bloco sem ser necess rias convers es de tipos Exemplo do bloco PID INT em FBD PID INT ManualMV MinEffST MaxvVarMy Errorcode Maxi Mini DeadBand MaxPWy MinPW SampleTime EnableP Enablel EnableD Deriw PW Manual Direct Measure5ST Restart Par metros de entrada Setpoint INT A unidade e o intervalo devem ser os mesmos que o PV pois as duas vari veis podem ser comparadas Vari vel de processo PV INT A unidade e o intervalo devem ser os mesmos que o SP pois as duas vari veis podem ser comparadas Ganho proporcional utilizado para calcular a a o proporcional INT do bloco PID Tempo Integral em segundos utilizado para calcular a a o REAL integral do bloco PID Tempo Derivativo
111. N for FALSE e ET for igual a PT Caso contr rio ser TRUE Assim haver uma borda de descida em Q quando o tempo indicado em PT em milissegundos tiver se esgotado Mp o LILTl 10 i O ih Q ti tI PT t 16 PT i E E ET f fi f n i E tt i5 Figura 6 3 Exibi o Gr fica do Comportamento de TOF em Fun o do Tempo Exemplo de declara o TOBPILASE TOF Exemplo em IL CAL T Finst IN vVarBDOLI F Pl T hs f ET gt warTimelur LD TOFinst o ST vVarBDOLS Exemplo em FBD T Finst VarEDOLI VarEDULA Tgss ETF Var TimeluE Exemplo em ST TOFInsC IN VarBOQLL PT Ta5SsS VarBOOL2 TOFInst 0O Fornecido pela standard hbrary O bloco funcional de tempo RunTime Clock retorna a data e a hora atual iniciando em um determinado hor rio Entradas EN BOOL a contagem do tempo em CDT inicia em uma borda de subida PDT DATE AND TIME data e hora a partir dos quais a contagem deve iniciar Sa das Q BOOL TRUE enquanto CDT estiver incrementando CDT DATE AND TIME estado atual da data e hora do contador VarBOOL2 RTC EN PDT Q CDT 201 6 Bibliotecas Quando EN FALSE as vari veis de sa da Q e CDT s o respectivamente FALSE e DT 1970 01 01 00 00 00 Assim que EN tornar se TRUE borda de subida e assim permanecer o tempo dado por PDT ser definido contado em segundos e retornado em CDT Assim que EN for para FALSE CDT ir para o valor inicial DT 1970
112. NT 504 Exit INT 252 4 Entry INT EE istep cton INT 252 z ge m EE E ENG Figura 5 38 Visualiza o Online de um Objeto do Tipo Programa SFC prog Texto Estruturado ST Texto Estruturado Estendido ExST Texto estruturado uma linguagem de programa o textual de alto n vel similar a PASCAL ou C O c digo de programa composto de express es e Instru es Ao contr rio da IL Lista de Instru es in meras constru es podem ser usadas para la os de programa o permitindo assim o desenvolvimento de complexos algoritmos Exemplo IF value lt 7 THEN WHILE value lt 8 DO value value 1 END WHILE END IF Texto Estruturado Estendido ExST uma extens o da norma IEC 61131 3 espec fica do MasterTool IEC XE para Texto Estruturado ST Exemplos Atribui o como express o e operadores Set Reset Express es Uma express o uma constru o que retorna um valor ap s sua avalia o Este valor usado nas Instru es Express es s o compostas de operadores operandos e ou atribui es Um operando pode ser uma constante uma vari vel uma chamada de fun o ou outra express o 152 5 Editores das Linguagens de Programa o Exemplos ETR ooo E Tabela 5 7 Express es Avalia o de Express es A avalia o da express o ocorre atrav s do processamento dos operadores de acordo com certas regras de liga o O operador com a liga o mais forte
113. O pragma attribute pack mode define o modo com que uma estrutura de dados empacotada durante a aloca o O atributo deve ser configurado no topo de uma estrutura de dados e influenciar o empacotamento da estrutura inteira Sintaxe jactrabuce pack mede lt Vvalor gt O modelo lt Valor gt inclu do em cotas nicas deve ser substitu do por um dos seguintes valores dispon veis Valor Descri o alinhado isto n o haver intervalos de mem ria 1 byte alinhado id ntico ao alinhado 4 byte alinhado isto o tamanho m ximo de um intervalo de mem ria 3 bytes ER 2 byte alinhado isto o tamanho m ximo de um intervalo de mem ria 1 byte 8 byte alinhado isto o tamanho m ximo de um intervalo de mem ria 7 bytes Tabela 4 6 Atributo Pack mode Exemplo attribute pack moqdedd TL TI PE MmyvSCcruCE STRUCT Enable BOOL Counter INT MaxSize BOOL MaxSizeReached BOOL END STRUCT END TYPE Uma vari vel do tipo de dado myStruct ser instanciada alinhada se o endere o do seu componente Enable for 0x0100 por exemplo ent o o componente Counter seguir no endere o 0x0101 MaxSize no 0x0103 e no MaxSizeReached no 0x0104 Com pack_mode 2 Counter estar em 0x0102 MaxSize em 0x0104 e MaxSizeReached em 0x0105 NOTA O atributo pode tamb m ser aplicado a POUs por m preciso ter cuidado com esta aplica o devido a poss veis ponteiros internos nas mesmas
114. OU externa e Adicione a POU desejada na janela das POUs do projeto como se fosse qualquer objeto interno e defina as respectivas vari veis de entrada e sa da NOTA Vari veis locais devem ser definidas em blocos funcionais externos mas n o podem ser definidas em fun es externas ou m todos Observe que as vari veis VAR STAT n o podem ser usadas no sistema de execu o No sistema de execu o deve ser implementado uma fun o equivalente um bloco funcional ou um m todo Em um envio de programa para cada POU externa ser pesquisada a POU equivalente no sistema de execu o Caso seja encontrada um link ser gerado Lista de Vari veis Globais GVL Uma Lista de Vari veis Globais a GVL Mb usada para declarar vari veis globais Se uma GVL for definida na visualiza o das POUSs as vari veis estar o dispon veis para todo o projeto Se uma GVL estiver atribu da a uma determinada aplica o as vari veis ser o v lidas dentro desta aplica o Uma GVL pode ser adicionada atrav s do comando Acrescentar Objeto e Acrescentar Lista de Vari veis Globais Para atribu la a uma aplica o existente escolha o comando no menu de contexto enquanto uma aplica o selecionada na rvore de dispositivos Caso contr rio a nova GVL ser adicionada visualiza o das POUSs 28 2 Conceitos e Componentes B sicos O editor GVL usado para editar uma Lista de Vari veis Globais Se o dispositivo s
115. PAGEDOWN gt rola uma tela para baixo e marca o ret ngulo superior mais acima Se o mesmo operador for usado com v rios operandos dois caminhos de programa o s o poss veis e Os operandos s o inseridos em linhas subsequentes separados por v rgulas Exemplo em IL d LD I ADD Es a T lt T Var e A instru o repetida nas linhas subsequentes 170 5 Editores das Linguagens de Programa o Exemplo em IL E LD T ADD 2 ADD d ADI T ST 1WAR Operandos Complexos Para usar um operando complexo digita se um par nteses de abertura usa se as linhas seguintes para os componentes do operando espec fico e abaixo destes em uma linha separada digita se o par nteses de fechamento Exemplo em IL para rotacionar uma string em 1 caractere a cada ciclo 4 LD stRotate RIGHT stRotate LEH SUB 1 CONCAT stRotate LEFT 1 ST stRotate Chamadas de Fun o Digite o nome da fun o no campo do operador O primeiro par metro de entrada deve ser fornecido como um operando em uma opera o LD anterior Se houver par metros adicionais o pr ximo deve ser fornecido na mesma linha que o nome da fun o Os demais tamb m podem ser adicionados nesta linha separados por v rgulas ou nas linhas subsequentes O valor de retorno da fun o ser armazenado no acumulador mas observe a seguinte restri o em rela o norma IEC n o poss vel realizar uma chamada de fun o com m ltiplos valor
116. POU um bloco funcional pode ser adicionado ao projeto Para atribu lo a uma aplica o existente selecione o na visualiza o dos dispositivos e use o comando do menu de contexto Caso contr rio ele ser adicionado visualiza o das POUSs No di logo Acrescentar POU escolha o tipo Bloco Funcional digite o nome do bloco lt identificador gt e escolha a linguagem de implementa o Op es adicionais e Estender digite o nome de outro bloco funcional dispon vel no projeto que deve ser a base do bloco atual corrente e Implementar n o suportado O editor estar dispon vel via bot o Abrir permitindo na sequ ncia a edi o da POU Declara o Sintaxe FUNCTION BLOCK lt NOME DO BLOCO FUNCIONAL gt EXTENDS lt NOME DO BLOCO FUNCIONAL gt A sintaxe acima seguida pela declara o das vari veis Exemplo O FBexample mostrado na figura a seguir apresenta duas vari veis de entrada e duas de sa da out e out2 Out a soma das duas entradas out2 o resultado de uma compara o de igualdade Exemplo de um Bloco Funcional em ST 20 2 Conceitos e Componentes B sicos FUNCTION BLOCK FBEXAMPLE VAR INPUT INP Ls INT INPZ INT END VAR VAR QUTEUT OU TS NES OOUT BOOL END VAR OUTIL INELFINEZ S OUT2 INP INPZ2 Inst ncia de Bloco Funcional Blocos funcionais s o sempre chamados atrav s de uma Inst ncia a qual uma reprodu o c pia de um bloco funcional
117. Programa o LD Peg lus STRING TO TIME lt T L O resultado T amp 117ms LI aan STRING TO EYTE ST Jagt O resultado 244 Exemplos em ST O resultado TRUE b STRING TO BOOL TRUE a w STRING TO WORD abc34 O resultado 0 E O resultado STRING TO TIME T 127ms T 127ms E bv STRING TO BYTE 500 E DES CG Exemplos em FBD STRING TO BOOL TETE h O resultado TRUE STRIHG TO WORD abc34d W O resultado 0 STRING TO TIHE t ll7na t O resultado T 127ms STRIHG TO BYTE 500 bw O resultado 244 Operador IEC convers o de REAL para DINT A parte inteira do n mero do valor ser usada A convers o de um tipo maior em um menor pode implicar na perda de algumas informa es 108 4 Refer ncia de Programa o Exemplo em IL LD 1 9 TEUHO ST divar Exemplos em ST diVar TRUNC 1 9 O resultado 1 diVar TRUNC 1 4 O resultado 1 TRUNC INT Operador IEC convers o de REAL para INT A parte inteira do valor ser usada NOTA TRUNC INT corresponde ao operador TRUNC tradicional Ao executar uma convers o de um tipo maior em um menor h um risco de perda de informa es Exemplo em IL LD log TRUHC IHT ST iVar Exemplos em ST IVar STRUNC INT 1 3 O resultado 1 IvVar TRUNC INT 1L 4 7 O resultado e 1 Convers es ANY TO Um operador IEC espec fico pode ser utili
118. RESET1 BOOL Sa das Q1 BOOL Q1 RS SET RESETI Q1 NOT RESET1 AND Q1 OR SET Exemplo de declara o ROLASC R97 Exemplo em IL CAL ESinst dET VarBooll E RESETl Varkool amp LD R inst 0l ST Varhoo la Exemplo em FBD R inst RS varB 0L1l JET 11 vVarEUOLS vVYarcBnOLa RESET Exemplo em ST RSInst SET VarBOOL1l RESET1 VarBOOL2 VarBOOL3 RSInst Ql Disparador R TRIG Fornecido pela standard library Bloco funcional que detecta uma borda de subida Entradas CLK BOOL sinal booleano de entrada a ser verificado para a borda de subida Sa das Q BOOL torna se TRUE se ocorrer uma borda de subida em CLK A sa da Q e uma vari vel booleana de ajuda interna M permanecer o FALSE enquanto a vari vel de entrada CLK retornar FALSE Assim que CLK retornar TRUE Q primeiro retornar TRUE e M ser configurada TRUE Isto significa que cada vez que a fun o for chamada Q primeiramente ser configurada para TRUE e ent o retornar FALSE ap s uma borda de subida em CLK Exemplo de declara o RIBRISINSE 2 R IRIG 194 F TRIG Contador CTU Exemplo em IL CAL RTRIGinat CLE Varbooll LD RTRIGinst h ST VYarBoola Exemplo em FBD RTRIGinst RE TRIG varB0 Ll1 CLE E VarEOOLa Exemplo em ST RTRIGInst CLK VarBOOL1 VarBOOL2 RTRIGInst O Fornecido pela standard hbrary Este bloco funcional detecta uma borda de descida Entradas CLK BOOL s
119. RIG RS SR TON TOF CTD e CTU Elementos Ladder e POUs definidas pelo usu rio A categoria POUSs lista todas as POUs definidas pelo usu rio como o objeto FBD LD IL atualmente aberto no editor A lista ser atualizada automaticamente quando POUs forem adicionadas ou removidas da aplica o As pastas da categoria podem ser abertas atrav s de um clique na respectiva categoria Veja na Figura 5 64 a categoria Geral est aberta e as outras est o fechadas ela mostra um exemplo para Inser o de uma atribui o atrav s de arrastar e soltar a partir da caixa de ferramentas Neste caso somente est aberta na caixa de ferramentas a se o Geral Caixa de Ferramen Geral 1 Rede TF Caixa LT var Atribui o PRGI SPl lt p 222 Salto 80 FEFA 4rer Retorno Entrada R aj T Ramifica o Figura 5 64 Inser o A Partir da Caixa de Ferramentas Para inserir um elemento no editor selecione o na caixa de ferramentas com um clique de mouse e arrastando e soltando traga o para a janela do editor As posi es poss veis de inser o s o indicadas por marcadores de posi o que aparecem enquanto o elemento est sendo desenhado na janela do editor mantendo se o mouse pressionado A posi o mais pr xima poss vel se tornar verde Ao soltar o bot o do mouse o elemento ser inserido nesta posi o verde Se um elemento caixa foi desenhado em uma caixa j existente a nova substi
120. RIVATIVE o valor da fun o devolvido com uma vari vel REAL atrav s do uso de IN TM cont m o tempo transcorrido em milissegundos em uma DWORD Se RESET for TRUE o bloco funcional pode ser reiniciado A sa da OUT do tipo REAL A integral aproximada por duas fun es de passo A m dia destas retorna a integral aproximada Exemplo em FBD integral ingst E Input OUT riut dwTime OVERFLOW b wve rf low beset 205 6 Bibliotecas INTEGRAL IM INTEISRAL QUIT Figura 6 6 Comportamento do FB INTEGRAL Lin TRAFO Este bloco funcional util library transforma um valor REAL localizado em um intervalo delimitado por um valor superior e Inferior em um valor REAL localizado em outro intervalo igualmente definido por um limite superior e inferior A equa o IN IN MIN IN MAX IN OUT OUT MIN OUT MAX OUT a base da convers o Exemplo em FBD Vari veis de Entrada N f REAL vaordeentada S INMIN_ REAL Limite inferior do intervalo de valor da entrada Tabela 6 1 Vari veis de Entrada LIN_TRAFO Vari veis de Sa da Tipo de dado REAL Valor da sa da ERROR BOOL Erro TRUE se IN_MIN IN_MAX ou se IN estiver fora do intervalo de valores da entrada especificada Tabela 6 2 Vari veis de Sa da LIN TRAFO 206 6 Bibliotecas Exemplo Um sensor de temperatura fornece valores em Volts numa escala de O a 10 V Quando este sensor estiver conec
121. RMAL2 ACTUAL 2 De acordo com a norma IEC 61131 3 as fun es podem ter sa das adicionais Estas sa das devem ser atribu das na chamada de uma fun o por exemplo em ST conforme a seguinte sintaxe OUT gt lt VARI VEL DE SAIDA 1 gt QUIZ gt lt VARI VEL DE SAIDA 2 gt 4 4 OUTRAS VARI VEIS DE SA DA Exemplo A fun o FUN definida com duas vari veis de entrada in1 e 1n2 O valor de retorno de FUN ser escrito nas vari veis de sa da VAR OUTPUT locl e loc2 declaradas localmente FUN IN1 1 IN2 2 OUT1 gt LOC1 OUT2 gt LOC2 Bloco Funcional Um bloco funcional uma POU que fornece um ou mais valores durante o processamento de um programa do CP Ao contr rio da fun o os valores das vari veis de sa da e das vari veis Internas necess rias mant m se de uma execu o do bloco funcional at a pr xima execu o Assim sendo a chamada de um bloco funcional com os mesmos argumentos par metros de entrada nem sempre produz os mesmos valores de sa da Al m da funcionalidade descrita na norma IEC 61131 3 a programa o orientada a objetos suportada e os blocos funcionais podem ser definidos como extens es de outros blocos funcionais Isto significa que a heran a pode ser usada ao programar com blocos funcionais Um bloco funcional sempre chamado atrav s de uma Inst ncia que uma reprodu o c pia do bloco funcional Via comando Acrescentar Objeto e Acrescentar
122. T wi O resultado em q 0 877583 Exemplo em ST q COS 0 5 Exemplo em FBD cos Operador IEC retorna a tangente de um n mero A vari vel de entrada pode ser de qualquer tipo de dado num rico b sico sendo que este representa um arco em radianos A vari vel de sa da deve ser do tipo REAL ou LREAL Exemplo em IL LD Do 5 TAH ST Q O resultado em q 0 546303 Exemplo em ST q TAN 0 5 Exemplo em FBD A Operador IEC retorna o arco seno fun o inversa do seno de um n mero A vari vel de entrada pode ser de qualquer tipo de dado num rico b sico A vari vel de sa da deve ser do tipo REAL ou LREAL sendo que esta representa um arco em radianos Exemplo em IL LD O AS IN ST Q O resultado em q 0 523599 Exemplo em ST q ASIN 0 5 Exemplo em FBD s 112 ACOS ATAN EXPT 4 Refer ncia de Programa o Operador IEC retorna o arco cosseno fun o inversa do cosseno de um n mero A vari vel de entrada pode ser de qualquer tipo de dado num rico b sico A vari vel de sa da deve ser do tipo REAL ou LREAL sendo que esta representa um arco em radianos Exemplo em IL LD 0 5 ACOS ST wi O resultado em q 1 0472 Exemplo em ST q ACOS 0 5 Exemplo em FBD ACOS 0 5 q Operador IEC retorna o arco tangente fun o inversa da tangente de um n mero A vari vel de entrada pode ser de qualquer tipo de dado num rico
123. TADR e o operador de conte do s o operadores de endere os extensivos norma dispon veis no MasterTool IEC XE ADR Este operador de endere o n o est prescrito na norma IEC 61131 3 ADR retorna o endere o de seu argumento em uma DWORD Este endere o pode ser enviado para fun es podendo ser tratado como um ponteiro ou pode ser atribu do a um ponteiro em um projeto NOTA O operador ADR pode ser usado com nomes de fun es programas blocos funcionais e m todos assim substituindo o operador INDEXOF Considere que ponteiros de fun o podem ser passados a bibliotecas externas mas n o h possibilidade de chamar um ponteiro de fun o no MasterTool IEC XE Para habilitar uma chamada de sistema sistema de execu o a respectiva propriedade categoria Compilar deve estar definida para a fun o Consulte Ponteiros de Fun o Exemplo em ST dwVar ADR PVAR Exemplo em IL LD bYar ADR ST durar NOTA Ap s uma altera o online podem ocorrer mudan as em rela o aos dados em alguns endere os Isto deve ser observado ao usar ponteiros em endere os BITADR Este operador de endere o n o est prescrito na norma IEC 61131 3 BITADR retorna o offset do bit no segmento em uma DWORD Observe que o valor do offset depende da op o de endere amento de byte nas configura es do dispositivo estar ativada ou n o VAR vari AT 1X2 3 BOOL bitoffset DWORD END VAR Exemplo em ST b
124. TRING ANY DATE ANY NUM ANY REAL ANY INT LREAL REAL LINT DINT INT SINT ULINT UDINT UINT USINT TIME LWORD DWORD WORD BYTE BOOL 69 Hasvalue define ident string NOT operador Operador AND operador Operador OR operador 4 Refer ncia de Programa o STRING WSTRING DATE AND TIME DATE TIME OF DAY Exemplo Pr requisito Em uma POU com o c digo abaixo em um primeiro momento a vari vel g multitype declarada como LREAL e em um segundo momento declarada como STRING IF hastype variable g multitype LREAL A seguinte linha de c digo somente ser processada quando a vari vel for declarada como LREAL g multitype 0 9 g multitype 1 1 ELSIF hastype variable g multitype STRING A seguinte linha de c digo somente ser processada quando a vari vel for declarada como STRING g multitype this is a multi talented END IF Se define define ident estiver configurado e apresentar o valor especificado string ent o seu valor ser TRUE Caso contr rio ser FALSE Exemplo Pr requisito a vari vel test usada em uma POU Em um primeiro momento ela tem o valor 1 em um segundo momento tem o valor 2 IF hasvalue test 1 A seguinte linha de c digo somente ser processada quando a vari vel test apresenta o valor 1 xi x 1 ELSIF hasvalue test 2 A seguinte linha de c digo somente ser p
125. Um resultado deve ser atribu do a uma fun o ou seja o nome da fun o usado como vari vel de sa da Exemplo de uma Fun o em ST FUNCTION FCT INT VAR INPUT IVARI INT IVAR2 INT IVAR3 INT END VAR FCT IVARI IVAR2Z IVARS Esta fun o l tr s vari veis de entrada e retorna o produto das duas ltimas adicionadas primeira Chamada de Fun o A chamada de uma fun o em ST pode aparecer como um operando em express es Em IL uma chamada de fun o somente pode estar posicionada dentro das a es de um passo ou dentro de uma transi o Fun es ao contr rio dos programas ou blocos funcionais n o cont m informa es de estado ou seja a Invoca o de uma fun o com os mesmos argumentos par metros de entrada sempre produzir os mesmos valores sa da Por esta raz o as fun es n o devem conter vari veis globais e endere os Abaixo encontram se exemplos para chamadas de fun o Em IL LD 5 Fct 3 E 22 ST result Em ST RESULT FCTL S 3 22 Em FBD 5 result 3 EE Em chamadas de fun o n o poss vel misturar atribui es de par metros expl citos com impl citos Isto permite alterar a ordem das atribui es dos par metros de entrada 19 2 Conceitos e Componentes B sicos Exemplo FUN FORMAL1 ACTUAL1 ACTUAL2 gt Mensagem de erro FUN FORMAL2 ACTUAL2 FORMALI ACTUAL1 Mesma sem ntica que FUN FORMALI ACTUAL FO
126. V seja menor do que o configurado o bloco PID ir parar o c lculo e ser gerado um c digo de erro na sa da Tempo de amostragem Define o per odo de chamada do bloco PID em segundos mpleTim REAL Sampie Time podendo variar de 0 001 s 1000 s Esse par metro desconsiderado se o MeasureST for verdadeiro EnableP BOOL Quando verdadeiro habilita a a o proporcional do bloco PID Caso seja falso a a o proporcional zerada EnableD BOOL Quando verdadeiro habilita a o derivativa do bloco PID Caso seja falso a a o derivativa zerada Enable poo Quando verdadeiro habilita a a o integral do bloco PID Caso seja falsa a a o integral zerada Quando verdadeiro a a o derivativa calculada na vari vel de processo sendo diferente de zero somente quando PV DerivPV BOOL SE PCS r ETO nec come ea alterado Caso seja falso a a o derivativa calculada no erro sendo dependente das vari veis SP e PV Quando verdadeiro habilita o modo manual Caso seja falso BOOL habilita o modo autom tico O modo de controle do bloco PID afeta a maneira como o MV e a a o integral s o calculadas Quando verdadeiro seleciona se o controle direto fazendo BOOL Com que MV seja inclu do na resposta para ser inclu do no PV Caso seja falso seleciona se o controle reverso fazendo com que MV seja diminu do da resposta para ser inclu do no PV Quando verdadeiro o tempo de amostragem medid
127. VE ST TAEZ Resultado var2 obt m o valor de varl O mesmo resultado ser obtido conforme o exemplo abaixo LD var l ST vara Exemplo em ST ivar2 MOVE ivarl O mesmo resultado ser obtido com ivar2 ivarls Este operador aritm tico n o est prescrito na norma IEC 61131 3 Ele pode ser usado para determinar o n mero de bytes requisitado pela vari vel x dada O operador SIZEOF retorna um valor n o atribu do O tipo do valor de retorno ser adaptado ao tamanho encontrado da vari vel x Valor de retorno de SIZEOF x Tipo de dado da constante implicitamente usada para o tamanho encontrado O lt size of x lt 256 USINT 256 lt size of x lt 65536 UINT 65536 lt size of x lt 4294967296 UDINT 4294967296 lt size of x ULINT Tabela 4 11 Operador SIZEOF 88 4 Refer ncia de Programa o Exemplo em ST VAR arrl ARRAY 0 4 OF INT Varil INT end var Varl CIZEOF arrl gt d h varl USINTELOS Exemplo em IL LD arrl SIZE OF ST varl O resultado 10 INDEXOF Este operador aritm tico n o est prescrito na norma IEC 61131 3 Execute esta fun o para a classifica o interna da POU Exemplo em ST varl INDEXOF POU2 Operadores de Bitstring AND OR Os seguintes operadores de bitstring correspondentes norma IEC 61131 est o dispon veis AND OR XOR e NOT Operadores de bitstring comparam os bits correspondentes de dois ou mai
128. XE codifica o e documenta o M dulos de biblioteca internos e externos Instala o e Inclus o no Projeto e Bibliotecas podem ser gerenciadas no sistema local em um ou v rios reposit rios pastas locais elas n o podem ser inclu das no projeto antes de ter sido instalada em um reposit rio no sistema local A instala o feita no di logo Reposit rio de Bibliotecas e Como pr requisito para a instala o uma biblioteca deve conter t tulo vers o e nome da empresa nas suas Informa es do Projeto Opcionalmente pode ser definida tamb m uma categoria o que ser til posteriormente para a classifica o destas no gerenciador e Sea categoria n o estiver definida nas Informa es do Projeto a biblioteca ser automaticamente considerada como pertencente categoria Miscel nea Outras categorias podem ser definidas em um ou mais arquivos xml libcat xml os quais tamb m s o carregados no di logo Informa es de Projeto para selecionar uma das categorias Consulte abaixo Criando Bibliotecas Codifica o Documenta o e O Library Manager usado para incluir bibliotecas em um projeto Em um Projeto MasterTool Padr o o Library Manager est automaticamente adicionado na janela de visualiza o dos Dispositivos ou POUs atrav s do di logo Acrescentar Objeto Bibliotecas referenciadas em outras bibliotecas tamb m s o exibidas no gerenciador incluindo as bibliotecas ocultas Consulte abaixo Bibliotecas Re
129. a Tipos permitidos BYTE WORD DWORD LWORD SINT USINT INT UINT DINT UDINT LINT ULINT REAL e LREAL Exemplo em IL LD E DIY ST varl O resultado em Varl 4 Exemplo em ST varl 0 2 Exemplo em FBD 5 Yarl 86 4 Refer ncia de Programa o NOTA Observe que a utiliza o do operador DIV com tipos de dados inteiros retorna apenas o quociente da divis o Caso se queira retornar o resto da divis o o operador a ser utilizado o MOD descrito a seguir Fun es Check MOD Para verificar o valor do divisor por exemplo para evitar uma divis o por 0 poss vel usar as fun es de verifica o CheckDivInt CheckDivLint CheckDivR eal e CheckDivLReal Ap s as mesmas terem sido inclu das na aplica o cada divis o que ocorrer no c digo relacionado provocar uma chamada destas fun es Para inclu las na aplica o use o di logo Acrescentar Objeto A seguir escolha o objeto POUs para Verifica es Impl citas selecione a caixa de sele o correspondente e confirme com Abrir A fun o selecionada ser aberta no editor A parte de declara o das fun es est pr definida e n o deve ser alterada exceto para adicionar vari veis locais Uma implementa o padr o das fun es modific veis est dispon vel em ST Exemplo de implementa o padr o da fun o CheckDivReal Parte de declara o C digo implicitamente gerado N O EDITAR FUNCTION CheckDivRea
130. a O resultado em q 3 80666 Exemplo em ST q LN 45 Exemplo em FBD LH 45 i Operador IEC retorna o logaritmo de um n mero na base 10 A vari vel de entrada pode ser de qualquer tipo de dado num rico b sico A vari vel de sa da deve ser do tipo REAL ou LREAL Exemplo em IL 110 EXP SIN COS LD 314 5 LOG ST wj O resultado em q 2 49762 Exemplo em ST q LOG 314 5 Exemplo em FBD LOG 314 5 q Operador IEC retorna a fun o exponencial 4 Refer ncia de Programa o A vari vel de entrada pode ser de qualquer tipo de dado num rico b sico A vari vel de sa da deve ser do tipo REAL ou LREAL Exemplo em IL LD EXP ST O resultado em q 7 389056 Exemplo em ST q EXP 2 Exemplo em FBD AA Operador IEC retorna o seno de um n mero A vari vel de entrada pode ser de qualquer tipo de dado num rico b sico sendo que este representa um arco em radianos A vari vel de sa da deve ser do tipo REAL ou LREAL Exemplo em IL LD O 5 SIN ST ij O resultado em q 0 479426 Exemplo em ST G SIN 5 3 Exemplo em FBD Operador IEC retorna o cosseno do n mero 111 TAN ASIN 4 Refer ncia de Programa o A vari vel de entrada pode ser de qualquer tipo de dado num rico b sico sendo que este representa um arco em radianos A vari vel de sa da deve ser do tipo REAL ou LREAL Exemplo em IL LD 0 5 COS S
131. a o Operador Aplica no operador Tabela 4 8 Sintaxe de Defined Funcionalidade Listar Componentes A norma IEC 61131 3 d suporte a entradas de texto As funcionalidades de Listar Componentes menu Ferramentas Op es SmartCoding auxiliam na Inser o de um identificador correto e Se for inserido um ponto em qualquer lugar onde puder ser inserido um identificador global aparecer uma caixa de sele o listando todas as vari veis globais dispon veis Escolha um destes elementos e pressione a tecla lt ENTER gt para inseri lo ap s o ponto O elemento tamb m pode ser inserido atrav s de um duplo clique na lista e Inserindo uma inst ncia de um bloco funcional ou uma vari vel de estrutura seguida de um ponto aparecer uma caixa de sele o listando todas as vari veis de entrada e sa da do bloco funcional correspondente ou os componentes da estrutura Escolha o elemento desejado e insira o pressionando a tecla lt ENTER gt ou com um duplo clique na lista Exemplos EEG StEuvar ea var da ivar modo by M e Figura 4 5 Listar Componentes Componentes de uma Estrutura MainPrg Configuration Bus 1 PROGRAM MainPrg z VAR 3 fbinst FB 4 ergi INT HF l ivar i ivar l binst in 11 F 3 erg fbinst Figura 4 6 Listar Componentes Componentes de um Bloco Funcional e Uma caixa de sele o listando todas as POUs e as vari veis globais dispon veis no projeto apare
132. a o das vari veis de uma lista de vari veis globais arbitr ria Entretanto necess rio definir a ordem para o caso por exemplo das vari veis de uma lista global estarem referindo se a vari veis de outra lista Neste caso usa se o pragma para organizar a ordem de inicializa o Sintaxe attribute global init slot g lt val6r gt O modelo lt Valor gt deve ser substitu do por um valor inteiro descrevendo a ordem de inicializa o da assinatura O valor padr o 50000 Um valor menor faz com que a inicializa o ocorra antes No caso de assinaturas com o mesmo valor para o atributo global_init_slot a sequ ncia de inicializa o destas fica indefinida Exemplo Suponha que o projeto inclui duas listas de vari veis globais GVL_1 e GVL_2 mpraet Gul 1 a on C Froject Settings Figura 4 2 Listas de Vari veis Globais As vari veis B e C s o membros da lista de vari veis globais GVL 1 seus valores iniciais dependem da vari vel A VAR GLOBAL B INT A 1 C INT A 1 END VAR A vari vel global A membro da lista de vari veis globais GVL_2 actrib te global init Slot 3000 VAR GLOBAL A INT 1000 END VAR Configurando se o atributo global_init_slot da GVL 2 para 300 menor valor na ordem de inicializa o assegura se que a express o A 1 esteja definida quando da inicializa o de B eC 59 4 Refer ncia de Programa o dessa forma pode se usa
133. a o usu rio e dispon vel no dispositivo para acesso externo por exemplo por um servidor OPC As vari veis fornecidas com este atributo ser o enviadas para o CP mesmo que n o tenham sido configuradas ou n o estejam vis veis no editor de configura o de s mbolos O Symbol Configuration deve estar dispon vel como um objeto na rvore de Dispositivos Sintaxe attribute symbol none tread write readwrite O acesso s permitido em s mbolos vindo de programas ou listas de vari veis globais Para acessar um s mbolo o seu nome deve ser completamente especificado A defini o do pragma pode ser atribu da a vari veis espec ficas ou a todas as vari veis declaradas em um programa e Para ser v lido para uma nica vari vel o pragma deve estar posicionado na linha anterior declara o das vari veis e Para ser v lido para todas as vari veis contidas na parte de declara o de um programa o pragma deve ser posicionado na primeira linha do editor de declara o De qualquer forma tamb m neste caso as configura es para as vari veis espec ficas devem ser modificadas atrav s da adi o expl cita de um pragma O poss vel acesso a um s mbolo definido pelo par metro de pragma none read write ou readwrite Se nenhum par metro estiver definido o padr o readwrite ser v lido Exemplo Com a configura o abaixo as vari veis A e B ser o exportadas com acesso de leitura e
134. a de Programa o ATEN O O uso das fun es CheckRangeSigned e CheckRangeUnsigned podem resultar em um la o infinito por exemplo se um tipo subrange for usado como incremento de um la o FOR que n o seja compat vel com o intervalo Exemplo de um la o infinito VAR ga SE UTNE 40 2 10000 4 END VAR FOR u1 0 TO 10000 DO END FOR O la o FOR nunca ser deixado pois a fun o de verifica o evitar que sejam atribu dos valores maiores que 10000 vari vel ur Operadores Operadores IEC e Fun es Adicionais Norma O MasterTool IEC XE suporta todos operadores IEC Diferentemente das fun es padr o estes operadores s o reconhecidos implicitamente no projeto Al m dos operadores IEC tamb m os seguintes operadores n o prescritos pela norma s o suportados ANDN ORN XORN INDEXOF SIZEOF consulte Operadores Aritm ticos ADR BITADR Operador de Conte do consulte Operadores de Endere o e alguns Operadores de Escopo Operadores s o usados como fun es em uma POU Veja as seguintes categorias de operadores Operadores de atribui o MOVE Operadores aritm ticos Operadores de bitstring Operadores de deslocamento de bits Operadores de sele o Operadores de compara o Operadores de endere o Operadores de chamada Fun es de convers o de tipo Fun es num ricas Operadores adicionais norma IEC Operadores de escopo adicionais norma IEC Operadores Ari
135. a n o for revertida atrav s de undefine Caso contr rio o valor ser FALSE Exemplo Pr requisito h duas POUSs A vari vel pdef1 definida pela instru o define na POU 1 mas n o em POU 2 Ambas possuem o c digo abaixo IF defined pdef1 Este c digo processado na POU 1 info pdef1 defined ivar ivar SINT 1 67 Defined variable nome da vari vel Defined type identificador Defined pou nome da POU Hasattribute pou nome da POU atributo 4 Refer ncia de Programa o ELSE Este c digo processado na POU 2 info pdef1 not defined ivar ivar SINT 1 END IF No exemplo somente a string de informa o pdef1 defined ser exibida na janela de mensagem quando a POU 1 for chamada pois pdef1 est atualmente definida A mensagem de informa o pdef1 not defined ser exibida caso pdef1 n o seja definida POU 2 Quando aplicado a uma vari vel seu valor ser TRUE se esta for declarada no escopo atual Caso contr rio ser FALSE Exemplo Pr requisito h duas POUs POU 1 e POU 2 A vari vel g bTest declarada em POU 2 mas n o em POU 1 Ambas possuem o c digo abaixo IF defined variable g bTest O seguinte c digo processado somente na POU 2 g bTest x gt 300 END IF Quando aplicado a um identificador de tipo seu valor ser TRUE se o tipo com este nome espec fico foi declarado Caso contr rio
136. a o nome de um passo no qual um timeout foi registrado pelo SFCError timeout Pr requisito SFCError deve estar definida SFCErrorPOU STRING Esta vari vel armazena o nome da POU SFC na qual ocorreu um timeout Pr requisito SFCError deve estar definida SFCQuitError BOOL Enquanto esta vari vel for TRUE a execu o do diagrama SFC interrompida e a vari vel SFCError ser FALSE Assim que esta se tornar FALSE todos os estados de tempo atuais nos passos ativos ser o FALSE Pr requisito SFCError deve estar definida SFCPause BOOL Enquanto esta vari vel for TRUE a execu o do diagrama SFC interrompida 148 5 Editores das Linguagens de Programa o SFCTrans BOOL Esta vari vel torna se TRUE assim que houver uma transi o SFCCurrentStep Esta vari vel armazena o nome do passo atualmente ativo STRING independentemente da monitora o do tempo Em caso de sequ ncias simult neas o nome do passo direita ser registrado SFCTip SFCTipMode Estas vari veis permitem o modo inching no gr fico atual Quando BOOL este modo foi ativado pelo SFCTipMode TRUE somente ser poss vel pular para o pr ximo passo configurando SFCTip TRUE borda de subida Enquanto SFCTipMode for configurado para FALSE ser poss vel pular pelas transi es Tabela 5 5 Vari veis Impl citas Um timeout foi detectado no passo s1 no objeto POU do SFC pela mem ria SFCError BPOUDLOO 8 DeviceApplic
137. a parte superior Neste contexto veja tamb m Editor de Declara o no Modo Online no Manual de Utiliza o Master Tool IEC XE MU299048 Monitora o Se a monitora o em linha n o estiver explicitamente desativada no di logo Op es ela ser complementada nos editores FBD ou LD por uma pequena janela de monitora o em cada vari vel e tamb m por uma coluna de monitora o adicional mostrando os valores atuais monitora o em linha Este ainda o caso para entradas e sa das de blocos funcionais n o atribu dos A janela de monitora o de uma vari vel mostra um pequeno tri ngulo vermelho no canto superior esquerdo Se a vari vel atual estiver for ada preparada para escrita ou for amento ser indicado um tri ngulo azul na parte inferior esquerda Na Figura 5 77 um exemplo de uma vari vel atualmente for ada e preparada para liberar o for amento HyCounter Figura 5 77 Vari vel For ada e Preparada para Liberar o For amento 183 5 Editores das Linguagens de Programa o Express o Coment rio Tipo valor valor Preparado Inst Up ndDown Enable BOOL TRUE da Amplitude INT 200 35 GoHome BOOL FALSE Fa value INT 41 Fa EDOL FALSE FS Down BOOL TRUE Counter DINT 2159 divalue DIMT 41 e EOL FALSE x INT 0 x2 INT O amp Up BOOL TRUE a Down BaL FALSE MyCounter Yars For third network DINT F 40 lt Unforce and restore gt MyDownTounter DINT 2 da Err BOOL ga E
138. aSalto Retorno RETURN No modo online um r tulo de RETORNO automaticamente inserido para marcar o final da POU Observe que no modo online o elemento RETURN automaticamente inserido na primeira coluna e ap s o ltimo elemento no editor No passo a passo ele automaticamente salta para esta posi o antes que a execu o saia da POU Compositor Um compositor usado para tratar uma entrada de caixa do tipo estrutura O compositor exibe os componentes da estrutura e os disponibiliza para o programador no CFC Para tal nomeie o compositor da mesma forma que a referida estrutura substituindo 227 pelo nome e conecte o caixa em vez de usar uma Entrada Um seletor ao contr rio do compositor usado para tratar uma sa da de caixa do tipo estrutura O seletor exibe os componentes da estrutura e os disponibiliza para o programador no CFC Para tal nomeie o seletor da mesma forma que a referida estrutura substituindo 277 pelo nome e conecte o caixa em vez de usar uma Sa da Ns Coment rio O lt Erver pow comment here gt Use este elemento para incluir coment rios no gr fico Selecione o texto do espa o reservado e substitua o pelo texto desejado Uma nova linha pode ser inclu da no coment rio pressionando lt Ctrl gt lt Enter gt Pino de Dependendo do tipo de caixa uma entrada Entrada adicional pode ser adicionada Para tanto selecione a caixa na rede CFC e desenhe nela o pino de entrada
139. ada item SFC uma mem ria criada implicitamente com o mesmo nome do elemento Esta op o usada para definir se esta mem ria deve ser exportada para a configura o de s mbolos e como a mesma deve ser acessada no CP Execute um duplo clique no campo valor selecione o e use a tecla de espa o para abrir a lista de sele o para escolher uma das op es de acesso Nenhuma o s mbolo ser exportado para a configura o de s mbolos mas n o estar acess vel no CP Leitura o s mbolo ser exportado para a configura o de s mbolos e poder ser lido no CP Escrita o s mbolo ser exportado para a configura o de s mbolos e ser escrito no CP Leitura escrita combina o de leitura e escrita A princ pio nada inserido neste campo ou seja o s mbolo n o exportado para a configura o de s mbolos Tabela 5 2 Descri o das Propriedades Comuns Espec fico Propriedade Passo inicial Esta a o sempre est ativada nas propriedades do passo inicial atual A princ pio ele est ativado para o primeiro passo em um SFC e desativado para outros passos Ao ativar esta op o em outro passo desative o no passo anterior para evitar um erro de compila o Tempos Atente para a possibilidade de detectar timeouts em passos utilizando a mem ria SFCError Ativa o Tempo de processamento m nimo do passo Valores permitidos tempo de m nima acordo com a sintaxe IEC por exemplo t 8s
140. ais c iniciam com o prefixo c seguido de um sublinhado e do prefixo do tipo e do nome da vari vel Exemplo VAR CONSTANT c uiSyncID UINT 16480 END VAR Para vari veis globais g e constantes globais gc um prefixo adicional sublinhado ser anexado ao prefixo da biblioteca Exemplos VAR GLOBAL CAN Gg ateste INT END VAR VAR GLOBAL CONSTANT CAN gc dwExample DWORD END VAR Nomes de Vari veis nas Bibliotecas do MasterTool IEC XE Basicamente veja acima Nomes de Vari veis com a seguinte exce o vari veis globais e constantes n o precisam de um prefixo de biblioteca pois os contextos fazem as vezes do prefixo Exemplo g aTesc INT Declara o CAN O aTest Implementa o Chamada em um programa aplicativo Tipos de Dados Definidos pelo Usu rio DUT Estrutura o nome de cada tipo de dado de estrutura consiste em um prefixo de biblioteca exemplo COM um sublinhado e uma breve descri o da estrutura exemplo SDOTELEGRAM O prefixo associado para as vari veis usadas desta estrutura devem vir diretamente ap s a v rgula Exemplo TIPE COM SDOTelegram 3 4 Prefixo Sdo STRUCT windex WORD bySubIndex BYTE byLen BYTE apybatea ARRAY Osso OF BITE END STRUCT END TYPE As enumera es iniciam com o prefixo da biblioteca exemplo CAL seguido de um sublinhado e do identificador em letras mai sculas ENUMs devem ser definidos com os valores INT corretos
141. alor de limite correspondente P 0 Y ou P N 1 Y Se N estiver fora dos valores permitidos entre 2 e 11 ent o ERR 4 Exemplo em ST Primeiramente ARRAY P deve estar definido no cabe alho VAR CHARACTERISTIOC LINE CHARCURVE KL ARRAY 0 10 OF POINT X 0 Y 0 X 250 Y 50 X 500 Y 150 X 750 Y 400 7 X 1000 Y 1000 COUNTER INT END VAR A seguir alimenta se CHARCURVE com por exemplo um valor constantemente incrementado COUNTER COUNTER O CHARACTERISTIC LINE IN COUNTER N 5 P KL COUNTER CHARACTERISTIC LINE OUT Figura 6 13 Ilustra o das Curvas Resultantes 215 6 Bibliotecas RAMP INT Fornecido pela util library RAMP INT serve para limitar a ascend ncia ou descend ncia da fun o de entrada A entrada consiste de tr s valores INT IN a entrada de fun o ASCEND e DESCEND o m ximo de aumento ou diminui o por um intervalo de tempo determinado definido por TIMEBASE do tipo TIME Configurar RESET para TRUE faz com que RAMP INT seja inicializada A sa da OUT do tipo INT cont m o valor da fun o limitado ascendente e descendente Quando TIMEBASE est configurado para tHO0s ASCEND e DESCEND n o est o relacionados ao Intervalo de tempo e permanecem os mesmos Exemplo de RAMP INT em CFC RAMP IN 25 2 T415 RES RAMP INTIM RAME INT OUT Figura 6 14 Comportamento RAMP_INT RAMP_REAL Fornecido pela util library As fun es RAMP_REAL s
142. amadas de fun o com v rios par metros estes devem ser escritos em uma das linhas seguintes onde o campo do operador deve ser deixado vazio Neste caso acrescente um par metro separado por v rgulas No caso de um bloco funcional programa ou chamada de a o deve ser acrescentada uma correta abertura e ou fechamento de par nteses Endere o Este campo cont m o endere o do operando conforme definido na parte de declara o O campo n o pode ser editado e pode ser habilitado ou desabilitado atrav s da op o Mostrar Endere o do S mbolo Coment rio Este campo cont m o coment rio conforme definido para o operando de s mbolo na parte de declara o O campo n o pode ser editado e pode ser habilitado ou desabilitado atrav s da op o Mostrar Endere o do S mbolo Coment rio Este campo cont m o coment rio para a linha atual edit vel e pode de operando ser habilitado ou desabilitado atrav s da op o Mostrar Endere o do S mbolo Tabela 5 13 Estrutura do Editor Tabular 169 5 PROGRAM myFuncCall VAR tonInstl TON tonInst2 TON tl TIME tOutl TIME t2 TIME tQut2 TIME bYar BOOL bReady AT SQBl BOOL END VAR Standard Library function call Two timers CAL tonInstli IN bVYar PT tl ET gt tOutl tonInstl Q tonInst2 IN tonInstZ EDi Co Q gt bReady ET gt tOut2 ST CAL 051 Editores das Linguagens de Programa o is TRUE PT seconds after IN had
143. andard lbrary Os projetos criados a partir do modelo Projeto MasterTool Padr o j possuem esta biblioteca carregada NOTA Em alguns exemplos deste manual o c digo esta declarado sequencialmente mas para sua utiliza o o mesmo deve ser separado a parte superior do editor da linguagem de programa o para declara es e a parte inferior do editor deve ser utilizada para a implementa es Chamando POUs POUs podem chamar outras POUs mas n o s o permitidas recorr ncias Quando uma POU atribu da a uma aplica o chama outra POU apenas pelo seu nome sem nenhum contexto adicionado adotada a seguinte ordem de busca 16 2 Conceitos e Componentes B sicos 1 Aplica o atual 2 Gerenciador de bibliotecas da aplica o atual 3 Visualiza o das POUs 4 Gerenciador de bibliotecas na visualiza o das POUs Se uma POU com o nome especificado na chamada estiver dispon vel em uma biblioteca do gerenciador de bibliotecas e estiver como um objeto na visualiza o das POUSs n o haver sintaxe para cham las explicitamente apenas usando o seu nome na visualiza o das POUS Neste caso o usu rio deve mover a referida biblioteca do gerenciador da aplica o para o gerenciador da visualiza o das POUSs Isso permitir a chamada da POU apenas pelo seu nome Por outro lado para chamar aquela da biblioteca deve se utilizar o contexto da referida biblioteca Consulte tamb m o item POUSs para Verifica es Impl
144. andos Paralela e Alternativa Isto pode ser til durante a programa o Um r tulo de ramifica o automaticamente adicionado linha horizontal que precede a ramifica o denominada Ramifica o lt n gt onde n o n mero de execu o Iniciando em zero Este r tulo pode ser especificado ao definir um destino para o salto Figura 5 28 Ramifica o Paralela Ramifica o Alternativa Rena S mbolo 5 Uma ramifica o alternativa deve iniciar e terminar com uma transi o As ramifica es alternativas podem conter ramifica es paralelas ou outras alternativas As linhas horizontais antes e ap s a rea ramificada s o simples Se o passo que precede a linha alternativa de in cio estiver ativo ent o a primeira transi o de cada ramifica o alternativa ser avaliada da esquerda para a direita A primeira transi o a partir da esquerda que apresentar o valor TRUE ser aberta e os passos seguintes ser o ativados Ramifica es alternativas s o inseridas via comando Inserir Ramifica o Direita quando a transi o estiver selecionada As linhas horizontais antes e ap s a rea ramificada s o simples Observe que as ramifica es paralelas e alternativas podem ser convertidas atrav s dos comandos Paralela e Alternativa Isto pode ser til durante a programa o 142 Salto Macro 5 Editores das Linguagens de Programa o Figura 5 29 Ramifica o Alternativa S mbolo
145. ap s uma poss vel a o de entrada de passo ter sido processada No entanto ao contr rio de uma a o de passo IEC ela n o executada mais de uma vez quando desativada e n o pode ter qualificadores atribu dos A a o associada a um passo via uma entrada no campo Passo Ativo das propriedades do passo representada por um pequeno tri ngulo no canto superior direito da caixa do passo A o de Sa da de Passo Uma a o de sa da ser executada uma vez quando o passo for desativado Observe entretanto que esta execu o n o ser feita no mesmo ciclo mas no come o no ciclo subsequente A a o associada a um passo via uma entrada no campo Sa da de Passo nas propriedades do passo E representada por um X no canto Inferior direito da caixa de passo 140 5 Editores das Linguagens de Programa o p B P gina Inicial El Configuration Bus al Yx 1 PROGRAM PRG3 Al Writer v Mosortby 24 Sort order 7 Z VAR Propriedade Valor INICIALIZAR BOOL Comum 4 END VAR 3 Nome PASSO O E Coment rio Simbolo Espec fico Init Passo Inicial Tempos Ativa o Minima Ativa o M xima o INICIALIZAR A es enencusaas PASSO 0 Passo Ativo PASSO 0 active E Entrada de Passo PASSO O entry Saida do Passo PASSO O exit SPRG SPI d 2255 gt Init Nome da a o a ser chamada se o passo estiver ativo Figura 5 26 A es de Passo IEC Estendidas As a es de Passo Ativo Entrada de Pass
146. ar Estado do Coment rio de Rede Ctri o EF Inserir Caixa Cti B EF Inserir Caixa Vazia Ctl Shift E JF Inserir Caixa com EN ENO Ctrl Shift E Inserir Entrada Ctri HO uAR Inserir Atribui o Ctri A Inserir Salto Cti L reto Inserir Retorno Nega o Ctrl N Detec o de Borda Ctri E Get Reset Ctrl M Definir Conex o de Saida Ctrl Inserir Ramifica o Ctri shift y Atualizar Par metros Ctrl U Remover os par metros n o usados da chamada FB View Figura 5 63 Menu FBD LD IL na Visualiza o do Editor FBD Para obter uma descri o dos comandos consulte Comandos do Editor FBD LD IL no Manual de Utiliza o MasterTool IEC XE MU299048 175 5 Editores das Linguagens de Programa o Elementos Caixa de Ferramentas FBD LD IL Rede O editor FBD LD IL fornece uma caixa de ferramentas com elementos de programa o a serem inseridos na janela do editor arrastar e soltar Por padr o esta caixa de ferramentas pode ser aberta via comando Caixa de Ferramentas no menu Visualizar Os elementos que estar o dispon veis para inser o dependem da visualiza o do editor atualmente ativo veja a respectiva descri o dos comandos Inserir Os elementos s o classificados em categorias Geral elementos gerais como Rede Atribui o etc Operadores Booleanos Operadores Matem ticos Outros Operadores SEL MUX LIMIT e MOVE Blocos Funcionais R TRIG F T
147. ary As entradas desta fun o s o DWORD X BYTE N e um valor booleano B PUTBIT configura o en simo bit da entrada X no valor B onde a fun o Inicia a contagem a partir do bit zero Exemplo em ST A 58 Bin rio 1001L0 B PUTBIT A 4 TRUE Resultado 54 2 110110 C PUTBIT A 1 FALSE Resultado 36 2 100100 Fornecido pela util library UNPACK converte a entrada B do tipo BYTE em oito vari veis de sa da BO B 7 do tipo BOOL E o oposto de PACK 203 6 Bibliotecas TRUE Figura 6 4 Exemplo em FBD Sa da Fun o Matem tica Auxiliar Derivative Fornecido pela util library Este bloco funcional determina aproximadamente a deriva o local No uso de IN o valor da fun o devolvido como uma vari vel REAL TM cont m o tempo decorrido em milissegundos em uma DWORD Atrav s de uma entrada TRUE em RESET o bloco funcional pode ser reinicializado A sa da OUT do tipo REAL Para obter o melhor resultado poss vel DERIVATIVE realiza um arredondamento usando os quatro ltimos valores para reduzir ao m ximo os eventuais erros produzidos por falta de acuracidade nos par metros Exemplo em FBD derivative inst DERIVATIVE E Input dwTine beset 204 Integral 6 Bibliotecas Figura 6 5 Comportamento do FB DERIVATIVE Fornecido pela util library Este bloco funcional determina de forma aproximada a integral da fun o De forma an loga DE
148. as a es de passo normais n o h garantia em rela o a isto Uma a o de passo IEC representada por uma caixa bipartida conectada direita de um passo via uma linha de conex o No lado esquerdo exibido o qualificador da a o e no direito o nome da a o Ambos podem ser editados na linha A es de passo IEC s o associadas a um passo via comando Inserir Associa o de A o Ap s Uma ou mais a es podem ser associadas a um passo A posi o da nova a o depende da posi o atual do cursor e do comando As a es devem estar dispon veis no projeto e s o inseridas com um nome de a o nico por exemplo MamPrg al Figura 5 25 Lista de A es IEC Associadas a um Passo Cada caixa de a o mostra na primeira coluna o qualificador e na segunda o nome da a o A es de Passo IEC Estendidas Estas a es s o uma extens o da norma IEC anteriormente conhecidas como a es de passo As a es devem estar dispon veis como objetos no SFC Os nomes das a es devem ser exclusivos A o de Entrada de Passo Este tipo de a o de passo ser processado assim que o passo tornar se ativo e antes da a o de passo ativo A a o associada a um passo via uma entrada no campo Entrada de Passo das propriedades do passo E representada por um E no canto inferior esquerdo da caixa de passo A o de Passo Ativo Este tipo de a o de passo ser processado quando o passo tornar se ativo e
149. asterTool Padr o os canais dos dispositivos ser o modificados pelo MasterToo IEC XE com o objetivo de manter uma melhor distribui o e organiza o de canais Portanto eles aparecer o com o s mbolo D Tipos de Dados Para a programa o podem ser usados tipos de dados padr o tipos de dados definidos pelo usu rio ou inst ncias de blocos funcionais Cada identificador atribu do a um tipo de dado que determina quanto espa o de mem ria ser reservado e quais tipos de valores ele armazena Tipos de Dados Padr o BOOL BIT Todos os tipos de dados descritos na norma IEC 61131 3 s o suportados pelo MasterTool IEC XE Veja a seguir BOOL BIT Tipos de Dados Inteiros REAL LREAL STRING WSTRING Tipos de Dado de Tempo Observe que al m dos tipos de dados extensivos norma tamb m poss vel definir tipos pr prios tipos de dados definidos pelo usu rio As vari veis tipo BOOL podem apresentar os valores TRUE e FALSE Ser o reservados 8 bits de espa o de mem ria Veja tamb m Constantes BOOL Assim como as vari veis do tipo BOOL as vari veis tipo BIT podem apresentar valores TRUE e FALSE Diferente do tipo BOOL o tipo BIT ocupa apenas 1 bit de espa o de mem ria Contudo para que essa aloca o possa ocorrer de forma correta este tipo de dado s pode ser declarado em Blocos Funcionais ou Estruturas definidas em objetos do tipo DUT Tipos de Dados Inteiros Veja abaixo uma lista de
150. ation POU Express o Tipo valor valor Preparado t2111 BOOL t22 BOCL FALSE 5FCError BOOL SFCErrorP L STRING PON e 5FCErrorStep STRING ES SFCQuitError BOOL TRUE sl T 2h 57m0n543995m5 This is atep al Minimal active t Maximal active t Step active actl Figura 5 37 Exemplo de Algumas Mem rias SFCerror no Modo Online do Editor Acessando Mem rias Para habilitar o acesso s mem rias para o controle da execu o SFC timeouts reset modo auxiliar as vari veis de mem ria devem ser declaradas e ativadas conforme descrito acima Controle de execu o SFC Sintaxe para acesso e A partir de uma a o ou transi o na POU SFC lt nome do passo gt lt flag gt e lt nome da a o gt lt flag gt Exemplos status stepl x checkerror SFCerror e A partir de outra POU lt SFC POU gt lt nome do passo gt lt flag gt e lt SFC POU gt lt nome da a o gt lt flag gt Exemplos status SFC prog stepl x checkerror SFC prog SFCerror No caso de acesso de escrita a partir de outra POU a vari vel impl cita tamb m deve estar declarada explicitamente como uma vari vel VAR INPUT da POU SFC ou globalmente por exemplo em uma GVL 149 Exemplo Declara o local PROGRAM SEC prog VAR INPUT SECINnA ES BOOL END VAR Ou declara o global em uma GVL VAR GLOBAL SECINnI BOOL END VAR Acessando a mem ria no MainPrg PROGRAM MainPrg VAR setini Ees BOOM END VAR 5
151. b sico A vari vel de sa da deve ser do tipo REAL ou LREAL sendo que esta representa um arco em radianos Exemplo em IL LD 0 5 AT AH ST q O resultado em q 0 463648 Exemplo em ST q ATAN 0 5 Exemplo em FBD l Operador IEC exponencia o de uma vari vel com outra vari vel OUT INIIN2 A vari vel de entrada pode ser de qualquer tipo de dado num rico b sico A vari vel de sa da deve ser do tipo REAL ou LREAL Exemplo em IL O resultado 49 L T EXPT ST varl Exemplo em ST varli EXPT 7 2 113 4 Refer ncia de Programa o Exemplo em FBD T Yarl Operadores Adicionais Norma IEC Operadores de Escopo Adicionais Norma IEC Al m dos operadores IEC h v rias possibilidades de precisar o acesso a vari veis ou m dulos se o nome destes for usado v rias vezes no escopo de um projeto Para definir o respectivo contexto os seguintes operadores de escopo podem ser usados 66 99 operador de escopo global lt nome da lista de vari veis globais gt lt nome de biblioteca gt lt nome de enumera o gt Operador de Escopo Global Operador de escopo extens o da norma IEC 61131 3 c6 99 Um caminho de inst ncia iniciando com abre um escopo global contexto Assim se houver uma 29 66 vari vel local e uma global com o mesmo nome lt nome da vari vel gt lt nome da vari vel gt estar referi
152. bits necess ria para a opera o aritm tica deve ser aquela pretendida pelo tipo de dado da vari vel de entrada Se a vari vel de entrada for uma constante ser considerado o menor tipo de dado poss vel O tipo de dado da vari vel de sa da n o tem efeito na opera o aritm tica Veja o seguinte exemplo em nota o hexadecimal para verificar os resultados da opera o aritm tica dependendo do tipo da vari vel de entrada BYTE ou WORD Exemplo em ST PROGRAM shr st VAR in byte BYTE 164 45 in word WORD 16 45 erg byte i BLTE erg word WORD n BYTE 2 END VAR erg byte 5BR in byte n O resultado 1L6RLI erg word SHR in word n O resultado 164 0011 Exemplo em FBD in byte Erg byte amp Exemplo em IL LD in byte SHR amp ST erg byte Operador IEC rota o bitwise de um operando para a esquerda erg ROL in n Tipos de dados permitidos BYTE WORD DWORD e LWORD In ser deslocado uma posi o de bit para a esquerda n vezes enquanto o bit que est mais a esquerda ser reinserido a partir da direita 92 ROR 4 Refer ncia de Programa o NOTAS Observe que a quantidade de bits necess ria para a opera o aritm tica deve ser aquela pretendida pelo tipo de dado da vari vel de entrada Se a vari vel de entrada for uma constante ser considerado o menor tipo de dado poss vel O tipo de dado da vari vel de sa da n o tem efeito na ope
153. blioteca no projeto o contexto pode ser alterado localmente pelo usu rio no di logo Propriedades Exemplos suponha que o contexto da biblioteca Libl especificado nas propriedades para ser Libl Veja na coluna da direita o uso dos contextos para acesso nico vari vel varl definida nos m dulos modulel e POULI 32 2 Conceitos e Componentes B sicos Vari vel var1 est dispon vel nos Acesso a var1 usando o caminho do seguintes locais contexto apropriado Na biblioteca Lib1 no Gerenciador de Lib1 module1 var1 bibliotecas global na janela das POUs Na biblioteca Lib1 no Gerenciador de Dev1 App1 Lib1 modulei var1 bibliotecas na Aplica o App1 do Dispositivo Devi na janela dos dispositivos Na biblioteca Lib1 inclu da em F Lib no Por padr o a op o Publicar nas Gerenciador de bibliotecas global na janela Propriedades da biblioteca est desativada das POUS F Lib Libf module1 var1 Se a op o Publicar estivesse ativada module1 seria tratado com um componente de uma biblioteca de n vel superior Assim o acesso somente seria poss vel atrav s de Lib1f module1 var1 ou module1 var1 Neste exemplo entretanto isto poderia provocar erros de compila o j que o caminho de acesso n o exclusivo veja 1 e 4 No objeto module1 definido na janela das module1 var1 POUs No objeto POU1 definido na janela das POU1 var1 POUs Tabela 2 1 Acesso nico aos M dulos da Biblioteca ou s Vari v
154. bloco funcional PID dispon vel na biblioteca NextoPID e descrita neste manual O bloco funcional PID da biblioteca NextoPID possui par metros avan ados para permitem um melhor ajuste do controle As duas bibliotecas n o podem ser utilizadas ao mesmo tempo PID FIXCYCLE Fornecido pela util library Este bloco funcional corresponde ao controlador PID com a exce o de que o tempo de ciclo n o medido automaticamente por uma fun o interna mas definido por ciclo de entrada em segundos Exemplo de PID FIXCYCLE em FBD PID FIXCYCLE LIMITS ACTIVE OVERFLOW Geradores de Sinal BLINK Fornecido pela util library O bloco funcional BLINK gera um sinal pulsante A entrada consiste de ENABLE do tipo BOOL TIMELOW e TIMEHIGH ambas do tipo TIME A sa da OUT do tipo BOOL Se ENABLE for configurado para TRUE BLINK passa a definir a sa da para TRUE pelo per odo de tempo TIMEHIGH e posteriormente a defini la para FALSE pelo per odo de tempo TIMELOW Quando ENABLE for para FALSE a sa da OUT n o ser alterada ou seja n o ser o mais gerados pulsos Caso o usu rio deseje que OUT seja FALSE ele deve usar OUT AND ENABLE na sa da quando ENABLE for para FALSE acrescentar uma caixa AND com o par metro ENABLE Exemplo de BLINK em CFC TRUE T25 T35 TRUE FALSE Figura 6 8 Resultado da Sa da do Bloco BLINK 211 6 Bibliotecas FREQ MEASURE Fornecido pela util library Este bloco f
155. bloco funcional for selecionado na rvore dos Dispositivos ou das POUs No di logo Acrescentar A o defina o nome da a o e a linguagem de implementa o desejada Chamando uma A o Uma a o chamada com 27 2 Conceitos e Componentes B sicos lt NOME PROGRAMA gt lt NOME A O gt OU lt NOME INST NCIA gt lt NOME A O gt Observe as particularidades da nota o em FBD exemplo abaixo Para chamar uma a o dentro do seu pr prio bloco dentro do programa ou bloco funcional ao qual pertence basta referenciar o nome da a o Exemplos para a chamada da a o descrita acima a partir de outra POU Declara o para todos os exemplos PROGRAM MAINPRG VAR INST COUNTER END VAR Chamada da a o Reset em outra POU programada em IL CAL INST RESET IN FALSE LD INST QUT ST ERG Chamada da a o Reset em outra POU programada em ST INST RESET IN FALSE ERG t INST OUT Chamada da a o Reset em outra POU programada em FBD inst counter reset FALSEN out erg NOTA A norma IEC n o reconhece outras a es que n o sejam do Sequenciamento Gr fico de Fun es SFC Nesta linguagem as a es s o parte essencial e cont m instru es a serem processadas nos passos espec ficos do gr fico Fun o Externa Bloco Funcional M todo O programador n o gerar nenhum c digo para uma fun o externa bloco funcional ou m todo Execute os seguintes passos para criar uma P
156. breakpoints passo a passo etc est dispon vel Para obter informa es sobre como abrir objetos no modo online consulte Interface do Usu rio no Modo Online no Manual de Utiliza o MasterTool TEC XE MU299048 A janela do editor em um objeto CFC tamb m inclui o Editor de Declara o na parte superior Para obter informa es sobre o editor de declara o no modo online consulte Editor de Declara o no Modo Online no Manual de Utiliza o MasterTool TEC XE MU299048 Monitora o Os valores atuais s o exibidos em pequenas janelas de monitora o em cada vari vel monitora o em linha Device Application PRGZ Express o Tipo Valor Valor Preparado Coment rio RESULT REAL 60 425 pp PRG1 SP e 0 005 COMENTARIO Figura 5 10 Visualiza o Online de um Objeto de Programa MAINPRG Na visualiza o online de uma POU do tipo bloco funcional os valores n o ser o visualizados nas janelas de monitora o na parte de implementa o por m o lt Valor da express o gt e os campos de monitora o em linha exibir o tr s pontos de interroga o 130 5 Editores das Linguagens de Programa o Posi es de Breakpoint no Editor CFC As posi es de breakpoint poss veis basicamente s o aquelas da POU na qual os valores das vari veis podem mudar ou na qual o programa se ramifica ou outra POU chamada As posi es poss veis s o mostradas na Figura 5 11 ns ES
157. cer quando for inserida uma string e as teclas lt CTRL gt lt SPACE gt forem pressionadas O primeiro item da lista iniciando com a string dada pode ser selecionado e Inserido no programa atrav s da tecla lt ENTER gt Mapeamentos de E S Este sub di logo dos dispositivos chamado Bus Mapeamento de E S ele serve para configurar um mapeamento de E S do CLP Isto significa que as vari veis do projeto utilizados pelas aplica es s o atribu dos aos endere os de entradas e sa das do dispositivo Geral Todo o mapeamento de E S pode ser configurado para o dispositivo atual 71 4 Refer ncia de Programa o Canais Um endere o tamb m pode ser atribu do a uma vari vel atrav s de declara es AT Nesse caso considere os seguintes pontos Declara es AT podem ser usadas somente com as vari veis locais ou globais no entanto n o com vari veis de entradas e sa das de POUs Para declara es AT n o poss vel gerar for amentos para vari veis Se declara es AT s o usados com estrutura ou bloco funcional todas as inst ncias ter o acesso ao mesmo local de mem ria o que corresponde a vari veis est ticas em linguagens de programa o cl ssicas como por exemplo C Para mais informa es consulte Declara o AT A tela Bus Mapeamento de E S apresenta em sua parte inferior os seguintes comandos e Resetar Mapeamento Este bot o reseta as configura es de mapeamento para os padr es def
158. cesso real controlado e q estufa Transmissor e g temperatura ers M dulo de Pi Saida Anal gica E e9 4 20mA Figura 6 18 PID FB Controlando um Processo Real O diagrama apresenta apenas os principais par metros do bloco PID A sa da anal gica AO uma vari vel escrita no m dulo de sa da anal gica A entrada anal gica Al a vari vel lida de um m dulo de entrada anal gica As vari veis Ale AO normalmente s o do tipo INT Por exemplo alguns m dulos de entradas e sa das anal gicas tipicamente operam na faixa de O 30000 onde O corresponde a 4 mA e 30000 corresponde a 20 mA Por outro lado os par metros MV e PV do PID s o do tipo REAL As unidades e a faixa de opera o podem ser definidas da maneira mais apropriada A seguir exemplos de convers o destes par metros para utiliza o no PID Considere os seguintes exemplos e MV coma mesma faixa de opera o de AO e valor n o preparado e g O 30000 e MV em porcentagem e g 0 v lvula de controle totalmente fechada 100 v lvula de controle totalmente aberta Em cada um dos exemplos observe a necessidade de convers o que deve implementar e AO REAL TO INT MV e AO REAL TO INT MV 30000 100 NOTA Existem alguns par metros do PID descritos a seguir que imp em valores m ximo e m nimo para MV Eles s o chamados de MaxMV e MinMV respectivamente Substituindo MV nas express es dos exemplos anteriores por Ma
159. cia fb do bloco funcional POU PROGRAM MAINPRG VAR EO POU newString STRING END VAR newString fb myStr A vari vel myStr ser inicializada com o contexto atual por exemplo Device Application MainPrg fb Este valor ser atribu do newString no programa principal Atributo Init on onlchange O pragma attribute mit on onlchange quando anexado a uma vari vel faz com que esta seja inicializada a cada altera o online Sintaxe ar r DUES Vanat on onlchanges Atributo Instance path O pragma attribute instance path pode ser adicionado a uma vari vel do tipo string local que consequentemente ser inicializada com o caminho da rvore de dispositivos da POU a qual esta vari vel de string pertence Isto pode ser til no caso de mensagens de erro Aplicar este pragma pressup e o uso do atributo reflection para a POU correspondente e o atributo adicional noinit para a vari vel de string 61 4 Refer ncia de Programa o Sintaxe attribute instance path Exemplo Suponha que o bloco funcional abaixo contenha o atributo reflection attribute reflection FUNCTION BLOCK POU VAR attribute instance path attribute noinit str STRING END VAR Uma inst ncia do bloco funcional chamada no programa MainPrg PROGRAM MAINPRG VAR MYPOUZPOU ms EEIngs SERING END VAR myPOU myScCring myPOUsstEr A inst ncia myPOU tendo sido inicializada com a vari vel de st
160. citas Programa Um programa uma POU que retorna um ou v rios valores durante a opera o Todos os valores s o mantidos desde a ltima vez que o programa foi executado at a pr xima execu o Uma POU de programa pode ser adicionada ao projeto via comando Acrescentar Objeto Para atribuir o programa a uma aplica o existente selecione a na visualiza o dos Dispositivos e use o comando a partir do menu de contexto caso contr rio a POU ser adicionada visualiza o das POUs No di logo Acrescentar POU escolha Programa digite um nome para ele e defina a linguagem desejada Ap s confirmar as configura es via bot o Abrir a janela do editor para o novo programa ser aberta para que se possa iniciar a sua edi o Sintaxe para declarar um programa PROGRAM lt NOME DO PROGRAMA gt Abaixo do nome seguem as declara es de vari veis de entrada sa da e vari veis de programa Opcionalmente tamb m podem ser declaradas vari veis de acesso Fo E PRGexample qb x 1 PROGRAM FEGexample d 3 2 VAR INPUT q o in var INT d EHD VAR 5 VAR OUTPUT out var INT EHD VAR Bo VR E 3 ivar INT 10 bvar BOOL l1 EHD VAR b lt f gt d out varisin var ivar A IF out vari as E E THEH byar TRUE E d END IF 3 A ayt Figura 2 2 Exemplo de Programa 17 2 Conceitos e Componentes B sicos Chamada de Programas Fun o Um programa pode ser chamado por outra POU mas a chamada de pro
161. co da varincl e atribuido dO ponterro pt var In AS pero A valor S da var Mehed r Dardo a Var AMZ va desref rencia do ponteiro pt Ponteiros de Fun o Os ponteiros de fun o s o suportados e substituem o operador INDEXOF Estes ponteiros podem ser enviados para bibliotecas externas por m n o poss vel chamar um ponteiro de fun o em uma aplica o no sistema de programa o A fun o de execu o para registro das fun es de chamada de retorno fun o de biblioteca de sistema aguarda o ponteiro de fun o e dependendo da chamada de retorno para a qual o registro foi requisitado a respectiva fun o ser chamada implicitamente pelo sistema de tempo de execu o por exemplo em STOP Para habilitar uma chamada de sistema sistema de tempo de execu o a respectiva propriedade deve estar definida para o objeto da fun o O operador ADR pode ser usado em nomes de fun o programa blocos funcionais e m todos Uma vez que fun es podem mover se ap s uma altera o online o resultado n o o endere o da fun o mas o endere o de um ponteiro para a fun o Este endere o ser v lido enquanto a fun o existir no dispositivo Veja tamb m INDEXOF ndices de Acesso para Ponteiros Ed Como extens o da norma IEC 61131 3 o ndice de acesso permitido s vari veis do tipo POINTER STRING e WSTRING e Pint 1 retornar o tipo de dado de base e O ndice de acesso para p
162. da BYTE ou WORD embora os valores das vari veis de entrada in byte e m word sejam os mesmos 93 4 Refer ncia de Programa o Exemplo em ST PROGRAM Tor St VAR in byte BYTE 164 45 in word WORD 16 45 grg byte BYTEJ erg word WORD n BYTE 2 END VAR erg byte ROR in byte n O resultado 16 51 erg word ROR in word n O resultado 16 4011 Exemplo em FBD RUR in byte erg_byte n Exemplo em IL LD ln byte ROR n ST erg byte Operadores de Sele o SEL Todas as opera es de sele o podem tamb m ser executadas com vari veis Por quest es de clareza os exemplos s o limitados quelas opera es que usam constantes como operadores SEL MAX MIN LIMIT e MUX Operador de sele o IEC sele o bin ria G determina se INO ou INI ser o atribu dos a OUT OUT SEL G INO IN1 OUT INO Se G FALSE OUT IN1 Se G TRUE Tipos de dados permitidos INO INI e OUT Qualquer Tipo G BOOL Exemplo em IL LD TRUE SE L 3 P ST Varl O resultado 4 LD FALSE SEL 3 ST Varl O resultado 3 94 MAX MIN 4 Refer ncia de Programa o Exemplo em ST Varl SEL TRUE 3 4 O resultado 4 Exemplo em FBD TRUE Yarl 3 d Operador de sele o IEC fun o m ximo Retorna o maior dos dois valores OUT MAX INO INT INO IN1 e OUT podem ser de qualquer tipo de vari vel Exemplo em IL
163. da A o para Edi o 133 5 Editores das Linguagens de Programa o a PF Nome do passo Nome da transi o Brancho Es Qualificador da a o Nome da a o Corpos de Elemento Nome da ramifica o 3 atepl salto para destino Figura 5 16 Posi es Poss veis do Cursor Corpos de Elemento Ao clicar em uma rea sombreada o elemento ser selecionado Ele adquire uma moldura pontilhada e exibido em sombreado vermelho para selecionar v rios elementos veja abaixo Trabalhando no Editor SFC Figura 5 17 Elemento de Passo Selecionado Trabalhando no Editor SFC A princ pio uma nova POU SFC cont m um passo Inicial e uma transi o subsequente Para saber como adicionar outros elementos como organiz los e edit los veja as Informa es a seguir Para verificar as posi es poss veis do cursor veja o item acima poss vel navegar isto pular para o pr ximo elemento ou para o elemento anterior no gr fico usando as teclas de seta Inserir Elementos Os elementos SFC espec ficos podem ser inseridos atrav s dos respectivos comandos por padr o dispon veis no menu SFC Consulte o item Posi es do Cursor no SFC para obter um detalhamento Um clique duplo em um passo transi o ou a o j inseridos que ainda n o tenham sido referenciados no projeto abrir um di logo para atribui o Selecionar Elementos Um elemento e um campo de texto podem ser selecionados por um cl
164. de Constante GP 0 45 GPc Ti Tc 1 2 Gp 0 75 GPc Proporcional Integral e Derivativo PID Ti Tc 1 6 Td Tc 10 Proporcional e Integral PI Tabela 6 15 Valores de GPc e Tc Determina o das Constantes do Controlador Atrav s das Constantes do Processo Este m todo se aplica bem a processos lineares de primeira ordem similar a um circuito RC e com tempo morto Na pr tica muitos processos industriais se adaptam a este modelo O m todo requer inicialmente determinar as seguintes caracter sticas do processo em la o aberto K Ganho est tico do processo Definido como a raz o entre uma varia o de PV e uma varia o de MV ou seja K APV AMV Tm Tempo morto definido como o tempo entre o in cio de uma varia o na sa da MV t0 e o In cio da rea o do sistema T Constante de tempo do sistema definido como o tempo que a vari vel medida leva para excursionar 63 212 de seu valor final Al m disso o m todo requer dois par metros adicionais que n o s o caracter sticas do processo em si e devem ser informados pelo usu rio Tr Tempo de resposta desejado ap s a sintonia do la o Trata se de uma caracter stica Interessante pois atrav s deste par metro o usu rio pode informar um requisito de performance do la o controlado dt Tempo de amostragem em segundos isto o per odo de chamada do bloco funcional PID e atualiza o da entrada PV e sa da MV A constante dt simboliza um tempo m
165. dem ser usados tamb m DTH date and timef e DATE AND TIMER A declara o da data e hora deve ser inserida no formato lt ano m s dia hora minuto segundo gt Segundos podem ser inseridos como n meros reais ou seja fra es de um segundo tamb m podem ser especificadas Valores DATE AND TIME s o tratados internamente como DWORD contendo o intervalo de tempo em segundos desde 01 01 1970 00 00 h Exemplos DATE AND TIME 1996 05 06 15 36 30 dtt1972 03 29 00 00 00 Veja tamb m Tipos de Dado de Tempo Constantes Num ricas Valores num ricos podem assumir valores bin rios octais decimais e hexadecimais Se um valor Inteiro n o for um n mero decimal a base deve ser seguida pelo sinal na frente da constante inteira Os valores para os n meros 10 15 hexadecimais ser o representados pelas letras A F Pode se incluir um sublinhado no n mero Exemplos 14 n mero decimal 211001 0021 n mero bin rio 8 67 n mero octal 16 A n mero hexadecimal Estes valores podem ser dos tipos BYTE WORD DWORD SINT USINT INT UINT DINT UDINT REAL ou LREAL N o s o permitidas convers es impl citas de tipos de vari vel maiores para menores Isto significa que a vari vel DINT n o pode simplesmente ser usada como vari vel INT Neste caso deve ser usada a convers o de tipo Constantes REAL LREAL As constantes REAL e LREAL podem ser utilizadas como fra es decimais e repr
166. ditor for aberto Linguagem Gr fico Funcional Cont nuo CFC O Gr fico Funcional Cont nuo uma extens o da norma IEC 61131 3 e consiste em uma linguagem de programa o gr fica baseada no Diagrama de Blocos Funcionais Entretanto diferentemente do FBD n o s o utilizadas redes mas sim o livre posicionamento de elementos gr ficos permitindo por exemplo la os de realimenta o Para criar objetos de programa o CFC no MasterTool IEC XE consulte o Editor CFC 123 5 Editores das Linguagens de Programa o Figura 5 2 Exemplo de uma Rede CFC Posi es do Cursor no CFC Em um programa CFC as posi es poss veis do cursor s o indicadas por padr o por um sombreado cinza quando o mesmo posicionado sobre os elementos Assim que o usu rio clicar em uma rea sombreada antes de soltar o mouse a mesma mudar para a cor vermelha Ao soltar o bot o o cursor estar posicionado nesta rea e o respectivo elemento ou texto selecionado ser o exibidos em vermelho H tr s categorias de posi es de cursor Veja na Figura 5 3 Figura 5 4 e Figura 5 5 as possibilidades indicadas por uma rea sombreada em cinza e Seo cursor estiver posicionado em um texto este ser exibido em azul e poder ser editado O bot o L abre o Assistente de Entrada O texto 227 deve ser substitu do por um identificador v lido m lt Enter your comment here gt Figura 5 3 Poss veis Posi
167. do exemplo acima cont m dois m todos method1 e method2 fubl inclui method mas n o methodl methodl chamado conforme mostrado no exemplo acima como segue PINST METHODI Se B TRUE FUBBASE METHODL chamado sen o FUBl METHODI chamado Chamada via ponteiros Implementa o de method1 METHOD METHOD1I BOOL VAR INPUT END VAR METHOD1 METHOD Chamando fubbase method1 via ponteiros ocorre e Seo ponteiro for do tipo fubbase fubbase method2 ser chamado e Seo ponteiro for do tipo fubl fubl method2 ser chamado Unidades de Tipo de Dados Al m dos tipos de dados padr o o usu rio pode utilizar tipos criados por ele Tipos de estruturas enumera o e refer ncias podem ser criados como Unidades de Tipos de Dados DUT em um editor DUT Uma DUT i pode ser adicionada ao projeto atrav s do comando Acrescentar Objeto Para atribu la a uma aplica o existente selecione a aplica o na rvore de Dispositivos Caso contr rio a DUT ser adicionada rvore das POUs No di logo Acrescentar DUT digite um nome para ela nova unidade de tipos de dados e escolha o tipo desejado de Estrutura Enumera o Pseud nimo ou Uni o No caso do tipo Estrutura poss vel utilizar o princ pio da heran a como suporte programa o orientada ao objeto Opcionalmente pode ser especificado que uma DUT estenda se outra DUT que esteja definida no projeto Isto significa que as defini
168. do externamente Voc pode decidir se o arquivo deve ser atualizado tamb m dentro do projeto o Nenhuma a o O arquivo permanecer inalterada mesmo quando ele for alterado externamente e Incluir no projeto uma c pia do arquivo ser armazenado no projeto N o haver nenhuma conex o adicional para o arquivo fora do projeto No di logo ainda existe o bot o Exibir Propriedades dos Arquivos ele abre o di logo padr o para as propriedades mas com uma aba adicional Arquivo Externo onde as propriedades que foram definidas na caixa de di logo Acrescentar Arquivo Externo podem ser visualizadas e modificadas POUSs para Verifica es Impl citas Caso o usu rio deseje utilizar a funcionalidade de verifica o de ARRAYS limites de intervalo divis es por zero e ponteiros durante a execu o POUs especiais poder o ser adicionadas aplica o Esta funcionalidade est impl cita Para tanto o menu Acrescentar Objeto na categoria POUs para Verifica es Impl citas E apresenta as seguintes fun es CheckBounds CheckDivDInt CheckDivLInt CheckDivReal CheckDivLReal CheckRangeSigned CheckRangeUnsigned CheckPointer Ap s ter sido inserida uma POU de verifica o a mesma ser aberta no editor correspondente na linguagem de implementa o selecionada No editor ST est dispon vel uma implementa o padr o adapt vel aos requisitos do usu rio A op o de inser o de uma determinada POU de verifica o s
169. dor LD Em seguida a opera o executada com o primeiro par metro retirado do 164 5 Editores das Linguagens de Programa o acumulador O resultado da opera o novamente disponibilizado no acumulador a partir de onde o usu rio deve armazen lo com a Instru o ST Para programar execu es condicionais ou la os a IL suporta tanto operadores de compara o EQ GT LT GE LE NE quanto saltos Estes ltimos podem ser incondicionais JMP ou condicionais JMPC JMPCN Para saltos condicionais o valor do acumulador verificado em TRUE ou FALSE Uma lista de instru es IL consiste de uma s rie de instru es Cada instru o Inicia em uma nova linha e cont m um operador Dependendo do tipo da opera o ela pode conter tamb m um ou mais operandos separados por v rgulas O operador deve ser estendido por um modificador Na linha anterior instru o pode haver uma marca de identifica o r tulo seguida de dois pontos por exemplo ml no exemplo mostrado abaixo Um r tulo pode ser o destino de uma instru o de salto por exemplo JMPC next no exemplo mostrado abaixo Um coment rio deve ser posicionado como o ltimo elemento de uma linha Linhas vazias podem ser inseridas entre instru es PROGRAM IL YAR ni z 3 instl TON 4 dwYar DWORD 5 duRes DWORD tl TIME 7 pa 3 toutl THE instz TON bYar BOOL 10 EHD VAR LD bYar variable ST instl IN s
170. dos em DATE e DT iniciando em Janeiro 1 1970 s 12 00 A M Neste contexto veja tamb m neste manual LTIME dispon vel tamb m como um tipo de dado de tempo de 32 bits Constantes TIME Constantes DATE Constantes DATE AND TIME Constantes TIME OF DAY Extens es da Norma IEC 1131 3 Tipos de Dados Adicionais Norma UNION LTIME Al m dos tipos de dados em conformidade com a IEC 61131 3 h tamb m alguns tipos extensivos a norma dispon veis implicitamente no MasterTool IEC XE UNION LTIME WSTRING Ponteiros Refer ncias Como uma extens o da norma IEC 61131 3 poss vel declarar uni es em tipos definidos pelo usu rio Em uma uni o todos os componentes tem o mesmo offset ou seja todos eles ocupam a mesma posi o de armazenagem Assim supondo a defini o de uni o mostrada no exemplo a seguir uma atribui o ao nome a tamb m afetaria o nome b Exemplo TYPE name UNION a EREAL Pos GENE END UNION END TYPE Como uma extens o norma IEC 61131 3 LTIME suportado como base de tempo para timers de alta resolu o O tamanho de LTIME 64 bits e sua resolu o em nanosegundos Sintaxe LTIMEf lt Declara o de tempo gt A declara o de tempo pode incluir unidades de tempo como as usadas com a constante TIME e adicionalmente microssegundos us e nanosegundos ns respectivamente Exemplo LIIMEL LTIMERL000d15h23ml2534ms24s44ns Compare com Constantes TIME
171. dpd cd DE INT 2 EZO AMA arola Abrevia o para 0 0 4 4 4 4 2 3 Exemplo de inicializa o de um ARRAY de uma estrutura Defini o da estrutura EY PE STRUCTI STRUCT Plint pP2lants P3 dw rd END STRUCT END TYPE Inicializa o do ARRAY ARRAY 1 3 OF STRUCT1 p1 1 p2 10 p3 4723 p1 2 p2 0 p3 299 ol r LA pA Ds pos LIZ Exemplo de inicializa o parcial de um ARRAY arri Ss ARRAY Is OT OF ENToS y2 78 4 Refer ncia de Programa o Elementos para os quais nenhum valor pr atribu do s o inicializados com o valor inicial padr o do tipo b sico No exemplo acima os elementos arr1 3 a arrl 10 s o portanto inicializados com O Acessando Componentes de ARRAY Componentes de ARRAY s o acessados em uma ARRAY bidimensional usando se a seguinte sintaxe lt Nome gt ndice 1 ndice 2 Exemplo Cara game 9 2 Check Functions Para acessar elementos de ARRAY durante a execu o a fun o CheckBounds deve estar dispon vel durante a aplica o Adicione o objeto POUs para Verifica es Impl citas aplica o atrav s do di logo Acrescentar Objeto Selecione a caixa de verifica o referente a esta fun o e confirme as configura es com o bot o Abrir A fun o CheckBounds ent o ser aberta no editor A parte de declara o pr definida e n o pode ser modificada exceto para a adi o de outras vari veis locais No editor ST fornecida uma implemen
172. e Se o projeto atual estiver referendado como uma biblioteca por outro projeto W Publicar todos os simbolos IEC no projeto como se esta refer ncia tivesse sido induida diretamente Ocultar esta refer ncia na rvore dependente Cancelar Figura 3 3 Di logo Propriedades para Bibliotecas e Contexto exibe o contexto atual da biblioteca Em geral o contexto de uma biblioteca id ntico ao seu nome a n o ser que outra string tenha sido explicitamente definida nas informa es do projeto durante a cria o do projeto da biblioteca poss vel editar o contexto a qualquer momento neste di logo Para obter mais informa es sobre contextos de bibliotecas consulte o item Editor Library Manager no Manual de Utiliza o MasterTool IEC XE MU299048 e Biblioteca padr o dispon vel somente com a caracter stica Habilitar Di logo do Reposit rio selecionada consulte o item Caracter sticas no Manual de Utiliza o Master Tool IEC XE MU299048 se o espa o reservado de uma biblioteca est selecionado no gerenciador este campo mostra o nome da biblioteca que deve substituir o espa o reservado se n o houver nenhuma biblioteca do dispositivo dispon vel Consulte acima o item correspondente para obter mais Informa es sobre espa os reservados 38 3 Comandos do Menu e Vers o dispon vel somente com a caracter stica Habilitar Di logo do Reposit rio selecionada consulte o item Caracter sticas no Manual d
173. e Utiliza o MasterTool IEC XE MU299048 define se qual vers o da biblioteca deve ser usada no projeto o Vers o espec fica ser usada exatamente a vers o digitada a partir da lista de sele o o Vers o mais recente sempre ser usada sempre a vers o mais recente encontrada no reposit rio de bibliotecas ou seja os m dulos atualmente usados podem ser alterados caso seja disponibilizada uma vers o mais nova e Visibilidade dispon vel somente com a caracter stica Habilitar Di logo do Reposit rio selecionada consulte o item Caracter sticas no Manual de Utiliza o Master Tool IEC XE MU299048 estas configura es s o importantes quando a biblioteca inclu da referenciada por outra biblioteca Por padr o esta op o n o est ativa o Publicar todos os s mbolos TEC no projeto como se esta refer ncia tivesse sido inclu da diretamente enquanto esta op o estiver desativada os componentes da biblioteca atual se referenciada por outra poder o ser acessados exclusivamente atrav s do caminho adequado do espa o reservado composto dos espa os reservados da biblioteca principal e do seu pr prio espa o reservado al m dos m dulos e do identificador da vari vel o Ocultar esta refer ncia na rvore de depend ncia se esta op o estiver ativada a biblioteca atual n o ser exibida quando a biblioteca principal for inclu da no projeto Isto permite incluir bibliotecas ocultas mas recomendad
174. e deve acontecer Exemplo IF PAPPLICATIONINFO STATE RUNNING THEN lt INSTRU ES gt END IF Propriedade Uma Propriedade Bb um tipo de objeto que pode ser inserido em um programa ou bloco funcional atrav s do comando Acrescentar Objeto e ap s Propriedade no menu de contexto No di logo Acrescentar Propriedade o nome o tipo de retorno e a linguagem de implementa o desejados devem ser especificados Ela cont m dois m todos especiais que ser o inseridos automaticamente na rvore de objetos no item correspondente e O m todo Set chamado quando a propriedade escrita ou seja o nome da propriedade usado como entrada e O m todo Get chamado quando a propriedade lida ou seja o nome da propriedade usado como sa da Veja o exemplo onde o bloco funcional FB1 usa uma vari vel local MILLI Esta vari vel determinada pelas propriedades Set e Get C digo na propriedade Get SECONDS MILLI 1000 C digo na propriedade Set MILLI SECONDS 1000 26 2 Conceitos e Componentes B sicos A propriedade do bloco funcional pode ser escrita m todo Set por exemplo por fbinst seconds 22 fbinst a inst ncia de FB1 ou pode ser lida m todo Get por exemplo por testvar fbinst seconds E fb Fe seconds EF Get Ep Set Figura 2 3 Propriedade Segundos Acrescentada ao Bloco Funcional fb Propriedades podem ter vari veis locais adicionais por m n o
175. e no projeto O usu rio n o precisa trabalhar com elas explicitamente No Manual de Utiliza o MasterTool IEC XE MU299048 veja tamb m Instalar Bibliotecas e Editor Library Manager A Biblioteca Standard library A biblioteca standard library por padr o fornecida com o programador MasterTool IEC XE Esta biblioteca cont m todas as fun es e blocos funcionais solicitados que correspondem norma IEC 61131 3 tais como POUSs padr o para um programador IEC A diferen a entre uma fun o padr o e um operador que este implicitamente reconhecido pelo programador enquanto aqueles devem ser vinculados ao projeto standard lbrary Fun es de String LEN LEFT Fornecido pela standard hbrary Fun o do tipo STRING retorna o comprimento de uma string Entrada STR STRINGS string a ser analisada Valor de retorno INT comprimento da string n mero de caracteres Exemplo em IL LD AJar LEH sT varINTl O resultado 4 Exemplo em FBD LEH amal a TR varINTl Exemplo em ST VArINTI LEN SUSI Fornecido pela standard library Fun o do tipo STRING Retorna a string inicial da esquerda para uma determinada string Entradas STR STRING string a ser analisada SIZE INT comprimento da string inicial da esquerda n mero de caracteres Valor de retorno STRING string inicial 188 6 Bibliotecas RIGHT MID LEFT STR SIZE retorna a quantidade de caracteres definida
176. e o controlador escravo detectado e compensado por este controlador antes de afetar a vari vel controlada pelo controlador mestre e Aumento da controlabilidade do sistema No caso do controle de temperatura pela inje o de vapor a resposta do sistema melhorada devido ao controlador de vaz o aumentando a controlabilidade do la o principal e N o Iinearidades de um la o interno s o manipuladas dentro deste la o e n o percebidos pelo la o externo No exemplo anterior as varia es de press o s o compensadas pelo controlador escravo e o controlador mestre enxerga apenas uma rela o linear entre a v lvula e a temperatura Considera es Importantes Para se utilizar controladores em cascata deve se tomar os seguintes cuidados e Como o ponto de ajuste dos controladores escravos manipulado conforme a sa da dos controladores mestres poder o ocorrer varia es bruscas no erro do controlador escravo Se os controladores escravos estiverem com a a o derivativa agindo em fun o do erro surgir o a es derivativas com grandes valores Portanto aconselha se utilizar os controladores escravos com a a o derivativa em fun o da vari vel medida e Controlador escravo deve ser r pido o suficiente para eliminar os dist rbios de seu la o antes que estes afetem o la o do controlador mestre Sugest es para Ajustes do Controlador PID A seguir s o apresentados dois m todos para a determina o das constantes do contro
177. e o identificador se tornar indefinido Se o identificador especificado n o estiver definido atualmente este pragma ser ignorado IF expr Estes s o pragmas para compila o condicional As express es e especificadas expr devem ser uma constante no per odo de ELSIF expr compila o Elas s o avaliadas na ordem em que aparecem at que uma das express es seja avaliada em um valor diferente de zero O a texto associado diretiva bem sucedida ser pr processado e ELSE compilado normalmente os outros ser o ignorados A ordem das ee se es determinada por m as se es elsif e else s o opcionais e END IF as se es elsif podem aparecer arbitrariamente com frequ ncia Na constante expr v rios operadores de compila o condicional podem ser usados veja abaixo Tabela 4 7 Pragmas Condicionais Operadores de Compila o Condicional Na express o constante expr de um pragma de compila o condicional 1f ou elsif podem ser usados v rios operadores os quais podem n o estar definidos ou redefinidos via fundefine ou define respectivamente Estas express es assim como a defini o feita em define podem tamb m ser usadas em Defini es do Compilador no di logo Propriedades de um objeto Os seguintes operadores s o suportados Defined Identificador Quando aplicado a um identificador seu valor ser TRUE se este identificador for definido com uma instru o define e est
178. e quebra verificada somente ap s o la o ter sido executado Isto significa que a execu o ocorrer pelo menos uma vez independentemente desta condi o Sintaxe REPEAT lt Instru es gt UNTIL lt Express o booleana gt END REPEAT lt INSTRU ES gt executado at que lt EXPRESS O BOLEANA gt retorne TRUE Se a lt EXPRESS O BOLEANA gt retornar TRUE na primeira execu o ent o lt INSTRU ES gt ser executado apenas uma vez Se a lt EXPRESS O BOLEANA gt n o assumir nunca o valor TRUE ent o lt INSTRU ES gt ser repetido indefinidamente fazendo a aplica o travar e por consequ ncia causando a entrada em c o de guarda em fun o do estouro deste par metro configurado na tarefa correspondente NOTA O programador deve certificar se de que n o foi gerado nenhum la o infinito Esta verifica o feita alterando se a condi o na parte de instru es do la o por exemplo incrementando um contador para cima ou para baixo e usando o como condi o Exemplo REPEAT Vari Varl 2 Counter Counter l UNTIL Counter 0 158 5 Editores das Linguagens de Programa o END REPEAT A instru o CONTINUE pode ser usada em um la o REPEAT Instru o CONTINUE Como uma extens o da norma IEC 61131 3 ExST a instru o CONTINUE suportada em FOR WHILE e la os REPEAT CONTINUE faz com que a execu o continue no pr ximo ciclo de la o Exemplo FOR Counte
179. ecificada ser exibida Tabela 4 5 Tipos de Pragmas de Mensagem NOTA No caso de mensagens dos tipos Informa o Advert ncia e Erro a posi o da fonte da mensagem que onde o pragma est localizado em uma POU pode ser alcan ada atrav s do comando Pr xima Mensagem Isto n o poss vel para o tipo Text Exemplo de declara o e implementa o no Editor ST VAR ivar INT info TODO deve ter outro nome bvar BOOL arrTest ARRAY 0 10 OF INT is INT END VAR arrTest 1 arrTest i 1 lvar ivar 1 text A parte xy foi compilada completamente info Isto uma informa o warning Isto uma advert ncia error Isto um erro Messages 7 1 X Build O 1 errors 1 warmingis Description Project Object Position Build started Application Device Application typify code TODO deve ter outro nome Untitledas MainPrg Device PLC Logic Applica Line 3 Decl A parte xy foi compilada completamente Untitledas MainPrg Device PLC Logic Applica Line 3 Column 1 Impl Isto uma informa o Untitled s MainPrg Device PLC Logic Applica Line 4 Column 1 Impl E Isto uma advert ncia Untitledas MainPrg Device PLC Logic Applica Line 5 Column 1 Impl E Isto um erro Untitled s MainPrg Device PLC Logic Applica Line 6 Column 1 Impl Compile complete 1 errors 1 warnings Figura 4 1 Sa da na Janela de Mensagens P
180. egue Parte de declara o C digo implicitamente gerado N O EDITAR FUNCTION CheckRangeSigned DINT VAR INPUT value lower upper DINT END VAR Parte de implementa o C digo implicitamente gerado somente uma sugest o de implementa o IF value lt lower THEN CheckRangeSigned lower ELSIF value gt upper THEN CheckRangeSigned upper ELSE CheckRangeSigned value END IF Ao ser chamada a fun o apresenta os seguintes par metros de entrada e Value o valor a ser atribu do ao tipo de intervalo e Lower o limite Inferior do intervalo e Upper o limite superior do intervalo Enquanto o valor atribu do estiver no Intervalo a sa da da fun o o valor em si Caso contr rio correspondentemente viola o do intervalo os limites inferior e superior ser o retornados A atribui o 1 10 y ser substitu da implicitamente por 1 CheckRangeSigned 10 y 4095 4095 Se y apresentar o valor 1000 por exemplo 10000 101000 n o ser atribu da a vari vel 1 conforme fornecido na implementa o original mas ao limite superior do intervalo ou seja 4095 O mesmo se aplica fun o CheckRangeUnsigned NOTA Se as fun es CheckRangeSigned ou CheckRangeUnsigned n o estiverem presentes n o ocorrer verifica o de tipo dos tipos subrange durante a execu o Nesta caso a vari vel 1 poderia obter qualquer valor entre 327768 e 32767 83 4 Refer nci
181. eis Criando Bibliotecas Codifica o Documenta o Um projeto do MasterTool IEC XE pode ser salvo como uma biblioteca lt nome do projeto gt library e opcionalmente pode ser instalado no Reposit rio de Bibliotecas do Sistema Nos projetos de biblioteca somente ser o considerados os objetos gerenciados na janela das POUSs Para estes projetos recomendado escolher o modelo Biblioteca Vazia no di logo Novo Projeto Observe o que segue Nas Informa es do Projeto devem estar especificados um t tulo uma vers o e a empresa A altera o do contexto padr o pode ser feita ent o se necess rio Opcionalmente recomenda se acrescentar uma categoria pois ela ser til posteriormente para a classifica o das bibliotecas no Library Manager e no Reposit rio de Bibliotecas Se ela for diferente da padr o Miscel nea deve ser carregada uma descri o da categoria arquivo XML Jlibcat xml ou outra biblioteca que contenha este arquivo de descri o Caso seja necess rio pode ser criado um novo arquivo de descri o da categoria ou um arquivo existente pode ser modificado A informa o das categorias selecionadas e o arquivo b sico de descri o da categoria ser o transferidos para o projeto local e posteriormente ao Instalar a biblioteca para o reposit rio espec fico A partir da as bibliotecas estar o categorizadas no reposit rio Caso outra biblioteca apresente um arquivo de descri o com o mesmo ID mas c
182. eradores de escopo contextos estendidos Ponteiros de fun o substituindo o operador INSTANCE OF M todo Init substituindo o operador INI M todo Exit Vari veis de sa da em fun es e chamadas de m todos VAR TEMP VAR STAT VAR RETAIN VAR PERSISTENT Express es arbitr rias para inicializa o de vari veis Atribui o como express o Acesso de ndice com ponteiros e strings Conceito de Gerenciamento de Usu rio e Direitos de Acesso Contas de usu rios grupos de usu rios direitos espec ficos de grupos para acesso e a es em objetos espec ficos Caracter sticas em Editores Editor ST recursos de edi o quebra de linha autocompletar monitora o e atribui o SET RESET na linha Editores FBD LD e IL revers veis e program veis em um editor combinado Editor IL como editor de tabela Editores FBD LD e IL possibilidade de altera o da sa da principal em caixas com v rias sa das Editores FBD LD e IL sem atualiza o autom tica dos par metros da caixa Editores FBD LD e IL ramifica es e redes dentro de redes Editor SFC somente um tipo de passo macros sele o m ltipla de elementos independentes sem verifica o sint tica durante a edi o e declara o autom tica de vari veis sinalizadoras Vers es de Bibliotecas V rias vers es de bibliotecas podem ser usadas no mesmo projeto utilizando o recurso de contextos Instala o em reposit rios atualiza o autom tica e depura o F
183. erenciador de bibliotecas n o estiver em sob um dispositivo o espa o reservado ser resolvido com a biblioteca especificada no campo Biblioteca padr o Nome do espa o reservado RedundancyLib Biblioteca Padr o MextoS0E 1 0 0 1 ie NextoStandard 1 0 0 9 ais Standard 3 4 4 0 dE Standards 3 4 4 0 adam Ls a 4 mn 7 Agrupar por Categoria Figura 3 2 Di logo Acrescentar Biblioteca Espa o Reservado NOTA Espa o Reservado s est dispon vel se as caracter sticas pr definidas escolhidas pelo usu rio for Profissional ou se a op o Habilitar Di logo de Reposit rio estiver habilitado Para mais informa es sobre caracter sticas consulte Caracter sticas no Manual de Utiliza o MasterTool IEC XE MU299048 A guia Espa o Reservado usada nos dois casos seguintes e Cria o de um projeto independente de dispositivo e Cria o de um projeto de biblioteca lt library xy gt que referencia outra biblioteca destinada a ser espec fica do dispositivo Espa o Reservado no Projeto Para que um projeto seja compat vel com v rios dispositivos intercambi veis as bibliotecas espec ficas dos dispositivos devem ser inclu das no gerenciador de bibliotecas do projeto atrav s de espa os reservados Assim que o dispositivo for especificado os espa os reservados ser o selecionados de acordo com a descri o deste dispositivo Mesmo se n o houver uma descri o de dispositivo dispon vel
184. es de retorno Somente um valor pode ser usado para se obter uma opera o bem sucedida Exemplo foi chamada a fun o GeomAverage que apresenta tr s par metros de entrada O primeiro par metro fornecido por X7 na opera o precedente O segundo 25 dado antes do nome da fun o O terceiro par metro dado pela vari vel TVAR tanto na mesma linha quanto na subsequente O valor de retorno atribu do vari vel AVE Exemplo para chamada da fun o GEOMAVERAGE em ST AVE GEOMAVERAGE X7 25 TVAR Exemplo para chamada da fun o GEOMAVERAGE em IL LD A GeomAverade as ST Ave Chamadas de Blocos Funcionais e Chamadas de Programa Use os operadores CAL ou CALC Insira o nome da inst ncia do bloco funcional e do programa no campo do operando segunda coluna seguido pelo par ntese de abertura Digite os par metros de entrada em cada uma das seguintes linhas 171 5 Editores das Linguagens de Programa o Primeira coluna operador nome do par metro e para par metros de entrada e gt para par metros de sa da Segunda coluna operando par metro atual e 66 99 e se seguido de outros par metros e 3 ap s o ltimo par metro 66 29 A e J no caso de chamadas sem par metros Exemplo de chamada da POUTOCAII com dois par metros de entrada e dois de sa da PROGRAM IL EXAMPLE YAR bErr BOUL wkesult WORD EHD VAR DD n e w M Pe CAL F UTo
185. es precedente e subsequente atrav s de uma linha O nome do passo pode ser editado na linha A moldura da caixa do passo inicial apresenta linha dupla Todo o passo atrav s do comando Passo Inicial ou da respectiva propriedade do passo pode ser transformado em um passo inicial Em outras palavras pode ser convertido no passo que ser executado primeiro quando a POU for chamada As a es a serem executadas quando o passo est ativo processado devem estar associadas veja abaixo A o Passos e transi es s o basicamente inseridos juntos via comando Inserir Transi o de Passo Ap s NOTAS Somente os tipos de passo IEC est o previstos Nomes de passo devem ser exclusivos no escopo de uma POU principal Isto deve ser observado especialmente ao usar a es programadas em SFC stepi CO Tr ans Figura 5 18 Passo e Subsequente Transi o Figura 5 19 Passo Inicial e Subsequente Transi o Transi o Uma transi o representada por um pequeno ret ngulo conectado ao antecessor e ao sucessor dos passos por uma linha Ela fornece a condi o na qual o passo seguinte se tornar ativo assim que a condi o for TRUE Por padr o automaticamente inserida uma transi o trans lt n gt onde n o n mero de execu o O nome padr o deve ser modificado por um nome v lido seja ele 137 5 Editores das Linguagens de Programa o A 1 5 j e O nome de um objeto de t
186. escrita e a vari vel D ser exportada com acesso de leitura attribute symbol readwrite PROGRAM MAINPRG VAR A INT B INT attribute symbol none C INT attribute symbol D INT read 66 4 Refer ncia de Programa o END VAR Pragmas Condicionais A linguagem ExST ST estendido suporta v rias instru es de pragma condicionais que afetam a gera o de c digo nos processos de compila o e pr compila o O c digo de implementa o a ser considerado para estes processos depende de v rios fatores se um determinado tipo de dado ou vari vel est declarado se um tipo ou vari vel apresenta um determinado atributo se uma vari vel apresenta um determinado tipo de dado se uma determinada POU ou tarefa est dispon vel e parte da rvore de chamadas NOTA Uma POU ou uma GVL declarada na rvore de POUs n o pode usar a instru o define declarada em uma aplica o define identifier string Durante o pr processamento todas as inst ncias subsequentes do identificador ser o substitu das pela sequ ncia de tokens se a string destes n o estiver vazia o que permitido e definido O identificador permanece definido e no escopo at o final do objeto ou at que seja indefinido pela diretiva undefine Veja abaixo o exemplo Compila o condicional undefine identifier A defini o do identificador de pr processamento define veja acima ser removida
187. esentadas exponencialmente Use o formato padr o americano com o ponto decimal Exemplo 7 4 w em vez de 774 3 1 64e 009 em vez de 1 64e 009 Constantes STRING Uma string uma sequ ncia de caracteres Constantes STRING s o precedidas e seguidas por aspas simples Tamb m poss vel inserir espa os em branco e caracteres especiais UMLAUTS por exemplo Eles ser o tratados da mesma forma que outros caracteres Observe as seguintes possibilidades de usar o sinal em constantes de string 117 4 Refer ncia de Programa o Sinal Resultado Sooo o fsra mica Tab Tabela 4 12 Possibilidades de Uso para o Sinal Exemplos Abby and Craig Si costs 99 Literais Tipados Basicamente no uso das constantes IEC empregado o menor tipo de dado poss vel Para usar outro tipo de dado podem ser utilizados os chamados literais tipados sem a necessidade de declarar as constantes explicitamente Para este prop sito a constante ser fornecida com um prefixo que determina o seu tipo Sintaxe lt TIPO gt i lt Lliteral gt lt TIPO gt especifica o tipo de dado desejado Itens poss veis BOOL SINT USINT BYTE INT UINT WORD DINT UDINT DWORD REAL e LREAL O tipo deve ser escrito em letras mai sculas lt Literal gt especifica a constante O dado inserido deve adequar se ao tipo dado especificado em lt TIPO gt Exemplo Var li DINEHSS Ser gerada uma mensa
188. estabelecido Figura 5 82 Breakpoint Configurado e Alcan ado Breakpoint desativado Figura 5 83 Breakpoint Desativado 186 5 Editores das Linguagens de Programa o Assim que uma posi o de breakpoint for alcan ada durante o passo a passo ou processamento do programa uma seta amarela ser exibida no s mbolo do breakpoint e uma rea sombreada em vermelho se tornar amarela A posi o de parada alcan ada indicada por um sombreado amarelo e a posi o n o alcan ada indicada por um sombreado vermelho DIV ivarl fubi outar ST fubinst ivarl CAL fubinst i LD fubinst outyar sT erg3 LET Figura 5 85 Posi es de Parada Exibidas em IL NOTA Um breakpoint ser configurado automaticamente em todos os m todos em que puder ser chamado Se um m todo for chamado via ponteiro em um bloco funcional os breakpoints ser o configurados no m todo do bloco funcional e em todos os blocos funcionais derivados que estejam subscrevendo o 187 6 Bibliotecas 6 Bibliotecas A biblioteca standard library j vem instalada por padr o Ela cont m todas as fun es e blocos funcionais necess rios em conformidade com a norma IEC61131 3 assim como com as POUSs para o programador IEC Algumas bibliotecas adicionais s o necess rias dependendo das v rias funcionalidades do programador Estas bibliotecas s o usadas implicitamente e por padr o s o inclu das automaticament
189. este intervalo no exemplo de declara o acima 1 5000 uma mensagem de erro ser exibida 82 4 Refer ncia de Programa o Fun es de Verifica o Para verificar os limites de intervalo durante o tempo de execu o as fun es CheckRangeSigned ou CheckRangeUnsigned devem estar dispon veis para a aplica o Para isto adicione o objeto POUs para Verifica es Impl citas aplica o via di logo Acrescentar Objeto Marque as caixas de verifica o correspondentes aos tipos CheckRangeSigned e ou CheckRangeUnsigned e confirme com Abrir A fun o selecionada ser aberta no editor A parte de declara o pr definida e n o pode ser modificada exceto para adicionar outras vari veis locais No editor ST fornecida uma implementa o padr o da fun o pass vel de modifica o O prop sito desta fun o de verifica o o tratamento adequado das viola es do subrange por exemplo ao configurar uma mem ria de erro detectada ou alterar o valor A fun o ser chamada implicitamente assim que uma vari vel do tipo subrange for atribu da ATEN O Para manter a funcionalidade de verifica o n o altere a parte de declara o de uma fun o de verifica o impl cita Exemplo A atribui o de uma vari vel pertencente a um tipo subrange assinado implica em uma chamada impl cita CheckRangeSigned Na implementa o padr o da fun o fornecido um valor para o intervalo conforme s
190. estrutura podem ser acessados Defini o da estrutura strul TYPE strul STRUCT var INT strvar STRING hallo END STRUCT END TYPE 127 5 Editores das Linguagens de Programa o Bloco funcional fublo2 declara o e implementa o FUNCTION BLOCK EtublLoZ VAR INPUT CONSTANT binl INT fbin2 DWORD 24354333 fbin3 STRING hallo END VAR VAR INPUT Ebin INT END VAR VAR OUTPUT CDE amp Spiru TOO UCZ2 DWORD END VAR VAR tovar INT fbvar2 STRING END VAR Programa cfc prog declara o e implementa o VAR intvar INT stringvar STRING tolinet Fublol ergl INT erg2 STRING Lbinst2 ubloZz END VAR Seletor Bloco Funcional com saida fbout do tipo stru1 Figura 5 8 Exemplo Seletor Inserir e Organizar Elementos Os elementos dispon veis para programa o no editor CFC s o fornecidos em uma Caixa de Ferramentas que est dispon vel em uma janela assim que o editor CFC for aberto O di logo Op es do Editor CFC define as configura es gerais para se trabalhar neste editor Inserindo Para inserir um elemento selecione o na Caixa de Ferramentas que com um clique do mouse mantenha o bot o pressionado e posicione o no local desejado na janela do editor Durante o posicionamento o cursor ser exibido como uma seta com um ret ngulo e um sinal de mais Ao soltar o bot o o elemento ser inserido Selecionando Para selecionar um elemento Inserido visando
191. estruturar um programa IL Verifique as configura es gerais do editor no di logo Op es guia Editores FBD LD e IL Para informa es sobre vari veis ou par metros de caixas consulte Trabalhando na Visualiza o dos Editores FBD e LD Inserindo e organizando elementos Os comandos para trabalhar neste editor est o dispon veis no menu FBD LDY IL que sempre o mais importante no menu de contexto Cada unidade de programa o elemento Inserida na posi o atual do cursor atrav s do comando Inserir dispon vel no menu FBD LD IL Os comandos Recortar Copiar Colar e Excluir por padr o est o dispon veis no menu Editar e podem ser usados para organizar os elementos Considere as posi es poss veis do cursor Veja a seguir como o editor tabular estruturado e como poss vel navegar por ele utilizando operandos complexos chamadas e saltos Estrutura do Editor Tabular IL Cada linha do programa escrita em uma linha da tabela estruturada nas seguintes colunas Coluna Cont m Descri o Operador Este campo cont m o operador IL LD ST CAL AND OR etc ou um nome de fun o No caso de uma chamada de bloco funcional s o especificados os respectivos par metros Neste caso devem ser inseridos os campos Prefixo ou gt Operando Este campo cont m exatamente um operando ou um r tulo de salto Se for necess rio mais de um operando operadores m ltiplos extens veis AND A B C ou ch
192. esultado Tflms O resultado CO ESSBOOL TO TOD TRUL G TODE00 00 00 001 O resultado D amp 1970 01 Gdat BOOL TO DATE FALSE 01 O resultado DT 1970 01 dandt BOOL TO DT TRUE 01 00 00 01 Exemplos em FBD BOOL TO INT TEDE i O resultado 1 102 BEDOL TO STRING TR E 3 tr O resultado TRUE BOOL TO TIME TRUE t O resultado T amp lms BDOL TO TOD TRUE taf O resultado TOD 00 00 00 001 BOOL TO DATE FALSE E O resultado D 1970 01 01 BOOL TO DT TEDE dandt O resultado DT 1970 01 01 00 00 01 Convers es TO BOOL Operador IEC convers o de outro tipo de vari vel para BOOL Sintaxe para um operador de convers o TO BOOL lt Tipo de dado gt TO BOOL 4 Refer ncia de Programa o O resultado TRUE quando o operando for diferente de O zero O resultado FALSE quando o operando for O zero O resultado TRUE para vari veis do tipo STRING quando o operando for TRUE caso contr rio o resultado ser FALSE Exemplos em IL LD DIE BYTE TO BOOL ST h O resultado TRUE LD IHT TO BOOL lt T h O resultado FALSE LD Tg 503 TIME TO BOOL ST h O resultado TRUE LD TRUE STRIHG TO BOOL ST b O resultado TRUE 103 4 Refer ncia de Programa o Exemplos em FBD ETTE TO BOOL ala al O resultado TRUE IHT TO BOOL E al O resultado FALSE TIME TO BOOL LHS b O resultado TRUE STR
193. ferenciadas e Seo arquivo library est dispon vel por inteiro isto n o apenas a sua vers o compilada compiled library as POUs da referida biblioteca podem ser abertas com um duplo clique nas suas refer ncias dentro do gerenciador e Quando um m dulo da biblioteca chamado por uma aplica o a pesquisa ser feita em todas as bibliotecas e reposit rios na ordem definida no di logo Reposit rio de Bibliotecas Bibliotecas Referenciadas e As bibliotecas podem incluir outras bibliotecas referenciadas aninhamento Ao acrescentar uma biblioteca que inclua outras no gerenciador as bibliotecas referenciadas ser o acrescentadas automaticamente e O comportamento que a biblioteca referenciada apresentar ao ser inserida em um projeto com sua biblioteca principal pode ser definido nas suas Propriedades e A visibilidade da biblioteca referenciada no Library Manager pode ser desativada Elas passam a ter o status de bibliotecas ocultas e Bibliotecas do tipo container s o aquelas sem m dulos pr prios e que apenas referenciam outras bibliotecas A biblioteca container possibilita criar um projeto com v rias bibliotecas inclu das ao mesmo tempo O acesso aos seus m dulos pode ser simplificado tornando a biblioteca de n vel superior topo pois isto permite omitir o contexto desta biblioteca no caminho do acesso Para 31 2 Conceitos e Componentes B sicos tanto basta ativar o bot o Publicar mas esta op o
194. ficaciones y Configuraciones CPUs Nexto Series Features and Configuration UCPs S rie Nexto Caracter sticas e Configura es UCPs Serie Nexto Especificaciones y Configuraciones MasterTool IEC XE Features and Configuration MasterTool IEC XE Caracter sticas e Configura es MasterTool IEC XE Especificaciones y Configuraciones Nexto Series User Manual Manual de Utiliza o S rie Nexto Manual Del Usuario Serie Nexto Nexto S ries CPUs User Manual Manual de Utiliza o UCPs S rie Nexto Manual del Usuario UCPs Serie Nexto MasterTool IEC XE User Manual Manual de Utiliza o MasterTool IEC XE Manual del Usuario MasterTool IEC XE IEC 61131 Programming Manual Manual de Programa o IEC 61131 Manual de Programaci n IEC 61131 Ingl s Portugu s Espanhol Ingl s Portugu s Espanhol Ingl s Portugu s Espanhol Ingl s Portugu s Espanhol Ingl s Portugu s Espanhol Ingl s Portugu s Espanhol Ingl s Portugu s Espanhol Tabela 1 1 Documenta o de Suporte Inspe o Visual Antes de proceder instala o recomend vel fazer uma inspe o visual cuidadosa dos equipamentos verificando se n o h danos causados pelo transporte Verifique se todos os componentes de seu pedido est o em perfeito estado Em caso de defeitos informe a companhia transportadora e o representante ou distribuidor Altus mais pr ximo CUIDADO Antes de retirar os m dulos da embalagem importante
195. ficos do dispositivo s o gerenciados na janela de visualiza o dos dispositivos Um projeto salvo no arquivo lt nome do projeto gt project Dispositivos Na janela Dispositivos rvore de dispositivos define se o hardware onde a aplica o ser executada 11 2 Conceitos e Componentes B sicos Cada dispositivo representa um hardware espec fico destino Exemplos controlador m dulos de E S monitor Cada dispositivo definido por uma descri o e deve ser Instalado no sistema local para que possa ser inserido na rvore de Dispositivos O arquivo de descri o define as propriedades referentes configura o programa o e poss veis conex es com outros dispositivos Na rvore de Dispositivos s o gerenciados os objetos necess rios para executar uma aplica o no dispositivo controlador CP incluindo aplica o configura o de tarefas e tarefas Entretanto objetos de programa o espec ficos POUSs listas de vari veis globais e gerenciador de bibliotecas podem em vez de serem gerenciados como unidades instanci veis globais de projeto na janela das POUSs serem gerenciados SOMENTE na rvore de Dispositivos e neste caso estarem dispon veis apenas na sua aplica o ou nas suas aplica es secund rias Aplica o Uma aplica o o conjunto dos objetos necess rios para executar uma Inst ncia espec fica do programa do CP em um determinado dispositivo de hard
196. figurar a inst ncia deve vir diretamente ap s o nome As a es n o t m prefixo Somente as a es que devem ser chamadas apenas internamente ou seja pela POU em si iniciam com prv_ POUSs nas Bibliotecas do MasterTool IEC XE Os nomes de POU nas bibliotecas do MasterTool IEC XE n o precisam de um prefixo de biblioteca pois os contextos fazem as vezes deste Para criar nomes de m todo as mesmas regras aplicam se para a es As poss veis entradas de um m todo devem estar comentadas para sua documenta o Tamb m uma breve descri o do m todo deve ser adicionada a esta declara o 44 4 Refer ncia de Programa o Nomes de Visualiza o Deve se evitar nomear uma visualiza o com o mesmo nome de outro objeto no projeto pois Isto pode causar problemas no caso de altera es na visualiza o Inicializa o de Vari veis O valor de inicializa o padr o O para todas as declara es por m valores de inicializa o definidos pelo usu rio podem ser adicionados na declara o de cada vari vel e tipo de dado A inicializa o definida pelo usu rio produzida pelo operador de atribui o e pode ser qualquer express o ST v lida Desta forma valores constantes assim como outras vari veis ou fun es podem ser usadas para definir o valor de inicializa o O programador deve assegurar que a vari vel usada para a inicializa o de outra vari vel j tenha sido inicializada Exemplos
197. gem de erro caso a constante n o possa ser convertida para o tipo do dispositivo sem perda de dados Literais tipados podem ser usados em qualquer local onde sejam usadas constantes normais Vari veis Vari veis podem ser declaradas localmente na parte de declara o de uma POU ou em uma lista de vari veis globais Consulte Declara o de Vari veis para obter informa es sobre a declara o de uma vari vel incluindo as regras referentes ao identificador da vari vel e seu uso m ltiplo Vari veis podem ser usadas em qualquer local onde o tipo declarado permiti las As vari veis dispon veis podem ser acessadas atrav s do Assistente de Entrada Acessando Vari veis Sintaxe Para componentes de ARRAYS bi dimensionais lt NOME DO ARRAY gt INDICEL INDICEZ 118 4 Refer ncia de Programa o Para vari veis de estrutura lt NOME DA ESTRUTURA gt lt NOME DA VARI VEL gt Para blocos funcionais e vari veis de programa lt NOME DO BLOCO FUNCIONAL gt lt NOME DA VARI VEL gt Endere ando Bits Bits individuais podem ser acessados em vari veis inteiras Para tal o ndice do bit a ser endere ado anexado vari vel separado por um ponto O ndice do bit pode ser dado por qualquer constante A indexa o baseada em zero Sintaxe lt Nome da vari vel gt lt ndice de bit gt Exemplo a INT D BOOL ara o D7 O terceiro bit da vari vel A ser configurado para o valor da vari
198. gera a derivada em rela o ao tempo de dt Estes valores s o armazenados Internamente A sa da isto a vari vel Y manipulada diferentemente do controlador PD cont m uma parte integral adicional e calculada da seguinte forma Y KP x A 1 TN fedt TV A t Y OFFSET Assim al m da parte P tamb m a altera o atual do erro do controlador parte D e o seu hist rico parte I influenciam a vari vel manipulada O controlador PID pode ser facilmente convertido para um controlador PI definindo se TV o0 Devido parte integral adicional um overflow pode advir da parametriza o incorreta do controlador se a Integral do erro D vier a divergir Portanto por quest es de seguran a uma sa da booleana chamada OVERFLOW est presente neste caso com o valor TRUE Isto somente acontecer se o sistema de controle for inst vel devido parametriza o incorreta Ao mesmo tempo o controlador ser suspenso e somente ser ativado novamente atrav s da reinicializa o NOTA Enquanto a limita o para a vari vel manipulada Y MIN e Y MAX estiver ativa a parte integral ser adaptada o hist rico dos valores de entrada afetando automaticamente o valor de sa da limitado Se este comportamento n o for o desejado desligue a limita o no controlador PID Y MIN gt Y MAX e em vez disto aplique o operador LIMIT norma IEC no valor Y da sa da 210 6 Bibliotecas NOTA A Altus recomenda a utiliza o do
199. grama o depura o configura o e simula o das aplica es do usu rio O software baseado no conceito de ferramenta integrada provendo flexibilidade e facilidade de uso permitindo aos usu rios a programa o em seis linguagens definidas pela norma IEC 61131 3 Texto Estruturado ST Sequenciamento Gr fico de Fun es SFC Diagrama de Blocos Funcionais FBD Diagrama Ladder LD Lista de Instru es IL e Gr fico Cont nuo de Fun es CFC O MasterTool IEC XE permite o uso de diferentes linguagens na mesma aplica o fornecendo ao usu rio uma poderosa maneira de organizar a sua aplica o al m de reutilizar c digo desenvolvido em aplica es anteriores Este produto oferece caracter sticas para todas as etapas de desenvolvimento de um sistema de automa o come ando por uma an lise gr fica da topologia da arquitetura passando por um ambiente de programa o com suporte s linguagens da norma IEC 61131 3 com uma ferramenta de simula o real stica onde o usu rio pode verificar o comportamento da aplica o antes de execut la em um sistema real e finalmente prov uma completa interface para visualiza o de diagn sticos e status O MasterTool TEC XE tamb m oferece dois diferentes mecanismos de prote o da aplica o e caracter sticas de seguran a Prote o da Propriedade Intelectual e Login Seguro no CP A Prote o da Propriedade Intelectual tem por objetivo proteger a propriedade intelec
200. grama n o permitida em uma fun o Tamb m n o existem Inst ncias de programas Se uma POU chamou um programa e se os valores deste foram alterados estas altera es ser o mantidas at que o programa seja chamado novamente mesmo que seja chamado em outra POU Note que isto diferente de chamar um bloco funcional onde somente os valores na inst ncia fornecida s o alterados Assim estas altera es s t m efeito quando a mesma inst ncia for chamada novamente Os par metros de entrada e ou sa da no curso de uma chamada de programa podem ser definidos nos editores de linguagem textual ST por exemplo atribuindo se valores a eles ap s o nome do programa entre par nteses Para par metros de entrada esta atribui o ocorre usando assim como com a Inicializa o das vari veis na posi o de declara o Para par metros de sa da deve ser usado gt Veja o exemplo abaixo Se o programa for inserido via Assistente de Entrada com a op o Inserir com argumentos na janela de implementa o de um editor de linguagem textual ele ser exibido automaticamente de acordo com esta sintaxe para todos os par metros embora estes n o necessariamente tenham que ser atribu dos Exemplo para chamada de programa em IL CAL PRGexamnple i ln vari 33 L FECGexanple out war ST ELO Atribuindo os par metros utilizando Assistente de Entrada com op o Com argumentos marcada CAL PRhGexanple in vari 3
201. hes consulte o item Inserir Caixa no Manual de Utiliza o MasterTool IEC XE MU299048 178 Uso em IL 5 Editores das Linguagens de Programa o Em um programa IL ser inserida uma instru o CAL com par metros para representar um elemento caixa Na implementa o atual os par metros da caixa entradas sa das podem ser atualizados sem que a caixa tenha que ser reinserida atrav s do comando Atualizar Par metros no caso da interface da caixa ter sido alterada Instru o RETURN em FBD LD IL Com uma instru o RETURN a execu o da POU FBD LD ou IL pode ser desviada Nas redes FBD ou LD a instru o pode ser posicionada em paralelo ou ao final dos elementos anteriores Se a entrada de RETURN for TRUE o processamento da POU ser imediatamente abortado Para inserir o retorno usa se o comando Inserir Retorno Alternativamente poss vel arrastar o elemento a partir da Caixa de Ferramentas copiar ou mover o mesmo a partir de outra posi o no editor Em FBD Em LD RETURN RETURN e Figura 5 67 Elemento RETURN Em IL usada a instru o RET Ramifica o Bobina Suspensa em FBD LD IL FBD LD Nas redes FBD e LD uma ramifica o e uma bobina suspensa respectivamente dividem a linha de processamento a partir da posi o atual do cursor Esta linha seguir em duas subredes as quais s o executadas uma ap s a outra de cima para baixo Cada subrede adquire uma ramifica o adicional
202. i veis ATEN O Na se o anterior Sugest es para Ajustes do Controlador PID s o sugeridos m todos de ajuste nos quais a corre o de escalas impl cita ao m todo n o devendo ser considerada No cap tulo seguinte Exemplo de Aplica o a corre o de escalas tamb m desnecess ria pois utilizou se um dos m todos abordados na se o Sugest es para Ajustes do Controlador PID 232 6 Bibliotecas A corre o de escalas ilustrada a partir de um exemplo descrito a seguir Considere um sistema de ar condicionado onde o m dulo de entrada anal gica est lendo um resistor PTC coeficiente t rmico positivo e o m dulo de sa da anal gica gera uma tens o de O a 10V para atuar sobre a v lvula respons vel pela circula o da gua que resfria o ar insuflado O m dulo de entrada trabalha com uma faixa de O a 30000 por m a faixa til de 6634 a 8706 com o seguinte significado e EAO 6634 0 884 6 Q corresponde a m nima temperatura que pode ser medida EA1 8706 100 1160 9 Q corresponde a m xima temperatura que pode ser medida O m dulo de sa da utiliza a mesma faixa de O a 30000 sem restri es e com o seguinte significado e SA0O 0 0 0V corresponde a m nima vaz o de gua pela v lvula e SAI 30000 100 10 V corresponde a m xima vaz o de gua pela v lvula Supondo que o ganho GP foi previamente determinado o ganho GP pode ser calculado pela seguinte equa o
203. i veis e express es no controlador Veja e Para obter informa es sobre como abrir objetos no modo online consulte Interface do Usu rio no Modo Online no Manual de Utiliza o MasterTool IEC XE MU299048 e A janela do editor de um objeto SFC tamb m inclui o Editor de Declara o na parte superior Para obter informa es gerais sobre o editor de declara o no modo online consulte Editor de Declara o no Modo Online no Manual de Utiliza o MasterTool IEC XE MU299048 No caso de haver vari veis impl citas declaradas mem rias SFC atrav s do di logo de Configura es do SFC estas ser o ali adicionadas por m n o ser o visualizadas no modo offline do Editor de Declara o e Considere tamb m a sequ ncia de processamento dos elementos de um Sequenciamento Gr fico de Fun es e Consulte as informa es sobre as propriedades do objeto as op es do editor SFC e os padr es SFC para obter informa es sobre as configura es referentes compila o e exibi o online de elementos SFC e seus atributos e Considere a possibilidade de usar mem rias para monitorar e controlar o processamento de um SFC Monitora o Passos ativos s o exibidos com a cor azul A exibi o dos atributos de passo depende das op es do editor SFC atualmente configuradas 151 5 Editores das Linguagens de Programa o yo E SFC prog o TEX Device Application SFC prog Express o Tipo valor valor Prep count I
204. i vel Se os valores de enumera o n o forem inicializados com valores espec ficos na declara o a contagem iniciar com O zero Ao inicializar assegure se de que os valores iniciais est o aumentando nos componentes da linha A validade do n mero ser verificada no momento da execu o Exemplo Defini o de duas enumera es FIPE TRABEIC SIGNALS req yellow grteeni 10 O valor inicial para cada cor vermelho 0 amarelo 1 e verde 10 END TYPE Declara o TRAFFIC STONALL E TRAFFIC SIGNAL Uso do valor de enumera o TRAFFIC SIGNAL em uma POU IRAFFIC SIGNALAS 0 O valor do sinal de transito vermelho Extens es Norma IEC 61131 3 O tipo enumera o pode ser usado como um operador de escopo para tornar n o amb guo o acesso a uma constante de enumera o Assim poss vel usar a mesma constante em diferentes enumera es Exemplo Defini o de duas enumera es TYPE COLORS bo red BLUS END TYPE TYPE COLORS AF green blue yellow END TYPE 81 4 Refer ncia de Programa o Uso do valor de enumera o BLUE em uma POU Declara o COlotvari COLORS dy COLOTVarZ E COLORS 25 Implementa o permitido Coloevarl gt colors DIUS colorvars s colors Zablue Nao amp permitados colorvarl blue colorvar 2 blue O tipo de dado de base da enumera o por padr o INT pode ser especificado Exemplo O tipo de dado de base
205. i a in a o 188 Blocos Funcionais BiestavVe iS a ssaasaanadagada aaa sds a sean E E A 193 Disparado ese E E E E A O E 194 ER EE N E RED RR RD RR E E E A 195 Tempor Zid O eea E EE E a a bd O OEE 198 A Bibh teca UTIL UDrary etneisiintirndino dura dana praticado rodada diiadasa iaaea kaa ONSAS 202 CONCRETO a TE TAS 202 Sum rio P DIDI la a cb D bd A 203 Pun o Matematica Alia uai nes ida e a eia dd a e O rara aa aaa 204 CO NLRONICES E E E ob E AE a Br di 208 Geradores dE SAL aa ado Aa OA dd dd 211 Manipuladores de Rn o 5 5 5 28505 500 Uporis paia ao beai dual a Dad a ERR 214 Processamento de Valores ANAlOSICOS oaren n a a a aasasapasaEadas 216 A Bibhiot ca NextoPID library css icaiisisassniistas a dnerinani cai nina a Aaa aana 218 PD rasca a E 218 DID ERES 222 PIDIN ea T SECA E PRP 224 Lib RecipeEandler s s sscrsrsssesosacr so Sosa ins eL a E E A A EEE 237 WIEREN oer Srt Si at a o Ri ad a Aa E E RR Rn Sa 297 TV GEOSS RIO sara SER RSRSRS OO NR OUR E 239 1 Introdu o 1 Introdu o A S rie Nexto uma poderosa e completa s rie de Controladores Program veis CP com caracter sticas exclusivas e inovadoras Devido a sua flexibilidade design inteligente recursos de diagn sticos avan ados e arquitetura modular a S rie Nexto pode ser usada para controle de sistemas em aplica es de m dio e grande porte ou em m quinas com requisitos de alto desempenho O MasterTool TEC XE uma ferramenta completa para pro
206. icado anteriormente na se o Notas de Aplica o Tm 10 segundos tempo morto visto que o degrau foi aplicado em t 50 s e a resposta iniciou em t 60s T 30 segundos constante de tempo visto que a resposta iniciou em t 60 s e atingiu 63 21 da excurs o em t 90 s 9792 6000 12000 6000 0 6321 K 2 4 ganho est tico do processo 2 4 12000 6000 5000 2500 Sintonia do Controlador J que foi realizado o teste de malha aberta ser utilizado o segundo m todo de sintonia descrito no cap tulo Notas de Aplica o Para utilizar este m todo al m dos par metros do processo determinados na se o anterior Tm T e K tamb m necess rio que o usu rio informe outros 2 par metros e Tr Ou tempo de resposta desejado Neste exemplo ser arbitrado em 10 segundos um ter o da constante de tempo em malha aberta e dt Ou tempo de ciclo do bloco funcional PID Conforme comentado anteriormente este tempo deve ser 10 vezes menor do que a constante de tempo em malha aberta ou ainda menor Portanto o valor deve ser menor que 3 segundos Selecionou se dt 1 segundo Agora poss vel aplicar as equa es do m todo GP T K Tr Tm Dt 2 30 2 4 10 10 1 2 0 609 Ti T 30 s rep Td Tm 2 Dt 4 10 2 1 2 5 25 s 236 6 Bibliotecas LibRecipeHandler Esta biblioteca permite manipular receitas no CP ATEN O Para o correto funcionamento desta biblioteca
207. ida para uma vari vel da inst ncia atribu da a um endere o incompleto Exemplo de configura o de vari vel Suponha que a seguinte defini o para o bloco funcional locio seja determinada em um programa veja no exemplo acima PROGRAM MainPrg VAR JocioVarl a locio lJocioVar2 Locio END VAR 53 4 Refer ncia de Programa o A configura o da vari vel corrigida teria a seguinte apar ncia VAR CONFIG MainPrgslociovari xLocIn AT amp IX1 0 BOOL MaLlnPEg LocioVari XLoconE AT 30X070 S BOOL MainPrg lociovar2 XLocIn AL SIX1 40 BOOLE MainPry locioVar2Z xLocOUt Ar S0X0 43 BOOL END VAR NOTA Altera es nas E S diretamente mapeadas s o imediatamente exibidas na imagem do processo onde as altera es nas vari veis mapeadas via VAR CONFIG n o s o exibidas antes do final da tarefa considerada Declara o e Inicializa o de Tipos de Dados Definidos pelo Usu rio Al m dos tipos de dados padr o podem ser usados tipos definidos pelo usu rio Para obter mais informa es sobre a declara o e inicializa o consulte Tipos de Dados e Tipos de Dados Definidos pelo Usu rio M todos FB Inite FB Reinit FB Init O m todo FB Imit substitui o operador INI Trata se de um m todo especial para blocos funcionais que pode ser declarado explicitamente mas que tamb m est dispon vel implicitamente Assim em qualquer caso ele pode ser acessado pelo bloco funcional Este m todo cont
208. ima para baixo IL Lista de Instru es Em uma rede IL a ramifica o e a bobina suspensa s o representadas por uma ordem apropriada de instru es Neste contexto consulte Modificadores e Operadores em IL Contato Este um elemento LD Cada rede LD cont m um ou mais contatos na esquerda Estes contatos s o representados por duas linhas paralelas 180 FBD IL Bobina 5 Editores das Linguagens de Programa o bywarl A Figura 5 71 Contato Contatos passam da condi o ON TRUE ou OFF FALSE da esquerda para a direita Uma vari vel booleana atribu da a cada contato Se esta vari vel for TRUE primeiramente a condi o transmitida da esquerda para a direita e a seguir para uma bobina no lado direito da rede Caso contr rio a conex o da direita recebe o valor FALSE M ltiplos contatos podem ser conectados tanto em s rie quanto em paralelo No caso de dois contatos paralelos pelo menos um deles deve transmitir o valor TRUE para que a ramifica o paralela transmita o valor TRUE No caso de contatos conectados em s rie todos os contatos devem transmitir a condi o TRUE para que o ltimo contato transmita a condi o TRUE Assim o comportamento e posicionamento dos contatos an logo aos circuitos el tricos em s rie e paralelo Um contato tamb m pode ser negado barra no s mbolo do contato byarl IH Figura 5 72 Contato Negado Um contato negado transmite a condi o
209. inal booleano de entrada a ser verificado borda de descida Sa das Q BOOL torna se TRUE se ocorrer uma borda de descida em CLK 6 Bibliotecas A sa da Q e uma vari vel booleana de ajuda interna M permanecer o FALSE enquanto a vari vel de entrada CLK retornar TRUE Assim que CLK retornar FALSE Q primeiro retornar TRUE e M ser configurada para TRUE Isto significa que cada vez que a fun o for chamada Q primeiramente ser configurada para TRUE e ent o retornar FALSE ap s uma borda de descida em CLK Exemplo de declara o ETRIGINSE E IRIG Exemplo em IL CAL FTRIGinst CLE Var BOOLI LD FTRIGinst l ST varB Lz Exemplo em FBD FTRIGinst F TRIG varB Ll CLE E vYarcBnOLa Exemplo em ST FTRIGInst CLK VarBOOL1 VarBOOL2 FTRIGInst Q Fornecido pela standard hbrary Bloco funcional que atua como um incrementador 195 CTD 6 Bibliotecas Entradas CU BOOL uma borda de subida nesta entrada inicia o incremento de CV RESET BOOL se TRUE CV ir para 0 PV WORD limite superior para o incremento de CV Sa das Q BOOL torna se TRUE assim que CV alcan ar o limite determinado por PV CV WORD incrementado at que alcance PV Exemplo de Declara o CTlulnse T CTU Exemplo em IL CAL CThinst Ch VarBOOLI LUaDb VarBDOOLA PyYi VYarWOoRDI Cv gt VarWoORDA LD CThbinst n sT varB0 L3 Exemplo em FBD CTU Uinst CTU varB Ll
210. inidos pelo arquivo de descri o de dispositivo e Sempre atualizar vari veis Se esta op o for ativada todas as vari veis ser o atualizadas em cada ciclo da tarefa n o importa se eles s o usados ou se eles s o mapeados para uma entrada ou sa da Vari vel Mapeamento Canal Endere o Tipo Unidade Descri o no Reserved QB81921 Reserved for internal use Reserved QB81921 BYTE Reserved for internal use E Reserved 04819210 BOIL e Reserved 0X81921 1 BOOL E Reserved 0QX81921 2 BOOL da Reserved 0QX81972153 BOOL a Reserved 0x4 81921 4 BOOL a Reserved Y 0Qx819215 BOOL a Reserved 0x81921 6 BOOL a Reserved 0QxX81921 7 BOOL i Reserved QB81922 BYTE Reserved for internal use Reserved mIWwB1024 Reserved for internal use i Reserved mIWwB1d24 WORD Reserved for internal use Ei Reserved IW81926 WORD Reserved for internal use i Reserved IW81928 WORD Reserved for internal use Figura 4 7 Janela de Canais e Vari vel Pode ser mapeada uma vari vel para o canal atrav s do Assistente de Entrada ou criada uma nova atrav s da edi o do campo e Mapeamento Indica se a vari vel ser nova ser declarada internamente como uma vari vel global ou ser feito um mapeamento para uma j existente neste caso o endere o ser exibido riscado e n o deve ser utilizado diretamente Canal Nome do canal de entrada ou sa da do dispositivo Endere o Endere o do canal por exemplo
211. inte linha dupla ao final da ramifica o se tornar ativo quando todos os passos anteriores estiverem ativos e a condi o de transi o ap s a linha dupla apresentar o valor TRUE Ordem de processamento de elementos em uma sequ ncia Item Deseri o Todas as mem rias de controle das a es IEC s o resetadas exceto as mem rias das a es IEC chamadas nas pr prias a es A es de sa da de Todos os passos s o verificados na ordem do sequenciamento gr fico passo de cima para baixo e da esquerda para a direita para determinar se o requisito para a execu o da a o de sa da de passo foi fornecido e se ser executada Uma a o de sa da ser executada se o passo for desativado ou seja sua entrada e suas a es de passo foram executados durante o ltimo ciclo e se a transi o para o passo seguinte for TRUE A es de entrada de Todos os passos s o testados na ordem do sequenciamento para passo determinar se o requisito para a execu o da a o de entrada de passo foi fornecido e se este for o caso se esta ser executada Uma a o de entrada ser executada se o passo precedente transi o for TRUE e assim o passo tiver sido ativado 150 5 Editores das Linguagens de Programa o Verifica o de timeout Para todos os passos na ordem do sequenciamento A es ativas de passo A es IEC As A es IEC usadas no sequenciamento s o executadas em ordem alfab tica Isto
212. io das vari veis retentivas elas mant m o seu valor ap s um envio Esse tipo de vari veis SOMENTE podem ser declaradas em uma lista de vari veis globais especial do tipo de objeto Vari veis Persistentes atribu da a uma aplica o Somente pode haver uma nica lista NOTA Uma declara o com VAR_GLOBAL PERSISTENT tem o mesmo efeito que uma declara o com VAR_GLOBAL PERSISTENT RETAIN ou VAR_GLOBAL RETAIN PERSISTENT Assim como as vari veis retentivas as persistentes s o armazenadas em uma rea de mem ria separada Exemplo VAR GLOBAL PERSISTENT RETAIN iVarPers1 DINT 1 Vari vel Persistente Retentiva App1 bVarPers BOOL 2 Vari vel Persistente Retentiva App1 END VAR NOTA Somente poss vel o uso de vari veis persistentes globais a n o ser que exista algum mecanismo no CP utilizado que permita este tipo de opera o O dispositivo deve fornecer uma rea separada de mem ria para a lista de vari veis persistentes de cada aplica o A cada reenvio da aplica o a lista de vari veis persistentes no CP ser verificada no projeto A lista no CP identificada pelo nome da aplica o Se houver inconsist ncias o usu rio dever reinicializar todas as vari veis persistentes da aplica o Inconsist ncias podem ser resultantes de renomea o ou exclus o de outras modifica es na lista de declara es existentes NOTA Todas as modifica es na parte de declara o da l
213. ique do mouse em uma posi o poss vel do cursor A sele o pode ser estendida aos elementos adjacentes usando as teclas de seta O elemento ser alterado para a cor vermelha Consulte exemplos no item Posi es do Cursor no SFC Passos e transi es podem ser selecionados movidos recortar copiar colar ou exclu dos separadamente Para selecionar v rios elementos siga as instru es abaixo e Mantenha a tecla lt SHIFT gt pressionada e em seguida clique nos elementos a serem selecionados 134 Editar Textos 5 Editores das Linguagens de Programa o Pressione o bot o esquerdo do mouse e desenhe um ret ngulo linha pontilhada em volta dos elementos a serem selecionados Use o comando Selecionar Todos menu Editar Com um clique do mouse em um texto abre se um campo de edi o Se uma rea de texto foi selecionada via teclas de seta o campo de edi o deve ser aberto explicitamente via lt ESPA O gt Editar A es Associadas Um clique duplo em um passo entrada ativo ou sa da ou a o de transi o associada abre a a o associada no editor correspondente Por exemplo d um duplo clique no elemento transi o ou no tri ngulo indicando uma a o de sa da em um elemento de passo Recortar Copiar e Colar Elementos Selecione o s elemento s e use o comando Recortar Copiar ou Colar menu Editar ou as teclas correspondentes Observe o seguinte comportamento Ao copiar um ou v rios elemen
214. is deste tipo o valor da vari vel transferida alterado transferido como um ponteiro chamada por refer ncia Isto significa que o valor de entrada para estas vari veis n o pode ser uma constante Por esta raz o mesmo as vari veis VAR IN OUT de um bloco funcional n o podem ser lidas nem escritas diretamente de fora via lt inst ncia do bloco funcional gt lt vari vel de entrada sa da gt 48 4 Refer ncia de Programa o Exemplo VAR IN OUT 1InOutl INT 1 Vari vel de entrada e sa da END VAR Vari veis Globais VAR GLOBAL Vari veis normais constantes externas ou vari veis remanentes s o conhecidas atrav s do projeto e podem ser declaradas como vari veis globais NOTAS Uma vari vel definida localmente em uma POU com o mesmo nome de uma vari vel global tem prioridade na POU As vari veis globais sempre ser o inicializadas antes das vari veis locais das POUs As vari veis devem ser declaradas localmente entre as palavras chave VAR GLOBAL e END VAR Considere a possibilidade de adicionar um atributo VAR GLOBAL Uma vari vel reconhecida como global pelo ponto precedente por exemplo 1GlobVarl Para informa es detalhadas sobre o m ltiplo uso dos nomes das vari veis operador de escopo global e contextos consulte Operador de Escopo Global Use a lista de vari veis globais GVLs para estruturar e tratar vari veis globais em um projeto Uma GVL pode ser adicionada
215. is posi es que podem ser definidas para um breakpoint posi es de parada para fins de depura o basicamente s o aquelas onde o valor das vari veis podem mudar declara es aquelas onde o fluxo do programa se ramifica ou aquelas onde outra POU chamada As posi es s o e Em toda a rede que faz com que o breakpoint seja aplicado primeira posi o poss vel dentro da rede e Em uma caixa com declara o N o poss vel portanto em caixas como ADD e DIV Veja a nota abaixo e Em uma atribui o e Ao final de uma POU no ponto de retorno ao elemento de chamada No modo online automaticamente ser exibida para este fim uma rede vazia a qual em vez de um n mero de rede identificada por RET NOTA N o poss vel configurar um breakpoint diretamente na primeira caixa de uma rede Entretanto se um breakpoint estiver configurado na rede inteira a posi o de parada ser automaticamente aplicada primeira caixa Consulte a lista de sele o no di logo de breakpoint para verificar todas as posi es poss veis Uma rede contendo qualquer posi o de breakpoint ativa marcada com um s mbolo de breakpoint c rculo vermelho direita do n mero da rede e por um fundo com um ret ngulo sombreado em vermelho para a primeira posi o de breakpoint poss vel dentro da rede Posi es de breakpoint desativadas s o indicadas por um c rculo vermelho n o preenchido Figura 5 83 6 Breakpoint
216. ista de vari veis persistentes assim como o efeito da reinicializa o resultante devem ser cuidadosamente consideradas Novas declara es somente podem ser adicionadas ao final da lista Em um envio elas ser o detectadas como novas e n o demandar o uma reinicializa o da lista completa 51 4 Refer ncia de Programa o Legenda do comportamento valor mantido x e valor inicializado Comportamento Ap s comando online VAR VAR RETAIN VAR PERSISTENT VAR RETAIN PERSISTENT VAR PERSISTENT RETAIN Reset a Quente els ResetaFrio so Reset Origem e o Envio da Aplica o o Altera o Online da Mm Reinicializar ReinicializarCP Tabela 4 4 RE de Vari veis Remanentes Constantes Constantes s o identificadas pela palavra chave CONSTANT e podem ser declaradas local ou globalmente Sintaxe VAR CONSTANT lt Tdentiracador gt lt Tipo 1 lt Inicializac a o gt END VAR Exemplo VAR CONSTANT e Conte iNTe 12 4 ls Constantes END VAR Consulte a descri o dos Operandos para obter uma lista das poss veis constantes Veja tamb m a possibilidade de usar constantes tipadas Literais Tipados Para constantes IEC ser usado o menor tipo de dado poss vel Outros tipos de dados podem ser obtidos com a ajuda de literais tipados sem a necessidade de declarar explicitamente as constantes Para isto a constante ser fornecida com um prefixo que determina o tipo Sintaxe
217. istentes e identificada por RET em vez do n mero da rede Ela representa a posi o na qual a execu o retornar POU de chamada e fornecer uma poss vel posi o de parada Atribui o em FBD LD IL Dependendo da posi o escolhida no FBD ou LD uma atribui o ser inserida na entrada selecionada na sa da selecionada ou ao final da rede Em uma rede LD uma atribui o ser exibida como uma bobina Alternativamente poss vel arrastar o elemento a partir da Caixa de Ferramentas ou copi lo mov lo arrastando o e soltando o na visualiza o do editor 177 5 Editores das Linguagens de Programa o Ap s a Inser o a string de texto 777 pode ser substitu da pelo nome da vari vel a ser atribu da Para isto pode ser usado o Assistente de Entrada atrav s do bot o a Em IL uma atribui o programada via instru es LD e ST Neste contexto veja tamb m Modificadores e Operadores em IL neste cap tulo Salto Dependendo da posi o selecionada no FBD ou LD o salto ser inserido diretamente frente da entrada selecionada diretamente depois de sa da selecionada ou ao final da rede Alternativamente o salto pode ser arrastado a partir da Caixa de Ferramentas ou copiado movido e solto no editor Ap s a Inser o a string 779 automaticamente inserida pode ser substitu da pelo r tulo ao qual o salto deve ser atribu do Na IL o salto inserido via instru o JMP R t
218. itada a sua direita e esquerda por linhas de corrente verticais barras de energia Uma rede cont m um diagrama de circuito formado por contatos bobinas opcionalmente POUs adicionais caixas e por linhas conectoras No lado esquerdo h uma s rie de contatos que transmitem a condi o ON ou OFF da esquerda para a direita o que corresponde aos valores booleanos TRUE e FALSE Para cada contato atribu da uma vari vel Booleana No caso de contatos normalmente abertos se esta vari vel for TRUE a condi o ser transmitida da esquerda para a direita ao longo da linha conectora Por outro lado se esta vari vel for FALSE a condi o transmitida para a direita ser sempre OFF No caso de contatos normalmente fechados se esta vari vel for TRUE a condi o transmitida para a direita ser sempre OFF No entanto no caso em que a vari vel for FALSE a condi o ser transmitida da esquerda para a direita ao longo da linha conectora Figura 5 46 Rede LD Lista de Instru es IL A Lista de Instru es similar a linguagem de programa o Assembly em conformidade a IEC 61131 3 Esta linguagem suporta programa es baseadas em um acumulador Todos operadores IEC 61131 3 s o permitidos assim como as v rias entradas sa das nega es coment rios sa das set reset e saltos incondicionais condicionais Cada instru o fundamentalmente baseada no carregamento de valores no acumulador atrav s do uso do opera
219. item Caracter sticas no Manual de Utiliza o MasterTool IEC XE MU299048 35 3 Comandos do Menu Subdi logo Biblioteca Acrescentar Biblioteca Biblioteca Espa o Resevado Todas as empresas E application lt Categoria B 2 Common lt Sub Categoria ES NextoSOE MAA NextoStandard b44 pi de E 1 0 0 9 a Nome da Biblioteca moto Vers o i Sempre a vers o mais atual standard System Ed standard System Ed Util system EE Control Diagnostics Figura 3 1 Di logo Acrescentar Biblioteca Todas as Vers es Aqui todas as bibliotecas atualmente instaladas no sistema ser o listadas A exibi o pode ser filtrada definindo se uma determinada Empresa a partir da lista de sele o A op o Todas as Empresas listar todas as bibliotecas dispon veis Se a op o Agrupar por Categoria estiver ativada as bibliotecas da empresa atualmente definida ser o listadas de acordo com as categorias dispon veis caso contr rio a lista estar em ordem alfab tica Se esta op o for escolhida as categorias aparecer o sob a forma de n s e as bibliotecas ou categorias adicionais ser o exibidas abaixo destes n s em rela o categoria atualmente selecionada O usu rio ent o escolhe a biblioteca desejada Se a op o Exibir Todas as Vers es Somente para Usu rios Avan ados estiver ativada todas as vers es instaladas desta biblioteca aparece
220. itoffset BITADR varl Resultado 16480000013 Exemplo em IL LD Yarl EITADR ST bi toffset NOTA Ap s uma altera o online podem ocorrer mudan as em rela o aos dados em alguns endere os Isto deve ser observado ao usar ponteiros em endere os Operador de Conte do Este operador de endere o n o est prescrito na norma IEC 61131 3 Um ponteiro pode ser desrefer nciado atrav s da adi o do operador de conte do ap s o identificador do ponteiro 100 4 Refer ncia de Programa o Exemplo em ST PES POINTER TO ENT Ya NELS INE var LACA TINI Pe ES ADRI VAr anel var antare y Operador de Chamada CAL Operador IEC para chamar um bloco funcional ou um programa Use CAL em IL para chamar uma inst ncia de bloco funcional As vari veis que servir o como vari veis de entrada est o localizadas entre par nteses imediatamente direita do nome da inst ncia do bloco funcional Exemplo Chamando a inst ncia Inst de um bloco funcional onde as vari veis de entrada Parl e Par2 s o O e TRUE respectivamente CAL INST PAR1 O PAR2 TRUE Fun es de Convers o de Tipo A convers o de um tipo maior em um menor por exemplo de INT para BYTE ou de DINT para WORD proibida Pode se basicamente converter qualquer tipo elementar em outro tipo elementar Sintaxe selen Ivpl gt TO lt elemIyp2 gt Observe que nas convers es TO STRING a string gerada
221. izado para detectar e isolar falhas tamb m o conjunto de dados usados para tal determina o que serve para a an lise e corre o de problemas Carga de programa ou configura o no CP Veja entrada sa da Tamb m chamado de E S Dispositivos de E S de dados de um sistema No caso de CPs correspondem tipicamente a m dulos digitais ou anal gicos de entrada ou sa da que monitoram ou acionam o dispositivo controlado Equipamento ligado a uma rede de comunica o que s transmite dados se for solicitado por outro equipamento denominado mestre Equipamento ou software para a conex o de duas redes de comunica o com diferentes protocolos Equipamentos f sicos usados em processamento de dados onde normalmente s o executados programas software Norma gen rica para opera o e utiliza o de CPs Antiga IEC 1131 Dispositivo que adapta el trica e ou logicamente a transfer ncia de sinais entre dois equipamentos Evento com atendimento priorit rio que temporariamente suspende a execu o de um programa e desvia para uma rotina de atendimento espec fica Unidade representativa de quantidade de mem ria kB Representa 1024 bytes Um conjunto de regras e conven es utilizado para a elabora o de um programa A o de estabelecer um canal de comunica o com o CP Conjunto de op es dispon veis e exibidas por um programa no v deo e que podem ser selecionadas pelo usu rio a fim de ativar ou executar uma deter
222. izando a faixa de O a 1000 somente ser realmente unit rio se a faixa de sa da MV tamb m for de O a 1000 Em muitos casos as escalas de entrada e sa da s o diferentes Pode se citar como exemplo um sistema onde o cart o de entrada anal gica de 4 20 mA onde 4 mA corresponde ao valor 0 e 20 mA corresponde ao valor 30000 E o cart o de sa da anal gica de 0 V a 10 V onde O V corresponde ao valor 0 e 10 V corresponde ao valor 1000 Em casos como o deste exemplo o ajuste de escalas pode ser feito atrav s do ganho proporcional ao inv s de uma normaliza o dos valores de entrada ou de sa da Uma estrat gia que pode ser adotada inicialmente determinar o ganho em termos percentuais independente de escalas sem se preocupar com o tipo de m dulos de entrada e sa da anal gicas utilizados Posteriormente ap s determinado este ganho deve se executar a corre o de escalas antes de introduzir o ganho proporcional no bloco funcional PID A estrat gia consiste em determinar o ganho proporcional do sistema utilizando a faixa percentual 0 a 100 tanto da vari vel medida PV como do valor de atua o MV sem levar em considera o os valores absolutos tanto de PV como de MV Isto levar determina o de um ganho proporcional denominado GP Este ganho GP n o pode ser utilizado diretamente no bloco funcional PID Antes necess rio fazer uma corre o de escalas que considere os valores absolutos destas var
223. l REAL VAR INPUT divisor REAL END VAR Parte de implementa o C digo implicitamente gerado somente uma sugest o para implementa o IF divisor 0 THEN CheckDivReal 1 ELSE CheckDivReal divisor END IF O operador DIV usa a sa da da fun o CheckDivReal como divisor No exemplo seguinte uma divis o por O proibida Assim o valor O do divisor D alterado para 1 pela CheckDivReal antes da execu o da divis o Portanto o resultado da divis o 799 PROGRAM MainPrg VAR erg REAL vL REAL 799 d REAL END VAR erg v d Operador IEC m dulo da divis o de uma vari vel por outra Tipos permitidos BYTE WORD DWORD LWORD SINT USINT INT UINT DINT UDINT LINT e ULINT O resultado desta fun o ser o resto da divis o O resultado ser um n mero inteiro Exemplo em IL LD q MOD ST varl O resultado em Varl 1 Exemplo em ST vari 9 MOD 2 Exemplo em FBD 87 MOVE SIZE OF 4 Refer ncia de Programa o q Yarl Operador IEC atribui o de uma vari vel outra vari vel de um tipo apropriado Uma vez que MOVE est dispon vel como uma caixa nos editores gr ficos FBD LD e CFC ent o nestes a funcionalidade EN ENO habilita o pode tamb m ser aplicada em uma atribui o de vari vel Figura 4 9 Exemplo em CFC em Combina o com EN ENO Somente se en 1 for TRUE varl ser atribu da a var2 Exemplo em IL LD varl MO
224. l MANUAL RESET e LIMITS ACTIVE FALSE o controlador calcula o erro do controlador e como a diferen a de SET POINT ACTUAL e gera a derivada em rela o ao tempo de dt Estes valores s o armazenados Internamente A sa da ou seja a vari vel Y manipulada calculada da seguinte forma Y KP x D TV dD dt Y OFFSET onde D SET POINT ACTUAL Assim al m da parte P tamb m a altera o atual do erro do controlador parte D influencia a vari vel manipulada Adicionalmente Y est limitado a um Intervalo determinado por Y MIN e Y MAX Se Y exceder estes limites LIMITS ACTIVE se tornar TRUE Para n o haver limita o na vari vel manipulada Y MIN e Y MAX devem estar configurados para 0 Enquanto MANUAL TRUE Y MANUAL ser escrita em Y Um controlador P pode ser facilmente criado configurando se TV 0 A biblioteca util library fornece o bloco funcional controlador PID Exemplo do bloco PID em FBD LIMITS ACTIVE OVERFLOW Diferentemente do controlador PD este bloco funcional cont m outra entrada TN do tipo REAL para ajustar o tempo em segundos por exemplo 0 5 para 500 milissegundos Entradas do Bloco Funcional Tipo de dado ACTUAL REAL Valor atual da vari vel controlada SET POINT REAL Valor desejado vari vel de comando e REAL Coeficiente de proporcionalidade ganho de unidade da parte P 209 6 Bibliotecas Tempo de reset ganho de unidade rec proco da parte l Tem
225. la orienta o ao objeto um projeto do MasterTool IEC XE cont m um programa de CP composto de v rios objetos de programa o e tamb m da defini o dos recursos necess rios para executar as Inst ncias do programa aplica o nos sistemas dos dispositivos definidos dispositivos CPs Assim sendo existem dois tipos de objetos em um projeto o Objetos de programa o os objetos de programa o POUs que podem ser instanciados no projeto em todas as aplica es definidas no mesmo devem ser gerenciados na janela das POUs Alguns exemplos destes objetos de programa o s o programas fun es blocos funcionais m todos a es defini es de tipos de dados entre outros O instanciamento feito ao chamar uma POU de programa atrav s de uma tarefa atribu da aplica o Os objetos de programa o gerenciados na janela de dispositivos atribu dos diretamente a uma aplica o n o podem ser instanciados por outra aplica o inserida abaixo o Objetos de recurso estes s o objetos de dispositivos aplica es configura es de tarefas e s o gerenciados na rvore de dispositivos ou no editor gr fico dependendo do tipo do dispositivo Ao Inserir objetos o hardware a ser controlado deve ser mapeado de acordo com determinadas regras Gera o de c digo a gera o de c digo feita atrav s de compiladores integrados e otimiza o do c digo de m quina versus tempos de execu o Transfer ncia de dados ent
226. lador PID O primeiro m todo consiste na determina o das constantes em fun o do per odo de oscila o e do ganho cr tico enquanto que o segundo determina as constantes do controlador em fun o da constante de tempo T do tempo morto Tm e do ganho est tico do sistema K Para maiores detalhes aconselha se a leitura da literatura referenciada ATEN O A Altus Sistemas de Automa o S A n o se responsabiliza por eventuais danos causados por erros de configura o das constantes do controlador ou parametriza o Recomenda se que pessoa devidamente qualificada execute esta tarefa Determina o das Constantes do Controlador Atrav s do Per odo e do Ganho Cr tico Este m todo gera uma resposta amortecida cuja taxa de amortecimento igual a 1 4 Isto depois de sintonizar um la o atrav s deste m todo espera se uma resposta como mostrada na Figura 6 22 228 6 Bibliotecas Figura 6 22 Resposta Amortecida O ganho cr tico definido como o ganho de um controlador proporcional que gera uma oscila o de amplitude constante no sistema em malha fechada enquanto que o per odo cr tico o per odo desta oscila o O ganho cr tico uma medida de controlabilidade do sistema ou seja quanto maior o ganho cr tico mais f cil ser o controle do sistema O per odo cr tico de oscila o uma medida da velocidade de resposta do sistema em malha fechada ou seja quanto maior o per odo de oscila o
227. lor TRUE quando o valor do primeiro operando for menor ou igual ao segundo Os operandos podem ser de qualquer tipo de dado num rico b sico Exemplo em IL LD al LE 30 sT varl O resultado TRUE Exemplo em ST VARL 20 lt 30 Exemplo em FBD LE A L varl 30 Operador de compara o IEC maior ou igual a Trata se de um operador booleano que retorna o valor TRUE quando o valor do primeiro operando for maior ou igual ao valor do segundo Os operandos podem ser de qualquer tipo de dado num rico b sico 98 EQ NE Exemplo em IL LD 0 GE 40 ST Yarl O resultado TRUE Exemplo em ST VARI 60 gt 40 Exemplo em FBD varl Operador de compara o IEC igual a 4 Refer ncia de Programa o Trata se de um operador booleano que retorna o valor TRUE quando os operandos comparados s o iguais Os operandos podem ser de qualquer tipo de dado num rico b sico Exemplo em IL L 40 EQ 40 ST varl O resultado TRUE Exemplo em ST VARI 40 40 Exemplo em FBD ZAI Yarl 20 Operador de compara o IEC diferente de Trata se de um operador booleano que retorna o valor TRUE quando os operandos n o s o iguais Os operandos podem ser de qualquer tipo de dado b sico Exemplo em IL LD 40 HE 40 ST varl O resultado FALSE Exemplo em ST VARI 40 lt gt 40 Exemplo em FBD 4 Yarl 4 99 4 Refer ncia de Programa o Operadores de Endere o ADR BI
228. m conformidade com a norma mas pode n o ser esperado pelo usu rio Exemplo em IL LD 1001 0011 HOR SB LO0O JOJO ST varl O resultado em var 1 do tipo BYTE 240001 1001 Exemplo em ST Varl 2 1001 0011 XOR 2 1000 1010 Exemplo em FBD X OR s 100 0011 varl 2 1000_1010 Operador de bitstring IEC opera o NOT bitwise de um operando de bit O bit resultante ser 1 se o bit de entrada correspondente for 0 e vice versa Tipos permitidos BOOL BYTE WORD DWORD e LWORD Exemplo em IL LD 1001 0011 HOT lt T varl O resultado em var 1 do tipo BYTE 2H0110 1100 Exemplo em ST Varl 2 NOT 2710012 00141 90 4 Refer ncia de Programa o Exemplo em FBD 1001 O o A varl Operadores de Deslocamento de Bits Os seguintes operadores de deslocamento de bits correspondentes norma IEC 61131 est o dispon veis SHL SHR ROL e ROR SHL Operador IEC deslocamento bitwise de um operando esquerda erg SHL in n in operando a ser deslocado para a esquerda n n mero de bits pelos quais in deslocado para a esquerda Se n exceder o tamanho do tipo de dado os operandos do tipo BYTE WORD DWORD e LWORD ser o preenchidos com zeros Os operandos de tipos de dados atribu dos como por exemplo INT sofrer o um deslocamento aritm tico ou seja eles ser o preenchidos com o valor do bit mais acima NOTAS Observe que a quantidade de bits necess ria pa
229. m o In cio e o fim da se o de rede desejada essa forma de sele o n o se aplica a elementos do tipo bobina Para recortar copiar e colar uma se o de uma rede basta manter simultaneamente pressionadas as teclas lt CTRL gt e os dois contatos que definem as bordas desta se o Desta forma os elementos entre eles ser o automaticamente considerados o CallTest 1 PROGRAM CallTest 3 ff Nars for first network 4 Tl T2 TON 5 ETl ET2 TIME 6 Blink BOOL POUToCall MyCounter Counter DomCount MyDoimCowunter 2 Decrement bErrorf Err wErrorf ErrCode bCallReset ction CP Cont Figura 5 49 Janela do Editor FBD E CalTest AF Up ndDown E 4 bx l FUHCTION BLOCK UpAndDowmm IMPLEMENTS HomingDevice 2 VAR INPUT 3 Enable BOOL 4 Amplitude INT GoHome BOOL 3 Cont Enable y Haal RET ORN 4 Qy EA Figura 5 50 Janela do Editor LD Para obter informa es sobre as linguagens consulte e Diagrama de Blocos Funcionais FBD e Diagrama Ladder LD 168 5 Editores das Linguagens de Programa o Trabalhando na Visualiza o do Editor IL O editor IL Lista de Instru es um editor tabular diferentemente do editor textual puro usado no MasterTool IEC A estrutura de rede dos programas FBD ou LD tamb m representada em um programa IL Basicamente uma rede suficiente em um programa IL por m considerando a troca entre FBD LD e IL tamb m poss vel usar redes para
230. m o programa aplicativo em execu o e n o provocam a reinicializa o do mesmo Certifique se de que o novo c digo da aplica o n o afetar o comportamento esperado do sistema Dependendo do controlador podem ocorrer danos nas m quinas ou nas suas partes assim como pode haver risco sa de e vida das pessoas NOTAS Quando realizada uma altera o online as inicializa es espec ficas da aplica o n o ser o executadas pois a m quina mant m o seu estado Por esta raz o o novo c digo de programa pode n o funcionar conforme o desejado Vari veis de ponteiro mant m os valores do ciclo anterior Se houver um ponteiro em uma vari vel que tenha alterado seu tamanho devido a uma altera o online o valor n o estar mais correto Certifique se de que as vari veis de ponteiro sejam re atribu das a cada ciclo Aplica o de Inicializa o Projeto de Inicializa o Uma aplica o de inicializa o o projeto que ser iniciado automaticamente quando o controlador inicializado Para tanto o projeto deve estar dispon vel no CP em um arquivo lt nome do projeto gt app Este arquivo pode ser criado no modo offline atrav s do comando Criar Aplica o de Inicializa o menu Comunica o A cada envio bem sucedido a aplica o ativa ser automaticamente armazenada no arquivo lt aplica o gt app na pasta do sistema do dispositivo ficando assim dispon vel como uma aplica o
231. m todos os m todos em que puder ser chamado Se um m todo for chamado via um ponteiro em um bloco funcional os breakpoints ser o configurados no m todo do bloco funcional e em todos os blocos funcionais derivados que o subscrevem Editor FBD LD IL O editor FBD LDY IL fornece comandos para trabalhar na linguagens de programa o Diagrama de Blocos Funcionais FBD Diagrama Ladder LD e Lista de Instru es IL Diagrama de Blocos Funcionais FBD O Diagrama de Blocos Funcionais uma linguagem de programa o orientada graficamente Ele funciona com uma lista de redes cada qual com uma estrutura gr fica de caixas e linhas de conex o que representam tanto uma express o l gica quanto aritm tica uma chamada de um bloco funcional um salto ou uma instru o de retorno 163 5 Editores das Linguagens de Programa o Tl T2 TON TON T2 0 IN Q IN Q Blink T is PT ETF ET1 T ls ET ETF ET2 Inst VpAndD own TRUE Enable Value x 100 Amplitude Upf Up Blink GoHome Dom Dom stRotate Figura 5 45 Redes de Diagrama de Blocos Funcionais Diagrama Ladder LD O Diagrama Ladder uma linguagem de programa o gr fica similar estrutura de um circuito el trico O Diagrama Ladder adequado para construir intertravamentos l gicos mas pode tamb m criar redes como no FBD Portanto o LD bastante til para controlar a chamada de outras POUs Ele consiste de uma s rie de redes sendo cada uma delas lim
232. mais lento ser o sistema No decorrer deste cap tulo o ganho cr tico ser denominado como GPc e o per odo cr tico como Tc importante lembrar que ganhos ligeiramente menores que GPc geram oscila es cujo per odo decresce com o tempo enquanto que ganhos maiores que GPc geram oscila es cuja amplitude cresce com o tempo No caso de ganhos maiores que GPc preciso ter cuidado para n o tornar o sistema criticamente inst vel O processo para a determinar GPc e Tc consiste em fechar a malha com o controlador em modo autom tico desabilitando a a o integral e a derivativa Os passos s o os seguintes e Remover a a o Integral e derivativa atrav s dos respectivos par metros de entrada e Aumentar o ganho proporcional com pequenos incrementos Depois de cada incremento inserir um pequeno dist rbio no sistema atrav s de um pequeno degrau no ponto de ajuste SP e Verificar o comportamento do sistema PV a amplitude de oscila o deve aumentar medida que o ganho aumenta O ganho cr tico GPc ser aquele que gerar oscila es com amplitude constante ou quase constante conforme a Figura 7 22 e Medir o per odo destas oscila es Tc Para determinar as constantes do controlador basta aplicar os valores de GPc e Tc nas f rmulas da Tabela 6 15 229 6 Bibliotecas a PV Te spt E a DT nao E A fis Figura 6 23 Oscila es com Amplitu
233. minada tarefa Menu din mico com o conte do de acordo com o contexto atual Equipamento ligado a uma rede de comunica o de onde se originam solicita es de comandos para outros equipamentos da rede Elemento b sico de um sistema completo que possui fun es bem definidas Normalmente ligado ao sistema por conectores podendo ser facilmente substitu do Elementos sobre os quais as instru es atuam Podem representar constantes vari veis ou um conjunto de vari veis Sigla para programmable controller a abreviatura de controlador program vel em ingl s Program Organization Unit ou Unidade de Organiza o de Programa uma subdivis o do programa aplicativo que pode ser escrito em qualquer uma das linguagens dispon veis o programa carregado em um CP que determina o funcionamento de uma m quina ou processo Regras de procedimentos e formatos convencionais que mediante sinais de controle permitem o estabelecimento de uma transmiss o de dados e a recupera o de erros entre equipamentos Sigla para random access memory a mem ria onde todos os endere os podem ser acessados diretamente de forma aleat ria e com a mesma velocidade E vol til ou seja seu conte do perdido quando o equipamento desenergizado a menos que se possua uma bateria para a reten o dos valores Conjunto de equipamentos n s interconectados por canais de comunica o Comando para reinicializar o CP Comando para c
234. nar o problema e reiniciar o bloco atrav s da vari vel Restart Abaixo segue a descri o dos erros 0 sem erro MaxMV lt MinMV MaxPV lt MinPV PV gt MaxPV ErrorCode UINT PV lt MinPV Ti lt 0 001 s com a o integral habilitada Td lt 0 s com a o derivativa habilitada Gp lt 0 MaxVarMV lt 0 9 DeadBand lt 0 10 SampleTime lt 0 001 s ou SampleTime gt 1000 s com MeasureST falso Tabela 6 10 Par metros de Sa da 221 6 Bibliotecas PID REAL O bloco funcional PID REAL implementa um algoritmo semelhante ao bloco PID desta biblioteca Contudo este bloco testa os valores de entrada PV e SP e o valor MV para verificar se est o dentro da faixa especificada Caso estejam fora da faixa o c lculo do algoritmo continua sendo executado mas gerado um c digo de erro na sa da ErrorCode Al m disso se a vari vel MV estiver saturada uma das sa das de Overflow ou Underflow ser o ligadas Esta fun o tamb m n o possui a vari vel VAR IN OUT IntegralAction Exemplo do bloco PID REAL em FBD PID REAL MW Overflow Underflow ManualM Y MaxVarMWy MaxMw MinMw DeadBand SampleTime EnableP Enablel EnableD Deriw PW Manu al Direct MeasureST Restart Par metros de entrada Setpoint REAL A unidade e o intervalo devem ser os mesmos que o PV pois as duas vari veis podem ser comparadas Vari vel de processo PV REAL A unidade e o intervalo devem ser os mesmos que o SP pois as
235. nas quais os valores das vari veis podem mudar ou nas quais o fluxo do programa estende se e outra POU chamada Nas seguintes descri es BP indica uma poss vel posi o de breakpoint e Atribui o no In cio da linha Considere que atribui es como express es n o definem outras posi es de breakpoint em uma linha No la o FOR est antes da inicializa o do contador antes do teste do contador e antes de uma senten a BP FOR i 12 TO BP x BP BY 1 DO BP senten a 1 BP I senten a 2 END FOR e La o WHILE est antes do teste da condi o e antes de uma senten a BP WHILE i lt 12 DO BP senten a 1 BP senten a l END WHILE e La o REPEAT est antes do teste da condi o e antes de uma senten a REPEAT 162 5 Editores das Linguagens de Programa o BP senten a 1 BP senten a n 1 BP UNTIL gt 12 END REPEAT e Chamada de um programa ou bloco funcional localiza se no In cio da linha e Ao final de uma POU no passo a passo esta posi o tamb m ser alcan ada ap s uma Instru o RETURN Exibi o do Breakpoint em ST 1 ali TE ami Zel THEO Figura 5 42 ein no Modo Online l paua O pra T teins TF Z Al SF E THF Figura 5 43 Breakpoint Desabilitado l ldli 2 Erg o fbinst 3 TF tHsrarFal se THFE Figura 5 44 Parada de Programa em um Breakpoint NOTA Um breakpoint ser automaticamente definido e
236. ncia do bloco funcional Para par metros de entrada esta atribui o ocorre usando assim como ocorre com a inicializa o das vari veis na declara o Para par metros de sa da deve ser usado gt Veja um exemplo de chamada com atribui es onde um bloco funcional de temporiza o inst ncia CMD T MR chamado com atribui es para os par metros IN e PT A vari vel resultante Q atribu da vari vel A com o nome da Inst ncia do bloco funcional seguido de um ponto e do nome da vari vel CMD TMR IN 1X5 0 PT 300 A CMD TMR Q Se a inst ncia Inserida via Assistente de Entrada lt F2 gt atrav s da op o Inserir com Argumentos na janela de implementa o de uma POU ST ou IL ela ser automaticamente exibida de acordo com a sintaxe mostrada a seguir com todos os seus par metros mas n o necessariamente deve atribuir estes par metros Para o exemplo acima a chamada deve aparecer da seguinte forma Exemplo de inser o via Assistente de Entrada com argumentos CMD TMRGn pt q gt Nenhum par metro atribu do gt CMD_TMR in bvar pt t 200ms q gt bres Par metros atribu dos Extens o de um Bloco Funcional A programa o orientada ao objeto permite a deriva o de um bloco funcional a partir de outro Desta forma as propriedades de um bloco funcional podem ser estendidas a outro A extens o feita usando se a palavra chave EXTENDS na declara o do
237. ndo se vari vel global Nome da Lista de Vari veis Globais Operador de escopo extens o da norma IEC 61131 3 O nome de uma lista de vari veis globais pode ser usado como contexto para as vari veis constantes desta lista Assim poss vel declarar vari veis com nomes id nticos em diferentes listas e precedendo o nome da vari vel por lt nome da lista de vari veis globais gt lt nome da vari vel global gt poss vel acessar aquela desejada Exemplo As listas de vari veis globais globlist1 e globlist2 cont m uma vari vel chamada varx Na linha seguinte varx da globlist2 copiada para varx na globlist1 globlistl varx i globlist2 varx Nesta linha de c digo Se for referenciado o nome de uma vari vel declarada em mais de uma lista de vari veis globais sem haver o nome da lista como um operador precedente ser gerada uma mensagem de erro Contexto de Biblioteca Operador escopo extens o da norma IEC 61131 3 O contexto de biblioteca pode ser usado para explicitamente acessar os componentes da biblioteca Exemplo se uma biblioteca inclu da em um projeto cont m um m dulo fun e h tamb m uma POU fun definida localmente no projeto o contexto da biblioteca pode ser adicionado ao nome do m dulo para tornar o acesso exclusivo A sintaxe lt contexto gt lt nome do m dulo gt por exemplo lib fun Por padr o o contexto de uma biblioteca id ntico ao nome da mesma No entanto po
238. nsagem de erro ser exibida Exemplo 49 4 Refer ncia de Programa o VAR EXTERNAL 1VarExt1l INT Primeira vari vel externa END VAR Atributo Palavras chave para Tipos de Vari veis As palavras chave de atributo listadas abaixo podem ser adicionadas declara o do tipo das vari veis para especificar o escopo e RETAIN Veja Vari veis Remanentes do tipo RETAIN e PERSISTENT Veja Vari veis Remanentes do tipo PERSISTENT e CONSTANT Veja Constantes Vari veis Remanentes Vari veis remanentes podem reter os seus valores durante o per odo de execu o normal do programa A declara o determina o grau de resist ncia de uma vari vel remanente no caso de reset envio ou reinicializa o do CP Principalmente nas aplica es ser requisitado uma combina o de ambas as mem rias remanentes Veja os seguintes itens e Vari veis Retentivas e Vari veis Persistentes Vari veis Retentivas Vari veis declaradas como retentivas ser o mantidas dependentes do CP mas em uma rea separada de mem ria Elas apresentam a palavra chave RETAIN na sua declara o em uma POU e em uma lista de vari veis globais Exemplo VAR RETAIN iReml INT 1 Vari vel retentiva END VAR Vari veis retentivas s o identificadas pela palavra chave RETAIN Estas vari veis mant m seu valor ap s o desligamento do controlador inesperado ou normal e no comando online Reset a Quente Quando o programa for exec
239. o Caso MeasureST BOOL seja falso o tempo de amostragem informado pelo usu rio na vari vel SampleTime Quando verdadeiro o bloco PID reiniciado inicializando todas BOOL as vari veis Tamb m pode ser utilizado para limpar as a es integral e derivativa e os c digos de erro na sa da do bloco Tabela 6 11 Par metros de Entrada Par metros de sa da REAL Vari vel manipulada Se o valor calculado pelo algoritmo do bloco funcional para a Overflow BOOL vari vel MV for maior que MaxMV ent o MV ser igual a MaxMV e esta sa da ser igual a TRUE Se o valor calculado pelo algoritmo do bloco funcional para a BOOL vari vel MV for menor que MinMV ent o MV ser igual a MinMV e esta sa da ser igual a TRUE EST REAL Tempo efetivo de amostragem em segundos utilizado para os c lculos de a o derivativa e taxa limite de MV Tempo efetivo de amostragem dos tr s ltimos ciclos em Eff3ST Ra E Ag segundos utilizado para os c lculos de a o derivativa MaxEfHST REAL M ximo valor do tempo efetivo de amostragem em segundos desde a inicializa o do bloco PID MinEfST REAL M nimo valor do tempo efetivo de amostragem em segundos desde a inicializa o do bloco PID C digo de erro exibido pelo bloco PID Para remov lo basta solucionar o problema e reiniciar o bloco atrav s da vari vel Restart Abaixo segue a descri o dos erros O sem erro MaxMV lt MinMV ErrorCode VINT MaxPV lt
240. o convertido A convers o de um tipo maior em um menor pode implicar na perda de algumas informa es Para o tipo de vari vel STRING o resultado uma constante de tempo Exemplos em IL L T l ma TIME TO STTI ST Sr O resultado T amp 12ms 105 LD T amp 500000ms TIME TO DWORD ST drr O resultado 300000 LD Tobs00 00 00 01 TIME TO SIHT ST z1 O resultado 12 Exemplos em ST str TIME TO STRING T 12ms dw TIME TO DWORD Tf5Sm SL TOD TO SINT TODF0D 004 00 012 Exemplos em FBD TIME TO STRIHG Lgloms Str TIME TO DHDED t bm Aw TOLD TO SIHT T b 00 00 00 Ola sl Convers es DATE TO DT TO 4 Refer ncia de Programa o O resultado Ttl2ms O resultado 300000 O resultado 12 Operador IEC convers o do tipo de vari vel DATE ou DATE AND TIME para um tipo diferente Sintaxe para o operador de convers o lt Tip de dado DATE gt TO lt tipo de dado gt A data ser armazenada internamente em uma DWORD em segundos a partir de 1 de Janeiro de 1970 Este valor ser ent o convertido Ao executar uma convers o de um tipo maior para um menor h o risco de perder algumas informa es Para vari veis do tipo STRING o resultado uma constante de data Exemplos em IL LD C 1970 01 01 DATE TO BOOL lt T b O resultado FALSE LD C 1970 01 01 DATE TO INT ST 1 O resultado 29952 LD C 1970 01 15 05 05 DATE
241. o e Sa da de Passo s o definidas nas propriedades do passo N ction As Figura 5 27 A es de Passo Ativo Ramifica es Um sequenciamento gr fico de fun es pode divergir isto a linha de processamento pode ser ramificada em duas ou mais linhas ramifica es Ramifica es paralelas ser o processadas paralelamente ambas de uma s vez As ramifica es alternativas depender o da condi o da transi o antecessora Cada ramifica o em um gr fico precedida por uma linha horizontal dupla paralela ou simples alternativa e tamb m finalizada por uma linha do mesmo tipo ou por um salto Ramifica o Paralela S mbolo ES A ramifica o paralela deve iniciar e terminar com um passo As ramifica es paralelas podem conter ramifica es alternativas ou outras paralelas As linhas horizontais antes e ap s a rea ramificada s o duplas Processamento no modo online se a transi o precedente t2 na Figura 5 28 for TRUE os primeiros passos de todas as ramifica es paralelas se tornar o ativos As ramifica es paralelas ser o AM 5 Editores das Linguagens de Programa o processadas paralelamente uma outra antes da transi o subsequente t3 na Figura 5 28 ser considerada Uma ramifica o paralela inserida via comando Inserir Ramifica o Direita no passo atualmente selecionado As ramifica es paralelas e alternativas podem ser transformadas atrav s dos com
242. o fim do processo de carregamento escolher o local para extra o e clicar no bot o Extrair e O projeto ser aberto e o comando de Login pode ser executado na UCP correspondente Para mais informa es consulte Menu Arquivo e Menu Comunica o no Manual de Utiliza o MasterTool IEC XE MU299048 Monitora o No modo online existem v rias possibilidades de exibir os valores atuais das express es de monitora o de um objeto no CP Para mais informa es a respeito deste item consultar Monitora o no Manual de Utiliza o MasterTool IEC XE MU299048 Depura o Para avaliar erros de programa o use a funcionalidade de depura o do MasterTool IEC XE no modo online Neste contexto considere a possibilidade de verificar a aplica o no modo de simula o isto sem a necessidade de conectar se com um dispositivo de hardware real Breakpoints podem ser configurados em determinadas posi es para for ar uma interrup o na execu o Algumas condi es podem ser configuradas para cada breakpoint como por exemplo quais as tarefas associadas ou em quais ciclos o breakpoint deve atuar Fun es de passos est o dispon veis para que um programa seja executado em passos controlados A cada Interrup o os valores atuais das vari veis podem ser examinados Uma pilha de chamadas pode ser visualizada na posi o do passo atual Para mais informa es a respeito deste item consultar Breakpoints no Manual
243. o n mero real estiver fora da faixa de valor daquele inteiro o resultado ser indefinido e depender do dispositivo At mesmo uma exce o poss vel neste caso Para obter um c digo independente do dispositivo a parte que exceder a faixa deve ser tratada atrav s da aplica o Se o n mero REAL LREAL estiver dentro da faixa de valor inteiro a convers o funcionar em todos os dispositivos da mesma forma Em uma convers o para o tipo STRING o n mero total de d gitos limitado a 16 Caso o n mero REAL LREAL apresente mais d gitos o d cimo sexto ser arredondado Se o comprimento da STRING for curto esta ser cortada a partir da extremidade direita Ao executar uma convers o de um tipo maior para um tipo menor h o risco de perder algumas informa es Exemplo em ST i E PEAL TO INT L O O resultado 2 J 2S REAL TO INTL 4 O resultado e 1 i PEAL TO INTO Lao 4 OQ teolt ado e 2 T E REAL TO INTs 0 O resultado e cl gt Exemplo em IL LD eA REAL TO IHT ST i O resultado 3 Exemplo em FBD LREAL TO IHT ai i Convers es TIME TO TIME OF DAY Operador IEC convers o do tipo de vari vel TIME ou TIME OF DAY para um tipo diferente Sintaxe para o operador de convers o lt Tipo de dado TIME gt TO lt tipo de dado gt O tempo ser armazenado internamente em uma DWORD em milissegundos iniciando com 12 00 A M em uma vari vel TIME OF DAY Este valor ser ent
244. o que o usu rio tenha cuidado ao usar esta op o pois em caso de mensagens de erro pode haver dificuldade em localizar a biblioteca original NOTA A op o Publicar todos os s mbolos IEC no projeto como se esta refer ncia tivesse sido inclu da diretamente somente deve ser ativada se o usu rio desejar usar bibliotecas container sem m dulos pr prios e incluir outras bibliotecas com o objetivo de compact las Esta compacta o permite por exemplo incluir de uma s vez v rias bibliotecas no projeto Neste caso entretanto desej vel que as bibliotecas espec ficas estejam no n vel superior do gerenciador de bibliotecas para que os m dulos possam ser acessados diretamente e o espa o reservado da biblioteca container possa ser deixado de fora Tentar Recarregar a Biblioteca Este comando faz parte do menu Bibliotecas e da janela do editor Library Manager Se uma biblioteca inclu da em um projeto por alguma raz o n o estiver dispon vel no caminho definido na abertura do projeto no programador ser gerada uma mensagem apropriada O usu rio deve verificar os erros disponibilizar a biblioteca corretamente e usar o comando Tentar Recarregar a Biblioteca enquanto a biblioteca estiver selecionada no gerenciador Desta forma a biblioteca pode ser recarregada sem a necessidade de sair do projeto 39 4 Refer ncia de Programa o 4 Refer ncia de Programa o Declara o As vari veis de um projeto devem
245. o renata nine cado age a ba SS a EEE 100 Operadorde Chamadas and SD DD 101 Puncocs de Conversdo de LIDO seno boaoio doses eds Do Bongo a Dad Dad ERR 101 FUN ES NUNACRICAS E a ab a a AR L AR Sa Aa a a a 109 Operadores Adiciondis a Norma TEC aaa dado da dd SOOU Ci ie id 114 Operandos rasa E dd 115 CONSTANTES rar A E 115 A s Do fdc OPERA NS RA SS A DRA A EP 118 Enderecos sis ai Das ani Dai E ani Di UE JOD JO OU ARE AG AD td lo la a a E 120 DNC OE aaa A a A A a O A a a 122 5 EDITORES DAS LINGUAGENS DE PROGRAMA O enesesesesososososossesesesesesesososcscsossesesesesesososcscscsss 123 Editor CRC qo eita eia nin aid R dec nocana aid nana dia parana E E na assa ada 123 Linguas em Gralico Funcional Continio CRC sans aaa bas adia a 123 Posicoes do Cursor no CEC ini one dnio Daio Dono anal aos D ans asa iG Raio ds io ROO SOC a ROO aC Cas aaa Doca Ccaniaia li atadas 124 Elementos CEC Cara dee amenas o da ASAS PA qu aaa A EUA SU aaa Sana a a 125 Bassi e Ur anizar lemen O acamimana unha ho Aa GR RR AR GR AO RS Ui E 128 Edaor CFE mo Modo Ono a red DA AO DO DONS oa Na par 130 fo Li io d o GO PAPARRCRRS RPE PRP RRRPEPRPR PRRRPRPRP RPE PRPEPRRE PRPRPRPAPPPRPRRD ANPR E RODO ANE RR DP RR RN DR RR RD MARE RE E APR 131 Sequenciamento Gr fico de Puni es SEC is siisaminaa sara oa nras si A UOL ORE Ra SU 132 Posicoes dol uror noS rC na aiii tia a a E E EEE 133 abaan OnO E Or DO aa E a a 134 Propriedade Eene SEO a a O a a di 135 Elementos SEC Cana qe Fe
246. o valor R dentre um grupo de valores 96 4 Refer ncia de Programa o Exemplo em IL LD j HUX 30 40 r 50 E bo F 7O f ag ST Yarl O resultado 30 Exemplo em ST Varl MUX 0 30 40 50 60 70 80 O resultado 30 Exemplo em FBD 30 40 50 60 70 o 4 O resultado 30 Operadores de Compara o GT Os seguintes operadores compat veis com a norma TEC 61131 est o dispon veis GT LT LE GE EQ e NE Estes s o operadores booleanos cada qual comparando duas entradas primeiro e segundo operando Operador de compara o IEC maior que Trata se de um operador booleano que retorna o valor TRUE quando o valor do primeiro operando for maior que o segundo Os operandos podem ser de qualquer tipo de dado num rico b sico Exemplo em IL L ZU GT a0 ST varl O resultado FALSE Exemplo em ST VARL lt 20 gt 30 gt 40 gt 50 gt 60 gt 70 97 LT LE GE 4 Refer ncia de Programa o Exemplo em FBD varl Operador de compara o IEC menor que Trata se de um operador booleano que retorna o valor TRUE quando o valor do primeiro operando for menor que o segundo Os operandos podem ser de qualquer tipo de dado b sico Exemplo em IL LD al LT 30 sT varl O resultado TRUE Exemplo em ST VARI 20 lt 30 Exemplo em FBD LT a varl 30 Operador de compara o IEC menor ou igual a Um operador booleano retorna o va
247. ocessos de compila o e pr compila o Isto significa que um pragma influencia a gera o do c digo Por exemplo ele pode determinar se uma vari vel ser inicializada monitorada adicionada lista de par metros tornada invis vel no gerenciador de bibliotecas ou adicionada configura o de s mbolos Sa das de mensagem durante o processo de compila o podem ser for adas assim como podem ser usados pragmas condicionais definindo como a vari vel ser tratada dependendo de determinadas condi es Estes pragmas tamb m podem ser inseridos como Defines nas propriedades de compila o de um objeto espec fico Um pragma pode ser usado em uma linha separada ou com um texto suplementar em uma linha de implementa o ou declara o do editor Nos editores FBD LDY IL use o comando Inserir R tulo e substitua o texto Para definir um r tulo e um pragma insira primeiro este ltimo e depois o r tulo A instru o do pragma fica entre chaves e o uso de letras mar sculas min sculas indiferente lt Texto da instru o A chave que abre vem imediatamente ap s o nome da vari vel A abertura e o fechamento das chaves deve ser na mesma linha Dependendo do seu tipo e conte do o pragma tanto opera na linha na qual est localizado quanto nas linhas subsequentes e se mant m em opera o at que seja finalizado por um pragma apropriado at que seja executado com diferentes par metros ou ainda at que atinja
248. odo No di logo Acrescentar M todo digite o nome o tipo de retorno e a linguagem de implementa o desejados Os tipos de dados de retorno podem ser visualizados usando o bot o para abrir o di logo do Assistente de Entrada O editor do m todo estar dispon vel via bot o Abrir Declara o Sintaxe METHOD lt NOME DO M TODO gt lt TIPO DE DADO gt VAR INPUT X INT END VAR Chamadas de M todo Chamadas de m todo s o tamb m denominadas chamadas de fun o virtual Veja Invoca o de M todo NOTAS Todos dados de um m todo s o tempor rios e somente s o v lidos durante a sua execu o vari veis de pilha No corpo de um m todo s o permitidas vari veis e o acesso Inst ncia do bloco funcional Ponteiro THIS o identificador THIS usado para apontar diretamente para a inst ncia impl cita do bloco funcional dispon vel Observe que em uma vari vel declarada localmente pode estar escondida uma vari vel do bloco funcional Ent o na descri o da sintaxe do exemplo mostrado acima THIS x n o se refere entrada x do m todo mas sim vari vel x do bloco funcional As vari veis VAR IN OUT ou VAR TEMP do bloco funcional n o podem ser acessadas em um m todo M todos assim como fun es podem ter sa das adicionais Estas podem ser atribu das durante a invoca o do m todo 25 2 Conceitos e Componentes B sicos M todos Especiais para um Bloco Funcional e M t
249. odo Init um m todo FB Init pode ser declarado impl cita ou explicitamente Ele cont m o c digo de inicializa o para o bloco funcional conforme declarado na sua parte de declara o Veja FB Init e M todo Reinit se o m todo denominado FB Reimit for declarado para uma inst ncia de um bloco funcional ele ser chamado ap s esta ter sido copiada e reinicializar o novo m dulo da inst ncia Veja FB Reinit e M todo Exit se o usu rio deseja um m todo de sa da FB Exit por exemplo para desaloca o deve declar lo explicitamente N o h declara o impl cita O m todo de sa da ser chamado para cada Inst ncia do bloco funcional antes de um novo envio reset ou durante uma altera o online para todas as inst ncias movidas ou apagadas Veja FB Exit e Propriedades para os m todos Set e Get veja o item Propriedade Chamada de M todo Aplica o Interrompida No arquivo de descri o do dispositivo pode se definir que um determinado m todo seja sempre chamado ciclicamente por uma determinada inst ncia do bloco funcional ou de um m dulo de biblioteca Se este m todo contiver os par metros de entrada abaixo ele ser processado tamb m quando a aplica o corrente ativa n o estiver em execu o VAR INPUT PTASKINFO POINTER TO DWORD PAPELICATIONINPO POINTER TO IMPIICIT APPLICATION INFO END VAR O programador pode ent o verificar o status da aplica o via pApplicationinfo e definir o qu
250. olocar o CP em modo de execu o A o para atribuir o estado de n vel l gico alto para uma vari vel booleana Programas de computador procedimentos e regras relacionadas opera o de um sistema de processamento de dados Comando para congelar o CP em seu estado atual 239 Token Tooltip UCP UCP ativa Word XML Zoom 7 Gloss rio uma marca que indica quem o mestre do barramento no momento Caixa de texto com uma ajuda ou local onde pode se entrar com a ajuda Sigla para unidade central de processamento Controla o fluxo de informa es interpreta e executa as instru es do programa e monitora os dispositivos do sistema Em um sistema redundante a UCP ativa realiza o controle do sistema lendo os valores dos pontos de entrada executando o programa aplicativo e acionando os valores das sa das Unidade de informa o composta por 16 biis Do ingl s Extensible Markup Language um padr o para gerar linguagens de marca o No contexto da janela de fun o do teclado utilizado para a troca de telas 240
251. om conte do diferente do arquivo novo ela ser v lida no reposit rio Se a biblioteca incluir outras bibliotecas atente para o comportamento das bibliotecas referenciadas quando a principal for inclu da no projeto Isto se refere ao tratamento da vers o contexto visibilidade e propriedades de acesso configurados no di logo propriedades da biblioteca referenciada Para que ela possa posteriormente referenciar outra biblioteca espec fica do dispositivo um espa o reservado pode ser usado ao configurar a refer ncia Para que os m dulos da biblioteca possam ser protegidos contra visualiza o e acesso o projeto pode ser salvo em um formato codificado lt nome do projeto gt compiled library As estruturas de dados de uma biblioteca s o internas Este objetos ficam ocultos e portanto n o aparecem no gerenciador assim como tamb m n o aparece a funcionalidade Componentes da lista nem o Assistente de Entrada Para que o usu rio possa acessar facilmente as informa es sobre um m dulo de biblioteca um coment rio pode ser adicionado declara o do par metro do m dulo Este coment rio ser 33 2 Conceitos e Componentes B sicos exibido posteriormente quando a biblioteca for inclu da no projeto na guia Documenta o do Gerenciador de Bibliotecas Os comandos a seguir est o dispon veis por padr o no menu Arquivo para salvar um projeto de biblioteca o Salvar Projeto Como o Salvar Projeto Como Biblioteca
252. on 4 END VAR E8 Bill of Materials Configuration and Consumption ud Diagnostic Explorer ad Diagnosti i Library Manager E MainPrg PRG Task Configuration E MainTask T PersistentVvars Figura 2 5 Lista de Vari veis Persistentes Arquivo Externo Qualquer arquivo externo com qualquer extens o pode ser adicionado ao projeto na janela das POUs atrav s do comando Acrescentar Objeto op o Arquivo Externo O di logo Acrescentar Arquivo Externo ser aberto Pressione o bot o L J para navegar para um arquivo o caminho que ser inserido no campo Caminho do arquivo No campo Nome automaticamente o nome do arquivo escolhido ser inserido 29 2 Conceitos e Componentes B sicos sem extens o Voc pode editar este campo para definir um outro nome para o arquivo dentro do projeto Seguintes op es podem ser selecionadas em rela o ao arquivo externo e Lembrar link O arquivo estar dispon vel no projeto somente se ele est dispon vel no caminho definido e Lembrar link e incluir no projeto uma c pia do arquivo ser armazenado internamente no projeto mas tamb m o link para o arquivo externo ser lembrado Com esta op o for marcada uma das op es abaixo deve ser escolhida o Recarrega o arquivo automaticamente O arquivo ser atualizado dentro do projeto assim que ele foi alterado externamente o Solicita para recarregar o arquivo Uma caixa de di logo ir aparecer assim que o arquivo foi altera
253. onitoring call o atributo pode ser usado para propriedades que retornam tipos de dados simples ou ponteiros n o para tipos estruturados O valor a ser monitorado recuperado diretamente atrav s da chamada da propriedade ou seja o servi o de monitora o do sistema de execu o chama o m todo Get Considere que se quaisquer opera es nas vari veis forem implementadas na propriedade o valor ainda poder ser alterado Atributo No check O pragma attribute no check adicionado com a finalidade de suprimir a chamada de quaisquer POUs para Verifica es Impl citas As fun es de verifica o podem influenciar a performance e por isto razo vel aplicar este atributo no inicio de POUSs j aprovadas ou que s o chamadas com frequ ncia Sintaxe attribute no check 63 4 Refer ncia de Programa o Exemplo attribute no check PROGRAM MainPrg VAR er DINF 100s 2U ve DAN END VAR Res Com a POU para verifica o impl cita CheckRangeSigned por exemplo adicionada ao projeto execute o c digo abaixo com o pragma attribute no check a fun o n o ser checada nesse caso permitindo a vari vel x receber qualquer valor Atributo No init Vari veis fornecidas com o pragma attribute no init j n o s o imicializadas implicitamente O pragma pertence vari vel subsequente declarada Sintaxe raccribute no LLEN ou attribute no init attribute noinit
254. onteiros aritm tico se o ndice de acesso for usado em uma vari vel do tipo ponteiro o offset ser calculado por pint 1 pint 1 SIZEOF base type O ndice 76 4 Refer ncia de Programa o de acesso tamb m executa uma desrefer ncia no ponteiro O tipo resultante o tipo de base do ponteiro Observe que pint 77 diferente de pint 7 e Seo ndice de acesso for usado em uma vari vel do tipo STRING o resultado um caractere no offset index expr O resultado do tipo BYTE Str 1 retornar o i1 simo caractere da string assim como um SINT ASCII e Seo ndice de acesso for usado em uma vari vel do tipo WSTRING o resultado um caractere no offset index expr O resultado do tipo WORD Wstr 1 retornar o i simo caractere da string assim como um INT Unicode Fun o CheckPointer Para verificar acessos a ponteiros durante a execu o use a fun o de verifica o impl cita dispon vel CheckPointer chamada antes de cada acesso ao endere o de um ponteiro Adicione o objeto POUSs para Verifica es Impl citas aplica o usando o di logo Acrescentar Objeto Marque a caixa de verifica o referente ao tipo CheckPointer e confirme suas configura es com o bot o Abrir onde a fun o de verifica o ser aberta no editor A parte de declara o pr definida e n o pode ser modificada exceto para adicionar outras vari veis locais Entretanto ao contr rio de outras
255. ontinua at que haja o reset Armazenado e limitado A a o inicia quando o passo se torna ativo e continua no tempo durante o tempo especificado ou at que haja um reset Tabela 5 4 Qualificadores Os qualificadores L D SD DS e SL precisam de um valor de tempo no formato da constante TIME Vari veis Impl citas Mem rias SFC Cada passo SFC e a o IEC fornece vari veis implicitamente geradas para monitorar os seus status durante a execu o As vari veis tamb m podem ser definidas para monitorar e controlar a execu o de um SFC timeouts reset modo auxiliar Estas vari veis tamb m s o geradas implicitamente pelo uso do objeto SFC Basicamente para cada passo e a o IEC gerada uma vari vel impl cita Exemplo uma inst ncia de estrutura denominada step1 e um passo tamb m denominado step1 Nas propriedades do elemento poss vel definir se uma defini o de s mbolo deve ser exportada para a configura o de s mbolos para esta mem ria e como este s mbolo deve ser acessado no CP Os tipos de dados para as vari veis impl citas s o definidos na biblioteca IecSFC hbrary Esta ser automaticamente inclu da no projeto assim que um objeto SFC for adicionado Status de Passo e A o e Tempo de Passo Basicamente para cada passo e para cada a o IEC criada uma vari vel de estrutura impl cita dos tipos SFCStepType e SFCActionType Os componentes de estrutura mem rias descrevem o status
256. ontrole A Figura 6 20 mostra um controlador em cascata com duas malhas PROCESSO PROCESSO E l Figura 6 20 Controle em Cascata com Duas Malhas A malha externa chamada de controlador mestre e a malha interna de controlador escravo O controlador mestre tem seu ponto de ajuste fixo e sua sa da fornece o ponto de ajuste do controlador escravo MV 1 A vari vel de atua o do controlador escravo MV 2 atuar sobre o processo 2 que por sua vez atuar sobre o processo 1 fechando a malha do controlador mestre Este tipo de controlador aplicado por exemplo no controle de temperatura pela inje o de vapor Al m da varia o da temperatura que deve ser controlada o sistema est sujeito a varia es de press o na linha de vapor Torna se ent o desej vel um controlador de vaz o escravo atuando em fun o das varia es de press o e um controlador mestre para manipular a refer ncia do escravo controlando ent o a temperatura do processo Este exemplo pode ser representado graficamente conforme a Figura 6 21 227 6 Bibliotecas PRESS O PROCESSO TEMPERATURA Figura 6 21 Exemplo de Controle em Cascata Aplicado Caso fosse utilizado somente um controlador de temperatura atuando diretamente sobre a v lvula de vapor n o haveria como compensar eventuais varia es de press o na linha de vapor Existem tr s principais vantagens no uso de controladores em cascata e Qualquer dist rbio que afet
257. orto adicional que deve ser somado a Tm Na pr tica soma se dt 2 ao valor de Tm pois este o tempo morto m dio Inserido O tempo de resposta Tr pode ser comparado com uma constante de tempo do la o fechado conforme ilustra a Figura 6 24 230 Mv MV 6 Bibliotecas Ba 21 Tm Figura 6 24 Tr Comparado com uma Constante de Tempo O par metro Tr na Figura 6 24 mostra o tempo de resposta desejado Trata se do tempo medido entre o in cio da resposta do sistema ap s o tempo morto Tm e o momento em que PV atinge 63 21 de sua excurs o total Atrav s de Tr o usu rio pode especificar um requisito de performance para o la o controlado Deve se ter o cuidado de n o especificar tempos de resposta menores que um d cimo da constante de tempo do sistema pois do contr rio o sistema pode ficar inst vel Quanto menor o valor de Tr maior o ganho necess rio A seguir descreve se como determinar atrav s de um teste de la o aberto os demais par metros K Tm e T que caracterizam o processo Um modo simples para determinar estas constantes do processo colocar o bloco funcional PID em modo manual gerar um pequeno degrau em MV e plotar a resposta de PV no tempo Para processos lentos isto pode ser feito manualmente mas para processos r pidos aconselha se o uso de um oscilosc pio ou qualquer outro dispositivo que monitore a varia o de PV O degrau em MV deve ser grande o suficiente para causar uma varia o pe
258. os espa os reservados permitir o que o projeto passe por uma verifica o sint tica Para incluir uma biblioteca no gerenciador atrav s de um espa o reservado esta deve ser selecionada no campo Biblioteca Padr o Assim poss vel catalogar as bibliotecas propostas de acordo com a empresa fornecedora Al m disto o nome do espa o reservado deve ser inserido no campo de edi o associado Para garantir a correta inser o do nome usa se a lista de sele o que oferece todos os nomes dos espa os reservados atualmente definidos nas descri es dos dispositivos Espa o Reservado no Projeto da Biblioteca Se o projeto estiver baseado em outras bibliotecas que n o as espec ficas do dispositivo estas dever o ser inclu das atrav s de espa os reservados 37 3 Comandos do Menu Isto significa que em vez de especificar uma biblioteca em particular a ser inclu da ser inserido um espa o reservado o qual posteriormente ser substitu do Quando a lt biblioteca xy gt for usada em outro projeto para um determinado dispositivo por exemplo este espa o reservado ser substitu do pelo nome de uma biblioteca definida especificamente pelo dispositivo Este nome deve ser especificado no respectivo arquivo de descri o do dispositivo lt biblioteca xy gt que atribui o nome do espa o reservado ao nome verdadeiro da biblioteca Se o gerenciador por qualquer raz o n o estiver atribu do ao dispositivo o espa o reser
259. para inicializa es de vari veis v lidas VAR vari INT 12 Vari vel inteira com valor tarea 12 x INT kort o7 Valor int ral detinidgo por uma express o com constantes Na ve INT ns DE sb EURO Valor afgciral detinido por uma express o contendo uma chamada de fun o Neste caso atente para a ordem z POINTER TO INT ADR v N o descrito pela norma TEC G1L1L31 37 valores aniticiais definidos por uma fun o de endere o Neste caso o ponteiro n o ser inicializado durante uma altera o online i END VAR Consulte os itens ARRAYS Estruturas Tipos Subrange e Express es Arbitr rias para Inicializa o de Vari veis Express es Arbitr rias para Inicializa o de Vari veis Uma vari vel pode ser inicializada com qualquer express o ST v lida poss vel acessar outras vari veis externas ao escopo assim como tamb m poss vel chamar fun es No entanto o programador deve certificar se de que a vari vel usada para inicializa o de outra vari vel j foi inicializada Exemplos para inicializa es de vari veis v lidas VAR x c INT c 13 Ss vo INT sx k fuan Ay Z 4 POINTER TO INT SADRY Cuaid do o ponteiro n o Sera nicralizad na altera o online END VAR Editor de Declara o O editor de declara o um editor textual ou tabular usado para a declara o de vari veis Usualmente fornecido em combina o com os editores
260. permitindo assim m ltiplas ramifica es em uma rede Cada subrede adquire um marcador pr prio simbolizado por um pequeno ret ngulo que pode ser selecionado para executar a es neste bra o da ramifica o Figura 5 68 Marcadores e Ramifica es Na rede FBD uma ramifica o inserida via comando Inserir Ramifica o Outra forma poss vel arrast la a partir da Caixa de Ferramentas Para verificar as posi es pass veis de inser o consulte Inserir Ramifica o no Manual de Utiliza o MasterTool IEC XE MU299048 179 5 Editores das Linguagens de Programa o NOTA Recortar e Colar n o pode ser realizado em subredes Veja o exemplo mostrado na Figura 5 69 uma ramifica o foi inserida na sa da da caixa SUB Assim foram criadas duas subredes cada qual selecion vel pelo seu pr prio marcador Em seguida uma caixa ADD foi adicionada em cada subrede Figura 5 69 Inser o de Ramifica o em FBD Para excluir uma subrede primeiramente remova todos os seus elementos todos aqueles posicionados direita do marcador da subrede A seguir selecione o marcador e use o comando Excluir lt DEL gt Veja na Figura 5 70 o elemento OR de 3 entradas deve ser exclu do antes de selecionar e excluir o marcador da subrede inferior Figura 5 70 Excluir Ramifica o e Subrede Execu o no modo online As ramifica es espec ficas ser o executadas da esquerda para a direita e de c
261. po dado em segundos por exemplo 0 5 para 500 milissegundos Tempo de a o derivativa ganho de unidade da parte D em segundos por exemplo 0 5 para 500 milissegundos Y MANUAL REAL Define o valor da sa da Y em caso da vari vel MANUAL TRUE Y OFFSET REAL Offset para a vari vel Y manipulada Y MIN Y MAX REAL Limites superior e inferior para a vari vel Y manipulada Se Y exceder estes limites a sa da LIMITS ACTIVE ser definida para TRUE e Y ser mantido neste intervalo determinado Este controle somente funcionar se Y MIN lt Y MAX PRE e Se TRUE a opera o manual ser ativada ou seja o valor manipulado ser definido por Y MANUAL e mma TRUE causa um reset no controlador Durante a reinicializa o Y Y OFFSET Tabela 6 5 Vari veis de Entrada PID Sa das do Bloco Funcional Tipo de dado RE REAL Valor manipulado calculado pelo bloco funcional LIMITS ACTIVE BOOL TRUE indica que Y excedeu os limites determinados Y MIN Y MAX OVERFLOW BOOL TRUE indica um overflow Tabela 6 6 Vari veis de Sa da PID Y OFFSET Y MIN e Y MAX servem para a transforma o da vari vel manipulada em um intervalo determinado MANUAL pode ser usada para alterar para a opera o manual RESET pode ser usado para reinicializar o controlador Na opera o normal MANUAL RESET LIMITS ACTIVE FALSE o controlador calcula o erro do controlador e como a diferen a de SET POINT ACTUAL e
262. pontos de interroga o em cada um For amento Escrita de Vari veis No modo online poss vel preparar um valor para for amento ou escrita de uma vari vel tanto no editor de declara o quanto na parte de implementa o Na parte de implementa o com um clique de mouse na vari vel o seguinte di logo se abrir Preparar Valor Express o Device Application MainPrg iInputlevel Tipo INT Valor Atual 2 O que voc deseja fazer g Preparar um novo valor para a pr xima opera o de escrita ou for amento Remover prepara o com um valor Liberar o for amento sem modificar o valor Liberar o for amento e restaurar a vari vel para o valor anterior a este em Figura 5 81 Di logo Preparar Valor Neste di logo encontra se o nome da vari vel complementado pelo seu caminho na rvore de dispositivos Express o seu Tipo e seu Valor Atual Ativando o item correspondente o usu rio escolhe o que deseja e Preparar um novo valor para a pr xima opera o de escrita ou for amento e Remover a prepara o com um valor 185 5 Editores das Linguagens de Programa o e Liberar o for amento sem modificar o valor e Liberar o for amento e restaurar a vari vel para o valor anterior a este A a o selecionada ser transmitida ap s a execu o do comando For ar Valores por padr o no menu Comunica o ou atrav s da tecla lt F7 gt Breakpoint e Posi es de Parada As poss ve
263. por SIZE a partir da esquerda na string STR Exemplo em IL LD SUST LEFT 3 ST Vara TRINGI O resultado SUS Exemplo em FBD LEFT SUSI a TR VYaraTRINGL 3 SIZE Exemplo em ST VarSIRINGIL 7 LEFT SUSI 3 Fornecido pela standard library Fun o do tipo STRING Retorna a string inicial da direita para uma determinada string Entradas STR STRING string a ser analisada SIZE INT n mero de caracteres a ser contado a partir da direita na string STR Valor de retorno STRING string inicial direita RIGHT STR SIZE retorna a quantidade de caracteres definida por SIZE a partir da direita na string STR Exemplo em IL LD anal RIGHT z ST vYarSTRING1 O resultado USP Exemplo em FBD RIGHT oUa a TE var STRINGI 5 SIE Exemplo em ST VarSTRINGL RIGHT SUSI 3 Fornecido pela standard library Fun o do tipo STRING retorna uma parte da string Entradas STR STRING string a ser analisada LEN INT comprimento da string parcial n mero de caracteres 189 6 Bibliotecas POS INT posi o de in cio para a string parcial n mero de caracteres contados a partir da esquerda de STR Valor de retorno STRING string parcial MID STR LEN POS significa recuperar os caracteres definidos por LEN da string STR iniciando com o caractere na posi o POS Exemplo em IL LD SUSE HID E 5 E ST varSTRING1 O resultado US Exemplo em
264. r 1 TO Ss BL I DO ENS INTL 27 IF INT1 0 THEN CONTINUE Para evitar a divis o por zero END IF Varl Varl INT1I Somente ser executada se INTL n o for O x END FOR Erg Varl Instru o EXIT Se a Instru o EXIT for utilizada em FOR WHILE ou la o REPEAT o la o mais interno ser finalizado independentemente da condi o definida Instru o JMP A instru o JMP pode ser usada como um salto incondicional para uma linha de c digo marcada por um r tulo de salto Sintaxe lt rotulo gt JMP lt rotulo gt lt R TULO gt um identificador qualquer por m nico localizado no in cio de uma linha do programa A Instru o JMP deve ser seguida pela indica o do destino do salto deve ser igual ao r tulo pr definido Quando a instru o JMP avaliada ocorre um salto no processamento para a linha rotulada no programa Exemplo 1 0 labell is i4l Instru es IF 1 lt 10 THEN JMP labell END IF 66 99 1 Enquanto a vari vel 1 inicializada com zero for menor que 10 a instru o de salto condicional do exemplo acima provocar repetidos saltos para a linha do programa identificada com LABELI e portanto causar um processamento repetido das instru es compreendidas entre o r tulo e a instru o JMP Uma vez que estas instru es incluem tamb m o incremento da vari vel 1 pode se assegurar que a condi o de salto resultar FALSE na nona verifica
265. r o recuadas sob ela Al m dos identificadores expl citos da vers o est dispon vel um sinal que significa ltima vers o Assim poss vel escolher uma entre as vers es Por padr o entretanto esta op o est desativada e somente a ltima vers o exibida Tamb m poss vel realizar uma multisele o de bibliotecas basta manter a tecla lt SHIFT gt pressionada ao mesmo tempo em que se realiza a sele o das mesmas Ap s a confirma o da sele o via OK as bibliotecas s o adicionadas lista na janela do Library Manager Para incluir uma biblioteca ainda n o instalada no sistema local usa se o bot o Reposit rio de Bibliotecas o qual abre o di logo que permite realizar a instala o NOTA O di logo Reposit rio de Bibliotecas s est dispon vel se as caracter sticas pr definidas escolhidas pelo usu rio for Profissional ou se a op o Habilitar Di logo de Reposit rio estiver habilitado Para mais informa es sobre caracter sticas consulte Caracter sticas no Manual de Utiliza o MasterTool IEC XE MU299048 36 3 Comandos do Menu Subdi logo Espa o Reservado Acrescentar Biblioteca Biblioteca Espa o Resevado Espa os reservados s o usados para induir bibliotecas especificas do dispositivo ao projeto O espa o reservado ser resolvido com uma biblioteca real dependendo da informa o armazenada na descri o do dispositivo 5e este g
266. r essas vari veis normalmente em qualquer POU do projeto Se o pragma for retirado da GVL 2e as vari veis da GVL 1 forem utilizadas em alguma POU ser exibido um erro na compila o do projeto Atributo Hide Com a ajuda do pragma attribute hide poss vel evitar que vari veis ou at mesmo assinaturas inteiras sejam exibidas na funcionalidade Listar Componentes no di logo Assistente de Entrada ou na parte de declara o no modo online Somente a vari vel subsequente ao pragma ser oculta Sintaxe attribute hide Para ocultar todas as vari veis locais de uma assinatura use este atributo Exemplo O bloco funcional myPOU implementado com o atributo FUNCTION BLOCK myPOU VAR INPUT a INT attribute hide a invisible BOUL a Vko roler BOOL END VAR VAR OUTPUT De CNT END VAR VAR END VAR No programa principal s o definidas duas inst ncias deste bloco funcional PROGRAM mainprg VAR FOUL POUZS myPOU END VAR Ao atribuir se um valor de entrada para POUI a fun o Listar Componentes em POUL1 por exemplo na parte de implementa o de MamPrg ser o exibidas as vari veis A A visible e B A vari vel oculta A invisible n o ser exibida Atributos Hide all locals Com a ajuda do pragma attribute hide all locals poss vel evitar que todas as vari veis locais de uma assinatura sejam exibidas na funcionalidade Listar Componentes no di logo Assistente de Entrada Este atributo tem
267. ra es SFC para uma POU SFC inicialmente s o determinadas pelas defini es atualmente configuradas no di logo Op es SFC Observe que a declara o de uma vari vel de mem ria feita somente atrav s do di logo Configura es SFC somente ser vis vel na visualiza o online da POU SFC Exemplo do uso do SFCError h uma POU SFC nomeada sfcl contendo um passo s2 com limites de tempo definidos nos atributos de passo Veja os atributos exibidos na Figura 5 34 146 5 Editores das Linguagens de Programa o Se por alguma raz o o passo s2 permanece ativo por um tempo maior que o permitido por suas propriedades overflow de tempo uma mem ria SFC a qual pode ser lida pela aplica o pode ser definida Para permitir este acesso declare a mem ria no di logo Configura es SFC Para tal selecione sfcl na janela Dispositivos e POUs e escolha o comando Propriedades a partir do menu de contexto Abra o subdi logo Configura es SFC e na guia Mem rias marque as colunas Declarar e Usar para a mem ria SFCError Escolher somente Declarar deixaria a vari vel vis vel na visualiza o online da parte de declara o de sfcl por m isto n o teria nenhuma fun o Propriedades S EXAMPLE Device PLC Logic Application Controle de Acessa Configura es SFC Usar Vari vel Declarar Descri o F amp FCInit F Reset dos passos e a es O passo inic SFCReset F Reset dos passos e a es O passo inic
268. ra o aritm tica Veja no exemplo seguinte em nota o hexadecimal que diferentes resultados podem ser obtidos para erg byte e erg word dependendo do tipo de dado da vari vel de entrada BYTE ou WORD embora os valores das vari veis de entrada in byte eim word sejam os mesmos Exemplo em ST PROGRAM TOl St VAR in byte BYTE 164 45 in word WORD 16 45 erg Dyte BYTE erg word WORD n BYTE 4 2 END VAR erg byte ROL in byte n O resultado 16f15 erg word ROL in word n O resultado 16 0114 Exemplo em FBD in byte erg byte n Exemplo em IL L in_byte ROL n ST erg byte Operador IEC rota o de bitwise de um operando para a direita erg ROR in n Tipos de dados permitidos BYTE WORD DWORD e LWORD In ser deslocado uma posi o de bit para a direita n vezes enquanto o bit que est mais a esquerda ser reinserido a partir da esquerda NOTAS Observe que a quantidade de bits necess ria para a opera o aritm tica deve ser aquela pretendida pelo tipo de dado da vari vel de entrada Se a vari vel de entrada for uma constante ser considerado o menor tipo de dado poss vel O tipo de dado da vari vel de sa da n o tem efeito na opera o aritm tica Veja no exemplo seguinte em nota o hexadecimal que diferentes resultados podem ser obtidos para erg byte e erg word dependendo do tipo de dado da vari vel de entra
269. ra a opera o aritm tica deve ser aquela pretendida pelo tipo de dado da vari vel de entrada Se a vari vel de entrada for uma constante ser considerado o menor tipo de dado poss vel O tipo de dado da vari vel de sa da n o tem efeito na opera o aritm tica Veja no exemplo seguinte em nota o hexadecimal que diferentes resultados podem ser obtidos para erg_byte e erg_word dependendo do tipo de dado da vari vel de entrada BYTE ou WORD embora os valores das vari veis de entrada in_byte e in_word sejam os mesmos Exemplo em ST PROGRAM shl st VAR in byte BYTE 16 45 in word WORD 16 45 Srg Byte B IE erg word WORD n BYTE 52 END VAR erg byte SHL in byte n O resultado 16 14 erg word SHL in word n O resultado 164 0114 Exemplo em FBD 1 Erg byte Exemplo em IL LD in byte SHL ST erg byte 91 SHR ROL 4 Refer ncia de Programa o Operador deslocamento bitwise direita de um operando erg SHR in n in operando a ser deslocado para a direita n n mero de bits pelos quais 1n deslocado para a direita Se n exceder o tamanho do tipo de dado os operandos do tipo BYTE WORD DWORD e LWORD ser o preenchidos com zeros Os operandos de tipos de dados atribu dos como por exemplo INT obter o um deslocamento aritm tico ou seja eles ser o preenchidos com o valor do pr ximo bit NOTAS Observe que a quantidade de
270. ra a vari vel booleana apropriada Desta forma um contato negado somente ser conectado se o valor booleano apropriado for FALSE Uma bobina pode ser inserida em uma rede atrav s do comando Inserir Atribui o o qual por padr o faz parte do menu FBD LD Alternativamente o elemento pode ser inserido via arrastar e soltar a partir da Caixa de Ferramentas elementos Ladder ou a partir de outra posi o no editor Veja tamb m Bobinas Set Reset FBD IL Se o usu rio estiver trabalhando na visualiza o das redes FBD ou IL o comando n o estar dispon vel por m contatos e bobinas de uma rede LD podem ser representados pelos elementos FBD e Instru es IL correspondentes Set Reset em FBD LD IL FBD LD Uma sa da booleana em FBD ou correspondentemente uma bobina LD pode ser definida como Set ou Reset Para alternar estes estados usam se os comandos Set Reset respectivamente a partir do menu de contexto quando a sa da estiver selecionada A sa da e a bobina ser o marcadas com S ou R Set se o valor TRUE configurado em uma sa da ou bobina Set estas se tornar o TRUE e assim permanecer o Este valor n o pode ser sobrescrito nesta posi o enquanto a aplica o estiver sendo executada Reset se o valor TRUE configurado em uma sa da ou bobina Reset estas se tornar o FALSE e assim permanecer o Este valor n o pode ser sobrescrito nesta posi o enquanto a aplica o estiver sendo executada byarl Slb
271. ragma de Atributo Pragmas de atributo podem ser atribu dos a uma assinatura para influenciar a compila o e a pr compila o isto a gera o de c digo Existem pragmas definidos pelos usu rios que podem ser usados em combina o com pragmas condicionais e tamb m existem os pragmas de atributo pr definidos como padr es Atributo displaymode Atributo global init slot Atributo hide Atributo hide all locals Atributo Int Namespace Atributo mit on onlchange Atributo instance path Atributo linkalways Atributo Monitoring 57 4 Refer ncia de Programa o Atributo no check Atributo noinit Atributo obsolete Atributo pack mode Atributo qualified only Atributo reflection Atributo symbol Atributos Definidos pelo Usu rio Atributos de pragmas podem ser atribu dos a POUs declara es de tipo ou vari veis e podem ser definidos por usu rios arbitr rios ou atrav s de uma aplica o Estes atributos podem ser selecionados antes da compila o por meio de pragmas condicionais Sintaxe attribute atributo Esta instru o de pragma v lida para a linha atual ou para a subsequente esta ltima no caso do cursor estar posicionado em uma linha separada Consulte o item Pragmas Condicionais Um atributo definido pelo usu rio pode ser atribu do aos seguintes objetos e POUse A es e Vari veis e Tipos Exemplo de POUs e a es Atributo displaymode para a vari
272. rama o Sintaxe WHILE lt Express o booleana gt DO lt Instri es gt END WHILE lt INSTRU ES gt ser executado repetidamente enquanto lt EXPRESS O BOLEANAOS retornar TRUE Se lt EXPRESS O BOLEANA gt for FALSE na primeira avalia o ent o lt INSTRU ES gt n o ser executado Se lt EXPRESS O BOLEANA gt nunca assumir o valor FALSE ent o lt INSTRU ES gt ser repetido indefinidamente fazendo a aplica o travar e por consequ ncia causar a entrada em c o de guarda em fun o do estouro deste par metro configurado na tarefa correspondente NOTA O programador deve certificar se de que n o foi gerado um la o infinito Esta verifica o feita alterando se a condi o na parte de instru es do la o por exemplo incrementando um contador para cima ou para baixo e usando o como condi o Exemplo WHILE Counter lt gt 0 DO Varl Varl 2 Counter i Countetr L END WHILE Os la os WHILE e REPEAT s o de certa forma mais poderosos que o la o FOR uma vez que n o precisam saber o n mero de ciclos antes da execu o do la o Em alguns casos portanto somente poss vel trabalhar com estes dois tipos de la os Se entretanto o n mero de ciclos de la o estiver definido um la o FOR prefer vel j que este n o permite la os infinitos A instru o CONTINUE pode ser usada em um la o WHILE La o REPEAT O la o REPEAT diferente do WHILE pois a condi o d
273. ransforma se em uma seta e com ela poss vel selecionar os elementos na janela do editor para posicion los e edit los Elementos S mbolo Pino Representa o Significado O texto 779 pode ser selecionado e substitu do por uma constante O di logo Assistente de Entrada serve para selecionar um identificador v lido para a entrada O texto 779 pode ser selecionado e substitu do por uma constante O di logo Assistente de Entrada serve para selecionar um identificador v lido para a sa da Uma caixa pode ser usada para representar operadores fun es blocos funcionais e programas O texto 277 pode ser selecionado e substitu do pelos objetos acima citados usando o Assistente de Entrada Caso um bloco funcional seja inserido outro texto 277 ser exibido acima da caixa e deve ser substitu do pelo nome da inst ncia do bloco funcional Caso uma caixa existente seja substitu da por outra alterando o nome e a nova tenha um n mero diferente de pinos de entradas ou sa da estes pinos sofrer o uma adapta o Caso alguns pinos devam ser exclu dos o inferior ser removido primeiro O salto usado para indicar em qual posi o a execu o do programa deve continuar A posi o definida por um r tulo Substitua o texto pelo nome do r tulo R tulo Um r tulo marca a posi o para qual o programa 125 5 Editores das Linguagens de Programa o DO Saltar vejaacim
274. ransi o Eh dispon vel na rvore das POUs o que permite o uso de v rias transi es Veja por exemplo t1 na coluna esquerda e Uma express o condicional v lida il Library Manager E AS EXAMPLE PRG ati act EM count Ex m m o om m F Figura 5 20 Transi o na rvore das POUs Condi es de transi o ud inseridas diretamente E POU FE 5 ia Prop E Get ER Set ES TRANS Figura 5 22 Transi o ou Propriedade Indicados por um Tri ngulo Uma condi o de transi o deve ter os valores TRUE ou FALSE Assim sendo ela consiste em uma vari vel booleana um endere o booleano uma constante booleana ou uma s rie de instru es com um resultado booleano No entanto uma transi o n o pode conter programas blocos funcionais ou atribui es 138 A o 5 Editores das Linguagens de Programa o Uma condi o de transi o tratada como uma chamada de m todo Ela ser inserida de acordo com as sintaxe lt Nome da transi o gt lt condi o da condi o gt por exemplo transl a 100 amp Ou lt Condi o de transi o gt por exemplo a 100 Veja tamb m t1 na coluna esquerda No modo online o passo subsequente apenas pode tornar se ativo se a transi o precedente tornar se TRUE S mbolo EA Uma a o pode conter uma s rie de instru es escritas em uma das linguagens de programa o v lidas Ela atrib
275. rcept vel em PV A Figura 6 25 representa um degrau na sa da MV aplicado no instante t0 e a resposta de um sistema linear de primeira ordem com tempo morto Pvit PV PW gt tis ig Hs Figura 6 25 Degrau em MV e Resposta do Sistema ao Degrau 231 6 Bibliotecas Atrav s da Figura 6 25 pode se obter todas as constantes necess rias para a determina o dos par metros do controlador O ganho est tico do processo obtido atrav s da raz o entre a varia o da vari vel medida e a varia o da vari vel de atua o ou seja K PW PV MV MV O tempo morto Tm o tempo entre o momento de aplica o do degrau em MV t0 e o in cio da resposta do sistema A constante de tempo do sistema T o tempo entre o in cio da rea o do sistema e 63 212 do valor final de PV PV isto 0 6320 PV PV PV2 PV A partir das constantes do sistema K Tm e T pode se obter os par metros do controlador utilizando as f rmulas da tabela abaixo Tipo de Controlador GP T K Tr Tm dt 2 TisT Td Tm 2 dt 4 Proporcional Integral e Derivativo PID Tabela 6 16 Par metros do Controlador Ganhos X Escalas importante lembrar que o ganho proporcional somente executar sua a o de modo correto quando tanto a entrada como a sa da do sistema utilizarem as mesmas escalas Por exemplo um controlador proporcional com ganho unit rio e entrada PV util
276. re MasterTool IEC XE disponibiliza um template denominado Projeto MasterTool Padr o o qual deve ser selecionado pelo usu rio como modelo na cria o de um projeto A nova aplica o ser desenvolvida conforme um determinado perfil tamb m escolhido pelo usu rio adotando as regras caracter sticas e padr es pr definidos Cada perfil de projeto define nomes padronizados para tarefas e programas Para garantir a compatibilidade de um projeto a um determinado perfil ao longo do desenvolvimento s o utilizadas duas abordagens e O MasterTool IEC XE somente permite a cria o de projetos baseados em um template selecionando ao mesmo tempo o perfil a ser utilizado e Na gera o de c digo o MasterTool IEC XE realiza a verifica o de todas as regras definidas para o perfil v lido para o projeto Para maiores detalhes sobre os perfis consultar se o Perfis no Manual de Utiliza o UCPs S rie Nexto MU214100 no cap tulo Programa o Inicial Um projeto cont m os objetos das POUs que comp em um programa do CP assim como as defini es dos objetos de recursos necess rios para executar uma ou mais Inst ncias do programa aplica o em determinados sistemas destino CPs dispositivos Objetos de POUs podem ser gerenciados na janela de visualiza o das POUs ou na janela de visualiza o dos dispositivos POUs criadas a partir do wizard aparecem na janela visualiza o dos dispositivos e os objetos de recursos espec
277. re o Master Tool IEC XE e o dispositivo controlador esta opera o feita via gateway componente e um sistema de execu o Interface padr o e profissional configura es pr definidas oferecem a possibilidade de escolher entre uma interface de usu rio padr o sele o reduzida de configura es com menor complexidade ou um ambiente profissional o qual suporta todas as configura es A escolha entre estas op es feita quando o programador inicializado ap s a primeira instala o no sistema por m poss vel alterar esta op o posteriormente assim como se pode tamb m adotar uma customiza o definida pelo usu rio Para conhecer mais detalhes sobre as diferen as espec ficas entre as vers es padr o e profissional consulte Caracter sticas no Manual de Utiliza o Master Tool IEC XE MU299048 Funcionalidades Avan adas A seguir s o apresentadas as funcionalidades avan adas dispon veis no MasterTool IEC XE Orienta o a Objetos na Programa o e na Estrutura do Projeto Extens es para blocos funcionais Propriedades M todos Heran a Invoca o de M todo 2 Conceitos e Componentes B sicos Aplica es vinculadas a dispositivos como Inst ncias de objetos de programa o independentes Tipos de Dados Especiais UNION LTIME Refer ncias Enumera es tipos de dados b sicos podem ser especificados DI DINT DINTH16HFFFFFFFF Operadores e Vari veis Especiais Op
278. ring STR ser atribu da ao caminho da inst ncia myPOU da POU por exemplo Device Application MainPrg myPOU Este caminho ser atribu do vari vel myString no programa principal NOTA O tamanho de uma vari vel string pode ser definida arbitrariamente at 255 entretanto esta string ser truncada a partir de seu final se for atribu da a uma vari vel de tipo de dados menor Atributo Linkalways O pragma attribute linkalways permite selecionar as POUs no compilador de forma que elas sempre sejam inclu das nas informa es de compila o Como resultado os objetos com esta op o sempre ser o compilados e enviados para o CP Esta op o refere se somente a POUs e GVLs localizadas em uma aplica o ou a bibliotecas inseridas nesta A op o do compilador Vincular Sempre faz o mesmo Sintaxe attribute linkalways As POUSs marcadas s o usadas como base para as vari veis selecion veis para a configura o de s mbolos ao usar o editor correspondente Exemplo A lista de vari veis globais GVLMoreSymbols implementada com o uso deste atributo attribute linkalways VAR GLOBAL g 1Varl INT S Varz INT END VAR Atributo Monitoring Uma propriedade pode ser monitorada no modo online de um editor ou atrav s da janela Monitora o A monitora o pode ser ativada atrav s da adi o do atributo de pragma de monitora o na linha acima da defini o da propriedade Desta forma na
279. rma poss vel editar assim como na visualiza o do editor principal e entrar na se o desejada do gr fico SFC Para sair use o comando Zoom fora da macro A linha de t tulo do editor da macro sempre mostra o caminho da macro no SFC atual Macrol gt MacroZ Era Figura 5 33 Linha de T tulo do Editor da Macro Qualificador Para configurar como as a es devem estar associadas aos passos IEC s o inseridos nelas alguns qualificadores no campo correspondente 144 5 Editores das Linguagens de Programa o Estes qualificadores s o tratados pelo bloco funcional SFC ActionControl da IecSfc library o qual automaticamente inclu do em um projeto atrav s das funcionalidades do SFC S o eles Qualificador Nome Descri o continua at que esta seja desativada Limitado no tempo A a o inicia quando o passo se torna ativo e assim continua at que este seja desativado ou at que um tempo determinado tenha transcorrido Atrasado no tempo Um temporizador por atraso inicia quando o passo se torna ativo Se este se mantiver ativo ap s o atraso a a o inicia e continua at que o passo seja desativado Pulso A a o inicia quando o passo se torna ativo inativo e executada uma vez Armazenado e A a o inicia ap s o tempo de atraso e se mant m at atrasado no tempo o reset Atrasado e Se o passo ainda est ativo ap s o tempo de atraso armazenado especificado a a o inicia e c
280. rocessada quando a vari vel test apresenta o valor 2 Xi X 2 END IF Inverte o valor do operador Exemplo Pr requisito Em um cen rio a fun o CheckBounds foi adicionado ao projeto e em outra situa o n o a POU MainPrg existe em ambos os casos Em uma POU existe o c digo abaixo IF defined pou MainPrg AND NOT defined pou CheckBounds A seguinte linha de c digo somente ser executada no cen rio em que n o h a fun o CheckBounds bAndNotT est TRUE END IF Ser TRUE se ambos operadores forem TRUE Exemplo Pr requisito Em um cen rio a fun o CheckBounds foi adicionado ao projeto e em outra situa o n o a POU MainPrg existe em ambos os casos Em uma POU existe o c digo abaixo IF defined pou MAINPRG AND defined pou CheckBounds A seguinte linha de c digo somente ser processada no primeiro cen rio pois somente ali MainPrg e CheckBounds est o definidos bAndTest TRUE END IF Ser TRUE se um dos operadores for TRUE Exemplo Pr requisito Em um cen rio a fun o CheckBounds foi adicionado ao projeto e em outra situa o n o a POU MainPrg existe em ambos os casos Em uma POU existe o c digo abaixo IF defined pou MAINPRG OR defined pou CheckBounds A seguinte linha de c digo ser processada nos dois cen rios pois ambos cont m no m nimo uma das POUs bOrTest TRUE END IF 70 4 Refer ncia de Program
281. rramentas saias a pao a aC a DAE Tae ais da ac aae abs due aasm aa danacanagadas 136 Ouallicadors as asas a a dO OO O io a ECC CLEO DU Da E Re REGA 144 Vari veis impl citas Memoras SPO ca cuca asso pus aBIs cars atesta ada da E a EEEO 145 Sequenciade Processamento no SPC ss sssssess aca casas a ETETE OEE 150 Eater TETON OSOE S 151 Texto Estruturado ST Texto Estruturado Estendido EXST 0 0000000000eososeososeosssosessosessosesssssssssoo 152 Express OCS pusisa saio duda dd e e do eero orete o pidi as asas 152 LASTRUC ES rasaasiaa scan anna areia nana ra and at ada ana ga SN 154 Editor S Eisoentaitodraiac es irarenii danado EER 160 Editor ST Tno Modo Onne sserrep pie Eb so Uh fc aiii al cd OE 0 a E a 160 Conor EBED I ad a TOE OESE 163 Diagrama de Blocos Funcionais FBD acuadanidanadaaadasdda casado dado a do ao a a a 163 Ena rama ada re DD S a Gelada aa RODADOS A Io Rana sho a asa ano TE 164 Crede oee banaa 2 2 PORRA PN RN 164 Trabalhando na Visualiza o dos Editores FBD e LD erre eeree erre rreeaarea 167 Trabalhando na Visualiza o do Editor IL cr eererererrrer er eee ear re ren re eee rena re nannrera 169 Posicoes do Cinrsoren EBD LD eT irao Dr DN VN S 173 Menu FBD CDM rr E E E E AA E 175 E O sais aa aaa E EEA 176 O BIBLIOTECAS aaa E T E po ni uia nada 188 A Bibh teca Standard Brady assiiiassisiicassiesadasa toda so nsisilnciscadaioda facadas idas a LL OLA OU RR ii 188 E UnC O CSMCO SITE ota tata d
282. rrtode WORD 0 da stRotate wars For Fifth network STRING poor abr Ave wars For Fifth network DINT 38 a TRUE 200 FALSE 4 POUTocall MyCounter Counter HyDomCounter Decrement ErrCode 0 5 stRotate stRotate Figura 5 78 Visualiza o Online de um Programa FBD e luar iRes iTemp LD PLC PRG ix m AD j2 add Z ST iTenp E Jstore to temp E LD PLC PRG iX ADI 1 sT iVar E CAL PRGI call programm PROL iln iVar ibut gt ires l46s iore iut to ires Figura 5 79 Visualiza o Online de um Programa IL Na visualiza o online as redes Ladder apresentam conex es animadas conex es com valor TRUE s o exibidas em negrito azul e as de valor FALSE em negrito preto As conex es com valor desconhecido ou com valor anal gico s o exibidas em preto padr o 184 5 Editores das Linguagens de Programa o Expression Type Value Prepared value A T66 TON T67 TOF GTS TON QT TON q Ts2 TON PTS TON vi 13 z TEMPLATE CHAIN CONV IX143 0 IX143 6 IX145 1 IX145 1 MX50 1 IP1430 1P1436 IP1451 IP1451 501 jE C 0 sMX5 0 1 IX143 7 501 1P1437 0 0 14 RQ v lt gt Figura 5 80 Visualiza o Online de um Programa LD Observe a visualiza o online de uma POU do tipo bloco funcional na parte de implementa o n o ser o visualizados valores nas janelas de monitora o e sim o lt Valor da express o gt Os campos de monitora o em linha na parte de implementa o apresentar o tr s
283. s o indicados por uma sequ ncia de caracteres especiais 120 4 Refer ncia de Programa o Sintaxe Endere o com bit s lt Prefixo da rea de mem ria gt lt Tamanho do prefixo gt lt n mero n mero gt Endere o sem bit lt lt Prefixo da rea de mem ria gt lt Tamanho do prefixo gt lt n mero gt peee Entrada entradas f sicas via driver de entrada sensores FOR Sa da sa das f sicas via driver de sa da atuadores Posi o da mem ria Tabela 4 14 Prefixos da rea de Mem ria Suportados B Brebis o Ww wod ebit S D Double wora 32 bts o Tabela 4 15 Prefixos de Tamanho Suportados Exemplos Exemplo Descri o O O OZ OO SS O QX7 5 Bit de sa da 7 5 IW215 Word de entrada 215 QB7 Byte de sa da 7 Y MD48 Double Word na posi o de mem ria 48 ivar AT YIWO WORD Exemplo de uma declara o de vari vel incluindo uma atribui o de endere o Tabela 4 16 Exemplos de Endere amento Para atribuir um endere o v lido em uma aplica o primeiramente necess rio conhecer a posi o adequada da mem ria na imagem do processo ou seja a rea de mem ria a ser usada Entrada TI Sa da Q ou Mem ria M conforme mencionado acima A seguir especifique o tamanho desejado bit byte word e dword veja acima X B W D A configura o atual do dispositivo e as defini es estrutura de hardware descri o do dispositivo configura es de E S t
284. s vel do cursor Consulte Trabalhando na Visualiza o do Editor IL Editores FBD e LD Estes s o editores gr ficos Os seguintes exemplos mostram as posi es poss veis do cursor texto entrada sa da caixa contato bobina linha entre elementos subrede e rede A es como recortar copiar colar excluir e outros comandos espec ficos do editor referem se posi o atual do cursor e ao elemento selecionado Consulte Trabalhando na Visualiza o dos Editores FBD e LD No FBD basicamente h um ret ngulo pontilhado em volta do respectivo elemento indicando a posi o atual do cursor e adicionalmente os textos e caixas adquirem um sombreado azul e vermelho respectivamente Nas bobinas LD os contatos tornam se vermelhos assim que o cursor nelas posicionado A posi o do cursor determina quais elementos est o dispon veis no menu de contexto para serem inseridos Posi es poss veis do cursor Nos campos de texto na figura da esquerda as posi es poss veis do cursor est o marcadas com uma moldura vermelha A figura da direita mostra uma caixa com o cursor posicionado no campo AND Observe a possibilidade de digitar endere os em vez de nomes de vari veis desde que configurados adequadamente no di logo Op es guia Editores FBD LD e IL AHD erg 22 byara E Figura 5 52 Campos de Texto e Em cada entrada erg a RETURNI Figura 5 53 Entradas RETURN b jump target e Em cada operador
285. s convers es cujo formato n o BCD a sa da 1 Exemplos em ST i BCD TO INT 73 Resultado 49 k BCD TO INT 151 Resultado 97 202 6 Bibliotecas LE BC TO INES Salda Sl pois n o Csta n formato BCO 3 INT TO BCD Fornecido pela util hbrary Esta fun o converte um valor INTEIRO em um byte no formato BCD O valor de entrada da fun o do tipo INT e a sa da do tipo BYTE O n mero 255 ser gerado quando um valor INTEIRO que n o pode ser convertido para o formato BCD for considerado Exemplos em ST SUNT TO BODISI Resultado e 3 8 INE TO BCD 9177 A Resultado 19L 3 ENT TO BCDALOO S 7 ERTO oada LTE T ks IE Fun es BIT BYTE Extract Pack Putbit Unpack Fornecido pela util library As entradas desta fun o s o DWORD X e BYTE N A sa da um valor BOOL com o conte do do en simo bit da entrada X onde a fun o inicia a contagem a partir do bit zero Exemplos em ST FLAG EXTRACT X 81 N 4 Resultado TRUE porque 81 em bin rio 101000 entao o quarto ba Ec db 7 FLAG EXTRACT X 33 N 0 Resultado TRUE porque 33 em bin rio 100001 ent o o bit 0 1 Fornecido pela util library Esta fun o retorna oito bits de entrada do tipo BOOL BO B1 B7 como um BYTE O bloco funcional UNPACK est relacionado a esta fun o Veja mais detalhes e exemplos em Unpack Fornecido pela util libr
286. s de tempo padr o Al m da constante TIME cujo tamanho 32 bits e est em conformidade com a norma IEC 61131 3 LTIME suportada como base de tempo para temporizadores de alta resolu o LTIME tem o tamanho de 64 bits e resolu o em nanosegundos Sintaxe para a constante TIME Ti lt Declara o do tempo gt Em vez de TH tamb m poss vel usar tt timef e TIMER A declara o de tempo pode incluir as unidades de tempo descritas abaixo Elas devem ser usadas na sequ ncia a seguir por m n o necess rio utilizar todas elas dq dias h horas m minutos 66 99 s segundos ms milissegundos 66 Exemplos de constantes TIME corretas em uma atribui o ST TIME1 T 1l4ms TIME1 T 100S12ms O componente mais alto pode exceder este limite TIMEL tf1l2hn34mls5ss 115 4 Refer ncia de Programa o Abaixo exemplos de utiliza o incorreta TIMET Comos Limite excedido em um componente inferior TIMET lEmsp Est faltando o Th TIME1 t 4ms13d Ordem incorreta dos itens Sintaxe para a constante LTIME LTIMEf lt Declara o do tempo gt Al m das unidades de tempo usadas com a constante TIME veja acima a declara o de tempo pode incluir 66 29 e us microssegundos c6 29 e ns nanosegundos Exemplos de constantes LTIME corretas em uma atribui o ST LTIME1 LTIME 1000d15h23m1i 2s3
287. s ocorre na mesma ordem de tempo de um ciclo do CP Sempre que o tempo de ciclo do CP for maior que o tempo de amostragem aconselha se o uso das fun es REFRESH INPUT e REFRESH OUTPUT Feedforward Bias Atrav s do operando mem ria utilizado para feedforward bias poss vel injetar alguma vari vel do sistema na sa da do controlador e ou aplicar um deslocamento na mesma O objetivo do feedforward medir os principais dist rbios do processo e calcular a mudan a necess ria na vari vel de atua o para compens los antes que estes causem altera es na vari vel controlada Pode se citar como exemplo um sistema onde a vari vel a ser controlada a temperatura de uma mistura quente Numa determinada fase do processo necess rio derramar gua fria nesta mistura Sem o feedforward seria necess rio esperar a gua fria mudar o estado da mistura para ent o o controlador gerar a a o corretiva Utilizando o feedforward um valor associado temperatura da gua fria seria injetado na sa da do controlador fazendo com que este tome uma a o corretiva antes mesmo da gua fria come ar a alterar o estado da mistura quente agilizando a resposta do controlador O bias utilizado sempre que se deseja aplicar algum deslocamento sobre a sa da do controlador Controle em Cascata Provavelmente o controle em cascata uma das t cnicas de controle avan ado mais utilizadas na pr tica E composto por pelo menos duas malhas de c
288. s operandos Operador de bitstring IEC bitwise AND de operandos de bit Se os bits de entrada forem 1 o bit resultante ser 1 Caso contr rio ser 0 Tipos permitidos BOOL BYTE WORD DWORD e LWORD Exemplo em IL LD 1001 0011 AND 1000 JOJO ST varl O resultado em Var1 2 1000_0010 Exemplo em ST VAR Varl BYTE END VAR vari i 291001 0011 AND 271000 1010 Exemplo em FBD 281001 0011 varl 2 1000_1010 Operador de bitstring IEC OR bitwise de operandos de bit Se no m nimo um dos bits de entrada for 1 o bit resultante ser 1 Caso contr rio ser 0 Tipos permitidos BOOL BYTE WORD ou DWORD e LWORD 89 XOR NOT 4 Refer ncia de Programa o Exemplo em IL LD 1001 0011 OR SB LO0O JOJO ST varl O resultado em var1 do tipo BYTE 2 1001_1011 Exemplo em ST Varl 2 1001 0011 OR 271000 1010 Exemplo em FBD 1001 0011 varl 2 1000_1010 Operador de bitstring IEC opera o XOR bitwise de operandos de bit Se apenas um dos bits de entrada for 1 o bit resultante ser 1 Se ambos ou nenhum forem 1 o bit resultante ser 0 Tipos permitidos BOOL BYTE WORD DWORD e LWORD NOTA Observe o comportamento da fun o XOR na forma estendida se houver mais de 2 entradas As entradas ser o verificadas em pares e os resultados espec ficos ser o ent o comparados novamente em pares isto est e
289. s para os tipos de dados espec ficos Tipo de dado Limite inferior Limite superior Conte do da Coment rio informa o 16 Bits Ww Bit string n o para opera es aritm ticas DWORD 32 Bits dw Bit string n o para opera es aritm ticas LWORD 64 Bits Iw N o para opera es aritm ticas usm Jo es eme Joa o C em T A E A Conr aaraa arasa sess a OOOO O A E a om s 54 um o o um o 5100 em fu o Dea o o em ro o EC O O SO A Csm 0 o o o fo fo me o o Do fm meoc pay o orte anome O Doe o o o S oo Crone D o o Tabela 4 1 Tipos de Dados Nota x Especificamente para vari veis Booleanas o prefixo escolhido o x para diferenciar de BYTE e para adaptar se percep o do programador IEC Veja ana A IX0 0 Exemplos bySublindex BYTE sFi leName STRING udiCounter UDINT Nas declara es aninhadas os prefixos s o anexados uns aos outros na ordem das mesmas Exemplo pabyIelegrambata POINTER TO ARRAY Os T OF BYTE Inst ncias de blocos funcionais e vari veis de tipos de dados definidos pelo usu rio assim como um prefixo obt m um atalho para o nome do tipo de dado FB por exemplo sdo 42 4 Refer ncia de Programa o Exemplo cansdoReceivedTelegram CAN SDOTelegram TYRE CAN cSDOTelegram Pretirxos do STRUCT windex WORD bySubIndex BYTE byLen BYTE abre ABRA OrsS O BYTES END STRUCT END TYPE As constantes loc
290. sa fbil fboutl a t Figura 5 11 Posi es de Breakpoint no Editor CFC NOTA Nos m todos um breakpoint ser configurado automaticamente em todos os m todos em que puder ser chamado Se um m todo for chamado via um ponteiro em um bloco funcional os breakpoints ser o configurados no m todo do bloco funcional e em todos os blocos funcionais derivados que o subscrevem Editor SFC O editor SFC est dispon vel para objetos de programa o na linguagem Sequenciamento Gr fico de Fun es SFC da norma IEC 61131 3 A linguagem deve ser escolhida no momento em que uma nova POU adicionada ao projeto via comando Acrescentar Objeto O editor SFC um editor gr fico Configura es gerais referentes ao comportamento e exibi o s o feitas no di logo Op es do Editor SFC O editor SFC est dispon vel na parte inferior da janela que se abre ao editar uma POU SFC Na sua parte superior aparece o Editor de Declara o 131 5 Editores das Linguagens de Programa o wa amp o y Passo Inicial E Ca Ft e4 6 5 BI Acrescentar A o de Entrada POIS o Ca Acrescentar A o de Sa da gt P gina Inicial EE Configuration Bus ORIONI Pf Inserir Transi o de Passo 1 PROGRAM PRG3 ER Informa es do Projeto P4 Inserir Transi o de Passo Ap s E Z VAR Configura es do Projeto 3 INICIALIZAR BOOL 4 END VAR Inserir Ramifica o Inserir Ramifica o Direita Inserir As
291. si o Entradas STR STRING string da qual uma parte deve ser exclu da LEN INT comprimento da string parcial a ser exclu da n mero de caracteres POS INT posi o na STR onde deve iniciar a exclus o dos caracteres LEN contando a partir da esquerda Valor de retorno STRING a string remanescente ap s a exclus o DELETE STR L P significa excluir L caracteres da STR come ando com o caractere na posi o P Exemplo em IL LD SUXYSI DELETE 2 3 ST YarSTRINGI O resultado ser SUSP Exemplo em FBD DELETE SUKTA Il SIR Yar STRINGI A LEN J POJ Exemplo em ST Varl DELETE SUXYSI 2 3 191 6 Bibliotecas REPLACE FIND Fornecido pela standard hbrary Fun o do tipo STRING que substitui uma string parcial de uma string maior por outra string Entradas STR1 STRING string a partir da qual uma parte deve ser substitu da pela string STR2 STR2 STRING string que deve substituir uma parte de STR1 L INT comprimento da string parcial em STRI que deve ser substitu da P INT posi o onde STR2 deve ser inserida no local dos L caracteres existentes Valor de retorno STRING string resultante REPLACE STRI STR2 L P significa substituir L caracteres de STRI por STR2 come ando com o caractere na posi o P Exemplo em IL LD a DATA l RE PLACE IK j f E ST Var TE ING O resultado SK YSTP Exemplo em FBD VYarSTRINGI Exemplo em ST
292. smo se b tornar se FALSE novamente Operador Reset uma vez definido como FALSE o operando assim permanecer Exemplo a R b O operando a configurado para FALSE quando b TRUE NOTA No caso de uma atribui o m ltipla todas as atribui es Set e Reset referem se ao ltimo membro da atribui o Exemplo a S b R fun1 par1 par2 Neste caso b assume o valor da sa da de funl Mas a n o assume o valor de b e sim o valor configurado da sa da funl Uma atribui o pode ser usada como uma express o Chamando Blocos Funcionais em ST Um bloco funcional FB chamado na linguagem Texto Estruturado de acordo com a sintaxe abaixo lt nome da inst ncia do FB gt vari vel de entrada FB lt valor ou endere o gt lt outra vari vel de entrada FB lt valor ou endere o gt outras vari veis de entrada FB Exemplo Suponha que um bloco funcional de temporiza o TON seja chamado com atribui es para os par metros IN e PT A vari vel resultante Q atribu da vari vel A O FB instanciado por TMR TON A vari vel resultante como em IL endere ada em conformidade com a sintaxe lt nome da inst ncia FB gt lt vari vel FB gt TMR IN 1X5 PT 300 A TMR Q Instru o RETURN A instru o RETURN pode ser usada para sair de uma POU por exemplo dependendo de uma condi o Sintaxe RETURN Exemplo IF b TRUE THEN 155
293. so de escrita FALSE acesso de leitura O tipo de dado de bWrite deve ser BOOL e Valor de retorno endere o usado para desrefer nciar o ponteiro passado no primeiro par metro de entrada Tipos de Dados Definidos pelo Usu rio Al m dos tipos de dados padronizados o usu rio pode definir tipos de dados especiais em um projeto 11 4 Refer ncia de Programa o Estas defini es s o poss veis atrav s da cria o de objetos DUT Unidades de tipos de dados na janela de POUs e na parte de declara o de uma POU Observe as recomenda es sobre a nomea o de um objeto para torn lo o mais exclusivo poss vel Veja a seguir os tipos de dados definidos pelo usu rio ARRAYS Estruturas Enumera es Tipos Subrange Ponteiros ARRAYS Campos ARRAYS uni bi e tridimensionais s o suportados como tipos de dados elementares Os ARRAYS podem ser definidos tanto na parte de declara o de uma POU quanto nas listas de vari veis globais Observe a possibilidade de usar verifica es de limites Sintaxe Nome ARRAY Sl esto Sa Ze Lara loa OP lt Tipo 111 112 e 113 identificam o limite inferior do intervalo ull ul2 e ul3 identificam o limite superior Os valores do intervalo devem ser inteiros Exemplo Cara games ARRAT Lasto y Laat OP INT Inicializa o de ARRAYS arri s ARRAY 1 45 OE INT 2 1 2 3 405 5 arr ARRAS lap ad CE ENTE aS Lipo tidols Abrevia o para dt arro ARRAY lacZpcae
294. socia o de A o Inserir Associa o de A o Ap s l t Inserir Salto le Inserir Salto Ap s t Inserir Macro E Inserir Macro Ap s Dispositivos ORIONI ra Figura 5 12 Editor SFC Os elementos usados em um diagrama SFC encontram se disponibilizados assim que o editor SFC for ativado Eles s o organizados em uma sequ ncia de passos conectados por transi es Veja tamb m Trabalhando no Editor SFC neste cap tulo As propriedades dos passos podem ser editadas na caixa Propriedades Neste campo s o definidos os tempos de ativa o m nimo e m ximo para cada passo Vari veis impl citas podem ser acessadas para controlar o processamento de um SFC por exemplo status de passo an lise de timeout reset e outros Os comandos para trabalhar no editor SFC podem ser chamados a partir do menu de contexto ou do menu SFC No editor SFC e A edi o facilitada pelo fato de que cada elemento espec fico pode ser selecionado e organizado individualmente Durante a edi o n o necessariamente deve haver correspond ncia de sintaxe do SFC Os erros de sintaxe n o ser o verificados at a execu o do comando Gerar C digo e H somente um tipo de passo que combina os estilos tradicionais passos IEC e passos n o IEC As a es sempre devem ser fornecidas como POUSs e sempre s o atribu das via propriedades de elemento de passo e Macros podem ser usadas para fins de estrutura o
295. somente deve ser ativada na biblioteca container e deve ser gerenciada com muito cuidado Vers es de Biblioteca O sistema permite a instala o de v rias vers es da mesma biblioteca Nos projetos com m ltiplas vers es de bibliotecas a escolha de qual ser usada na aplica o segue o seguinte crit rio o No mesmo n vel dentro do mesmo gerenciador a escolha da vers o uma determinada ou a mais recente depender das propriedades da biblioteca o Em n veis diferentes dentro do mesmo gerenciador bibliotecas referenciadas o acesso nico aos m dulos da biblioteca ou s vari veis ser poss vel acrescentando se o contexto adequado veja no par grafo a seguir Acesso nico aos M dulos da Biblioteca ou s Vari veis Basicamente se houver v rios m dulos ou vari veis com o mesmo nome no projeto o acesso a eles deve ser nico caso contr rio ser o gerados erros de compila o Isto se aplica aos m dulos de projetos locais ou vari veis e tamb m aos elementos de software dispon veis nas bibliotecas inclu das e suas referenciadas Para conferir exclusividade nestes casos defina um prefixo para o nome do m dulo atrav s do apropriado contexto da biblioteca O contexto padr o da biblioteca definido nas propriedades das bibliotecas Caso n o seja definido explicitamente o contexto ser igual ao nome da biblioteca O contexto padr o tamb m pode ser especificado no di logo Propriedades Ap s a inclus o da bi
296. ss vel definir outro nome tanto nas Informa es do Projeto ao criar um projeto de biblioteca quanto no di logo Propriedades posteriormente Exemplo Suponha a fun o fun na biblioteca lib e a fun o fun declarada no projeto Por padr o o contexto da biblioteca nomeado lib 114 4 Refer ncia de Programa o resl fun in 12 chamada da fun o do projeto FUN res2 lib fun in 12 chamada da fun o da biblioteca FUN Nome da Enumera o Operador de escopo extens o da norma IEC 61131 3 O nome do tipo das enumera es pode ser usado para tornar o acesso a uma constante de enumera o n o amb guo Neste caso lt nome da enumera o gt precede o nome da constante Assim poss vel usar a mesma constante em diferentes enumera es Exemplo A constante Blue um componente das enumera es Colors e Feelings color Colors Blue Acesso ao valor de enum Blue no tipo Colors feeling Feelings Blue Acesso ao valor de enum Blue no tipo Feelings Operandos Os operandos s o classificados como segue e Constantes BOOL TIME DATE TIME OF DAY DATE AND TIME n mero REAL LREAL STRING Laterais tipados e Vari veis e Endere os e Fun es Constantes Constantes BOOL As constantes BOOL assumem os valores l gicos TRUE e FALSE Veja tamb m BOOL Tipos de Dados Padr o Constantes TIME As constantes TIME s o geralmente usadas para operar m dulo
297. strutura Poly lipo Gonin otarci o 0 Borelli opel POLNA yoly Pornto 8 95 4 Point 5 7 End 3 519 Inicializa es com vari veis n o s o poss veis Veja um exemplo da inicializa o de um ARRAY de uma estrutura em ARRAYS 80 4 Refer ncia de Programa o Acesso aos Componentes de Estrutura Os componentes de estrutura podem ser acessados atrav s da seguinte sintaxe lt Nome da estrutura gt lt Nome do componente gt Assim para o exemplo acima mencionado da estrutura Polygonline o componente Start pode ser acessado por Poly 1 Start Enumera es Uma enumera o um tipo de dado definido pelo usu rio formado por um n mero determinado de constantes string Estas constantes referem se valores de enumera o Valores de enumera o ser o reconhecidos globalmente em todas as reas do projeto mesmo se estiverem declarados em uma POU Uma enumera o criada como um objeto DUT atrav s do di logo Acrescentar Objeto Sintaxe TYPE lt Tdentaiticador gt lt Enum 0 gt lt Enum Lp seer ENUM 0 gt lt Tipo de dado de base gt END TYPE Uma vari vel do tipo lt Identificador gt pode assumir um dos valores de enumera o lt Enum gt e ser inicializada com o primeiro Estes valores s o compat veis com todos os n meros o que significa que podem ser executadas opera es com os mesmos da mesma forma que com as vari veis inteiras Um n mero x pode ser atribu do var
298. t errado o nome da receita dentro do objeto Recipe Definition Tamb m indica erro no ERROR RECIPE NOT FOUND 1644003 formato da STRING inserida como par metro Por exemplo a STRING n o pode ser nula e deve possuir no m ximo 60 caracteres e n o pode possuir os caracteres e N o existe ou est errado o nome do objeto Recipe Definition Tamb m indica erro no formato da ERROR RECIPE DEFINITON NOT FOUND 1644004 STRING inserida como par metro Por exemplo a STRING n o pode ser nula e deve possuir no m ximo 60 caracteres e n o pode possuir os caracteres ef N o existe um objeto RecipeManager no projeto onde a fun o foi inclu da Este erro informado ERROR NO RECIPE MANAGER SET 1644006 caso os par metros da fun o sejam consistentes Caso contr rio indicado que erro no par metro inconsistente Tabela 6 18 C digos de Erro da Fun o Antes de executar a escrita a fun o consiste os par metros de entrada Se houver alguma inconsist ncia indicado erro na Receita ou no Recipe Definition Caso as STRINGs dos par metros sejam v lidas a fun o tenta executar a escrita Se a Receita ou o Recipe Definition n o estiver carregado no CP pode ocorrer erro Exemplo de uso ST com a declara o de RECIPE RETURN VALUES como retorno da fun o VAR sName STRING Recipe001 sDef STRING Recipes 237 mRET RECIPE RETURN VALUES boolsStartProcess BOOL END VAR mRET
299. ta o padr o da fun o pass vel de modifica o Esta fun o de verifica o trata da viola o de limites atrav s de um m todo apropriado por exemplo configurando uma mem ria de erro detectada ou alterando o ndice A fun o ser chamada implicitamente assim que a vari vel do tipo ARRAY for atribu da ATEN O Para manter a funcionalidade de verifica o n o altere a parte de declara o de uma fun o de verifica o impl cita Exemplo de uso da fun o CheckBounds Abaixo encontra se a implementa o padr o da fun o de verifica o Parte de declara o C digo implicitamente gerado N O EDITAR FUNCTION CheckBounds DINT VAR INPUT index lower upper DINT END VAR Parte de implementa o C digo implicitamente gerado somente uma sugest o de implementa o IF index lt lower THEN CheckBounds lower ELSIF index gt upper THEN CheckBounds upper ELSE CheckBounds index END IF Ao ser chamada a fun o apresenta os seguintes par metros de entrada e Index ndice do elemento do campo e Lower limite inferior do intervalo e Upper limite superior do Intervalo Enquanto o ndice estiver dentro do intervalo o valor de retorno ser o ndice em si Caso contr rio viola o do intervalo ser o retornados os limites inferior e superior No programa o limite superior do ARRAY A excedido 79 4 Refer ncia de Programa o PROGRAM M
300. tado a uma entrada anal gica de um m dulo NX6000 o valor equivalente ao m nimo da escala O e o valor m ximo da escala 30000 Estes valores podem ser editados na aba Par metros de Entrada do m dulo NX6000 sendo que a faixa de O a 30000 corresponde aos valores padr o Caso se queira converter os valores desta faixa para valores de temperatura em graus cent grados poss vel fazer isso apenas alterando a constante de in cio e fim de faixa no pr prio m dulo No caso em que o m nimo corresponda a O C e o m ximo a 100 C as constantes utilizadas seriam O para o m nimo e 100 para o m ximo Neste caso a vari vel convertida seria do tipo INT sem apresentar precis o menor que 1 C Para fazer esta convers o sem perda de precis o poss vel converter o valor lido do sensor de temperatura no formato INT e converte lo para um valor do tipo REAL sem perda de precis o Neste caso primeiro convertido o valor de INT para REAL usando a fun o INT TO REAL O resultado desta convers o deve ser passado como entrada para LIN TRAFO entrada IN Os limites de entrada s o definidos pelas entradas do bloco IN MIN 0 e IN MAX 30000 O intervalo dos valores da sa da C definido pelos limites OUT MIN 0 e OUT MAX 100 O valor convertido da sa da ser apresentado em graus centigrados sa da OUT sem perda de precis o da leitura anal gica LIN TRAFO 00 INT TO REAL ANALOG 100 ANALOG REAL 00 g 30000 g 100 Figura 6 7
301. tarts timer with risin JUMP ml CAL instli PT tl ET gt toutl LD instl Q is TRUE PT seconds aft ST instz IN starts timer With risin Z nl LD dar ADD 230 ST dwe s Figura 5 47 Exemplo de Programa IL no Editor Tabular IL O editor IL um editor tabular integrado ao editor FBD LD IL Modificadores e Operadores em IL Os seguintes modificadores podem ser usados em uma Lista de Instru es Modificador C Com JMP CAL RET A instru o somente ser executada se o resultado da express o anterior for TRUE Com JMPC CALC RETC A instru o somente ser executada se o resultado da express o anterior for FALSE NO Em qualquer outro caso Nega o do operando n o do acumulador Tabela 5 11 Modificadores A Tabela 5 12 apresenta quais operadores podem ser usados em combina o com os modificadores especificados O acumulador sempre armazena o valor atual resultante a partir da opera o anterior 165 5 Editores das Linguagens de Programa o Operador Modificadores Significado Ir Carrega o valor negado do operando LD iVar para o acumulador 0 ml Armazena o conte do negado do ST Erg acumulador para o operando S bVar1 Leva o operando tipo BOOL para TRUE quando o conte do do acumulador for TRUE Leva o operando tipo BOOL para FALSE R bVar1 quando o conte do do acumulador for TRUE AND bit a bit do acumulador e do AND bVar2 operando negado OR bit a bit do acumulador
302. tem M todo Chamadas de fun o virtual precisam de mais tempo que as chamadas de fun o normais e s o usadas quando e Uma chamada realizada atrav s de um ponteiro para um bloco funcional pfub method e Um m todo chama outro m todo do mesmo bloco funcional Chamadas de fun o virtual possibilitam que a mesma chamada em um c digo fonte do programa invoque diferentes m todos durante a execu o De acordo com a norma IEC 61131 3 m todos como fun es normais podem ter sa das adicionais Estas devem ser atribu das na chamada do m todo conforme a seguinte sintaxe lt M ETODO gt IN1 lt VALOR gt ATRIBUI ES DE ENTRADA ADICIONAIS OUT1 gt lt VARIANEL DE SAIDA 1 gt OUT gt VARI VEL DE SAIDA 2 gt VARI VEIS DE SA DA ADICIONAIS Isto faz com que a sa da do m todo seja escrita nas vari veis de sa da declaradas localmente conforme definido na chamada Exemplo Suponha que os blocos funcionais fubl e fub2 ESTENDEM o bloco funcional fubbase O m todo method1 est inclu do Poss vel uso das chamadas de m todo VAR INPUT 23 2 Conceitos e Componentes B sicos B BOOL END VAR VAR PINST POINTER TO FUBBASE INSTBASE FUBBASE INSTI FUB INST2 FUB2 END VAR IF B THEN PINST ADR INSTBASE ELSE PINST ADR INST1 END IF PINST METHOD1 Se B TRUE FUBBASE METHOD1 chamado sen o FUB1 METHOD1 chamado Agora suponha que fubbase
303. tem entradas adicionais e diferentemente da fun o ou m todo n o tem sa das adicionais Monitorando uma Propriedade A o As propriedades podem ser monitoradas no modo online com a ajuda da Monitora o Online ou da Lista de Monitora o Para monitorar uma propriedade necess rio adicionar o pragma attribute monitoring variable no topo da sua defini o A es ER podem ser definidas e atribu das a blocos funcionais e programas atrav s do comando Acrescentar Objeto A a o uma implementa o adicional que pode ser criada em uma linguagem diferente da implementa o b sica A cada a o referenciado um nome Uma a o manipula os dados do bloco funcional ou programa ao qual ela pertence Ela utiliza as vari veis de entrada sa da e vari veis locais definidas nessas POUS e por isso n o cont m declara es pr prias FUNCTION BLOCK FEI VAR INPUT 1n B0O0OL END VAR VAR OUTPUT out INT EHD VAR 1 IF in THEN out 0ut l ELSE out 0ut 1 5 EHD IF Figura 2 4 A o em um Bloco Funcional Neste exemplo cada chamada do bloco funcional FB1 incrementar ou decrementar a vari vel de sa da Out dependendo do valor da vari vel de entrada In Chamando a a o Reset deste bloco funcional a vari vel de sa da Out ser zerada E escrito na mesma vari vel Out nos dois casos Pode se adicionar uma a o via comando Acrescentar Objeto A o quando o respectivo programa ou
304. tm ticos Os seguintes operadores prescritos pela norma IEC61131 3 est o dispon veis ADD MUL SUB DIV 84 ADD MUL 4 Refer ncia de Programa o e MOD e MOVE Al m destes h tamb m dois outros operadores extensivos norma e SIZEOF e INDEXOF Operador IEC adi o de vari veis Tipos permitidos BYTE WORD DWORD LWORD SINT USINT INT UINT DINT UDINT LINT ULINT REAL e LREAL Duas vari veis TIME podem tamb m ser somadas resultando em outra por exemplo tH45s tH50s tHIm35s Exemplo em IL E l da M ST iVar Exemplo em ST varl i 424447 Exemplo em FBD T Yarl Operador IEC multiplica o de vari veis Tipos permitidos BYTE WORD DWORD LWORD SINT USINT INT UINT DINT UDINT LINT ULINT REAL e LREAL Exemplo em IL LD T HUL E d P T ST varl Exemplo em ST varli J 2 4A 7 85 SUB DIV 4 Refer ncia de Programa o Exemplo em FBD 7 varl Operador IEC subtra o de uma vari vel a partir de outra Tipos permitidos BYTE WORD DWORD LWORD SINT USINT INT UINT DINT UDINT LINT ULINT REAL e LREAL Uma vari vel TIME pode ser subtra da de outra vari vel TIME resultando em um terceiro tipo de vari vel TIME Considere que valores TIME negativos s o indefinidos Exemplo em IL L 4 SUB sT warl Exemplo em ST varl 7 2 Exemplo em FBD 7 Yarl E Operador IEC divis o de uma vari vel por outr
305. to de Ajuste A vari vel SP deve ser utilizado para programar a temperatura desejada entre 50 C e 80 C Como esta vari vel deve ser comparada com PV ela deve ter a mesma faixa num rica de PV ou seja SP 0 gt 30 C SP 30000 gt 130 C Ou para restringir a faixa entre 50 C e 80 C SP 6000 gt 50 C SP 15000 gt 80 C Bloco diagrama Geral e Valores Limites A Figura 6 27 mostra um bloco diagrama geral do sistema controlador processo onde dentro do controlador mostra se o bloco funcional PID Observar que SP PV e MV s o vari veis do controlador SP saida PV anal gica PROCESSO entrada anal gica CONTROLADOR Figura 6 27 Diagrama de Blocos do Bloco Funcional PID SP m nimo 6000 50 C m ximo 15000 80 C PV m nimo O 30 C m ximo 30000 130 C MV m nimo O 0 m h m ximo 7500 gt 6 m3 h Observa se que no caso de MV embora a v lvula tenha capacidade de injetar 8 m h deseja se limitar esta vaz o em 6 m h Par metros do Processo A Figura 6 28 mostra o resultado de um teste de malha aberta sobre o processo Para executar este teste utilizou se diretamente as vari veis MV e PV com suas unidades internas 235 6 Bibliotecas 4 meh 5000 2 mah 2500 USC 12000 479 UC 50 60 40 Figura 6 28 Teste de Malha Aberta A partir da Figura 6 28 pode se determinar os 3 par metros b sicos conforme expl
306. to de n mero mais baixo 0 A ordem de execu o pode ser modificada atrav s dos comandos dispon veis no submenu Ordem de Execu o no menu CFC Ao adicionar um elemento o n mero ser definido automaticamente de acordo com a sequ ncia topol gica da esquerda para a direita e de cima para baixo Os novos elementos recebem o n mero do seu sucessor se a sequ ncia j foi alterada e todos os n meros mais altos s o aumentados em um O n mero de um elemento permanece constante quando este movido A sequ ncia influencia o resultado e em alguns casos deve ser alterada 129 5 Editores das Linguagens de Programa o Figura 5 9 Exemplo de N meros de Elemento Alterando o Tamanho da Planilha de Trabalho Para obter mais espa o no entorno de um gr fico CFC na janela de um editor o tamanho da rea de trabalho plamlha de trabalho pode ser alterado Isto pode ser feito selecionando e arrastando todos os elementos com o mouse ou atrav s dos comandos Recortar e Colar veja acima o item Movendo Para poupar tempo no caso de gr ficos maiores outra op o utilizar o di logo de configura es de dimens es especiais Consulte o item Editar Planilha de Trabalho no Manual de Utiliza o MasterTool IEC XE MU299048 Editor CFC no Modo Online No modo online o editor CFC fornece visualiza es para monitora o escrita e for amento das vari veis e express es no controlador A funcionalidade Depura o
307. todos os tipos de dados inteiros dispon veis Cada um dos diferentes tipos de dados cobre um diferente intervalo de valores As seguintes limita es de intervalo aplicam se aos tipos de dados inteiros Espa o de mem ria BYTE o os 73 4 Refer ncia de Programa o woro Jo essa fe S DwoRrD 0 4mos 32B o woro o y e 128 127 ust o 25 INT un jo des e vont o ams 32B o 2 TA vun jo SS O Tabela 4 9 Tipos de Dados Inteiros Como resultado quando tipos maiores s o convertidos em menores informa es podem ser perdidas Veja tamb m Constantes Num ricas REAL LREAL STRING REAL e LREAL s o os chamados tipos de ponto flutuante Eles s o utilizados para representar n meros racionais 32 bits de espa o de mem ria s o reservados para REAL e 64 para LREAL Intervalo de valores para REAL 1 401298e 45 a 3 402823466e 38 Intervalo de valores para LREAL 2 2250738585072014e 308 a 1 7976931348623157e 308 NOTAS O suporte ao tipo de dado LREAL depende do dispositivo Consulte a documenta o correspondente para verificar se o tipo LREAL de 64 bits persiste ou se ser convertido para REAL durante a compila o possivelmente com perda de informa es Se um tipo de dado REAL ou LREAL for convertido em SINT USINT INT UINT DINT UDINT LINT ou ULINT e o valor do n mero real estiver fora do intervalo de valor daquele inteiro o resultado ser indefinido e depender do dispositivo At
308. tos o conte do da rea de transfer ncia ser inserido antes da posi o atualmente selecionada Se n o houver nada selecionado no momento os elementos ser o anexados ao final do gr fico atualmente carregado Se uma ramifica o for colada e o elemento atualmente selecionado tamb m for uma ramifica o as ramifica es copiadas ser o inseridas esquerda daquelas j existentes Ao colar uma a o lista em um passo atualmente selecionado as a es ser o adicionadas no In cio da lista de a es do passo ou ent o uma lista de a o para o passo ser criada Elementos incompat veis ao recortar copiar se uma a o associada lista e um elemento adicional que n o o passo ao qual a a o lista pertence forem selecionados uma caixa de mensagem aparecer A sele o atual cont m elementos incompat veis Os dados n o ser o levados para a rea de transfer ncia A sele o n o ser armazenada e n o ser poss vel col los ou copi los em outro lugar Elementos incompat veis ao colar se o elemento atualmente selecionado n o for um passo ou outra associa o ao tentar colar uma a o lista uma caixa de erro aparecer O conte do atual da rea de transfer ncia n o pode ser colado na sele o atual A mesma mensagem aparecer ao tentar colar um elemento como um passo ramifica o ou transi o quando uma a o associada lista estiver selecionada no momento Excluir Elementos
309. tos Relacionados a este Manual ccccserreesssererereccosrerreoocosserereas oo seeereoa aos see eniai nitek veiii isiat 6 Considera es Gerais sobre Documenta o ALTUS quezon dose iusa negado Mou nona ao aa EE AEE 7 Documenta o de Suporte ao Master Tool IEC XE sosirii eee EEEE eo EEEE EE TEE 7 Inspecao Via ena EE A A E E EEE A E E 7 Suporte FOCNICO sua EEE as asa ices ans adss 7 Mensagens de Advert ncia Utilizadas neste Manual eesssseecsseeccsseccsseecssecccssccccsseeccoececssececssececsseeessseecsse 8 2 CONCEITOS E COMPONENTES BASICOS us sccreoriicriesescicveeseesessdiidirddieicieiiiesdietiidiieiiiiiiiii ii 9 odio DL G O PR PRERESI R DERRADEIRA PR RAD PAIN a AA NPR SE EPI DER EE ER MAR 9 Conceitos BaSICOSss5 55555555555555555SSEsRsCaCOSSSSSaGaS SOS SDSLASSSISSSASS COROS Ca caco ninni nE n Ereren En anca docas ra Erene a niaaa 9 F ncionaldades Avan adas near acre sereine EEEE EE E E E ad a qa iee da 9 Orienta o a Objetos na Programa o e na Estrutura do Projeto s nssonnssensseenssensseesssersssesssersseessseres 9 Tipo Ae Dados Epee Seane E E ii dad E A 10 Operadores e V am veis Especiais sao iria E la 10 Conceito de Gerenciamento de Usu rio e Direitos de Acesso sssoesssessssesssersssesssersssesssersssesssersseeo 10 C Ea E EO aaa a Ad a 10 Vers es de BIDHOLCCAS irana a ant Gaa ala anais GaasGaDPaansnIasaaDdaaMondadHabduanabds 10 F ncionaindadesAdiCondiS seina ea a ias ia ia a 10 Gg 6 a A
310. tual do usu rio permitindo a ele proteger todo o projeto ou arquivos espec ficos dentro do projeto atrav s da defini o uma senha de acesso Isso significa que estes arquivos estar o dispon veis para opera o de leitura e escrita apenas depois de desbloqueados com a senha correta J o Login Seguro no CP prov uma maneira de proteger a aplica o do usu rio de qualquer acesso n o autorizado Habilitando esta caracter stica a UCP da S rie Nexto ir solicitar uma senha de usu rio antes de executar quaisquer comandos entre MasterTool IEC XE e a UCP como parar e programar a aplica o ou for ar pontos de sa da em um m dulo O MasterTool TEC XE torna o uso de interfaces para redes de campo uma pr tica t o simples como nunca visto anteriormente O usu rio n o precisa um software especial para configurar a rede de campo porque o MasterTool IEC XE atende este requisito atrav s de uma nica ferramenta reduzindo tempo de desenvolvimento e simplificando a aplica o Outras caracter sticas importantes tamb m est o dispon veis para aumentar a produtividade do usu rio como M dulo de impress o que consiste de um relat rio com os par metros espec ficos dos m dulos e as configura es da aplica o Impress o de l gicas que consiste de um relat rio com todo o c digo da aplica o Verifica o de Projeto que auxilia o usu rio a verificar diferentes condi es durante a programa o como sintaxe do programa consumo
311. tuir a antiga se entradas e sa das j tiverem sido atribu das estas ser o mantidas conforme definido A rede a unidade b sica de um programa FBD ou LD Nestes editores as redes s o organizadas em uma lista vertical Cada rede apresenta em seu lado esquerdo um n mero de rede serial e sua estrutura consiste tanto de uma express o l gica ou aritm tica quanto de um programa fun o chamada de bloco funcional salto ou instru o de retorno O editor IL devido base comum com FBD e LD tamb m usa o elemento rede Se um objeto foi inicialmente programado em FBD ou LD e depois convertido para IL as redes ainda estar o presentes no programa IL e vice versa Se o usu rio Iniciar a programa o de um objeto em IL ele 176 5 Editores das Linguagens de Programa o precisar no m nimo de 1 elemento rede que contenha todas instru es embora tamb m seja poss vel usar outras redes para estruturar um programa por exemplo se considerar uma convers o para FBD ou LD A uma rede podem ser opcionalmente atribu dos um t tulo um coment rio e um r tulo A disponibilidade dos campos t tulo e coment rio pode ser ativada ou desativada no di logo Op es guia Editores FBD LD e IL Se a op o estiver ativada o campo de edi o do t tulo pode ser aberto com um clique de mouse na rede diretamente abaixo da borda superior Para inserir um coment rio abra o campo de edi o correspondente abaixo do t tulo
312. u da a um passo e no modo online ser processada de acordo com a sequ ncia de processamento definida Cada a o a ser usada em passos SFC deve estar dispon vel como uma POU v lida na POU SFC e no projeto EA O comando Acrescentar Objeto est dispon vel para adicionar uma a o POU em uma POU SFC POUs I X FARO fi Library Manager E AS EXAMPLE PRG ER aci EA act EA count i LET t1 Ea us Figura 5 23 A es na rvore de POUs E SECROL 52 count SFCPOU 1 iCount iCount l Figura 5 24 Exemplo de uma A o Escrita em ST Existem os seguintes tipos de a es e A es IEC e A es de passo IEC estendidas A o de Passo em Conformidade com a IEC A o IEC Esta a o est de acordo com a norma IEC 61131 3 e ser processada de acordo com seu qualificador na primeira vez que o passo tornar se ativo e uma segunda vez quando o mesmo for desativado No caso de haver v rias a es atribu das a um passo lista de a es elas ser o executadas de cima para baixo Diferentes qualificadores podem ser usados para a es de passo IEC ao contr rio de uma a o de passo normal 139 5 Editores das Linguagens de Programa o Outra diferen a para a a o de passo normal que cada a o de passo IEC possui uma mem ria de controle que permite garantir que mesmo que a a o seja chamada por outro passo ela ser executada somente uma vez N
313. uintes Instru es podem ser usadas em ST Tipo de instru o Atribui o Chamando um bloco funcional e uso da sa da FB RETURN REPEAT EXIT CONTINUE Instru o vazia Operador de Atribui o A B CV CV 1 C SIN X CMD TMR IN lX5 PT 300 A CMD TMR Q RETURN D B B IF D lt 0 0 THEN C A ELSIF D 0 0 THEN CASE INT1 OF 1 BOOL1 TRUE 2 BOOL 2 TRUE ELSE BOOL1 FALSE BOOL2 FALSE END CASE J 101 FOR 1 TO 100 BY 2 DO IF ARR I 70 THEN J l EXIT END IF END FOR J 1 WHILE J lt 100 AND ARRIJ lt gt 70 DO Ji J 2 END_WHILE J 1 REPEAT Ji J 2 UNTIL J 101 OR ARR J 70 END_REPEAT EXIT CONTINUE label i i 1 JMP label Tabela 5 10 Instru es A esquerda de uma atribui o deve haver um operando vari vel endere o ao qual o valor da express o do lado direito atribu do usando o operador de atribui o Veja tamb m o operador MOVE que apresenta a mesma fun o 5 Editores das Linguagens de Programa o Exemplo Vari Var2 10 Ap s a execu o desta linha Varl representar dez vezes o valor de Var2 Caracter sticas Estendidas Operadores de atribui o que n o fazem parte da norma 61131 3 ExST Operador Set o valor uma vez definido como TRUE assim permanecer Exemplo a S b O operando a assume o valor de b uma vez em TRUE ele assim permanecer me
314. ulo Cada FBD LD ou rede IL apresenta abaixo do campo de coment rio de rede um campo de entrada de texto para definir um r tulo comando Inserir R tulo O r tulo um identificador opcional para a rede e pode ser endere ado ao se definir o salto Ele pode consistir de qualquer sequ ncia de caracteres 1 Titulo da Rede Comentario da Rede Rotulo da Rede Figura 5 66 Posi o do R tulo em uma Rede Consulte o di logo Op es guia Editores FBD LD e IL para definir a exibi o do coment rio e o t tulo Caixas em FBD LD IL Uma caixa em uma rede FBD LD ou IL um elemento complexo e pode representar fun es adicionais como por exemplo Temporizadores Contadores Opera es Aritm ticas ou tamb m programas fun es e blocos funcionais IEC Uma caixa pode ter entradas e sa das e ser fornecida por uma biblioteca de sistema ou programada pelo usu rio Entretanto no m nimo uma entrada e uma sa da devem ser atribu das a valores booleanos Se for fornecida com o respectivo m dulo e se a op o Mostrar Icone da Caixa estiver ativada um cone ser exibido na mesma Uso em FBD LD Uma caixa pode ser posicionada na parte esquerda de uma rede LD como um contato e em uma rede FBD atrav s dos comandos Inserir Caixa e Inserir Caixa Vazia Alternativamente ela pode ser Inserida a partir da Caixa de Ferramentas ou copiada movida arrastando a e soltando a na visualiza o do editor Para obter mais detal
315. uma biblioteca de sistema utilizada Esta biblioteca adicionada ao projeto quando o objeto Recipe Manager for adicionado Caso ele n o seja adicionado ser exibida uma mensagem de erro de compila o se a LibRecipeHandler for utilizada WriteRecipe Esta fun o permite escrever valores de uma receita carregada dentro de um objeto RecipeDefinition para as vari veis da aplica o que est sendo executada em um CP Os par metros de entrada desta fun o est o descritos na Tabela 6 17 Par metros de entrada STRING com o nome do objeto Recipe Definition onde est a receita a ser escrita Deve ser observado o uso de caracteres mai sculos e min sculos pois o nome na string deve ser id ntico ao atribu do ao objeto STRING com o nome da receita que ser escrita e est i definida dentro do objeto Recipe Definition Deve ser Snecipename PRING observado o uso de caracteres mai sculos e min sculos pois o nome na string deve ser id ntico ao atribu do a receita Tabela 6 17 Par metros de Entrada sRecipeDefinitionName STRING Quando a fun o executada com o sucesso o seu retorno zero Quando acontece algum erro um c digo de erro o retorno O retorno da fun o do tipo de DWORD mas pode ser declarado como um enumer vel chamado RECIPE_RETURN_VALUES os valores poss veis de retorno s o apresentados na Tabela 6 18 C digo de Erro ERROR_OK 16 0 Fun o executada corretamente N o existe ou es
316. uncional mede a frequ ncia m dia Hz de um sinal de entrada digital poss vel especificar de quantos per odos deve ser realizada a m dia Um per odo o tempo entre duas bordas de subida do sinal de entrada Exemplo de FREQ MEASURE em FBD FREQ MEASURE IN OUT PERIODS VALID RESET Vari veis de Entrada Tipo de dado IN BOOL Sinal de entrada PERIODS INT N mero de per odos ou seja quantidade de intervalos de tempo entre as bordas de subida atrav s dos quais a frequ ncia m dia do sinal de entrada deve ser calculada Valores poss veis 1 a 10 RESET BOOL Reset de todos os par metros a O Tabela 6 7 Vari veis de Entrada FREQ MEASURE Vari veis de Sa da Tipo de dado REAL Frequ ncia resultante em Hz FALSE at que a primeira medida tenha sido finalizada ou se o per odo gt 3 OUT indicando que algo est errado com as entradas Tabela 6 8 Vari veis de Sa da FREQ MEASURE GEN Fornecido pela util library A fun o GEN gera fun es peri dicas t picas Exemplo de GEN em CFC gen inst gen mode b Rase tPeriod ICycles inp l beset MODE descreve a fun o a ser gerada onde os valores de enumera o TRIANGLE e TRIANGLE POS retornam duas fun es triangulares SAWTOOTH RISE dente de serra ascendente SAWTOOTH FALL dente de serra descendente RECTANGLE sinal retangular SINE e COSINE seno e cosseno 212 6 Bibliotecas TRIANGLE TRIANGLE FOS Figura 6 1
317. uncionalidades Adicionais Menus barra de ferramentas e uso de teclado Possibilidade de incluir componentes espec ficos do usu rio Configura o do CP e configura o de tarefas integradas na rvore de dispositivos Suporte a UNICODE Coment rios de linha C o de Guarda Sele o m ltipla na rvore de objetos do projeto Ajuda online integrada na interface do usu rio Compila o condicional Breakpoints condicionais 10 Perfis Projeto 2 Conceitos e Componentes B sicos Depura o passo para o cursor e retorno chamada anterior Driver de barramento de campo em conformidade com a norma IEC 61131 3 Configura o do CP e de s mbolos dispon veis na aplica o Aloca o livre de mem ria de c digo e dados Cada objeto pode ser especificado como interno ou externo link posterior no sistema de execu o e Notas de pr compila o referentes a erros sint ticos Um perfil de projeto no MasterTool IEC XE um conjunto de regras caracter sticas comuns e padr es utilizados no desenvolvimento de uma solu o de automa o industrial um perfil que influencia a forma de implementa o da aplica o Com a diversidade de tipos de aplica es suportadas pelo Runtime System da S rie Nexto seguir um perfil uma forma de reduzir a complexidade na programa o As aplica es podem ser criadas conforme um dos seguintes perfis Simples B sico Normal Experiente Personalizado O softwa
318. uportar a funcionalidade de rede as vari veis contidas em uma GVL podem ser configuradas para estarem dispon veis como vari veis de rede isto para uma troca de dados via broadcast com outros dispositivos na rede Para tanto as propriedades de rede apropriadas devem estar configuradas para a GVL Considere que as vari veis declaradas nas GVLs sempre s o inicializadas antes das vari veis locais das POUS Vari veis Persistentes O objeto T representa uma lista de vari veis globais contendo apenas as vari veis persistentes da aplica o e pode ser atribu do a uma aplica o atrav s da inser o do mesmo na rvore de dispositivos via comando Acrescentar Objeto Vari veis remanentes s o reinicializadas somente em um Reset Origem Para informa es adicionais consulte o item Vari veis Remanentes A lista de vari veis persistentes editada no editor GVL e VAR_GLOBAL PERSISTENT RETAIN aparece na primeira linha Dispositivos Y I X a PersistentVars P gina Inicial 1 WAR GLOBAL PERSISTENT ff Device NXx3010 2 ivarl INT S E PLC Logic 3 byarl INT Ei C Application 4 END VAR E Bill of Materials Configuration and Consumption W Diagnostic Explorer ad Diagnostic dl Library Manager E MainPro PRG 88 Task Configuration SE MainTask T PersistentVars Dispositivos ps gf PersistentVars P gina Inicial 1 PERSISTENT RETAIN Device NX3010 Z ivarl INT S E PLCLogic 3 bvarl INT b H Applicati
319. utado novamente os valores armazenados ser o processados posteriormente Todas outras vari veis s o novamente inicializadas tanto com seus valores inicializados quanto com suas Inicializa es padr o Ao contr rio das vari veis persistentes as retentivas s o remmicializadas em um novo envio do programa Vari veis retentivas entretanto s o reinicializadas em um Reset Origem e diferentemente das persistentes em um Reset a Frio e em um envio da aplica o A propriedade Retentiva pode ser combinada com a propriedade Persistente NOTAS Se uma vari vel local em um programa for declarada como VAR RETAIN ela ser salva na rea retentiva como um vari vel retentiva global Se uma vari vel local em um bloco funcional for declarada como VAR RETAIN a Inst ncia completa do bloco funcional ser salva na rea retentiva todos os dados da POU onde somente a vari vel retentiva declarada ser tratada como retentiva Se uma vari vel local em uma fun o for declarada como VAR RETAIN ent o isto n o ter efeito A vari vel n o ser salva na rea retentiva Se uma vari vel local for declarada como persistente em uma fun o ent o a mesma n o ter efeito tamb m 50 4 Refer ncia de Programa o Vari veis Persistentes Vari veis persistentes s o identificadas pela palavra chave PERSISTENT VAR GLOBAL PERSISTENT Elas s o remicializadas somente ap s um comando de Reset Origem Ao contr r
320. utiliza o id ntica ao do atributo hide para cada uma das vari veis locais Sintaxe jareriboce hide all localss Exemplo O bloco funcional myPOU implementado com este atributo rarcribute nade dll locais FUNCTION BLOCK myPOU VAR INPUT a INT END VAR VAR OWERUT b BOO END VAR VAR 60 4 Refer ncia de Programa o crd INT END VAR No programa principal s o definidas duas inst ncias deste bloco funcional PROGRAM MainPrg VAR ROU Ty POQUZ myPOUS END VAR Ao atribuir se um valor de entrada para POUI a fun o Listar Componentes em POUI por exemplo na parte de implementa o de MaimmPrg ser o exibidas as vari veis A e B mas n o as vari veis locais ocultas C ou D Atributo Init Namespace Uma vari vel do tipo STRING ou WSTRING fornecida com o pragma attribute init namespace ser inicializada com o contexto atual ou seja com o caminho da inst ncia do bloco funcional em que est contida esta vari vel Aplicar este pragma pressup e o uso do atributo adicional noinit para a vari vel de string e o atributo reflection para o bloco funcional correspondente Sintaxe attribute init namespace Exemplo O bloco funcional POU fornecido com todos os atributos necess rios attribute reflection FUNCTION BLOCK POU VAR OUTPUT jatrrabure no ame attribute instance path MYLES SIRINGS END VAR No programa principal MainPrg est definida a inst n
321. vado ser substitu do pela biblioteca padr o especificada neste di logo Isto permite por exemplo que a compila o do projeto da biblioteca seja editada sem erros mesmo que n o haja uma descri o adequada do dispositivo dispon vel no momento No campo Nome do Espa o Reservado digita se qualquer string como um nome para este espa o reservado Ap s escolhe se uma biblioteca padr o a partir das bibliotecas atualmente instaladas Isto deve ser feito conforme a descri o acima para acrescentar uma biblioteca no subdi logo Bibliotecas A op o Exibir Todas as Vers es Somente para Usu rios Avan ados deve estar ativada para que sejam exibidas todas as vers es das bibliotecas atualmente instaladas Ap s fechar o di logo com OK a biblioteca de espa o reservado ser inserida na rvore do gerenciador Ao abrir o di logo Propriedades para o espa o reservado da biblioteca o usu rio obter informa es sobre a biblioteca padr o atualmente instalada Propriedades Este comando est dispon vel na janela do editor Library Manager Ele abre o di logo Propriedades para a biblioteca atualmente selecionada na janela do gerenciador e permite algumas configura es referentes aos espa os reservados tratamento de vers o disponibilidade e visibilidade das bibliotecas referenciadas Propriedades NextoStandard 1 0 0 9 WAA Vers o JextoStandard O Vers o espec fica 1 0 0 9 Vers o mais recente sempre Visibilidad
322. vari veis de entrada e sa da VAR IN OUT de um bloco funcional s o passadas como ponteiros e No SFC as chamadas de blocos funcionais somente podem ocorrer em a es associadas aos passos e O nome da Inst ncia do bloco funcional pode ser usado como um par metro de entrada para uma fun o ou outro bloco funcional e Todos os valores de um bloco funcional ficam retidos at o pr ximo processamento do mesmo portanto as chamadas de blocos funcionais nem sempre retornam os mesmos valores de sa da mesmo que tenham sido utilizados os mesmos argumentos 21 2 Conceitos e Componentes B sicos Abaixo encontram se exemplos para acessar vari veis de blocos funcionais Suponha que o bloco funcional fb tem uma vari vel de entrada in1 do tipo INT Veja a chamada desta vari vel a partir do programa prog Declara o e implementa o em ST PROGRAM PROG VAR INSTI FB RES INT END VAR INST1 IN1 22 fb chamado e a vari vel inl assume o valor 22 INST1 fb chamado isto necess rio para o acesso vari vel de sa da mostrado a seguir RES FBINST OUTL Vari vel de sa da do fb lida Exemplo em FBD inatl ib E irl outl res Atribuindo Par metros na Chamada Nas linguagens textuais IL e ST os par metros de entrada sa da podem ser configurados imediatamente na chamada de um bloco funcional Os valores podem ser atribu dos aos par metros entre par nteses ap s o nome da inst
323. veis ReInAnentes arrepentir oroo ai ano ds aaa A SDL fd da EEO O 50 Constan ES as fr ai a a Dc a ai a EEEE 52 Contigura o de Vaives VAR CONPIO cassa aE ASS 53 Declara o e Inicializa o de Tipos de Dados Definidos pelo Usu rio cce iii 54 M todos FB Inte FB_Reinit eeseesesessessescessessessessesorseseesossesessessssessersesorsossossesossossesessorsesessossessrecss 54 PEES Toa E E SAR T E E T 55 Instru es de Pra oMa assa as ii e EE EEEE E EE E ER REER EEE EREEREER ERE E 56 Puncionalidade Listar Componentes aminas ana a E CURA UR S SS T1 Mapceamentos de E S sraao iaasa ara asear eoe EE Dos penca EEREN Renais capa 71 Geral esii a dd e e e a a a a 71 Caa eaa a 12 Tipos de DAdOS assess nana Ra aa anal a casaca casbancdanstass 73 Tipos de Dados Padiao rsss eree isso posa pa sons EEEE O EE OEE ca EE E EEEE 13 Etensoes da Norma EC SS snes ornat a o a 15 Tipos de Dados Definidos pelo USNAro ssasssasadasadas sadia nada lada cs deusa itaient an ao as a e ganas asas 71 Operador eS ases an aaa O EA NR 84 Operadores IEC e Fun es Adicionais a NORMA eseis a E E 84 Operadores ATIINCUCOS siorpirer roeren epeo or Eiee ae ESSO EO E E E O OOE 84 Operadores de BUSTING orriren on oe e EE E E AE E E E E O EEEE 89 Operadores de Deslocamento de B iiS ase S 91 Sum rio pelados dC SC ICC O saias lt ta A 94 Operadores de COMmpA La O anne idade Ras usas asia oi Raia esa DSi Grao ia ae emanada adia madas 97 O peradoresde Pac
324. vel dwVarl VAR attribute displaymode hex dwVarl DWORD END VAR Exemplo para vari veis Atributo DoCount definido em Operadores de Compila o Condicional para a vari vel ivar adicionado PROGRAM MAINPRG VAR attribute DoCount 1 Ivars INT byar BOOL END VAR Atributo Displaymode Com a ajuda do pragma attribute displaymode pode ser definido o modo de exibi o de uma vari vel nica Esta configura o substituir a configura o global para o modo de exibi o de todas as vari veis de monitora o feita atrav s dos comandos do submenu Modo de Exibi o dispon vel no menu Comunica o O pragma deve ser posicionado na linha acima daquela que cont m a declara o das vari veis Sintaxe attribute displaymode lt modo de exibi o gt 58 4 Refer ncia de Programa o Para exibi o no formato bin rio s o poss veis as seguintes defini es attribute displaymode bin attribute displaymode binary Para exibi o no formato decimal attribute displaymode dec attribute displaymode decimal Para exibi o no formato hexadecimal attribute displaymode hex attribute displaymode hexadecimal Exemplo VAR attribute displaymode hex dwVarl DWORD END VAR Atributo Global init slot O pragma attribute global int slot aplicado somente em assinaturas Por padr o a ordem de inicializ
325. via comando Acrescentar Objeto Vari veis Tempor rias VAR TEMP Este item uma extens o da norma IEC 61131 3 Declara es VAR TEMP somente s o poss veis em programas e blocos funcionais Estas vari veis tamb m s o acess veis em um corpo de programa ou bloco funcional Vari veis declaradas VAR TEMP s o re imicializadas toda vez que a POU chamada As vari veis devem ser declaradas localmente entre as palavras chave VAR TEMP e END VAR Vari veis Est ticas VAR STAT Este item uma extens o da norma IEC 61131 3 Pode se usar vari veis est ticas em blocos funcionais m todos e fun es Elas devem ser declaradas localmente entre as palavras chave VAR STAT e END VAR e ser o Inicializadas na primeira chamada da respectiva POU Vari veis est ticas somente s o acessadas no escopo no qual s o declaradas como uma vari vel est tica em C por m como s o globais n o perdem seu valor ap s a POU ser finalizar a execu o de uma chamada Em uma fun o por exemplo elas podem ser usadas como contador para o n mero de chamadas da mesma Considere a possibilidade de adicionar um atributo VAR STAT Vari veis Externas VAR EXTERNAL S o vari veis globais importadas para uma POU Elas devem ser declaradas localmente entre as palavras chave VAR EXTERNAL e END VAR e na lista de vari veis globais A declara o deve corresponder exatamente declara o global Se a vari vel global n o existir uma me
326. ware CP controlador Para isto objetos independentes gerenciados na visualiza o das POUs s o instanciados e atribu dos a um dispositivo na janela visualiza o dos Dispositivos Isto est em conformidade com a programa o orientada a objetos Entretanto POUs espec ficas da aplica o tamb m podem ser utilizadas Uma aplica o representada por um objeto de aplica o na rvore de Dispositivos inserido abaixo de um n do dispositivo program vel PLC Logic Os objetos que definem o conjunto de recursos da aplica o podem ser inseridos abaixo de um item da aplica o A aplica o padr o Application criada junto com novos projetos criados a partir do modelo Projeto MasterTool Padr o ela acrescentada rvore de dispositivos abaixo do item Device e PLC Logic Uma parte essencial da aplica o a Task Configuration que controla a execu o de um programa inst ncias de POU ou POUSs espec ficas da aplica o Adicionalmente podem estar atribu dos objetos de recursos tais como listas de vari veis globais bibliotecas entre outros os quais ao contr rio daqueles gerenciados na janela das POUs somente podem ser usados pela aplica o espec fica e seus subitens A compatibilidade dos par metros da aplica o no CP com os par metros da aplica o do projeto verificada no momento do login em um dispositivo CP ou dispositivo de simula o Em caso de incompatibilidade
327. xMV e MinMV deve gerar valores na faixa de opera o de AO e g 0 30000 E necess rio verificar isso para evitar problemas de overflow 219 6 Bibliotecas Exemplo do bloco PID em FBD My EFFST EFf3ST MaxEFFST MinEFFST ErrorCode Integral ction Par metros de entrada Setpoint REAL A unidade e o intervalo devem ser os mesmos que o PV pois as duas vari veis podem ser comparadas Vari vel de processo PV REAL A unidade e o intervalo devem ser os mesmos que o SP pois as duas vari veis podem ser comparadas Ganho proporcional utilizado para calcular a a o proporcional REAL do bloco PID Tempo Derivativo em segundos utilizado para calcular a a o Td REAL nd derivativa do bloco PID Ti Tempo Integral em segundos utilizado para calcular a a o l integral do bloco PID BIAS o O REAL Compensa o adicionada vari vel manipulada Valor atribu do vari vel manipulada quando utilizado o modo ManualMV alor a a vari anipulada qua a manual M xima varia o da vari vel manipulada entre o ciclo atual e o MaxVarMV ciclo anterior Caso seja zero ou negativa o bloco PID n o tem limite de varia o de MV M ximo valor da vari vel manipulada MaxMV Caso o valor calculado seja maior do que o configurado o MV ser igual ao MaxMV M nimo valor da vari vel manipulada MinMV Caso o valor calculado seja menor do que o configurado o MV ser igual ao MinMV Tempo morto Dead
328. xrar O bar Figura 5 75 Sa da Set em FBD Veja tamb m Bobinas Set Reset Em IL os operadores S e R s o usados para submeter um operando a set ou reset Bobinas Set Reset Atrav s de s mbolos as bobinas podem ser definidas como do tipo Set ou Reset A bobina Set indicada por S e n o permite sobrescrever o valor TRUE na vari vel booleana apropriada Isto significa que a vari vel uma vez definida como TRUE permanece TRUE A bobina Reset indicada pelo s mbolo R e n o permite sobrescrever o valor FALSE na vari vel booleana apropriada Isto significa que a vari vel uma vez definida como FALSE permanece FALSE No editor LD bobinas Set e Reset podem ser diretamente inseridas via arrastar e soltar a partir da Caixa de Ferramentas categoria Elementos Ladder 182 5 Editores das Linguagens de Programa o byvare amp hyvar amp fl EB Figura 5 76 Bobinas Set e Reset Editores FBD LD IL no Modo Online No modo online o editor FBD LD IL fornece visualiza es para a monitora o escrita e for amento das vari veis e express es no controlador A funcionalidade de depura o breakpoints passo a passo etc tamb m est dispon vel Para informa es sobre como abrir objetos no modo online consulte Interface do Usu rio no Modo Online no Manual de Utiliza o MasterTool IEC XE MU299048 Observe que a janela do editor de um objeto FBD LD ou IL tamb m inclui o Editor de Declara o n
329. xtoPID a qual deve ser adicionada ao projeto A partir de uma vari vel de processo PV e do setpoint SP o bloco funcional calcula a vari vel manipulada MV para o processo controlado Este valor calculado periodicamente levando em considera o os fatores proporcional integral e derivativo programados Trata se de um algoritmo de controle PID tipo ISA onde o ganho proporcional o ganho do controlador aplicado tanto ao erro como s parcelas integral e derivativa do controlador O bloco funcional pode ser representado pelo diagrama b sico da Figura 6 16 E EEN e Figura 6 16 Diagrama B sico PID A Figura 6 17 mostra o diagrama de blocos de um la o PID detalhado conforme a execu o da UCP Nexto DeadBand Direct E DB BIAS EnableP Termo p Proporcional Kp XE Enablel Termo HpxEr ab Integral T a DerivPV EnableD Termo dEr Derivativo fz X To X MinMV MaxMV MaxVarMV Manual Anti Reset iVindup ManualMvV PV PROCESSO CONTROLADO Figura 6 17 Diagrama Completo PID 218 6 Bibliotecas A Figura 6 18 apresenta um diagrama de blocos de um exemplo de PID FB controlando um processo real Tamb m s o apresentadas fun es que auxiliam as quais o usu rio deve colocar no sua aplica o Convers o MV para AO e Convers o Al para PV Convers o M dulo de aaia A Entrada Anal gica MV para AQ e 9 4 20 MA Atuador e g v lvula de controle Pro
330. zado na convers o de qualquer tipo de dado mais especificamente a partir de um tipo de dado num rico para outro tipo de dado Os tipos de dados mais adequados s o apresentados nas convers es mostradas a seguir Sintaxe ANY NUM TO lt Tipo de dado num rico gt ANY TO lt Qualquer tipo de dado gt Exemplo Convers o de uma vari vel do tipo REAL para INT re REAL 1 234 L amp INT s ANY TO Tire 4 O resultado 1 Fun es Num ricas ABS Os seguintes operadores num ricos IEC est o dispon veis ABS SQRT LN LOG EXP SIN COS TAN ASIN ACOS ATAN e EXPT Operador IEC retorna o valor absoluto de um n mero ABS 2 retorna 2 A entrada e sa da podem ser de qualquer tipo de dado num rico b sico Exemplo em IL LD ARS sT i O resultado em 1 2 109 SQRT LN LOG 4 Refer ncia de Programa o Exemplo em ST 1 ABS 2 Exemplo em FBD Operador IEC retorna a raiz quadrada de um n mero A vari vel de entrada pode ser de qualquer tipo de dado num rico b sico A vari vel de sa da deve ser do tipo REAL ou LREAL Exemplo em IL LD l SORT ST wi C6 99 O resultado em q 4 Exemplo em ST g 50RT 16 Exemplo em FBD Operador IEC retorna o logaritmo natural de um n mero A vari vel de entrada pode ser de qualquer tipo de dado num rico b sico A vari vel de sa da deve ser do tipo REAL ou LREAL Exemplo em IL LD 45 LH ST
Download Pdf Manuals
Related Search
Related Contents
特集記事を見る Party Starter TEW-639GR - TRENDnet ZWCAD Plug Avaya BCM50 User's Manual Manual de instalación, funcionamiento y RA78K0R Ver. 1.00 Assembler Package Operation UM Benutzerhandbuch für den Perle Remote (für DOS und Windows 3.x) User Guide - Appointments Online Copyright © All rights reserved.
Failed to retrieve file