ImageVerifierCode 换一换
格式:DOCX , 页数:31 ,大小:950.01KB ,
资源ID:8442166      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8442166.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(机电综合实验报告.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

机电综合实验报告.docx

1、机电综合实验报告机电综合实验机电一体化综合控制实验报告履带式机器人 学 院 机械与运载工程学院 班 级 姓 名 学 号 指导教师 日 期 2016年5月6日 湖南长沙摘 要随着现代工业的不断发展,工业自动化显得越发重要,作为合格的工科生,学习和掌握基本的编程知识十分重要。作者首先对单片机原理进行理论进行学习,然后再归纳单片机原理,并以履带机器人作为贯穿实践过程的典型工程对象,使整个学习过程充满挑战和乐趣,大大提高学习效率。同时在学习和实践的过程中,还提高自身团队意识与自学能力。本次机电综合实验,通过王老师等的指导和组员们者们的共同协作,解决了在学习过程中的各种困难,提高了组员的自学能力,同时也

2、通过本次实验感受到实践在学习的重要性。该课程所涉及的内容有:机电一体化,汽车电子设计,智能测量,自动监控系统以及计算机控制及通信。本文主要介绍单片机的一些理论知识及团队在学习过程中的遇到一些问题,同时对一些发现的问题进行相对深入的阐释。关键词:机电一体化;机器人;单片机;自动化第1章 绪论1.1实验目的和意义近年来隨着计算机在社会各领域的滲透,单片机的应用正在不断的走向深入,在实时监测和自动控制的单片机应用系统中,单片机往往被作为一个核心部件来使用。在我们日常生活中单片机的应用日益广泛,在工业领域,机器人就是一个常见的单片机控制装置,机器人在工业生产中扮演着十分重要的角色,随着工业自动化的不断

3、发展,机器人的作用将越来越重要。机电一体化是将机械技术、微电子技术和计算机结合在一起,从而产生具有智能化特性的产品,它是现代机械及电子工业的主要发展方向。机电综合实验的开设目的不是让我们去学一门新的知识,而是通过这门课程的学习将自己所学的机械、计算机及自动控制等知识有机的结合。在课程的开展过程中去掌握如何将所学知识统一到一个具体的项目开发和设计中,从而达到提高综合素质的能力。该课程知识点覆盖全面、结构安排紧凑,对我们的实践与应用具有很强的提高作用。1.2实验内容及要求该课程所涉及的内容有:机电一体化,汽车电子设计,智能测量,自动监控系统以及计算机控制及通信。本实验的实验要求:(1)了解和掌握自

4、动化系统集成的一般过程和方法,在课程中逐步掌握使用、调试、维护自动化系统方面的能力。(2)学会分析和使用常用的电子芯片、电子元件和仪器设备的能力。(3)学会将机械运动和自动化(利用软、硬件)紧密结合。(4)学会查阅科技参考资料,收集实验数据,并对结论进行分析,写好实验报告。1.3实验具体做法及步骤(1)根据任务内容查阅相关资料,分辨需要新学的内容与巩固的内容。(2)项目的原理、结构、运行方式、功能模块、指令等的应用和开发。(3)熟悉项目所需的硬件平台。(4)了解硬件,即实验设备所采用的电子元器件的功能及原理。(5)掌握语言的设计和调试。a.根据自己的情况来选择采用何种编程语言(C或者汇编语言)

5、;b.依据机械运动的方式制定控制方案;c.依据控制方案画出编程方框图;d.依据方框图编写程序;e.将程序输入控制对象,进行调试。(6)首先完成四边形的运动,在此基础上增加避障、拐弯、红外探测、前后跟随等功能。(7)详细记载试验调试过程中的各项实验数据。1.4本章小结本章首先对本实验的目的、意义进行阐释,说明该实验的必要性和重要性,其次对本实验的实验内容和要求进行阐述,有利于该实验开展,最后对该实验的具体做法和步骤进行说明,让实验者对实验有一个整体的把握,达到实验的效果。第2章 实验硬件2.1履带机器人电机履带机器人使用的直流电机调速技术是脉宽调制(PWM)直流调速技术,具有调速范围宽、响应速度

6、快和耗损低等特点。其工作原理是通过 AVR 单片机 ATmega8直接产生 PWM 波形经过电机驱动芯片 L298 分别驱动两个直流电机,PWM 将占空比不同的脉冲变成不同的电压驱动直流电机转动从而得到不同的转速,且实现电机启动、停止、正反转等功能。2.1.1电机技术参数主要技术指标:常规模式下时主要指标(环境温度=25),采用双电源供电(逻辑器件工作电压和电机工作电压)逻辑工作电压:5VDC电机工作电压:1224VDC输出电流(典型值):2A工作温度范围:070储存温度范围:-2080模块尺寸大小:6926mm2.1.2电机接线及安装尺寸 图2.1安装尺寸图2.2接线定义2.1.3通讯协议(

7、1)采用 9600bps,8 位数据位、1 位停止位、无校验位;(2)采用半双工通讯,通讯过程采取一问一答方式;(3) 控制命令采用 5 字节 如下表所示: 1) 电机设定: 如上表格所示,command 命令从 D0-D7,一共 8 位,其功能位 A、D0 为电机方向,1 为正转,0 为反转; B、D1 为左右电机设定,0 为左电机,1 为右电机; C、D2 为 1 的时候电机停止; D、 2) 速度设定:speed 0-255 可以调整3)时间:Time 0-255 可以调整2.2 C51系列单片机一提到单片机,你就会经常听到这样一些名词:MCS51、8051、C51 等等,它们之间究竟是

