自动抄表系统中可靠性和纠错能力

最新更新时间:2012-03-06来源: 互联网关键字:自动  抄表系统  可靠性  纠错能力 手机看文章 扫描二维码
随时随地手机看文章
本文针对自动抄表系统结构,通过一系列方法来提高上位机软件的可靠性,从而协调和下位机(硬件)数据及命令的交互。上位机采用Visual Basic 6.0编程工具,采用MSComm控件实现与通讯控制器的通讯。

  1帧格式的设计

  要保证数据的正确性和可靠性,必须设计一种尽可能避免错误出现的帧格式,我们以01H作为帧起始码(SOH),以04H作为帧结束码(EOT)。在帧内的数据中也有可能出现01H和04H,必须加以替换以区别帧头和帧尾。文中以DLE+‘x’来代替SOH(01H),以DLE+‘y’来代替EOT(04H)。此时会出现一个问题,即如何区分数据区中的DLE与替换后出现的DL E;这就必须对数据DLE(10H)再进行替换,以DEL+‘z’来替换DLE,此时所有情况的替换结束。这既能很容易识别出一帧数据,又避免了因数据区中出现特殊字符而导致错误数据的出现,再结合奇偶校验,从而进一步保证了传输数据的可靠性。

  对上位机发送的数据,要先替换后校验;而对于下位机传上来的数据,要先校验再反替换,这是为了保证上位机和下位机在通讯线路中都不出现特殊字符SOH、EOT和DLE而设计的规定。反替换流程相当于替换流程的逆,在此就不再累述了。

  2串口问题

  因为本系统的上位机是通过RS232转RS485与下位机进行通讯的。所以,串口通讯的可靠性直接关系到整个系统的可靠性。而串口的使用借助于Visual Basic 6.0中的MSComm控件。MSComm控件是通过OnComm事件来触发的,触发的时机由CommEvent的属性Rthreshold决定。当设定Rthreshold=1时,即缓冲区每接受到1个字符就引发一次OnComm事件;当设定Rthreshold=10时,即缓冲区每接收到10个字符就引发一次OnComm事件。因考虑到前面的替换问题,每一帧的长度是无法预测的,但根据通讯规程可以知道最短帧的长度。我们采用最少数据长度(没有任何替换)作为Rthreshold的值。这虽然可以保证对上传数据的及时响应但无法保证获得一个完整的帧。当使用此语句读串口时若接收的数据没经过任何替换则可接收到完整一帧,否则数据帧不全。解决的方法是在读串口前加延时以保证读入数据完全,至于延时的处理不建议用循环语句来实现,这将增加调试的难度,最好的方法是调用API函数Sleep:

  Sleep()中时间以毫秒作为最小时间单位,a值的选取必须通过多次调试才能获得最佳效果。另外,为了防止MSComm控件串行通讯问题,在发送读串口命令时通过启用定时器处理程序来捕获串口通讯异常。这些方法可以最大程度的减少因通讯方面的问题而引发的错误。

  3整体抄表问题

  自动抄表系统的优点在于它既可以对单一用户又可以对所有用户的水、电、气三表进行读数而不需人工干预。单一抄表比较简单;但在整体抄表过程中会出现因连续、快速的读数导致硬件的采集速度与上位机的读数速度不匹配,或因串口事件处理函数未结束而又有事件触发,或线路干扰等一系列问题,这些因素都会影响到整体抄表的稳定性和正确率。由于整体读数的复杂性,仅通过增加错误处理程序往往无法达到预期效果。对于本系统,笔者通过不断实践发现,在整体读数程序中引入第二个延时和重复读数功能可以大大提高整体读数的正确率。

  在发出读数命令并正确读到数据后,必须进行短暂的延时,然后再读下一户,再延时,以此类推直到全部读完。当对一户读数出错时,要重复对其读数几次,若正确再读下一户,否则先调错误处理函数,再读下一户。注意:错误数据不能写入数据库,以防结算时产生问题。延时的引入尽管会对整体抄表的速度造成一定影响,但考虑到系统的整体性能,以损失一定速度来换取准确性这在绝大多数自动抄表系统中是可以接受的。在整体抄表过程中,“延时”具有关键的作用,它不但协调了软件和硬件之间的问题,也协调了软件自身的问题。

  通过上述方法,使得整个系统从细节到整体上都加强了抄表系统的可靠性和对 大多数错误情况的避免和处理,从而保证了自动抄表系统高性能和高可靠性的要求,这种方 法在实际应用中收到了良好的效果。

