at89s52单片机范文
时间:2023-03-16 09:31:08
导语:如何才能写好一篇at89s52单片机,这就需要搜集整理更多的资料和文献,欢迎阅读由公务员之家整理的十篇范文,供你借鉴。
篇1
1、引言
随着生活水平的提高,人们对各种测量仪器的要求越来越高,脉搏的测量是评价人体生理状况很好的方法。本文设计的脉搏测量器可以通过手指准确测量出脉搏跳动的次数,通过发光二极管显示脉搏的跳动,并通过数码管显示出1分钟内脉搏跳动的次数。它解决了传统测量方法的不确定性和随机性,是一款性价比较高的脉搏测量器。
2、方案设计
基于AT89S52单片机的脉搏测量器由电源模块、复位电路、晶振电路、AT89S52单片机、脉搏感应电路、脉搏处理电路、脉搏次数显示电路以及脉搏显示发光二极管等组成。系统设计框图如图1所示。
3、硬件设计
电源电路为单片机以及其他模块提供标准5V电源;晶振模块为单片机提供时钟标准,使系统各部分能协调工作;复位电路模块为单片机系统提供复位功能;单片机作为主控制器,根据输入信号对系统进行相应的控制;红外发射和接收模块用来检测脉搏信号;信号变换模块用来把红外接收头接收的脉搏信号进行放大和滤波,以便单片机进行处理;显示模块用来显示具体的脉搏测量结果,它会记录脉搏一分钟跳动的次数;发光二极管可以通过发光的形式显示脉搏的跳动。设计出基于AT89S52脉搏测量器电路原理图如2所示。
4、软件设计
4.1 程序流程图
基于AT89S52单片机脉搏测量器的程序流程图如图4所示。其中初始化包含了定时器的设定、优先级的设定和初始值的设置。
4.2 程序清单
基于AT89S52单片机脉搏测量器的程序清单如下所示。
#include
unsigned char i,j,t,m,YSHSHJIAN,YSHHCHONG[3];
unsigned int n,MBO;
unsigned char code
WXUAN[3]={0xf7,0xef,0xdf}; //位选
unsigned char code
XSHB[10]={0x81,0xcf,0x92,0x86,0xcc,0xa4,0xa0,0x8f,0x80,0x84}; //字形码
sbit SHRU= P3^0;
void YSHI(YSHSHJIAN);
main() //主程序
{
TMOD=0X01; //定时器 T0 工作于方式 1
TH0=0xec;
TL0=0X78; //T0 定时时间为 5ms
IE=0X83; //开中断
IT0=1; //外部中断 0 为边沿触发方式
TR0=1; //开定时器 T0
for (;;) //脉搏指示灯控制
{
if(SHRU==0)
{
YSHI(200);
SHRU=1;
}
}
}
externa10()interrupt 0 //外部中断服务程序
{
SHRU=0; //点亮指示灯
if(n==0)
MBO=0;
else
MBO=12000/n; //计算每分钟脉搏数
YSHHCHONG[2]=MBO%10; //取个位数
MBO=MBO/10;
YSHHCHONG[1]=MBO/10; //取十位数
YSHHCHONG[0]=MBO/10; //取百位数
n=0;}
Timer0() interrupt 1 //定时中断服务程序
{
TH0=0xec;
TL0=0X78;
t=WXUAN[j]; //取位值
p3=p3|0x38; //P3.3~P3.5送 1
P3=P3&t; //P3.3~P3.5输出取出的位值
t=YSHHCHONG[j]; //取出待显示的数
t=XSHB[t]; //取字形码
p1=t; //字形码由 P3输出显示
j++; //j作为数码管的计数器,取值为0~2,显示程序通过它确认显示哪个数码管
if(j==3)
j=0;
n++;
if(n==2000) //10秒钟测不到心率,n复位
n=0
}
void YSHI(YSHSHJIAN) //延时子程序
{
for(;YSHSHJIAN>0;YSHSHJIAN--)
{
for(i=;i
}
}
5、系统仿真及调试
应用系统设计完成之后,就要进行硬件调试和软件调试了。硬件调试主要是把电路的各种参数调整到符合设计要求,软件调试可以利用开发及仿真系统进行调试。先排除电路故障,包括设计性错误和工艺性故障,一般原则是先静态,后动态。
5.1 硬件调试
利用万用表或逻辑测试器器,检查电路中的各器件以及引脚的连接是否正确,是否有短路故障。先要将单片机AT89S52芯片取下,对电路板进行通电检查,通过观察看是否有异常,是否有虚焊的情况,然后用万用表测试各电源电压。这些都没有问题后,接上仿真机进行联机调试,观察各接口线路是否正常。
5.2 软件测试
软件调试是利用仿真工具进行在线仿真调试,除发现和解决程序错误外,也可以发现硬件故障。
程序调试一般是分模块进行,分子程序调试,最后连起来统调。在单片机上把各模块程序分别进行调试使其正确无误,可以用系统编程器将程序固化到AT89S52的FLASH ROM中,接上电源脱机运行。
6、结束语
脉搏测量器利用单片机芯片为核心的数字控制,不仅减少了电子元器件的使用,而且有效的降低了控制电路对元器件参数的敏感,其精确度和可靠性得到明显的提高,而控制装置体积也随之变小,携带更方便。利用单片机强大的逻辑功能实现复杂的控制,进而提高整个控制装置的灵活性和适应性。
参考文献
[1]杨西明,朱骐.单片机编程与应用入门[M].北京: 机械工业出版社,2004
篇2
关键词:单片机编程 ;温度传感器; 自动浇灌; 光电耦合器
中图分类号:
TN911-34; TP368
文献标识码:A
文章编号:1004-373X(2011)19
-0144
-03
Design of Flower Automatic Watering System Based on AT89S52 Microcontroller
ZHOU Ying1, JIA Cheng-jun2, YU Ji1
(1. College of Electronics and Information, Northwestern Polytechnical University, Xi’an 710129, China;
2. Zhejiang Xinchang Supervision and Inspection Station of Product Quality, Xinchang 312500, China)
Abstract: To design a convenient home automatic watering device for flowers, AT89S52 microcontroller is used to implement programmable control. In combination with the external temperature sensor, evaporator, control signals, keys and alarm circuit, the automatic adjustment of the watering time interval, automatic watering stop in cold weather and alarm circuit to remind the users to perform some antifreezing measures in time according to different illumination, temperature and so on were realized. The modularization management of the system is convenient for the post-expansion and is low cost. It is suitable for applications at home.
Keywords: microcontroller programming; temperature sensor; automatic watering; optocoupler
收稿日期:2011-04-19
0 引 言
随着生活条件的改善,越来越多的人们在家中种植了各种花卉植物用以美化环境。花卉的生长需要稳定的环境湿度和温度,但一般来讲,家庭种植花卉植物的浇水工作主要凭借主人的主观判断来决定浇水量的大小,浇与不浇非常随意,经常会是浇得过量或者过少。
目前市场上有一些自动浇水的装置,例如一些双层的花盆,利用虹吸或者微渗原理,保持花盆的湿润。但是这样的装置不能根据不同植物不同季节的不同需求进行精确调节。当然目前也有能够精确调节浇灌量的浇水系统,但是通常这样的系统复杂庞大、装配费用高昂、维修困难,一般应用于苗圃、农场等大规模种植,不适于家庭使用。
为了克服现有技术结构复杂、费用高、不适于家用的不足,本文设计了一种自动浇灌装置,能够利用简单设备实现根据实际的水份蒸发量调节浇水量。
1 总体设计
花卉的正常生长要求温度和湿度稳定在一个既定范围内,超出或者低于这个范围将影响花卉的正常生长。该系统采用AT89S52可编程单片机测控,实现花卉生长环境因子信息数据的实时采集、处理,输出信号控制执行机构,以实现环境湿度和温度强度的测控,达到节水节能,省时省工的效果。软件开发用C语言,采用模块式结构,系统功能易于扩展。
系统具体功能如下:
(1) 实现按需灌溉功能。按照花卉的需求开启和关闭灌溉系统,实现一般的控制。具有结构简单,成本低,操作方便。
(2) 通过传感器检测花卉生长的环境温度和土壤湿度(用蒸发器信号表示),依据设定的植物要求的温度和湿度的上下限值,由单片机来控制开关窗户、电磁阀和排风扇,从而调节温度和湿度。当空气温度高于上限值时,自动打开排风扇进行自然降温,达到要求值时则自动关闭。温度过低时发出警报,提醒用户及时采取防冻措施。
系统结构组成如图1所示。
本自动浇灌系统是基于AT89S52单片机进行可编程控制,结合的温度传感器、蒸发器、控制电路等实现花草的自动浇灌,具有精确、稳定、成本低的优点。
图1 系统结构图
2 系统硬件设计
系统自动控制部分由AT89S52单片机控制系统实现,单片机硬件电路原理框图如图2所示。
图2 单片机硬件结构框图
2.1 温度控制、显示电路
2.1.1 温度控制电路
温度传感器电路原理图如图3所示。
图3 温度传感器电路
系统的温度传感器采用DS18B0单线数字式温度传感器。该温度传感器,适用电压为3~5 V(跟单片机5 V电源供电可以适用同一电源),可测温度范围为-55~125 ℃(完全可以满足本系统),而且它只需单总线进行信息交互,即只需占用单片机的一个I/O口,而且基本不需要外部原件。
2.1.2 温度显示电路
温度显示电路原理图如图4所示。
系统采用2位共阳数码管显示环境温度,使用2个8550三极管通过单片机I/O P2.2和P2.3进行数码管位选。单片机上电后,P2.2和P2.3为高电平,当P2.2和P2.3变为低电平(编程进行控制)时,数码管选通,单片机P3口从温度传感器DS18B20的寄存器中读取当前温度的信息,P3口将数据信息送到数码管,进行显示。
图4 温度显示电路
这样可以很直观地告诉用户当前环境的温度,同时采用数码管而非液晶屏,可以有效控制成本。
2.2 电磁阀、排风扇电路
电磁阀和排风扇电路原理基本相同,当检测到单片机相应的I/O口输出低电平时(由于单片机上电时I/O口都是高电平,所以采用低电平为有效信号),通过三极管使驱动电路导通,从而驱动电磁阀或者排风扇工作。当单片机I/O口恢复高电平时,驱动电路断开,从而使电磁阀或者排风扇停止工作。
I/O口的高低电平变化,通过采集传感器的信息,通过单片机编程进行控制。更具体说明会在软件系统设计中进行介绍。
电磁阀控制电路主要由NPN共集-共射复合管及光电耦合器组成,当单片机P2.4给出高电平,复合管导通,继电器接通,将开关吸合,电磁阀接通开始放水。电磁阀控制电路如图5所示。
图5 电磁阀控制电路
本电路通过单片机的P2.6口控制电磁阀通断,当P2.6为低电平时,通过光电耦合器TP521-1使3/4管脚之间导通。由于电磁阀工作电压是12 V,而且工作时电流较大,采用8050和TIP41两个NPN三极管进行驱动。此时电磁阀正常工作,给花草进行浇灌。当P2.6口变为高电平时,光电耦合器3,4脚之间断开,电磁阀停止工作,不再灌水。
2.3 报警电路
报警电路原理图如图6所示。
图6 报警电路
报警电路的蜂鸣器采用单片机的P2.5口进行控制,当环境温度低于0℃时,P2.5口变为低电平,使三极管8050导通,从而使蜂鸣器工作,同时由P2.0控制的LED灯“R”(Red)会不停的闪烁,提醒用户及采取措施防止花草受冻。当环境温度恢复正常时,P2.5恢复高电平,蜂鸣器停止工作。
LED灯“G”(Green)亮,表示电磁阀正在工作,给花草浇灌。
3 系统软件设计
本系统选用适时性强与透明度高的C语言作为编程语言,系统软件的开发全部采用Keil μVision 3进行。系统程序的开发,采用了流行的模块化设计方法。在程序设计中,可根据系统功能,将整个软件系统划分为若干个功能相对独立易于解决的模块,每个模块是一个结构完整,相对独立的程序段,能完成某一规定的任务,实现某个具体的功能。
系统软件的设计,主要由如下程序模块组成:DS18B20温度采集、排风扇控制、电磁阀控制、警报电路控制等。整个系统的主程序流程如图7所示。
系统在上电初始化后将对环境温度、蒸发器信号进行判断,当环境温度过高时,系统将打开排风扇进行散热,当环境温度恢复适当时,系统将关闭排风扇,当环境温度过低时,会发生警报,提醒用户采取防冻措施保护花草。当蒸发器输出低电平时(即花草的土壤湿度过低),电磁阀打开,进行灌溉加湿。
通过上述主体流程控制,即可以达到有效的控制,使得室内环境对花卉植物的生长基本处于最佳的状态。
4 结 语
基于AT89S52单片机为核心的控制电路、传感器电路和执行器件及机构组成,硬件电路简单,不需要A/D转换器件,同时考虑温度、湿度等多因子的自动浇灌系统,较全面考虑了各种因素。系统硬件电路采用成熟的电路设计,元件选用成本较低的器件,电路稳定,抗干扰力强,性价比较高。软件开发用C语言,采用模块式结构,系统功能易于扩展。
本系统设计已经取得国家专利(专利号:200820028410.7),硬件系统经过实验调试,系统设计可以满足预期功能要求,经小批量试点投放使用6个月,系统表现稳定。
参 考 文 献
[1]谭浩强.C程序设计[M].北京:清华大学出版社,2006.
[2]朱克武,贺小龙.温室大棚自动控制系统的研究[J].农业网络信息,2005(5):52-53.
[3]阳厚森,刘文敏,张天顺.温棚土壤湿度自动控制节水喷灌技术[J].农机化研究,2005(2):101-103.
[4]冯同普.全自动喷灌系统的软件开发[J].河北水利水电技术,2002(1):32-34.
[5]吴水平.温室自动喷灌控制系统设计与研究[D].长沙:湖南农业大学,2008.
[6]黄汉云.太阳能光伏发电应用原理[M].北京:化学工业出版社,2009.
[7]赵争鸣.太阳能光伏发电及其应用[M].北京:科学出版社,2005.
[8]潘新民,王燕芳.微型计算机控制技术[M].北京:电子工业出版社,2009.
[9]汤竞南,沈国琴.51单片机C语言开发与实例[M].北京:人民邮电出版社,2008.
[10]张银霞.单片机自动微灌控制器的研究设计与应用[D].郑州:河南农业大学,2000.
篇3
杨雅玲
(山东理工大学;山东 淄博 255000;滨州市技师学院,山东 博兴 256500)
【摘 要】设计了一种自动巡线轮式行走机器人控制系统,采用AT89S52型单片机作为主控CPU,外加一个复杂可编程逻辑器件(CPID)协助CPU处理数据,扩展了程序参数存储器,能够进行检测引导线和直流电机、舵机的PWM控制。
【关键词】控制系统;复杂可编程逻辑器件;存储器;光电检测;脉冲宽度调制
文章编号:ISSN1006―656X(2014)01-0060-01
一、引言
轮式移动机器人是机器人研究领域的一项重要内容,它集机械、电子、检测技术与智能控制于一体。在各种移动机构中,轮式移动机构最为常见。轮式移动机构之所以得到广泛的应用,主要是因为容易控制其移动速度和移动方向,因此,有必要研制一套完整的轮式机器人系统,并进行相应的运动规划和控制算法研究。笔者设计和开发了基于5l型单片机的自动巡线轮式机器人控制系统。
二、控制系统总体设计
机器人控制系统由主控制电路模块、存储器模块、光电检测模块、电机及舵机驱动模块等部分组成,控制系统结构如图1所示。
三、主控制模块设计
(一) CPLD设计
在机器人控制系统中,需要控制多个电动机和行程开关,还要进行光电检测,如果所有的任务都由AT89S52型单片机来完成,CPU的负担就会过重,影响系统的处理速度。因此扩展1个CPLD,型号为EPM7128,它属于MAX7000系列器件,包括2个通用1/0口,2个专用
I/O口。专用I/O口可作为每个宏单元和输入输出引脚的高速控制信号(时钟、清除和输出功能等),PWM信号也由其产生。
(二) 机器人运行参数存储器的扩展
机器人运行路径和动作可以根据比赛情况的不同而发生变化,这样每改变1次运行参数就必须对单片机的Flash进行1次擦写。为了解决这一问题,扩展了程序参数存储器,用来存放机器人的运行路径和动作参数。扩展电路如图2所示。
其中IC1为24LC08B,是I2E总线的串行E2PROM存储器,最多能够存储lK字节的数据。IC2为MAX3232型电平转换器,其内部有1个电源电压变换器,可以将计算机的电平转换为标准TTL电平,实现计算机与单片机之间通过串行口传输数据,使单片机完成对24/LC08B的数据存储操作。单片机运行时,直接从24LC08中读取机器人的运行参数,控制机器人运行。
四、光电检测模块设计
(一)光电检测过程
设计光电检测模块是为了让机器人能够检测地面上的白色引导线。光电检测电路主要包括发射部分和接收部分,其原理如图4所示。
发射部分的波形调制采用了频率调制方法。由于发光二极管的响应速度快,其工作频率可达几MHz或十几MHz,而检测系统的调制频率在几十至几百kHz的范围内,能够满足要求。光源驱动主要负责把调制波形放大到足够的功率去驱动光源发光。光源采用红外发光二极管,工作频率较高,适合波形为方波的调制光的发射。
接收部分采用光敏二极管接收调制光线,将光信号转变为电信号。这种电信号通常较微弱,需进行滤波和放大后才能进行处理。调制信号的放大采用交流放大的形式,可使调制光信号与背景光信号分离,为信号处理提供方便。调制信号处理部分对放大后的信号进行识别,判断被检测对象的特性。因此,此模块的本质是将“交流”的、有用的调制光信号从“直流”的、无用的背景光信号中分离出来,从而达到抗干扰的目的。
(二)光电探头
光电探头安装在机器人底盘前部,共设置了5个检测点。从理论上讲,检测点越多、越密,识别的准确性与可靠性就越高,但是硬件的开销与软件的复杂程度也相应的增加。采用该巡线系统保证了检测的精确度,节约了硬件的开销。发光二极管发出的调制光经地面反射到光敏二极管。光敏二极管产生的光电流随反射光的强弱而线性变化。把这种变化检测出来,就可以判断某一个检测点是否在白色引导线的上方,从而判断机器人和白色引导线的相对位置。
五、电机驱动模块
机器人的驱动件主要是电机和舵机,都可以采用PWM进行调速与控制。根据脉冲编码器的反馈信号,对机器人的运动状态进行实时控制。直流伺服电机的控制原理如图3所示。调节:PWM的信号就能够快速调节舵机的转角,从而实现机器人的方向控制。
篇4
0引言
近年来,随着电子技术行业的飞速发展,现在很多家庭都安装了智能报警系统,因而大大提高了安全程度,有效保证了居民的人身财产安全。红外线具有不见光、隐蔽性强和保密性好等特点,因此广泛应用于安保装置中[1]。红外线报警器的简易、灵敏度高为人们解决了不少实际问题。但是市场上的报警器大部分用于一些大型机构,价格高昂,一般家庭难以接受,本文应用AT89S52单片机控制的电路来设计一种价廉、性能灵敏可靠的红外线防盗报警器,期望达到方便、实用的效果。
1系统硬件电路的设计
从设计需求,所完成的功能上来分析,该系统以单片机AT89S52系列为核心,采用红外线发射管和红外线接收管为发射和接收装置,在监测点上的红外接收装置检测是否接收成功将信号并且将信号传至AT89S52单片机。在单片机内,经软件中断、识别判决等环节实时发出入侵报警信号。驱动电路将控制信号放大并推动声光报警设备完成相应动作。当报警延迟一段时间后自动解除,也可人工手动复位解除报警信号,或者是利用定时器实现自动消除报警。系统原理框图如图1所示:
图1 报警系统原理框图
报警系统硬件电路系统采用AT89S52单片机,直流可调开关MC34063,反相器74LS14D等芯片。具体电路图如图2所示,其中,AT89S52的P1.2~P1.7八位引脚作为输出口,而P3.0~3.5六位引脚作为输入口。P1口连接红外线发射电路,P1口为低电平时,红外线发射电路导通,正常发射红外线[2]。P3口输入经接收红外线电路接收并由反相器反相的电平,当电平到达单片机CPU后,若各口均为低电平,则CPU不做任何反应,此时不报警;而当红外线被人为挡住而使接收电路无法接受到时P3输入口就会输入高电平,此时当在一定的时间内检测到位于不同位置的光束被遮挡时,由P2.0引脚输出报警信号,驱动声光报警电路进行报警[3]。
图2 AT89S52单片机外围接口电路
2系统软件的设计
报警系统整体程序设计过程是当检测到有人闯入时,P3口由低电平翻转成高电平,向CPU发送中断报警请求信号,经过CPU软件识别,由P2.0口输出间隔为1秒的脉冲信号去驱动语音报警电路。程序起监视作用, 程序开始后,系统初始化结束后判断是否有人闯入、红外线的接收是否中断,若有则报警,若无则回到上一级继续判断是否有人闯入。若有报警,报警一段时间后,判断是否关闭报警系统,可以人工复位,也可以通过定时器定时关闭报警系统。本系统软程序设计流程图如图3所示:
图3 系统整体程序流程图
程序主要采用C语言编写,部分程序代码如下:
void main() //主函数
{
InitTimer(); //定时器初始化
while(1)
{
KeyScan(); //键盘扫描
if((IR1==0)||(IR2==0)) //红外端口采集到数据 有人入侵
{
PlayVoic(); //报警
ET0=1;
TR0=1; //开始计时 10s后无人则关闭报警
PlayFlag=1; //报警标志位置1 开启报警
}
if((IR1==1)||(IR2==1)) //没采集到
{
CloseVoic(); //关报警
}
if(PlayFlag==1) //报警标志位置1 开启报警
{
PlayVoic();
}
}
}
3结束语
本次红外语音报警系统的设计重点在于如何利用AT89S52和红外收发装置进行报警的程序设计,通过软件程序对信号做出判断处理,更好的实现系统功能。本报警系统成本低,安装方便、隐蔽,非常适用于家庭、小区进行检测,可以非常及时报告家中发生的事故,便于户主及时处理,将损失降到最小。
篇5
【关键词】AT89S52单片机;LCD;计算器
文章编号:ISSN1006―656X(2014)05-0153-01
一、前言
计算器是与我们日常生活中最为常用的计算工具,虽说现在智能化手机都以集成了部分计算器的功能,但对于某些财务工作者而言,计算器仍然是其不可替代的便携工具。较比简单的普通计算器而言,科学计算器除了能进行加减乘除四则运算之外,还可以进行乘方、开方运算、具有指数、对数、三角函数、反三角函数及存储等计算功能。为此,开发设计更加具有小型化、功能化、精度化的多功能科学计算器具有一定的社会价值及推广价值。
本设计使用AT89S52单片机作为主控制芯片,通过计算机的8×8矩阵键盘进行数据输入,进行相应的加、减、乘、除的运算,以及乘方、开方、正余弦函数等一般常用运算,并在LCD1602上显示相应的结果。AT89S52单片机是一种低功耗、高性能COMS 8位微控制器,具有8K在系统可编程Flash储存器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash容许程序存储器在系统可编程,亦适用于常规编程器。在芯片上,拥有灵巧的8位CPU和在系统可编程FLash,使得AT89S52在众多嵌入式控制应用系统中得到广泛应用。
二、核心芯片概述
(一)AT89S52单片机
AT89S52 是一种低功耗、高性能CMOS 8位微控制器,具有8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
(二) 8*8矩阵键盘
键盘可分为两类:编码键盘和非编码键盘。编码键盘是较多按键(20个以上)和专用驱动芯片的组合,当按下某个按键时,它能够处理按键抖动、连击等问题,直接输出按键的编码,无需系统软件干预。通用计算机使用的标准键盘就是编码键盘。在智能仪器中,使用并行接口芯片8279或串行接口芯片HD7279均可以组成编码键盘,同时还可以兼顾数码管的显示驱动,其相关的接口电路和接口软件均可在芯片资料中得到。当系统功能比较复杂,按键数量很多时,采用编码键盘可以简化软件设计。非编码键盘成本低廉。从成本角度出发,本设计选用的是非编码矩阵键盘。计算器的键盘布局如图所示:一般有64个键组成,在单片机中正好可以用4个P口实现16个按键功能,这种形式在单片机系统中也是最常见的。如图1所示:
三、软件系统设计方案
主程序设计主要针对51单片机进行数字计算器系统设计开发,利用C语言编程,并用开发板制作并显示。核心子程序设计包括LCD1602显示模块程序设计,以及矩阵键盘的驱动设计。
(一)液晶显示程序设计
显示模块程序首先要对显示模块进行初始化;然后控制光标的位置;定义液晶显示的控制端口,用SBIT指令完成;然后设置清屏、关闭显示、归位、开显示、显示位置的首地址等等。
LCD1602在上电以后,应该先等待50毫秒左右,让其内部芯片初始化后再对其进行操作。在对其操作时,应参考其时序图,先把命令写入其内部寄存器设置它的工作方式和状态。要显示数据的时候,先设置好显示坐标,在往里写入要显示的ASCII码,LCD则通过刷新和替换新的数据。
(二)矩阵键盘扫描程序设计
键盘扫描子程序,首先读出P1的低四位,然后读出P1口的高四位。然后键值并显示缓存。然后将键值转换为ASCII码然后就可以软件来设置硬件按键各个键代表的内容。读键程序使用的是反转法读键,不管键盘矩阵的规模大小,均进行两次读键。第一次所有行线均输出低电平,从所有读入键盘信息(列信息);第二次所有列线均输出低电平,从所有行线读入键盘信息(行信息)。数字键按下则将相应的数字送入缓存区,功能键按下则执行相应的程序。
经过多次测量与调试,本计算器基本能实现设计要求中的功能。由于本设计功能相对简单,计划在后续的功能中,不断增添新功能,进而完善计算器的功能。
参考文献:
[1]李建中.单片机原理及应用[M].西安:西安电子科技大学出版社,2011:(15-17).
[2]肖洪兵. 跟我学用单片机[M]. 北京:北京航空航天大学出版社,2002.8:(3-20).
篇6
关键词:单片机;用电保护;智能
1 系统设计方案
1.1 实现目标
设计一种能够实现家庭过功率保护,在家庭电路过功率的情况下能够自动断电并在功率恢复后自动启动的智能多通道电功率分配系统。该系统还能通过按键直接设置上限功率,同时该系统不仅能够实时显示干路电流和功率,还能实时显示电路工作状态和危险信号,并做出有效反应。具有价格便宜、使用方便、性能可靠、功率可控等优点。
1.2 系统总体功能
通过电流互感器SCD211FK、峰值检测电路实时检测入户线上的电流、电压,将检测到的值通过数模转换电路ADC0809输入单片机AT89S52,AT89S52将电流、电压值反映到LCD液晶显示屏上。通过按键电路给系统设定一个功率上限值,当家用电器的功率超过给定值时,单片机AT89S52给继电器信号,促使其发生保护动作,切断电源,并在LCD液晶显示屏上显示。当家用电器的功率低于功率上限时,单片机AT89S52给继电器信号,使其恢复给家用电器供电。
1.3 工作原理
系统是基于单片机AT89S52控制系统,包括显示模块、传感器模块、峰值检测模块、AD转换模块、放大模块等。干路大电流通过电流互感器STC211FK能够转换成小电流输出,再经过精密运放OP07转换成电压信号,然后通过检波电路进行峰值检测,再有AD0809采样输出稳定值,进过软件计算可得到精确地功率,从而实现过功率保护。
2 单元电路设计
2.1 电流互感器放大电路
电流互感器放大电路中使用SCT211FK电流互感器。SCT211FK是一款高精密的电流互感器,输入额定电流为2mA,额定输出电流为2mA。其线圈扎数比为1:2000,可耐控冲击电流为100A*1秒。
2.2 数模转换电路
ADC模块中主要是逼近型数模转换器ADC0809芯片,ADC0809芯片内部具有锁存功能的8通道模拟多路开关,可对8通道0~5的输入模拟电压分式的进行转换,芯片内具有多路开关地址译码器和比较器、锁存电路、256R电阻T型网络、逐次逼近型寄存器、SAR树状电子开关、控制和时序电路等。ADC0809芯片输出具有TTL三台锁存功能的缓冲器,可以与单片机总线直接连接。
2.3 峰值检测电路
由运放LF353和二极管、电容构成的检波电路,用于检测入户电压峰值。LF353是JFET型标准线性运算放大器,用电压跟随器不仅能作为缓冲器,而且和很好的隔离作用,并且能提高直流特性。该电路利用二极管的单向导通能力和电容充放电特性,得到比较准确的峰值。
2.4 基于单片机AT89S52的单片机最小硬件系统
单片机运行工作起来,所必需的最基本电路组成。最基本电路构成有电源电路、时钟电路、复位电路。
2.4.1 复位电路。由电容串联电阻构成,由“电容电压不能突变”的性质可知,当系统一上电,RST脚将会出现高电平,并且这个电高平持续的时间由电路的RC值来决定。典型的52单片机当RST脚的高电平持续两个机器周期以上就将复位,所以,适当组合RC的取值就可以保证可靠的复位。本设计中C取10μ,R取8.2K。原则要让RC组合可以在RST脚上产生不少于2个机器周期的高电平。
2.4.2 时钟电路。当单片机在工作时,从取指令到译码再进行微操作,必须在时钟信号控制下才能够有序的进行,时钟电路就是为单片机工作提供基本时钟的。单片机的时钟信号通常有两种产生方式:内部时钟方式和外部时钟方式。在单片机XTALL1和XTALL2引脚上跨接上一个晶振和两个稳频电容,可以与单片机片内的电路构成一个稳定的自激振荡器。晶振的取值范围一般为0~24MHz,常用的晶振频率有6MHz、12MHz、11.0592MHz、24MHz等。
2.4.3 电源电路。AT89S51单片机的工作电压范围:4.0V~5.5V,所以通常给单片机外接5V直流电源。该电路输入家用220V交流电,经过全桥整流,稳压后输出稳定的5V直流电。方便实用,输出电压稳定,最大输出电流为1A,电路能带动一定的负载。
2.4.4 单片机最小系统电路。单片机最小系统复位电路的极性电容C1的大小直接影响单片机的复位时间,一般采用10~30uF,51单片机最小系统电容值越大需要的复位时间越短。系统晶振Y1也可以采用6MHz或者11.0592MHz,在正常工作的情况下可以采用更高频率的晶振,51单片机最小系统晶振的振荡频率直接影响单片机的处理速度,频率越大处理速度越快。系统中的起振电容C2、C3一般采用15~30pF,并且电容离晶振越近越好,晶振离单片机越近越好。由于检测一个从1到0的下降沿需要2个机器周期,因此要求被采样的电平至少要维持一个机器周期。当晶振频率为12MHz时,最高计数频率不超过1/2MHz,即计数脉冲的周期要大于2ms。
3 结束语
本系统基于单片机AT89S52设计,适用于当家庭电路发生过功率时,实现自动断电保护。可以通过按键直接设置上限功率,超过上限功率系统将对家用电器实现自动断电。通过LCD液晶能够实时显示干路电流和功率,并且能实时显示电路工作状态和危险信号,以此来做出有效反应。
参考文献
篇7
Abstract: In the test of weapons range, whether it can accurately control the initiation time of rocket warhead, whether it can achieve the best position in the initiation of rocket fuse is the key criterion to evaluate the performance of the fuse, therefore it needs to design a set of shellburst height measuring system to carry out the relevant tests. In view of this situation, this paper puts forward design scheme of time series control circuit based on the GPS timing module, designs time series module control circuit, time display circuit and single chip microcomputer control program with AT89S52 microcontroller, to realize the synchronous record of time and real-time display function, and synchronization precision can reach microsecond level.
关键词:引信;授时;AT89S52单片机;时统电路
Key words: fuse;time service;AT89S52 microcontroller;unique-time circuit
中图分类号:TN108.7 文献标识码:A 文章编号:1006-4311(2016)32-0123-02
0 引言
引信[1]是火箭弹或导弹系统的重要组成部分。火箭弹或导弹的飞行末端探测目标后以一定规则适时起爆战斗部,这些功能都要靠引信来实现。引信性能的好坏将直接关系到武器系统的综合性能的优劣。各种各样探测原理的近炸引信随着现代科学技术的飞速发展得到了普遍的应用。本文所设计的测试系统可以对炮弹炸点的位置进行非接触式测量,从而消除了测量时的危险因素,使得安全性大大的提高。运用该测试系统可以测试近炸引信性能,检测该引信能否按设定的时间引爆炸弹,起爆点定位是否精确等等,以此判断被引爆的炮弹是否发挥了最大威力。
1 时统模块电路总体设计
时统模块电路主要由GPS-0EM模块、时统控制电路和CPLD电路组成,控制原理见图1。在图1所示的电路结构中,GPS模块向时统控制电路提供GPS时间信息,通过接口电路向单片机发送时间数据,单片机在接收秒级时间信息后开始对CPLD电路进行实时控制。在发送时间数据的过程中,GPS模块同时会对本地时钟电路发送一个控制CPLD逻辑电路启动的脉冲信号,该电路模块接收控制后,开始以微秒为单位进行计数,当计数溢出时,指示灯电路就会响应CPLD逻辑电路的控制信号开始向单片机发送溢出信号,此后单片机进行秒级时间的递增,由此来实现微秒级时钟的功能。触发信号时,隔离电路将其发送到CPLD逻辑电路中,通过逻辑电路向单片机输入该微秒级时间数据。与此同时,相机驱动电路控制高速摄像机进行拍摄。最后,单片机通过专用串口将所有时间数据传输至PC机,使PC机自动记录相机起拍时间。
RS-232串口接口电路、单片机控制电路以及电平转换电路是时统控制电路中最主要的组成部分。该电路控制模块主要通过与本地时钟电路及PC机的数据交换来实现对本地的时钟电路的控制。另外,本地时钟电路又由工作指示灯电路、输入隔离电路、晶振电路和相机驱动电路等构成。指示灯电路的作用是当触发信号发生时,指示灯由暗变亮,以此表示此时单片机已经开始读取数据。另外输入隔离电路则主要由6N137构成,该电路向处理器发出外部触发信号,启动单片机对本地时钟电路中的计数器数据进行读取。晶振电路为CPLD电路提供必须的工作脉冲。相机驱动电路用于控制相机在接收到触发信号的同时进行拍摄。
时统模块电路硬件设计:
如图2所示,时统控制电路主要由单片机和一些转换芯片构成,它可以接收GPS模块信息、控制本地时钟电路计数、相机启动和计算机通信等功能。
下面将对各个组成部分进行一一地介绍。
LM1117-3.0芯片主要用来实现电源转化的功能,该芯片将5V电压转换成GPS模块所需要的3V额定电压,即为GPS模块保证正常的工作电压。
由于GPS模块输出的是3V的工作信号,而AT89S52单片机只能接收5V的工作信号,因此GPS模块和AT89S52单片机之间必须进行电平转换。本文主要采用装有74LVC4225芯片的转换电路,该芯片是典型的双电源供电的双向收发器。它通过DIR管脚控制传输方向,实现GPS模块输出的3V信号向5V信号转换的功能,从而保证了处理器对时间数据的接收。在本时统控制电路中,74LVC4225芯片通过管脚OE和管脚DIR控制信号的转换方向,当管脚OE和管脚DIR同时为低电平时,GPS模块的输出信号发送到AT89S52单片机,当管脚OE为低电平且管脚DIR为高电平时,AT89S52单片机向GPS模块输出控制信号。
出产于Atmel公司的AT89S52单片机[2]系一款高性能、低功耗、CMOS 8位增强型高档微控制器。它装配了时下比较先进的通用型8位中央处理和ISP FLASH存储单元,8 KB ISP(In-system programmable)的支持反复擦写1000次的FLASH只读程序存储器,片上FLASH允许程序存储器支持编程功能,并且也能识别常规编辑器的编程指令。该单片机基于高密度、非易失性存储技术制造而成,兼容标准MCS-51指令系统及80C51引脚结构。单芯片装配了8位CPU和在系统可编程FLASH,充分满足了嵌入式控制应用系统的使用要求。
从AT89S52单片机发出的TTL电平信号通过MAX232芯片转换成PC机可识别的RS-232电平信号。复位电路可实现单片机上电复位,晶振电路也能为该单片机提供工作脉冲信号。
GPS 模块发出的秒级以上的时间数据全部由时统控制电路接收。除此以外,在外部触发信号发生的工况下,该电路也可以接收本地时钟电路中所记录的秒级以下的时间数据并进行数据处理,然后利用专用串口将处理后的时间数据传输给PC机,通过PC机记录下相机的起拍时间。
2 软件设计
本文中时统控制电路的软件由初始化模块、数据读取模块、数据发送模块、GPS时间接收模块和溢出信号处理模块五大模块组成。
KeilC51软件为全Windows界面,可以提供多种多样的库函数以及功能十分强大的集成开发调试工具。KeilC51能够以非常高的效率来生成目标代码,大多情况下,由该软件编写的语句生成的汇编代码非常紧凑,并且很容易理解。在开发大型软件的情况下,更能体现出高级语言的优势。与汇编相比,C语言无论是在功能上、结构性还是可读性和可维护性上都有非常明显的优势,所以易学易用。本文正是基于以上优点,进行了软件方面的相关设计和程序的编写,最终完成了整个系统的装调与测试。
3 实验结果与分析
为了验证时统系统的精确性,本文采用由高速DSP TMS320F28芯片做成的高精度时统系统作为标准时间。将触发信号同时接入到本实验电路中和TMS320F28时统系统中,然后同时记录触发信号的时间。实验过程如图3所示。
为了减小相对误差,给出多次触发信号,分别记录各次误差信号的时间,求出相邻两次触发时间的间隔。然后对比标准时统系统和设计时统系统,就能得出所设计系统的同步误差值。如表1所示。
由表中数据知在5次测量后所得的同步误差的平均值为0.056s,基本符合设计要求。
4 总结
随着现代兵器技术的日益发展,在靶场测试实验中,时统设备成为其中的重要组成部分。本文从引信优劣判断的需求出发,针对近地炸点高度测试技术进行了相关研究,提出一种时间统一模块设计方法,在以单片机为控制核心基础上,采用CPLD技术与GPS技术相结合的授时方式进行设计。保证了测试设备具有相同的起始工作时间,完成了图像异地同步采集电路的设计。
参考文献:
[1]张斌.GPS定位原理及其在引信中的应用研究[J].现代引信,1997(1):27-30.
[2]闻新,刘宝忠,林闻晓.MCS-51与GPS-OEM板串行通信技术及实现[J].全球定位系统,2006,31(4):14-17.
篇8
关键词:AT89S52单片机;DS18B20;温度报警器;温控可调
1.引言
我国的火灾自动报警控制系统经历了从无到有、从简单到复杂的发展过程,其智能化程度也越来越高。在大型仓库、商场、高级写字楼、宾馆等场所大型火灾报警系统的研发,及在居民住宅区、机房、办公室等小型防火单位采用的实用的火灾自动探测报警装置,都离不开温度报警显示,因此研制一种结构简单、价格低廉的温度报警器是非常必要的,其发展前景广阔.本设计采用DS18B20温度传感器,其测温范围为-55~+125℃,并可设置温度报警的上、下值,当温度高于上限或低于下限时,系统自动报警。报警值具有可调性且温度测量范围较广,因此具有较高的应用前景。
2、系统组成框图
本系设计是基于AT89S52单片机的温度报警显示系统,系统组成框图如图1所示。用单片机AT89S52控制温度传感器DS18B20,读取数据。对DS18B20转换后的数据进行处理,将符号位、整数值和小数值分别存放在特定的存储单元中,转换成实际温度值通过液晶屏实时显示。通过键盘输入模块预先设定温度的上下限值,当温度超出报警值时,实时声光报警。
图1.系统组成框图
3.设计原理
(1)控制模块设计
本设计控制模块使用的单片机是最新型号的AT89S52单片机[1]。AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程 Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位 CPU 和在系统可编程Flash,使得 AT89S52为众多嵌入式控制应用系统提供高灵活、有效的解决方案。
(2)温度传感模块设计
本设计采用Dallas 最新单线数字温度传感器DS18B20[2]作温度检测器。DS18B20能够直接将所采集得信号进行模/数转换。这样应用系统的硬件电路中就不需要增加类似于ADC0809之类的模/数转换器,可直接送单片机处理,节约成本。DS18B20是美国DALLAS半导体公司继DS1820之后最新推出的一种改进型智能温度传感器。与传统的热敏电阻相比,他能够直接读出被测温度并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。测温范围-55~+125℃,以0.5℃递增,可以分别在93.75ms和750 ms内完成9位和12位的数字量,并且从DS18B20读出的信息或写入DS18B20的信息仅需要一根数据线(单线接口)读写,温度变换功率来源于数据总线,总线本身也可以向所挂接的DS18B20供电,而无需额外电源。因而使用DS18B20可使系统结构更趋简单,可靠性更高,其封装如图2所示。
图2 DS18B20芯片封装图
(3) 液晶显示模块设计
对于本系统而言,温度值的显示是一个重要的环节。设计中需显示的信息较多,为使显示内容更加丰富,采用LCD液晶显示。JM1602A[3]液晶显示器,它是一种字符点阵液晶显示器,主要由行驱动/列驱动组成,可完成字符点阵显示。JM1602A的实物图如图3所示: 带字库的JM1602可以显示汉字字符且编程简单,构成良好的人机交流界面,增强系统可操作性。另外考虑到本设计要显示字母,采用带字库的液晶显示“DS18B20 OK!”、“TEMP”等信息,直观效果非常好,功能比较强,操作也相对简单。
图3 LCD1602实物图
液晶模块与控制模块的通讯设计电路如图4所示:液晶显示使用并口方式,其中RD0-RD7为单片机的并行数据口, RA1为并行的指令/数据选择信号,RA2为并行的读写选择信号,RA3为并行的使能信号。
图4 LCD1602模块与控制模块通讯电路图
(4)报警模块设计
由于DS18B20具备自动的上、下限,当温度超出或低于报警值时,系统发出信号到报警系统,触发报警电路。报警考虑不同环境的影响采用声/光同时报警。蜂鸣器发出报警峰鸣,发光二极管闪烁。当单片机RC4端口为高电平时,三极管导通蜂鸣器发声报警。这个实验是喇叭里发出滴的按键声音声音,送出的端口是RC4(即单片机的p3.7口),输出1khz频率信号报警,每一秒交换一次。硬件中增加了发光二极管,和蜂鸣器一起接RC4端口,采用高电平触发,结构更简单,实现了声光报警,电路图如图5所示。
图5 声光报警电路图
(5)键盘输入方案
单片机的键盘结构可以采用独立式和矩阵式键盘两种[4]。独立式按键指直接用I/O口线构成单个按键电路,每个独立式按键单独占用一位I/O口线。电路配置灵活,软件结构简单。但在按键数量较多时,I/O口线浪费大。如果应用系统中的键较少,就可采用简单的键盘接口电路。 由于本设计要设置四个按键,按键较少,故采用独立式按键。由单片机的p1.1-p1.4的四个端口分别检测四个按键,通过键扫描程序实时的监测按键是否操作。四个按键的功能如表1所示:
5、系统软件设计
根据本设计温度报警显示的要求,系统首先对单片机的系统进行初始化和常量的设置[5],然后调用温度传感器的初始化子程序初始化芯片,芯片随即开始工作,系统读取转换的温度值通过液晶屏实时显示,键扫描初始设置的温度上下限,比较实时的温度是否超过限制值,一旦超过马上通过声光报警。软件设计流程图如图6所示。
图6 系统软件流程图
6、结语
通过实际测试,本系统可以监控环境温度,实时性较好并可以人为的设制温度上下限,而新型温度器芯片的实用,又使得设计成本下降,因此具有较为广泛的应用前景。
篇9
关键词:温度控制器,AT89S52,报警
Abstract: it is difficult to control for greenhouse temperature problem, this paper presents a new controller. The controller can accurately measure the temperature at the same time to ensure the timely alarm. The temperature controller is based on AT89S52, can accurate determination of the temperature in the greenhouse, and can be set to the upper and lower temperature for the growth of plants, more than the limit will make alarm. It is easy for the greenhouse temperature can be controlled very well. Finally, this paper verified the model test, proved that the temperature controller can be accurate and timely alarm.
Keywords: temperature controller, AT89S52, alarm
中图分类号:TP391.76 文献标识码:A文章编号
一、设计思路及原理
随着温室大棚的普及和数量的不断增加,温度控制成为一个重要的管理因素。传统的温度控制方法主要依靠人工定时去观察悬挂的温度计,这样既耗费人力,又容易发生差错,显现出了很大的局限性。为了提高温度控制的效率和精度,温度自动控制系统显得至关重要,所以针对这个问题,本文提出了一种基于AT89S52温度控制器。温度控制器可以免除人工控制,更加准确有效地对大棚温度进行控制。
(一)控制器的功能
由于温室大棚内的作物的生长温度影响较大,当温度过高或者过低都不利于作物的生长,所以,我们需要对温室大棚内的温度进行控制。传统的控制方法不准确,而且需要人工参与。针对温室大棚的温度难于控制的问题对温度控制器进行设计。该温度控制器需要满足以下条件:
(1)对于温室内的温度进行准确测定;
(2)可以设定不同作物所需要的生长温度范围;
(3)当温室内的温度超过该作物生长的正常范围可以及时报警;
(4)遇到意外时,可以通过复位电路进行复位。
(二)控制器的原理
该控制器是基于硬件系统和软件系统来实现的。其中,硬件系统是整个系统的基础,根据控制器的功能对电路进行设计,并绘制电路图,在此基础上做出实物。软件系统是整个系统的关键,没有合适正确的软件部分,系统将无法正常工作,根据电路的实际功能进行编程设计,使其能够驱动电路实现相应的功能。
该控制器共分为四个模块:
(1)控制模块:这部分主要实现数据的处理,输出执行,报警设置功能;
(2)显示模块:可以分别显示实时温度值,温度上下限;
(3)温度传感模块:主要是通过传感器的功能实现对温度的采集及发送到计算机;
(4)声光报警模块:当温度超出设定的范围时,可以及时进行声光提示。
根据功能要求,该控制器包括控制模块、显示模块、温度传感模块和报警模块。上电后,通过温度传感器可以准确地检测到温度,并将其传给AT89S52,AT89S52发出信号到显示模块,并在显示器上正确显示。如果检测到的温度超出作物生长所需的正常范围,AT89S52进行对比运算后,将触发报警系统,产生声光报警,以便于及时采取措施调整温室内的温度,如图1所示。
图1 温度控制器的结构框图
二、温度传感模块
为了得到更加准确的温度值,在此温度传感器采用DS18B20。DS18B20具有电压范围宽、测定温度范围宽,抗干扰等特点,所以,利用其可以实现准确的温度测定。其内部结构如图2所示。
图2 DS18B20结构图
(一)控制模块
控制模块采用AT89S52进行控制,该控制模块可以对传感器过来的信号进行及时处理,并驱动显示模块正确显示。当温度超出正常范围,那么控制模块可以准确的触发声光报警模块。
(二)显示模块
为了更好的显示温度值,在此采用LCD进行显示,这样可以更好的显示当前的温室温度,同时便于温度上下限的设定。
(三)声光报警模块
当温度超过温室内作物承受的范围时,控制器会及时控制报警模块报警提示。在蜂鸣器想起的同时,提示灯也亮起,当超出上限时,黄灯闪烁;当超出温度下限时,红灯闪烁。
三、控制器的实现
(一)电路原理图
根据上述的温度控制器的功能和各个模块,设计详细的电路图,其具体的原理图如图3所示。通过图3我们可以看出,该温度控制器除了上述的功能外,在遇到故障时可以通过复位电路复位。
图3 电路原理图
(二)软件部分
在此通过C语言进行编程,使其实现相应的功能。并使用程序编译器进行编译,将编译结果输入到AT89S52中,对电路进行调试。
四、结论
本文设计温室大棚的温度控制器,该控制器可以准确的测定室内的温度,当温度超出设定的范围时,能够及时的报警。该温度控制器通过控制模块、传感器模块、显示模块和报警模块的共同作用来实现其功能。按照上述功能,在硬件设计的基础上,进行了软件设计。
本设计是温室自动化控制的基础,通过控制器的控制可以实现显示和报警,下一步将在此基础之上对对整个系统进行设计,当温度超出范围,报警的同时能够启动相应的设备,如打开或关闭通风口、排风扇等。这是可以实现整个温室的一个联动控制,使整个系统实现完全的自动控制。
参考文献
[1] 熊永中, 王文剑, 陈金鹰, 唐良义. 基于单片机和PC机的实时温度控制系统设计.自动化技术与应用,2010,09(3),126-129.
[2] 吴健, 侯文, 郑宾. 基于STC89C52单片机的温度控制系统. 电脑知识与技术, 2011, 07(4), 52-57.
[3] 王峰萍, 王佳. 农业大棚智能检测环境系统. 现代电子技术, 2012, 35(14), 23-29.
[4] 彭伟. 单片机C语言程序设计实训100例. 北京航空航天大学出版社, 2010.
[5] 常喜茂,孔英会,付小宁. C51基础与应用实例. 电子工业出版社,2009.
[6] 宋彩利, 孙友仓, 吴宏岐. 单片机原理与C51编程. 机械工业出版社,2011.
篇10
关键词:AT89S52;GSM;实时监控;远程
引言
仓库管理与人们日常生活息息相关的问题。大到公司、超市的仓库管理,小到图书馆的藏书管理,都可以认为是各种各样的仓库管理需求。目前的仓库管理系统一般比较落后,性能较差且很不完备,人工干涉过多,操作使用不方便,有的故障率高还不实用,容易造成仓库被盗等问题,造成财产损失。基于以上情况,研究了一种新型的仓库管理系统。这种系统是利用GSM系统的AT指令的开发以及单片机和移动通信模块之间的通信编程。由传感器将采集到的信号发送至单片机,单片机通过判断,发送控制指令到移动通信模块,移动通信模块接到指令后调用预先设计好的报警短信息,利用GSM网络发送给用户手机,从而实现对仓库的无人实时监测功能。
1 系统结构原理
该系统主要由六部分组成:传感器部分、无线通信部分、报警部分、A/D转换部分、单片机控制处理部分、显示部分如图1所示。传感器由温度传感器、振动传感器、红外传感、器烟雾传感器构成,由温度传感器、烟雾传感器来测量温度高低、烟雾大小,A/D转换部分完成模拟量转换成数字量传给单片机经处理判断是否发生火灾。红外传感器、振动传感器把采集到的振动、红外信号经A/D转换部分传给单片机判断是否有人闯入。显示模块用于显示单片机处理的结果。当发生意外情况报警部分发出报警,移动通信模块可以随时把仓库信息发给管理者。
图1 系统原理图
2 系统硬件设计
2.1 主控器的选择
主控制器采用AT89S52单片机,AT89S52是一种低功耗、高性能~CMOS8位微控制器,具有8K在系统可编程Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。AT89S52具有以下标准功能:8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
2.2 温度传感器的选择
温度传感器采用常用的DSl820温度传感器。DSl820数字温度计提供9位(二进制)温度读数指示器件的温度信息经过单线接口送入DSl820或从DSl820送出因此从主机CPU到DSl820仅需一条线(和地线)DSl820的电源可以由数据线本身提供而不需要外部电源因为每一个DSl820在出厂时已经给定了唯一的序号因此任意多个DSl820可以存放在同一条单线总线上这允许在许多不同的地方放置温度敏感器件DSl820的测量范围从-55到+125增量值为0.5可在ls(典型值)内把温度变换成数字。
2.3 红外传感器的选择
红外传感器选择热释电红外线(PIR)传感器,这是80年展起来的一种新型高灵敏度探测元件,是一种能检测人体发射的红外线而输出电信号的传感器,它能组成防入侵报警器或各种自动化节能装置。它能以非接触形式检测出人体辐射的红外线能量的变化,并将其转换成电压信号输出。将这个电压信号加以放大,便可驱动各种控制电路。如图2示为热释电红外传感器的内部电路框图。
图2 热释电红外传感器的内部电路框图
2.4 烟雾传感器的选择
烟雾传感器采用离子型烟雾传感器MQ-2,MQ-2气敏元件的气敏元件的结构和外形如图3所示(结构AorB),由微型AL2O3陶瓷管、SnO2敏感层,测量电极和加热器构成的敏感元件固定在塑料或不锈钢制成的腔体内,加热器为气敏元件提供了必要的工作条件。封装好的气敏元件有6只针状管脚,其中4个用于信号取出,2个用于提供加热电流。
图3 测量电路如图所示
2.5 报警模块的设计
报警装置采用无源压电式KM3712x型蜂鸣器,较一般的蜂鸣器体积大,声音响亮,适用报警器的报警声音源。
2.6 移动通信模块的选择
采用基于GSM数字移动通信系统的通信模块。GSM模块是传统调制解调器与GSM无线移动系统的结合,可以称之为无线调制解调器。SIM300是小体积即插即用模组中完善的三频、四频*GSM/GPRS解决方案。使用工业标准界面,具备GSM/GPRS 900/1800/1900MHz功能的SIM300C以小尺寸和低功耗实现语音、SMS、数据和传真信息的高速传输。可以方便地与单片机连机通讯,可以快速、安全、可靠地实现系统方案中的数据、语音传输、短消息服务(Short Message Service)和传真。SIM300通信模块具有GSM无线通信的所有功能,并提供标准的UAR串行接口通过AT命令控制(GSM07.07,07.05和增强AT命令,直接使用AT命令即可以简便的实现短信息的收发,查询和管理。SIM300模块有AT命令集接口,支持文本和PDU模式的短消息。通过独特的40引脚的ZIF连接器,实现电源连接、指令、数据、语音信号、及控制信号的双向传输。单片机与SIM300通过AT指令控制手机的控制技术,设置SIM300模块的工作模式PDU模式,PDU模式支持中文短信,也能发送英文短信,本设计采用PDU模式进行编写。
2.7 显示模块的设计
显示模块采用LCD液晶显示,LCD(Liquid Crystal Display),为平面超薄的显示设备,它由一定数量的彩色或黑白像素组成,放置于光源或者反射面前方。液晶显示器功耗很低,因此倍受工程师青睐,适用于使用电池的电子设备。它的主要原理是以电流刺激液晶分子产生点、线、面配合背部灯管构成画面。
3 系统软件设计
1602显示模块设计、18B20温度传感器模块、24C02存储器模块、1302时钟模块、外部中断、串口中断、主控制模块等几个部分整个系统的设计软件流程图4所示。
4 结束语
本设计采用了单片机与传感器相结合的方法,利用GSM网络进行远程无线传输,实现远距离监测仓库的环境状态,达到了无人值守的目的,通过实验验证,该系统使用灵活、数据采集传输可靠准确、节省资源,提高劳动生产率,实现了仪器仪表智能化,系统也可以在其他需要无线监控的领域使用,应用范围较广。
参考文献
[1]徐惠民,安德宁.单片微型计算机原理接口及应用.第二版[M].北京:北京邮电大学出版社,2000.
[2]陈雷,丁晓明,李强.GSM短消息系统在远程数据采集中的应用[J].中国数据通信,2003,3.
[3]王福瑞.单片微机测控系统设计大全[M].北京:北京航空航天大学出版社,1998.
[4]陈学平.AltiumDesigner10.0电路设计与制作完全学习手册.北京:清华大学出版社,2012.