xCore-SDK  0.4.1
xCore SDK C# API
rokae::clr::Cobot类 参考

协作机器人通用接口 更多...

#include <robot_cli.hpp>

类 rokae::clr::Cobot 继承关系图:
rokae::clr::BaseRobot rokae::clr::xMateCr5Robot rokae::clr::xMateErProRobot rokae::clr::xMateRobot

Public 成员函数

void enableDrag (DragOpt::Space space, DragOpt::Type type, [Out] ErrorCode^% ec)
 打开拖动 更多...
 
void disableDrag ([Out] ErrorCode^% ec)
 关闭拖动 更多...
 
void disableCollisionDetection ([Out] ErrorCode^% ec)
 关闭碰撞检测功能 更多...
 
void startRecordPath ([Out] ErrorCode^% ec)
 开始录制路径。录制的时长需要限制在30分钟以内, 此接口不会阻塞等待,录制完毕调用stopRecordPath()来停止录制 更多...
 
void stopRecordPath ([Out] ErrorCode^% ec)
 停止录制路径, 若录制成功(无错误码)则路径数据保存在缓存中 更多...
 
void cancelRecordPath ([Out] ErrorCode^% ec)
 取消录制, 缓存的路径数据将被删除 更多...
 
void saveRecordPath (String^ name, String^ saveAs, [Out] ErrorCode^% ec)
 保存录制好的路径 更多...
 
void replayPath (String^ name, double rate, [Out] ErrorCode^% ec)
 运动指令-路径回放。 和其它运动指令类似,调用replayPath之后,需调用moveStart才会开始运动。 更多...
 
void removePath (String^ name, bool removeAll, [Out] ErrorCode^% ec)
 删除已保存的路径 更多...
 
List< String^> queryPathLists ([Out] ErrorCode^% ec)
 查询已保存的所有路径名称 更多...
 
void setxPanelVout (xPanelOpt::Vout opt, [Out] ErrorCode^% ec)
 设置xPanel对外供电模式。注:仅部分机型支持xPanel功能,不支持的机型会返回错误码 更多...
 
array< bool > getKeypadState ([Out] ErrorCode^% ec)
 获取末端按键状态,不支持的机型会返回错误码。 更多...
 
- Public 成员函数 继承自 rokae::clr::BaseRobot
void disconnectFromRobot ([Out] ErrorCode^% ec)
 断开与机器人连接。断开前会停止机器人运动, 请注意安全。 更多...
 
Info robotInfo ([Out] ErrorCode^% ec)
 查询机器人基本信息 更多...
 
String sdkVersion ()
 查询xCoreSDK版本 更多...
 
PowerState powerState ([Out] ErrorCode^% ec)
 查询机器人上下电以及急停状态 更多...
 
void setPowerState (Boolean on, [Out] ErrorCode^% ec)
 机器人上下电。注: 只有无外接使能开关或示教器的机器人才能手动模式上电。 更多...
 
OperateMode operateMode ([Out] ErrorCode^% ec)
 查询机器人当前操作模式 更多...
 
void setOperateMode (OperateMode mode, [Out] ErrorCode^% ec)
 切换手自动模式 更多...
 
OperationState operationState ([Out] ErrorCode^% ec)
 查询机器人当前运行状态 (空闲, 运动中, 拖动开启等) 更多...
 
array< double > posture (CoordinateType ct, [Out] ErrorCode^% ec)
 获取机器人法兰或末端的当前位姿 更多...
 
CartesianPosition cartPosture (CoordinateType ct, [Out] ErrorCode^% ec)
 获取机器人法兰或末端的当前位姿 更多...
 
array< double > baseFrame ([Out] ErrorCode^% ec)
 读取基坐标系, 相对于世界坐标系 更多...
 
Toolset toolset ([Out] ErrorCode^% ec)
 查询当前工具工件组信息. 更多...
 
