Você está na página 1de 8

CONTROLADORES INDUSTRIAIS PONTIFCIA UNIVERSIDADE CATLICA DO RIO GRANDE DO SUL DEPARTAMENTO DE ENGENHARIA ELTRICA

Aula 7 Movimentao e Funo Analog


Introduo Converso analgica-digital e digital-analgica Utilizando Funes Funo F-ANALOG.006 Movimentando Operandos Instruo MOV Instruo MOT Exerccio e Tarefa Introduo
At meados da dcada de 80, a maioria dos controladores era implementada utilizando eletrnica analgica. Contudo, hoje a maioria dos sistemas de controle utiliza computadores digitais (usualmente microprocessadores ou microcontroladores) com a necessidade de hardware de entrada e sada de sinais analgicos e digitais. Portanto necessrio avaliar como esta converso afeta o sinal medido e atuado em controladores digitais. Para observar esta converso, utilizaremos nesta aula, instrues de movimentao de operandos e funes que trabalham com a porta analgico do controlador.

Converso analgica-digital e digital-analgica


A Fig. 1 uma representao esquemtica dos sinais de interface entre os algoritmos de controle digital e o processo contnuo. Os sinais do processo so contnuos, entretanto o computador s pode trabalhar utilizando a informao do processo de forma digital. Por esta razo, os sinais do processo devem ser convertidos para um sinal digital utilizando um conversor analgico-digital (A/D). Assim como os sinais gerados pelo controle digital devem ser convertidos utilizando um conversor digital-analgico (D/A).

Fig. 1: Representao esquemtica dos sinais de interface entre os elementos do controle digital.

Professor: Pablo Alberto Spiller

CONTROLADORES INDUSTRIAIS PONTIFCIA UNIVERSIDADE CATLICA DO RIO GRANDE DO SUL DEPARTAMENTO DE ENGENHARIA ELTRICA

A converso do sinal y(t) uma operao que consiste de dois estgios:

1. Amostragem: A leitura de um sinal contnuo num determinado perodo de amostragem (h) converte num sinal discreto. O perodo de amostragem entre duas amostragens sucessivas usualmente constante e determina a freqncia de amostragem. O sinal amostrado pode ser representado por:

y( kh) = y( t ) 0 ( t kh)
k =0

(1)

onde y(t<0) = 0 e 0 ( t kh) representa um impulso de rea unitria que ocorre no tempo t = kh. A Figura 2 mostra uma implementao em Simulink, onde gerado um sinal contnuo e outro sinal amostrado. O efeito da amostragem pode ser verificado na Figura 3.

Fig.2: Sinal contnuo e sinal amostrado

Fig. 3: Efeito da amostragem do sinal contnuo. O sinal discreto obtido pela amostragem deve der convertido para uma 2. Quantizao: informao digital. Devido a estrutura digital , esta informao armazenada numa palavra de N bits (normalmente 8, 10, 12 e 16 bits ). Quanto maior o numero de bits, menor ser o erro de quantizao. Por exemplo , um conversor A/D de 8 bits pode representar 256 valores distintos e um conversor A/D de 12 bits pode representar 4096 valores distintos. Considerando que o maior valor representado (max) por ambos conversores igual a 100, o erro mximo de quantizao para o conversor de 8 bits de 0.3906 e para o conversor de 12 bits o erro de 0.0244. Portanto o conversor de 12 bits apresenta um erro de quantizao 16 vezes menor que o de 8 bits. O erro de quantizao (E) definido por:

max 2N

(2)

Professor: Pablo Alberto Spiller

CONTROLADORES INDUSTRIAIS PONTIFCIA UNIVERSIDADE CATLICA DO RIO GRANDE DO SUL DEPARTAMENTO DE ENGENHARIA ELTRICA

Fig. 4: Efeito da resoluo do conversor A/D.

Fig. 5: Erro devido quantizao do sinal. Os sinais digitais so sinais obtidos atravs de algum tipo de codificao. Esta codificao, consiste em dizer que os sinais digitais so quantizados em amplitude e discretos no tempo. O computador (ou um circuito digital dedicado) interpreta o sinal convertido y(kh) como uma seqncia de nmeros. Esta informao utilizada como a informao de entrada para uma determinada lei de controle que processada utilizando um apropriado algoritmo. O algoritmo gera uma nova seqncia de nmeros u(kh) que interage com o processo via reconstruo de dados utilizando o conversor D/A. O conversor D/A produz um sinal contnuo no tempo mas discreto em amplitude. Usualmente o sinal mantido constante dentro de um determinado intervalo de amostragem (zero-order hold).

Professor: Pablo Alberto Spiller

