随笔分类 - 西门子工业自动化
摘要:在12001500PLC的CPU有时钟存储器可以产生各种频率的脉冲,但需要手动勾选,如果PLC已经在现场投用,去勾选这个,下载时CPU会停机。这种情况下可以自己做脉冲,我以1Hz脉冲为例子做了一个练习,把它记录在下面。 新建一个TIA项目,选择一个1500CPU,新建一个FB,内部变量如下: 程序逻
阅读全文
摘要:首先从西门子官网下载LGF,地址为SIMATIC S7-1200/S7-1500 的通用功能库 (LGF) - ID: 109479728 - Industry Support Siemens 根据TIA版本下载相应的LGF,然后在项目的库中打开这个LGF,可以看到有很多分类 随机数函数在04 ma
阅读全文
摘要:前面写过一个点击数字弹出趋势弹窗的练习,今天更进一步,弹窗的ruler控件上显示出数据的单位。 在前面练习项目程序的内部变量新建一个8位文本型变量Danwei,弹窗画面的ruler控件块选项卡标签改成单位 主画面输入输出域1鼠标点击事件增加赋值单位脚本,完整如下(加粗部分为新增内容): Sub On
阅读全文
摘要:前面几天测试过施耐德citect软件的过程分析器控件,在不同时间跨度同意时刻数值不尽相同。今天测试了一下WINCC在线趋势控件在不同时间跨度下,同一时刻数值是相同的 10分钟时间跨度 30分钟跨度 1小时跨度 目前没有测试其他时间跨度,我觉得WINCC应该没有那个问题。
阅读全文
摘要:今天晚上学习一会,使用calculate功能块,做线性同余算法产生随机数。新建一个项目,选择一款CPU,建立一个以太网连接。新建一个FC,建立下面的内部变量: 插入calculat功能块,点击左侧输入的黄色菊花,增加输入点到4个,点击功能块上计算器图标输入公式: FC的程序如下 在OB1调用这个FC
阅读全文
摘要:现场计算机运行WINCC项目程序,生产希望在工艺画面上点击实时数据弹出趋势窗口,显示当前数据的趋势。我在家里测试了一下,还是容易实现的。 在WINCC7.5SP2新建一个项目程序,新建内部变量Rand1和Rand2,都是32位无符号数,内部变量TrendName是文本变量8位字符集,用于存储当前变量
阅读全文
摘要:现场一套除尘设备停机检修,理论上电流应该为0,但后台是不是会有0.02左右小电流显示出来,生产车间总觉得不行。我去做了PLC程序修改,添加风机不运行,那么电流为0.0A得程序段。但后台还是有小电流显示出来,后来把原有的模拟量转实际工程量纲得程序前面加上风机运行才转换得条件,后台就不再有小信号显示出来
阅读全文
摘要:现场有一套CEMS,数采仪使用的是北京万维盈创产品,需要和中控室西门子S7 1200PLC通讯,考虑到通讯协议兼容性,使用modbusTCP协议。数采仪IP地址设置成192.168.0.130,这是网络中没有其他设备使用的IP地址,万维盈创数采仪通讯协议和IP地址设置方法参考下面的链接,其他厂家数采
阅读全文
摘要:今天做一个小的练习,这是2025年第一个记录的学习笔记。 在IA新建一个FC,名字叫做TrimSpace,建立以下内部变量: 写一段SCL代码: #len := LEN(#str_in);#str_trim_out := '';FOR #i := 1 TO #len DO IF MID(IN :=
阅读全文
摘要:今天做一个小的练习,在TIA环境下生成6位随机临时验证码。整体思路还是读取CPU系统时钟的纳秒数值,转换成字符串 新建TIA项目,选择1500CPU. 新建DB1全局数据块,建立下面的变量,属性中取消优化的数据块。 在OB1里面写下面的程序 新建WINCC项目程序,建立到1500模拟器的连接,连接下
阅读全文
摘要:周末做了一个小的练习,读取WINCC预先定义的用户,把名字填写在组合框里面。 假设组合框名字叫做Userlist,在画面打开事件写下面的vbs脚本 Sub OnOpen() Dim fullusername,databasename,sqlconnstr,conn,sqlstr,objrs,user
阅读全文
摘要:假设需要读取100个随机数,存入有100个成员的数组。做这个练习是为了学习一下SCL编程。随机数使用系统时钟纳秒数来线性转换。 新建项目,选用1500PLC(6ES7 513-1AL02-0AB0,当然可以选用其它型号),设定本地时区,建立网络。 新建DB,建立变量,取消优化块的访问。 新建FC,先
阅读全文
摘要:最近现场需要做WINCC画面上报警闪烁功能,以前也做过,只是很久没弄了,做个练习记录一下。 假设高限报警时,IO域背景闪烁黄色,高高限报警时,IO域背景闪烁红色。 在wincc新建一个项目,内部变量新建一个32位浮点数Value,两个二进制变量H和HH。新建一个画面,放置IO域,关联Value变量。
阅读全文
摘要:今天使用笔记本电脑中虚拟机连接实际PLC,参考了一下网络上的教程,步骤如下: 打开虚拟机,点击菜单虚拟机-设置,在对话框选择网络适配器,网络连接选择桥接模式。 点击菜单编辑-虚拟网络编辑器,弹出对话框 点击右下方更改设置按钮,选择桥接模式,在桥接至下拉菜单选择正确的网卡 主机的网卡地址可以设置成自动
阅读全文
摘要:今天使用TIA V16做了一个CPU 1214C AC/DC/Rly的程序,编译的时候报错如下: 双击错误之处也没跳转到出错位置。刚开始以为是不是路径有中文,项目名有中文,后来一想都16版本了,不至于吧? 电脑里面另一个虚拟机里有TIA V17,把项目程序拷贝到那边,打开编译通过了。我估计是固件版本
阅读全文
摘要:现场除尘设备配置了CEMS,通过北京万维盈创的数采仪使用modbusTCP和中控室1500PLC通讯,岗位人员反映中控计算机上数据异常,表现为数据不变化,有时候跳变到无穷大。经过几天排查处理,基本上解决了,把出现问题的地方列举一下: 1. 数采仪的IP地址和其中一台工控机的IP地址一致,通过修改工控
阅读全文
摘要:今天在现场有同事问我如何在TIA做这个功能,当时忙,粗略想了一下。晚上回到家实际做了一个小的练习,还是很好实现的。这是我自己做的一个练习,应该会有更好的,更简洁的实现办法。 在TIA上新建一个FB,建立下面的变量: 写下面的程序 在OB1调用这个FB
阅读全文
摘要:假设有这样一个应用需求,一个会仓,上面有10个脉冲阀,按照顺序进行喷吹,每个阀喷吹后,间隔一定时间下一个阀喷吹,可以设置总的喷吹次数,达到次数后停止喷吹,如果总喷吹次数设置为0,那么就一直喷吹下去。如果点击了开始按钮开始喷吹动作,再次点击开始按钮,不会重新开始。点击了停止按钮,全部停止,再次点击开始
阅读全文
摘要:和前一篇一样,我希望在没有点击停止按钮时,多次点击开始按钮不要中断当前流程。 在FB程序变量的static组添加BOOL类型running变量。 修改SCL程序如下 IF #stopbtn=1 THEN #CurrentState := 4; #Running := 0;END_IF; IF (#R
阅读全文

浙公网安备 33010602011771号