Home
Milton Ruas da Silva Sistemas de Comunicação e - LAR
Contents
1. 10 20 xo A 0 ap Previsto 20 20 Medido 30 40 0 2 4 6 8 0 2 4 6 8 t t Erro do CoP Erro do CoP 5 40 30 5 20 10 gt 10 15 20 T 25 10 0 2 4 6 8 0 2 4 6 8 t t Coordenadas Cartesianas cm Coordenadas Cartesianas cm 10 T T T T T Joelho Anca 5 x gt x gt 0 5 0 2 4 6 8 Fig 4 43 Resposta ao polin mio aplicado de dura o 4s K 50 Como conclus o pode se afirmar que a melhor estrat gia para optimizar a resposta do sistema usar ganhos de compensa o no controlador de equil brio pr ximos do limite sem provocar instabilidade e aplicar velocidades reduzidas Como se pretende numa fase inicial que o robot se desloque a baixa velocidade tais exig ncias n o dever o constituir um problema para a implementa o do controlador 4 6 4 EXECU O DE TRAJECT RIAS RECTIL NEAS Como complemento ao estudo din mico da resposta do sistema a um polin mio de quinta ordem foram executadas experi ncias similares mas com a repeti o da mesma traject ria v rias vezes para an lise do comportamento do sinal do erro ao longo do tempo Cada experi ncia seguiu o seguinte procedimento Inicializa o do CoP e para a execu o de uma traject ria polinomial de 5 ordem Activa o do controlador de equil brio Defini o do per odo da traject ria e do ganho do controlador de equil brio Execu o da traject ria para um determinado CoP final Esperar que o
2. 4 4 I l l A for a medida apresentada na express o anterior corresponde diferen a entre o resultado da ADC em cada momento e o seu valor original no momento da calibra o em equil brio ver sec o 4 3 3 o que resulta no valor nulo nesta posi o Considerando apenas o resultado estimado da for a calculado na sec o 4 3 3 T ou seja entrando em linha de conta com um offset e usando o ponto 127 como valor neutro a equa o anterior pode ser aproximada da seguinte forma aproximada se o offset considerado for semelhante for a inicial y F x Ft x y CoP CoP X 4 Ic y E i calc F F De aa l i 0 Conv m referir tamb m que o formato n o sim trico dos p s rectangular faz com que a medi o do CoP na componente xx tenha uma maior sensibilidade que na componente ortogonal yy Para compensar esta assimetria adicionou se um segundo offset subtractivo for a medida relativo a cada componente ortogonal Este segundo offset est expresso nas equa es seguintes possuindo um valor superior para a componente yy SEE offset x CoP _ Leal copie ev CS E offset CoP 2a Rw E offset Por observa o experimental convencionou se offset 0 e offsety 50 dado que a for a normalizada 127 os offsets devem ser inferiores a 128 de modo a evitar resultados negativos 82 4 5 CONTROLO DE EQUIL BRIO Nesta sec o procurar se construir
3. Closed loop response Controller output Requested trajectory Open loop response Closed loop response Controller output 0 1 ry 3 4 5 time s time s Fig 3 38 K 0 02 m 924g Fig 3 39 K 0 07 m 924g 55 Position degrees Position degrees Requested trajectory Open loop response Closed loop response Controller output Requested trajectory Open loop response Closed loop response Controller output 0 1 2 3 4 5 0 1 2 3 4 5 time s time s Fig 3 40 K 0 15 m 924g Fig 3 41 K 0 30 m 924g 3 4 3 CONTROLO PROPORCIONAL INTEGRAL PI Vamos agora adicionar a componente proporcional mantendo a integral pois fundamental para a elimina o do erro em regime estacion rio Para melhor percebermos as vantagens da componente proporcional primeiramente definamos um K de modo a provocar um ligeiro overshoot na resposta do servo A Fig 3 42 e Fig 3 43 apresentam um exemplo para uma carga de 924g para K 0 10 e Kp 0 04 60 Ki 0 06 Kp 0 04 40 Ki 0 10 Kp 0 04 _ 20 3 D T gt Q D cl _ ey 20 2 40 o 2 W gt eot Ramp requested 80 f Ki 0 06 Kp 0 04 Ki 0 10 Kp 0 04 1 00 LS 0 1 2 3 time s time s Fig 3 42 Fen meno do overshoot para valores de K Fig 3 43 Erro da resposta da Fig 3 42
4. c csscccccseeeeeaesseeeceeseeceseuseeeeaaseeessaaeeessuauseesseaeeessaeeees 20 2 12 Arbitragem de mensagens segundo o sistema de colis es CSMASBA cccccsseeeeeeeeeeeeeeeeeeeeeees 21 Zehr COOINCAG EO NZ sissies da dai rated e a DR eouauula Gulia tatce 25 2 14 Particionamento temporal de um BILL tiles luatadeuniuseidewiihuadditive veces U 25 2 15 Registos associados m scara e filtragem ccccccsseeecceeeeeeeeeeeceaeeeeeeeeeaeseceeeseeaeseeeeesaeaeeeessaaases 26 2 16 Algoritmos de transmiss o recep o de mensagens CAN no Master ccsseeeeeeeeeeeeeeeeeeeaeees 29 2 17 Algoritmo de troca de informa o pelo CAN no Slave ss eeereereeeeeerrereeaananoo 30 317 Arquiteciura da plataforma human ide sussa daloserosb0Bia dava tal Ma dora e aa alo eed Sess eee sonda 33 2 Constitui o de uma unidade SAVE aesir enn alee GR GA nee Sa iG Dana SO STE 34 3 3 Imagens de uma unidade de controlo IOCAI cccccssececeeeeeeeeceesececeuseeesaeeeeecseaeeesseaaeeesseneeeesaeeees 35 SA Servomotor da RITEC sa cosines Gai Mesias daeat a aa Gab heathen oGetsaawaumanenChe AN 35 3 5 Representa o do interior de UM ServomOotor ccccseeececeeeeeceeeeeeeeecueeeeesaueeessaaeeeesseaeeeeaeseeeeeaaeeees 35 3 6 Sinal de PWM aplicado no servomotor ccccsseeccceseeeeeeceseeeeseseceseueeeeesauececsaaeessuaaeeessaeeeesaaeeees 36 3 7 Correia de transmiss o aplicada a UM servo eee
5. cccccceecceceeeceeceeeeceeceesceeeaeseeeeeaseeetsaseeetsaaeeeeeas 84 4 5 4 Resultados Experimentais Varia o do Plano de Suporte cccccceeececeeceeeeeeeeeeeeeeeees 92 4 5 5 Resultados Experimentais Resposta a Perturba es Externas i 97 4 5 6 Resultados Experimentais Resposta do P Livre errar 99 4 6 LOCOMO O ATRAV S DO CONTROLO DO COP 101 4 6 1 Controlo do CoP DE Refer ncia saia ds E eee aan ane aie eee 101 4 6 2 An lise Est tica do CoP de ReferOncia cccccccccccssscceceeseeeeeessceeeeeseeeeeeeeeteeseeeeseaeeeeees 102 4 6 3 An lise Din mica do CoP Refer ncia ss ereesereeerereraserenanrerenerreaaarenado 106 4 6 4 Execu o de Traject rias Rectil neas eee eeerere errar eraa 110 AGS Execu o de lrajecioras ElDICAS tiie ated dna aara aaea ar aA a aE i 114 4 6 6 Execu o de Traject rias Rectangulares cccccccccccssseeeeeeeesseeeeecaeeseeeeeeeasseeeeessaaseeess 115 AT DISCUSS O DOS RESULTADOS azatsisso o Eras nana ga aeten nica za ais Sans a 118 5 CONCLUS ES assa sda Rea a nin a a 121 REFERENCIAS Suba staaniasias ia ceioas pai Sado da atadas Isca SE 121 LISTA DE FIGURAS Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig
6. Tabela 21 Equa es de controlo para o compensador com o Jacobiano considerando o CoP desejado nulo 4 5 4 RESULTADOS EXPERIMENTAIS VARIA O DO PLANO DE SUPORTE Esta experi ncia p e em pr tica a ideia sugerida sobre a tarefa da perna de suporte na realiza o da locomo o ou seja na presen a de irregularidades do solo tanto pela varia o do seu declive ou pela presen a de corpos estranhos no solo a perna deve mover se de modo a garantir o equil brio da estrutura Aplicaram se varia es na inclina o do plano de suporte a uma perna cujo controlador dever procurar a posi o de equil brio ou seja a posi o vertical A Fig 4 21 apresenta a experi ncia realizada segundo o sistema de eixos apresentado na Fig 4 20 efectuaram se varia es na inclina o do plano primeiramente segundo o eixo dos yy e depois segundo o eixo xx b no ali AL T Fig 4 21 da inclina o do plano de suporte segundo o eixo yy esquerda e o eixo xx direita 92 Os resultados est o expressos nos gr ficos seguintes onde se visualiza a posi o do centro de press o segundo os eixos xx e yy da Fig 4 20 As refer ncias a cada servo dizem respeito aos descritos a seguir e Servo Q junta lateral do p usada para compensar o CoP segundo o eixo xx 01 e Servo 1 junta dianteira do p usada para compensar o CoP segundo o eixo yy 95 e Servo 2 junta do joelho usado para compensa o adicional do CoP segund
7. Fazendo K k Ts Kp kp e Kp kilTs com Ts 20 ms per odo de PWM temos ent o T 1 7 U z E 2_ k k no E z com Ts correspondente ao per odo de amostragem 52 ule K k K 2 2 Colocando a equa o na forma incremental U z l 27 K E z Kp E z l z7 K Elz 2 E finalmente na forma num rica u n u n 1 Au K e n K e n e n 1 K le n 2 e n 1 e n 2 Au K K K e n K 2 K e n 1 2 K e n 2 em que Au corresponde a uma varia o relativamente amostra anterior Dado que o termo de segunda ordem muito suscept vel instabiliza o da resposta conveniente fazer com que este termo n o dependa das varia es do sinal de refer ncia r t que cont m a posi o desejada conferindo lei de controlo maior robustez contra oscila es Substituindo no termo derivativo o sinal de erro pela diferen a entre a refer ncia r t e a posi o efectiva y t e considerando r t constante ao longo do tempo ent o temos a seguinte express o Au K e n Kp eln eln 1 Ky y n 2 y n 1 y n 2 Esta a lei de controlo implementada em cada microcontrolador cujos par metros Kr Kp e Kp s o passados pelo PC atrav s da rede de comunica es RS 232 e CAN Prev se que a componente integral resolva o problema do erro em regime estacion rio e as restantes componentes lidem com a velocidade do sistema mas note que n
8. Rc 00 2 3 MAM oCoM MR 3 30 M M CoM M Rs M L Rc s M L Lc Ryc s Ja 96 M M M M 7 CoM _ M R s c M L s Rs Je OA M M M M dCoM _ M R s 3C J 53 A A eng ED 060 M M M M 87 De modo a simplificar estas express es consideremos que M9 M 0 e que L 0 _ CoM _ M R c ML Revs rato Nal BS o 06 M M 7 9CoM __ MRs ML R595 06 M M oCoM M R355 Ji J Se eee 0 M M ae dCoM E Dip 98 COM ms 9CoM __ M R c M L c Rcz 00 08 M M Jas dCoM _ MsRsco gt 006 M M ae dCoM __ M R c M L c Ryo 06 M M _0CoM __M R s M L s R385 08 M M i o CoM MR Ja E ee ee el 00 M M Fazendo 5 Ms R Sa ss _ M R 5 M L 8 R 8 5 gt M M M M C Ms Rcz CC MR M L c R ca o MAM M M Entao as diversas derivadas parciais podem ser descritas de uma forma mais simples Ji CC So SS 3 8 Ji S53 S 0 CC es 32 5So3 5 CC 3 SS S53 Sy Cos Da PC 88 Concluindo as varia es angulares a aplicar s o determinadas da seguinte forma AO Ki Ky ka Ji Ja Ji E CoPx 0 ki ko kz IE 12 J 22 J 32 X copy kia k kz J 13 J 23 J 33 CoPz AO ka Ju cop tka do EcCopy kzi Ja eco AO kg Jo ecops t kn ly Ecopy kaz Ja Cop AO kia Jis copy T
9. Saida dos sensores E mimos metes ne tea a fi a E E la lc e licd Glial 0 500 1000 1500 2000 2500 3000 3500 4000 Massa g Fig 4 16 Valores dos sensores com massas colocadas no centro da base experi ncia 2 Analisando as dados obtidos colocando varios pesos no centro do p e medindo os quatro sensores experi ncia 2 podemos observar o mesmo efeito evidenciado atr s para cargas superior a 2 kg Fig 4 16 Outro resultado interessante a assimetria das respostas quando os sensores funcionam em conjunto os sensores azul e castanho apresentam valores superiores em rela o aos restantes e para cargas superiores a 2 kg a diferen a ainda maior Como j se comprovou que os sensores est o a funcionar correctamente pela experi ncia 1 tal nos leva a concluir que a plataforma superior do p n o completamente homog nea com distribui es de for a diferentes ao longo da estrutura 4 3 3 AMOSTRAGEM DOS SENSORES O procedimento de leitura utilizado na sec o anterior n o efectuava qualquer p s processamento via firmware lendo apenas o resultado da ADC e passando o directamente unidade Master pelo barramento CAN No entanto tal n o favor vel pois verificou se experimentalmente que a sa da dos extens metros varia ao longo do tempo transmitindo se essa varia o para o circuito de acondicionamento de sinal Ora embora se possa ajustar o potenci metro de calibra o presente na ponte de Whe
10. Closed Loop Response Position degrees Error degrees 7 Open Loop Response gt o 1 2 3 4 time s time s Fig 3 36 Resposta rampa com uma carga de 1129g Fig 3 37 Erro da resposta da Fig 3 36 K 0 20 De modo a estudar os efeitos do par metro Ky na resposta do servo realizou se uma experi ncia na qual para uma massa elevada de 924g efectuando um percurso fixo 45 a 45 experimentaram se v rios valores de K As respostas podem ser visualizadas da Fig 3 38 a Fig 3 41 Por observa o constata se que para baixos valores a resposta tende a atrasar se demasiado mas medida que vai aumentando o tempo de atraso diminui com melhorias significativas relativamente resposta em malha aberta O caso da Fig 3 41 evidencia a resposta t pica para valores excessivos do Ky durante a fase transit ria tanto a posi o medida como o sinal de controlo apresenta se bastante oscilat rio provocando o fen meno de overshoot No entanto seria desej vel conter este overshoot de modo a melhorar ainda mais o atraso de cerca de 150ms medido pouco antes de se verificar as oscila es Quanto ao erro em regime estacion rio em todos os casos apresentados ele eliminado o que sugere que suficiente a presen a do integrador independentemente do par metro K exceptuando se obviamente o valor nulo Position degrees Position degrees Requested trajectory Open loop response
11. FinServo3 FinServo2 FinServol Byte Slave Status da primeira mensagem 2 3 2 FUNCIONAMENTO DO BARRAMENTO CAN Configura o CAN Inicializa es As defini es de funcionamento do CAN devem ser iguais entre a unidade Master e as unidades Slave de modo a permitir o correcto sincronismo entre todas as entidades envolvidas na rede pelo que as op es tomadas devem ser implementadas em todas as unidades Como condi es base seguiram se as seguintes linhas v Escolha da vers o CAN mais universal fulICAN 2 04 v Configura o da velocidade na m xima poss vel 1 Mbps v Filtragem das mensagens apenas destinadas ao pr prio SCU apenas as mensagens com o endere o destino igual ao do pr prio s o aceites v Dadas as transac es serem constitu das por duas mensagens aproveitou se a presen a de dois buffers de recep o para redireccionar cada uma para um buffer parte dupla filtragem v Igualmente utilizaram se dois buffers de transmiss o para transmitir cada uma das duas mensagens A seguir s o descritas as principais opera es na configura o deste recurso Modo de Configura o O PIC 18F258 possui seis modos de opera o dos quais apenas 3 nos s o teis gt Modo disable o PIC n o transmite nem recebe quaisquer mensagens gt Modo de configura o necess rio antes de activar as transmiss es recep es gt Modo de opera o normal recep o e transmiss o de mensagens v lidas via C
12. definida Relativamente varia o de sensor para sensor ainda n o se tornou suficientemente importante quando usando apenas a perna pois o seu reduzido peso torna estas varia es desprez veis Contudo experi ncias subsequentes com cargas aplicadas sobre a perna tornaram este problema evidente requerendo a aplica o de ganhos de amplifica o independentes para cada sensor Um aspecto importante que se deve ter em conta que nunca se conhece a for a absoluta aplicada sobre cada sensor de for a Aquilo que se conhece o que se pode medir uma varia o de for a aplicada em cada sensor No que respeita aos par metros absolutos como a for a aplicada eles dependem das seguintes condi es Iniciais e Deforma o inicial das placas de acr lico que sust m os extens metros For a de pr carga introduzida pelo peso da plataforma human ide na situa o de equil brio Amplifica o introduzida pelo circuito de acondicionamento de sinal Offset introduzido na calibra o da ponte de Wheatstone Offset introduzido pela calibra o via software Nesta linha de ideais a nica coisa que temos conhecimento que a varia o do sinal medido est relacionada proporcionalmente com a varia o da for a aplicada e que o sinal medido est relacionado com a for a atrav s de um offset Embora se possa conhecer o offset pela an lise dos dados experimentais Tabela 17 n o nos podemos esquecer que esse valor apenas se apl
13. elevados carga de 924g 56 Mantendo fixo o valor de K em 0 10 vamos aumentar o par metro Kp para 0 30 Fig 3 44 e Fig 3 45 60 40 _ 20 D T i Q D So o 20 40 o O iT gt eot Ramp requested 80 H Ki 0 10 Kp 0 04 i Ki 0 10 Kp 0 30 1 00 LS 0 1 2 3 time s time s Fig 3 44 Correc o do overshoot com o aumento de Kp Fig 3 45 Erro da resposta da Fig 3 44 carga de 924g Pode se constatar que o overshoot desapareceu sem afectar significativamente o tempo de atraso De modo a melhor perceber estes resultados registaram se v rias respostas para diferentes valores de Kp mantendo fixas a traject ria solicitada e a carga A Fig 3 46 e a Fig 3 47 apresentam os resultados para dois valores diferentes de K agora utilizando traject rias polinomiais 50 w w o o D D o So g c o E Expected E Expected 2 Kp 0 00 O Kp 0 00 Kp 0 30 Kp 0 25 Kp 0 80 Kp 0 50 EA Kp 1 50 Kp 1 10 50 50 0 0 5 1 1 5 2 20 3 0 0 5 1 1 5 2 ZA 3 time s time s Fig 3 46 Varia o de Kp para K 0 05 carga de 675g Fig 3 47 Varia o de Kp para K 0 10 carga de 675g Analisando o gr fico da Fig 3 47 com K 0 10 confirma se o que se havia dito sobre os efeitos no overshoot o overshoot reduzido chegando mesmo a deteriorar o tempo de estabelecimento caso este valor seja excessivo sem no entanto al
14. es ACTUA O LEITURA SENSORIAL acordo com os par metros de entrada acordo com os par metros de entrada Preparar mensagem de transmiss o de Preparar mensagem de transmiss o de o DE RR ee eH 7 Enviar Mensagem de Transmiss o Transmiss o Enviar Mensagem de o o D D 1 i YD o o S Receber Mensagem de Ss Receber Mensagem de E resposta 2 resposta oO D Y Y Retirar parametros de interesse da mensagem de resposta Retornar Estado de Erro Retornar dados sensoriais Estado de erro Fig 2 4 Algoritmo b sico dos device drivers de actua o leitura sensorial Todos os device drivers apresentados utilizam uma fun o base que tem como responsabilidade a implementa o do protocolo descrito na sec o 2 2 2 ou seja o envio de uma mensagem de 6 bytes unidade master solicitando determinado dado sensorial ou com uma ordem de actua o e depois o processamento da mensagem de resposta com a informa o solicitada ou confirma o da actua o respectivamente Esta fun o denominada por sendmessage e constitu da pelo conjunto de passos apresentado na Fig 2 5 e Fig 2 6 Constru o da Mensagem Envio da Mensagem para a unidade Master Recep o da Mensagem de resposta Atribuir o conte do da Mensagem de
15. o das placas Por isso recomenda se a utiliza o do sistema parafuso porca para evitar este problema Al m destes problemas tamb m se observam respostas vari veis com o tempo causados com tend ncia a deteriorar se ao longo do tempo necessitando de reajustes no ganho do controlador bem como na deforma o inicial dos sensores As causas podem ser identificadas como as seguintes 119 e Postura da perna no momento da calibra o inicial dos sensores de for a como posicionada manualmente por interven o humana nunca se garante duas posturas exactamente iguais pelo que ocorrem sempre diferen as no centro de gravidade inicial Mesmo efectuando o posicionamento atrav s dos servomotores os esfor os envolvidos em cada experi ncia fazem com que a correia de transmiss o sofra fadiga ou o pr prio eixo do servo adquira desfasamentos pelo que este problema ocorrer sempre e Assimetria ao n vel da electr nica de instrumenta o note que para cada extens metro um circuito de acondicionamento utilizado pelo que se aplicarem componentes de baixa qualidade podem se registar varia es no seu comportamento a medida que a temperatura vai aumentando Al m disso se existirem liga es n o suficientemente seguras no PCB o movimento da perna pode provocar oscila es nos sinais el ctricos e A baixa qualidade dos potenci metros multi volta usados na electr nica de instrumenta o para ajuste dos offsets na tens
16. o de acr lico ou outro material com caracter sticas bastante homog neas e resistente fadiga de modo a minimizar a varia o do seu comportamento ao longo do tempo e Utiliza o de montagens parafuso porca em todos os pontos de fixa o das plataformas do p para homogeneiza o da resposta sensorial e Minimiza o das assimetrias na liga o p perna procurar que os eixos de liga o entre estas duas partes se aproximem do centro do p de modo a conferir ao centro de press o medido uma rela o bastante consistente com o centro de gravidade 120 Cap tulo 5 Conclus es Este trabalho permitiu aprofundar os conhecimentos pr ticos sobre barramentos de comunica o mais concretamente a comunica o CAN muito usada em ambientes industriais tendo se desenvolvido v rios protocolos de forma a conferir a m xima robustez e maximiza o da largura de banda dispon vel Relativamente ao ltimo protocolo implementado os resultados observados s o bastante animadores sendo poss vel observar um funcionamento cont nuo sem quaisquer falhas aparentes nas comunica es Estas afirma es s o baseadas em testes exaustivos que foram realizados durante per odos de funcionamento cont nuos que nalguns casos atingiam dez horas pelo que poss vel confirmar a elevada robustez nas comunica es Apenas algumas correc es s o apontadas ao n vel do hardware para minimiza o dos efeitos colaterais na comunica o
17. pr xima da m xima a largura do impulso de corrente pode ocupar praticamente todo o per odo de PWM inibindo a capacidade de leitura da posi o e da largura do impulso dado que o valor m nimo corresponde ao topo do impulso de corrente por isso de evitar que esta situa o ocorra quer impondo limites f sicos quer pela adop o de estrat gias de controlo que minimizem a corrente a consumir uma delas a limita o de velocidade Medi o da Posi o J foi referido anteriormente que a componente DC da sa da do potenci metro est relacionada com a posi o do servo pelo que a tarefa de guardar o valor m nimo deste sinal executada para efeitos de detec o do impulso de corrente aproveitada para o c lculo da posi o angular do servo Convencionando a tens o m nima como correspondendo posi o 90 e a tens o m xima como 90 recorrendo a uma rela o linear podemos determinar a posi o atrav s rela o entre a leitura da ADC com um ganho m com b correspondente posi o angular do servo quando o resultado da ADC nulo 44 pos m ADC b 90 90 __ 180 _ 0 878 ADC os ADC sy 163 368 b pos m ADC 90 m ADC 90 0 878 163 233 pos 90 em que ADC correspondente leitura da ADC para uma determinada posi o pos tens o v do potenci metro v su 1 rel 1023 sv 5V ADC v us Logo pos ADC 233 ADC 0 878
18. y ADC finishes ADC starts conversion and panei generates an interrupt I ADC ADC Conversion Time conversion reading 40us start T ae 4 P Converted voltage is ona de l SiMe els rocessed PWM descida E descida P E Potentiometer reading Interrupts Timer 0 hee MUX stabilization Acquisition time 6 20 ms 150us Fig 3 17 Organiza o das interrup es setas na medi o Fig 3 18 Algoritmo de leitura dos tr s sensorial servomotores De referir que estas medi es s o feitas aos tr s servos de forma alternada Para cada instancia o de 200 us apenas um servo medido mas ira alternando at que ao fim de 600 us todos os tr s servos s o lidos Fig 3 19 Timero interrupts lt 200 Us t f t f Tf Servo Servo Servo3 Servol Servo Fig 3 19 Multiplexagem na leitura dos servos O valor do limiar a considerar depende da amplitude do impulso mas sabendo que este apenas varia com a tens o de alimenta o mantendo uma amplitude sempre superior a 1 0V utilizando baterias de 7 4V definiu se o limiar como 1 0V Note que este limiar encontra se acima da tens o DC pelo que necess rio em cada per odo de PWM medir a tens o m nima e utiliz la para o per odo seguinte como sendo a tens o base dos impulsos Contudo este m todo possui uma desvantagem Em situa es de elevada exig ncia em que a corrente consumida
19. Ap s a salvaguarda destes resultados na base de dados local do microcontrolador estes dados ficam dispon veis para envio para a unidade master atrav s do barramento CAN 46 3 3 ESTUDO DO SERVOMOTOR EM MALHA ABERTA Agora que os detalhes de funcionamento do microcontrolador foram apresentados vamos estudar o comportamento do servomotor sob determinadas condi es de modo a avaliar a seu desempenho O estudo ser feito do ponto de vista de um sistema no qual aplicaremos uma entrada e queremos observar a sua resposta Fig 3 22 R s gt G s gt Y s Fig 3 22 Representa o do servomotor por uma fun o de transfer ncia G s Ora tendo sido discutido o funcionamento interno do servomotor na sec o 3 2 2 Fig 3 8 Infelizmente apenas era uma aproxima o ao nosso modelo e al m que nao conhecemos os valores dos ganhos enunciados Por tudo isto iremos estudar o comportamento do sistema G s desconhecendo a sua fun o de transfer ncia Embora pud ssemos tentar encontrar esta express o experimentalmente atrav s de m todos bastante conhecidos como o caso das regras de Ziegler Nichols tal n o nos leva muito longe pois como sabido as juntas da plataforma human ide est o sujeitas a constantes varia es de in rcia pelo que o comportamento dos servos torna se bastante n o linear Ter amos por isso uma fun o de transfer ncia diferente para cada carga aplicada Esta sec o tem como
20. ide possui um conjunto de 22 graus de liberdade distribu dos da seguinte forma e 2 ortogonais em cada p 2x2 1 em cada joelho 1x2 3 em cada anca segundo os tr s eixos tridimensionais 3x2 2 no tronco 2x1 3 em cada bra o 3x2 2 no suporte da c mara cabe a 2x1 7 A estrutura constitu da essencialmente por alum nio e a o nos eixos e outros pequenos componentes pesando um total de 6 kg com as baterias inclu das e medindo cerca de 60 cm de altura Estes valores foram estabelecidos de acordo com as regras impostas pelo RoboCup baseando se no pressuposto de que para valores superiores estes o uso de servomotores de baixo custo poderia tornar se invi vel dada a impossibilidade de conciliar bin rios de motores e pesos dos equipamentos e acess rios como as baterias Por raz es de est tica e de acomoda o de componentes foi adoptada uma estrutura em forma de exoesqueleto carapa a dotando assim o sistema de m dulos ocos onde s o alojados os motores sensores cablagens placas de controlo etc Fig 1 2 Fig 1 2 Modelo 3D do robot e implementa o actual Preocupa es com a autonomia energ tica do sistema exigiram a escolha de baterias de elevada capacidade de corrente pois ser necess rio alimentar 22 motores de bin rio apreci vel embora uns mais do que outros Tendo em conta esses aspectos utilizaram se duas baterias de 7 4V ligadas em paralelo com uma capacidade total m xima de 9600
21. m se estabilizado na gama entre 20 e 20 unidades do centro de press o medido de acordo se trata do sentido positivo ou negativo da traject ria respectivamente A cinem tica directa tamb m se apresenta estabilizada sem a presen a de acumula o de erros contida entre 3cm para o joelho e 5 a 4cm para a anca Relativamente ao eixo yy Fig 4 45 podemos observar erros de tracking na ordem das 30 unidades Por an lise a estes dados podemos concluir que perfeitamente poss vel aplicar traject rias cont nuas sem a presen a de erros acumulativos Previsto Medida HE a 10 20 30 40 50 B0 0 a0 t Coordenadas Cartesianas cm Joelho HH Fig 4 44 Trajectoria rectilinea ao longo do eixo xx Periodo 2s e K 50 111 Previsto Mecdido f H 0 10 20 30 40 50 B0 0 B0 t Coordenadas Cartesianas em YY Fig 4 45 Traject ria rectil nea ao longo do eixo yy Per odo 2s e K 50 Realizando a mesmas experi ncia mas executando traject rias sobre apenas um dos eixos podemos fazer algumas infer ncias relativamente interfer ncia que um movimento num determinado eixo pode ter sobre a componente ortogonal Fig 4 46 e Fig 4 47 Movendo o sistema apenas segundo o eixo yy entre as coordenadas CoP e 0 60 10 a 0 40 10 podemos observar flutua es no eixo ortogonal a este que podem atingir as 15 unidades Contudo em termos de cinem tica directa a perna apenas se desloca no m xim
22. o caminho a seguir para este tipo de eventos 99 Position degrees Current drainning Sa Position degrees Current drainning So _ AX component perpendicular to foot gt YY component parallel to foot Center of Pressure over the foot surface 5 10 15 20 25 30 time 5 Servo 0 4 vy Servo positions servo 0 44 semo 1 Y Fig 4 30 Levantamento do p no ar controlo proporcional AX component YY component Center of Pressure over the foot surface time 5 serve positions time 5 Mean current drained by each seromotor Fig 4 31 Levantamento do p no ar controlo pelo Jacobiano 100 4 6 LOCOMO O ATRAV S DO CONTROLO DO COP A sec o anterior demonstrou que poss vel utilizar o controlador de equil brio para sustentar as pernas na postura vertical face inclina o do plano de suporte Dois poss veis controladores para esta tarefa foram desenvolvidos para alcan ar esse objectivo e Controlo proporcional de cada junta ortogonal do p nos eixos xx e yy e Controlo usando a matriz Jacobiana Dado que o controlador usando a matriz Jacobiana permite controlar todas as tr s juntas da perna e revelando se pouco sens vel a imprecis es no c lculo desta matriz este foi o controlador adoptado obtendo se resultados bastante satisfat rios At aqui o nico objectivo era o de equilibrar a perna face a varia es e ir
23. quando a traject ria aplicada passa sobre um dos sensores por vezes o controlador incapaz de garantir o cumprimento do CoP solicitado O motivo deste comportamento n o foi completamente esclarecido mas discutem se algumas das causas prov veis 1 As assimetrias de conex es entre o p e a perna da estrutura human ide podem interferir de alguma forma ao fazer com que o centro de press o n o possa cobrir toda a rea do p Relembra se que os dois eixos que ligam estas duas partes n o est o centrados sobre o p pelo que a traject ria realizada pode apresentar anomalias medida que o centro de gravidade viaja ao longo do plano do p 2 As assimetrias de conex o entre o p e o tornozelo tamb m atribuem diferen as de sensibilidade a cada sensor fazendo com que para certas extremidades onde os sensores s o mais sens veis a estrutura da perna n o necessita de se deslocar tanto 3 Tamb m poss vel que a pr carga aplicada sobre um sensor coloque o perto da zona de satura o ver Fig 4 2 fazendo com que atinja facilmente o valor Ahmico m ximo impedindo que o centro de press o possa ser medido com rigor Tal perfeitamente poss vel de provocar se os parafusos de fixa o das duas plataformas do p estiverem excessivamente apertados Al m disso existem pontos de fixa o destas plataformas onde os parafusos enroscam directamente sobre a plataforma superior limitando em grande parte a excurs o de deforma
24. rie RS 232 Para a presente disserta o utilizou se como ferramentas um computador port til com o software MatLab dispondo de recursos para a troca de dados com a unidade Master e seu consequente processamento Para as unidades de controlo local master slave a escolha recaiu sobre os microcontroladores PIC da s rie 18F da Microchip PIC18F258 0 pelo seu baixo custo e por possu rem diversos perif ricos que facilitam a actua o e as leituras sensoriais bem como interfaces para redes de comunica es incluindo a UART e o CAN Fig 2 3 O meio de comunica o utilizado entre a unidade central e a unidade Master a linha s rie ponto a ponto baseada na norma RS 232 acesso ass ncrono byte a byte a um baudrate de 115200 bps Entre a unidade master e as unidades slave usado um barramento CAN Controller Area Network vers o fullCAN 2 04 a uma taxa de transmiss o recep o de 1 Mbps Fig 2 1 Exemplo de uma board Fig 2 2 Placa de controlo Fig 2 3 Rede completa de PC 104 Master Slave Microcontroladores At ao momento a rede implementada constitu da por uma placa master pelo qual designaremos por MCU Master Control Unit que efectua a interface entre a unidade principal e as unidades slave e oito placas slave designadas por SCU Slave Control Unit que efectuar o o controlo local at tr s actuadores atrav s da gera o de uma onda de pulso modulado em largura PWM e a aquisi o de at 16
25. 0 05 e Kp 0 00 Fig 3 49 Resposta ao polin mio com K 0 10 e Kp 0 00 carga de 675g carga de 675g 3 4 5 CONTROLO PROPORCIONAL INTEGRAL DERIVATIVO PID Introduzindo agora todas as tr s componentes podemos optimizar todos os par metros de modo a encontrar a melhor rela o entre Tempo de atraso Tempo de estabelecimento Overshoot est tico Oscila o durante a fase transit ria overshoot transiente VUVY Por an lise de cada componente do controlador apresentadas nas sec es anteriores j podemos relacionar estes par metros com cada um deles gt A componente integral est directamente relacionada com o tempo de atraso sendo tanto menor quanto maior for o par metro K No entanto para valores excessivos a resposta instabiliza com a ocorr ncia de overshoot Ou seja gt Diminui o tempo de atraso gt Aumenta o overshoot para valores de K elevados gt A componente proporcional utilizada para conten o do overshoot sendo capaz tamb m de melhorar o tempo de atraso se Kp possuir valores elevados sob pena do tempo de estabelecimento se deteriorar Logo temos gt Redu o do overshoot gt Para valores elevados de Kp e O tempo de atraso melhorado e O tempo de estabelecimento deteriora se gt Embora ainda n o tenha sido demonstrado a utilidade da componente derivativa verificou se experimentalmente que esta componente confere alguma vantagem na suavidade da resposta transiente Combinand
26. 3 6 Sinal de PWM aplicado no servomotor Dimensions 66 x 30 x 57 6 mm Weight 152g Tabela 11 Especifica es do servo da HITEC HS 805BB Para cada modelo de servomotor este sinal deve assumir determinadas especifica es mas para um dos modelos utilizados HITEC HS 805BB estas devem ser as caracter sticas do sinal de PWM gt Frequ ncia de 50 Hz Per odo de 20 ms gt Duty cycle vari vel entre 1 0 e 2 ms 180 Mais dados podem ser consultados na Tabela 11 com indica es do duty cycle correspondente posi o central 90 control system gama das tens es do sinal de PWM voltage range em que se observa que aceita sinais digitais de 5V provenientes do PIC Outros dados tamb m est o presentes como o caso do bin rio m ximo corrente consumida etc A escolha do modelo HITEC HS 805BB para as juntas mais exigentes recaiu essencialmente pelo seu bin rio m ximo de 2 42 N m Simula es em CATIA software de simula o de estruturas mec nicas da plataforma human ide realizando um passo ano lectivo 2004 05 demonstram que no pior cen rio as juntas podem estar submetidas a bin rios de cerca de 2 6 N m Tabela 12 O modelo HS 805BB destacou se por possuir o m ximo bin rio da gama dispon vel que mesmo assim mostra ser insuficiente para o nosso caso Para resolver este problema introduziram se correias de transmiss o que multiplicam o bin rio m ximo pela rela o entre n mero de dentes do eixo do
27. 30 time 5 Mean current drained by each servomotor Current drainning So Fig 4 29 Introdu o de perturba es externas na perna frente tr s esquerda e direita controlo pelo Jacobiano Um controlador baseado no centro de massa como o implementado procura fazer o deslocamento oposto ao introduzido pela nova for a se uma for a externa for aplicada sobre a perna o controlador assumir que o centro de massa se deslocou para o extremo oposto aonde foi aplicada a for a e por isso efectuar o deslocamento oposto ao aplicado de modo a repor o centro de massa na posi o de equil brio Este efeito acontece nas experi ncias traduzidas pelos gr ficos da Fig 4 28 e da Fig 4 29 Embora este efeito seja desej vel uma vez que procura contrariar a presen a de for as externas verifica se o problema de se deixar de garantir a postura vertical da perna na situa o de equil brio uma vez que a presen a da for a estranha faz divergir o CoP medido do CoM da estrutura Mais ainda se a base do p deixar de estar em completo contacto com o solo o CoP tende a deslocar se e a manter se na extremidade oposta aplica o da for a independentemente da postura da perna resultando na satura o das juntas Tal situa o corresponde m xima diverg ncia entre CoP e CoM Este fen meno demonstra que nem sempre necess ria compensa o negativa ou oposta no controlo do centro de massa Tal tamb m verdade no caso da
28. BufferO sensorial i 500 us Proximo SCU 500 us Sim Timer RX Buffer1 Receber Mensagem INT sensorial 2 v 2 Enviar Mensagem de N o actua o 2 RETURN Fig 2 16 Algoritmos de transmiss o recep o de mensagens CAN no Master As transmiss es de mensagens de actua o s o desencadeadas a partir de um timer programado para gerar uma interrup o de 500 em 500us Como duas mensagens tem de ser transmitidas a cada slave cada um servido durante 1 ms correspondendo a um tempo de turn around de 8 ms para 8 slaves Relativamente s recep es das mensagens sensoriais provenientes dos slaves s o processadas atrav s de interrup es CAN segundo a pol tica event triggered sempre que uma nova mensagem chega uma interrup o CAN gerada e quando poss vel processada actualizando a base de dados sensorial Estas duas fontes de interrup es foram definidas como sendo de baixa prioridade relativamente as interrup es da linha s rie UART pelo que o servi o CAN s pode ser atendido quando n o h comunica o UART Desta forma garante se uma satisfat ria velocidade de resposta aos comandos enviados pelo PC sem comprometer significativamente a performance CAN para o per odo de transmiss o citado Transmiss o e Recep o de Mensagens Do ponto de vista do Master todas as mensagens a enviar s o de actua o e todas as recebidas s o de car cter sensorial pel
29. CoP x CoP x Fig 4 52 Resposta a 10 voltas de uma traject ria rectangular sem e com controlo local Kjacobiano 59 Per odo 4s Periodo 2s Trajectoria medida do CoP Trajectoria prevista do CoP Cinematica directa do joelho Trajectoria medida do CoP Trajectoria prevista do CoP Cinematica directa do joelho 100 H Cinematica directa da anca a Cinematica directa da anca o0 BO ai 40 40 20 0 Z o E 0 220 20 40 40 E 50 an 50 100 100 H i 120 i 50 40 20 0 20 40 bi 50 40 20 0 z0 40 BO CoP x CoP x Fig 4 53 Resposta a 10 voltas de uma traject ria rectangular para diferentes velocidades Ki Kp K jacobiano 5 40 30 117 Apesar dos resultados animadores observados nas figuras anteriores mostrando bons seguimentos de traject ria desde que os par metros de compensa o e a velocidade estejam devidamente ajustados mesmo assim os resultados est o excessivamente dependentes das condi es f sicas do sistema mais em concreto dos elementos adjacentes aos sensores de for a Diferen as na sensibilidade destes sensores rigidez desigual nas aplacas de acr lico ligadas a estes e a necessidade constante de ajuste dos potenci metros que controlam o n vel de tens o sa da dos sensores resultam em significativas diferen as no cumprimento das traject rias propostas al m que os valores solicitados ao controlador de equil brio respeitante a uma determinada localiza o f sica est
30. Como esta medi o tamb m t m de ser feita para a medi o do consumo de corrente ela aplicada ap s as interrup es do timer de 200 us Fig 3 17 segundo o modelo referido de altern ncia entre os tr s servomotores Fig 3 18 Ao fim de um per odo de PWM 19 ms excluindo o intervalo das interrup es de alta frequ ncia a tens o m nima considerada como correspondendo posi o do servomotor Como ja foi referido na sec o anterior algum cuidado necess rio para limitar o consumo de corrente de modo a evitar a monopoliza o do impulso de corrente em todo o per odo de PWM o que geraria uma falsa leitura da posi o A sec o 3 3 2 detalha um m todo de limita o da velocidade o que ira necessariamente impor algum controlo no consumo de corrente Um pormenor importante a impossibilidade de garantir que a gama da tens o de sa da do potenci metro esteja compreendida entre 0 8 e 1 8V para qualquer servomotor podendo se verificar varia es at cerca de 0 2V Tal problem tico para o c lculo da posi o angular pois estamos a considerar uma rela o de correspond ncia constante quando tal dif cil de se garantir entre dois actuadores No entanto note que esta diferen a mais not ria para o par metro b do que para m O valor de b exige que os extremos de posi o possuam exactamente os valores enunciados mas para o valor de m s exigido uma excurs o entre extremos de 1 0V o que j mais fr
31. Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig 1 1 QRIO Sony Asimo Honda e KHR 3 Hubo Lab e eeeeeeereeeeareree aeee 1 1 2 Modelo 3D do robot e implementa o actual e eeeeereeeeerreee ae rereea a ereeaarerenanno 2 1 3 Arquitectura distriibuida da plataforma ssec dacaecenuilxes nda SS Ada 3 2A Exemplo deum podda PO TOA sa creases SD O E Sa ea ase 7 22 Placa de controlo Master SIAV Gy sabias rante ES DE 7 2 3 Rede completa de Microcontroladores eee eererene aa eerena nene enem cere nan erea ana nrea 7 2 4 Algoritmo b sico dos device drivers de actua o leitura sensorial ccccseeeeeeeeeeeeeeeeeeeeeeeeeees 14 2 5 Algoritmo b sico da fun o SENAMESSAGE ccecccccceeeeeccceeeaeeeeceescaaeeeeeeeeseeeeeeessaaeeeeeessaeseeeessaaaees 14 2 6 Algoritmo detalhado da fun o SENAMESSAGE ccccseeccccceeseceeseeeeeecaeeeeeeaueeeesaaeeeesseaeeeeseneeeesaneeees 15 2 7 Algoritmo de gest o das comunica es RS 232 na unidade Master 16 2 8 Recep o de byte por RS 232 e armazenamento no buffer de recep o 17 2 9 Envio do buffer de transmiss o por RS 232 ccccccccsssseeeceseeeeeceseeeeeeecesausececsuaeeesseaaeeessegeeeesaneeees 18 2 10 Processamento de uma mensagem na unidade Master a erraereera aaa 18 2 11 Formato standard das mensagens CAN
32. Mean current drained by each servomotor servo l CA 30 servo 1 CCF ao E c 20 E 10 am 5 o ji a O 5 10 15 20 25 30 time 5 Fig 4 22 Varia o do declive do plano segundo o eixo xx controlo proporcional 93 Center of Pressure over the foot surface Ax component gt gt YY component CoP Crm Position degrees 0 5 10 15 20 25 30 time s Mean current drained by each servomotor Current drainning S Fig 4 23 Varia o do declive do plano segundo o eixo xx controlo pelo Jacobiano Varia o da inclina o do plano segundo o eixo Efectuando agora varia es da inclina o do plano segundo o eixo yy pode se verificar pela Fig 4 24 um comportamento an logo ao caso anterior mas com a diferen a de apenas ser utilizados o servo associado ao eixo yy servo 1 para compensar a varia o do CoP no eixo yy As primeiras experi ncias efectuadas n o visualizadas nestes gr ficos evidenciaram uma inferior sensibilidade na compensa o desta componente apresentando uma reac o bastante lenta no controlo Tal explicado pelo formato rectangular do p dado que a dist ncia entre o par dianteiro e traseiro dos sensores muito maior que entre os conjuntos laterais de esperar que a sensibilidade na medi o do CoP seja bastante menor que na medi o do CoP Para colmatar este problema diminuiu se o offset usado para a adapta o dos valores fornecidos pela ADC que mede estes se
33. O endere o origem MCU endere o destino o pr prio e da opera o apenas s o verificados para efeitos de teste do correcto funcionamento Envio de uma mensagem de car cter sensorial 1 Constru o do identificador com base no index da mensagem endere o origem destino e opera o conhecidos 2 Construir o array de dados a enviar de acordo com o index da mensagem a partir dos dados sensoriais obtidos directamente 3 Enviar a mensagem identificador array de dados pelo buffer de transmiss o adequado ao index Recep o de um pacote de actua o 1 Obten o do identificador e do array de dados da mensagem recebida 2 Actualiza o dos actuadores de acordo com o index da mensagem 30 Base de Dados Local Como as novas informa es de actua o nunca s o aplicadas imediatamente torna se necess rio armazenar estes valores numa base de dados local para posterior acesso pelas tarefas de controlo local O mesmo se passa com a Informa o sensorial que quando gerada tem que ser armazenada para que a tarefa de comunica o CAN possa aced la mais tarde para o envio das mensagens de resposta Esta base de dados local muito semelhante base de dados apresentada na unidade master mas agora com a diferen a de ser de car cter local ou seja apenas armazena a informa o sensorial ou de actua o de um nico SCU o pr prio Tipo enumerado do g nero de controlador implementado em cada junta typedef
34. Position trajectory degrees Mean velocity degreesUUmes Fig 3 57 Junta do Joelho 62 Position trajectory degrees Mean Velocity deqrees 1UUms Urained Current normalized Fig 3 58 Junta da Anca Na presenca de uma carga de cerca de 2 kg Com a carga de 2 kg Fig 3 59 Fig 3 60 e Fig 3 61 surpreendentemente verifica se pouca varia o do erro em regime estacion rio com um baixo consumo de corrente Note se que agora o esfor o distribu do pelas tr s juntas pelo que as condi es n o s o t o exigentes como as experimentadas no caso anterior Position trajectory degrees Mean Velocity degrees 1UUms 20 op 20 4D Fig 3 59 Junta do p 63 Position trajectory degrees Mean Velocity degrees 100ms Fig 3 60 Junta do joelho Position trajectory degrees Mean Velocity deqrees 100ms Position Error degrees RI O u h nm PP Fig 3 61 Junta da anca Contudo observa se na junta do p Fig 3 59 uns picos estranhos na leitura de posi o sinalizando momentos em que o impulso de corrente poder ter ocupado todo per odo de PWM Tal n o bvio no registo de corrente uma vez que este representa um conjunto de leituras espor dicas ao longo deste per odo Tal indica que a junta do p a mais exigente em termos de consumo de corrente 64 3 5 2 MOVIMENTO DE FLEX O EM MALHA FECHADA DE UMA PERNA As figuras seguintes apresentam o comportamento das
35. a mesma que a da ADC do PIC pelo que embora para a electr nica de controlo interna este sinal corresponder sempre posi o do servo para a perspectiva da ADC este sinal possuir oscila es na forma de impulsos ao longo do tempo mesmo sem variar a posi o do servo Testando diversas situa es atrav s do oscilosc pio conclu mos que estes impulsos possu am propriedades n o casuais O impulso ocorre sempre acima da tens o indicadora da posi o A amplitude do impulso constante e apenas varia com a tens o de alimenta o Per odo de repeti o coincidente com o PWM aplicado 50Hz Ponto de in cio sincronizado com o fim do impulso de PWM Largura dependente da carga e da velocidade VUVVY Inout PWM pulse lt _ current pulse Amplitude a Motor 4 fixed at position maximum variable 20 ms Fig 3 14 Impulso de tens o medido na presen a de cargas velocidades elevadas O ltimo aspecto foi o que se revelou mais interessante quando se aumentava a carga ou a velocidade a largura deste impulso aumentava Tentando relacionar a largura deste impulso com a massa da carga efectuou se o seguinte teste fazia se deslocar o servo para um conjunto de posi es entre 90 e 90 e para cada uma delas o actuador era deixado em repouso e media se a largura do impulso Fig 3 15 Desta forma assegur vamos que a largura medida apenas era devida ao bin rio
36. a quatro entradas anal gicas da placa de controlo local Fig 3 2 A leitura digital segue o algoritmo mais simples convers o anal gico digital para um valor de 8 bits e envio dos resultados dos quatro sensores para a unidade de controlo principal PC Dois tipos de experi ncias foram realizadas 1 A primeira colocando v rios pesos previamente calibrados sobre cada sensor cada sensor foi testado de forma isolada Fig 4 13 2 E a segunda colocando os pesos sobre o ponto central da base do p os quatro sensores foram medidos simultaneamente Fig 4 14 A lista de pesos calibrados indicada a seguir na Tabela 15 os pesos 1 a 4 correspondem a cilindros de met licos e o peso B corresponde a uma bateria pesando aproximadamente 2 kg Usaram se estes pesos de forma isolada e combinados uns com os outros de modo a obter uma massa m xima de cerca de 4 kg 0 0 00 PS SE cos 666 653 B 19 6 191 Tabela 15 Lista de pesos usados no teste dos sensores de for a A Tabela 16 indica os valores registados em cada uma das experi ncias para cada sensor com o azul e o verde localizados na parte dianteira e o branco e castanho na parte traseira do p Fig 4 12 Todos os sensores foram calibrados com o valor 40 na aus ncia de carga 75 Castanho Fig 4 12 Localiza o dos sensores no p E Fig 4 14 Medi o dos sensores em conjunto Tabela 16 Resultados experimentais para cada sensor nas duas exp
37. adapta o dos p s a pisos irregulares ou n o horizontais Para este caso as juntas dos p s devem adaptar se at toda a sua base assentar no piso Para tal tamb m pode ser usado como feedback a posi o do centro de press o mas agora com compensa o positiva no controlo deslocamento dos servos no sentido oposto Apenas depois de este procedimento estar completo base do p em contacto com o solo o algoritmo tradicional que pode entrar em funcionamento Este controlador de compensa o oposta poder ser utilizado na perna de locomo o at esta se encontrar completamente assente sobre o solo e s a partir deste ponto o algoritmo de equil brio com base no centro de massa entraria em funcionamento passando a atribuir a fun o de suporte a esta perna Uma outra estrat gia simplesmente desligar o controlador de equil brio bem como tamb m o sinal de PWM aplicado aos motores do p Desta forma encontrar se iam em movimento livre adaptando se naturalmente ao solo medida que a perna baixa S quando totalmente em contacto os motores se reactivariam preservando esta nova posi o adquirida 98 4 5 6 RESULTADOS EXPERIMENTAIS RESPOSTA DO P LIVRE Nesta experi ncia adicional levantou se a perna de modo a suspender o p e observou se o comportamento do controlador Segundo a Fig 4 30 e a Fig 4 31 quando o p est suspenso o valor do centro de press o afasta se do ponto de equil brio o que provoca o
38. cada canto do p permitindo posteriormente efectuar uma estimativa do centro de press o a partir da distribui o das quatro for as 71 Fig 4 7 Vis o completa do p 4 3 MEDI O DAS FOR AS DE REAC O 4 3 1 INTERFACE ENTRE OS EXTENS METROS E O MICROCONTROLADOR Agora que poss vel medir as for as aplicadas ao longo da base de um p necess rio amostrar estes sinais atrav s do microcontrolador fazendo uso destes sensores Vers o original do circuito de acondicionamento de sinal A Fig 4 8 apresenta o circuito de acondicionamento de sinal para cada extens metro utilizado no ano lectivo 2004 05 para aplica o numa entrada anal gica do microcontrolador D gt Oo re RG f 100 hI 8 Vout 6 P INA129 bo Lee 120 120 lt 100 a PONTENCIOMETRO gt A F gt 1 Fig 4 8 Circuito de interface original dos extens metros Uma ponte de Wheatstone utilizada para medir a resist ncia hmica do extens metro pela sua queda de tens o Numa situa o de equil brio a tens o nos terminais 2 e 3 do amplificador devem ser iguais pelo que EXT Va Vop R EXT R POT Keit _ CAL com R R POT R R POT R Roa V4 72 em que EXT correspondente ao valor hmico do extens metro e Rcaz relacionado com o potenci metro de calibra o R e Ry referem se a outras resist ncias de valor fixo e v3 e v a tens o presente sa da da p
39. do actuador Embora haja bastantes solu es para este problema a mais simples a do algoritmo incremental pois n o existe qualquer integrador fazendo com que numa situa o de satura o o sinal de controlo u n deixe automaticamente de aumentar resultando imediatamente na invers o da tend ncia Um outro pormenor s o as transfer ncias bumpless que n o s o nada mais do que a activa o e desactiva o do controlador em pleno funcionamento do sistema Pretende se que quando o controlador ligado ou desligado o actuador n o sofra qualquer varia o brusca de posi o Embora n o haja nenhum problema na 53 situa o de desactiva o do controlador o problema surge na reactiva o Na solu o com integrador se a integra o parar de funcionar durante a desactiva o quando reactivado o sinal de controlo u n n o corresponder ao sinal r t que anteriormente era aplicado directamente pois o resultado da integra o deixou de ser actualizado o que resulta num deslocamento brusco para uma posi o imprevis vel Por outro lado se nunca se parar a integra o corremos o risco da soma atingir valores excessivamente elevados ou mesmo de sofrer overflow bastando para isso que os pedidos de actua o nunca correspondam ao valor de feedback tal frequente na presen a de cargas O resultado reflectir se 1a em movimentos bastante oscilat rios na reactiva o acabando por provocar o fen meno de wind up Uma po
40. dos extens metros Tal pode ser feito pela an lise da distribui o das for as ao longo dos quatro sensores e Se os quatro sensores indicarem a mesma for a o centro de press o localiza se sobre o centro do p e Se um sensor apresenta uma for a n o nula com as restantes nulas o centro de press o desloca se completamente para a localiza o do sensor de valor n o nulo O c lculo do centro de press o baseia se por isso numa m dia ponderada das quatro for as usando a localiza o dos sensores Seja a localiza o dos sensores dada pelos vectores dj d2 d3 e dy segundo os eixos cartesianos indicados na Fig 4 17 Estas s o as express es usadas para a determina o da localiza o do centro de press o nos dois eixos cartesianos De notar que o par metro F indicado corresponde for a absoluta para o sensor i No entanto tal como ja foi indicado esse valor n o mensur vel apenas conseguimos medir um valor que est relacionado com a for a segundo uma constante e depende de um valor inicial definido durante a calibra o Para resolver este problema necess rio estimar a for a absoluta inicial o que n o poss vel faz lo com precis o A utiliza o do valor 127 como resultado Inicial na situa o de equil brio j prev esta for a inicial e deve ser alterado caso a varia o da for a medida n o corresponda real lg ea DE 127 4 CoP com F 0 em equil brio lg E FE 127
41. een erre 55 3 3 iigo go resposta da FIG g Ore RR RR SOPRO RR PDS EDS NESSE PN SD 55 339 K002 M9240 PROD RR RODAR E PR AR DRE MTE DOIDA SR DR RT PR 55 399 K007 M9240 a a iai aa iai 55 Fig 3 40 K 0 15 m ODAO asa toscas julio ad E Sd 56 FOS em O BS OMJ 7 6 PDR ANE RS CRER UR GU E DS RE PEDRO RD SO eet eee 56 Fig 3 42 Fen meno do overshoot para valores de K elevados carga de 9240 56 Figes do Erro dajresposia da Fig AZ saias incas EEE ACE had Ens AA a de E sans 56 Fig 3 44 Correc o do overshoot com o aumento de Kp carga de 9240 ee 57 Fig 3 45 Etro datesposiada Fig SAA rsrs ins ra daTiss aaa A 57 Fig 3 46 Varia o de Kp para K 0 05 carga de 675Q ccccccceeeeeeeeeeeeeceeeeeeeseeeeeeeeeeeeeesaneesesseeeeessaeeeeenas 57 Fig 3 47 Varia o de Kp para K 0 10 Carga de 675Q cccccceeeeeeeeeeeeeecaeeeeeeseeeeeeeaeeeeeeeaneesessneeeseaeeeeenas 57 Fig 3 48 Resposta ao polinomio com K 0 05 e Kp 0 00 Carga de 6750 58 Fig 3 49 Resposta ao polin mio com K 0 10 e Kp 0 00 carga de 6750 58 Fig 3 50 Compara o entre dois conjuntos de par metros durante o tunning M 675Q 59 Fig 3 51 Situa o de Instabilidade M 6759 sss ecenin innana aana era ENG Agar asi capangas aa assis 59 Fig 3 52 PID optimizado para uma carga de 6750 e a a ia ia aan a aa Adaa 60 Fig 3 53 Repeti o do ensaio com os par m
42. for PID Controllers IEEE Control Systems 1996 18 Michael Hardt and Oskar von Stryk The Role of Motion Dynamics in the Design Control and 123 Stability of Bipedal and Quadrupedal Robots RoboCup 2002 International Symposium June 24 25 Fukuoka Japan 2002 19 Dusko KatiC and Miomir Vukobratovi C Survey of Intelligent Control Techniques for Humanoid Robots Journal of Intelligent and Robotic Systems 37 117 141 2003 20 T Sugihara Y Nakamura Whole body Cooperative Balancing of Humanoid Robot using COG Jacobian Proceedings of the 2002 IEEE RSJ Intl Conference on Intelligent Robots and Systems EPFL Lausanne Switzerland 2002 21 Milton Ruas Filipe M T Silva Vitor M F Santos Parameter Measurement for Speed and Torque Control of RC Servomotors on a Small Size Humanoid Robot nas Actas do Encontro Cientifico Robotica 2006 Festival Nacional de Rob tica pp 71 79 28 Abril Guimar es Portugal 2006 22 Milton Ruas Filipe M T Silva V tor M F Santos Techniques for Velocity and Torque Control of RC Servomotors for a Humanoid Robot Proceedings of the 9 International Conference on Climbing and Walking Robots CLAWAR 06 12 14 Setembro Bruxels Belgium 2006 23 Milton Ruas Filipe M T Silva V tor M F Santos Develpment of Control Algorithms for a Humanoid Robot Revista do Departamento de Electr nica Telecomunica es e Inform tica da Universidade de A
43. grav tico sem a interfer ncia da velocidade Esta experi ncia foi executada para duas cargas de massas diferentes uma aproximadamente dupla da da outra 13789 Load Pulse Width normalized 100 50 0 50 100 Position degrees Fig 3 15 Rela o entre a posi o e a largura de impulso Analisando cada uma das duas cargas parte verifica se um comportamento sinusoidal ao longo das diversas posi es sugerindo a rela o com a fun o seno coseno Ora pela equa o do bin rio grav tico se pode concluir que a largura do impulso de tens o est directamente relacionada com o bin rio grav tico Relacionando os valores entre as duas cargas tal fundamento refor ado dada a rela o de multiplica o 42 entre os dois conjuntos aproximadamente de dois Ora como se sabe a corrente est directamente relacionada com o bin rio K T pelo que a largura de impulso um indicador da corrente drenada pelo servo Por esta raz o de agora em diante este impulso ser denominado por impulso de corrente Este comportamento confirma a actua o sobre o motor DC de uma forma digital tamb m utilizando sinais no formato de PWM atrav s da ponte H Note que pelas caracter sticas do sinal de posi o poss vel medir tanto a posi o como a corrente a partir desta nica fonte sem a necessidade de qualquer electr nica adicional para a medi o de corrente Medi o de Corrente Inicialmente usou se um
44. juntas agora com o controlador ligado Fig 3 62 Fig 3 63 e Fig 3 64 Mais uma vez o caso mais exigente verifica se para o caso da junta do p Fig 3 62 com erro em regime transit rio de 14 e em regime estacion rio de 5 Com o controlador ligado a resposta melhorou bastante reduzindo o erro m ximo em regime transit rio para menos de metade e eliminando o erro em regime estacion rio F pesso pren oeenn E e i N EOS ae a a O o ef E D7 EOU diodo 5 a 6 30 s r a a e a A T T l a 20b e O Expected Trajectory de 3 No Load Open Loop 10 sig ion With Load Open Loop aa Ki 0 10 Kp 0 80 3 0 0 2 4 6 3 time s Fig 3 62 Junta do p 40 E A 4 7 0 EE arent Jee E enemas oO oO D D a M O ner 5 o w AJ o aa a a ea z O o F A toe Expected Trajectory o o 40 E ac No Load Open Loop H 3 With Load Open Loop Dc po dade o Ki 0 10 Kp 080 80 i i i i 0 2 4 6 8 time s Fig 3 63 Junta do joelho 65 Expected Trajectory No Load Open Loop With Load Open Loop time s Fig 3 64 Junta da anca 3 5 3 MOVIMENTO DAS DUAS PERNAS Utilizando agora as duas pernas juntas Fig 3 65 com a aplica o de uma carga de massa partilhada entre os dois membros executou se o mesmo movimento de flex o para teste das juntas do p do joelho e da anca Adicionalmente de modo a testar a junta lateral do tor
45. k3 k Zt k A0 ko k amp k Ji Jn Ja Ecopx A K7 ye bx e AO k k k Ji Ja I x E Copy AO Kk ky ky Jig Ja Jz e As equa es finais de controlo s o por isso as descritas na Tabela 19 Junta lateral do p AO k 7 Cop Ja cop k des e Junta dianteira do p A 0 k Tiea ema k a e Junta do Joelho AO k Em E o a a copy Tabela 19 Leis de controlo utilizando a matriz Jacobiana de centro de massa e de altura 91 Vamos agora p r em pr tica os algoritmos de controlo descritos e observar os seus resultados Os controladores foram configurados de modo a procurar a posi o de equil brio ou seja o ponto cujo centro de press o coincide com o centro geom trico do p coordenadas x y 0 0 E CoPx T Cone a Cone z Cop E Copy z Cop Cop Cop Considerando CoP e CoP como os centros de press o medidos em cada componente espacial x y as leis de controlo aplicadas foram as seguintes tanto para o caso do controlador proporcional Tabela 20 como para o caso com controlador Jacobinao Tabela 21 Junta lateral do p AO K CoP Junta dianteira do p AO K CoP Tabela 20 Equa es de controlo para o compensador proporcional considerando o CoP de refer ncia nulo Junta lateral do p AO k J 8 CoP tJa 0 CoP Junta dianteira do p AO k J 0 CoP J 5 0 CoP AO k J 8 CoP J 6 CoP
46. kz Ja copy kz Ja Coop Dado que o erro do CoP na componente zz n o tem significado este par metro n o ser considerado pelo que AG Ky ka Ky Si Ja Ja Ecopx 0 Ki Ky kz Ji Ja J 39 X copy kia k gt kz J 3 Jos J33 0 AO ka fi cop tka do Ecopy AO ka Jp Ccop HR ly Ecopy AO kiz Jig copy Ros dos copy Pela an lise a estas express es a terceira coluna do Jacobiano transposto deixa de ser utilizada pelo que a matriz suficiente na forma 0 CC ce 0 JS Swe PCC 0 5538 Cos Lei de Controlo da Altura da Anca No entanto al m do centro de press o torna se igualmente importante o controlo da altura da anca para efeitos de estabiliza o da cintura ao longo dos processos de locomo o Por isso para as coordenadas x e y seria utilizado o controlador de CoP enquanto para a coordenada z utilizar amos um controlador de altura baseado na cinem tica directa Utilizando igualmente uma matriz Jacobiana mas relativa s coordenadas do topo da perna anca Ox Ox Ox topo topo topo do 00 08 7 Ops o OY o OY o OY o A 7 7 E topo a ELA 8 8 S AO E Ts x 05 topo dz dz dz topo topo topo 00 30 08 89 Apenas considerando a coordenada zz da anca como a altura h a matriz simplificada da seguinte forma 0 0 9h 0 0 0 06 EAN oh J 0 0 0 gt J 0 0 dh dh dh dO 06 90 90 o o 2 30 Sabendo que pela cinem tic
47. o actuado para 25 passos ao longo do eixo xy 105 Coordenada x YS CoP ref x Coordenada y YS CoP ref x E E Deo a o o at wi Eu Eu uw uw o o mE o CoP actuado CoP actuado Coordenada x YS CoP ref y Coordenada y YS CoP ref y E E oe Bem mm mm a tm Eu Eu uw uw o o mE oo 30 20 10 10 20 30 A 20 10 10 20 30 CoP actuado CoP actuado Fig 4 39 Rela o entre o CoP medido e a cinem tica directa do joelho e da anca ao longo do eixo xy 4 6 3 AN LISE DIN MICA DO COP REFER NCIA A an lise din mica entendida como a amostragem da resposta durante a aplica o de uma traject ria s diversas juntas do sistema Na situa o em concreto aplicar se uma traject ria polinomial de quinta ordem velocidade e acelera o inicial e final nulas ao centro de press o de refer ncia CoP s e a sa da dos sensores de for a bem como a posi o angular das v rias juntas ser o amostrados durante a execu o desta traject ria O procedimento das experi ncias executadas est descrito a seguir 1 Inicializa o do CoP para a execu o de uma traject ria polinomial de 5 ordem Activa o do controlador de equil brio Defini o do per odo da traject ria e do ganho do controlador de equil brio Execu o da traject ria para um determinado CoP final Ao longo da traject ria registar a sa da dos sensores de press o e de posi o dos servos No fim da traject ria guar
48. o de sa da requer o seu reajuste constante o que constitui um s rio problema tendo em vista a necessidade de autonomia do robot e Modifica o acidental da deforma o inicial das placas de acr lico motivado por alguns acidentes de trabalho que for am o deslocamento dos parafusos de fixa o e poss vel tamb m que a rela o deforma o for a aplicada varie ao longo do tempo V rias observa es registaram diferen as de comportamento por parte dos sensores ap s v rias horas de funcionamento mas no dia seguinte as condi es iniciais voltavam a ser repostas Note que isto acontecia quando movimentos intensivos sobre o p eram executados pelo que pode ocorrer alguma fadiga por parte da estrutura molecular do acr lico Infelizmente esta suposi o n o pode ser verificada uma vez que a realiza o de traject rias durante um per odo de amostragem suficientemente extenso implica a presen a constante de um observador dada a instabilidade inerente ao sistema Tendo em conta estes problemas apontam se algumas solu es recomenda es a levar em considera o nos desenvolvimentos futuros e Adop o de extens metros de elevada qualidade com um baixo coeficiente de temperatura O mesmo tamb m se aplica s resist ncias e potenci metros presentes na ponte de Wheatstone e Uso de PCB s de qualidade com liga es bastante seguras para garantir a estabilidade dos sinais el ctricos face a vibra es e Utiliza
49. o produto R xRca ap s uma modifica o de temperatura o sinal de sa da alterado Tal provocado por diferentes coeficientes de temperatura nas resist ncias Embora estes coeficientes sejam por natureza muito baixos n o nos podemos esquecer que a ordem de grandeza do sinal de sa da da ponte igualmente baixo o que pode tornar significante este desvio Experimentalmente comprovou se que a presen a do potenci metro era a causa destas flutua es o que sugere um coeficiente de temperatura deste componente muito diferente dos restantes De forma a resolver este problema definiu se uma nova configura o da ponte de modo a que na presen a de qualquer interfer ncia externa os diversos componentes compensassem o desvio anulando o POT CAL EXT MIRR Ra AO E TE POT FIXED IAT 24P E o Fig 4 11 Circuito de acondicionamento de sinal com simetria completa 74 A Fig 4 9 apresenta a nova geometria com a adi o de um segundo potenci metro potenci metro fixo POT FIXED que se pretende n o regul vel pelo utilizador e de um segundo extens metro extens metro espelho EXT MIRR igual ao aplicado para medi o para compensar eventuais desvios introduzidos aos primeiros 4 3 2 RESULTADOS EXPERIMENTAIS Utilizou se a estrutura do p indicada na Fig 4 7 com os seus quatro sensores ligados a circuitos de acondicionamento de sinal usando o circuito da Fig 4 9 Por sua vez as suas sa das est o ligadas
50. original PC Master e Data 1 4 dados sensoriais no caso de um pedido de consulta sensorial e BCC Valida o da mensagem byte 1 byte 2 byte 3 byte 4 byte 5 byte 6 byte 7 OpCode Formato geral de uma mensagem de resposta Master PC Esta estrutura geral e pode assumir v rias formas de acordo com a opera o envolvida gt No caso de uma opera o de actua o os bytes 2 5 possuem o mesmo valor que a mensagem original com o sexto byte nulo gt Numa leitura sensorial o byte OpCode igual da mensagem original com os bytes Data 1 4 contendo a informa o sensorial pedida Se os dados sensoriais concernem aos servomotores tr s bytes s o utilizados para conter a informa o relativa a cada um deles e o ltimo utilizado para transmitir informa o de status do SCU em causa Se concernem aos sensores adicionais s o utilizados todos os quatro bytes para conter a informa o de um dos conjuntos dos sensores sensores de for a de um p inclin metros ou girosc pios O formato das mensagens de resposta descrito apresentado a seguir significa que o byte o mesmo do da mensagem de solicita o byte 1 byte 2 byte 3 byte 4 byte 5 byte 6 byte 7 so o0 l ls l No B Mensagem de actua o aplicada com sucesso byte 1 byte 2 byte 3 byte 4 byte 5 byte 6 byte 7 SOF OD Jomi Joim2 soms smust Bcc Mensagem de leitura sensorial das juntas servomotores byte 1 byte
51. per odo com a resposta no que respeita ao erro de seguimento de traject ria e tempo de estabelecimento Concluiu se assim que aumentando o ganho de compensa o o erro tende a diminuir bem como o tempo de estabelecimento mas desde que dentro de certos limites de modo a evitar instabilidade De igual forma o per odo da traject ria tamb m contribui para a diminui o do erro recomendando se por isso a aplica o de traject rias com um per odo superior ou igual a quatro segundos para a minimiza o do sinal de erro Em seguida realizaram se v rios tipos de traject rias multi volta nomeadamente rectil neas el pticas e rectangulares As traject rias rectil neas permitiram observar a Interfer ncia que o movimento em cada eixo introduz no eixo perpendicular mais concretamente oscila es de car cter n o desprez vel e relacion veis com o movimento aplicado no primeiro eixo concluindo desta forma que as traject rias aplicadas em cada eixo nao s o independentes entre si Verificou se a susceptibilidade ao ru do que a componente yy apresenta devido ao atribu do aumento de sensibilidade no c lculo do centro de press o no mesmo eixo offset subtra do sa da dos sensores de for a segundo a sec o 4 4 2 Finalmente com as traject rias el pticas e rectangulares pudemos conhecer a limita o que os factores f sicos inerentes estrutura dos p s introduzem no cumprimento das traject rias solicitadas Verificou se que
52. piggy back est o descritos nos campos Special apenas podendo fazer parte apenas de uma das seguintes classes m Sensores de for a de um dos p s 4 sensores m Inclin metros e ou Girosc pios 2 2 valores No entanto indiferente de onde prov m estes dados dado que a unidade principal PC conhece priori o g nero de sensores especiais conectados a cada unidade slave O byte sensor flags puramente redundante dado que a informa o que cont m tamb m transportado no identificador do pacote e poder ser usado no futuro para conter mais dados sensoriais bit 7 6 J 4 3 2 l bit O Source Address Index 0 0 0 Byte Sensor Flags Source Address Endere o do slave remetente ndice do pacote na mensagem de dados Tabela 7 Campos do byte Sensor Flags J o byte slave status cont m flags indicadoras do estado de funcionamento da unidade slave informando se a unidade finalizou o movimento relativamente a cada uma das juntas FinServo i se pelo menos uma junta finalizou FinOne e se todas as juntas finalizaram FinAll PWM inidca se o PWM est activo em todos os tr s servomotores e a flag deadline apenas se destina para efeitos de debugging Estas informa es s o bastante teis para a unidade principal gestora dos algoritmos de locomo o servindo como marca es indicando se o movimento terminou para dar in cio a novas traject rias bit 7 6 bit O 5 4 3 2 1 PWM Deadline FinAll FinOne
53. resposta s 4 N o vari veis de sa da Informar o utilizador da causa Ocorreu erro do erro Fig 2 5 Algoritmo b sico da fun o sendmessage 14 Valida o da mensagem de transmiss o y Concatena o do Byte BCC Designar c digo de Erro HRetransmissoes gt 10 Enviar Mensagem de transmissao v Recep o do byte SOF pertencente a resposta y Recep o da restante mensagem de resposta y Valida o da mensagem de resposta Y Preparar mensagem de sa da da fun o Reset dos Buffers de comunica o Preparar string de erro v Reset dos Buffers de comunica o Fig 2 6 Algoritmo detalhado da fun o sendmessage Um pormenor interessante que se pode extrair da Fig 2 6 a diferencia o dos passos de leitura do byte SOF e da restante mensagem de resposta Observa es experimentais indicam que por vezes a mensagem de resposta n o se sincroniza com o envio do comando come ando a ocorrer deslocamentos o primeiro byte recebido n o corresponde ao primeiro byte da mensagem de resposta mas sim a um byte interm dio da resposta interior Para evitar este tipo de problemas pesquisa se durante algum tempo pelo byte SOF de valor superior a MESSAGE INVALID OxFB e s depois de recebido l se a restante mensagem 15 2 2 4 UNI
54. sensoriais recorrendo a apenas duas mensagens para cada instancia o 16 bytes O protocolo enunciado a seguir bit 10 9 8 7 6 5 4 3 2 1 bit O Source address Destination address Index Operation Identificador de um pacote CAN Source Address Endere o do n emissor da mensagem Destination Address Endere o do n destinat rio da mensagem Index ndice do pacote dentro de uma mensagem gt 0 primeiro pacote gt 1 segundo pacote Operation Opera o associada mensagem gt 0b00 actualiza o sensorial gt 0b01 actualiza o de actuadores Tabela 6 Campos do identificador de um pacote CAN De notar que do ponto de vista das unidades Slave apenas o campo destination address til para a recep o de cada pacote pois ele quem define o seu destino J o campo source address est presente nos bits mais significativos com o prop sito de definir a prioridade do pacote de acordo com endere o do remetente Desta forma mensagens enviadas pelo master possuem a m xima prioridade e dentro dos slaves os dos membros inferiores possuem maior prioridade de envio ver Tabela 6 Como cada transac o constitu da por duas mensagens o campo index identifica a sua ordem e o campo operation refere a fun o dos dados transportados sensing actua o Transac o Master Slave As mensagens trocadas do master para slaves t m como fun o a actualiza o dos actuadores das juntas a que dizem respe
55. servo e da junta Nas juntas dos p s e dos joelhos utilizaram se rela es de transmiss o de 2 1 e de 2 2 1 assegurando um bin rio m ximo de 5 3 N m assumindo como 2 42 o bin rio m ximo do servomotor Nas juntas das ancas aumentou se a margem para 1 3 75 dada a sua exigente natureza m ximo de 9 1 N m Motor Junta Ti N m 0 gt T gt N m O3 Ts Nem 0 0 7 1 Pe 1 lateral 7 1 0 96 P 1 frente 47 10 1 0 04 Joelho 1 10 1 21 8 1 01 Anca 1 frente 5 4 11 7 0 14 Anca 1 lateral 0 0 7 1 2 55 P 2 lateral 0 0 7 1 0 00 Pe 2 frente 47 16 4 0 12 Joelho 2 41 9 0 30 Anca 2 frente 5 4 25 6 0 14 Anca 2 lateral 0 0 7 1 0 29 Tabela 12 Bin rios exigidos na simula o de um passo Estes dispositivos podem ser adquiridos no site http www maxxprod com 36 _ N dentes da polia da junta N de dentes do eixo do servo T N T Max Servo Fig 3 7 Correia de transmiss o aplicada a um servo Olhando para o interior do servo na tentativa de perceber melhor a sua electr nica interna a Fig 3 8 apresenta o circuito de controlo de um servo semelhante aos da HITEC o FUTABA S3003 cujo sinal de PWM input pulse apresenta as mesmas especifica es que as descritas na Tabela 11 Estes dispositivos utilizam como feedback tanto o sinal de posi o como de velocidade que al m de fornecer um controlo preciso de posi o permite estabiliz lo de modo a conduzi lo para a posi o desejada com o m n
56. servos a resposta das juntas mais exigentes juntas do p apresentam um comportamento com um apreci vel tempo de atraso e de erro em regime estacion rio que deveras melhorado com a introdu o da compensa o PI externa Demonstra se assim com estes dados as vantagens da implementa o do controlador 3 6 DISCUSS O DOS RESULTADOS Este cap tulo teve como objecto de estudo os servomotores utilizados para actua o Como s o dispositivos relativamente pequenos e baratos que j oferecem controlo de posi o foram escolhidos dada a sua simplicidade de interface com um microcontrolador podem se ligar directamente podendo controlar a sua posi o simplesmente atrav s de um sinal digital de PWM cuja largura de pulso define a posi o do servo Os modelos da HITEC nomeadamente o modelo HS 805BB para as juntas de grande esfor o foram escolhidos dado o seu elevado bin rio 2 42 Nim 6V comparativamente a outras marcas No entanto cedo nos apercebemos que estes dispositivos n o s o perfeitos n o oferendo qualquer tipo de controlo de velocidade simplesmente se deslocam para a posi o final sua velocidade m xima algo nada favor vel quando pretendemos controlar a posi o e a velocidade das juntas para que realizem movimentos suaves de velocidade limitada Contudo pela aplica o de um conjunto crescente ou decrescente de pequenos degraus de posi o em forma de rampa conseguimos implementar uma esp cie d
57. sinais anal gicos usando um multiplexer Fig 2 2 A organiza o enunciada tem como objectivo o controlo distribu do de sec es distintas da plataforma human ide agrupando para cada unidade as juntas que est o directamente relacionadas Um exemplo o caso das juntas do tornozelo e do joelho que possuem um controlador dedicado que por aquisi o dos sinais anal gicos dos sensores de for a instalados nos p s pode controlar o equil brio da perna associada atrav s de m todos de compensa o em malha fechada actuando sobre os respectivos actuadores Desta forma obt m se um controlo localizado independente do resto do sistema sem que haja necessidade permanente de interagir com a unidade central de controlo Os sinais anal gicos adquiridos actualmente podem ser de quatro origens diferentes e Potenci metros internos aos servomotores indicativos da sua posi o e Extens metros presentes na base de cada p para medi o da for a aplicada para posterior c lculo do Centro de Press o exercido e Aceler metros inclin metros que pela medi o da acelera o da gravidade em duas componentes ortogonais medem a inclina o do objecto onde se encontram localizadas e Girosc pios para medi o da velocidade angular para compensa o das for as din micas exercidas sobre o robot Estes valores s o convertidos e registados localmente em cada unidade slave sendo depois enviados via CAN para o controlador Maste
58. sistema termine a traject ria Execu o de uma nova traject ria para o CoP Inicial Esperar que o sistema termine a traject ria Repetir os passos 4 a 7 mais nove vezes e RA A a No final inicializar os ganhos de compensa o e desligar os controladores bem como os sinais de PWM 110 Ao longo da execu o das traject rias os sensores de press o e as posi es angulares dos servomotores s o registados para um ficheiro para posterior an lise De modo a fazer uma compara o v lida com as traject rias previstas foram tamb m registados os Instantes de tempo Inicial e final de cada trajecto de modo a que aquando da compara o os polin mios de quinta ordem previstos sejam mapeados no tempo de forma correcta Finalmente os resultados foram dispostos de forma a analisar o CoP medido e a correspondente cinem tica directa do joelho e da anca ao longo do tempo comparando os valores esperados com os registados As traject rias aplicadas obdeceram s seguintes condi es de funcionamento e Controlador de equil brio activado e com ganho de compensa o igual a 50 e Controlador local PID desactivado e Per odo das traject rias igual a 2 segundos A Fig 4 44 e a Fig 4 45 visualizam o resultado da execu o de uma traject ria rectil nea ao longo dos eixos xy repetida dez vezes CoP 30 60 10 at 30 40 10 Pela Fig 4 44 referente ao percurso pelo eixo xx pode se observar que o sinal de erro mant
59. valor final e o valor desejado ap s estabiliza o da resposta Estas defini es correspondem a caracter sticas da curva de resposta do sistema a testar e normalmente s o usados para avaliar a sua performance Fig 3 23 No caso de um actuador 1deal todos estas caracter sticas deviam ser nulas mas infelizmente tal n o existe na realidade os sistemas levam tempo a reagir e a atingir o seu valor final e por vezes podem entrar em oscila o overshoot quando a entrada demasiado exigente Este cap tulo procurar perceber o quanto os servomotores se desviam da resposta ideal e posteriormente tentaremos encontrar solu es para a sua melhoria 47 System Gt Peak amplitude 1 62 14 Overshoot 9 61 5 At time secs 1 69 Step Response 43 System Gt l Settling Time sec 10 7 ee ee eee eee E ii O L TT 7 m u OS e mm T ee e e _ e e em am n rT E mf System Gt E 0 5 p System Gt Final Value 1 tl Rise Time sec 0 586 neto OFT yy 0 2 l 0 0 5 10 15 Time 260 Fig 3 23 Exemplo da resposta de um sistema por compensar com a indica o das suas caracter sticas 3 3 1 RESPOSTA AO DEGRAU EM MALHA ABERTA Com uma carga aplicada no eixo de acordo com a Fig 3 10 inicializou se o servo na posi o inicial de 45 e enviou se um comando de actua o para a posi o de 45 um degrau aplicado Monitorizou se o percurso percorrido atrav s do
60. velocidades as for as inerciais podem ser desprezadas s entrando em linha de conta a for a gravitacional da estrutura que cada p suporta Como esta for a est relacionada com o centro de massa podemos dizer que para baixas velocidades o centro de press o corresponde projec o do centro de massa da estrutura sobre cada p No caso de uma s perna diz se que o centro de press o corresponde ao ponto geom trico localizado na base do p que corresponde projec o do centro de massa da perna oh Fig 4 17 Projec o do centro de massa sobre o p na situa o de equil brio C6P CoP CoP A Fig 4 17 representa a projec o do centro de massa sobre um p no caso de equil brio de apenas uma perna Quando a perna se encontra na posi o vertical o seu centro de massa projectado sobre o centro geom trico da base do p ou seja nas coordenadas x y 0 0 4 4 2 C LCULO DO CENTRO DE PRESS O Como ja foi evidenciado o centro de press o dado em coordenadas cartesianas bidimensionais x y segundo o plano do p Contudo considerando a hip tese da utiliza o de baixas velocidades n o podemos determinar este par metro de uma forma anal tica com base no c lculo do centro de massa uma vez que este m todo implica a utiliza o de matem tica bastante pesada para um microcontrolador Como alternativa podemos medir experimentalmente esta grandeza utilizando as for as de reac o obtidas a partir
61. 2 byte 3 byte 4 byte 5 byte 6 byte 7 SOF 0D Daai Daa Daas Daag Bcc Mensagem de leitura dos sensores especiais Repare que na leitura sensorial das juntas na mesma mensagem transportado os valores dos tr s servos No entanto apenas um par metro pode ser lido posi o velocidade m dia ou corrente Quanto leitura dos sensores adicionais note tamb m a limita o de quatro valores da a limita o imposta anteriormente de apenas usar quatro linhas anal gicas dedicadas a este g nero de sensores ou o conjunto dos sensores de for a ou inclin metros ou girosc pios No entanto podem ocorrer situa es an malas na recep o do comando por parte do Master podendo se discernir duas situa es poss veis gt Mensagem de pedido inv lido os par metros solicitados pelo PC n o fazem sentido ex SCU alvo n o existente Neste caso uma mensagem de SOF de c digo MESSAGE_INVREQ OxFC invalid request com todos os restantes bytes iguais da mensagem original retornada ao PC gt Mensagem corrompida o c digo BCC n o est de acordo com a estrutura da mensagem Neste caso uma mensagem de SOF igual a MESSAGE INVALID OxFB retornado com os restantes bytes iguais da mensagem recebida byte 1 byte 2 byte 3 byte 4 byte 5 byte 6 byte 7 swore l l l Sd ls Mensagem sinalizadora de um pedido inv lido byte 1 byte 2 byte 3 byte 4 byte 5 byte 6 byte 7 s ce Me
62. AN Antes de colocar o PIC a processar mensagens via CAN necess rio antes de mais colocar o PIC em modo de configura o e definir os seus par metros Apenas depois deste passo coloca se o PIC no modo de opera o normal Baudrate Todos os n s na rede CAN devem ter o mesmo bitrate nominal n mero de bits transmitidos por segundo sem no entanto ser necess rio que todos os n s tenham a mesma frequ ncia de oscila o No entanto necess rio o cuidado em programar o baudrate prescaler e o n mero de time quanta explicado adiante em cada segmento de bit de modo a manter o bitrate nominal O bitrate m ximo depende da qualidade do transmissor e do oscilador e da presen a de ressincroniza es mas poder atingir o valor m ximo de 1 Mbps numa situa o ideal 24 Bit value 0 Bit value 1 jo t Fig 2 13 Codifica o NRZ Dado que a transmiss o utiliza codifica o NRZ non return to zero Fig 2 13 e que os osciladores e transmissores podem variar de n para n necess rio introduzir bit stuffing para possibilitar a extrac o de rel gio para efeitos de sincroniza o Tal feito de modo a garantir uma altern ncia de bit pelo menos de 6 em 6 bits Uma unidade denominada por DPLL utilizada para a sincroniza o dos dados recebidos e para garantir o bitrate nominal nos dados transmitidos Fun es de bus timing executadas dentro de cada bit frame como a sincroniza o com o oscilador local com
63. BRE Universidade de Aveiro Departamento de Electr nica Telecomunica es e 2008 Inform tica Milton Ruas da Silva Sistemas de Comunica o e Controlo para uma Plataforma Human ide BRE Universidade de Aveiro Departamento de Electr nica Telecomunica es e JJ 2008 Inform tica Milton Ruas da Silva Sistemas de Comunica o e Controlo para uma Plataforma Human ide disserta o apresentada Universidade de Aveiro para cumprimento dos requisitos necess rios obten o do grau de Mestre em Engenharia Electr nica e Telecomunica es realizada sob a orienta o cient fica do Dr Filipe Miguel Teixeira Pereira da Silva Professor Auxiliar Convidado do Departamento de Electr nica Telecomunica es e Inform tica da Universidade de Aveiro e do Dr V tor Manuel Ferreira dos Santos Professor Associado do Departamento de Engenharia Mec nica da Universidade de Aveiro o juri presidente vogais Doutor Jos Fernando da Rocha Pereira Professor Associado da Universidade de Aveiro Doutor Jos Ant nio Tenreiro Machado Professor Coordenador do Instituto Superior de Engenharia do Porto do Instituto Polit cnico do Porto Doutor Vitor Manuel Ferreira dos Santos Professor Associado da Universidade de Aveiro Doutor Filipe Miguel Teixeira Pereira da Silva Professor Auxiliar Convidado da Universidade de Aveiro agradecimentos Agrade o aos meus orientadores Filipe Silva e V tor Santos por todo o apoio e pac
64. CAN quando o m dulo RS 232 da unidade Master removido Sugere se por isso a adi o de uma resist ncia na entrada s rie RX de forma a evitar a ocupa o total da largura de banda de CPU pelo m dulo de comunica o RS 232 que sendo de alta prioridade impediria o normal funcionamento do m dulo CAN Relativamente ao sistema de controlo deu se nfase implementa o do sistema de controlo de baixo n vel e avalia o de leis de controlo que usam a informa o da for a de interac o entre o p e o solo Por um lado o controlo local nas juntas apresenta resultados bastante satisfat rios permitindo o controlo de posi o e velocidade Por outro lado no que respeita aos sensores de for a foram implementados controladores que asseguram o equil brio de uma perna do robot quando colocada num plano de inclina o vari vel Para al m disso foi avaliada a possibilidade de utiliza o deste controlador na realiza o de movimentos pela varia o das refer ncias Apesar dos resultados serem promissores observam se problemas de calibra es por parte dos sensores de for a bem como uma grande sensibilidade a interfer ncias externas V rias causas foram apontadas em detalhe bem como poss veis solu es para melhoria do funcionamento do controlador de equil brio pelo que se espera que uma vez seguidas melhorem o desempenho e a estabilidade dos algoritmos de controlo implementados Apesar de algumas dificuldades no que resp
65. DADE DISTRIBUIDORA MASTER Configura o da unidade Master Para configurar a unidade microcontroladora a operar com a linha RS 232 necess rio efectuar um conjunto de passos que se passam a enunciar l dis 3 4 5 Configura o dos pinos I O como entrada e sa da referentes recep o RX e transmiss o TX de dados respectivamente Defini o do baudrate como 115200 bps Defini o das restantes configura es como a aus ncia de paridade apenas um stop bit e a utiliza o de 8 bits para o campo de dados Activa o do perif rico UART Deini o das interrup es associadas Algoritmos de Comunica o As Fig 2 7 e Fig 2 8 apresentam os algoritmos para troca de informa o entre o master e a unidade principal Erro na recep o do caracter Limpar estado de Erro RETURN Armazenamento no Buffer de Recep o Frame completa RETURN Processamento da Mensagem Limpar buffer de recep o Enviar Buffer de Transmiss o Limpar Buffer de Transmiss o RETURN Fig 2 7 Algoritmo de gest o das comunica es RS 232 na unidade Master 16 7 Pela Fig 2 7 podemos observar que o tratamento das mensagens executado byte a byte a partir de interrup es de recep o pela linha s rie com a utiliza o de buffers implementados em software para armazenar a mensage
66. E el o PWM for A el tat penca actuation E Nee Wye ea Pepe 5V perto PRA slrel PEPEREEERE Interrupt for PWM High frequency interrupts for rise up Timer 1 PWM fall down Timer 2 gt Ji ppa a a pi 1 to 2 ms Fig 3 13 Organiza o temporal das interrup es na gera o do PWM A Fig 3 13 ilustra bastante bem este processo A cada servomotor atribu do uma vari vel indicadora da largura de impulso a aplicar que basicamente o n mero de itera es a aplicar durante as interrup es de alta frequ ncia a manter o sinal a 1 Ap s a primeira interrup o um contador utilizado para contagem das itera es que v o decorrendo entre o per odo de 1 a 2 ms e em cada uma delas comparado com a vari vel atribu da a cada servomotor da dura o do impulso Quando o contador for igual a essa vari vel o sinal de PWM correspondente baixado a 0 3 2 5 LEITURA SENSORIAL DO SERVOMOTOR Embora por defeito os servomotores n o disponibilizem externamente os sinais de posi o e de velocidade para feedback poss vel extrair o sinal de posi o dado o f cil acesso ao potenci metro interno Este potenci metro encontra se solid rio com o eixo do motor e por isso a medi o da sua resist ncia resulta consequentemente na medi o da posi o angular do motor Desta forma abriram se todos os servomotores e adicionou se um fio ligado ao terminal do potenci metro indicador da posi o angular do eixo F
67. JW Para o nosso caso de forma a conseguir a m xima velocidade definimos definiram se os seguintes par metros gt Segmento de sincroniza o Tg n o configur vel Segmento de propaga o 3 To Segmento de fase 1 3 To Segmento de fase 2 3 To SJW 2 To VN NV V Com base nestes par metros e de modo a conseguir a m xima velocidade de F 1Mbps o baudrate a definir no registo BRP ser de 1 25 1 com No Sync Propag Phase Phase po 2 Fov _ 2 10 MHZ _ 1 Mbps BRP D N 1 1 10 M scaras e Filtros Os filtros s o utilizados para automatizar o processo de aceita o de mensagens No caso das mensagens de actua o apenas se destinam a um SCU particular n o possuindo qualquer interesse para os restantes Desta forma na perspectiva de cada SCU apenas algumas das muitas mensagens que passam pelo seu porto de entrada devem ser processadas pelo que se a verifica o do endere o destino fosse feita por software a largura de banda de CPU atribu da a este processo seria tanto mais pesada quanto maior fosse o n mero de unidades slave na rede De modo a automatizar o processo de aceita o uma m scara pode ser utilizada para indicar quais os bits do identificador que cont m o padr o de interesse para a unidade em quest o como por exemplo o endere o destino e filtros podem ser utilizados para fazer a selec o dos padr es e redireccionar para determinados buffers Desta forma apenas
68. Slave 3 Anca direita 0b0011 Slave 4 Anca esquerda 0b0100 Slave 5 Tronco 0b0101 Slave 6 Bra o direito 0b0110 Slave 7 Bra o esquerdo 0b0111 Slave 8 Cabe a 0b1000 Tabela 5 Endere os atribu dos s diversas unidades de controlo Outro benef cio da comunica o baseada na mensagem o facto de se poderem adicionar outros n s rede sem haver necessidade de reprogramar todos os n s existentes O novo n adicionado receber igualmente as mensagens que circulam na rede decidindo por si s se deve ou n o processar a informa o nela contida Esta foi uma das principais raz es que motivaram a escolha do CAN permitindo desta forma que a rede possa ser modificada sem qualquer implica o ao n vel do controlo local No microcontrolador em causa utilizada a vers o fullCAN 2 04 cujas caracter sticas principais s o m Mensagens com um identificador de 11 bits e um maximo de 8 bytes de dados m Filtragem completa do conte do do identificador todos os bits do identificador podem ser utilizados para configura o da filtragem m Associa o do identificador a buffers de dados M ltiplos buffers de transmiss o recep o 3 de transmiss o e 2 de recep o m Processamento e recupera o autom tico de erros 21 2 3 1 PROTOCOLO CAN De acordo com os dados a trocar entre o Master e cada Slave e utilizando todos os 8 bytes de dados em cada mensagem poss vel efectuar trocas de informa o quer de actua o quer
69. a o no sentido de dotar os sistemas de locomo o b pede com maior robustez e versatilidade de opera o 18 19 Tendo em conta os objectivos tra ados inicialmente pretende se explorar a import ncia e as possibilidades que resultam da utiliza o de informa o de for a para executar duas tarefas elementares Em primeiro lugar pretende se desenvolver um controlador que assegure o equil brio de uma perna assente num plano de inclina o vari vel A estrat gia proposta segue o comportamento do corpo humano que pela sensa o das for as aplicadas sobre os p s procura o equil brio do corpo pelo movimento das juntas das pernas e do tronco Em segundo lugar ser o avaliadas as possibilidades de realiza o de movimentos simples com uma perna tendo por base um conjunto m nimo de vari veis de refer ncia O m todo de controlo proposto baseado na medi o da informa o de v rios sensores de for a localizados na base de cada p que permitem determinar o ponto onde se localiza o centro de press o Para baixas velocidades este valor dever coincidir com a projec o do centro de massa da estrutura sobre os p s Ao longo deste trabalho foram estudados dois tipos de controladores o primeiro baseado numa abordagem bastante simplista seguindo uma lei proporcional e o segundo um tanto mais complexo que procura relacionar com mais precis o as for as aplicadas sobre cada p com a velocidade angular a aplicar nas juntas usand
70. a Fig 4 36 e Fig 4 37 Como se pode comprovar o comportamento muito semelhante ao observado na experi ncia anterior CoP medido CoP medido CoP medido fy YS CoP ref x 40 T bJ um 1 0 5 0 0 5 1 CoP refer nc a CoP medido fy YS CoP ref v 0 CoP refer nc a Fig 4 36 Rela o entre o CoP medido e o actuado para 32 passos ao longo do eixo yy Coordenada x YS CoP ref x Coordenada y YS CoP ref x Posi o cm Posi o cm 1 0 5 0 0 5 1 1 0 5 0 0 5 1 CoP actuado CoP actuado Coordenada x YS CoP ref y Coordenada y YS CoP ref y EO cl eee epee reer ce o am a E Dp df non Oe ee ee eee oo 0 5 30 20 10 0 10 20 J 40 10 0 10 CoP actuado CoP actuado Fig 4 37 Rela o entre o CoP medido e a cinem tica directa do joelho e da anca ao longo do eixo yy Varia o do CoP no eixo xy Efectuando agora 25 passos ao longo da diagonal entre os eixos xx e yy CoP 25 25 0 25 25 0 amostraram se os dados apresentados na Fig 4 38 e Fig 4 39 CoP medido x YS CoP ref x CoP medido fy YS CoP ref x a o a a T T E E mE mE o o oO ES 20 10 0 10 20 CoP refer ncia CoP refer ncia CoP medido x YS CoP ref y CoP medido fy YS CoP ref y o o a a T T E E mE mE mm mm oO oO 30 20 10 0 10 20 30 30 20 10 0 10 20 30 CoP refer ncia CoP refer ncia Fig 4 38 Rela o entre o CoP medido e
71. a Fig 4 50 segundo a perspectiva 3D e usando o eixo zz como refer ncia respectivamente Fig 4 49 Cinem tica directa do joelho e da anca vista 3D 114 Fig 4 50 Cinem tica directa do joelho e da anca vista 2D de cima De facto a traject ria real do centro de press o afasta se da elipse projectada no canto inferior direito Tal anomalia pode se dever a diversos factores sobretudo f sicos tais como a excessiva sensibilidade do respectivo sensor de for a podendo ser causada pelo pr prio sensor ou pela placa de acr lico subjacente com um n vel de rigidez inferior ao normal o que minimiza a necessidade da estrutura se deslocar para a direc o negativa do eixo yy 4 6 6 EXECU O DE TRAJECT RIAS RECTANGULARES Experimentando agora o formato rectangular definiram se quatro pontos de refer ncia do centro de press o correspondentes aos quatro v rtices e aplicaram se sucessivamente em instantes de tempo peri dicos at completarem 10 voltas A Fig 4 51 apresenta a execu o de 10 trajectos rectangulares cujas arestas s o compostas por traject rias polinomiais de quinta ordem com um per odo de execu o de 4 segundos A visualiza o do tipo espacial podendo observar o trajecto do CoP esperado a preto o CoP medido pontos a azul e a cinem tica directa do joelho verde e da anca vermelho vista do eixo zz Os diferentes gr ficos da Fig 4 51 mostram o efeito do controlador local variando os seus
72. a de dar a volta a esta quest o corresponde em actualizar em tempo real o valor dos par metros de compensa o de modo a adaptar o controlador a cada situa o espec fica Foi pensando nesta quest o que se decidiu que a compensa o via firmware seria a melhor op o uma vez que muito f cil mudar os par metros de controlo sem Interven es a n vel de hardware como acontecia se o controlador estivesse implementado fisicamente De modo a evitar a recompila o do c digo na modifica o destes valores os par metros de controlo s o passados a cada slave via barramento CAN sendo a unidade principal o PC a respons vel por atribuir os valores de compensa o mais apropriados a cada ac o No entanto outro problema surge como que se detectam as situa es mais ou menos exigentes em cada junta e caso consigamos detect las que lei de controlo seguir o os par metros de compensa o Para j tentaremos responder primeira quest o Muito embora no teste de um s servo haja uma rela o estreita entre bin rio aplicado e posi o tal deixa de acontecer na presen a de v rias juntas que se interligam em s rie por meio de elos como o que acontece em cada perna Al m disso a velocidade da junta tamb m afecta o bin rio pelo que preciso discernir cada uma destas fontes Uma das formas de estima o do bin rio aplicado baseia se na medi o da corrente consumida por cada servo quanto maior for o bin rio aplic
73. a directa dh ag 7 thy thy Ca s 1 dh h L L L c L aa ag a a aths 2 oh Fy a B33 G 3 E fazendo com que CO Les L4G SS Ly s Ly Sp a ae Ent o o Jacobiano transposto relativo altura da anca dado pela seguinte matriz A partir deste Jacobiano a compensa o angular das juntas devida ao erro de altura ser dada por ag fo o Ifo o N fo a k F xe gt laa l lo 0 k llo 0 Jo no lo o kllo 0 Jill le AO k J E AO J Eh AO Sa or Ep 90 Lei de Controlo Integrada Integrando as matrizes Jacobiano relativa ao centro de press o e a altura da anca obtemos as seguintes equa es de controlo definitivas AO Ki Ky kz Jii Ja Ja E CoPx 12 22 8 Jiz Ja Jz x Ecopy o 13 23 33 Jg So Ad Kay Ju cop tKa S01 Ccopy Ka da En AD Kip Sp copy Roo Inn copy Rap e AO ke Sz Caor Ros S03 Ecopy 33 433 Estas tr s equa es constituem assim a lei de controlo do centro de press o e da altura com base nos respectivos sinais de erro O erro do centro de press o calculado a partir dos sensores de for a pela compara o entre o CoP desejado CoP e o medido CoP ec p CoP Cop J o erro de altura calculado pela compara o entre a altura desejada h e a estimada atrav s da cinem tica directa das juntas h e h zh h L b Lc L 6a Por quest es de simplicidade definiu se kj kz k considere
74. a nula postura vertical mas para pontos mais distantes perna com maior inclina o a curva arqueia assemelhando se fun o arco seno Tal comportamento deve se gravidade que atribui uma maior in rcia ao movimento nos pontos mais inclinados A componente yy apresenta igualmente flutua es desprez veis tal como o esperado CoP medido x YS CoP ref x CoP medido fy YS CoP ref x a o a a T T E E mE mE o o oO oO 10 0 JM 30 20 w to 20 30 CoP refer ncia CoP refer ncia CoP medido x YS CoP ref y CoP medido fy YS CoP ref y o a a a T T E E mE mE mm o ES oO 4 05 0 5 1 CoP refer ncia CoP refer ncia Fig 4 34 Rela o entre o CoP medido e o actuado para 30 passos ao longo do eixo xx 108 Posi o cm Coordenada x YS CoP ref x 0 CoP actuado Coordenada x VS CoP ref y 0 5 0 CoP actuado 0 5 Coordenada y YS CoP ref x 30 CoP actuado Coordenada VS CoP ref y 1 0 5 0 0 5 1 CoP actuado Fig 4 35 Rela o entre o CoP medido e a cinem tica directa do joelho e da anca ao longo do eixo xx Varia o do CoP no Eixo yy Efectuando a mesma experi ncia CoP medido CoP medido mas CoP madido x YS CoP ref x 0 5 0 CoP refer ncia 05 CoP madido x YS CoP ref 4 10 0 10 CoP refer ncia agora realizando 32 passos ao longo do eixo yy CoP 0 30 0 0 34 0 obtiveram se os dados d
75. ado maior a corrente consumida pelo que a medi o desta grandeza pode ajudar na detec o de situa es de elevado ou baixo stress sobre as juntas Nesta fase considere se a implementa o destes algoritmos de controlo no microcontrolador conectado a tr s servomotores correspondentes s seguintes juntas de uma perna human ide Fig 3 54 gt Servo 1 junta do p de rota o dianteira gt Servo 2 junta do joelho gt Servo 3 junta da anca de rota o dianteira Foram executados v rios movimentos sendo apresentado neste cap tulo apenas o de flex o Fig 3 54 dada a sua relev ncia na realiza o de um passo As primeiras experi ncias foram realizadas sem carga e posteriormente foi adicionada uma carga de cerca de 2 kg no topo da perna Fig 3 55 Fig 3 54 Movimento de flex o de uma perna Fig 3 55 Carga de 2 kg utilizada no topo da perna 61 3 5 1 MOVIMENTO DE FLEX O EM MALHA ABERTA DE UMA PERNA Na aus ncia de carga Como se pode visualizar nas figuras seguintes Fig 3 56 Fig 3 57 e Fig 3 58 na aus ncia de carga o erro em regime estacion rio praticamente nulo praticamente sem a necessidade de praticar controlo externo Note se na natureza err tica da estima o da velocidade Tal deve se ao processo de medi o baseada na varia o de posi o que infelizmente introduz bastante erro Position trajectory degrees Mean velocity degrees UUmes Fig 3 56 Junta do p
76. aject rias em forma de rampa e de polin mio de terceira ordem usando como refer ncia as respostas em malha aberta para a sua avalia o Comecemos por utilizar a componente integral definindo os par metros Kp e Kp a zero Experimentando o valor de 0 08 para K para duas massas de elevado valor Fig 3 34 e Fig 3 35 pode se observar em ambos os casos a elimina o do erro em regime estacion rio No caso da Fig 3 35 a diferen a de dois graus devida ao efeito da banda morta presente na entrada do controlador Repare no sinal de sa da do controlador solicitando ao servo uma posi o mais elevada do que a desejada curva a rosa de modo a que ela seja cumprida na presen a da carga eliminando assim o erro em regime estacion rio Position degrees Position degrees Requested trajectory Open loop response Integral action K 0 08 Requested trajectory Open loop response Integral action K 0 08 0 1 2 3 4 5 time s time s Fig 3 34 Resposta rampa com uma carga de 675g Fig 3 35 Resposta rampa com uma carga de 1129g K 0 08 K 0 08 Aumentando o valor de K para 0 20 e realizando o trajecto de 45 para 45 com uma carga de 1129g Fig 3 36 e Fig 3 37 al m da aus ncia do erro em regime estacion rio o tempo de atraso da resposta 54 relativamente traject ria solicitada melhorado na presen a do controlador o que beneficia o tempo de estabelecimento
77. al PC Como se pretende testar um unico actuador ser necess ria uma unidade slave que liga ao PC segundo a rede de comunica es utilizada na plataforma human ide O servomotor por sua vez encontra se fixo num aparelho de fixa o para poder mover cargas de uma forma segura As cargas s o presas ao servo atrav s de um bra o de massa desprez vel e de 10 cm de comprimento que percorre a excurs o dos 180 desde a posi o vertical inferior at ao ponto vertical superior Esta op o muito til dado que nos permite estimar o valor do bin rio resultante da for a grav tica atrav s da seguinte f rmula T F Lcos0 M g L cosd em que M a massa da carga g a acelera o grav tica 9 81 m s L o comprimento do bra o 0 1m e 6 a posi o angular do bra o com 0 na posi o central perpendicular ao vector grav tico 90 no extremo superior e 90 no extremo inferior A partir dela sabemos que nos extremos o bin rio grav tico nulo e no ponto central bra o e Fg perpendiculares maximo Embora n o seja poss vel fazer controlo directo de velocidade poss vel a partir do controlo de posi o induzir uma determinada velocidade ao dispositivo Tal explicado na sec o seguinte 39 A Tabela 13 indica a lista de massas utilizadas durante os testes Embora as especifica es destes servos indiquem um bin rio m ximo de 2 42 N m na pr tica verificou se que este estava muito abaixo d
78. alquer uma das juntas devendo estes valores corresponder ao pior caso Infelizmente ficamos sempre a perder dado que os par metros n o s o os mais optimizados introduzindo atrasos adicionais que por vezes podem ser piores do que se o controlador estivesse desligado em malha aberta Efectuando ensaios sobre as pernas acab mos por verificar que as exig ncias em termos de bin rio s o bastante inferiores s testadas com o servo isolado com respostas de bastante qualidade mesmo em malha aberta Apenas a estrutura mec nica das pernas se revelou incapaz de executar movimentos com as cargas mais pesadas provocando folgas que embora algumas fossem ajust veis outras revelaram se sem solu o com a necessidade de substituir pe as Esperemos que no trabalho futuro que se segue estas contrariedades sejam levadas a s rio n o s no sentido de eliminar quaisquer folgas existentes como tamb m em aplicar novas t cnicas e materiais que atribuam robustez estrutura independentemente da solicita o imposta Outros aspectos que precisam de ser limados prendem se com a alimenta o dos actuadores e das unidades de controlo local Mesmo com o uso de duas baterias de elevado fornecimento de corrente em paralelo verifica se esporadicamente um aparente reset de alguns microcontroladores na medida que por vezes alguns servos deslocam se para a posi o original a alta velocidade Por outro lado muito embora o comportamento dos servomotores possam se
79. am executadas um conjunto de actividades que permitiram desenvolver uma compreens o aprofundada dos problemas desafios e compromissos inerentes ao trabalho e clarificar as possibilidades de aplica o pr tica keywords abstract Humanoid robotics control architecture CAN communications low level control task level control The field of humanoid robotics has been attracting the attention of a growing community both from the industry and academia The continuous progress in robotics technology opens up new possibilities for academic research on low cost and easy to design humanoids The main scope has been the development of humanoid platforms to carry out research on control navigation and perception Beyond the ultimate goal of applicability and validation of the platform the proposed work aimed the prosecution of ongoing developments covering the hardware components and the control issues that must be solved regarding the feasibility of upright biped walking The main scope of the work beneath this dissertation has been the design and implementation of a distributed architecture for a humanoid robot where centralized and local controls co exist and concur to provide a robust and versatile operation As the capabilities of the control system are at the core of the robot development a research task specifically addressed the communications system and the control issues One of the main issues is to investigate how centralised an
80. aplica o gr fica descrita atr s fazendo a actua o do CoP para v rios pontos espec ficos De igual forma realizada a leitura sensorial Actualiza o do CoP refer ncia Esperar que o controlador atinja o equil brio Esperar alguns segundos para assegurar a paragem dos servos Leitura dos dados sensoriais Voltar a 1 Reg e Os dados sensoriais lidos s o os seguintes e Sensores de for a para c lculo do centro de press o actual e Angulos das diversas juntas da perna para c lculo da cinem tica directa As direc es dos eixos cartesianos aplicados seguem a conven o da Fig 4 20 Varia o do CoP no eixo xx Efectuando 30 passos desde as coordenadas CoP 30 0 0 at CoP 30 0 0 obtiveram se os dados dos sensores de for a e da cinem tica directa do joelho e da anca apontados na Fig 4 34 e na Fig 4 35 Note que estas unidades por enquanto n o t m qualquer significado dependendo da sensibilidade dos sensores de for a bem como da estrutura da perna em teste Pela an lise Fig 4 34 coordenada x podemos concluir que o controlador de CoP est a funcionar regularmente cumprindo todos os pontos de refer ncia atribu dos J o CoP na componente y apresenta varia es desprez veis tal como esperado dado que o percurso do CoP refer ncia apenas feito no eixo xx No que respeita cinem tica directa as juntas do joelho e da anca apresentam percursos aproximadamente lineares perto da coordenad
81. apontada na Fig 2 7 a de ler a mensagem de solicita o presente no buffer de recep o e construir a mensagem de resposta de acordo com o protocolo enunciado na sec o 2 2 2 armazenando a posteriormente no buffer de transmiss o O seu algoritmo apresentado na Fig 2 10 sendo capaz de validar a integridade da mensagem por verifica o do byte BCC e construir as mensagens de resposta correspondentes a um comando de solicita o actua o ou leitura sensorial ou de teste das comunica es IN CIO Construir mensagem do 2 Byte BCC correcto tipo MESSAGE INVALID Mensagem de solicita o Construir mensagem de resposta solicita o Mensagem de Teste Construir mensagem de resposta ao teste Adicionar byte BCC mensagem de resposta y FIM Fig 2 10 Processamento de uma mensagem na unidade Master 18 Um melhoramento importante a conferir a estes algoritmos para evitar tempos mortos na largura de banda de CPU sugere se uma solu o baseada na transmiss o por interrup o que em vez da transmiss o dedicada a todos os bytes da mensagem de resposta o CPU s deve ser utilizado para a transmiss o de cada byte atrav s da notifica o por interrup o do envio do ltimo byte Desta forma o per odo de tempo entre a transmiss o de cada par de bytes pode ser utilizado para a execu o de outras tarefas como o caso do servi o s
82. ara 70 Fig 4 41 verifica se imediatamente uma diminui o dos tempos de estabelecimentos 3 segundos para a componente xx e 3 5 segundos para yy e o erro de tracking tamb m tende a ficar mais pequeno 30 unidades para xx e 58 unidades para yy 107 CoP CoP Previsto Medida KX Previsto Erro do CoP Erro do CoP KX Coordenadas Cartesianas cm Joelho Anca KX Fig 4 41 Resposta ao polin mio aplicado nos eixos xy com K 70 Conclui se assim que o aumento do ganho de compensa o do controlador de equil brio tende a melhorar o tempo de estabelecimento e o erro de tracking Contudo existe um limite para o qual o sistema come a a instabilizar observando se significativas vibra es Este fen meno come a a ser observado precisamente para o ltimo ganho testado K 70 pelo que poucas possibilidades se apresentam para melhorar o erro que em si ainda se apresenta um tanto longe para possuir valores satisfat rios Se em vez de manipular o ganho de compensa o variar a velocidade da traject ria ou por outras palavras o seu per odo poss vel que o erro possa ser melhorado A Fig 4 42 e a Fig 4 43 exploram esta possibilidade A Fig 4 42 apresenta o caso em que o per odo da traject ria foi reduzido para apenas Is duplicou se a velocidade As consequ ncias traduzem se numa varia o demasiado elevada para o sistema acompanhar e por isso os tempos de estabelecimento e os erros m ximo
83. ara a varia o do plano simultaneamente nos eixos xx e yy observando se deslocamentos simult neos por parte dos dois servomotores do p de modo a corrigir as varia es do CoP nas duas componentes espaciais Embora n o estejam presentes os resultados para o compensador com a matriz Jacobiana os resultados s o bastante semelhantes com a excep o da junta do joelho que participa tamb m no processo de compensa o Center of Pressure over the foot surface XX component perpendicular to foot YY component parallel to foot 0 5 CoP Cm gt so servo 0 AA D Serna 1 vy oo 2 0 E 50 0 5 10 15 20 25 30 time Mean current drained by each servomotor 30 servo 0 AA sewo 1 rr c 20 E 5 10 D oO p l 0 5 10 15 20 25 a0 time 5 Fig 4 27 Varia o do declive do plano na diagonal dos eixos xx e yy controlo proporcional 96 4 5 5 RESULTADOS EXPERIMENTAIS RESPOSTA A PERTURBA ES EXTERNAS A segunda experi ncia explora os efeitos da presen a de perturba es externas Entende se por perturba es externas as for as que n o s o aplicadas directamente sobre os p s mas que de forma indirecta s o sentidas pelos sensores de for a Um exemplo a aplica o de for as sobre uma perna ou sobre a estrutura da plataforma como toques ou empurr es em que inevitavelmente os sensores de for a detectar o estas anomalias e o controlador responder da mes
84. ara medi o da deforma o pelo seu valor hmico uma ponte de Wheatstone foi utilizada onde duas das resist ncias foram substitu das por extens metros A ponte permite medir uma diferen a de potencial aplicada nos seus extremos que varia com o valor resistivo De notar que os extens metros normalmente deformam se em cerca de 2 a 5 do seu valor estando assim limitados a medir pequenas deforma es pelo que se torna necess rio amplificar a sa da com o recurso a um amplificador de instrumenta o para acomodar este sinal ADC do microprocessador 4 2 2 O P COMO ELEMENTO SENSITIVO A FOR AS EXTERNAS A ideia essencial tornar cada p sens vel a for as externas de modo a poder determinar par metros como a inclina o do p ou a presen a de perturba es externas na perna de modo a accionar os mecanismos necess rios para compensar esses desvios Para tal utilizou se a estrutura do p desenhada no ano lectivo 2004 05 em que s o usados quatro sensores de for a um em cada extremidade do p A estrutura do p baseia se na presen a de duas plataformas paralelas entre si uma inferior que interage com o solo e uma superior que faz a liga o ao tornozelo Fig 4 3 Na plataforma inferior quatro aberturas em formato rectangular foram feitas uma em cada canto da plataforma que servem de apoio a pequenas pe as de igual formato mas de comprimento ligeiramente superior de modo a n o penetrar nas aberturas A Fig 4 4 exem
85. as mensagens cujos bits da sec o do identificador programado coincide com o padr o especificado s o aceites e carregados para os buffers de recep o gerando uma interrup o para o processamento posterior Filtro do bit n Valor do bit n Resultado 0 Rejeitado 1 Aceite 1 Rejeitado 1 Rejeitado 1 Aceite Tabela 8 Resultado da filtragem para cada bit Pela Tabela 8 podemos verificar que apenas os bits definidos a 1 pela m scara ser o considerados para filtragem Todos os outros ser o rejeitados priori Dos que s o considerados para filtragem s o comparados com um determinado padr o sendo apenas aceites os que coincidem com esse padr o Apenas as mensagens em que todos os bits do filtro s o aceites s o consideradas para processamento por parte do programador Para o PIC 18F258 poss vel utilizar todos os bits do identificador na m scara e filtragem e definir at dois padr es de filtragem para armazenamento imediato no primeiro buffer de recep o e at 4 padr es para armazenamento no segundo buffer Fig 2 15 RXM1 bho Acceptance Filter RXM2 Acceptance Mask Acceptance Filter RXMO RXF3 Acceptance Filter Acceptance Filter RXFO RXF4 Acceptance Filter RXF5 Acceptance Filter RXF1 Data and Data and Identifier Identifier Message Assembly Buffer Fig 2 15 Registos associados m scara e filtragem Identifier 26 Para o nosso caso em concreto de acord
86. assa inferior a 2000g e pode se observar que para cargas inferiores a este valor a recta estimada coincide praticamente nos pontos medidos com coeficientes de correla o muito pr ximos de 1 Veja se a Tabela 17 em que at os declives e as ordenadas na origem s o bastante pr ximos entre as v rias respostas Par metro da regress o Sensor Azul Sensor Verde Sensor Branco Sensor Castanho y mxx b 38 378 40 607 39 720 39 734 Ordenada na origem b 0 0648 0 0592 0 0621 0 0588 Coeficiente de correla o R 0 9999 0 9999 0 9999 0 9999 Tabela 17 Par metros das regress es lineares tra adas Para cargas superiores a este valor verifica se um pequeno desvio principalmente no caso dos sensores branco e castanho Este comportamento relaciona se pelo facto de at carga de 2000g as massas foram adicionadas de forma acumulativa e ap s este valor todas elas foram removidas para a coloca o da massa B o que provocou um retorno dos extens metros posi o original seguida de nova deforma o O facto de n o voltarmos a obter o mesmo comportamento linear sugere que ou a massa B n o estava devidamente centrada sobre o sensor dif cil dado o formato da bateria ou os sensores estavam no limite da zona el stica de funcionamento ou ent o o processo regress o deforma o alterou de alguma forma o comportamento inicial 17 130 Sensor Azul 120 Sensor Verde Sensor Branco 110 Sensor Castanho 100 H a a aes
87. atstone muito dif cil garantir que ap s algum tempo as sa das permane am constantes e iguais entre os quatro sensores Tal pode ser motivado por varia es de pr carga ou simplesmente pelo ru do presente no circuito de acondicionamento Para ultrapassar este problema incluiu se um segundo procedimento de calibra o em firmware que i NES a A RORE EA considera os valores iniciais como correspondendo posi o de equil brio da perna corpo A partir daqui todas as medi es consequentes s o feitas a partir dos valores originais pela adi o de um offset A calibra o segue o seguinte procedimento para cada um dos 4 sensores 1 Amostragem e armazenamento de 25 valores para cada sensor de for a 2 C lculo da m dia aritm tica dos 25 valores para cada sensor 3 Armazenamento do valor m dio de cada sensor valor original para correc o de futuras medi es No passo 1 a leitura dos sensores de for a realizada na forma pura ou seja sem a adi o de qualquer offset resultado efectivo da ADC e s depois do procedimento de calibra o introduzido o factor de correc o determinado pelo passo 3 Tal correc o baseada na seguinte express o Resultado Sensor u Sensor output riginal 3 Considera se como equil brio a situa o de perna corpo vertical o centro de press o assenta sobre o centro da base do p 78 De modo a atribuir ao Resultado um valor de 8 bits reduziu me a r
88. bidimensionais do centro de press o desejado s o introduzidas a mira que se observa controlada pelo rato que selecciona o ponto espacial desejado Al m disso tamb m poss vel controlar a altura desejada da anca para tal utiliza se o bot o direito do rato que far aparecer uma caixa de di logo para introduzir numericamente a altura a atribuir anca Fig 4 33 Esta aplica o e outras semelhantes ser o teis adiante para a an lise do comportamento est tico dos sensores de for a quando o centro de press o refer ncia alterado 101 Figure 1 File Edit View Insert Tools Desktop Window Help Dae S ASP SOB so Fig 4 32 Actua o sobre o Centro de Press o refer ncia Figure 1 File Edit View Insert Tools Desktop Window Help Debs RAM Se OE ao Altura da anca 20l Fig 4 33 Actua o sobre a altura desejada da anca 4 6 2 AN LISE EST TICA DO COP DE REFER NCIA A an lise est tica quando o CoP refer ncia alterado importante para verificar se o centro de press o medido corresponde ao actuado analisando assim se existe algum erro associado Tamb m pela compara o do CoP de refer ncia com a cinem tica directa das juntas do joelho e da anca poss vel obter uma rela o entre os valores actuados do CoP e as coordenadas reais das juntas permitindo assim controlar a posi o destas juntas em termos de coordenadas espaciais 102 As experi ncias realizadas a seguir utilizam a
89. bre as v rias unidades slave Tal procedimento permite que a troca de mensagens s rie opere m xima velocidade dado que n o necess rio comunicar com mais nenhuma unidade Quanto entrega efectiva de dados entre master e slaves da responsabilidade da comunica o CAN que garante que os par metros de actua o s o entregues s diversas unidades slave com um determinado ritmo peri dico bem como a actualiza o da base de dados com os dados sensoriais correctos para o Instante Dado que o per odo de PWM aplicado aos servomotores de 20ms 50 Hz e que apenas tem interesse actualizar os par metros de actua o e sensoriais uma vez dentro deste per odo para garantir alguma seguran a na actualiza o dos mesmos definiu se um per odo de troca de informa o master slave de 1 ms fazendo com que para 8 slaves ao fim de 8 ms todas unidades locais possuam os seus par metros locais actualizados Desta forma garante se que para cada per odo de PWM a base de dados global no master e a local em cada slave sejam actualizados duas vezes de modo a incluir alguma redund ncia no caso de falha espor dica na entrega de mensagens Estrutura sensorial Estrutura descritiva dos sensores typedef struct Deo eyspkaeus Estado do sistema Scrnctiservo cervo NESERVOS i l Sensores dos Servos nsigned char speciallN SPECIAL SENSORS Sensores de for a dos p s SCEuUCET_ Sensors pragma varlocate 1 sensors extern
90. ca A Controladora Indicador de Posi o Fig 3 4 Servomotor da HITEC Fig 3 5 Representa o do interior de um servomotor Olhando para o interior deste actuador Fig 3 5 podemos discernir os seguintes componentes Motor DC Caixa redutora Mecanismo de feedback da posi o angular do motor potenci metro Electr nica de controlo do motor a partir de um sinal digital Electr nica de controlo de posi o VUVVY Pode se por isso concluir que estes servos nao s o nada mais do que simples motores DC que incluem electr nica interna respons vel por implementar o controlo de posi o em malha fechada a partir de um sinal externo de refer ncia Este sinal externo define a posi o a ser atingida e definido atrav s de uma onda quadrada modulada em largura de impulso PWM Pulse Width Modulation cuja largura define a posi o final Desta forma a posi o do eixo do servo controlada a partir do duty cycle de uma onda quadrada de formato digital Fig 3 6 35 Spec Values Control system Pulse Width Control 1 5 ms neutral Voltage range 4 8V to 6 0V Teat voltage 4 8V 6 0V 1 2 ms 20 ms lt gt lt Speed no load 60 0 19s 60 0 14 s Stall torque 1 94 Nm 2 42 Nm Operating angle 45 one side pulse traveling 400us Direction clockwise pulse traveling 1 5 to 1 9 ms PWM Current drain 8mA idle 700mA no load running Dead bandwidth 8 us Fig
91. cecccceeeeeececeeecceeecsceseueeceueeseuseseueesaeeesueeseeeeseneess 84 Tabela 19 Leis de controlo utilizando a matriz Jacobiana de centro de massa e de altura 91 Tabela 20 Equa es de controlo para o compensador proporcional considerando o CoP de refer ncia nulo Tabela 21 Equa es de controlo para o compensador com o Jacobiano considerando o CoP desejado nulo beaters RR Do E acs E A ERRO AE AE P E aan DER e NERD RR O RT DI Tar 92 vii viii Cap tulo 1 Introdu o A concep o de um robot Human ide constitui um dos maiores desafios na rea da rob tica Construir um ser artificial antropom rfico semelhante ao homem um sonho inato do nosso engenho e n o para menos pois o ser humano a forma de vida mais complexa existente face da Terra O s culo XX encheu a nossa imagina o com livros e filmes que demonstram esse sonho do ser artificial capaz de desempenhar tarefas aprender coisas por si mesmo interagir connosco expressar emo es possuir uma consci ncia pr pria tudo caracter sticas que por enquanto ainda consideramos como puramente humanas Marcas como a Honda 1 a Sony 2 ou a Fujitsu Fig 1 1 j deram os primeiros passos no desenvolvimento de m quinas que imitam os comportamentos f sicos dos seres humanos caminhar dan ar ou pegar objectos Outros passos tamb m ja foram dados no que respeita ao processamento de vis o e som com o objectivo de rea
92. cessamento central e cada uma das unidades microcontroladoras Para tal trabalhou se sobre o barramento CAN conhecido pela sua robustez contra interfer ncias el ctricas dedicando uma parte do trabalho no desenvolvimento de um protocolo de comunica es capaz de conferir o m ximo de fiabiliade para a configura o e utiliza o dos controladores ao n vel da unidade central Finalmente efectuou se uma revis o ao hardware das unidades microcontroladoras bem como electr nica sensorial que realiza o acondicionamento de sinais externos tal como o caso da electr nica de processamentos dos sinais provenientes dos sensores de for a localizados nos p s Logicamente o processamento de sinal ao n vel do firmware pelo microcontrolador foi tido em conta pela implementa o de filtros e de procedimentos de calibra o de modo a proporcionar o m ximo de qualidade poss vel nas medi es Desta forma aos algoritmos de controlo que recorrem a estes sinais lhes conferida fiabilidade adicional Como m todo para a verifica o dos algoritmos implementados come ou se por aplicar sobre motores aparte como forma de garantir a funcionalidade dos mesmos Posteriormente passou se para a utiliza o de uma perna somente para teste da robustez dos algoritmos e finalmente utilizaram se ambas as pernas com um peso adicional no topo para verifica o da fiabilidade perante as varia es de carga exercidas sobre cada junta Ap s a
93. cher Gein Seta Position Control Feedback Gain Fig 3 8 Circuito do controlador de posi o de um FUTABA S3003 37 Representando matematicamente as opera es envolvidas verificamos que gt A posi o medida pelo potenci metro p t aplicado um ganho Kp representado pela resist ncia de 22KQ que somada velocidade resultante da for a contra electromotriz multiplicado pelo ganho Kp representado pelo paralelo das resist ncias de 910K e de 330KQ Este o sinal de feedback F s K P s K V s F s K s Ky P s gt O resultado da soma f t introduzido no gerador de impulso linear que produz um sinal de PWM para compara o em termos de largura de impulso com o sinal de entrada de refer ncia r t atrav s do comparador de largura de impulso produzindo o sinal de erro e t tamb m do formato PWM gt O sinal de erro amplificado num factor de K atrav s de um amplificador de largura de impulso e aplicado ao motor atrav s de uma ponte H U s K E s Logo concluindo RE E s 7 s RR o FO P s J O le Potenci metro V s Kp S pes Fig 3 9 Representa o esquem tica do controlador de posi o interno Comparando a Fig 3 8 e a Fig 3 9 podemos relacionar o elemento s como o sensor de velocidade a diferen a R s F s como o comparador de largura de impulso e o ganho K como o amplif
94. com um controlador PI Imagens superiores e inferior esquerda comportamento das tr s juntas envolvidas no movimento de flex o imagem inferior direita comportamento da junta lateral do p na realiza o do deslocamento lateral error erereana 67 Fig 4 1 Exemplo de um extens metro tiPiCO sre a a a N 70 Fig 4 2 Rela o entre for a imposta e deforma o el stica e eeerarerana aaa erraanaaaaos 70 Fig 4 6 EStruttta Completa de Um Pes ua tener At ds DEE a E aula acdc fot 71 Fig 4 4 Coloca o dos sensores na estrutura do p cccccseseeccseeeeeceeeeceeceeeeeeeseeeeeeeeeseeessegeeessseeeeeseaeeeeeaas 71 Fig 4 5 Pega de acr lico contendo o extensometro para medi o da sua deforma o 71 Fig 4 6 Pontos de contacto entre as 2 plataformas do p ccccecccceeseeeeecaeeeeeeeeeeeaeeeeeesaaeeeeeeeeeaneeeesessaaees 71 Fig A VISAO completa GO Pe saia rr ut steele eaten teen ar A a eet ea taata eat eee 72 Fig 4 8 Circuito de interface original dos ExtENSOMEHrOS ccccccccccseecceeccaeeeeeeeeaeseeeeeesaeaeseeeeseeaseeeeeesaaees 72 Fig 4 9 Circuito de calibra o da ponte de Wheaistone eee eereaaaeaarerana nana erraaananaoo 73 Fig 4 10 Rela o entre o potenci metro e a resist ncia total de calibra o im 74 Fig 4 11 Circuito de acondicionamento de sinal com simetria completa cceeeceeeceeeeeeeeeee
95. comando de leitura de posi o durante 1 5s para duas cargas diferentes 258 e 1138g Fig 3 24 Do o 0 om Do o 0 o ass 009 50 o RE o RO ao RE RE RS EC RO O i o Position degrees kai 0 5 1 1 5 time s Tabela 14 Erros em regime estacion rio em diferentes posi es para uma carga de 1138g Fig 3 24 Compara o das respostas ao degrau para duas cargas no percurso de 45 para 45 Comparando as respostas da carga de 258g com a de 1138g constata se uma diferen a dos tempos de subida evidenciando um atraso maior para cargas elevadas o que compreens vel uma vez que o esfor o dispendido maior Um segundo aspecto a diferen a no erro em regime estacion rio para a massa leve o erro praticamente nulo mas para a mais pesada j mensur vel um erro de cerca de 9 Adicionalmente fez se uma experi ncia tendo em vista o estudo da rela o do erro em regime estacion rio com o bin rio resultante da for a grav tica Deslocando o servo para um conjunto de posi es conhecidas para cada uma delas esperou se pela finaliza o do movimento e pela estabiliza o do sinal de posi o anotando de seguida a posi o medida pelo microcontrolador Tabela 14 Comparando a posi o solicitada com a efectiva observa se que o erro aumenta medida que a posi o se aproxima do ponto 0 o que demonstra que quanto maior o bin rio grav tico maior a dificuldade em atingir a posi o fina
96. como fun o o movimento das juntas com o objectivo de atingir um determinado Centro de Press o CoP refer ncia que tanto pode ser o centro do p se apenas pretendemos garantir a postura vertical ou ent o outros valores de modo a conferir alguma din mica ao sistema A Fig 4 19 apresenta um diagrama com a descri o dos controladores envolvidos Ap s a leitura dos sensores de for a o c lculo do Centro de Press o executado que por compara o com o Centro de Press o desejado CoP e a varia o de posi o v n a aplicar a cada junta do p e da perna determinado Esta varia o v n adicionada posi o actual de cada junta p n obtendo assim o valor absoluto da posi o u n Finalmente o controlador local PID usado para assegurar a aplica o da posi o solicitada 83 p n Software vin gt u n Sensores de For as de reac o q For a 4 Fig 4 19 Diagrama com os controladores aplicados para a compensa o de equil brio n Servos da Posi o q Perna 3 dos Servos As sec es seguintes centram se na implementa o do bloco Gce z ou seja na implementa o de um controlador que com base nos sensores de for a atinja o estado de equil brio 4 5 2 CONTROLO PROPORCIONAL 7 O tipo de controlo mais simples de implementar o controlo proporcional cuja velocidade a aplicar depende proporcionalmente do erro do centro d
97. compensa o Tal til no ltimo caso pois cada junta pode estar sujeita a diferentes esfor os e por isso rent vel aplicar diferentes ganhos a cada uma Um dado importante a ter em conta a multiplicidade de significados que cada dado de actua o pode possuir dependendo do tipo de controlador activo Assim para cada tipo de controlador a posi o refer ncia diz respeito ao valor final que o respectivo controlador deve atingir Quatro tipos de controladores de primeiro n vel s o implementados e Sem controlador a posi o refer ncia diz respeito posi o angular a aplicar a cada junta sendo directamente aplicada sobre o controlador local ver abaixo e Controlo de Centro de Press o a posi o refer ncia diz respeito ao centro de press o que a estrutura deve possuir no fim do movimento e Controlo de Inclina o a posi o refer ncia especifica a inclina o que a estrutura dever possuir e Controlo de Velocidade Angular velocidade angular refer ncia De igual modo a velocidade indicada diz respeito ao controlador em causa implementado se desta forma traject rias polinomiais que tanto podem ser de posi o angular centro de press o inclina o ou velocidade angular Com base nestes valores refer ncia o controlador de primeiro n vel determina as posi es angulares a aplicar a cada servomotor que posteriormente ser entregue a um controlador local do tipo PI Proporcional Integrador que se re
98. comunica es CAN Base de Dados Global do Sistema Human ide O processamento da mensagem de solicita o proveniente da unidade principal baseado na an lise do byte opcode inserido em cada frame Uma vez decifrado o conte do da mensagem uma base de dados global com a Informa o sensorial e de actua o de cada uma das unidades slave acedida para consulta ou actualiza o caso se trate de uma opera o de consulta sensorial ou de actua o respectivamente A base de dados dividida em dois conjuntos de dados principais um para a informa o sensorial e outro para a de actua o Esta base de dados que pode ser visualizada na p gina seguinte descreve o estado do sistema completo para todos os 8 slaves A sec o sensorial descreve o estado do sistema as posi es velocidades estimadas e correntes drenadas fornecidas pelos potenci metros dos tr s servomotores bem como tamb m a sa da dos sensores que eventualmente possam estar conectados via piggy back a cada unidade slave como o caso dos sensores de for a e dos girosc pios J a base de dados de actua o cont m o estado de aplica o dos sinais de PWM sobre os servomotores e os par metros de compensa o do controlador local e de primeiro n vel bem como os valores de refer ncia dos mesmos compensadores Como ja foi referido cada comando de solicita o apenas consulta ou actualiza esta base de dados n o representando uma interven o directa so
99. conclus o deste trabalho pretende se a locomo o dos membros inferiores de modo a que o robot seja capaz de se deslocar entre dois pontos do espa o pela troca de comandos b sicos com uma unidade central de processamento port til baseada em PC104 ou nano ITX Por isso a unidade central apenas ter que fornecer as coordenadas de destino e a velocidade a que dever realizar a traject ria enquanto que os microcontroladores respons veis pela locomo o das juntas de interesse se responsabilizam pela implementa o dos algoritmos de controlo tanto para realiza o das sequ ncias de movimento de uma forma suave e cont nua como tamb m a compensa o contra irregularidades no solo e outras perturba es externas Pretende se por isso que todo o algoritmo de controlo de baixo n vel para locomo o equil brio seja implementado ao n vel do microcontrolador minimizando assim a comunica o entre estas unidades e a central 1 3 ORGANIZA O DA DISSERTA O A presente disserta o encontra se organizada nos seguintes cap tulos Cap tulo 2 Arquitectura das Comunica es descreve a implementa o do protocolo de comunica o entre a unidade central de processamento e os diversos microcontroladores Cap tulo 3 Sistema de Controlo de Baixo N vel apresenta os algoritmos de controlo de baixo n vel aplicados sobre os actuadores do sistema Cap tulo 4 Sistema de Controlo Baseado nas For as descreve a implementa o e t
100. controlo externo para correc o de eventuais desvios ao comportamento ideal Para al m do controlo sobre as juntas existe um conjunto de sensores adicionais destinados ao equil brio da plataforma gt Quatro sensores de for a aplicados directamente sobre a base de cada p implementados a partir de extens metros resist ncias que variam o seu valor de acordo com a sua deforma o gt Inclin metros para medi o da verticalidade do tronco Estes inclin metros s o basicamente aceler metros que medem a acelera o da gravidade nos seus dois eixos ortogonais na posi o vertical o vector gravidade deve coincidir com o seu eixo vertical 33 gt Girosc pios para medi o da velocidade angular em certos pontos do corpo A presente disserta o apenas ira cobrir a utiliza o dos sensores de for a nos p s no que respeita ao equil brio est tico e din mico da estrutura Este assunto ser discutido em mais detalhe no Cap tulo 4 Neste cap tulo apenas ser o discutidos os actuadores e o seu controlo de forma a permitir gt Fazer o controlo de posi o de modo a garantir que o actuador atinge sempre a posi o solicitada gt Fazer o controlo de velocidade variando o seu valor de acordo com as necessidades gt Que os movimentos das juntas sejam os mais suaves poss veis sem acelera es bruscas nem velocidades muito elevadas Embora os servomotores tenham sido escolhidos por possu rem um controlador interno d
101. ct ria superiores a 2 segundos s o recomendados para minimiza o do sinal de erro 112 CoP Previsto Mledida HE HH 0 10 20 30 40 50 B0 0 a0 t Coordenadas Cartesianas crm HH Fig 4 46 Flutua es do CoP e da cinem tica directa na componente xx na realiza o de uma traject ria sobre apenas o eixo yy CoP Previsto Medida 0 10 20 30 40 50 K0 r ol t Erro do CoP 0 10 20 30 40 40 60 r ao t Coordenadas Cartesianas em Joelho Arca Fig 4 47 Flutua es do CoP e da cinem tica directa na componente yy na realiza o de uma traject ria sobre apenas o eixo xx 113 4 6 5 EXECU O DE TRAJECT RIAS EL PTICAS Executando traject rias el pticas especificando v rios pontos de passagem segundo um formato el ptico e com uma dura o temporal entre cada par podemos visualizar a resposta do sistema na Fig 4 48 Pode se confirmar mais uma vez a superior sensibilidade ao ru do por parte da componente yy Force Error Fig 4 48 Varia o do CoP ao longo do percurso el ptico componentes x azul e y verde em compara o com o real e o respectivo erro Um pormenor interessante a observar na Fig 4 48 o facto do erro na componente xx ser m ximo quando o CoP ef se encontra nas extremidades do p componente yy nos extremos Efectuando uma an lise espacial em vez de temporal podemos ver esta anomalia mais evidentemente na Fig 4 49 e n
102. d local modules may co exist and concur to provide robust and versatile operation Research along the above development phases has been conducted with the purpose of clarifying the system s performance according to the initial ideas and requirements and the possibilities of practical applications NDICE Te INTRODUCA O PER AR ROD RS PD RR PD SR 1 tA ENQUADRAMENTO DO TRABALHO sd da e 2 1 2 OBJECTIVOS E MOTIVA ES eee 4 1 3 ORGANIZA O DA DISSERTA O 5 2 ARQUITECTURA DAS COMUNICA ES ccsssccsscssssccssecessccesecesseesesscessecessesessessseesaseeseeeeseees 7 2 WROD UC AO na SS a e 7 22 COMUNICA AO RODO sonia nina da catia ED Dt e ed 10 2 2 1 Device Drivers de Comunica o na Unidade Principal ea 10 Zee PrOlOCOlO mio pr 6 CARR see RR URRRNR RO DEDE ORAR RA RED DROP NR e 11 geo Unidade Principal atas aE a saio E as ASR asas de asa 13 22 4 Undade Distribuidora WASTER nasrrsiaeseese ne ss TE ob Cas jan co sing es ain a dass 16 2 3 COMUNICA O CAN 20 231 Protocolo CAN icons scsi eae ce a eee O A 22 2 3 2 Funcionamento do Barramento CAN c cccccceeeccceeceeseeeceeeececeeeeeseueeeseaeeeseeessegeessaeeesees 24 20 0 Alhidade Maslan secnccaeeeulocs se nero Une pia A a a tan 29 234 JUMdA ES SIAVO ee ee i ee dia a o ana ee ee 30 24 DISCUSS O DOS RESULTADOS ac iai SD 32 3 SISTEMA DE CONTROLO DE BAIXO NIVEL ccccssssssscsccccccesscsssscccccccssssssssssseceeecesssss
103. da um dos tr s servomotores dado que podem possuir posi es diferentes torna se necess rio recorrer a um estratagema diferente se quisermos continuar com a utiliza o de apenas dois timers para a arquitectura PIC 18F258 apenas possu mos no m ximo quatro timers Para tal utilizou se uma vari vel global para cada servo indicativa do duty cycle correspondente sua posi o O segundo timer iniciado ap s a interrup o gerada pelo primeiro programado para gerar uma segunda Interrup o ap s um intervalo de tempo correspondente ao duty cycle m nimo 1 ms A partir daqui este segundo timer reprogramado para gerar interrup es de alta frequ ncia de periodicidade correspondente varia o minima de posi o do servo Apos Para um passo de 1 o per odo ser E 180 A 180 1 180 pos _ DMY myx AUY nin _ 2000445 1000445 10004ts _ 5 56 is A cada Instancia o da interrup o de alta frequ ncia passo de 5 56us cada servo verificado se o PWM correspondente deve baixar a 0 nessa itera o atrav s da respectiva vari vel global Em caso negativo nada feito e a pr xima itera o aguardada para uma nova avalia o Na ltima itera o correspondente ao duty cycle m ximo todos os sinais de PWM devem estar a 0 e o timer desligado O processo repetido na pr xima interrup o do timer de 50 Hz 40 PWM a a 20 m ER
104. dar os resultados sensoriais e reposicionar a perna para o CoPye Inicial Inicializar ganhos de compensa o desligar os controladores e sinais de PWM das juntas eo ee Executando uma traject ria polinomial desde as coordenadas 25 25 0 at posi o 25 45 0 no que respeita ao centro de press o iremos efectuar um movimento ao longo dos eixos xy O ganho escolhido para o controlador de equil brio k de 50 e o per odo da traject ria de 2s Por quest es de an lise dos dados foi feita uma amostragem de 4 segundos tendo em vista o estudo da resposta em regime transiente e estacion rio A Fig 4 40 apresenta os resultados da experi ncia 106 CoP CoP Previsto Medida KX Previsto Mledida Erro do CoP Erro do CoP KX KX Fig 4 40 Resposta ao polin mio aplicado nos eixos xy com K 50 Como se pode observar na Fig 4 40 a resposta ao polin mio segundo o eixo xx apresenta um elevado atraso com um erro m ximo de 35 unidades para t 1 25s O tempo de estabelecimento tamb m apresenta um valor elevado apenas atingindo o valor final para t 3s Relativamente ao eixo yy obteve se tam m um elevado tempo de atraso com um erro m ximo de 60 unidades e um tempo de estabelecimento de 4 segundos Tendo em vista a redu o do sinal de erro modificaram se alguns par metros como o caso do ganho do controlador de equil brio e o per odo da traject ria Aumentando o ganho do controlador k de 50 p
105. de Mensagens Nas unidades slave a comunica o CAN efectuada segundo a pol tica event triggered dado que apenas accionada quando s o recebidas mensagens do master A Fig 2 17 evidencia o algoritmo presente em cada unidade slave Quando uma mensagem recebida no buffer O primeira mensagem de actua o uma interrup o gerada e na Rotina de Servi o Interrup o RSI os dados de actua o s o actualizados e uma mensagem com informa o sensorial enviada primeira mensagem de resposta Por sua vez se a interrup o corresponder chegada de uma mensagem no buffer de recep o 1 o processo equivalente mas respeitante segunda mensagem de cada transac o De notar ainda que as interrup es CAN s o de baixa prioridade para n o permitir interfer ncia com as tarefas essenciais de controlo de PWM sobre os motores CAN INT a P to d Enviar M RX Buffer rocessamento da nviar Mensagem Mensagem de actuagao 0 sensorial 0 Nao sim Processamento da Enviar Mensagem RX Buffer1 E Mensagem de actua o 1 sensorial 1 N o RETURN Fig 2 17 Algoritmo de troca de informa o pelo CAN no Slave Transmiss o e Recep o de Mensagens Do ponto de vista de cada slave todas as mensagens a enviar s o de car cter sensorial e todas as recebidas s o de actua o pelo que no ltimo caso escusado o processamento do identificador excepto para o conhecimento do index da mensagem
106. deslocamento dos servomotores Como este deslocamento em nada afecta a medi o de for as nos sensores dada a aus ncia de for as de reac o o centro de press o continuar desequilibrado independentemente da posi o dos servos levando satura o na actua o dos Servos Estes resultados sugerem que a distribui o de for as sobre a base do p n o homog nea Embora ap s activa o todos os sensores sejam inicializados num determinado valor inicial a for a absoluta inicial pr carga aplicada em cada um diferente o que faz com que na aus ncia do plano de suporte as for as medidas sejam diferentes de sensor para sensor resultando num valor do CoP diferente do valor original E este offset que provoca o deslocamento dos servos at satura o Para esta falta de homogeneidade contribuem os seguintes factores e Diferente natureza das placas de acr lico de suporte aos extens metros como os sensores da frente s o mais sens veis que os traseiros o CoP medido deslocado para a traseira do p quando levantado e Plataforma superior do p n o homog nea Mesmo resolvidos estes dois aspectos ocorre um novo problema se no momento da calibra o o CoM do robot n o coincide com a posi o de equil brio como o caso em que a perna n o est exactamente na vertical verifica se uma diferen a nas for as absolutas aplicadas inicialmente Esta diferen a revelar se na aus ncia do solo resultando
107. e controlo de velocidade indirecto na medida em que os extremos de posi o da rampa e o intervalo de tempo da sua dura o imp em uma velocidade m dia ao movimento Uma forma de traject ria mais exigente o polin mio de terceiro quinto grau que al m de permitir a defini o de uma velocidade m dia garante outros aspectos como o caso de velocidade nula e acelera es limitadas no in cio e no fim da traject ria algo importante para prevenir eventuais picos de corrente e limitar o consumo de corrente durante a realiza o destas traject rias 67 Mais tarde verificou se que embora estes actuadores apresentem respostas praticamente ideais resposta semelhante traject ria solicitada na aus ncia de cargas na sua presen a tal deixa de ser ver dico verificando um acentuado tempo de atraso no acompanhamento da traject ria solicitada e uma dificuldade em atingir o valor final devido presen a da for a grav tica no bin rio aplicado erro em regime estacion rio n o nulo Usando o sinal de feedback de posi o que o servo disponibiliza por compara o com a posi o desejada tentou se implementar uma lei de controlo que permitisse corrigir estes desvios Esta lei de controlo baseou se num compensador cl ssico do tipo PID Proporcional Integrador Derivador Por meio de diversos ensaios conseguiu se associar cada componente s caracter sticas da resposta de modo a permitir escrever um procedimento para rapidamente se enco
108. e qualquer banco de mem ria Para tal deve se definir a janela de endere amento de acordo com o buffer em uso window address bits 5 Verifica o da ocorr ncia de overflow 6 Leitura do identificador do pacote 7 Valida o do comprimento de dados recebidos 8 9 l ee SA Leitura dos dados Liberta o do buffer n para possibilitar a recep o de uma futura mensagem O Reposi o da janela de endere amento para o seu valor original Transmiss o de um pacote usando o buffer n Verificar se o buffer n est pronto para transmiss o Clear do interrupt flag associado ao buffer n Defini o da janela de endere amento para o buffer de transmiss o n Defini o do identificador Defini o do comprimento do pacote 8 bytes Defini o do conjunto de dados a enviar Activa o da transmiss o do buffer n Reposi o da janela de endere amento para o seu valor original RE RR a 28 2 3 3 UNIDADE MASTER Algoritmo de Troca de Mensagens As trocas de informa o Master Slave s o desencadeadas a partir da unidade Master estando os slaves programados para responder imediatamente ap s a recep o das mensagens oriundas do Master A Fig 2 16 apresenta os algoritmos utilizados na unidade master para gerir a troca de informa o eo A E CAN Timer INT INT NO Ra Enviar Mensagem de Receber Mensagem 5 actua o 1 RX
109. e Flex o em Malha Fechada de uma Perna 65 3 0 0 Movimento das duas Femnas a sis eines leo sda sonata mia e ima u bra non is 66 36 DISCUSS O DOS RESULTADOS arainn D 67 4 SISTEMA DE CONTROLO BASEADO NAS FORCAG cscscscscscscscsccscscscscscscscscsccscscscscscscseses 69 Et INTRODUC Ortaca teccea arctan ee aes E ee enue 69 4 2 ESTRUTURADOS PES rescenisenreas areas siaatucactantandesecwuseassPeostautibtatsbuMnneaiusacdineaduaasscedisn 69 4 2 1 Sensores de For a os ExtEnSOMetrOS ccccccsssssceeeceeseececceeseeeecseeseeeecseeageeeesesaaaeeeess 69 4 2 2 O P como Elemento Sensitivo a For as Externas errar 70 4 3 MEDI O DAS FOR AS DE REAC O aeee 72 4 3 1 Interface entre os Extens metros e o Microcontrolador iene 72 432 Resultados Experimentais catels picts cc kitans soathcaudeeadsenetedatdedaccatasdaares ined atasactweyaddshaleubestemtatend 75 43o AIMOSIFAGEM COS SENSOMCS esnie a a aire ada Gl aaa a datas 78 4 4 MEDI O DO CENTRO DE PRESS O en 81 4 4 1 Representa o do Centro de Press o eee eeereeeeeeereee ae rerrenaa anna 81 Ade Calculo do Centro dePresSaoO A OS ice Veen 81 4 5 CONTROLO DE EQUILIBRIO 2a ruas pis tos diaa ginastas bisnd as US End AOS 83 as ESUUUM Ca COCONINO ACOR saga a a ia o a 83 Ade CONoIoPrOpOrCIONAL mesas is a a abs i da ADE pao cuetaaet 84 4 5 3 Controlo atrav s da Matriz Jacobiana
110. e o CoP medido e o actuado para 32 passos ao longo do eixo yy 104 Fig 4 37 Rela o entre o CoP medido e a cinem tica directa do joelho e da anca ao longo do eixo yy 105 Fig 4 38 Rela o entre o CoP medido e o actuado para 25 passos ao longo do eixo xy 105 Fig 4 39 Rela o entre o CoP medido e a cinem tica directa do joelho e da anca ao longo do eixo xy 106 Fig 4 40 Resposta ao polin mio aplicado nos eixos xy com K 50 area 107 Fig 4 41 Resposta ao polin mio aplicado nos eixos xy com K 70 a iraaae aaa 108 Fig 4 42 Resposta ao polin mio aplicado de dura o 1S K 50 eeeenneeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeaaaas 109 Fig 4 43 Resposta ao polin mio aplicado de dura o 4s K 50 eee 110 Fig 4 44 Traject ria rectil nea ao longo do eixo xx Per odo 2s e K 5O0 eee 111 Fig 4 45 Traject ria rectil nea ao longo do eixo yy Per odo 2s e K 5O0 eee 112 Fig 4 46 Flutua es do CoP e da cinem tica directa na componente xx na realiza o de uma traject ria sobre apenas O eixO VY serra eee rerenana area nan nana aa er aaa n era n ana ea aaa a area anna e anna ca caa aan era a acer anna reenen 113 Fig 4 47 Flutua es do CoP e da cinem tica directa na componente yy na realiza o de uma traject ria sobre apenas O EIXO XX secccccsssccccceeececceeececcsneeeeseeececsueeeeesegeeesseuecee
111. e posi o contrariamente aos outros g neros de motores veremos adiante que apresenta muitos problemas na concretiza o dos objectivos enunciados principalmente na presen a de elevadas cargas no seu eixo Para tal ser o apresentadas algumas solu es j testadas de modo a resolver estes desvios mais concretamente pela utiliza o de compensa o via firmware nos m dulos 3 2 CONTROLO DA PLATAFORMA HUMAN IDE 3 2 1 A UNIDADE DE CONTROLO LOCAL A Fig 3 2 apresenta a constitui o de uma unidade de controlo local slave com o microcontrolador PIC18F258 da Microchip e a electr nica de interface para os servomotores e os diversos sensores Uma foto dele pode ser vizualizada na Fig 2 2 7805 based dino f ower suppl erminate i ii CAN bus MCP 2551 CAN Sensors from piggy back board Servos potenciometers 6 5 V DC power line PIC18F258 For optional connectivity current monitor PWM1 to servo 1 _ _ _ __ gt PWM2 to servo 2 gt Slave Address PWM3 to servo 3 gt Fig 3 2 Constitui o de uma unidade slave Como se pode observar cada slave possui uma interface para o barramento CAN constitu do pelo driver do barramento CAN MCP2551 um m dulo UART para comunica o via RS 232 e um DIP switch que permite via hardware configurar o endere o da unidade slave address Para a actua o poss vel controlar at tr s servomotores com a disponib
112. e press o CoP Cop e op CP cop e a CoP Co pre Co p ECoPy aa K p E CoPx A O K Py E Copy A lei de controlo indicada na ltima equa o verificando se a rela o proporcional entre o erro do centro de press o ecop e a velocidade aplicada aos motores AQ pela constante Kp o produto das ltimas duas grandezas escalar Tabela 18 No entanto note se que a perna a equilibrar possui tr s motores o motor lateral do p o motor dianteiro do p e o motor do joelho O par metro de velocidade AO apenas controla dois motores Como estes dois motores devem estar associados desloca o x y da perna sobre o solo de modo a corrigir o centro de press o CoP CoPy medido estes motores dever o corresponder s duas juntas ortogonais do p 1 e 2 ver Fig 4 20 A junta do joelho n o por isso utilizada para a compensa o Junta lateral do p Junta dianteira do p Tabela 18 Equa es para o controlo proporcional 4 5 3 CONTROLO ATRAV S DA MATRIZ JACOBIANA Contudo gostar amos de utilizar todas as juntas para efectuar compensa o incluindo a do joelho quando as duas ortogonais do p n o fossem suficientes Um exemplo claro da utilidade desta junta dado quando a junta dianteira do p 82 satura num dos seus extremos utilizando se a partir da a junta do joelho para continuar a compensa o 84 Outro pormenor a salientar relaciona se com a falta de rigor apresentada
113. ececeeseeeeeeeeeeeeseeeeesseeeeeeseeeeeeeseaeeeeeaneees 46 3 22 Representa o do servomotor por uma fun o de transfer ncia G s cccccsecceesseeeeeeseeeeeeaeeeees 47 3 23 Exemplo da resposta de um sistema por compensar com a indica o das suas caracter sticas 48 3 24 Compara o das respostas ao degrau para duas cargas no percurso de 45 para 45 48 3 25 Aplica o de um degrau de 45 para 45 no instante 1 1 85 essere 49 3 26 Aplica o de uma rampa de posi o de velocidade m dia 50 S eterna 49 3 27 Traject ria polinomial de terceira ordem cc csccccccsseeeeecesececceeseeeseusecesseueeecseaecessuaeeesseneeessaaeeees 50 3 28 Comportamento da velocidade e da acelera o na traject ria polinomial cccceeseeeeeeseeeeees 50 3 29 Resposta rampa com duas cargas diferentes Ap 5 At 100MS ie 51 3 30 Resposta rampa com uma carga pesada Ap 5 At 100MS erre 51 3 31 Resposta ao polin mio para duas cargas diferentes Ttraj 1S erre 51 3 02 Controlo externo do SECrvVOMmO LOL cco eee ee E LE Ra 52 3 99 Compensador PID incremental sss2es225e 0552480000 ate eed el ne eee ARLS 52 3 34 Resposta rampa com uma carga de 675g K 0 08 eee 54 3 35 Resposta rampa com uma carga de 11299 K 0 08 ese eeerreana 54 3 36 Resposta rampa com uma carga de 11299 K 0 20
114. eeeeeeaeeeeeseeeeeesaeaeeeesaaeeees 21 Tabela 6 Campos do identificador de um pacote CAN cccccsccccseeceeseececeeeeeteeeeeceeeeeseeeeessneeeseneeesaneessaaees 22 Tabela 7 Campos do byte Sensor Flag masa maias A AO LO a 24 Tabela 3 Resultado da filtragem para Cada Dil sas macias raso nioo san Ra indades de a tetas 26 Tabela 9 Configura o dos filtros para redireccionamento de pacotes para os dois buffers de recep o padrao as az al al endereco do SCU siicctauraiacchalei sseo Ena cida 27 Tabela 10 Atribui o de prioridades entre cada buffer de transmiss o i erre 27 Tabela 11 Especifica es do servo da HITEC HS 805BB er eeeeereeeeerre aaa 36 Tabela 12 Bin rios exigidos na simula o de um PASSO ssscccceeeeeeeeeeeeeeeaeeeeecaeeceesaeeeeesaeueeesaeaeeeeaaaeeees 36 Tabela 13 Lista de cargas utilizadas para teste erra aerea era e ecran aerea aa ereaannna 39 Tabela 14 Erros em regime estacion rio em diferentes posi es para uma carga de 11380 48 Tabela 15 Lista de pesos usados no teste dos sensores de for a e eeeeeerererereeenaena 75 Tabela 16 Resultados experimentais para cada sensor nas duas EXPEFIENCIAS cccseeceesseeeeeceeeeeeeeaeeees 76 Tabela 17 Par metros das regress es lineares tra adas eee erre reree a erenanana 77 Tabela 18 Equa es para o controlo PrOPOFClONAl ccccc
115. eeeeeeeeeeneeees 74 Fig 4 2 Localiza o dos Sensores No Pesaro ain oeb ae tas ates ahi ecw Seas dee peed dave anes 76 Fig 4 13 Medi o independente de cada sensor sccccccseececcceeceeceeeceeceeuceeeseeseeeeeeueeeesaeeeessanseessaaeeesegs 76 Fig 4 14 Medi o dos sensores em Conjuntos sasssassalnasdagadiico noesad alo bos seua ni ais Es asas a vest ented ote eee 76 Fig 4 15 Rela o entre a medi o de cada sensor e o peso aplicado experi ncia 1 77 Fig 4 16 Valores dos sensores com massas colocadas no centro da base experi ncia 2 78 Fig 4 17 Projec o do centro de massa sobre o p na situa o de equil brio 81 Fig 4 18 Perna completa sobre um p sens vel a for as eee eeeeereneeerena na rereaaeerenaa 83 Fig 4 19 Diagrama com os controladores aplicados para a compensa o de equil brio 84 Fig 4 20 Modelo da perna human ide com a associa o das diversas vari veis de interesse 86 Fig 4 21 da inclina o do plano de suporte segundo o eixo yy esquerda e o eixo xx direita 92 Fig 4 22 Varia o do declive do plano segundo o eixo xx controlo proporcional cccceeeseeeeeeeeeeeeeens 93 Fig 4 23 Varia o do declive do plano segundo o eixo xx controlo pelo Jacobiano 94 Fig 4 24 Varia o do declive do plano segundo o eixo yy controlo pro
116. egra o dos Algoritmos de Medi o Sensorial A Fig 3 20 apresenta o algoritmo final que ser executado de 200 em 200 us ao longo de um per odo de PWM at que no fim deste a posi o do servo e a sua corrente determinada pela avalia o do valor m nimo e pela largura do impulso respectivamente A posi o ser dada em graus 90 a 90 e a corrente ser um valor normalizado entre O e 100 indicativo da percentagem da largura do impulso de corrente ao longo do per odo de PWM Tens o inferior ao valor m nimo Impulso de corrente detectado Selec o do pr ximo servo Fig 3 20 Algoritmo de processamento da tens o medida para cada servomotor Actualiza o da tens o m nima Incremento do contador de largura de impulso C lculo da posi o com base na tens o m nima Filtragem da posi o Normaliza o da Largura de Impulso entre O e 100 Estima o da velocidade C lculo da Largura de Impulso m dia Actualiza o da Base de Dados local Storing da tens o m nima p detec o de impulsos Fig 3 21 Processamento final fim do per odo de PWM No fim do per odo de PWM tamb m s o realizadas opera es de filtragem da posi o e da corrente bem como tamb m a estima o da velocidade m dia dos ltimos 100ms pela utiliza o directa das posi es medidas Fig 3 21
117. eiramente a matriz Jacobiana do Centro de Press o Jcop Para tal teremos de conhecer a rela o entre o centro de press o e cada uma das juntas 0 Dado que n o conhecemos nenhuma express o anal tica que nos forne a tal informa o faremos a suposi o do centro de press o coincidir com o centro de massa o que at verdade se nos restringirmos a baixas velocidades dCoM dCoM 06 00 oCoM 00 E 0COM dCoM dCoM dCoM CoP 96 06 00 0CoM dCoM 06 00 00 0CoM 08 J o centro de massa podemos calcul lo atrav s da express o anal tica com Mik 2M em que M representa a massa de cada elo e Rj a dist ncia do inicio de cada elo ao seu centro de massa 86 A Fig 4 20 representa uma perna sob duas perspectivas diferentes de lado e de frente A partir deste diagrama as express es dos centros de massa para as diversas componentes espaciais podem ser deduzidas Seja s sin8 c cos8 S sin 0 c cos 0 s sin 0 6 c cos 0 0 M M M a M R s M L s R 553 CoM 4 CoM Sa o 2 M M M M M Calculando as suas derivadas parciais em ordem a 04 92 e 0 para obten o dos elementos da matriz obt m se J CoM _ M Rc M L Rc c M L Le Ricos e 00 M M M _0CoM _ M R s s M L s R 5 M M M oCoM M R s 5 00 M M M Ji J 3 Ta dCoM 21 00 C M _0CoM M Rc M Lc
118. eita ao equil brio todo o firmware desenvolvido para o controlo local j se encontra numa fase suficientemente madura para permitir a curto prazo a locomo o e a realiza o de outras tarefas pela unidade central de processamento de modo a podermos participar na competi o mundial de robots human ides RoboCup Nesta linha de ideias considero que os principais objectivos propostos para a disserta o foram alcan ados com sucesso tendo sido analisadas estrat gias e apontados novos caminhos que permitir o a maturidade deste projecto e a iminente concretiza o do objectivo ltimo a cria o de uma estrutura human ide de car cter pedag gico capaz de gerar v rias sequ ncias de locomo o de uma forma aut noma e recorrendo unicamente a materiais e componentes de baixo custo 121 Refer ncias 1 Y Sakagami et al The Intelligent ASIMO System Overview and Integration in Proceedings of the IEEE RSJ International Conference on Intelligent Robots and Systems Lausanne Switzerland September 30 October 5 pp 2478 2483 2002 2 K Nagasaka et al Integrated Motion Control for Walking Jumping and Running on a Small Bipedal Entertainment Robot in Proceedings of the IEEE International Conference on Robotics and Automation New Orleans USA April 26 May 1 pp 3189 3194 2004 3 F Yamasaki T Matsui T Miyashita H Kitano PINO the Humanoid that Walk in Proceedings of the IEEE RAS Internat
119. ensagem de incorrecto DN Como configura es gerais optou se por efectuar as transac es velocidade m xima permitida sem a aplica o de controlo de comunica es Elas s o Baudrate 115200 bps Tamanho da palavra de dados 8 bits N mero de stop bits 1 Bit de paridade desactivado AAA AS Controlo de comunica es por handshaking desactivado Utilizou se um computador Pentium com porta s rie RS 232 embutida com o sistema operativo Microsoft Windows XP como unidade principal para comunicar com a unidade master embora seja perfeitamente compat vel usar qualquer sistema desde que possua suporte a comunica es RS 232 O software utilizado foi o MatLab 7 0 atrav s da mini toolbox cport v1 3 que oferece device drivers para troca directa por RS 232 tanto de caracteres como de strings e valores num ricos Inteiros Algoritmos de Comunica o As rotinas de comunica o b sicas j apresentadas na sec o 2 2 1 ver Tabela 2 constituem a forma de interface entre a unidade de controlo principal normalmente um computador e a unidade master O seu algoritmo b sico de funcionamento apresentado na Fig 2 4 e resume se ao envio de uma mensagem unidade master de acordo com os par metros de entrada fornecidos retornando em seguida os dados sensoriais contidos na mensagem de resposta caso seja o caso de um comando de leitura sensorial mais o correspondente estado de erro se ocorreu algum problema nas comunica
120. enum NO CONTROL Ub00r Funcionamento em malha aberta CORR CONTROLE TOLOI Vo Controlo de equilibrio no Eronco INC CONTROL 0610 Controlo das for as de reac o nos p s GIRO T CONTROTS Ob Controlo de posi o e velocidade enum controlType Estrutura cesceritiva clo estaco cde um servo typedef struct signed Char position Posi o refer ncia signed char velocity Velocidade unsigned char current Corrente consumida L struct servo Base de dados sensorial Ii Estrutura cesceritiva cos sengores typedef struct Sieg pei bool pwm Motores ligados desligados bool calib Calibra o ligada desligada bool deadlineError Viola o de deadline bool motionFinAll Todos os motores terminaram o movimento bool meriontiln ne j7 Wie dos moro res ce eminacam O momimento bool motionFin N_SERVOS II Movimento term une cdo sysStavus Estado sensorial do sistema SEDUCE ESCO VOMSecir Tel NISERVOST Sensor dos sorvosS unsigned char Special IN SPECIAL SENSORS Sensores especiais ecruct sensors extern volatile struct_sensors sensors Sensores Base de dados de actua o 7 Estr tora descritiva dos acihadores typedef struct Estrutura de actualiza o de status para cada SCU sie eo 1 bool pwm Va Pulo tom Boolean I pynamine calibralion ion ork pes Voom anus Estado da actua o do sistema prio 4 byte kp kd ki i Ganhos dos Controladores byte type Ti
121. equente Este pequeno detalhe permite nos assim a utiliza o de uma rotina de calibra o simples de modo a acertar o par metro b de acordo com o servo a lidar Considerando o par metro m constante o que uma aproxima o aceit vel sempre que o sistema ligado se assegurarmos que cada servo est numa posi o conhecida priori f cil calcular o valor de b atrav s da equa o de c lculo deste par metro e utiliz lo nas medi es consequentes A rotina de calibra o executada sempre que o sistema arranca e segue o seguinte algoritmo 1 A primeira mensagem de actua o j chegou S passar para o passo seguinte quando afirmativo o master que fornece as posi es Iniciais 2 Ap s a recep o da posi o inicial actua o sobre os servomotores de forma a cumprir a posi o solicitada pela unidade master Esperar dois segundos para a realiza o do movimento e estabiliza o do sinal de posi o Amostragem de 25 medidas da sa da do servo 25 per odos de PWM C lculo da m dia aritm tica do valor medido A partir da seguinte equa o determinar o valor de b a partir da posi o inicial fornecida pelo master e do valor m dio ADC b pos ADC om Master medio E Re o 7 Activa o dos filtros de medi o sensorial Desta forma a medi o da posi o adaptado a cada servomotor de uma forma personalizada com m nimos erros de c lculo apenas dependem do erro de m 45 Int
122. ereeeneeerena nr eraeaa acena nana 37 3 8 Circuito do controlador de posi o de um FUTABA S008 erre 37 3 9 Representa o esquem tica do controlador de posi o interno eee 38 3 10 Setup experimental ses a cyst Bei alt oasis a a a nas E beso a e eae 39 3 11 Arquitectura das comunica es NO Setup cccceeeccccseeseeeceeeeceeeeeeeeecueueeeeseueeessaeeeesssaaeeeeseaeeeesaaeeees 39 3 12 Gera o de um sinal de PWM atrav s de dois timers e eeeeeereeeeeereeraeaaaaaoo 40 3 13 Organiza o temporal das interrup es na gera o do PWM 41 3 14 Impulso de tens o medido na presen a de cargas velocidades elevadas 42 3 15 Rela o entre a posi o e a largura de impulso ccccseeecceeeeeeeeeeeeeeeeeaeeeecsaaeeeeeaeeeeesseaeeeesaaeeess 42 3 16 Configura o poss vel para medi o da corrente rea eeaeeranan aa reraanananoo 43 3 17 Organiza o das interrup es setas na medi o sensorial errar 44 3 18 Algoritmo de leitura dos tr s servomotores eira eeereree aaa arereaeaaa serra aananoo 44 3 19 Multiplexagem na leitura dos servos ccssecccccseccccaeeeeeceeeeceeseeceeaaueeesaauecessaaeeessaaaeeessegeeeesaseeees 44 3 20 Algoritmo de processamento da tens o medida para cada servomotor ccccceeeeeeeeeeeseeeeeeeeees 46 3 21 Processamento final fim do per odo de PWM cccccese
123. eri ncias ee a experi ncia 1 experi ncia 2 o 000 40 40 40 40 40 40 a 4 eee EINE MNE AREAS o d RS RR 2 4s a 6 66 48 40 2 8 2 690 84 8 8 8 fff um 898 98 97 96 a 0 1 ooo ECA AR RR RR o 43 135 128 1235 124 12 EC a 17 pas TT 44342 180 158 147 155 147 7 S 4434241 204 173 160 17 1620 1 1 To ES E qo oo 6 86 191 MM E Ic B2 235 MM 80 26 0 256 30 1 E 326 371 E 39 5 ER o ae NNE 76 220 200 200 180 180 160 160 140 140 120 120 100 Sensor Azul N Sensor Verde 100 o0 o0 60 40 60 20 40 500 1000 1500 2000 2500 3000 0 500 1000 1500 2000 2500 3000 Massa g Massa 9 220 220 200 200 160 160 160 160 140 140 120 120 100 100 Sensor Branco Sensor Castanho 80 80 60 60 40 40 20 20 500 1000 1500 2000 2500 3000 0 500 1000 1500 2000 2500 3000 Massa g Massa g Co Fig 4 15 Rela o entre a medi o de cada sensor e o peso aplicado experi ncia 1 A Fig 4 15 apresenta graficamente os dados registados para cada sensor testado isoladamente experi ncia 1 e confirma nos a rela o esperada entre a for a grav tica aplicada sobre cada extens metro e a deforma o medida trata se sem d vida de uma rela o proporcional As rectas tra adas correspondem regress o linear robusta baseada nos pontos de m
124. esolu o aos par metros Sensoroutpu Sensororigina 8 para 7 bits Desta forma o resultado encontrar se na gama 128 a 127 Contudo a representa o de valores negativos n o faz muito sentido uma vez que nunca temos for as negativas aplicadas sobre cada sensor mas sim for as abaixo do valor inicial For as negativas implicariam que as placas de acr lico onde est o fixos os extens metros se deformassem no sentido inverso o que nunca acontece uma vez que os parafusos de apoio s est o aplicados numa face das placas Contudo h sempre uma for a de pr carga n o nula com o sistema em equil brio e por isso podemos ter for as acima ou abaixo dessa for a de pr carga Interessa nos por isso obter sempre resultados positivos mas para tal precisar amos de conhecer priori a for a aplicada inicialmente o que n o sabemos nem temos meios de saber Para resolver este pormenor em vez de atribuirmos zero ao resultado da express o inicial iremos atribuir o valor 127 como correspondendo ao ponto interm dio entre O e 255 relativo utiliza o de valores de 8 bits Uma condi o deste g nero pressup e que a for a inicial situa se a meia escala do valor m ximo o que nem sempre verdade mas pelo menos permite nos dar a garantia de resultados sempre positivos De qualquer maneira a unidade principal de controlo PC sempre pode corrigir este resultado pela adi o de um segundo offset Resultado Sensor Se
125. este dos algoritmos de controlo baseados na informa o das for as de reac o respons veis pelo equil brio est tico da estrutura e pela realiza o de movimentos simples Cap tulo 5 Conclus es faz se uma avalia o dos resultados em termos de funcionalidade e desempenho do sistema e tra am se as perspectivas de trabalho futuro Cap tulo 2 Arquitectura das Comunica es 2 1 INTRODU O O sistema de controlo implementado baseado numa configura o distribu da master slave e constitu da por tr s tipos de unidades ligadas em rede a unidade central de processamento a unidade master e as unidades slave A unidade central de controlo respons vel pela gest o global dos procedimentos efectuando o c lculo das configura es que as juntas tem de adoptar em fun o dos valores dos sensores A unidade Master mestre tem como principal tarefa distribuir os comandos provenientes da unidade principal pelas diversas unidades locais slaves bem como direccionar os dados sensoriais provenientes das slaves para a unidade principal As unidades Slave escravo t m como principais fun es a gera o da onda de pulso modulado PWM de controlo dos servomotores e a aquisi o dos sinais dos diversos sensores A unidade central de controlo est definida como uma placa de controlo baseada no padr o PC104 tal como apresentada na Fig 2 1 mas pode se utilizar igualmente um PC externo ou um computador port til com porta s
126. este valor deixando de responder para cargas superiores a 1 5 kg bin rio 1 1 47 N m talvez devendo se a desgaste destes actuadores Tal justifica o facto da massa mais elevada da lista ser de 1 35 kg 3 2 4 ACTUA O SOBRE O SERVOMOTOR Tal como foi descrito na sec o3 2 1 cada unidade de controlo local capaz de gerar tr s sinais de PWM independentes entre si a partir do microcontrolador PIC disponibilizando os atrav s de tr s pinos reservados que se podem ligar directamente aos servomotores Tendo em conta que o microprocessador n o disp e de recursos suficientes para o controlo aut nomo de tr s sinais de impulso modulado foi necess rio adoptar um algoritmo baseado em interrup es e algumas vari veis globais para controlar a largura do impulso de PWM para os tr s servomotores Pela Fig 3 12 utilizou se um timer para gerar uma Interrup o peri dica de 50 Hz necess ria para elevar o sinal de PWM a 1 para os tr s servomotores A partir deste ponto um segundo timer programado com um determinado per odo entre 1 e 2 ms responsabilizando se assim por retornar o sinal de PWM a 0 Desta forma temos um meio de controlar o duty cycle do PWM para defini o da posi o dos servos 1 2 ms 20 ms gt lt 4 Timer A Timer2 A A interrupt interrupt Fig 3 12 Gera o de um sinal de PWM atrav s de dois timers Contudo para ser possivel definir um duty cycle diferente para ca
127. etros de compensa o OPTtIMOS ccccecsseeeeeeeeeeeeeeeeeeeeeees 60 Fig 3 54 Movimento de flex o de UMA perna enterra aeee errar ana rarena aee eea acre na acer eae n errar 61 Fig 3 55 Carga de 2 kg utilizada no topo da perna eeeerereee rea erra aeee eraee nen erraeaaanaoo 61 Fig S DO JUN do De a a eda ai ae no a er me eer Pt Pron SR mere A E O Ce a 62 FIG 397 Junta COO CVO is cscdaa nest sao sinh Suis a e done L nf a scanseb Glennie Aa ted adedenceedad 62 Fig S So JUNa da ANC As usa la einen etree Blisns Se ancl nie AUS a a ARES Aedo onda dad geod ance loonie el im 63 FIGO SO JUNT dO DO eee na pda ud ada a GR A SR Ra oa 63 FIg 3 60 dunta do JOCINOs macia 8sao sens Besse a DOU da a TSE Redondo dad a gas sad sonia dna ted dana 64 Fig S CI Junta da anca aaa tet secncan a dis Sadia ade O DRA DIES e ni fe tda Ras anced aonde a 64 Figo CL Junco De ner en eee near Da OURO So er ee eRe en ane eee or O a q 65 Figo CS SUM tea CO MO CINO ass eee ect a SiS ese a ose es a ac eee ee eee 65 FIGs CA aU tay Cae Ce sg E ees ga si a desea EE a ee eae ea eae 65 Fig 3 65 Movimento de flex o nas duas PEINAS cccccescccccseeeecceeeeeeceeaeceeceeeseeeaauseeeseeeeeeesageeeesseeeeessaneeeeaas 66 Fig 3 66 Conjunto das duas pernas executando um movimento de flex o sequ ncia superior e um movimento lateral sequ ncia inferior com uma carga de 2 1 kg em completa sincronia de pernas 66 Fig 3 67 Resposta ao polin mio
128. ga aumenta as exig ncias de corrente como tamb m a velocidade e as acelera es bruscas 3 3 2 CONTROLO DE VELOCIDADE Como se pode concluir os servomotores s o muito sens veis a varia es bruscas de velocidade e de acelera o provocando muito facilmente picos de corrente que impedem a correcta leitura da sua posi o De modo a prevenir este efeito tentou se introduzir algum controlo de velocidade para que tamb m pud ssemos regular a velocidade segundo as nossas necessidades possibilitando movimentos mais suaves No entanto como n o temos possibilidade de fazer o controlo directo de velocidade utilizar se o controlo de posi o para executar traject rias que no seu todo definem uma velocidade m dia que pode ser configur vel At agora temos vindo a aplicar degraus de posi o aos servos tal como exemplifica a Fig 3 24 Se aplicarmos uma sucess o de degraus de varia o de amplitude e intervalo de tempo o mais pequenos poss veis cuja amplitude final de cada degrau aumenta proporcionalmente at atingir a posi o desejada temos a aplica o de uma rampa de posi es cujos extremos de posi o e dura o total definem a velocidade m dia do movimento A Fig 3 26 apresenta um exemplo de uma traject ria em rampa desde 45 at 45 com uma dura o de 1 8s o que corresponde a uma velocidade m dia de 50 s 50 50 Position degrees Position degrees time s time s Fig 3 25 Aplica o de um deg
129. gue o formato da vers o CAN 2 04 ou seja de 11 bits e deve se assegurar que o overflow do buffer O para o buffer 1 est desactivado dado que estamos a usar um buffer para cada ndice de mensagem Deve se ainda colocar cada um dos dois buffers de recep o prontos para recep o verificando tamb m se o interrupt flag associado est desligado Para a transmiss o os identificadores das mensagens dever o estar de acordo com o formato standard ou seja dever o possuir 11 bits de comprimento e necess rio definir prioridades para cada um dos tr s buffers para defini o da ordem de transmiss o no caso de v rios agendamentos simult neos Por quest es de similaridade de comportamento tamb m se reservar um buffer de transmiss o para cada tipo de mensagem fazendo apenas uso de dois buffers O buffer O utilizado para as mensagens de index O possuir a m xima prioridade e o buffer 1 possuir a prioridade m nima Tabela 10 Index O M xima TXBOCON 0b11 Index 1 M nima TXBICON 0b10 TXB2CON 0b01 Tabela 10 Atribui o de prioridades entre cada buffer de transmiss o 2 Modo de Opera o Normal Para colocar o CAN a funcionar s resta definir o modo de opera o normal atrav s do registo pr prio para o efeito Resumindo o processo 1 Coloca o do PIC no modo de configura o Defini o da dura o de cada segmento de bit Defini o do bitrate para a velocidade pretendida Configu
130. ha de despender mais ou menos energia de acordo com o tipo de percurso a realizar Esta situa o equivalente da modifica o da carga na medida que quando o bin rio a que est sujeito aumenta aproxima se do ponto 0 equivalente a aumentar a massa da carga e vice versa gt Al m da carga influenciar a resposta do servo tamb m a velocidade influencia Tal devido ao facto de n o s a for a grav tica fazer parte do bin rio exercido no servo mas tamb m a velocidade e a sua varia o acelera o Desta forma diminuindo o per odo da traject ria estamos a aumentar a velocidade o que interfere no bin rio exercido induzindo por isso numa resposta mais inst vel 60 gt Um outro detalhe importante as condi es de alimenta o el ctrica dos servomotores Caso a corrente m xima a fornecer seja limitada ou a tens o de alimenta o baixa o bin rio a aplicar no motor para executar um determinado movimento aumenta introduzindo atraso na resposta e logo maior instabilidade Para minimizar estes problemas duas baterias de L tio de 7 4V s o ligadas em paralelo de modo a fornecer uma corrente de 9600 mAh ao sistema Como se pode constatar estamos a lidar com um processo altamente n o linear em que as condi es iniciais aplicadas nos servomotores est o sempre a mudar o que um problema uma vez que o controlo cl ssico baseado num PID n o entra em considera o com as condi es iniciais Uma form
131. i ncia que entregaram gratuitamente para que este trabalho desse os seus frutos Em igual medida agrade o toda a coopera o por parte do Departamento de Mec nica pela disponibilidade de recursos e toda a ajuda fornecida para a realiza o deste trabalho palavras chave resumo Rob tica human ide arquitectura de controlo comunica o CAN controlo de baixo n vel controlo ao n vel da tarefa A rea da rob tica human ide apresenta uma din mica crescente em resultado dos avan os tecnol gicos verificados nos ltimos anos No seguimento destes desenvolvimentos v rios grupos de investiga o t m iniciado a constru o de rob s de pequenas dimens es e baixo custo no sentido de realizarem trabalho cient fico em reas t o diversas como o controlo a percep o a navega o e a coopera o Com a realiza o deste trabalho pretendeu se dar seguimento a actividades anteriores concentradas no projecto e concep o de uma plataforma human ide assente numa arquitectura de controlo distribu da Entre os maiores desafios colocados inicialmente assumiram particular import ncia o desempenho da arquitectura de controlo e as limita es dos elementos de actua o servomotores Nesta linha de ideais esta disserta o descreve o desenvolvimento e avalia o do sistema de comunica es do sistema de controlo de baixo n vel e de diversos algoritmos e estrat gias de controlo ao n vel da tarefa Neste sentido for
132. ica a condi es iniciais espec ficas O que se sabe que as condi es de pr carga da plataforma human ide bem como a deforma o inicial das placas de acr lico n o s o sempre constantes o que dificulta obviamente esta tarefa Para piorar mais as sa das iniciais dos extens metros est o sempre em mudan a pelo que os offsets de calibra o nunca s o est ticos Substituindo o acr lico utilizado nas placas que sust m os extens metros por outros materiais pode melhorar o desempenho dos sensores mas as varia es inerciais inerentes locomo o continuam presentes pelo que n o existe uma solu o simples para a resolu o deste problema Contudo garante se que a rela o de varia o entre a deforma o e a for a est tica pelo que se pode conhecer a varia o de for a aplicada Pela Tabela 17 sabe se que a constante que relaciona a deforma o com a for a aplicada de cerca de 4 Adeforma o _ Adeforma o 39 6 404 com g 9 81 m s Amassa Aforca Ou seja sabe se que uma varia o na deforma o de uma unidade corresponde a uma varia o de for a na ordem dos 0 25N Apenas o valor absoluto que n o se pode conhecer 80 4 4 MEDI O DO CENTRO DE PRESS O 4 4 1 REPRESENTA O DO CENTRO DE PRESS O O centro de press o dado pela projec o da for a gravitacional da plataforma human ide combinada com as for as inerciais inerentes ao pr prio movimento sobre cada p Para baixas
133. icador de largura de impulso Verifica se ent o dois tipos de compensa o presentes a compensa o s rie executada pelo ganho proporcional K e a compensa o paralela realizada na realimenta o atrav s de um ganho PD proporcional derivativo posi o medida Note se que o sinal proveniente da realimenta o f t para posterior compara o n o depende exclusivamente da posi o medida mas tamb m da velocidade actual o que confere uma maior estabilidade na realiza o do percurso para a posi o desejada Um pormenor que vale a pena salientar a aus ncia da componente integral no controlo o que poder originar erros em regime estacion rio quando aplicadas cargas elevadas sobre o eixo 38 3 2 3 SETUP EXPERIMENTAL De forma a poder avaliar o desempenho do servomotor foi montada o setup experimental ilustrado na Fig 3 10 Pretende se monitorar a posi o efectiva do actuador ao longo do tempo e a corrente consumida tendo em vista a varia o dos seguintes par metros gt Excurs o do movimento posi o inicial e final gt Velocidade do movimento gt Carga aplicada no eixo Computer RS 232 Master unit CAN bus Slave unit Applying Feedback position u t position y t Servomotor Fig 3 11 Arquitectura das Tabela 13 Lista de cargas utilizadas para teste comunicacoes no setup Pela Fig 3 10 podemos visualizar as liga es com a unidade princip
134. ig 3 5 J quanto velocidade desconhece se a forma de aceder a este dado Tendo acesso informa o da posi o poss vel monitorar constantemente a posi o do servo a partir da unidade de controlo local e transmiti la ao PC atrav s da rede de comunica es podendo avaliar continuamente a performance de cada actuador Deslocando o servo na aus ncia de carga verifica se uma varia o da tens o de sa da entre 0 8 e 1 8 V ao longo dos 180 de excurs o podendo ser amostrado pelo PIC atrav s da ADC Utilizando as tens es de refer ncia standard para a ADC 0 e 5V precisamos de pelo menos 10 bits para o quantificador tendo em conta que necessitamos de uma resolu o que permita distinguir 180 posi es poss veis resolu o de 1 o ee RE a o o 5V o BUS uan og niveis de quantifica o niveis de quantifica o T8v 08V amp 900 180 bits om log 900 10 bits quant Como a ADC do PIC oferece a op o de quantifica o a 10 bits tal conveniente aproveitar No entanto a medi o n o t o simples como amostrar a tens o de sa da quando desejado pois na presen a de cargas no 41 eixo e ou de velocidades elevadas surge um estranho impulso acima do n vel de tens o correspondente posi o pelo que se a medi o for executada no momento do impulso o resultado ser falso Tal motivo devido ao facto de nos modelos da HITEC a tens o de refer ncia do potenci metro n o ser
135. ilidade de um pino dedicado a cada um para aplica o directa de um sinal modulado em duty cycle para o controlo de posi o PWM Adicionalmente um multiplexer de 16 canais utilizado para fazer a aquisi o sensorial dos servomotores e dos sensores inerciais A Fig 3 3 descreve os compontes apresentados no pr prio m dulo 34 Power regulator Power plug Piggy back board 1 PWM plugs Fuse connector Piggy back 3 q Unit CAN WEN Address board 2 y o s i Connector a E Connector to sensor A to sensor Fig 3 3 Imagens de uma unidade de controlo local PIC Cristal oscillator Piggy back socket CAN driver ASA 00000005 gt 00000000000000 ai 3 peso tec CO0000000000 90 vezi SWid NO eye 16 1 multiplexer lt 3 2 2 ACTUADORES OS SERVOMOTORES Para a actua o sobre as juntas essencial tanto o controlo de posi o como de velocidade e dado que em m dia cada junta n o possui uma excurs o de movimento superior a 180 uma solu o baseada em servomotores foi a mais imediata Fig 3 4 Podem se enunciar as seguintes vantagens e desvantagens para esta escolha v Excurs o de posi o de 180 Controlador de posi o inclu do Dispositivo relativamente pequeno e compacto Relativamente barato N o oferece externamente a possibilidade de controlo de velocidade Ms as 2k ohms gato Pla
136. imo de oscila o Em funcionamento normal o sinal de PWM da entrada comparado com o sinal resultante de um gerador de impulso linear linear pulse generator controlado a partir da posi o obtida pelo potenci metro e da velocidade medida a partir da for a contra electromotriz do motor tens o gerada entre impulsos de pot ncia O sinal gerado da mesma forma que o de entrada e para baixas velocidades a sua largura de impulso deve corresponder posi o efectiva do motor A diferen a de largura de impulso entre estes dois sinais produzido pelo comparador de largura de impulso pulse width comparator conhecido como sinal de erro em seguida amplificada atrav s de um amplificador de largura de impulso pulse stretcher que depois aplicado numa ponte H BAL6686 na Fig 3 8 que controla o motor Facilmente se percebe que quando a largura de impulso do sinal de entrada igual resultante pelo gerador de impulso erro nulo a diferen a de largura nula e nenhum sinal aplicado ao motor deixando o em repouso note que o motor em si controlado em velocidade pelo que se nenhum sinal for aplicado ele tende para o repouso Futaba 3003 Motor Back EMF Sots Spood Control Feedback Guin Motor Drive 4 sits output BAL6686 H Bridge 330K shunt added 240K total Input Pulse Ge 1 2 ms 33uF Reference vi of 5 Rer Voltage Vr 2 5 volts MT v mito LM Sete rato Stret
137. ional Conference on Humanoid Robots Boston Massachusetts USA September 7 8 2000 4 T Furuta T Tawara Y Okumura M Shimizu K Tomiyama Design and Construction of a Series of Compact Humanoid Robots and Development of Biped Walk Control Strategies Robotics and Autonomous Systems 37 pp 81 100 2001 5 J H Kim et al Humanoid Robot HanSaRam Recent Progress and Developments Journal of Computational Intelligence 8 1 pp 45 55 2004 6 L Hu C Zhou Locomotion planning of humanoid robot Robo Erectus Senior RESr 1 in Proceedings of the IEEE RAS International Conference on Humanoid Robots Pittsburgh USA Nov 29 Dez 01 2007 7 S Behnke J Stiickler H Strasdat and M Schreiber Hierarchical Reactive Control for Soccer Playing Humanoid Robots book chapter in the publication Humanoid Robots Human like Machines ISBN 978 3 902613 07 3 edited by Matthias Hackel pp 625 642 2007 8 Lu s Gomes Mauro Silva Concep o e Desenvolvimento da Unidade de Percep o e Controlo para um Robot Human ide Relat rio final de projecto 2004 05 Departamento de Engenharia Mec nica 9 Nuno Be a ngelo Cardoso Desenvolvimento e Integra o das Sub estruturas Inferior e Superior para a Locomo o de uma Plataforma Human ide Relat rio final de projecto 2004 05 Departamento de Engenharia Mec nica 10 V tor M F Santos Filipe M T Silva Engineering Solutions
138. iro n vel associado aos par metros K 1 a estar activo em cada um dos servomotores e se os sinais de controlo dos motores PWM devem estar activos valores booleanos bit 7 6 5 4 3 2 l bit O PWM Controller 3 Controller 2 Controller 1 Byte Control Flags da primeira mensagem Transac o Slave Master Por outro lado necess rio actualizar a base de dados na unidade master pelo envio de mensagens CAN com os dados sensoriais de cada slave Tal executado logo ap s a recep o do pacote de actua o e com o retorno das seguintes informa es m Posi o angular dos servomotores Velocidade estimada dos servos Corrente consumida Output dos sensores conectados via piggy back Source address Destination address Index Operation ees rs E ec E E E Da Identificador de uma mensagem de actualiza o sensorial Os pacotes de actualiza o sensorial devem possuir no campo destination address o endere o da unidade master 0b0000 dado que a mensagem se destina a ele e o campo operation a ObOO indicativo de que a mensagem cont m dados sensoriais O source address cont m o endere o do slave respectivo byte 1 byte 2 byte 3 byte 4 byte 5 byte 6 byte 7 byte 8 Sensor Flags Velocity 1 Velocity 2 Velocity 3 Dados do primeiro pacote de actualiza o sensorial Index 0 byte 1 byte 2 byte 3 byte 4 byte 5 byte 6 byte 7 byte 8 Dados do segundo pacote de actualiza o sensorial Index 1 Os valores de sa da dos sensores
139. ito pelo que transportar as seguintes informa es para cada um dos tr s servomotores associados m Posi o de refer ncia a aplicar ao controlador de primeiro n vel m Velocidade m dia do movimento m Flags de des activa o dos controladores locais ex PWM m Par metros de compensa o dos controladores local e de primeiro nivel Source address Destination address Index Operation 0 0 0 0 0 d d d do i l Identificador de uma mensagem de actualiza o de actuadores O identificador destas mensagens possuem o endere o 0b0000 no source address indicativo de que o pacote proveniente da unidade master e o campo operation cont m o c digo 0b01 descrevendo que o pacote tem como inten o fazer uma actualiza o dos actuadores O campo destination address identifica o SCU alvo byte 1 byte 2 byte 3 byte 4 byte 5 byte 6 byte 7 byte 8 Velocity 1 Velocity 2 Velocity 3 Control Flags Dados da primeira mensagem de actualiza o de actuadores Index 0 22 byte 1 byte 2 byte 3 byte 4 byte 5 byte 6 byte 7 byte 8 Dados da segunda mensagem de actualiza o de actuadores Index 1 Cada transac o constitu da por dois mensagens CAN em que tanto a posi o refer ncia final Reference i como a velocidade m dia Velocity i e os par metros de compensa o K i K i para cada servomotor s o actualizadas de uma s vez O byte Control Flags tem como fun o indicar qual o tipo de controlador de prime
140. ivamente traject ria esperada para cargas elevadas Para corrigir estas caracter sticas torna se importante realizar alguma esp cie de controlo adicional ou ao n vel do controlador interno do servo ou externamente usando o sinal de posi o como feedback e o sinal de PWM para controlo da posi o 3 4 ESTUDO DO SERVOMOTOR EM MALHA FECHADA Esta sec o descreve algumas estrat gias para a melhoria da resposta dos servos relativamente ao observado em malha aberta em termos de gt Tempo de subida gt Tempo de estabelecimento gt Erro em regime estacion rio O objectivo basicamente a minimiza o destes par metros de modo a aproximar ao m ximo a resposta traject ria solicitada V rias metodologias podem ser seguidas para compensa o como por exemplo a substitui o da electr nica de controlo dos actuadores No entanto t m se em mente a procura de m todos 51 que n o modifiquem o hardware destas unidades de forma a permitir a f cil substitui o em caso de necessidade Por raz es de simplicidade realizar se o controlo externamente ao servomotor usando para isso o microcontrolador para implementar a lei de controlo mais adequada Com a implementa o do controlador por firmware poss vel alterar os par metros ou a estrutura do controlador em tempo real quer autonomamente ao n vel da unidade slave em quest o ou pela troca de informa o entre o PC e o respectivo m dulo Desta forma evita
141. ixa de se verificar deltas de Dirac at segunda deriva o da posi o acelera o Se aumentarmos mais ainda a ordem do polin mio para 5 podemos garantir acelera o nula no in cio e no fim Contudo medida que aumentamos a ordem do polin mio maior a velocidade instant nea a meio do trajecto pelo que uma ordem superior a 5 n o recomend vel Voltando a amostrar a resposta dos servos em malha aberta agora com a implementa o de traject rias podemos observar para o caso da rampa Fig 3 29 e Fig 3 30 a estabilidade acrescida nas respostas para qualquer carga aplicada Os efeitos de picos de posi o e as oscila es durante o percurso praticamente desapareceram demonstrando o consumo controlado de corrente com esta solu o 50 w w Y w o o D D Q o g g c o O s A A Requested traj 258g Load 675g Load time time Fig 3 29 Resposta a rampa com duas cargas diferentes Fig 3 30 Resposta a rampa com uma carga pesada Ap 5 At 100ms Ap 5 At 100ms A Fig 3 31 apresenta as respostas correspondentes as traject rias polinomiais com a observa o dos mesmos resultados que os da rampa Position degrees Requested tra 9g Load 1378g Load 0 0 5 1 1 5 time s Fig 3 31 Resposta ao polin mio para duas cargas diferentes Ttraj 1s No entanto continua se a verificar o crescente tempo de atraso e erro em regime estacion rio relat
142. l resultando num erro em regime estacion rio n o nulo 48 Outro aspecto a salientar a vis vel instabilidade durante a realiza o do trajecto o que mais not rio para cargas elevadas do que para baixas Al m disso observa se um salto no in cio da traject ria para posi es inferiores a 45 seguidamente com invers o de velocidade em direc o ao valor final No entanto este comportamento n o correspondeu ao observado visualizando se um movimento r pido e sem oscila es durante todo o percurso Tal sugere que a posi o lida a partir do potenci metro esteja a ser perturbada por algum efeito an malo A presen a de acelera es bruscas como acontece no arranque da traject ria pode provocar picos de corrente que em termos sensoriais correspondem a impulsos de corrente que podem ocupar todo o per odo de PWM Nestas circunst ncias a posi o considerada como sendo a tens o m nima deixa de poder ser medida sofrendo um aumento em tens o para o topo do impulso que em termos de posi o angular corresponde a uma descida brusca tal como os gr ficos nos mostram Neste sentido pode se dizer que a presen a do impulso de corrente est a mascarar as medi es de posi o do servo agravando os resultados na presen a de cargas elevadas No entanto tal deixa de se verificar nos ltimos instantes ainda antes da finaliza o da traject ria e durante a fase estacion ria demonstrando que n o s a massa da car
143. lizar tarefas e de interagir com o ser humano Fig 1 1 QRIO Sony Asimo Honda e KHR 3 Hubo Lab 1 1 ENQUADRAMENTO DO TRABALHO Muitos grupos de investiga o iniciaram a constru o de rob s de baixo custo no sentido de realizarem Investiga o em reas t o diversas como o controlo a percep o a navega o o comportamento ou a coopera o 3 7 Este foi tamb m o m bil principal que levou um grupo do Departamento de Engenharia Mec nica da Universidade de Aveiro a encetar a tarefa de constru o de uma tal plataforma 8 9 O estado actual de desenvolvimento perspectiva a abordagem de algoritmos eficientes ao n vel do controlo planeamento e percep o 10 11 O projecto Human ide na Universidade de Aveiro encontra a sua motiva o em diversas vertentes das quais se destacam as seguintes e A aposta nos rob s human ides como a via mais promissora para chegar a sistemas de elevada mobilidade versatilidade de opera o e facilidade de interac o com os humanos e A cria o de uma plataforma de investiga o de grande valor pedag gico face aos enormes desafios cient ficos e t cnicos diversidade de problemas ferramentas e n veis de integra o e A promo o do envolvimento de um grupo de estudantes da UA em competi es rob ticas internacionais Por exemplo o ROBOCUP e o FIRA s o duas organiza es Internacionais que realizam anualmente competi es na classe dos human ides A plataforma human
144. m todo para a medi o de corrente baseado no uso de uma resist ncia de baixo valor em s rie com a alimenta o do servo Fig 3 16 Configura o poss vel para medi o da corrente Embora este m todo permita uma leitura de corrente mais simplificada e de resultado sempre dispon vel sem a necessidade de algoritmos de medi o de largura de impulsos introduz outros inconvenientes x Emiss o excessiva de calor nas resist ncias nas situa es de maior consumo de corrente x A presen a da resist ncia provoca um aumento da corrente consumida pelo servo Tal explicado pelo facto de na resist ncia se verificar uma queda de tens o o que resulta numa diminui o da tens o de alimenta o do servo que ser tanto maior quanto maior for a corrente exigida Com esta diminui o o servo tem de realizar um maior esfor o o que equivale a aumentar a corrente drenada Dados estes inconvenientes achou se proveitoso aproveitar o sinal de posi o para tamb m ler o consumo de corrente com base na largura do impulso de corrente Desta forma o hardware simplificado dispensando a utiliza o de resist ncias em s rie com a alimenta o dos servos passando o trabalho para o lado do firmware responsabilizando se por determinar a posi o e a corrente consumida unicamente atrav s do sinal de posi o pela medi o do seu valor m nimo e da largura de impulso respectivamente A Fig 3 17 descreve a estrat gia adoptada uma i
145. m recebida do PC buffer de recep o e a mensagem de resposta a enviar buffer de transmiss o A implementa o de cada um destes procedimentos est descrita na Fig 2 8 e Fig 2 9 correspondendo aos passos armazenamento no buffer de recep o e enviar buffer de transmiss o apontados na Fig 2 7 Como detalhes importantes para a robustez deste algoritmo a utiliza o de um timer para contagem de tempo com vista a impor um tempo de timeout m ximo para a conclus o de cada um dos procedimentos Deste modo evitam se bloqueios que poderiam comprometer o funcionamento do sistema IN CIO Ler Byte recebido Em modo de recep o de Frame Timeout na recep o de Byte Limpar buffer de recep o Em modo de recep o de Frame Y Sim Armazenar byte no buffer de recep o Buffer de Recep o cheio Iniciar contagem de Tempo para avalia o de Timeouts FIM Fig 2 8 Recep o de byte por RS 232 e armazenamento no buffer de recep o 17 IN CIO Sim Todos os bytes do Buffer TX enviados N o Transmitir byte Reset da contagem de tempo para avalia o de timeouts Sim Transmiss o Completa Timeout na transmiss o de caracter Sim FIM Fig 2 9 Envio do buffer de transmiss o por RS 232 A fun o da tarefa processamento da mensagem
146. mAh No que respeita ao controlo foram assumidas desde logo as vantagens de uma arquitectura distribu da e modular baseada num barramento CAN 12 14 Este respons vel por permitir a troca de informa o entre as diversas unidades locais de controlo a partir de uma unidade mestre que faz a gest o da rede e que est directamente ligada a uma unidade prim ria de decis o Esta unidade central de processamento poder ser um computador comum ou uma embedded motherboard do tipo PC 104 ou nano ITX de dimens es reduzidas Neste momento a plataforma constitu da por 9 unidades de controlo 8 de controlo local dos actuadores e sensores e um de controlo de tr fego na rede CAN As unidades de controlo local est o distribu das de forma a agrupar conjuntos de tr s actuadores relativos a um determinado membro como o caso das pernas ou dos bra os Fig 1 3 Com uma arquitectura deste g nero pretende se que o hardware que constitui estes m dulos seja id ntico com um software muito similar entre eles Implementando esta estrat gia consegue se um grau de fiabilidade superior uma vez que os m dulos s o independentes permitindo que as anomalias sejam mais facilmente detectadas e corrigidas Os m dulos podem ser trocados facilmente pois bastar programar o microprocessador com o firmware padr o que ele mesmo se adaptar tarefa necess ria tanto atrav s do endere o atribu do como pela gest o directa da unidade central de processa
147. ma forma como se se tratasse de uma aplica o directa da for a sobre o p Seria Interessante fazer com que o controlador distinguisse estes tipos de aplica o podendo eventualmente aplicar diferentes tipos de controlo para melhor se adequar situa o em causa mas Infelizmente n o existem meios de detectar a origem das for as pelo que ficaremos limitados a um nico tipo de controlo Aplicaram se perturba es na forma de empurr es sobre a perna em teste na seguinte sequ ncia considerando a perspectiva traseira da perna 1 Frente 2 Tr s 3 Esquerda 4 Direita Empurr es suficientemente bruscos foram aplicados de forma a provocar o levantamento do p sobre o solo de modo a analisar o comportamento do controlador no caso em que o centro de massa da perna deixa de coincidir com o centro de press o _ AX component perpendicular to foot YY component parallel to foot Center of Pressure over the foot suface servo 0 as o 100 Servo 1 0Y T T 0 5 E a 100 0 5 10 15 20 25 a0 time 5 servo 0 44 Mean current drained by each seromotor seno Toy yd Current drainning Sa Fig 4 28 Introdu o de perturba es externas na perna frente tr s esquerda e direita controlo Proporcional 97 Center of Pressure over the foot surface Ax component YY component a mam mam T E o E a 5 10 15 20 25
148. mento Em resumo apresentam se as vantagens da arquitectura distribu da e Sistemas fi veis opera o independente e Sistemas de controlo mais simples e Mais f cil detec o de anomalias e Actualiza o f cil do firmware Main Control RS232 Master 2 Slaves Fig 1 3 Arquitectura distribuida da plataforma Para controlo da junta foram seleccionados servomotores de v rios bin rios diferentes de acordo com a exig ncia de cada junta Cada microcontrolador pode controlar at tr s servomotores tal como indicado na Fig 1 3 Relativamente percep o destacam se os seguintes sensores proprioceptivos e inerciais 1 Potencidmetros de medi o da posi o das juntas inclu das nos servomotores poss vel extrair deste sensor tanto a posi o da junta como a corrente consumida 2 Sensores de for a baseados em extens metros para medi o das for as de reac o dos p s 3 Inclin metros e girosc pios para medi o da acelera o grav tica e da velocidade angular respectivamente Cada microcontrolador poder monitorar at tr s sinais de posi o retirados dos tr s servos e at quatro sensores adicionais podendo ser de for a ou inerciais Tal compromisso adv m de limita es da gest o dos motores por parte do microcontrolador bem como de quest es relativas organiza o da informa o trocada pelo barramento de comunica es protocolo 1 2 OBJECTIVOS E MOTIVA ES O
149. na lei de controlo proporcional apresentada estamos a relacionar o erro do centro de press o que uma grandeza linear de dist ncia com um par metro angular velocidade em graus por segundo s atrav s de uma constante Sempre que se pretende relacionar uma grandeza linear com outra angular uma matriz denominada por Jacobiano utilizada Por isso a lei de controlo ser modificada de modo a incluir este novo par metro v KR J xe A matriz Jacobiana representa a rela o entre a derivada de um par metro linear com a derivada de um par metro angular Para o nosso caso pretendemos relacionar centro de press o par metro linear com a posi o par metro angular pelo que dCoP dCoP OCoP 06 06 06 Q COP dCoP dCoP dCoP Po a 08 06 90 dCoP dCoP OCOP cujo centro de press o CoP um valor tern rio representado nas coordenadas espaciais x y z e 0 corresponde s posi es 01 02 e 0 das juntas lateral e dianteira do p e do joelho respectivamente Fig 4 20 Note que nesta matriz j est inclu da a posi o do joelho o que prev a controlabilidade desta junta Embora a coordenada z de CoP n o tenha significado optou se por inclui lo pois confere o formato quadrado matriz Jacobiana o que facilita o c lculo da sua inversa Considerando que para baixas velocidades o centro de massa coincide com o centro de press o podemos estimar a matriz Jacobiana do centro de
150. no desequil brio permanente dos sensores Como condi es para que tal n o aconte a necess rio que e A plataforma superior do p seja completamente homog nea e As quatro placas de acr lico sejam exactamente iguais e estejam fixas plataforma superior de forma semelhante entre si e O centro de massa da estrutura do robot coincida com o centro de press o nulo no momento da calibra o Estas s o condi es muito dif ceis de garantir pelo que ainda n o existem solu es em vista para resolver este problema A Fig 4 30 e a Fig 4 31 revelam os dados num ricos do centro de press o medido e da posi o angular actuada para o controlador proporcional e para o Jacobiano respectivamente para duas circunst ncias distintas e Levantamento do p os servomotores saturam numa das posi es extremas provocado pelo permanente desequil brio do centro de press o medido e Reposi o do p no solo o controlador converge novamente para o valor original e os motores estabilizam numa posi o pr xima inicial Para a situa o descrita na sec o anterior de adapta o de um p ao solo esta experi ncia demonstra claramente que o m todo de compensa o positiva n o resulta quando este se encontra suspenso acima do solo dada a inabilidade deste controlador de funcionar convenientemente na aus ncia de for as de reac o Por este motivo o m todo de adapta o livre por desactiva o do PWM aplicado aos motores
151. nozelo do p realizou se um deslocamento para o lado As figuras seguintes Fig 3 66 demonstram os resultados referentes a apenas uma das pernas dado que os da outra perna s o bastante semelhantes Fig 3 66 Conjunto das duas pernas executando um movimento de flex o sequ ncia superior e um movimento lateral sequ ncia inferior com uma carga de 2 1 kg em completa sincronia de pernas 66 pa O D O Open Loop 0 _ 20 240 EP RE ee E D Expected trajectory e o D p 20 3 Open Loop S Ki 0 10 Kp 0 80 S Ki 0 10 Kp 0 80 E 30 T o gt 40 e 40 D Z 50 60 AN hoaa E O a 2 4 6 8 fi 2 4 6 8 time s time s 70 7 35 Ail ee E m T T 50 25 o D open gop D Open Loop S 40 20 S Ki 0 10 Kp 0 80 S 30 15 na DO NT gt A 7 7 Ki 0 15 Kp 0 20 oN OR o 20 o 10 Expected trajectory 10 5 Expected trajectory 0 Q lu 0 2 4 6 8 0 1 2 3 4 5 time s time s Fig 3 67 Resposta ao polin mio com um controlador PI Imagens superiores e inferior esquerda comportamento das tr s juntas envolvidas no movimento de flex o imagem inferior direita comportamento da junta lateral do p na realiza o do deslocamento lateral Como se pode observar na Fig 3 67 s com a presen a do controlador interno dos
152. nsagem sinalizadora de inconsist ncia no byte BCC Teste das comunica es USART entre PCe Master Para confirma o da correcta comunica o entre o PC e o Master pode ser enviada uma mensagem de teste igualmente de 6 bytes com o SOF como MESSAGE TEST OxFE byte 1 byte 2 byte 3 byte 4 byte 5 byte 6 SOF OxFE Mensagem USART PC gt Master de teste Os bytes 2 a 5 podem possuir qualquer valor desde que o byte BCC esteja de acordo com eles Por sua vez o master dever responder com uma mensagem de 7 bytes possuindo os mesmos valores que a primeira byte 1 byte 2 byte 3 byte 4 byte 5 byte 6 byte 7 Sor ore x2 x x Nx o0 IM B Resposta Master gt PC a uma mensagem de teste A Tabela 4 apresenta sintetizados os diversos tipos de mensagens apresentados nas sec es anteriores com a descri o do byte SOF utilizado para cada caso Tabela 4 Tipos de mensagens USART primeiro byte de cada frame Mensagem de solicita o MESSAGE REQ Mensagem de teste MESSAGE TEST Mensagem de sucesso MESSAGE SUCESS Par metros inv lidos MESSAGE INVREQ Mensagem inv lida MESSAGE INVALID 2 2 3 UNIDADE PRINCIPAL Configura o da Unidade Principal Solicita o de dados do PC para o Master Envio de uma mensagem de teste das comunica es Resposta a uma mensagem de solicita o MESSAGE REQ indicando que o comando foi executado com sucesso Pedido com par metros inv lidos BCC estrutura inv lida M
153. nsor 127 output riginal Resumindo o processo de leitura da for a aplicado segue o seguinte processo 1 Com a aplica o de uma for a a placa de acr lico em conjunto com o extens metro colado deformam se 2 A resist ncia hmica do extens metro varia em torno do valor nominal 120Q 3 A ponte de Wheatstone previamente calibrada pelo potenci metro regista a varia o pelo desequil brio de corrente que circula entre os dois ramos resultando numa varia o da tens o a sa da 4 O amplificador instrumental amplifica esta tens o A ADC do microcontrolador digitaliza esta tens o num valor de 8 bits 0 255 6 O valor estimado da for a aplicada determinado com base numa calibra o inicial por software presumindo a postura vertical da perna nessa circunst ncia A Como se pode constatar a for a estimada n o corresponde ao seu valor absoluto dado que ele depende de in meros factores e Desgaste na deforma o do acr lico resultante das quebras nas liga es polim ricas e Precis o dos extens metros e resist ncias envolvidas na ponte de Wheatstone pode variar para os diversos sensores e Precis o da ADC e Calibra o f sica sobre o potenci metro e Calibra o por software Embora os motivos resultantes de desgaste e precis o possam ser resolvidos pela adop o de materiais e componentes de boa qualidade o problema agrava se no que respeita aos procedimentos de calibra o Com
154. nsores ver sec o 4 4 2 traduzindo se numa menor for a de pr carga e consequentemente maior sensibilidade Este procedimento apenas se efectuou para o eixo yy offset permitindo aumentar a sensibilidade da compensa o na componente yy sem afectar a componente xx apresentando como nico inconveniente o aparecimento de alguma oscila o devida a ru do 94 Center of Pressure over the foot surface component perpendicular to foot YY component parallel to foot servo O AX E servo 1 0Y T mM Cc T oO EL time 5 ae Mean current drained by each servomotor Servo 0 xj i serwo 1 v4 10 1 5 5 gt O 0 5 10 15 20 25 aU Fig 4 24 Varia o do declive do plano segundo o eixo yy controlo proporcional Utilizando o algoritmo de controlo incluindo a matriz Jacobiana Fig 4 25 podemos observar a novidade do uso da junta do joelho na compensa o introduzindo maior efici ncia na compensa o Center of Pressure over the foot surface aA component gt YY component Position degrees 0 5 10 15 20 25 30 time 5 Mean current drained by each servomotor Current drainning So Fig 4 25 Varia o do declive do plano segundo o eixo yy controlo pelo Jacobiano 95 Varia o da inclina o do plano simultaneamente segundo o eixo xx e Fig 4 26 Inclina o do plano segundo os eixos xx e yy Os gr ficos da Fig 4 27 apresentam os resultados p
155. nterrup o baseada num timer gerada durante todo o per odo de PWM com uma periodicidade de 200us Apenas na zona de descida do PWM compreendida entre 1 e 2ms do duty cycle ela inibida n o se pretendendo interferir com as interrup es de alta frequ ncia Sempre que este timer gera uma Interrup o a tens o de sa da do potenci metro medido e comparado com um determinado limiar logo ap s a leitura da ADC Se estiver abaixo desse limiar considera se a n o ocorr ncia do impulso de corrente mas caso esteja acima uma vari vel contadora da largura de impulso incrementada No fim do per odo de PWM considerado logo ap s a zona de descida de PWM esta vari vel contadora indicar a largura do impulso medido no per odo de PWM anterior De notar que a resolu o de medi o da largura de impulso tanto maior quanto menor for a periodicidades das interrup es No entanto n o conv m definir per odos muito curtos sob pena de n o atribuir suficiente largura de banda de CPU para o programa principal ser executado completamente num per odo de PWM A periodicidade de 200us foi o melhor compromisso encontrado e permite executar no total 95 medi es ou 31 para cada servo ao longo de um per odo de PWM excluindo a zona de descida de PWM 43 Timer O generates 10us Processing Time Select next Servo change MUX input Potentiometer signal C an interrupt a
156. ntrar um conjunto adequado de par metros No entanto um conjunto de par metros do controlador s se adequa a uma situa o espec fica de carga traject ria e velocidade espec ficos pelo que seria importante detectar os v rios cen rios poss veis para que o controlador se adaptasse Tal seria poss vel pela medi o do bin rio aplicado no motor que varia de acordo com a in rcia presente Usando o sinal de sa da do potenci metro interno do servo conhecido por estar relacionado com a sua posi o descobrimos que al m de nos fornecer a posi o tamb m nos providencia a corrente consumida pelo dispositivo que por sua vez est relacionada com o bin rio aplicado ao motor Desta forma poder amos aplicar um controlador de for a que adaptaria os par metros de controlo de acordo com a corrente drenada pelo motor No entanto este sinal apresenta uma natureza bastante oscilat ria ainda mais com o controlo de posi o activado estando relacionada n o s com o bin rio resultante da for a grav tica como tamb m do que resulta da velocidade e da acelera o Para j desconhece se qual seria o formato da lei de controlo deste adaptador nem que par metros dever assumir pelo que mais investiga o ser necess ria sobre este t pico Mesmo assim nas experi ncias realizadas sobre as pernas do human ide s o utilizados par metros fixos do controlador de posi o que claro s o bastante limitados para garantir a estabilidade em qu
157. o com a estrutura do identificador enunciado anteriormente a m scara a definir cobrir os bits do endere o destinat rio e do index do pacote ou seja possuir o seguinte padr o bit 10 9 7 6 5 4 3 2 1 bit O Source address Destination address Index Operation 0 0 0 0 1 1 1 1 1 0 0 M scara a aplicar ao identificador De seguida definir se o dois filtros de modo a aceitar unicamente as mensagens cujo endere o destino corresponda ao pr prio SCU e destes redireccionar os de index O primeira mensagem para o buffer de recep o 0 e os de index 1 segunda mensagem para o buffer de recep o 1 Tabela 9 Redirec o dos pacotes Registos a configurar 0000 aaa a 000 0000 a a a a 000 0000 aaa a 100 0000 a a a a 100 0000 aaa a 100 0000 a a a a 100 Tabela 9 Configura o dos filtros para redireccionamento de pacotes para os dois buffers de recep o padr o a3 a2 al a0 endere o do SCU Desta forma redireccionando cada uma das duas mensagens para um buffer a parte evita se a perda de informa o caso ocorra overflow pois apenas o buffer cuja informa o equivalente nova mensagem index igual substitu do Transmiss o e Recep o de Mensagens Finalmente necess rio configurar a forma como as mensagens ser o transmitidas e recebidas Para a recep o necess rio definir a recep o de apenas pacotes v lidos cujo identificador se
158. o 1 cm o que representa uma baixa interfer ncia que os movimentos segundo o eixo yy induzem no eixo xx Para a traject ria ao longo do eixo xx CoP e 30 0 10 at 30 0 10 tamb m se verificam algumas flutua es no eixo yy mas contidas entre 15 unidades do centro de press o A cinem tica directa tamb m apresenta flutua es compreendidas entre 1 e 3cm para o joelho e entre 3 e 2cm para a anca Estas flutua es caracterizam se por uma forte depend ncia com o movimento no eixo ortogonal xx e n o podem de forma nenhuma ser ignorados Como que resumindo os dados apontados pelos movimentos em cada um dos eixos mostram uma sensibilidade muito maior no eixo yy no que respeita s flutua es sensoriais Tal pode ser induzido pela introdu o dos offsets no c lculo do centro de press o a partir das sa das dos sensores de for a ver sec o4 4 2 Por um lado possuem a vantagem de assemelhar as sensibilidades de cada componente do centro de press o mas trazem consigo a desvantagem de introduzir maiores flutua es no sinal de erro de tracking Infelizmente estamos perante um dilema quanto maior for este offset maior a reactividade do controlador sob pena de maiores oscila es do sinal de erro e quanto menor for maior a oposi o s flutua es mas mais lenta a resposta do controlador Uma solu o de compromisso torna se necess ria Percursos com ganho de compensa o de valor 50 e per odos de traje
159. o continuamente em mudan a A Fig 4 54 ilustra o problema descrito para duas experi ncias executadas em instantes de tempo diferentes mantendo iguais os ganhos de compensa o coordenadas refer ncia do CoP e per odo de execu o Trajectora medida do CoP Trajectoria prevista do CoP Cinematica directa do joelho iaae a aa a elgg ee 100 3 Cinematica directa da anca Trajectoria prevista do CoP i Cinematica directa do joelho 0p Cinematica directa da anca au EO BO am 40 a0 20 E o E D E 20 20 40 40 EO 50 a0 50 100 b 40 20 0 20 40 BO Fig 4 54 Duas experi ncias realizadas em diferentes momentos com iguais parametros de controlo Esta variabilidade de comportamento dificulta em grande parte a constru o de um algoritmo que permita fazer a correspond ncia da localiza o espacial do centro de gravidade com as coordenadas do centro de press o calculadas Por estas raz es ainda n o poss vel indicar uma lei de correspond ncia entre estas duas grandezas o que possibilitaria um dia mais tarde indicar as coordenadas espaciais desejadas da anca e o firmware presente nos microcontroladores calcularia o centro de press o refer ncia a aplicar ao respectivo controlador 4 7 DISCUSS O DOS RESULTADOS Dois controladores de equil brio foram propostos neste cap tulo nomeadamente o proporcional que determina a velocidade das juntas ortogonais do p com base no centro de
160. o ensaio com os par metros de compensa o ptimos 3 5 APLICA O DOS ALGORITMOS NO ROBOT HUMAN IDE Embora a solu o de controlo baseada num PID aparente ter bons resultados um determinando conjunto de par metros de compensa o apenas se pode considerar ptimo nas condi es em que foi feito o tunning Massa da carga Posi o inicial e final ou melhor varia o do bin rio ao longo da travessia Per odo do trajecto Tens o de alimenta o e corrente m xima fornecida dependente da fonte de alimenta o AA As Mudando qualquer um destes par metros resulta invariavelmente na altera o da resposta do servo podendo conferir lhe maior estabilidade ou torn lo inst vel gt O aumento da massa da carga induz instabilidade uma vez que o servo tem de fazer um esfor o maior para a mover no sentido que tem de aplicar maior bin rio no motor e por 1sso o tempo de atraso ser acrescido Numa situa o destas em que o sinal de feedback tem dificuldade em acompanhar a velocidade do controlador definido pelo factor de integra o K o sinal de controlo tende a saturar facilmente provocando fen menos de overshoot Por outro lado se a carga diminuir de massa o sinal de feedback consegue acompanhar perfeitamente o sinal de controlo conferindo uma maior reactividade sua correc o gt Seo percurso da traject ria for alterado a traject ria de bin rio tamb m muda fazendo com que o servo ten
161. o estas tr s componentes deveremos conseguir uma resposta muito pr xima da ideal com um tempo de atraso muito pequeno um tempo de estabelecimento pr xima da dura o da traject ria e um 58 comportamento suave durante a fase transit ria Como procedimento para fazer o tunning da compensa o seguiram se os passos seguintes 1 Aumentar K de modo a optimizar o tempo de atraso at come ar a ocorrer overshoot 2 Aumentar o valor de Kp o suficiente para eliminar o overshoot N o conv m utilizar este par metro para optimizar o tempo de atraso uma vez que o tempo de estabelecimento ao mesmo tempo agravado Deixemos por isso essa tarefa ac o integral 3 Se a resposta transit ria ainda n o for demasiado oscilante voltar ao passo 1 para melhorar ainda mais o tempo de atraso 4 Se a resposta come a a oscilar durante a fase transit ria aumentar o par metro Kp de modo a conferir suavidade durante o percurso 5 Voltar ao passo 1 Na Fig 3 50 comparam se dois ensaios executados durante o tunning correspondentes a um ajuste inicial e a outro final verificando se uma melhoria de cerca de 6 no erro m ximo em regime transit rio A Fig 3 51 apresenta um caso de exagero nos par metros de compensa o levando instabilidade De modo a evitar estas situa es conv m executar o algoritmo de tunning em pequenos passos permitindo assim encontrar mais facilmente os par metros ptimos A partir de certo ponto ao
162. o o eixo yy 93 Relativamente corrente consumida por cada um apresentam se em unidades normalizadas de O a 100 percentagem para um tempo de medi o de 30s Os resultados s o comparados entre os dois tipos de controlador apresentados Varia o da inclina o do plano segundo o eixo xx Neste primeiro ensaio apenas se variou a componente xx do plano verificando se segundo os gr ficos da Fig 4 22 e da Fig 4 23 algumas varia es na componente xx do CoP durante a compensa o Por an lise pode se observar que embora se incline o plano at cerca de 45 o controlador n o permite erros do CoP superiores a 2 mm do ponto de equil brio Usando o controlador proporcional pode se constatar que o servomotor respons vel por compensar esta componente servo O junta lateral do p foi o nico a ser utilizado atingindo um deslocamento m ximo de cerca de 45 por forma a compensar a inclina o de 45 introduzida Comparando agora com o controlador que utiliza o Jacobiano pode se observar um comportamento muito semelhante tamb m com um deslocamento do servo O na ordem dos 45 Como a junta do joelho pouco interfere com a componente xx do CoP esta manteve se praticamente im vel A component perpendicular to foot YY component parallel to foot Center of Pressure over the foot surface 0 2 servo 0 4 wo 50 servo 1 yy gt op Z 5 5 q 100 0 5 10 15 20 25 30 time s
163. o para tal uma matriz Jacobiana 20 Nesta fase do trabalho apenas se testaram os algoritmos desenvolvidos para uma das pernas dado que se confia que estes algoritmos podem ser aplicados de forma igual a cada perna sem perda de generalidade 4 2 ESTRUTURA DOS P S 4 2 1 SENSORES DE FOR A OS EXTENS METROS Pretende se desenvolver um p que seja capaz de medir as for as de reac o aplicadas ao longo da sua rea de modo a permitir avaliar a posi o do centro de press o aplicado Para medi o das for as de reac o a solu o mais econ mica e vi vel consiste na utiliza o de extens metros Fig 4 1 que s o basicamente resist ncias cujo valor hmico varia com a sua deforma o 69 Fig 4 1 Exemplo de um extens metro t pico Aproveitando esta propriedade el stica que relaciona proporcionalmente a deforma o com a for a aplicada podemos colocar v rios extens metros ao longo da rea de cada p e pela medi o da sua deforma o medir a for a aplicada sobre cada um deles No entanto note que esta rela o proporcional apenas v lida para uma determinada zona de funcionamento denominada por zona el stica Fig 4 2 Apenas nesta zona se pode garantir que o material recue sempre ao seu estado inicial ap s uma deforma o e que assegure que o valor desta seja sempre igual para uma determinada for a imposta Zona el stica Fig 4 2 Rela o entre for a imposta e deforma o el stica P
164. o que no ltimo caso escusado o processamento do identificador excepto para o conhecimento do SCU fonte e do index do pacote No caso do endere o destino e da opera o apenas s o verificados para efeitos de verifica o do correcto funcionamento As mensagens de actua o a enviar v o buscar os valores a aplicar nos slaves a base de dados global que o PC periodicamente actualiza por comunica o s rie J as mensagens de car cter sensorial que v o chegando dos slaves actualizam constantemente as vari veis da mesma base de dados este mecanismo que garante a peri dica actualiza o da base de dados sensorial e das unidades slave no que toca actua o Procedimento de envio de uma mensagem de actua o 1 Constru o do identificador com base no endere o destino e no index do pacote endere o origem e opera o conhecidos 2 Construir o array de dados a enviar 8 bytes a partir da base de dados de actua o de acordo com o index da mensagem Enviar o pacote identificador array de dados pelo buffer de transmiss o adequado ao index 4 Actualiza o do estado de erro se ocorreu algum e 29 Recep o de um pacote de car cter sensorial 1 Obten o do identificador e do array de dados do pacote recebido 2 Actualiza o da base de dados sensorial a partir do endere o origem e do index do pacote 3 Actualiza o do estado de erro se ocorreu algum 2 3 4 UNIDADES SLAVE Algoritmo de Troca
165. o se devem fazer suposi es sobre os seus efeitos com base no controlo cl ssico uma vez que nem sequer iremos lidar com entradas em degrau mas sim numa sucess o de degraus o que pode resultar em efeitos diferentes Repare que o controlo realizado de forma incremental repare no elemento z que introuduz na compensa o a ltima sa da u n 1 calculando em cada itera o o incremento a dar ao sinal de controlo u t a fornecer ao servo Optou se por esta solu o dadas as vantagens que oferece v N o s o necess rias vari veis de elevada resolu o para armazenar o resultado de somas normalmente necess rio para a componente integral v Protec o wind up v Transfer ncia bumpless simplificada A alternativa ao algoritmo incremental exigiria a actualiza o de um somat rio a cada itera o elemento 1 s o que implicaria o recurso a vari veis de elevada dimens o 32 bits para armazenar o resultado o que n o favor vel em arquitecturas baseadas em microcontroladores Al m disso poderia ocorrer a requisi o de uma posi o fora dos extremos do servo 90 e 90 sem que a Integra o fosse capaz de inverter a tend ncia do sinal de controlo uma vez que o seu incremento apenas se limita ao valor do extremo S ao fim de algum tempo a soma pode ser suficiente para inverter a tend ncia resultando numa perda significativa na reactividade da resposta Este fen meno denomina se por wind up e devida satura o
166. o se sabe no momento da inicializa o do sistema os sensores de for a dos p s j possuem uma determinada for a aplicada sobre eles resultante da massa da estrutura superior do p da perna e do restante corpo se presente Estas condi es iniciais s o desconhecidas e ao fixar este valor em 127 est se a pressupor que um acr scimo de 10 unidades na for a estimada corresponde a um acr scimo de 7 8 na for a absoluta o que pode n o ser verdade Pelo contr rio se definirmos o valor refer ncia como 50 o mesmo acr scimo de 10 unidades j corresponde a um acr scimo de 20 na for a absoluta Tudo depende da sensibilidade das placas de acr lico e do peso aplicado inicialmente Embora a sensibilidade seja praticamente constante entre cada placa individual no que respeita opera o em conjunto com uma carga inicial tal j n o verdade repare se que com a postura vertical da perna mais peso aplicado no par de sensores traseiros dada a presen a de um servomotor nessa posi o 19 O mesmo tamb m se verifica relativamente a um dos pares de sensores laterais devido assimetria do eixo de rota o lateral do p em rela o ao centro do mesmo Ou seja existem dois problemas i o valor inicial da for a absoluta desconhecido e ii a for a absoluta inicial difere de sensor para sensor A resolu o do problema da for a inicial por enquanto baseada em m todos emp ricos pela seu produto com uma constante pr
167. objectivo estudar primeiramente a resposta em malha aberta do servo ou seja aplicando um sinal ou uma sequ ncia de sinais de PWM na entrada r t e analisar a resposta pela leitura da posi o angular y t Rotinas em MatLab para uso pela unidade principal foram especialmente constru das para este efeito enviando para o slave respectivo uma ordem de actua o e monitorar a posi o do servo o tempo suficiente para permitir captar o percurso realizado at atingir a posi o solicitada Algum vocabul rio espec fico ser utilizado nas sec es que se seguem pelo que conv m antes de tudo esclarecer o seu significado gt Tempo de crescimento subida tempo que a resposta demora a crescer entre 10 e 90 da distancia prevista a percorrer gt Tempo de atraso instante que a resposta atinge 50 da dist ncia total prevista gt Tempo de pico instante em que a resposta passa pela posi o maxima minima depende do sentido de deslocamento gt Tempo de estabelecimento tempo necess rio para que a resposta entre sem voltar a sair numa determinada vizinhan a previamente especificada do valor final da resposta Dois a cinco por cento normalmente a margem especificada gt Overshoot oscila o verificada em torno do valor final no fim da resposta O seu valor corresponde normalmente rela o entre a margem m xima de oscila o e a dist ncia total percorrida percentagem gt Erro em regime estacion rio diferen a entre o
168. ogia de funcionamento enunciada a fiabilidade das comunica es revelou se bastante boa com a troca de mensagens velocidade m xima poss vel e sem a detec o de corrup o de dados ou de atrasos excessivos na sua entrega Como interface utiliza se o software MatLab na unidade principal PC para fazer a interface uma vez que oferece uma linguagem de alto n vel e intuitiva para programa o das sequ ncias de comandos a aplicar nas juntas e para monitoriza o dos sinais de sa da 32 Cap tulo 3 Sistema de Controlo de Baixo N vel e 3 1 INTRODU O 7 Como ja foi mencionado o robot human ide constitu do por oito unidades de controlo local que denomin mos por slaves que podem controlar at 3 graus de liberdade dos 22 existentes na arquitectura actual e que se interligam a um computador unidade principal atrav s de uma unidade master para o envio de comandos de actua o com base na informa o sensorial medida Fig 3 1 Pt Sensorial data C fA MASTER Control signals H SLAVES ucts Meu 4 A Me MEUS NH t wee E Jj O WWE Fig 3 1 Arquitectura da plataforma human ide Como actuador para cada grau de liberdade s o utilizados servomotores que n o s o nada mais que motores DC adaptados para efectuar controlo de posi o Como vantagens estes motores permitem nos fazer medidas da sua posi o e da corrente consumida o que nos possibilitar mais adiante fazer
169. onte Contudo este equil brio de que falamos pode n o corresponder necessariamente aus ncia de for a aplicada sobre os sensores uma vez que pode existir j uma pr carga dada por exemplo pelo peso da plataforma superior do p e do restante corpo No entanto tal n o problem tico uma vez que apenas nos interessa a distribui o de for as pelos sensores Dada a exist ncia desta pr carga torna se necess rio calibrar a ponte de Wheatstone atrav s do potenci metro POT de modo a que a diferen a de potencial na sa da da ponte seja nula durante equil brio A presen a do amplificador de instrumenta o INA129P justifica se pelo facto da gama de excurs o do sinal de sa da ser demasiado pequena para processamento directo por parte do microprocessador PIC Repare que a resist ncia do extens metro apenas varia at um m ximo de 5 do seu valor standard 120Q pelo que um ganho de amplifica o indispens vel para acomodar o sinal excurs o 0 5V da ADC do microprocessador Vers o melhorada do circuito de acondicionamento de sinal No entanto a configura o da Fig 4 8 apresenta v rios problemas quando aplicada na pr tica Um dos problemas est relacionado com o potenci metro POT usado na calibra o permite variar a resist ncia de calibra o Rcaz R4 POT entre 120 e 2200 o que representa uma enormidade quando comparado com a varia o que o extens metro pode apresentar 114 a 1260 5 de 1200 Isto confe
170. oridade nas interrup es Diversos perif ricos timers m dulos CCP interfaces para redes de comunica o ADC etc Desenvolveram se dois protocolos de comunica o de modo a poder trocar dados sensoriais e de actua o entre o PC e as unidades slave nomeadamente m A linha s rie RS 232 entre o PC e a unidade Master O CAN entre a unidade Master e os Slaves Entre os dados sensoriais podem se enumerar para um SCU e Posi o dos tr s servomotores em graus Velocidade estimada de cada servomotor em graus s Corrente consumida por cada servomotor Valores dos sensores de for a de cada p quatro sensores por p Sa da dos girosc pios em graus s Sa da dos inclin metros em graus Em rela o aos dados de actua o temos e Posi o refer ncia a atingir para cada componente ngulos para os tr s servomotores ou as 3 componentes x y z do sistema de coordenadas cartesiana Velocidade m dia para a realiza o da traject ria at posi o final Tipo de controlador activo centro de press o inclina o ou velocidade angular Par metros de compensa o para o controlador activo K e para o controlo local Kp Ky Flags booleanas de des activa o ex PWMs Considera se que o controlo de actua o deve ser feito de forma isolada a cada uma das tr s juntas para cada unidade e por isso as diversas juntas podem realizar movimentos com diferentes velocidades e diferentes par metros de
171. par metros de controlo ganho de integra o K e proporcional Kp para um ganho fixo do controlador de equil brio Kjacobiano 30 Come ando pelo controlo em malha aberta sem controlo local K e Kp nulos podemos observar o seguimento do trajecto proposto com alguma exactid o mas ao n vel dos v rtices a dificuldade de seguimento aumenta conferindo ao trajecto medido um formato semelhante ao el ptico Ligando o controlo local e aumentando os seus par metros observa se um seguimento mais exacto mas ao mesmo tempo uma densidade de pontos de CoP muito mais intensa em torno do trajecto aplicado Tal s pode evidenciar a presen a de oscila es resultante da instabilidade do controlador quanto mais elevados os par metros de controlo maior a instabilidade Efectuando os mesmos trajectos mas agora com um aumentado ganho no controlador de equil brio Kiacobiano 50 ver Fig 4 52 pode se observar as mesmas caracter sticas evidenciadas mas com o surgimento mais precoce das oscila es Tal consistente com o esperado pois o aumento do ganho do controlador de equil brio tende a aumentar a instabilidade A Fig 4 54 prop e variar a velocidade para um conjunto fixo de par metros de compensa o Para Ky Kp Kjacobiano 5 40 30 observa se que quanto maior a velocidade mais inst vel o seguimento de traject ria Por observa o o per odo de 4 segundos aparenta ser o melhor para a execu o de traject ria
172. pensa o do atraso introduzido pela rede e posicionamento de amostragem implicam a particionamento de cada bit em v rios segmentos definidos a partir de per odos de tempo m nimos chamados Time Quanta To Input Signal NV Sync Propagation Phase Phase SAN Segment Segment Segment 1 Segment 2 Intervals To Sample Point a Nominal Bit Time Fig 2 14 Particionamento temporal de um bit Pela Fig 2 14 podemos identificar 4 tipos de segmento 1 Segmento de sincroniza o utilizado para sincronizar os v rios n s da rede dura o fixa de 1 To Segmento de propaga o utilizado para compensar os atrasos introduzidos na rede dura o entre 1 e8 To 3 Segmento de fase 1 n mero de Tg antes da amostragem do bit dura o entre 1 e 8 To 4 Segmento de fase 2 fornece um atraso antes da mensagem seguinte dura o de 2 a 8 To A dura o dos segmentos de fase 1 e 2 n o s o par metros est ticos e podem sofrer varia es para efeitos de ressincroniza o O par metro SJW Synchronization Jump Width define a forma como se far o estas flutua es contendo o n mero maximo de Tg que ser o adicionados ao segmento de 1 ou subtra dos ao segmento 2 Para defini o das dura es de cada segmento algumas regras dever o ser respeitadas Elas s o v 1 Seg de propaga o Seg de fase 1 Seg de fase 2 gt 8 Seg de propaga o Seg de fase 1 gt Seg de fase 2 Seg de fase 2 gt S
173. plifica a coloca o destas pequenas pe as que dever o possuir propriedades el sticas de modo a que na presen a de uma for a externa sejam capazes de se deformar usando todo o espa o livre da abertura 70 Fig 4 3 Estrutura completa de um p Aplica o da for a Extens metro Extens metro Fig 4 4 Coloca o dos sensores na estrutura do p Cada extens metro colocado na parte inferior de cada pe a medindo deste modo a sua deforma o ou seja a for a aplicada A Fig 4 5 apresenta o plano inferior das pe as utilizadas j com o extens metro colado O acr lico foi o material escolhido para estas pe as dado o seu elevado grau de elasticidade Fig 4 5 Pe a de acr lico contendo o extens metro para medi o da sua deforma o Fig 4 6 Pontos de contacto entre as 2 plataformas do p Estas pe as deform veis s o os nicos pontos de contacto da plataforma superior usando para isso parafusos que assentam directamente sobre o centro destas pe as Desta forma as for as aplicadas sobre a plataforma superior distribuem se unicamente pelas pe as de acr lico com os extens metros a medir a for a total aplicada A Fig 4 6 apresenta um ponto de contacto em que se observa o parafuso directamente assente sobre a localiza o do extens metro de modo a poder medir a for a aplicada nesse ponto Toda a estrutura est visualizada na Fig 4 7 com cada extens metro a medir a for a aplicada em
174. po de Controlador de primeiro nivel oner o NNE ER O 5 E ONTO la oT strucit servo servo N SERVOS Informa o de actua o posi o velocidade e corrente struct actuators extern volatile struct_actuators actuators a PGE e e 31 2 4 DISCUSS O DOS RESULTADOS A arquitectura de comunica es adoptada para a estrutura human ide revelou se bastante simples de implementar seguindo uma l gica bastante intuitiva Esta arquitectura segue um formato distribu do com a associa o de cada trio de juntas normalmente associadas a um membro f sico a uma unidade de controlo local baseada num PIC que se responsabiliza em aplicar os sinais de controlo e ler a informa o sensorial Estas unidades de controlo interligam se umas s outras por meio de um nico barramento que partilha as mensagens em circula o a todas as unidades de controlo Este barramento tamb m se interliga a uma unidade mestre master que por sua vez est conectada por liga o s rie unidade principal neste caso um PC que respons vel por enviar os comandos de actua o e de leitura sensorial a cada unidade local Deste modo cada unidade tem uma fun o espec fica deslocalizando assim da unidade principal todas as tarefas de controlo dos servomotores e de distribui o das mensagens entre os diversos slaves Implementando os protocolos de comunica o tanto s rie entre o PC e o master como o CAN entre 0 master e os slaves seguindo a metodol
175. porcional cccceeeseeeeeeeeeeeeeees 95 Fig 4 25 Varia o do declive do plano segundo o eixo yy controlo pelo Jacobiano 95 Fig 4 26 Inclina o do plano segundo OS eixos XX O YY ic eereracaarraaa an raaaa a rranaa aerea 96 Fig 4 27 Varia o do declive do plano na diagonal dos eixos xx e yy controlo proporcional 96 Fig 4 28 Introdu o de perturba es externas na perna frente tr s esquerda e direita controlo FRRO DORCIO NA tar ni E A a a uaiaiaes 97 Fig 4 29 Introdu o de perturba es externas na perna frente tr s esquerda e direita controlo pelo JA CODIANO ssa eee rian ener a ene ai Ronda dana fo Sd O eam eee ree ee ener eee GD ac Gi a en eer a ame 98 Fig 4 30 Levantamento do p no ar controlo PrOPOFClONAl ccccseeeceeeeeeeeeeceeeeeeeeeeeeeeaaseeseeaeeesseeeeneas 100 Fig 4 31 Levantamento do p no ar controlo pelo Jacobiano errar 100 Fig 4 32 Actua o sobre o Centro de Press o refer ncia erre erreeea ea rereenaa 102 Fig 4 33 Actua o sobre a altura desejada da anca ie eeerereaaaaaaerananana erra anaa terrene 102 Fig 4 34 Rela o entre o CoP medido e o actuado para 30 passos ao longo do eixo XX 103 Fig 4 35 Rela o entre o CoP medido e a cinem tica directa do joelho e da anca ao longo do eixo xx 104 Fig 4 36 Rela o entr
176. pplyjoint m Actua o nas juntas de um determinado SCU Selec o do algoritmo de compensa o e ajuste dos respectivos par metros de controlo applycontrol m para um SCU espec fico Outras fun es est o tamb m dispon veis n o sendo nada mais que opera es de n vel interm dio que fazem uso dos device drivers apresentados na sec o anterior Tabela 3 Device drivers adicionais inituc m Activa o do PWM de controlo sobre os actuadores de um SCU killuc m Desactiva o do PWM para os actuadores de um SCU waitpwmon m Espera que o PWM seja activado nas tr s juntas de um SCU sensor reset m Calibra o dos sensores de um SCU motionstart m Espera que um SCU inicie a execu o de uma traject ria motionfin m Espera que um SCU termine a execu o de uma traject ria waitmotionfin m Espero que o processo de inicia o e t rmino da traject ria seja executado statmotionfin m Consulta do estado da execu o de traject rias por parte de um SCU se finalizou ou n o 2 2 2 PROTOCOLO RS 232 A comunica o RS 232 aplicada entre o PC e a unidade Master e efectuada assincronamente sendo orientada ao byte 1 start bit 8 bits de dados 1 stop bit ou seja transmitido um byte de dados em cada transmiss o recep o Pretende se que numa nica mensagem esteja contida toda a informa o relativa a um par metro a ler actuar nas tr s juntas de um SCU o que implica que cada mensagem seja con
177. press o a partir do Centro de Massa da estrutura de uma perna d0CoM CoM dCoM 08 06 00 A J J J dCoP dCoM a dCoM CoM dCoM Es Py a a aa ae PO CoM CoM CoM L Ja Js d0 06 060 Desenvolvendo a rela o entre a varia o angular das juntas e o erro do Centro de Press o gt gt i A p F 4 00 Jz p XOCOP Jz y XOCoP So a z AO Joy X ACoP Com base nesta equa o facilmente se pode deduzir a lei de controlo a partir da matriz Jacobiano do Centro de Massa AO k l Toi X cop Ccop CoP Copt A matriz k ser necess ria para regular os ganhos de compensa o para cada elemento da matriz Jacobiano Por quest es de simplifica o em vez da inversa do Jacobiano podemos usar o Jacobiano transposto dada a necessidade de simplifica o dos c lculos matem ticos ao n vel do microcontrolador A PR ee ai im c 85 Expandindo os par metros vectoriais obt m se As vari veis 6 est o indicadas no modelo da Fig Vista Lateral da Perna Je C opl Cop Ja X Cop In CoP a Copt Coptrel 4 20 descritiva da perna e do p Vista Dianteira da Perna Vista Superior do P Fig 4 20 Modelo da perna human ide com a associa o das diversas vari veis de interesse Lei de Controlo do Centro de Press o Para determinar a lei que regula o centro de press o precisamos de obter prim
178. press o medido a partir dos sensores de for a atrav s de uma constante e o Jacobiano que faz uso de uma matriz que relaciona o erro 118 do centro de press o com a varia o angular a aplicar s duas juntas ortogonais do p mais a do joelho Este ltimo compensador fornece a vantagem de controlar tamb m a junta do joelho tornando o controlo mais eficaz mas contudo depende das caracter sticas f sicas da estrutura como a massa e comprimento dos elos Utilizando estes dois algoritmos realizaram se v rios testes perante a situa o de varia o de declive do plano de suporte e a de presen a de interfer ncias externas estrutura revelando a satisfat ria efici ncia destes controladores especialmente a do Jacobiano em que o controlo da junta do joelha representa uma mais v lia para a sua efici ncia V rios estudos no que concerne execu o de traject rias por parte da perna tamb m foram realizados pela manipula o do CoP refer ncia do controlador de equil brio Tr s estudos principais foram feitos e An lise est tica do controlador de equil brio e An lise din mica do controlador e Execu o de multi traject rias e an lise do desempenho A an lise est tica conseguiu demonstrar o correcto funcionamento do controlador de equil brio com os cumprimentos das diversas posi es solicitadas A an lise din mica demonstrou a rela o entre os par metros de compensa o do controlador de equil brio e do
179. qual chamaremos de compensa o limite a melhoria j come a a ser mais exigente com varia es muito mais pequenas dos par metros de compensa o Quando tal come a a ocorrer considere o tunning como terminado com os par metros ptimos correspondentes ao ajuste anterior Oo Oo o o O O o o Q o c e o oO oO a 50 0 0 5 1 1 5 2 time s time s Tunning 1 Ki 0 20 Kp 0 70 Kd 0 30 Tunning 2 Ki 0 35 Kp 1 25 Kd 0 13 md error degrees G error degrees gi oO o 0 5 1 1 5 2 k 1 time s time s Fig 3 50 Compara o entre dois conjuntos de Fig 3 51 Situa o de instabilidade m 675g par metros durante o tunning m 675g Para a carga de 675g encontraram se como par metros ptimos o conjunto K 0 39 Kp 1 46 e Kp 0 15 com um erro m ximo de menos de 5 Fig 3 52 No entanto note que nos encontramos numa situa o em que o sistema torna se muito suscept vel instabilidade face a perturba es externas A Fig 3 53 exemplifica este caso em que o ensaio com os par metros ptimos repetido duas vezes verificando se na ltima alguma instabilidade 59 position degrees position degrees 0 0 5 1 1 5 2 o 0 5 1 1 5 2 time s time s Ki 0 39 Kp 1 46 Kd 0 15 6 w w Q o 4 D D g 5 So D D 2 o 0 5 1 1 5 2 o 0 5 1 1 5 2 time s time s Fig 3 52 PID optimizado para uma carga de 675g Fig 3 53 Repeti o d
180. r Os Slaves est o preparados tamb m para receber mensagens via CAN Estas mensagens consistem basicamente nos dados de actua o a aplicar sobre cada unidade local e Posi es finais que os actuadores t m de tomar Velocidade m dia a que t m que se mover at atingir a posi o final Tipo de controlador activo sobre as tr s juntas Par metros de compensa o para o algoritmo de compensa o seleccionado Flags booleanas de controlo ex PWM activados O controlador master tem a tarefa de receber a informa o enviada pelos slaves via CAN e regist la para que esteja dispon vel para ser enviada para a unidade central de controlo quando solicitada Este controlador mant m por isso uma representa o do estado actual das juntas actuadores e sensores que disponibilizar ao controlo central sempre que este o pedir O processo bidireccional e o controlador master tamb m recebe as ordens da unidade central e despacha para o slave respectivo Tabela 1 Caracter sticas do Hardware e Software na unidade principal Unidade Central de Controlo Computador com porta s rie RS 232 e Software de suporte MatLab 7 xx e Device Drivers de comunica o s rie mini toolbox cport v1 3 Unidades de controlo local PIC18F258 da Microchip Master Slave Mem ria de programa 2 MB Mem ria de dados 4 KB Velocidade de processamento 10 MIPS f 40MHz com a PLL activa Instru es de 16 bits e datapath de 8 bits Defini o de dupla pri
181. r satisfat rios em termos mec nicos ainda h muitos aspectos que precisam de ser melhorados sob pena de tornar ineficaz os algoritmos de controlo de posi o e velocidade Aconselha se por isso uma s ria revis o estrutura das pernas uma vez que s o estes membros que ter o de suportar os esfor os mais exigentes nomeadamente gt No aperto das correias de transmiss o estas s o as principais causas de folgas aumentando medida que se verifica um esfor o correndo o risco de provocar saltos de dentes Uma solu o que ja foi indicada corresponde a efectuar o aperto de forma din mica com o recurso a uma esp cie de mola tornando autom tico o processo de ajuste gt Ao n vel das liga es entre os veios e os elos tornando os mais robustos quer pelo aumento da resist ncia dos materiais quer pelo aumento do n mero de liga es Tal conv m ser estudado 68 Cap tulo 4 Sistema de Controlo Baseado nas For as 4 1 INTRODU O O Cap tulo 3 descreveu a implementa o do sistema de controlo de baixo n vel e as t cnicas de compensa o relativas posi o e velocidade dos servomotores de modo a corrigir desvios introduzidos por estes dispositivos na realiza o de traject rias Neste cap tulo apresentam se v rios algoritmos e estrat gias visando a implementa o de um n vel de controlo interm dio baseado nas for as de interac o entre o p e o solo Este um t pico em que tem sido realizada intensa investig
182. ra o da m scara de recep o Configura o dos dois filtros para cada um dos buffers de recep o Defini o do formato standard para os identificadores dos pacotes a transmitir Defini o de prioridades entre buffers de transmiss o Configura o da recep o para apenas pacotes v lidos com identificadores de 11 bits Overflow do buffer O para o buffer 1 desactivado 10 Clear dos interrupt flags de recep o 11 Abertura dos buffers para recep o 12 Coloca o do PIC no modo de opera o normal DONA AL Os passos 6 a 11 devem ser aplicados a cada um dos buffers de recep o transmiss o Troca de Mensagens CAN Esta sec o apresenta os procedimentos a efectuar nos PICs 18F258 para a troca de pacotes utilizando a rede CAN Estes microcontroladores oferecem uma gama diversificada de registos que permitem controlar diversos aspectos como por exemplo o comprimento do identificador ou o conjunto de dados e tamb m no dom nio da recupera o de erros Na recep o de um pacote que passe a m scara e um dos dois filtros o seu conte do carregado no buffer associado ao seu index n Os procedimentos a seguir descritos devem se aplicar relativamente a esse buffer Verifica o da recep o de uma mensagem inv lida Confirma o da utiliza o do buffer n Reposi o do interrupt flag associado ao buffer n a zero Transfer ncia do buffer n para o Acess Bank Area de modo a se poder aceder a ele a partir d
183. rau de 45 para 45 no Fig 3 26 Aplica o de uma rampa de posi o de instante t 1 8s velocidade m dia 50 s Enquanto que a aplica o de um degrau introduz um delta de Dirac na velocidade e na acelera o provocando facilmente picos de corrente a traject ria em forma de rampa cont m essas varia es bruscas pela aplica o sucessiva de pequenos degraus o que limita a velocidade do servo e tamb m a sua necessidade de consumo de corrente 49 Esta traject ria pode ser implementada atrav s da seguinte equa o POS POS V ned POS tVineg nl com T 20ms per odo de PWM med vel V ped acel 0 No entanto se quisermos optimizar ainda mais o consumo de corrente podemos implementar traject rias de modo a limitar os deltas de Dirac na acelera o que continuam a verificar se no caso da rampa Se al m de variarmos a posi o tamb m variarmos a velocidade de modo a ser nula no in cio e no fim da traject ria a necessidade de consumo de corrente decai ainda mais Tal exequ vel atrav s de uma equa o polinomial de terceira ordem que introduz velocidade zero no in cio e no fim de cada traject ria Fig 3 27 pos amp c t c t c t vel c 2 c t 3 c t lacel 2 c 6 c ct Posi o graus time s tempo s Fig 3 27 Traject ria polinomial de terceira ordem Fig 3 28 Comportamento da velocidade e da acelera o na traject ria polinomial Como se pode observar pela Fig 3 28 de
184. re ao potenci metro uma resolu o muito baixa mesmo sendo multi volta al m de que n o poss vel calibrar para valores inferiores a 1200 O mesmo problema se apresenta se retirarmos a resist ncia R4 n o sendo poss vel agora calibra es acima dos 120Q Para melhorar o procedimento de calibra o substituiu se o conjunto R4 POT pelo circuito da Fig 4 9 em que Rs se refere a uma resist ncia em s rie com o potenc metro POT e Rp encontra se em paralelo com o conjunto Rs POT POT CAL 100 160 Fig 4 9 Circuito de calibra o da ponte de Wheatstone A Fig 4 10 revela a excurs o da resist ncia equivalente deste conjunto quando se varia POT_CAL em toda a sua gama Podemos assim observar que a calibra o do ponto de equil brio em muito facilitada dado que percorre a gama dos 5 do valor nominal dos extens metros 13 Rea 10 20 30 40 50 BO fall o 90 100 POT aay Fig 4 10 Rela o entre o potenci metro e a resist ncia total de calibra o Outro problema que se evidencia a aus ncia de simetria na ponte de Wheatstone por parte dos componentes utilizados mais concretamente no que respeita aos coeficientes de temperatura das resist ncias originando assim flutua es na diferen a de tens o sa da devido a varia es de temperatura Repare se que pela express o de equil brio calculada atr s da express o EXT R R Rea se o produto EXTxR n o variar na mesma propor o que
185. regularidades do solo Contudo tamb m poderemos com o mesmo controlador realizar traject rias pela varia o do CoP desejado Se em vez de utilizarmos como refer ncia o CoP 0 0 correspondente postura vertical usarmos outros valores a perna desloca se para outras posturas efectuando movimento Ora do interesse que quando o robot se encontra sobre a perna de suporte durante a locomo o al m de fornecer o equil brio tamb m seja capaz de a mover ajudando a realizar as sequ ncias de locomo o Para tal e como ja foi enunciado 1r se actuar no valor refer ncia do CoP CoP no controlador de equil brio para cumprir este objectivo Fig 4 19 Nesta sec o v rios estudos ser o feitos sobre os sensores de for a de modo a averiguar os seguintes aspectos e Rela o entre o Centro de Press o medido e o Centro de Gravidade em circunst ncias est ticas e Rela o entre o Centro de Press o medido e o Centro de Gravidade durante a realiza o de traject rias e Execu o de traject rias de v rios formatos e compara o dos trajectos efectuados com os previstos 4 6 1 CONTROLO DO COP DE REFER NCIA Fun es de Controlo Com base nas rotinas de controlo do robot descritas na sec o 2 2 1 foi desenvolvida uma aplica o gr fica em Matlab para manipula o do CoP de refer ncia utilizando o rato como interface para introdu o das coordenadas A Hg 4 32 apresenta um exemplo de como as coordenadas
186. s rectangulares 115 ao 3 Emails directa da anca no Cinematica directa da anca ol ol BU BU 40 40 20 20 a a 20 20 A0 40 G0 B0 50 80 100 100 Ky Kp K jacobiano 0 0 30 Trajectoria medida do CoP Trajectoria prevista do CoP Cinematica directa do joelho 50 40 20 0 20 40 B0 CoP x Ki Kp Kiacobiano 5 40 30 BO 40 20 Trajectoria medida do CaP Trajectoria prevista do CoP Cinematica directa do joelho CoP x Kr Kp Kjacobiano l 0 40 30 Trajectoria medida do CoP Trajectoria prevista do CoP Cinematica directa do joelho Cinematica directa da anca Ky Kp K asabini 7 40 30 Trajectoria medida do CoP Trajectoria prevista do CoP 100 Cinematica directa do joelho 100 Cinematica directa da anca 80 80 60 60 40 40 0 20 gt of ro o a 20 20 40 4D 60 60 BO 50 1400 Wwe a 0 20 0 gt i ri 60 aa 20 0 20 a dm Fig 4 51 Resposta a 10 voltas de uma traject ria rectangular para v rios par metros do controlador local 116 Sem Controlo Local Kr Kp K acobiano 0 0 50 Com Controlo Local Ky Kp K acobiano 5 40 50 CoP y CoP y Trajectora medida do CoP Trajectoria prevista do CoP Cinematica directa do joelho Cinematica directa da anca Trajectoria medida do CoP Trajectoria prevista da CoP Cinematica directa do joelho Cinematica directa da anca CoP y BO 40 20 0 20 40 AO A 40 20 E 20 40 At
187. s pioram para valores incomport veis 108 XX XX XX 20 40 0 20 30 40 50 CoP 40 Previsto Medido 20 oO 0 5 1 1 5 t Erro do CoP 0 0 5 1 1 5 t Coordenadas Cartesianas cm Joelho Anca yy yy 20 40 0 20 CoP 40 20 Previsto Medido 0 5 1 1 5 2 t Erro do CoP 80 i 60 40 20 0 0 5 1 1 5 2 t Coordenadas Cartesianas cm 10 Joelho Anca 0 0 5 1 1 5 2 Fig 4 42 Resposta ao polin mio aplicado de dura o 1s K 50 Se ao inv s aumentarmos o per odo da traject ria para o dobro 4 segundos Fig 4 43 as caracter sticas da resposta melhoram em muito o tempo de estabelecimento diminui para 4 segundos para as duas componentes corresponde ao instante final da traject ria e o erro diminui para 20 e 32 unidades para as componentes xx e yy respectivamente 109 CoP CoP 30 60 Previsto Medido 20 40
188. se interven es ao n vel do hardware e torna vi vel a implementa o de algoritmos de controlo din micos que se auto regulam de acordo com as necessidades do sistema 3 4 1 O CONTROLADOR A Fig 3 32 descreve a metodologia a usar o controlador representado pelo bloco Ge z implementado ao n vel do microcontrolador que far uso do sinal de posi o y t como feedback para compara o com a posi o desejada r t para melhor decidir a largura de PWM u t a aplicar ao servo it co CE seno yo Fig 3 32 Controlo externo do servomotor Note que n o se pode afirmar que a cada duty cycle de PWM do sinal de actua o corresponde a uma determinada posi o pois tal depende muito da in rcia aplicada sobre o eixo mas sim que para uma determinada carga corresponde a uma determinada posi o Para tal a lei de controlo Gc z seguir um m todo para procurar o sinal de PWM mais adequado para que o sinal de posi o medido y t coincida com a posi o solicitada r t Esse m todo apresentado a seguir na Fig 3 33 e baseado num compensador cl ssico do tipo PID 15 17 am 7 ini Out i Es a Seromotor Difference Wariation Fig 3 33 Compensador PID incremental Este compensador baseado na equa o de compensa o PI D no dominio de Laplace sendo convenientemente adaptado para o caso digital U s bk k s Bb S No dom nio digital z temos l T
189. seueeessegeeeessueeeessaueeeesaaeeesssaueeessaaeeesseaes 113 Fig 4 48 Varia o do CoP ao longo do percurso el ptico componentes x azul e y verde em compara o com o real e o respectivo erro errar ereeea era aaa rena ene nan aen acena anca nan cere na renaao 114 Fig 4 49 Cinem tica directa do joelho e da anca vista 3D eee eereereena 114 Fig 4 50 Cinem tica directa do joelho e da anca vista 2D de cima eres 115 Fig 4 51 Resposta a 10 voltas de uma traject ria rectangular para v rios par metros do controlador local a E IEEE A EEA A O E a ene ee T 116 Fig 4 52 Resposta a 10 voltas de uma traject ria rectangular sem e com controlo local Kjacobiano 90 117 Fig 4 53 Resposta a 10 voltas de uma traject ria rectangular para diferentes velocidades KR aE esta 9500 90 sao a A A Wy Ueaeayeeadislakiate 117 Fig 4 54 Duas experi ncias realizadas em diferentes momentos com iguais par metros de controlo 118 LISTA DE TABELAS Tabela 1 Caracter sticas do Hardware e Software na unidade principal erre 8 Tabela 2 Lista de device drivers da unidade principal eee rere erre renan reeannna 10 Tabelas Device drivers adicionais css mass oe a ea a eee eee dale Uae 10 Tabela 4 Tipos de mensagens USART primeiro byte de Cada frame eee 13 Tabela 5 Endere os atribu dos as diversas unidades de controlo cccccceeeeeeese
190. sponsabilizar por garantir o alcance das posi es solicitadas O ajuste do controlador de primeiro n vel feito atrav s do ganho K enquanto que para o controlador local o ajuste feito atrav s dos ganhos Kj e Kp No que diz respeito aos dados sensoriais enviados unidade Master eles s o de natureza constante e independentes do controlador activo 2 22 COMUNICA O RS 232 2 2 1 DEVICE DRIVERS DE COMUNICA O NA UNIDADE PRINCIPAL Para automatizar o processo de leitura escrita dos dados sensoriais actuadores device drivers foram escritos na forma de fun es em MatLab tendo em vista o r pido desenvolvimento de rotinas que envolvam a leitura sensorial processamento de dados e consequente actua o para a realiza o de testes de avalia o de todo o sistema A Tabela 2 apresenta os device drivers mais b sicos para controlo e leitura directa dos actuadores e sensores respectivamente Tabela 2 Lista de device drivers da unidade principal Ficheiro Descri o initcom m Cria o de uma nova liga o s rie entre a unidade central e a unidade Master killcom m T rmino da liga o s rie testcom m Envio de uma sequ ncia de teste para a unidade Master para avaliar a conectividade readcanstat m Consulta do estado do barramento CAN entre a unidade Master e os Slaves readjoint m Leitura dos sensores associados s juntas de um SCU readspecial m Leitura dos sensores adicionais conectados a um SCU a
191. ss vel solu o seria em todas as reactiva es calcular o valor da soma de modo a que o sinal de controlo u t correspondesse ao valor de r t e inicializar a soma com esse valor No caso do algoritmo incremental se definirmos o valor u n 1 como o ltimo valor aplicado no servo quer com o controlador ligado quer desligado escusamo nos de qualquer preocupa o com este procedimento No entanto h uma desvantagem com este algoritmo resultante do aumento da ordem de um para dois na remo o do integrador Na presen a de ru do este compensador torna se mais sens vel podendo levar o sistema mais facilmente instabilidade Da a necessidade do formato PI D em que o sinal de sa da e n o o de erro o utilizado na componente derivativa eliminando qualquer possibilidade de instabilidade resultante de varia es do sinal refer ncia r t Mesmo assim recomenda se o uso de valores baixos para o par metro Kp O elemento banda morta presente no compensador ap s o c lculo do sinal de erro tamb m tem como finalidade a preven o de respostas oscilat rias resultantes de imprecis es na medi o da posi o do servomotor Observou se que a digitaliza o deste par metro resultava em oscila es at dois graus da a introdu o deste elemento para evitar que estas flutua es se transferissem para o compensador 3 4 2 CONTROLO INTEGRAL D Vamos agora testar o controlador para v rias cargas e percursos utilizando as tr
192. ssssaees 33 Je INTRODU O assina ta SA a Sd 33 3 2 CONTROLO DA PLATAFORMA HUMAN IDE 34 de iA Wridade de Controlo LOCA asas sees eerste eaten ce Oisa T RES SA anew nine E 34 322 ACTUADORES OS SERVOMOTORES aque Guise fossa a E alada on E as Ria nin eos UEN 35 329 OeClUD Experimental suado brio E E a ta 39 de 4 Aciua o Sobr O SElVOMOION sans sis san oie citas tas ais oia LB ea ca DR ua camisa an asda 40 3 25 eiluraSensorial do ServOMoOlor ssa ia g haa DCE ena nares A 41 3 3 ESTUDO DO SERVOMOTOR EM MALHA ABERTA cccccccsececseeeeseeseeeteneenseeteneeees 47 3 3 1 Resposta ao Degrau em Malha Aberta cccccccccccsseeeeeceeeeeeeeeeeeeeeeeeeeeesaeeeessaeeeessaeeeeeens 48 3 3 2 Controlo de Velocidade eee eera aeee eeraee nene rrr ana a ar eraea aaa crraeaaa aaa 49 3 4 ESTUDO DO SERVOMOTOR EM MALHA FECHADA ii reeeereee 51 Sd O 0 a ic 0 f 6 6 eria E a a a Da peer ee 52 Site Controlo Inegral zeuei E a E a ente DER 54 3 4 3 Controlo Proporcional Integral PI erre rereee renas rrea e erenad 56 3 4 4 Controlo Integral Derivativo ID eee eerreee aee rrree aaa errr aaa anna 58 3 4 5 Controlo Proporcional Integral Derivativo PID e erre 58 3 5 APLICA O DOS ALGORITMOS NO ROBOT HUMANOIDE cccceccecceeseeceeereerseseeereees 60 3 5 1 Movimento de Flex o em Malha Aberta de uma Perna ccccceeeeeeeeeeeeeeeeeeeeeeeeeaeeeeeeas 62 3 5 2 Movimento d
193. stitu da por v rios bytes A estrutura das mensagens ser apresentada a seguir 1 bit Data 8 bits 1 bit Estrutura de um pacote USART transmiss o recep o de um byte Comandos PC gt Master As mensagens no sentido PC master s o constitu das por seis bytes O primeiro byte sinalizar a mensagem como sendo um comando de solicita o unidade master MESSAGE REQ ver Tabela 4 o segundo byte conter um c digo opcode indicativo da opera o a realizar do endere o do SCU alvo e de par metros adicionais os tr s bytes seguintes conter o par metros a atribuir s tr s juntas no caso de um comando de actua o e finalmente o byte BCC validar a integridade da mensagem ME oe byte 3 byte 4 byte 5 byte 6 sororr OpCode Jomi Joim2 Jom3 Bcc Mensagem USART PC Master de actua o ET byte 2 byte 3 byte 4 byte 5 byte 6 sororr Opode o o IM o B fl Mensagem USART PC gt Master de leitura sensorial De notar que a actua o feita directamente s tr s juntas componentes numa nica mensagem mas com a desvantagem de apenas se poder actuar num par metro cada vez posi o final velocidade m dia ou um par metro do controlador Respostas aos comandos Master5PC Na resposta o Master responde com uma mensagem de 7 bytes cuja estrutura a seguinte e SOF possui o valor MESSAGE SUCESS 0xFB no caso de uma resposta com sucesso e OpCode opcode utilizado pela mensagem
194. terar significativamente o tempo de atraso Para um K mais pequeno 0 05 Fig 3 46 pode se evidenciar mais claramente os efeitos de um Kp excessivo em valor o tempo de estabelecimento claramente prejudicado levando muito mais tempo a atingir o valor final mas o tempo de atraso melhorado acelerando o seguimento da traject ria no seu in cio Ocorre por isso um ponto de cruzamento entre as diversas respostas quase coincidente com o t rmino da traject ria Logo conclui se que deve haver um compromisso entre o tempo de atraso e o tempo de estabelecimento de modo a n o perder demasiado num dos lados O par metro Kp deve por isso ser escolhido tendo em conta estes aspectos 57 3 4 4 CONTROLO INTEGRAL DERIVATIVO ID Substituindo a componente proporcional pela derivativa podemos observar que praticamente n o afecta nem a ac o integral de elimina o do erro em regime estacion rio nem a ac o proporcional de redu o do overshoot tal como se observa na Fig 3 48 e na Fig 3 49 Dada a n o influ ncia na resposta do sistema n o se achou utilidade para este tipo de controlo sem a componente proporcional 50 Expected Kd 0 00 Kd 0 20 Expected Kd 0 00 Kd 0 30 Kd 0 50 Kd 0 80 Kd 1 00 Kd 1 50 0 0 5 1 1 5 2 2 5 3 0 0 5 1 19 2 2 5 3 time s time s position degrees position degrees Fig 3 48 Resposta ao polin mio com K
195. tes em ambientes extremamente ruidosos Para tal o sinal que serve de suporte comunica o definido em corrente e n o em tens o um protocolo baseado na mensagem e n o no endere o o que significa que as mensagens s o transmitidas na forma de broadcasting para todos os n s existentes na rede cabendo a cada um a decis o de a aceitar ao n o As mensagens s o constitu das por um identificador que pode possuir 11 ou 29 bits de acordo com a vers o 2 0A ou 2 0B respectivamente e at 8 bytes de dados Fig 2 11 Ia Frame l l l Eus Idle Arbitration field Contool Data Field CRC field ACE EOF Int Ew Idle Fig 2 11 Formato standard das mensagens CAN De modo a eliminar a hip tese de colis o destrutiva de pacotes no caso de envio simult neo de mensagens por diferentes n s como acontece nas redes Ethernet o CAN dotado de um sistema de colis o deterministico bit a bit CSMA BA Carrier Sense Multiple Access Bit wise Arbitration que no caso de uma colis o de pacotes apenas um prevalece o de maior prioridade enquanto os restantes s o destru dos No ltimo caso os n s associados a esses pacotes devem tentar retransmitir mais tarde Desta forma garante se que a largura de banda oferecida pela rede n o desperdi ada havendo sempre o transporte de mensagens desde que pelo menos um n transmita 20 Barramento CAN Est A 0 1 0 0 1 1110 0 1 Est B 10 14 0 0 1 1 1 0 o 0 1 E To
196. to Built an Inexpensive Humanoid Robot Based on a Distributed Control Architecture Proceedings of the IEEE RAS International Conference on Humanoid Robots Humanoids2005 5 7 Dezembro Tsukuba Jap o 2005 11 Vitor M F Santos Filipe M T Silva Development of a Low Cost Humanoid Robot Components and Technological Solutions Proceedings of the 8 International Conference on Climbing and Walking Robots CLAW AR 2005 13 15 Setembro Londres UK 2005 12 M Albero F Blanes G Benet P P rez J Sim J Coronel Distributed Real Time Architecture for Small Biped Robot YABIRO in Proceedings of the IEEE International Symposium on Computational Intelligence in Robotics and Automation Espoo Finland June 27 30 2005 13 Y J Cho et al A Compact Open Network Based Controller Incorporating Modular Software Architecture for a Humanoid Robot Journal of Intelligent and Robotic Systems 25 341 355 1999 14 N Tomokuni M Saiga T Yabuta Distributed Controller for Cooperative Joint Torque Control of Compact Humanoid Robots in Proceedings of the IEEE RAS International Conference on Humanoid Robots Tsukuba Japan December 5 7 pp 259 264 2005 15 Karl Johan Astr m Control System Design 2002 16 The PID Algorithm http members aol com pidcontrol pid_algorithm html 2006 17 Youbin Peng Damir Vrancic and Raymond Hanus Anti Windup Bumpless and Conditioned Transfer Techniques
197. trabalho descrito nesta disserta o envolve o estudo desenvolvimento e implementa o de um conjunto de estrat gias e algoritmos de controlo com vista locomo o b sica de um robot human ide Do conjunto de estrat gias investigadas podemos distingui las em tr s partes 1 Controlo de posi o e velocidade em malha aberta e fechada das juntas dos membros inferiores pernas por actua o directa sobre os respectivos servomotores Para o controlo em malha fechada ser o utilizados como sinais de retorno a posi o do servo reportada pelo seu potenci metro e ou a corrente consumida pelo mesmo 2 Controlo de equil brio da estrutura contra varia es de declive do solo e perturba es externas pela utiliza o de sensores de for a presente sobre a base dos p s Extens metros de resist ncia dependente da for a ser o utilizados em v rios pontos do p para permitir a medi o bidimensional do centro de press o 3 Realiza o da locomo o recorrendo ao controlador de equil brio especificado no ponto anterior pela varia o do centro de press o desejado sobre a base de um dos p s Por este processo poss vel simultaneamente a locomo o e a compensa o contra irregularidades no solo e perturba es externas Dado que este robot possui uma estrutura modular constitu da por diversas unidades microcontroladoras espalhadas ao longo do corpo essencial uma comunica o robusta e fi vel entre a unidade de pro
198. um controlador de equil brio que baseando se na medi o do centro de press o aplicado nos p s procure o equil brio da plataforma human ide Este controlador poder ser utilizado na perna de suporte na realiza o da marcha enquanto uma perna respons vel pelo movimento correspondente a um passo a outra ter de garantir o equil brio da plataforma de modo a evitar qualquer tipo de instabilidade No caso de uso de uma s perna o estado de equil brio corresponder posi o vertical dado que a nica configura o em que o centro de massa coincide com o ponto central do p Nos testes realizados no corrente trabalho apenas se teve a preocupa o do desenvolvimento dos algoritmos de controlo tendo apenas utilizado uma perna para os testes Testes a realizar no futuro dever o incluir os restantes componentes da estrutura human ide para an lise de comportamentos tanto na presen a de irregularidades no solo como de perturba es externas aplicadas ao longo do corpo Uma vis o global da perna assente sobre o p sens vel a for as com a respectiva electr nica de condicionamento pode ser visualizada na Fig 4 18 RU a 19 ue 2 E y o a e 1 Fig 4 18 Perna completa sobre um p sens vel a for as 4 5 1 ESTRUTURA DO CONTROLADOR Uma vez que j possu mos um meio de calcular o centro de press o em cada instante apenas nos falta apresentar o controlador de equil brio que tem
199. veiro PT Universidade de Aveiro ISSN 1645 04 vol 4 n 8 pp 946 959 2007 24 Milton R Silva Pedro M Ferreira Filipe M Silva V tor M Santos Local level Control of a Humanoid Robot Prototype with Force Driven Balance Proceedings of the 7th IEEE RAS International Conference on Humanoid Robots HUMANOIDS 07 Nov 29 Dec 1 Pittsburgh Pennsylvania USA 2007 25 Milton R Silva Desenvolvimento de Algoritmos de Controlo para Locomo o de um Robot Human ide Relat rio final de projecto 2005 06 Departamento de Electr nica Telecomunica es e Inform tica 26 Milton R Silva Desenvolvimento de Algoritmos de Controlo para Locomo o de um Robot Human ide Manual do Programador projecto 2005 06 Departamento de Electr nica Telecomunica es e Inform tica 27 Milton R Silva Desenvolvimento de Algoritmos de Controlo para Locomo o de um Robot Human ide Manual do Utilizador projecto 2005 06 Departamento de Electr nica Telecomunica es e Inform tica 124
200. volatile struct_sensors sensors N_SCU Conjunto global dos sensores 19 Estrutura de actua o Estrutura descritiva dos actuadores typedef struct Estrutura de actua o de status para cada SCU Serie wt 4 bool pwm 0 EWM On OTT lo one Elos no Califlodon or E sysStatus Estrutura de Controlo para cada junta See 4 IONE iy kp kd enum_controlType type k control N_ SERVOS L ecCrucrt actuators pragma varlocate 2 sensors extern volatile struct_actuators actuators N_SCU Conjunto global dos actuadores Estrutura descritiva dos valores refer ncia dos controladores typedef struct struct parcamControl servo N_SERYOS 5 struct paremContr rol Cop N_SERYOS 7 Seru so aramtoncro line INT SERVOS struct paramControl girolh SERVOST l ecruct rerCOmu tou pragma varlocate 3 sensors extern volatile struct_refControl refControl N_SCU 2 3 COMUNICA O CAN A comunica o CAN implementada entre o Master e as diversas unidades Slave e tem como finalidade o redireccionamento dos dados de actua o provenientes da unidade principal para cada unidade Slave e no sentido oposto o envio dos dados sensoriais para a unidade Master de modo a que esta actualize a sua base de dados permitindo unidade principal a sua consulta O CAN um sistema de comunica es s rie multi ponto que foi desenvolvido originalmente para a ind stria autom vel para possibilitar as comunica es entre diversos componen
201. x Est c lol oi 1 110 0 0171 LO dA fb id certs eee fc Vec Vec Vec Vece Controler Controler Controler Controler Bus o 1lo 0 1 1 tlo o 071 N x N y N z N w Bit dominante no barramento Bit recessivo no barramento PON Fig 2 12 Arbitragem de mensagens segundo o sistema de colis es CSMA BA Para implementa o deste modelo um dos bits definido como dominante bit 0 e o outro como recessivo bit 1 de modo que quando dois bits colidem um com o outro vence o dominante Esta estrat gia implementada bit a bit ao n vel do identificador conferindo deste modo prioridades de acordo com o seu valor Assim quanto menor for o valor do identificador maior a prioridade da mensagem Fig 2 12 Segundo esta pol tica vantajoso atribuir um endere o de menor valor num rico unidade Master de modo a conferir a m xima prioridade s mensagens de actua o Master Slave e s restantes unidades lhes atribu do endere os de valor crescente medida que a sua ordem de import ncia na rede diminui Desta forma atribuiu se o endere o 0b0000 ao Master e os endere os 0b0001 at 051000 para os oito Slaves dando maior prioridade s unidades respeitantes aos membros inferiores dado que requerem maior aten o ao n vel do controlo Tabela 5 Unidade Controladora Sec o a que respeita Endere o na Rede Master Unidade mestre 0b0000 Slave 1 Perna direita 0b0001 Slave 2 Perna esquerda 0b0010
Download Pdf Manuals
Related Search
Related Contents
CLC Main Workbench Emerson 92C Drawings & Schematics 5AB04 特許ライセンス契約書 本契約は 全国循環器撮影研究会だより No.23 PZ-N20CVU の取扱説明書を見る GE JGBP24 User's Manual - Bambozzi L100 Copyright © All rights reserved.
Failed to retrieve file