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

Preview:

Citation preview

NXT adreiluaNXT motorrak

NXT sentsoreakSoftwarea

Lego Mindstorms NXT adreiluaRobotika eta kontrol adimenduna

Elena Lazkano

e.lazkano@ehu.es

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

NXT adreiluaNXT motorrak

NXT sentsoreakSoftwarea

Edukia

NXT adreilua

NXT motorrak

NXT sentsoreak

Softwarea

Elena lazkano 2013 Robotika eta kontrol adimenduna 2 / 15

NXT adreiluaNXT motorrak

NXT sentsoreakSoftwarea

Lego Mindstorms NXT

Elena lazkano 2013 Robotika eta kontrol adimenduna 3 / 15

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

NXT adreiluaNXT motorrak

NXT sentsoreakSoftwarea

NXT adreilua

Elena lazkano 2013 Robotika eta kontrol adimenduna 5 / 15

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

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

NXT adreiluaNXT motorrak

NXT sentsoreakSoftwarea

NXT Robotak

Elena lazkano 2013 Robotika eta kontrol adimenduna 8 / 15

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

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

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

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

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

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

NXT adreiluaNXT motorrak

NXT sentsoreakSoftwarea

Lehenengo NXT robota: R-bot

Jarraibideak webgunean (r-bot robota)

Elena lazkano 2013 Robotika eta kontrol adimenduna 15 / 15

Recommended