Você está na página 1de 110

Facul dade de Engenhari a da Uni versi dade do Port o

Ensi nament o Rpi do de Mani pul adores Indust ri ai s


Car l os Eduar do Pi nt o Tei xei r a
Ver so Pr ovi sr i a
Dissertao/Relatrio de Projecto realizada(o) no mbito do
Mestrado Integrado em Engenharia Electrotcnica e de Computadores
Major Automao


Orientador: Prof. Dr. Antnio Paulo Gomes Mendes Moreira
Co-orientador: Prof. Dr. Paulo Jos Cerqueira Gomes da Costa

Julho de 2009





























Carlos Teixeira, 2009
ii























iii


v

Agradeci ment os
Quero deixar uma palavra a todos os que me ajudaram ao longo do meu percurso
acadmico.
Aos meus orientadores Prof. Dr. Antnio Paulo Moreira e Prof. Dr. Paulo Gomes
Costa pela oportunidade de investigao no grupo de Controlo e Robtica (5DPO) da
FEUP, e pelo apoio e suporte durante a execuo deste trabalho.
Um agradecimento muito especial ao Paulo Malheiros e Hber Sobreira, pela ajuda,
tempo e partilha de conhecimentos ao longo da execuo deste trabalho final.
Aos meus amigos que at aqui me acompanharam e aos que aqui criei.
Marlene por toda amizade e pacincia.
Aos meus Pais, que sempre me apoiaram desde o incio e pelas condies dadas para
que tudo at aqui tivesse sido possvel.
A todos eles, um Muito Obrigado.

vii

Resumo
A programao por demonstrao (PpD) tem sido um tema cada vez mais abordado,
com inmeras abordagens e estratgias para a robtica. Em especial na rea de
programao de manipuladores industriais, devido sua complexidade de programao
e cada vez mais escassez de tempo para o fazer.
Principalmente para as pequenas e mdias empresas (PMEs) este tipo de
programao muito vantajoso, pois muitas delas no possuem recursos de engenharia
para que possam efectuar as alteraes e implementar novas funcionalidades para os
seus sistemas robticos.
Estes sistemas de PpD tm-se mostrado cada vez mais robustos, eficazes e flexveis.
Neste trabalho apresentada uma estratgia para a PpD de manipuladores
industriais, recorrendo ao sistema Sincrovision recentemente desenvolvido na FEUP.


ix

Abst ract
The programming-by-demonstration (PbD) was been an issue increasingly
addressed, with numerous approaches and strategies for robotics. In particular, for an
industrial robotic system, because of the programming complexity and short time to do
it.
Specially for small and medium enterprises (SMEs) this type of programming has
great advantages, because most of these companies do not have the engineering
resources to make changes or add new functionalities to their robotic systems.
These PbD was proven more robustness, efficient and flexible way to programming.
This work presents a strategy and one more PbD idea for programming industrial
robotic systems, using one system recently developed at FEUP - the Sincrovision.


ndi ce
Agradeci ment os . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . v
Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vi i
Abst ract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . i x
ndi ce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi
Li st a de f i guras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi v
Abrevi at uras e Smbol os . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvi i
Capt ul o 1 Int roduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1. 1 Est ado da Art e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1. 2 Obj ect i vos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
1. 3 Est rut ura do document o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
1. 4 Not ao usada no document o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Capt ul o 2 Vi so Art i f i ci al . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2. 1 Int roduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2. 2 Model o pi nhol e camer a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Capt ul o 3 Vi so Est ereoscpi ca . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3. 1 Int roduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3. 2 Al gumas noes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3. 3 Model o pi nhol e camer a e o si st ema est ereoscpi co. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3. 4 Geomet ri a epi pol ar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
3. 5 Cal i brao do si st ema de vi so . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
3. 5. 1 O al gor i t mo de Tsai : ver sat i l e camer a cal i br at i on t echni que . . . . . . . . . . . . . . . . . . . . . . . 48
3. 5. 2 Ei ght - poi nt al gor i t hm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
xi

xii ndice

3. 6 Reconst ruo 3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Capt ul o 4 Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
4. 1 Si st ema est ereoscpi co . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
4. 2 Marcadores Lumi nosos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
4. 3 Si st ema de Si ncroni zao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
4. 4 Mani pul ador i ndust ri al . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
4. 5 Si st ema Pneumt i co . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
4. 6 Sensor de f ora . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
4. 7 Mqui na de Pol i ment o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
4. 8 Si st ema de moni t ori zao de Corrent e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
4. 9 Peas para pol i ment o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Capt ul o 5 Si st ema Si ncrovi si on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
5. 1 Cal i brao Tsai . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
5. 2 Test e da Geomet ri a epi pol ar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
5. 3 Test e reconst ruo 3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
5. 4 Posi o e rot ao da f errament a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
5. 5 Val i dao de resul t ados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
Capt ul o 6 Gerao de t raj ect ri as . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
6. 1 Exposi o do probl ema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
6. 2 Abordagem adopt ada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
6. 3 Inst rues a usar no mani pul ador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
6. 3. 1 Inst r uo MOVL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
6. 3. 2 Inst r uo MOVC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
6. 4 Det eco de zonas de paragem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
6. 5 Det eco de zonas de vel oci dade const ant e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
6. 6 Det eco de rect as . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Capt ul o 7 Rel ao Fora vs Corrent e el ct ri ca . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
7. 1 Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
7. 1. 1 Abor dagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97


ndice xiii

Capt ul o 8 Concl uses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
8. 1 Trabal ho f ut uro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Ref ernci as . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Anexo A Concei t os . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109

xiv Lista de figuras

Li st a de f i guras
Fi gur a 2. 1. 1 Cmar a de vdeo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Fi gur a 2. 2. 1 Repr esent ao t pi ca do model o pi nhol e camer a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Fi gur a 2. 2. 2: Model o pi nhol e camer a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Fi gur a 2. 2. 3: Repr esent ao dos ei xos coor denados no nosso model o pi nhol e camer a. . . . . . . . . 30
Fi gur a 2. 2. 4 vi st a de l ado do model o pi nhol e camer a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Fi gur a 2. 2. 5: Ei xo de coor denadas X
1
Y
1
no pont o pr i nci pal e X
2
Y
2
num dos cant os da
i magem. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Fi gur a 2. 2. 6 Ref er enci al do mundo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Fi gur a 3. 1. 1 Focando o pol egar , obt emos a vi so de duas bandei r as. Ret i r ado de [15]. . . . . . . . 39
Fi gur a 3. 1. 2 Focando a Bandei r a obt m-se a vi so de doi s pol egar es. Ret i r ado de [15]. . . . . . . . 40
Fi gur a 3. 2. 1 Ef ei t o de Per spect i va . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Fi gur a 3. 2. 2: Ef ei t o de Ocl uso. Ret i r ado de [15] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Fi gur a 3. 2. 3 Ef ei t o de Sombr a. Ret i r ado de [15]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Fi gur a 3. 3. 1 Si st ema de vi so est er eoscpi ca . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Fi gur a 3. 4. 1 Model o de um si st ema est er eoscpi co . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Fi gur a 3. 5. 1 Par t i cul ar i dades assumi das no al gor i t mo de Tsai . Ret i r ada de [14] . . . . . . . . . . . . . . . . 48
Fi gur a 3. 5. 2 Set up Cal i br ao Tsai . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Fi gur a 3. 5. 3 Pl ano de cal i br ao de 88 pont os. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Fi gur a 3. 6. 1 Tr i angul ao i deal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Fi gur a 3. 6. 2 Tr i angul ao sem i nt er cepo dos r ai os . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Fi gur a 4. 1. 1 Cmar a do si st ema est er eoscpi co . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Fi gur a 4. 1. 2 Ent r adas USB e Tr i gger das cmar as usadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58


Lista de figuras xv

Fi gur a 4. 1. 3 Si st ema est er eoscpi co mont ado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Fi gur a 4. 2. 1 Supor t e const r udo par a col ocar os mar cador es . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Fi gur a 4. 2. 2 Di sposi o dos mar cador es l umi nosos na f er r ament a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Fi gur a 4. 3. 1 Pl aca genr i ca At mega164P . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Fi gur a 4. 4. 1 Mani pul ador Mot oman . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Fi gur a 4. 5. 1 Gr i pper usado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Fi gur a 4. 6. 1 Sensor de f or a JR3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Fi gur a 4. 6. 2 Repr esent ao de 3 dos 6 gr aus de l i ber dade mensur vei s pel o JR3. Imagem
r et i r ada da f ol ha de car act er st i cas do sensor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Fi gur a 4. 6. 3 Apl i cao JR3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Fi gur a 4. 7. 1 Mqui na de pol i r . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Fi gur a 4. 8. 1 Anal i sador de ener gi a Mach Smar t da Ducat i . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Fi gur a 4. 8. 2 Apl i cao Mach Moni t or . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Fi gur a 4. 8. 3 Ci r cui t o de Condi ci onament o de si nal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Fi gur a 4. 8. 4 Sada em t enso do LEM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Fi gur a 4. 8. 5 Val or es Mxi mos e mni mos do ci r cui t o de l ei t ur a de cor r ent e . . . . . . . . . . . . . . . . . . . . . 68
Fi gur a 4. 8. 6 Aspect o da apl i cao de moni t or i zao de cor r ent e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Fi gur a 4. 9. 1 Peas par a pol i ment o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Fi gur a 5. 1. 1 Ei xos de r ot ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Fi gur a 5. 1. 2 Rot ao segundo ei xo Z- a) vi st a par a a cmar a 1, b) vi st a par a a cmar a 2 . . . 72
Fi gur a 5. 1. 3 Comeando a r ef er i r por ci ma - Test e 2, 4 e 6 ef ect uados par a a cal i br ao
Tsai . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Fi gur a 5. 1. 4 Capt ur a dos pl anos Test e 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
Fi gur a 5. 1. 5 Apl i cao de t r eshol d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
Fi gur a 5. 1. 6 Local i zao de Pont os de cal i br ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
Fi gur a 5. 2. 1 Li nha epi pol ar cal cul ada at r avs do pont o sel ecci onado na i magem 1 . . . . . . . . . . . . 76
Fi gur a 5. 3. 1 Test e r econst r uo 3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Fi gur a 5. 3. 2 Ef ei t o de Bar r i l . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Fi gur a 5. 3. 3 Cor r eco do ef ei t o de bar r i l . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
Fi gur a 5. 4. 1 Model o da f er r ament a com mar cador es . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
Fi gur a 5. 4. 2 Ei xos coor denados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

xvi Lista de figuras

Fi gur a 5. 4. 3 Ei xos coor denados Mani pul ador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Fi gur a 5. 5. 1 Cubo de t est e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Fi gur a 5. 5. 2 Cubo def or mado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Fi gur a 5. 5. 3 Conf i gur ao do si st ema Si ncr ovi si on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Fi gur a 6. 1. 1 Cami nho ger ado pel o NURBS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Fi gur a 6. 3. 1 Inst r uo MOVL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
Fi gur a 6. 3. 2 Posi t i on Level - r et i r ada dos manuai s da MOTOMAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Fi gur a 6. 3. 3 Resul t ado da i nst r uo MOVC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Fi gur a 6. 3. 4 Cr cul os segui dos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
Fi gur a 6. 3. 5 Cr cul os consecut i vos de f or ma cor r ect a - f i gur a r et i r ada do manual de
pr ogr amao do mani pul ador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
Fi gur a 6. 3. 6 Inst r uo MOVC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
Fi gur a 6. 4. 1 Esf er as em t or no dos pont os de anl i se . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Fi gur a 6. 4. 2 Fi l t r agem de pont os . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Fi gur a 6. 5. 1 Tr aj ect r i a em r ect a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Fi gur a 6. 5. 2 Di f er ent es segment os de r ect a com vel oci dades di f er ent es . . . . . . . . . . . . . . . . . . . . . . . . . 93
Fi gur a 6. 6. 1 Rect a dos 3 pr i mei r os pont os . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Fi gur a 6. 6. 2 Rect as cal cul adas dos 6 pr i mei r os pont os . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Fi gur a 6. 6. 3 Tr aj ect r i a f i nal apr oxi mada por r ect as . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Fi gur a 7. 1. 1 Pea nmer o 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
Fi gur a 7. 1. 2 Ref er enci al par a o t est e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
Fi gur a 7. 1. 3 Gr f i cos For a/ Cor r ent e el ct r i ca . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
Fi gur a 8. 1. 1 Di spar i dade bi nocul ar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109


Abreviaturas e Smbolos xvii

Abrevi at uras e Smbol os
Abrevi at uras
FEUP Faculdade de Engenharia da Universidade do Porto;
DEEC Departamento de Engenharia Electrotcnica e de Computadores;
ADC Conversor analgico para digital;
PpD - Programao por demonstrao;
PMEs Pequenas e mdias empresas;
PbD Programming by Demonstration;
SMEs Small and medium enterprises;
CCD Charge - coupled device Dispositivo de carga acoplado;
DLT - Direct Linear Transformation;
SVD Singular value decomposition;
USB Universal Serial Bus;
CAD Computer-Aided Design;

Smbol os
Smbolo Significado
C Centro ptico ou ponto de focagem;
Plano de imagem;
Plano focal;
p
f
I
Ponto principal;
Distncia focal;
Matriz identidade;
X
1
Y
1
Referencial de Coordenadas no plano de imagem;
X
W
Y
W
Z
W
Referencial de Coordenadas do Mundo;
XYZ
ms
Referencial de coordenadas da cmara;
Milissegundo;
Hz Unidades SI da frequncia;
R
Matriz de Rotao;
T Matriz de translao;
cm Centmetro;
m Metro;
KHz QuiloHertz;
mA miliampre



xviii Abreviaturas e Smbolos














Capt ul o 1

Int roduo
Com a deslocao das grandes sries de produo para outros pases, em toda a
Europa, e particularmente em Portugal, restaram as pequenas sries com grande valor
acrescentado e geralmente muito especfico. Na produo robotizada recorrendo a
manipuladores industriais este facto gerou um problema grave. O tempo de
reprogramao de um manipulador robtico tornou-se muito elevado comparativamente
ao tempo de produo. Na aquisio de um manipulador para uma linha de montagem
previamente necessrio considerar factores tais como, o tempo necessrio para o
desenvolvimento do sistema, instalao e integrao na empresa, custos de formao de
operadores, gesto do projecto, manuteno, custos com actualizaes do software e
respectivas modificaes; Assim, as tcnicas de ensinamento rpido de manipuladores
tm sido alvo de grande investigao e tm conduzido ao desenvolvimento de novas
abordagens dos mesmos, nos ltimos tempos.
O ensinamento por gestos ou por imitao de um operador foi abordado por alguns
grupos de trabalho, no entanto a complexidade do setup necessrio e a falta de robustez
por vezes existente no sistema, impediram o desenvolvimento e a utilizao frequente
desta tcnica de ensinamento. Com a nova tecnologia SincroVision, recentemente
desenvolvida na FEUP
1
e em processo de patentear esta tecnologia; atravs do uso da
viso estereoscpica para localizao tridimensional no espao de um marcador
luminoso, ser possvel, utilizando mais do que um marcador luminoso sincronizados
com cmaras, retirar a posio e rotao tridimensional da ferramenta. A ideia acoplar
estes marcadores na ferramenta de um operador de modo a registar-se num computador,
diversos pontos da trajectria efectuada por este e posteriormente analisar estes
movimentos tentando transmiti-los ao manipulador industrial. O sistema bastante
simples de instalar e extremamente robusto, o que possibilita a sua utilizao em
praticamente todos os ambientes industriais mais comuns.
Com estes pontos da trajectrias registados, pretende-se determinar uma sequncia
de pontos em linha recta ou em arco de circunferncia 3D, que consiga aproximar a
trajectria inicial o melhor possvel segundo um dado critrio. A aproximao
trajectria deve ser feita quer em termos de posio no espao quer em termos de
velocidade. Aps esta anlise, a trajectria ser traduzida para uma sequncia de
instrues na linguagem do manipulador robtico, criando assim, automaticamente, um
programa capaz de executar a trajectria pretendida.
19

20 Captulo 1: Introduo
O trabalho foi desenvolvido com a colaborao das empresas NS- Mquinas que
fabrica mquinas de polir e a empresa de manipuladores industriais MOTOMAN.

