apostila linguagem descritiva

Upload: daniel-teixeira

Post on 20-Jul-2015

697 views

Category:

Documents


14 download

TRANSCRIPT

______________________________________________________

Controladores Programveis

Linguagem Descritiva BCMVerso:2009-1 Ref.:31940092-8

Linguagem Descritiva BCM

2

Linguagem Descritiva BCM

Este documento propriedade da BCM ENGENHARIA LTDA. Seu contedo tem carter exclusivamente informativo, cabendo BCM o direito de promover alteraes necessrias, sem aviso prvio.

proibida a reproduo parcial ou total sem o expresso consentimento da BCM Engenharia Ltda.

Linguagem Descritiva BCM

3

Linguagem Descritiva BCM

4

ATENOOs Controladores Programveis BCM so equipamentos robustos e confiveis. O seu projeto foi feito levando em conta as condies de operao particulares do ambiente industrial. Porm, nunca esquea que todos os elementos de um sistema esto sujeitos a falhas. Desenvolva o projeto do sistema levando isto em considerao, obedecendo rigorosamente as recomendaes deste manual e das normas de segurana vigentes em seu pas ou regio. Um bom projeto do sistema e uma correta instalao so elementos fundamentais para o funcionamento satisfatrio e confivel dos produtos. Caso haja qualquer ponto duvidoso ou omisso, no hesite em consultar o Departamento de Assistncia Tcnica da BCM, o qual ter o maior prazer de lhe prestar todo o apoio necessrio.

Telefone (51) 3374.3899 Fax (51) 3374.4141 E-mail: [email protected]

COMPATIBILIDADE COM O PROCPAs instrues descritas neste manual podem ser usadas com o PROCPV101.0, PROCPV201.0, PROCPV301.0 , PROCP V3k, V4k e V5k. Existem instrues que s so compiladas usando o PROCPV301.0 , PROCP V3k e PROCP V4k. Outras somente esto disponveis para o PROCP V5k. Estas instrues informam esta caracterstica na sua descrio. Para dvidas a respeito da disponibilidade de instrues em verses do PROCP anteriores, consulte a BCM.

Linguagem Descritiva BCM

5

Linguagem Descritiva BCM

6

ndice1 - CONTROLE DE PROCESSOS COM CPS ....................................... 1.1 - DEFINIO E CARACTERISTICAS DO CP.............................. 1.2 - ABORDAGEM DO PROBLEMA E REPRESENTAO................ 1.3 - DOCUMENTAO DE PROJETOS............................................ 1.4 - TERMINOLOGIA E CONVENES USADAS............................. 2 - A LINGUAGEM DESCRITIVA BCM........................................................ 2.1 - ESTRUTURA DA LINGUAGEM DESCRITIVA BCM.......................... 2.2 - REGRAS DE PROGRAMAO NA LINGUAGEM DESCRITIVA 2.3 - COMO PROGRAMAR NA LINGUAGEM DESCRITIVA................... 2.4 - SINTAXE DAS INSTRUES E COMANDOS................................. 2.4.1 - Comandos de configurao do CP .......................................... 2.4.2 - Intrues de programao....................................................... 2.5 - EXEMPLOS TIPICOS DE PROGRAMAO.................................... 2.5.1 - Leitura das Entradas Digitais................................................... 2.5.2 - Controle das Sadas Digitais.................................................... 2.5.3 - Atribuio de Valor para Variveis........................................... 2.5.4 - Uso de contadores................................................................... 2.5.5 - Uso de temporizadores............................................................ 2.5.6 - Temporizadores Associados ao Teste de Varivel................... 2.5.7 - Leitura das Entradas Analgicas..................................... 2.5.8 - Controle das Sadas Analgicas........................................ 2.5.9 - Uso do Display................................................................... 2.5.10 - Uso de Matrizes............................................................... 2.5.11 - Controle PID.................................................................... 2.5.12 - Uso dos bancos de memria................................................. 11 11 13 17 18 31 31 33 39 40 41 58 114 114 116 116 118 121 126 127 131 133 145 149 157

Linguagem Descritiva BCM

7

2.6 - TRATAMENTO DE VARIVEIS........................................................ 2.6.1 - Varveis de Atribuio Livre..................................................... - Variveis Indexadas............................................................. - Variveis no Indexadas....................................................... 2.6.2 - Variveis de Entrada e Sadas ................................................ - Entradas Digitais................................................................. - Entradas Analgicas.......................................................... - Sadas Analgicas................................................................ - Display................................................................................ 2.6.3 - Variveis de atribuio Fixa..................................................... - Temporizao...................................................................... - Relgio............................................................................... - Reconhecimento dos Mdulos de E/S.................................. - Controle de Programa.......................................................... - Contadores Rpidos............................................................ - Interfaces com Perifricos..................................................... - Redes de Comunicao....................................................... - Medio do Tempo de Varredura......................................... 2.7 - REGRAS ESPECIAIS DE PROCESSAMENTO ARITMTICO........... 2.8 - COMO O PROGRAMA EXECUTADO / CICLO DE VARREDURA.... 2.9 - PRIORIDADE NAS OPERAES....................................................

159 160 161 161 162 162 163 163 164 165 166 167 168 171 174 175 180 181 182 183 186

Linguagem Descritiva BCM

8

ndice Geral das Instrues e ComandosCOMANDOS DE CONFIGURAO BCD - Tratamento das Chaves Thumbwheel............................ CLP - Define o tipo de Controlador............................................ CONTINUA - Divide o programa em Vrias Partes.................... CTR - Habilita as Rotinas para Tratamento de Contadores....... DIM - Define o Dimenso de uma Matriz................................. DISPLAY - Habilita a Operao dos Displays........................... ESA - Habilita Rotinas para Tratamento de E/S Analgicas....... FIM - Instrui o Compilador a Encerrar a Compilao................ IFT - Habilita o Uso do Mdulo IFT........................................... INTERFACE - Define Parametros de Comunicao ................ NEST - Reserva um Espao de Memria para uma Tabela....... PAN - Habilita a Rotina para Tratamento do Mdulo PAN......... RTC - Habilita a Operao do Relgio em Tempo Real............. SAIDA - Associa Variveis as Sadas ..................................... TCP - Configura os Parmetros do Canal Ethernet.................. INSTRUES DE PROGRAMAO COPIA - Copia variveis de uma matriz para outra................... DECREMENTA - Diminui uma unidade na Varivel.................. EAI - Programa os Valores Relativos ao Mdulo EAI................ EAN - Programa os Valores Relativos ao Mdulo EAN.............. ESCISI - Escreve uma Varivel em um Equipamento da Rede. ESCMISI - Escreve na Memria do Mdulo ISI....................... ESCREVE - Escreve Informaes em Outro Equipamento..... ESTADO - Marca o Incio das Instrues para cada Estado..... EVENTOS - Configura o mdulo EDE.................................... FACA - Intruo que Executa Operaes Aritmticas................ IMPRIME - Imprime o conteudo da Varivel............................. INCLUI - Inclui um trecho de programa em Ling. Descritiva...... INCREMENTA - Incrementa uma Unidade na varivel .......... ISI - Especifica a Porta Serial a ser Programada ................... LEISI - L uma Varivel de um Equipamento em Rede............. LEMISI - Faz a Leitura da Memria do Mdulo ISI.................. LE - Adquire Informaes de outro Equipamento na Rede........ LIGA DESL - Liga e Desliga as Sadas Especificadas..............Linguagem Descritiva BCM

41 41 43 44 44 45 46 46 46 47 56 56 56 56 57

58 58 59 63 66 67 68 70 70 79 82 82 83 83 84 85 86 889

INSTRUES DE PROGRAMAO (continuao) MALHA/MAQUINA - Indica o incio dos estados ..................... MOSTRA - Apresenta as variveis nos Displays...................... MOTOR - Sistemas de Posicionamento com Mdulo MOT...... PID - Executa Rotina PID no Controlador ................................ PLIGA/PDESL - Liga e desliga pontos no mdulo PAN.............. PRESET - Preseta Variveis.................................................... RESET - Coloca a Varivel Mencionada em Zero..................... ROTINA - Permite Inserir Rotinas ............................................. SE - Transio de Estado........................................................ SET - Coloca o Valor 1 Nas Variveis Mencionadas.................. VA PARA - Mudana Imediata de Estado................................

88 88 93 102 106 106 107 108 113 113 113

Linguagem Descritiva BCM

10

BCM Automao

Linguagem Descritiva BCM

11

1 - CONTROLE DE PROCESSOS COM CPsCriado para ser um substituto dos quadros de rels, o Controlador Programvel (CP) ultrapassou h muito as expectativas originais. Com processadores de alto desempenho, variedade de modelos e capacidade de comunicao, o seu campo de aplicao hoje quase ilimitado e o conhecimento de suas potencialidades torna-se cada vez mais necessrio para todos os envolvidos no planejamento, operao e manuteno de processos industriais. Nos prximos anos a sua importncia dever continuar crescendo, pois as pesquisas de mercado indicam uma contnua expanso na demanda por CPs, confirmando o inexorvel avano da automao em todas as reas de atividade.

1.1 - DEFINIO E CARACTERSTICAS DO CP"O Controlador Programvel um dispositivo que, observando a arquitetura de computadores, possui uma memria programvel pelo usurio e realiza as funes de controle, comando e superviso de processos, com hardware e software compatveis com estas aplicaes." A estrutura bsica do Controlador Programvel segue uma linha similar a dos computadores de uso geral: Dispositivos de Entrada/ Processamento/ Sada. Nos CPs estas estruturas assumem uma forma particular, adequada ao ambiente de controle de processos:

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

12

Entradas: As entradas digitais recebem o sinal de sensores, chaves,botoeiras, e outros equipamentos que fornecem sinais do tipo ligado/desligado. As entradas analgicas recebem sinais de tenso ou corrente de variao contnua, dentro de uma faixa e com significado especificado. Este mdulo condiciona o sinal de entrada e torna-o disponvel para o processador. Processador: o bloco que analisa, processa e decide. So executadas a funes de deciso, operaes matemticas, contagens, temporizao, dilogo com IHM, comunicao, etc. Memria: A memria de programa contm as instrues armazenadas para execuo das tarefas previstas para a aplicao. A memria de variveis contm os valores e parmetros correntes relacionados ao processo. Sadas: Atravs das sadas, o CP age sobre o processo sob o seu controle. As sadas digitais fornecem comandos do tipo ligado/desligado. As sadas analgicas fornecem um sinal de tenso ou corrente com variao contnua, para acionar vlvulas proporcionais, conversores ou outros equipamentos. Co-processadores: Mdulos com memria local e funes especializadas executam tratamento sofisticado de entradas analgicas, comunicaes com alto desempenho, controle de posicionamento com alta velocidade, operaes matemticas e outras. Interface Homem-Mquina: Este bloco coloca o operador (usurio) em contato direto com o CP e o processo sob controle. Podem ser passadas informaes de condies de processo, alarmes, solicitaes manuais e informaes numricas. A forma mais comum de interface Homem-Mquina no CP um display alfanumrico com teclado. Comunicaes: Este bloco fornece o meio fsico e os protocolos para que o CP se comunique com outros equipamentos integrantes do sistema. Os sistemas de controle atuais prevem a integrao de diversos dispositivos que podem incluir vrios CPs, computadores, interfaces IHM externos, sensores e atuadores inteligentes, todos ligados em rede.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

