Vyuziti registru ~~~~~~~~~~~~~~~~ 00 prikaz 01 kontrolni soucet 02 data 0 03 data 1 04 data 2 05 data 3 06 data 4 07 data 5 08 data 6 09 data 7 0A chybovy kod (!!! NOVE !!!) 0B smerove bity (aktualizuje se prikazem GetPos) 0F stav 1A xpos 0 (aktualizuje se prikazem GetPos) 1B xpos 1 1C xpos 2 1D zpos 0 1E zpos 1 1F zpos 2 Nazev Kod Data ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ InitPos 07 M->S: XOffs2 | XOffs1 | XOffs0 | ZOffs2 | ZOffs1 | ZOffs0 | Dir S->M: --- XMove 19 M->S: XPod0 | XPos1 | XPos2 | XSpd0 | XSpd1 S->M: --- ZMove 1E M->S: ZPod0 | ZPos1 | ZPos2 | ZSpd0 | ZSpd1 S->M: --- SetXSpd 2A M->S: XSpd0 | XSpd1 S->M: --- SetZSpd 2D M->S: ZSpd0 | ZSpd1 S->M: --- SetXLim 33 M->S: XMin0 | XMin1 | XMin2 | XMax0 | XMax1 | XMax2 S->M: --- SetZLim 34 M->S: ZMin0 | ZMin1 | ZMin2 | ZMax0 | ZMax1 | ZMax2 S->M: --- SetXPrm C8 M->S: XCp | XCor | XZero | XAccel | XDecel | XMult S->M: --- SetZPrm CB M->S: ZCp | ZCor | ZZero | ZAccel | ZDecel | ZMult S->M: --- ServoOn CD M->S: --- S->M: --- ServoOff CE M->S: --- S->M: --- Stop D0 M->S: --- S->M: --- XStop D5 M->S: --- S->M: --- ZStop D6 M->S: --- S->M: --- GetPos E0 M->S: --- S->M: --- (0B=Dir,1A..1C=XPos,1D..1F=ZPos) GetDif E3 M->S: --- S->M: XD | ZD XDiag E5 M->S: --- S->M: XD0 | XD1 | XD2 | XS0 | XS1 | XDAC0 | XDAC1 ZDiag E6 M->S: --- S->M: ZD0 | ZD1 | ZD2 | ZS0 | ZS1 | ZDAC0 | ZDAC1 GetMem F8 M->S: A0 | A1 S->M: D0 | D1 | D2 | D3 | D4 | D5 | D6 | D7 Kontrolni soucet se pocita ze vsech predavanych dat a z kodu prikazu. Pokud prikaz vraci data, kontrolni soucet se pocita ze vsech predavanych dat, pouze u GetPos se pocita z registru 0B a 1A..1F. Chybove kody ~~~~~~~~~~~~ 0 ok 1 chybny kod prikazu 2 chybny kontrolni soucet prikazu 3 nepovoleny prikaz (napr. pohyb pri vypnutych servech apod.) 4 prikaz k pohybu mimo povolene meze Poloha se kontroluje i pri zapnutych servech a pokud je mimo povolene meze, dojde k rychlemu zastaveni osy X i Z a ve stavovych bitech serva X se objevi kombinace 111.