53
ALAN FERREIRA ZANATTA SIMULAÇÃO, ANÁLISE E CONTROLE DE MOTOR DE CORRENTE CONTÍNUA VIA REDE CAN (CONTROLLER AREA NETWORK) EM SISTEMAS DE MANUFATURA Trabalho de Conclusão de Curso apresentando ao curso de graduação de Engenharia Mecatrônica da Escola de Engenharia de São Carlos da Universidade de São Paulo. Orientador: Prof. Dr. Arthur José Vieira Porto São Carlos, SP 2010

ALAN FERREIRA ZANATTA

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ALAN FERREIRA ZANATTA

ALAN FERREIRA ZANATTA

SIMULAÇÃO, ANÁLISE E CONTROLE DE MOTOR DE CORRENTE

CONTÍNUA VIA REDE CAN (CONTROLLER AREA NETWORK) EM

SISTEMAS DE MANUFATURA

Trabalho de Conclusão de Curso

apresentando ao curso de graduação

de Engenharia Mecatrônica da

Escola de Engenharia de São Carlos

da Universidade de São Paulo.

Orientador: Prof. Dr. Arthur José

Vieira Porto

São Carlos, SP

2010

Page 2: ALAN FERREIRA ZANATTA

2

Page 3: ALAN FERREIRA ZANATTA

3

Page 4: ALAN FERREIRA ZANATTA

4

RESUMO

ZANATTA, A. F. (2010). Simulação, Análise e Controle de Motor de Corrente Contínua via Rede CAN (Controller Area Network) em Sistema de Manufatura. Trabalho de Conclusão de Curso - Escola de Engenharia de São Carlos, Universidade de São Paulo, São Carlos, 2010. Sistemas de controle via redes (NCS – Networked Control Systems) representam um recente paradigma na pesquisa de sistemas distribuídos com redes industriais. Este trabalho apresenta o desenvolvimento de um NCS via rede CAN (Controller Area Network) para controle de posição de motores DC focando nas tarefas de simulação, análise e controle. Resultados obtidos comprovam a viabilidade de aplicação de NCS com redes CAN, fornecendo informações sobre sua implementação e validando a utilização da ferramenta TrueTime em seu projeto. Palavra-chave: Controle via rede, Protocolo CAN, Motor de corrente contínua

Page 5: ALAN FERREIRA ZANATTA

5

ÍNDICE

I) RESUMO ......................................................................................................................................... 7

II) INTRODUÇÃO ................................................................................................................................. 8

III) REVISÃO BIBLIOGRÁFICA ...................................................................................................... 10

III.1) SISTEMAS DE CONTROLE VIA REDE – NCS ................................................................... 10

III.2) METODOLOGIAS DE CONTROLE PARA NCS .................................................................. 12

IV) REVISÃO CONCEITUAL .......................................................................................................... 14

IV.1) MODELOS DINÂMICOS E FUNÇÃO TRANSFERÊNCIA ................................................... 14

IV.2) SISTEMAS DE CONTROLE (MALHA ABERTA E MALHA FECHADA) .............................. 14

IV.3) ENCODERS .......................................................................................................................... 15

IV.3.1) ENCODER INCREMENTAL ......................................................................................... 15

IV.4) PROTOCOLO CAN ............................................................................................................... 16

IV.4.1) FORMATO DAS MENSAGENS .................................................................................... 18

IV.4.2) FERRAMENTA TRUETIME .......................................................................................... 19

V) CONSTRUÇAO DO MÓDULO DE MOTOR DC ....................................................................... 23

V.1) MOTOR DE CORRENTE CONTÍNUA .................................................................................. 24

V.2) ACIONAMENTO DO MOTOR DC ........................................................................................ 24

V.3) LEITURA DO ENCODER ...................................................................................................... 25

V.4) PROGRAMAÇÃO DO PIC .................................................................................................... 28

VI) MODELAGEM MATEMÁTICA .................................................................................................. 32

VI.1) FUNÇÃO TRANSFERÊNCIA - MOTOR DC ......................................................................... 32

VI.2) FUNÇAO TRANSFERÊNCIA - MOTOR MAXON ................................................................. 35

VII) VERIFICAÇÃO DO MODELO ................................................................................................... 36

VII.1) RESPOSTA A ENTRADA DEGRAU................................................................................. 36

VII.2) RESPOSTA A UM CONTROLE PROPORCIONAL ......................................................... 38

VIII) SISTEMA DE CONTROLE VIA REDE CAN ............................................................................. 42

VIII.1) PROJETO E SIMULAÇÃO ................................................................................................ 42

VIII.2) CONTROLE REAL VIA REDE CAN ................................................................................. 44

VIII.3) COMPARAÇÃO ENTRE AS RESPOSTAS DA SIMULAÇÃO E DA IMPLEMENTAÇÃO

REAL DO NCS VIA REDE ................................................................................................................ 45

Page 6: ALAN FERREIRA ZANATTA

6

IX) CONCLUSÕES ......................................................................................................................... 48

X) DIFICULDADES ENCONTRADAS ........................................................................................... 49

XI) ANÁLISE DOS RESULTADOS ................................................................................................. 51

XII) REFERÊNCIAS BIBLIOGRÁFICAS ......................................................................................... 52

LISTA DE FIGURAS

Figura 1. Estrutura de um sistema de controle via redes (NCS) ..................................................................... 8

Figura 2. NCS com Estrutura Direta (Modificado de Tipsuwan e Chow, 2003) ............................................ 10

Figura 3. NCS com Estrutura Hierárquica (Modificado de Tipsuwan e Chow, 2003) ................................... 11

Figura 4. Esquema de um Encoder de Duas Trilhas .................................................................................... 16

Figura 5. Sinal produzido pelo Encoder nos Canais A e B ........................................................................... 16

Figura 6. Níveis Elétricos do Protocolo CAN ................................................................................................ 18

Figura 7. Mensagem CAN 2.0A .................................................................................................................... 18

Figura 8. Mensagem CAN 2.0B .................................................................................................................... 19

Figura 9. Blocos da Biblioteca TrueTime ...................................................................................................... 20

Figura 10. Bancada de Motor de Corrente Contínua .................................................................................... 23

Figura 11. Especificações e Desenho Técnico - Motor RE-max 24 .............................................................. 24

Figura 12. Esquema CI LMD18200 ............................................................................................................... 25

Figura 13. Foto do Driver PWM .................................................................................................................... 25

Figura 14. Esquema HCTL2017-A00 ............................................................................................................ 26

Figura 15. Esquemático do Circuito da Interface CAN Padrão (BRAZ et. al. 2004) ..................................... 29

Figura 16. Imagem da Interface CAN Implementada (Sousa, 2002) ............................................................ 30

Figura 17. Diagrama - Programação PIC ...................................................................................................... 31

Figura 18. Esquema Motor de Corrente Contínua ........................................................................................ 32

Figura 19. Diagrama de Blocos - Sistema em Malha Aberta ........................................................................ 36

Figura 20. Resposta ao degrau de 3V .......................................................................................................... 37

Figura 21. Resposta ao degrau de 6V. ......................................................................................................... 37

Figura 22. Resposta ao degrau de 12V. ....................................................................................................... 38

Figura 23. Diagrama de Controle do Motor na Plataforma Labview ............................................................. 39

Figura 24. Diagrama de Blocos - Sistema em Malha Fechada com Controle Proporcional ......................... 39

Figura 25. Resposta ao Controle Proporcional K=1...................................................................................... 40

Figura 26. Resposta ao Controle Proporcional K=3...................................................................................... 40

Figura 27. Resposta ao Controle Proporcional K=10.................................................................................... 41

Figura 28. Biblioteca de Blocos do TrueTime ............................................................................................... 42

Figura 29. NCS para Controle de um Motor DC implementado na Ferramenta TrueTime ........................... 43

Figura 30. Esquemático Controle via Rede CAN .......................................................................................... 44

Figura 31. Controle PD (K=1 e Td=0.001) via rede CAN (simulado e real) .................................................. 45

Figura 32. Controle PD (K=3 e Td=0.001) via rede CAN (simulado e real) ................................................. 46

Figura 33. Controle PD (K=10 e Td=0.001) via rede CAN (simulado e real) ................................................ 46

Page 7: ALAN FERREIRA ZANATTA

7

I) RESUMO

Apresenta-se o relatório do Trabalho de Conclusão de Curso, sob o tema: “Simulação,

Análise e Controle de Motor de Corrente Contínua via Rede CAN em Sistemas de

Manufatura”.

Este trabalho busca estudar a aplicação de NCS via rede CAN em sistemas de

manufatura e dar suporte ao projeto de pesquisa FAPESP, Processo nº 2008/03481-1. O

módulo de motor de corrente contínuo proposto e desenvolvido neste trabalho integrará a

bancada de testes de NCS em desenvolvimento no projeto de pesquisa citado.

Para a realização deste trabalho, diversas ferramentas computacionais foram