1. 1 Est ado da Art e
O uso de manipuladores industriais tem vindo a desempenhar um papel cada vez
mais importante no sector industrial, por vezes no sendo maior a sua entrada no
mercado devido complexidade de programao destes dispositivos. O problema est
na dificuldade de passar a sabedoria e experincia de um operador para o manipulador.
A programao por demonstrao (PpD) um dos rumos que se est a tomar para a
programao deste tipo de robs. A motivao para este trabalho vai nesse sentido, pois
a imitao da trajectria humana tem as seguintes vantagens:
1) PpD simplifica a programao do rob. Apenas necessrio efectuar o
movimento desejado.
2) O movimento humano tem implcito muito potencial no que diz respeito
realizao das tarefas, (exemplo: rea de trabalho, direces preferenciais
que devem ser tomadas e regies/movimentos que devem ser evitados) que
seria difcil de representar atravs de outro mtodo.
3) Passagem de velocidades recomendadas para determinados movimentos.
4) Habilita qualquer pessoa a operar e programar um manipulador industrial
mesmo que esta no possua qualquer conhecimento de programao.
O crescente desenvolvimento dos computadores, assim como o aumento da
capacidade de processamento e de armazenamento dos mesmos, tm aberto portas para
a utilizao de algoritmos mais complexos e robustos na rea da robtica.
O principal objectivo da PpD permitir a programao de trajectrias para o
manipulador num curto espao de tempo e de uma forma intuitiva. Diferentes
abordagens para a PpD tm sido investigadas, diferindo entre si no tipo de
manipuladores, estratgias e dispositivos usados. Sobre dispositivos e estratgias temos
por exemplo o uso:
da fala;
de um guia;
de um joystick;
de desenhos;
por gestos;
por imitao / observao;
de uma luva antropomrfica
2
;
1
ver referncias
Yusuke Maeda et al (2008) [1] propem que a PpD seja efectuada recorrendo a um
guia preso na ponta do manipulador juntamente com um sensor de fora acoplado ao
guia. Neste trabalho, a aproximao ao problema passa por ter acesso ao ambiente de
trabalho, pegar no guia e movimentar o rob no espao envolvente indicando os pontos
inicial e final do objecto a mover todos os movimentos so guardados. De seguida, o


Estado da Arte 21

manipulador calcula o espao de trabalho e aquele que precisa para mover o volume. A
melhor trajectria para o manipulador mover o objecto do ponto inicial at ao final,
ento planeada.
Aleotti J et al (2006) [2] propem que o manipulador funcione como uma
aproximao a um brao humano, usando uma fita moldvel para que seja possvel
determinar a sua forma o mesmo tipo de sensor que tem sido usado em aplicaes na
rea de realidade virtual para introduzir movimentos humanos nas personagens virtuais.
Neste trabalho existem 3 fases: fase de treino, fase de aprendizagem e fase de deciso.
Na primeira fase, o rob efectua uma srie de movimentos e o operador copia-os. Os
valores da fita so guardados. De seguida, o operador controla o rob em tempo real,
movendo o seu brao. O rob tenta executar os movimentos, baseando-se nos valores
adquiridos na primeira fase. Na fase de deciso, o operador avalia se o movimento
executado pelo manipulador o pretendido. Se assim for, d-se por finalizada a
aprendizagem; caso contrrio volta-se a repetir o algoritmo at obter resultados
favorveis.
O uso de luvas antropomrficas
2
, para a programao de manipuladores sugerida
por Ekvall,S. et al (2005) [3] e por Aleotti J et al (2006) [2]. No primeiro caso,
estudada a maneira de como pegar nos objectos objectos de diferentes tamanhos e de
diferentes formas: esfricos, cilndricos, discos. No operador, colocada a luva para
segurar nos objectos pretendidos, atravs de modelos de Markov, rotao e translao
da mo ou ambos simultaneamente. retirada essa informao e transferida para o
manipulador.
No estudo Aleotti J et al (2006) [2] todo o trabalho foi realizado em ambiente
virtual, tendo-se usado a luva para interaco com os objectos virtuais. Neste ambiente,
permitido ao operador mover objectos, cujos movimentos sero posteriormente
analisados. ento gerada uma trajectria aproximada ao movimento inicial atravs do
algoritmo NURBS.
No caso da imitao dos gestos humanos atravs da observao, os trabalhos de R.
Dillmann(2004) [4], Markus Ehrenmann et al [5], Manuel Lopes et al (2005) [6]
demonstram que um sistema de viso usado para observar os movimentos do operador
para simples tarefas. Nestes estudos, o principal objectivo tentar passar o
conhecimento humano, realizao de tarefas simples e complexas, para os robs
humanides.
F. Nagata et al (2001) [7] usa um joystick em conjunto com um controlador de fora.
O operador pode controlar o manipulador indicando a direco e orientao da
ferramenta e ter a noo de fora atravs da rigidez do joystick.
Com recurso fala, temos o ensinamento de um tele-rob e a programao de um
manipulador feita por Jayawardena,C. (2005) [8] e Pires, J.N.(2007) [9]
respectivamente.
No primeiro estudo de Jayawardena,C. (2005) [8] o operador tem acesso ao
panorama do ambiente de trabalho, e atravs da fala, descreve o objecto pretendido
(forma, cor, tamanho). No caso de estas caractersticas estarem j na base de dados do

22 Captulo 1: Introduo
rob, e recorrendo viso artificial, este tentar reconhecer e recolher o objecto
pretendido; caso contrrio, o rob questionar o operrio sobre a posio real do objecto
e guardar posteriormente estas novas caractersticas na sua base de dados.
No segundo trabalho [9], utilizada a fala como meio de programao do
manipulador. A programao feita atravs da demonstrao, movendo-se o
manipulador atravs de um guia preso na ponta do manipulador. possvel mover o
manipulador nas direces pretendidas e simultaneamente interagir com a programao
das trajectrias atravs da fala (tirar a posio do rob, tempos de espera e tipos de
movimento MOVL, MOVJ, entre outros), sendo exequvel programar, de uma maneira
simples e verstil, todo o trajecto do manipulador.
Quando se pretende mostrar a forma de um objecto, nada melhor do que tentar
desenh-lo, assim como era realizado antigamente pelos arteses. Neste contexto, Pires,
J.N. (2007) et al [10] propem o uso de canetas digitais (da Anoto technology) para a
programao de tarefas. Juntamente com o uso destas canetas, so tambm usados
ficheiros de CAD e interfaces para gerar cdigo para os manipuladores, o que faz com
que a programao destes manipuladores seja mais fcil e intuitiva.
O ensinamento por gestos tem comeado a ganhar adeptos devido s vantagens j
mencionadas na introduo. Pedro Neto et al (2009) [11] sugerem a programao por
gestos, usando um sensor de movimento - acelermetro de 3 eixos - embebido no
comando da consola Wii.








2
ver referncias.




Objectivos 23


1. 2 Obj ect i vos
Neste trabalho, proposta mais uma estratgia programao de robs atravs da
demonstrao. usada a viso artificial, mais especificamente um sistema de viso
estereoscpico, para captar e observar os movimentos pretendidos. Concretamente,
utilizado um novo conceito, desenvolvido na FEUP, com a designao de Sincrovision.
Trata-se de um sistema robusto de captura de movimento e posicionamento 3D.
composto por marcadores luminosos sincronizados com o sistema estereoscpico de
viso artificial.
Inicialmente, o sistema permitia apenas o posicionamento 3D de um ponto. O
objectivo fazer com que o sistema consiga posicionar e capturar o movimento de uma
ferramenta de trabalho que est a ser manejada por um operador. Aps captura do
movimento e anlise do mesmo, gerada a melhor trajectria para posteriormente o
manipulador a imitar. Como rea de teste, temos a tarefa de polimento, tomada como
referncia para a realizao dos testes de alguns algoritmos.
Para atingir este objectivo final, foi efectuado um estudo do sistema estereoscpico
j existente, calibrao e melhoramento do mesmo, de forma a detectar a rotao da
ferramenta. tambm proposto um pequeno estudo sobre aproximao de pontos por
rectas e arcos de circunferncia.


24 Captulo 1: Introduo
1. 3 Est rut ura do document o
No captulo nmero dois, sobre viso artificial, feita uma introduo ao modelo
pinhole camera, sendo apresentada alguma da geometria que o acompanha.
No captulo trs, faz-se uma introduo viso estereoscpica, em que se explica a
aplicao do modelo pinhole camera a um sistema estereoscpico. Na seco 3.4,
descrita a geometria epipolar sobre a qual um sistema estereoscpico assenta. Na seco
3.5, so apresentados dois algoritmos para a calibrao de uma cmara e calibrao de
um sistema estereoscpico. No final do captulo trs, exposto um algoritmo para a
reconstruo 3D a partir de um sistema estereoscpico.
No captulo nmero quatro apresentado e descrito todo o hardware usado para este
trabalho, assim como algumas das caractersticas relevantes sobre o mesmo. Muitas
outras podem ser obtidas a partir das folhas de caractersticas fornecidas pelos
fabricantes.
O captulo nmero cinco descreve as aplicaes desenvolvidas, e revela os
resultados obtidos com os algoritmos implementados, para o clculo da posio e
rotao da ferramenta.
Para a gerao de trajectrias, o captulo seis descreve o pequeno estudo que se
efectuou nesta rea.
No captulo sete descrita a relao existente entre a fora exercida pela pea a polir
sobre o disco de polimento e a corrente elctrica consumida pelo motor trifsico da
mquina de polir.
As concluses e trabalhos futuros esto presentes no captulo oito.
O anexo A mostra os conceitos que foram utilizados ao longo de todo o documento.



Notao usada no documento 25


1. 4 Not ao usada no document o

A notao usada neste documento para simplificar a sua leitura est definida da
seguinte forma; As matrizes so representadas por letras maisculas e a negrito P. Os
vectores so representados por letras sozinhas e em maisculas P.
A representao de escalares feita em letra minscula e em itlico as
coordenadas de um vector P tridimensional so (x,y,z). A representao dos eixos de um
referencial ser feito em maisculas e os caracteres que os define, encontram-se todos
juntos as coordenadas do ponto P no referencial XYZ so (x,y,z) .
Palavras em ingls so identificadas em itlico pinhole camera.
Ao longo dos captulos de viso artificial vai ser usado um sistema de coordenadas
homogneas, para que se possam expressar certas operaes atravs de multiplicao de
matrizes por exemplo a translao de um ponto, e que num sistema cartesiano no
possvel.
O sistema de coordenadas homogneas tem mais uma dimenso do que o espao a
que respeitam; Assim sendo, no espao bidimensional tm a forma (x,y,w), onde w
representa um plano paralelo a XY. Ao longo do documento w ser igual a 1. Ento
para um vector (x,y) no sistema cartesiano, este no sistema de coordenadas homogneas
definido como (x,y,1).
No caso das matrizes, para a passagem do sistema cartesiano, para o sistema de
coordenadas homogneas adicionada uma ltima linha e/ou uma coluna (preenchida
com zeros, excepto o ltimo elemento 1) matriz original, de forma a que esta seja
quadrada - j
o b
c J
[ no sistema cartesiano; No sistema de coordenadas homogneas a
matriz anterior passa a _
o b u
c J u
u u 1
_.
Quando se expressar alguma varivel em coordenadas homogneas esta
identificada com um til em cima da varivel ponto P
m
em coordenadas homogneas
P
m

.
Em qualquer altura em que se possa confundir qualquer tipo de letra/expresso
representada em figuras, com a notao matemtica aqui descrita, previamente
definido o que representa cada uma delas.


26 Captulo 1: Introduo




Capt ul o 2

Vi so Art i f i ci al
2. 1 Int roduo
Cada vez mais usada, a viso artificial uma tecnologia que permite que as
mquinas usem captao de imagens durante o seu funcionamento. Esta tecnologia
baseia-se na teoria de construir sistemas artificiais que obtenham informaes a partir
de imagens capturadas atravs de cmaras fotogrficas/vdeo. Esta captura pode ser
efectuada em sequncia de vdeo de uma s cmara, ou de mltiplas cmaras com
diferentes perspectivas da mesma imagem.
Estes sistemas tm estado em constante entrada no mercado industrial, devido s
suas caractersticas face viso Humana. Este sistema no sofre de falsos julgamentos
ou cansao. No entanto, mesmo fora do uso industrial os sistemas de viso artificial tm
sido usados como meio de interface humana para entretenimento ou facilidade de
introduo de dados em alguns programas.
Este tipo de tecnologia tem sido introduzida em muitas reas, entre as quais:
Monitorizao/controlo de processos ex: contagem de pessoas, inspeco
industrial, anlise mdica, modelao topogrfica, Robs industriais,
veculos autnomos.
Ajuda/Entretenimento ex: como meio de dispositivo de entrada de alguns
sistemas, no auxlio de pessoas com menos capacidades ou aumentar a
facilidade de jogar em consolas de vdeo jogos.
Fsica: ex: estudo da radiao electromagntica, em que esta reflectida nas
superfcies dos objectos e finalmente medida no CCD da cmara. So usados
algoritmos de seguimento, reconhecimento de objectos, aprendizagem,
estimao de movimento e restaurao de imagem.
A implementao de um sistema de viso artificial no se apresenta como uma
tarefa trivial pois a seleco dos componentes e a programao de todo o sistema
reflecte as exigncias particulares de cada aplicao. Adicionalmente as decises que
tm de ser tomadas devem reflectir aspectos mais abrangentes do que apenas os custos
iniciais do investimento.
27

28 Captulo 2: Viso artificial
Em viso artificial podemos encontrar anlise de imagem 2D (maioritariamente),
nos ltimos anos tem-se observado um crescente aumento na aplicao e estudo de
imagens a 3D. Cada vez mais se tem tentado emular a viso biolgica e a percepo
visual dos Humanos (Stereopsis). J h muitos anos se conhece o sistema de percepo
visual humano e tem-se tentado passar este conhecimento para as mquinas.
Neste captulo apenas vamos abordar o modelo de cmaras finitas e projectivas, tipo
de cmaras usadas no trabalho.







As cmaras de vdeo so j um sensor muito usado na robtica, muito devido
grande quantidade de informao que possvel extrair da cada imagem (frame) que
esta adquire. Para isso necessrio efectuar processamento da imagem obtida focado na
informao que se pretende extrair dessa mesma imagem.
Modelo da cmara O modelo pinhole camera descreve a relao matemtica entre
as coordenadas de um ponto 3D e a sua projeco na imagem do plano. Maior parte dos
algoritmos desenvolvidos para viso computacional parte do princpio que o modelo da
cmara usada segue o modelo pinhole camera.
Fi gur a 2. 1. 1 Cmar a de vdeo



Modelo pinhole camera 29


2. 2 Model o pi nhol e camer a
Este modelo no inclui distores geomtricas nem objectos desfocados provocados
pelas lentes e apenas pode ser usado para uma primeira aproximao do mapeamento da
cena 3D para a cena a 2D. Os erros do modelo da cmara diminuem com a qualidade da
cmara e qualidade das lentes, o erro aumenta desde o centro da imagem at s margens
desta, onde o efeito de barril
3
mais acentuado nas margens [13]. Alguns destes erros
podem ser compensados por algoritmos ou filtros.
Existe um plano fixo a uma distncia f em frente a um plano de imagem . Um
pinhole ideal encontrado no plano - ver Figura 2.2.2.
Todos os raios de luz emitidos ou reflectidos por objectos passam atravs do pinhole
e formam uma imagem invertida deste mesmo objecto na imagem do plano; ver Figura
2.2.1.Cada ponto do objecto constitui um ponto na imagem, formando-se uma linha por
cada ponto formado. A imagem seguinte mostra este fenmeno. A este fenmeno de
projeco do espao 3D para um plano d-se o nome de projeco projectiva
4
[15].

Fi gur a 2. 2. 1 Repr esent ao t pi ca do model o pi nhol e camer a

O modelo geomtrico do modelo pinhole camera consiste num plano de imagem
e um ponto C no plano . O ponto C chamado de centro ptico ou ponto de focagem.
O plano paralelo a chamado de plano de principal. A distncia entre o centro
ptico e a imagem chamado de distncia focal e representado por f.




3 4
Consultar anexo A

30 Captulo 2: Viso artificial

Fi gur a 2. 2. 2: Model o pi nhol e camer a
A linha perpendicular imagem do plano chamado de eixo ptico e intercepta
no ponto p, chamado ponto principal. Note-se que o plano focal tambm perpendicular
ao eixo ptico. Na Figura 2.2.2 temos representado o modelo pinhole camera.
Para a representao e explicao dos conceitos, vamos comear por definir um eixo
de coordenadas no nosso modelo. O eixo Z aponta na direco frontal da cmara sendo
o eixo ptico ou eixo principal. O plano principal contm o referencial XYZ e o lado
da frente da cmara, a origem deste referencial o ponto C. Estas definies podem ser
observadas na Figura 2.2.3.
O plano de imagem onde toda a cena 3D projectada atravs do diafragma da
cmara o plano de imagem e est paralelo aos eixos XY, est tambm a uma distncia
f da origem C. No modelo real da implementao do modelo o plano da imagem est
localizada na coordenada - f.

Fi gur a 2. 2. 3: Repr esent ao dos ei xos coor denados no nosso model o pi nhol e camer a.


O ponto P
m
um ponto no Mundo com as coordenadas (x
m
, y
m
, z
m
) relativamente a
XYZ.


Modelo pinhole camera 31

A projeco do ponto P
m
no plano de imagem o ponto P
m
i
. Neste plano temos
definido um referencial 2D X
1
Y
1
com origem p (centro da imagem) e nos quais as
coordenadas do ponto P
m
i
deste sistema so (x
m
i
, y
m
i
).
No modelo pinhole camera original a relao entre as coordenadas do ponto P
m

(x
m
, y
m
, z
m
) e do ponto P
m
i
(x
m
i
, y
m
i
) dado por:
x
m
i
= -
x
m
z
m
( 2. 1)

y
m
i
= -

m
z
m
( 2. 2)


Esta relao geomtrica de 3D para 2D descrita pelo pinhole camera apenas uma
projeco da imagem no plano de imagem seguido de uma rotao de 180. Para evitar
isto e simplificar a resoluo, podemos colocar a imagem do plano na coordenada f em
vez de -f. Assim obtemos:
x
m
i
=
x
m
z
m
( 2. 3)

y
m
i
=

m
z
m
( 2. 4)


Fi gur a 2. 2. 4 vi st a de l ado do model o pi nhol e camer a

Salienta-se mais uma vez, que esta representao assume que a origem das
coordenadas na imagem do plano o ponto principal. Ter em conta que o passo anterior
apenas uma simplificao e uma maneira de tratar o problema real sem necessitarmos
de fazer a rotao da imagem obtida.


32 Captulo 2: Viso artificial
A relao anterior entre o ponto P
m
no mundo e o ponto P
m
i
no plano de imagem
vem com a relao:
P
m
i
= P P
m
( 2. 5)


Sendo P a matriz de projeco da cmara. A matriz de projeco uma matriz de
dimenso 3x4 que contm os parmetros intrnsecos e extrnsecos da cmara - distncia
focal, centro da imagem, factor de escala dos pixis, rotao e translao da cmara. Em
seguida explicamos onde se localiza cada um dos parmetros na matriz de projeco.
O modelo pinhole camera assume que a origem das coordenadas na imagem do
plano feito no ponto principal, p. Tipicamente em processamento de imagem no
usamos o ponto principal como origem do referencial neste plano, mas sim num dos
cantos da imagem. Considerando que a origem do referencial feita no canto inferior
esquerdo do plano da imagem X
2
Y
2
e que as coordenadas do ponto principal neste novo
referencial so (x
0
, y
0
).


As expresses que nos do as coordenadas (x
m
i
, y
m
i
) no plano de imagem com
origem no ponto principal:
Fi gur a 2. 2. 5: Ei xo de coor denadas X
1
Y
1
no pont o pr i nci pal e X
2
Y
2
num
dos cant os da i magem.

x
m
i
=
x
m
m
z
( 2. 6)

y
m
i
=

m

z
m
( 2. 7)
Fazendo p
x
=x
0
e p

=y
0
as expresses (2.6) e (2.7), passam a:



x
m
i
=
x
m
z
m
+ p
x
( 2. 8)
Modelo pinhole camera 33

y
m
i
=

m
z
m
+ p

( 2. 9)


E ficamos com a origem do nosso referencial num dos cantos da imagem.
Reescrevendo a expresso (2.5) que relaciona P
m
i
e P
m
e apenas em funo dos
parmetros intrnsecos da cmara, em coordenadas homogneas fica-se com:
P
m
i

= K |I | u] P
m

