容感电气经销西门子plc,三菱plc,欧姆龙plc及组态软件等,专注工业过程控制系统.

工业自动化控制系统服务商

15年专注自动化plc控制系统生产定制

全国咨询热线

18629648142

联系我们
咨询热线
18629648142
全国售后热线:
18629648142
邮箱:498503931@qq.com
地址:陕西省西安市高新区科技二路西口与丈八北路交汇处龙城铭园二期

西门子plc嵌入式系统常用的技巧

作者:西门子plc 发布日期:2020-09-22 22:59:53 阅读:0 二维码分享

  虽然许多充满希望和梦想,但代码的高可靠性的嵌入式系统工程师是不是一次性的过程。当一个应用程序被认定为“成功”,他们往往感到放松,但仅仅是因为在受控条件下运行的软件,并不意味着它将运行明天或一年后。正常。从开发到实施和严格的检测系统良好的发展周期,有可用于开发高可靠嵌入式系统的许多技术。
 

    以下就是小编为大家介绍的7个技巧方法

  技巧1——用已知值填充ROM 软件进行开发工作人员管理往往是一个非常积极乐观主义的人,只要让学生他们的代码忠实地运行需要很长一段时间,就是通过这样。西门子plc控制器似乎已经很少跳出应用研究程序设计空间并在非预期的代码空间中执行它。但是,发生改变这种学习情况的可能性不小于缓冲区溢出或错误指针丢失引用。确实发生了!发生对于这种教学情况后系统的行为影响将是未定义的,因为我们默认情况下内存空间为0xFF,或者不能因为人们通常不写入内存区域,所以该值可能导致只有上帝知道。 但是,有相当全面的链接器或IDE技巧可用于帮助识别此类风险事件并从中得到恢复。要填充未使用的内存,可以有效使用存在许多国家不同的可能组合,但是中国如果要构建更可靠的系统,显而易见的选择是将ISR错误及时处理技术程序放在解决这些重要位置。如果这个系统之间出现安全问题能力并且处理器开始在程序空间环境之外执行代码,它会触发ISR并提供存储处理器,寄存器和系统结构状态的机会,然后再决定纠正操作。

  技巧2——检查CRC嵌入式工程师应用程序的最大好处之一是,我们的IDE和工具链可以自动生成应用程序或内存校验和(校验和),以验证基于此校验和的应用程序是否完整。 有趣的是,在许多情况下,校验和只在程序代码加载到设备时使用。 然而,如果将CRC或校验和保留在内存中,则验证应用程序在启动时(甚至对于长时间运行的系统)仍然是确保不发生事故的极好方法。 编程应用程序现在几乎不可能改变,但考虑到每年交付数十亿的西门子plc控制器和潜在的恶劣工作环境,应用程序崩溃的可能性不是零。

  技巧3——为了构建一个更可靠的系统,通过在启动时执行内存检查来确保您的硬件工作正常是很重要的。 毕竟,硬件会失灵。 幸运的是,软件从来不会失败,它只是执行代码来做它该做的事情,不管是对是错。 验证 ram 在启动时没有内部或外部问题是确保硬件按预期运行的好方法。 有许多不同的方法来执行 ram 检查,但通常的方法是写入一个已知的模式,在读回之前等待一小段时间。 结果应该是你写的东西。 事实上,在大多数情况下,内存检查已经通过,这正是我们想要的。 然而,有一个非常小的机会,检查不会通过,这提供了一个极好的机会,为系统指出一个硬件问题。

  技巧4--使用许多嵌入式开发堆栈监视器,堆似乎是一个非常神秘的力量。当奇怪的事情开始发生,工程师终于难倒,他们开始想,也许正在发生的事情在堆栈中。其结果是,调整大小和盲堆的位置,等等。但这种错误通常是无关的堆栈,但它怎么能这么肯定?毕竟,在恶劣的情况下,有多少工程师实际上是一个堆栈大小分析?当执行代码,应用程序,返回地址和存储在堆栈中的其他信息所需的变量将会继续。在堆栈这种机制导致生长在它的内存分配。然而,这种增长可能超过容量限制在编译时被确定,导致对堆中的相邻数据存储区域的损坏。 确保栈的正常运行的一种方法是代码的堆栈监控系统“健康”部分实现(有多少工程师呢?)。监视器堆以创建堆栈和“其他”的存储区,并填充已知的比特模式之间的缓冲区。然后,监视器将继续监控模式,如果有任何变化。如果此位模式被改变,这意味着堆栈增长太多,正要使系统进入地狱的黑暗!在这一点上,监视器可以记录事件,系统状态的发生,并为以后的任何其他有用的数据诊断问题。提供了堆叠显示器的西门子plc控制器系统最实时操作系统(RTOS)或在一个存储器保护单元(MPU)。可怕的是,这些功能默认关闭,或开发商往往故意关闭。在网络上快速搜索显示,许多人建议在实时操作系统堆栈关闭显示器以节省56个字节的闪存空间。等等,这是不值得的努力!

  技巧5 - 使用MPU 过去,很难在小型廉价的西门子plc控制器中找到存储器保护单元(MPU),但这已经开始发生变化,MPU现在可从高端到低端西门子plc控制器提供,这些MPU为嵌入式软件开发人员提供了大幅提高其固件稳健性的机会。 MPU已经逐渐耦合到操作系统以创建处理是独立的存储空间,或者任务可以执行其代码而不必担心被踩踏。如果发生某些事情,将取消不受控制的处理,并实施其他保护措施。请注意带有该组件的西门子plc控制器,如果有的话,请利用此功能。

  技巧6 - 建立一个强大的看门狗系统 当看门狗被启用时,您经常会发现看门狗实现*(这是一个好的开始),但它也可以通过周期性定时器来完成。看门狗被清除;启用计时器与程序中发生的任何事情完全隔离。使用看门狗的目的是帮助确保如果发生错误,看门狗将不会被清除,即当工作暂停时,系统将被强制执行硬件复位以进行恢复。即使系统出现故障,使用独立于系统活动的计时器也可以使监视程序保持清晰。 嵌入式开发人员需要仔细思考并设计应用程序任务如何集成到监视系统中。例如,有一种技术允许在特定时间段内运行的每个任务表明他们可以成功完成任务。在这种情况下,看门狗不会被清除并强制重置。 对于可靠的系统,构建强大的监视系统非常重要。由于技术太多,很难在这些段落中完全覆盖它们,但对于本主题,作者将在未来发表相关文章。

  技巧7 - 避免易失存储器分配 不习惯在资源受限环境中工作的工程师可能会尝试使用其编程语言的功能,这允许他们使用易失性内存分配,毕竟,这是一种常用于计算器系统的技术,只在必要时才分配内存。例如,在使用C开发时,工程师可能更喜欢使用malloc在堆上分配空间。有一个执行的操作,一旦完成,你可以使用free来返回分配的内存供堆使用。当它们发生时,如果应用程序要求空间但没有所请求的空间,会发生什么?使用易失性内存分配引起的问题非常复杂。妥善处理这些问题是一场噩梦!另一种方法是以静态方式直接简化存储器的分配。例如,不是简单地在程序中创建256字节长的缓冲区,而是通过malloc请求这个大小的内存缓冲区。可以在应用程序的整个生命周期内维护此分配的内存,而无需考虑堆或内存碎片问题。

  结论:这些只是开发人员可以开始构建更可靠的嵌入式系统的一些方法,所有这些技术都使设计人员能够开发出更可靠的嵌入式系统的秘密。


