自研扩展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条件

01-self-developed_external_IO_module

2、Wait条件

02-self-developed_external_IO_module

3、条件Exp输入框

以IF条件为例子

03-self-developed_external_IO_module.png

04-self-developed_external_IO_module.png

Aubo Robotics all right reserved,powered by Gitbook文件修订时间: 2024-12-27 13:03:46

results matching ""

    No results matching ""