0905 【万泉河】80模拟量例子程序升级版V2.0
写过一篇文章,《0628 【万泉河】优雅的PLC程序一定是用EXCEL写出来的》,其中演示了一个80模拟量处理的例子。
没有使用循环。
我关于PLC程序中的,除了必要的数学算法必须用循环之外, 在调用实例环节没必要使用循环的理念,以前的文章 《201907 【万泉河】PLC编程中的循环语法使用》就有阐述过。
然而太多人不相信, 反而宁愿质疑我不会循环语法。
而我让那些坚信循环大法好的循环派写一个完整的80模拟量例子程序出来的时候, 没有一个人愿意。 于是我自己模仿他们的思维,左右互搏,自己做了一套PK80模拟量例子程序。
见文章《0822 【万泉河】解读一个用循环法PK万泉河80模拟量例子的例子程序》
看来我模仿的还可以, 没有偏离他们的理念, 因为他们不再质疑我不会循环语法,而开始质疑我不会SMART 200的AI通道间接寻址,因为我的例子是用SMART 200做的。
这个PK例子幸好我只用SMART 200做, 而没有把所有品牌, 三菱, OMRON,AB, 倍福, 贝加莱,台达, 信捷,所有品牌都做一遍。
否则,还真被他们质疑准了。 除了西门子之外的大部分品牌,我对间接寻址,变址变量这些确实知之甚少。 也不打算去挨个学会了以当做基本功。 因为烟台方法架构中不需要掌握这些知识就可以做事。 除非将来遇到特殊功能而被迫学习了解之外, 对于通用功能, 着实是没有必要。
为了向他们证明为什么明明会用间接寻址,也没有使用循环法来做,我又写了文章《0825 【万泉河】设计工作中服务与被服务》,解释了工程项目中的分工原则,正常情况,IO点表并不是规律整齐的,反而不整齐不规则才是常态。 不可以要求设计工程师在分配点表时就过度分心去为后面的编程方便而做额外工作。
然而, 对死心塌地的循环派来说,没用。他们又开始质疑我不会做设计,没见过工程项目。 于是,我让他们把自己做过的,以及见过的项目的点表数据亮出来, 修一下, 让所有人看看,这个行业从啥时候开始,IO点表整齐规律了?
当然, 我指的点表可不仅仅是模拟量,而是所有点表, 包括电机设备, 阀门等等所有类型的点表,都应该是有规律的,都要能实现循环快捷调用的。 否则如果仅仅基本模拟量做了循环, 其他设备类型还是照样乱做一团, 程序中只有模拟量做了循环, 那实在看不到快捷程度提高了多少。
而即便模拟量, 真正的工程项目中也未必能做到整齐有规律。我做的例子中, 前面部分的模拟量来自AIW, 后面部分来自VW, 讲过了来自通讯等特殊通道,然而反而被指责为我做例子随性, 不讲规矩。
其实是我不讲规矩导致他们的循环理想实现不了了。
我就把这个例子再次完善一下,模拟量的数量仍然是80个, 而数据类型有4-20mA电流信号,也有RTD温度信号,即使用了专用温度模块。
温度模块的特点是,不再通过上下限线性变换,而是整数值中直接带有1-2位小数,倒暂时不分别,都认为带1位小数好了。
而对SMART来说,AIW数据区范围是带不了80个模拟量的,所以用了一部分第三方的远程IO卡件, 以通讯方式读来数据。 比如零点自动化的AI卡件,以MODBUS TCP协议通讯得到。
每个公司的卡件,模数转换时,上下限定义各不相同。比如SMART 200 20MA对应的上限值为32000, 而零点为27468,这一点倒和S7-1200/1500和S7-300相同了。
所以, 这次升级版的例子,模拟量处理的模块增加了2个, 分别是温度模块,用于本地的SMART200 RTD卡件和远程的零点的3通道RTD卡件,而零点专用块,处理零点的4-20mA模拟量信号,上限由32000改为27648。
然后在前面版本的程序基础上稍作修改之后, 程序调用过程为:
注意,由于其中对温度信号使用了专用RTD模块, 所以对IO表顺序做了调整。卡件使用的顺序为普通模拟量模块和RTD模块交替使用,便于与工艺现场对接。
肯定有聪明人对我这样不厌其烦地做低智商的劳动不以为然。 其实这里的坑只有自己亲自做了,才能遇到。
比如,我这次修改了变量表之后,生成的数据为:
生成的程序到了PLC中是有语法错误的。 这个错误我遇到多次,每次处理起来都比较麻烦。这回则没有去解决, 只是用聪明人的笨办法将就实现了。
有真心学习者,可以去了解, 并自己找到好的处理方法。
当然, 这里主要是EXCEL的数据处理。
而这一版例子程序的更多的技术含量其实是在EXCEL文件里。 上一波因为用不到我特意删掉了, 这一回又重新祭出来了。
所以,读者们可以看到,当程序结构变复杂了之后, 程序仍然可以用EXCEL优雅地生成。
而有人如果还妄图用循环法实现,估计是要晕掉了。 不服的可以试试。但不需要来跟我抬杠了, 我又无所谓,每个人用什么方法做程序是自己的权利,我无权干涉。
但最近, 又冒出来越来越多的质疑者和反对者,口口声声我要骗他们来买我的培训,而我对他们的学习能力和水平是深度怀疑的。所以即将会制定一个考核标准,所有烟台方法的准学员, 需要先来学习了解80系列例程,只有那些认为自己可以从80例程中学习到技能和经验的,才获取资格购买培训。
而技能太低,学不懂80例程,以及技能太高, 已经远超过80例程所包含的技能的,则不在可获准之列。
这样,大概可以免除一大批同行的焦虑了。
本文,及本文提及的例程,会同样放到80工位双联开关QQ群中,
一群:238744520
二群:870566908
欢迎对烟台方法认同者及反对者都可以来下载和参与讨论。 同系列的其它例程也同样可以下载到。