1 / 48

AULA 06: Sinais Analógicos

AULA 06: Sinais Analógicos. Sistemas Embarcados. Conversão Digital/Analógico. Sinais analógicos com ATmega328P. O ATmega328P não possui circuito interno para conversão de sinais digitais em analógicos.

ian-willis
Download Presentation

AULA 06: Sinais Analógicos

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. AULA 06: Sinais Analógicos Sistemas Embarcados

  2. Conversão Digital/Analógico professor

  3. Sinais analógicos com ATmega328P • O ATmega328P não possui circuito interno para conversão de sinais digitais em analógicos. • Para gerar um sinal analógico a partir de um valor calculado no microcontrolador, é necessário o uso de um circuito externo. • Alguns exemplos de circuitos de conversores D/A são apresentados a seguir. Para realizar a conversão, os pinos do ATmega devem ser configurados como saídas e conectados às entradas dos conversores. professor

  4. Conversor D/A de Resistências Ponderadas professor

  5. Conversor D/A de Resistências Ponderadas • Consiste basicamente em um amplificador somador; • As tensões somadas são 0 ou Vcc, para os níveis lógicos baixo e alto; • Cada tensão é somada de forma ponderada (peso), e tal ponderação é dada pela relação entre os resistores R0 e Ri, onde i é representa a entrada; • Um conversor de grande número de bits exige resistores com uma faixa de valores muito grande: • Conversor de 10 bits terá na entrada LSB um resistor de resistência 512 vezes maior que a do resistor da entrada MSB: difícil de ser implementado com precisão. professor

  6. Conversor D/A BCD para 2 ou mais Algarismos professor

  7. Conversor D/A de Rede R-2R professor

  8. Conversor D/A de Rede R-2R Considerando A1A2A3A4 = 1000, teremos:  professor

  9. Conversor D/A de Rede R-2R Calculando o resistor equivalente antes a entrada A1 teremos: Analogamente, podemos calcular a tensão de saída para outras entradas: professor

  10. Rede R-2R professor

  11. Conversor D/A de Rede R-2R • Não apresenta o problema da necessidade de ampla faixa de valores para os resistores: a diferença é de apenas o dobro do valor; • Pode ter saída ligada a um seguidor de tensão para evitar erros de conversão: professor

  12. Conversor D/A de Rede R-2R Invertida professor

  13. Conversor D/A de Rede R-2R Invertida • A corrente em cada resistor 2R é metade daquela no resistor anterior; • Corrente que circula no resistor de realimentação depende da ligação das chaves, que são controladas pelos bits de entrada (entrada digital); • A corrente total que circula na rede R-2R é constante, independente da posição das chaves! Isso faz com que a dissipação seja constante, o que provoca estabilização de temperatura: grande estabilidade e precisão. professor

  14. Sinais analógicos com ATmega328P • A linguagem do Arduino possui uma função chamada: analogWrite(pino, valor); • Esta função faz surgir no pino especificado um valor de tensão proporcional ao valor passado como parâmetro (entre 0 e 5V). • Se o ATmega328P não possui conversor D/A interno, que tipo de sinal é gerado por essa função? professor

  15. PWM – Pulse Width Modulation professor

  16. PWM PWM = Pulse Width Modulation; Razão cíclica (duty cycle): define a tensão média aplicada: A1 A2 A3 T(PWM) T(PWM) T(PWM)

  17. Tensão média de um sinal PWM

  18. Sinal PWM versus sinal analógico

  19. Controle de potência por PWM • analogWrite(pin,duty); • cria no pino pin um sinal PWM com razão cíclica igual a duty; • f = 490Hz; • apenas alguns pinos digitais possuem saída PWM.

  20. Sinais Analógicos com PWM • É possível gerar um sinal analógico a partir de um sinal PWM através da aplicação de um filtro passa-baixas.

  21. Sinais Analógicos com PWM • No circuito abaixo, o BJT opera como “seguidor de tensão”. Dessa forma, a tensão analógica na carga é controlada pela razão cíclica do sinal PWM. • Note que, nesse caso, mesmo que a carga seja puramente resistiva, sua corrente não será pulsada, mas suave e proporcional à razão cíclica.

  22. Prática: Controle de brilho PWM int brightness = 0; // how bright the LED is int fadeAmount = 5; // how many points to fade void setup() { pinMode(11, OUTPUT); } void loop() { analogWrite(11, brightness); brightness = brightness + fadeAmount; if (brightness == 0 || brightness == 255) { fadeAmount = -fadeAmount ; } delay(30); }

  23. Motor de Corrente Contínua (CC) • Alimentado em corrente contínua; • Possui ímã e bobinas internamente; • Velocidade é ajustada pela tensão de alimentação (pode ser por PWM!); • Sentido de giro é alterado pela polaridade.

  24. Motor de Passo • Alimentado com sinais digitais; • Alimentação das bobinas deve ser sequencial; • Permite controle preciso de posição; • Torque cai muito com o aumento da velocidade.

  25. Servomotor • É um motor CC que possui um sistema de interno de controle: • angular – controla a posição (giro) do eixo; • contínuo – controla a velocidade do eixo; • Normalmente é feito com um motor de corrente contínua, um circuito eletrônico e engrenagens para aumentar o torque; • Três fios: 2 de alimentação e um de controle; • O sinal de referência (de posição ou velocidade) é do tipo PWM.

  26. Servomotor

  27. Servomotor

  28. Servomotor

  29. Servomotores com Arduino

  30. Servomotores com Arduino

  31. Servomotores com Arduino #include <Servo.h> Servo myservo; // create servo object Servo myservo2; int potpin = 0; // used to connect the potentiometer int val; // value from the analog pin void setup() { myservo.attach(9); // attaches the servo on pin myservo2.attach(10); } void loop() { val = analogRead(potpin); // entre 0 e 1023 val = map(val, 0, 1023, 0, 179); // escalona myservo.write(val); myservo2.write(179-val); delay(15); } Felipe Nascimento Martins

  32. Outros motores com Arduino • Cada pino do Arduino pode fornecer, no máximo, 40mA de corrente -> pode não ser suficiente para acionar um motor! • Solução: usar transistores ou circuitos integrados que implementem uma Ponte H.

  33. Ponte H professor

  34. Ponte H – exemplo de circuito professor

  35. Ponte HL298 professor

  36. Shield para Motores • Pode acionar dois motores CC ou um motor de passo: até 36V, 600mA, 5kHz.

  37. Shield 4 Power • Pode acionar quatro motores CC (46V, 4A) e uma carga resistiva de até 30A.

  38. PWM Senoidal • Para acionar motores de indução é necessário fazer variar a tensão periodicamente. • Modulação PWM a dois níveis: professor

  39. PWM Senoidal • Modulação por largura de pulso (PWM): variação mais suave de tensão e corrente mais senoidal. • Modulação PWM a dois níveis: professor

  40. Inversores trifásicos professor

  41. Inversores trifásicos Sinais PWM professor

  42. Inversores trifásicos: sinais PWM professor

  43. Inversores trifásicos: sinais PWM professor

  44. Dois transistores de um mesmo braço não podem ser acionados ao mesmo tempo: curto-circuito! Chaveamento de um braço professor

  45. Chaveamento de um braço Sinais para chaves de um mesmo braço. Mesmos sinais em outra escala: note o tempo morto. professor

  46. Inversor PWM – Aspecto da corrente vab ia Corrente num inversor PWM conectado a um gerador de indução. A tensão é gerada por uma máquina externa. professor

  47. Inversor integrado IR: 16A, 600V. professor

  48. Referências • ARDUINO. Language Reference. Disponível em: <http://arduino.cc/en/Reference/HomePage>. Acesso em 20/set/2012. • ARDUINO. Hardware Index. Disponível em: <http://arduino.cc/en/Main/Boards>. Acesso em 20/set/2012. • ATMEL. ATmega48A/PA/88A/PA/168A/PA/328/P datasheet. Rev. 8271D–AVR–05/11. 2011. • ATMEL. Atmel AVR042: AVR Hardware Design • Considerations. Rev. 2521K-AVR-03/11. 2011. • LIMA, Charles B. de; VILLAÇA, Marco V. M. AVR e Arduino – Técnicas de Projeto. 2ª ed. 2012. • MARTINS, Felipe N. Introdução à Eletrônica com Arduino. Disponível em: <http://www.slideshare.net/felipenm/oficina-de-introduo-a-eletrnica-com-arduino>. Acesso em 20/set/2012. • BOYLESTAD, Robert L. Dispositivos eletrônicos e teoria de circuitos. 8ª ed. Prentice Hall. São Paulo, 2004. • BALBINOT, Alexandre e BRUSAMARELLO, Valner J. Instrumentação e Fundamentos de Medidas. Vol. 1. LTC, 2006. • MELIM, Roberto Salles. Plataforma de Baixo Custo para Desenvolvimento de Sistemas de Automação e Controle. Projeto de Iniciação Científica, UCL, 2006. • MICROCHIP Technology Inc., PIC16F627A/628A/648A Data Sheet. DS40044F, 2007. professor

More Related