( 2. 10)


Em que o ponto P
m

:
P
m

= j
P
m
1
[ ( 2. 11)

e o ponto P
m
i

a representao de P
m
i
em coordenadas homogneas definido por:
P
m
i

= j
P
m
i
1
[ ( 2. 12)

E que K :

K = _
u p
x
u p

u u 1
_ ( 2. 13)

K definido como a matriz de calibrao da cmara, contendo a distncia focal e o
centro da imagem. [13]
O modelo anterior considera que todo o espao em frente cmara est representado
segundo o referencial da cmara com origem em C, no sendo prtico estar
constantemente a representar o espao envolvente no referencial da cmara. Para
simplificar adicionado mais um referencial tridimensional X
W
Y
W
Z
W
do nosso mundo
exterior (chamado referencial do mundo) e nele onde o nosso espao de trabalho ficar
representado. As coordenadas 3D do nosso ponto P
m
neste novo referencial do mundo
sero (x
mw
, y
mw
, z
mw
) e definem o vector P
mw
. O referencial da cmara e o referencial
do mundo esto relacionados atravs de uma rotao e de uma translao. Na Figura
2.2.6 poderemos visualizar a relao entre os eixos coordenados. [14]

34 Captulo 2: Viso artificial












Fi gur a 2. 2. 6 Ref er enci al do mundo



A relao entre os pontos nos referenciais da cmara e do mundo expressa por:
P
m
= R(P
mw
-T) ( 2. 14)


e a relao do ponto no plano de imagem com o ponto no mundo em coordenadas
homogneas expressa em:
P
m
i

= KR_
I | -T
u | 1
_ P
mw

( 2. 15)








Modelo pinhole camera 35


Na expresso (2.15) P
mw

defin o por: id
P
mw

= j
P
mw
1
[ ( 2. 16)

A matriz R uma 3 d ign matriz de rotao sendo representada por:

matriz 3x es ada
R = _
r
1
r
2
r
3
r
4
r
5
r
6
r
7
r
8
r
9
_ ( 2. 17)

Nesta matriz esto implcitos os 3 ngulos sobre cada um dos eixos do referencial, e
que so denominados os ngulos de Euler, yaw , pitch , e roll . Estes podem ser
obtidos da matriz de rotao por exemplo atravs das expresses:
= Atan2(r , 1 - r
9
2
)
9
( 2. 18)

= Atan2(r
3
, r
6
) ( 2. 19)
= Atan2(-r
7
, r
8
) ( 2. 20)

De salientar que estas expresses no so nicas, dependendo do sinal do ngulo que
escolhermos para . Mais pormenores podem ser consultados em [26].

O vector T vector de translao representado por
T = _
t
x
t

t
z
_ ( 2. 21)



36 Captulo 2: Viso artificial
Podemos ento definir a matriz de projeco P da cmara:

P = KR|I | -T] ( 2. 22)


A matriz P tem 9 graus de liberdade, 3 para a matriz de calibrao K (elementos
, p py, 3 para R (os ngulos , e ) e 3 para T. x,
K contm os parmetros internos ou intrnsecos da cmara e R e T relaciona a
orientao e posio da cmara com o sistema de coordenadas do mundo. [13]
Reescrevendo a expresso (2.22) de forma a separar os parmetros intrnsecos e
extrnsecos da cmara fica-se com:
P
m
i

= K_
R | -RT
u | 1
_ P
mw

( 2. 23)


O modelo pinhole camera assume que os sistemas de eixos coordenados tm ambos
as mesmas escalas. Nas cmaras actuais com o uso de CCD, a coordenada no plano de
imagem costuma ser dado em pixis. Com a possibilidade da no existncia de pixis
completamente quadrados, temos um pequeno problema de factor de escala em cada
direco. Principalmente no nmero de pixis por unidade de distncia. [13]
Para continuarmos a usar o modelo pinhole camera, usando cmaras com CCD,
apenas necessrio efectuar a converso de pixis para unidades de distncia.
Ento, K vir definido como:
K = _
o
x
u x
u o

y
u u 1
_ ( 2. 24)

Em que o
x
= m
x
e o

= m

representam a distncia focal da cmara em


termos das dimenses dos pixis nas direces dos eixos do referencial X
1
Y
1
.
Analogamente x
0
e y
0
, o ponto principal em termos de pixis, x = m
x
p
x
, y =
m

p

. Com a adio destas duas novas variveis m


x
e m

a matriz de projeco passa


a ter 11 graus de liberdade.
de nosso interesse atravs de uma imagem adquirida, conseguir retirar toda a
informao referente ao ponto P
mw
no mundo; Para o efectuar necessitamos de
parmetros adicionais sobre o nosso sistema de viso que precisam de ser especificados
e calibrados. [15]


Modelo pinhole camera 37

Ao procedimento de determinao destes parmetros d-se o nome de calibrao do
sistema de viso. Alguns algoritmos sero analisados mais adiante.
A matriz de projeco P pode ser definida:
P = K|R | -RT] = KR|I | -T] ( 2. 25)


Podemos concluir que para recorrer viso artificial necessrio conhecer priori
alguns parmetros sobre o sistema. Em caso de no estarmos na posse destes parmetros
ento necessrio determin-los. No captulo 3.5 sero abordados alguns algoritmos
para obteno dos parmetros intrnsecos e extrnsecos das cmaras, calibrao do
sistema de viso.
Considerando as distores introduzidas pelas lentes vamos introduzir um novo
ponto de coordenadas (x
md
, y
md
), que so as coordenadas do ponto P
i
m
- (x
m
i
, y
m
i
), no
plano de imagem devido s distores da lente. Mais tarde este efeito de distoro ser
abordado, ficando desde j definido.




38 Captulo 2: Viso artificial




Capt ul o 3

Vi so Est ereoscpi ca
3. 1 Int roduo
Devido evoluo das tecnologias de udio, quando ouvimos falar em streo
comum associarmos ao som. Colunas de som independentes fazem chegar aos nossos
ouvidos sons ligeiramente diferentes. Estes sons recebidos so processados por ns no
crebro, dando a sensao de imerso ao ambiente de onde se originaram os sons.
Sendo banal hoje em dia, em qualquer home cinema comprado para casa. Atravs deste
sistema consegue-se transmitir ao espectador estar presente no meio da aco que se
desenrola no plano de projeco do filme.
Esta tecnologia de som streo pode ser estendida ao visual [Lipton 1982]. Os
animais, em especficos os seres humanos, so dotados de dois olhos que visualizam o
mundo de diferentes pontos de vista, pois esto separados por uma distncia. Podemos
comprovar isto atravs de uma pequena experincia, alinhar o polegar de uma das mos
com um qualquer objecto (no caso da figura em baixo com uma bandeira) e o seu nariz.
Se focar a sua viso para o dedo, com os dois olhos abertos, ver o objecto a duplicar,
um para cada olho (feche um olho e abra o outro e em seguida inverta). [StereoGraphics
1997]. Ao focarmos, a bandeira e se mantiver o polegar na linha de viso, ir ter a viso
de dois polegares. A Figura 3.1.1 e Figura 3.1.2 exemplificam os resultados das
experincias.
Fi gur a 3. 1. 1 Focando o pol egar , obt emos a vi so de duas bandei r as.
Ret i r ado de [15].

39

40 Captulo 3: Viso estereoscpica
Fi gur a 3. 1. 2 Focando a Bandei r a obt m- se a vi so de doi s
pol egar es. Ret i r ado de [15].

Estas diferenas entre imagens geradas pelo olho direito e pelo olho esquerdo
so processadas pelo crebro dando-nos uma noo e percepo de profundidade
5
.
Em computao grfica, normalmente so geradas imagens mono (isto , a partir de
uma nica cmara virtual) e estas imagens so visualizadas por um monitor ou
projectadas em um plano. A estereoscopia visual, ao contrrio, feita a partir da
gerao de duas imagens a partir das localizaes das cmaras virtuais separadas de
uma determinada distncia. [15]
3. 2 Al gumas noes
Numa foto tirada por uma simples cmara existem alguns efeitos que nos permitem
retirar algumas caractersticas/informaes tridimensionais da cena apresentada na
imagem. A estes efeitos d-se o nome de efeitos passivos. [15]
Perspectiva: que certos objectos possam parecer maiores ou menores, ou
estarem mais ao fundo ou mais frente, temos que ter ideia que por mais que
essa imagem possa parecer 3D ela uma imagem planar.
Na perspectiva, objectos de mesmo tamanho devem aparecer maiores na foto
quando mais estiverem prximos da cmara [15]. Olhando para Figura 3.2.1 parece-nos
que a linha mais ao centro maior, mas na realidade as duas tm o mesmo tamanho mas
pelo efeito de perspectiva gerado a partir de outras linhas (definindo um ponto de fuga),
conclumos que o trao mais ao centro da imagem maior que o trao mais afastado do
centro da imagem.


5
consultar anexoA


Algumas noes 41



Ocluso: a ocluso responsvel em esconder objectos em partes ou por inteiro.
Assim conseguimos ter uma noo de distncia dos objectos cmara. Na figura
em baixo podemos ver que na imagem da esquerda a esfera no mundo est
atrs do cubo e na imagem da direita est frente do cubo.
Fi gur a 3. 2. 1 Ef ei t o de Per spect i va

Fi gur a 3. 2. 2: Ef ei t o de Ocl uso. Ret i r ado de [15]

Sombra: Numa dada imagem resultante de uma projeco 3D para 2D -nos
difcil ver se um dado objecto est colado a um plano de apoio. Isto porque o
inverso dessa projeco, dado um ponto na imagem, uma recta no espao 3D,
isto , diversos pontos na cena 3D alinhados com a cmara projectam-se em um
mesmo ponto. [15]

42 Captulo 3: Viso estereoscpica
Fi gur a 3. 2. 3 Ef ei t o de Sombr a. Ret i r ado de [15].
A sombra auxilia a visualizar se um objecto est colado no plano de apoio, mas em
algumas situaes atravs dela no conseguimos ter 100% de certeza. Por exemplo, na
Figura 3.2.3 podemos observar que a esfera est a uma certa distncia do plano, pois
conseguimos visualizar a toda a sombra por baixo da esfera gerada por ela, no entanto
no caso do cubo temos a sensao de ele estar apoiado no plano de apoio, mas atravs
de uma imagem projectada no nos possvel confirmar tal facto. [15]
Mais alguns efeitos passivos podem ser encontrados, gradiente de textura, efeito de
iluminao, etc.
No sistema de viso humano uma consequncia imediata da diferena das imagens
capturadas pelos dois olhos o espaamento entre o mesmo ponto projectado nas duas
retinas, chamado de disparidade binocular
6
.
Num sistema de viso binocular artificial, o qual usa duas fontes de captura de
imagem para aquisio tridimensional do espao envolvente, as suas relaes
geomtricas so baseados no modelo pinhole camera e na geometria epipolar descrita
na seco 3.4.
3. 3 Model o pi nhol e camer a e o si st ema est ereoscpi co
A partir do modelo descrito no captulo anterior conseguimos perceber como
efectuar o mapeamento 3D para 2D. Se juntarmos ao nosso sistema mais uma cmara
localizada de uma posio diferente que a primeira, mas capturando no mesmo instante
o mesmo cenrio que a primeira, conseguimos atravs de triangulao obter informao
3D atravs de duas imagens 2D. Este conceito do uso de duas fontes de viso para
captura de informao envolvente denominado de viso estereoscpica. um sistema
anlogo viso humana, tendo dois pontos de vista da mesma cena atravs dos olhos e
ter a percepo de profundidade.
Para certas tarefas industriais muito importante ter a noo tridimensional do
cenrio envolvente o que faz, o uso de um sistema estereoscpico um sistema mais
robusto na recolha da informao pretendida. A Figura 3.3.1retrata um sistema de viso
estereoscpica.


6
consultar Anexo A


Modelo pinhole camera e o sistema estereoscpico 43


Podemos facilmente concluir que o uso de um sistema destes vantajoso e
interessante.
Chama-se a ateno que, todos os conceitos explicados no captulo anterior so
usados no sistema de viso estereoscpica. Comeamos por adicionar mais uma cmara
ao nosso sistema e fazer o mesmo raciocnio efectuado.

Fi gur a 3. 3. 1 Si st ema de vi so est er eoscpi ca

Tendo a cmara 1 (que daqui em diante definida como a cmara que se encontra
do lado esquerdo no caso de nos posicionarmos por trs do sistema de viso
estereoscpico) que contm um referencial X
1
Y
1
Z
1
com origem em C
1
, e que contm
um eixo ptico perpendicular ao seu plano de imagem com a referncia X
1
Y
1
.
Definindo para uma segunda cmara, um referencial X
2
Y
2
Z
2
centrado em C
2
, um centro
ptico perpendicular ao seu plano de imagem com um referencial de coordenadas X
2
Y
2
.
As relaes calculadas no captulo anterior,
x
m
i
=
x
m
z
m
( 3. 1)

y
m
i
=

m
z
m
( 3. 2)



44 Captulo 3: Viso estereoscpica

Continuam a ser v ara a segunda cmara: lidas e temos p
x
2m
i
=
2

x
m
z
m
( 3. 3)
y
2m
i
=
2

m
z
m
( 3. 4)

Salienta-se que daqui em diante todas as variveis com o ndice 1 ou 2 associados
referem-se ao sistema da primeira ou da segunda cmara respectivamente. O referencial
3D (x
w
, y
w
, z
w
) e o nosso ponto P
mw
com coordenadas (x
mw
, y
mw
, z
mw
) no mundo, so
as nicas coisas que se mantm constantes na passagem do sistema com uma cmara
para o sistema estereoscpico.
Existe tambm uma matriz de rotao e de translao, devido ao facto da segunda
cmara ter uma rotao e uma translao diferente relativamente ao referencial do
mundo com origem em 0
W
.
_
x
2m
y
2m
z
2m
_ = R
2
_
x
mw
y
mw
z
mw
_ + T
2
( 3. 5)

P
2
= K
2
|R
2
| -R
2
T
2
] ( 3. 6)


Em que P
2
, K
2
, R
2
e T
2
so as matrizes de projeco, calibrao e rotao
respectivamente e o vector de translao da cmara nmero 2.
No captulo 3.5 so apresentados dois algoritmos para o clculo dos parmetros
intrnsecos e extrnsecos de cada uma das cmaras pertencentes ao sistema
estereoscpico.



Geometria epipolar 45


3. 4 Geomet ri a epi pol ar
Geometria epipolar a geometria projectiva intrnseca que existe entre duas vistas.
Ela independente da estrutura da cena e apenas dependente dos parmetros internos
das cmaras e da posio relativa destas. Esta geometria intrnseca est encapsulada
numa matriz, denominada matriz F. A matriz F uma matriz de dimenso 3x3 e se um
ponto P
m
no espao 3D visto na primeira vista do sistema estereoscpico, sendo a sua
projeco no plano de imagem P
1m
i
, na segunda vista P
m
visto como P
2m
i
ento estes
pontos nos dois planos de imagem satisfazem a relao [13]:

P
2m
iT
FP
1m
i
= u ( 3. 7)

A Figura 3.4.1 representa o modelo de um sistema estereoscpico e a sua
terminologia segue descrita em seguida.
Fi gur a 3. 4. 1 Model o de um si st ema est er eoscpi co


Os pontos e
1
e e
2
so denominados epipolos das imagens 1 e 2 respectivamente.
Estes dois pontos so formados pela linha que une os dois centros das cmaras C
1
, C
2
e
esta denomina-se a baseline do sistema.
Na Figura 3.4.1 est tambm representado o plano epipolar, que definido pelas
linhas de projeco do ponto P
m
no mundo ao centro de cada cmara juntamente com a
baseline. A intercepo do plano epipolar com as imagens do plano gera em cada um
destes uma linha, denominada de linha epipolar.
Atravs destes conceitos observa-se que, se o ponto P
m
mover sobre o raio de
projeco definido para a cmara 1 (equivalente a mover-se para a posio 1 ou 2 na

46 Captulo 3: Viso estereoscpica
Figura 3.4.1), ento a projeco deste ponto na imagem do plano da cmara 2, move-se
sobre a linha epipolar l
2
. Este conceito muito importante para a realizao de match de
pontos de duas imagens, conhecendo um ponto P
1m
i
na primeira vista, na segunda vista
no necessitamos de procurar em toda a imagem pelo correspondente par de P
1m
i
, mas
sim apenas sobre a linha epipolar l
2
. Esta definio vlida inversamente, ou seja,
conhecido um ponto P
2m
i
na segunda vista, o seu par na primeira vista est restrito
linha epipolar l
1
.
Se j tivermos acesso a F e conhecendo um ponto P
m
no plano de imagem da cmara
1, ento o seu par encontra-se restringido linha epipolar

l
2.
Em que l
2
obtido a partir
de:
l
2
= FP
1m
i
( 3. 8)



Se pretendermos o inverso apenas temos que transpor a matriz F, representado em
(3.9)
l
1
= F
T
P
2m
i
( 3. 9)


Se no conhecemos a matriz F, necessrio determin-la, existindo alguns
caminhos para a sua determinao, como por exemplo:
Processos lineares com e sem escalamento;
Processos no lineares;
Atravs do conceito de paralaxe virtual.
Em [16] so explicadas algumas vantagens e desvantagens entre cada um deles,
entre as quais destacam-se que, os critrios no lineares serem melhores que os critrios
lineares, mas ao mesmo tempo mais pesados computacionalmente.
Vamos abordar dois critrios, para o clculo da matriz F, a partir dos parmetros
intrnsecos das cmaras (obtidos pelo algoritmo de Tsai, ver seco 3.5) e atravs do
eight-point algorithm ver seco 3.5.2.
Rimon Elias e Robert Laganire [16] dizem que no caso de os parmetros
intrnsecos de ambas as cmaras j serem conhecidos ento a matriz fundamental a
matriz essencial do sistema. Esta matriz uma precursora da matriz fundamental e
depende de 5 parmetros descrevendo a disparidade binocular entre as duas vistas, em
que os 3 primeiros parmetros so devido rotao 3D e os outros 2 definem a direco
da translao apenas descreve os parmetros extrnsecos da cmara; Enquanto a
matriz F contm os parmetros intrnsecos e extrnsecos.




Geometria epipolar 47


Se temos P
1m
i

e P
2m
i
de um ponto P
m
nas duas imagens ento segundo o modelo
pinhole, tendo a matriz de rotao R e o vector deslocamento T da segunda vista em
relao primeira podemos ento determinar F atravs da matriz E - matriz essencial. R
e T passam a ser chamados parmetros extrnsecos do sistema estereoscpico.
F = K
2
-1
T
x
RK
1
-1
( 3. 10)


Onde T
x
a matriz anti-simtrica definida pelo vector de translao T, K
2
a
matriz de calibrao da cmara 2, R a matriz de rotao do sistema estereoscpico e K
1

a matriz de calibrao da cmara 1.

A matriz essencial E pode ser escrita como:

E = T
x
R ( 3. 11)

Com a relao (3.11) a expresso (3.7) passa a:
P
2m
i1
EP
1m
= u ( 3. 12)


Ficando as matrizes F e E relacionadas por:
F = K
2
-1
E K
1
-1
( 3. 13)

E = K
2
1
FK
1
( 3. 14)






48 Captulo 3: Viso estereoscpica
3. 5 Cal i brao do si st ema de vi so

3. 5. 1 O al gori t mo de Tsai : versat i l e camera cal i brat i on t echni que
A calibrao de um sistema de viso tenta calcular um largo nmero de parmetros
do sistema de viso. Classicamente so usados processos no lineares para percorrer
todo o cenrio de calibrao. Para evitar estes processos no lineares, muitas vezes
usam-se estratgias de sistemas de equaes lineares, usadas por exemplo no modelo
DLT Direct linear transformation em que possvel que se obtenha um nmero de
variveis superior ao nmero de graus de liberdade. O problema deste algoritmo que
ignora a distoro das lentes assim como a dependncia entre parmetros. [14]
O algoritmo de Tsai usa uma particularidade fsica do sistema de viso, esta
particularidade trata-se do alinhamento radial. Esta particularidade definida em funo
da rotao relativa e translao (excepto na componente Z) entre a cmara e os pontos
de calibrao - ver Figura 3.5.1 e particularidades descritas a seguir:
assumido que a distoro radial, ou seja, em nada afecta na profundidade
do espao envolvente. No importa qual a magnitude da distoro, a direco
do vector O
i
P
d
(vector definido pela origem O
i
e pelo ponto P
d
com as
coordenadas (x
d
,y
d
) na imagem do plano) mantm-se constante e
radialmente alinhado com o vector P
Oz
P, ( formado pela origem P
Oz
- dada
pela coordenada z do ponto P - e pelo ponto P ). A coordenada z destes dois
pontos a mesma - ver Figura 3.5.1.
A distncia focal f no influencia a direco do vector O
i
P
d .

O ponto no mundo transladado e rodado em X, Y logo O
i
P
d
ser sempre
paralelo a P
Oz
P para todos os pontos. A componente Z de translao no
altera a direco de O
i
P
d
. [14]

Fi gur a 3. 5. 1 Par t i cul ar i dades assumi das no al gor i t mo de Tsai .
Ret i r ada de [14]











Calibrao do sistema de viso 49


Para a calibrao foi usado um conjunto de pontos complanares com a cmara a
calibrar ver Figura 3.5.2.

Fi gur a 3. 5. 2 Set up Cal i br ao Tsai








Esta calibrao feita atravs de um conjunto de pontos em que as suas posies no
mundo (x
w
, y
w
, z
w
) so conhecidas bolas rosa na Figura 3.5.2. - e as coordenadas
(x
m
i
, y
m
i
) medidas no plano de imagem pontos formados pela intercepo das linhas
vermelhas da Figura 3.5.2, com o plano de imagem da cmara a calibrar.
O conjunto de pontos no mundo e que a sua posio conhecida (pontos de
calibrao) esto assentes num plano (chamado plano de calibrao) plano axadrezado
na Figura 3.5.2.
Depois de calculadas as coordenadas no plano de imagem dos pontos do mundo
conhecidos, todo o algoritmo se desenrola usando as relaes anteriormente descritas.
Atravs delas possvel calcular os parmetros intrnsecos e extrnsecos apresentados a
seguir.
Os parmetros extrnsecos que pretendemos calcular so a transformao do sistema
de coordenadas 3D do mundo para o sistema de coordenadas 3D da cmara centrado no
centro ptico. Existem 6 parmetros extrnsecos, 3 deles so os ngulos de Euler, yaw ,
pitch , e roll para a rotao e os trs componentes de translao do vector T.


50 Captulo 3: Viso estereoscpica
A matriz de rotao pode ser expressa como:
R = _
cos cos 0 sincos 0 -sin0
-sincos +cos sin0 cos cos cos +sinsin0 sin cos 0 sin
sinsin +cos sin0 cos -cos sin +sinsin0 cos cos 0 cos
_ ( 3. 15)


E que pode ser escrita numa forma mais compacta:
R = _
r
1
r
2
r
3
r
4
r
5
r
6
r
7
r
8
r
9
_ ( 3. 16)

O vector T de transla o por: o definid
T = _
t
x
t

t
z
_ ( 3. 17)

Atravs deste algoritmo possvel tambm calcular os parmetros intrnsecos j
referidos anteriormente no captulo 2 e que se passam a citar:
is ia focal efectiva. f d tnc
Coeficie
(C
x
, C

) Clculo da posio da origem na imagem do plano.


nte de distoro da lente.

Foi implementado o algoritmo descrito em [14] e pode ser consultado para mais
pormenor. Nele descrito o processo para o clculo do verdadeiro centro da
imagem(C
x
, C

) neste trabalho no foi efectuado este procedimento e foi assumido que


o centro da imagem o centro geomtrico da imagem. No nosso caso as imagens
adquiridas tm as dimenses (64u x 48u) o centro da imagem ser (S2u x 24u).
No documento original apresentado um plano de calibrao em que consiste numa
sequncia de quadrados com o mesmo tamanho e todos espaados da mesma distncia.
No processamento de imagem so retiradas as coordenadas dos 4 cantos de cada
quadrado e introduzidos no algoritmo. Para testar o algoritmo de deteco de clusters
usado na deteco dos marcadores da ferramenta e para contornar a impreciso do
clculo dos cantos dos quadrados, foi criado um plano de calibrao diferente do
referenciado no documento [14]. Ao invs do uso de quadrados como pontos de
calibrao foram usados crculos. O plano de calibrao criado est na Figura 3.5.3


Calibrao do sistema de viso 51

As coordenadas para o ponto (x

, y

) que precisamos para o processo de calibrao,


so as coordenadas do centro de cada crculo detectado.
Foram criados 2 planos de calibrao mas com folhas de diferentes tamanhos -
tamanhos A4,A3 e A2. Um dos planos continha 88 e outro com 368 pontos de
calibrao.
Fi gur a 3. 5. 3 Pl ano de cal i br ao de 88 pont os.

Este algoritmo serve para a calibrao das cmaras individualmente, no caso de um
sistema estereoscpico para o clculo da matriz F, apenas temos que calcular a rotao
da segunda cmara em relao primeira e usar as expresses (3.10) a (3.14) para o
clculo de F.
Conhecidas as rotaes de cada cmara ao plano de calibrao, para obter a rotao
e translao do sistema, ou seja a rotao e translao da cmara 2 em relao cmara
1, colocando esta ltima como origem do sistema:
R = R
2
R
1
1
( 3. 18)

Para obter a translao da cmara 2 em relao cmara 1:
T = T
1
- R
1
T
2
( 3. 19)


So obtidos assim os parmetros extrnsecos do sistema estereoscpico que so
necessrios para o clculo da matriz F.


52 Captulo 3: Viso estereoscpica

3. 5. 2 Ei ght -poi nt al gori t hm
O algoritmo de 8 pontos um algoritmo linear para a estimao da matriz essencial
ou da matriz fundamental de um sistema estereoscpico dependente de um factor de
escala. Foi introduzido por Christopher Longuet-Higgins em 1981para o clculo da
matriz essencial. Richard I. Hartley (1997) [17] descreve de como este mesmo
algoritmo pode ser usado para o clculo da matriz fundamental, do seu trabalho [17]
resultou o algoritmo de oito pontos normalizado. O algoritmo aqui descrito est
rigorosamente com a mesma notao que no artigo original [16], para no haver
confuses.
Neste algoritmo tambm necessria a identificao entre pares de pontos nos dois
planos de imagem. Usando-se a relao entre os dois planos e a matriz fundamental j
descrita atrs:

P
2m
i1
FP
1m
i
= u ( 3. 20)

Determina-se F, em que o resultado obtido depende de um factor de escala, do
resultado verdadeiro para um determinado setup do sistema estereoscpico.

Sabemos que F uma matriz de dimenso 3x3, podemos escrever os nove elementos
da matriz F num vecto v os m e tor r em que am cha ar d vec F:
F = |
11

12

13

21

22

23

31

32

33
]
1
( 3. 21)


a expresso (3.7) pode ser reescrita como:
|x
2m
i
x
m
i
y
2m
i
x
m
i
x
m
i
x
2m
i
y
m
i
y
2m
i
y
m
i
y
m
i
x
2m
i
y
2m
i
1]F = u
( 3. 22)


Onde P
2m
i
= |x
2m
i
y
2m
i
1]
1
e P
1m
i
= |x
m
i
y
m
i
1]
1


Se tivermos mais que 8 correspondncias obtemos um sistema sobredimensionado e
vivel o uso do mtodo dos mnimos quadrados para resolver:



Calibrao do sistema de viso 53

min
F
= (P
2m
iT
F P
m
i
)
2

( 3. 23)