13

1.2 - ABORDAGEM DO PROBLEMA E REPRESENTAODe forma geral, o processo de desenvolvimento de uma aplicao de Controlador Programvel atende uma seqncia de etapas, com objetivos bem determinados. O cumprimento satisfatrio de cada etapa ir garantir a segurana do trabalho e o sucesso do resultado final. Sero apresentadas em linhas gerais as caractersticas e requisitos de cada etapa.

Concepo

Definio

Projeto

Construo

Teste e Avaliao

Ciclo de Desenvolvimento de uma Aplicao

Definio - Nessa etapa ser explicitado o que o sistema ir fazer, sob que condies, as relaes do equipamento de automao com os diferentes usurios e as caractersticas das ligaes com outros sistemas. Projeto - Determinar uma soluo vivel e econmica para o problema a ser resolvido. Dessa fase j sair uma configurao definitiva dos equipamentos a serem usados e as linhas gerais do software a ser desenvolvido. Construo - Baseado nas especificaes geradas nas etapas anteriores, o projeto ser convertido em um programa ou programas que atendam os requisitos desejados. Paralelamente, os equipamentos necessrios sero construdos de acordo com as solicitaes do projeto. Teste e Avaliao Essa etapa deve responder basicamente a seguinte pergunta: O sistema atende as necessidades e expectativas do usurio? Em caso negativo, quais as modificaes necessrias? Para responder a essas perguntas poderemos trabalhar com simuladores do sistema, testes no sistema real em condies normais e anormais, etc.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

14

Definio O primeiro passo na etapa de definio a elaborao do documento denominado "Especificao do Problema", tambm chamado de "Especificao de Requisitos". Esse documento coloca claramente as necessidades do projeto e as expectativas do usurio. Somente uma redao completa e cuidadosa pode resultar em uma soluo adequada e de boa qualidade. A Especificao do Problema o instrumento fundamental para o dilogo entre o cliente do sistema e a equipe de desenvolvimento. Em alguns casos, ao se iniciar o trabalho, a especificao pode j existir, ser elaborada pelo cliente ou pelo responsvel pelo desenvolvimento. Projeto Na fase de projeto iremos construir uma soluo para o problema. O resultado principal dessa fase a "Especificao da soluo" ou Especificao de Projeto. Baseado no conhecimento dos mdulos e equipamentos disponveis, o projetista ir determinar uma soluo genrica completa para o problema. Ser gerado um diagrama fsico (hardware) e um diagrama lgico (software) da soluo de automao, acompanhado de uma descrio detalhada de como os objetivos sero atingidos. Onde for conveniente, deve-se considerar a incluso de normas universais relativas ao assunto, roteiros de teste, manuteno, etc. O projetista nessa fase j ir sugerir uma diviso lgica para a abordagem da programao. No iremos aqui abordar o desenvolvimento subseqente da parte eletrnica (hardware) do projeto; iremos nos fixar na parte de software e como o programador ir trabalhar de aqui por diante.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

15

No cotidiano do trabalho de automao com Controladores Programveis notamos que frequentemente as especificaes do problema e da soluo so reunidas em um documento nico. Tal procedimento vlido principalmente em processos mais simples de automao, uma vez que simplifica o trabalho do projetista. A principal exigncia nessa forma de abordagem que o responsvel pela especificao deve conhecer simultaneamente o processo (para poder redigir a Especificao do Problema), os equipamentos disponveis e os recursos de programao para poder projetar uma soluo adequada. Com os equipamentos padronizados disponveis e uma linguagem de alto nvel para programao dos CPs, o prprio usurio pode frequentemente construir uma especificao completa e adequada sem grande dificuldade. Como podemos notar, a passagem da fase de projeto para a fase de construo do programa depende basicamente do cuidado com que as especificaes foram elaboradas. Na linguagem descritiva BCM existe uma preocupao fundamental em aproximar a forma de raciocnio usada na especificao com a elaborao do programa.

Quando o projetista elabora a Especificao da Soluo ele tem uma necessidade fundamental de descrever o fluxo do processo ou seja, como os eventos se sucedem no sistema, quais as causas e efeitos de cada evento e a seqncia lgica de tarefas que o controlador deve executar. Existem vrias formas de fazer isso:

F Descrevendo literalmente a seqncia de eventos:1 - Ao acionar o boto de partida PAR, as portas P01, P02, P03 e P04 devem ser abertas. 2 - Quando B01 atingir o peso programado, P01 fecha. 3 - Quando B02 atingir o peso programado, P02 fecha. 4 - Quando B03 atingir o peso programado, P03 fecha. 5 - Quando B04 atingir o peso programado, P04 fecha. 6 - Quando P01, P02, P03 e P04 estiverem novamente fechadas, VAZ acionado, virando todos os ingredientes no recipiente grande. 7 - Aps 15 segundos, MMI deve ser acionado. 8 - Aps 10 minutos, MMI deve ser desligado, permanecendo em repouso.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

16

F Montando um diagrama de tempos:PAP B01 B02 B03 B04 P01 P02 P03 P04 VAZ MMI10 min

F Elaborando um diagrama de estados: No objetivo aqui discutir ou comparar os mtodos tradicionais de representao. A linguagem BCM prope uma forma alternativa para representao que substitui os anteriores. Alm disso, elaborada convenientemente, essa forma de representao usada diretamente para programar o controlador. A estrutura fundamental na programao em linguagem BCM o Diagrama de Estados. A passagem da especificao devidamente elaborada para o Diagrama de Estados quase direta, exigindo um mnimo de elaborao adicional, qualquer que seja a forma usada anteriormente para representao:0 PAR=1 4 LIGA P03

1

DESL. P01, B04=PESO P02,P03,P04

LIGA P04 B01=PESO 5 LIGA VAZ

2

LIGA P01

T=15s

B02=PESO

6

LIGA MMI

3

LIGA P02

T=10min

B03=PESO 7 DESL.MMI

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

17

1.3 - DOCUMENTAO DE PROJETOSAo lado da descrio de fluxo do processo, uma srie de documentos devem ser gerados durante o desenvolvimento da aplicao. A lista a seguir apresenta a documentao padronizada adotada nos projetos BCM: - Especificao do problema. - Especificao da soluo. Conceitualmente diferente, pode ser feita em conjunto com a especificao do problema em projetos simples e/ou quando o mesmo tcnico detalha o processo e aplica o CP. - Diagrama de blocos fsico do sistema abordado. - Listagem de entradas e sadas do CP - Smbolos e funes. - Listagem de matrizes e variveis utilizadas. - Protocolos especiais de interface com outros CPs ou equipamentos (serial, paralela, via E/S, etc.) - Diviso de malhas de estado e descrio da funo de cada uma. - Diagramas de estado para cada malha, com comentrios. - Listagem BCM completa. - Descrio funcional, fluxogramas e listagem de rotinas assembler, se existirem. Em muitos casos, usual incluir um texto dedicado ao processo de desenvolvimento do software, descrevendo os arquivos usados, a nomenclatura, roteiros de trabalho, etc. Isso feito para facilitar uma eventual necessidade futura de manuteno ou adaptaes no programa.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

18

1.4 - TERMINOLOGIA E CONVENES USADASAo longo dos manuais BCM e no cotidiano do trabalho em automao e Controladores Programveis, encontramos uma srie de termos e conceitos tpicos. No sentido de familiarizar o usurio com esta terminologia, apresentamos um glossrio dos termos e expresses mais usuais. Em muitos casos, as informaes apresentadas no se atem a rgidas definies formais. Acreditamos, no entanto, que este captulo cumpre o objetivo de auxiliar a compreenso e eliminar dvidas. lgebra Booleana - Notao matemtica abreviada que representa relaes e expresses lgicas associadas as funes bsicas e, ou, ou exclusivo e no. Algoritmo - Conjunto de regras e operaes capazes de efetuar uma tarefa previamente especificada. Apontador - Valor numrico usado para indicar a localizao, na memria de dados ou de programa, de uma determinada informao, de um espao livre ou do ponto inicial de execuo de uma rotina. ASCII - Abreviatura para American Standard Code for Information Interchange. Esse cdigo representa todos os caracteres alfanumricos e smbolos do teclado padro atravs de nmeros de 7 bits (0 a 127). Alguns cdigos so ainda reservados para funo de controle (troca linha, retorna carro, troca pgina, etc). Assembler - Linguagem de baixo nvel, orientada diretamente ao microprocessador do sistema, que descreve o conjunto de operaes bsicas disponveis. Barra - Um ou mais condutores que carregam coletivamente uma informao codificada, proveniente de um dispositivo fonte para um ou vrios dispositivos receptores. Baud Rate - Taxa (velocidade) de transmisso de um sinal digital codificado, calculada em bits por segundo. Por exemplo: 9600 baud equivale a uma velocidade de transmisso de 9600 bits por segundo.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

19

BCD - Abreviatura de Binary Code Decimal. Sistema de numerao que representa separadamente cada dgito decimal pelo equivalente binrio em 4 bits. Por exemplo 371 equivale a 0011.0111.0001 em cdigo BCD. Binrio - Sistema de numerao de base 2, em contraposio ao sistema decimal, que usa a base 10. O sistema binrio requer somente dois tipos de dgito (0,1) que agrupados representam qualquer quantia desejada pelo usurio. BIT - Abreviatura de Binary Digit. Um bit a menor unidade de informao disponvel em um sistema binrio. Representa a deciso entre dois estados possveis, simbolizados normalmente 0 e 1. Pode ser usado tambm para representar os estados ligado/desligado ou verdadeiro/falso. Buffer - rea de memria reservada para armazenar uma determinada informao na passagem de uma fase de processamento para outra. Byte - Grupo de 8 bits processado em um sistema como uma entidade nica. Checksum - Resultado da soma de todos os valores de um determinado bloco de informao utilizado para verificao da integridade da informao armazenada. Uma determinada fase do processamento calcula o checksum e o armazena junto com o bloco. Em outro momento, o checksum recalculado e comparado com o valor armazenado. Qualquer desigualdade indica que ocorreu uma alterao indevida dos dados. Ciclo - Uma seqncia repetitiva de operaes ou instrues dentro de um algoritmo. - Parte de uma onda que comeando por um ponto de referncia (zero), atinge um valor mximo, volta ao nvel zero, atinge um valor mnimo, seguido por um retorno ao ponto zero de referncia. Clock - Circuito usado para gerar uma seqncia peridica de pulsos, usado para sincronizao de todas as operaes em um sistema digital. A freqncia de clock est associada velocidade na qual os sinais so processados no sistema.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

