发表日期:2016-10-31 17:55:19文章编辑:浏览次数: 标签:
由于近期新加入亮宁机器人使用队伍的师生比较多,不知道如何去检测机器人是否安装正确,还有部分学生大比赛场上无法判断是机器人硬件故障还是自己的程序有问题,为此下面给出两个重要的检测程序,让大家快速判断是否机器人有硬件故障,或是程序本身有错。
一、直流减速电机检测
#include <LNDZ.h>
void init()
{
}
void repeat()
{
motor(30,0); //左电机转动,右转弯
delay(3000);
motor(0,30); //右电机转动,左转弯
delay(3000);
motor(30,30); //前进
delay(3000);
motor(-30,-30); //后退
delay(3000);
motor(0,0); //两电机停止
}
将上述程序输入电脑并下载到机器人身上,然后运行程序,看是否按照程序的意图运转。
若电机转动正常、机器人前进或后退基本走直线,则硬件没故障(主板和电机都是正确的),轮子转动方向不对,只须改动接线方向即可。
如果机器人不走直线,总向一边转弯,则需要调整前后轮安装方向,使前后轴与机身(主板)垂直。
二、地面寻线传感器检测
#include <LNDZ.h>
ground gr(23); //将地面寻线传感器的SS1接在23号柱子上,其余按顺序排列
int ll,l,m,r,rr,n;
void init()
{
winIO;
}
void repeat()
{
ll=gr.getV(1);
l=gr.getV(2);
m=gr.getV(5);
r=gr.getV(3);
rr=gr.getV(5);//读取5个地面寻线值
n=ll+l+m+r+rr;//上面五值之和
winprint(ll); //下面是从电脑屏幕上显示测试值
winprint(l);
winprint(m);
winprint(r);
winprint(rr);
winprint("=");
winprint(n);
if (n<3) beep(200); //如果检测到横线发声
delay(300); //延时0.3秒,不然变化太快,看不清数字
}
将上面的程序输入电脑并下载到机器人里,不断开机器人与电脑的连接,并将机器人拿于手中。此时,地面寻线传感器上六个指示灯全亮(强光下Near灯不亮),点击arduino窗口快捷菜单Serial Motitor,打开串口观察窗口,观察此时正确的显示为:
00000=0
如果这里有一个数字不是0,说明对应的传感器可能损坏或被别的东西所遮挡。
如果全是0,再一个一个试它们的反应,用手指从左向右靠近寻线传感器的每一个探测头,应该看到对应指示灯一个一个地灭,显示窗口中的0一个一个变成1,=号后面的那个0也同时变成1。如果结果与上述描述相同,则传感器没有任何问题。
后续我们将继续刊发其它测试程序。