基于单片机的智能测角仪设计

2013-05-24 15:51李尚富饶连周魏名捷曾金顶林永福陈俊玮
三明学院学报 2013年4期
关键词:按键温湿度加速度

李尚富,饶连周,魏名捷,曾金顶,林永福,陈俊玮

(1.三明学院机电工程学院,福建三明365004 2.福建广播电视大学三明分校,福建三明365000)

基于单片机的智能测角仪设计

李尚富1,饶连周1,魏名捷1,曾金顶1,林永福1,陈俊玮2

(1.三明学院机电工程学院,福建三明365004 2.福建广播电视大学三明分校,福建三明365000)

研究了一种基于STC12C5A60S2单片机的智能测角仪。该测角仪由加速度传感器模块MMA7455、时钟模块DS1302、温湿度模块DHT11、语音模块ISD4004组成,实现了角度、时间、温湿度的显示、存储以及语音播报的功能,具有一定的推广价值和实用性。

单片机;MMA7455L;角度测量

如今的科学技术渗透到我们日常生活的每个角落,信息的获取非常重要,比如在建筑工地中需要保证楼层的采光就需要有一个合适两栋楼的角度。角度测量在许多领域运用中都有重要作用。传统的测量角度的方法都是通过笨重不方便的仪器读取其刻度值来获得的,得到的角度值不仅会因人眼的判断产生误差,而且测量的范围有限,这种情况造成了许多的不便。为此笔者采用单片机和加速度传感器为核心设计了一种简单、方便、性价比高又实用的智能角度测量仪,以解决使用不便和精度差的问题[1]。

1 系统的结构原理

智能测角仪整个系统的设计主要是由微控制器、数据信息采集模块、信息输出及存储模块3个部分组成,如图1所示。微控制器采用超低功耗STC12C5A60S2单片机,它能够实时处理数据信息采集部分传来的各种信息并控制各个器件正常运作。数据信息采集部分由加速度传感器MMA7455模块[2-3]、时钟DS1302模块[4]、温湿度传感器DHT11模块[5]组成,实现实时采集时间、角度、温湿度数据。同时测量部分还采用激光瞄准技术,延长了基准线的长度。信息输出及存储部分由液晶显示模块LCD12864、存储模块AT24C32和语音播报模块ISD4004组成,实现角度和时间数据的显示、存储功能,以及语音播报角度的功能。系统还具有通过按键对测角模式、时间设置模式和存储模式的切换功能。

图1 智能测角仪系统设计框图

2 系统硬件设计

2.1 信息采集模块电路设计

信息采集电路采集的数据有加速度、时间、温湿度。以下是其中的有关模块的介绍。

MMA7455模块可以使用SPI或I2C总线进行数据传输。本设计中采用I2C总线形式,把MMA7455采集回来的加速度通过P2.0、P2.1送给单片机进行处理转换成角度。其中将MMA7455的CS端接VCC,在SCL、SDA端各接一个10K的上拉电阻防止在总线空闲时外部干扰造成误启动I2C总线,保证了整个硬件的稳定[2-3]。

时钟DS1302模块采用串行数据传输,三线接口SCLK、I/O、RES分别与单片机的P1.6、P3.5、P1.7口相连进行同步通信,可准确地计算年、月、日、周、时、分、秒。通过单片机设置时间后可以精确地按正常的时间行走,但要注意在I/O口上加10 k的强上拉以保证能正确的读出寄存器中的时间[4]。

温湿度模块DHT11为数字信号输出的温湿度复合传感器模块,可用来测量温度、湿度。它采用单总线模式,DHT11的数据管脚2与单片机的P3.7口相连,一次连续读出的数据分为湿度高8位、湿度低8位、温度高8位、温度低8位、校验码8位,共5个字节的数据。需要在DATA端口接上拉电阻[5]。

激光瞄准部分直接使用红色激光管实现延长基准线的长度。信息采集模块的设计电路原理图如图2所示。

2.2 信息输出及存储模块电路设计

LCD12864显示模块可显示两行共32个字符的内容,可以显示角度、时间、温湿度。控制线RS、RW、E、PSB、NC、RST分别接单片机的P2.7、P2.6、P2.5、P2.4、P2.3、P2.2,数据线D0~D7接单片机的P0口。

语音模块运用ISD4004的电路[6]。将SCLK、MISO、MOSI、SS分别接单片机的P1.3、P1.2、P1.1、P1.0口,通过SPI总线实现语音模块与单片机的数据传输。在语音芯片内部的存储单元里,将各个的语音片段存储于相应的地址,当需要播报语音时,就可以一段一段提取相应存储地址的语音,实现分段播报。将INT接于单片机的P3.2,当此管脚被拉低,即触发中断,进入中断服务程序,在服务程序中通过语音模块与单片机的通信读出语音芯片相应地址的语音片段,即实现了语音播报。并注意是采用3.3 V电源供电,这个模块内有5 V转3.3 V的电路。

图2 信息采集模块设计电路原理图

存储模块选择了拥有32 k存储空间的AT24C32,采用2线串行EEPROM通信。管脚SCA、SDA接单片机的P1.5、P3.6口。由于存储的空间已满足设计的要求,故将电路中将芯片的1~4脚和7脚接地。且SCA、SDA各接一个10 k上拉电阻[4]。