Considerando n pares de correspondncias, ento pode ser escrito como:
min
I
= [NF[
2
( 3. 24)
Onde N uma matriz de n x 9 elementos.
A equao (3.7) pode ser escrita como
NF = u ( 3. 25)
e refere que a soluo pode ser encontrada usando a decomposio em valores
singulares Singular value decomposition (SVD) - de N
1
N que corresponde ao vector
prprio mais pequeno da matriz U, que corresponde ltima coluna de U.
Atravs deste algoritmo, o processo de calibrao rpido e fcil. Para gerar os
pares de pontos necessrios, movia-se aleatoriamente um marcador no campo de viso
da cmara. Durante esta amostragem o sistema retira as posies dos pontos e faz a sua
identificao como pares, aps esta amostra os pares obtidos so usados no algoritmo
para o clculo de F. Este algoritmo sofre do problema de reconstruo mtrica. Como
mencionado anteriormente o clculo de F obtido e depende de um factor de escala,
sendo necessrio afinar os valores de F para se obter uma reconstruo 3D correcta.
Foram analisadas algumas maneiras de tentar efectuar este passo automaticamente,
inserindo no sistema 3 medidas conhecidas e usando mais leds na calibrao. Devido ao
tempo disponvel no foi possvel finalizar este processo.



54 Captulo 3: Viso estereoscpica
3. 6 Reconst ruo 3D
Depois de encontrados os pares de pontos nas duas imagens, de nosso interesse
efectuar a reconstruo tridimensional do ponto.
Para esta tarefa mais uma vez existem diferentes caminhos que se podem tomar para
efectuar a reconstruo tridimensional a partir das matrizes de projeco. Na lista
seguinte so apresentadas algumas delas: minimizao da distncia, intercepo dos
raios das cmaras, triangulao atravs dos raios das cmaras que podem no se
interceptar e usando decomposio de valores singulares.
Idealmente atravs de triangulao dos raios das cmaras, era possvel obter a
posio tridimensional do ponto P
m
(ver Figura 3.6.1), mas devido a rudo raramente
ocorre a intercepo das rectas de projeco.
Fi gur a 3. 6. 1 Tr i angul ao i deal


No trabalho foi implementado o critrio de triangulao que prev que as rectas de
projeco podem no se interceptar na realidade, retirando o ponto mdio da
perpendicular entre os dois raios, ver Figura 3.6.2.
A triangulao a intercepo das rectas de projeco que saem dos centros das
cmaras passando nos respectivos planos de imagem e no ponto comum a eles, ponto no
mundo, as rectas intersectam-se. [18]




Reconstruo 3D 55

Fi gur a 3. 6. 2 Tr i angul ao sem i nt er cepo dos r ai os








Rimon Elias and Robert Laganire [16] afirmam que a equao da linha de
projeco da primeira vista pode ser representada por:
i
I
= oP
1m
i
( 3. 26)


Onde a um valor escalar. A linha de projeco da segunda vista, lado direito,
referido ao plano de imagem esquerdo pode ser expresso como:
i
r
= bR
1
P
2m
i
+ T ( 3. 27)


Onde b um valor escalar.
De salientar que conhecidos a e b as expresses anteriores no caso de triangulao
ideal, dariam o mesmo ponto. Como estamos a considerar que a triangulao no ideal
ento obtemos dois pontos p
1
p
2
ver Figura 3.6.2. e -
O vector perpendicular a i
I
a i
r
:
p = P
1m
i
x R
1
P
2m
i
( 3. 28)


A linha s paralela a p e passando em oP
1m
i
:
s = oP
1m
i
+cp ( 3. 29)


56 Captulo 3: Viso estereoscpica



Onde c um escalar, ento a linha da esquerda mais o valor da linha perpendicular a
r
I
obtemos o outro extremo da linha do lado direito. Logo os pontos finais do segmento
de recta s podem ser obtidos resolvendo:

oP
1m
i
+ c(P
1m
i
x R
1
P
2m
i
) = bR
1
P
2m
i
+T ( 3. 30)

Obtemos assim o ponto mdio do erro entre os raios projectados. Uma boa medida
do desvio que os raios esto a sofrer entre um e outro analisar o escalar c - quanto
mais prximo de zero for menos erro entre as rectas existe.
Voltando ao caso em que a, b e c so conhecidos, na representao passamos a ter os
pontos p
1
, p
2
j referido anteriormente. Como estamos a considerar que o ponto P
m
est
a metade da distncia entre p
1
e p
2
esta distncia c/2.


Capt ul o 4

Hardware
Neste captulo descrito todo o hardware usado para a elaborao do trabalho
apenas ser apresentado as caractersticas mais relevantes. Para obter mais informaes
podem ser adquiridas atravs das folhas de caractersticas de cada componente.
4. 1 Si st ema est ereoscpi co
Sistema de viso, composto por duas cmaras com lentes iguais. As lentes usadas
so de distncia focal de 6 mm, e as cmaras fazem capturas de imagens com resoluo
de (64u x 48u) pixis e em modo automtico a frequncia mxima de captura est entre
os 30-40ms. A comunicao destas cmaras efectuada via USB e permitem o que o
disparo do obturador funcione em modo manual ou em modo automtico. Este
funcionamento configurado por software e em modo de funcionamento manual
necessrio fornecer o sinal de disparo do obturador na entrada de trigger que possui.
Esta caracterstica das cmaras importante para o nosso trabalho - imperativo que as
imagens capturadas pelo nosso sistema estereoscpico sejam do mesmo instante. Assim
sendo apenas se usa o modo manual de disparo e frequncia de 10 Hz. As Figura 4.1.1
e Figura 4.1.2 mostram uma cmara do sistema estereoscpico.


Fi gur a 4. 1. 1 Cmar a do si st ema est er eoscpi co







57

58 Captulo 4: Hardware








As cmaras foram assentes num trip e colocadas numa barra de suporte, separadas
de uma distncia de 78 cm. A Figura 4.1.3 ilustra a disposio das cmaras, ficando o
sistema estereoscpico assim definido.
Fi gur a 4. 1. 2 Ent r adas USB e Tr i gger das cmar as usadas
Fi gur a 4. 1. 3 Si st ema est er eoscpi co mont ado















Marcadores Luminosos 59

4. 2 Marcadores Lumi nosos

Para obter a posio e rotao da ferramenta nela ser acoplada um conjunto de leds
de iluminao de alta potncia, que daqui em diante sero referidos como marcadores
ou marcadores luminosos.
Para os testes foi criado um suporte modular em forma de cruz (Figura 4.2.1) que
permitisse facilmente, quando pretendido, alterar a posio dos marcadores.
Para a deteco da posio da ferramenta apenas necessrio um marcador, mas
para retirar a rotao e orientao dela, necessrio ter a ideia do plano em que ela est
assente. Para se conseguir definir este plano so precisos no mnimo 3 marcadores,
tendo-se optado o uso de quatro marcadores para aumentar a preciso e robustez do
sistema. Desta forma, se mais tarde se concluir que vantajoso introduzir mais
marcadores, as funes implementadas j esto preparadas para processar um maior
nmero de marcadores.







Fi gur a 4. 2. 1 Supor t e const r udo par a col ocar os mar cador es

Para se detectar o sincronismo entre a aquisio de imagens por parte do sistema
estereoscpico, os nossos marcadores no fornecem uma emisso contnua de luz,
estando apenas a emitir num curto espao de tempo para que possa ser capturado pelo
sistema estereoscpico. Desta forma possvel fornecer uma potncia muito mais
elevada durante um curto espao de tempo, o que facilita a deteco destes nas imagens.
Permite tambm diminuir/anular o incmodo provocado pela intensidade de luz nos
utilizadores do sistema.
O disparo dos leds est sincronizado com o sistema de trigger das cmaras, se o
nosso sistema estiver bem sincronizado, os marcadores luminosos apareceram em
emisso contnua no filme capturado pelas imagens; Caso contrrio, conseguimos
visualizar um piscar de marcadores como na realidade se verifica a olho nu.


60 Captulo 4: Hardware

A Figura 4.2.2 mostra a disposio dos marcadores na ferramenta real de trabalho -
notar que os marcadores no tm que ter a disposio em cruz, apresentada no modelo
montado em cima.

Fi gur a 4. 2. 2 Di sposi o dos mar cador es l umi nosos na f er r ament a








4. 3 Si st ema de Si ncroni zao
Para o sistema de sincronizao, disparo de trigger e de marcadores foi usada uma
placa genrica que contm um microprocessador Atmega164P. O micro controlador
atravs de dois mosfets de potncia actua sobre os marcadores e entrada de trigger
durante o tempo previamente predefinido.

Este circuito estava em funcionamento no sistema Sincrovision j construdo
anteriormente, sendo que as suas caractersticas e funcionalidades j estavam bem
testadas.



Fi gur a 4. 3. 1 Pl aca genr i ca At mega164P


Manipulador industrial 61

4. 4 Mani pul ador i ndust ri al
Para um trabalho sobre programao rpida de manipuladores industriais nada
melhor que ter acesso a um manipulador para testes. Assim temos a noo de alguns
problemas reais, sobre comunicaes, limitaes de movimentos, configuraes etc.
A empresa MOTOMAN cedeu gentilmente um manipulador robtico que tem a
capacidade de 20 kg de carga no punho.










Estudou-se o modo de programar e configurar este tipo de manipulador. Como este
tipo de manipuladores tem muita preciso, at centsima de milmetro, foram escritos
pequenos programas para debug do sistema estereoscpico desenvolvido desde
simples movimentos com translao e rotao, como percursos mais elaborados. Na
foto pode-se ver o manipulador em aco com os marcadores.
O manipulador foi usado para verificar se o sistema estereoscpico estava a medir
bem translaes e rotaes dos marcadores bem como para a parte de gerao de
trajectrias. Usado nos testes de fora versus corrente consumida pelo motor da
mquina de polimento e ser utilizado futuramente no processo de polimento
robotizado.


Fi gur a 4. 4. 1 Mani pul ador Mot oman

62 Captulo 4: Hardware

4. 5 Si st ema Pneumt i co
O sistema pneumtico serve para que o manipulador possa segurar as peas a polir
durante esta actividade. O sistema montado composto por um compressor, um
regulador de presso para definir a presso necessria ao funcionamento do gripper e
um bloco de vlvulas pneumticas. As caractersticas do material so apresentadas a
seguir. No gripper foram efectuadas alteraes para que fosse possvel segurar as peas
apresentadas na seco 4.9.









Caractersticas:
Gripper PGN 64 -2 370 150
Peso mximo da pea a trabalhar: 2.5 kg;
Tempo de abertura e de fecho: 0.02 s.

Regulador de presso:
Presso mxima 15 bars.

Bloco de vlvulas:
Tenso de fecho: 12 Volts DC.
Fi gur a 4. 5. 1 Gr i pper usado
Fora aos 6 bars: 420 N;
Vlvula de uma bobine;
Presso mxima: 8 bars;


Sensor de fora 63

4. 6 Sensor de f ora

Na actividade de polimento necessrio ter uma boa estimativa da fora exercida
sobre a pea que estamos a polir. Para se ter uma ideia do valor da fora foi usado um
sensor JR3 analgico de 6 graus de liberdade de forma a procedermos a algumas
experincias. Este sensor j vem preparado para ser acoplado ao punho de um
manipulador industrial e a sua aparncia pode ser visualizada na Figura 4.6.1.O sensor
que dispomos ligado a uma placa PCI e atravs dela podemos obter os valores
medidos pelo JR3. Este sensor tem a capacidade de medir foras e binrios segundo 6
eixos, 3 como mostrados na Figura 4.6.2, mais 3 de toro, ou seja o binrio exercido
sobre cada um dos eixos ilustrados.
A sada do sensor em Newton, sendo que necessrio ajustar escalas para que se
consiga obter este valor correctamente. No foi necessrio este ajuste, pois o sensor j
estava configurado com as escalas correctas.

Fi gur a 4. 6. 1 Sensor de f or a JR3

Surgiu a motivao, em particular para a actividade de polimento, da substituio do
sensor JR3 por um sensor mais barato. Foram efectuados testes de forma a se encontrar
uma relao vlida entre a fora exercida pelo manipulador sobre o disco de polimento
e a corrente consumida pelo motor elctrico que o faz girar. O sistema de monitorizao
de corrente est descrito na seco seguinte.
Ao inicio deparou-se com algumas dificuldades em colocar este sensor a funcionar
na plataforma Linux. Encontrou-se um driver para Linux num local Web de um outro
projecto muito interessante de Mrio Prats [29], mas que no funcionava nas novas
verses de Linux.



64 Captulo 4: Hardware

Fi gur a 4. 6. 2 Repr esent ao de 3 dos 6 gr aus de l i ber dade mensur vei s pel o
JR3. Imagem r et i r ada da f ol ha de car act er st i cas do sensor .

O driver para Linux foi actualizado, nas bibliotecas de que depende para a sua
instalao. Como se sabe o software Open Source est constantemente a ser actualizado,
e por vezes necessrio fazer uma reviso ao software j desenvolvido, principalmente
quando so necessrias bibliotecas de sistema. Ao autor do driver Linux Mrio Prats
[29] foi-lhe comunicado esta alterao tendo sido criado um script que escolhe
automaticamente a biblioteca a ser usada consoante a verso de kernel instalada. Foram
implementados tambm alguns procedimentos de forma a aplicaes desenvolvidas em
Lazarus poderem efectuar a leitura dos valores do sensor de fora - Figura 4.6.3.
Futuramente, procedimentos para a escrita de escalas e escolha de filtros sero
implementadas. No tendo sido usada a plataforma Windows, mesmo assim fica a
referncia onde poder ser encontrado o driver para este sistema operativo - pgina
pessoal de Norberto Pires [30].







Fi gur a 4. 6. 3 Apl i cao JR3


Mquina de Polimento 65

4. 7 Mqui na de Pol i ment o

Para o estudo da relao da fora aplicada sobre as peas a polir versus corrente
consumida pelo motor trifsico, a NS-Mquinas cedeu uma mquina de polimento.
Est mquina constituda por um motor trifsico e um disco de polimento, com a
possibilidade de se poder duplicar as caractersticas anteriores - 2 motores e dois discos,
ver Figura 4.7.1

Fi gur a 4. 7. 1 Mqui na de pol i r








Obteve-se uma ideia do funcionamento do conjunto do sistema manipulador,
sistema pneumtico, mquina de polimento.





66 Captulo 4: Hardware

4. 8 Si st ema de moni t ori zao de Corrent e
Com a motivao apresentada na seco 4.6 era necessrio ter um sistema a
monitorizar a corrente do motor trifsico que faz girar o disco de polimento. Para este
efeito usou-se o analisador de energia Mach Smart da Ducati, que permite a leitura e
monitorizao dos gastos energticos de um motor trifsico (ex: Potncia mdia
consumida, Correntes em cada fase, Tenses em cada fase, tenses compostas, entre
outras).
Este dispositivo tem a possibilidade de se efectuarem leituras dos valores medidos
atravs do protocolo RS-485. Foi desenvolvida uma aplicao modelo de leitura dos
valores medidos pelo analisador de energia da DUCATI -Figura 4.8.2.


Fi gur a 4. 8. 1 Anal i sador de ener gi a Mach Smar t da Ducat i







Com o incio dos testes e logs sincronizados efectuados, foi detectado que o
aparelho de medida Mach Smart apenas coloca disponveis os valores medidos
frequncia de 1 Hz - embora ele internamente trabalhe a uma frequncia de amostragem
de 1800 Hz. Abandonou-se a ideia do uso deste sensor, sendo apenas usado para
confirmar os valores obtidos no circuito apresentado a seguir.

Fi gur a 4. 8. 2 Apl i cao Mach Moni t or










Sistema de monitorizao de Corrente 67

Foi desenvolvido um circuito de leitura da corrente de uma fase do motor trifsico,
que funciona-se frequncia de 1 KHz. Este circuito desenvolvido composto por um
circuito de condicionamento de sinal (em que faz um ajuste de escala e amplifica o sinal
aplicado sua entrada) e um LEM LTS 15 NP (a sua sada em tenso e varia
linearmente com os valores e sentido das correntes medidas que o atravessam) - Figura
4.8.3 e Figura 4.8.4. Para leitura da tenso de sada do LEM foi usada uma placa de
circuito impresso que contm uma montagem genrica de um micro controlador
atmega8. O micro controlador efectua leituras atravs do seu ADC, processa a
informao adquirida e envia os dados por RS-232 para a aplicao desenvolvida para o
efeito.











Fi gur a 4. 8. 3 Ci r cui t o de Condi ci onament o de si nal

Este circuito est a funcionar com uma frequncia de amostragem de 1KHz o que
suficiente para se conseguir a reconstruo da onda a medir - 50Hz.
A sada do nosso sensor esta representada na Figura 4.8.4 e linearmente
dependente com a corrente e direco que o atravessa.













Fi gur a 4. 8. 4 Sada em t enso do LEM

68 Captulo 4: Hardware



-IPmax/ IPmax - Corrente mxima no primrio, neste sensor +/- 45A.
-IPN/IPN Corrente nominal no primrio, neste sensor +/- 15 A.
O conversor analgico digital analog to digital converter ADC - do micro
con
Foram analisados os consumos do motor trifsico atravs do analisador da Mach, as
cor

trolador tem 8 bits e o seu valor de fim de escala usado foi de 5V obtendo uma
resoluo de 19.6 mV.
rentes em vazio, ou seja, sem nenhuma pea no disco de polimento, rondam em
mdia os 4.10 A, em carga estimou-se por observao de resultados obtidos em testes,
que a corrente mxima que o motor poderia consumir, seria 6.5 A. Projectou-se ento
um circuito para leituras at 7.5 A de valor eficaz 10.6 A de valor de pico, valor
medido pelo LEM. A tenso na sada do LEM varia segundo a expresso:
I
out
= 2.S _ u.62S [
I
p
I
PN
Iolts ( 4. 1)

te que est a ser medida no LEM. Podemos notar que para
Corrente de pico Sada do LEM (V) Diferena
visualizada na sada
Em que I
p
a corren
I
p
= u, I
out
= 2.S I. Para os nossos valores de correntes mximos esperados a
tenso vai variar da referncia 2.5V de - Figura 4.8.5.


(A)
- 2.05 10.6 450 mV
- 5.8 2.25 250 mv
5.8 2.74 240 mv
10.6 2.94 440 mv
Fi gur a 4. 8. 5 Val or es Mxi mos e m o ci r cui t o de l ei t u nt e

Note-se que a sada do LEM linear com a intensidade e sentido da corrente, como
est
Ento para uma corrente eficaz de 7.5 A apenas iramos ter na sada do LEM uma
dif
Na Figura 4.8.3 est representado o circuito de condicionamento de sinal.
com
ni mos d r a de cor r e
amos a trabalhar com ondas em AC sinusoidais, iremos obter valores positivos e
negativos.
erena de meio volt, foi ento projectado um circuito amplificador e de ajustamento
de escala.
posto por um amplificador operacional em que na sua entrada negativa temos a
sada em tenso do LEM seguido de uma montagem amplificadora de ganho 5.6, como
se pode deduzir pelas resistncias R
1
e R
2.
Na entrada positiva temos um divisor


Sistema de monitorizao de Corrente 69

resistivo de forma a efectuar um ajustamento do ponto de funcionamento, para assim
obter uma maior resoluo de leitura de corrente.
Atravs deste circuito de condicionamento de sinal obtemos sada 0 V para -10.6
A e
ada a expresso:
5.04V para 10.6A de pico.
Para o clculo do valor eficaz da corrente us

v
eII
= _
1
T
] v
2
(t) dt
T

( 4. 2)

ostrado aproximada por: Sendo o sinal am
v
eII
= _
1
N
v
t
2 N
t=1


( 4. 3)

lo do valor eficaz, o somatrio do quadrado dos valores medidos est a
ser
comparadas com as medidas
efe
mos ver o aspecto da nova aplicao desenhada para a leitura
da

Para o clcu
efectuado pelo prprio micro controlador, sendo este valor enviado a cada 100 ms
via porta srie para a aplicao Sincrovision. O restante clculo efectuado dentro da
aplicao, para ser processado o seu valor correcto.
As medidas efectuadas por este circuito foram
ctuadas pelo Mach, sendo que a diferena de valores obtidos no era muito diferente
e eram fiveis. Conseguimos assim obter valores eficazes da corrente com uma
resoluo de 80 mA de 100 em 100 ms, tempos impostos pela captura do sistema
estereoscpico.
Na Figura 4.8.6 pode
corrente atravs do sensor LEM.




Fi gur a 4. 8. 6 Aspect o da apl i cao de moni t or i zao de cor r ent e

70 Captulo 4: Hardware



4. 9 Peas para pol i ment o
Para a actividade do polimento a empresa NS-Mquinas cedeu um conjunto de peas
de teste para polimento. Com estas peas foram efectuados os logs e testes de
monitorizao de corrente e fora.
Foi enviada uma pea modelo, j polida. Podemos ver na Figura 4.9.1 a pea no
topo da imagem a pea modelo, e a pea no fundo da imagem uma das peas
enviadas antes de entrar na mquina de polimento.

Fi gur a 4. 9. 1 Peas par a pol i ment o








Nesta fase do trabalho no era objectivo, proceder ao polimento das peas, elas
foram usadas para testes e aquisio de medidas.

Capt ul o 5

Si st ema Si ncrovi si on
Neste captulo so descritas as alteraes efectuadas aplicao j existente a
funcionar com o sistema Sincrovision. At aqui apenas era processado e determinado a
posio de um marcador no mundo. Aps este perodo de trabalho, novas
funcionalidades foram adicionadas ao programa, entre as quais:
9 Identificao e determinao da posio e da rotao de 4 marcadores
colocados na ferramenta do operador.
9 Monitorizao/armazenamento de trajectrias efectuadas pela ferramenta.
9 Aquisio dos valores das correntes do motor trifsico da mquina de
polimento, com a opo de efectuar a medida em modo sincronizado com o
sistema de viso ou em modo livre.
9 Aquisio dos valores do sensor de fora, com a opo de efectuar as
medidas em modo sincronizado com o sistema de viso ou em modo livre.
So tambm abordados os passos efectuados para a implementao e testes dos
algoritmos escolhidos.
5. 1 Cal i brao Tsai
Para obter os parmetros intrnsecos e extrnsecos da configurao do sistema
estereoscpico montado, foi efectuada a calibrao do mesmo. Foram utilizados os
algoritmos Tsai e eight point. No entanto, neste ltimo necessrio ajustar a escala da
reconstruo, o que ainda no se conseguiu implementar de forma automtica. O Tsai
o algoritmo mais usado pois permite uma reconstruo 3D mtrica directa, aps a
obteno dos parmetros das cmaras.




71

72 Captulo 5: Sincrovision

Comeamos por definir um referencial tridimensional no plano de calibrao, para
explicar as rotaes efectuadas.








Fi gur a 5. 1. 1 Ei xos de r ot ao

Como j referido na seco 3.5.1, o plano de calibrao no pode estar perpendicular
aos planos de imagem das cmaras. Para um sistema de uma s cmara, com alguma
facilidade que se coloca o plano de calibrao numa posio propcia mesma. Num
sistema estereoscpico, com a configurao escolhida, difcil o posicionamento do
plano de calibrao segundo a rotao sobre o eixo Z - Figura 5.1.1. Por exemplo,
quando se coloca o plano de calibrao no perpendicular para a cmara nmero 1 ver
Figura 5.1.2 a) - na cmara 2 o plano de calibrao fica quase na perpendicular - ver
Figura 5.1.2 b).
Efectuaram-se alguns testes e verificou-se que, a deciso de rotao sobre este eixo
Z no era a mais adequada, devido a terem-se obtido valores incorrectos e no fiveis.