estudadas como: programação em Matlab e Matlab Simulink, programação de

microprocessadores em MPLAB, desenvolvimento de sistemas de controle em Labview; e

também vários conceitos como: modelagem matemática de sistemas mecânicos e elétricos,

protocolo CAN, controles via redes CAN, dentre outros.

A construção do módulo de motor de corrente contínua, sua integração com a rede

CAN, o desenvolvimento, aplicação e estudo de controles via rede e a identificação e

estudo de possíveis erros na execução do controle são os objetivos deste trabalho. O

módulo construído também ficará disponível para outros experimentos e para o aprendizado

desta tecnologia.

Page 8: ALAN FERREIRA ZANATTA

8

II) INTRODUÇÃO

As arquiteturas tradicionais de comunicação e controle ponto a ponto, implementadas

nos sistemas de manufatura industriais nos últimos tempos, são compostas por cabeamento

conectando o computador ou dispositivo central de controle a cada sensor e atuador do

sistema. Este tipo de controle tradicional e centralizado, no entanto não fornece os novos

requisitos de desenvolvimento de sistemas de controle como modularidade, controle

descentralizado, facilidade de diagnóstico e baixo custo (YANG, 2006).

Nos sistemas de manufatura atuais, a introdução de arquiteturas de redes industriais

pode melhorar a eficiência, a flexibilidade e a confiabilidade do sistema, reduzindo o tempo

e os custos de instalação e manutenção (MOYNE & TILBURY, 2007). Essa tecnologia de

redes, com suas vantagens, foi rapidamente absorvida para satisfazer as necessidades de

comunicação entre sistemas e equipamentos aplicados em automação e controle (LIAN,

MOYNE & TILBURY, 2001).

Aplicações recentes de sistemas de controle distribuído demonstram o surgimento de

uma nova abordagem para a utilização de redes industriais. Nessa abordagem, o

controlador e a planta ficam fisicamente separados e são conectados por uma rede de

comunicação. Este tipo de implementação em sistemas industriais, onde as malhas de

controle são fechadas sob uma rede de comunicação, como mostrado na Figura 1, tem sido

denominada de Sistema de Controle via Redes (NCS - Networked Control System) (YANG,

2006).

Figura 1. Estrutura de um sistema de controle via redes (NCS)

Rede de Controle

Processo 1

Controlador 1

Processo n

Controlador n

Atuadores1

msg msg msg msg

Sensores1

Atuadoresn

Sensoresn

Rede de Controle

Processo 1Processo 1

Controlador 1Controlador 1

Processo nProcesso n

Controlador nControlador n

Atuadores1

Atuadores1

msg msg msg msg

Sensores1

Sensores1

Atuadoresn

Atuadoresn

Sensoresn

Sensoresn

Page 9: ALAN FERREIRA ZANATTA

9

Os modernos sistemas automatizados de manufatura são compostos por múltiplos

subsistemas ou processos. O principal objetivo do controle nessa aplicação é a

coordenação e comunicação desses processos de forma que atendam a requisitos

individuais e conjuntos, garantindo um bom funcionamento e desempenho global do

sistema. Em NCS, os dispositivos conectados têm que compartilhar da melhor maneira

possível o meio disponível para a troca de informações e ainda cumprir com requisitos

temporais de transmissão de dados. Como solução para este problema, diversos protocolos

de comunicação para NCS têm sido pesquisados e desenvolvidos como o CAN (Controller

Area Network), Profibus e Foundation Fieldbus (MOYNE & TILBURY, 2007).

Não importando o tipo de protocolo de comunicação utilizado, o desempenho e a

estabilidade de um NCS sempre são afetados pela presença da rede de comunicação e de

fatores degenerativos como a discretização e os atrasos de comunicação (delay) entre os

sensores, atuadores e controladores do sistema (BAILLIEUL & ANTSAKLIS, 2007). Esses

atrasos de comunicação são resultados do compartilhamento do meio de comunicação com

outras malhas de controle como também do tempo de processamento requerido para

codificação dos sinais e computação dos dados (LIAN, MOYNE & TILBURY, 2002).

Buscando minimizar esses efeitos causados pela presença da rede de comunicação,

diversas metodologias de controle têm sido desenvolvidas especificamente para NCS, a

partir de técnicas de controle avançadas, como pode ser visto em Tipsuwan & Chow (2003).

No entanto, por causa da variabilidade e da dificuldade de se calcular esses atrasos, os

NCS podem apresentar características de sistemas variantes no tempo, tornando essas

tarefas de projeto e controle ainda mais desafiadoras (HUO, FANG & MA, 2004).

Page 10: ALAN FERREIRA ZANATTA

10

III) REVISÃO BIBLIOGRÁFICA

As pesquisas atuais em NCS têm focado principalmente duas linhas de trabalho. Uma

na parte relacionada com a análise da influência dos atrasos de comunicação no

desempenho e estabilidade do sistema, bem como o desenvolvimento de ferramentas para

simulação desses sistemas (CERVIN et al., 2006; TORNGREN et al., 2006). E outra no

desenvolvimento de metodologias de projeto e controle de NCS para compensar os efeitos

dos atrasos de comunicação melhorando o desempenho e garantindo a estabilidade do

sistema (TIPSUWAN & CHOW, 2003; HESPANHA, NAGHSHTABRIZI & XU, 2007).

III.1) SISTEMAS DE CONTROLE VIA REDE – NCS

Uma grande tendência nos sistemas de manufatura industriais é a integração de

comunicação e controle de vários níveis de processos de manufatura. Uma solução que

vem sendo adotada para isso é a utilização de tecnologias de sistemas de controle

distribuído via redes de comunicação (YANG, 2006), também chamados de sistemas de

controle via redes (NCS). De acordo com Tipsuwan e Chow (2003), os NCS podem ser

classificados em dois grupos: estrutura direta e estrutura hierárquica. Na estrutura direta,

mostrada na Figura 2, o controlador e a planta ficam fisicamente alocados em locais

separados e são conectados diretamente por uma rede de comunicação formando uma

malha de controle remota. O sinal de controle é enviado para o atuador através de uma

mensagem encaminhada via rede, enquanto o sensor amostra a saída da planta e retorna a

informação para o controlador também transmitindo a informação através da rede.

Figura 2. NCS com Estrutura Direta (Modificado de Tipsuwan e Chow, 2003)

Page 11: ALAN FERREIRA ZANATTA

11

Já a estrutura hierárquica, mostrada na Figura 3, consiste de um controlador principal

e um sistema de controle em malha fechada remoto. Periodicamente, o controlador principal

calcula e envia uma mensagem com o sinal de referência através da rede para o sistema

remoto. O sistema remoto processa o sinal de referência e executa localmente o controle

em malha fechada.

Figura 3. NCS com Estrutura Hierárquica (Modificado de Tipsuwan e Chow, 2003)

Segundo Perez (2006), os critérios para escolha de uma das duas estruturas para o

desenvolvimento de NCS dependem das restrições de projeto e das preferências do

projetista. Normalmente, NCS que utilizam a Internet utilizam a estrutura hierárquica, pelo

fato do tempo de transmissão das mensagens variarem consideravelmente e sua estimação

ser consideravelmente difícil. Já NCS implementados através de redes industriais ou locais,

utilizam a estrutura direta, por possuírem tempos de transmissão menores e tempos de

resposta mais previsíveis. Santos (2004) define os principais domínios de aplicação de NCS

como automotivo, sistemas de manufatura, robótica e ensino a distância. De acordo com

esses domínios, focos de pesquisa diferentes são selecionados como no caso do

automotivo (GAID et al., 2006), onde informações sobre sistemas de tempo real (deadline

de mensagens) são priorizadas e no caso de sistemas de manufatura (MOYNE & TILBURY,

2007), onde informações sobre técnicas para controle e comunicação dos diversos

processos de um sistema com um todo são enfatizadas.

Geralmente nos NCS, as tarefas de processamento, troca de informações e controle

são distribuídas entre várias unidades de controle eletrônico (ECU), dedicadas ao controle

de uma parte do processo. Para que a troca de informações entre essas ECU ocorra de

maneira eficiente, um grande número de protocolos de comunicação tem sido desenvolvido

Page 12: ALAN FERREIRA ZANATTA

12

e aplicado em NCS (MOYNE & TILBURY, 2007), como o Profibus, CAN e Foundation

Fieldbus. Dentre esses protocolos, o CAN (BOSCH, 2006) originalmente desenvolvido para

aplicações em na área automotiva, se encontra atualmente muito difundido e tem sido

utilizado em muitas outras aplicações industriais de controle (OTHMAN et al., 2006).

III.2) METODOLOGIAS DE CONTROLE PARA NCS

Recentemente, muitos trabalhos de pesquisa têm apresentado metodologias de

projeto e controle para NCSs em sistemas de manufatura. Uma metodologia de controle é

requerida para minimizar os efeitos dos atrasos de comunicação em um NCS, melhorando

seu desempenho e garantindo sua estabilidade. Uma revisão de algumas metodologias é

apresentada em Tipsuwan & Chow (2003) e Li & Fang (2005). Entre elas, a metodologia de

programação de ganho (TIPSUWAN, 2003) utiliza uma técnica de ajustar os ganhos de um

controlador de um NCS para compensar os efeitos dos atrasos de comunicação. Nesta

metodologia, os ganhos são ajustados de acordo com o erro de saída do sistema causado

pelo atraso da rede. Hong & Kim (2000) apresentam uma metodologia de programação de

tempo de amostragem que seleciona corretamente os tempos de amostragem dos

dispositivos de um NCS, minimizando os efeitos do atraso no desempenho do sistema.

Paradigmas de técnicas de controle convencional, baseadas em controladores PID

(POHJOLA, 2006), controle robusto (CLOOSTERMAN et al., 2006), controle regulador

linear quadrático (LQR) (ZHANG & HUA-JING, 2006) e controle preditivo baseado em

modelo (ALLDREDGE, 2007) estão entre as mais utilizadas no desenvolvimento dessas

metodologias. De forma a se lidar com as incertezas dos atrasos de comunicação nos

NCSs, técnicas de inteligência artificial, como sistemas fuzzy (TIAN, WANG, CHENG,

2007), redes neurais (ZHAO & XIA, 2006a) e algoritmos genéticos (SHIN & SUNWOO,

2007) também acabaram aplicadas nesse desenvolvimento.

Essas metodologias de controle têm sido desenvolvidas baseadas em diversos tipos e

protocolos de redes de comunicação em conjunto com diferentes abordagens para

tratamento dos efeitos dos atrasos de comunicação no NCS. Os trabalhos de Lee et al.

Page 13: ALAN FERREIRA ZANATTA

13

(2003, 2004) comparam e avaliam o desempenho de um NCS via rede Profibus com

controladores PID, fuzzy e sintonizados com algoritmo genético. Os resultados

demonstraram que a utilização de sistemas fuzzy pode ser uma escolha viável para NCSs

pelo fato de não requerer um modelo do processo controlado e apresentar certa robustez

em relação aos atrasos de comunicação da rede. Godoy et al. (2006a) aplica a metodologia

de programação de tempo de amostragem para um NCS via rede CAN. Nesse trabalho,

com a aplicação da metodologia de controle, uma otimização do NCS é conseguida,

minimizando os efeitos dos atrasos de comunicação no desempenho do sistema.

Page 14: ALAN FERREIRA ZANATTA

14

IV) REVISÃO CONCEITUAL

A revisão conceitual dos assuntos: modelos dinâmicos, definição e desenvolvimento

de função transferência de sistemas físicos, sistemas de controle em malha aberta e

fechada, funcionamento de encoders, protocolo CAN e ferramenta TrueTime do MatLab

Simulink foram essenciais para o desenvolvimento dos trabalhos deste projeto.

IV.1) MODELOS DINÂMICOS E FUNÇÃO TRANSFERÊNCIA

A dinâmica de sistemas pode ser entendida como o estudo do comportamento, em

função do tempo, de grandezas que estão relacionadas com parte do universo que foi

imaginariamente separada para este fim com o conseqüente desenvolvimento do modelo

dinâmico. (FELICIO, 2007).

A função de transferência de um sistema de equações diferenciais invariantes no

tempo é definida como a relação da transformada de Laplace da saída (função resposta)

para a transformada de Laplace da entrada (função excitação) sob a hipótese de que todas

as condições iniciais são nulas. (OGATA, 1993).

Usualmente, utiliza-se das leis físicas que descrevem o sistema para se obter o

conjunto de equações lineares que modelam seu comportamento, ou seja, o modelo

matemático. Posteriormente, a função transferência pode ser obtida aplicando-se a

Transformada de Laplace ao conjunto de equações.

É importante ressaltar que o conceito de função transferência e sua aplicabilidade são

restritos aos sistemas de equações diferenciais lineares invariantes no tempo.

A validação da modelagem matemática realizada, com a conseqüente obtenção da

função transferência do sistema, pode ser realizada comparando-se as respostas do

modelo matemático e do sistema a uma mesma entrada.

IV.2) SISTEMAS DE CONTROLE (MALHA ABERTA E MALHA FECHADA)

A combinação de componentes que atuam conjuntamente para realizar certo objetivo

é a definição de sistema. Os controles realimentados são operações, que na presença de

Page 15: ALAN FERREIRA ZANATTA

15

distúrbios ou perturbações, reduzem a diferença entre a saída de um sistema e a entrada

de referência.

Aqueles sistemas em que a saída não tem nenhum efeito sobre a ação de controle

são chamados de sistemas de controle em malha aberta. A saída desses sistemas não é

medida nem realimentada para comparação com a entrada.

Assim, a cada entrada de referência corresponde uma condição de operação fixa;

em conseqüência, a precisão do sistema depende de uma calibração. Na presença de uma

perturbação, um sistema de controle de malha aberta não apresentará um bom

desempenho.

Os sistemas de controle realimentados também são denominados sistemas de

controle de malha fechada. Nestes sistemas, a diferença entre o sinal de entrada e o sinal

realimentado é introduzida no controlador de modo a reduzir o erro e trazer a saída do

sistema a um valor desejado.

IV.3) ENCODERS

Encoders são transdutores de movimento capazes de converter deslocamentos

angulares ou lineares em pulsos de sinais digitais.

Estes sensores possuem internamente um ou mais discos (máscaras) perfurados

fixados no eixo em rotação. Tais discos se encontram entre uma fonte de luz e um

fotodetector. O disco é codificado em setores opacos e transparentes que permitem ou

bloqueiam a recepção da luz proveniente da fonte pelo fotodetector. A cada recepção de

luz, é gerado um pulso digital, sendo que quando o disco esta em rotação, temos um trem

de pulsos digitais.

IV.3.1) ENCODER INCREMENTAL

Os encoders incrementais geram um pulso digital a cada passagem “opaco-

transparente” da trilha codificada.

Encoders com apenas uma camada perfurada geram uma seqüência de pulsos

digitais cuja freqüência indica a velocidade angular do disco, no entanto, não indicam a

Page 16: ALAN FERREIRA ZANATTA

16

posição do disco. Encoders com duas camadas perfuradas, esquema na Figura 4, geram

dois sinais de pulsos, Figura 5, sendo cada um proveniente de uma das camadas e

defasado de 90º um em relação ao outro. Com o tratamento apropriado destes pulsos,

pode-se determinar a posição, a velocidade e a direção de rotação.

Figura 4. Esquema de um Encoder de Duas Trilhas

Figura 5. Sinal produzido pelo Encoder nos Canais A e B

IV.4) PROTOCOLO CAN

O protocolo CAN, como desenvolvido por Robert Bosch GmbH, foi padronizado e

documentado internacionalmente pela ISO, gerando a Norma ISSO 11898, para aplicações

Page 17: ALAN FERREIRA ZANATTA

17

de alta velocidade, e a Norma ISO 11519, para aplicações de baixa velocidade (SOUSA,

2002).

O CAN é um protocolo de comunicação serial síncrono no qual o sincronismo dos

módulos conectados à rede se dá com relação ao início de cada mensagem. Os módulos

podem se tornar mestre em determinado momento e escravo em outro (multi-mestre).

As mensagens são enviadas em regime multicast, ou seja, toda e qualquer

mensagem é enviada para todos os da rede.

Os módulos da rede verificam o estado do barramento, analisando se outro módulo

está ou não enviando mensagens com maior prioridade. Caso isto seja constatado, o

módulo cuja mensagem tiver menor prioridade cessará sua transmissão e o de maior

prioridade continuará enviando sua mensagem deste ponto, sem ter que reiniciá-la, tal

característica é fundamentada no conceito CSMA/CD with NDA (Carrier Sense Multiple

Access / Collision Detection with Non-Destructive Arbitration).

O protocolo CAN é baseado no conceito NRZ (Non Return to Zero), no qual cada bit

(0 ou 1) é transmitido por um valor de tensão específico e constante.

Existem redes baseadas em 1, 2 e 4 fios elétricos. As redes com 2 e 4 fios trabalham

com os sinais de dados CAN_H (CAN High) e CAN_L (CAN Low). No caso dos barramentos

com 4 fios, além dos sinais de dados, um fio com o VCC (alimentação) e outro com o GND

(referência) fazem parte do barramento, levando a alimentação às duas terminações ativas

da rede. As redes com apenas 1 fio têm este, o fio de dados, chamado exclusivamente de

linha CAN.

Os dados enviados através da rede devem ser interpretados pela análise da diferença

de potencial entre os fios CAN_H e CAN_L. O barramento CAN é classificado como Par

Trançado Diferencial, tal característica atenua fortemente os efeitos causados por