8、什么关系呢?MCS51 是指由美国 INTEL 公司生产的一系列单片机的总称。这一系列单片机包括了好些品种,如 8031,8051,8751 等,其中 8051 是最典型的产品,该系列单片机都是在 8051的基础上进行功能的增、减、改变而来的,所以人们习惯于用 8051 来称呼 MCS51 系列单片机。INTEL 公司将 MCS51 的核心技术授权给了很多其它公司,所以有很多公司在做以 8051为核心的单片机,当然,功能或多或少有些改变,以满足不同的需求。其中较典型的一款单片机 AT89C51(简称 C51)由于由美国 ATMEL 公司以 8051 为内核开发生产。本教材使用的 AT89S52

9、 单片机是在此基础上改进而来。AT89S52是一种高性能、低功耗的8位单片机,内含8k字节ISP (In-system Programmable,系统在线编程)可反复擦写 1000 次的 FLASH 只读程序存储器,器件采用 ATMEL 公司的高密度、非易失性存储技术制造,兼容标准 MCS51 指令系统及其引脚结构。在实际工程应用中,功能强大的 AT89S52 已成为许多高性价比嵌入式控制应用系统的解决方案。图2.3 C51单片机教学版图2.4 采用C51单片机的机器人2.3硬件连接2.3.1串口的连接机器人教学板通过串口电缆连接到 PC 机(或笔记本电脑)上以便与用户交互。如果计算机有串行接

10、口,直接使用串口连接电缆。如果没有,此时需要使用 USB 转串口适配器,如图2.5所示。只需将该串口线一端的串口连接到机器人教学板,而另一端连接到计算的 USB 口上。图2.5 USB 转串口适配器2.3.2 ISP下载线的连接机器人程序通过连接到 PC 机或者笔记本电脑的并口上的 ISP 下载线来下载到教学板上的单片机内。图2.6所示为 ISP 下载线。下载线一端连接到 PC 机或者笔记本的并行接口上,而另一端(小端)连接到教学板上的程序下载口上。图2.6 ISP下载线2.4本章小结本章主要对实验所用到的硬件进行介绍,避免实验中的不必要的错误的出现,有利于实验的开展。第3章 实验软件3.1软

11、件介绍及获得在本课程的学习中,将反复用到三款软件:Keil uVision2 IDE 集成开发环境、SLISP下载软件、串口调试软件等。(1)Keil uVision2 IDE 集成开发环境 该软件是德国 KEIL 公司出品的 51 系列单片机 C 语言集成开发系统。在KEIL公司的网站上获得该软件的安装包。(2)SL ISP 软件下载工具 该软件是广州天河双龙电子有限公司推出的一款ISP下载软件,使用该软件可以将可执行文件下载到机器人单片机上。该软件的使用需要计算机有并行口。可以在双龙公司的网站中获得该软件。(3)串口调试软件 此软件是用来显示单片机与计算机的交互信息的。在硬件上,计算机至少

12、要有串口或 USB 接口来与单片机教学板的串口连接。教材光盘中提供了该软件的绿色版本,无需安装即可使用。3.2安装软件从网站上,或从教材配套光盘中获得了软件安装包,在教材配套光盘中提供了几个文件夹,它们分别是 Keil uVision2 安装包、ISP 软件安装包、串口调试终端、头文件和本书例程的源码。软件的安装很简单,与安装的其他软件过程一样。安装 Keil uVision2(1)执行 Keil uVision2 安装程序,选择安装 Eval Version 版进行安装(2)在后续出现的窗口中全部选择 Next 按钮,将程序默认安装在C:ProgramFilesKeil 文件目录下(3) 将

13、光盘“头文件”文件夹中的文件拷贝到 C:Program FilesKeilC51INC 文件夹里Keil uVision IDE 软件安装到电脑上的同时,会在你的计算机桌面建立一个快捷方式。安装 ISP 下载软件与此类似。3.3本章小结本章主要介绍了实验软件的获得和安装,是该实验前期的准备工作,也是一个必要工作。第4章 编程与软件使用4.1软件使用双击 Keil uVision IDE 的图标,启动 Keil uVision IDE 程序,就可以得到Keil uVision2 IDE 的主界面。通过用 Project 菜单中的 New Project 命令建立项目文件,过程如下: (1)点击

14、Project,会出现图4.1所示的菜单画面,然后选择“New Project”,将出现图4.2所示对话框 图4.1 Project菜单画面 图4.2 Create New Project对话框(2)在文件名中输入如“HelloRoBot”,保存在你想保存的位置(如 D:中级机器人制作与编程程序Chapter 1),可不用加后缀名,点击“保存”,后会出现图4.3所示的窗口。 图4.3 单片机型号选择窗口 (3)这里要求我们选择芯片的类型,Keil uVision2 IDE 几乎支持所有的 51 核心单片机,并以列表的形式给出。本教材使用的是 Atmel 公司的 AT89S52,在 Keil u

15、Vision2IDE 提供的数据库(Data base)列表中找到此款芯片,然后点击确定,会出现图4.4所示的窗口,询问你是否加载 8051 启动代码,在这里我们选择“否”,不加载。之后会出现图4.5画面,此时即得到了项目文件。 图4.4 是否加载 8051 启动代码提示窗口 图 4.5 目标工程窗口项目文件创建后,这时只有一个框架,紧接着需要向项目文件中添加程序文件内容。Keil uVision2 支持 C 语言程序。可以是已经建立好的程序文件,也可以是新建的程序文件。如果是建立好了的程序文件,则直接用后面的方法添加;如果是新建立的程序文件,则先将程序文件.c 存盘后再添加。点击按钮(或 通

16、 过“File-New”操作)为该项目新建一个 C 语言程序文件,保存后弹出对话窗口,将文件保存在项目文件夹中,在文件类型中填写.C(这里.C 为文件扩展名,表示此文件类型为 C 语言源文件),因为下面将采用 C语言编写第一个程序。4.2工程项目1.单击图4.5中的“+”,将出现图4.6所示的列表;2. 然后右键点击“Source Group 1”,在出现的菜单下选择“Add File To Group“Source Group 1”, 出现 Add Files to Group Source Group1对话框。在该对话框中选择需要添加的程序文件,如刚才建立 HelloRoBot.c,单击

17、Add 按钮,把所选文件添加到项目文件中。一次可添加多个文件。3. 程序文件添加到项目文件中去后,这时上图中“Source Group 1”的前面将出现一个“+”号;单击它将出现刚才添加的源文件名,如图4.7所示(注意:图中显示的文件名是刚才输入的文件名)。 图4.6 添加C语言文件到目标工程 图4.7添加了C语言文件的目标工程双击源文件即可显示源文件的编辑界面。下面来产生下载需要的可执行文件。要产生可执行的.Hex文件,需要对目标工程“Target1”进行编译设置,右键点击“Target 1”,选择“Option for target Target 1”。点击“output”,选择其中的“C

18、reate HEX File”,如图4.8所示,点击确定关闭设置窗口。然后点击 Keil uVision IDE 快捷工具栏中的 ,Keil 的 C 编译器开始根据要生成的目标文件类型对目标工程项目中的 C 语言源文件进行编译。编译过程中,可以观察到源文件中有没有错误产生,如果没有错误产生,在 IDE 主窗口的下面出现如图4.9的提示信息,表明已成功生成了可执行文件,并存储在 C 语言源程序存储的目录中,文件名就是HelloRoBot.Hex。图4.8 设置目标工程的编译输出文件类型图 4.9 编译过程的输出提示信息4.3下载可执行文件到单片机点击 ISP 下载软件图标,打开 ISP 下载软件

19、窗口如图4.10所示,并将通信参数设置成图中所示的参数。第一个为接口类型选择窗口,该窗口的下拉列表中提供了许多接口类型:串口 COM1COM16、并口 LPT1LPT3 以及 USB 接口等。教材使用并口 LPT1。第二个为下载速度选择窗口,该窗口内容与接口类型紧密相连。不同的接口,该窗口就提供不同内容的下载速度。若选择 LPT1,则提供了五种下载速度:TURBO 模式、FAST 模式、NORMAL 模式、SLOW 模式和 TURBO SLOW 模式。在这五种模式下,程序下载速度依次减小。教材中的例程使用的是第一个模式 TURBO 模式,下载速度最快。第三个为单片机型号选择窗口,点击“Flas

20、h”,选择要下载的可执行 HEX 文件HelloRoBot.Hex,选择后点击编程开始下载。如果下载成功,则下面显示“完成次数:x 次”,否则显示“失败次数: x 次”。如果芯片是第二次下载程序,请先选中“擦除”复选框。图 4.10下载软件4.4本章总结本章主要介绍了软件的使用和编程的初级训练,便于后期实验的开展。第5章 履带机器人电机控制程序本章主要对如何使用头文件“BetaRobot.h ”进行一个简要介绍。PWM_Init() 函数该函数的作用是为初始化第一层与第二层之间的 TTL 串口连接。其中 TTL 串口的数据输出口定义为 P1.0 口,在程序设计的过程中,请回避该端口,避免引起机

21、器人运动控制的错误。在 KEIL 工程中,如果要使用到机器人的运动控制部分,那么在主程序的开头部分,就必须首先执行该函数,进行 TTL 串口初始化。如:void main(void) /变量声明 PWM_Init(); /其他操作write_pwm(unsigned char bDirection, unsigned char bSide, unsigned char bStop, unsigned charTimeFactor, unsigned char SpeedByte, unsigned char TimeByte)作用:AT89S52 单片机向直流电机发送指令5.1电机控制参数bD

22、irection:方向参数。1(或 POSITIVE_DIR)为正向,0(或 NEGATIVE_DIR)为反向bSide:左右电机选择参数。0(或 LEFT_MOTOR)为左电机,1(或 RIGHT_MOTOR)为右电机bStop:是否停止。0(或 NOT_STOP)为不停止,1(或 STOP)为停止。该参数为 1 时,电机停止运动,且下面的速度和时间控制参数无效。TimeFactor:时间因数。有 3 个级别,该值为 0 时,单位为 10 毫秒,1 为 100 毫秒,2 为 1000毫秒。也可以用 BY_10MS,BY_100MS,BY_1000MS 等宏定义代替。Speed:速度参数。从慢

23、到快,0255。TimeByte:时间倍数。该数值乘以时间因数,得到的即为实际运动时间。该值范围为 0255。龙人贝塔的运动方向控制:龙人贝塔机器人与实际生活中的坦克车、推土车等依靠履带运动的设备的运动方式是一致的。前进和后退:两轮一个正转,一个反转,以同样的速度运转。具体哪个正转,哪个反转,视前轮驱动和后轮驱动的不同而不同。原地左转或右转:两轮以同样的速度运转,且运动方向一致。成弧线左转或右转:两轮以不一样的速度运转,且运动方向一致。5.2其他头文件uart.h:硬串口的相关程序。包含该文件后,在程序中调用 uart_Init()函数,即可完硬串口的初始化。soft_rs232.h:TTL-

24、RS232 的实现程序。在该文件中,可修改 TTL-RS232 的通信波特率以及输出端口。如果在设置的 TTL-RS232 数据输出端口外接一个 RS232 电平转换芯片并搭载DB9 串口接口,这样相当于构建了 C51 平台上的第二个串口。该程序构建的串口为单工串口。Movement.h:该文件提供了龙人贝塔的运动控制函数的范例。在包含该文件之前,请包含BetaRobot.h 文件。否则,在编译程序的时候会出现错误。5.3电机控制程序示例1.HelloRoBot 从单片机往计算机发送一个字符串2.HighLowLED 使接在P1.5端口上的LED灯闪烁3.SingleWheel 一个轮子转动4

25、.BothWheel 两个轮子转动5.ControlMotorWithComputer 使用串口调试工具控制机器人的运动6.RobotForwardThreeSeconds 机器人向前运动3秒7.ForwardLeftRightBackward 机器人按向前、向左转、向右转和后退的顺序动作8.StartAndStopWithRamping 机器人做加速、匀速(最大速度)和减速的动作9.MovementsWithFunctions 使用多个函数控制机器人的运动10.MovementsWithOneFuntion 仅使用一个函数控制机器人的运动11.NavigationWithSwitch 使用数

26、组控制机器人的运动12.TestLeftIrPair 测试红外发射/接收传感器模块13.FastIrRoaming 利用红外蔽障14.TestWhiskers 测试触须传感器模块15.RoamingWithWhiskers 利用触须蔽障16.TestLeftPhotoresistor 测试光敏电阻传感器模块17.RoamingTowardTheLight 利用光敏电阻跟随光源5.4本章小结通过本章的学习,对履带机器人的编程有了基本的掌握,对以后的训练学习有极大的帮助,同时本章的学习可以帮助读者快速掌握履带机器人的编程控制,节省时间。第6章 履带机器人日字行走6.1程序设计6.2程序代码#inc

27、lude#includeint main(void) int i; uart_Init(); delay_nms(1000); PWM_Init(); for(i=0;i4;i+) write_pwm(POSITIVE_DIR,LEFT_MOTOR,NOT_STOP,BY_100MS,200,78); write_pwm(POSITIVE_DIR,RIGHT_MOTOR,NOT_STOP,BY_100MS,200,78); /向右转1/4圈 delay_nms(2000); write_pwm(NEGATIVE_DIR,LEFT_MOTOR,NOT_STOP,BY_100MS,200,100)

28、; write_pwm(POSITIVE_DIR,RIGHT_MOTOR,NOT_STOP,BY_100MS,200,100); /向前 delay_nms(2000); for(i=0;i4;i+) write_pwm(NEGATIVE_DIR,LEFT_MOTOR,NOT_STOP,BY_100MS,200,80); write_pwm(NEGATIVE_DIR,RIGHT_MOTOR,NOT_STOP,BY_100MS,200,80); /向左转1/4圈 delay_nms(2000); write_pwm(NEGATIVE_DIR,LEFT_MOTOR,NOT_STOP,BY_100M

29、S,200,100); write_pwm(POSITIVE_DIR,RIGHT_MOTOR,NOT_STOP,BY_100MS,200,100); /向前 delay_nms(2000); delay_nms(4000); while(1); 6.3训练拓展S形路线 #include #include int main(void) uart_Init(); /初始化C51串口,波特率为9600bps,8位数据位,1位停 止位,无校验位 printf(Testing for two wheels !rn); PWM_Init(); /初始化C51单片机与PWM直流电机控制模块之间的连接 wri

30、te_pwm(NEGATIVE_DIR, RIGHT_MOTOR, NOT_STOP, BY_1000MS, 250, 70); write_pwm(POSITIVE_DIR, LEFT_MOTOR, NOT_STOP, BY_1000MS, 250, 70); write_pwm(NEGATIVE_DIR, RIGHT_MOTOR, NOT_STOP, BY_1000MS, 250, 70); delay_nms(1200); write_pwm(NEGATIVE_DIR,LEFT_MOTOR,NOT_STOP,BY_1000MS,250,70) write_pwm(NEGATIVE_DIR, RIGHT_MOTOR, NOT_STOP, BY_1000MS, 250, 70); delay_nms(900); write_pwm(POSITIVE_DIR, LEFT_MOTOR, NOT_STOP, BY_1000MS, 250, 70); write_pwm(NEGATIVE_DIR, RIGHT_MOTOR, NOT_STOP, BY_1000MS, 250, 70); delay_nms(1200); write_pwm(POSITIVE_DIR, LEFT_MOTOR, NOT_STOP, BY_1000MS, 250, 70); write_pwm(POSI

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1