20

Comando - Informao codificada enviada a um processador digital (computador ou CP), que especifica um conjunto de caractersticas de funcionamento que este deve assumir. Compatibilidade - Propriedade que uma parte de um sistema apresenta de poder ser substituda por outra parte similar, com um mnimo de alteraes no funcionamento do sistema como um todo. Compilador - Um programa especfico, ou grupo de programas que traduzem as instrues e comandos de uma linguagem de alto nvel em cdigos na linguagem de mquina do processador utilizado. Controlador Programvel - Dispositivo ou equipamento que, observando a arquitetura de computadores, possui uma memria programvel pelo usurio, e realiza as funes de controle, comando e superviso de processos industriais; com hardware e software compatveis com estas aplicaes. Tambm denominado Controlador Lgico Programvel abreviaturas CP ou CLP. Controle Distribudo - Arquitetura usada em controle de processos, composta por 2 ou mais Controladores Programveis interligados a um computador usado como unidade central. Cada CP controla uma parte do processo global e est em constante comunicao com a unidade central que supervisiona e coordena o conjunto. Estruturas de maior porte permitem ainda que essa unidade central esteja conectada a outro computador maior, que assume uma superviso de nvel superior. Controle PID - Abreviatura para Controle Proporcional, Integral, Derivativo. Mtodo de controle em lao fechado que consiste em aplicar ao atuador o sinal resultante da soma das funes proporcional, integral e derivativa aplicadas ao erro observado na varivel medida.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

21

Controle PID Adaptativo - Recurso adicional ao controle PID que utiliza um algoritmo especial para ajustar automaticamente os parmetros proporcional, integral e derivativo do controlador, de acordo com o histrico de desempenho do processo. Como esses parmetros dependem fundamentalmente das caractersticas fsicas do meio, esse tipo de controlador adapta-se ao processo sem necessidade de calibrao manual. Controle PID Feedforward - Mtodo de controle que acrescenta ao controle PID tradicional um fator de antecipao. Basicamente, a mudana em uma condio que ter influncia futura na varivel medida considerada na composio da varivel de sada, mesmo que a medida ainda no tenha sido afetada.

CPU - Abreviatura para Central Processing Unit. Parte de um sistema digital que contm a memria principal, os circuitos de processamento lgico e aritmtico, alm de outros circuitos auxiliares. Em um computador ou Controlador Programvel, a CPU a responsvel pela interpretao e execuo das instrues do usurio. Dado - Informao codificada na forma digital, armazenada em uma determinada posio de memria, disponvel para processamento pela CPU. Depurao - Processo de pesquisa e eliminao de problemas e erros em um sistema. As fontes de erro consistem em problemas de fiao, partes com funcionamento incorreto ou descalibradas, instrues de programa com sintaxe errada e algoritmos de controle inadequados ao processo ou operao desejada. Diagrama de Blocos - Mtodo de representao que consiste em subdividir um sistema em vrias partes, mostrando a funo de cada bloco e apresentando graficamente a relao entre estes blocos.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

22

Diagrama de Estados - Mtodo de representao que apresenta as diversas etapas de um processo em uma montagem grfica, evidenciando as aes que sero efetuadas em cada etapa, bem como a seqncia dessas etapas (estados) e as condies que permitem que o processo passe de um estado a outro. Documentao - Todo o conjunto de informaes relativas a um equipamento ou sistema, incluindo diagramas eltricos, de fiao, de montagem, listagens de programa, procedimentos de manuteno, instrues de instalao e operao, etc. Edio -Trabalho de modificar um programa ou documentao no sentido de corrigir um problema, completar ou melhorar o desempenho do sistema. Encoder - Dispositivo tico, eletrnico ou eletromecnico, usado para medir e monitorar o movimento rotativo de uma pea. O encoder absoluto fornece um sinal codificado para cada posio do seu eixo. O encoder incremental fornece um determinado nmero de pulsos para cada unidade de movimento angular no eixo. Endereo - Cdigo que identifica a posio (localizao) de um determinado dado ou programa na memria de um computador ou CP. Entrada - Dispositivo de um computador ou CP que recebe uma determinada informao eltrica no meio ambiente e a repassa para o processamento na CPU. Entrada Analgica - Dispositivo de entrada capaz de receber e interpretar um sinal eltrico varivel continuamente em uma faixa de tenso ou corrente, onde a informao significativa transportada atravs da magnitude dessa tenso ou corrente. Entrada Digital - Dispositivo de entrada que recebe e interpreta uma informao do meio ambiente atravs de um cdigo de dois nveis predeterminados de tenso ou corrente.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

23

Eprom - Abreviatura de Erasable Programmable Read-Only Memory. Componente de memria capaz de ser gravada, apagada e regravada novamente. usada normalmente para armazenar a parte fixa do programa de um CP ou um determinado conjunto de dados que no sero modificados durante a operao. Estado - Na linguagem descritiva BCM, o conjunto de comandos que, quando ativado, provoca aes que caracterizam uma etapa do processo. A ativao sucessiva de cada estado determina a seqncia de controle do processo. E/S - Abreviatura para Entrada/Sada. Refere-se ao conjunto de dispositivos ou instrues de um CP responsveis pela relao do controlador com as informaes do meio ambiente. E/S Inteligente - Refere-se genericamente a um mdulo de entrada ou sada de um CP capaz de pr-processar as informaes antes de envi-las CPU ou as sadas. Esse recurso obtido atravs do uso de um processador localizado no prprio mdulo, realizando funes de escala, linearizao, clculos e funes especiais, dispensando a CPU e o programa do usurio dessas atividades. Flag - Varivel introduzida em um programa com o objetivo de sinalizar a execuo ou ocorrncia de uma determinada ao ou evento. Em outro ponto do programa, essa varivel ser lida e condicionar a execuo de uma instruo ou rotina. Flash-eprom - Componente de memria capaz de ser gravada, apagada e regravada eltricamente. usada normalmente para armazenar a parte fixa do programa de um CP ou um determinado conjunto de dados que podero ser modificados durante a operao. Fluxograma - Representao grfica que apresenta as diversas etapas da execuo de um programa. Todas as operaes e testes do programa esto representados por blocos, onde cada um ir corresponder a uma instruo ou conjunto de instrues no processador. Full Duplex - Modo de comunicao que permite que dois dispositivos troquem informaes, cada um transmitindo e recebendo simultaneamente.Verso 2009-1 Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

24

Half Duplex - Modo de comunicao que permite que dois dispositivos troquem informaes nas duas direes, porm no simultaneamente, isto , o dispositivo "A" transmite enquanto o dispositivo "B" somente recebe, e vice versa. Hardware - Todo o conjunto de partes, dispositivos fsicos e componentes que fazem parte de um sistema. Hexadecimal - Sistema de numerao de base 16. So necessrios dezesseis smbolos para representao, sendo que a padronizao mais usual utiliza os algarismos "0" a "9" e as letras "A" a "F". Hierarquia - Listagem ou classificao de um grupo de elementos de acordo com um conjunto de regras pr-determinadas. Refere-se tambm a ordem de execuo ou atendimento de uma srie de operaes concorrentes. Instruo - Cdigo simblico que representa uma seqncia de operaes que sero efetuadas pela CPU sobre um conjunto especfico de dados, de forma a obter resultados de acordo com regras previamente definidas. Interface - rea ou dispositivo de ligao entre componentes, circuitos, meios fsicos, ou sistemas entre os quais est previsto um intercmbio de dados, comandos de operao ou energia para alimentao. Interface Paralela - Dispositivo de interligao entre sistemas que transfere informao de um sistema a outro atravs de duas ou mais linhas codificadas coletivamente. Interface Srie - Dispositivo de interligao entre sistemas que transfere informao de um sistema a outro atravs de uma nica via, codificada atravs da seqncia temporal dos sinais significativos. Interrupo - Bloqueio na execuo normal de um programa para atendimento de uma outra rotina considerada mais prioritria. Aps o final dessa rotina, o programa volta execuo normal. O momento em que esse bloqueio ocorre determinado por um sinal externo ao programa.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

25

LCD - Abreviatura para Liquid Cristal Display. Refere-se a um tipo especfico de display cujos segmentos refletem a luz seletivamente, controlados por sinais eltricos para a formao dos caracteres e algarismos. LED - Abreviatura para Light Emitting Diode. Componente semicondutor que emite luz quando polarizado. usado basicamente como indicador visual em equipamentos eletrnicos. Linguagem - Conjunto de smbolos e regras que formam um cdigo capaz de permitir a comunicao entre o usurio e um determinado equipamento ou sistema. LSB - Abreviatura para Least Significant Bit. Bit menos significativo em uma palavra digital. Matriz - Arranjo de um determinado nmero de elementos com um significado nico. O agrupamento seqencial desses elementos em linhas e/ou colunas est normalmente associado a uma regra de ocupao determinada. Memria de Dados - Parte da memria de um computador ou CP reservada para armazenamento das constantes e variveis do programa, valores usados em operaes lgico-aritmticas, valores de contadores e temporizadores, estado corrente do processo, etc. Memria de Programa - Parte da memria de um computador ou CP onde esto localizadas as instrues de operao, as quais definiro como sero manejados os dados da memria e as entradas externas para fornecer as sadas que o processo sob controle exige. Memria Retentiva - Parte da memria de dados de um CP que mantem as informaes armazenadas independentemente da presena de alimentao no equipamento. Normalmente essa caracterstica obtida atravs da alimentao permanente dos dispositivos de memria com pilhas ou baterias.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

26

Mnemnico - Abreviatura ou conjunto de smbolos usado para referenciar rapidamente um dispositivo, equipamento, atividade, operao, etc. Normalmente composto por letras, nmeros ou palavras-chave retiradas da descrio do dispositivo ou operao. Modem - Abreviatura para Modulador/Demodulador. Equipamento usado para transmisso de dados digitais atravs de linhas telefnicas ou outros meios fsicos, usando princpios de modulao dos sinais em fase ou freqncia. Mdulo - Parte ou elemento de um equipamento ou sistema capaz de ser separado do conjunto mantendo determinadas caractersticas prprias. Em hardware entende-se por mdulo, uma parte que possa ser separada do equipamento, testada ou substituda individualmente. O mesmo conceito aplicado ao software se refere a partes de um programa que podem ser descritas, desenvolvidas, depuradas em separado e, posteriormente integradas ao sistema completo. MSB - Abreviatura para Most Significant Bit. Bit mais significativo em uma palavra digital. Multiplex - Ou multiplexao do processo que permite que dois ou mais sinais distintos sejam transmitidos em um mesmo canal de comunicao. Dois processos fundamentais so utilizados: a multiplexao no tempo divide os sinais em fatias no tempo, transmitindo uma amostra de cada sinal durante um perodo e numa seqncia determinada. A multiplexao em freqncia conseguida fazendo com que cada um dos sinais module uma freqncia portadora diferente no transmissor. A soma dos sinais enviada pela linha. No receptor, cada freqncia filtrada, separada e os diversos sinais podem ser demodulados separadamente. Nvel Lgico - Valores de tenso ou corrente que podem ser associados aos dois estados possveis em uma linha digital: "0" ou "1". Operando - Valor numrico sobre o qual uma operao lgico- aritmtica ser efetuada.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