interferências eletro-magnéticas, uma vez que qualquer ação sobre um dos fios será sentida

também pelo outro, causando flutuação em ambos os sinais para o mesmo sentido e com a

mesma intensidade. Como o que vale para os módulos que recebem as mensagens é a

Page 18: ALAN FERREIRA ZANATTA

18

diferença de potencial entre os condutores CAN_H e CAN_L (e esta permanecerá

inalterada), a comunicação não é prejudicada.

No CAN, os dados não são representados por bits em nível “0” ou nível “1”. São

representados por bits Dominantes e bits Recessivos, criados em função da condição

presente nos fios CAN_H e CAN_L. A Figura 6 ilustra os níveis de tensão em uma rede

CAN, assim como os bits Dominantes e Recessivos.

Figura 6. Níveis Elétricos do Protocolo CAN

IV.4.1) FORMATO DAS MENSAGENS

Existem dois formatos de mensagens no protocolo CAN:

CAN 2.0A – Mensagens com identificador de 11 bits. É possível ter até 2048

mensagens em uma rede com este formato. A Figura 7 apresenta o quadro de mensagem

do CAN 2.0A.

Figura 7. Mensagem CAN 2.0A

Page 19: ALAN FERREIRA ZANATTA

19

CAN 2.0B – Mensagens com identificador de 29 bits. É possível ter,

aproximadamente, 537 milhões de mensagens em uma rede constituída sob este formato. A

Figura 8 apresenta o quadro de mensagem do formato CAN 2.0B.

Figura 8. Mensagem CAN 2.0B

IV.4.2) FERRAMENTA TRUETIME

A ferramenta TrueTime, desenvolvida pelo Departamento de Controle Automático da

Universidade de Lund na Suécia, é um toolbox do MATLAB/Simulink utilizado para facilitar a

simulação de operação e comportamento temporal de um NCS ou um sistema distribuído

com múltiplos controladores operando em tempo real (CERVIN et al., 2003). Essa

ferramenta é composta basicamente por uma biblioteca do Simulink contendo seis blocos,

sendo o bloco de kernel (TrueTime Kernel), dois blocos de rede (com fio – TrueTime

Network e sem fio – TrueTime Wireless Network), dois blocos de transmissão de

mensagens (envia mensagem – ttSendMsg e recebe mensagem – ttGetMsg) e um bloco de

bateria (TrueTime Battery), mostrados na Figura 9. A utilização desses blocos permite

simular e analisar a inclusão de uma rede de comunicação e do trafego de mensagens

(blocos de rede e blocos de transmissão de mensagens) num sistema de controle e a

operação de um processador de tempo real (bloco kernel) executando tarefas de controle e

interface de dados (I/Os). Juntamente com os blocos da biblioteca, a ferramenta possui um

conjunto de funções adicionais (fornecidas em arquivos C++ ou Matlab Mex) desenvolvidas

Page 20: ALAN FERREIRA ZANATTA

20

para configurar e definir a execução de atividades realizadas pelo bloco kernel. Entre essas

funções pode-se citar a conversão AD/DA, envio e recebimento de mensagens, criação e

gerenciamento de tarefas, interrupções, temporizadores e monitoração de eventos. Os

blocos e funções da biblioteca da ferramenta TrueTime se conectam diretamente aos blocos

já existentes nas bibliotecas disponíveis no Simulink, facilitando sua utilização.

Figura 9. Blocos da Biblioteca TrueTime

Os blocos de rede e de kernel da biblioteca são baseados em eventos, podendo ser

eventos internos ou externos, os quais determinam a execução de suas atividades. Eventos

internos são relacionados ao tempo, como por exemplo, o tempo definido terminou, a tarefa

foi executada ou a mensagem foi transmitida. Eventos externos são relacionados com

interrupções ou fatos externos aos blocos como, por exemplo, uma mensagem foi detectada

na rede ou a velocidade do motor ultrapassou a referencia.

Um modelo da ferramenta TrueTime pode conter diversos blocos, como por exemplo

mais de um bloco de rede (simulando um sistema com mais de uma rede) e um mesmo

bloco de kernel conectado em mais de uma rede. Cada rede (ou bloco de rede) no modelo é

identificada por um número e cada dispositivo (ou bloco de kernel) conectado em uma rede

é identificado por um número, o qual é único para essa rede.

IV.4.2.1) BLOCO DE KERNEL (TRUETIME KERNEL)

O bloco de kernel da ferramenta é composto por uma função do Matlab que simula

um computador ou processador com um kernel baseado em eventos, operações de

Page 21: ALAN FERREIRA ZANATTA

21

conversão A/D e D/A, interface de dados (I/O), comunicação via rede, canal externo para

interrupções e variáveis de monitoramento (Schedule e Monitors) (CERVIN, OHLIN &

HENRIKSSON, 2007). Internamente no bloco de kernel, estruturas como filas, memórias,

buffers, temporizadores estão implementados e são utilizados nas simulações. A

comunicação via rede é realizada através de uma entrada de recepção de mensagens da

rede (Rcv), uma saída de envio de mensagens para a rede (Snd). O bloco de kernel contém

ainda uma entrada (E) e uma saída (P) que são utilizadas juntamente com o bloco de

bateria (TrueTime Battery).

IV.4.2.2) BLOCOS DE REDE

Os blocos de rede da ferramenta também são baseados em eventos e simulam o

mecanismo de acesso ao meio de comunicação, a transmissão das mensagens na rede e

tempos de processamento relativo à transmissão das mensagens, de acordo com o tipo de

rede ou protocolo escolhido (CERVIN, OHLIN & HENRIKSSON, 2007). Cada mensagem

transmitida na rede contém informações sobre o dispositivo de origem e de destino da

mensagem, dados definidos pelo usuário (medição realizadas, sinais de controle) e

tamanho da mensagem. Outras informações específicas sobre características de tempo real

como prioridade e deadline das mensagens são opcionais e definidas de acordo com o

protocolo escolhido.

IV.4.2.3) BLOCOS DE TRANSMISSÃO DE MENSAGENS

Os blocos de transmissão de mensagens (envio e recebimento) são utilizados para

simplificar a simulação e análise de redes de comunicação e sistemas de controle via redes.

A principal característica desses blocos é a não necessidade de utilização de blocos de

kernel para transmissão de mensagens em um sistema. Assim, a criação de scripts de

inicialização de blocos de kernel não é necessária e simplifica-se a criação de códigos para

transmissão de mensagens. No entanto, os blocos de transmissão de mensagens não

permitem a criação de códigos mais complexos como algoritmos de controle. Num mesmo

Page 22: ALAN FERREIRA ZANATTA

22

modelo do TrueTime podem ser utilizado blocos de rede e blocos de transmissão de

mensagens simultaneamente.

Page 23: ALAN FERREIRA ZANATTA

23

V) CONSTRUÇAO DO MÓDULO DE MOTOR DC

Com o objetivo de realização de experimentos de controle de posição de motores de

corrente contínua, foi construído uma malha de controle para a plataforma de NCS, a qual é

apresentada na Figura 10. Essa malha de controle é constituída por um motor DC, um

encoder para medição da posição, um drive de acionamento PWM, um circuito eletrônico de

leitura do encoder, uma fonte AC/DC para alimentação dos dispositivos e conectores

específicos para a rede CAN. O objetivo deste NCS é a realização de experimentos de

controle de posição (referência em graus) definida pelo usuário.

Os sinais de entrada (sinal de controle PWM para acionamento do motor DC) e saída

(medição da posição da haste através do encoder) do sistema são transmitidos através da

rede CAN da plataforma, sendo que a integração da malha de controle à rede CAN foi feita

utilizando-se da interface CAN descrita anteriormente.

Figura 10. Bancada de Motor de Corrente Contínua

Page 24: ALAN FERREIRA ZANATTA

24

V.1) MOTOR DE CORRENTE CONTÍNUA

O motor de corrente contínua escolhido para ser usado no sistema foi da Fabricante

Maxon, modelo 359175. Este modelo é composto pelo conjunto:

1. Motor Modelo RE-max 24, ordem 222053: especificações e desenho técnico na

Figura 11;

Figura 11. Especificações e Desenho Técnico - Motor RE-max 24

2. Redução Planetary Gearhead GP 22 C: Redução: 109 : 1;

3. Encoder MR, Tipo M, 512 Pulsos/Volta, 3 Canais.

V.2) ACIONAMENTO DO MOTOR DC

O acionamento de motores DC pode ser feito de diversas maneiras. Uma técnica

difundida atualmente é a de Pulse Width Modulation (PWM). A vantagem desta técnica

quando comparada a variação contínua de tensão, por exemplo, é que o PWM apresenta

menores perdas de energia e menor aquecimento dos componentes do circuito de

acionamento, permitindo que estes sejam menores e mais baratos.

O PWM consiste em um método chaveado de tensão em freqüência da ordem de

KHz, pelo qual, através de uma onda quadrada, controla-se a tensão aplicada ao motor. A

