基于
无线模组供应商WIFI模组WIFI智能小车,介绍一种基于嵌入式微处理器无线模组供应商WIFI小车的设计方案。系统采用uCOS-II作为操作系统,通过PC端的WIFI串口通讯向小车发送指令,主控器根据收到的指令运行小车,这样就达到了PC端通过无线网络控制小车状态,并能显示小车传送图像的目的,该系统还具有红外避障和温度采集显示功能。实验证明,该系统成本低,设计合理,可实现远距离无线控制,为今后的智能家居和无人检测提供了研究方向。
近年来,人们的生活正逐步向智能化转变,嵌入式技术和一些新技术的飞速发展,使得人们的生活、工作越来越智能化。智能型手推车可通过传感器对工作环境进行判断与分析,并能在无人操作的情况下自主完成任务。利用无线模组供应商WIFI技术设计的智能小车,具有避障、温度采集等功能,实现了小车的智能化,可作为智能汽车或其它移动机器人的基础模型,具有较大的研究空间。
该设计由硬件、软件、无线传输三大部分组成,本文详细介绍了上述三个部分的功能:无线控制、避障、循迹等。
硬件部分:输出PWM控制电机;检测障碍,探测距离10cm;串口通讯;需用串口来调试智能小车,串口波特率设置为115200;对接收到的指令进行处理和判断;通过温度传感器检测环境温度;与WIFI模块相连;通过uCOS-II实现多个任务同时完成。
软件部分:操作接口功能;通过SOCKET编程实现网络,可接入WIFI模块;接收STM32开发板传送数据并发送指令数据;使用摄像机拍摄;车辆行驶时接收小车传送的图片信息并显示;实现小车模式切换,模式1为无线控制行驶模式,
WIFI通讯功能:PC端联网,实现PC机和单片机之间的数据交换功能。
该设计使用STM32F103开发板,相对于51单片机,STM32可携带更小的系统,速度更快,设计方案见图1。本设计以STM32开发板为控制核心,利用PWM输出波形驱动电机旋转,通过内部定时器达到方向控制效果,并将收到的数据和指令通过处理器判断并计算从IO口输出。该设计采用温度传感器采集的温度信息通过串行口传送至WIFI模块,在PC端显示,用红外传感器完成温度传感器的检测循环。无线模组供应商WIFI模块是上位机与开发板间数据交互的媒体,上位机操作指令通过WIFI模块发送,开发板与上位机之间设置相应的数据协议,从而判定指令接收的类型,小车按指令执行相应的操作。
无线模组供应商WIFI通信模块作为STM32与PC端通信的中间层,两端通过WIFI模块进行数据交互,选择CV520,其特点是,如果连接断开,再连上一次,模块将连接到近连接的热点。CV520支持三种模式,即STA模式、AP模式和STA+AP模式。该设计采用AP模式,使得其它网络可以连接到ESP8266。本文采用CV520的AP模式,使得其它网络可以连接到CV520,用STM32管脚连接。
照相机模块选择OV7670,摄像模块采集的光信号经内部转换成RGB信号,并在屏幕上显示颜色信息。照相机模块的数据需要7针进行传输,传输协议采用SCCB。
STM32通用计数器采用16位自动装入计数器组成,通用计数器包含TIM2.TIM3.TIM4和TIM5。计时器可实现基本的计时.输出4路PWM.输入捕捉等功能。本文采用STM32F103开发板,在这种情况下,除了定时器6和定时器7都能产生PWM输出,本文所用的定时器是TIM3。
为使上位机可以控制小车的速度,并满足直流电机的驱动电压,本文选择L298N电机驱动模块对直流电机进行驱动。该电动机传动共有两个电源输入接口,一个为5V,另一个为12V,在使用时12V接口的输入电压要大于7V,5V的接口可为单片机供电。
软体设计部分包括硬件要求的程序和PC端的程序。上位机的软件部分主要实现了控制界面、网络连接和图象显示功能。该控制接口包括按键和信息接收区,键用于将数据和命令发送到STM32,对上位机程序进行控制;信息接收区是接收STM32发送的部分信息显示,如温度可在接收区域显示,图象显示部分显示STM32所接收的图像。
本文选用uCOS-II作为处理器内部操作系统,以满足本设计的多任务处理要求,硬件部分全部在操作系统内编写。通过main函数中的每个模块初始化创建开始任务。完成main函数后,开始执行起始任务函数,在起始任务函数中创建多个任务。在完成任务创建后,退出起始任务,然后开始执行多个已创建任务。
无线模组供应商WIFI模块监听WIFI模块是否有数据发送到WIFI模块,当收到PC机发来的信息后,还需要对接收到的数据进行判断或处理,使得STM32可以识别命令并做出相应的操作。
上位机的软件程序部分有接口程序.网络连接程序和图像显示程序三部分。上位机软件采用C++语言编写,采用VC++编写。接口部分需要处理多个任务,所以需要多线程来处理多个操作。上位机软件程序部分以网络连接和数据接收发送程序为核心,两个程序分别负责PC机与STM32的数据交互。用VC++对话框来创建整个工程,通过在对话框界面上按某些键,对话框就会作出反应,并且所有这些键所实现的功能都是独立的。在任何时候,接收图片信息和键盘按键信息的任务都不会受到影响,所以需要建立多线程的PC端接口,其中包含网络.图示。联网部分,控制PC与无线模组供应商WIFI模块CV520的连接;图像显示部分为摄像机拍摄的图像,初的图像是PC上的图像,指令部分可发送命令给STM32单片机,包括拍摄命令、采集温度命令、转换速度指令,更改小车指令模式。
在智能车启动之前,先需要无线模组供应商WIFI模块和PC端连接成功,进行正常的数据传输,然后将WIFI数据发送到PC上。PC端和小车必须在同一网络下运行,才能在PC端进行无线控制。上位机与小车的WIFI模块在同一个网络上连接,服务器与客户端接口显示成功。上位机由小车发出指令后,上位机与WIFI模块接通后,只要小车在模式1时按键盘方向键,指令数据将发送到开发板,并执行相应的操作(前进,后退,左转,停止)。红外线避障结果,红外线模块指示灯亮表示前方有障碍,灯灭表示没有障碍或者前方是黑色物体,实现有效的躲避。测温结果,能准确显示周围环境温度。
该设计基于无线模组供应商WIFI,以UCOS-II为操作系统,通过软硬件编程、选配外部设备及连接,实现串口通讯功能,可通过PC端键盘对小车行驶方向进行无线控制。
智能家居已经成为未来生活与工作的必然趋势,这一设计的实现为未来智能家居和无人探测提供了研究方向。