27

Palavra - Grupo de dois ou mais bytes associados, tratados como uma unidade, com significado coletivo prprio. Paridade - Ou bit de paridade. Bit no significativo adicionado a um byte digital, usado para detectar erros de transmisso desse byte de um meio a outro. Para um sistema funcionar necessrio que haja um dispositivo ou rotina que gere o bit de paridade correto (0 ou 1) e outro dispositivo que leia o byte completo, incluindo o bit de paridade, determinando se a paridade da palavra est correta ou no. O sistema, dito de paridade par quando o nmero de bits"1" da palavra completa for par; e dito de paridade mpar, quando o nmero de bits "1" for mpar. Perifrico - Dispositivo ou equipamento conectado a um computador ou CP para executar uma funo especfica, sem que possa ser considerada parte integrante do equipamento bsico. PID - Ver Controle PID. Pointer - Ver Apontador. Porta - Ponto de conexo de um equipamento ou sistema para intercmbio de informaes do sistema com o meio ou ligao de perifricos. Preset - Valor predeterminado lanado na memria de dados como valor inicial para a partida de um processo ou rotina. Protocolo - Conjunto de regras e convenes que especificam as caractersticas, formatos, nveis lgicos, temporizao, etc., necessrios para viabilizar a comunicao entre sistemas ou entre partes dentro de um sistema. PROCP - uma ferramenta usada no desenvolvimento de programas para os CPs BCM. Possui verso para ambiente DOS e WINDOWS. Est disponvel no mesmo ambiente ferramentas para editar, compilar, carregar e monitorar programas.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

28

RAM - Abreviatura para Random Acess Memory. Componente de memria que permite o acesso aos dados armazenados para leitura ou escrita em um determinado tempo especificado, independentemente da localizao desse dado na memria. Realimentao - Sinal enviado pelo processo sob controle ao CP, indicando a resposta deste aos comandos de atuao aplicados pelo controlador. Reset - Ao de fazer retornar um processo ou varivel a uma condio inicial predeterminada. Rotina - Srie de instrues ou operaes que executam uma tarefa especfica. Rudo Eltrico - Sinais eltricos indesejveis em um sistema, capazes de perturbar ou modificar o funcionamento normal deste. A imunidade ao rudo definida como a medida da capacidade de funcionamento do sistema na presena de um nvel determinado de rudo eltrico. Sada - Dispositivo de um computador ou CP que transforma os comandos enviados pela CPU em nveis eltricos adequados, capazes de atuar sobre o meio externo. Sada Analgica - Dispositivo de um controlador programvel que transforma o contedo de uma varivel de programa em um valor de tenso ou corrente, disponvel para atuao sobre um circuito externo. A magnitude da tenso ou corrente est associada ao valor da varivel de acordo com uma regra pr-estabelecida. Sada Digital - Dispositivo de um controlador programvel que fornece uma tenso, corrente ou fecha um contato de acordo com o contedo de uma varivel ou um comando especfico do programa. A tenso ou corrente de sada pode assumir apenas dois nveis, correspondentes as situaes de sada ligada ou desligada. Sistema - Arranjo de componentes, dispositivos e/ou equipamentos ligados entre si como uma unidade organizada, capaz de executar um conjunto de funes e tarefas bem determinadas.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

29

Sistema Operacional - Programa bsico de um CP ou computador que controla a distribuio de memria, acesso aos perifricos, superviso do sistema e outras funes trabalhadas independentemente do programa do usurio. O sistema operacional pode incluir ainda as rotinas bsicas que desenvolvem as instrues disponveis em um equipamento programvel. Software - Todos os programas, rotinas, sistemas operacionais e documentao participantes e relativos a um sistema que no possam ser considerados como partes fsicas integrantes deste. Sub-rotina - Parte de um programa ou rotina com uma funo especfica, armazenada em separado na memria de programa e que pode ser chamada e executada em vrios pontos do programa, tantas vezes quanto necessrio. Transio - Na linguagem descritiva BCM, a combinao de eventos que condiciona uma mudana de estado, isto , a transferncia da atividade de um estado para outro. Varredura - Seqncia cclica de operaes dentro de um CP que engloba o atendimento dos perifricos, desenvolvimento das operaes relativas aos estados correntes, inspeo das condies de transio, interface com o operador, superviso do sistema, etc. Watchdog - Tipo especial de temporizador, usado para monitorar o funcionamento correto de um controlador. O programa do CP gera um sinal alternado permanente para o circuito Watchdog, com um perodo mximo especificado. Caso haja uma falha do processador, o sinal alternado pra; nesse caso, o circuito Watchdog se encarrega de tomar uma providncia que proteja o processo, acionando um alarme, desligando ou reinicializando o controlador.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

30

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

31

2 - A LINGUAGEM DESCRITIVA BCMO Diagrama de Estados basicamente uma forma padronizada de representao das regras de controle de um processo. Utilizando uma estrutura similar quela adotada na eletrnica e na matemtica, conhecida como "Diagrama de Variveis de Estado", possvel descrever operaes combinacionais ou seqenciais, executadas dentro de um fluxo nico ou em mltiplas ramificaes paralelas e simultneas. A forma grfica adotada permite uma fcil visualizao do conjunto, recurso fundamental na fase de projeto e especificao, oferecendo ao mesmo tempo uma forma exata para descrio de cada operao, viabilizando a programao do controlador a partir do Diagrama de Estados. importante ressaltar que qualquer programa para controle de processos digitais ou analgicos pode ser facilmente representado por um Diagrama de Estados. Alm disso, a utilizao do Diagrama de Estados elimina a necessidade de qualquer outro mtodo de descrio do processo.

2.1 - ESTRUTURA DA LINGUAGEM DESCRITIVA BCMA estrutura da Linguagem Descritiva BCM formada por trs elementos bsicos: os ESTADOS, as TRANSIES e a MALHA DE CONTROLE: O Estado o conjunto de comandos que, quando ativado, provoca aes que caracterizam uma etapa ou evento do processo. A ativao sucessiva dos estados determina a seqncia de controle do processo. Nos diagramas, o estado representado por uma elipse. No canto esquerdo ser colocado o nmero do estado. No espao da direita sero descritas as aes efetuadas ou os comandos ativos para esse estado.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

32

Uma condio de Transio a combinao de eventos que determinam uma mudana de estado, isto , a transferncia da atividade de um estado para outro. No diagrama, a transio representada por uma seta orientada que liga o estado de origem com o estado para a transferncia. Sobre a seta so descritas as condies vlidas para essa transio.

1 LIGA ESTCAI RESET NPEC PESO=CAIXA DESL ESTCAI 2 LIGA ESTPEC,RECPOR

Uma Malha de controle um diagrama de estados parcial, que corresponde a um ramo do processo, dentro do qual apenas um estado pode estar ativo a cada momento. O diagrama de estados completo do processo pode ser composto por uma ou mais malhas. Devido aos recursos de multiprocessamento do controlador, todas as malhas sero atendidas simultaneamente quando da execuo do programa em tempo real.

1

LIGA ESTCAI RESET NPEC PESO=CAIXA DESL ESTCAI LIGA ESTPEC,RECPOR PESO=PPROG DESL RECPOR

2

3

PESO=0 4

T=5 seg DESL ESTPEC

O Diagrama de Estados apresenta de forma grfica uma estrutura lgica completa atravs de um conjunto de malhas de controle. Cada malha assume o controle de uma parcela determinada do processo. O Controlador Programvel oferece recursos para atendimento simultneo de diversas malhas. Este recurso de processamento multitarefas muito importante no desenvolvimento de solues de controle para os sistemas reais e de difcil representao pela maioria das outras formas de documentao.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

33

2.2 - REGRAS DE PROGRAMAO NA LINGUAGEM DESCRITIVAO diagrama de estados uma forma padronizada de representao das regras de controle de um processo. Utilizando uma estrutura similar a que adotada na eletrnica e na matemtica, conhecida como "Diagrama de Variveis de Estado", possvel descrever operaes combinacionais ou seqenciais, executadas dentro de um fluxo nico ou em mltiplas ramificaes paralelas e Simultneas. A forma grfica adotada permite uma fcil visualizao do conjunto, recurso fundamental na fase de projeto e especificao, oferecendo ao mesmo tempo uma forma exata para descrio de cada operao, viabilizando a programao do controlador a partir do Diagrama de Estados. A seguir sero apresentadas, de forma sistemtica e mais detalhada, as regras fundamentais para elaborao, anlise e execuo pelo controlador, adotadas na programao atravs de diagramas de estado:

FRegra 1O estado sempre representado por uma elipse, dividida em dois campos: No lado menor, a esquerda, colocado o nmero de referncia do estado; no lado direito so includos todos os comandos e aes ativos para esse estado.

FRegra 2Os estados no diagrama so referenciados por um nmero situado na faixa entre 0 e 255. Cada malha recebe uma seqncia de numerao independente.

FRegra 3A numerao adotada para os estados usada apenas para referncia. No existe nenhum sentido de seqncia ou prioridade de execuo pelo CP na numerao dos estados. A nica considerao especial que o controlador ao ser ligado, inicia a execuo do programa sempre pelo estado 0 de cada malha.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

34

FRegra 4Somente um estado pode estar ativo de cada vez num mesmo Diagrama de Estados. Apenas os comandos e operaes desse estado sero executadas nesse momento. Alm disso, apenas as condies de transio do estado ativo sero consideradas pelo controlador.

FRegra 5Associado a cada estado so aceitas duas formas condicionais: As condies para transio de estado especificam as relaes que, quando cumpridas fazem que o controlador transfira a atividade para o estado de destino; As condies para execuo imediata fazem que as aes especificadas sejam executadas dentro do estado ativo apenas se as relaes lgicas mencionadas forem vlidas. Transio de estado Execuo imediata

1

INI=1 INI=1 1 LIGA 1

2

FRegra 6A transio representada por uma seta reta ou curva, indicando o sentido da transferncia da atividade quando do cumprimento das condies de transio.

FRegra 7As operaes e comandos associados condio de execuo imediata so representados dentro de um retngulo, ligado por uma linha ao estado.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

35

FRegra 8O programa ignora todos os estados e transies executados, somente considerando as transies com origem no estado ativo. O programa s considera vlidas as transies com origem no estado ativo, ignorando todas as demais. Assim, podemos dispensar a preocupao com o acionamento de entradas fora da seqncia desejada.