void setToolset (Toolset^ toolset, [Out] ErrorCode^% ec)
 设置工具工件组信息。 更多...
 
void setToolset (System::String^ toolName, System::String^ wobjName, [Out] ErrorCode^% ec)
 使用已创建的工具和工件,设置工具工件组信息 更多...
 
void setBaseFrame (Frame^ frame, [Out] ErrorCode^% ec)
 设置基坐标系, 设置后仅保存数值,重启控制器后生效 更多...
 
void setMotionControlMode (MotionControlMode mode, [Out] ErrorCode^% ec)
 设置运动控制模式. 更多...
 
void moveReset ([Out] ErrorCode^% ec)
 运动重置, 清空已发送的运动指令, 清除执行信息。 Robot类在初始化时会调用一次运动重置。RL程序和SDK运动指令切换控制,需要先运动重置。 更多...
 
void stop ([Out] ErrorCode^% ec)
 暂停机器人运动; 暂停后可调用moveStart()继续运动。若需要完全停止,不再执行已添加的指令,可调用moveReset() 更多...
 
void executeCommand (MoveCommand::Type type, List< MoveCommand^>^ cmd, [Out] ErrorCode^% ec)
 执行单条或多条运动指令,调用后机器人立刻开始运动 更多...
 
void moveAppend (MoveCommand::Type type, List< MoveCommand^>^ cmd, System::String^% cmdId, [Out] ErrorCode^% ec)
 添加单条或多条运动指令, 添加后调用moveStart()开始运动 更多...
 
void setDefaultSpeed (int speed, [Out] ErrorCode^% ec)
 设定默认运动速度,初始值为100。该数值表示末端最大线速度(单位mm/s), 自动计算对应关节速度。 关节速度百分比划分为5个的范围:

  • < 100 10%
  • 100 ~ 200 30%
  • 200 ~ 500 50%
  • 500 ~ 800 80%
  • > 800 100%

空间旋转速度为200°/s 更多...

 
void setDefaultZone (int zone, [Out] ErrorCode^% ec)
 设定默认转弯区。初始值为为0 (fine, 无转弯区)。该数值表示运动最大转弯区半径(单位:mm), 自动计算转弯百分比 转弯百分比划分4个范围:

  • < 1 0 (fine)
  • 1 ~ 20 10 %
  • 20 ~ 60 30 %
  • > 60 100 %
更多...
 
void setDefaultConfOpt (bool forced, [Out] ErrorCode^% ec)
 设置是否使用轴配置数据(confData)计算逆解。初始值为false 更多...
 
void moveStart ([Out] ErrorCode^% ec)
 开始/继续运动 更多...
 
void setMaxCacheSize (int number, [Out] ErrorCode^% ec)
 设置最大缓存指令个数,指发送到控制器待规划的路径点个数,允许的范围[1,300],初始值为30。 更多...
 
void adjustSpeedOnline (double scale, [Out] ErrorCode^% ec)
 动态调整机器人运动速率,非实时模式时生效。 更多...
 
void getAcceleration (double% acc, double% jerk, [Out] ErrorCode^% ec)
 读取当前加/减速度和加加速度 更多...
 
void adjustAcceleration (double acc, double jerk, [Out] ErrorCode^% ec)
 调节运动加/减速度和加加速度。如果在机器人运动中调用,当前正在执行的指令不生效,下一条指令生效 更多...
 
EventInfo queryEventInfo (Event eventType, [Out] ErrorCode^% ec)
 查询事件信息。 更多...
 
void setEventWatcher (Event eventType, EventCallbackDelegate^ callback, [Out] ErrorCode^% ec)
 设置接收事件的回调函数。 更多...
 
void startJog (JogSpace space, double rate, double step, unsigned index, bool direction, [Out] ErrorCode^% ec)
 开始jog机器人,需要切换到手动操作模式。调用此接口并且机器人开始运动后,无论机器人是否已经自行停止,都必须调用stop()来结束jog操作,否则机器人会一直处于jog的运行状态。 更多...
 
