擦写时间机器人调试方法
调试准备工作:
1、从Arduino官方网站www.arduino.cc下载安装Arduino IDE(建议使用1.0.5版本);
2、从www.topmaker.com.cn网站论坛下载擦写时间机器人例程和使用的库文件;
3、准备Arduino UNO R3主控板并下载例程;
4、连接Arduino UNO与抬笔控制舵机(servo1:D2)和写字控制舵机(servo2左-D3、servo3右-D4),此时不要给Arduino UNO供电。
调试方法:
1、先拆下3个舵机摇臂与舵机的连接;
2、给Arduino UNO上电,此时3个舵机会根据程序设定运动15秒左右(确定舵机初始位置),等待3个舵机运动停止后,停止给Arduino UNO上电;
3、按照如下的初始位置连接写字机械臂(舵机摇臂)与舵机servo2、servo3(不要拧动舵机轴),连接不要太紧,方便以后调整。
4、连接抬笔舵机摇臂与舵机(不要拧动舵机轴),连接的角度使白板笔离开白板高于笔擦高度,连接不要太紧,方便以后调整。。
然后给Arduino UNO上电,观察白板笔写字是否正常,然后再根据以下步骤微调程序设置参数。
5、去掉程序语句//#define CALIBRATION前的注释符//,重新下载程序,观察白板笔是否在白板上画的一条线是否直,是否水平。如果不是,调整以下参数:
#define SERVOFAKTOR 650 舵机转动的步长值,一般不需要调整,数字越大,舵机在相同脉冲数量转动的角度越大
由于舵机摆臂安装在舵机轴上的角度不是非常准,以下两条语句调整左右舵机的初始精确位置:
#define SERVOLEFTNULL 2000 调试servo2摆臂为垂直90度,数字增大,顺时针调整。
#define SERVORIGHTNULL 1080 调试servo3摆臂为水平位置0度,数字增大,逆时针调整。
调试完成后,注释掉调试语句//#define CALIBRATION,重新再给Arduino UNO下载程序继续下面调试。
6、以下3条语句分别调整servo1抬笔舵机控制白板笔的高度,修改数字实现:
#define LIFT0 1250 // 写字时的高度,笔尖与白板接触
#define LIFT1 800 // 写字间隙抬笔的高度,笔尖离开白板
#define LIFT2 700 // 白板笔抬起放到笔擦上边的高度
到这一步擦写时间机器人可以正常擦写时间了,基本完成调试。
7、以下语句控制写字的快慢速度,一般不需要修改,数字越小写字速度越快:
#define LIFTSPEED 2000
8、如果不带时钟模块,每次断电后再上电,机器人是从程序内设置的时间点开始写的。设置初始时间是以下语句:
setTime(10,16,0,0,0,0);//setTime(HH,MM,0,0,0,0)
9、机器人每分钟擦写一次时间,如果要让机器人不停擦写时间,可以修改一下语句:
if (last_min != minute()) -------> if (last_min = minute())
注意:每次修改参数后,都要重新下载程序到Arduino UNO。好了,调试完成,你可以愉快的欣赏DIY后的成果了。
关注微信公众号imaker-diy,获取更多有趣好玩的内容吧!淘宝搜索店铺imaker-diy获取制作套件。