签到有奖
消息提醒
运维工程师专区
官方商城
点击复制链接
关注该帖后,有多人参加探讨会对您通知与提示!
帖子
精华
被关注
论坛等级:至圣
注册时间:2012-12-11
黄金 如何晋级?
18689
39
2018-11-24 20:54:25
我记得我在做了几年的工控后,我一直有一件想要做的事,那就是:
要开发一套属于自己的库程序!
原因嘛:
1--西门子提供的功能块一直只有FB或者FC却没有可视化的图标和面板,而且也不是开源。
2--WinCC按PowerTag收费,也就是按变量数来收费的,现在项目成本就是竞争力,节省成本能帮助提高中标的可能性。比如我一直会使用BOOL类型的变量上传到WinCC来操作和控制,电机启停和手自动切换等等都可以打包成一个控制双字,仅仅需要上传一个双字变量。
3--公司内程序一直没有一个标准,工程师的个人能力良莠不齐,写的程序可用性可靠性不可控制,项目完成质量很多时候是工程师个人能力决定的,拼音编程,汉字编程,上传各种数据区变量以及大量无用程序导致系统及其臃肿。
4--工程师战友离开,接手的工程师需要花大量的时间去熟悉项目程序当项目需要改造或者售后时
5--想要有自己特色的功能块,提升公司在业主那里技术实力形象,功能块针对项目针对行业开发,尤其显得公司在该行业是有沉淀的,让业主信服。
6--新工程师老是问我一样的问题,作为老工程师有带他们的义务,我要解放自己,要做一套完整的东西让他们统一学习使用。
等等其它的不说了,
先替西门子打个广告!现在就有一个这样免费的库,SCL开发,包含22个功能块,都开源!!而且使用SiVArc开发
https://support.industry.siemens.com/cs/document/109749508/basic-process-library-for-tia-portal-(s7-1200-s7-1500-runtime-professional)-and-basic-process-library-for-wincc-v7-with-example-projects-and-faceplate-s7-block-libraries?dti=0&lc=en-CN
为了不跑题,回来说我使用的TIA功能块,下面的帖子我会讲到我使用的功能块。我相信一个帖子的简单展示并不能就让观帖者明白怎么如何去开发一个功能块,复制粘贴一段代码并不能有效提升工程师的能力,授之以鱼不如授之以渔。
下面讲讲我是怎么样去开发功能块的途径:
1 --找西门子项目实例,开源的代码。比如西门子BST实例,它提供了开源SCL的FB以及可视化的一套解决方案,包括我后来自己的库开发都借鉴了BST example
西门子BST
https://support.industry.siemens.com/cs/document/31624179/example-blocks-for-wincc-v7-and-step-7-v13-(tia-portal)-for-s7-1200-and-s7-1500-in-scl?dti=0&dl=en&lc=zh-CN
通过熟读BST一句一句的代码分析,我获得了很多的技巧和方法,也开阔了我的视野,利用BST模板我至少开发了约十几个类似具有可视化的功能块。
2-- 网上开源SCL代码,比如很多人都知道FB41该连续PID控制已经在网上有反编译的SCL代码,而且带中文注释,这很容易变成自己的代码,而且稍加改造就能优化出更丰富功能的FB,比如给SP设定值增加设定值斜坡上升下降,给增加输出值的追踪功能,而且FB41的代码一分解就可以得到
P比例
I积分
D微分
三个功能块,比如积分功能块就是对误差进行累加,我们把误差改成对过程值进行累加就可以用于流量累计。而且FB41有浮点数误差处理,使用的也是梯形积分方式,更准。针对PID我又找到了针对SP值的斜坡功能Ramp,Rate,针对PV值的一阶滤波,二阶滤波,针对MV的分程控制等。
分程控制
http://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1433533&b_id=66&s_id=84&num=12#anch
斜坡功能
http://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1433529&b_id=66&s_id=84&num=28#anch
3-- 开源的C代码等高级语言代码很多很多,这些代码用SCL解释一下就变成了可以在PLC中执行的指令,比如我就找了一段代码来做拟合分散的点得出最优的曲线,最小二乘法拟合曲线。比如需要工艺人员设置一些离散的点来描述工艺中两个过程量的关系,工艺人员只能设置一个大概的趋势,绘出后可能就是图中的蓝色点,拟合一下就能更平滑也能干掉一些明显不符合要求的点。
这些功能块,都伴随我从S7走到TIA。这就回到了题目。
文章与别人不同,我没提到一个我用的具体功能块。
剩余80%未阅读, 请登录阅读
请填写推广理由:
【春日季 · 黄金3月】拓展你的工控“技能库”,喜提春日宝箱!
助你技有所长,论有所获
首次发帖探讨工控技术话题 立获新人礼包,100中奖哦! (包含周边、书籍、兑奖西币)
共有8577条技术帖
恭喜,你发布的帖子
快扫描右侧二维码晒一晒吧!
再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!
分享
只看 楼主
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!
密码至少8位,包含大、小写字母,数字和符号至少三种。
允许邮箱和手机接收来自支持中心网站的信息
我已同意《支持中心网站注册协议和隐私政策》
微信登录扫码一键登录
验证码登录
密码登录
二维码失效点击重试
打开微信扫一扫,快速登录/注册
未注册手机验证后自动登录,注册即代表同意《支持中心网站注册协议和隐私政策》
三日内免验证登录
短信登录
登录