嵌入式系统设计嵌入式机房监控系统的设计_第1页
嵌入式系统设计嵌入式机房监控系统的设计_第2页
嵌入式系统设计嵌入式机房监控系统的设计_第3页
嵌入式系统设计嵌入式机房监控系统的设计_第4页
嵌入式系统设计嵌入式机房监控系统的设计_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、嵌入式系统设计课程设计报告嵌入式机房监控系统的设计姓名: 学号: 专业: 学院: 2016年5月28日摘要:文设计了一种基于嵌入式系统的机房环境监控系统,本系统可对机房内的各种环境参数进行监测和监视,并通过GSM短信和语音电话等通讯手段将环境异常情况及时反映给维护人员,实现机房的科学管理。利用嵌入式机房监控系统,解决机房监控系统的远程控制、程序维护等问题。关键词:嵌入式系统;监控系统;机房监测;远程控制0 引言随着我国经济的发展和计算机技术的普及,各行业对计算机系统的依赖越来越大,计算机房已成为各大单位的重要组成部分。为了确保机房设备的正常运行,对机房环境(温度、湿度、漏水等)的维护提出了更高

2、的要求。这种要求的特点是:实现对机房环境的远程监控,一旦机房环境出现异常,实时地将情况传送给管理人员,以便对异常隋况进行及时有效地处理,最终实现无人职守。与此同时,随着电子科学技术的发展,利用嵌入式技术构建远程监控系统凭借体积小、远程化、成本低、功耗小、操作界面人性化等特点已成为监控系统的发展主流1。监控系统一般采用B/S结构,为了提高运行效率和资源利用率,系统嵌入式Web是以TCP/IP协议为底层,以HTTP为应用层的通信协议,为服务器提供了可靠的网络服务,并对其功能和实现进行优化,提高了传输速度和处理效率。监控端试用浏览器通过IP地址即可访问服务器实现监控功能2。1 系统设计方案本设计有以

3、下要求:(1)监测功能包括交流无源、直流欠压、环境温度、环境烟雾的监测;(2)报警方式多样化,诸如:发短信、打电话、现场语音警示;(3)可以支持远程监测与控制。1.1 系统工作原理借助GSM网络平台并利用语音和短信的方式,使机房动力与环境监测报警系统实时报警机房动力丢失或不足以及环境温度过高与烟雾浓度过高。另外,通过短信方式对该系统进行各项功能与参数设置,通过电话方式确认系统运行的可靠性。1.2系统总体设计本系统采用STM32F103为主控芯片,因其精度较高,操作比较灵活,输入电路和输出电路由芯片来进行处理,电路的系统的稳定性高,功耗小。如图1所示嵌入式机房监控系统的原理框图,它主要由监测电路

4、、GSM模块电路、语音电路、液晶显示电路、最小系统电路和电源电路六部分所构成。最小系统电路监测电路语音电路GSM模块电路 嵌入式芯片图1 嵌入式机房监控系统的原理框图液晶显示电路1.3 所用设备和软件本设计除了需要计算机,还会用到三款软件:作图软件Protel99SE、仿真软件Proteus、编程软件Keil uVision4。关于这三种软件的简介如表1所示。表1 软件简介软件名称软件图标主要特点作用备注Protel99SEProtel99SE是PC环境下以独特设计管理和协作技术为核心的印制电路板设计软件系统,是基于Windows 95/98/2000/NT的全32位EDA设计系统。它主要采用

5、了SmartDoc技术、SmartTool技术、SmartTeam技术6。绘制电路图和PCB板串口调试助手串口调试助手软件支持常用的11025600bps波特率及自定义波特率,可以自动识别串口,能设置校验、数据位和停止位,能以ASCII码或十六进制接收或发送任何数据或字符,可以任意设定自动发送周期,并能将接收数据保存成文本文件,能发送任意大小的文本文件。查看串口数据Keil uVision4uVision4在uVision3 IDE的基础上,增加了更多大众化的功能:多显示器和灵活的窗口管理系统;系统浏览器窗口的显示设备外设寄存器信息;调试还原视图创建并保存多个调试窗口布局;多项目工作区简化与众

6、多的项目。编写程序2 系统硬件设计基于STM32F103的嵌入式机房监控系统电路由监测电路、GSM模块电路、语音电路、液晶显示电路、最小系统电路和电源电路六部分所构成。监测电路负责动力监测和环境监测,当监测的有异常情况时,会通过GSM模块电路中的G600发送短信给指定的手机号码;通过短信方式对该系统进行各项功能与参数设置,通过电话方式确认系统运行的可靠性。语音电路的功能就是在电话方式时播放当前系统状况;而液晶显示电路会显示系统监测到的当前信息;电源电路为整个系统提供能源。图2 监测电路2.1 监测电路监测电路负责动力监测和环境监测,即交流无源(交流220V)、直流欠压(直流48V)、环境温度、

7、环境烟雾的监测。如图2所示监测电路,动力监测就是动力电源通过简单的降压电路后,检测光耦另一端的开关信号的有无;而环境监测是直接读取传感器的AD值4。(1)交流无源监测当交流电源低于200V或断电时,产生“交流异常”报警电话或短信。(2)直流欠压监测当蓄电瓶直流电源低于47V时,产生“直流欠压”报警电话或短信。(3)环境温度监测当环境温度高于30时,产生“温度超标”报警电话或短信。(4)环境烟雾监测当环境出现烟雾时,产生“烟雾超标”报警电话或短信。2.2 GSM模块电路G600是M2M专家FIBOCOM为物联网应用推出的GSM/GPRS模块。它作为全面模块适用的主要领域包括安全、自动售货机、计量

8、、网关、远程维护与控制、路由器等。如图3所示GSM模块电路,当系统监测到异常状况时,通过GSM模块电路中的G600发送短信或打电话给指定的手机号码,通知维修人员及时排除故障;而维修人员可以使用短信方式对该系统进行各项功能与参数设置,可以通过电话方式确认系统运行的可靠性5。图3 GSM模块电路2.3 语音电路WT588D语音芯片是早期可外挂FLASH的一款语音芯片,它具有音质较好、控制灵活的特点,更增加了可播放MIDI和弦功能,性能更好。同时WT588D是一款具有嵌入式系统内核的语音芯片,因此,可以冠名为WT588D系列语音嵌入式系统。WT588D系列语音嵌入式系统是广州唯创电子有限公司联合台湾

9、华邦共同研发出来的集嵌入式系统和语音电路于一体的可编辑语音芯片。功能多音质好应用范围广性能稳定是WT588D系列语音嵌入式系统的特长,弥补了以往各类语音芯片应用领域狭小的缺陷,MP3控制模式、按键控制模式、按键组合控制模式、并口控制模式、一线串口控制模式、三线串口控制模式以及三线串口控制控制端口扩展输出模式,让应用人员能将产品投放在几乎可以想象得到的场所。故本次设计利用WT588D构成如图4所示语音电路,其功能就是在电话方式时播放当前系统状况。图5 液晶显示电路图4 语音电路2.4 液晶显示电路液晶显示电路需要选用一块液晶屏来显示系统监测到的当前信息,诸如:机房编号、当前环境温度、当前烟雾情况

10、等。由于显示的内容不多用,4X8的LCD12864就刚好可以满足需求。如图5所示基于LCD12864的液晶显示电路,由于STM32F103的I/O口充足,故采用串行接法,同时也可以简化编写程序的难度。2.5 最小系统电路如图6所示最小系统电路,它由时钟、复位以及JTAG接口电路组成。2.5.1 时钟电路时钟频率直接影响STM32芯片的速度,时钟电路的质量也直接影响其系统的稳定性。常用的时钟电路有两种方式,一种是内部时钟方式,另一种是外部时钟方式。本设计采用内部时钟方式做时钟电路。STM32芯片内部有2个用于构成振荡器的高增益反相放大器,输入端为芯片引脚OSC_IN和OSC32_IN,输出端为引

11、脚和OSC32_OUT。每组引脚跨接石英晶体振荡器和微调电容,构成一个稳定的自激振荡器,通常OSC的石英晶体选8MHz,OSC32的石英晶体选32kHz的。2.5.2 复位电路STM32芯片的初始化操作,即给复位脚RST加上大于2个机器周期(即24个时钟振荡周期)的低电平就使其复位。这些操作都是由复位电路来实现。在实用系统中,一般有两种复位操作形式:上电复位和手动复位。上电复位在STM32芯片每次通电时执行。上电时,电容C 充电加给RST引脚一个短的低电平信号,此信号随着VCC对电容C 的充电过程而逐渐回落,即RST引脚上的低电平持续时间取决于电容C 充电时间。为保证系统可靠复位,RST引脚上

