IMPLEMENTAÇÃO E AVALIAÇÃO DE SISTEMAS DE CONTROLE VIA REDES BASEADOS NO PROTOCOLO CAN – CONTROLLER AREA NETWORK Eduardo Paciência Godoy 1, Bruno N. Bragato 1, Luciano C. Lulio, Arthur Jose Vieira Porto 1, Ricardo Y. Inamasu 2 1 Departamento de Engenharia Mecânica, Escola de Engenharia de São Carlos - USP, São Carlos, Brasil [email protected], [email protected], [email protected], [email protected] 2 Embrapa Instrumentação Agropecuária, São Carlos, Brasil, [email protected] Resumo: Sistemas de controle via redes (NCS – Networked Control Systems) representam uma inovadora abordagem para aplicação de sistemas de controle que utilizam redes industriais. Este trabalho investiga o desenvolvimento de NCS via rede CAN (Controller Area Network) discutindo implementações de hardware e software e apresentando os principais conceitos dessa tecnologia. Resultados obtidos a partir de dois NCS implementados permitem avaliar o desempenho desses sistemas sob diferentes configurações e comprovar a importância do período de amostragem em seu desempenho. Palavras chave: sistemas de controle via redes (NCS), controlador PID discreto, máquina de estado 1. INTRODUÇÃO informação através da rede. 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) [1]. Processo 1 Atuadores 1 msg Processo n Sensores 1 Atuadores n msg msg Sensores n msg Rede de Controle Controlador 1 Controlador n Figura 1. Estrutura de um sistema de controle via redes (NCS) As arquiteturas tradicionais de comunicação e controle ponto-a-ponto, implementadas nos sistemas 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 atende os novos requisitos de desenvolvimento de sistemas de controle como modularidade, controle descentralizado, facilidade de diagnóstico e baixo custo [1]. Nos sistemas industriais atuais, a introdução de arquiteturas de redes de controle baseadas em barra-mento ou fieldbus podem melhorar a eficiência, a flexibilidade, e a confiabilidade do sistema como um todo, reduzindo o tempo e os custos de instalação e manutenção [2]. Essa tecnologia de redes de controle fieldbus, com suas vantagens, foi rapidamente absorvida para satisfazer as necessidades de comunicação entre sistemas e equipamentos aplicados em automação e controle. Desenvolvimentos recentes de sistemas de controle distribuído, onde sensores, atuadores e controladores são conectados por uma rede de comunicação, demonstram o surgimento de uma nova abordagem para a utilização de redes industriais. Nessa abordagem, o controlador e a planta ficam fisicamente alocados em locais separados e são conectados 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 Ainda que os NCS apresentem diversas vantagens sobre as arquiteturas tradicionais de controle, a inclusão da rede de comunicação no controle em malha fechada torna o projeto e o desenvolvimento deste tipo de sistema ainda mais complicado [3]. Referência [4] afirma que os atrasos de comunicação encontrados em NCS dependem do protocolo de comunicação escolhido e de parâmetros de configuração da rede de comunicação. Entre esses parâmetros podem ser citados a velocidade de transmissão (largura de banda), o tamanho das mensagens de dados, os períodos de amostragem dos dispositivos e a porcentagem de mensagens perdidas. Referência [5] afirma que a arquitetura do NCS e o sistema operacional utilizado também são afetam a composição dos atrasos de comunicação. Outro critério muito importante em relação NCS diz respeito ao cumprimento do requisito temporal de cada mensagem (deadline), ou seja, as mensagens têm que ser transmitidas corretamente em um tempo limitado e menor que seu período de amostragem. Caso as mensagens não sejam transmitidas ou o sistema apresente um alto valor para seu tempo de transmissão, sobreposição e perdas de mensagens podem ocorrer deteriorando o desempenho do NCS [6]. Esses fatores acabam por definir as características desses atrasos como sendo constantes ou variantes no tempo. O NCS necessita amostrar e transmitir as informações através de mensagens na rede, de acordo com um período de amostragem apropriado para alcançar o desempenho requerido. No entanto, se esse período de amostragem é 1 Proceedings of the 9th Brazilian Conference on Dynamics Control and their Applications Serra Negra, SP - ISSN 2178-3667 178 Implementação e Avaliação de Sistemas de Controle via Redes Baseadas no Protocolo CAN – Controller Area Network Eduardo P. Godoy, Bruno N. Bragato, Luciano C. Lulio, Arthur J. V. Porto, Ricardo Y. Inamasu mensagem deste ponto, sem ter que reiniciá-la. Isto é realizado pelo processo de arbitragem bit a bit não destrutivo, ou lógica "E" por fios, quando duas ou mais ECUs iniciam a transmissão simultaneamente. Cada bit transmitido é comparado, sendo que o dominante sobrepõe o recessivo. Dentre as especificações do protocolo CAN em relação à camada de enlace de dados, estão os formatos existentes do quadro de dados. São definidos dois formatos de mensagem, onde a única diferença está no tamanho do identificador, sendo CAN 2.0 A Standard (ID 11 bits) e CAN 2.0 B Extended (ID 29 bits) especificados segundo a Figura 2. maior (ou mais rápido) do que a largura de banda disponível na rede de comunicação, a rede se torna sobrecarregada, originado atrasos de comunicação adicionais e causando erros na transmissão das mensagens [6]. Referência [7] apresenta uma revisão sobre as principais contribuições e tendências no desenvolvimento da área de NCS. As pesquisas atuais em NCS têm focado principalmente duas linhas de trabalho. Uma na parte relacionada com a análise da influência de fatores inerentes a NCS (atrasos de comunicação, etc.) no desempenho e estabilidade do sistema [8], bem como o desenvolvimento de ferramentas para simulação desses sistemas [9]. 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 [10], [11]. Nesse trabalho é investigado o desenvolvimento de NCS com redes CAN, apresentando os principais conceitos dessa tecnologia e discutindo sobre as implementações de hardware e software definidas e realizadas. Os resultados desse trabalho permitem avaliar o desempenho de NCS sistemas sob diferentes configurações e comprovar a importância do período de amostragem em seu desempenho. Control Field Arbitration Field Bus Idle S S I O Identifier R D F R E Bits 1 11 1 1 Extended Identifier 18 Data Field R T r1 r0 DLC R 1 1 1 Identifier - 11 bits CAN 2.0A or Identifier - 29 bits CAN 2.0B 4 ACK Field CRC Field Data Field CRC A C K E O F InterMission 64 15 1 1 1 7 3 Bit Stuffing Delimiters CRC, ACK Figura 2. Formatos do Quadro de Dados de Mensagem CAN 2. SISTEMAS DE CONTROLE VIA REDES (NCS) 2.1. Implementação dos NCS via Redes CAN 2.1. Protocolo CAN – Controller Area Network Para a realização dos experimentos realizados neste trabalho, foram implementados dois NCS sendo um para controle de velocidade de motores DC e outro de controle de nível de um reservatório. O esquemático de montagem utilizado nos experimentos é mostrado na Figura 3. Cada NCS é composto pelo controlador, implementado no desktop e pelo conjunto sensor, planta e atuador, implementados em um módulo de controle construído. O CAN é um dos protocolos de comunicação mais aplicados em sistemas de controle distribuído, sendo utilizado em diversas áreas como robótica, automação da manufatura, controle de processos e eletrônica embarcada e através de variados padrões como DeviceNet, CANOpen, J1939 e SDS. Entre os fatores que justificam essa grande utilização do CAN estão seu baixo custo de desenvolvimento, vasta disponibilidade de dispositivos (microcontroladores, DSPs) com controladores CAN embarcados e características interessantes como acesso priorizado à rede de comunicação, robusto método de controle de erros e arbitragem não destrutiva que determinam sua grande aceitação no meio industrial e acadêmico. De acordo com [12], CAN é um protocolo de comunicação digital serial, onde a comunicação de dados é baseada em mensagens formadas por quadros de bits com determinada função. Entre esses quadros de bits, existe o campo identificador (identifier) que caracteriza e define a prioridade de cada mensagem. O valor do identificador de uma mensagem CAN é exclusivo e quanto mais baixo seu valor, maior a prioridade da mensagem. Os sinais elétricos digitais do CAN são representados pelo nível recessivo (nível lógico 1) e nível dominante (nível lógico 0), sendo eles sinais diferenciais entre os dois fios do barramento. O mecanismo de acesso ao meio é fundamentado no conceito CSMA/CD com NBDA (Carrier Sense Multiple Access / Collision Detection with Non-Destructive Bitwise Arbitration), o que significa que as ECUs (electronic control units) CAN possuem acesso ao barramento com prioridades determinadas. Ao verificar o status do barramento, as ECUs iniciam a transmissão de suas mensagens. De acordo com o valor do identificador, a ECU com a mensagem de prioridade menor cessa sua transmissão e a ECU com a mensagem de maior prioridade continua enviando sua Figura 3. Esquemático de Montagem do Experimento com NCS com Rede CAN O módulo de controle de nível de reservatório, mostrado na Figura 4, é constituído por dois tanques, sendo o primeiro graduado (cm), mais alto e com uma torneira para alteração da vazão de saída de água para o segundo tanque. Uma eletrobomba de água para enchimento do reservatório opera como atuador, um sensor de pressão da Freescale Modelo MPX5010 é utilizado para medição do nível de água no reservatório e o acionamento da eletrobomba é feito a partir de um drive PWM. O objetivo deste NCS é a realização de experimentos de controle do nível de água do reservatório superior numa localização (referência em cm) definida pelo usuário e sob diferentes vazões de saída de saída de água do mesmo. 2 Proceedings of the 9th Brazilian Conference on Dynamics Control and their Applications Serra Negra, SP - ISSN 2178-3667 179 Figura 5. Módulo de Controle de Velocidade de Motor para Utilização com NCS via Rede CAN Os sinais de entrada (sinal de controle PWM para acionamento do motor DC) e saída (medição da velocidade de rotação do motor através do encoder ou retransmissão analógica 0-5V de velocidade) do sistema são transmitidos através da rede CAN, sendo que a integração do módulo de controle à rede CAN é realizada por uma interface CAN (ECU). 2.3. Desenvolvimento de Hardware do NCS Figura 4. Módulo de Controle de Velocidade de Motor para Utilização com NCS via Rede CAN Pesquisas recentes sobre modelagem de NCS têm sido realizadas utilizando de modelos baseados em tempo contínuo e tempo discreto. No entanto, é necessária e mais realista, a utilização do ponto de vista de modelagem discreta a partir do momento que na operação de um NCS, os sinais ou informações (do sensor, controlador) são amostrados e então transmitidos numa rede de comunicação [13]. Para modelos contendo estruturas no tempo discreto, muitos pesquisadores assumem que a rede de comunicação possui sincronismo e que os sensores, controladores e atuadores possuem o mesmo período de amostragem. Neste trabalho, cada NCS implementado apresenta a estrutura mostrada na Figura 6. Uma unidade de controle ou ECU [14] baseada em um microcontrolador PIC18F258 é responsável pela aquisição de dados (sensor), atuação na planta (atuador) e pela comunicação com a rede CAN. Assim, o sensor e o atuador estão alocados fisicamente em conjunto com a planta. O controlador do NCS se encontra fisicamente separado da planta e é implementado utilizando de computadores desktop. Esse controlador utiliza uma placa com interface PCI para comunicação com a rede CAN. Os sinais de entrada (sinal de controle PWM para acionamento da eletrobomba) e saída (medição de nível do reservatório do sensor de pressão) do sistema são transmitidos através da rede CAN, sendo que a integração do módulo de controle à rede CAN é realizada por uma interface CAN (ECU). O módulo de controle de velocidade, mostrado na Figura 5, é constituído por um motor DC Motron Modelo M910 de 24V e 43W, um encoder incremental Hohner de 600 pulsos por revolução para medição da posição, um drive de acionamento PWM, um circuito eletrônico de leitura do encoder, um display digital com 4 dígitos para apresentação da velocidade do motor em RPM e um disco inercial para aplicação de cargas ao eixo do motor. O objetivo deste NCS é a realização de experimentos de controle de velocidade do motor numa referência (em RPM) definida pelo usuário e sob diferentes cargas aplicadas ao sistema. 3 Proceedings of the 9th Brazilian Conference on Dynamics Control and their Applications Serra Negra, SP - ISSN 2178-3667 180 Implementação e Avaliação de Sistemas de Controle via Redes Baseadas no Protocolo CAN – Controller Area Network Eduardo P. Godoy, Bruno N. Bragato, Luciano C. Lulio, Arthur J. V. Porto, Ricardo Y. Inamasu 2.4. Desenvolvimento de Software do NCS Planta – Tempo Contínuo u Em cada um dos NCS implementados, o sensor periodicamente realiza a medição da planta (período de amostragem – h) e envia a informação através de mensagens na rede CAN para o controlador. Após o recebimento da mensagem, o controlador calcula o sinal de controle através do algoritmo de controle configurado e envia a informação pela rede CAN para o atuador. O atuador então recebe a mensagem e atua na planta do sistema. Tanto o controlador como o atuador acabam funcionando baseado em evento. Todos os sistemas de controle em malha fechada dos NCS estão compartilhando recursos de banda da rede CAN e também recursos de processamento (CPU) dos desktops. O desenvolvimento do software embarcado nos microcontroladores das ECUs dos NCS foram desenvolvidos em linguagem C através do ambiente de desenvolvimento Mplab com Compilador C18 da Microchip. O software dos controladores, implementados nos computadores através do ambiente de desenvolvimento LabVIEW da National Instruments, utilizam um padrão de projeto baseado em máquinas de estado. Essa técnica facilita o desenvolvimento de código e fornece uma arquitetura de desenvolvimento para o controlador do NCS que pode ser facilmente expandida [16]. A máquina de estados implementada possui 8 estados (Inicialização, SeleçãoNCS, Monitoramento, RecebimentoMSG, DeterminaçãoNCS, Controle, EnvioMSG e Parada) mostrados na Figura 7, cada um com uma finalidade especifica para o funcionamento do controlador. y Atuador - ZOH Sensor – Período de Amostragem (h) (TPRE) (TPOST) Alocados fisicamente em conjunto - ECU msg (TBUS) (TWAIT) Rede Industrial - CAN (TWAIT) Controlador em Desktop (TPRE) (TBUS) msg (TPOST) Controlador – Tempo Discreto (Atraso de Comunicação na Rede Tdelay= Tpre+Twait+Tbus+Tpost) Sinal Contínuo Sinal Digital Figura 6. Estrutura de Implementação de um NCS De acordo com a Figura 6, o processo a ser controlado (ou planta) é admitido ser contínuo no tempo e o atuador possui um segurador de ordem zero (ZOH – zero order hold) que armazena o último sinal de controle amostrado até a chegada do próximo valor ou até o próximo período de amostragem. A rede de comunicação do NCS é então usada para transmissão de medidas de saída da planta para o controlador, fazendo com que a planta seja medida de acordo com um período de amostragem (h). Esta discretização dos sinais acaba motivando o desenvolvimento e a aplicação de controladores baseados no tempo discreto. O funcionamento do controlador do NCS pode ser baseado em tempo (time driven) ou baseado em eventos (event driven). Assim um novo sinal de controle pode ser calculado a cada intervalo de tempo com um período de amostragem constante ou um novo sinal de controle é calculado imediatamente após o recebimento, através de uma mensagem na rede, de uma nova medida da saída da planta pelo sensor. A troca de informações através dos dispositivos do NCS (sensor, controlador, atuador) origina uma transmissão de mensagens (msg) na rede de comunicação. A necessidade dessa transmissão de mensagens impõe atrasos de comunicação (Tdelay) adicionais na rede CAN do NCS. Esses atrasos de comunicação na rede, descritos em [15], dependem de uma série de fatores relacionados, por exemplo, ao hardware e software dos dispositivos e a rede de comunicação utilizada no NCS e muitas vezes podem ter características variantes no tempo. O período de amostragem (h) também representa um importante parâmetro no desenvolvimento do NCS. De acordo com a teoria de controle digital, um período de amostragem deve ser definido o mais rápido (ou de valor pequeno) possível para obter um desempenho de controle melhor e uma dinâmica do sistema mais próxima a de um sistema contínuo no tempo. No entanto, em NCS um período de amostragem muito rápido pode acarretar alta carga e tráfego de mensagens na rede, aumentando o risco de congestionamento de mensagens e originado atrasos de comunicação maiores e consequentemente uma degradação do desempenho do NCS. Portanto o atraso de comunicação e o período de amostragem em NCS são parâmetros de configuração inter-relacionados e que necessitam ser balanceados para atingir a estabilidade e desempenho requeridos pelo NCS [6]. 4 1 2 5 3 8 7 6 Figura 7. Fluxograma de Operação da Máquina de Estado do Controlador do NCS via Rede CAN 1. Inicialização: estado responsável pela configuração e inicialização da rede CAN e dos dispositivos conectados; 2. SeleçãoNCS: estado responsável pela seleção de qual (is) NCS será controlado por aquele controlador; 3. Monitoramento: estado responsável por monitorar a interface de usuário e a rede CAN, indicando a alteração de parâmetros e a presença de mensagens CAN disponíveis na fila de recebimento; 4. RecebimentoMSG: estado responsável pelo recebimento e decodificação da mensagem CAN nos campos e informações requeridos (identificador e dados); 5. DeterminaçãoNCS: estado responsável por identificar as mensagens CAN recebidas, verificando se elas serão usadas no controle de algum dos NCS selecionados previamente (estado 2) para o controlador; 6. Controle: estado responsável por utilizar a informação recebida do sensor e calcular o novo valor para o sinal de controle, respectivamente para todos os NCS selecionados previamente para o controlador. O cálculo do sinal de controle é realizado a partir de algoritmos de controle que podem ser carregados ou desenvolvidos pelo usuário; 7. EnvioMSG: estado responsável pela transmissão das mensagens CAN, contendo as informações do sinal de 4 Proceedings of the 9th Brazilian Conference on Dynamics Control and their Applications Serra Negra, SP - ISSN 2178-3667 181 integral. A Figura 8 apresenta um esquemático do controlador PID definido. controle a ser implementado pelos atuadores, respectivamente para todos os NCS selecionados para o controlador; 8. Parada: estado responsável por finalizar a operação do controlador e enviar mensagens CAN de parada de execução para todos os NCS em operação. r B O software baseado em máquina de estados desenvolvido para o controlador do NCS fornece uma configuração bastante flexível, pois pode ser utilizado (ou replicado) em outros controladores para NCS com pequenas alterações. Além disso, essa configuração de software fornece também facilidade para inserção de novos NCS que serão desenvolvidos (através da configuração dos estados de 4 a 7 para lidar com o novo NCS) e para testar diferentes algoritmos de controle desenvolvidos especificamente para NCS (através da inclusão dos algoritmos de controle desenvolvidos na lista de opções utilizada no estado Controle). ep y . -1 . . C ed Kp /Ti up Kp s.K p .Td s.T 1 d N ud 1/s v ui e=r-y atuador - u + es 1/Tt Figura 8. Estrutura do Controlador PID Discreto para as Malhas de Controle da Plataforma A equação 1 apresenta o algoritmo de implementação do controlador PID discreto projetado. 3. EXPERIMENTOS REALIZADOS e( k ) r ( k ) y ( k ) 3.1. Projeto do Controlador PID Discreto e p ( k ) B.r ( k ) y ( k ) A literatura sobre projeto de controladores para NCS geralmente tem focado nos atrasos de comunicação da rede e em metodologias para lidar com esses atrasos de forma a garantir a estabilidade e o desempenho do NCS. Os controladores propostos nesta área diferem em diversos aspectos e ainda não existe uma solução padrão que possa ser utilizada [13]. Uma questão bastante estudada ultimamente é a arquitetura do controlador escolhido. Uma revisão de algumas metodologias de controle é apresentada em [10]. A maioria das abordagens descritas nesses trabalhos apresenta soluções complexas, com algoritmos que necessitam de grande capacidade de processamento e muitas vezes utilizam informações sobre a rede de comunicação e seus atrasos de comunicação, que são difíceis de serem obtidos. Estes fatores acabam por tornar a aplicabilidade dessas metodologias de controle na indústria tanto quanto questionável [13]. Este fato tem norteado o desenvolvimento de controladores para NCS com estruturas e algoritmos simples e de fácil implementação. Dependendo da planta a ser controlada e dos requisitos de controle a serem alcançados, muitas vezes controladores bastante conhecidos como PID podem compensar os efeitos degenerativos da rede e dos atrasos de comunicação [17]. Neste trabalho é proposto o desenvolvimento e testes de um controlador PID para NCS com redes CAN. Esse controlador deve considerar todas as particularidades presentes no NCS como saturação de atuadores e períodos de amostragem compatíveis com o hardware utilizado. Assim, foram projetados controladores PID discreto com aproximação derivativa (backward diference), ponderação de referência (setpoint weighting e reference off), filtragem da ação derivativa e anti-windup (back-calculation) da ação ed ( k ) C .r (k ) y ( k ) u p ( k ) K p .e(k ) u i ( k ) u i (k 1) u d (k ) K p .h Ti e( k ) K p .h Tt es ( k 1) (1) K pTd N Td ed (k ) ed (k 1) u d (k 1) Td Nh Td Nh u PID (k ) u p (k ) u i (k ) u d (k ) Neste trabalho, o controlador PID discreto definido utiliza um tempo de amostragem (h), um valor de N=10 para a constante de filtragem da ação derivativa, B = 1 e C = 0 para as constantes de ponderação de referência e o parâmetro Tt igual a Tt Ti .Td para controladores PID e igual a Ti para controladores PI. 3.2. Avaliação do Desempenho dos NCS Implementados Nos experimentos realizados com os dois NCS implementados, foram utilizados os seguintes parâmetros de configuração: velocidade de transmissão de dados na rede CAN de 250kbits/s, tamanho de mensagens de dados de até 4 bytes, período de amostragem das mensagens de 100ms (0,1s). Para utilização do controlador PID discreto projetado para utilização nos NCS implementados, é necessário definir os ganhos do controlador necessários para atingir os requisitos de operação desejados. Para auxiliar nesta tarefa, foi utilizado o método de sintonia de controladores baseado na curva de resposta do sistema definido por Ziegler- 5 Proceedings of the 9th Brazilian Conference on Dynamics Control and their Applications Serra Negra, SP - ISSN 2178-3667 182 Implementação e Avaliação de Sistemas de Controle via Redes Baseadas no Protocolo CAN – Controller Area Network Eduardo P. Godoy, Bruno N. Bragato, Luciano C. Lulio, Arthur J. V. Porto, Ricardo Y. Inamasu Nichols (ZN). E após uma parametrização inicial, os valores dos ganhos foram manualmente definidos até a obtenção dos resultados requeridos. Os ganhos determinados para o controlador PI utilizado no NCS de controle de velocidade foram Kp=0,136 e Ti=1,33 com o método de ZN e Kp=0,06 e Ti=0,65 após refinamento manual. A Figura 9 apresenta a comparação dos resultados entre as respostas do NCS para os métodos de sintonia utilizados. A partir da análise do gráfico percebe-se que o método de sintonia ZN pode ser utilizado para projeto e definição de controladores PID para aplicação em NCS ou como base inicial para posterior refinamento manual, conforme realizado neste trabalho. rápida e o NCS de controle de nível um sistema com dinâmica lenta. Os gráficos das Figuras 10 a 12 apresentam os resultados para os experimentos realizados com os dois NCS implementados, no qual foi alterado o valor de período de amostragem (h) e também o valor do atraso de comunicação (d), avaliando a influência dessas alteração no desempenho do NCS. velocidade do Motor DC - w (rad/s) 50 Resposta ao Degrau - NCS Controle de Velocidade 60 Velocidade do Motor DC - w (rad/s) 50 40 40 30 Setpoint h=10ms h=50ms h=100ms h=200ms h=500ms 20 10 30 0 20 0 1 2 3 4 5 Time (s) 6 7 8 9 0 1 2 3 4 5 6 Tempo (s) 7 8 9 10 Figura 10. Desempenho do NCS de Controle de Velocidade para Diferentes Períodos de Amostragem de Mensagens Setpoint PID Sintonia Manual PID Sintonia Ziegler-Nichols 10 0 Resposta ao Degrau - NCS Controle de Velocidade 60 10 Resposta ao Degrau - NCS Controle de Velocidade 80 Figura 9. Comparação do Desempenho do NCS de Controle de Velocidade para Métodos de Sintonia do PID Velecidade do Motor DC - w (rad/s) 70 Para o NCS de controle de nível foi definido após aprimoramento com sintonia manual, um controlador PI com ganhos Kp=10 e Ti=0,55. Um dos maiores desafios no desenvolvimento de NCS com rede CAN se encontra no fato de que diversos parâmetros de configuração podem influenciar no desempenho e na estabilidade do NCS. Entre esses parâmetros podem ser citados a velocidade de transmissão de dados na rede CAN, a taxa de utilização da rede CAN, o esquema de prioridades definidos para as mensagens, os atrasos de comunicação, taxa de utilização do processador, o período de amostragem das mensagens na rede e a perda ou erro na transmissão de mensagens na rede [4]. De acordo com os resultados, obtidos através de simulações, apresentados num trabalho anterior dos autores [18], foi constatado que o período de amostragem das mensagens representa o parâmetro mais significativo que pode afetar o desempenho de um NCS via rede CAN. Neste trabalho [18], os autores afirmam também que a influência deste parâmetro e dos atrasos de comunicação está atrelada ao tipo de dinâmica (rápida ou lenta) do sistema, sendo os NCS com dinâmica rápida, fortemente afetado por esses parâmetros e os NCS com dinâmica lenta menos sensíveis a variação desses parâmetros. De forma a verificar essas constatações obtidas, foram realizadas neste trabalho diversos experimentos com os dois NCS implementados. É importante citar que o NCS de controle de velocidade representa um sistema com dinâmica 60 50 40 30 Setpoint h=100ms h=100ms h=250ms h=500ms h=500ms 20 10 0 0 1 2 3 4 5 6 Tempo (s) 7 e d=0ms e d=100ms e d=250ms e d=250ms e d=500ms 8 9 10 Figura 11. Desempenho do NCS de Controle de Velocidade para Diferentes Períodos de Amostragem de Mensagens e Atrasos de Comunicação A partir dos resultados das Figuras 10 e 11 pode-se confirmar a veracidade das constatações citadas. Na Figura 10, que apresenta o resultado do NCS de controle de velocidade (que representa um NCS de dinâmica rápida), a influência do período de amostragem no desempenho do NCS é grande. Observando o gráfico, pequenas variações no período de amostragem (relativamente ao valor inicial h=100ms) afetam fortemente o desempenho desse NCS, tendendo a torná-lo mais oscilatório. Juntamente com o período de amostragem, o aumento dos atrasos de comunicação, mostrado na Figura 11, tende a deteriorar o desempenho desse NCS, podendo levá-lo a instabilidade. O 6 Proceedings of the 9th Brazilian Conference on Dynamics Control and their Applications Serra Negra, SP - ISSN 2178-3667 183 desempenho de NCS com redes CAN. Permitiu também avaliar a resposta dos NCS de acordo com a operação sob diferentes períodos de amostragem e atrasos de comunicação, o que acabou comprovando uma constatação anterior dos autores de que a influência do período de amostragem depende da dinâmica do NCS. NCS com dinâmica mais rápida são mais afetados por variações no período de amostragem e atrasos de comunicação enquanto NCS com dinâmica lenta são menos afetados. Adicionalmente os resultados obtidos permitem validar a implementação dos módulos e dos NCS propostos e afirmar que a aplicação de NCS com redes CAN é viável. NCS de controle de velocidade foi simulado para valores de período de amostragem (h) de até 500ms. Resposta ao Degrau - NCS Controle de Nível 10 9 Nivel do Tanque - h (cm) 8 7 6 5 4 Setpoint h=100ms h=200ms h=500ms h=1000ms h=2000ms 3 2 1 0 0 10 20 30 40 50 Tempo (s) 60 70 AGRADECIMENTOS A FAPESP (Fundação de Amparo a Pesquisa do Estado de São Paulo) pelo apoio a este trabalho. 80 REFERÊNCIAS 90 [1] T. C. Yang, “Networked control system: a brief survey”, IEEE Proceedings of Control Theory and Applications, Vol. 153, No 4, pp. 403 – 412, July 2006. [2] J.R. Moyne, D.M. Tilbury, “The Emergence of Industrial Control Networks for Manufacturing Control, Diagnostics, and Safety Data”. IEEE Tech. of Networked Control Systems, vol. 95, pp. 29-47, 2007. [3] J. Baillieul, P.J. Antsaklis, “Control and Communication Challenges in Networked Real Time Systems”, IEEE Technology of Networked Control Systems, Vol. 95, No. 1, pp. 09-28, 2007 [4] F. L. Lian, J. R. Moyne, D. M. Tilbury, “Network Design Consideration for Distributed Control Systems”, IEEE Transactions on Control Systems Technology, Vol. 10(2), pp. 297-307, March 2002. [5] A. Seuret, F. Michaut, J.P. Richard, T. Divoux. “Networked control using GPS synchronization”. Proceedings of the IEEE American Control Conference, 25, 2006, Minneapolis, Minnesota, USA. Proceedings. June, 2006. [6] A. Al-Hammouri, M.S. Branicky, V. Liberatore, “Cosimulation Tools for Networked Control Systems”, Springer-Verlag, pp. 16-29, Berlin, 2008. [7] S. Zampieri. “Trends in Networked Control Systems”. Proceedings of the World Congress The International Federation of Automatic Control, 17, 2008, Seoul, Korea. Proceedings. July 6-11, p. 2886-2894, 2008. [8] Y. Jianyong, Y. Shimin, W. Haiqing. “Survey on the performance analysis of networked control systems”. Proceedings of the IEEE International Conference on Systems, Man and Cybernetics, 2004, Proceedings. 1013 October, v. 6, p. 5068- 5073, 2004. [9] M. Torngren, D. Henriksson, K. E. Arzen, A. Cervin, Z. Hanzalek, “Tool supporting the co-design of control systems and their real-time implementation: current status and future directions”, Proceedings of the 2006 IEEE International Symposium on Intelligent Control, pp. 1173-1180, Munich, Germany, 4-6 October 2006. Figura 12. Desempenho do NCS de Controle de Nível para Diferentes Períodos de Amostragem de Mensagens Por outro lado, a influência do período de amostragem em NCS com dinâmica lenta é menor. Isso pode ser verificado a partir do gráfico da Figura 12 que apresenta os resultados para o NCS de controle de nível. O efeito no desempenho do NCS é menor para grandes variações no período de amostragem. Atente para o fato de que o NCS de controle de nível foi simulado para valores de período de amostragem de até 2s (relativamente ao valor inicial h=100ms). Verificou-se também que o NCS com dinâmica lenta é menos sensível aos atrasos de comunicação na rede. Portanto, para NCS com dinâmica lenta, grandes variações no período de amostragem e nos atrasos de comunicação são necessárias para deteriorar o desempenho do NCS e torná-lo instável. 4. CONCLUSÃO Este trabalho apresentou a implementação e avaliação do desempenho de NCS baseados em redes CAN. De acordo com a implementação de hardware definida, o desenvolvimento de novos NCS se torna mais simples, fácil e de baixo custo. A utilização da teoria de máquinas de estado na implementação de software facilitou o desenvolvimento de código e forneceu uma configuração bastante flexível para os NCS implementados, possibilitando a expansão do controlador (adição de mais NCS) e a inserção de novos algoritmos de controle para serem testados em NCS. Controladores PID foram projetados para os NCS, de acordo com os requisitos reais de implementação dos NCS construídos como saturação de atuadores, velocidade da rede CAN e período de amostragem dos hardwares utilizados nas ECUs das malhas de controle. A análise dos resultados permitiu evidenciar que o período de amostragem das mensagens é um dos principais parâmetros que afetam o 7 Proceedings of the 9th Brazilian Conference on Dynamics Control and their Applications Serra Negra, SP - ISSN 2178-3667 184 Implementação e Avaliação de Sistemas de Controle via Redes Baseadas no Protocolo CAN – Controller Area Network Eduardo P. Godoy, Bruno N. Bragato, Luciano C. Lulio, Arthur J. V. Porto, Ricardo Y. Inamasu [10] Y. Tipsuwan, M. Y. Chow. “Control Methodologies in Networked Control Systems”. Control Engineering Practice, v. 11, n. 3, p. 1099-1111, 2003. [11] J.P Hespanha, P. Naghshtabrizi, Y. XU, “A Survey of Recent Results in Networked Control Systems”, IEEE Technology of Networked Control Systems, vol. 95, no. 1, pp. 138-162, 2007. [12] K.H Johansson, M. Torngren, L. Nielsen, “Vehicle applications of controller area network”, Handbook of Networked and Embedded Control Systems, Ed. Birkhäuser, 25p, 2005. [13] L. Eriksson, PID Controller Design and Tuning in Networked Control Systems, Doctorate Thesis, Dept. of Aut. and Systems Tech., Helsinki Univ. of Tech., Finland, 118p, 2008. [14] R.V. Sousa. CAN (Controller Area Network): uma abordagem para automação e controle na área agrícola. Dissertação (Mestrado em Engenharia Mecânica), Escola de Engenharia de São Carlos, Universidade de São Paulo, São Carlos, 2002. [15] E.P. Godoy, A.J.V. Porto, R.Y. Inamasu. “Ferramentas de Analise, Simulação e Projeto de Sistemas de Controle via Redes: Uma Revisão”, Anais do V Congresso nacional de Engenharia Mecânica CONEN, Bahia, 2008. [16] E.W. Endsley, E.E. Almeida, D.M Tilbury. “Modular finite state machines: Development and application to reconfigurable manufacturing cell controller generation”. Control Engineering Practice, 14, pp.1127–1142, 2006. [17] M. Pohjola, PID Controller Design in Networked Control Systems, Master Dissertation, Helsinki Univ. of Tech., 91p, 2006. [18] E.P. Godoy, A.J.V. Porto, R.Y Inamasu. “Applied Simulation to Evaluate the Quality of Control of Networked Control Systems”. Proceedings of the 2010 IEEE International Conference on Networking, Sensing, and Control, Chicago, 2010. 8 Proceedings of the 9th Brazilian Conference on Dynamics Control and their Applications Serra Negra, SP - ISSN 2178-3667 185