基于μCOS—II操作系统的WiFi小车设计

2017-03-15 16:58江军刘占伟唐文涛
物联网技术 2017年2期

江军+刘占伟+唐文涛

摘 要:文中设计了基于μCOS-II操作系统的WiFi小车的软硬件。该小车通过WiFi实现无线控制。在硬件方面,该系统以MSP430F149单片机模块为核心,其他主要由VC平台设备、WiFi模块、稳压电源模块、测速模块、直流电机驱动模块等组成。软件方面,完成了上位机VC设备程序及下位机单片机程序的编写,同时单片机中搭载了μCOS-II操作系统。经测试,发现小车性能稳定,VC设备能较好地通过WiFi对小车的运动状态实现精准控制。

关键词:μCOS-II;MSP430;WiFi小车;VC

中图分类号:TP242.6 文献标识码:A 文章编号:2095-1302(2017)02-00-03

0 引 言

近年来随着小车的智能化,多项技术在小车上得到了应用,对嵌入式软件的要求也随之提升。本文介绍了基于μCOS-II实时嵌入式操作系统设计软件的方法,既克服了传统软件设计方法的弊端,又充分发挥了硬件实时性的特点,增强了系统的稳定性。目前,WiFi技术得到了空前广泛的应用,如应用在手机、电脑、汽车、游戏设备和医疗设备等方面[1]。通过移动设备实现远程控制已成为新的发展方向。基于μCOS-II操作系统的WiFi小车能实现远程控制功能,可通过进一步开发来完成一些目前人类无法完成的任务,具有一定的实际意义。

1 系统总体设计

WiFi智能小车以MSP430F149单片机为核心,该处理器搭载μCOS-II操作系统,由VC平台设备、WiFi模块、稳压电源模块、测速模块、直流电机驱动模块构成。系统总体设计结构如图1所示。WiFi智能小车单片机模块与WiFi模块之间通过串口通信。VC平台设备可通过WiFi模块传输控制信号给MSP430F149单片机模块,以此控制直流电机驱动模块来驱动电机。单片机模块,直流电机驱动模块和测速模块形成一个闭环控制系统,自动平衡电机的转速,从而达到小车精准行动的目的。

2 智能小车控制系统硬件电路设计

2.1 核心控制器MSP430F149最小系统

核心控制器最小系统图如图2所示。控制器是智能小车的核心,该小车采用MSP430F149单片机作为核心控制系统。MSP430F149是MSP430系列超低功耗微控制器中的一种。它由2个16位定时器、8路快速12位A/D转換器、2个通用串行同步/异步通信信号接口(USART)和48个 I/O 引脚等构成。同时还具有2 KB的片内RAM和60 KB的Flash,可方便的在其上挂载操作系统。

MSP430单片机最小系统外围电路主要由晶振电路和复位电路组成。MSP430单片机的时钟输入源可以提供辅助时钟(ACLK)、系统主时钟(MCLK)和子系统时钟(SMCLK)共3种时钟信号[2]。本系统的晶振电路选用在XT2IN和XT2OUT管脚连接8 MHz高速晶振的高频时钟源产生的系统主时钟信号,外部32.768 kHz的精准晶振作为系统的子系统时钟源,提供了精准的时基,复位电路选用典型的阻容复位电路。MSP430单片机具有上电复位功能,即上电后保持RST/NMI端口为高电平,在RST/NMI管脚接上10 kΩ上拉电阻与0.1μF的电容可以使复位更可靠。系统低功耗运行时,若系统断电后立即上电,可使电容中的电荷通过二极管释放,加速电容放电,确保复位[3]。

2.2 稳压电源模块

为了给该小型嵌入式系统提供安全、高效、纯净、易控制的电源,充分考虑小车上各模块的运行环境,选取12 V镍氢电池组为系统提供电能。采用TI公司生产的TPS5430芯片作为开关电源模块组的核心芯片,可使电源的利用率及效率最大化。该芯片具有5.5 V至36 V的宽输入电压,上至3 A的输出电流,固定500 kHZ的开关频率,其转换效率高达95%,还具有极低的输出电压波纹,并预留了ENA控制引脚[4]。通过单片机软件控制该芯片是否进行转换,从而实现了电源高效、安全、纯净、易控的特点。开关电源模块组提供了8 V、5 V以及3.3 V的输出电压,分别给其它模块组供电。图3所示为TPS5430的应用电路[4]。

在系统设计中,R1取定值10 kΩ;Vout=8 V 时,R2=1.80 kΩ;Vout=5 V 时,R2=3.24 kΩ;Vout=3.3 V 时,R2=5.9 kΩ。

电容C3大于100 μF即可,C2固定为0.01 μF,系统采用12 V镍氢电池组供电,电感选取15 μH到22 μH之间为宜。由此,根据R1及R2的不同取值,可搭建出输出电压值为8 V、5 V、3.3 V的电路。

2.3 WiFi模块