此文关键字: 嵌入式系统,西门子plc
声明:本文源自容感电气整合整理,如本站文章和转稿涉及版权等问题,请作者在及时联系本站,我们会尽快处理。
标题:西门子plc嵌入式系统常用的技巧 地址:http://www.ronggan.net/ask/3046.html

热门评论

来自【南宁】abb plc的客户反馈

很不错的网站建设公司,服务很到位,这里特别说下他们客服,网上要上线的时候发现我们域名之前忘记备案了,后面他们客服快速的帮忙处理好了,网站才可以按时上线,效率还是挺高的。

来自【珠海】西门子plc的客户反馈

很不错的网站建设公司,服务很到位,这里特别说下他们客服,网上要上线的时候发现我们域名之前忘记备案了,后面他们客服快速的帮忙处理好了,网站才可以按时上线,效率还是挺高的。

来自【成都】西门子plc控制器的客户反馈

很不错的网站建设公司,服务很到位,这里特别说下他们客服,网上要上线的时候发现我们域名之前忘记备案了,后面他们客服快速的帮忙处理好了,网站才可以按时上线,效率还是挺高的。

来自【大庆】西门子plc S7-200的客户反馈

我们的同行介绍说,我们还这个行业,本地区排名在第一页的网站80%以上都是搜呗做的,于是我们就让他们做了,果然排名上升很快,也很稳定!一年多了一直在首页!

来自【大连】触摸屏的客户反馈

我们的同行介绍说,我们还这个行业,本地区排名在第一页的网站80%以上都是搜呗做的,于是我们就让他们做了,果然排名上升很快,也很稳定!一年多了一直在首页!

地址:陕西省西安市高新区科技二路西口与丈八北路交汇处龙城铭园二期 手机:18629648201 邮箱:498503931@qq.com

我们经销西门子plc,三菱plc,欧姆龙plc组态软件等,聚焦plc控制系统,过程控制,工业控制15年!

【容感电气】 备案号:陕ICP备17021924号-1 网站地图 TXT 地图

合作伙伴:施耐德中国|西安交大|工业以太网|自动化控制