当前位置:首页 > 工业控制 > 《机电信息》
[导读]摘要:在嵌入式系统中,软件的设计需和硬件紧密相关,即进行针对性设计。在电力采集终端中也是如此,多平台的硬件差异十分令人头疼,如I型集中器、Ⅱ型集中器、Ⅲ型专变硬件平台均不相同。抽炼出通用化的硬件接口层可以很大幅度降低代码冗余,提高上层应用设计的可移植性,实现代码通用化设计。鉴于此,对硬件接口层的设计进行了介绍。

引言

由于电力采集终端间的多平台硬件存在差异,为此需设计针对性的硬件接口,此时就难以保证多个平台采用同一套软件。硬件接口层的抽炼及规范可以很好地梳理出公共点及差异点,而基于硬件接口层设计的软件平台具有比较良好的可移植性。硬件接口层就好比桩子,保证了软件平台的稳定。

1硬件接口层设计

1.1总体设计思路概述

首先,要设计出较为稳定的硬件接口层,需遵循两点原则:(1)全面性:(2)模块化。全面性保证了硬件接口层能够较好地兼容各个硬件平台之间的移植,模块化则使硬件接口层有更好的可阅读性及可维护性。

为此,针对Ⅰ型集中器、Ⅱ型集中器、Ⅲ型专变进行全面梳理,共同存在的硬件有:ADC、停抄电池、RTC、串口、ESAM、EEPROM、FLASH、USB、GPIO、遥信门节点、以太网及看门狗:差异项如下:I型集中器有载波、按键、LCD,Ⅱ型集中器有485-3,Ⅲ型专变存在控制模块、按键、LCD等等。

梳理硬件接口层的模块划分如图1所示。

1.2硬件接口层设计约定

为了能够保证硬件接口层存在较为良好的版本管控功能及可阅读性,需梳理硬件接口层必须对外提供的版本信息,包括:软件编译日期(内部开发人员版本管控)、软件版本及发布日期(对外发布正式软件的版本日期)、硬件版本(上层所需进行判断的硬件版本由硬件接口层统一发布)及硬件版本日期。同时,为了保证硬件接口层软件设计具有相同的编码风格,对硬件接口层的接口编写做如下约定:

(1)接口头部应进行注释,列出接口的概要、输入参数、输出参数、返回值、实现细节等。

(2)接口头部注释应放在源码文件中的接口上部,在声明文件中可以不注释或简单注释,譬如以下注释风格:

1.3硬件接口层具体模块设计

针对上述模块,设计的关键在于梳理各模块所需提供的功能,要求如下:

(1)电源管理模块需涵盖备用电池充放电、法拉电容充放电及时钟芯片电池电压检测功能。

(2)遥信、脉冲、门节点、遥控模块需支持脉冲门节点输入检测以及与控制模块通信功能。

(3)EEPROM、nandflaSh模块需提供初始化、擦、写、读、检验数据接口。

(4)ESAM模块需提供与安全模块收、发以及异步的读写接口。

(5)GPIO模块需提供更为底层的直接操作硬件IO读写的接口,以及支持IO检测中断触发的钩子函数。

(6)按键模块需提供按下、释放的检测接口以及实时读取键值的功能。

(7)液晶模块需支持液晶初始化、刷屏、画点、设置背光、调整占空比、清理缓存及更新部分区域的操作方法。

(8)LED模块需提供任务式的持续点亮LED接口,包含闪烁、占空比输出及正常开关功能。

(9)MISC模块为辅助工作模块,其需要提供主工作电源检测、设备电源控制、设备复位控制及SIM卡加热接口。

(10)PHY模块需提供寄存器检测、link灯控制、网线接入检测以及MAC、IP、GateWay等参数的设置接口。

(11)时钟芯片模块需提供硬件时间判断的正确性、RTC芯片初始化、设置读取硬件时钟、秒脉冲输出及RTC温度获取接口。

(12)SPI模块需提供初始化、更改片选、更改速率、收发以及保护总线的上锁/解锁接口。

(13)串口模块需提供串口收发、驱动打开、参数更新以及波特率自适应接口。

(14)USS模块需提供设置USS工作模式、开关USS工作电源、USS总线重启功能以及获取正在连接的USS设备类型。

(15)BWD模块需提供软狗初始化、硬狗初始化、设置看门狗超时时间以及软硬狗的喂狗操作。

(16)同时,为了保证硬件功能可靠,需提供各模块的硬件接口测试功能。

1.4硬件接口层动态库封装

为了保证硬件接口层的可共享性,将硬件接口层封装为动态库,提供给多个进程调用,以降低代码冗余,提高代码的维护性,减少代码空间。

2硬件接口层更改成果

发布硬件接口层以后,即保证了多个硬件平台的软件通用性,也能够减少2600+行冗余代码,提高系统的稳定性。同时,动态库的设计保证了硬件接口层由专人即可维护,提高了可迭代性。并且,全面的白盒测试以及现场多台区的挂网运行测试验证了硬件接口层稳定性远超未归纳硬件接口层的软件版本,效果显著。

3结语

总之,电力采集终端的产品迭代十分频繁,且硬件平台众多,这就意味着抽象出中间层非常重要,能起到分离上位软件和下层硬件的作用:并且将硬件接口层封装成动态库进行共享,提高了资源的利用率,减少了空间的浪费。需要注意的是,更改后必须经过全面的白盒、黑盒测试以及多台区的挂网运行测试,验证其稳定性后才能上线。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