Journal of Sensor Technology and Application
Vol.03 No.03(2015), Article ID:15715,12 pages
10.12677/JSTA.2015.33011

Indoor Infrared Ultrasonic Location and Tracking Motor Speed Control Based on Single Chip

Yu Zhou1,2, Zhigang Yang1,2*, Yiyun Huang1, Fei Guo1

1Institute of Plasma Physics, Hefei Institutes of Physical Science, Chinese Academy of Sciences, Hefei Anhui

2University of Science and Technology of China, Hefei Anhui

Email: *yangzhigang@ipp.ac.cn

Received: Jun. 29th, 2015; accepted: Jul. 16th, 2015; published: Jul. 21st, 2015

Copyright © 2015 by authors and Hans Publishers Inc.

This work is licensed under the Creative Commons Attribution International License (CC BY).

http://creativecommons.org/licenses/by/4.0/

ABSTRACT

In this essay, a system of indoor object locating and feedback motor controlling based on single chip is introduced. The method has realized the goal of automatic tracking and automatic speed control for the electric fan by using the technologies including infrared trigger, ultrasonic ranging and three-point localization, and using MCU with L298N chip to control stepper motor and single- phase DC motor.

Keywords:Single Chip, L298N, Indoor Location, Motor Control

基于单片机的室内红外超声波定位和电机的跟踪调速控制

周宇1,2,杨志刚1,2*,黄懿赟1,郭斐1

1中科院合肥物质科学研究院等离子体物理研究所,安徽 合肥

2中国科学技术大学,安徽 合肥

Email: *yangzhigang@ipp.ac.cn

收稿日期:2015年6月29日;录用日期:2015年7月16日;发布日期:2015年7月21日

摘 要

本文提出了一种基于51单片机的室内目标定位并反馈指导电机控制的方案。采用红外线触发,超声波测距,三点定位技术,使用51单片机结合L298N电机驱动芯片来控制步进电机和单相直流电机,实现了电风扇自动跟踪目标和自动调速的功能。

关键词 :单片机,L298N,室内定位,电机控制

1. 引言

随着物联网等技术的发展和家用电器的日益智能化,对于室内环境下的目标精确定位和跟踪控制,已经成为自动化行业的一个新方向。虽然GPS定位技术已经在导航、测图等方面得到了广泛的应用,但是由于其精度主要针对室外大环境,而无法满足室内环境下的精确定位和跟踪控制,而小型的基于红外线和超声波的定位技术则由于其体积小、电路简单、价格低等优势,在小范围定位方面得到越来越广泛的应用。尤其在室内和一些恶劣的条件下,GPS定位系统无法使用,超声波定位技术就显得更为必要 [1] - [3] 。本文介绍了一种使用红外线和超声波的定位技术及其实现方法。并通过这种方法获得目标物体的空间三维坐标数据,从而反馈到控制器用来指导控制步进电机和直流电机。这种技术的应用可以使得系统能够实现电风扇自动跟踪目标,并根据目标位置自动调节转速,达到智能化的目的。

2. 系统介绍

本系统主要包括两部分:硬件电路部分和软件部分。硬件电路通过超声波红外定位系统获得的定位数据数字信号,并将其通过51单片机特定算法计算出相应的参考量,再以这些量为参考借助L298N电机驱动芯片来控制步进电机的转角和单相直流电机的转速。由此便可以实现风扇自动跟踪目标和自调速的目的。系统硬件框图如图1所示,包括定位系统电路模块、主芯片模块和电机驱动与控制模块。软件部分采用模块程序,主程序控制子程序,各子程序都具有相对独立的功能,易于扩展。

3. 系统硬件设计

3.1. 定位系统模块电路

3.1.1. 定位原理

首先在某室内空间建立坐标系,选定三个参考点1、2、3,设待定位的目标点为M,他们的空间坐标如图2所示,其中参考点坐标已知,目标点坐标未知。三个参考点选在同一参考平面上,可选室内地面作为参考平面。其中点1为整个室内空间坐标系的原点,分别与点2点3构成X轴、Y轴。确定需要定位的目标点后,使用系统硬件手段和软件程序测出目标点和三个参考点的距离l、m、n,再根据坐标计算公式(1)、(2)、(3)算出目标点的坐标值 [4] 。

式(1)

Figure 1. The hardware modules diagram of the system

图1. 系统硬件模块图

Figure 2. The schematic diagram of tracking location

图2. 定位原理示意图

式(2)

式(3)

X、Y、Z的数据值需要测距来获得。测距的原理基础是光速与超声波速度在量级上的极大差值。测距射端与接收端的分布如图3所示。

由于光速远远高于超声波速度,所以在室内带定位测距中光速由点1出发到达点2、点3、点M的时间可以忽略不计。因此,红外触发后三个计时器分别开始计时,当点1、2、3的超声波接收器分别收到超声波信号时,三个计时器分别停止计时,由此可以获得超声波从点M到点1、2、3的传播时间,进而可以获得点M到点1、2、3的距离l、m、n,又点1到点2、3的距离为已知,所以由式(1)、(2)、(3)可求得X、Y、Z,从而确定M点坐标。