tensão média aplicada no motor é dada pela razão entre o período em que a onda do PWM

fica "ativa" e o período em que ela fica "inativa" vezes a tensão máxima de alimentação.

Para tal, foi utilizado um CI contendo uma Ponte H, modelo LMD18200. O esquema com as

Page 25: ALAN FERREIRA ZANATTA

25

ligações deste circuito integrado pode ser visto na Figura 12 e a imagem do circuito

construído, na Figura 13.

Figura 12. Esquema CI LMD18200

Figura 13. Foto do Driver PWM

V.3) LEITURA DO ENCODER

Inicialmente foi desenvolvido um sistema responsável pela obtenção da posição em

graus do eixo do motor que consistia de: um Circuito Integrado DM74LS74AN que definia o

sentido de rotação do motor; e pela ligação de um canal do encoder diretamente no clock

secundário do PIC, o qual, através de um tratamento por interrupções do sinal de

Page 26: ALAN FERREIRA ZANATTA

26

quadratura e da aquisição do sentido de rotação gerado no CI DM74LS74N, gerava o

ângulo de rotação do motor.

No entanto, após a realização de uma série de testes, verificou-se que tal sistema não

era confiável e em situações em que as variações de velocidade eram grandes, os dados

de posição do eixo do motor gerados pelo PIC não eram compatíveis com o sistema físico.

Nesse cenário, outras possibilidades de circuitos que tratam sinais de quadratura

foram pesquisadas e estudadas.

Assim, para a determinação da posição do motor ao longo do tempo, optou-se pelo

circuito integrado HCTL2017-A00 (Figura 14) em conjunto com rotinas no PIC18F258.

Estas, responsáveis pelo correto tratamento dos sinais de saída do HCTL2017 e pela

colocação de uma mensagem na rede CAN, contendo o número de pulsos do encoder

naquele instante.

Figura 14. Esquema HCTL2017-A00

As funções deste circuito integrado abrangem a decodificação dos sinais de

quadratura dos canais do encoder, a contagem de pulsos e a interface digital com o

microcontrolador.

Por apresentar um contador de 16 bits, a montagem dos bits mais significativos –

MSB – (Most Significant Byte - byte formado pelos bits 8 à 15) e bits menos significativos –

Page 27: ALAN FERREIRA ZANATTA

27

LSB – (Least Significant Byte - byte formado pelos bits 1 à 7), seqüenciando os dois bytes

(16 bits) da leitura dos sinais dos canais A e B do encoder após a quadratura destes, dá-se

pela manipulação dos pinos SEL, OE e RST .

Com o pino OE em nível lógico alto, não haverá sinal de leitura nas entradas dos

pinos D0 à D7, pois ele está ligado às portas NAND internas do contador, desabilitando a

contagem dos bits. Logo, para começar a leitura dos dois bytes mais e menos significativos,

tal pino deverá permanecer em nível lógico baixo. O pino SEL seleciona a leitura dos bits

mais e menos significativos. Com o pino SEL em baixa, os bits mais significativos são lidos

primeiramente e em alta, os bits menos significativos são lidos, montando os dois bytes.

O pino 5 é o RST (reset) que é ativado em baixa, porém tem sua lógica invertida na

entrada com uma porta NOT, assim o pino tem que ser mantido em nível lógico baixo para

funcionar e em alta para reiniciar o CI. O pino 2 (CLK) é a entrada do clock (precisa ser 3

vezes maior que o maior sinal do encoder), se o clock não for 3 vezes maior o sinal de

saída não será confiável, pois pode haver perda de sinal durante a leitura do encoder.

Os pinos 6 e 7 (entradas dos canais A e B, respectivamente) são conectados às

saídas A e B do encoder, os quais recebem os sinais em quadratura com defasagem de

90°. Desta forma, pode-se conhecer o sentido de rotação do encoder.

Os pinos 1 e 9 ao 15 correspondem ao D0 a D7 que se referem a um bit de saída do

sinal lido, montando primeiramente o MSB e, posteriormente, o LSB. O pino 8 (GND) e o

pino 16 (VDD) são a referência e alimentação, respectivamente. No projeto, o

microcontrolador irá controlar os pinos SEL e OE para a leitura do encoder, e os bytes

serão captados pela portas do microcontrolador, que farão a verificação dos valores e sua

correção através de rotinas de controle.

A acuracidade da decodificação de quadratura do CI HCTL2017 é alta quando

comparada a outros métodos de decodificação, como a utilização de portas comuns ou

tratamento de interrupções via clock secundário em microcontroladores.

Page 28: ALAN FERREIRA ZANATTA

28

Visto a importância de terem-se dados de posição precisos e confiáveis para a

realização de um controle de posição adequado, a decisão pelo uso deste circuito anexo é

justificada.

V.4) PROGRAMAÇÃO DO PIC

Uma rede CAN é composta pelo conjunto de dispositivos conectados (sensores e

atuadores), interfaces de integração (nós CAN ou ECU) e barramento. SOUSA (2002)

apresenta um levantamento de componentes e circuitos eletrônicos para desenvolvimento

de redes CAN, sendo sugerida uma interface padrão para integração destes dispositivos,

que foi posteriormente adaptada e aperfeiçoada em BRAZ et al. (2004).

A rede CAN deste experimento foi montada utilizando-se desta interface. O

esquemático do circuito desta interface CAN implementada, mostrado na Figura 15, é

composto basicamente por três módulos integrados, que são:

1. Transceptor CAN: módulo responsável pela adaptação dos níveis de tensão entre

circuito do nó CAN e do barramento CAN;

2. Transceptor RS232: módulo responsável pela adaptação dos níveis de tensão entre

circuito do nó CAN e a interface RS232, baseada em um controlador tipo USART

(Universal Synchronous / Asynchronous Receiver Transmitter);

3. Microcontrolador com Controlador CAN: módulo constituído por CPU, memória,

programas computacionais, interfaces para outros dispositivos e controlador CAN, que

é o módulo central da implementação e do controle do protocolo utilizado para

comunicação.

Page 29: ALAN FERREIRA ZANATTA

29

Figura 15. Esquemático do Circuito da Interface CAN Padrão (BRAZ et. al. 2004)

Entre as especificações e características dessa interface, mostradas de acordo com

as legendas da imagem da interface da Figura 16, podem-se citar:

1. Microcontrolador PIC18F258 (MICROCHIP, 2006a) com controlador CAN –

Legenda 4;

2. Transceiver MCP2551 (MICROCHIP, 2006) da Microchip – 2;

3. Circuito integrado de condicionamento da porta serial MAX232 (MAXIM,2006) –

Legenda 3;

4. Barramento CAN a 4 fios (GND, VCC, CAN_H, CAN_L) – Legenda 6;

5. Conexão de dispositivos através de interface Serial RS232 – Legenda 1;

6. Conexão de sensores e atuadores através de portas de E/S (entrada e saída) –

Legenda 5;

7. Conexão de outros dispositivos através de interfaces SPI (Serial Peripheral

Interface.), I2C (Inter-integrated Circuit) (MICROCHIP, 2006a);

8. Controle de dispositivos através de portas PWM (Pulse With Modulation), A/D

(conversores analógico – digital), (MICROCHIP, 2006a).

Page 30: ALAN FERREIRA ZANATTA

30

Figura 16. Imagem da Interface CAN Implementada (Sousa, 2002)

Na integração do módulo de corrente contínua à rede CAN, é tarefa do PIC: realizar o

controle do CI HCTL2017-A00, montar o inteiro de 2 Bytes com sinal contendo o número de

pulsos do encoder (positivo: sentido horário; e negativo: sentido anti-horário) a partir de

duas leituras consecutivas dos terminais de saída do HCTL (como explicado na seção

anterior), e pelo envio de uma mensagem pela rede CAN contendo essas informações, para

que a ECU possa recebê-la e recuperar os dados descritos.

A ECU, tendo a posição do motor, através do tratamento adequado do número de

pulsos recebido em um inteiro de 16 bits com sinal, realizará o controle projetado e colocará

na rede CAN uma mensagem contendo: um número entre 0 e 100 que corresponde à

porcentagem da tensão de alimentação (24V) a qual o motor será submetido naquele

instante e a direção para o qual o motor deve girar.

É tarefa do PIC: receber a mensagem contendo a porcentagem de tensão de

alimentação a ser aplicada e a direção de rotação desejada, criar um sinal PWM e um sinal

de direção de rotação e aplicá-los na entrada do circuito contendo a Ponte H.

Page 31: ALAN FERREIRA ZANATTA

31

Foi programado que o PIC enviará uma mensagem a cada 100ms contendo os dados

de posição e receberá uma mensagem de atuação assim que esta estiver disponível na

rede.

As tarefas que o PIC deve executar foram programadas na linguagem C utilizando o

software MPLAB com o Compilador C18 da Microchip. O diagrama de programação pode

