Programmare un robot umanoide - unibo.itlia.deis.unibo.it/.../lucidi/PresentazioneNAO.pdf · !20...

26
1 NAO Programmare un robot umanoide

Transcript of Programmare un robot umanoide - unibo.itlia.deis.unibo.it/.../lucidi/PresentazioneNAO.pdf · !20...

Page 1: Programmare un robot umanoide - unibo.itlia.deis.unibo.it/.../lucidi/PresentazioneNAO.pdf · !20 Progetti e tesi svolti 1. NAO gioca a calcio (RoboCup) 2. Tesi e progetti NAO gioca

!1

NAOProgrammare un robot umanoide

Page 2: Programmare un robot umanoide - unibo.itlia.deis.unibo.it/.../lucidi/PresentazioneNAO.pdf · !20 Progetti e tesi svolti 1. NAO gioca a calcio (RoboCup) 2. Tesi e progetti NAO gioca

!2

Nao: come è fatto?

Page 3: Programmare un robot umanoide - unibo.itlia.deis.unibo.it/.../lucidi/PresentazioneNAO.pdf · !20 Progetti e tesi svolti 1. NAO gioca a calcio (RoboCup) 2. Tesi e progetti NAO gioca

!3

Posizionamento e connessione

• Assicurarsi che ci sia sufficiente spazio intorno al robot. Posizionarlo preferibilmente sul pavimento.

• Assicurarsi che NAO sia connesso alla rete (ethernet o WiFi)

Page 4: Programmare un robot umanoide - unibo.itlia.deis.unibo.it/.../lucidi/PresentazioneNAO.pdf · !20 Progetti e tesi svolti 1. NAO gioca a calcio (RoboCup) 2. Tesi e progetti NAO gioca

!4

NAO: come funziona?

Page 5: Programmare un robot umanoide - unibo.itlia.deis.unibo.it/.../lucidi/PresentazioneNAO.pdf · !20 Progetti e tesi svolti 1. NAO gioca a calcio (RoboCup) 2. Tesi e progetti NAO gioca

!5

Perchè programmare in Python

Page 6: Programmare un robot umanoide - unibo.itlia.deis.unibo.it/.../lucidi/PresentazioneNAO.pdf · !20 Progetti e tesi svolti 1. NAO gioca a calcio (RoboCup) 2. Tesi e progetti NAO gioca

!6

Controllo da remoto

Page 7: Programmare un robot umanoide - unibo.itlia.deis.unibo.it/.../lucidi/PresentazioneNAO.pdf · !20 Progetti e tesi svolti 1. NAO gioca a calcio (RoboCup) 2. Tesi e progetti NAO gioca

!7

Software Suite

Page 8: Programmare un robot umanoide - unibo.itlia.deis.unibo.it/.../lucidi/PresentazioneNAO.pdf · !20 Progetti e tesi svolti 1. NAO gioca a calcio (RoboCup) 2. Tesi e progetti NAO gioca

!8

Choreographe

• E’ composto da box che contengono codice per azioni specifiche

• E’ un’interfaccia grafica per la programmazione di NAO (disponibile per Windows, Mac e Linux)

(scaricabile creando un account gratuito su Aldebaran community)

• Codice Python nei box • Un box può essere composto da più box • Un box può avere più inputs/outputs

Page 9: Programmare un robot umanoide - unibo.itlia.deis.unibo.it/.../lucidi/PresentazioneNAO.pdf · !20 Progetti e tesi svolti 1. NAO gioca a calcio (RoboCup) 2. Tesi e progetti NAO gioca

!9

Python Box

Page 10: Programmare un robot umanoide - unibo.itlia.deis.unibo.it/.../lucidi/PresentazioneNAO.pdf · !20 Progetti e tesi svolti 1. NAO gioca a calcio (RoboCup) 2. Tesi e progetti NAO gioca

!10

Choreographe - PanelliA Box libraries panel B Flow diagram panel

C 3D Robot View

AB

C

Page 11: Programmare un robot umanoide - unibo.itlia.deis.unibo.it/.../lucidi/PresentazioneNAO.pdf · !20 Progetti e tesi svolti 1. NAO gioca a calcio (RoboCup) 2. Tesi e progetti NAO gioca

!11

Choreographe - PanelliA Pose library panel B Video monitor panel C Resource viewer panel D Script editor panel E Robot applications F Log viewer

B

C

D

E

A

F

Page 12: Programmare un robot umanoide - unibo.itlia.deis.unibo.it/.../lucidi/PresentazioneNAO.pdf · !20 Progetti e tesi svolti 1. NAO gioca a calcio (RoboCup) 2. Tesi e progetti NAO gioca

!12

Demo - step 1

Page 13: Programmare un robot umanoide - unibo.itlia.deis.unibo.it/.../lucidi/PresentazioneNAO.pdf · !20 Progetti e tesi svolti 1. NAO gioca a calcio (RoboCup) 2. Tesi e progetti NAO gioca

!13

Demo - step 2

Page 14: Programmare un robot umanoide - unibo.itlia.deis.unibo.it/.../lucidi/PresentazioneNAO.pdf · !20 Progetti e tesi svolti 1. NAO gioca a calcio (RoboCup) 2. Tesi e progetti NAO gioca

!14

Demo - step 3

Page 15: Programmare un robot umanoide - unibo.itlia.deis.unibo.it/.../lucidi/PresentazioneNAO.pdf · !20 Progetti e tesi svolti 1. NAO gioca a calcio (RoboCup) 2. Tesi e progetti NAO gioca

!15

Demo - step 4

Page 16: Programmare un robot umanoide - unibo.itlia.deis.unibo.it/.../lucidi/PresentazioneNAO.pdf · !20 Progetti e tesi svolti 1. NAO gioca a calcio (RoboCup) 2. Tesi e progetti NAO gioca

!16

Demo - step 5

Page 17: Programmare un robot umanoide - unibo.itlia.deis.unibo.it/.../lucidi/PresentazioneNAO.pdf · !20 Progetti e tesi svolti 1. NAO gioca a calcio (RoboCup) 2. Tesi e progetti NAO gioca

!17

Demo - step 6

Page 18: Programmare un robot umanoide - unibo.itlia.deis.unibo.it/.../lucidi/PresentazioneNAO.pdf · !20 Progetti e tesi svolti 1. NAO gioca a calcio (RoboCup) 2. Tesi e progetti NAO gioca

!18

Demo - step 7

Page 19: Programmare un robot umanoide - unibo.itlia.deis.unibo.it/.../lucidi/PresentazioneNAO.pdf · !20 Progetti e tesi svolti 1. NAO gioca a calcio (RoboCup) 2. Tesi e progetti NAO gioca

!19

Demo - step 8

Page 20: Programmare un robot umanoide - unibo.itlia.deis.unibo.it/.../lucidi/PresentazioneNAO.pdf · !20 Progetti e tesi svolti 1. NAO gioca a calcio (RoboCup) 2. Tesi e progetti NAO gioca

!20

Progetti e tesi svolti

1. NAO gioca a calcio (RoboCup)

2. Tesi e progetti NAO gioca a “Indovina chi” Planning per azioni NAO e apprendimento di nuovi movimenti in Timeline NAO si muove in una stanza NAO matematico

3. Tesi magistrali Reti neurali per

Riconoscimento facciale OCR (Riconoscimento di caratteri)

Imitazione di movimenti umani tramite uso di Kinect

Page 21: Programmare un robot umanoide - unibo.itlia.deis.unibo.it/.../lucidi/PresentazioneNAO.pdf · !20 Progetti e tesi svolti 1. NAO gioca a calcio (RoboCup) 2. Tesi e progetti NAO gioca

!21

Riconoscimento facciale

Page 22: Programmare un robot umanoide - unibo.itlia.deis.unibo.it/.../lucidi/PresentazioneNAO.pdf · !20 Progetti e tesi svolti 1. NAO gioca a calcio (RoboCup) 2. Tesi e progetti NAO gioca

!22

NLP e matematica

Page 23: Programmare un robot umanoide - unibo.itlia.deis.unibo.it/.../lucidi/PresentazioneNAO.pdf · !20 Progetti e tesi svolti 1. NAO gioca a calcio (RoboCup) 2. Tesi e progetti NAO gioca

!23

Lucy legge con OCR

Page 24: Programmare un robot umanoide - unibo.itlia.deis.unibo.it/.../lucidi/PresentazioneNAO.pdf · !20 Progetti e tesi svolti 1. NAO gioca a calcio (RoboCup) 2. Tesi e progetti NAO gioca

!24

Proposte di progetti e tesi

1. NAO e linguaggio naturale Sviluppo di bot Sviluppo di giochi interattivi Sviluppo di abilità per quiz e giochi matematici

2. NAO e planning real time Esecuzione di azioni (comandi) real-time in ambiente chiuso Movimento all’interno di un percorso

3. Sviluppo e ampliamento di progetti precedenti

Page 25: Programmare un robot umanoide - unibo.itlia.deis.unibo.it/.../lucidi/PresentazioneNAO.pdf · !20 Progetti e tesi svolti 1. NAO gioca a calcio (RoboCup) 2. Tesi e progetti NAO gioca

!25

Presentiamo il nostro NAO: Lucy

Lasciamo che Lucy

si presenti!

Page 26: Programmare un robot umanoide - unibo.itlia.deis.unibo.it/.../lucidi/PresentazioneNAO.pdf · !20 Progetti e tesi svolti 1. NAO gioca a calcio (RoboCup) 2. Tesi e progetti NAO gioca

!26

Grazie per l’attenzione!