图3为信息输出和存储模块的设计电路原理图。

在独立按键模块中各按键功能如下:

按键0:进入时间设置模式,该模式下按键1,按键2,按键3分别实现光标移位,数字加一,减一的功能。

图3 信息输出及存储模块设计电路原理图

按键1:进入存储记录模式,该模式下按键2,按键3分别实现地址加,减的功能。

按键2:进入测角模式,该模式下按键1实现存储和播报功能。

按键3:实现模式的退出功能。

3 系统软件设计

3.1 系统总流程

系统可分为3种模式:测角模式,存储模式,时间设置模式。图4为系统总流程图。

3.2 MMA7455测角子程序流程图和DHT11子程序流程图

在测角模式下进行采集数据信息,信息采集部分采集的有加速度、时间、温湿度数据。

重力加速度范围选择了适合测倾角的2 g模式,在程序中对+1 g的加速度输出0~0x3f设为正值,用公式(1)转换为角度,超出范围的为负值,在转换成角度之前要先将其取反变成正值。MMA7455模块将单轴重力加速度转换为角度的公式如式(1):xyz_angle=asin((((float)xyz_angle)/64))*10*360/2π(1)

系统先进行MMA7455模块的自检(是否为2g模式)和程序初始化,再按X轴地址0x06读出X轴的加速度值。上述条件下用公式(1)转换成角度的有效范围是-60°~+60°。要实现测量0~90°的倾角,采用单个X轴测量是不够的,故选择采用了在0~60°范围内用X轴进行测量,大于60°的用Z轴测量送。这样通过X轴、Z轴两轴的测量就可实现0~90°的角度测量。测角模式下的7455测角子程序流程图见图5。

温湿度的采集要先进行系统函数的初始化,然后按单总线形式读出5个字节的数据。将温湿度的4个字节数据相加和校验值比较来确定最终的输出数据。DHT11子程序流程图见图6。

图4 系统总流程图

图5 MMA7455测角子程序流程图

图6 DHT11子程序流程图

4 结论

采用单片机STC12C5A60S2和加速度传感器模块MMA7455,设计了一种简单、方便、性价比高、实用的智能测角仪,它具有测量角度、测量环境的温湿度、存储测量结果、语音播报角度、激光延长了测量的基准线等功能。通过硬件调试,其测角精度可达可0.5°左右,基本达到了设计要求。该智能测角仪体积小,使用方便,性能优越,具有一定的应用和推广价值。

[1]田东亮,向中凡.微型数字测角仪设计[J].西华大学学报,2008,27(4):77-80.

[2]胡文,陈永军,周健,等.基于I2C总线的位置检测的设计[J].仪器仪表与分析监测,2011,(3):9-11.

[3]林永福,孙清泉,王志江,等.基于加速度传感器的无线三维鼠标的设计[J].三明学院学报,2013,30(2):36-39.

[4]王晨光,孙运强.串行时钟芯片DS1302在温度测量记录仪表中的应用[J].电子测试,2008(12):65-70.

[5]倪天龙.单总线传感器DHT11在温湿度测控中的应用[J].单片机与嵌入式系统应用,2010(6):60-63.

[6]张建华,高守玮,杨建国.ISD4004语音芯片在语音报站器中的应用[J].电子技术应用,2003,29(8):70-71.

Design of Intelligent Goniometer Based on Single Chip Microprocessor

LI Shang-fu1,RAO Lian-zhou1,WEI Ming-jie1,ZENG Jin-ding1,LIN Yong-fu1,LI Jun-wei2
(1.College of Electromechanical Engineering,Sanming University,Sanming 365004,China 2.Sanming Branch School,Fujian Television Univetsity,Sanming 365000,China)

An intelligent goniometer based on STC12C5A60S2 microprocessor is studied in this paper.The goniometer is composed of the acceleration sensor module MMA7455,the clock module DS1302,the temperature and humidity module DHT11,and the voice module SD4004.The goniometer realizes the function of displaying the angle,time,temperature and humidity,and it also has the function of data-storage and voice broadcast,which possesses a certain value of practicability and popularization.

single chip microprocessor;MMA7455L;angle measuring

TH741.23

A

1673-4343(2013)04-0039-04

2013-05-30

大学生创新性实验计划项目(201211311009,201211311014,ZL1216/CS(sj));“卓越工程师”教育培养计划改革试点项目(SD1108)

李尚富,男,福建龙岩人,大学生;通讯作者:饶连周,男,福建明溪人,教授。研究方向:光电技术及自动控制。

猜你喜欢
按键温湿度加速度
“鳖”不住了!从26元/斤飙至38元/斤,2022年甲鱼能否再跑出“加速度”?
温湿度控制器在回收砂冷却系统中的应用
基于有限状态机的按键检测程序设计
基于DSP的多路温湿度监测系统
天际加速度
创新,动能转换的“加速度”
死亡加速度
基于温湿度控制的天气预测装置
蒸发冷却温湿度独立控制空调系统的应用
一种多方向导光按键结构设计