WiFi模块选取海凌科电子推出的HLK-RM04型号,低成本嵌入式USART-ETH-WiFi(串口—以太网—无线网)无线网模块。该模块是基于通用串行接口的符合网络标准的嵌入式模块,内置TCP/IP协议栈,能够实现用户串口、以太网、无线网(WiFi)3个接口之间的转换。

该模块支持IEEE8021.11n、IEEE802.11g、IEEE802.11b无线标准以及IEEE802.3、IEEE802.3u有线标准,无线传输速率最高可达150 Mb/s。为控制的实时性和后续拓展视频或音频数据提供了极其便利的条件,智能小车采用该模块作为数据传输工具,同时该模块与电脑、手机等终端设备连接,可轻松实现网络远程监控[5]。小车与无线终端的连接利用HLK-RM04串口转WiFiCLIENT模式,在该模式下,WiFi使能,工作在CLIENT模式下,通过适当设置,COM1的数据与WiFi网络数据相互转换。

2.4 L298N电机驱动模块

L298N电机驱动模块的驱动芯片采用L289N双H桥直流电机驱动芯片。该模块可驱动2路直流电机,使能端高电平有效。利用MSP430F149的timer B输出不同占空比的PWM信号,实现电机正反转及速度调节。

电机的额定电压为5 V到8 V,系统分配给L298N的驱动电压为8 V,PWM波占空比为62.5%到100%时电机才能正常工作。

2.5 測速模块

测速模块采用了透射式红外对管,模块电路设计如图4所示。

利用MSP430F149的片内外设timer A对测速模块采集的脉冲进行统计,分别计算出两边车轮的转速,然后送入系统。

车轮直径为6.5 cm,测速码盘一圈有20个孔,设单位时间t内,单片机采集到N个脉冲,则小车的实际车速为:

3 软件设计

核心控制器MSP430F149搭载μCOS-II操作系统管理整个系统的运行状态和资源分配。同时还采用PID算法控制小车左右车轮速度保持平衡,利用MSP430F149的timerB输出四路PWM波控制小车整体行进速度及运动方向。

3.1 操作系统μCOS-II

软件设计运用小型嵌入式操作系统μCOS-II。μCOS-II的任务有就绪、阻塞、退出和运行四种状态,从微观角度看,某一时刻只有一个任务处于运行状态。操作系统根据每个任务自身的属性,通过系统调度算法决定这些任务在何时、何种状态下进行任务切换[6]。

传统单片机软件设计方法单一,程序只能逐一执行,随着软件程序功能的增多而变得极其复杂,难以保证各模块的实时性,且模块之间存在较大的相互干扰,难以设计出功能多样的系统。μCOS-II克服了上述所有缺点,使得编程变得较为容易,保证了程序执行的实时性,同时极大地提高了CPU的利用率。

3.2 PID算法

PID控制器,由比例单元P、积分单元I和微分单元D组成。小车左右转轮速度由PID控制器控制,本系统由PID算法软件模拟PID控制器以完成控制。PID控制器主要适用于基本线性和动态特性不随时间变化的系统,PID控制器原理框图如图5所示。

4 VC开发环境

VC平台设备所采用的开发工具是Visual C++6.0。Visual C++6.0简称VC或VC6.0,是微软公司推出的一款开发工具,它是面向对象的可视化编程环境。VC++6.0可以开发出具有良好兼容性、扩展性和交互功能的应用程序。VC++6.0能够提供面向对象技术的支持,所有函数都通过类封装起来,包括与用户界面设计相关的Windows API函数,并通过MFC类库的方式使用这些函数,使代码的可重用性大大增强。通过VC++6.0的应用程序向导(AppWizard)生成一个应用程序框架,在适当位置添加代码实现功能。

5 结 语

基于μCOS-II操作系统的WiFi小车,通过内挂μCOS-II操作系统的单片机核心处理单元、VC设备及软件设计实现采用WiFi无线遥控小车的功能,经实验测试,空旷地区遥控距离大于100米。在该控制系统下,无线遥控小车具有良好的稳定性、操控性、扩展性、实用性。

参考文献

[1]林志翔,肖宝森.新型多功能智能小车的设计与应用[J].现代电子技术,2011,34( 6) : 134-136.

[2]沈建华,杨艳琴,翟骁曙.MSP430系列16位超低功耗单片机原理与实践[M].北京:北京航空航天大学出版社,2004.

[3]张福才.MSP430单片机自学笔记[M].北京:北京航空航天大学出版社,2011.

[4] 德州仪器公司.TPS5430技术手册[EB/OL]. http://www.ti.com.cn/cn/lit/ds/symlink/tps5430.pdf.

[5]深圳市海凌科电子有限公司[EB/OL].http://www.hlktech.com/ch/productshow.asp?id=142#.

[6]杨宗德,张兵.μC/OS-II标准教程[M].北京:人民邮电出版社,2009.

[7]葛国庆,陈豹,胡飞,等.基于嵌入式系统火炉温度的远程无线采集系统[J].物联网技术,2016,6(6):45-47.

[8]付洁,赵晴,杨凯文,等.基于PCA P01的高精度电容测量[J].物联网技术,2014,4(2):27-29.