用户中心

资讯 > 嵌入式系统

用于监测系统的LPC2292嵌入式WEB服务器

来源:海志华 宋晓梅/www.plc-fa.hk2008.08.17阅读 5145

 1  引言

  近年来,远程监测系统成为自动化控制领域的一个研究开发热点。远程监测系统是本地和远端共同构成的能够实现远程监测功能的软、硬件系统。本设计采用嵌入式web服务器对远端工厂机器温度进行远程监测,用arm处理器lpc2292来实现精简tcp/ip协议栈;远程数据交换则采用b/s模式,简洁美观控制工程网版权所有,便于系统的维护与升级。其使用具有统一性的html语言,标准化界面独立于客户端的软、硬件平台,极大地节省了客户端的开发工作。用户可以随时用ie浏览器进行远程访问来获得最新监测信息,实现有效监测和信息集中处理。

 2  系统总体设计

  本文采用基于嵌入式web服务器的远程监测,其结构如图1所示。

 

用于监测系统的LPC2292嵌入式WEB服务器如图

图1  温度监测系统的框图

  系统直接在32位的arm处理器lpc2292上实现嵌入式服务器www.cechina.cn,通过嵌入式web服务器将被控设备接入internet,用户可以通过ie浏览器对被控设备实现远程监测。

3  系统硬件设计

  嵌入式web服务器系统不仅要进行现场数据采集,还要通过网络将数据及时发布到互联网上。经过对性能与经济的综合比较后,本远程监测系统主要采用philips公司的一款功能强大、超低功耗、支持实时仿真和跟踪的微控制器lpc2292。片内有16k sram、256k flash、128位宽度的存储器接口和独特的加速结构可实现高达60mhz的工作频率。lpc2292采用144脚封装、极低的功耗、2个32位定时器、8路10位adc、2路can、pwm通道以及多达9个外部中断、76~112个gpio口、2个工业标准uart、高速i2c接口(400kbps)和2个spi接口。

  lpc2292内部没有集成以太网控制器,需要在片外搭建以太网接口电路。常用的芯片是rtl8019as,但本设计中采用davicom公司的dm9000a(e),它内置auto-mdix功能的10/100m自适应收发器,并支持多种连接模式,i/0速度比rtl8019as速度快且功耗也低很多。rj45接口采用st-j0012www.cechina.cn,内部集成有2个耦合变压器,可抑制来自介质的共模噪声和干扰。接口自带2个led,分别用来显示链接/活动状态和速度状态(10m/100m),大大节省了硬件的线路连接。

 

用于监测系统的LPC2292嵌入式WEB服务器如图

图2  系统硬件原理图

  系统的硬件原理图如图2所示,本设计采用16位数据总线对dm9000a进行访问,将16根数据线分别与lpc2292外部存储器数据总线的低16位相连。dm9000a没有地址线,cmd引脚与lpc2292的a1引脚连接,用来处理数据和命令。片选信号由lpc2292的cs2控制,当cs2为低电平时,控制器被选中,所以其命令操作地址为0x82000000,数据操作地址为0x82000002。dm9000a提供了eeprom接口,与93c46相连,可用来存储物理地址等信息。铁电随机存储器(型号是fm25cl64)用来存储每隔一段时间所测量的数据,64k的非易失性fram具有像ram一样快的读写速度控制工程网版权所有,数据在掉电后可保存10年,还具有spi串行外围接口,方便与lpc2292的两个spi接口之一相连接。

  嵌入式系统对可靠性的要求很高CONTROL ENGINEERING China版权所有,不允许出现死机现象,本设计中采用了专门的复位芯片cat1023来将完成上电、掉电时的可靠复位。cat1023含有一个精确的vcc监控电路并且它的复位端为开漏输出,利用jtag调试时仿真器可以主动拉低复位引脚使系统复位。

  本系统中的温度传感器是lm35。lm35是电压集成温度传感器,其输出电压与摄氏温度成正比,无需外部校正,精度可达0.5℃。其输出阻抗低,适用于远距离传送。

4  嵌入式tcp/ip协议的实现

  首先将μc/0s-ii移植到lpc2292上。移植μc/os-ii到lpc2292需要提供2个或3个文件:os_cpu.h、os_cpu_c.c及os_cpu_a.asm。并且需要在os_cpu.h包含几个类型的定义和几个常数的定义;在os_cpu_c.c和os_cpu_a.asm中包含几个函数的定义和时钟节拍中断服务程序的代码,还得修改两者间相关的数据类型和函数。

  由于嵌入式系统的硬件资源相对比较有限,在μc/os-ii操作系统上移植的tcp/ip协议栈需要进行一定的裁减,只需要arp协议、ip协议、icmp协议、tcp协议及http协议。发送数据时,应用程序通过socket api接口函数并使用tcp/ip协议栈提供的数据通讯功能。如果选择的是面向连接的tcp协议,则应用程序将用户数据交由tcp传输层处理,tcp协议将数据添加tcp首部后封装成tcp数据报;然后将封装好的t

版权声明:版权归控制工程网所有,转载请注明出处!
继续阅读

频道推荐

关于我们

控制工程网 & CONTROL ENGINEERING China 全球工业控制、自动化和仪器仪表领域的先锋媒体

CE全球

联系我们

商务及广告合作
任小姐(北京)                 夏小姐(上海)
电话:010-82053688      电话:18616877918
rendongxue@cechina.cn      xiashuxian@cechina.cn
新闻投稿:王小姐

关注我们的微信

关于我们 | 网站地图 | 联系我们
© 2003-2020    经营许可编号:京ICP证120335号
公安机关备案号:110102002318  服务热线:010-82053688