故事作者:万泉河

最近创作

看看TA的故事

0317 【万泉河】从模拟量的量纲说起

已锁定

万泉河

  • 帖子

    10889
  • 精华

    132
  • 被关注

    900

论坛等级:至圣

注册时间:2003-06-06

钻石 钻石 如何晋级?

0317 【万泉河】从模拟量的量纲说起

1513

9

2023-03-17 11:08:29

0317 【万泉河】从模拟量的量纲说起。

 

有人会问量纲是啥,就是物理单位啦!单位只是通俗的说法,而且有歧义。 而物理和力学里面都称之为量纲的,既专业且没有歧义。

 

在英语里面这个单词叫做Unit。

 

问大家一个问题,控制系统中,通常采集上来大量的模拟量数据, 会显示在触摸屏或上位机上。 那么每一个信号的物理单位的量纲如何标注显示,如何实现呢?

 

有人会笑了。 这还不简单嘛,在触摸屏上每一个数据框后面添加一个静态文本,文本内容逐个修改为相对应的单位即可,与标注这个数据的标题描述方法一样。 程序修改完成,下载到触摸屏中,自然就实现了。

 

是的,这是每个初学者都会的做法。然而也是仅仅刚刚培训学校毕业,刚刚离开教室,屁股后面的大门都还没关严实的水平。

 

想一想你做的监控系统,模拟量数据的数量,不管是8个也好,80个,800个也好,这些数据肯定都不是一个规格,而是各种物理数据,温度,压力,流量,重量,体积,长度等等。那么每一个数据,你都需要左手翻着工艺清单,右手翻着触摸屏画面,挨个儿找过来,逐个对应,输入,修改,检查。 这工作量着实不少。

 

而如果水平高一点,实现了弹出式窗口的管理,不管是触摸屏还是WINCC,好像都有点麻烦了。窗口使用的同一个模板,同样的位置,量纲需要动态变换,所以还需要做些特殊处理。

 

然后就会质问了,除此之外难道还会有更好的方式?

 

当然有。方法便是在PLC编程中,在调用模拟量的FB块的过程中录入到其管脚上。 管脚数据除了物理通道地址,标定上下限值之外,再增加一个UNIT的字符类型的管脚即可。 程序块内部甚至都可以不需要再做任何逻辑,上位机变量直接链接到这个管脚,读取其内容,并动态显示即可。

 

而且这都不是我一个人发明的,我只是在推广一种常识方法。让我们来看一看PCS7是如何做到的。

 

 

即他的FB有个UNIT 的管脚,输入了量纲编码,最后在画面上实现了动态显示。

 

图片来自剑指工控发的网文,然而他们又备注了文章来自网络,原作者不详。剑控把抄袭的原作者的文章全都打上了他们自己的标志,然后到处分发,导致原作者的文章出处反而找不到了。

 

其实这里文章介绍的还是PCS7较新的版本,我原本可以找到自己的老版本的PCS7的虚拟机打开来截屏的,那时候的UNIT直接就是个字符串。

 

我拿PCS7来为自己背书,无非是说明,我所介绍的方法是业界的通行标准做法,并没有什么新奇之处。 我做的80模拟量的处理程序例程,我敢有底气称之为标准答案,只不过是我了解PCS7的这种做法。许多懂PCS7的朋友见到我给的例程也都觉得很自然,很正常,就是应该这个样子的。

 

而有一些同行,见到之后比较惊讶,只是因为你没见过PCS7而已。而有人倒过来嘲笑我罗列80行的做法很简单很幼稚。

 

嗯,没错,我们做程序的目的,就是要复杂问题尽量简单化,越简单越实用。而不是倒过来。

 

有人会抬杠说你们把这些非运算数据都放到PLC里面来,会增大和浪费CPU的系统资源。 你们那是PCS7,  S7-400,你们有钱无所谓,俺们穷,用的小PLC,这样做资源浪费。

 

嗯,这样的逻辑相当于你出门打个出租车,你副驾驶还是后排座全都不坐,你去站在车屁股后面推着跑,声称这样比较省油。

 

而出租车司机对这样的做法会感激你夸奖你吗?夸奖你花了同样的钱,但给他省了油吗?不会,他会骂你神经病,骂你耽误了时间,降低了效率。

 

其实实情是,现在的趋势是,都不仅仅是量纲这么3-4个字节的字符了,物理信号的位号,以及一大段的文字注释,都会放在PLC中实现录入,运行中HMI上面动态读取,节省大量的人工,提高效率。

 

这样的话,这些内容的录入是和数据信息是在同一个时刻实现的,不需要多次重复回来翻阅同一个工艺数据表格,提高效率同时还降低了出错的概率。 甚至,从表格到PLC程序,可以用软件工具实现自动转换,自动生成。 可以是EXCEL中处理,也可以用PYTHON等高级语言制作小工具完成。 使得自动化的完成自动化设计工作成为可能。

 

这是很多明眼人看到我给出的标准答案之后,一眼就看懂的原因。

 

让我们来看一下LBP中这部分是怎么实现的:

 

LBP的UNIT和COMMENT,并没有放到FB的管脚上在调用时录入,而是在其内部的变量中设置了相应的内容,呈现到触摸屏中。运行中从这个设定界面里人工输入,完成后运行界面中也都能正常显示正确的量纲Unit了。

 

即如果系统中有80个模拟量,就需要跳转80次页面,逐个人工输入。如果是由操作工来输入,他会骂死设计者。 如果设计者自己来输入, 那还不如在电脑中编程软件中输入效率高了。 而且这还没考虑到系统掉电或者程序重新下载的情形,极有可能,一不小心,就会要你多次录入, 给你好看。

 

所以,我现在倡导的学习和使用LBP, 并不是一味的照抄他,而是汲取其有营养的精华的部分,而对于不适用我们各自的行业应用习惯的部分,要在吸收的同时加以改进。

 

包括上面图中的MODE,代表了通道的电信号类型的选择,也令人不太理解为什么要做在触摸屏上,我们只能承认不理解,或许有其他的行业需要这样的功能。但我们可以根据我们自己行业的需求,修改到适应我们的模式。

 

针对近期对LBP 的模拟量块的改进,结合前面提出的80模拟量标准答案的问题,准备举办一次公开的研讨会。暂定了一个时间,然而具体时间还要等与会人员凑齐了之后再决定。 欢迎报名参加。

 

报名信息和会议内容说明,也会同时发在公众号的下一篇文章,以及朋友圈中。

 

 

0317 【万泉河】从模拟量的量纲说起.pdf

 


0317 【万泉河】从模拟量的量纲说起 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

网友专栏

共有3233条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。