干货秘籍 有一说一,今天我又来了
这肺炎防疫战打的年前的项目都黄掉了,谁能体会这撕心得苦,蓝瘦香菇T_T
没有项目的时间里才想起项目忙的时候有多幸福,还是香菇
今天拿一个5年前的案例来涮涮,开不开心,兴不兴奋(信你个鬼,糟老头子,那么老的案例好意思说)
好了气氛酝酿够了,开始进入正题:
(一)、 案例介绍
本次项目采用昆仑通态MCGS6.2开发版和SIEMENS S7200 PLC进行以太网通讯,涉及硬件有:s7200 PLC 224CN,扩展I/O块EM223,模拟量输入EM231,EM235,以太网模块CP243-1,PC,仪表部分涉及DO,PH,NH3_N2,液位、浊度,数据采集仪等。
(二)、软件部分
软件:v4.0step7 microwin sp9 、 MCGS6.2开发版
上位机采用一台式机,通过编程和画面组态实现污水处理工艺控制和在线报表生成记录打印等功能。
(三)、关于项目中应当注意的事项
关于模拟量数据采集信号干扰问题
本项目中涉及到多个模拟量采集,因项目所在地江西宜春某些地带,属于雷电多发地带,工矿环境比较恶劣,现场出现最多的问题是信号干扰和雷电
那么如何解决这些干扰呢?
常规状态下我们是采用下图这种接线方式
为了解决干扰问题,我们务必要先对模拟量前端采集信号进行隔离,通常采用模拟量隔离模块,模拟量电缆采用双绞屏蔽电缆,屏蔽电缆的屏蔽层单端接地,不要两端都接地,会存在耦合干扰,最关键的是要将进EM231的模拟信号负端与DC24V电源的M端连接,行成参考零电位,再进行良好接地,如下图:
2.关于模拟量采集后的单位转换问题在此做详细介绍
模拟量输入/输出转换需要用到一个通用比例转换公式
OV=[ ( Osh-Osl ) * ( lv-lsl ) / ( lsh-lsl ) ] + Osl
这个公式很重要
其中:
OV:换算结果
lv:换算对象
Osh:换算结果的高限
Osl:换算结果的低限
lsh:换算对象的高限
lsl:换算对象的低限
我这里的Input表示换算对象,Output表示换算结果。
值得注意的是我们这里的LW、LD是临时变量,它是用来建立接口用的,之所以用临时变量是因为每次调 用这个接口程序后都要释放这些变量里的内容,否侧就不能多个模拟量转换就不能共用一个接口了。
编写完这段程序后我们就可以在子程序中调用这个接口程序对模拟量采集到的数据进行赋值了
如下段程序:AIW0就是我们硬件第一个模拟量点AI0的数据
对其数据进行赋值,填写对应的工程转换单位,输出结果就是我们需要转换后的工程量
3.关于PLC以太网通讯
s7200的以太网通讯可以直接用工具中的向导进行配置
这里我们需要注意的问题就是CP243_1的槽号的实际位置,实际槽位置不对应会导致通讯不上。
其他工艺控制上的程序不做累述,感兴趣的同仁可以下载附件了解
4.关于MCGS开发版与s7200的通讯
打开项目进入导航界面找到设备窗口进入
我们看到是空的,里面没有任何通讯接口
右键调出设备工具箱
进入设备管理
进入PLC设备找到S7CP243_1TCP→增加→确认
设备工具箱多了一个通讯接口,将接口拖拽到设备组态窗口中
双击进入接口属性设置,对其参数进行相关设置,主要是基本属性的本地、远程IP地址要在同一网段,便 可与PLC进行通讯了
在用户窗口中创建自己需要的画面
在实时数据库里建立你需要与PLC通讯的数据点位的相关类型
在通道连接中添加你需要关联的实时数据点位与PLC对应的数据点,如I、Q、M 、V区等数据
当然你也可以在数据处理中做一些工作,这样PLC编程就相对简单一些
关联号数据后就可以在画面中关联相应的按钮,数据等
关联完所有的数据保存好就可以进入运行环境了
完整版的MCGS与PLC通讯我附在附件,仅供大家学习参考讨论!篇幅有限,关于组态画面中的其他内容在此不做介绍,感兴趣的同仁可以线下加我Q或微信讨论,需要讨论、指点、学习的私信我
请勿转载!!!!!!!!!!!!!!!!!!
江西耐美科技 出品