一种基于以太网的嵌入式数字监控系统
扫描二维码
随时随地手机看文章
1 引言
随着科技的进步及对生活质量要求的不断提高,信息技术和网络化技术的发展,为家用电器居家环境集中控制和远程遥控提供了可能。将信息技术与家电控制技术相融合,在很大程度上实现家庭生活的信息化和自动化,满足人们舒适、快节奏的生活需要,当家庭采用了监控系统之后,各种电子设备就能够在几乎无需过问的情况下进行操作。鉴于这种数字化家庭的发展趋势,远程监控作为一种理想的有效的而且快捷方便的实现途径己被广泛采用。
图1 现场控制卡的硬件框图
2 系统总体设计
本系统将采用上、下位机的方式组建监控系统。下位机工作于监控现场,采用51系列单片机控制;上位机则用于监控中心,使用一台PC机。单片机通过各种传感器,采集数据,通过以太网卡控制芯片实现的网络接口将监控数据传给异地的PC机,PC机的远程监控端接收监控信息并存储,然后进行相应处理并发出相应的报警信息。同时,PC机也可以向单片机发送指令,控制单片机的监控行为。控制命令发出去以后,负责现场控制的单片机接受命令,经过信息处理以后再执行。
3 监控系统硬件设计
对于现场监控器和现场控制器都是分别由各自的单片机来组成,现场控制器的硬件设计与现场监控器硬件设计一样,都是包含了单片机最小系统的扩展,再加上各自的功能模块。图1是现场控制卡的硬件框图。
系统硬件设计主要包括两部分内容:一是单片机系统的扩展部分设计,主要是系统存储器的扩展,存储器扩展指EPROM, RAM的扩展等。二是功能模块的设计,包括通信功能模块、电机驱动模块。
3.1 单片机系统的扩展
3.1.1 系统存储器的扩展
本系统使用的单片机为78E58B单片机。78E58B是一款以8051为核心的单片机,它具有集成度高、指令功能强、运算速度快、I/O接口功能强、可靠性高等优点,包含32K字节的片内Flash电擦写程序存储器:4K字节附加ROM; 512字节片内RAM;三个16位定时器/计数器;一个串口。该芯片还包括8个中断源,2个中断优先级的中断资源。32K字节的程序存储器对于系统来说己经足够了,所以没有扩展外部程序存储器,所以在硬件框图中不必添加外部ROM,节省了系统开销,还可以省却部分电路、连线,减少了干扰源。然而,78E58B只有512字节的片内RAM远远不能满足系统功能的要求,故采用了8K字节的静态RAM 6264作为外部数据存储器。
3.1.2 复位电路设计
本系统的复位电路采用了电平式开关复位与上电复位,另外复位引脚还与网络通讯卡上MCU的一个I/O口连接。使用这种复位电路,当该MCU中的程序在运行过程中出现问题的时候,就可以通过网络通讯卡上的MCU使之复位,重新恢复正常工作。虽然这种复位电路干扰易串入复位端,但是一般不会造成单片机的错误复位。复位电路如图2所示,但要注意的是这种复位电路要与手动的开关复位电路隔离,以免复位功能失效,甚至短路。
3.2 接口实现
3.2.1 RS232异步串行通信单元
本系统采用RS232最简单的全双工通信方式,只用了三根线,即串行接收RXD,串行发送TXD和接地线GND。将“串行发送”和“串行接收”交叉连接,地线直接相连,其余信号线都不用。用软件来实现通信的“握手”、空闲检测等功能。并且选用MAX232串口通信信号转换芯片来实现RS232与TTL的电平和正负逻辑电平的转换。通过MAX232的TTL和RS-232的输入/输出端口,自动的调节了单片机的TTL电平信号和RS-232的串口通信信号的电平匹配。
设计这部分硬件单元,主要是为了系统调试的需要。在调试阶段,通过串行通信端口,向计算机输出调试的结果,有利于观察系统运行的状态。另外一个目的是为了将来系统扩展的需要,可以方便的通过串行通信端口,向系统输入必要的命令和信息。
3.2.2 单片机双机并行互连的实现方法
实现现场控制卡和网络通讯卡的连接实际上就是实现两卡上单片机的互连。本来单片机带有串口,利用串口进行互连通信非常方便,但是系统中的单片机的串口都要用于对外连接,所以单片机的串口就不能用做系统内单片机之间的通信接口了。但是,单片机的并行端口也能相互连接来进行数据通信,因此就通过单片机的并行端口来实现现场控制卡和网络通讯卡直接的互连。在本系统中,可根据不同的使用要求,来采用不同的并行连接方法。目前可用的连接方法包括以下三种:单向并行通信接口;主从并行通信接口;无主从双向并行通信接口。
3.3 驱动电机电路
3.3.1 驱动电路
单片机本身具备一定的驱动能力,其I/O口的电流在l0m A左右,像驱动发光二极管之类的器件并不需要特殊的驱动电路,但是对于直流电机这类负载较大的器件,单片机无法为其提供较大的电流,尤其在直流电机刚启动时,电机的启动电流往往会达到其正常工作电流的数倍,所以,这一类的器件就需要专门的驱动电路完成对其的驱动,而单片机只是完成对其控制方面的工作。驱动电路的基本功能是要有足够的电流驱动电机转动。原理图如图3所示。
图3 单片机驱动直流电机原理框图
3.3.2 光耦合器
光耦合器是把发光器件和光敏器件组装在一起,通过光线实现藕合,构成电-光-电的转换器件。光耦合器可用于较远距离的信号隔离传送。可以起到隔离两个系统地线的作用,是两个系统的电源相互独立,消除地电位不同所产生的影响,具有很强的抑制噪声干扰的能力。 还可以作为信号隔离转换、脉冲系统间的电平匹配、强电与弱电之间隔离、高压开关等。光耦合器的应用时系统具有较高的电气隔离和抗干扰能力。
4 监控系统软件设计
4.1 现场控制卡的软件开发
本系统的控制软件就是用在C语言程序中嵌入用汇编语言开发的功能模块的方法开发的。设计用到的工具是KEIL公司的MCS-51系列单片机集成开发环境。它的功能非常强大,实现从文本代码编辑到生成可用于烧到目标ROM的二进制或者HEX格式的文件的所有功能。集合了文本编辑器、C语言编译器、汇编编译器、连接定位器、目标处理器模拟仿真器以及库文件管理器等51开发工具套件。软件开发采用项目管理方式,多个模块(多个文件、放在一个项目当中,管理方便。
软件的流程图如图4所示。
图4 软件流程图
4.2 现场控制卡和网络通讯卡间的通信
通过并口扩展,系统采用两个8位并口分别用作数据的输入与输出,并采用一个8位并口用作联络信息的传送,该并口的高4位和低4位分别用于联络信号的输入和输出。通信采用的是查询法,通过查询联络信息的状态来指导完成整个通信过程。这些联络信息分别与系统内的三种内部通信相对应,包括配置信息的传输、控制信息的传输和环境信息的传输。
4.2.1 配置信息的传输
配置信息的传输主要是在系统刚启动时进行,由网络通讯卡发起。首先由网络通讯卡将第一个字节的配置信息输出到网络通讯卡的输出并口上,并同时输出“发送配置信息”(0001)的联络信号。数据采集卡以一定的频率扫描联络信号输入口,收到“发送配置信息”的联络信号后,马上读取相应的数据输入口,获得第一个字节的配置信息,并发出“收到配置信息”(0010)的联络信号,完成第一个字节的传送。接着,网络通讯卡与现场控制卡继续以几乎相同的方法传送第二个字节的配置信息,稍有不同的只是把联络信号“发送配置信息”和“收到配置信息”都按位取反,即第二次通信的联络信号变为“发送配置信息”(1110)和“收到配置信息”(1101),直到数据传送完毕,双方以“传输结束”(1111)的联络信息结束本次通信。通过这种方法,网络通讯卡和现场控制卡只要分别输出一次联络信号,就可以传送一个字节的数据,协议简单,数据传输快捷。
4.2.2 控制信息的传输
控制信息的传输同样是由网络通讯卡发起的。当网络通讯卡从数据采集卡上获取到报警信息或是处于监控中心的用户有需求时,从上位机发送控制命令以后,网络通讯卡将一个字节的控制信息输出到相应的并口上,并通过其输出联络线输出“发送控制信息”(0100)的联络信息,现场控制卡收到“发送控制信息”的联络信息以后,马上读取相应的数据,并发送“收到控制信息”(1000)。现场控制卡收到该信号以后,以“传输结束(1111)”结束本次通讯。
4.2.3 环境信息的传输
环境信息的传输由网络通讯卡发起,并不断地循环进行。首先,网络通讯卡将所要读取环境信息的编号通过数据并口输出,并输出联络信号“环境信息查询”(1100)。数据采集卡收到该信号后,通过数据输入并口获得网络通讯卡要查询的环境信息的通道编号,把相应的环境信息数据通过数据输出并口输出,同时输出联络信号“环境信息送到”(1010)。网络通讯卡收到该信号后,就可以继续查询下一个环境信息了。
4.3 监控数据库
目前用于数据库开发的开发环境有很多,例如:Delphi, Visual Basic, PowerBuilder和SQL Server等。随着Visual C++的数据库开发功能的不断加强,它作为一种方便易用的开发工具在实际开发中被广泛应用。 本系统监控数据库设计便采用的是Visual C++,其界面包括系统登录、软件主界面、用户信息管理和工作人员信息管理、环境信息和报警信息管理和监控器配置信息管理。
5 本文作者创新点
本文实现了一整套比较完整的嵌入式监控系统。文中介绍了整个系统的解决方案,现场控制卡的硬件设计、软件设计,以及现场控制卡与网络通讯卡之间的通信。本系统与一般监控系统相比,主要特点是现场监控设备能直接上网,而系统又利用了Ethernet:作为监控信息的网络传输信道,并采用了廉价的51系列单片机作为现场监控设备的MCU,以及使用了源代码公开的μC/OS-Ⅱ实时内核最为现场监控设备的软件平台,使系统具备了较高的性价比。
参考文献:
[1] 杨武刚. 单片机典型模块设计实例导航[M]. 人民邮电出版社,2004. 5
[2] 黄颖、张小飞. 网络监控系统的设计和实现[J]. 计算机工程与应用,2003. 22
[3] 黄乐天, 谢意. 实用高精度智能恒温加热器系统设计[J]. 2005, 10-1: 36-38
[4] 孙媛、王水清. 基于以太网嵌入式家庭监控网络系统的设计[J]. 江南大学学报(自然科学版)2003. 1
[5] 周文举. 基于单片机红外无线通信的抄表系统[J].微计算机信息, 2006,2-2 : 45-47、113