ser visto na Figura 17.

Figura 17. Diagrama - Programação PIC

Desta forma, com a programação do PIC, finalizou-se a construção do módulo de

motor de corrente contínua. O módulo está construído, integrado a rede CAN, enviando

mensagens com informação de seu sensor (encoder) e recebendo mensagens de atuação

(PWM/motor).

O módulo construído foi utilizado como plataforma de testes para o desenvolvimento

de controles via rede CAN, os quais serão detalhados neste relatório em seções adiante.

Page 32: ALAN FERREIRA ZANATTA

32

VI) MODELAGEM MATEMÁTICA

A modelagem matemática se apresenta como ferramenta para o desenvolvimento de

controladores e para a simulação do sistema.

VI.1) FUNÇÃO TRANSFERÊNCIA - MOTOR DC

O motor de corrente contínua, como o utilizado neste trabalho, pode ser representado

esquematicamente pela Figura 18.

Figura 18. Esquema Motor de Corrente Contínua

Usando a Lei de Kirchhoff’s da Voltagem, obtemos a seguinte equação:

∙ ∙ 0 (1)

- Tensão Aplicada nos Terminais do Motor

- Resistência da Armadura

- Corrente da Armadura

- Indutância da Armadura

- Força Contra Eletromotriz

Aplicando a Transformada de Laplace:

∙ ∙ ∙ 0 (2)

Os motores de corrente contínua convertem energia através da interação de dois

campos magnéticos: um dos campos é produzido por um imã e o outro é induzido por uma

corrente elétrica nas espiras da armadura. Essa interação gera um torque no eixo do rotor.

Page 33: ALAN FERREIRA ZANATTA

33

Uma força contra eletromotriz, proporcional à velocidade do rotor, também é gerada

em conseqüência da rotação. Assim, a velocidade do rotor será proporcional a tensão

aplicada.

∙ (3)

Sendo:

- Constante Contra Eletromotriz do Motor

- Ângulo de Saída do Motor

Aplicando a Transformada de Laplace:

∙ ∙ (4)

Substituindo (4) em (2):

∙ ∙ ∙ ∙ ∙ 0 (5)

Rearranjando:

∙∙∙ (6)

Aplicando a Segunda Lei de Movimento de Newton no motor e na redução:

∙ ∙ (7)

∙ !" ∙ (8)

Sendo:

- Momento de Inércia do Motor

- Torque na Saída do Motor

- Torque na Entrada da Redução

# - Eficiência da Redução

- Coeficiente de Redução

- Momento de Inércia da Redução

Page 34: ALAN FERREIRA ZANATTA

34

- Ângulo de Saída da Redução

!" - Coeficiente de Atrito Equivalente

Substituindo (7) em (8):

∙ # ∙ ∙ # ∙ ∙ ∙ !" ∙ (9)

Temos que:

∙ (10)

Como resultado da interação entre os campos magnéticos, uma corrente elétrica flui

através das espiras e um torque, proporcional a corrente aplicada, é gerado.

# ∙ ∙ (11)

Sendo:

# - Eficiência do Motor

- Constante de Torque do Motor

Substituindo (10) e (11) em (9):

∙ # ∙ # ∙ ∙ ∙ # ∙ $ ∙ ∙ !" ∙ (12)

Aplicando a Transformada de Laplace:

∙ ∙ $ + # ∙ $ ∙ ∙ ∙ $ + !" ∙ ∙ # ∙ # ∙ ∙ ∙ (13)

Substituindo (10) em (6):

∙∙∙∙ (14)

Substituindo (14) em (13):

∙ ∙ $ + # ∙ $ ∙ ∙ ∙ $ + !" ∙ ∙ # ∙ # ∙ ∙ ∙ & ∙ ∙ ∙ ∙ + '(15)

Considerando:

" + # ∙ ∙ $ (16)

Page 35: ALAN FERREIRA ZANATTA

35

Rearranjando (15), temos as funções transferência:

# ∙ # ∙ ∙

-" ∙ . ∙ / + -" ∙ + !" ∙ . ∙ $ + (!" ∙ + # ∙ # ∙ ∙ ∙ $) ∙

VI.2) FUNÇAO TRANSFERÊNCIA - MOTOR MAXON

A função transferência obtida no tópico anterior estabelece uma relação entre a

tensão aplicada nos terminais do motor e a posição de saída da redução em função dos

parâmetros característicos do motor e da redução. Estes variam de acordo com o modelo e

o fabricante.

No presente trabalho, o motor utilizado foi do fabricante Maxon, modelo 359175.

Tal modelo é um conjunto encoder + motor + redutor, com os seguintes parâmetros:

Motor Modelo RE-max 24, ordem 222053

4.17 ∙ 103 Kg.m2

!" 2.19 ∙ 106 N.m.s

# 0.84

8 4.4 ∙ 109 V.s/rad

0.0244 N.m/A

0.000406 H ≈ 0

8.47 Ω

Redução Planetary Gearhead GP 22 C

0.4 ∙ 103 Kg.m2

= 109

# = 0.59

Assim, substituindo os termos na função transferência do tópico anterior, temos:

=

1.318

0.02476 ∙ $ + 3.509 ∙

Page 36: ALAN FERREIRA ZANATTA

36

VII) VERIFICAÇÃO DO MODELO

VII.1) RESPOSTA A ENTRADA DEGRAU

Experimentos, sem o uso de rede de comunicação CAN, foram realizados para

analisar as respostas do sistema real a uma entrada degrau em malha aberta e compará-las

com a simulação deste controle feita em Matlab/Simulink com o intuito de verificar a

acuracidade do modelo matemático desenvolvido para o motor.

O sistema simulado em Matlab Simulink é representado pelo diagrama de blocos da

Figura 19.

Figura 19. Diagrama de Blocos - Sistema em Malha Aberta

Nos experimentos, três diferentes tensões foram aplicadas no motor: 3V (Figura 20),

6V (Figura 21) e 12V (Figura 22).

Page 37: ALAN FERREIRA ZANATTA

37

Figura 20. Resposta ao degrau de 3V

Figura 21. Resposta ao degrau de 6V.

Page 38: ALAN FERREIRA ZANATTA

38

Figura 22. Resposta ao degrau de 12V.

A partir dos três gráficos acima podemos comparar as respostas da simulação (em

vermelho) e do sistema real (em azul). Podemos verificar que as respostas do sistema real

são bem próximas da simulação, o que valida a modelagem realizada.

VII.2) RESPOSTA A UM CONTROLE PROPORCIONAL

Um controle proporcional foi desenvolvido na plataforma Labview (Figura 23) e

experimentos foram realizados para analisar as respostas do sistema real e compará-las

com a simulação deste controle feita em Matlab Simulink (Figura 24).

A interface de comunicação utilizada para adquirir os sinais do encoder e realizar a

atuação no motor através do controle em Labview foi a Placa NI USB 6210. Para

desenvolver o programa da Figura 23, um estudo sobre aquisição e geração de sinais em

Labview foi realizado e toda uma lógica de controle foi criada.

Page 39: ALAN FERREIRA ZANATTA

39

Figura 23. Diagrama de Controle do Motor na Plataforma Labview

Figura 24. Diagrama de Blocos - Sistema em Malha Fechada com Controle Proporcional

Nos experimentos, três diferentes ganhos K foram utilizados no controle proporcional:

K=1 (Figura 25), K=3 (Figura 26) e K=10 (Figura 27).

Page 40: ALAN FERREIRA ZANATTA

40

Figura 25. Resposta ao Controle Proporcional K=1.

Figura 26. Resposta ao Controle Proporcional K=3.

Page 41: ALAN FERREIRA ZANATTA

41

Figura 27. Resposta ao Controle Proporcional K=10.

A partir dos três gráficos acima podemos comparar as respostas da simulação (em

vermelho) e do sistema real (em azul) das respostas dos controles proporcionais. Podemos

verificar que as respostas do sistema real são bem próximas da simulação, o que reforça a

validação da modelagem do sistema realizada.

As comparações realizadas entre as respostas do modelo matemático quando

simulado em malha aberta e fechado com as respostas do sistema reais, apresentando

respostas bem próximas permitiram a validação do modelo matemático.

A obtenção de uma função transferência que descreva a resposta do sistema com alta

precisão é de fundamental importância para o projeto de controles, sendo estes diretos ou

via rede.

Page 42: ALAN FERREIRA ZANATTA

42

VIII) SISTEMA DE CONTROLE VIA REDE CAN

VIII.1) PROJETO E SIMULAÇÃO

Um controle proporcional derivativo foi desenvolvido e implementado no sistema

através da rede de comunicação CAN. Experimentos foram realizados para analisar as

respostas do sistema real e compará-las com a simulação deste controle realizada com o

Toolbox TrueTime do Matlab/Simulink.

A utilização de ferramentas de simulação e projeto de NCS é necessária para o

desenvolvimento de sistemas de controle, pois permite ao projetista avaliar a dinâmica do

