Go to the documentation of this file.
35 #ifndef KHI_ROBOT_KRNX_DRIVER_H
36 #define KHI_ROBOT_KRNX_DRIVER_H
46 #define KRNX_MSGSIZE 1024
47 #define KRNX_STDAXES 6
48 #define KRNX_MOTION_BUF 10
49 #define KRNX_PRINT_TH 1000
51 struct KhiRobotKrnxRtcData
60 class KhiRobotKrnxDriver :
public KhiRobotDriver
65 bool setState(
const int& cont_no,
const int& state );
67 bool initialize(
const int& cont_no,
const double& period, KhiRobotData& data,
const bool in_simulation =
false )
override;
68 bool open(
const int& cont_no,
const std::string& ip_address, KhiRobotData& data )
override;
69 bool close(
const int& cont_no )
override;
70 bool activate(
const int& cont_no, KhiRobotData& data )
override;
71 bool hold(
const int& cont_no,
const KhiRobotData& data )
override;
72 bool deactivate(
const int& cont_no,
const KhiRobotData& data )
override;
73 bool readData(
const int& cont_no, KhiRobotData& data )
override;
74 bool writeData(
const int& cont_no,
const KhiRobotData& data )
override;
75 bool updateState(
const int& cont_no,
const KhiRobotData& data )
override;
76 bool getPeriodDiff(
const int& cont_no,
double& diff )
override;
77 bool commandHandler( khi_robot_msgs::KhiRobotCmd::Request& req, khi_robot_msgs::KhiRobotCmd::Response& res )
override;
90 int execAsMonCmd(
const int& cont_no,
const char* cmd,
char* buffer,
int buffer_sz,
int* as_err_code );
91 bool retKrnxRes(
const int& cont_no,
const std::string& name,
const int& ret,
const bool error =
true );
94 std::vector<std::string>
splitString(
const std::string& str,
const char& del );
96 bool loadRtcProg(
const int& cont_no,
const std::string& name );
102 #endif // KHI_ROBOT_KRNX_DRIVER_H
bool open(const int &cont_no, const std::string &ip_address, KhiRobotData &data) override
#define KRNX_MAX_CONTROLLER
bool getCurMotionData(const int &cont_no, const int &robot_no, TKrnxCurMotionData *p_motion_data)
bool activate(const int &cont_no, KhiRobotData &data) override
bool loadDriverParam(const int &cont_no, KhiRobotData &data)
float old_comp[KRNX_MAX_ROBOT][KRNX_MAXAXES]
bool readData(const int &cont_no, KhiRobotData &data) override
bool deactivate(const int &cont_no, const KhiRobotData &data) override
bool conditionCheck(const int &cont_no, const KhiRobotData &data)
int sw_dblrefflt[KRNX_MAX_CONTROLLER]
bool commandHandler(khi_robot_msgs::KhiRobotCmd::Request &req, khi_robot_msgs::KhiRobotCmd::Response &res) override
bool setState(const int &cont_no, const int &state)
bool setRobotDataHome(const int &cont_no, KhiRobotData &data)
KhiRobotKrnxRtcData rtc_data[KRNX_MAX_CONTROLLER]
bool syncRtcPos(const int &cont_no, KhiRobotData &data)
bool getPeriodDiff(const int &cont_no, double &diff) override
bool updateState(const int &cont_no, const KhiRobotData &data) override
bool initialize(const int &cont_no, const double &period, KhiRobotData &data, const bool in_simulation=false) override
bool hold(const int &cont_no, const KhiRobotData &data) override
char cmd_buf[KRNX_MSGSIZE]
bool writeData(const int &cont_no, const KhiRobotData &data) override
int status[KRNX_MAX_ROBOT][KRNX_MAXAXES]
std::mutex mutex_state[KRNX_MAX_CONTROLLER]
char msg_buf[KRNX_MSGSIZE]
float comp[KRNX_MAX_ROBOT][KRNX_MAXAXES]
std::vector< std::string > splitString(const std::string &str, const char &del)
bool close(const int &cont_no) override
bool loadRtcProg(const int &cont_no, const std::string &name)
bool retKrnxRes(const int &cont_no, const std::string &name, const int &ret, const bool error=true)
int execAsMonCmd(const int &cont_no, const char *cmd, char *buffer, int buffer_sz, int *as_err_code)