基于Arduino控制板的数据采集智能小车的控制系统设计与实现Word文件下载.docx
- 文档编号:17757637
- 上传时间:2022-12-09
- 格式:DOCX
- 页数:14
- 大小:1.03MB
基于Arduino控制板的数据采集智能小车的控制系统设计与实现Word文件下载.docx
《基于Arduino控制板的数据采集智能小车的控制系统设计与实现Word文件下载.docx》由会员分享,可在线阅读,更多相关《基于Arduino控制板的数据采集智能小车的控制系统设计与实现Word文件下载.docx(14页珍藏版)》请在冰豆网上搜索。
证明了基于Arduino控制板的控制系统在环境数据采集智能小车中应用的可行性。
关键词:
Arduino;
数据采集智能小车;
Labview;
脉宽调制;
PID
中图分类号:
TP29文献标识码:
ADOI:
10.3969/j.issn.10036199.2017.01.014
1引言
在特定环境下,比如隧道、沙漠、危险区域等,如果采用传统的人工方式采集环境数据,实现难度大,可操作性不强,甚至会有安全隐患。
而具有数据采集功能的智能小车,可代替或辅助人力完成数据采集的任务,与传统的人工采集方式相比,可操作和实用性更强,环境数据采集难度大大降低,且实现成本一般低于人工采集方式,性价比高。
数据采集智能小车应具有远程控制和自适应控制的功能,通过安装各种传感器可实现对温度、湿度、烟雾颗粒度等物理量的采集,并能通过无线通讯返回所采集的环境数据,同时还应具有自动避障的功能。
Arduino是一个开放源代码的单芯片微控制器采用基于开放源代码的软硬件平台,建构于简易输出/输入(simpleI/O)界面板,并且具有使用类似Java、C语言的Processing/Wiring开发环境[1]。
它将单片机编程中许多常用的功能模块化后封装成一个个子函数,可供开发者调用,所以开发者只需着眼于程序的逻辑实现而不必关心底层函数的具体设计,降低了开发的难度。
此外,开发人员可将编写好的程序通过USB下载到Arduino开发板,程序的调试也变得相对容易[2]。
本文基于Arduino控制板设计了数据采集智能小车的控制系统方案,使其具有远程控制和视频传输功能,可实时采集并传输数据信息。
2总体架构
2.1机电结构
本文所述智能小车采用亚克力材料制作车架,采用2主动轮+2从动轮的运动机构,两个直流电机直接驱动主动轮,利用差速实现转向,采用锂电池供电。
2.2控制系统的总体架构
智能小车的控制系统分为几大模块,包括Arduino控制板模块、传感器数据采集模块、电源模块、电机及驱动模块、上位机模块[3]。
图1所示为智能小车控制系统的总体架构。
4.1.1整体程序
在程序设计中,一开始程序进行初始条件设置,比如设置波特率、中断条件以及管脚属性。
然后进入循环结构,在循环结构中接收数据和处理数据、执行命令、收集数据和发送数据。
当上位机向下位机发送数据,下位机检测有数据输入,则将数据存在接收数据缓冲器中,再利用相关算法将数据转化为可执行命令,从而改变小车的状态,如向左、向右或者进行PID调节等等;
当下位机收集完有关环境参数数据后,准备发送数据,则会将数据放在发送数据寄存器,等待程序去执行发送;
同时下位机会根据小车状态进行必要的调节,如当小车向前或向后运行时,下位机会通过PID调节去控制小车左右轮子的速度一致。
整个过程是不断循环进行。
程序流程图如图9所示。
4.1.2运动控制子程序
在整个程序运行中,程序不断循环检测是否有数据输入,如果有就将字符串数据转化为单个字符,然后存到一个数组中,再通过for循环判断命令,对命令做出动作。
流程如下:
4.1.3数据采集子程序
各种传感器将数据送到I/O口,等待CPU处理其他事件,然后CPU到达提取数据阶段,会从I/O口提取数据,并转化为字符串类型,储存到内存块中,等待发送[6]。
数据采集子程序如图11所示。
4.1.4无线通讯模块
当CUP将数据送到输出数据缓冲区时,WIFI模块会直接在TXD端口将数据送到上位机接口;
当上位机将数据送给WIFI模块时,WIFI模块会直接将数据送到Arduino的RXD端口,并存在数据缓冲区。
无线通讯模块程序流程图如图12所示。
4.2Labview上位机设计
4.2.1开发工具及关键技术
基于对数据采集和远程控制的需求,以Labview为平台开发一套数据采集系统,通过TCP协议实现PC端上位机界面经Wifi模块与Arduino小车的通讯,具有数据接收、参数设置等功能。
程序主要包括两个部分:
前面板(即人机界面)和流程图程序[7]。
根据TCP协议,设定PC机为服务器,Arduino小车作为客户端,其通讯流程包括:
PC机先对指定的小车Wifi模块端口监听并处于等待连接状态;
而作为客户端的数据采集端经Wifi模块端口向服务器端发出连接请后,若PC端响应则可,向客户端发送参数指令,同时也可读取客户端发送的数据,并读取客户端反馈的表示确认握手成功。
4.2.2上位机软件结构设计
上位机结构主要由三部分组成,分别是:
(1)读取并显示客户端发送的数据,其Labview程序图如图13所示,其对应的程序流程图如图14所示。
设置参数,并将其发送到客户端,其Labview程序图如图15所示,其对应的程序流程图如图16所示。
(2)显示客户端采集的视频,其对应的Labview程序图如图17所示,其对应的程序流程图如图18所示。
5调试
5.1硬件制作装配调试
整体实物图如下图,超声波测距模块和摄像头安装在车头前中间,其余传感器安装在两边,WiFi模块放置在车的中间,两个电机驱动器安装在中间两边,如图19所示。
5.2上位机软件调试
如图20所示,在前面板图标中,下面一个停止按键,当按下这个按键,整个上位机停止工作;
在左边,有五个按键合成一起,分别控制小车前进、后退、向左、向右、停止;
在这个五个键上面是摄像头的选择,可以选择电脑自带电脑的摄像头也可以选择小车上的;
在右边是PID参数设定,输入各个参数后,按下“调节PID参数”这个按键会设定了输入值;
其余是各种采集数据的显示模块,其中有温度、湿度、烟雾、距离、速度。
5.3上位机接收与发送数据调试
当调试者下达小车方向命令时,这时小车会接受到相应的命令;
当下位机将采集数据发送到上位机上,上位机会显示相应信息,如图21所示。
5.4小车运动方向控制调试
本实验使用增量式PID控制算法:
其中Δu(k)=KpΔe(k)+Kie(k)+Kd[Δe(k)-Δe(k-1)]
(1)首先预选择一个足够短的采样周期T=1s。
(2)仅加入比例控制环节,直到系统对输入的阶跃响应出现临界振荡,记下这时的比例放大系数和临界振荡周期,通过实验不断调整,得到Kp=4.5;
同样得到Ti=0.5,Ki=9。
本实验只用了PD调节办法,所以令Td=0,Kd=0。
最后,得出实现结果,小车沿着直线行走。
5.5小车转弯调试
通过电脑上位机发送转弯命令,Arduino接收命令并执行。
通过是使右边电机向后转和左边电机向前转达到向右转;
通过是使右边电机向前转和左边电机向后转达到向左转。
具体程序框图如图22所示。
6结论
基于目前的发展趋势,本文完成了基于Arduino控制板的环境数据采集智能小车的控制系统设计,并进行了实验测试,从原理上验证了小车的基本功能。
但有些地方还有待进一步研究和提高,比如自适应控制部分。
由于工业现场以及其他危险区域的环境变化很大,还需要考虑极端工作条件下小车的性能并对其进行测试和改进,使其适应能力更强。
参考文献
[1]陈开军.基于Arduino技术的智能小车设计[J].科技创新与应用,2014,(34):
78-79.
[2]贾瑞.基于ArduinoMega2560的无线监控小车设计[J].数字技术与应用,2013,(10):
144-146.
[3]朱梅梅.智能小车设计与实现[J];
电脑知识与技术,2012,(21):
5192-5195.
[4]张伟,陈迎,韩丽娜,等.智能小车系统的设计[J];
实验室研究与探索,2011,(9):
53-57.
[5]胡珂.基于Arduino的智能小车测距安全行驶系统的研究[D].西安:
长安大学,2015.
[6]田丽,曹安照.数据挖掘技术在芜湖市环保工程中的应用[J].自动化与仪器仪表,2005,(4):
34-37.
[7]王建群,南金瑞,孙逢春,等.基于LabVIEW的数据采集系统的实现[J].计算机工程与应用,2003,39(21):
122-125.
[8]谢启,温晓行,高琴妹,等.LabVIEW软件中菜单形式的用户界面设计与实现[J].微计算机信息,2005,21(15):
88-90.
第36卷第1期2017年3月计算技术与自动化ComputingTechnologyandAutomationVol36,No1Mar.2017第36卷第1期2017年3月计算技术与自动化ComputingTechnologyandAutomationVol36,No1Mar.2017
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 Arduino 控制板 数据 采集 智能 小车 控制系统 设计 实现