关键字:自动  抄表系统  可靠性  纠错能力 编辑:神话 引用地址:自动抄表系统中可靠性和纠错能力

上一篇:基于RF芯片nRF401的无线数传模块设计
下一篇:移动DRM技术在3G中的应用

推荐阅读最新更新时间:2023-10-12 20:36

核芯达—致力于自动驾驶中的电脑视觉技术
视觉是人类观察世界、认识世界的重要功能手段,人类从外界获得的信息约75%来自视觉系统,特别是驾驶员驾驶需要的信息90%来自视觉。在目前汽车辅助驾驶所采用的环境感知手段中,视觉传感器比超声、激光雷达等可获得更高、更精确、更丰富的道路结构环境信息。在自动驾驶领域,一个前提性的问题就是路况识别和车辆、障碍物的距离、速度检测,解决了这个问题才可能去控制汽车驾驶。 在第四届“芯动北京”中关村IC产业论坛上,北京核芯达科技有限公司CEO李慎威介绍了该公司的技术方向。核芯达由半导体产业资深老兵李慎威与北汽产投、Imagination、翠微股份联合发起。作为第一家由中国国有整车企业与国际芯片巨头合资成立的汽车芯片设计公司,核芯达将专注于
[汽车电子]
核芯达—致力于<font color='red'>自动</font>驾驶中的电脑视觉技术
石头扫地机器人T6采用了LDS激光导航算法可以实现高效的自动化清扫
在CNMO 2019年度评选中,石头扫地机器人T6凭借出色的产品力和良好的用户口碑,荣获“最佳扫地机器人”。石头扫地机器人T6的出现,让清扫成为一件简单的事情,也让扫地机器人学会依照房间划分进行清扫工作。 石头扫地机器人T6 “清扫变得如此轻松”是许多石头扫地机器人T6用户脑海中浮现的第一印象。其采用了全新升级的LDS导航算法,可迅速构建并记忆家居地图,让扫地机器人定位更精准。加入地图管理3.0 系统,以房间为单位智能分区,首次清扫完成后,准确记住家居地图。全新降噪设计,大电机,大扭力让大吸力有保障,同时零件间精妙的匹配结合纤巧的填充消音棉和降噪空气筛,将噪音降低了一倍。为了匹配更多家庭扫拖需求,新的水箱可调
[机器人]
基于单片机C8051F020的自动测控LED节能照明系统
在全球能源危机凸现的当今社会,LED照明以其绿色环保,高效节能的优势成为当前最具潜力的照明方式之一。LED号称“绿色照明的第四代光源”,目前已开始逐步应用于电信、交通、农业、医学、军事等领域。LED(Light-emitting Diode,发光二极管)是一种固态的半导体组件,能够把电能直接转化为光能。作为一种固体照明光源,LED具有长寿命、高光效、多光色等特性,可在安全低电压下工作,也可连续开关闪断,能实现0%~100%调光。 本文阐述一种基于单片机C8051F020自动测控LED节能照明系统的设计方案。该系统能够对LED灯的发光强度进行调控,当环境光强减弱时自动提高LED的发光强度,当环境光强变强时自动减弱LED灯的发光强
[单片机]
基于单片机C8051F020的<font color='red'>自动</font>测控LED节能照明<font color='red'>系统</font>
剑指谷歌 沃尔沃公布自动驾驶技术进展
    谷歌前不久公布了自动驾驶技术的最新进展,目前谷歌的自动驾驶车已经能够克服许多城市道路的障碍,甚至连骑车人要变道前的手势都能分辨出来。同时,奔驰、日产、沃尔沃等车企也在快马加鞭地测试各自的自动驾驶技术。沃尔沃近期在瑞典哥德堡进行一项名为“Drive Me”的自动驾驶项目,测试环境同样包含日常公路。     “目前,测试车已经能够实现 车辆跟随、自适应速度调节以及处理车道合并 等动作”,沃尔沃工程师Erik Coelingh表示:“这是达成Dirve Me项目最终目标的重要步骤。”     沃尔沃表示,自动驾驶技术以提升道路安全性为主要目的,但与此同时,整个交通流的效率得到提升,汽车排放将得以减少。