void clearServoAlarm ([Out] ErrorCode^% ec)
 清除伺服报警 更多...
 
List< LogInfo^> queryControllerLog (unsigned count, LogInfo::Level level, [Out] ErrorCode^% ec)
 查询控制器最新的日志 更多...
 
void setDI (unsigned int board, unsigned int port, bool state, [Out] ErrorCode^% ec)
 设置数字量输入信号,仅当输入仿真模式打开时可以设置(见setSimulationMode()) 更多...
 
bool getDI (unsigned int board, unsigned int port, [Out] ErrorCode^% ec)
 查询数字量输入信号值 更多...
 
void setDO (unsigned int board, unsigned int port, bool state, [Out] ErrorCode^% ec)
 设置数字量输出信号值 更多...
 
bool getDO (unsigned int board, unsigned int port, [Out] ErrorCode^% ec)
 查询数字输出量信号值 更多...
 
double getAI (unsigned board, unsigned port, [Out] ErrorCode^% ec)
 读取模拟量输入信号值 更多...
 
void setAO (unsigned board, unsigned port, double value, [Out] ErrorCode^% ec)
 设置模拟量输出信号 更多...
 
void setSimulationMode (bool state, [Out] ErrorCode^% ec)
 设置输入仿真模式 更多...
 
template<typename T >
void readRegister (System::String^ name, List< T >^% value, [Out] ErrorCode^% ec)
 读取寄存器数组。 更多...
 
template<typename T >
void readRegister (System::String^ name, unsigned index, T% value, [Out] ErrorCode^% ec)
 读取寄存器值。可读取单个寄存器,或按索引读取寄存器数组 更多...
 
template<typename T >
void writeRegister (System::String^ name, unsigned index, T value, [Out] ErrorCode^% ec)
 写寄存器值。可写入单个寄存器,或按索引写入寄存器数组中某一元素。 更多...
 
List< RLProjectInfo^> projectsInfo ([Out] ErrorCode^% ec)
 查询工控机中RL工程名称及任务 更多...
 
void loadProject (String^ name, System::Collections::Generic::List< System::String^>^ tasks, [Out] ErrorCode^% ec)
 加载工程 更多...
 
void ppToMain ([Out] ErrorCode^% ec)
 程序指针跳转到main。调用后,等待控制器解析完工程后返回,阻塞时间视工程大小而定,超时时间设定为10秒。 更多...
 
void runProject ([Out] ErrorCode^% ec)
 开始运行当前加载的工程 更多...
 
void pauseProject ([Out] ErrorCode^% ec)
 暂停运行工程 更多...
 
void setProjectRunningOpt (double rate, bool loop, [Out] ErrorCode^% ec)
 更改工程的运行速度和循环模式 更多...
 
List< WorkToolInfo^> toolsInfo ([Out] ErrorCode^% ec)
 查询当前加载工程的工具信息 更多...
 
List< WorkToolInfo^> wobjsInfo ([Out] ErrorCode^% ec)
 查询当前加载工程的工件信息 更多...
 
void recoverState (int item, [Out] ErrorCode^% ec)
 根据选项恢复机器人状态 更多...
 

Protected 属性

rokae::BaseCobot * robot
 
- Protected 属性 继承自 rokae::clr::BaseRobot
rokae::BaseRobot * robot
 
EventCallbackNativeDelegate _moveNativeDelegate
 
EventCallbackNativeDelegate _safetyNativeDelegate
 

额外继承的成员函数

- Protected 成员函数 继承自 rokae::clr::BaseRobot
void _moveEventCallback (const std::unordered_map< std::string, std::any > &info)
 
void _safetyEventCallback (const std::unordered_map< std::string, std::any > &info)
 
- 静态 Protected 属性 继承自 rokae::clr::BaseRobot
static EventCallbackDelegate _moveManagedDelegate
 