FRegra 9So aceitas mltiplas condies de transio de um estado para outro. Quando duas ou mais expresses lgicas esto colocadas sobre uma mesma linha de transio, deve-se considerar que a transio ocorrer quando todas as expresses forem vlidas (ligao "E"). Para que a transio ocorra com apenas uma das expresses vlidas (ligao "OU"), necessrio que a palavra "OU" aparea entre as expresses. Ligao "E" Ligao "OU"

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

36

FRegra 10So aceitas duas ou mais linhas de transio entre um estado origem e um destino. Neste caso a transio ocorrer quando uma das expresses for vlida (corresponde a ligao "OU").

1

MED=10

INI=1

2

FRegra 11O nmero de transies com origem em cada estado ilimitado. No entanto um nmero muito grande de transies pode ocasionar uma falha por WATCH DOG. O programa pode seguir diversos caminhos a partir de um estado; o caminho a seguir ser decidido pela ltima condio de transio aprovada.

FRegra 12No caso previsto pela regra anterior, importante definir o que acontece se duas ou mais condies estiverem simultaneamente vlidas. Quando a caracterizao da ordem de prioridades for importante, ser representada na forma a seguir: - (1) para o mais prioritrio; (2) para a segunda prioridade; e assim por diante.1 1 3 BAT=1 INI=0 WOO>30 2 WOO=0 4

2

3

4

5

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

37

FRegra 13Em determinadas situaes dentro de um programa necessrio ou conveniente definir transies entre estados sem condio especificada. No caso do exemplo, quando o estado 3 fica ativo, a sada 3 ligada; Imediatamente a seguir, o estado ativo passa a ser o 5, provocando a execuo imediata da operao "W00=W00+1". No programa editado, esse tipo de transio tratado pela instruo "VA PARA". A figura mostra o trecho-exemplo, salientando a forma de representao grfica.

2

WOO=0

3

LIGA 3

5

WOO=WOO+1

FRegra 14Outro tipo de condio de transio a chamada "Condio Temporizada". Neste caso, ao invs de combinaes lgicas de entradas ou variveis, a transio est condicionada a passagem de um tempo. O tempo necessrio para a transio aparece ao lado da linha no diagrama. No programa editado, esse tipo de transio tratado pela instruo "ATRASO".

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

38

FRegra 15Frequentemente aparece a necessidade de combinar uma condio temporizada com um ou mais testes de variveis. O trecho do diagrama de estados abaixo mostra esse caso. O programa vai para o estado 4 depois de passar 5 segundos e se a entrada "INI" estiver acionada. Observar que: - Os 5 segundos so contados a partir da entrada no estado 3, independentemente da situao de "INI". - Se a entrada "INI" for acionada 5 segundos ou mais aps a entrada no estado 3, a transio ocorrer imediatamente.

2

WOO=1

3 INI=1 5 seg.

4

FRegra 16Cada malha componente do sistema recebe um nmero de referncia. A primeira malha ser a 0, a segunda ser a 1 e assim por diante, at um nmero mximo de 64 malhas.

FRegra 17Cada estado sempre pertencente a uma e somente a uma malha. Alm disso, um estado ativo com uma condio de transio vlida transfere a atividade para o estado indicado na transio (estado de destino); Esse estado de destino pertencer necessariamente a mesma malha do estado anterior.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

39

FRegra 18Do ponto de vista do diagrama de estados, cada malha considerada um processo independente. No pode haver transies de um estado de uma malha para outro em outra malha.

2.3 - COMO PROGRAMAR NA LINGUAGEM DESCRITIVA

As caixas de dilogo que aparecero ao longo do captulo servem parasituar/orientar o usurio sobre onde encontrar outras informaes a respeito de determinado tpico. A etapa seguinte elaborao do diagrama de estados a edio do programa do CP, propriamente dito. A tecnologia empregada nas CPUs BCM permite a programao direta, isto , o programa do usurio transferido diretamente do microcomputador para a memria do CP atravs do canal serial RS 232. Os recursos necessrios para a edio e transferncias do programa para o CP so: Microcomputador padro IBM-PC Software WINDOWS Compilador BCM PROCP Cabo de comunicao serial RS232 (especfico para CPs BCM) A seguir esto descritos os comandos e instrues para programao em linguagem descritiva BCM, segundo a sua funo dentro do programa do usurio. Sempre que for necessrio, ser apresentado um exemplo de aplicao para facilitar a compreenso e a utilizao do(s) respectivo(s) comando(s) e/ou instruo(es).

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

40

2.4 - SINTAXE DAS INSTRUES E COMANDOSPara cada comando ou instruo, ser apresentada a forma sinttica, a descrio completa da operao e o conjunto de parmetros e opes disponveis. Sempre que for conveniente, sero includos exemplos procurando esclarecer o funcionamento da forma mais clara e precisa possvel. Em geral, o funcionamento dos comandos e instrues idntico para todos os modelos de Controladores Programveis BCM. Sempre que houver diferenas, o texto chamar a ateno para todos os casos possveis. Naturalmente, a aplicabilidade de cada recurso est associada a disponibilidade fsica desse recurso no modelo ou verso do Controlador Programvel em questo. - Os sinais "igual", "pontos", "vrgulas" e espaos em brancos devem ser seguidos rigorosamente na edio. Caso contrrio, sero interpretados incorretamente pelo compilador. - Os elementos representados em letras minsculas significam constantes ou variveis que devem ser introduzidas nas posies citadas, de acordo com o que consta em cada descrio. - Os elementos entre colchetes "[ ]", so opcionais na composio da linha de programa. A sua incluso ou no produz diferentes efeitos na operao do comando ou instruo. - Os elementos entre chaves "{ }" so alternativos na composio da linha de programa. Dentro dos colchetes aparecem dois ou mais elementos entre colchetes. Para o funcionamento adequado, um dos elementos entre colchetes deve ser escolhido pelo programador. A incluso de cada tipo de elemento produz um determinado efeito na operao do comando ou instruo, conforme descrito.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

41

2.4.1 - Comandos de Configurao do CP Estes tem a finalidade de especificar parmetros, habilitar blocos funcionais do sistema operacional e instruir o compilador em relao a determinados procedimentos. Com a excesso dos comandos `CONTINUA' e `FIM', os demais comandos de configurao devem ser sempre colocados no incio do programa, antes da primeira definio de malha. O programador deve prestar especial ateno no momento da entrada destes comandos. A omisso da definio de um perifrico faz com que este no opere; Parmetros incorretos podem levar a erros de compilao ao longo do programa ou erros de execuo no controlador.

BCD=x Este comando, vlido apenas para o controlador BCM2085 com interface BCD, habilita a rotina de tratamento de chaves Thumbwheel. O parmetro `x' define o nmero de chaves BCD por grupo. So aceitos os valores 2 ou 4.

CLP=tipo[([ESD=X][ESA=Y][ESH=Z][ESP=1][VAF=1])] Define o tipo de controlador programvel BCM no qual o programa ser aplicado. Os seguintes tipos esto disponveis:BCM2085 CPU6 CPU6A CPU7 CPU7-10 CPU7-11 CPU8 Configura o sistema para compilao, gravao de EPROMs e transferncia para flash-Eprom nos controladores BCM2085 que usem a CPU3, CPU4 ou CPU4A. Configura o sistema para compilao de programas que sero usados no BCM2085/CPU6. Configura o sistema para compilao de programas que sero usados no BCM2085/CPU6A. Configura o sistema para compilao de programas que sero usados no BCM2085/CPU7. Configura o sistema para compilao de programas que sero usados no BCM2085/CPU7 -10. Vlido para PROCP V4K ou superior. Configura o sistema para compilao de programas que sero usados no BCM2085/CPU7 -10. Vlido para PROCP V4K ou superior. Configura o sistema para compilao de programas que sero usados no BCM2085/CPU8. Vlido para PROCP V4K 1.2 ou superior.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

42

BCM 1086 BCM 1088 BCM 3011

GP 3101 GP 3001 GP 3005 GP 3006 GP 3009 GP 3020

Configura o sistema para compilao, gravao de EPROMs e transferncia para flash-Eprom nos controladores BCM1086 e BCM1086A. Configura o sistema para compilao e transferncia para flash-Eprom nos controladores BCM1088. Configura o sistema para compilao e transferncia para flsh-Eprom nos controladores GP3000 (GP3011 e GP 3020). Vlido para o PROCPV3K ou superior. Configura o sistema para compilao e transferncia para flash-Eprom nos controladores GP3101. Vlido para o PROCPV4K ou superior. Configura o sistema para compilao e transferncia para flash-Eprom nos controladores GP3001. Vlido para o PROCPV4K 1.2 ou superior. Configura o sistema para compilao e transferncia para flash-Eprom nos controladores GP3005. Vlido para o PROCPV4K 1.2 ou superior. Configura o sistema para compilao e transferncia para flash-Eprom nos controladores GP3006. Vlido para o PROCPV4K 1.2 ou superior. Configura o sistema para compilao e transferncia para flash-Eprom nos controladores GP3009. Vlido para o PROCPV4K 1.2 ou superior. Configura o sistema para compilao e transferncia para flash-Eprom nos controladores GP3020. Vlido para o PROCPV4K 1.2 ou superior.

As opes entre parnteses so utilizadas para o BCM GP 3011 e GP3101 para definir a configurao de mdulos de entradas e sadas.ESD ESA ESH ESP VAF O parmetro x (1 a 4) define o nmero de mdulos GP3ESD. O parmetro y (1 a 4) define o nmero de mdulos GP3ESA. O parmetro z (1 a 4) define o nmero de mdulos GP3ESH. Declara que se ser usado o mdulo ESP. Somente um mdulo pode ser usado por controlador. Declara que se ser usado o mdulo ESP. Somente um mdulo pode ser usado por controlador.

Observao: o nmero mximo total de mdulos 4 . Se um tipo de mdulo no for usado este deve ser omitido.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

43

CONTINUA: (Narq.BCM) Esse comando permite que um programa aplicativo BCM seja dividido em vrios arquivos. Narq.BCM deve ser o nome de um arquivo com extenso .CLP ou .BCM localizado no mesmo diretrio. O compilador, ao encontrar esse comando, interrompe a compilao e continua a partir do incio do novo arquivo. usado principalmente para programas longos, que excedem a capacidade de memria do PROCP. Nestes casos, divide-se o programa em vrias partes, com nomes de arquivo diferentes, usando o comando `CONTINUA' para un-los no momento da compilao. A partir do PROCP verso V5K, a limitao de 64kbytes por arquivo fonte em linguagem descritiva deixou de existir. A utilidade do comando CONTINUA permanece para organizar diferentes partes de um aplicativo longo.

Exemplo:;Arquivo: "TESTE1.BCM" MAQUINA 0: ESTADO 0: FACA MIN=0 E HOR=0 VA PARA 1 " " " " ESTADO 30: FACA* W00=SEC E W88=58888 E W89=HOR E W90=MIN FACA* W01=AN1 E W02=AN2 E W03=AN3 E W04=AN4 E W05=AN5 E W06=AN6 CONTINUA:(TESTE2.BCM) ;Arquivo: "TESTE2.BCM" MAQUINA 1: ESTADO 0: SE I01=1 OU I13=1 OU TF1=1 LIGA 1 SE I01=0 E I13=0 E TF1=0 DESL 1 " " " " ESTADO 13: SE V04 conexo passiva - TCPAT= 1 -> dispara conexo ativa - TCPAT= 2 -> tentando estabelecer conexo ativa - TCPAT= 3 -> conexo ativa estabelecida

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

53

Os seguintes canais do Display #3 do GP3101 (SO verso 2005-3 ou superior) so utilizados para controle da comunicao ModbusTCP e portanto no podem ser utilizados para outras finalidades: Variveis de configurao (somente p/ conexo ativa):Nome IP_1 IP_2 IP_3 IP_4 PORTA Canal 0 1 2 3 4 Endereo C400h C402h C404h C406h C408h Descrio 1o octeto do endereo IP do host (Supervisrio) 2o octeto do endereo IP do host 3o octeto do endereo IP do host 4o octeto do endereo IP do host Porta p/ conexo da comunicao Modbus com o host

Variveis de monitorao (conexo ativa e passiva):Nome CONTC RXPCM RXPCP Canal 5 6 7 Endereo C40Ah C40Ch C40Eh Descrio Contador de tentativas de abertura de conexo TCP Contador de pacotes Modbus recebidos Contador de pacotes recebidos descartados

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

54

Conexo ativa nas funes Gateway pelos canais RS232 e RS485 Ateno: Este recurso vlido somente para o GP3101 com S.Operacional verso 2008-1 ou superior. As variveis de interface de Gateway RS232 ativo e Gateway RS485 ativo devem ser alocadas nos seguintes endereos do display #3:Prot. GW232 Nome IP2_1 IP3_1 IP4_1 PORT1 DPCO1 CNTD1 IP1_2 IP2_2 IP3_2 IP4_2 PORT2 DPCO2 CNTD2 Canal 11 12 13 14 15 16 17 18 19 20 21 22 23 Descrio 2o octeto do IP do equipamento destino (cliente) 3o octeto do IP do equipamento destino (cliente) 4o octeto do IP do equipamento destino (cliente) Porta para conexo no equipamento destino Flag de disparo da conexo ativa (1) ativa; (3) encerra Contador de pedidos de conexo 1o octeto do IP do equipamento destino (cliente) 2o octeto do IP do equipamento destino (cliente) 3o octeto do IP do equipamento destino (cliente) 4o octeto do IP do equipamento destino (cliente) Porta para conexo no equipamento destino Flag de disparo da conexo ativa (1) ativa; (3) encerra Contador de pedidos de conexo

GW485

O padro Ethernet permite que dois ou at trs desses servios sejam configurados simultaneamente. Isto feito atravs da colocao de mais de uma linha INTERFACE3 no programa. O compilador deve indicar erro nos casos de conflito de alocao de uma porta serial para duas finalidades - Se for includo no mesmo programa as instrues: INTERFACE1=... e INTERFACE3=(PROTOCOLO=GAT232...) ou: INTERFACE2=... e INTERFACE3=(PROTOCOLO=GAT485...) O compilador deve indicar erro no caso de haver a mesma programao de PORTA para diferentes servios.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

55

Exemplos: INTERFACE3=(PROTOCOLO=GAT485 VEL=9600) Configura o canal TCP/IP para operar como gateway com a porta serial RS 485(canal 2). A porta serial ir funcionar a 9600 baud.

INTERFACE3=(PROTOCOLO=MODBUSTCP PORTA=30) Configura o canal TCP/IP para operar no protocolo MODBUS TCP, na porta lgica 30, sem abrir a comunicao na rede.

INTERFACE3=(PROTOCOLO=MODBUSTCP PORTA=30) ************** ************** FACA TCPAT=1 Configura o canal TCP/IP para operar no protocolo MODBUS TCP, na porta lgica 30, tomando a iniciativa de abrir a comunicao na rede. Devem ser tambm configurados os parmetros especficos para a operao ativa, conforme descrito acima.

INTERFACE3=(PROTOCOLO=GAT232 VEL=9600) INTERFACE3=(PROTOCOLO=GAT485 VEL=9600) INTERFACE3=(PROTOCOLO=MODBUSTCP PORTA=30) Configura o canal TCP/IP para executar os trs servios simultaneamente. Funciona como gateway para o canal serial RS232 atravs da porta 23, funciona como gateway para o canal serial RS485 atravs da porta 24 e tambm opera no protocolo MODBUS TCP, atravs da porta lgica 30.

INTERFACE3=(PROTOCOLO=GAT232 VEL=9600 PORTA=10) INTERFACE3=(PROTOCOLO=GAT485 VEL=9600 PORTA=20) INTERFACE3=(PROTOCOLO=MODBUSTCP PORTA=30) Configura o canal TCP/IP para executar os trs servios simultaneamente. Funciona como gateway para o canal serial RS232 atravs da porta 10, funciona como gateway para o canal serial RS485 atravs da porta 20 e tambm opera no protocolo MODBUS TCP, atravs da porta lgica 30.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

56

NEST=xxx Reserva um espao de memria para a tabela de estados. Este espao deve ser igual ou superior ao nmero de estados mais o nmero de testes independentes de estado de todo o programa. O valor para 'xxx' aceito na faixa 1 a 2000. Se omitido, o sistema reservar um espao de 150 estados. PAN=x Este comando habilita a rotina de tratamento da placa BCM2085/PAN - Painel de leds. O parmetro `x' define o nmero de placas utilizadas no sistema. Pode ser 1 ou 2. Outro valor provocar erro na compilao. Se este comando no estiver presente, as placas no sero acessadas. importante observar que a incluso do comando PAN influi na capacidade de instalao de mdulos BCM2085/CTR no sistema.

RTC Habilita a operao do relgio de tempo real. Este comando usado nos controladores BCM1086A, GP3000 e no BCM2085 com a placa `MEM' instalada.

SAIDA r1{,r2,...rn} = aaa{,bbb,...nnn} Esta instruo est disponvel para o controlador BCM2085B, com CPU7 ou CPU8. Este comando associa as saidas digitais 'r1' ... at 'rn' s variveis 'aaa' ... at 'nnn'. Com isto, as sadas podero ser tratadas como variveis. A varivel 'aaa' dever ser varivel livre ou matricial (criada pelo comando DIM). As variveis 'bbb' ... at 'nnn' devero ser variveis livres, no podendo ser variveis indexadas, fixas ou de entrada digital. Quando a varivel 'aaa' for matricial, no podero ser definidas outras variveis. A ordem das sadas r1{,r2,...rn} dever ser crescente e ser verificada no momento da compilao. O acionamento das sadas no declaradas por esta instruo, continuar sendo feita pelas instrues LIGA, DESL e outras do mesmo gnero. O Sistema Operacional ter um bloco de tratamento das variveis associadas s sadas. Este bloco ser executado no incio de cada ciclo. Neste bloco, cada varivel associada que tiver o seu valor diferente de zero ser ligada, seno a sada ser desligada.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

57

No programa BCM, todas as sadas associadas devero ser declaradas depois dos comandos DIM (se houver) e NEST (se houver) e antes da descrio da MALHA 0. O compilador dever gerar uma mensagem de erro, se esta ordem no for respeitada. No Compilador, as instrues LIGA n, DESL n, SE condio LIGA n e/ou SE condio DESL n, cuja saida 'n' for associada a uma varivel, gerar uma mensagem de erro.

TCP IP=x GT=y NT=z Configura os parmetros TCP/IP do canal Ethernet do GP 3101. Disponvel para o PROCP V4K ou superior. Os parmetros configurveis so os seguintes:IP=x - Define o nmero IP do equipamento na rede. O PROCP testa por nmeros vlidos (0 a 255 e diferente de 0.0.0.0). Deve estar presente e colocado no formato padro de quatro octetos separados por pontos. GT=y - Define o endereo IP do gateway . Deve estar presente e colocado no formato padro de quatro octetos separados por pontos. NT=z - Define o netmask. Deve estar presente e colocado no formato padro de quatro octetos separados por pontos.

Exemplo: TCP IP=192.168.150.140 GT=192.168.150.255 NT=255.255.255.200

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

58

2.4.2 - Instrues de Programao

COPIA xxx(yyy) PARA zzz(www) QUANT=kkk Copia um conjunto de elementos de uma matriz para outra, a partir dos ndices especificados. Os parmetros yyy e www podem ser uma constante ou uma varivel. O parmetro kkk indica a quantidade de elementos a copiar, podendo ser constante ou varivel no indexada. Esta instruo executada na transio, isto , somente na primeira vez em que entra no ESTADO da MALHA que contm a respectiva instruo. Este recurso est disponvel no Controlador Programvel que use o mdulo BCM2085B/CPU7-11 ou /CPU8.

DECREMENTA aaa,bbb,ccc,ddd(iii) Decrementa de uma unidade o contedo das variveis mencionadas. Qualquer tipo de varivel aceita, inclusive variveis matriciais. Equivale instruo "FACA aaa=aaa-1 E bbb=bbb-1", etc., com mais clareza na edio, economia de memria e de tempo de processamento. Podem ser usadas vrias instrues DECREMENTA em um estado. A nica exigncia que as linhas com esta instruo devem ser adjacentes. Alm disso, todas as instrues SET, RESET, INCREMENTA e DECREMENTA de um estado devem estar agrupadas.Exemplo: ESTADO 5: FACA CONT=10 VA PARA 6 ;Este bloco de programa aciona a sada 1 por 10 vezes, ;com um tempo ligado de 1s e desligado de 1s.

ESTADO 6: LIGA 1 SE ATRASO=10 ENTAO 7 ESTADO 7: DESL 1 DECREMENTA CONT SE ATRASO=10 ENTAO 6 SE CONT=0 ENTAO 8

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

59

EAI Essa instruo controla o funcionamento da placa BCM2085/EAI, permitindo que o usurio, atravs do programa em alto nvel, defina as caractersticas de funcionamento da placa conforme a aplicao. A mesma instruo permite adquirir os valores analgicos dos pontos de entrada e ler os valores processados localmente pela placa EAI, incluindo-os no programa da forma mais adequada. A varivel "r" especifica o nmero do ponto analgico que ser atendido pelo comando. O Sistema Operacional suporta um mximo de 128 pontos de entradas analgicas, distribuidos em at 8 placas. O comando define a operao a ser feita dentro da instruo `EAI'. Cada comando possui um conjunto prprio de parmetros com sintaxe definida. Somente um comando pode ser usado em cada linha de programa.

EAI r FILTRO [KP=www] [KI=yyy] [KD=zzz] [AI=uuu] [LIN=h] [ESC=xxx] [DES=vvv] [TA=qqq] [LS=sss] [LI=ttt] Programa os valores gerais relativos ao sistema de controle do canal `r' da placa EAI: - KP Transfere a varivel `www', relativa ao coeficiente proporcional vezes 256, para o PID do canal `r' da placa EAI. So permitidos valores na faixa 0 a 65534. Se omitido, o coeficiente proporcional assume o valor 1. - KI Transfere a varivel `yyy', relativa ao coeficiente integral vezes 256, para o PID do canal `r' da placa EAI. So permitidos valores na faixa 0 a 65534. Se omitido, assume o valor 0. Transfere a varivel `zzz', relativa ao coeficiente derivativo vezes 256, para o PID do canal `r' da placa EAI. Se omitido, assume o valor 0. Transfere a varivel `uuu', relativa ao acumulador integral, para o PID do canal `r' da placa EAI. Se omitido, o acumulador integral no ser alterado.

- KD

- AI

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

60

- LIN

O nmero `h' (sempre constante) especifica o cdigo para uma funo de linearizao. Essa funo aplicada diretamente sobre a leitura do conversor A/D. Todos os processamentos posteriores (sada VME, controle PID) tero como base o valor j passado pela funo especificada. Note que cada ponto analgico pode ter uma funo de linearizao distinta dos demais, independentemente da placa onde estiver instalada. - Funo 0: Sem linearizao (Leitura medida = Lad) - Funo 1: Linearizao para termopar tipo T - Leitura = 1000 + (10 * Temperatura) - Funo 2: Linearizao para termopar tipo S - Leitura = 1000 + (10 * Temperatura) - Funo 3: Linearizao para termopar tipo K - Leitura = 1000 + (10 * Temperatura) - Funo 4: Linearizao para termopar tipo J - Leitura = 1000 + (10 * Temperatura) Est previsto o desenvolvimento de funes de linearizao para outros tipos de termopares e transdutores no-lineares. O contedo da varivel `xxx' ser o fator de escala aplicado a sada do conversor A/D, aps a passagem pela funo de linearizao. expresso em termos de unidades do A/D por unidade da varivel da sada, vezes 256. So permitidos valores na faixa 0 a 65534. Se omitido, assume o valor 256. O contedo da varivel `vvv' ser o deslocamento (offset) de leitura. Especifica o valor que ser somado a sada da funo de linearizao, j includo o fator de escala. So permitidos valores na faixa 0 a 65534. Se omitido, assume o valor 0.

- ESC

- DES

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

61

- TA

Transfere a varivel `qqq', relativa ao tempo de amostragem para os fatores integral e derivativo do filtro PID relativo ao canal `r' da placa EAI. expresso em dcimos de segundo; a varivel pode assumir valores entre 1 e 255 correspondendo a intervalos de amostragem entre 0,1 e 25,5 segundos. Se omitido, o mdulo assume um intervalo de amostragem de 1 segundo. Transfere a varivel `sss' para o registro de limite superior do filtro PID. O contedo dessa varivel ir ser o limitante superior da sada do filtro PID. Ao atingir esse valor, o acumulador integral no aumenta mais, independentemente do valor do erro. So permitidos valores na faixa 0 a 65534. Transfere a varivel `ttt' para o registro de limite inferior do filtro PID. O contedo dessa varivel ir ser o limitante inferior da sada do filtro PID. Ao atingir esse valor, o acumulador integral no diminui mais, independentemente do valor do erro.

- LS

- LI

EAI r LEITURA [VME=yyy] [REF=xxx] [PID=www] Esse comando adquire informaes relativas ao canal `r' da placa EAI para tratamento em alto nvel. Os parmetros permitem especificar as variveis que recebero estas informaes: - VME Valor Medido. Carrega o valor medido da entrada analgica `r' na varivel `yyy' no momento da execuo da instruo. Note que o valor carregado corresponde a sada da funo de linearizao, aplicados ainda os fatores de escala e deslocamento. A frmula aplicvel a seguinte: VME = (ESC / 256) * Fx(Lad) + DES ESC -Fator de escala, programado em "FILTRO" DES -Fator de deslocamento, programado em "FILTRO" Fx( )-Funo de linearizao, selecionada em "FILTRO" Lad -Leitura obtida no conversor A/D.

Onde:

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

62

- REF

Valor de Referncia PID. O contedo da varivel `xxx' ser o valor de referncia para aplicao do filtro PID. Ver o parmetro `PID' para o detalhamento do algoritmo.

- PID

Valor de Sada PID. Carrega o valor de sada do filtro PID na varivel `www', de acordo com o seguinte algoritmo: PID=Kp * Err + Ki * SErr + Kd * dErr Onde: Err o erro de controle (REF - VME); SErr a soma de todos os erros acumulados a cada intervalo de amostragem; dErr a diferena entre o erro atual e o erro registrado no intervalo de amostragem anterior.

Os comandos associados a instruo `EAI' so ativados no estado, isto , so repetidos uma vez a cada varredura enquanto o controlador estiver no estado. Alm dos comandos descritos para trabalho com o mdulo EAI, o Sistema Operacional possui a varivel de atribuio fixa `EANER' que indica o nmero de mdulos ativos no sistema e o cdigo de erro relativo a inicializao ou operao das placas. Observar que no podem ser utilizados mdulos EAN e EAI no mesmo controlador.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

63

EAN Essa instruo controla o funcionamento da placa BCM2085/EAN, permitindo que o usurio, atravs do programa em alto nvel, defina as caractersticas de funcionamento da placa conforme a aplicao. A mesma instruo permite adquirir os valores analgicos dos pontos de entrada e ler os valores processados localmente pela placa EAN, incluindo-os no programa da forma mais adequada. A varivel "r" especifica o nmero do ponto analgico que ser atendido pelo comando. O Sistema Operacional suporta um mximo de 64 pontos de entradas analgicas, distribuidos em at 8 placas. O comando define a operao a ser feita dentro da instruo `EAN'. Cada comando possui um conjunto prprio de parmetros com sintaxe definida. Somente um comando pode ser usado em cada linha de programa.

EAN r FILTRO [KP=www] [KI=yyy] [KD=zzz] [AI=uuu] [LIN=h] [ESC=xxx] [DES=vvv] [TA=qqq] [LS=sss] [LI=ttt] Programa os valores gerais relativos ao sistema de controle do canal `r' da placa EAN: - KP Transfere a varivel `www', relativa ao coeficiente proporcional vezes 256, para o PID do canal `r' da placa EAN. Se omitido, o coeficiente proporcional assume o valor 1. Transfere a varivel `yyy', relativa ao coeficiente integral vezes 256, para o PID do canal `r' da placa EAN. Se omitido, assume o valor 0. Transfere a varivel `zzz', relativa ao coeficiente derivativo vezes 256, para o PID do canal `r' da placa EAN. Se omitido, assume o valor 0. Transfere a varivel `uuu', relativa ao acumulador integral, para o PID do canal `r' da placa EAN. Se omitido, o acumulador integral no ser alterado.

- KI

- KD

- AI

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

64

- LIN

O nmero `h' (sempre constante) especifica o cdigo para uma funo de linearizao. Essa funo aplicada diretamente sobre a leitura do conversor A/D. Todos os processamentos posteriores (sada VME, controle PID) tero como base o valor j passado pela funo especificada. Note que cada ponto analgico pode ter uma funo de linearizao distinta dos demais, independentemente da placa onde estiver instalada. - Funo 0: Sem linearizao (Leitura medida = Lad) - Funo 1: Linearizao para termopar tipo T - Leitura = 1000 + (10 * Temperatura) Est previsto o desenvolvimento de funes de linearizao para outros tipos de termopares e transdutores no-lineares.

- ESC

O contedo da varivel `xxx' ser o fator de escala aplicado a sada do conversor A/D, aps a passagem pela funo de linearizao. expresso em termos de unidades do A/D por unidade da varivel da sada, vezes 256. Se omitido, assume o valor 256. O contedo da varivel `vvv' ser o deslocamento (offset) de leitura. Especifica o valor que ser somado a sada da funo de linearizao, j includo o fator de escala. Se omitido, assume o valor 0. Transfere a varivel `qqq', relativa ao tempo de amostragem para os fatores integral e derivativo do filtro PID relativo ao canal `r' da placa EAN. expresso em dcimos de segundos; a varivel pode assumir valores entre 1 e 255 correspondendo a intervalos de amostragem entre 0,1 e 25,5 segundos. Se omitido, o mdulo assume um intervalo de amostragem de 1 segundo. Transfere a varivel `sss' para o registro de limite superior do filtro PID. O contedo dessa varivel ir ser o limitante superior da sada do filtro PID. Ao atingir esse valor, o acumulador integral no aumenta mais, independentemente do valor do erro.Referncia: 31940092-8

- DES

- TA

- LS

Verso 2009-1

BCM Automao

Linguagem Descritiva BCM

65

- LI

Transfere a varivel `ttt' para o registro de limite inferior do filtro PID. O contedo dessa varivel ir ser o limitante inferior da sada do filtro PID. Ao atingir esse valor, o acumulador integral no diminui mais, independentemente do valor do erro.

EAN r LEITURA [VME=yyy] [REF=xxx] [PID=www] [OVE=zzz] Esse comando adquire informaes relativas ao canal `r' da placa EAN para tratamento em alto nvel. Os parmetros permitem especificar as variveis que recebero estas informaes: - VME Valor Medido. Carrega o valor medido da entrada analgica `r' na varivel `yyy' no momento da execuo da instruo. Note que o valor carregado corresponde a sada da funo de linearizao, aplicados ainda os fatores de escala e deslocamento. A frmula aplicvel a seguinte: VME= (ESC / 256) * x(Lad) + DES Onde: ESC -Fator de escala, programado em "FILTRO" DES -Fator de deslocamento, programado em "FILTRO" Fx( )-Funo de linearizao, selecionada em "FILTRO" Lad -Leitura obtida no conversor A/D. Valor de Referncia PID. O contedo da varivel `xxx' ser o valor de referncia para aplicao do filtro PID. Ver o parmetro `PID' para o detalhamento do algoritmo. Valor de Sada PID. Carrega o valor de sada do filtro PID na varivel `www', de acordo com o seguinte algoritmo: PID = Kp * Err + Ki * SErr + Kd * dErr Err o erro de controle (REF - VME) SErr a soma de todos os erros acumulados a cada intervalo de amostragem, dErr a diferena entre o erro atual e o erro registrado no intervalo de amostragem anterior.

- REF

- PID

Onde:

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

66

- OVE

Sinalizador de overflow na leitura. Ao ser executada a instruo, o sistema carrega o valor 1 na varivel zzz, se o canal 'r' estiver em overflow. Se o sinal de entrada estiver dentro da faixa, a instruo carrega o valor zero.

Os comandos associados a instruo `EAN' so ativados no estado, isto , so repetidos uma vez a cada varredura enquanto o controlador estiver no estado. Alm dos comandos descritos para trabalho com o mdulo EAN, o Sistema Operacional possui a varivel de atribuio fixa `EANER' que indica o nmero de mdulos ativos no sistema e o cdigo de erro relativo a inicializao ou operao das placas.