3.1.2. 定位系统电路设计

整个系统需要四个80C52单片机和一个红外发射管和三个红外接收管,以及一个超声波发射管和三个超声波接收管和相应的外设电路和处理芯片。其中点2和点3处的单片机需要实时地向点1处的主控制芯片传输测距获得的位置数据,因此点2、点3分别与点1进行单向并行数据连接。

由系统定位原理可知,点1处有红外发射与超声波接收装置以及单片机,该硬件电路如图4所示。D为红外发射管,为保证红外发射距离足够,使用直流脉冲电流驱动方式。对单片机编程在P1.0I/O口输出载频为40 K调频为5 K的方波信号通过三极管的基极触发驱动红外发射管,且在红外触发信号发射时,计时器T1开始计时。Speaker为超声波接收管,其收到发射管的超声波信号后,将其解调转换,输出频率为200 Hz的调制信号,经过运算放大器的放大和整形,传给LM567。LM567是音频锁相环译码电路,

Figure 3. The diagram of ranging and tracking location

图3. 测距定位过程示意图

Figure 4. The schematic diagram of infrared sending and ultrasonic reception

图4. 红外发射与超声波接收原理图

其输出信号可以触发单片机P1.1I/O口,从而触发计时器T1停止计时。从而得到点1到点M之间声波传播的时间t1。另外,LM567还可以消除外界环境干扰信号,防止控制单元误动作。

点2、3处的硬件电路完全相同,有红外接收与超声波接收装置和单片机,该硬件电路如图5所示。在CX20106A电路接收到点1的发射的红外调制信号后,经过放大、解调和整形以及LM567的译码并传输给P1.1口后,该信号经程序分别触发计时器T2、T3开始计时;随后,超声波接收管接收到点M处发射的超声波信号并加以解调译码传输给单片机的P1.0口,该信号分别触发点2、3处的计时器T2、T3停止计时,由此获得超声波在点1到点2和点1到点3之间传播的时间t2、t3。

点M为待定位目标点,该处有红外接收与超声波发射装置和单片机,该硬件电路如图6所示。采用单片机外界红外接收管D,和超声波发射管Speaker。其中红外遥控专用集成电路CX20106A将D接收到红外光调制信号放大、解调、整形后通过7脚传到LM567,该信号为5K红外解调信号。编程实现该信号由P1.1口向P1.0口传输,作为超声波触发管的触发信号。类似图4中的红外发射管D,超声波发射管也是通过单片机控制三极管的开关触发的,区别是该管的触发还要增加一个变压器来进行阻抗匹配和电磁隔离 [5] 。

3.2. 主控制芯片与电机驱动模块电路

由定位系统获得的M点空间坐标可以求得待定位点(点M)与风扇中心(点1)正对方向在x-y平面上的偏角α,及与点1相对于x-y平面的倾角β,具体如图1所示,其中,M’为M在x-y平面上的投影。

, 式(4)

, 式(5)

其中,n转 = k*l,k为舒适度系数,、β和n转为电机控制参考量。

本系统选择两个步进电机,分别驱动两根相互垂直的转轴,使得扇头中心指向空间中的目标定位点;选择一个直流电机,通过扇头中心和目标点之间的空间直线距离数据来反馈控制电机的转速。而且,有定位原理可知,定位系统获得的位置信息通过点1处控制芯片1计算获得电机控制参考量,因此将电机及其驱动电路置于点1处,并与控制芯片1连接是方便且合理的,即定位系统中点1处的控制芯片与电机控制芯片为同一单片机。

电机控制电路分为一台直流电机调速控制和两台步进电机控制,统一采用电机驱动模块L298N,通过单片机控制电机,以达到预期效果。其中直流电机采用PWM控制对电机转速进行控制,L298N芯片中有专门的PWM输入接口用来控制电机转速,而PWM信号由51单片机结合外界电路通过计时器编程产生,这里就不详细描述该信号产生过程了。步进电机转角控制通过单片机的两个四位数据口传递给L298N的IN1~IN4的值,来控制步进电机转角,具体原理图如图7所示。注意,系统中需要两台步进电机完成定向,图中为方便阅读只画出一台步进电机的驱动与控制电路 [6] 。

4. 系统软件设计

软件部分采用C语言编程实现,程序采用模块化设计,方便扩展。程序主要分为主程序,定位系统程序,数据传输程序,电机控制程序。

4.1. 主程序流程图

系统启动后进行初始化,循环调用数据采集处理、定位、数据传输、电机控制几个模块程序,完成

Figure 5.The schematic diagram of infrared reception and ultrasonic reception

图5. 红外接收与超声波接收原理图

