摘要:针对电力线通信的特点,提出一种数据集中器的设计方案, 阐述以SH7145开发板为核心的硬件设计方案,分析在T-Kernel嵌入式实时操作系统下的软件实现过程,通过确定任务优先级、合理实现任务调度,使其能够实现读取电力自动抄表系统中各个节点数据的功能。
关键词:电力线通信;数据集中器;SH7145
0 引言
电力线通信(Power Line Communication)技术是指在1.6M到30M频带范围内,将电力线作为通信媒介,传输数据、语音、视频信号的一种通信方式。在发送时,利用GMSK或OFDM调制技术先将数据调制成载波信号或扩频信号,通过耦合器耦合到220V或其他交/直流电力线上,然后在电力线上进行传输,在接收端,先经过滤波器将调制信号滤出,再经过解调,就可以得到原信号。电力线通信技术不需要重新布线,直接使用现有的电力网实现对数据、语音、视频等信息的传递,具有易维护、易推广、易使用、低成本等优点,显示出了良好的前景和巨大的市场潜力。
1 系统原理及结构
在远程电力自动抄表系统中,PLC技术根据命令或设置自动读出电表数据并自动上传,提高抄表速率,通常速率在2400bps。电力自动抄表系统一般由主站、集中器、采集器(或模块)等构件组成,可以对用户终端的用电状态进行采集、控制。采集器(或模块)实现用户终端电表的脉冲计数,集中器则根据主站发出的指令(如抄收、窃电检测等)循环查询采集器(或模块)的计数值(或状态),主站由PC机构成,负责供电所所属用户终端用电的管理和监控。集中器是整个系统的通信桥梁,它接收主站命令,并按指令要求将用户端的用电状态(如用电量、用电异常等)送到上位机或对用户终端执行控制(如切断用户供电等)。
在同一电力传输线路中,数字电表和集中器通过R422/488接口与PLC接入控制器相连接,这样就可以将整个电网变为一个数据传输网络,集中器就可以收集各个节点的数据。
由于采用电力线作通信信道,不必另外架设通信电缆,节省了投资,为实现用户电能表网络化管理,以及“一户一表,抄表到户”制度提供了高效、科学的手段。数据集中器按照设定的抄表时间,每天自动采集各用户电能表的累计电量,并根据设定的抄表日自动生成各用户电能表的累计电量,系统软硬件采用模块化、多冗余设计,这样既保证了设备工作的可靠性,又使系统易于扩充和软件升级。
2 数据集中器的硬件设计
数据集中器是以嵌入式微控制器SH7145为核心的软硬件系统。SH7145是日本瑞萨科技生产的SH系列开发板中一款。SH7145板无MMI,无DSP核,使用实时地址,属于低端产品,适用于初学者。SH7145板上有:蜂鸣器,LCD,键盘,A/D转换,2个马达,BIP开关,SH7145芯片,串口插槽,E10A仿真器插口等。
3.系统软件设计
3.1 引入T-Kernel嵌入式实时操作系统 随着应用的复杂化,采用传统前后台设计方法,会显得过于复杂,实时性得不到保证,而且容易发生死锁。解决这些问题的最好方法就是采用实时操作系统。
T-Kernel是T-Engine的实时核心,它充分利用了在嵌入式设备领域中拥有众多业绩的ITRON成果,并引入子系统等功能,是一种实现从小型嵌入式设备到大型高级系统开发的大规模化OS。它包含了时间管理、任务间通信同步(信号量、邮箱、事件标志)、扩展同步通信和内存池管理等功能;采用T-Kernel实时操作系统可以有效地对任务进行调度;对各任务赋予不同的优先级可以保证任务及时响应,而且采用实时操作系统,降低了程序的复杂度,方便程序的开发。
3.2 任务的划分及调度 要完成实时多任务的各种功能,必须对任务进行划分。本程序根据各个任务的重要性和实时性,把程序分成六个具有不同优先级的任务,包括管理各个任务的启动、休眠;接收串口中断,唤醒UPDATE_TASK任务;用系统时钟模拟RTC;读取各个电表的数据自;动加入新节点;接收SHELL指令并执行。
通常多任务操作系统的任务不同于一般的函数,它是一个无限循环,而且没有返回值。如果没有更高优先级的任务进入就绪态,当前任务是不会放弃对CPU的使用权。为了实现操作系统的正常运行和有关事件的同步,必须正确处理任务间的通信和事件标志的设置。
4 结语
T-Kernel实时操作系统在嵌入式硬件平台的基础上,用T-Kernel实时操作系统开发应用程序有其独到之处,用户可以直接利用系统的接口函数编写自己的应用程序,不需另行开发,大大方便了用户编程,缩短了软件的开发周期,提高了开发效率。
参考文献:
[1]坂村健.源码开放的嵌入式实时操作系统T-Kernel[M].周立功等,译.北京:北京航空航天大学出版社,2005.
周耀义,鲍滨寿.低压电力用户远程自动抄表系统[J].电力自动化设备,1999,19(2):64-65.