西门子PLC项目开发流程
1、写在前面
就目前而言,在中国的工控市场上,西门子仍然占了很大的份额,因此对于上位机开发而言,经常会存在需要与西门子PLC进行通信的情况。然后对于西门子PLC来说,通信方式有很多,下面简单列举一下:
S7通信:PLC作为服务器,上位机作为客户端
开放式TCP通信:PLC作为服务器,上位机作为客户端
开放式TCP通信:PLC作为客户端,上位机作为服务器
ModbusTCP通信:PLC作为服务器,上位机作为客户端
ModbusTCP通信:PLC作为客户端,上位机作为服务器
ModbusRTU通信:PLC作为主站,上位机作为从站
ModbusRTU通信:PLC作为从站,上位机作为主站
Simatic Net OPCDA通信
Simatic Net OPCUA通信
KepServer OPCDA通信
KepServer OPCUA通信
由于篇幅有限,这次仅以西门子S7通信为例,说明下如何基于S7通信协议实现与西门子PLC之间的通信。
2、PLC软件安装及配置
目前西门子PLC主要使用的软件包括STEP 7-MicroWIN SMART、SIMATIC STEP7以及TIA Portal。TIA Portal已经完全兼容STEP 7,因此以后应该是STEP 7-MicroWIN SMART作为小型PLC的编程软件,TIA作为中大型PLC的编程软件,这里主要以博途为例进行说明。
软件安装完成后,PLC的配置也很简单,如果大家手头没有实际的PLC,也可以通过仿真的方式搭建PLC环境,具体可以参考文章:
dotNet工控上位机:基于PLCSIM Advanced搭建西门子S7通信仿真环境
无论使用何种方式,以下两个地方需要进行配置一下:
PLC配置一:需要将PLC的允许来自远程对象的PUT/GET通信访问勾选。
PLC配置二:对于DB块的访问,需要取消勾选优化访问。
3、通信平台测试
完成以上配置后,就可以通过自己开发的CMSPro通信测试平台软件进行测试,导航栏中选择西门子PLC,然后输入正确的IP地址,在CPU类型中选择自己的CPU类型:
通信测试平台
输入完成之后,点击建立连接,建立连接之后,日志栏会有连接成功提示。
在读写测试中,输入相应的变量地址及变量类型,即可实现相关变量的通信读写及测试。