Fi gur a 5. 1. 2 Rot ao segundo ei xo Z- a) vi st a par a a cmar a 1, b) vi st a par a a cmar a 2




Calibrao Tsai 73


Optou-se pela rotao segundo outro eixo, rotao sobre o eixo Y, em que permitia a
variao do ngulo do plano de calibrao, garantindo a no perpendicularidade do
plano s cmaras. A Figura 5.1.3 exemplifica uma parte de uma sequncia de imagens
para calibrao do algoritmo Tsai.


















Fi gur a 5. 1. 3 Comeando a r ef er i r por ci ma - Test e 2, 4 e 6 ef ect uados par a a
cal i br ao Tsai .
Exemplo da sequncia efectuada do processo de calibrao Tsai:
i) Captura das imagens - Figura 5.1.4;
ii) Threshold das imagens - Figura 5.1.5;
iii) Localizao dos pontos de calibrao e extraco das suas posies - Figura
5.1.6;

74 Captulo 5: Sincrovision























Fi gur a 5. 1. 4 Capt ur a dos pl anos Test e 2
Fi gur a 5. 1. 5 Apl i cao de t r eshol d
Fi gur a 5. 1. 6 Local i zao de Pont os de cal i br ao


Calibrao Tsai 75

Alguns resultados medida que se inclinava o plano de calibrao esto
representados na tabela 5.1.1. Podemos visualizar a variao de alguns dos parmetros
intrnsecos e extrnsecos com a posio do plano de calibrao.

5. 1. 1 Al guns Par met r os i nt r nsecos cal cul ados

Parmetros f Tx Ty Tz
Ensaio
1 Cmara
1
0.004875 -0.049413 0.241497

1.030214

Cmara
2
0.005719 -0.284669 0.196879

1.257953

2 Cmara
1
0.005274 -0.052935 0.226462

1.137745

Cmara
2
0.005968 -0.281696 0.180703

1.327709

3 Cmara
1
0.005576 -0.056073 0.223467

1.221038

Cmara
2
0.006008 -0.278884 0.176837

1.351057

4 Cmara
1
0.005935 -0.060027 0.222717

1.322871

Cmara
2
0.006035 -0.275045 0.175178

1.375974

5 Cmara
1
0.00615 -0.063986 0.225072

1.393956

Cmara
2
0.006116 -0.271115 0.176864

1.413817











Os valores desta tabela so os resultados da calibrao da sequncia efectuada e
mostrada na Figura 5.1.3 na figura apenas esto representados trs passos da
sequncia. Nesta sequncia, o plano de calibrao estava a aproximadamente a noventa
graus com a horizontal e foi-se diminuindo o ngulo do plano at o sistema de viso no
ser capaz de detectar os pontos de calibrao. Os valores esto apresentados de forma
decrescente do ngulo do plano de calibrao. Do teste nmero 6 da Figura 5.1.3 no foi
possvel extrair valores fiveis.
Salienta-se que o ngulo do plano de calibrao no foi medido nesta experincia.
Para trabalho futuro, poder-se- calcular o valor ideal deste parmetro para este tipo de
calibrao.
observada na tabela a variao da distncia focal f e os parmetros de translao
de cada cmara ao plano de calibrao. Observa-se um constante aumento da distncia
focal consoante se diminui o ngulo com a horizontal. O valor que melhor se aproxima
do correcto o ensaio nmero 4 e nmero 5, pois so os nicos em que para as duas
cmaras as distncias focais esto perto de 6 mm este o valor esperado, pois so
usadas lentes de 6 mm no sistema de viso. Usaram-se estes dois valores para alguns
ensaios que so apresentados nas seguintes seces.
Pode-se ento concluir que necessrio ter em ateno o processo de calibrao,
para se obter correctamente os parmetros pretendidos.

76 Captulo 5: Sincrovision

5. 2 Test e da Geomet ri a epi pol ar
Aps extraco dos parmetros intrnsecos e extrnsecos do sistema estereoscpico,
foram efectuados grupos de testes para verificao dos valores obtidos. O teste da
geometria epipolar corresponde ao primeiro passo num total de 3, para a verificao da
fiabilidade dos valores calculados. Recorreu-se geometria epipolar para confirmao
dos clculos e dos parmetros intrnsecos calculados no passo anterior.
Atravs da geometria epipolar sabemos que se conhecemos um ponto na primeira
vista, o par correspondente na imagem 2, encontra-se sobre a linha epipolar. A Figura
5.2.1 mostra a linha epipolar obtida, recorrendo ao teste da geometria epipolar.

Fi gur a 5. 2. 1 Li nha epi pol ar cal cul ada at r avs do pont o sel ecci onado na i magem 1


Quando dois pontos esto sobre a mesma linha horizontal na primeira imagem,
existe ambiguidade na determinao do seu par; isto porque existem 2 pontos na
segunda imagem que esto sobre a mesma linha epipolar. Neste caso, utiliza-se outro
critrio para fazer a correcta identificao de pares de pontos. No sistema Sincrovision,
tal facto ocorre quando dois marcadores de cores iguais ficam sobre a mesma linha.
Existem vrias formas de resolver esta ambiguidade. A soluo implementada
calculada com base na distncia de cada um dos pontos linha epipolar aquele que se
encontrar a uma distncia menor da linha o que lhe pertence. Caso ocorra que a
distncia linha epipolar seja a mesma, baseamo-nos na geometria do sistema e faz-se a
correspondncia directa de pontos o ponto mais esquerda/direita na imagem nmero
dois corresponde ao ponto esquerda/direita da imagem nmero 1.


Teste reconstruo 3D 77

5. 3 Test e reconst ruo 3D
Para a segunda validao do algoritmo de calibrao, efectuou-se a reconstruo 3D
dos pontos do plano de calibrao. Na Figura 5.3.1, possvel observar, em plano de
fundo, a imagem captada pelo sistema estereoscpico e, no canto superior direito, a
representao grfica da reconstruo dos pontos do plano de calibrao usados neste
ensaio.
Graficamente podemos ver que a reconstruo 3D est a ser executada, j que os
planos de calibrao mais pequenos aparentam estar perpendiculares entre si, como
estavam na realidade.

Fi gur a 5. 3. 1 Test e r econst r uo 3D









Podemos observar na Figura 5.3.2, na figura da esquerda a reconstruo de um plano
de calibrao. Embora os resultados das calibraes sejam satisfatrias, vemos
graficamente na imagem da direita, aps rotao do plano de calibrao que as lentes
podem introduzir alguns erros, como demonstrado na Figura 5.3.2, denominado efeito
de barril.
Fi gur a 5. 3. 2 Ef ei t o de Bar r i l








78 Captulo 5: Sincrovision

O efeito de barril detectado na reconstruo de linhas rectas, estas deixam de ser
rectas e passam a linhas distorcidas.

Fi gur a 5. 3. 3 Cor r eco do ef ei t o de bar r i l







Para compensar este fenmeno tem que ser aplicado um filtro sobre os pontos
calculados, usando funes prprias para este efeito, foi ento corrigido este efeito.
Pode-se observar na Figura 5.3.3, a reconstruo do mesmo plano, aplicando a
correco do efeito de barril.
5. 4 Posi o e rot ao da f errament a
O plano onde assenta a ferramenta determinado atravs de mnimos quadrados de
forma a se obter a melhor aproximao aos quatro marcadores. A rotao da ferramenta
sobre o eixo do plano ser dada atravs da posio de um dos marcadores, que tem cor
diferente dos restantes trs.
So necessrias, no mnimo, duas cores diferentes. Inicialmente, foram utilizadas as
cores branca e vermelha. Aps alguns testes, concluiu-se que o sistema por vezes
confundia reflexos de luz com o marcador de cor branca. Cada vez que isto acontecia
era necessrio executar nova calibrao de cores ou alterar a abertura dos diafragmas
das cmaras.
Optou-se por substituir a cor branca pela cor amarela, para assim aumentar a
robustez do sistema de modo a no ser afectado pelas repetidas alteraes de
luminosidade no ambiente de trabalho. Aps esta permuta, notou-se uma significativa
melhoria.




Posio e rotao da ferramenta 79

O modelo idealizado para o clculo da posio e rotao da ferramenta feito
atravs dos 4 marcadores luminosos, consoante o seguinte procedimento:
i) Clculo do ponto central, a que chamamos centroid ponto verde na Figura
5.4.1.
ii) Clculo da equao do plano definido pelos 4 marcadores e clculo do seu
vector normal vector n;
iii) Clculo do vector R
M
que vai entre o centroid e o marcador vermelho.
iv) Clculo do vector B, vector normal ao vector n e ao vector R
M
. Fica assim
definido automaticamente nosso terceiro eixo do referencial da ferramenta.
Para ajudar a compreender a geometria do modelo idealizado a Figura 5.4.1 mostra
graficamente o pretendido.









Fi gur a 5. 4. 1 Model o da f er r ament a com mar cador es

Durante o clculo da equao do plano obtido o vector normal a ele, sendo este
vector a componente que necessria para a orientao da ferramenta.
feita uma aproximao por um plano aos quatro marcadores usando o critrio dos
mnimos quadrados. Eberly,David (2008) [19] prope uma aproximao hiper planar de
n pontos, usando uma regresso ortogonal, utilizada tambm neste trabalho, atravs das
posies dos marcadores e calculando a matriz M definida a seguir.

M = _
(x

-o)
2 m
=1
(x

-o) -(y

-b)
m
=1
(x

-o) -(z

-c)
m
=1
(x

-o) -(y

-b)
m
=1
(y

-b)
2 m
=1
(y

-o) -(z

-c)
m
=1
(x

-o) -(z

-c)
m
=1
(y

-o) -(z

-c)
m
=1
(z

-c)
2 m
=1
_


80 Captulo 5: Sincrovision

Em que os valores a, b e c so as coordenadas do centro dos 4 pontos obtida pela
posio mdia das suas posies.
Aps definida esta matriz Eberly,David (2008) [19] comenta que possvel obter o
vector normal, ao plano definido pelos 4 pontos, atravs da decomposio de valores
singulares (SVD) a partir do p M
1
M. roduto A =
O resultado obtido ser A = USV
1
, em que S a matriz diagonal contendo os
valores prprios de M, as colunas de V os vectores prprios, e U uma matriz
ortogonal. Na ltima coluna da matriz U, est o vector normal ao plano, associado ao
menor valor prprio da matriz M.
O vector R
M
calculado a partir das posies do centroid e do marcador vermelho
ver Figura 5.4.1.
O vector B calculado a partir do produto externo entre n e R
M
.
assim criado um referencial com origem no ponto centroid, com o eixo X segundo o
vector n, o eixo Y segundo o vector R
M
e o eixo Z segundo o vector B ver Figura
5.4.2.


Fi gur a 5. 4. 2 Ei xos coor denados















de realar que a face do plano onde assentam os marcadores, a face para a qual a
componente x do vector n positiva - ver Figura 5.4.2. Durante o clculo do vector
normal n, pode acontecer, para o mesmo plano, obter o mesmo vector mas com direco
oposta, coordenada x do vector n, negativa. Este resultado no faz sentido, pois significa
que a ferramenta teria rodado 180 sobre o eixo Y, e se isto acontecesse na realidade os
marcadores no estavam visveis no sistema de viso artificial. Constatando-se tal facto,
se durante os clculos obtemos o vector da face oposta do nosso plano (componente x
do vector n negativa) ento invertemos a direco deste vector corresponde a
multiplicar o vector n pela constante -1.
Ficando assim definidos os eixos coordenados do manipulador ver Figura 5.4.3.



Posio e rotao da ferramenta 81




Fi gur a 5. 4. 3 Ei xos coor denados Mani pul ador















Aps determinao do eixo de coordenadas da ferramenta, possvel determinar a sua
rotao.
Usando os vectores calculados anteriormente retira-se a rotao sobre cada um dos
eixos do referencial XYZ.
Definindo os seguintes vectores:
R
M
= _
r
m
x
r
m

r
m
z
_ ( 5. 1)


B = _
b
x
b

b
z
_ ( 5. 2)


n = _
n
x
n

n
z
_ ( 5. 3)




82 Captulo 5: Sincrovision


As rotaes segundos os eixos X,Y e Z so R
x
, R
y
, R
z
respectivamente podem ser
calculadas atravs das seguintes expresses:
R
x
= -Atan2(b

, b ) - 18u ( 5. 4)
z
R
y
= -Atan2(n , n ) - 18u ( 5. 5)
z x
R
z
= Atan2(n

, n
x
) - 18u ( 5. 6)


Atravs das expresses em cima so obtidas os valores dos ngulos em graus das
rotaes, sobre os respectivos eixos coordenados. Nas expresses (5.4) e (5.5)
observam-se dois sinais negativos, em que para o clculo dos ngulos por estas
expresses so necessrios, para se obter o resultado correcto conforme os ngulos do
manipulador.
5. 5 Val i dao de resul t ados
Este o terceiro passo para a validao do sistema de calibrao. Devido grande
preciso que este manipulador industrial oferece, decidiu-se fixar a cruz com os
marcadores no manipulador para validao de todas as funes e modelos definidos.
O manipulador passou a mover-se com a cruz, de forma a existir uma forma fcil de
efectuar rotaes e translaes com grande preciso dentro de uma rea de trabalho
apresentada na Tabela 5.5.1. Na Tabela 5.5.1 esto tambm representadas configuraes
de setup do sistema Sincrovision.
Em complemento, recorreu-se aplicao ComMotoman que permite enviar alguns
comandos via TCP para o manipulador, posicionando o manipulador nas posies
desejadas. Em cada uma delas retiraram-se as medidas pretendidas atravs da aplicao
Sincrovision. Alguns resultados so apresentados na tabela Tabela 5.5.2.

Tabel a 5. 5. 1 Pr opr i edades do set up
Propriedades do setup
Valores
Distncia entre cmaras (mm) 780
ngulo entre cmaras () 46.4
Distncia dos marcadores s cmaras (mm)
(No ponto origem e sem nenhuma rotao)
1900
Distncia entre marcadores (mm) 200
rea de trabalho em X (mm) 700
rea de trabalho em Y (mm) 500
rea de trabalho em Z (mm) 400



Validao de resultados 83


Tabel a 5. 5. 2 Medi das ef ect uadas pel o Si ncr ovi si on
Ponto Sincrovision X
(mm)
Y
(mm)
Z
(mm)
Rx
()
RY
()
RZ
()
Ponto Motoman
(x,y,z,Rx,Ry,Rz)
1
(0,0,0,0,0,0)
0.712 0.167 0.025 -0.324 2.00 1.155
2
(0,0,0,0,30,0)
-2.678 0.109 -6.227 -0.051 31.801 -0.581
2
(0,0,0,30,-30,0)
-2.801 1.246 7.834 30.497 -29.188 -0.636
3
(200,0,0,30,0,0)
191.062 -9.04 -5.401 29.722 1.446 -0.327
4
(-300,300,300,0,0,0)
-285.383 315.127 308.406 -0.141 2.579 0.014


Tabel a 5. 5. 3 Er r os mxi mos posi o e r ot ao
Ponto Motoman
(x,y,z,Rx,Ry,Rz)
Erro Mximo
obtido Posio
(mm)
Eixo
maior erro
na posio
Erro Mximo
Obtido Rotao
()
Eixo
maior erro
na rotao
1
(0,0,0,0,0,0)
0.721

Em X 2 Em Y
2
(0,0,0,0,30,0)
6.222

Em Z 1.8 Em Y
3
(0,0,0,30,-30,0)
7.834

Em Z 0.812

Em Y
4
(200,0,0,30,0,0)
9.04

Em Y 1.446

Em Y
5
(-300,300,300,0,0,0)
14.617

Em X 2.579

Em Y

Na Tabela 5.5.3 esto alguns dos valores dos erros mximos cometidos pelo
Sincrovision nas medidas efectuadas nos pontos presentes na Tabela 5.5.2. Estas tabelas
apenas servem para dar uma ideia da preciso do sistema desenvolvido.
Nota-se um pequeno erro na rotao sobre o eixo Y, ainda no se conseguiu
determinar a origem para este erro, mas com mais testes ser possvel perceber de onde
surge este erro. Mas provavelmente, provm da fixao da cruz ao manipulador.

Tabel a 5. 5. 4 Er r os ( %) em f uno da r ea t ot al de t r abal ho
Ponto Motoman
(x,y,z,Rx,Ry,Rz)
Erro em X
(%)
Erro em Y
(%)
Erro em Z
(%)
1
(0,0,0,0,0,0)
0.102 0.0334 0.006
2
(0,0,0,0,30,0)
0.38 0.0218 1.56
2
(0,0,0,30,-30,0)
0.4 0.25 1.96
3
(200,0,0,30,0,0)
1.28 1.8 1.35
4
(-300,300,300,0,0,0)
2.088 3.02 2.10

84 Captulo 5: Sincrovision


A avaliao exaustiva da preciso do sistema deixada para trabalho futuro. Pelas
medidas das tabelas em cima, conclui-se que para actividades que no necessitem de
muita preciso este o sistema suficiente so obtidos erros mximos de 3 % ver
Tabela 5.5.4.
Durante a operao, visualiza-se que medida que se os marcadores se afastam do
sistema de viso, deslocamento no sentido negativo do eixo X, o rudo nas medidas
aumenta. Este efeito constata-se devido maior dificuldade de deteco dos marcadores
medida que estes se afastam do sistema de viso.
Outra ideia que surgiu, para a validao de resultados, consistiu em fazer com que o
manipulador percorresse um trajecto bem definido/conhecido, e colocar o sistema a
medir automaticamente. Foram criados dois trajectos, um em forma de cubo e outro em
forma de cubo deformado - ver Figura 5.5.1e Figura 5.5.2. Num primeiro teste, o
manipulador percorria os vrtices das figuras geomtricas. No segundo teste, o
manipulador executava o teste anterior e em cada vrtice exercia rotaes sobre os 3
eixos de coordenadas. Para uma rigorosa avaliao tambm proposto que se repitam
os testes anteriores, alterando as distncias entre marcadores e assim tentar encontrar os
limites do sistema - Distncia mxima, mnima e ideal entre marcadores.



Validao de resultados 85











efectuados alguns vdeos com as propostas anteriores, mas devido a
alteraes de setup, posies e modelos das cmaras, estes vdeos de nada servem para
avaliao do novo sistema montado. No foi possvel a repetio dos testes e a
aqu
ritmos
testados. Os valores que so enviados pela aplicao Sincrovision so os da posio da
ferr
Fi gur a 5. 5. 1 Cubo de t est e







Fi gur a 5. 5. 2 Cubo def or mado

Foram
isio das medidas pretendidas, por carncia de tempo. No entanto, fica proposto
para trabalho futuro a execuo destes testes para avaliar a preciso do sistema.
Aps a verificao da veracidade de todos os valores, estabeleceu-se a comunicao
entre as aplicaes Sincrovision e ComMotoman para colocar em prtica os algo
amenta e rotao da mesma. No programa est definida uma rea de trabalho limite
para a ferramenta. Caso esta se localize fora dos limites, ou no se seja possvel a
visualizao dos quatro marcadores, o envio de comandos para o manipulador cessa e
este pra. Esta uma medida de segurana, que tem por objectivo evitar que o
manipulador invada reas no permitidas sua volta, pois a segurana primordial e
factor a ter em conta neste tipo de trabalhos. Existe tambm um boto de emergncia na
consola do manipulador, que vem j embutido de fbrica, sendo possvel, em caso de
emergncia, anular todas as manobras que se estejam a executar.

86 Captulo 5: Sincrovision



erior anlise numa outra aplicao.


Conseguimos assim controlar o manipulador em tempo real. Algo de semelhante ao
trabalho feito por Neto, Pedro et al (2009) [11].
Efectua-se ento o passo seguinte, guardar os pontos do movimento da ferramenta
capturados atravs do sistema de viso, para post
O setup para o funcionamento do manipulador em tempo real mostrado na Figura
5.5.3.

Fi gur a 5. 5. 3 Conf i gur ao do si st ema Si ncr ovi si on

Capt ul o 6

Gerao de t raj ect ri as
6. 1 Exposi o do probl ema
Aps executada e guardada uma trajectria em ficheiro, esta pode ser carregada para
uma outra aplicao. Esta aplicao no funcionar em tempo real e nela gerada a
melhor trajectria para o manipulador.
Aleotti J e Caselli S. (2006) [2] no seu trabalho propem a gnese de trajectrias,
recorrendo ao critrio de NURBS (Non Uniform Rational Basis Spline). Os pontos do
trajecto so introduzidos no computador atravs de uma luva antropomrfica e
guardados para posterior anlise utilizando o critrio NURBS.
Este critrio muito flexvel e muito usado, principalmente na rea de design, permite
de uma forma simples a representao de superfcies livres. Pierre Bzier e Paul de
Casteljau, criadores do critrio NURBS, trabalhavam ambos na indstria automvel e
necessitavam de uma ferramenta flexvel e eficaz para a representao dos contornos
dos automveis e representao dos chassis.
O seu uso permite a representao de formas geomtricas de uma forma compacta
dependendo de dois parmetros mapeados, na superfcie tridimensional pretendida e a
que se pretende aproximar. Estes dois parmetros so denominados pontos de controlo e
podem ser colocados em posies estratgicas de forma a manipular a forma da curva
ver Figura 6.1.1.





Fi gur a 6. 1. 1 Cami nho ger ado pel o NURBS
87

88 Captulo 6: Gerao de trajectrias

6. 2 Abordagem adopt ada
Foi feito um estudo mais aprofundado deste algoritmo com recorrncia a Splines. No
entanto, a aplicao deste critrio no foi efectuada, devido ao facto de o manipulador
ter predefinido duas funes e o objectivo ser o seu uso - instrues MOVL e MOVC.
Para a utilizao destas instrues, as expresses dos percursos calculadas seriam
inteis. Apesar disso, deixada a referncia do livro onde pode ser encontrada
informao adicional sobre este assunto - Foley, James D. (1990) [21]. Para se poderem
definir a sequncia de operaes a efectuar ao conjunto de pontos guardados, comeou-
se por analisar as limitaes e condies que cada instruo acarretava, de forma a
optimizar os algoritmos - estas condies so explicadas ao longo das prximas seces.
Decidiu-se comear por analisar o rudo que afecta a amostra de pontos guardada.
Aps filtragem da amostra, agrupam-se os pontos por velocidades iguais e tenta-se
efectuar uma aproximao por rectas ou crculos.
De seguida, so descritas cada uma das instrues.
6. 3 Inst rues a usar no mani pul ador
6. 3. 1 Inst ruo MOVL
Nesta instruo, necessrio definir o ponto final e a velocidade e opcionalmente o
position level. Chama-se a ateno para o facto de o ponto inicial das instrues o
ponto actual onde se encontra o manipulador.
A instruo MOVL, para este manipulador, escrita na forma:


Fi gur a 6. 3. 1 Inst r uo MOVL







Instrues a usar no manipulador 89


O ltimo parmetro opcional denominado PL (position level) define a aproximao
do manipulador ao ponto final entre instrues. Este parmetro tem 8 nveis possveis e
a Figura 6.3.2 mostra quais os seus efeitos.







Se este parmetro no for definido, ele variar consoante a operao a executar e a
velocidade do manipulador. [20]
6. 3. 2 Inst ruo MOVC
Com a instruo MOVC o manipulador move-se sobre o arco definido por trs
pontos - ver Figura 6.3.3.
Fi gur a 6. 3. 2 Posi t i on Level - r et i r ada dos manuai s da MOTOMAN






Fi gur a 6. 3. 3 Resul t ado da i nst r uo MOVC

Dados trs pontos ao manipulador P1,P2 e P3 o manipulador move-se segundo um
arco de circunferncia. Notar que se programada uma interpolao linear at P0, o
manipulador mover-se- de P0 at P1 em linha recta. [20]
Se pretendermos ter dois arcos de circunferncia seguidos como apresentado na
Figura 6.3.4.








90 Captulo 6: Gerao de trajectrias







Transmitindo ao manipulador os pontos P1 at P5, este no executa o movimento
pre
Para se conseguir efectuar a trajectria definida pelos pontos p1 a p5, entre os
crc

Assim sendo o ponto P3 replicado m o ponto final do primeiro circulo,
out



tendido [20]; Uma explicao deste facto dada seguidamente.
ulos, precisamos de introduzir uma instruo de movimento de juno MOVJ ou um
MOVL. Esta deve ser inserida no ponto idntico aos dois crculos ver Figura 6.3.5.










3 vezes, u
ro - o P4 - para inserir uma instruo MOVL ou MOVJ e o ponto P5 para o inicio do
segundo circulo. Para efectuar os dois arcos de crculo correctamente, precisamos de dar
os pontos P1,P2 e P3 com a instruo MOVC o ponto P4 com a instruo MOVJ ou
MOVL e os pontos P5,P6 e P7 com a instruo MOVC. Na Figura 6.3.6 est descrita a
forma de declarar a instruo MOVC.

Fi gur a 6. 3. 4 Cr cul os segui dos
Fi gur a 6. 3. 5 Cr cul os consecut i vos de f or ma cor r ect a - f i gur a r et i r ada do manual de pr ogr amao do
mani pul ador



Fi gur a 6. 3. 6 Inst r uo MOVC


Deteco de zonas de paragem 91


Mais uma vez, nesta instruo, possvel utilizar a opo position level (parmetro
PL), j descrita na instruo MOVL.
crculo nos pontos P1,P2,P3 velocidade de 50.0
mm/s e PL=0 tem a seguinte estrutura:


Para ambas as instrues MOVC e MOVL, a velocidade pode ser definida de vrias
form
do centro da ferramenta. Valores de 0.1mm at 1500.0
6. 4 Det eco de zonas de paragem
devido deteco dos marcadores
lum
se
feita criando um
O cdigo para a execuo de um
MOVC P1 V=50.0 PL=0
MOVC P2 V=50.0 PL=0
MOVC P3 V=50.0 PL=0
as, indicadas a seguir:
V -> Velocidade
mm/s.
VR -> Velocidade angular. Valores de 0.1 at 180 graus/s.
VE -> V elocidade dos eixos externos. Valores de 0.01% at 100.00%.
Como existe rudo na recolha de valores,
inosos, comea-se por efectuar uma filtragem de todos os pontos da trajectria.
feita uma anlise s distncias entre cada ponto e os seus vizinhos. Esta anli
a esfera imaginria em redor do ponto em anlise. No caso do ponto
seguinte estar dentro desta esfera imaginria ele ser encarado como sendo o mesmo
ponto. A posio deste novo ponto actualizada para a posio mdia dos outros dois
pontos. Considere-se um ponto I, representado na Figura 6.4.1 a partir deste ponto,
criada uma esfera de raio D. Se os pontos seguintes da trajectria estiverem dentro desta
esfera, ou seja numa distncia inferior a D, (representada a vermelho), ento esses
pontos sero etiquetados como sendo o mesmo ponto I - ver Figura 6.4.2. O prximo
ponto em que se situe a uma distncia superior a D (representado a cor azul clara), ser
o prximo ponto distinto da trajectria, sendo atribuda a etiqueta II. feita, novamente,
uma esfera de raio D em torno deste novo ponto II e assim sucessivamente, at ao final
da trajectria.


92 Captulo 6: Gerao de trajectrias










Caso exista um nmero de pontos superior a um dado limite Delta, conclui-se que
ocorreu uma paragem da ferramenta, sendo adicionada uma instruo de espera, para
que o manipulador fique parado nessa mesma posio. Todos estes parmetros Delta e
distncia D podem ser definidos antes de mandar analisar a trajectria.
Fi gur a 6. 4. 1 Esf er as em t or no dos pont os de anl i se







Fi gur a 6. 4. 2 Fi l t r agem de pont os

6. 5 Det eco de zonas de vel oci dade const ant e
O principal objectivo criar uma trajectria aproximada por segmentos de recta ou
arcos de circunferncia. Comeando pela aproximao a segmentos de recta e
analisando as capacidades do manipulador, sabemos partida que o manipulador
executar a instruo MOVL a velocidade constante. Por exemplo: considerando o
segmento de recta da Figura 6.5.1, supondo que esta percorrida por diferentes
velocidades, e para que o manipulador consiga execut-la, ser necessrio dividi-la em
rectas de igual velocidade - neste caso, 3 rectas.



Deteco de zonas de velocidade constante 93








Embora se trate apenas de uma recta, necessrio dividi-la em 3 segmentos de recta
distintos - Figura 6.5.2.
ssim tem-se que:

Mov om v=3;
ov com v=2;

cdigo apresentado, no esta na linguagem do
anipulador. apenas uma maneira de expressar o pretendido.

Fi gur a 6. 5. 1 Tr aj ect r i a em r ect a










com vel oci dades di f er ent es Fi gur a 6. 5. 2 Di f er ent es segment os de r ect a

A
line i=0 at i=5 c
line i=5 at i=10 M
Movline i=10 at i=20 com v=5;

Chama-se a ateno que o
m


94 Captulo 6: Gerao de trajectrias


6. 6 Det eco de rect as
Aps a obteno de um conjunto de pontos num espao tridimensional, designado
de trajectria, pretende-se detectar subconjuntos de pontos que possam ser aproximados
por rectas.
Para este efeito, o algoritmo usado um algoritmo iterativo que percorrer toda a
trajectria, testando se um dado conjunto de pontos pode ser aproximado por uma dada
recta definida pelos prprios pontos do conjunto. Considerando uma qualquer sequncia
de pontos, por exemplo o da Figura 6.6.1, e numerando cada um deles, para fcil
identificao por parte do leitor, passa-se a explicar o algoritmo de aproximao de
rectas a um determinado conjunto de pontos. Inicialmente, utilizam-se os 3 primeiros
pontos da trajectria e, com estes, definir uma recta - ver Figura 6.6.1. Posteriormente,
calculado o erro quadrtico mdio de cada ponto que define a recta.

Fi gur a 6. 6. 1 Rect a dos 3 pr i mei r os pont os





Caso este erro quadrtico mdio seja mais pequeno que um dado valor , aumenta-se
o nmero de pontos que passam a definir a nova recta - neste caso, os primeiro 4 pontos
da recta e assim sucessivamente, at ao ponto em que a mdia do erro quadrtico seja
superior a . Desta forma, a recta fica s definida pelos primeiros seis pontos, ver Figura
6.6.2, sendo que a partir do ponto seis, considerada uma nova recta. No final, obtida
uma trajectria aproximada por pequenos segmentos de recta - ver Figura 6.6.3.

Fi gur a 6. 6. 2 Rect as cal cul adas dos 6 pr i mei r os pont os







Deteco de rectas 95



Fi gur a 6. 6. 3 Tr aj ect r i a f i nal apr oxi mada por r ect as

Juntando todos estes passos, foi implementada uma aplicao que analisa os pontos
da ferramenta. A sequncia de operaes efectuada :
i) Fazer uma filtragem do rudo e deteco de paragens;
ii) Entre paragens realizar o agrupamento dos pontos por velocidades iguais;
iii) Dentro dos conjuntos de velocidades iguais, analisar os pontos e verificar se
pertencem a uma recta ou um arco de circunferncia, dependendo de um critrio
de ajuste.


96 Captulo 6: Gerao de trajectrias





Capt ul o 7


Rel ao Fora vs Corrent e el ct ri ca
Para se tentar determinar a relao entre a fora, exercida durante a actividade de
polimento, em funo da corrente elctrica consumida pelo um motor trifsico da
mquina de polimento, foram efectuados logs sincronizados destas duas grandezas.
7. 1 Hardwar e
A lista de hardware para estes testes :
9 Manipulador
9 Gripper
9 Sensor JR3
9 Analisador da Ducati
9 Placa de monitorizao de corrente
9 Peas de polimento
9 Mquina de Polir
O hardware e software usados, foram j descritos na seco 4.
7. 1. 1 Abordagem
Existem dois tipos de pea para teste, se bem que apenas um pode ser processado,
devido ao gripper apenas conseguir segurar um dos dois tipos de peas. Para a recolha
destas amostras foram definidas 3 zonas de teste na pea processada. Esta repartio de
diferentes zonas, efectuou-se devido ao facto da fora exercida variar consoante a zona
a polir.