[汽车电子]
基于MATLAB和Simulink的工业自动化控制系统设计
在 MATLAB 和 Simulink 的帮助下,工程师能够应对现代生产设备不断增加的复杂度和更高的灵活性要求。 工业自动化和机械工程师使用 MATLAB 和 Simulink 中基于模型的设计: 设计并测试机器控制和调度逻辑 运行设备功能自动测试 为预测性维护和运营优化设计人工智能 (AI) 算法 为工业控制器和 PLC 生成实时代码(C/C++、IEC 61131-3) 楼宇智慧化,建筑自动化 “MATLAB 帮助我们加快了研发和部署,它有着稳健的数值算法、丰富的可视化和分析工具、可靠的优化例程,并支持面向对象编程,还能够配合我们的产品级 Java 应用程序在云端运行。” —— Borislav Savkovic,
[嵌入式]
基于MATLAB和Simulink的工业<font color='red'>自动</font>化控制<font color='red'>系统</font>设计
自动驾驶和激光雷达的专利数据分析
基于“无人车、无人驾驶、自动驾驶”关键词的专利检索结果,专利申请前 50 名企业中,国内只有百度(超过 2000 件)、华为(246 件)上榜,其他均为国外企业。 从激光雷达专利数量的机构排名(TOP28)来看,中国企业和大学的上榜数量较多,达 13 家。2020 年 10-11 月申请激光雷达专利的大部分为中国企业。博世在传感器、底盘、线控、感知、泊车等领域的专利数量遥遥领先。而华为在感知和决策方面实力不俗。令人惊讶的是,华为在底盘和线控领域的专利数量颇多,说明华为早已布局底盘和线控领域。 自动驾驶专利分析 在智慧芽专利库中检索自动驾驶相关关键词:即“无人车、无人驾驶、自动驾驶”的中文、英文、日文、德文、韩文等语言的对应关
[嵌入式]
<font color='red'>自动</font>驾驶和激光雷达的专利数据分析
揭密如何增加LED照明系统可靠性
  为打造兼具节能、高效的智慧照明系统,利用 MCU 与可调光 驱动 器进行环境感测、高效能调光已是现今 LED照明 系统盛行的设计趋势;除此之外, 光学 与散热的模拟亦是确保 LED 产品的可靠性和安全性不可或缺的开发环节。   电路设计与系统模拟是实现发光二极体(LED)智慧型照明系统的两大成败关键,其中在电路设计方面若加入微 控制器 (MCU),不仅可全天候监控LED装置并即时回报异常状况,还能对照明设备进行群组控制以调节能源,使照明系统更具智慧化;而为加强 LED光源 稳定度,将可调光驱动器导入电路设计中,则可解决光源闪烁的问题,并提升能源使用效率。   另一方面,透过光学与散热的模拟过程来验证产品可行性更是至关重
[电源管理]
Maxim 推出首款提供自动USB枚举功能的电池充电器
      Maxim推出线性电池充电器MAX8895,器件适用于符合USB电池充电规范(1.1版本)的Bluetooth®耳机和便携设备。MAX8895独特地集成了自动适配器检测功能,可分辨USB设备、USB充电器和专用充电器。器件还具有USB枚举功能,可自动与USB主机进行交互,无需处理器干预即可优化充电电流。该功能无需使用单独的微控制器和系统软件,因而可提供业内仅有的单机运行充电方案。       智能电源选择器(Smart Power Selector™)能够实现USB电源输入(VBUS)至电池和系统负载的电源无缝分配。该特性允许在为系统供电的同时对电池充电,也允许便携设备在电池电量耗尽或没有电池的情况下工作。当
[电源管理]
Maxim 推出首款提供<font color='red'>自动</font>USB枚举功能的电池充电器
小广播
最新模拟电子文章
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved