MDX-15,20の制御用library

Files at this revision

API Documentation at this revision

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: