安防监控知识
电气知识|计算机控制系统软件可靠性技术
2017-01-23  浏览:66
安防之家讯:软件可靠性技术设计,主要有以下两个方面的内容。
⑴ 通过软件提高系统的可靠性
提高整个系统的可靠性,不仅要提高元器件质量、采用硬件可靠性技术,而且还应该采取软件可靠性措施。
① 系统应该有实时自诊断软件模块,以便在系统运行过程中及时检测可能发生的故障或错误,对能够自动处理的问题可以采取自动修复等措施予以处理,对无法自动处理的故障或错误则可以通过报警来通知人工检修,对极限情况采取报警的同时应关闭系统的输出。这种自诊断工作往往需要硬件予以支持,因此系统硬件设计阶段就应充分考虑这一内容。
② 对于系统输入通道的信号,采取重复读取的方式处理,必要时应进行滤波处理,以去除干扰的作用。
③ 为防止干扰使得系统输出通道的信号发生变化,即使控制运算所得的输出量的值没有变化,也应在每一工作循环都刷新控制输出,以防因干扰而改变。
④ 对于系统通讯通道,要在传输的数据上增加冗余的错误校验位或校验和等,以便接收端能够确认数据是否在传输过程中发生错误。对关键的数据,还应采取重复发送、互相应答等方式进行传送。
⑤ 硬件冗余技术、“看门狗”抗干扰技术等,往往也需要软件配合实现。这时,软件的任务是在发生故障时保护现场、切换故障装置、恢复现场、重入控制循环等。
(2) 提高软件自身的可靠性
在计算机控制系统中,软件的可靠性占有重要地位。提高软件自身的可靠性,应该从以下几个方面入手。
① 改进软件设计的管理工作
软件编制开发是一项复杂的脑力劳动,它有自己独有的特点,其管理的基本原则如下:
(a) 进行软件总体设计时,应对任务进行周密细致的调查研究,制定严格的计划。
(b) 对整个软件任务进行分析,将其分解成相对独立的若干功能模块,并明确每个模块的任务、功能及与其他模块的接口方式。
(c) 软件应该具有良好的可读性和可装配性,软件的设计说明、测试记录等资料必须完整保存,以便进一步改进、完善。
② 采取结构化的设计方法
不仅软件总体上采取模块化结构,每一功能模块也应采取自顶向下的结构化设计,使软件的逻辑清晰,以便于软件的扩充、修改、调试,并可以提高模块的通用性,减少重复工作。
③ 合理选择编程语言和工具
如果条件允许,在选择编程语言时,应优先考虑采用高级编程语言,这可以使得编程人员写出语义明确的语句代码。目前,随着软件技术的不断发展,已经出现了可以帮助、引导编程者开发应用软件的自动编程工具,如Visual C++和Visual Basic语言的开发工具等,使用这类工具既可以提高编程效率、又可以减少人为错误,如有可能应予采用。
④ 养成良好的编程习惯
在编制软件时,应该尽量少用或不用全程变量,避免一个模块有多个入口或出口。变量的命名也非常重要,应避免使用A、B、c这样语义含混的简单符号,而应使变量的名称与其功能乃至类型相对应,在这一点上,Windows系统采用的匈牙利命名方法是非常值得借鉴的。
⑤ 软件验证工具和技术的研究
一个高质量的软件在初步编制完毕后,还需要进行大量的工作来验证其正确性,这一工作的费用约占全部软件成本的1/2。传统的软件验证方法只是验证原设计的要求和所完成的功能,这并不能全面验证软件的可靠性,因此最近又提出了以软件结构为对象(而不是以功能为对象)的验证方法,其要点是:
(a) 要验证全部软件,在验证过程中应使用每个结构元素。
(b) 只要对软件作了修改,就必须重新测试软件中的每个结构元素。
(c) 完成结构验证后,对可能残留的错误,应针对错误的原因进行追溯和测试。
需要指出的是,任何软件都不可能一次就成功,而是通过测试-修改-再测试过程的反复进行,才逐步予以完善的。因此,软件测试应遵循先测试各子程序,再测试模块,最后进行整个软件系统联调的步骤进行,这样可以及早发现问题并修改,也可降低测试工作量和费用。安防之家专注于各种家居的安防,监控,防盗,安防监控,安防器材,安防设备的新闻资讯和O2O电商导购服务,敬请登陆安防之家:http://anfang.jc68.com/
更多»您可能感兴趣的文章:
更多»有关 监控 的产品:
  • 安防监控资讯
  • 发表评论 | 0评
  • 评论登陆
  • 移动社区 天花之家 木门之家 灯具之家 铁艺之家 幕墙之家 五金头条 楼梯头条 墙纸头条 壁纸头条 玻璃头条 老姚之家 灯饰之家 电气之家 全景头条 照明之家 防水之家 防盗之家 区快洞察 建材 枣庄建材 临沂建材 南昌建材 上饶建材 抚州建材 宜春建材 吉安建材 赣州建材 鹰潭建材 新余建材 九江建材 萍乡建材 景德镇陶瓷 石家庄建材 衡水建材 廊坊建材 沧州建材 承德建材 建材之家 企业之家 720全景
    (c)2015-2017 Bybc.cn SYSTEM All Rights Reserved