机器人实训总结
更新时间:2023-12-05 01:54:01 阅读量: 教育文库 文档下载
机器人实训总结
学 院: 专业班级:
姓名学号: 指导教师:
2013年7月
机电接口设计与综合实验
为期一周的机器人实训转眼就过去了,个人认为这是我上大学以来参加的最有意思的一次课程设计了,在实训期间,同学们亲自动手组装机器人小车并通过修改调试程序使自己的小车完成要求的任务,将平时学习的C语言和单片机知识运用到了实际操作中,极大地调动了我们学习的积极性并提高了动手能力,是我们受益匪浅!
任务一:组装小车并完成基本调试
实训第一天我们的主要任务便是将实训机器人小车按要求组装好,这看似简单的任务是极其需要耐心与细致的,每一个螺丝都要拧紧,每一个电子元件都要安装于指定位置,特别要注意左右轮的接线,如果反接将会使小车反向运行。经过半小时的摸索,我们的小车终于成形,但当给它录入一个前行程序时,小车竟然莫名其妙的在原地打转,我们仔细查阅了实训指导书,才发现问题所在,原来,每一个新组装的机器人都需要进行调零检测才能保证其运行的准确,调零程序如下:
#include
uart_Init();
printf(\ while(1); {
P1_0=1;
delay_nus(1500); P1_0=0;
delay_nus(20000); } }
将程序录入小车并运行,旋转车轮旁的旋钮直至车轮停转便达到了调零的目的。接下来,我们便要完成实训要求的第一个程序:控制小车LED灯的亮灭。通过参考指导书的已有程序,我们比较顺利的完成了该任务,任务程序如下:(在试验中需要注意LED灯的正负极)
#include
#include
2
机电接口设计与综合实验
}
uart_Init();
printf(\while(1) {
P1_0=0; P1_1=1;
delay_nms(500); P1_0=1; P1_1=0;
delay_nms(500); }
任务二:机器人触觉导航
该任务要求机器人碰到障碍物时,接触开关会有所察觉,通过编程让机器人避开障碍物。在安装胡须时,需要注意胡须距传感立柱既不能太远也不能太近,太远会导致机器人碰到障碍物后反应过慢,太近则会使机器人在前方没有障碍物的情况下进行避障操作,影响小车正常行进。胡须机器人避障程序如下:
#include
int P1_4state(void)//获取P1_4的状态,右胡须 {
return (P1&0x10)?1:0; }
int P2_3state(void)//获取P2_3的状态,左胡须 {
return (P2&0x08)?1:0; }
void Forward(void) {
P1_1=1;
delay_nus(1700); P1_1=0; P1_0=1;
delay_nus(1300); P1_0=0;
delay_nms(20); }
void Left_Turn(void) {
int i;
for(i=1;i<=26;i++) {
P1_1=1;
delay_nus(1300); P1_1=0; P1_0=1;
3
机电接口设计与综合实验
delay_nus(1300); P1_0=0;
delay_nms(20); } }
void Right_Turn(void) {
int i;
for(i=1;i<=26;i++) {
P1_1=1;
delay_nus(1700); P1_1=0; P1_0=1;
delay_nus(1700); P1_0=0;
delay_nms(20); } }
void Backward(void) {
int i;
for(i=1;i<=65;i++) {
P1_1=1;
delay_nus(1300); P1_1=0; P1_0=1;
delay_nus(1700); P1_0=0;
delay_nms(20); } }
int main(void) {
uart_Init();
printf(\
while(1) {
if((P1_4state()==0)&&(P2_3state()==0)) { Backward(); //向后 Left_Turn();//向左 Left_Turn();//向左 }
else if(P1_4state()==0) { Backward();//向后
4
机电接口设计与综合实验
Left_Turn();//向左 }
else if(P2_3state()==0) { Backward();//向后 Right_Turn();//向右 } else Forward();//向前 } }
任务三:机器人红外线导航
任务二触须接触导航是依靠接触变形来探测物体,而本任务是依靠红外线探测机器人前进路线,然后确定何时有光线从被探测物体反射回来,通过检测反射回来的红外光就可以确定前方是否有物体。
在本次任务中,我们需要使用三极管9013,这是因为C51的IO驱动能力较弱,这里我们加入三极管使其工作在开关状态。三极管是一种控制元件,主要用来控制电流大小,简单地说,是用小电流去控制大电流。红外导航避障程序如下:
#include
#define LeftIR P1_2 //左边红外接收连接到P1_2 #define RightIR P3_5 //右边红外接收连接到P3_5 #define LeftLaunch P1_3 //左边红外发射连接到P1_3 #define RightLaunch P3_6 //右边红外发射连接到P3_6
void IRLaunch(unsigned char IR) {
int counter; if(IR=='L')
for(counter=0;counter<38;counter++) {
LeftLaunch=1;
_nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); LeftLaunch=0;
_nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); }
if(IR=='R')
for(counter=0;counter<38;counter++)//右边发射 {
RightLaunch=1;
5
正在阅读:
机器人实训总结12-05
安徽省两淮框架结构工业厂房施工组织设计 - 完整版05-14
小学五年级春季数学入学试题08-09
电线截面功率对照表07-30
站务员主要工作职责04-04
我的烦恼作文600字20篇04-04
西南大学旅游与酒店管理毕业论文题目07-28
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 机器人
- 总结