Lego Mindstorms NXT adreilua - gipuzkoa › ccwrobot › rka › nxc-nqc.pdfNXT adreilua NXT...

15
NXT adreilua NXT motorrak NXT sentsoreak Softwarea Lego Mindstorms NXT adreilua Robotika eta kontrol adimenduna Elena Lazkano [email protected] http://www.sc.ehu.es/ccwrobot/members/elena/ Konputazio Zientziak eta Adimen Artifiziala Euskalerriko Unibertsitatea 2013/14 ikasturtea Elena lazkano 2013 Robotika eta kontrol adimenduna 1 / 15

Transcript of Lego Mindstorms NXT adreilua - gipuzkoa › ccwrobot › rka › nxc-nqc.pdfNXT adreilua NXT...

Page 1: Lego Mindstorms NXT adreilua - gipuzkoa › ccwrobot › rka › nxc-nqc.pdfNXT adreilua NXT motorrak NXT sentsoreak Softwarea Lego Mindstorms NXT Elena lazkano 2013 Robotika eta kontrol

NXT adreiluaNXT motorrak

NXT sentsoreakSoftwarea

Lego Mindstorms NXT adreiluaRobotika eta kontrol adimenduna

Elena Lazkano

[email protected]

http://www.sc.ehu.es/ccwrobot/members/elena/

Konputazio Zientziak eta Adimen ArtifizialaEuskalerriko Unibertsitatea

2013/14 ikasturtea

Elena lazkano 2013 Robotika eta kontrol adimenduna 1 / 15

Page 2: Lego Mindstorms NXT adreilua - gipuzkoa › ccwrobot › rka › nxc-nqc.pdfNXT adreilua NXT motorrak NXT sentsoreak Softwarea Lego Mindstorms NXT Elena lazkano 2013 Robotika eta kontrol

NXT adreiluaNXT motorrak

NXT sentsoreakSoftwarea

Edukia

NXT adreilua

NXT motorrak

NXT sentsoreak

Softwarea

Elena lazkano 2013 Robotika eta kontrol adimenduna 2 / 15

Page 3: Lego Mindstorms NXT adreilua - gipuzkoa › ccwrobot › rka › nxc-nqc.pdfNXT adreilua NXT motorrak NXT sentsoreak Softwarea Lego Mindstorms NXT Elena lazkano 2013 Robotika eta kontrol

NXT adreiluaNXT motorrak

NXT sentsoreakSoftwarea

Lego Mindstorms NXT

Elena lazkano 2013 Robotika eta kontrol adimenduna 3 / 15

Page 4: Lego Mindstorms NXT adreilua - gipuzkoa › ccwrobot › rka › nxc-nqc.pdfNXT adreilua NXT motorrak NXT sentsoreak Softwarea Lego Mindstorms NXT Elena lazkano 2013 Robotika eta kontrol

NXT adreiluaNXT motorrak

NXT sentsoreakSoftwarea

NXT adreilua

• Mikroprozesagailu nagusia: ARM7 (32 bit, 48 MHz)

• Bigarren mikroprozesagailua: AVR (8bit, 8 MHz):serbomotorrak

• 256 KB flash memoria ez-hegazkorra (64 programa gehienez),64 KB RAM

• 4 sarrerako portu (1, 2, 3 eta 4)

• 3 irteerako portu (A, B eta C)

• LCD pantaila (100× 64 pixel)

• Bozgorailuak

• Bateria (Lithium-ion battery pack)

• Komunikazioa: USB eta Bluetooth

Elena lazkano 2013 Robotika eta kontrol adimenduna 4 / 15

Page 5: Lego Mindstorms NXT adreilua - gipuzkoa › ccwrobot › rka › nxc-nqc.pdfNXT adreilua NXT motorrak NXT sentsoreak Softwarea Lego Mindstorms NXT Elena lazkano 2013 Robotika eta kontrol

NXT adreiluaNXT motorrak

NXT sentsoreakSoftwarea

NXT adreilua

Elena lazkano 2013 Robotika eta kontrol adimenduna 5 / 15

Page 6: Lego Mindstorms NXT adreilua - gipuzkoa › ccwrobot › rka › nxc-nqc.pdfNXT adreilua NXT motorrak NXT sentsoreak Softwarea Lego Mindstorms NXT Elena lazkano 2013 Robotika eta kontrol

NXT adreiluaNXT motorrak

NXT sentsoreakSoftwarea

NXT adreilua

• Sistema eragilea: firmwarea

• Bere zereginen artean:• NXTa kontrolatzeko menu grafikoa• Sarrera/irteerako APIa• ByteCode exekutagarriak (.rxe) interpretatu• Ataza anitz exekutatu konkurrenteki

• Piztu NXT adreilua eta nabigatu menuan zehar botoiakerabiliz

Elena lazkano 2013 Robotika eta kontrol adimenduna 6 / 15

Page 7: Lego Mindstorms NXT adreilua - gipuzkoa › ccwrobot › rka › nxc-nqc.pdfNXT adreilua NXT motorrak NXT sentsoreak Softwarea Lego Mindstorms NXT Elena lazkano 2013 Robotika eta kontrol

NXT adreiluaNXT motorrak

NXT sentsoreakSoftwarea

NXT adreilua

• Firmware bertsioa?• Settings -- NXT Version

• Bozgorailuaren bolumena 1ean jarri:• Settings -- Volume

• Zenbat programa daude NXTan?• Software Files -- My Files

Elena lazkano 2013 Robotika eta kontrol adimenduna 7 / 15

Page 8: Lego Mindstorms NXT adreilua - gipuzkoa › ccwrobot › rka › nxc-nqc.pdfNXT adreilua NXT motorrak NXT sentsoreak Softwarea Lego Mindstorms NXT Elena lazkano 2013 Robotika eta kontrol

NXT adreiluaNXT motorrak

NXT sentsoreakSoftwarea

NXT Robotak

Elena lazkano 2013 Robotika eta kontrol adimenduna 8 / 15

Page 9: Lego Mindstorms NXT adreilua - gipuzkoa › ccwrobot › rka › nxc-nqc.pdfNXT adreilua NXT motorrak NXT sentsoreak Softwarea Lego Mindstorms NXT Elena lazkano 2013 Robotika eta kontrol

NXT adreiluaNXT motorrak

NXT sentsoreakSoftwarea

NXT eragingailuak: motorrak

• Motorra: seinale elektrikoa magnitude fisikobihurtu

• Korronte zuzeneko motorrak (DC)

• NXT motorrak: serbomotorrak (motorra +erredukzioa + errotazio-sentsorea)

• Errotazio-sentsorea: motorraren ardatzarenbirak zenbatu

• Zehaztasuna: ±1◦

• Abiadura:• Teorikoa: 200 bira/min• Praktikoa: 120-160 bira/min

Elena lazkano 2013 Robotika eta kontrol adimenduna 9 / 15

Page 10: Lego Mindstorms NXT adreilua - gipuzkoa › ccwrobot › rka › nxc-nqc.pdfNXT adreilua NXT motorrak NXT sentsoreak Softwarea Lego Mindstorms NXT Elena lazkano 2013 Robotika eta kontrol

NXT adreiluaNXT motorrak

NXT sentsoreakSoftwarea

NXT sentsoreak

• NXT kaxak 4 sentsore-motadakartza:

• Talka-sentsorea• Argi-sentsorea• Soinu-sentsorea• Ultrasoinu-sentsorea

• Badira askoz gehiago!• Kamara, iparrorratza,

infragorriak, . . .

Elena lazkano 2013 Robotika eta kontrol adimenduna 10 / 15

Page 11: Lego Mindstorms NXT adreilua - gipuzkoa › ccwrobot › rka › nxc-nqc.pdfNXT adreilua NXT motorrak NXT sentsoreak Softwarea Lego Mindstorms NXT Elena lazkano 2013 Robotika eta kontrol

NXT adreiluaNXT motorrak

NXT sentsoreakSoftwarea

Trebakuntza

• Konektatu kable bidez talka-sentsorea eta NXT gailua nahiduzun portuan (1, . . . , 4) eta bistaratu sentsorearenirakurketak:View -- Touch sensor -- xx port

• Errepikatu aurrekoa argi-sentsorearekin, bi modutara:Reflected Light eta Ambient light

• Errepikatu aurrekoa soinu-sentsorearekin.

• Errepikatu aurrekoa ultrasoinuarekin.

Elena lazkano 2013 Robotika eta kontrol adimenduna 11 / 15

Page 12: Lego Mindstorms NXT adreilua - gipuzkoa › ccwrobot › rka › nxc-nqc.pdfNXT adreilua NXT motorrak NXT sentsoreak Softwarea Lego Mindstorms NXT Elena lazkano 2013 Robotika eta kontrol

NXT adreiluaNXT motorrak

NXT sentsoreakSoftwarea

NXT roboten programazioa

Programazio-lengoaiak:

• NXT-G

• NBC/NXC

• RobotC

• LeJOS

• . . .

Guk: NXC (Not eXactly C)

• C lengoaian oinarrituta

• Software librea (MPL lizentzia)

• Erabilerraza eta Lego komunitatean zabaldua

• Plataforma desberdinetan erabilgarri (Linux, Windows,MacOS)

Elena lazkano 2013 Robotika eta kontrol adimenduna 12 / 15

Page 13: Lego Mindstorms NXT adreilua - gipuzkoa › ccwrobot › rka › nxc-nqc.pdfNXT adreilua NXT motorrak NXT sentsoreak Softwarea Lego Mindstorms NXT Elena lazkano 2013 Robotika eta kontrol

NXT adreiluaNXT motorrak

NXT sentsoreakSoftwarea

NXC programazio-ingurunea

Zikloa:

1 Kodea idatzi:emacs, vi, . . .

2 Konpilatu: nbckonpiladorea

3 NXTra jaitsi:USB/Bluetooth

4 Exekutatu

Elena lazkano 2013 Robotika eta kontrol adimenduna 13 / 15

Page 14: Lego Mindstorms NXT adreilua - gipuzkoa › ccwrobot › rka › nxc-nqc.pdfNXT adreilua NXT motorrak NXT sentsoreak Softwarea Lego Mindstorms NXT Elena lazkano 2013 Robotika eta kontrol

NXT adreiluaNXT motorrak

NXT sentsoreakSoftwarea

NXC: lehenengo programa

• Terminal bat ireki eta, bertan:

$ emacs kaixo.nxc

• Kodea idatzi eta gorde:

task main()

{

TextOut(0, LCD\_LINE1, ‘‘kaixo 2012/13 ikasturteari!’’);

Wait(2000);

}

• Konpilatu eta NXTra pasa:

$ nbc kaixo.nxc -sm -d -S=usb

• Exekutatu NXTan:

MyFiles -- Software Files -- kaixo

Elena lazkano 2013 Robotika eta kontrol adimenduna 14 / 15

Page 15: Lego Mindstorms NXT adreilua - gipuzkoa › ccwrobot › rka › nxc-nqc.pdfNXT adreilua NXT motorrak NXT sentsoreak Softwarea Lego Mindstorms NXT Elena lazkano 2013 Robotika eta kontrol

NXT adreiluaNXT motorrak

NXT sentsoreakSoftwarea

Lehenengo NXT robota: R-bot

Jarraibideak webgunean (r-bot robota)

Elena lazkano 2013 Robotika eta kontrol adimenduna 15 / 15