Servomecanismo N7SRV Prof. Dr. Cesar da Costa 6.a Aula: Controladores Eletronicos Constituicão Básica do Controlador Eletronico Constituicão Básica do Controlador Eletronico O controle de equipamentos para acionamentos industriais é comumente realizado por intermédio de um microprocessador embarcado no produto, o qual carrega um programa armazenado composto de algoritmos dedicados à aplicação em questão. Muitas vezes um único processador acumula, além das funções de controle, também as funções de diálogo com o operador e comunicações com outros dispositivos, através de redes industriais (também conhecidas como barramentos de campo). Constituicão Básica do Controlador Eletronico Para que seja possível integrar em software as sofisticadas técnicas de controle utilizadas atualmente no acionamento de máquinas elétricas, juntamente com outros módulos de programas que assegurem conectividade em rede e interface amigável com o operador, tudo isso a custo competitivo, é necessário escolher adequadamente o processador a ser utilizado. O tipo de microprocessador que melhor se presta a esta categoria de aplicações costuma ser aquele que integra na mesma pastilha de silício, além da unidade central de processamento (CPU), também circuitos de memória e uma diversidade de circuitos auxiliares (periféricos) dedicados a funções de entrada e saída (E/S) específicas, tais como conversão analógico-digital (A/D) e saídas digitais moduladas por largura de pulso (PWM). Constituicão Básica do Controlador Eletronico Com relação à arquitetura interna da CPU, os processadores atualmente disponíveis no mercado podem ser classificados em quatro grupos principais: • Os que possuem arquitetura de Von Neuman (CISC – Complex Instruction Set Computer); • Os de arquitetura de Harvard (CISC – Complex Instruction Set Computer); • Os de arquitetura RISC (Reduced Instruction Set Computer), arquitetura utilizada pelo servoconversor WEG SCA-05). Os de arquitetura FPGA (Field Programmable Gate Array), arquitetura utilizada pela National Instruments. Constituicão Básica do Controlador Eletronico Arquitetura de Von Neuman É processada uma única informação por vez, visto que nessa tecnologia, execução e dados percorrem o mesmo barramento, o que torna a arquitetura mais simples, porém torna o processo lento em relação à arquitetura Harvard. Arquitetura de Harvard Caminhos de dados e de instrução distintos, dessa forma, seus componentes internos também estão dispostos em lugares distintos, o que a torna mais rápida, porém mais complexa. Constituicão Básica do Controlador Eletronico Concluímos que a principal diferença entre as duas arquiteturas apresentadas é que a arquitetura de Harvard separa o armazenamento e o trafego das instruções da CPU e dos dados em duas unidades distintas de memória, enquanto a Von Neumann utiliza o mesmo espaço de memória para ambos. Nas CPUs atuais, é mais comum encontrar a arquitetura Von Neunmann, por ser uma arquitetura mais simples, mas devido a necessidade de se aumentar o desempenho, algumas características da arquitetura Harvard também são encontradas. Constituicão Básica do Controlador Eletronico Arquitetura de Von Neuman Constituicão Básica do Controlador Eletronico Arquitetura Havard: Constituicão Básica do Controlador Eletronico Arquitetura RISC RISC (Reduced Instruction Set Computer ou Computador com um Conjunto Reduzido de Instruções) é uma linha de arquitetura de processadores, que favorece um conjunto simples e pequeno de instruções, que levam aproximadamente a mesma quantidade de tempo para serem executadas. A maioria dos microprocessadores modernos são RISCs. O tipo de microprocessador mais largamente usado em desktops, o x86, é mais CISC do que RISC, embora chips mais novos traduzam instruções x86 baseadas em arquitetura CISC, em formas baseadas em arquitetura RISC mais simples, utilizando prioridade de execução. Constituicão Básica do Controlador Eletronico RISC – Reduced Instruction Set Computer Todas as arquiteturas apresentadas anteriormente são conhecidas como máquinas de estado sequencias, que funcionam segundo o fluxogram apresentado na Figura 4.2. A Figura 4.3 apresenta um diagrama de tempos envolvidos na execução de um ciclo de instrução. Nota-se que o ciclo de instrução é igual à soma do ciclo de busca com o ciclo de execução; o ciclo de máquina M corresponde ao tempo que o microprocessador leva para acessar um endereço de memória ou um dispositivo de entrada e saída, e o estado T é um período de tempo que está vinculado ao clock do sistema. Também é a unidade de tempo, que determina o tempo consumido na execução do ciclo de instrução. Como a operação de somar os dois números consome um total de 23 estados, temos um ciclo total de instrução de 5,75 μs. Cerca de 2,3 μs (40% do ciclo total) são gastos com ciclos de busca de instruções em memória. O ciclo de busca é um tempo de processamento perdido, presente em todos os ciclos de instruções dos controladores digitais microprocessados, que não pode ser eliminado, pois a arquitetura interna dos microprocessadores tradicionais não permite a sua reconfiguração por hardware ou software Constituicão Básica do Controlador Eletronico Arquitetura FPGA O FPGA é um dispositivo que suporta a implementação de circuitos lógicos relativamente grandes. Consiste em um grande arranjo de células lógicas ou blocos lógicos configuráveis contidos em um único circuito integrado. Cada célula contém capacidade computacional para implementar funções lógicas e realizar roteamento para comunicação entre elas. O primeiro FPGA disponível comercialmente foi desenvolvido pela em presa Xilinx Inc., em 1983. Constituicão Básica do Controlador Eletronico Arquitetura FPGA Os FPGAs são um grande arranjo de células configuráveis que podem ser utilizadas para a implementação de funções lógicas. A Figura ilustra a estrutura interna simplificada de um FPGA. Basicamente é constituída de blocos lógicos, blocos de entrada e saída, e chaves de interconexão. Constituicão Básica do Controlador Eletronico Arquitetura FPGA Basicamente é constituída de blocos lógicos, blocos de entrada e saída, e chaves de interconexão. Os blocos lógicos formam uma matriz bidimensional, e as chaves de interconexão são organizadas como canais de roteamento horizontal e vertical entre as linhas e colunas de blocos lógicos. Esses canais de roteamento possuem chaves de interligação programáveis que permitem conectar os blocos lógicos de maneira conveniente, em função das necessidades de cada projeto Constituicão Básica do Controlador Eletronico Arquitetura FPGA Nos sistemas embarcados, o processamento digital de sinais DSP é necessário para realizar operações aritméticas intensas, tais como multiplicação, adição e divisão. Essas operações, dependendo do tamanho e complexidade, podem ser executadas por dois tipos de hardwares: (i) processadores DSP tradicionais; (ii) dispositivos FPGA. A seleção de hardware mais adequado é determinada pela aplicação, custo, desempenho ou uma combinação delas. A grande necessidade em uma aplicação de processamento digital de sinais é a capacidade e a velocidade de processamento requerida. As aplicações mais comuns são: (i) filtragem; (ii) análise de frequência do sinal por Transformada Rápida de Fourier (FFT); (iii) operações aritméticas como multiplicar e dividir. Constituicão Básica do Controlador Eletronico Devido à simplicidade dos seus circuitos internos, os microcontroladores com CPU do tipo RISC tendem a operar com maior eficiência (menor consumo de energia) com freqüências de clock mais elevadas. Também por este motivo, é possível integrar quantidades muito maiores de memória junto com a CPU e os circuitos periféricos na pastilha de silício (chip) que constitui o microcontrolador. Com isso torna –se viável a incorporação de novas facilidades ao software de controle do produto, com menor impacto nos custos de produção Constituicão Básica do Controlador Eletronico Outra importante diferença encontrada entre famílias distintas de microcontroladores reside no comprimento de palavra nativo da CPU, que normalmente vai de 8 a 32 bits. De um modo geral, os microcontroladores com palavras maiores são mais eficientes na execução de algoritmos matemáticos, como por exemplo os que costumam ser empregados para o acionamento de máquinas elétricas. Isto pode acabar se refletindo na precisão e no desempenho dinâmico dos controles efetuados pelo microcontrolador. Constituicão Básica do Controlador Eletronico Em aplicações típicas de controle digital, a execução dos algoritmos de controle precisa ocorrer a intervalos de tempo regulares. No caso particular do controle de dispositivos eletromecânicos, é comum que estes intervalos de tempo sejam muito reduzidos, da ordem de 104 seg além de não serem toleráveis grandes variações nos mesmos. Estes aspectos caracterizam o software a ser utilizado neste caso como sendo programas de tempo real crítico. Em programas assim, a sincronização da execução dos algoritmos de controle é frequentemente obtida através de mecanismos de interrupções produzidas por circuitos temporizadores internos ao microcontrolador. Tipos de Processadores Podem-se dividir os processadores digitais em três tipos: a) Microcontroladores; b) Processadores DSP; c) Processadores FPGA. Microcontroladores Os microcontroladores são microprocessadores que podem ser programados para funções específicas. Em geral, eles são usados para controlar circuitos e, por isso, são comumente encontrados dentro de outros dispositivos, sendo conhecidos como "controladores embutidos". A estrutura interna de um microcontrolador apresenta um processador, bem como circuitos de memória e periféricos de entrada e saída. Com freqüências de clock de poucos MHz (Megahertz) ou talvez menos, os microcontroladores operam a uma freqüência muito baixa se comparados com os microprocessadores DSP ou os processadores FPGAatuais, no entanto são adequados para a maioria das aplicações usuais, como por exemplo, controlar uma máquina de lavar roupas ou uma esteira de chão de fábrica. Microcontroladores O seu consumo em geral é relativamente pequeno, normalmente na casa dos miliwatts e possuem geralmente habilidade para entrar em modo de espera (Sleep ou Wait) aguardando por uma interrupção ou evento externo, como por exemplo o acionamento de uma tecla, ou um sinal que chega via uma interface de dados. O consumo destes microcontroladores em modo de espera pode chegar na casa dos nanowatts, tornando-os ideais para aplicações onde a exigência de baixo consumo de energia é um fator decisivo para o sucesso do projeto. Microcontroladores Fabricantes de Microcontroladores: Microchip; Atmel; Freescale Microcontroladores Característica HC08 HCS08 pinagem 8/16 pinos 8/16/28 DIP Até 64 LQFP Tensão de operação 3 ou 5V 1,8 à 3,6V A/D 4 canais 8bits 8 canais 10 bits Interrupção de Tempo Real ----------- 1 módulo (relógio) Baixo consumo 2 Modos 5 Modos Frequência 8MHz (5V) 4MHz (3V) Até 40MHz Corrente de saída 15 a 25mA 2 a 10mA Microprocessadores DSP Os DSPs são microprocessadores com características próprias que podem ser programados e operam em tempo real, com velocidades muito superiores aos microcontroladores para aplicações genéricas. A capacidade de processar grandes quantidades de números em pouco tempo é um dos principais benefícios que os Processadores Digitais de Sinais oferecem ao mundo da eletrônica. DSP acima de tudo é um dispositivo programável, que detêm seu próprio código de instruções. Cada empresa que cria o seu processador cria também o seu ambiente de desenvolvimento (IDE) próprio para aquele tipo de chip, tornando dessa forma a manipulação do microprocessador muito mais fácil e rápida. Microprocessadores DSP A capacidade de processamento em tempo real dos DSP ́s torna este processador perfeito para aplicações onde o delay (tempo de resposta) não é tolerável, como por exemplo em um telefone celular. A capacidade que os DSPs têm de repetir (com uma instrução prévia, por exemplo "RPT") em extrema velocidade uma instrução complexa (como por exemplo a "MPYA": "Multiply and Accumulate Previous Product") que faz com que sejam rapidamente resolvidas, por exemplo, as Transformadas Rápidas de Fourier (FFT), permitindo a implementação de filtros digitais. Estes filtros são muito usados em telecomunicações, por exemplo para decodificar a sinalização (DTMF, MFC, etc). Microprocessadores DSP Principais aplicações: Filtragem digital Microprocessadores DSP Principais aplicações: Compressão e descompressão de sinais O uso dos DSPs associados a algoritmos de compressão permitiu a implementação de diversas tecnologias de CODEC’s. CoDec é o acrônimo de Codificador/Decodificador, dispositivo de hardware ou software que codifica/decodifica sinais. Exemplos de chips DSP são o DSP542 e DSP549 fabricados pela Texas Instruments e usados pela CISCO Systems em seus gateways VoIP [CISCO- CODEC1] Microprocessadores DSP Principais aplicações: A tecnologia DSP está presente atualmente em infinitos dispositivos como celulares, computadores multimídia, gravadores de vídeo, CD players, controladores de disco rígido, modems e televisores. Esta presente nas mais diversas áreas, como militar, médica, científica e automotiva. Microprocessadores DSP A figura ilustra o diagrama do ADSP-21160M da Analog Devices. Esse DSP possui as seguintes especificações técnica: Microprocessadores DSP Principais características técnicas: Microprocessadores DSP Principais características técnicas: Processadores FPGA No projeto de hardware do processador core, utiliza-se uma interface gráfica com o usuário (GUI), denominada SOPC Builder, que permite ao projetista customizar o processador para uma aplicação particular. Os parâmetros de configuração incluem tamanho do barramento, tipo de memória, espaço de endereçamento, registros de propósito geral e específico, UART, controla dores de Ethernet, etc. Uma vez, que os parâmetros de hardware do processador core é definido na interface gráfica SOPC Builder, o processador core NIOS II é criado na forma de um arquivo HDL. Processadores FPGA Configurável por software; O usuário cria o seu processador de acordo com as suas necessidades. Processadores FPGA Pode chegar a uma velocidade de 900 Mhz Processadores FPGA Desempenho Aproveitando-se do paralelismo do hardware, os FPGAs excedem o poder dos processadores digitais de sinais (digital signal processors – DSPs) quebrando o paradigma de execução sequencial e realizando mais por um ciclo de clock. A BDTI, uma notável empresa de realização de benchmarks, lançou benchmarks mostrando como os FPGAs podem oferecer muitas vezes o poder de processamento por dólar de uma solução DSP em algumas aplicações. Controlar entradas e saídas (E/S) no nível do hardware fornece tempos de resposta muito mais rápidos devido à funcionalidades especializadas para aproximar aos requisitos da aplicação. Processadores FPGA Recursos Obs: Ao analisar as especificações de um chip FPGA, note que elas são divididas em blocos lógicos configuráveis, células lógicas, lógica de função fixa como multiplicadores e recursos de memória como bloco de RAM integrada. Controladores Digitais Podem-se dividir os controladores digitais em dois tipos: a) Controladores digitais dedicados; b) Controladores lógicos programáveis, também conhecidos como CLPs. c) Controladores lógicos programáveis baseados em FPGA Controladores Digitais 1. Controladores digitais dedicados : Os controladores digitais dedicados são basicamente aplicações de microcontroladores tradicionais (família 8051, por exemplo), em tarefas de controle cujo propósito específico é executar um algoritmo de controle gravado em sua memória EPROM, e em geral comunicar-se com dispositivos externos para troca de informações e atuação neles. Controladores Digitais Como, por exemplo, medição e controle de temperatura, ligar /desligar motores, ler um teclado em sua entrada, controlar um motor DC, ler um encoder etc. Programa-se a EPROM com códigos de máquina, linguagem Assembler ou linguagem C. O projetista deve conhecer bem o conjunto de instruções do microcontrolador utilizado, seu hardware e a tarefa de controle a ser realizada. Exemplos de Controladores Digitais Dedicados Controlador Digital Multi-Loop Smar CD 600 • O CD600 é um poderoso controlador digital, microprocessado, de processos, capaz de controlar simultaneamente até 4 malhas de controle, com até 8 blocos PID e mais de 120 blocos de controle avançado. Controladores de Temperatura