基于WIFI的智能屏障小车的设计与实现.pdf

上传人:hg158****2095 文档编号:80754753 上传时间:2023-03-23 格式:PDF 页数:42 大小:4.14MB
返回 下载 相关 举报
基于WIFI的智能屏障小车的设计与实现.pdf_第1页
第1页 / 共42页
基于WIFI的智能屏障小车的设计与实现.pdf_第2页
第2页 / 共42页
点击查看更多>>
资源描述

《基于WIFI的智能屏障小车的设计与实现.pdf》由会员分享,可在线阅读,更多相关《基于WIFI的智能屏障小车的设计与实现.pdf(42页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、 毕 业 设 计论 文 设计(论文)题目:基于 WIFI 的智能屏障小车的硬件设计与实现 学生姓名:钱 兴 晖 指导教师:吴刚 副教授 二级学院:计算机工程学院 专 业:计算机科学与技术 班 级:12 计算机科学与技术 2 班 学 号:1205104045 提交日期:2021 年 4 月 20 日 辩论日期:2021 年 5 月 8 日 目 录 摘 要.Abstract.1 绪 论.1 1.1 课题背景与意义.1 1.1.1 课题背景.1 1.1.2 课题意义.1 1.2 研究现状.1 1.3 论文的主要研究内容及论文构造.2 2 智能小车硬件系统设计.3 2.1 智能小车的车体构造选择.3

2、2.2 智能小车控制系统方案.3 2.3 电源系统设计.4 2.4 微控制器模块.5 微控制器选择.5 .5 2.5 障碍物检测模块.7 .7 线传感器.9 2.6 电机驱动模块.10 .10 .10 设计.11 2.7 通信拓展模块.13 2.7.1 无线通信模块.13 2.8 硬件设计中注意的问题.15 2.9 本章总结.15 页脚下载后可删除,如有侵权请告知删除!3 红外避障功能的软件设计.16 3.1 软件开发平台介绍.16 3.2 障碍物检测算法.16 3.3 自动避障算法.17 4 智能小车系统仿真与调试.19 4.1 仿真器的选择.19 4.2 调试过程.20 4.2.1 WIF

3、I 控制功能调试.20 4.2.2 超声波屏障功能调试.20 4.2.3 红外避障功能调试.21 5 总结与展望.22 5.1 设计总结.22 5.2 设计展望.22 参考文献.23 附 录.25 致 谢.37 基于 WIFI 的智能屏障小车的硬件设计与实现 摘 要 智能机器人是一种不需要人为操控,能够自行根据系统集成的传感器反应的信号作出自主行为判断的智能化移动平台。本次设计的智能小车就是一种基于在平坦路面上能够自动屏蔽障碍物的四轮移动机器人。本设计可以根据加载的传感器不同完成不同的功能。本次设计的智能小车是采用了 STM32 嵌入式微处理器控制平台,能够通过添加 WIFI模块来实现智能小车

4、的远程控制,另外分别安装了超声波传感器和红外发射接收对管来实现智能小车的自动避障功能。在软件设计中选用了 Keil MDK 嵌入式集成开发环境,并对各功能进展了模块化编程。关键词:智能小车;STM32;MDK IV Based on the WIFI hardware design and realization of the intelligent barrier of the car Abstract It is an intelligent robot with no human control,able to make their own independent judgments b

5、ehavior based on intelligent mobile platform system integration sensor feedback signal.The Smart car is a kind of design on a flat surface can be automatically shielded four-wheel mobile robot based on obstacle.The design can perform different functions according to different load sensor.The Smart c

6、ar design is the use of the STM32 microprocessor embedded control platform,can be achieved by adding a WIFI module Smart car remote control,in addition to the ultrasonic sensors were installed and infrared emission receiving tube to achieve smart car automatic obstacle avoidance Features.Keil MDK ch

7、osen integrated development environment for embedded software design,and all functions are modular programming.Key words:Smart car;STM32;MDK 页脚下载后可删除,如有侵权请告知删除!1 绪 论 1.1 课题背景与意义 1.1.1 课题背景 2004 年 1 月,美国国家航空航天局研制的“勇气号和“机遇号火星探测车1登陆火星,它们将在火星上进展探索,为科学家研究火星提供珍贵的资料,这是人类走出地球步入太空的一大进步2。而在更早的十九世纪中期,美国和前苏联就进展

8、了屡次对月球的探测活动,更是发射了多个月球探测车,这大大加强了人类对于月球的认识3。在不久的将来,智能机器人将成为人类探索宇宙奥秘的先锋,为人类了解宇宙提供珍贵的研究资料。1.1.2 课题意义 进入了二十一世纪,各项科学技术都有了长足的开展,特别是在工业社会的需求下,智能机器人技术的开展可以用日新月异来形容。当今世界上智能机器人已经大大普及到了,例如探测危险和排除险情、军事侦察和环境探测、平安监测和受损评估等各项方面4。并且由于智能机器人在工业生产中不怕危险环境、比人工更不易疲劳、能够根据人类的设置做一些人类不容易做的生产任务等特性,现在很多航天、军事、核工业工厂已经开场普及智能机器人的使用了

9、。另外智能机器人的系统研究涉及了众多学科的知识,对智能机器人的研究也就是对科学的大力开展,例如自动控制理论、微电子技术、传感器技术等,这些技术在将来的智能化研究中占有了很高的比重。近年来各国的机器人大赛上都增设了智能小车的工程5,并且由于智能小车的普适性,智能小车能够实现的功能也是繁多,这对技术的学习具有很大的作用。因此,不管是从学习研究还是实际应用来讲,智能小车的研究有很高的价值。1.2 研究现状 美国得益于上世纪 50 年代的经济高速开展,吸引力全世界的人才到了美国外乡,各种科学技术也是飞速开展,自动导航、人工智能就在那个时候开场了研究。在此根底上国外的智能机器人成果也是络绎不绝的研究出来

10、。到了二十世纪 80 年代,美国国防高级研究方案局对地面无人作战平台的立项研究真正将智能机器人的概念推向了群众,自此,各国相继开展了智能机器人的研究6。在国内,对智能机器人进展研究的国家科研机构和高校研究团队很多。其中,清华大学是最早开场从事智能机器人的相关研究的,经过几年的时间到了 1994 年,清华大学的智能移动机器人的研究就取得了重大突破,研究成果也通过了国际相关机构的鉴定。但是由于我国在这方面的研究起步还是比拟晚的,所以具有突破性的研究成果就比拟少了。当然,在近年来国家对科研的大力开展,我国在智能机器人的一些领域已经开展到了世界领先水平。其中我国完全自主研发的月球车“玉兔已于 2021

11、 年搭乘“嫦娥三号卫星登页脚下载后可删除,如有侵权请告知删除!陆月球,“玉兔月球车能够完成自主定位、导航,并且需要在月球完成探索、考察、收集和分析月球采样的任务7。论文的主要研究内容及论文构造 由 WIFI 无线遥控的智能小车设计系统采用 ARM 硬件平台,在 ARM 开发板上进展移植和相关驱动编写、调试。针对竞赛用智能小车,基于 WIFI 无线遥控及 ARM 硬件实现的主要功能:寻找适当的超声波检测传感器进展数据采集和障碍分析,结合 WIFI 模块实现无线通信控制,最终实现可自动避障和无线遥控的智能小车。本课题主要使用的 STM32F103 芯片主要优点如下:1.芯片的内核构造更加先进 2.

12、芯片的功耗有了更佳的控制能力 3.芯片的性能更强大 4.芯片的集成规模更大 5.芯片的开发更方便 本次毕业设计的主要工作内容可以简要分为以下几个模块:1WIFI 无线通信控制 WIFI 无线控制主要通过 ESP8266WIFI 模块来到达手机控制小车的目的。手机在路由器的 WIFI 环境内通过配置 IP 地址已经 WIFI 模块配置一样的 IP 地址来实现手机和小车的连接,进而达成通过手机 APP 的按钮控制小车运动的功能8。2超声波智能屏障 超声波智能屏障功能主要通过 HC-SR04 超声波测距传感器来实现,在小车行驶过程中不断检测小车与障碍物的距离,然后经过控制系统的判断是否进展躲避,这样

13、就实现了小车超声波屏障的智能化。3红外智能避障 红外智能避障功能跟超声波智能屏障的功能实现方法大致一样,只不过一个是超声波测距传感器一个是红外测距传感器。本论文的构造安排如下:第一章主要介绍智能小车的研究背景及主要设计内容,并且介绍了主控制系统使用的芯片。第二章主要分析了智能小车的车体构造及控制系统方案,并且阐述了智能小车系统硬件的总体设计,及各功能实现涉及到的硬件模块和设备。第三章简要分析了红外避障系统的功能实现。第四章主要介绍了智能小车设计过程中的系统仿真及调试。第五章总结了本次毕业设计过程中完成的工作,并且对智能小车的后续拓展研究进展了展望。3 2 智能小车硬件系统设计 2.1 智能小车

14、的车体构造选择 智能小车的移动方式一般有轮式和履带式,腿式的更多见于智能机器人。不过一般而言,在条件较好的路面上还是轮式的和履带式的比拟适宜,在翻山越岭方面腿式的机器人就具有了更多的优势。在智能机器人历史开展的轨迹中,轮式机器人一直是受偏好的,这也代表了它在机械设计、制造工艺上都非常成熟,因此本设计也是采用的轮式智能小车9。智能小车的底盘一般安装有三个或四个车轮,四个车轮的智能小车底盘相对来说更稳定。三轮的智能小车一般采用前面两个电机驱动轮,后面一个万向轮保持平衡的驱动方式,四轮的小车为了使设计看起来简洁,一般是给每个轮子加一个直流电机,然后通过对四个轮子进展不同的速度控制来实现转向。本设计采

15、用的四轮驱动小车在稳定性和承载能力方面更胜一筹,但是转向精度不高。2.2 智能小车控制系统方案 智能小车的控制系统设计是决定了小车能否快速有效的完成各项设计方案的最关键因素,本次设计需要小车完成的功能有WIFI 远程控制功能,超声波智能屏障功能,红外智能避障功能,而小车控制系统的先进程度就直接决定了小车的远程控制能否实现,避障功能的实现是否足够智能化10。根据本设计需要完成的功能,本次智能小车控制系统需要涵盖以下几个模块:无线控制模块、障碍物检测模块、电机驱动模块、微处理器模块、电源模块等。图 2.1 所示为控制系统总体框架。在具体设计过程中,设计需要完成的三个功能的软硬件都是分开实现的,这样

16、也便于日后对相关功能的完善修改,也方便了以后添加新的功能。图 2.1 控制系统框图 下面简单介绍一下控制系统中的各个模块的功能:电源模块:主要负责提供整个小车系统的电源,包括各个模块的电源供给。微处理器模块:微处理器主要是对小车的各个功能模块进展控制来完成系统设计的功能,并且完成对小车上传感器的信息采集处理。电源模块 STM32 控制器 速度检 测模块 电机驱动 模块 无线通信 模块 障碍物 检测模块 页脚下载后可删除,如有侵权请告知删除!障碍物检测模块:障碍物检测模块的主要工作就是在智能小车前进过程中实时检测小车跟障碍物的距离,当检测到的距离小于系统设定的平安距离时就反应障碍物信息给主控制器

17、。本次的设计分别选用了超声波传感器和红外发射接收对管作为障碍物检测传感器。电机驱动模块:电机驱动模块主要就是需要主控制器对小车的四个驱动轮的驱动电机进展控制,本模块使用了两片 L293D 驱动控制芯片和微处理器内置的 PWM 脉冲单元。无线控制模块:无线控制模块主要使用 TP-LINK 路由器创立一个 WIFI 网络,然后小车和手机分别连接上 WIFI,经过对 IP 的设置就可以实现手机对小车的远程控制。小车连接上 WIFI 主要是通过 ESP8266 无线 WIFI 模块。2.3 电源系统设计 本设计的电源系统主要是为电机驱动模块和主控制器模块提供耗能11。驱动电机的工作电压为+6V,L29

18、3D 电机驱动芯片的工作电压是+5V,系统中主控制器工作电压为,由于低电压可以通过电压转换芯片转换高电压获得,所以本设计的电源系统选择了+6V电压。本设计系统的驱动电机所需的+6V 电压可以直接由两节 18650 锂电池提供,电机驱动芯片的+5V 电压就需要经过 L7805 电压转换芯片得到。+5V 的电源电路如图 2.2 所示。图 2.2+5V 电源电路 本设计选用的基于 STM32 芯片的主控制器的工作电压是在,这个电压需要经过AMS1117 电压转换芯片转换所得。由于主控制器是整个小车系统的大脑,所以一定要保证控制器的稳定性和可靠性,所以分别增加了电容在电压转换芯片的输入和输出端,减少电

19、压波动对控制器的影响。的电源电路如图 2.3 所示。图 2.页脚下载后可删除,如有侵权请告知删除!微控制器模块 微控制器选择 经过对本次设计的智能小车的各功能模块仔细研究,我选用了 ST 公司推出的STM32F103ZET6 芯片作为主控制器的微处理器12。该芯片是基于RISC 内核设计的高性能芯片,高达 72MHz 的工作频率使得其能够适应高速的数据计算。芯片在本系统中主要需要完成对驱动电机的控制,对传感器信息的收集处理,对 WIFI 远程控制的数据通信。STM32 芯片具有高速的闪存和 SRAM 存储器,超过 100 个的外接 I/O 端口能够很好的连接和控制各种外设模块。本课题选用的 S

20、TM32F103ZET6 芯片,其集成封装设计如下:内置大容量可编程闪存程序存储器到达512K 字节 支持 19 个事件请求/外部中断 112 个可编程通用快速 I/O 口线 4 个 16 位通用定时器 2 路 I2C 接口 2 路 I2S 接口 3 路 SPI 总线接口 1 个 RTC实时时钟 1 路 USB 通信接口 5 路 USART 通信接口 1 路 SDIO 总线通信接口 1 路 CAN 总线通信接口 串行单线调试(SWD)和 JTAG 接口 STM32F103ZET6 芯片封装类型为 LQFP144,STM32F103ZET6 芯片封装引脚图如附录所示。本设计的智能小车的控制系统是

21、由基于 STM32 芯片的主控制器组成的,控制器主要负责系统各个模块的控制信号发送和处理。系统根本电路包括 JTAG 接口电路、外部晶振电路、系统复位电路和电源控制电路13。(1)电源控制电路 电源控制电路就是为智能小车系统的主控制器模块提供电源的。为了过滤和屏蔽电路板上由于电压的改变产生的毛刺对处理器芯片的干扰,需要在主控制器的 VDDA 引脚单独接一个电源进展供电。主控制器的 VSSA 引脚是用来接地的,主要作用就是在控制器突发断电后立刻通过 VBAT 引脚进展复位操作,并且启动备份存放器和实时时钟14。处理器电页脚下载后可删除,如有侵权请告知删除!源控制电路如图 2.4 所示。(2)系统

22、复位电路 一般需要对系统进展复位操作都是由于系统内部或外部的影响使系统出错才进展的。复位操作一般就是对内部程序进展初始化操作,然后将系统进展重启,在控制器的 NS RST引脚输入高电平就能完成 STM32 芯片的复位操作。本设计采用的是按钮方式进展复位操作,按钮复位电路在图 2.5 的左半边。(3)外部晶振电路 本设计主控制器上在 STM32 芯片上外接了一个 8MHz 的晶振和一个 32KHz 的晶振。在芯片进展上电复位操作后默认是使用内部晶振的,不过在外接了晶振后就自动切换到外部晶振,32KHz 的外部晶振是为了给 RTC(实时时钟)提供时钟信号15。图 2.5 所示的电路就是复位电路和外

23、部晶振电路。图 2.4 电源控制电路 图 2.5 复位电路和外部晶振电路 页脚下载后可删除,如有侵权请告知删除!(4)JTAG 接口电路 本设计主控制器的程序仿真下载使用的是 20PIN-JTAG 接口。JTAG 调试模块提供的 5个引脚的功能分别为:JTDO-JTAG 测试数据输出;JTCK-JTAG 测试时钟;JTMS-JTAG 测试模式选择;JTDI-JTAG 测试数据输入;JTRST-JTAG 测试重置。NS RST 接 CPU 复位口16。JTAG 连接电路如图 2.6 所示。图 2.6 JTAG 接口电路 2.5 障碍物检测模块 在智能小车进展智能避障的时候必不可少的就是障碍物检测

24、模块,只有小车探测到行进路线上的障碍物时才能根据障碍物信息进展自动避障。市面上目前可以选择作为智能小车的障碍物检测传感器的有激光测距传感器、红外测距传感器和超声波测距传感器。激光测距传感器原理简单应用方便但是价格昂贵17。所以本设计的障碍物检测传感器分别选用的是红外发射接收对管和超声波传感器。超声波是一种由换能晶片产生的机械波,比 20000Hz 的声波频率更高,是由电压作用于换能晶片使之发生振动产生的,超声波的波长较短但是频率很高,它的指向性很好在传播过程中产生的绕射也少,基于这个特性超声波主要应用于测距、测速、清洗等方面。本设计中选用的是超声波传感器型号为 HC-SR0418。HC-SR0

25、4 超声波传感器可以探测在 2cm-400cm 之间的障碍物,测量的精度可以到达毫米级,传感器采用的是非接触式测量法。当小车上安装了超声波测距传感器后,无法对出正前方以外的方向进展探测,所以本设计在超声波传感器下加装了一个可以 180 度转向的舵机,这样就可以实现超声波屏障小车对前方 180 度的范围内的障碍物进展探测。超声波传感器的设计主要包括了超声波发射器、超声波接收器和电压控制电路。HC-SR04超声波传感器的电气参数如表所示。页脚下载后可删除,如有侵权请告知删除!表 2.1 超声波传感器电气参数 HC-SR04 超声波传感器模块的工作原理:传感器的 TRIG 控制口通过一个电阻间接连接

26、了电源,可以提供高电平信号;当传感器工作时模块会自动发出 8 个 40khz 的高电平方波信号给超声波发射器,然后就接收器就可以检测是否有信号返回;一旦检测到信号返回,传感器的 ECHO 输出口就输出一个高电平,此时定时器开场计时,当输出口输出低电平时定时器就停顿计时,此时定时器的值就是高电平的持续时间,也就是超声波的传播时间,根据这个时间和距离计算公式可以很容易的计算出小车到障碍物的距离。超声波工作时序原理图如图 2.7 所示。图 2,7 超声波传感器工作时序原理图 HC-SR04 超声波传感器电路接口如图 2.8 所示。图 2.8 HC-SR04 超声波传感器接口 页脚下载后可删除,如有侵

27、权请告知删除!当小车上安装了超声波测距传感器后,无法对出正前方以外的方向进展探测,所以本设计在超声波传感器下加装了一个可以 180 度转向的舵机,这样就可以实现超声波屏障小车对前方 180 度的范围内的障碍物进展探测。本设计选用的是 Futaba S3003 舵机,这种舵机是最常用的小型转向控制舵机,这种舵机体积小巧紧凑、方便安装、稳定性好、控制简单、能够很好的和控制系统连接。舵机的工作原理:舵机一般由 5 个主要的局部组成,当检测到控制信号时舵机的控制电路板就会控制舵机电机的转动,电机通过一系列齿轮组的连接带动舵盘的转动。位置反应电位计是和舵机的舵盘直接相连的,舵盘转动的同时也给位置反应电位

28、计反应转动信号,最后位置反应电位计就接收到的电压信号传送到控制电路板,这样就完成了一次舵机转动的完整历程19。舵机接口如图 2.9 所示。图 2.9 舵机接口 线传感器 本设计红外线传感器采用的是红外发射接收对管,由红外接收管和红外发射管组成。传感器在使用红外线对被测物体进展检测时不需要发生直接接触,因而不存在摩擦误差,红外传感器拥有响应速度快、灵敏度高、稳定性高等优点20。红外传感器设计系统包括了光学系统、转换电路和红外检测元件。当主控制器电源开关启动时,红外发射管将接收电流转换为红外线信号输出,当红外信号接触到障碍物的反射面时信号发射回来,然后红外线接收管接收红外信号判断障碍物的位置。图

29、2.10 是红外线反射原理图。图 2.10 红外反射原理图 页脚下载后可删除,如有侵权请告知删除!红外传感器芯片的 HW-RED 引脚是红外接收管的信号输出口,当红外接收管没有接收到反射回来的红外线信号时该引脚为高电平,一旦接收管接收到红外信号就立刻设置端口为低电平。另外,主控制连接的 HW-RED 引脚是设置为下降沿出发,一旦检测到低电平就立刻触发中断,并由主控制器对障碍物信息就行判断。红外线发射接收对管连接如图 2.11所示。图 2.11 红外线发射接收对管接口 2.6 电机驱动模块 从上文可知本设计采用的是四个轮子分别进展独立驱动的智能小车底盘设计方案,每个轮子的转速都可以通过主控制器对

30、直流电机的设置来控制。下面就分别从电机驱动模块的设计、电机转速的控制和驱动电机的选择三个方面详细介绍了电机驱动模块。本次设计的智能小车选用的是直流减速电机来与小车车轮连接,直流减速电机不仅廉价而且相对来说具有很多优势:1转矩比拟大,能够防止传动装置产生的负载转矩,减少摩擦转矩对电机的影响;2响应速度快,能够适应快速变换的控制信号,复杂的速度变化;3负载能力强,系统的承载能力增加,防止了负载的冲击;4空载力矩大,能够阻止小车由于惯性前移;5相对来说运动平稳,噪音也小。本智能小车的直流减速电机内置了一个减速器,工作的额定功率是 2W,额定工作电压是 3V,在额定状态下每分钟电机的转速为125 转。

31、本设计的主控制器的芯片是 STM32 芯片,该芯片内置有一个 PWM 脉冲发生器,对于使用电机带动车轮的驱动方式的智能小车来说,PWM 脉宽调制信号是一种很方便也很容易进展软件设计的直流电机转速控制方法21。页脚下载后可删除,如有侵权请告知删除!PWM 脉宽调制技术是主控制器直接发送数字形式的信号到驱动系统芯片的,没有进展过数模转换。PWM 信号的产生方式有两种。第一种方式被称为脉频调制方法,这种调制脉冲的方法是保持脉冲的占空比不变,然后通过改变脉冲的频率得到频率不同的脉冲控制信号,但是这种方式产生的脉冲会导致电机发生振动,产生噪音,所以这种脉频调制的方法在智能小车的设计中不常用。另一种方式跟

32、脉频调制法是相反的,这次是控制频率不变然后通过增加或减少脉冲信号的占空比,从而得到的 PWM 脉冲信号占空比不同。PWM脉冲调制发的脉冲波形如图 2.12 所示,脉冲信号的频率是一样的,然后加大了高电平的持续时间就代表了加大了占空比。从图中可以很清晰的看出,处于高电平的时间越长,它的面积也就越大,而这个面积所占的比例也就是通常所说的占空比。本次设计的智能小车驱动控制技术就是使用的这种 PWM 脉冲调制技术。图 2.12 PWM 控制产生的波形 PWM 脉冲调制技术的原理如图 2.13 所示,由图可知,图中的晶体三极管就是 PWM 脉冲信号的接收器,当有高电平的脉冲信号传输过来时三极管就会导通然

33、后驱动电机旋转,如果从三极管的基极输入的是低电平脉冲信号,三极管就会断路,然后一般情况下电机将会停顿转动。但是在图中增加了一个续流二极管,所以当三极管断路时它会继续驱动电机转动。图 2.13 基于 PWM 的速度控制 设计 本次设计的智能小车是使用直流电机实现其前进后退左转右转的功能。当然主控制器的 PWM 脉冲调制信号无法直接传到直流电机,所以在智能小车的实际设计中需要增加专门的电机驱动控制芯片,这样也是为了使驱动电路更简洁。页脚下载后可删除,如有侵权请告知删除!本设计因为有四个电机驱动轮,所以选择了两片 L293D 电机专用驱动芯片22。L293D电机驱动芯片因为其体积小、能耗少的特点非常

34、适合智能小车的驱动电路的设计需要。L293D 主要特性为:一个芯片可以控制两个直流电机,并且为每个驱动电机提供的脉冲电流高达;另外它给双向驱动提供的驱动电流也高达 600ma;工作电压范围:4.5V-36V;内部 ESD 保护;热耗少;抗噪性能好。图 2.14 为 L293D 引脚排列。图 2.14 L293D 引脚图 L293D 驱动芯片的默认工作电压是+5V,上图中的芯片电源输入端口是接的 VCC1 引脚,VCC2 引脚是给直流电机提供电源的输入端口,该端口的最大工作电压到达 36V,本设计中输入的电压值是+6V。另外从上图可知 L293D 芯片是四通道的输出口,所以本设计的四个直流电机只

35、需要两个芯片就足够了。芯片的 1,2EN、1A、2A、3,4EN、3A、4A这 6 个端口均为电机控制信号的输入端,其中 1,2EN、1A、2A 端口是一个电机的控制输入端口,三个端口的值的不同就可以控制电机处于不同的工作状态,如停顿、刹车、正、反转等等。同理另外三个端口的功能也是一样。在实际的驱动电路设计中,1,2EN,3,4EN端口都是与主控制器直接连接的用来接收PWM 脉冲调制信号。而引脚 1Y、2Y、3Y、4Y那么是与两个电机连接,主要作用就是根据控制器的 PWM 脉冲信号经过驱动芯片调制后输出直流电机的工作状态。表 2.2 就是以 1,2EN、1A、2A 三个端口为例来说明每个端口的

36、电平信号分别代表了直流电机的什么工作状态23。L293D 工作控制端真值表 从上表可知,不管 1A、2A 输入端口是何种状态,只要 1,2EN 端口是处于低电平的状态那么直流电机就是停顿状态,这是因为 1,2EN 端口是跟控制器直接连接的,低电平状态表示没有接收到 PWM 调制信号。当 1,2EN 端口接收到脉冲信号时是处于高电平的状态的,这个时候如果 1A、2A 端口的电压状态是同样的,那么直流电机的状态也是停顿页脚下载后可删除,如有侵权请告知删除!的,只有在 1A、2A 端口输入的是相反的电平信号时电机才会转动。另外设计电路时分别在电机两端并联增加了二极管,这样相当于保证了 1A、2A 端

37、口的状态是始终相反的,这样就将表的状态简化为三个状态,这样的设计方便了软件的编程设计也简化了硬件电路的设计。驱动模块具体电路如图 2.15 所示。图 2.15 电机驱动电路 2.7 通信拓展模块 2.7.1 无线通信模块 在一些复杂环境中智能小车的障碍物检测传感器会受到较大干扰,无法很好的实现智能避障的功能,这种情况下就需要能够远程控制小车了。在小车上加装了无线接收模块,操作人员可以通过连接到同一WIFI 环境下的手机 APP 控制小车的运动。在选择设计需要的 WIFI 芯片时需要考虑很多事情,适宜的无线控制芯片能够使得系统功耗降低、软硬件设计更加简单、实际使用中也更加方便。芯片的选择通常可以

38、考虑以下几个方面,如芯片进展数据传输时使用的编码方式、芯片的外围元件数量、芯片的封装和管脚数、芯片的能耗和发射功率:页脚下载后可删除,如有侵权请告知删除!1.能耗和发射功率 当智能小车运行时主控制器和驱动电路都需要大量消耗电源,所以受限于智能小车的电源容量,选择的无线 WIFI 芯片的发射功率要高、发射功耗要小。2.封装和管脚数 实际设计制作中,更少的引脚和更小的封装都可以节约布线的时间,同时也满足智能小车控制系统的小型化需要。3.外围元件数量 本设计采用的是四轮驱动的硬件系统,小车上的空间有限,所以 WIFI 芯片的外围器件不能多。4.数据传输的编码方式 智能小车远程无线控制信号传输将效率放

39、在第一位,可以直接进展串口传输,无需选用复杂的编码方式。综合以上几条考虑,本智能小车选择了 ESP8266 无线收发芯片24。ESP8266 是一种功耗很低的无线 WIFI 模块,它的封装尺寸很小,外围元件数量较少。选用 ESP8266 芯片主要优点:1工作电压为,与微处理器芯片电压一致,实际功耗也小,适用于电池供电。2芯片上面集成了一个微型 CPU,能够作为应用处理器。3芯片上能够搭载简单的软件应用,拥有完整的 WIFI 网络解决方案。4支持 UART/GPIO 数据通信,支持 TCP/IP 通信协议。ESP8266WIFI 模块有 8 个引脚,各引脚定义为:Pin1:URXD,UART_R

40、XD,接收;Pin2:UTXD,UART_TXD,发送,开机时制止下拉;Pin3:GPIO 16,外部 Reset 信号,高电平工作默认高,低电平复位;Pin4:GND,GND Pin5:VCC,模块供电;Pin6:GPIO0,默认 WIFI Status:信号控制 WIFI 工作指示灯;Pin7:CH_PD,关掉供电时为低电平,高电平工作;Pin8:GPIO2,内部默认高电平,开机上电时必须拉高,制止硬件下拉。图 2.16 ESP8266 WIFI 模块接口 页脚下载后可删除,如有侵权请告知删除!2.8 硬件设计中注意的问题 为了提高智能小车硬件控制系统的可靠性,需要对可能引发系统故障的内部

41、外部因素进展预防控制。以以下举了一些防干扰的措施:1滤波 在智能小车的设计电路中,电源由于其巨大的电流电压变化不定产生的电路干扰是硬件电路最大的干扰源,所以在实际设计中分别弄一个电容并联到电路系统的每个电源输入端口,这样也大大降低了电路的噪音。2抑制自感电动势干扰 智能小车的驱动模块使用的是直流电机,而在直流电机里有一个电机线圈,当小车的运动状态发生变化时通过电机的电流也会变好,根据洛伦兹定理电机的线圈会产生一个反电动势,产生的磁场能够极大的影响系统的稳定性。在电机电路设计中并联二极管能够很好的减少这种干扰。3看门狗技术 看门狗能够有效的提高系统的可靠度。看门狗的作用原理就是当系统出错时立刻对

42、系统进展中断复位操作,本次选用的 STM32F103 微处理器芯片就内置了两个看门狗。看门狗在系统设计中起到了一个内部计数器的作用,当系统运行一定时间就给系统一个中断或者复位操作25。2.9 本章总结 本章主要详细的介绍了智能小车的硬件设计方案,从无线通信模块,电机驱动模块,障碍物检测模块,系统控制模块等方面入手,将整个小车的硬件模块的设计思路,设计电路图都详细的列举了出来。最后对硬件设计过程中可能碰到的问题进展了表达并且给出了解决方案。16 3 红外避障功能的软件设计 3.1 软件开发平台介绍 在智能小车的系统中软件设计的重要程度不次于硬件的设计,并且需要软件系统的合理编程才能最大程度的发挥

43、硬件系统的功能。软件系统的优劣直接决定了智能小车系统的稳定性、可靠性和智能化。本设计选用的微处理器是 STM32F103ZET6 芯片,所以选择了 Keil MDK 这种能够对ARM 芯片进展 C 语言开发的开发软件作为开发环境26。Keil MDK 的集成开发环境(Vision5)包括了库管理、宏汇编、C 语言编译器以及仿真调试器等等各种强大的软件开发功能。由于它的界面跟我们平时学习时用的 VC+相似,所以我们可以很容易的就上手进展软件系统的编写,并且它具有的软件仿真功能在嵌入式软件系统的编写过程中是十分重要的。3.2 障碍物检测算法 障碍物检测算法主要是通过障碍物检测函数来承受红外传感器承

44、受的信息来根据预先设定的算法程序来判断小车行驶过程中障碍物的位置,将障碍物的位置信息反应给自动避障算法来实现自动避障功能。由于可能存在误报的情况,所以本算法采取了滤波的防干扰算法,主要是在10ms 里连续采集到两次障碍物的信息才会判断是遭遇障碍物27。本算法首先给左右红外避障传感器赋值为0,然后当左传感器检测到障碍时左传感器的值变为1,当右传感器检测到障碍物时右传感器的值变为 2,然后返回值的时候将两个传感器的值相加,假设返回值为 0 那么表示没有检测到障碍物,假设返回值为 1 那么表示左边有障碍物,假设返回值为 2 那么表示右边有障碍物,假设为 3 那么表示前方有障碍物。假设在运行延时函数的

45、同时检测到障碍物,就立刻停顿并跳出延时。char GetVoidStatus(void)char left=0,right=0;char count;if(VOID_L_IO=BARRIER_Y)count=2;while(-count)/10ms 采集 2 次均要采集到前面障碍物信息,滤波 if(VOID_L_IO=BARRIER_N)break;Delayms(1);if(count=0)left=1;页脚下载后可删除,如有侵权请告知删除!if(VOID_R_IO=BARRIER_Y)count=2;while(-count)/10ms 采集 2 次均要采集到前面障碍物信息,滤波 if(V

46、OID_R_IO=BARRIER_N)break;Delayms(1);if(count=0)right=2;return left+right;void DelayCheck(int ms)while(ms-)Delayms(1);if(VOID_NONE!=GetVoidStatus()CarStop();return;3.3 自动避障算法 红外避障实现算法主要是在障碍物检测算法检测到障碍物时才运行的算法,它根据预先设定的算法函数来实现智能小车自动避障的功能。当红外发射接收对管检测到左边有障碍物时,小车返回,然后进展右转,右转后再次运行障碍物检测函数,假设没有障碍物了就直行,否那么根据自动

47、避障算法再次进展避障。当红外发射接收对管检测到右边有障碍物时,小车返回,然后进展左转,左转后再次运行障碍物检测函数,假设没有障碍物了就直行,否那么根据自动避障算法再次进展避障。当红外发射接收对管检测到正前方有障碍物时,小车返回,然后进展右转,右转后再次运行障碍物检测函数,假设没有障碍物了就直行,否那么根据自动避障算法再次进展避障。当红外发射接收对管没有检测到障碍物时小车正常前进。核心算法如下:void VoidRun(void)char status;页脚下载后可删除,如有侵权请告知删除!status=GetVoidStatus();switch(status)case VOID_LEFT:c

48、trl_comm=COMM_RIGHT;CarBack();Delayms(500);CarRight();DelayCheck(500);break;case VOID_RIGHT:ctrl_comm=COMM_LEFT;CarBack();Delayms(500);CarLeft();DelayCheck(500);break;case VOID_BOTH:ctrl_comm=COMM_RIGHT;CarBack();Delayms(700);CarRight();DelayCheck(500);break;case VOID_NONE:ctrl_comm=COMM_UP;CarGo();

49、break;default:break;19 4 智能小车系统仿真与调试 4.1 仿真器的选择 本次智能小车的软件系统设计选用的是Keil MDK的集成开发环境(Vision5)作为软件开发的开发环境,在软件的设计过程中需要连接小车主控制器进展仿真设计,这就需要一个接口仿真器。所以我选择了一个 ULINK2 USB-JTAG 接口适配器来连接小车主控制器和PC 机,小车上是连接的 JTAG 接口,PC 端是使用的 USB 接口作为数据传输接口,由 USB线提供电源28。它支持将程序写进 Flash 存储器,在目标板上实时运行程序,在程序中可插入多个断点,单步运行程序,检查内存和存放器,下载目标

50、程序等一系列操作。ULINK2仿真器内部构造如图 4.1 所示。图 4.1 ULINK2 适配器内部构造 图 4.2 ULINK2 适配器实物连接 页脚下载后可删除,如有侵权请告知删除!4.2 调试过程 4.2.1 WIFI 控制功能调试 WIFI 控制功能主要的操作是通过手机 APP 控制智能小车的前进、后退、左转和右转,A 代表前进,B 代表后退,C 代表左转,D 代表右转。首先需要将手机 APP 跟智能小车的WIFI 模块进展连接,先从以下图的手机 APP 页面点击 Set up 进入设置,进入后会自动获取到手机的 IP 地址,然后设置端口,设置好之后翻开系统软件程序的函数修改主机IP,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 解决方案

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