Instructions
Upozornění! Tato funkce může seřídit servomotor do libovolné pozice, včetně libovolné mechanické 
pozice, která však není k dispozici pro systém robota. Použitím těchto příkazů může dojít 
k nevratnému poškození robota. Doporučujeme proto použít bezpečnější funkci ´vMoveBody()´. 
Příklad: vServo1ToPosition(35); 
vServo2ToPosition(x) 
x = 0-65635 
Seřízení předního (legs) servomotoru do pozice x. Upozornění! Tato funkce může seřídit servomotor 
do libovolné pozice, včetně mechanické pozice, které však není k dispozici pro systém robota. 
Použitím těchto příkazů může dojít k poškození robota. Doporučujeme proto použít bezpečnější funkci 
´vMoveLegs()´. 
Příklad: vServo1ToPosition(35); 
vRs232Write(x,y) 
x = text 
y = text length, 0-255 
Příklad: 
void vRs232Write(“Hello World”,11) ; 
vRs232Read(x,y,z) 
x = pointer to an array to store a text for reception 
y = expected text length 
z = timeout 
Příklad: 
char RxData[10] ; 
vRs232Read(&RxData[0],4,0); 
Po přijetí 4. symbolů se funkce ukončí. 
vWaitMilliseconds(x) 
x = waiting time in milliseconds, 0 - 65635 
Tato funkce zaokrouhlí interval v milisekundách, například čas 23 na 30. 
Příklad: 
Prodleva 1 s. 
vWaitMilliseconds(1000); 
vBeep(x,y) 
x = pitch number, 1-3906 
y = duration in milliseconds. 
Příklad: 
vBeep(200,100); 
Kombinované funkce 
Následující funkce jsou kombinacemi několika funkcí, jež zahrnují použití jedné nebo více základních 
funkcí. Tyto funkce naleznete v souboru „yetimove.c“. 
vStandUpright() 
Tento příkaz zajistí uvedení robota do vzpřímené pozice. Oba servomotory „body“ a „legs“ budou 
seřízené do výchozí, nulové pozice. 
vMoveBody(x,y) 
x = tělo robota se naklání vpravo nebo vlevo, z polohy -58 (korespondující s krajní pravou polohou) 
do polohy -58 (korespondující s krajní levou polohou). 
y = execution speed in milliseconds / step, 0 – 65635. 
Tato funkce zaokrouhlí časovou prodlevu na desetiny milisekund například 17 na 20. 
Příklad: 
vMoveBody(-25,20); 
Ze vzpřímené pozice bude vyžadovat příkaz vMoveBody(-25,20) dobu 25*20=500 ms= 0,5 sekundy 
k dosažení náklonu na pravou stranu a polohy –25. 
vMoveLegs(x,y) 
x = pravá noha robota se přesune vpřed nebo vzad (a opačná noha se bude přesouvat do opačné 
polohy a směru) v rozsahu -58 (pravá noha vpřed) a +58 (levá noha vpřed) rychlost na vykonání 
pohybu v milisekundách / krok, 0 – 65635. Tato funkce zajistí zaokrouhlení časového průběhu 
na desetiny milisekund, například 3 na 10. 
Příklad: 
vMoveLegs(-25,20); 
Ze vzpřímené polohy pomocí příkazu vMoveLegs(-25,20) bude zapotřebí 25 x 20=500 ms= 0,5 
sekundy na pohyb pravé nohy robota do přední pozice –25 (zatímco levá noha se bude pohybovat 
dozadu). 
vMoveForwardXSteps(x) 
x = počet kroků vpřed, 0-255 
Příklad: 
vMoveForwardXSteps(3); 
Robot vykoná 3 kroky směrem dopředu. Robot se ze vzpřímené pozice rozejde vykročením pravou 
nohou. 
vMoveBackwardXSteps(x) 
x = počet kroků dozadu, 0-255 
Příklad: 
vMoveBackwardXSteps(4); 
Robot vykoná 3 kroky směrem vzad. Ze vzpřímené pozice se rozejde vykročením pravou nohou. 
vTurnLeftXSteps(x,y) 
x = počet kroků, 0-255 
y = ‘true’ respectivily ‘false’, true = pohyb vpřed, false = pohyb vpřed. 
Příklad: 
vTurnLeftXSteps(2,false); 
Robot se bude otáčet dozadu, přitom vykoná 2 kroky během svého otáčení vlevo. 
vTurnRightXSteps(x,y) 
x = počet kroků, 0-255 
y = ‘true’ respectivily ‘false’, true = pohyb vpřed, false = pohyb vpřed. 
Příklad: 
vTurnLeftXSteps(3,true); 
Robot se bude otáčet dozadu, přitom vykoná 3 kroky během svého otáčení vpravo. 
vCalibrateServos() 
V kombinaci s komunikací prostřednictvím software Hyperterminal bude tato funkce provádět 
rekalibraci servo systému pokaždé, když upravíte mechanické pozice servomotorů nebo končetin 
robota. Stejně tak může být tato funkce použita pro dálkové ovládání robota a jeho servomotorů 
z klávesnice prostředí Hyperterminal pomocí tlačítek W, A, S a D. 
Poznámka: V případě provedení kalibrace servomotorů můžete tuto funkci ze souboru odstranit. 
Tím dojde k nepatrnému zmenšení objemu programového souboru. 










