优胜从选择开始,我们是您最好的选择!—— 中州期刊联盟
  匿名投稿

0373-5939925

您的位置:网站首页 > 优秀论文 > 科技论文 > 正文

浅析Arduino的单片机智能小车设计

作者:梅蓉来源:《企业科技与发展》日期:2019-07-13人气:94

依托各式各样传感器以实现对一系列信息的采集,传输至主控单元Arduino单片机处理数据后实现相应操作,进而达成自身控制。电机驱动电路,借助H桥驱动模块驱动2个直流电机;借助手机蓝牙用户界面、HC-06蓝牙模块实现蓝牙控制,借助HC-SR04超声波模块、舵机模块实现测距及避障,最后通过控制单元处理数据后完成编程,并有效对一系列模块信号予以整合,并实现相应操作,达成智能控制目的,如同简易机器人。

1  整体系统设计方案

相较于其他系统,Arduino表现出编程简易、成本低、平台跨越等诸多优势。现阶段,较为常用的Arduino版本为Arduino UNO R3,其高效性、稳定性可为智能小车设计提供有力支持。智能小车,指的是一款可对一系列实际状况开展智能自主评估分析,进一步作出相应最理想应对操作的智能机器。智能小车整体结构主要为,依托直流电动机驱动,将各式各样传感器采集的信息数据传输至主控单元Arduino单片机,单片机开展对应的数据处理分析,实现最理想相应的操作,这一过程也可称之为智能化自身控制。

2  硬件设计

智能小车硬件环节以模块化方式开展设计,设计内容主要包括电源模块、电机驱动模块、控制模块、红外收发模块、LCD显示模块等,智能小车硬件设计结构,如图1所示。

图1  智能小车硬件设计结构示意图

其中,对于电源模块设计而言,电源模块在全面系统设计中发挥着至关重要的作用,该模块设计稳定与否重要决定了全面系统设计的成败。电源模块设计框架,如图2所示。本次系统的电源主要源自12V、720mA可充电式锂电池,经由逆流保护、保险等手段变压调整为其他电压值,供由其他模块使用。电机驱动电源为12V,Arduino单片机运行电压为5V,电机驱动模块、显示模块、红外收发模块等运行电压为5V,另外Arduino还可提供3.5V、5V双电压。

图2  电源模块设计框架示意图

对于电机驱动模块设计而言,运用电机驱动芯片L298N,其包括含两个H桥的高电压大电流全桥式驱动器,连接外部续流二极管保护电路,进而便可实现两个电机的运动姿态控制。电机驱动模块电路设计结构,如图3所示。因为智能小车电机未设置转速编码盘或者相关传感器,依托调节PWM输出脚脉冲信号占空比,以实现对小车速度的控制。调节完毕PWM控制端后,变更控制信号输入脚电平,便可使智能小车实现不同姿态的转变。

图3  电机驱动模块电路设计结构示意图

对于控制模块设计而言,控制模块在全面系统中可发挥至关重要的控制作用。系统设计应用Arduino单片机控制单元,通过主从通信方式实现对全面系统有序运行的有效控制。主从双方依托SPI总线开展数据交互。模块设计时,Arduino基于单片机控制核心,本模块依据Arduino UNO开展设计。Arduino作用于控制命令关键词的传输及从机数据的接收,但不直接参与底层硬件模块的控制工作;单片机主要作用于主机传输来命令关键词的接收,并结合各种命令执行对应的子函数,进一步实现不同的功能。

对于红外收发模块设计而言,其主要可划分为红外发射头、接收头的驱动电路设计,其中,两个红外发射头通过PNP三极管实现驱动,接收头通过对应的指示灯实现数据接收指示。红外发射头设置于PCB顶部,接收头设置于PCB底部,两个接收头接收面正对发射头正前方,同时发射头、接收头呈相应角度列于智能小车头部两端,切实缩减红外信号误接受率。与此同时,通过对红外发射头驱动电路中可调电阻的控制,可实现对红外发射头电流的有效调节。值得一提的是,依托红外收发模块,可实现智能小车的红外避障功能。