97

98 Captulo 7: Fora vs Corrente Elctrica

Diviso da pea representada na Figura 7.1.1.



Fi gur a 7. 1. 1 Pea nmer o 2






Em cada teste foram retiradas em mdia 800 amostras de cada valor. Usaram-se
duas peas e estas foram escolhidas aleatoriamente. Este nmero foi escolhido pois em
mdia ao fim de 5 leituras consecutivas a pea tinha que ser retirada da mquina, devido
ao sobreaquecimento do disco de polimento e da pea a polir.
Para evitar relaes de atrito/ aquecimento, as peas antes de serem usadas no teste,
eram limpas, para eliminar detritos originados pelo aquecimento do disco e a troca das
peas efectuava-se de 5 em 5 leituras.
O manipulador segura a pea de teste atravs do gripper, avanava segundo o
referencial mostrado na Figura 7.1.2. Este referencial est assente na extremidade da
ferramenta, neste caso o gripper. Efectuou-se um avano uniforme segundo o eixo X de
meio em meio milmetro, numa distncia total verdadeira de 7 mm. definido como
distncia total verdadeira, a distncia avanada com a pea em contacto com o disco.
Entre leituras era necessrio ir actualizando a posio de contacto como disco, devido
ao desgaste deste.




Hardware 99


Fi gur a 7. 1. 2 Ref er enci al par a o t est e








Durante a actividade de polimento todas as peas envolvidas, principalmente o disco
de polimento e a superfcie das peas vo sofrendo desgaste. No incio de cada teste
houve o cuidado de actualizar a posio de contacto com o disco de polimento. Para se
ter uma noo de desgaste por parte deste, no final de 23 testes observou-se um desgaste
de 7 mm do disco. primeira vista aparenta ser um desgaste muito pequeno, mas que
afecta em muito toda a experincia, considerando que o avano da pea foi feito com
um incremento de meio milmetro na maioria dos testes.
muito importante actualizar sempre que possvel a coordenada do instante de
contacto entre a pea e o disco, para obtermos resultado da relao entre a fora e a
corrente mais fiveis.
Notou-se que as leituras do sensor JR3 com a instruo SERVO ON (que coloca os
motores do manipulador em funcionamento), ficavam afectadas de rudo devido s
correntes consumidas pelos motores do manipulador. Compreende-se este fenmeno,
visto que estamos a trabalhar com um sensor analgico e que o cabo de extenso at
placa PCI no blindado.
Para reduzir o efeito do rudo, posicionava-se a pea atravs do manipulador na
posio pretendida, e os servos do manipulador eram desligados.
Os testes feitos basearam-se em encostar a pea ao disco e retirar a fora e corrente.
Entre testes havia um incremento de 0,5mm segundo o eixo X.
Devido a mudanas de setup e falta de tempo, apenas se realizaram testes com a
pea nmero 2 e na zona 1 e 2.
Durante a anlise dos logs, observou-se que o circuito de leitura de corrente estava a
saturar, na fase final dos testes Zonas onde se exercia mais fora sobre o disco de
polimento e o consumo de corrente era maior. Este fenmeno, deve-se ao facto de uma
m projeco do limite mximo mensurvel da corrente por parte do circuito
implementado valor eficaz de 7.5 A.

100 Captulo 7: Fora vs Corrente Elctrica



O valor mximo apresentado pelo analisador de corrente da Ducati nestas alturas,
era de 6.5A enquanto, o nosso circuito tinha leituras muito prximas de 7.4 A no incio
do teste e no final do teste, ao fim de 400 medidas o valor da corrente eficaz medido era
de 6.5A valor correcto. Este disparo abrupto de corrente normal visualizar-se no
circuito implementado e no no analisador da Ducati, j que este apenas apresenta
valores de 1 em 1 segundo e durante este tempo, efectua filtragens, no sendo possvel
medir-se disparos/oscilaes abruptas de corrente.
Para evitar confuses, chama-se a ateno para o facto de serem usados dois
referenciais, o referencial do rob, representado Figura 7.1.2 e o referencial usado no
sensor de fora, que est representado na seco 4 na Figura 4.6.2. No grfico em cima
representada a fora Fz do sensor Jr3.
Mesmo assim analisaram-se os dados obtidos para valores mais baixos de corrente e
de fora, estando estes representados na Figura 7.1.3.

0
10
20
30
40
50
60
70
80
4 4,5 5 5,5 6 6,5
Fz
(N)
Corrente(A)

7
Zona2
Zona1
Fi gur a 7. 1. 3 Gr f i cos For a/ Cor r ent e el ct r i ca

Das duas curvas tiradas a que se pode ter mais confiana na curva calculada na
zona 1. A curva calculada para a zona 2, foi a que se verificou onde existiu mais
saturao do valor da corrente e portanto deve ser ignorada.
Observando a curva da zona 1, aparenta que a relao entre as duas grandezas
linear, conforme era esperado. No entanto deve-se fazer mais ensaios para confirmar
este facto.
Para testes futuros, pode-se projectar um novo circuito para medida de valores
eficazes da corrente, ou tentar arranjar um produto comercial que consiga cumprir as
especificaes necessrias - no mnimo funcionar frequncia de 10 Hz, frequncia de
funcionamento do sistema actual.


Capt ul o 8


Concl uses
Foram abordados todos os campos previstos nos objectivos principais para o
trabalho.
Verificou-se que atravs do algoritmo de calibrao de Tsai possvel extrair os
parmetros do sistema de viso de uma maneira fcil e verstil. O algoritmo eight point
mais flexvel em termos de calibrao mas a forma como est implementado no
possvel uma reconstruo 3D mtrica directa, sendo necessrio introduzir este passo
para se poder comparar com o algoritmo Tsai.
O clculo da posio e rotao da ferramenta est a ser calculado devidamente e
possvel o controlo em tempo real do manipulador.
Juntamente com a determinao da orientao da ferramenta possvel efectuar logs
sincronizados de imagem, fora e corrente. A recolha sincronizada destas grandezas,
ser futuramente muito importante para o relacionamento entre elas no contexto da
actividade de polimento.
A aproximao de pontos por segmentos de rectas, apenas metade do algoritmo est
implementado - deteco de rudo, e agrupar pontos por velocidade igual e a gnese de
trajectrias por arcos de circunferncia no foi possvel ainda a sua implementao
devido falta de tempo.
Este trabalho foi a continuao de um estudo sobre viso estereoscpica. Penso que
em redor do sistema Sincrovision se continuar a estudar novas opes e estratgias
para tornar o sistema mais intuitivo e robusto.
Neste trabalho tentou-se gerar trajectrias para o manipulador, mas atravs do uso
deste sistema possvel tambm manusear o manipulador industrial em tempo real. Este
modo de operao importante para certas actividades como por exemplo: manusear
substncias perigosas ou objectos de grande porte que de forma manual era
completamente impossvel - sendo apenas necessrio 4 marcadores, um sistema de
101

102 Captulo 8: Concluses

viso e um computador para manobrar com grande facilidade e agilidade um
manipulador industrial.
uma alternativa s solues de programao de manipuladores oferecidas hoje em
dia, tendo sido o que mais me motivou para aceitar este desafio. Os resultados so
animadores embora no perfeitos, mas devido ao tempo que se dispunha para a sua
elaborao, apenas foi possvel fazer o exposto nesta tese.

8. 1 Trabal ho f ut uro
Para trabalhos futuros sugiro as seguintes ideias para as reas de:
a) Caracterizao do sistema Sincrovision:

i. Anlise qualitativa e quantitativa da preciso do sistema Sincrovision.
Dependendo do mtodo de calibrao e tcnicas usadas a preciso do sistema
pode ser aumentada.
ii. Avaliar pontos de stress do sistema. Qual o espaamento
mnimo/mximo/ideal e posicionamento dos marcadores para os quais ainda
se obtm valores correctos. Visto que se pretende colocar os marcadores nas
ferramentas dos operadores, para guardar os seus movimentos, esta etapa
muito importante, para se ter uma noo sobre o tipo de actividades a que se
pode aplicar. Alguns dados foram j recolhidos, sobre a distncia entre
marcadores, sendo necessrio tempo para os processar e tirar concluses.

b) Aumento da robustez do sistema:

i. Determinao da posio e rotao da ferramenta. De momento a aplicao
para o clculo do estado da ferramenta precisa de estar a visualizar os quatro
marcadores. O que seria possvel faz-lo apenas com 3 marcadores, o
marcador de referncia e 2 amarelos, caso algum deles, sasse fora do
alcance do sistema de viso. Um procedimento automtico poderia detectar
em caso de apenas existirem 3 marcadores visveis, efectuar o clculo do
plano e centroide ser efectuado atravs dos 3 pontos e assim determinar o
estado da ferramenta.

ii. Aplicar algoritmos preditivos baseados no estado anterior da ferramenta para
o clculo do estado seguinte caso o marcador vermelho sasse fora do
alcance do sistema de viso.



Trabalho futuro 103


c) Gerao de trajectrias:

i. Aperfeioar os algoritmos j existentes para a gerao de trajectrias para o
manipulador e/ou at mesmo implementar outros.
ii. O uso da instruo MOVS que faz mover o manipulador entre 3 pontos segundo
uma Spline.

d) Actividade de polimento:

i. Analisar dados retirados sobre a relao Fora vs corrente e tirar a sua
relao.
ii. Efectuar vdeos de uma sesso de polimento, e tentar adaptar as trajectrias
geradas a esta actividade.



104 Captulo 8: Concluses





Ref ernci as
[1] Yusuke MAEDA, Tatsuya USHIODA and Satoshi MAKITA, Yokohama
National University (2008), Easy Robot Programming for Industrial Manipulators by
Manual Volume Sweeping in 2008 IEEE International Conference on Robotics and
Automation Pasadena, CA, USA, May 19-23.
[2] Aleotti J, Caselli S (Parma University, Italy) (2006) "Robust Trajectory learning
and approximation for robot programming by demonstration." in Robotics and
Autonomous Systems
[3] Ekvall,S. Kragic, D.(2005): Grasp Recognition for Programming by
Demonstration; in: Robotics and Automation, 2005. ICRA 2005.
[4] R. Dillmann(2004), Teaching and learning of robot tasks via observation of
human performance, in Robotics and Autonomous Systems, vol. 47, no.2-3, pp. 109-
116, 2004.
[5] Markus Ehrenmann, Oliver Rogalla, Raoul Zllner and Rdiger Dillmann,
TEACHING SERVICE ROBOTS COMPLEX TASKS: PROGRAMMING
BYDEMONSTRATION FOR WORKSHOP AND HOUSEHOLD
ENVIRONMENTS,University of Karlsuhe (TH), Germany
[6] Manuel Lopes and Alexandre Bernardino and Jos Santos-Victor(2005) .A
Developmental Roadmap for Task Learning by Imitation in Humanoid Robots.AISB -
Third International Symposium on Imitation in Animals and Artefacts. Hatfield,
England, 2005.
[7] F. Nagata, K. Watanabe, K. Kiguchi, K. Tsuda, S. Kawaguchi, Y. Noda, and M.
Komino,(2001) Joystick teaching system for polishing robots using fuzzy compliance
control, Proceedings 2001 IEEE International Symposium on Computational
Intelligence in Robotics and Automation, pp. 362-367, 2001.
[8] Jayawardena, C. Watanabe, K. Izumi, K. Dept. of Adv. Syst. Control Eng.,
Saga Univ., Japan (2005),Teaching a tele-robot using natural language commands in
Micro-NanoMechatronics and Human Science, 2005 IEEE International Symposium
on.
105

106 Referncias

[9] Pires, J.N.(2007): The Industrial robot as a human coworker: the role of the
speech interfaces. In Proceedings of the International Conference on Software
Development for Enhancing Accessibility and Fighting Info-exclusion (DSAI 2007),
Portugal, November 2007
[10] Pires, J.N. (2007), Demonstration videos: programming robots with digital
pens, Industrial Robotics Laboratory,Mechanical Engineering Department, Coimbra,
available at: http://robotics.dem.uc.pt/robot-pen
[11] Neto, P, Pires, JN, Moreira, AP, "High-level programming and control for
industrial robotics: using a hand-held accelerometer-based input device for gesture and
posture recognition", Emerald Industrial Robot, 2009 (accepted - April 2009). Internal
Code: IR-09-339
[12] J. Aleotti (2004), A. Skoglund and T. Duckett, Position teaching of a robot
arm by demonstration with a wearable input device International Conference on
Intelligent Manipulation and Grasping (IMG04), Genoa, Italy, July 1-2, 2004.
[13] Richard Hartley and Andrew Zisserman (2003). Multiple View Geometry in
computer vision. Cambridge University Press.
[14] ROGER Y. TSAI (1987) A Versatile Camera Calibration Technique for
High-Accuracy 3D Machine Vision Metrology Using Off-the-Shelf TV Cameras and
Lenses, in IEEE JOURNAL OF ROBOTICS AND AUTOMATION, VOL.RA-3, NO.4.
[15] Alberto B. Raposo, Flvio Szenberg, Marcelo Gattass, Waldemar Celes : Viso
Estereoscpica, Realidade Virtual, Realidade Aumentada e Colaborao.
[16] Rimon elias and Robert laganire - Projective Geometry for Three-
Dimensional Computer Vision.
[17] Richard I. Hartley (1997). "In Defense of the Eight-Point Algorithm". IEEE
Transaction on Pattern Recognition and Machine Intelligence.(June 1997)
[18] Richard I. Hartley and Peter Sturm Triangulation
[19] Eberly,David (2008), Least Squares Fitting of Data,in: Geometric Tools, LLC
[20] MOTOMAN NX100 BASIC PROGRAMMING .
[21] Foley, James D. (1990) : Computer Graphics.
[22] Qian, N.(1997),Binocular Disparity and the Perception of Depth, Neuron, 18,
359-368, 1997
[23] Gang Xu and Zhengyou Zhang (1996). Epipolar geometry in Stereo, Motion
and Object Recognition. Kluwer Academic Publishers. ISBN 0-7923-4199-6.
[24] http://www.robot.uji.es/lab/plone/Members/mprats
[25] http://robotics.dem.uc.pt/norberto/


Referncias 107

[26] Mark W. Spong, Seth Hutchinson, M. Vidyasagar , Robot Modeling and
Control . ISBN: 978-0-471-64990-8, 496 pages, December 2005

1
Pode ser consultado em
http://gnomo.fe.up.pt/~robotic/index.php?option=com_content&view=article&id=84&It
emid=94
2
Luvas que retiram o modelo da mo.

108 Referncias





Anexo A

Concei t os
Epipolos ou pontos epipolares: ponto de interseco da linha que une os centros
das cmaras com cada plano de imagem. [13]
Plano epipolar: Plano que contem a linha que une os epipolos. [13]
Linha epipolar: Linha resultante da interseco do plano epipolar com os planos de
imagem. Passa entre os pontos projectados no plano de imagem e nos epipolos (ex:
c
R
- x
R
, exemplo de linha epipolar da imagem do lado direito). [13]
Disparidade binocular: Refere-se diferena existente na localizao de um
objecto numa imagem vista no lado esquerdo ou direito do sistema de captura (olho
esquerdo ou olho direito, mas neste caso denominado disparidade da retina) devido
distncia entre as duas fontes de captura da mesma cena.



Com uma disposio de cmaras parecida disposio dos olhos humanos, a
disparidade apenas aparece na direco horizontal, e no existe disparidade na
Fi gur a 8. 1. 1 Di spar i dade bi nocul ar
109

110 Anexo A



coordenada y da imagem. Usualmente a disparidade calculada pelo deslocamento para
a esquerda de uma cena vista numa imagem observada do lado direito. Por exemplo, um
ponto K no mundo aparece na coordenada x (medida em pixis) na imagem do lado
esquerdo; O mesmo ponto K na imagem do lado direito tem a coordenada x -S nesta
situao a disparidade de 3 pixis. No caso de a disparidade ser 0, os pontos nas duas
imagens aparecem exactamente no mesmo stio na imagem do lado direito.
Percepo de profundidade capacidade visual para percepo tridimensional do
Mundo, at agora o conceito de percepo reservado aos humanos, embora qualquer
animal consiga mover-se no seu ambiente envolvente, apenas ns humanos
conseguimos transmitir a noo de distncia uns aos outros.
Homografia - Conceito matemtico em que consiste numa transformao de um
plano de projeco para outro plano de projeco, tambm conhecido como
transformao projectiva.
Geometria epipolar a geometria projectiva intrnseca entre dois pontos de vista
distintos. Uso de duas cmaras para visualizar um cenrio a 3D a partir de duas posies
distintas. Este tipo de geometria independente da cena visualizada apenas dependendo
dos parmetros internos e da posio relativa das cmaras usadas. Todas estas relaes
so obtidas com base no pressuposto de que as cmaras podem ser aproximadas pelo
modelo de pinhole camera. Esta geometria normalmente te motivada pela procura de
pontos de correspondncia nas duas imagens. [13]
Matriz anti-simtrica - Uma matriz anti-simtrica aquela com a qual sua matriz
transposta coincide com sua matriz oposta:
A
t
= A

Você também pode gostar