NRC_SetAllServoMapRelation(std::vector<int>
servoMap,int syncGroupSum, int syncType[], std::vector<std::vector<int>
> syncServoMap)
设置伺服映射关系
说明:
机器人轴与伺服对应关系为:
1 轴 连接 第 2 个伺服
2 轴 连接 第 3 个伺服
3 轴 连接 第 1 个伺服
4 轴 连接 第 4 个伺服
5 轴 连接 第 6 个伺服
6 轴 连接 第 5 个伺服
则 servoMap 的值为 { 2, 3, 1, 4, 6, 5 }
外部轴个数与伺服对应关系
无外部轴,则 syncGroupSum 值为 0,
一个单轴变位机,则 syncGroupSum 值 1,syncType 为{1,0,0},syncServoMap 为{{7}}
两个双轴变位机,一个地轨,则 syncGroupSum 值 3,syncType 为{2,2,3},syncServoMap 为{{7,8},{9,10},{11}}
类型
int=>设置伺服映射关系
返回值 | 说明 |
---|---|
0 | 表示函数正常调用 |
-101 | 无效的输入参数 |
-102 | 目标对象不存在,一般出现在系统初始化未完成时,调用其他函数时可能返回该值 |
-103 | 目标对象当前处于不可操作状态 |
参数 Option
参数 | 类型 | 说明 |
---|---|---|
servoMap | std::vector < int> | 伺服映射关系,个数为设置的机器人总轴数,值为每一轴所连接的伺服编号 |
syncGroupSum | int | 外部轴组最大数目,最大为 3,最多支持两个双变位机加一个地轨 |
syncType[] | int | 外部轴组类型,0:无,1:单轴变位机,2:双轴变位机,3:地轨 |
syncServoMap | std::vector < int> | 外部轴伺服映射关系 |
示例代码
std::vector`<int>` servoMap = { 0, 0, 0, 0, 0, 0 };//机器人映射
int syncGroupNum = 2;
int syncType[]={2,1,0};
std::vector<std::vector`<int>`> syncServoMap={{0,0},{0,0},{0,0}};
NRC_SetAllServoMapRelation(servoMap,syncGroupNum, syncType, syncServoMap);//设置伺服映射关系