自研扩展IO板 AUBOPE使用文档
1. 0、准备工作
配置文件:/root/AuboRobotWorkSpace/RobotServer/plugins/externalIO/externalIO.conf
#是否打印接收的信息。
print_recv_data = 0;
#是否打印发送的数据。
print_send_data = 0;
#扩展板ID列表,以逗号分隔。
external_io_id_list = [2];
2. 1、SDK接口
/**
* @brief 获取所有已连接的IO扩展板信息
* @param devices_info_list 传出参数,IO扩展板信息列表
*
* @return 调用成功返回ErrnoSucc;错误返回错误号
*/
int robotServiceGetExternalIOBoardDevicesList(std::vector<aubo_robot_namespace::ExternalIOBoardInfo> &devices_info_list);
/**
* @brief 根据ID,设置IO扩展板对应名称的数字量输出状态
* @param id IO扩展板ID
* @param addr 指定ID下需要设置的扩展板状态输出名称。
* @param value 输出状态。
* @return 调用成功返回ErrnoSucc;错误返回错误号
*/
int robotServiceSetExternalIOBoardDOState(uint16_t id, std::string name, uint16_t value);
/**
* @brief 根据ID,设置IO扩展板对应地址的数字量输出状态
* @param id IO扩展板ID
* @param addr 指定ID下需要设置的扩展板状态输出地址。
* @param value 输出状态。
* @return 调用成功返回ErrnoSucc;错误返回错误号
*/
int robotServiceSetExternalIOBoardDOState(uint16_t id, int addr, uint16_t value);
/**
* @brief 根据ID,设置IO拓展板的数字量输出状态阵列
* @param id IO扩展板ID
* @param value IO扩展板输出状态阵列
* @return 调用成功返回ErrnoSucc;错误返回错误号
*/
int robotServiceSetExternalIOBoardDOStateArray(uint16_t id, uint16_t value);
/**
* @brief 根据类型与ID,获取IO扩展板对应地址的IO状态
* @param type 需要获取的状态IO类型
* @param id IO扩展板ID
* @param name 指定ID下需要获取状态的扩展板IO名称;
* @param value 传出参数,对应名称的IO状态。
* @return 调用成功返回ErrnoSucc;错误返回错误号
*/
int robotServiceGetExternalIOBoardIOStatus(aubo_robot_namespace::ExternalIOType type, uint16_t id, std::string name, uint16_t &status);
/**
* @brief 根据类型与ID,获取IO扩展板对应地址的IO状态
* @param type 需要获取的状态IO类型
* @param id IO扩展板ID
* @param addr 指定ID下需要获取状态的扩展板IO地址;
* @param value 传出参数,对应地址的IO状态。
* @return 调用成功返回ErrnoSucc;错误返回错误号
*/
int robotServiceGetExternalIOBoardIOStatus(aubo_robot_namespace::ExternalIOType type, uint16_t id, int addr, uint16_t &status);
/**
* @brief 根据类型与ID,获取IO拓展板的数字量IO状态阵列
* @param type 需要获取的状态IO类型
* @param id IO扩展板ID
* @param value 传出参数IO扩展板IO状态阵列
* @return 调用成功返回ErrnoSucc;错误返回错误号
*/
int robotServiceGetExternalIOBoardIOStatusArray(aubo_robot_namespace::ExternalIOType type, uint16_t id, uint16_t &status);
3. 2、脚本接口
1、set_external_io_status 设置扩展IO接口状态
1.1 set_external_io_status(int id, int addr, uint16_t value)
根据地址(0x00 ~ 0x0F),设置扩展DO状态
1.2 set_external_io_status(int id, string name, uint16_t value) 根据扩展IO名称(DO_00 ~ DO_15)设定扩展DO状态
1.3 set_external_io_status(int id, uint16_t value)
设置所有数字输出。bit15~0对应DO15~DO00。
2、get_external_io_status 获取扩展IO接口状态
2.1 int get_external_io_status(ExternalIOType type, int id, int addr)
根据类型(ExternalIOType.ExternalIOBoardDO或ExternalIOType.ExternalIOBoardDI)、ID 与 地址(0x00 ~ 0x0F)获取扩展IO当前状态
2.2 int get_external_io_status(ExternalIOType type, int id, string name)
根据类型(ExternalIOType.ExternalIOBoardDO或ExternalIOType.ExternalIOBoardDI)、ID 与 名称(DO_00 ~ DO_15 或DI_00 ~ DI_15)获取扩展IO当前状态
2.3 int get_external_io_status(ExternalIOType type, int id)
根据类型(ExternalIOType.ExternalIOBoardDO或ExternalIOType.ExternalIOBoardDI)、ID 获取扩展IO当前状态阵列
4. 3、条件界面
1、Set条件

2、Wait条件

3、条件Exp输入框
以IF条件为例子