ESCISInn[*] aaa NO EQ=xxx EM [#]bbb [BLOCO=ccc] [STA=ddd] Esta instruo faz a escrita de uma varivel ou de um bloco de memria no equipamento nmero 'xxx' conectado rede de comunicao ligada porta 'nn' de uma placa ISI instalada. Os dados enviados da CPU comeam na posio 'aaa'. S pode ser executada uma instruo ESCISI por estado. O parmetro 'nn', sempre constante, especifica o nmero da porta serial da placa ISI (podendo variar de 1 a 36). Os parmetros 'aaa, 'xxx, 'bbb' e 'ccc' podem ser constantes ou variveis, no podendo ser variveis indexadas. O parmetro 'ddd' ser sempre varivel. O parmetro 'aaaendereo dos dados na CPU. Se 'aaa' for parmetro 'xxx' especifica o nmero do equipamento destino para escrita na rede de comunicao. O parmetro 'bbb' especifica o endereo no equipamento destino. Se 'bbb' for varivel, o endereo inicial no equipamento destino ser o contedo da varivel 'bbb'. Os parmetros 'ccc' e 'ddd' (se existirem), especificam respectivamente o tamanho do bloco (no de bytes) a ser escrito e a varivel onde ser armazenado o status da comunicao. A opo "#" (antes de 'bbb') usada para indicar que a escrita no equipamento destino ser direto na memria da ISI, caso contrrio ser na memria da CPU destino. A omisso do parmetro 'ccc' (tamanho do bloco), indicar que a escrita ser de apenas uma varivel.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

67

A opo '*' indica que a instruo ser executada no estado, seno a mesma ser executada somente na transio. Observaes: 1)Esta instruo pode ser usada apenas com CPU7, CPU7-10 e CPU7-11 2) Se 'aaa' ou 'bbb' forem constante, seu valor dever ser hexadecimal e precedido do caracter $. Por exemplo, o valor BFFE dever ser escrito: $BFFE. 3) O valor de 'xxx' e 'ccc' , se constante, dever ser decimal. O valor de 'xxx' poder variar de 1 a 127 e o valor de 'ccc' de 1 a 240. 4) A opo 'BLOCO' obrigatria se o endereo no equipamento destino for direto na memria da placa ISI (opo #). Instrues relacionadas : ESCREVE ESCMISI LE LEISI LEMISI ISI

ESCMISIn[*] aaa EM bbb [BLOCO=ccc] Esta instruo s pode ser usada com o BCM2085/CPU7 ou CPU8. Esta instruo faz a escrita na memria da placa ISI (varivel ou bloco), sem provocar uma transmisso pelo canal de comunicao da ISI. S poder ser executada uma instruo ESCMISI por estado. O parmetro 'n', sempre constante (1 a 12), especifica o nmero do mdulo ISI onde ser feito a escrita. Os outros parmetros podem ser constantes ou variveis, no podendo ser variveis indexadas, entretanto podem ser usadas variveis do tipo matricial, sem o ndice. O parmetro 'aaa' especifica o endereo dos dados na CPU. Se 'aaa' for varivel, o endereo inicial na CPU ser o endereo da prpria varivel 'aaa'. O parmetro 'bbb' especifica o endereo na memria da ISI. Se 'bbb' for varivel, o endereo inicial da ISI ser o contedo da varivel 'bbb'. O parmetro 'ccc' (se existir) especifica o tamanho do bloco (no de bytes) a ser escrito, seno a escrita ser de uma varivel.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

68

A opo '*' indica que a instruo ser executada no estado, seno a mesma ser executada somente na transio. Observao: Se 'aaa' ou 'bbb' forem constante, seu valor dever ser hexadecimal e precedido do caracter $. Por exemplo, o valor BFFE dever ser escrito: $BFFE. O valor de 'bbb' s poder variar de 8000H a BFFFH. O valor de 'ccc', se constante, dever ser decimal

ESCREVE[*] aaa NO EQ=xxx EM yyyy [BLOCO=zzz] [STA=bbb] O Controlador Programvel ir escrever um determinado bloco de informao em outro equipamento da rede de comunicao, atravs do canal serial. Para maiores informaes a respeito do Protocolo Geral de Comunicao, ver o manual do software de desenvolvimento. A opo "*" tem funo similar quela adotada na instruo "FACA". Sem o asterisco, a escrita executada somente uma vez a cada entrada no estado correspondente. Com o asterisco, a operao fica sendo repetida enquanto o CP estiver no estado. O parmetro aaa especifica o nome da varivel cujo endereo ser o ponto de partida para a escrita. Pode ser especificada uma varivel isolada ou matricial com ndice constante. A constante xxx especifica o nmero (cdigo) do equipamento sobre o qual ser feita a escrita.

A constante hexadecimal yyyy especifica o endereo de carga do bloco no equipamento de destino. Neste caso a constante no dever ser precedida do sinal $. A constante opcional zzz especifica o tamanho do bloco (em bytes) de memria a ser transferido. Pode estar na faixa 1 a 240. Se omitido, a instruo assume que o bloco possui dois bytes (uma varivel).

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

69

O parmetro bbb especifica a varivel que ir receber os cdigos referentes s informaes de status do processo de comunicao. Os cdigos de status definidos so: 0 - Tarefa completada com sucesso 1 - Tarefa agendada no buffer para execuo pelo SO 2 - Tarefa em curso de execuo pelo SO 3 - Erro por falta de resposta no equipamento indicado 4 - Erro por sobrecarga do buffer de tarefas.

S permitido usar uma instruo ESCREVE por estado. No manual de Protocolos e Redes de comunicao podero ser encontradas mais informaes sobre o significado dos cdigos e a seqncia de tarefas de comunicao. Exemplos: ESTADO 2: ESCREVE* HAA NO EQ=15 EM 8965 O controlador ir escrever a varivel HAA no equipamento 15, na posio de memria 8965/66H. A operao ser repetitiva - A escrita ficar sendo feita enquanto o programa estiver no estado 2. ESTADO 2: ESCREVE XAM NO EQ=15 EM 8400 BLOCO=100 STA=AAB O controlador ir copiar a rea de memria iniciada pela varivel XAM no equipamento 15, a partir da posio de memria 8400H. A rea tem um tamanho de 100 bytes e o status da operao poder ser visto atravs do cdigo presente na varivel AAB. A escrita ser feita s uma vez, quando o sistema entrar no estado 2. Instrues relacionadas : ESCISI ESCMISI LE LEISI LEMISIVerso 2009-1 Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

70

ESTADO r : Marca para o compilador o incio das instrues relativas ao estado `r'. Os estados podem ser numerados de zero at 254. A numerao dos estados no momento da edio do programa pode ser feita em qualquer ordem, pulando nmeros ou misturando a seqncia de numerao. No h qualquer sentido de prioridade ou influncia no funcionamento, que dependa dos nmeros escolhidos para os estados ou da ordem de edio. A nica considerao importante que o controlador ao ser ligado, inicia sempre pelo estado zero.

EVENTOS r FILTRO BUF=aaa TAM=bbb [DEB=ccc] [MASC=xxyy] [TRAN=d] [EST=e] [MESTRE] [DUPLOS=f,g,h,...] [TDUP=iii] EVENTOS r FILTRO BUF=aaa TAM=bbb [DEB=ccc] [MASC=xxyy] [TRAN=d] [EST=e] [MESTRE] [DUPLOS=fff] [TDUP=iii] Esta instruo pode ser usada somente com CPU7xx e CPU8. Esta instruo programa os parmetros da placa EDE nmero r, conforme descrito abaixo. Deve ser executada no incio do programa e antes de qualquer outra instruo EVENTOS: BUF O parmetro 'aaa' especifica o nome da varivel cujo endereo ser o endereo inicial do buffer onde sero armazenados os eventos lidos da placa EDE, atravs do comando EVENTOS r LEITURA. A varivel 'aaa' dever ser do tipo matricial (sem ndice). Toda vez que esta instruo executada, a posio 2 da matriz 'aaa' (que indica o nmero de eventos lidos) zerada.

Verso 2009-1

Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

71

TAM A constante 'bbb' especifica o nmero mximo de eventos (tamanho) que podero ser carregados no buffer citado acima. A matriz 'aaa' dever ser declarada no inicio do programa com a instruo DIM e seu tamanho. dever ser maior ou igual a 3 * 'bbb' + 2. O valor de 'bbb' pode variar de 1 a 255. CUIDADO: A declarao errada desta constante ou da matriz poder acarretar uma escrita de dados em rea de memria imprpria, sem indicao de erro pelo compilador. DEB A constante decimal 'ccc' especifica o tempo de debounce em 'ms' para todas as entradas da respectiva placa. O valor pode variar de 1 a 254. Por omisso, o valor assumido ser 10 ms. MASC As constantes hexadecimais 'xx' e 'yy' especificam a mscara para o registro de eventos das 32 entradas digitais. O valor hexadecimal 'xx' corresponde respectivamente s 16 ltimas entradas da placa (32 a 17) e o valor 'yy' s 16 primeiras (16 a 1). Para uma entrada gerar evento (entrada no mascarada), o bit correspondente dever ser setado pra '1'. O valor por omisso ser '1' para todos os bits. Obs.: O compilador PROCP sempre ir programar a mscara, independente dela ser omitida. TRAN O nmero 'd' (sempre constante) indica se a ocorrncia de transiente (bounce) sem a mudana de estado gera um evento. Se o valor for '0', o transiente no gera evento. Se for '1', gera evento. Por omisso, o valor assumido ser '0'. EST O nmero 'e' (sempre constante) especifica o que ocorrer se houver estouro da capacidade na carga dos eventos. Se o valor for '0', sero descartados os primeiros eventos que foram armazenados na EDE. Se o valor for '1', sero descartados os ltimos eventos. Por omisso, o valor assumido ser 1. (A 1a verso de S.O. para a placa EDE suportar apenas este caso).Verso 2009-1 Referncia: 31940092-8

BCM Automao

Linguagem Descritiva BCM

72

MESTRE Se este parmetro for atribudo, a placa EDE que est sendo programada ser considerada a placa mestre, isto , a que gera o clock de sincronismo para as outras EDEs que estiverem presentes no mesmo bastidor. S pode haver uma placa mestre por CPU. Se uma placa EDE j foi programada como mestre, e dado um novo comando programando outra placa EDE como mestre, a ltima programao a que ser assumida. Quando este parmetro for atribudo, poder haver um