12、的低电平必须维持足够长的时间。手动复位在系统出现操作错误或程序运行出错时使用。在STM32系统运行过程中,按下复位键,低电平输入RST引脚,STM32系统被强制执行复位操作,系统可以退出错误运行状态,恢复正常工作。由于本设计的需要,同时采用这两种复位方式。2.5.3 JTAG接口电路JTAG最初是用来对芯片进行测试的,JTAG的基本原理是在器件内部定义一个TAP(Test Access Port;测试访问口)通过专用的JTAG测试工具对进行内部节点进行测试。JTAG测试允许多个器件通过JTAG接口串联在一起,形成一个JTAG链,能实现对各个器件分别测试。现在,JTAG接口还常用于实现ISP(I

13、n-System Programmable;在线编程),对FLASH等器件进行编程。 图6 最小系统电路JTAG编程方式是在线编程,传统生产流程中先对芯片进行预编程现再装到板上因此而改变,简化的流程为先固定器件到电路板上,再用JTAG编程,从而大大加快工程进度。JTAG接口可对PSD芯片内部的所有部件进行编程。2.6 电源电路当今社会大到超级计算机、小到袖珍计算器,所有的电子设备都必须在电源电路的支持下才能正常工作。直流稳压电源在电源技术中占有十分重要的地位。本设计的机房监控系统电路需要+3.3V、+4V、+5V三类不同等级的电源才能保证正常工作。但因为本次设计重点不在电源,故采用现成的电源模

14、块来实现。如图7所示电源电路,由于机房原本就有48V直流电源,故利用输入电压范围为1872V的稳压直流5V电源模块VB4805D-10W可以得到+5V电源,接着利用带能源模块SPX29302,结合简单的分压电路分别获得+4V、+3.3V。图7 电源电路2.7 整体电路说明基于STM32F103的嵌入式机房监控系统电路由监测电路、GSM模块电路、语音电路、液晶显示电路、最小系统电路和电源电路六部分所构成。监测电路负责动力监测和环境监测,当监测的有异常情况时,会通过GSM模块电路中的G600发送短信给指定的手机号码;通过短信方式对该系统进行各项功能与参数设置,通过电话方式确认系统运行的可靠性。语音

15、电路的功能就是在电话方式时播放当前系统状况;而液晶显示电路会显示系统监测到的当前信息;电源电路为整个系统提供能源7。整体电路图见附录1。3 系统软件设计系统功能的实现一般包括硬件部分和软件部分,一旦硬件确定下来,软件要实现的功能也随之确定。而为使编程思路清晰,应先绘制程序流程图。3.1系统硬件接口定义系统硬件接口定义如表2所示。表2 系统硬件接口定义引脚号引脚名接口说明备注37PC6交流220V监测端38PC7直流48V监测端44PA11温度传感器DS18B20监测端45PA12蜂鸣器控制端57PB5烟雾传感器监测端15PA1LCD12864数据口2023PA4PA72426PC4、PC5、P

16、B014PA0LCD12864复位端27PB1LCD12864的E端29PB10LCD12864的R/W端30PB11LCD12864的RS端41PA8G600复位端42PA9G600的RXD端43PA10G600的TXD端33PB12WT588D复位端34PB13WT588D时钟线35PB14WT588D片选端36PB15WT588D数据线3.2主函数主函数流程图如图8所示。它由系统初始化子程序、系统设置子程序、监测子程序、设备运行正常来电语音回复子系统初始化子程序系统设置子程序开始设备运行正常来电语音回复子程序图8 主函数流程图监测子程序程序四大部分组成。3.3 系统初始化子程序流程标志位