CONTROLADORES INDUSTRIAIS PONTIFCIA UNIVERSIDADE CATLICA DO RIO GRANDE DO SUL DEPARTAMENTO DE ENGENHARIA ELTRICA
Utilizando Funes
Um mdulo funo (F), diferentemente do que acontece com mdulos de execuo e procedimento, permite que sejam utilizados parmetros de entrada para a funo e sejam retornados valores depois de executada a mesma. Os mdulos F contm trechos de programas aplicativos chamados a partir de mdulos E, P ou F, atravs da instruo CHF (CHama Funo). Na chamada dos mdulos F possvel a passagem de valores como parmetros para o mdulo chamado. Estes mdulos so usualmente escritos de forma genrica para serem aproveitados por vrios programas aplicativos, em linguagem de rels ou de mquina, sendo semelhantes s instrues da linguagem de rels. Os valores dos parmetros so enviados e devolvidos atravs de listas de operandos existentes na instruo de chamada e no mdulo F. Na edio de um instruo CHF, devem ser definidas 2 listas de operandos que so utilizadas para: enviar parmetros para execuo do mdulo funo (Entrada) receber os valores retornados pelo mdulo funo (Sada) Na edio do mdulo funo, tambm devem ser definidas 2 listas de operandos, utilizando o comando Edio, Editar Parmetros, que so utilizados para: receber parmetros da instruo CHF (Entrada) enviar valores de retorno para a instruo CHF (Sada) A passagem de parmetros realizada atravs da cpia dos valores dos operandos declarados (passagem de parmetros por valor). A figura 6 apresenta o fluxo de dados entre a instruo CHF e o mdulo funo.

Figura 6: CHF e mdulo funo. A instruo chama mdulo funo (CHF) realiza o desvio do processamento do mdulo corrente para o mdulo especificado na mesma, se este estiver presente no CP. Ao final da execuo do mdulo chamado, o processamento retorna para a instruo seguinte CHF.

Professor: Pablo Alberto Spiller

CONTROLADORES INDUSTRIAIS PONTIFCIA UNIVERSIDADE CATLICA DO RIO GRANDE DO SUL DEPARTAMENTO DE ENGENHARIA ELTRICA

Devem ser declarados o nome e o nmero do mdulo como operandos OPER1 e OPER4, respectivamente, sendo implcito o fato do mdulo chamado ser do tipo funo. Caso o mdulo chamado no exista no controlador, a execuo continua normalmente aps a instruo de chamada, com a sada sucesso da mesma desligada. O nome do mdulo no levado em considerao pelo CP, estando no programa aplicativo apenas como referncia documentacional, sendo considerados para a chamada apenas o seu tipo e nmero. Caso exista o mdulo F com o mesmo nmero do mdulo chamado mas com nome diferente, este mdulo executado. possvel a passagem de valores de operandos (parmetros) para o mdulo chamado e no sentido inverso, aps a sua execuo. Em OPER5 especificada uma lista de operandos a serem enviados para o mdulo chamado. Antes da execuo do mdulo, os valores destes operandos so copiados para os operandos especificados na lista de parmetros de entrada do mdulo F, declarados na opo Editar Parmetros quando o mesmo foi programado. Aps a execuo do mdulo F chamado, os valores dos operandos declarados na sua lista de parmetros de sada declarados na opo Editar Parmetros so copiados para os operandos declarados na lista de operandos a retornar da instruo CHF em OPER6 Finalizada a cpia de retorno, o processamento continua na instruo seguinte de chamada.

Funo F-ANALOG.006
A funo F-ANLOG.006 realiza a converso A/D (analgico/digital) ou D/A (digital/analgico) dos dois canais analgicos disponveis na UCP AL-600, QK600, PL102, PL103 e PL104 (canal 0 e canal 1). Utilizando-se a instruo CHF, possvel realizar a converso A/D ou D/A em um dos canais.

Operandos As clulas da instruo CHF utilizada para a chamada da funo so programadas do seguinte modo:

Professor: Pablo Alberto Spiller

CONTROLADORES INDUSTRIAIS PONTIFCIA UNIVERSIDADE CATLICA DO RIO GRANDE DO SUL DEPARTAMENTO DE ENGENHARIA ELTRICA
- OPER2 - Especifica o nmero de parmetros que so passados para a funo em OPER3. Este operando deve ser obrigatoriamente uma constante memria com valor 3 (%KM+00003). - OPER3 - Deve ser um operando do tipo constante memria com valor 0 (%KM+00000). Determina o nmero de parmetros possveis de serem programados na janela de edio de OPER4. Como esta funo no necessita de nenhum parmetro em OPER4, o valor de OPER2 0. - OPER5 - Contm os parmetros que so passados para a funo, declarados quando a instruo CHF for editada. O nmero de parmetros editveis especificado em OPER1, sendo fixo em 3 para este mdulo: - %KM+XXXXX - Especificao do canal a ser convertido. Deve-se utilizar %KM+00000 para DAC 1 e %KM+00001 para DAC 2. - %KM+XXXXX - Tipo de converso a ser realizada no canal definido pelo parmetro anterior. Deve-se utilizar %KM+00000 para converso A/D e %KM+00001 para converso D/A. - %MXXXX - Especificao do operando onde armazenado o valor a ser escrito no conversor em caso de converso D/A ou valor lido em caso de converso A/D. - OPER 6 - No utilizado. - Entradas e Sadas Descrio das entradas: - habilita - quando esta entrada est energizada a funo chamada, sendo analisados os parmetros programados na instruo CHF. Descrio das sadas: - sucesso - energizada quando a funo foi corretamente executada. - erro - energizada caso ocorra erro na especificao dos operandos ou tentativa de acesso a operandos no declarados.

