跳到主要内容

轴示教运动

示教移动机器人使用NRC_JogMove(1,1)。第一个参数为轴,根据坐标系来决定是关节运动或合成运动。例如在关节坐标系下,1 表示关节 1 轴,在直角坐标系下,1 表示 X 轴。第二个是正反向,1 为正向运动,-1 为反向运动。

为了防止在发出这条指令后通讯中断导致机器人撞机,我们规定必须每 200ms 发送一次才可连续运动。

比如我们要让 1 轴在正向连续运动 2 秒钟,那么我们需要加入以下代码:

for(int i = 0 ; i < 10 ; i++)
{
NRC_JogMove(1,1);
NRC_Delayms(200); //延时200ms
}
NRC_JogMoveStop(1);//停止点动

NRC_JogMove()定义如下

/**
* @brief 开始点动某轴
* @note 机器人将在 NRC_GetCurrentCoord() 坐标系下, axis 轴沿 dir 方向运动
* @pre 调用该函数前,请将伺服上电使能,可调用 NRC_ServoEnable() 函数将伺服上电
* @warning
* - 进行点动操作时,为保障安全,该函数需要每200ms调用一次,一旦超时未调用,机器人将自动停止点动
* - 进行微动操作时,即使连续调用该函数,也只会执行一次,需执行停止点动后,再次调用该函数,才能执行下一次
* - 成功调用该函数后,机器人将开始运动,请注意安全
* @param axis 要进行点动的轴,取值范围1-6
* @param dir 轴运动方向
* - 1 正向
* - -1 反向
*/
int NRC_JogMove(int axis, int dir);