实验报告机器人控制技术基础实验报告
华北电力大学
实 验 报 告
|
|
实验名称: 机器人控制技术基础
课程名称: 机器人控制技术基础
|
|
实 验 人:
成 绩: 18.00秒
指导教师:
实验日期: 年 月 日- 月 日
华北电力大学工程训练中心
第一部分:单片机开发板
实验一:LED灯闪烁实验
实验目的:通过此实验,让大家初步掌握单片机的 IO 口的基本操作和感受单片机学习的乐趣
实验内容:用常用的指令编写,控制接在 P0.0 上的 LED 发光二极管 L0 做闪烁实验
硬件说明:通过原理图,我们可以发现,要让接在 P0.0 的 L0 做亮灭实验,得先选通 LED 的电源供应三极管(这是我们设计的一个特殊地方,是为了方便和同时接在 P0 口的数码管实现端口的复用,节省 IO 口)然后只要让 P0.0 的端口电平为 0,L0 就会亮.让 P0.0 的端口电平为 1,L0 就回灭.端口,所以实验前要先把液晶模块的使能端置为 0由于 P0 口是 LED、数码管和液晶模块共用端口,所以实验前要先把液晶模块的使能端置为 0
以下的程序将实现这个功能
源程序如下:
ORG 0000H ;CPU 上电复位后,从 0000H 开始执行
LJMP MAIN ;跳转到 MAIN 主程序ORG 0100H ;主程序从 0100H 开始,避开中断入口区地址
MAIN:
CLR P3.7 ;选通 LED 的电源供应三极管
CLR P2.7 ;由于 P0 口是 LED、数码管和液晶模块共用端口,所以实验前要先把液晶模
块的使能端置为 0
MOV P0,#0FFH ;把 P0 口置一,熄灭 8 个发光二极管
LOOP:
CLR P0.0 ;把 P0.0 清零,低电平点亮 L0
LCALL DELAY ;调用延时子程序
SETB P0.0 ;把 P0.0 置 1,高电平熄灭 L0
LCALL DELAY ;调用延时子程序
LJMP LOOP ;回到 LOOP,不断的循环执行程序
;延时子程序,改变 R5、R6、R7的值,可以改变延时的时间,从而改变 LED 的闪烁速度速度
DELAY: MOV R5,#40
D1: MOV R6,#20
D2: MOV R7,#248
DJNZ R7,$
DJNZ R6,D2
DJNZ R5,D1
RET
END
实验二:按键控制的LED灯亮灭实验
实验目的:掌握简单的按键检测编程方法
实验内容:
监视按键 K16(接在 P3.3 端口上,即 INT1),用发光二极管 L0(接在单片机 P0.0 端口上)显示开关状态。如果按住按键,则 L0 亮;松开按键,则 L0 熄灭。开关状态的检测过程:单片机对开关状态的检测相对于单片机来说,是从单片机的 P3.3 端口输入信号,而输入的信号只有高电平和低电平两种,当松开按键 K16,即输入端口悬空为高电平当按住按键 K16,按键被接到地,即输入低电平单片机可以采用 JBBIT,REL 或者是 JNBBIT,REL 指令来完成对开关状态的检测即可。源程序如下:
ORG 0000H
LJMP STARTORG 0100H
START:
CLR P3.7 ;选通 WS系列实验板的 LED流水灯的电源控制端
CLR P2.7 ;由于 P0 口是 LED、数码管和液晶模块共用端口,所以实验前要先把液晶模块的
使能端置为 0
JB P3.3,LOOP ;检测按键,当 P3.3=1则跳到 LOOP;当 P3.3=0则往下执行
CLR P0.0 ;灯亮
SJMP START
LOOP: SETB P0.0 ;灯灭
SJMP START ;回到主程序循环检测按键END
第二部分:机器人小车
内容简介:机器人小车完成如图规定的赛道,从规定的起点开始,记录完成赛道一圈的时间。必须在三分钟之内完成,超时无效。其中当小车整体都在赛道外时停止比赛,视为犯规, 小车不规定运动方向,顺时针和逆时针都可以采用,但都从规定的起点开始记录时间。
作品优点及应用前景:
可靠性高,编程简单单片机执行一条指令的时间是μs级,执行一个扫描周期的时间为几ms乃至几十ms。相对于电器的动作时间而言,扫描周期是短暂的,可以认为在一个扫描周期内输入端子的状态是不变的,而对其状态变化的采集和处理也是实时的,从而满足了实