对于LCD显示模块设计而言,该模块由LCD160、背光以及对比度调节电路组成,其主要负责呈现智能小车执行相关功能的对应数据信息。该模块设计过程中,依托四线制方式开展数据信息发送,可实现对单片机I/O端的有效控制

3  软件设计

3.1  主机程序设计

在主机程序设计过程中,涉及到SPI连接、SPI通信初始化、SPI数据发送等关键函数,而主机与从机的SPI通信可有效建立与否,则是实现其他功能函数的重要基础。SPI总线初始化函数实现SPI功能初始化,涉及片选引脚选择、输入输出模式设置、数据传输方式等内容。调节满意后,loop主函数部分便可实现对相关功能库函数的调用。与此期间会涉及片选信号端电平拉低、命令关键词及数据传输、片选信号端电平拉电等流程,结合对应的时序便可实现对某一字节或若干字节数据的传输,主机程序流程。

3.2  从机程序设计

对于从机程序设计而言,可将其划分成两个部分,即为初始化调用、子函数调用。单片机配置位设置涉及诸多方面内容,诸如选择芯片振荡器模式、禁用后台调试器、调节数据区和引导区中相关数据保护与否等。单片机配置位调节结束后,从机的SPI初始化应当与主机SPI初始化通信时序保持统一。程序设计过程中,接收主机的数据通过中断响应方式实现接收。接收完成后,依托关键命令字的分析转至对应的子函数,然后经由数据分析实现底层硬件调节,进而实现各项功能,从机程序流程。

4  示例功能实现

4.1  红外避障

红外避障是以Arduino两组红外收发器为基础实现智能小车的自动避障功能。在这一功能设计过程中,借助外部中断、定时器中断方式以检测红外接收头的信号输出脚电压转变情况,缩减红外信号检测滞后性,进一步增强智能小车对障碍物的检测灵敏度。另外,可依托对PWM信号占空比的控制,以达成对智能小车运动速度的有效调节;可依托对智能小车避障动作延时参数、红外发射头可调电阻值的调节,以实现对智能小车避障效果的有效调节。

4.2  蓝牙遥控

蓝牙遥控是以Arduino连接蓝牙模块及手机应用软件蓝牙遥控为基础,实现手持设备遥控智能小车的功能。Arduino模块经由串口接收蓝牙模块从设备端接收数据,并对其开展分析,然后将分析结果控制逻辑及应用软件手势控制逻辑开展评定处理,进而便可达成手持设备遥控智能小车的目的。依托手势的不同方向操作,可实现智能小车的不同功能。手持设备控制软件依托第三方设计的一款应用软件,该应用软件可实现蓝牙连接,并可实现蓝牙数据接收、传输等功能。

5  结语

基于Arduino的单片机智能小车设计,主要是以Arduino单片机为核心,依托蓝牙系统对Arduino单片机的反馈,从而实现对智能小车通信行动的智能控制,然后依托控制处理器对相关数据开展分析,进一步调节电动机的主驱动,以实现智能小车的红外避障、蓝牙遥控等智能化功能。因而,相关人员必须要加大研究力度,不断开拓创新,加强对国内外成功发展经验的学习借鉴,提高对Arduino的有效认识,切实推进智能小车设计的健康稳定发展。



本文来源:《企业科技与发展》:http://www.zzqklm.com/w/qk/21223.html

网络客服QQ: 沈编辑

投诉建议:0373-5939925    投诉建议QQ:

招聘合作:2851259250@qq.com (如您是期刊主编、文章高手,可通过邮件合作)

地址:河南省新乡市金穗大道东段266号中州期刊联盟 ICP备案号:豫ICP备11023190

【免责声明】:中州期刊联盟所提供的信息资源如有侵权、违规,请及时告知。

关注”中州期刊联盟”公众号

核心期刊为何难发?

论文发表总嫌贵?

职院单位发核心?

扫描关注公众号

论文发表不再有疑惑