Sumário Sistemas Robóticos ◊ Sensores ◊ Actuadores Sensores e Actuadores Carlos Carreto Curso de Engenharia Informática Ano lectivo 2003/2004 Escola Superior de Tecnologia e Gestão da Guarda Sensores O que é um sensor? É qualquer dispositivo que permite ao robô aperceber-se do seu estado de funcionamento e do meio ambiente que o rodeia. Tipos de sensores: Contacto Luz Posição Orientação Velocidade Aceleração Proximidade Presença Temperatura Som Força ... Sensores de contacto Interruptores Existem vários tipos de mini e micro interruptores que podem ser usados como sensores de contacto. Por outro lado é muito fácil construir este tipo de sensores de uma forma caseira, onde o limite é a nossa imaginação. São baratos, simples de usar e robustos. Só gastam energia quando o contacto é establecido Funcionam por contacto o que para algumas aplicações pode ser uma desvantagem. 1 Sensores de posição e orientação Sensores de posição e orientação Potenciómetro Encoders Podem ser lineares ou de revolução. Oferecem uma relação linear ou logarítmica entre a posição e a resistência. Por exemplo, ao rodar o potenciómetro 1/4 de volta, a resistência entre o terminal extremo mais próximo e o terminal do centro é 1/4 da resistência entre extremos. São relativamente baratos e simples de usar. Alguns são pouco exactos e têm pouca resolução Podem ser incrementais ou absolutos. Medem a rotação angular de um eixo. Podem ser usados para determinar a posição e/ou a velocidade de eixos. Usados também para indicar o número total de voltas de eixos (odómetros). Podem ter resoluções muito altas, não necessitam de contacto mecânico, permitem repetir resultados e são fácies de construir de forma caseira. São relativamente caros. www.sensorsmag.com/articles/ 1198/enc1198/main.shtml Sensores de posição e orientação Encoders Sensores de posição e orientação IR Beacon www.seattlerobotics.org/ encoder/200109/dpa.html Estes dispositivos quando usados aos pares permitem determinar a orientação de um deles em relação ao outro. Cada dispositivo tem 4 emissores e 4 receptores de IV estrategicamente posicionados de modo a definirem 4 direcções (N, S, E, W). Os dispositivos estão constantemente a alternar o seu funcionamento entre emissão e recepção do sinal de IV. Assim, quando um dispositivo muda a sua orientação em relação ao outro, o sensor que estava na direcção do outro dispositivo, deixa de receber o sinal de IV e o sensor que fica na direcção do outro dispositivo passa a receber o sinal. A orientação de um dispositivo em relação ao outro é assim determinada pelo sensor que estiver a receber o sinal em dado momento. http://www.pololu.com/products/pololu/0001/ 2 Sensores de posição e orientação Sensores de presença CMPS03 Magnetic Compass Piroelectricos Voltage - 5v only required Current - 20mA Typ. Resolution - 0.1 Degree Accuracy - 3- 4 degrees approx. after calibration Output 1 - Timing Pulse 1mS to 37mS in 0.1mS increments Output 2 - I2C Interface, 0-255 and 0-3599 SCL speed up to 1MHzSmall Size - 32mm x 35mm São sensíveis ao calor em forma de radiação infravermelha. São úteis para detectar o corpo humano. São baratos, simples de usar e robustos, mas normalmente é necessário haver movimento para detecção continua. bearing var word main: pulsin 8, 1, bearing ' Obter a leitura bearing = (bearing-500)/50 ' Converter para graus debug 2,1,1, "Compass Bearing ", dec3 bearing goto main http://www.robot-electronics.co.uk/shop/Compass_CMPS032004.htm Sensores de proximidade Sensores de proximidade Sensores de infravermelhos Sensores de infravermelhos São normalmente de dois tipos: transmissivos e reflectivos. Ambos são constituídos por um emissor e um detector de luz infravermelha. A diferença está no caminho que a luz segue. Nos transmissivos a luz emitida pelo emissor dirige-se directamente para o receptor, enquanto que nos reflectivos a luz é reflectida por um objecto antes de chegar ao receptor. Ambos podem ser usados para detectar a presença de objectos. Os do tipo reflectivo podem ser usados para medir distâncias. A medição pode ser feita de 3 maneiras distintas: tempo de voo, força do sinal recebido ou triangulação. A primeira é complicada de implementar em sensores de IV devido à velocidade da luz, a segunda depende da superfície dos objectos e a terceira é a mais comum e fácil de implementar. 3 Sensores de proximidade Modelação do sinal de infravermelhos Sensores de proximidade Sensores de IV Sharp GP2* Normalmente a luz IV emitida pelo emissor é modelada a uma determinada frequência e o receptor apenas responde à luz recebida nessa mesma frequência. O circuito ao lado pode ser construído com o emissor de IV D1 que emita luz com um comprimento de onde da 980nm, por exemplo. O receptor T1 deverá ter um filtro óptico que deixe passar luz apenas com esse mesmo comprimento de onda e terá também um filtro electrónico que permita apenas passar luz modelada a 38kHz. Por outras palavras, o receptor só responde a luz infravermelha que pisque 38.000 vezes por segundo. Este método evita interferências provocadas por fontes externas de IV como o sol (0Hz) ou as luzes das casas (120 Hz). Sensores de proximidade Sensores de proximidade Sensore Sharp GP2D02 Sensor de ultra-sons http://www.acroname.com/robotics/info/examples/GP2D02-4/GP2D02-4.html Medem a distância a que se encontra um objecto. Um circuito transmissor emite sinais acústicos com uma frequência típica de 50kHz (ultra-sons). Estes sinais ao chocarem com objectos provocam ecos que são captados por um circuito receptor. A distância a que se encontra o objecto é proporcional ao tempo que decorre entre a transmissão do sinal e a recepção do eco correspondente. Este tipo de sensor acústico é mais preciso do que o sensor de IV. Existem no mercado vários exemplares de diferentes marcas. 4 Sensores de proximidade Sensor de ultra-sons SRF04 Voltage - 5v only required Current - 30mA Typ. 50mA Max.Frequency - 40KHz Max Range - 3 m Min Range - 3 cm Sensitivity - Detect 3cm diameter broom handle at > 2 m Input Trigger - 10uS Min. TTL level pulse Echo Pulse - Positive TTL level signal, width proportional to range. Small Size - 43mm x 20mm x 17mm height Sub Main() Const EchoPin As Byte = 14 ' Define porta a usar Const TrigPin As Byte = 13 Dim Range As Integer Call PutPin(EchoPin, bxInputTristate) Call PutPin(TrigPin, bxOutputLow) do Call PulseOut(TrigPin, 10, 1) ' impulso de disparo de 10uS Range = PulseIn(EchoPin, 1) \ 54 ' 54 para Cm 137 para polgadas Debug.Print "Range is "; CStr(Range) Call Delay(0.1) ' esperar 100mS antes do próximo ping (minimo 10mS) loop End Sub Sensores de proximidade Sensores Capacitivos Estes sensores geram um campo electrostático que reage às alterações de capacitância provocadas pela presença de objectos. A grande desvantagem deste tipo de sensores é que a sensibilidade dos mesmos depende das propriedades dialécticas dos objectos. Sensores Indutivos Têm um princípio de funcionamento semelhante ao dos sensores capacitivos, mas usam um campo electromagnético em vez de electrostático. Têm como desvantagem estarem limitados à detenção de objectos metálicos. http://www.robot-electronics.co.uk/shop/Ultrasonic_Ranger_SRF041999.htm Outros tipos de sensores CMUCam http://www-2.cs.cmu.edu/~cmucam/ Uma câmara que a 17 frames por segundo é capaz de: -> Identificar a posição e tamanho de um objecto medir o histograma RGB ou YUV de uma região da imagem; automaticamente identificar e seguir o primeiro objecto visível -> Seguir automaticamente um objecto através de um servomotor ligado directamente -> Enviar a imagem capturada através da porta série Outros tipos de sensores Reconhecimento de fala Características típicas: -> Componentes externos mínimos -> Reconhecimento de dezenas de palavras ou frases -> 99% de precisão no reconhecimento -> Reconhecimento de frases com 2 a 3 segundos de duração -> Fácil de usar -> Fácil de configurar -> Enviar um bitmap com a forma do objecto detectado, através da porta série. http://www.sensoryinc.com/ 5 Circuitos úteis Multiplexer Quando o número de entradas do controlador não chegar podemos usar um multiplexer como o 74150 para conseguir mais entradas. O 74150 permite obter 16 entradas usando apenas 4 portas do controlador. Actuadores É qualquer dispositivo que permite ao robô actuar no meio em que se encontra (moverse, pegar em objectos, emitir som, comandar aparelhos, etc). Tipos de actuadores: Motores eléctricos Cilindros pneumáticos Altifalantes ... Motores de corrente continua Motores de corrente continua Os motores CC são ideais para a construção de robôs móveis uma vez que são pequenos, relativamente baratos, razoavelmente eficientes e fáceis de controlar. São dispositivos que convertem energia eléctrica em energia mecânica. A corrente eléctrica circula por bobinas montados num rotor. Isto faz com que as bobinas criem campos magnéticos que reagem aos campos magnéticos dos ímans permanentes que se encontram a rodear essas bobinas. Estes campos magnéticos atraem-se e repelem-se continuamente fazendo o rotor girar. Propriedades A eficiência de um motor é prejudicada pela fricção das peças moveis, pelo que parte da energia eléctrica é perdida em forma de calor. Os Motores CC dos brinquedos têm uma eficiência de 50% enquanto que Motores CC industriais podem ter uma eficiência de 90% Tenção Nominal -É a tensão de alimentação recomendada do motor. A maioria dos motores pode funcionan a tenções inferiores à recomendada, embora com menos potência. Também podem funcionar a uma tensão superior, mas tendo como consequência a diminuição do tempo de vida do motor. Corrente - Quando a tensão de alimentação for constante, o motor consome uma corrente que é proporcional ao trabalho que realiza. A corrente consumida será mínima quando o motor roda sem carga e será máxima quando a carga for tanta que faz com que o motor não rode. Força - É a força rotacional que o motor consegue fornecer a uma certa distancia do eixo. É uma consequência directa da reacção electromagnética que faz girar o rotor. Potência mecânica - É o produto da Força pela velocidade angular do rotor. Notar que se não houver carga, o motor tem uma velocidade angular máxima, mas a Força é zero pelo que a potência também é zero. O mesmo acontece se a carga for tão grande que faz o motor parar. Nesse caso a Força é máximo, mas a velocidade angular é zero e a potência é novamente zero. Entre estes dois extremos a potência de um motor é caracterizada por uma relação parabólica. 6 Motores de corrente continua Motores de corrente continua Potência mecânica Engrenagens Redutoras Uma roda dentada pequena, ao fazer rodar uma maior: T=F.r=m.g.r Pm = T . ω Aumenta a força de rotação Diminui a velocidade Potência eléctrica Redução de 3 para 1 A potência aplicada à roda dentada de 8 dentes provoca uma redução de velocidade de 1/3 e aumenta a força de rotação 3 vezes, na roda dentada de 24 dentes. V = R . I + L dI/dt + e Pe = I . V Redução de 9 para 1 Ao colocar duas reduções de 3:1 em série, obtém-se uma redução de 9:1. A redução total resulta da multiplicação de cada par de reduções. Este tipo de engrenagens é muito usado para transformar a elevada velocidade e pequena força de rotação dos Motores de CC em velocidade e forças de rotação úteis. Motores de corrente continua Motores de corrente continua Motor CC Código RS 323-4846 323-4852 Potencia nominal (W) 2 2 Tensión nominal (V) Correspondente engrenagem planetária 6 12 Tensión nominal máx. 12 21 Velocidad sin carga (rpm) a la tensión máx. 12.200 13.600 Par de parada (mNm) 4,78 5,23 Velocidad (rpm) a la tensión máx. 6.100 7.771 12.700 Exemplo do calculo da potencia de um par de motores Dados do problema • O peso do robô deve ser aproximadamente 1kg; • Deve ser capaz de subir rampas com 30º de inclinação a uma velocidade constante de 20m/s; • Deve ter dois motores iguais para uma plataforma de direcção diferencial; • O coeficiente de fricção das rodas com o solo é µ = 0.3. Velocidad máx. permisible (rpm) a la tensión máx. 12.700 Corriente sin carga (mA) 9,5 6,5 Corriente máx. continua (mA) 244 154 Par máx. continuo (mNm) 9,19 14,40 Fapp = µ.FN + Ff = µ.m.g.cosθ + m.g.senθ long. del cuerpo 25,4 25,4 long. del eje 6,1 6,1 A potência mecânica é: Ø del cuerpo 16 16 Ø del eje 1,5 1,5 terminales 2,8×0,4 2,8×0,4 Dimensiones (mm) tipo código RS 1-4 5-9 10+ 6V nom. 323-4846 precio unitario 39,22 € 37,62 € 35,99 € 12V nom. 323-4852 44,34 € 42,53 € 40,69 € Considerando a velocidade constante: Pm = Fapp.v = m.g.v.(µ.cosθ + senθ) Substituindo as variáveis pelos dados do problema: Pm = 1.5W Potência de cada motor = 0.75W 7 Motores de corrente continua Engrenagens Actuadores Tipos de engrenagem Os Motores CC são dispositivos com velocidade elevada e força de rotação pequena, no entanto os mecanismos dos robôs requerem velocidades pequenas e forças de rotação elevadas. As engrenagens são usadas para trocar velocidades elevadas por mais força de rotação. A força de rotação gerada no centro de uma engrenagem é dada por T=Fxr Onde F é a força aplicada perpendicularmente e r é o raio da engrenagem. Actuadores Tipos de engrenagem www.tamiya.com Motores de corrente continua Controlo Electrónico – Ponte-H Quando DIR-L=0, DIR-R=1 e ENABLE=1: Q1 e Q4 estão ligado e a corrente circula pelo motor da esquerda para a direita. Quando DIR-L=1, DIR-R=0 e ENABLE=1: Q2 e Q3 estão ligado e a corrente circula pelo motor da direita para a esquerda. Quando DIR-L=1 e DIR-R=1: Q2 e Q4 estão ligados e o motor trava. 8 Sensores de proximidade Dual H-Bridge Motor Driver http://www.lynxmotion.com/dhb.htm Driver type = L298 IC Chip rated voltage = 46 vdc max Chip rated current = 2 amps max DHB Motor voltage = 20 vdc max DHB Motor current = 1 amp max I/O required = Four TTL level lines (outputs) Supply capacitance = 330uF 20v Logic voltage = 5vdc regulated Onboard regulator = None Current requirements (5v) = 36mA Servomotores Motores de corrente continua Controlo Electrónico – PWM A técnica PWM (Pulse With Modulation) consiste em ligar e desligar rapidamente o circuito que alimenta o motor. Por exemplo, actuando no sinal ENABLE da Ponte-H. O Duty Cycle representa a percentagem de tempo que o circuito que alimenta o motor fica ligado. Quanto maior for o Duty Cycle maior é a velocidade do motor. Servomotores Os servomotores são Motores CC que giram apenas até uma determinada posição. Controlo Electrónico - PWM São formador por: O sinal de controle enviado ao servo indica a posição desejada. Motor CC Engrenagem Redutora Sensor de Posição Circuito Electrónico de controle Este sinal é comparado com um sinal de feedback que indica a posição actual medida pelo sensor de posição. São muito usados em aplicações de Radiomodelismo para controlar a orientação de rodas, lemes, etc. É gerado um sinal de erro que é usado para ajustar a posição do motor. A ligação eléctrica consiste normalmente em três fios: Tensão, Massa e Linha de Controle. A tensão de alimentação ronda os 6V. 9 Servomotores Servomotores Controlo Electrónico - PWM Transformação para rotação continua O sinal de controle usa PWM para representar a posição desejada. Um servomotor roda o seu eixo no sentido horário e antihorário de uma ângulo tipicamente igual a 180º. No entanto, enquanto que no controle de velocidade o sinal PWM representava a percentagem de tempo do Duty Cycle, no caso dos servomotores o sinal PWM é uma representação da posição desejada. Um servomotor pode ser facilmente modificado para que rode continuamente como um Motor CC normal. Nesse caso o sinal de controle especifica a velocidade e direcção de rotação, em vez da posição angular desejada. Diferentes comprimentos de onda representam diferentes posições. A modificação do servo é feita substituindo o potenciómetro que serve de sensor de posição por um par de resistências fixas, que simulam a posição central do potenciómetro. Quando o sinal de controle se desviar do centro o circuito electrónico do servomotor tentará em vão, controlar o motor para o fazer voltar à posição central. Como resultado, o servomotor roda continuamente com uma direcção e uma velocidade controlada pelo sinal. • 920 µs – posição limite no sentido anti-horário • 1520 µs – posição central • 2120 µs – posição limite no sentido horário É também necessário remover um pequeno pino existente numa das rodas dentadas, que serve de limitador mecânico à rotação continua do servomotor. De modo a que o servomotor tente continuamente atingir a posição indicada pelo sinal de controle, o sinal de controle é repetido a intervalos regulares, tipicamente entre 14 e 20 ms. Servomotores Plataformas móveis Transformação do MX-400 para rotação continua Desapertar os 4 parafusos na base do servomotor e retirar a tampa. Tomar nota da posição de cada roda dentada. Eliminar o pequeno pino da roda dentada maior para que esta possa rodar livremente. Usar um alicate de corte ou um chizato. Retirar a peça de plástico do potenciómetro. Sem esta peça, o potenciómetro não será arrastado pela roda dentada mais grande. Ligar o servomotor a um controlador de modo a que este envie o sinal correspondente à posição de repouso do servomotor. Rodar manualmente o potenciómetro até que o motor pare. Controlo da direcção Montar as rodas dentadas tendo cuidado em não mover o potenciómetro. Colocar a tampa e apertar os parafusos. 10 Plataformas móveis Controlo da direcção Plataformas móveis Geometria da plataforma 11