[西门子] 博途群讨论:关于IO映射方法,一位群友具有总结性的发言

[复制链接]
查看57402 | 回复0 | 2024-2-28 09:50:27 | 显示全部楼层 |阅读模式
"三阶段"优秀工程师之路

1、基础阶段:博途PLC的系统化与专项学习。

2、中级阶段:博途实例与C#基础学习视频,完成OT与IT融合化学习。

3、高级阶段:博途的标准化编程方法学习。

标准化方法之路!



一、一位群友提出问题:是否需要IO映射?

      经验丰富的师傅们可以给出一下建议,到底做IO映射有没有必要,如果要做那具体哪种编程方法既高效又方便后续优化和修改?



二、一位群友(徐文博)的发言,非常有研究

个人关于地址映射的看法:

1、西门子 200smart和TIA都是基于符号编程的,即可以认为在程序编译过程中,已经默认做了一个地址映射或是符号映射。如果是为了后续某个IO点故障后,方便更换到其它点,则做映射的意义不大;

2、如果HMI需要显示某个硬件的IO状态,而且HMI与触摸屏之间不是基于符号的通讯(使用绝对地址),此时为了维护方便,或是程序的标准化,HMI上需要显示的硬件IO部分,需要映射,HMI不是直接显示的IO,而是中间变量。

3、标准化工程,图纸上的IO对应的标识(比如完全是硬件布线时的位置代号,与功能无关)不是PLC工程师便于记忆的,为了PLC工程师编程方便,有必要为io起“别名”,但是PLC一般没有“别名”的机制(相当于linux系统中文件的硬链接,不是软的快捷方式),所以曲线救国的方式,做映射。

4、对于工艺对象或是udt\structure等,为了在程序中统一方便的传递多个参数,将IO对应到工艺对象或是UDT、structure等,也是一种映射。

5、为了报警处理的标准化或是sivarc的方便,需要IO与程序的解耦,也可以将这些认为是工艺对象,参照上一条。

6、其它需要映射的情况

7、无论何种需求而引入的映射,凡是映射过的IO,只可以在程序中出现一次,即映射时。

8、接下来才是映射的方法

个人拙见,抛砖引玉!

补一种需要映射的情况:

6.1做通用程序时,某些功能是按需激活的,某些项目上需要某些功能选项,即有对应的IO地址;某些项目上,不需要某些功能,没有对应原IO地址。在200smart下,模块的起始地址不能预留或设置,则引入映射,可以方便功能的按需开启,或是程序的维护;在tia下,模块的IO地址是可以预设的,而如果硬件的预算又比较宽松,每个选项功能可以对应一个独立的IO模块,也没有太大的映射必要,但如果几个独立可选的功能组件要“拼箱”使用IO模块,映射会比较方便一些。

三、芮庆忠的总结

      我比较喜欢IO映射,我是这样理解的:第一阶段,Eplan导出IO点表,SCL写映射程序;第二阶段:Excel表自动生成;第三个阶段:AI的应用。其他程序也类似,主要程序模型需要不断优化的。

       是否需要使用IO映射?因人而异,适合自己的技术是最好的。

      其实背后体现的是:结构化思维,如何把事物归类、找出共性,这是我做标准化最大的感受。

加入博途之友,与优秀工程师有约



芮老师的书籍(京东和当当可以购买)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则