1FL6044-2AF21-1LH1现货西门子代理

供应商
湖南西控自动化设备有限公司
认证
西门子
V90
电机
1FL6044-2AF21-1LH1
德国
20位多圈绝对值编码器不带键槽带抱闸
联系电话
17838383235
手机号
17838383235
经理
徐嘉泉
所在地
中国(湖南)自由贸易试验区长沙片区开元东路1306号开阳智能制造产业园(一期)4#栋301
更新时间
2024-05-17 08:00

详细介绍

1fl6044-2af21-1lh1现货西门子代理

1fl6044-2af21-1lh1现货西门子代理

1fl6044-2af21-1lh1现货西门子代理

【分享】触摸屏实现访问s7-1200优化db块数据




在西门子tia portal 架构下,系统倾向于符号访问,数据块和fb的属性则多了一个选项:优化的块访问。在建立数据块和fb时缺省选项是优化访问,从名称来看,或许可以带来更多的访问速度,并占用更小的系统资源。即为优化。



但这里的代价是,不再支持地址访问。原本每条数据,都有对应的数据地址偏移量。


 

触摸屏上面建立变量访问的时候,需要对应这个偏移量的值。

 

但现在,对优化的db块,以及优化了fb的背景数据块,则直接没有偏移量这一列了。



不知道是不是西门子故意设置的门槛。反正这么一来,所有的第三方的触摸屏都无法访问这些被优化的数据了。而西家自己的触摸屏和wincc,则没有这个问题。


那么这些第三方的触摸屏如何才能实现访问数据块数据呢?西家给出的方案其实很简单,勾选掉优化功能。即非优化即可。


这本来不是个问题,我原本也没意识到这里面有什么问题。


我在去年参加过一个会议,会间闲聊的时候,朋友跟我提起,他们的客户经常有抱怨把s7-1200的存储资源耗光的,而他发现这样的客户,无一例外,是因为使用了非西门子的触摸屏。


我随即意识到问题的严重性了。触摸屏要访问的数据,往往就是设备的重要参数, 这些参数原本是需要断电保持的。对于优化的数据块来说,哪一条数据需要断电保持,逐个勾选即可。而对于非优化的数据块,则不可以逐条选择,要选择断电保持,就必须整个db块都选中。而cpu的断电保持的数据容量是有限的。


所以,为了一两条需要断电保持的数据,而把整个数据块都设置为了断电保持,那系统资源必然是快速消耗殆尽了。称其为非优化果然不虚。


这里就形成了死循环,为了触摸屏要访问到数据,数据块必须非优化,而为了数据断电保持,相关数据必须能逐条勾选,所以必须优化的数据块才可以。除非你老老实实选择西门子的触摸屏。而往往,大家又抱怨西门子的触摸屏太贵。。。


我从去年用标准化模块化方式的编程,大量采用fb块来实现手动逻辑和自动逻辑,比起传统的编程方式来,耗费的db块要差出不止一个数量级来。如果被这个问题限制住,要么系统资源不够用,要么能做到的系统规模急剧减小。


前面做过的示范项目,没有触摸屏,用wincc是可以实现符号地址访问的。而将来的项目,就不可避免地要遇到非西门子的触摸屏了。但即便非西门子的触摸屏,其实也同样可以用标准化模块化编程方法实现。这个问题是必须要解决的。


让触摸屏直接读取优化块的数据,这是触摸屏厂家原本都不能做到的事,显然我们更不能了。所以能实现的方法,只有建立专用于触摸屏通讯的非优化的数据块,让触摸屏来访问。而原本控制逻辑的fb块的背景数据,仍然是优化的。


即,通过中间过渡数据块,间接实现对优化数据的访问。这是基本解决思路。


对于fb提供给hmi访问的数据来说,有两种,一种是运行值和状态数据(状态字),这些简单,只需要简单move到非优化的专用数据块中即可。而第二种,是hmi上面操作的给定值和操作指令(控制字),就比较麻烦了。


如果什么都不考虑,不做预留,当然可以直接从中间数据块把数据用move分发到各fb块的设定值的管脚。


但我们要增加hmi访问的接口,还要不能影响fb原本的接口功能,即原本wincc和西门子触摸屏的正常访问功能不能被影响。否则一旦要增加wincc上位机,或者西门子的触摸屏,原本的访问接口被占用了, 数据就写不进了。


方法是,建立一个专用的fb块,比如触摸屏是mcgs,fb块起名字为mcgs


接口:

这里定义了9套real数据的给定值,其中mcgsreal数据是被hmi访问的,plcreal则绑定到了fb中的给定值。

而其中一套的程序逻辑为:



即每一周期均存储数值的给定值,当hmi对mcgsreal进行了修改,则把修改后的值送到fb块给定值中。而如果hmi没有对数值进行修改,则随时把fb的当前值刷新过来并保存,保证了其它的接口(wincc)对数值的修改可以随时刷新不影响。

 

用1个fb可以实现了10个给定值的传送,这里只是简单重复了10次。 我想应该有办法用循环方式实现,但我自己不会。如果有人会,请留言告诉我。(肯定不能用数组,因为我需要在管脚上绑定各个数据,用了数组,就没办法了)

 

调用时这样:


因为fb110本身是非优化的,所以hmi可以直接通过数据块编号和偏移量访问到数据。

 

上面是对浮点数的给定值的传送管理。而对于设备启动的控制字则类似。但由于控制指令通常运行中被复位,所以正常时控制字都为0,所以比模拟量给定值还简单些,甚至不需要sav辅助变量。



西门子PLC代理,西门子变频器代理,西门子伺服电机代,西门子工控机代理,西门子触摸屏代理

展开全文

我们其他产品
我们的新闻
咨询 在线询价 拨打电话