Figure 6.The schematic diagram of infrared reception and ultrasonic sending

图6. 红外接收与超声波发射原理图

Figure 7. The control circuit of DC motor and stepper motor

图7. 直流电机与步进电机的控制电路

目标定位与风扇转速控制工作。在工作中,80C52单片机实时采集目标位置坐标(l, m, n),并对定位数据实时处理,传输给电机驱动模块L298N,控制风扇主电机转速和转向控制电机的转角。主流程图如图8所示。

4.2. 定位子程序流程图

定位子程序被调用后,先由1处的MCU1发出指令,令该处发射红外光触发信号,并同时启动计时器T1。之后2处、3处和M处的外设电路接收到红外触发信号后,MCU2、MCU3、MCUM分别启动计时器T2、T3和超声波发射器。在MCU1、MCU2、MCU3先后接收到超声波信号后分别停止计时器T1、T2、T3,从而获得定位数据。具体流程如图9所示。

Figure 8. The flow chart of main program

图8. 主程序流程图

4.3. 电机控制子程序流程图

电机控制子程序被调用后,处理器先将数据传输子程序传递的定位数据按照前文提到的式(1)~(6)计算得出电机控制参考量α、β和n转。然后检查原存储地址(该地址存放每次定位数据计算后的电机控制参考量,以最近一次数据替换上一次数据)中的参考量α0、β0和n转0是否与参考量α、β和n转相等,若相等说明各电机控制量不变,否则以两次参考量之差来作为控制量控制电机的转速与转角。执行完毕后再对参考量重新赋值。电机控制子程序流程图如图10所示。

5. 实验

本系统的运行结果和数据主要分为两部分,一部分为定位系统的获得的空间某点相对于参考点的定

Figure 9. The flow chart of tracking location subprogram

图9. 定位子程序流程图

位坐标(x, y, z);另一部分则为两组步进电机的角位移和直流电机的转速n。系统第一部分数据为定位系统定位数据,定位系统用来定位主要获得数据为系统测量的L1,M1,N1三个距离数据,系统按照待定位点与参考点的距离远近,任意选取了空间中的几个点,得到测量数据,并同时用物理长度尺标测量了这些点的实际L2,M2,N2的值,用以比较,系统测量与尺标测量数据如表1所示。为降低系统的复杂程度,对直流电机转速采用开环控制,且将风扇舒适度与距离和风速的关系暂定为比例关系,即风速为距离l的比例系数时最舒适。系统第二部分数据选取电机转速随目标位置的变化关系,关系曲线如图11所示。

表1可知,本系统自动定位数据与尺标测量数据基本吻合,最大误差不超过2.5%,定位精度比较高。由图11可知,风扇电机转速能随目标位置的变化而有效变化,为目标提供舒适的风速。

Figure 10. The flow chart of motor control subprogram

图10. 电机控制子程序流程图

Figure 11. The curve of motor speed along with object location

图11. 电机转速随目标位置的变化曲线

Table 1. The data of automatic tracking location and tape measure for the system

表1. 系统自动定位数据与尺标测量数据

6. 结论

本文提出了一种基于51单片机的室内目标定位并反馈指导电机控制的方案。通过单片机及其外围电路能很好实现风扇智能跟踪目标和智能调速;软件设计也简单易懂;并通过实验证明本系统在室内环境下的定位功能具有准确性,其指导的电机控制系统也具有可行性。作为风扇、空调等家用电器的跟踪功能实现容易,在更换小功率管脚更少的控制芯片后成本也会更加低廉,真正实现了智能化、自动化。系统还可扩展温湿度检测、液晶显示和按键遥控等模块,前景广阔。另外系统的跟踪功能更可以为众多实际控制问题提供解决办法,如机器人,智能监控和跟踪航拍器等。

文章引用

周宇,杨志刚,黄懿赟,郭斐. 基于单片机的室内红外超声波定位和电机的跟踪调速控制
Indoor Infrared Ultrasonic Location and Tracking Motor Speed Control Based on Single Chip[J]. 传感器技术与应用, 2015, 03(03): 89-100. http://dx.doi.org/10.12677/JSTA.2015.33011

参考文献 (References)

  1. 1. 黄友锐 (2006) 单片机原理及应用. 合肥工业大学出版社, 合肥.

  2. 2. 鲁琦, 殳国华 (2006) 基于单片机的红外超声室内定位系统. 微处理机, 2, 66-68..

  3. 3. 张念鲁 (2005) 一个系统中多单片机之间的数据交换. 自动化仪表, 12, 37.

  4. 4. 苏长赞 (1993) 红外线与超声波遥控. 北京邮电出版社, 北京.

  5. 5. 肖景和, 赵健 (2003) 红外线热释电与超声波控制电路. 人民邮电出版社, 北京.

  6. 6. 王晓明 (2002) 电动机的单片机控制. 北京航空航天大学出版社, 北京.

*通讯作者。

期刊菜单