17、初始化子程序串口初始化子程序嵌入式系统EEPROM初始化子程序 ISD1730初始化子程序EM310初始化子程序结束系统初始化子程序入口图9 系统初始化子程序流程图开启串口中断开启串口接收开启总中断系统初始化子程序流程图如图9所示。它包括系统中所有标志位的初始化、串口初始化、嵌入式系统EEPROM初始化、ISD1730初始化、EM310初始化。在系统初始化子程序中开启了串口中断、串口接收以及总中断。系统初始化后,通过短信方式进行系统设置(任意时刻可设置)、监测功能的开启、装置正常运行的查询8。3.4 系统设置子程序系统设置子程序流程图如图10所示。它包括当前装置权限密码设置、当前装置编号设置、

18、通讯电话号码建立、通讯电话号码删除、环境温度超限设置、当前设备编号与温度查询、已建立电话号码的查询等9。系统设置子程序入口密码正确?修改密码子程序='0'??短信设置AT指令读取用户信息前8位读取用户信息第8位='1'??设定设备编号子程序='2'??读取用户信息第5位删除电话号码子程序='S'??='C'?='3'??设定报警温度子程序='4'??回复设备状态信息子程序='5'??回复所有已存储电话子程序='6'??启动系统监测子程序结束图10 系统

19、设置子程序流程图设定电话号码子程序删除短信子程序EM310_Flag=1?EM310_Flag=03.5 监测子程序监测子程序流程图如图11所示。它负责对环境温度的监测、烟雾浓度的监测、交流220V是否掉电的监测以及直流48V是否欠压的监测。3.6 设备运行正常来电语音回复子程序设备运行正常来电语音回复子程序流程图如图12所示。它用于查询设备中EM310与嵌入式系统通信是否正常。对设备进行语音呼叫,若嵌入式系统与EM310模块通信正常,系统则自动接听电话,并播放“设备工作正常”的语音,通过这一功能可适时的检查设备是否工作正常10。接通电话AT指令播放语音挂断电话AT指令Phone_Nomal_

20、Flag=1?Phone_Nomal_Flag=0设备运行正常来电语音回复子程序结束图12 设备运行正常来电语音回复子程序流程图监测子程序入口温度监测子程序AC220V监测子程序DC48V监测子程序烟雾浓度监测子程序结束Equipment_Flag=1?图11 监测子程序流程图4 仿真调试分析4.1 仿真调试工具最新的Keil uVision4 IDE,旨在提高开发人员的生产力,实现更快,更有效的程序开发。Keil uVision4引入了灵活的窗口管理系统,能够拖放到视图内的任何地方,包括支持多显示器窗口。Keil uVision4在Keil uVision3 IDE的基础上,增加了更多大众化

21、的功能:多显示器和灵活的窗口管理系统;系统浏览器窗口的显示设备外设寄存器信息;调试还原视图创建并保存多个调试窗口布局;多项目工作区简化与众多的项目。串口调试助手是串口调试相关工具,有多个版本。如:友善串口调试助手,支持常用的11025600bps波特率及自定义波特率,可以自动识别串口,能设置校验、数据位和停止位,能以ASCII码或十六进制接收或发送任何数据或字符,可以任意设定自动发送周期,并能将接收数据保存成文本文件,能发送任意大小的文本文件。硬件连接方面,传统台式PC机支持标准RS232接口,当下带有串口的PC很少见,所以需要USB/232转换接口,并且安装相应驱动程序。4.2 调试结果软件

22、调试与所选用的软件结构和程序设计技术有关,可以通过JTAG调试器或者RS232串口通信进行调试。本系统采用模块程序设计技术,逐个模块调好以后,再进行系统程序总调试。由于采用了实时多任务操作系统,采用是逐个任务进行调试,下面进一步予以说明。在调试第一个任务时,同时也调试相关的子程序、中断服务程序和操作系统的程序。等逐个任务调试好以后,再使各个任务同时运行,在本次调试中操作系统中没有错误,在单步和断点调试后,进行了连续调试,因为单步运行只能验证程序的正确与否,而不能确定定时精度、CPU的实时响应等问题。等全部完成后,反复运行多次,除了观察稳定性之外,还观察了用户系统的操作是否符合设计要求的操等,部

23、分程序作了适当修正后系统能够正常运行。调试结果与设计的基本一致。5 结论和总结通过这次嵌入式课程设计,感觉收获颇多。下面先总结一下本次设计。基于STM32F103的嵌入式机房监控系统电路由监测电路、GSM模块电路、语音电路、液晶显示电路、最小系统电路和电源电路六部分所构成。监测电路负责动力监测和环境监测,当监测的有异常情况时,会通过GSM模块电路中的G600发送短信给指定的手机号码;通过短信方式对该系统进行各项功能与参数设置,通过电话方式确认系统运行的可靠性。语音电路的功能就是在电话方式时播放当前系统状况;而液晶显示电路会显示系统监测到的当前信息;电源电路为整个系统提供能源。本次设计对个人而言

24、,巩固和加深了对嵌入式系统的了解,学会将课程中所学的知识应用到实践中,掌握其简单的外围电路设计;通过此次课程设计,从中感悟电子设计的方法,初步掌握简单实用电路的分析方法和工程设计方法;熟悉Proteus、Protel99SE、Keil uVision4这些软件的使用技巧。就硬件方面而言,基本了解了电子产品的开发流程和所要做的工作,基本掌握了Protel99SE原理图的方法以及怎么利用Proteus进行数字电路仿真。除此之外,对系嵌入式系统的接口有了更深层次的理解,熟悉了一些嵌入式系统常用的外围电路引脚和连接方法,诸如液晶屏LCD12864、GSM模块G6000等等。在软件方面,通过对外部中断、

25、I/O的使用,使得C语言编程能力也有了较大的进步。参考文献1 卡莫尔,贾建斌,李化. 嵌入式系统:体系结构、编程与设计M. 北京:清华大学出版社,2010.2 沈红卫. 基于嵌入式的智能系统设计与实现M. 北京:电子工业出版社,2005.3 刘志英. 嵌入式系统中网络应用软件的研究M. 北京:北京工业大学出版社,2001.4 谢志萍. 传感器与监测技术M. 北京:电子工业出版社,2004.5 张琛曦. 基于网络技术的嵌入式电梯远程监测系统-嵌入式系统的设计M. 杭州:浙江大学出版社,2012.6 顾滨,赵伟军,诸杭. Protel99SE实用教程(第3版)M. 北京:人民邮电出版社,2013.

26、7 陈潜,刘云,高利娟. 基于嵌入式Linux的机房远程监测系统研究J. 微计算机应用,2011,20(2),60-65.8 李霏,王让定. 基于嵌入式Linux的多路视频监控系统的设计J. 宁波大学出版社,2007,(6),151-154.9 杨晖,胡永健. 基于Linux和S3C2410嵌入式图象传输系统设计J. 微计算机信息,2007,23(2),20-24.10 罗苑棠,杨宗德.嵌入式Linux应用系统开发实例精讲M. 北京:电子工业出版社,2007.附录1:机房监控系统电路图附录2:源代码(部分)#include "stm32f10x.h"#include <

27、;intrins.h>#include <absacc.h>#define unchar unsigned char#define unint unsigned int/*主函数*/void main(void)System_Init(); /系统初始化while(1)System_Set();/通过短信对系统进行设置Equipment_Open();/系统监测Phoneback_Run_OK();/来电时播放“设备运行正常”的语音/*系统初始化*/void System_Init(void)System_Flag_Init();/系统所有标志位初始化MCU_Seria_In

28、it(); /串口初始化,打开总中断,串口中断关闭EEPROM_Init();/EERPOM初始化ISD1730_Init ();/语音芯片DS1730初始化 EM310_Init();/EM310初始化BUZZER=0;Delay1ms(500);BUZZER=1;ES=1; /开启串口中断RI=0; /开启串口接收EA=1; /开启总中断/*通过短信对系统进行设置*/void System_Set(void)while(EM310_Flag)/第一次主程序执行的时候是关闭EM310_Flag=0 EMS310_Message_Read_Reprot( ); RI=0; Delay1ms(5000); /要延时稍微长的一点时间,放置对信息的干扰 Delay1ms(5000); EMS310_Message_Delete( );/删除短信 Temp_AT1=0; Temp_AT2=0; BUZZER=0; /蜂鸣器叫 Delay1ms(1000); BUZZER=1; Delay1ms(1000); ES=1; /开启中断 EM310_Flag=0; /标志位开启 break;/*监测

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论