Movimentando Operandos
Dependendo da aplicao, pode ser interessante movimentar dados, como por exemplo, guardar dados coletados numa tabela, ou num determinado operando memria.

Instruo MOV - Movimentao de Operandos Simples

Esta instruo move o contedo de operandos simples, sem realizar converses entre tipos de operandos diferentes, quando a entrada habilita acionada. O operando que ocupa a primeira clula da instruo OPER1 o operando origem, cujo valor movimentado para o operando destino, especificado na segunda clula OPER2. Se o formato do operando destino for menor que o do origem, os octetos mais significativos do valor origem so desprezados. Se o formato do destino for maior, seus octetos mais significativos so zerados. Se a movimentao for realizada, a sada sucesso acionada. Professor: Pablo Alberto Spiller 6

CONTROLADORES INDUSTRIAIS PONTIFCIA UNIVERSIDADE CATLICA DO RIO GRANDE DO SUL DEPARTAMENTO DE ENGENHARIA ELTRICA

Se os ndices indiretos excederem os limites de operandos declarados no mdulo de configurao, a movimentao no efetuada e a sada sucesso no ligada. Sintaxe:

MOT Movimentao de Tabelas


Esta instruo permite duas operaes: transferir o valor de uma posio de tabela para um operando simples ou de um operando simples para uma posio de tabela.

O operando OPER1 o operando origem, cujo valor movimentado para o operando destino especificado em OPER3. OPER2 contm a posio da tabela declarada em OPER1 ou OPER3. Leitura de contedo de tabela: Permite ler o contedo de uma posio de tabela e carreg-lo em um operando memria ou decimal. A instruo programada da seguinte forma: OPER1 - especifica o endereo da tabela a ser lida (%TM, %M*TM, %TD, %M*TD) OPER2 - especifica a posio (%KM) a ser lida ou a memria (%M) que contm esta posio OPER3 - especifica para onde o contedo da posio de tabela deve ser transferido (%M, %M*M, %D, %M*D) Se OPER1 referenciar indiretamente uma tabela no especificada, ou se o valor de OPER2 for negativo ou maior que a ltima posio definida para a tabela, a transferncia no realizada e a sada ndice origem invlido acionada. Se OPER3 referenciar indiretamente um operando no declarado, a transferncia no realizada e a sada ndice destino invlido acionada. Professor: Pablo Alberto Spiller 7

CONTROLADORES INDUSTRIAIS PONTIFCIA UNIVERSIDADE CATLICA DO RIO GRANDE DO SUL DEPARTAMENTO DE ENGENHARIA ELTRICA

Escrita de valores em tabela: Permite escrever um valor constante ou o contedo de um operando memria ou decimal em uma posio de tabela. A instruo programada da seguinte forma: OPER1 - especifica o operando origem (%KM, %M, %M*M, %KD, %D, %M*D) OPER2 - especifica a posio (%KM) a ser escrita na tabela ou a memria (%M) que contm esta posio OPER3 - especifica o endereo da tabela para onde transferido o contedo (%TM, %M*TM, %TD, %M*TD) Se OPER1 referenciar indiretamente um operando no declarado, a transferncia do contedo no realizada e a sada ndice origem invlido acionada. Se o valor de OPER2 for negativo ou maior que a ltima posio definida para a tabela, ou se OPER3 referenciar indiretamente uma tabela no especificada, a transferncia do contedo no realizada e a sada ndice destino invlido acionada. Esta instruo simplifica a programao de uma srie de algoritmos envolvendo decodificaes, seqenciamentos, gerao de curvas, armazenamento e comparao de valores, entre outros. Sintaxe:

Exerccios:
1) Realize um programa que adquira um sinal analgico pela entrada IN0 do AL-600 sempre que for acionado o boto no retentivo do painel. O valor adquirido dever ser armazenado num endereo de memria. Qual a resoluo em bits do conversor A/D interno do AL-600. 2) Utilizando o programa do item anterior, faa com que o valor adquirido seja armazenado numa tabela de 100 posies. O ndice da tabela, ou seja, a posio de escrita na tabela dever ser trocada cada vez que um valor novo for adquirido. 3) Modifique o programa anterior para que o CLP adquira 100 valores em 10 segundos. Utilizando o Matlab ou Excel, plote os pontos adquiridos.

Professor: Pablo Alberto Spiller

Você também pode gostar