摘要:为了满足教学需求,利用嵌入式系统实验平台设计了一系列的传感器应用实验,叙述了硬件电路和系统软件的设计。利用该平台开发的实验内容具有一定的难度梯度和分层属性,给学生预留一定的设计内容,引导学生积极探索、提高其创新能力,并使公共课程之间的内在联系得到加强。
关键词:传感器应用;嵌入式系统;实验设计
中图分类号:TP368.1;G484文献标志码:A文章编号:1002-4956(2016)2-0065-04
作者简介:漆强(1978—),男,四川成都,硕士,讲师。主要研究方向为显示器件驱动和光电系统集成
随着互联网时代的来临,嵌入式系统以其控制灵活、智能化和互联性等特点,广泛应用于工业控制、环境工程、航天设备、生物医学工程、可穿戴设备及智能家居等领域。掌握基本的嵌入式系统设计方法是电子类专业学生应该掌握的基本技能。对于我院学生而言,是进行传感器应用和显示器件驱动设计的基础[3-4]。为此我们将多年的科研积累和教学实践相结合,设计了嵌入式系统实验平台,该平台除了包含嵌入式微控制器基本的最小系统、输入输出接口和人机接口外,还将所有的通用输入输出接口(GPIO)外引,用于进行各种传感器或者显示器件的驱动设计。嵌入式系统实物图见图1[5-6]。
1硬件电路设计
在各类传感器应用中,反射型光电传感器是应用最多的一种,不仅可以进行黑白颜色的路径导航,还可以用于障碍物的检测。这种光电传感器的基本原理是:内部带有一个红外发光管和一个红外接收管,红外发光管发出的光经过待测物体的反射后被接收管接收,接收管的电阻会发生变化,在电路上一般以电压的变化形式体现出来,经过ADC转换或LM324等电路整形后得到处理后的输出结果。电阻的变化取决于接收管所接收的红外信号强度。其实物图见图2[7]。由于反射型光电传感器采用一体化设计结构,并且感应的是红外光,常见光对它的干扰较小,是在智能导航小车、机器人等制作中广泛采用的一种传感器。以常用的黑白颜色路径导航的应用为例,其检测原理为:由于黑色吸光,当红外发射管发出的光照射在黑色表面后反射光较小,接收管接收到的红外光也就较少,表现为电阻比较大,通过外接的电路就可以读出检测的状态。同理,当照射在白色表面时,反射的红外光就比较多,表现为接收管的电阻就比较小[8]。
加装滤色片(可以用玻璃纸)可以方便地改变红外光管的光谱特性以制造各种颜色传感器、对不同颜色的路径进行识别。反射型光电传感器应用基本的电路。原理图电路分析:R1为限流电阻,不同大小的限流电阻决定了红外发光管的发射功率,R1越小,红外发射管的功率就越大,则检测的距离越远,但是功耗增加。因此可以根据自己的测试情况选择合适的限流电阻。R2为分压电阻,R2的选择和采用红外接收管的内阻有关,由于R2和接收管构成分压电路,因此R2的大小和接收管的电压变化有关。其阻值的选择需要在实际的测试环境中进行调整。
LM339AN配置为比较器的功能,同相端接一个可变电阻用于调节参考电压,反相端接光电传感器的输出。当同相端电压高于反相端时,输出管截止,相当于输出端开路,由外接的上拉电阻R4提供一个高电平。当反相端电压高于同相端时,输出管饱和,相当于输出端接低电位。2个输入端电压差别大于10mV就能在输出端得到电平状态的变化。按图3的原理图设计印制板图,和微控制器的接口只需要3根连线:电源(VCC),可接3.3V或者5V,地(GND),状态输出(OUT)。
2系统软件设计
完成反射型光电传感器模块的电路设计后,其基本的读取程序很简单,直接利用微控制器的GPIO的输入功能读取引脚的电平变化即可。由于我们设计的嵌入式系统平台采用了Cortex-M3内核的微控制器LPC1768,其GPIO的操作非常简单。在进行具体的路径识别时就需要进行一些算法的考虑,下面以最基本的黑白线循迹为例,介绍最简单的循迹算法。假设采用3个反射型光电传感器来进行路径检测,检测的环境为白色背景的KT板上贴上黑色的导航条作为路径引导。传感器检测到黑线时输出高电平,检测到白色背景时输出低电平[10]。
各种情况分析一下:
(1)当2号传感器检测到黑线,1、3号传感器检测到白线的时候,说明小车正在引导线正中行驶,这时不需要做任何调整,保持原来的方向行驶;
(2)当1、2号传感器检测到黑线,3号传感器检测到白线的时候,说明小车轻微右偏,这时需要稍微加大右轮的转速,使车体向左转较小的角度;
(3)当1号传感器检测到黑线,2、3号传感器检测到白线的时候,说明小车严重右偏,这时需要大幅度加大右轮的转速,使车体向左转较大的角度;
(4)当2、3号传感器检测到黑线,1号传感器检测到白线的时候,说明小车轻微左偏,这时需要稍微加大左轮的转速,使车体向右转较小的角度;
(5)当3号传感器检测到黑线,1、2号传感器检测到白线的时候,说明小车严重左偏,这时需要大幅度加大左轮的转速,使车体向右转较大的角度;
(6)当3个传感器均没有检测到黑线时,说明已经完全偏离引导线,失去方向,此时小车将失去导航,循迹失败,进行无规则运动。整个循迹算法按照这6种可能出现的情况进行编程,使用C语言的Switch-Case语句即可完成。如果要求导航的精度更高,可以增加光电传感器的数目,比如由3个增加到5个,甚至8个[11]。利用杜邦线将光电传感器,电机驱动模块和嵌入式系统实验平台搭建为一个整体的光电控制系统。智能小车的最前方就是安装的3个反射型光电传感器,车体上主要为嵌入式系统实验平台和电机驱动模块[12]。将基本的测试程序通过JLINK仿真器下载到嵌入式系统实验平台,在模拟的实验路径中能够进行导航操作,完成直行,转弯和躲避障碍物的基本动作。
3结语
基于嵌入式系统的光电传感器设计,将嵌入式系统的相关知识和传感器应用的知识相结合,并应用了基本的循迹算法让学生进行编程的练习,涵盖了软硬件设计的各个方面,契合了我们学院的专业方向,取得了良好的教学效果[13]。同时利用该平台开发的实验内容具有一定的难度梯度和分层属性,给学生预留一定的设计内容,引导学生积极探索,提高其创新能力,并使公共课程之间的联系得到加强[14]。
参考文献
[1]漆强,欧中华,刘子骥,等.嵌入式系统设计工程实践:基于Cor-tex-M3内核处理器LPC17XX[M].北京:国防工业出版社,2015.
[2]李宁.ARM开发工具RealViewMDK使用入门[M].北京:北京航空航天大学出版社,2008.
[3]赵俊.ARM嵌入式应用程序架构设计实例精讲:基于LPC1700[M].北京:北京航空航天大学出版社,2013.
[4]JosephYiu.ARMCortex-M3权威指南[M].宋岩,译.北京:北京航空航天大学出版社,2009.
[5]孙安青.ARMCortex-M3嵌入式开发实例详解:基于NXPLPC1768[M].北京:北京航空航天大学出版社,2012.
[6]刘火良.STM32库开发实战指南[M].北京:电子工业出版社,2013.
[7]王庆有.光电传感器应用技术[M].北京:机械工业出版社,2014.
[8]徐科军.传感器检测技术[M].北京:电子工业出版社,2011.
[9]何勇,王生泽.光电传感器及其应用[M].北京:化学工业出版社,2004.
[10]高月华.基于红外光电传感器的智能车自动寻迹系统设计[J].半导体光电,2009,30(1):134-137.
[11]宁慧英.基于光电传感器的智能小车自动寻迹控制系统[J].仪表技术与传感器,2012,49(1):108-110.
[12]楼建明,傅越千,安鹏,等.基于能力培养自制实验仪器设备[J].实验技术与管理,2014,31(9):81-86.
[13]应安明,王桂玲,刘桂涛.自制实验仪器设备在教学中的应用[J].实验室研究与探索,2003,22(1):20-21.
[14]韩宇光.ISP系统创新实验平台研制[J].实验技术与管理,2014,31(10):120-122.
作者:漆强 刘爽 单位:电子科技大学 光电信息学院