www.robotica.eng.br

Robótica | Xmega Robot first phase | XR - The First


XR - The First é um robô experimental que usa a biblioteca XMEGA/LM629 e um conjunto de sensores de ultrasom SRF08  para implementar, com o uso de lógica nebulosa "fuzzy logic", um algoritmo de guiagem evitando obstáculos baseado no conceito de General Perception (Reinhard Braunstingl et al) . Estou publicando este projeto também no Atmel Spaces, em função de usar um microcontrolador Atmel ATxmega128A1.

O download das últimas versões das bibliotecas e dos programas pode ser feito em: XMEGA/LM629  e  XR_he_First. Neste site vou publicar a parte teórica e as soluções práticas de hardware e software.

Engº Filippo Pardini

Curiosity Curiosity Curiosity Curiosity Curiosity
XR - The First XR - The First XR - The First XR - The First XR - The First XR - The First XR - The First XR - The First XR - The First XR - The First
RSS Feed

<03/03/13 >

O site Robótica foi reformulado, mas o objetivo continua o mesmo: oferecer informações, dicas e projetos de interesse na área de robôs autônomos.

Todos os programas e bibliotecas de software nos sites e no blog são livres para redistribuição e/ou modificação sob os termos da GNU General Public License complementada pela GNU Lesser General Public License como publicadas pela Free Software Foundation, versão 3 das licensas, ou versões posteriores.

Um dos projetos que está em desenvolvimento e que vou publicar aqui é o XR - The First que também está sendo publicado no Atmel Spaces.

  • Sistema de Direção Diferencial (SDD)

Direção DiferencialO SDD é talvez o sistema de direção mais simples para um robô autônomo terrestre. Ele consiste em duas rodas montadas num eixo comum e controladas por motores independentes, um para cada roda. No SDD, para que cada roda tenha o movimento de rolar, é necessário que o robô gire em torno de um ponto (ICC) que necessariamente está na direção do eixo comum às duas rodas. Variando a velocidade relativa das duas rodas, o ponto de giro pode ser alterado, correspondendo a trajetórias diferentes. Em cada instante, o ponto de giro do robô tem a propriedade de que a roda esquerda e a roda direita seguem caminhos que se movem em torno de ICC à mesma velocidade angular w. Considerando a figura acima, teremos então:

w(R + l/2) = vr

w(R  - l/2) = vl

onde vl, vr, w e R são todas funções do tempo. Em qualquer instante temos :

R = l/2 * (vl + vr) / (vr - vl)     e       w = (vr - vl) / l

Alguns casos especiais são de interesse:

vl = vr    neste caso o raio R é infinito e o robô se move em linha reta.

vl = - vr  neste caso o raio é zero e robô gira em torno de um ponto que está a meia distância entre as duas rodas, girando portanto sobre si mesmo.

Para outros valores de vl e vr, o robô segue uma trajetória curvada em torno de um ponto à distância R do seu centro, mudando a sua posição e orientação.

O SDD é muito sensível à velocidade relativa das rodas. Pequenos erros na velocidade provocam trajetórias diferentes e não significam simplesmente um robô mais rápido ou mais lento.

É possível mostrar que para o SDD a solução geral do problema cinemático direto é:

x(t) = 1/2 { integral de 0 a t [vr(t) + vl(t)]cos[O(t)]dt }

y(t) = 1/2 { integral de 0 a t [vr(t) + vl(t)]sen[O(t)]dt }

O(t) = 1/l { integral de 0 a t [vr(t) - vl(t)]dt }

O problema cinemático inverso é de solução extremamente difícil, a não ser para casos especiais como os citados acima. Considerando esses casos especiais, para comandar o robô para assumir uma pose (x, y, O) basta que ele gire sobre si mesmo de modo a apontar para (x, y), em seguida ande em linha reta até atingir (x, y) e por último  gire sobre si mesmo até que a orientação O seja atingida.

Referência: Computational Principles of Mobile Robotics  / Gregory Dudek - Michael Jenkin /  Cambridge University Press 2000.


  • Laço de realimentação PID

Laço de realimentação PID

Entrada digital do motor

Ts  -  Tempo de amostragem

Kp  -  Coeficiente proporcional

Ki  -  Coeficiente integral

Kd  -  Coeficiente Diferencial


01. Equipamento necessário

Estação de solda com temperatura controlada

Ponta de solda chanfrada de 1 mm

Pinças

