wz
  Janulo's  homepage
| +--> Blue
| ---> Blue2
| | |--> Popis
| | |--> Video
| +--> Koleso
| +--> SIR3
| |--> Trimot
+--> Práce
+--> Autor
Počítadlo:
(freezed)
1.gif0.gif6.gif6.gif1.gif7.gif
1led.gif0led.gif6led.gif6led.gif1led.gif7led.gif
od 9.4.2003
AmatFest 2008 - Festival amatérskych filmov
Blue2
Protokol:

Navrhnutý rámec protokolu je na obr. Z tmavo vyznačených znakov sa počíta zabezpečenie CRC.Protokol začína celkovou dĺžkou správy, nasleduje adresa registra, ktorá sa skladá z adresy procesora, v horných štyroch bitoch, maximálny počet 16 procesorov, v dolných štyroch bitoch je adresa registra ponúkanej služby daného slave procesora. Taktiež každý slave procesor môže mať maximálne 16 registrov. Aby sme mohli prenášať rôznorodé dáta, nasleduje ešte pomocná adresa, ktorá bližšie špecifikuje o akú akciu ide pri žiadaní o službu, nie je však povinná, niektoré príkazy ju vôbec nepotrebujú. Takisto ani dáta nie sú povinné a ich dĺžka je premenlivá a závisí od vybraného príkazu, registra.

Slave odpovedá buď rovnakým rámcom s inou adresou a žiadanými dátami alebo pošle aspoň potvrdenie, ktoré obsahuje dĺžku správy, adresu registra žiadaného o službu, ďalej môže nasledovať pomocná adresa a nakoniec zabezpečenie CRC.

Dĺžka správy Adresa registra Pomocná adresa Data ... Data CRC

V tabuľkách je zoznam všetkých adries ponúkaných služieb na najnižšej úrovni riadenia.

Tab.Ponúkané služby procesora motorov
Doska motorov
Adresa registraPomocná adresaPopis dát
0 - Slave vráti (STATUS) slovo motorov
1 - Okamžité zastavenie robota
2 0 Otáčanie pravým kolesom vpred
2 1 Otáčanie pravým kolesom vzad
2 2 Otáčanie ľavým kolesom vpred
2 3 Otáčanie ľavým kolesom vzad
2 4 Otáčanie vpravo
2 5 Otáčanie vľavo
2 6 Pohyb vpred
2 7 Pohyb vzad
2 8 Všeobecný pohyb podľa ďalšieho zadaného slova (ROBOT_GO)
2 9 Všeobecný pohyb podľa zadaného slova a zadaného počtu krokov (ROBOT_GO_STEP)
3 0 Nastavenie rýchlosti motora0 (SPEED0)
3 1 Nastavenie rýchlosti motora1 (SPEED1)
3 2 Nastavenie rýchlosti motora2 (SPEED2)
3 3 Nastavenie rýchlosti motora3 (SPEED3)
3 4 Nastavenie rýchlosti motora0 a motora1 (SPEED0, SPEED1)
3 5 Nastavenie rýchlosti motora0 a motora2 (SPEED0, SPEED2)
3 6 Nastavenie rýchlosti motora0 a motora3 (SPEED0, SPEED3)
3 7 Nastavenie rýchlosti motora1 a motora2 (SPEED1, SPEED2)
3 8 Nastavenie rýchlosti motora1 a motora3 (SPEED1, SPEED3)
3 9 Nastavenie rýchlosti motora2 a motora3 (SPEED2, SPEED3)
3 10 Nastavenie rýchlosti motorov 0, 1, 2 a 3 (SPEED0, SPEED1, SPEED3, SPEED3)
4 0 Vráti polohu motora0 (POLOHA0(hh hl lh ll))
4 1 Vráti polohu motora1 (POLOHA1(hh hl lh ll))
4 2 Vráti polohu motora2 (POLOHA2(hh hl lh ll))
4 3 Vráti polohu motora3 (POLOHA3(hh hl lh ll))
4 4 Vráti polohu motora0 a motora1 (POLOHA0, POLOHA1)
4 5 Vráti polohu motora2 a motora3 (POLOHA2, POLOHA3)
4 6 Vráti polohu motorov 0, 1, 2 a 3 (POLOHA0, POLOHA1, POLOHA2, POLOHA3)
5 - Vráti stav nárazníkových spínačov (SWITCH)
6 0 Zapíska predvoleným tónom
6 1 Zapíska so zadanou frekvenciou a dĺžkou trvania (FREK, DELAY)
7 0 Nastavenie rýchlosti pre jednosmerný motor0 (SPEED_PWM0)
7 1 Nastavenie rýchlosti pre jednosmerný motor1 (SPEED_PWM1)
7 2 Pohyb vpred s jednosmernými motormi
7 3 Pohyb vzad s jednosmernými motormi
7 4 Stop pohybu s jednosmernými motormi
7 5 Otáčanie pravým kolesom vpred s jednosmernými motormi
7 6 Otáčanie pravým kolesom vzad s jednosmernými motormi
7 7 Otáčanie ľavým kolesom vpred s jednosmernými motormi
7 8 Otáčanie ľavým kolesom vzad s jednosmernými motormi
7 9 Otáčanie vpravo s jednosmernými motormi
7 10 Otáčanie vľavo s jednosmernými motormi
7 11 Nastavenie rýchlosti pre jednosmerný motor0 a motor1 (SPEED_PWM0, SPEED_PWM1)
7 12 Nastavenie frekvencie pre PWM (PWM_FREKVENCY)
Tab. Ponúkané služby procesora snímačov
Doska snímačov
Adresa registra Pomocná adresa Popis dát
10 - Slave vráti (STATUS) slovo snímačov
11 0 Vráti hodnotu analógového kanála 0 (ADC0)
11 1 Vráti hodnotu analógového kanála 1 (ADC1)
11 2 Vráti hodnotu analógového kanála 2 (ADC2)
11 3 Vráti hodnotu analógového kanála 3 (ADC3)
11 4 Vráti hodnotu analógového kanála 4 (ADC4)
11 5 Vráti hodnotu analógového kanála 5 (ADC5)
11 6 Vráti hodnotu analógového kanála 6 (ADC6)
11 7 Vráti hodnotu analógového kanála 7 (ADC7)
12 0 Vráti hodnotu frekvenčného kanála 0 (FREK0l, FREK0h)
12 1 Vráti hodnotu frekvenčného kanála 1 (FREK1l, FREK1h)
12 2 Vráti hodnotu frekvenčného kanála 2 (FREK2l, FREK2h)
12 3 Vráti hodnotu frekvenčného kanála 3 (FREK3l, FREK3h)
13 Vráti hodnotu od ultrazvukového snímača vzdialenosti (SONARl, SONARh)
14 Vráti hodnotu z 8-bitového vstupného registra (PIO51)
15 Nastaví výstupný 8-bitový register (REG99)
16 0 Konfigurácia 0 (CONFIG0)
16 1 Konfigurácia 1 (CONFIG1)


Janulo © 2003 janulo@pobox.sk   Aktuálny čas:   Ľuboš, Ľubor 24-09-2020 meniny má 1    Pridať do obľúbených   Čas načítania: 0.018 sekúnd   06:51 18:56    Table 'janulo.counter' doesn't exist