趋光机器人课程设计报告.docx
- 文档编号:7736180
- 上传时间:2023-01-26
- 格式:DOCX
- 页数:13
- 大小:605.83KB
趋光机器人课程设计报告.docx
《趋光机器人课程设计报告.docx》由会员分享,可在线阅读,更多相关《趋光机器人课程设计报告.docx(13页珍藏版)》请在冰豆网上搜索。
趋光机器人课程设计报告
趋光机器人设计
学院:
自动化学院
系别:
智能科学与技术
班级:
智能1002
时间:
2013.4.1—2013.4.13
1,课程设计简述
本次实验是以MultlFlexAVR2为核心,从而控制光源传感器和红外传感器。
其中光源传感器主要检测自然光的光强,红外传感器在一定范围是否有物体,如果光源与红外动态发生变化,MultlFlexAVR2主控器就会动态控制小车执行相对应的趋光与避障的功能。
2,课程设计目的与要求
1、使用创意之星机器人套件组装趋光机器人。
2、机器人能够辨别光源的方向并跟随光源移动。
3、机器人拥有避障功能。
3、设计相应软件程序,并下载至机器人完成设计要求。
3,软件设计总体图
4,趋光机器人实物图
5,趋光机器人软件设计原理图
6,软件程序设计
(1)趋光模块
模块逻辑图:
模块原理:
本模块采用光源传感器,其在一定范围内可以检测到自然光的光强,其输出量为模拟量,范围在0——1023。
轮式趋光机器人采用左右两个光源传感器,从而实现趋光功能。
如果检测到轮式机器人左边光亮时,小车向左转;如果检测到轮式机器人右边光亮时,小车向右转;当检测到轮式机器人左右两边光亮接近时,小车直前行。
(2)避障模块
模块逻辑图:
模块原理:
本模块采用红外传感器,其在一定范围内可以检测到是否有物体存在,当其前方有物体存在时,输出量为0,反之为1。
轮式趋光机器人采用左右两个红外传感器,从而实现避障功能。
如果检测到轮式机器人左边有障碍物时,小车向右转;如果检测到轮式机器人右边有障碍物时,小车向左转;当检测到轮式机器人左右两边都有障碍物时,小车向后退。
7,趋光机器人整体设计
(1)模块分组
趋光机器人主要由四个模块组成:
趋光机器人避障模块,趋光机器人趋光模块,趋光机器人主控器模块,趋光机器人车体模块。
(2)各模块功能
A)趋光机器人避障模块:
介绍:
本模块采用红外接近传感器,其俗称光电开关。
它是利用被检测物对光束的遮挡或反射,由同步回路选通电路,从而检测物体有无的。
光电开关将输入电流在发射器上转换为光信号射出,接收器再根据接收到的光线的强弱或有无对目标物体进行探测。
漫反射式光电开关:
它是一种集发射器和接收器于一体的传感器,当有被检测物体经过时,物体将光电开关发射器发射的足够量的光线反射到接收器,于是光电开关就产生了开关信号。
当被检测物体的表面光亮或其反光率极高时,漫反射式的光电开关是首选的检测模式。
“创意之星”机器人套件配套了2个漫反射式光电开关,其有效距离约为20cm。
如下图,“创意之星”机器人所使用的红外光电开关型号为E18-B0,规格数据为VCC:
5V。
工作电流:
小于100mA。
输出形式:
NPN三极管OC输出。
封装形式:
工程塑料。
红外接近传感器的是开关量传感器,接IO0~IO11的任意一个接口都可以通过NorthSTAR进行数值读取和编程。
由于输出是开关量,只能判断在测量距离内有无障碍物,不能给出障碍的实际距离。
但是该传感器带有一个灵敏度调节旋钮,可以调节传感触发的距离。
“创意之星”套件在出厂前已经将感应触发距离调整到约20cm。
原理:
本模块采用红外传感器,其在一定范围内可以检测到是否有物体存在,当其前方有物体存在时,输出量为0,反之为1。
轮式趋光机器人采用左右两个红外传感器,从而实现避障功能。
如果检测到轮式机器人左边有障碍物时,小车向右转;如果检测到轮式机器人右边有障碍物时,小车向左转;当检测到轮式机器人左右两边都有障碍物时,小车向后退。
B)趋光机器人趋光模块
介绍:
本模块采用光强传感器对可见光波长的光照强度(专业术语即“照度”)很敏感,其核心元件是一只光敏电阻,其输出信号为与光强相关的模拟信号。
下图是“创意之星”的光强传感器,输出模拟量信号,接AD0~AD7的任意一个接口
都可以通过NorthSTAR进行数值读取和编程。
原理:
本模块采用光源传感器,其在一定范围内可以检测到自然光的光强,其输出量为模拟量,范围在0——1023。
轮式趋光机器人采用左右两个光源传感器,从而实现趋光功能。
如果检测到轮式机器人左边光强比右边的光强大150的阀值时,小车向左转;如果检测到轮式机器人右边比左边的光强小150的阀值时,小车向右转;当检测到轮式机器人左右两边光强在
150的阀值之间时,小车直前行。
在车体的上前方,安装有舵机,主要是为了实现光强传感器的左右旋转,当发现左前方光强比较强时,车头的光强传感器便继续往左旋转,进行目标搜索,同理右前方也是如此。
此种做法的优势,便是可以增大小车趋光的搜索范围,加大趋光搜索力度。
D)趋光机器人主控器模块
实物图:
介绍:
MultiFLEX™2-AVR控制器是一款小型机器人通用控制器。
MultiFLEX™2-AVR控制器功能高度集成,具有众多IO、AD接口,能够控制R/C舵机、机器人舵机,具有RS-232接口和RS-422
总线接口,能够胜任常规机器人控制;MultiFLEX™2-AVR控制器开发简单,使用图形化集成开发环境,只需编写程序逻辑流程就能够自动生成C代码,下载到控制器后就可实现机器人的各种功能控制。
开放所有底层函数接口。
功能概述:
对照图示意图2.10,MultiFLEX™2-AVR控制器功能如下所示:
ATmega128@16MHz
6个机器人舵机接口,完全兼容Robotis Dynamixel AX12+
8个R/C舵机接口
12个TTL电平的双向I/O口,GND/SIG/VCC三线制
8个AD转换器接口(0~5V)
2个RS-422总线接口(可挂接1-127个422设备)
1个无源蜂鸣器
通过RS-232与上位机通讯,可选无线通讯模组
使用USB接口的AVR-ISP下载调试器
E)趋光机器人车体模块
模型图:
介绍:
趋光机器人主题架构采用轮式驱动,利用四个舵机工作于电机模式从而驱动四个轮子实现前行,左转,右转,后退功能,车体前方采用采用支架结构,中间安装一个舵机,从而实现车体头部左右转动寻找光源的功能;主控器安装于车体后部,从而实现整个车体的控制功能。
原理:
趋光机器人下体四轮采用万向轮驱动方式,有利于车体360度的方向行走,它的灵活性比平行使轮式安装的车体灵活性更高。
也更加的有优势。
7,收获与体会
通过这次设计,我们懂得了学习的重要性,了解到理论知识与实践相结合的重要意义,学会了坚持、耐心和努力,同时也熟悉了红外传感器和感光传感的工作方式,此外,设计时要有一个清晰的思路和一个完整的的软件流程图;在设计时,不能妄想一次就将整个程序设计好,反复修改、不断改进是程序设计的必经之路;在设计课程过程中遇到问题是很正常的,我们应该将每次遇到的问题记录下来,并分析清楚,然后想出解决的办法,以免下次再碰到同样的问题。
开始设计的时候,采用四轮万向轮驱动方式,但是由于实际的限制,车体只能够安装普通的轮子,这样导致,万向轮驱动的方式的优势没有发挥出来,采用普通轮式的轮子,在车体行进的过程之中,会导致电机输出能量的浪费,当然其效果比如万向轮驱动的方式佳。
同时在设计趋光头部的时候,在底下加了舵机,这样更加有利于光强传感器的左右旋转,使得车体在搜索目标范围的时候其范围与灵活性大大加强,实验证明这样做的优势是很大的。
也得到了比较好的效果。
8,附录与元器件清单:
9.软件程序源码
#include"Apps/SystemTask.h"
uint8SERVO_MAPPING[5]={1,2,3,4,5};
intmain()
{
intlig=0;//左轮速度
intright=0;//右侧光强传感器
intthing1=0;//右侧红外传感器
intleft=0;//左侧光强传感器
intthing=0;//左侧红外传感器
intligNum=0;//右轮速度
intmidNumber=0;//左右光强的差值
MFInit();//初始化
MFInitServoMapping(&SERVO_MAPPING[0],5);
MFSetPortDirect(0x00000FFC);
MFSetServoMode(1,0);
MFSetServoMode(2,1);
MFSetServoMode(3,1);
MFSetServoMode(4,1);
MFSetServoMode(5,1);
thing1=1;
thing=1;
lig=lig+423;
ligNum=ligNum+423;
while
(1)
{
left=MFGetAD
(2);
DelayMS
(2);
right=MFGetAD(3);
thing=MFGetDigiInput(0);
thing1=MFGetDigiInput
(1);
midNumber=left-right;
if(thing==0)//左侧检测到障碍物,右转
{
MFSetServoPos(1,423,512);
MFSetServoRotaSpd(2,512);
MFSetServoRotaSpd(3,512);
MFSetServoRotaSpd(4,512);
MFSetServoRotaSpd(5,512);
MFServoAction();
DelayMS(500);
}
if(thing1==0)//右侧检测到障碍物,左转
{
MFSetServoPos(1,423,512);
MFSetServoRotaSpd(2,-512);
MFSetServoRotaSpd(3,-512);
MFSetServoRotaSpd(4,-512);
MFSetServoRotaSpd(5,-512);
MFServoAction();
DelayMS(500);
}
if((thing==0)&&(thing1==0))//左右侧均检测到障碍物,后退
{
MFSetServoPos(1,423,512);
MFSetServoRotaSpd(2,512);
MFSetServoRotaSpd(3,-512);
MFSetServoRotaSpd(4,512);
MFSetServoRotaSpd(5,-512);
MFServoAction();
DelayMS(500);
}
if(midNumber>=150)//左侧光强大于右侧150,左转
{
lig=lig+40;
if(lig>=550)
{
lig=423;
}
MFSetServoPos(1,lig,512);
MFSetServoRotaSpd(2,-512);
MFSetServoRotaSpd(3,-512);
MFSetServoRotaSpd(4,-512);
MFSetServoRotaSpd(5,-512);
MFServoAction();
DelayMS(100);
}
if(midNumber<=-150)//右侧光强大于左侧150,右转
{
ligNum=ligNum-40;
if(ligNum<=272)
{
ligNum=423;
}
MFSetServoPos(1,ligNum,512);
MFSetServoRotaSpd(2,512);
MFSetServoRotaSpd(3,512);
MFSetServoRotaSpd(4,512);
MFSetServoRotaSpd(5,512);
MFServoAction();
DelayMS(110);
}
MFSetServoPos(1,436,30);
MFSetServoRotaSpd(2,-500);
MFSetServoRotaSpd(3,560);
MFSetServoRotaSpd(4,-500);
MFSetServoRotaSpd(5,500);
MFServoAction();
DelayMS(10);
}
}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 机器人 课程设计 报告