static EventCallbackDelegate _safetyManagedDelegate
 

详细描述

协作机器人通用接口

在文件 robot_cli.hpp675 行定义.

成员函数说明

◆ cancelRecordPath()

void rokae::clr::Cobot::cancelRecordPath ( [Out] ErrorCode^%  ec)

取消录制, 缓存的路径数据将被删除

参数
ec错误码

◆ disableCollisionDetection()

void rokae::clr::Cobot::disableCollisionDetection ( [Out] ErrorCode^%  ec)

关闭碰撞检测功能

参数
ec错误码

◆ disableDrag()

void rokae::clr::Cobot::disableDrag ( [Out] ErrorCode^%  ec)

关闭拖动

参数
ec错误码

◆ enableDrag()

void rokae::clr::Cobot::enableDrag ( DragOpt::Space  space,
DragOpt::Type  type,
[Out] ErrorCode^%  ec 
)

打开拖动

参数
space拖动空间。轴空间拖动仅支持自由拖拽类型
type拖动类型
ec错误码

◆ getKeypadState()

array< bool > rokae::clr::Cobot::getKeypadState ( [Out] ErrorCode^%  ec)

获取末端按键状态,不支持的机型会返回错误码。

参数
ec错误码
返回
末端按键的状态, 长度为7的数组。 末端按键编号见《xCore机器人控制系统使用手册》末端把手的图示

◆ queryPathLists()

List< String^> rokae::clr::Cobot::queryPathLists ( [Out] ErrorCode^%  ec)

查询已保存的所有路径名称

参数
ec错误码
返回
名称列表, 若没有路径则返回空列表

◆ removePath()

void rokae::clr::Cobot::removePath ( String^  name,
bool  removeAll,
[Out] ErrorCode^%  ec 
)

删除已保存的路径

参数
name要删除的路径名称
removeAll是否删除所有路径
ec错误码。若路径不存在,错误码不会被置位

◆ replayPath()

void rokae::clr::Cobot::replayPath ( String^  name,
double  rate,
[Out] ErrorCode^%  ec 
)

运动指令-路径回放。 和其它运动指令类似,调用replayPath之后,需调用moveStart才会开始运动。

参数
name要回放的路径名称
rate回放速率, 应小于3.0, 1为路径原始速率。注意当速率大于1时,可能产生驱动器无法跟随错误
ec错误码

◆ saveRecordPath()

void rokae::clr::Cobot::saveRecordPath ( String^  name,
String^  saveAs,
[Out] ErrorCode^%  ec 
)

保存录制好的路径

参数
name路径名称
saveAs重命名,可传入空字符串。如果已录制好一条路径但没有保存,则用该名字保存路径。如果没有未保存的路径,则将已保存的名为"name"的路径重命名为"saveAs"
ec错误码

◆ setxPanelVout()

void rokae::clr::Cobot::setxPanelVout ( xPanelOpt::Vout  opt,
[Out] ErrorCode^%  ec 
)

设置xPanel对外供电模式。注:仅部分机型支持xPanel功能,不支持的机型会返回错误码

参数
opt模式
ec错误码

◆ startRecordPath()

void rokae::clr::Cobot::startRecordPath ( [Out] ErrorCode^%  ec)

开始录制路径。录制的时长需要限制在30分钟以内, 此接口不会阻塞等待,录制完毕调用stopRecordPath()来停止录制

参数
ec错误码

◆ stopRecordPath()

void rokae::clr::Cobot::stopRecordPath ( [Out] ErrorCode^%  ec)

停止录制路径, 若录制成功(无错误码)则路径数据保存在缓存中

参数
ec错误码

类成员变量说明

◆ robot

rokae::BaseCobot* rokae::clr::Cobot::robot
protected

在文件 robot_cli.hpp677 行定义.


该类的文档由以下文件生成: