基于Kinect的绘图机器人搭建与调试指南
1. 机器人舵机控制
在控制绘图机器人的舵机时,我们使用Arduino库将角度值发送到Arduino板。以下是控制舵机移动的代码:
arduino.analogWrite(servo1pin, 90-round(degrees(angle1))); // move servo 1
arduino.analogWrite(servo2pin, 90-round(degrees(angle2))); // move servo 2
arduino.analogWrite(servo3pin, round(degrees(angle3))); // move servo 3
由于屏幕上的图形解释与舵机的实际操作方式存在差异,我们需要进行一些修改。首先,要将角度从弧度转换为度,同时改变值的正负(翻转方向)并加上半圈旋转。这是因为旋转角度范围的中间值不是0(若为0则范围是 -90 到 90 度),而是90(范围是 0 到 180 度),不过基础舵机是个例外,它与图形表示中的角度相同。
连接Arduino并启动程序后,所有舵机会伸直成一条线,然后开始跟随屏幕上的几何图形。操作时尽量使用柔和的动作,否则舵机可能会突然移动,若组装结构不够牢固,可能会导致松动。通常,先校准舵机是个好主意,方法是拆卸子臂,在舵机从Arduino接收到信号(程序未运行时)后再重新连接。舵机通常会自动设置为90度,所以将机器人固定在笔直位置后,它们会以此作为起始点。
根据机械设置,可能需要微调机器人应用于关节的角度。可以通过对角度使用乘数来实现,例如:
超级会员免费看
订阅专栏 解锁全文
1万+

被折叠的 条评论
为什么被折叠?



