MDX-15,20の制御用library
Revision 9:5ee05e9c5aca, committed 2018-10-14
- Comitter:
- suupen
- Date:
- Sun Oct 14 00:12:37 2018 +0000
- Parent:
- 8:e65e532d1933
- Commit message:
- ??????
Changed in this revision
MDX20.cpp | Show annotated file Show diff for this revision Revisions of this file |
MDX20.h | Show annotated file Show diff for this revision Revisions of this file |
diff -r e65e532d1933 -r 5ee05e9c5aca MDX20.cpp --- a/MDX20.cpp Sat Dec 03 13:21:20 2016 +0000 +++ b/MDX20.cpp Sun Oct 14 00:12:37 2018 +0000 @@ -254,7 +254,9 @@ return (ans); } - +/** + * + */ uint8_t MDX20::reciveData(void) { char ans = 0; @@ -337,6 +339,9 @@ return (ans); } +/** + * @note モータを動かすためには位置設定コマンドの発行が必要 + */ uint8_t MDX20::motorOn(void) { uint8_t ans; @@ -361,12 +366,49 @@ return ans; } +uint8_t MDX20::userXYOriginInitial(void) +{ + char buffer[50]; + uint8_t ans; + + ans &= sendData("^PA;"); + ans &= sendData("!MC0;"); + + sprintf(buffer, "Z%d,%d,%d;",0, 0, D_position[Z_z] - D_userOriginPosition[Z_z]); + ans &= sendData(buffer); + + return ans; +} + +uint8_t MDX20::userZOriginInitial(void) +{ + char buffer[50]; + uint8_t ans; + + ans &= sendData("^PA;"); + ans &= sendData("!MC0;"); + + sprintf(buffer, "!ZM%d;",0); + ans &= sendData(buffer); + + return ans; +} + uint8_t MDX20::final(void) { uint8_t ans; + +// モータを止めて、Z軸を機械原点に戻す。(X,Y軸はその場にとどめる) + ans &= sendData("!MC0;"); + ans &= sendData("^PA;"); + ans &= sendData("!ZO0;"); + ans &= sendData("!ZO0;"); // Z axis origin initialaize + +/* このコードだとZ軸が原点に戻らないままXY実を原点に戻すためワークに引っ掛かり破損する ans &= sendData("!MC0;"); ans &= sendData("^PA;"); ans &= sendData("Z0,0,0;"); +*/ clearPositon(); ans &= sendData("^IN;"); return (ans); @@ -431,3 +473,18 @@ return motorState; } +/** MDX-20の接続確認 + * @return true:接続あり false:なし + */ +int32_t MDX20::connectCheck(void) +{ + int32_t ans = false; + + if(_cts == 0){ + ans = true; + }else{ + ans = false; + } + return (ans); + } +
diff -r e65e532d1933 -r 5ee05e9c5aca MDX20.h --- a/MDX20.h Sat Dec 03 13:21:20 2016 +0000 +++ b/MDX20.h Sun Oct 14 00:12:37 2018 +0000 @@ -33,6 +33,9 @@ uint8_t userOriginInitial(void); + uint8_t userXYOriginInitial(void); + uint8_t userZOriginInitial(void); + uint8_t final(void); // uint8_t zeroSetting(void); @@ -42,6 +45,7 @@ void offsetZAxisAdjustment(int16_t axisData); int32_t motorStateCheck(void); + int32_t connectCheck(void); private: