浅议在楼宇监控系统中嵌入式系统的开发

时间:2022-04-11 08:53:54

浅议在楼宇监控系统中嵌入式系统的开发

摘要:楼宇自动化控制系统是智能建筑的一个重要组成部分,通过对各个子系统进行监控、控制、信息记录,实现分散节能控制和集中科学管理。嵌入式系统是集计算机技术、半导体技术、电子技术和具体应用需求于一体的专用系统,嵌入式系统能够在可预知的极短时间内对事件或用户的干预做出响应。文章对楼宇监控系统中的嵌入式系统开发进行了分析。

关键词:楼宇自动化;监控系统;嵌入式;系统开发;开发平台

中图分类号:TP277文献标识码:A文章编号:1009-2374(2009)24-0001-02

随着计算机技术、控制技术、通信技术及信息技术的飞速发展,人们对生活、办公环境安全性、舒适性的要求日渐增长,智能建筑应运而生。智能建筑通常包含三大基本要素,即楼宇自动化系统(BAS)、通信(CAS)和办公自动化(OAS)。三者通过综合布线系统有机结合,利用计算机网络和接口技术将分散在各子系统中不同楼层的直接数字控制器连接起来,通过联网实现各个中央监控管理级计算机及子系统之间的信息共享,构成一个相互关联的、彼此协调的、一体化的统一整体。使建筑物能够提供一个合理、高效、舒适、安全、方便的生活和工作环境。

楼宇自动化控制系统是智能建筑的一个重要组成部分。楼宇自动化控制系统就是对各种机电、配电等设施进行全面的计算机监控管理,如空调制冷系统、给排水系统、变配电系统、照明系统、电梯、消防、安全防范系统等;通过对各个子系统进行监控、控制、信息记录,实现分散节能控制和集中科学管理,为建筑物用户提供良好的工作环境,为建筑物的管理者提供方便的管理手段,从而减少建筑物的能耗并降低管理成本。

嵌入式系统是集计算机技术、半导体技术、电子技术和具体应用需求于一体的专用系统,作为一类特殊的计算机系统,与通用计算机系统相比有五个明显特征:专用性、可封装性、外来性、实时性、可靠性。专用性是指嵌入式计算机系统用于特定设备完成特定任务;可封装性指嵌入式计算机系统隐藏于目标系统内而不作者察觉。实质上是面向对象封装以实现信息隐蔽思想的体现;外来性体现在嵌入的计算机一般自成一个子系统,与目标系统的其他子系统保持独立性;实时性指与实际事件的发生频率相比,嵌入式系统能够在可预知的极短时间内对事件或用户的干预做出响应;可靠性是指嵌入式计算隐藏在系统或设备中,用户很难直接接触控制,因此一旦工作就要求可靠运行。

一、开发平台介绍

ARM920T通过EBI(External bus interface)总线扩展了16M的FLASH,32M的SDRAM和LCD的控制器;使用两线接口(TWI)扩展了EEPROM。通讯方面:两个主USB接口支持USB的键盘和鼠标;通过SPI接口连接了CAN控制器MCP2510,RS-232接口作为调试接口,网络接口支持10/100M的网络连接。整个系统有9V直流供电,LCD需要单独的5V直流供电。图1为ARM920T开发平台的简要框图:

二、程序的开发调制方式

虽然ARM开发板和主机上的Linux虽然运行的都是Linux,但是ARM和主机CPU是不同体系结构的CPU;而且,嵌入式Linux是精简的Linux,在系统上不具有软件项目管理的工具,对于代码运行时资源文件和库文件的搜索需要开发者来设定,所以需要对程序先在主机上进行交叉编译,然后将目标代码和库文件放到目标板上进行调试。

在对底层软件开发的过程中,需要用到集成开发环境Code warrier和超级终端。Code warrier内部集成了面向ARM体系的编译器,使用它观察硬件的寄存器状态;而超级终端通过一个预先定义在初始化文件中的AT91F_DBGU_Printk()函数打印调试信息。

而在对顶层程序的调试过程中,主从机的调试交互主要用到了Linux的NFS(网络文件系统)。NFS用来在网络中的多台计算机间实现资源共享,这些资源可以是文件或像CD-ROM这样的设备。它可以将远程主机上的文件系统挂载到本地系统中,这样就可以像使用本地文件系统中的文件一样使用那些远程文件系统中的文件。这样做的好处是可以使网络中的不同系统直接访问同一个文件,不必在每个系统中都维护一个该文件的拷贝。

主要有两种调试开发方式:

(一)全依赖Linux下的资源

1.在主机上建立Linux交叉编译环境,使用针对于目标板Linux版本的arm-Linux-gcc进行调试;但是,如果程序需要包含诸如目录下的系统文件时,要注意Linux版本的匹配;在现在提供的2.95.3的交叉编译包中,在其include目录提供的是基于2.4.20版本下的系统头文件,如果使用的内核版本不同,会造成冲突。

2.打开主机Linux操作系统的Minicom端口,对目标端口的参数进行设置,让它与目标板上的RS-232调试端口J25建立连接,来监测调试信息。

3.把主机和目标板之际,用交叉网线进行连接。

4.将需要加载的文件系统在主机上的目录在/etc/exports中定义;

5.使用/etc/rc.d/init.d/nfs restart命令启动NFS,将编译出来的二进制文件使用mount主机IP:/主机文件目录//mnt/nfs挂载到目标板上。

6.在目标板上运行文件。

(二)在主机的WINDOWS上建立,使开发者可以充分利用WINDOWS下程序开发资源

该论文的工作都是在此开发环境下完成的,在程序调试中使用printf或printk打印调试信息。建立步骤如下:

1.对目标板进行网络变量的配置。

Uboot>setenv ethaddr 12:34:56:78:99:aa(给平台分配的以太网物理地址);

Uboot>setenv ipaddr 192.168.6.02(给平台分配的IP地址);

Uboot>setenv serverip 192.168.6.22(tftp服务器的IP地址);

Uboot>saveenv(保存环境变量)。

对目标板启动时的NFS系统的主机IP地址和串口通讯速率及硬件FLASH进行配置。

Uoot>setenv;bootargs;root=/dev/nfs;rw nfsroot=192.168.6.20:/ramdiskip=192.168.6.02;console=ttyS0,115200,mem=32M。

这行配置数据确定了在目标板只需要下载内核,内核启动后,它会自动去加载主机地址为192.168.6.20根目录下的ramdisk文件系统。而ramdisk是针对ARM920T开发板32M的FLASH存储器精简的一个文件系统,它可以通过Linux中建立回环文件的方式加载到根目录下,也可以通过修改/etc/fstab文件使其在系统启动的时候自动加载。

2.在主机的WINDOWS上建立虚拟机Vmware Workstation,虚拟机可以在主操作系统上运行第二操作系统。

3.在虚拟机中,对主机的系统资源进行分配,装载Linux操作系统。

4.配置Vmware下的网络。Vmware的网络配置有Bridged Networking,Network Address Translation(NAT),Host Only方式。在Bridged Networking下,主机的操作系统和虚拟机都有各自的IP,而在Address Translation(NAT)中,主机系统和客系统具有共同的IP,在外界是不可区分的;Host Only方式是虚拟机只允许与主机有网络连接。在本论文建立的开发平台上,需要主机和目标板建立NFS,所以选择了Bridged Networking。

5.配置Vmware tools。Vmware tools是虚拟机提供的工具,可以在主操作系统和客操作系统间建立共享的文件夹,要注意的是主客操作系统不可以对同一个文件同时操作,否则文件可能会被损坏。

6.主机RS-232端口和目标板的调试端口连接,设置主机的超级终端参数,利用超级终端对调试信息进行监测。

7.在Linux中,建立交叉编译环境,启动NFS,进行文件编译、挂载、调试。

三、结语

Linux操作系统因为其源代码开放、安全、稳定的特性和对优良文件系统的支持被选为本楼宇配电监控系统的操作系统,并且Linux多任务的支持和丰富的网络功能使其成为一个良好的监控平台。

参考文献

[1]许毅平,周曼丽.智能楼宇综合管理系统的设计[J].计算机应用研究,2003,(6).

[2]Hsiao-Yi Huang,Jia-Yush Yen,Sih-Li Chen,Feng-Chu Ou.Development of an intelligent energy management network for building automation[J]. AutomationScience and Engineering,2004,(7).

[3]张晶,宋宪云.嵌入式系统概述[J].电测与仪表,2002,(4).

[4]任远扬,胡正国.Linux及其在智能建筑系统中的应用[J].计算机工程与应用,2002,(18).

[5]廖国琼,刘云生,王洪庭.嵌入式实时数据库的并发控制[J].计算机工程,2005,(5).

[6]张晓华,黄布毅.基于ARM-Linux的SQ Lite嵌入式数据库技术[J].电子设计应用,2005,(6).

上一篇:考虑渗流力的堤防边坡稳定分析 下一篇:消防行政补偿制度研究