sistema de controle antes de sua implementação real, reduzindo tempo e custos de projeto

e desenvolvimento.

A ferramenta TrueTime (http://www.control.lth.se/truetime) é um Toolbox do

Matlab/Simulink usado para facilitar a simulação da operação e do comportamento temporal

de NCS e de sistemas embarcados ou distribuídos com múltiplos controles operando em

tempo real. A ferramenta consiste de uma biblioteca de blocos do Simulink, basicamente

com um bloco computacional de kernel e blocos de rede de comunicação, como mostrado

na Figura 28, e uma coleção de arquivos MEX do Matlab.

Figura 28. Biblioteca de Blocos do TrueTime

Uma completa simulação do NCS pode ser definida na ferramenta utilizando os

blocos disponíveis, desde o modelo da planta, o algoritmo de controle até a rede de

comunicação usada (CERVIN et al., 2006).

Simulações em TrueTime são programadas da mesma forma que os sistemas de

NCS. O programa é escrito em código Matlab ou em C++. A execução das tarefas e das

Page 43: ALAN FERREIRA ZANATTA

43

interrupções é definida por funções. Cada tarefa é definida pela especificação de atributos

(prioridade, deadline, período etc.). A principal diferença entre a simulação e a programação

real é que na primeira, os tempos de execução/transmissão devem ser especificados pelo

desenvolvedor. Essa abordagem confere alta flexibilidade a ferramenta de simulação

TrueTime.

Figura 29. NCS para Controle de um Motor DC implementado na Ferramenta TrueTime

Na Figura 29, o termo Transfer Function é a função transferência obtida a partir da

modelagem matemática apresentada em seções anteriores deste relatório com as

apropriadas substituições das variáveis pelos parâmetros reais do motor.

Para o NCS via rede CAN projetado, foi definida uma velocidade de 250 Kbits/s para a

rede e mensagens de 2 bytes para os dados transmitidos. Em relação aos parâmetros

definidos para as ECUs do NCS, a ECU 1 funciona como gerador de carga para a rede. A

ECU 2 (atuador) é responsável por receber a mensagem CAN e enviar o sinal de controle

(u) convertido (D/A) para o processo. A ECU 4 (sensor) é responsável pela leitura e

conversão (A/D) do sinal de saída (y) do processo e envio da mensagem CAN para o

controlador. A ECU 3 (controlador) é responsável pelo recebimento das mensagens CAN do

sensor, aplicação do algoritmo de controle projetado e envio das mensagens CAN para o

atuador.

Três controladores PD discreto com aproximação derivativa, definidos abaixo, foram

implementados. Os parâmetros da parcela derivativa variaram de um controle para outro,

Page 44: ALAN FERREIRA ZANATTA

44

sendo K=1, K=3 e K=10, já os outros termos permaneceram constantes, sendo Td=0,001,

h=0,1s (taxa de amostragem) e N=10 (constante de filtragem derivativa).

VIII.2) CONTROLE REAL VIA REDE CAN

Os mesmos controles simulados no item anterior com o Toolbox TrueTime do Matlab

foram implementados no sistema real através de uma rede CAN administrada por software

desenvolvido na plataforma LabView. O esquemático de tal implementação pode ser

visualizado na Figura 30.

Figura 30. Esquemático Controle via Rede CAN

No NCS desenvolvido, as informações do sensor referentes ao número de pulsos do

encoder que traduzem a posição do motor são interpretadas pela ECU e enviadas

periodicamente para o controlador via mensagens na rede CAN. O controlador, neste caso,

é um computador pessoal que se comunica com a rede CAN através de uma placa PCI-

CAN.

Após o recebimento da mensagem, o controlador executa o algoritmo de controle

configurado, obtém o sinal de controle e o envia a informação via mensagem pela rede CAN

para o atuador. Tanto o controlador como o atuador funcionam baseados em eventos.

Page 45: ALAN FERREIRA ZANATTA

45

VIII.3) COMPARAÇÃO ENTRE AS RESPOSTAS DA SIMULAÇÃO E DA

IMPLEMENTAÇÃO REAL DO NCS VIA REDE

As respostas obtidas do controle simulado com o Toolbox TrueTime do

Matlab/Simulink e as respostas do sistema real podem ser observadas na Figura 31, na

Figura 32 e na Figura 33.

Figura 31. Controle PD (K=1 e Td=0.001) via rede CAN (simulado e real)

Page 46: ALAN FERREIRA ZANATTA

46

Figura 32. Controle PD (K=3 e Td=0.001) via rede CAN (simulado e real)

Figura 33. Controle PD (K=10 e Td=0.001) via rede CAN (simulado e real)

Page 47: ALAN FERREIRA ZANATTA

47

Analisando os gráficos acima nota-se claramente a grande semelhança entre as

curvas “real” e “simulada”. Esta semelhança entre os controles “real” e “simulado” deve-se

principalmente a acuracidade do modelo matemático desenvolvido anteriormente para o

motor DC; e também ao uso do Toolbox TrueTime do Matlab/Simulink com as corretas

parametrizações para a simulação da rede de comunicação CAN, descrevendo-a de forma

precisa.

Page 48: ALAN FERREIRA ZANATTA

48

IX) CONCLUSÕES

O desenvolvimento de NCS é, essencialmente, um problema multidisciplinar que

envolve desde a modelagem do sistema físico, passando por sua validação, pela simulação

do controle via rede e finalmente pela implantação real do NCS.

Neste trabalho, todas as etapas descritas foram completamente desenvolvidas e as

respostas do sistema simulado e real foram obtidas. A comparação destas permite validar a

implantação do projeto do módulo e do NCS propostos e afirmar que a aplicação de NCS

com redes CAN para controle de motor de corrente contínua é viável.

A utilização de ferramentas de simulação e projeto de NCS é necessária para o

desenvolvimento de sistemas de controle, pois permite ao projetista avaliar a dinâmica do

sistema de controle antes de sua implementação real, reduzindo tempo e custos de projeto

e desenvolvimento.

Também com o intuito de se avaliar a eficiência da ferramenta de simulação

TrueTime do Matlab/Simulink, esta foi utilizada neste trabalho e se mostrou precisa na

simulação da rede de comunicação CAN e do NCS, sendo indicada para a utilização no

desenvolvimento de sistemas de controle via rede.

Page 49: ALAN FERREIRA ZANATTA

49

X) DIFICULDADES ENCONTRADAS

No primeiro semestre do projeto deste trabalho de conclusão de curso, uma das

dificuldades encontradas foi na adaptação do modelo matemático a simulação real. Os

atritos, estático e dinâmico, do motor interferem nas respostas das simulações. Como a

modelagem deste atrito é de complexo desenvolvimento e não é o objetivo deste trabalho

de conclusão de curso, verificou-se experimentalmente a tensão utilizada pelo motor para

que este supere o atrito e inicie seu movimento: o valor de 0,26V foi encontrado.

A partir desta informação, pode-se aplicar essa tensão inicialmente e

permanentemente em todos os experimentos de forma que o motor já estivesse na

eminência de entrar em movimento antes do controle iniciar sua atuação.

Desta forma, pode-se comparar os resultados da modelagem e dos experimentos e

verificar o modelo matemático proposto, mesmo este não contendo a modelagem dos

atritos do motor.

O estudo do funcionamento do PIC, de seus registradores, portas e comunicação com

o conseqüente desenvolvimento do programa em C para ser executado pelo PIC também

exigiu grande dedicação e esforço do aluno.

A comunicação através da rede CAN, um tema desconhecido pelo aluno até o início

deste trabalho de conclusão de curso, exigiu o estudo dos protocolos de comunicação e

funcionamento do CAN e das bibliotecas de comunicação já existentes.

No segundo semestre do projeto deste trabalho de conclusão de curso, problemas

com o sistema inicialmente desenvolvido para executar a leitura e o tratamento dos sinais

do encoder do motor foram encontrados. Tal sistema se mostrou pouco preciso e confiável

e, assim, não adequado para a utilização em uma malha de controle via redes, a qual

requer precisão dos dados do sensor para a realização de um controle adequado.

Desta forma, outras formas de realizar a leitura e tratamento dos sinais de quadratura

do encoder foram pesquisadas, estudadas, testadas e optou-se pela que se mostrou mais

adequada, como descrito anteriormente neste relatório.

Page 50: ALAN FERREIRA ZANATTA

50

A simulação do controle via rede CAN do módulo de motor de corrente contínua exigiu

uma ampla pesquisa das ferramentas disponíveis para tal uso. O toolbox TrueTime do

Matlab/Simulink se mostrou o mais promissor e foi escolhido como plataforma de testes.

Page 51: ALAN FERREIRA ZANATTA

51

XI) ANÁLISE DOS RESULTADOS

A construção do módulo de corrente contínuo e sua integração com uma rede CAN foi

finalizada.

O modelo matemático desenvolvido foi validado e permite sua utilização para

