正点原子开发板 alientek_develop_board cancmder
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

118 lines
8.9 KiB

2 years ago
  1. #include "intelligent_winding_robot_ctrl.hpp"
  2. #include <stdlib.h>
  3. using namespace std;
  4. using namespace iflytop;
  5. #define TAG "IntelligentWindingRobotCtrl"
  6. int32_t IntelligentWindingRobotCtrl::initialize_device() { return 0; }
  7. // �ŷ϶���
  8. int32_t IntelligentWindingRobotCtrl::paifei_duoji_moveto_reset() { return 0; }
  9. int32_t IntelligentWindingRobotCtrl::paifei_duoji_moveto_press() { return 0; }
  10. /**
  11. * @brief ̽
  12. */
  13. int32_t IntelligentWindingRobotCtrl::raoxiantance_duoji_move_to_reset() { return 0; }
  14. int32_t IntelligentWindingRobotCtrl::raoxiantance_duoji_move_to_get_thickness() { return 0; }
  15. /**
  16. * @brief ѹ߶
  17. */
  18. int32_t IntelligentWindingRobotCtrl::yaxian_duoji_move_to_reset() { return 0; }
  19. int32_t IntelligentWindingRobotCtrl::yaxian_duoji_move_to_press_pos() { return 0; }
  20. int32_t IntelligentWindingRobotCtrl::yaxian_duoji_move_to_wait_for_press_pos() { return 0; }
  21. /**
  22. * @brief
  23. */
  24. int32_t IntelligentWindingRobotCtrl::xianlajin_duoji_move_to_reset() { return 0; } // ��λ
  25. int32_t IntelligentWindingRobotCtrl::xianlajin_duoji_move_to_line_entry_pos() { return 0; } // ����λ
  26. int32_t IntelligentWindingRobotCtrl::xianlajin_duoji_move_to_tight_line_pos() { return 0; } // �����
  27. int32_t IntelligentWindingRobotCtrl::xianlajin_duoji_move_to_loose_line_pos() { return 0; } // �����
  28. /**
  29. * @brief ߶
  30. */
  31. int32_t IntelligentWindingRobotCtrl::jiaxian_duoji_move_to_reset_pos() { return 0; }
  32. int32_t IntelligentWindingRobotCtrl::jiaxian_duoji_move_to_clamp_pos() { return 0; }
  33. /**
  34. * @brief
  35. */
  36. int32_t IntelligentWindingRobotCtrl::scissors_move_reset_pos() { return 0; } // block
  37. int32_t IntelligentWindingRobotCtrl::scissors_cut() { return 0; } // block
  38. /**
  39. * @brief еۼ߶
  40. */
  41. int32_t IntelligentWindingRobotCtrl::arm_jiaxian_duoji_move_to_reset_pos() { return 0; }
  42. int32_t IntelligentWindingRobotCtrl::arm_jiaxian_duoji_move_to_clamp_pos() { return 0; }
  43. /**
  44. * @brief е۹צ
  45. */
  46. int32_t IntelligentWindingRobotCtrl::arm_hook_claws_reset() { return 0; }
  47. int32_t IntelligentWindingRobotCtrl::arm_hook_claws_move_to_half_pos() { return 0; }
  48. int32_t IntelligentWindingRobotCtrl::arm_hook_claws_move_to_full_pos() { return 0; }
  49. /**
  50. * @brief XYƽ̨
  51. */
  52. int32_t IntelligentWindingRobotCtrl::xy_platform_reset() { return 0; }
  53. /**
  54. * @brief Z
  55. */
  56. int32_t IntelligentWindingRobotCtrl::z_axis_reset() { return 0; }
  57. int32_t IntelligentWindingRobotCtrl::z_axis_move_to(int32_t pos) { return 0; }
  58. int32_t IntelligentWindingRobotCtrl::xy_reset() { return 0; } // ��λ
  59. int32_t IntelligentWindingRobotCtrl::xy_move_to_zero() { return 0; } // �ƶ�����λ
  60. int32_t IntelligentWindingRobotCtrl::xy_take_clip(int32_t index) { return 0; } // ȡ����
  61. int32_t IntelligentWindingRobotCtrl::xy_take_line() { return 0; } // ȡ��
  62. int32_t IntelligentWindingRobotCtrl::xy_take_back_clip() { return 0; } // �ŵ���
  63. int32_t IntelligentWindingRobotCtrl::xy_remove_line() { return 0; } // �Ƴ���
  64. /**
  65. * @brief
  66. */
  67. int32_t IntelligentWindingRobotCtrl::start_winding() { return 0; }
  68. int32_t IntelligentWindingRobotCtrl::stop_winding() { return 0; }
  69. int32_t IntelligentWindingRobotCtrl::reset_and_check_device() { return 0; }
  70. int32_t IntelligentWindingRobotCtrl::setcfg(const char* cfgname, int32_t cfgvalue) { return 0; }
  71. int32_t IntelligentWindingRobotCtrl::dumpcfg() { return 0; }
  72. int32_t IntelligentWindingRobotCtrl::initialize(ZModuleDeviceManager* dm, ICmdParser* cmdparse) {
  73. m_dm = dm;
  74. m_cmdparse = cmdparse;
  75. cmdparse->regCMD("paifei_duoji_moveto_reset", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return paifei_duoji_moveto_reset(); });
  76. cmdparse->regCMD("paifei_duoji_moveto_press", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return paifei_duoji_moveto_press(); });
  77. cmdparse->regCMD("raoxiantance_duoji_move_to_reset", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return raoxiantance_duoji_move_to_reset(); });
  78. cmdparse->regCMD("raoxiantance_duoji_move_to_get_thickness", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return raoxiantance_duoji_move_to_get_thickness(); });
  79. cmdparse->regCMD("yaxian_duoji_move_to_reset", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return yaxian_duoji_move_to_reset(); });
  80. cmdparse->regCMD("yaxian_duoji_move_to_press_pos", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return yaxian_duoji_move_to_press_pos(); });
  81. cmdparse->regCMD("yaxian_duoji_move_to_wait_for_press_pos", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return yaxian_duoji_move_to_wait_for_press_pos(); });
  82. cmdparse->regCMD("xianlajin_duoji_move_to_reset", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return xianlajin_duoji_move_to_reset(); });
  83. cmdparse->regCMD("xianlajin_duoji_move_to_line_entry_pos", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return xianlajin_duoji_move_to_line_entry_pos(); });
  84. cmdparse->regCMD("xianlajin_duoji_move_to_tight_line_pos", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return xianlajin_duoji_move_to_tight_line_pos(); });
  85. cmdparse->regCMD("xianlajin_duoji_move_to_loose_line_pos", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return xianlajin_duoji_move_to_loose_line_pos(); });
  86. cmdparse->regCMD("jiaxian_duoji_move_to_reset_pos", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return jiaxian_duoji_move_to_reset_pos(); });
  87. cmdparse->regCMD("jiaxian_duoji_move_to_clamp_pos", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return jiaxian_duoji_move_to_clamp_pos(); });
  88. cmdparse->regCMD("scissors_move_reset_pos", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return scissors_move_reset_pos(); });
  89. cmdparse->regCMD("scissors_cut", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return scissors_cut(); });
  90. cmdparse->regCMD("arm_jiaxian_duoji_move_to_reset_pos", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return arm_jiaxian_duoji_move_to_reset_pos(); });
  91. cmdparse->regCMD("arm_jiaxian_duoji_move_to_clamp_pos", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return arm_jiaxian_duoji_move_to_clamp_pos(); });
  92. cmdparse->regCMD("arm_hook_claws_reset", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return arm_hook_claws_reset(); });
  93. cmdparse->regCMD("arm_hook_claws_move_to_half_pos", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return arm_hook_claws_move_to_half_pos(); });
  94. cmdparse->regCMD("arm_hook_claws_move_to_full_pos", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return arm_hook_claws_move_to_full_pos(); });
  95. cmdparse->regCMD("xy_platform_reset", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return xy_platform_reset(); });
  96. cmdparse->regCMD("z_axis_reset", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return z_axis_reset(); });
  97. cmdparse->regCMD("z_axis_move_to", "(int32_t pos)", 1, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return z_axis_move_to(atoi(paraV[0])); });
  98. cmdparse->regCMD("xy_reset", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return xy_reset(); });
  99. cmdparse->regCMD("xy_move_to_zero", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return xy_move_to_zero(); });
  100. cmdparse->regCMD("xy_take_clip", "(int32_t index)", 1, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return xy_take_clip(atoi(paraV[0])); });
  101. cmdparse->regCMD("xy_take_line", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return xy_take_line(); });
  102. cmdparse->regCMD("xy_take_back_clip", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return xy_take_back_clip(); });
  103. cmdparse->regCMD("xy_remove_line", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return xy_remove_line(); });
  104. cmdparse->regCMD("start_winding", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return start_winding(); });
  105. cmdparse->regCMD("stop_winding", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return stop_winding(); });
  106. cmdparse->regCMD("reset_and_check_device", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return reset_and_check_device(); });
  107. cmdparse->regCMD("setcfg", "(const char* cfgname, int32_t cfgvalue)", 2, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return setcfg(paraV[0], atoi(paraV[1])); });
  108. cmdparse->regCMD("dumpcfg", "()", 0, [this](int32_t paramN, const char** paraV, ICmdParserACK* ack) { return dumpcfg(); });
  109. return 0;
  110. }