User manual

e) A PRO-BOT128 könyvtár
Hogy ne kelljen magának megírni minden hardver illesztőt a
PRO-BOT128 számára, hanem azonnal indítani tudja, a demo-
programok között egy könyvtár is van. Ez tartalmaz különféle
viselkedéseket, azon kívül valamennyi hardver illesztőt a PRO-
BOT128-hoz.
A következő sorok megvilágítják a könyvtár (Library) szintaktikáját
és alkalmazását. Természetesen ezeket saját alkalmazásokhoz
és funkciókhoz bőteni lehet.
PRO_BOT128_INIT()
Inicializálja a PRO-BOT128 alap-hardverét. Először mindig ezt a
funkciót kell behívni.
Példa:
Sub main()
PRO_BOT128_INIT()
… főprogram … End sub
BUTTON() as byte
Lekérdezi SW2-t megszakítással, válasz bájt formában. Az SW2
állapota 0 vagy 1 lehet, és minden gombnyomásra megváltozik
("Toggle").
SYSTEM_CNT()
A Timer 2 interrupt a kerék sebesség kiolvasásához van. Saját
számláló változót is be lehet építeni. A timer felbontása 10ms.
FLL_ON()
A bal első LED bekapcsolása („Front Led Left“).
FLL_OFF()
A bal első LED kikapcsolása („Front Led Left“).
FLR_ON()
A jobb első LED bekapcsolása („Front Led Right“).
FLR_OFF()
A jobb első LED kikapcsolása („Front Led Right“).
BLL_ON()
A bal hátsó LED bekapcsolása („Back Led Left“).
BLL_OFF()
A bal hátsó LED kikapcsolása („Back Led Left“).
BLR_ON()
A jobb hátsó LED bekapcsolása („Back Led Right“).
BLR_OFF()
A jobb hátsó LED kikapcsolása („Back Led Right“).
ENC_RIGHT()
Interrupt rutin a jobb kerék-kódolóhoz. Az „ODO_RIGHT“ változó
növelése 1-gyel.
ENC_LEFT()
Interrupt rutin a bal kerék-kódolóhoz. Az „ODO_RIGHT“ változó
csökkentése 1-gyel
ODO_RESET()
Kerék-kódoló 0-ra állítása.
ENC_LED_ON()
Kerék-kódoló IR-diódák bekapcsolása. Szükség esetén be kell a
rutint hívni. Áramtakarékosság céljából ki is lehet kapcsolni,
ENC_LED_OFF() segítségével.
ENC_LED_OFF()
Kerék-kódoló IR-diódák kikapcsolása, ld. ENC_LED_ON().
BEEP(tone as word, periode as word)
Hang kiadás, a hangok fent a könyvtárban vannak definiálva.
Példa: BEEP(250,150)
SOUND_LEVEL() as word
A hangérzékelő analóg értékét adja (0...1023).
LDR_LEFT() as word
Bal fényérzékelő (LDR) analóg értéke (0...1023).
LDR_RIGHT() as word
Jobb fényérzékelő (LDR) analóg értéke (0...1023).
READ_LINE_LEFT() as word
Bal vonalérzékelő analóg értéke (0...1023).
READ_LINE_RIGHT() as word
Jobb vonalérzékelő analóg értéke (0...1023).
LINE_LED_ON()
Vonalérzékelők LED-jének bekapcsolása.
LINE_LED_OFF()
Vonalérzékelők LED-jének kikapcsolása.
AKKU_SPG() as single
Az akku- ill. elemfeszültséget adja vissza.
GET_ADC(channel as byte) as word
Tetszőleges ADC-csatorna kiolvasása (0...7 csatornák).
DRIVE_INIT()
Hajtás inicializálása. A hajtás használata előtt ezt a rutint kell
behívni.
DRIVE_ON()
Az L293D Enable-bemenetét High-ra állítja. A hajtás be van
kapcsolva.
DRIVE_OFF()
Az L293D Enable-bemenetét Low-ra állítja. A hajtás ki van
kapcsolva.
DRIVE(left as byte, right as byte)
Timer1 PWM a hajtáshoz: értéktartomány 1...128 = hátra,
128...255 = előre, 128 = stop.
motor_POWER(left as byte, right as byte)
Sebesség, értéktartomány 1...255
Megelőzően a MOTOR_DIR segítségével az irányt meg kell adni.
MOTOR_DIR(left as byte, right as byte)
Motorok forgási irányának megadása a MOTOR_POWER
funkcióhoz. 1 = előre 0 = hátra
MOTOR_STOP()
A motor leáll, PWM 128-ra áll.
GO_TURN(distance as integer, degree as integer, speed as
byte)
A PRO-BOT128 egy megadott irányba mozog.
„Distance“ cm-ben (+ = előre ; - = hátra)
„Degree“ fokban (+ = jobbra fodulás ; - = balra fordulás)
„Speed“ 1...255
ACS_INIT()
Ütközésgátló rendszer inicializálása, használat előtt be kell hívni.
ACS_LEFT() as byte
Akadályfelismerő státuszát adja vissza (bal érzékelő): 1 = nincs
akadály 0 = akadály észlelve
ACS_RIGHT() as byte
Akadályfelismerő státuszát adja vissza (jobb érzékelő): 1 = nincs
akadály 0 = akadály észlelve
DELAY_MS(time as integer)
Alternatív időhurok az AbsDelay()-hez. Különbség: a
megszakítások (interrupt) továbbra is le vannak kérdezve, az
interpreter nem áll le teljesen (1ms Time Slot).
MAKE_INT(MSB as byte, LSB as byte) as word
Két bájtot egy szóvá egyesít. Pl. különféle I²C-busz érzékelőkhöz
szükséges.
GRAD_TO_RAD(Val as single) as single
Fok átszámolása ívmértékre.
RAD_TO_GRAD(Val as single) as single
Ívmérték átszámítása fokra.
ABS_INT(Val as integer) as integer
Egész szám abszolút értéke.
ABS_SINGLE(Val as single) as single
Single változó abszolút értéke.
14. HIBAKERESÉS
A LED-ek nem világítanak:
A LED-ek jól vannak-e beforrasztva?
Megfelelő-e az előtét-ellenállás?
Nincs-e hideg forrpont?
Működik a C-Control PRO?
Helyes program van telepítve?
Akku/elem lemerülés?
A csipogó nem működik:
Jól van beépítve?
Hideg forrpont?
Megfelelő program van a C-Control-ban?
C-Control PRO rendben?
Akku/elem lemerülés?
Megfelelő-e az előtét-ellenállás?
Hangszint-érzékelő nem működik:
IC LM386 jól van betéve?
A mikrofon helyesen beforrasztva?
Helyes a beültetés?
Helyes program van eingespielt**?
Akku/elem lemerülés?
Hideg forrpont?
C7 kondenzátor hibás?
ACS nem, vagy nem jól működik:
IR LED-ek jól vannak beépítve?
Helyes program van a C-Control PRO-ban?
Próbál a PWM változni? (ld. program kód)
A zsugorcső jól van az IR diódákra feltéve?
Esetleg változtasson az akadály színén (az IR- nek
probléma a fekete)
C-Control PRO rendben?
Akku/elem lemerülés?