trabalhos futuros relacionados a projetos de controles de motores de corrente contínua.

A comparação das respostas das simulações do controle via rede CAN do sistema

apresentado com as respostas do controle real do mesmo permitiu validar o uso da

ferramenta TrueTime para simulações de controle via redes.

O desenvolvimento e validação do NCS via rede CAN proposto neste trabalho

comprovam sua viabilidade de aplicação em controles de motores de corrente contínua.

Com tal comprovação, o objetivo deste trabalho de conclusão de curso é alcançado e

informações sobre a implementação e validação deste NCS são apresentadas ao longo

deste relatório.

O módulo de corrente contínua desenvolvido neste projeto foi integrado a uma

plataforma de testes de NCS em desenvolvimento no projeto de pesquisa FAPESP

08/03481-1 e permitirá também a realização de futuros estudos e experimentos e o

aprendizado dessa tecnologia.

Como resultado deste trabalho também se tem a publicação de um artigo científico no

9º Congresso Temático de Dinâmica, Controle e Aplicações - DINCON2010 - com o título

“Simulação, Análise e Controle de Motor de Corrente Contínua Utilizando um Sistema de

Controle via Rede CAN”, sendo o autor deste trabalho de conclusão de curso o primeiro

autor do artigo.

Page 52: ALAN FERREIRA ZANATTA

52

XII) REFERÊNCIAS BIBLIOGRÁFICAS

ALLDREDGE, G. W. (2007). PID and Model Predictive Control in a Networked Environment. Master dissertation, Department of Electrical Engineering and Computer Science, CASE Western Reserve UNIVERSITY, 130p., August. BAILLIEUL, J.; ANTSAKLIS, P.J. (2007). Control and Communication Challenges in Networked Real-Time Systems. In: Proceedings of the IEEE TECHNOLOGY OF NETWORKED CONTROL SYSTEMS, v. 95, n. 1, p. 9-28, January.

BOSCH. (2006). CAN 2.0 Specification Version, Acesso em: Setembro 2006. Disponível em: http://www.can.bosch.com.

CERVIN, A.; HENRIKSSON, D.; LINCOLN, B.; EKER, J.; ARZEN, K. E. (2003). How does control timing affect performance? Analysis and simulation of timing using Jitterburg and Truetime, IEEE Control System Magazine, v. 23, p. 16-30, June.

CERVIN, A.; ARZEN, K. E.; HENRIKSSON, D.; LLUESMA, M.; BALBASTRE, P.; RIPOLL, I.; CRESPO, A. (2006). Control Loop Timing Analysis Using TrueTime and Jitterbug, In: Proceedings of the 2006 IEEE Conference on Computer Aided Control Systems Design, p. 1194-1199, 4-6 October.

CERVIN, A.; OHLIN, M.; HENRIKSSON, D. (2007). Simulation of Networked Control Systems Using TrueTime. In: Proceedings of the 3rd International Workshop on Networked Control Systems: Tolerant to Faults, Nancy, France, June.

CLOOSTERMAN, M.; WOUW, N. V.; HEEMELS, M.; NIJMEIJER, H. (2006). Robust Stability of Networked Control Systems with Time-varying Network-induced Delays, In: Proceedings of the 45th IEEE Conference on Decision & Control, p. 4980-4985, December. FELICIO, L. C. Modelagem da Dinâmica de Sistemas e Estudo da Resposta, 2007, Ed. Rima.

GAID, M. B.; CELA, A.; DIALLO, S.; KOCIK, R.;HAMOUCHE, R.; REAMA, A. (2006). Performance Evaluation of the Distributed Implementation of a Car Suspension System. In Proceedings of the IFAC Workshop on Programmable Devices and Embedded Systems. Czech Republic, February.

GODOY, E. P.; SOUSA, R. V.; PORTO, A. J. V.; INAMASU, R. Y. (2006a). Application of a sampling time scheduling for the optimization of distributed control system based on CAN protocol. In: Proceedings of the 5th Brazilian Conference on Dynamics, Control, and Their Applications, SBMAC.

HESPANHA, J. P.; NAGHSHTABRIZI, P.; XU, Y. (2007). A Survey of Recent Results in Networked Control Systems, IEEE Proceedings of the Technology of Networked Control Systems, v. 95, n. 1, p. 138-162, January.

HONG, S. H.; KIM, W. H. (2000). Bandwidth allocation scheme in CAN protocol. IEEE Proceedings of Control Theory and Applications, v. 147, n. 1, p. 37–44.

HUO, Z.; FANG, H.; MA, C. (2004). Networked control system: state of the art. In: Proceedings of the 50th World Congress on Intelligent Control and Automation, WCICA 2004, v. 2, p. 1319- 1322, June.

LEE, K. C.; LEE, S.; LEE, M. H. (2003). Remote fuzzy logic control of networked control system via Profibus-DP. IEEE Transactions on Industrial Electronics, v. 50, n. 4, p. 784-792, August.

LEE, K. C.; LEE, S.; LEE, M. H. (2004). Implementation and PID tuning of network-based control systems via Profibus polling network. Computer Standards & Interfaces, v. 26, n. 3, p. 229–240, May.

LI, Y.; FANG, H. (2005). Control methodologies of large delays in networked control systems. In: Proceedings of the International Conference on Control and Automation, v. 2, p. 1225–1230.

LIAN, F. L.; MOYNE, J. R; TILBURY, D. M. (2001). Performance evaluation of control networks: Ethernet, Controlnet and Device Net. IEEE Control Systems Magazine, p. 66-83.

______. (2002). Network Design Consideration for Distributed Control Systems. IEEE Transactions on Control Systems Technology, v. 10(2), p. 297-307, March.

MOYNE, J. R.; TILBURY, D. M. (2007). The Emergence of Industrial Control Networks for Manufacturing Control, Diagnostics, and Safety Data, IEEE Proceedings of Technology of Networked Control Systems, v. 95, n. 1, p. 29-47, January.

OGATA, K. Engenharia de controle moderno, 1993, Ed. Prentice Hall.

Page 53: ALAN FERREIRA ZANATTA

53

OTHMAN, H. F.; AJI, Y. R.; FAKHREDDIN, F. T.; AL-ALI, A. R. (2006). Controller Area Networks: Evolution and Applications, In: Proceedings of the 2nd International Conference on Information and Communication Technologies - ICTTA 06, v. 2, p. 3088- 3093, 24-28 April.

PEREZ, D. A. (2006). Propostas de Co-Projeto para Sistemas de Controle via Rede. Dissertação de Mestrado. Universidade Federal de Santa Catarina, Florianópolis, 104p.

POHJOLA, M. (2006). PID Controller Design in Networked Control Systems, Master Dissertation, Department of Automation and Systems Technology, Helsinki University of Technology, 91p.

SANTOS, M. M. D. (2004). Metodologias de Projeto para Sistemas de Controle via Redes. Tese de Doutorado. Universidade Federal de Santa Catarina, Florianópolis, 110p.

SOUSA, R.V. CAN (Controller Area Network): uma abordagem para automação e controle na área agrícola. 2002. Dissertação de Mestrado, Universidade de São Paulo. São Carlos, 94p.

SHIN, M.; SUNWOO, M. (2007). Optimal Period and Priority Assignment for a Networked Control System Scheduled by a Fixed Priority Scheduling System. International Journal of Automotive Technology, v. 8, n. 1, p. 39-48, February.

TIAN, X.; WANG, X.; CHENG, Y. (2007). A Self-tuning Fuzzy Controller for Networked Control System. International Journal of Computer Science and Network Security, v. 7, n. 1, p. 97-102.

TIPSUWAN, Y. (2003). Gain Scheduling for Networked Control System. Doctor thesis. Department of Electrical and Computer Engineering, University of North Carolina State. 175p.

TIPSUWAN, Y.; CHOW, M. Y. (2003). Control Methodologies in Networked Control Systems. Control Engineering Practice, v. 11, n. 3, p. 1099-1111.

TORNGREN, M.; HENRIKSSON, D.; REDELL, O.; KIRSCH, C.; EL-KHOURY, J.; SIMON, D.; SOREL, Y.; HANZALEK, Z.; ARZEN, K. E. (2006). Co-design of Control Systems and their real-time implementation – A Tool Survey. Technical Report, Mechatronics Lab, Department of Machine Design, Royal Institute of Technology, Sweden.

YANG, T. C. (2006). Networked control system: a brief survey. IEEE Proceedings of Control Theory and Applications, v. 153, n 4, July, p. 403–412.

ZHANG, L.; HUA-JING, F. (2006). A novel controller design and evaluation for networked control systems with time-variant delays. Journal of the Franklin Institute. v. 343 p. 161–167.

ZHAO, W.; XIA, F. (2006a). A Neural Network Approach to QoS Management in Networked Control Systems over Ethernet, Lecture Notes in Control and Information Sciences, n. 344, p. 444-449.