Seringa 3ml

Fluxo Best 5305

Solda Best liga 63/37

02. Ajuste a temperatura da estação em 250°

03. Coloque fluxo na seringa

04. Limpe o local que receberá o integrado com álcool isopropílico

05. Com a seringa, coloque fluxo nas pistas onde será soldado o integrado

06. Com as pinças, alinhe o integrado sobre as pistas

07. Coloque o mínimo possível de solda sobre a ponta de solda

08. Solde uma perna de canto do integrado

09. Solde a perna do canto oposto

10. Com a seringa, passe fluxo em todas as pernas de um dos lados do integrado

11. Coloque solda na ponta de solda

12. Deslize a ponta de solda sobre todas as pernas que receberam fluxo

13. Repita 10, 11 e 12 para todos os lados do integrado

14. Após esfriar, verifique se todas as pernas ficaram bem soldadas

15. Limpe bem com álcool isopropílico as áreas de solda

  • Técnica simples para solda SMD
Solda SMD Solda SMD Solda SMD Solda SMD Solda SMD Solda SMD Solda SMD

If (Rudyard Kipling)

If you can keep your head when all about you
Are losing theirs and blaming it on you,
If you can trust yourself when all men doubt you,
But make allowance for their doubting too;
If you can wait and not be tired by waiting,
Or being lied about, don't deal in lies,
Or being hated, don't give way to hating,
And yet don't look too good, nor talk too wise:

If you can dream - and not make dreams your master,
If you can think - and not make thoughts your aim;
If you can meet with Triumph and Disaster
And treat those two impostors just the same;
If you can bear to hear the truth you've spoken
Twisted by knaves to make a trap for fools,
Or watch the things you gave your life to, broken,
And stoop and build 'em up with worn-out tools:

If you can make one heap of all your winnings
And risk it all on one turn of pitch-and-toss,
And lose, and start again at your beginnings
And never breath a word about your loss;
If you can force your heart and nerve and sinew
To serve your turn long after they are gone,
And so hold on when there is nothing in you
Except the Will which says to them: "Hold on!"

If you can talk with crowds and keep your virtue,
Or walk with kings - nor lose the common touch,
If neither foes nor loving friends can hurt you,
If all men count with you, but none too much;
If you can fill the unforgiving minute
With sixty seconds' worth of distance run,
Yours is the Earth and everything that's in it,
And - which is more - you'll be a Man, my son! 


Se (Rudyard Kipling - tradução Filippo Pardini)

Se és capaz de manter a calma quando todos ao teu redor
a estão perdendo e te culpando por isso,
Se és capaz de acreditar em ti quando todos duvidam,
dando o devido crédito às suas dúvidas;
Se és capaz de esperar sem te desesperares,
ou enganado, não passar a mentir,
ou sendo odiado, não dar vazão ao ódio,
e mesmo assim não parecer bom demais, nem pretensioso:

Se és capaz de sonhar sem que teus sonhos te escravizem,
Se és capaz de pensar sem fazer dos teus pensamentos a única meta;
Se és capaz de encontrar o triunfo e a desgraça
e tratar da mesma forma esses dois impostores;
Se és capaz de suportar ouvir as verdades que disseste
torcidas e transformadas em armadilhas para tolos,
ou ver as coisas pelas quais deste a vida, estraçalhadas,
e te esforçar para reconstruí-las com as ferramentas gastas que te restam:

Se és capaz de juntar tudo que ganhaste em tua vida
e arriscar tudo isso de uma única vez,
e perder, e recomeçar tudo novamente
e apesar disso jamais dizer uma única palavra sobre a tua perda;
Se és capaz de forçar coração, nervos e tendões
até que não agüentem mais,
e mesmo assim ir em frente mesmo quando não sobrar nada em ti
a não ser a consciência que lhes impõe "agüentem firme!"

Se és capaz de falar com o povo mantendo teus princípios éticos,
ou no meio de reis não perder a naturalidade,
Se és imune a inimigos pessoais e a grandes amigos,
Se a todos podes ser de apoio sem exageros;
Se és capaz de preencher o minuto fatal
com sessenta segundos de grande valor,
Tua é a terra e tudo que há nela,
e - o que mais importa - tu és um Homem, meu filho!

Filippo Pardini
ROBÓTICA
Desenvolvimento de Robôs Autônomos
Copyright © 2000-2013 Filippo Pardini. All rights reserved.