基于AVR—AT90S8515的多通道智能大厦自动抄表系统.pdf_第1页
基于AVR—AT90S8515的多通道智能大厦自动抄表系统.pdf_第2页
基于AVR—AT90S8515的多通道智能大厦自动抄表系统.pdf_第3页
全文预览已结束

下载本文档

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

文档简介

一 文章编号 : 1 0 0 1 9 9 4 4 ( 2 0 0 2 ) 0 6 0 0 6 1 0 3 基于 A VRA T 9 0 5 8 5 1 5的多通道智能大厦 自动抄表 系统 龚辂洲, 彭楚武 , 段太钢, 胡在华 ( 湖 南大学 电气与信息工程学院, 湖南 长沙 4 1 0 0 8 2 ) 摘要:介绍了一种智能大厦住宅的水、电、气表的 自动抄表系统。以新型单片机 A V R A T 9 0 S 8 5 1 5为中央 处理单元 , 实现 了采集器的多通道数据 采集、 数据存储和数 字化的通信 功能, 系统运行稳定, 具有精度高、 可靠性好和实时性好等特性。对该嵌入式采集器的硬件 和软件作 了较为详尽 的阐述 。 关键词 : 自动检测 ; 智能 大厦 ; A V R单片机 ; 嵌入式系统; 在线抄表 中图分类号 : T P 2 7 4 5 文献标志码 : B 1 引言 随着人们生活水平的不断提高,智能大厦应运 而生 ,以计算机为基础的 自动抄表系统是其重要组 成。最近研制的多通道智能大厦 自动抄表系统采用 了 A t m e l 公司的 A V RA T 9 0 S 8 5 1 5 单片机 ,多通道 实时采集用户水、 电和煤气表的脉冲, 并将脉冲数上 传至集中器和上位管理机。 程控 电话网 P C监控服务 中心 C0Ml COM2 COM3 COM4 且 R S一 4 8 5 接 口电路 4 舅 I I 訾 翁 I l 翁 l 2 24 l 2 2 4 抄表 系统的拓扑结构 银 行 2 抄表系统的拓扑结构 根据用户的需求 ,从系统的可靠性和实用性出 发 , 系统设计成 3层 , 分别为 P C监控层 、 集中器层 和采集器层, 结构示意图如图 1 所示。 P C监控服务 中心主要对系统进行实时监控并 对用户信息进行管理 : 设定通信波特率 ; 设定集中器 向采集器定时采集时间; 设定采集器当前时间 ; 获取 采集数据和报警 ; 设置采集器通道类型; 读取采集器 数据 ; 开户和销户。通过程控电话 网与 自来水公司 、 电力公司、煤气公司和银行组成网络 ,完成 网上结 算 、 报表等功能。集中器起着上传下达的作用 , 具有 掉电保护数据和报警功能。采集器主要任务是准确 实时采集所对应 的 2 4个水 、电和煤气表的脉冲数, 并存储在 自己的 MP U内,定时或按需上报给集中 器 ,然后传到监控服务 中心。它也具有掉电保护数 据和报警功能。 由于监控服务中心和集 中器的距离较短 ( 小于 5 0 m) , 通过 P C机的 C O M 口与集中器进行通信, 采 用 R S 一 2 3 2 全双工通信方式。 一台监控服务中心可 带 4台集中器。 集中器与采集器的距离较长 , 采用可 靠性较高的差分式 R S一4 8 5半双工通信方式 ( 两者 距离最长为 1 2 0 0 m) 。每台采集器还特别设计了一 个中继器 ,由两片背靠背的 MA X1 4 8 7 E组成 ,其接 收 发送方式由 P D 5 控制 ,它起着增强信号和加长 通信距离的作用 ( 可延至 2 4 0 0 m) 。 一台集 中器最多 可带 1 2 8台采集器。 收稿 日期 :2 0 0 2 0 41 0 :修订 日期 :2 0 0 2 0 9 2 9 作者简介:龚辂洲( 1 9 7 7 一) ,男,硕士研究生,研究方向为机电一体化及 C I MS系统、智能大厦监控系统等;彭楚武, 男 ,教授,研究方向为机电一体化及 C I MS系统、智能大厦监控系统、微机实时控制系统研究与开发等。 胄 动 与 蓑 2 0 0 2 (6 ) 囫 卜 - 图 。 维普资讯 一 3 嵌入式 采集器硬件设计 A T 9 0 S 8 5 1 5内置上 电复位和看 门狗定时器 电 路 , 采集器硬件结构简单 , 其原理图如图 2所示。 PB 0T0 V c PBl Tl PO PDl 1 D L E PD3I NTl P C7 xT【 2 P C2 图 2 采集器硬件原 理图 采集器部分主要涉及 MP U, 通信接 口电路、 用户 表及其滤波电路等。 MP U A T 9 0 S 8 5 1 5地址 ( 采集器 地址电路由单向总线驱动器的 7 4 L S 2 4 4等构成) 通过 P D 7片选读人 P A口( 初始化时完成 ) 。 通信接口电路 主要由 MA X 1 4 8 7 E组成, 由P D 6控制采集器的接收 发送方式 , 使 系统实现差分式 R S 一4 8 5半双工通信 。 I O口 A, B , c通过光 电耦合器及 隔离 电路接用户 水 、 电或煤气表 ( 每通道 1 块表 , 共 2 4 块表 ) , 采集器 实时采集各表 的脉冲。 通信波特率有 9 6 0 0与 4 8 0 0 两种 , 通过 P D 4选择 。 此脚为复用管脚 , 上 电读取配 置为输入, 运行为通信指示灯输出。 设计 了 3个电压检测器 : 2 2 0 V电压检测 当检测 2 2 0 V电压整流低于 8 2 V,认为 2 2 0 V断 电; 低电压检测当检测 c 4 8 V, 认为电压过 低 , 需将 R A M 内容写入 E P R O M; 复位电压检测 当 Kc 4 2 V, 单片机复位。 系统设计了一个 6 V掉 电保护电池 , 用以保证数据可靠写入 E P R O M。 R A M 数据每天写入 E P R O M一次。考虑高峰与平常用 电 分时计费 , 采集器还设计了时钟 , 由 P C监控机每天 对时一次。 4 采集器软件设计 采集器主要是完成对 2 4个通道的用户脉 冲表 的实时采集 , 通信时只是从机 , 即只有 当收到集中器 的命令后,采集器才响应。接收和发送通信均采用 中断方式 , 这样就不会影响采样 , 从而保证了数据 的 准确性。为区分高峰和平常数据 , 设计 了实时时钟 , 采样就在 1 0 m s 时钟定时中断内完成 ( 各表的脉冲 周期 为 5 01 0 0 H z ) 。 采集器的主程序流程图如图 3 囵 所示。 图 3 采集器的主程序流程 图 软件采用 A N S I C语言编制源程序 ,在 I c c A V R 6 2 3 环境下编译,在 S T U D I O 3 5 2环境下仿真调 试。在程序设计和调试过程中应注意以下几方面 : ( 1 )初始化 I O端 口 先 赋 值 端 口数 据 方 向 寄 存 器 D D R X n ( 若 D D R X n设为 1 时, P X n 被配置为输出引脚 , 反之P X n 被 配置为输 入引脚 ) ,然后赋值 端 口数据 寄存器 维普资讯 P O R T X, 而 P I N X为相应端 口的输入引脚地址。 若希 望得到相应引脚的逻辑电平值 , 一定要读 P I N X。 ( 2 ) 中断系统 A T 9 0 S 8 5 1 5中断系统 中主要有 G I MS K( 通用 中 断屏蔽寄存器) 和 T I M S K ( 定时 计数屏蔽寄存器) , 共有 1 3 个 中断源。触发中断方式有低电平触发 、 高 电平触发 、 下降沿触发和上升沿触等四种方式( 从寄 存器 MC U C R中设置 I S C X 1和 I S C X 0 ) 。 这里应着重 注意 中断的声明和开通 : 声明中断 # p r a g m a i n t e r r u p t _ h a n d l e r : 开通 中断设置相应的控制寄存器及总 中断 I= 1 ( 3 )U A R T的使用 A T 9 0 S 8 5 1 5带有一个全双工的通用串行异步收 发器 U A R T ,其相关 的寄存器有接收和发送数据寄 存器 U D R( 由两个物理上分开的寄存器共享一个地 址 , 写入数据时是写到发送寄存器 , 读 出时是读取接 收寄存器) 、 状态寄存器 U S R 、 控制寄存器 U C R和波 特率寄存器 U B R R ( 串行通信时波特率发生器不占 用定时器) 。 例 1 4 M H z 晶振下以9 6 0 0 波特率中断接收 集中器的命令, 设置如下: # p r a g m a i n t e r r u p t _ h a n d l e r r e c e i v e _ c o m ma n d : 1 0 s t a t e m e n t r e c e i v e i n t e r r u p t u n s i g n e d c h a r t e mp ;d e fi n e g l o b a l v a t v o i d m a i n ( v o i d ) U B R R : 2 5 ; B a u d r a t e i s 9 6 0 0 b i t s D D RD= O X F E ; ffR X D i n p u t U C R=0 X 9 0 ; o p e n r e c e i v e i n t e r r u p t &e n a b l e S REG I= 0 X8 0 ; l r e s p o n d r e c e i v e i n t e r r u p t v o i d rec e i v e _c o m ma n d ( v o i d )r e c e i v e i n t e r r u p t s e r v e f u n c t i o n t e m p U D R ; rec e i v e d a t a l 例 2 4 MH z 晶振下以 9 6 0 0波特率对集 中器 中断发送 , 设置为: # p r a g ma i n t e r r u p t _ h and l e r s e n d _ c o mp l e t e : 1 2 s tat e m e n t s e n d c o mp l e t e i n t e r r u p t u n s i gne d c h a r d a t a I , d a ta 2 : d e fi n e g l o b al v a r v o i d ma i n ( v o i d ) 胄动 与仪蓑 2 0 0 2【 6 ) U B R R : 2 5 ; B a u d r a t e i s 9 6 0 0 b i t s D D R D I =0 X0 2 ; #T X D o u t p u t U D R : d a t a I s e n d d a t a l UCR= 0 X48 ; o p e n sen d i n t e r r u p t & e n abl e S R E G I =0 X 8 0 ; o p e n I l f f res p o n d sen d i n t e r r u p t v o i d s e n d _d a ta( v o i d ) sen d i n t e r r u p t ser v e f u n c t i o n U D R = d a t a 2 s e n d d a t a 2 l ( 4 )看门狗定时器的使用 A T 9 0 S 8 5 1 5内置看 门狗电路 , 由寄存器 WD T C R 控制。WD T C R的结构 : WD T O E为看 门狗关闭使能。 只有在该位被置 1 后的 4个时钟周期 内将 WD E清零才能关闭看门狗 电路 , 否则看门狗电路不会被关闭。WD T O E在被置 1 后 , 在 4个周期后由硬件 自动清零 。 WD E置 1 时 , 使能看 门狗电路 ; 清零时关闭看 门狗电路。 注意关闭看 门狗电路应在对 WD T O E置 1 后 4个时钟周期内进行。 A V R中的 WD R指令 , 用以清除看 门狗定时器, 在 c语言中对应为 WD R ( ) 或 WD R ( ) 函数。 还 应 注 意 , 在 引 用 头 文 件#i n c l u d e 或初始化堆栈指针或使用片外 S R A M 时, 应对 MC U C R初始化 ; 位运算时应使用 A N S I 的 位运算功能进行处理等幢 一1 。 5 结束语

温馨提示

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

最新文档

评论

0/150

提交评论