编程通过以太网实时读写S7-200 Smart PLC的寄存器的意思就是:通过程序在线实时监测控制S7-200 Smart PLC的状态。
简单的分析一下目前需要解决的问题:
- S7-200 Smart PLC有哪些寄存器,读写寄存器需要用到哪些指令
- 西门子是否提供有相应的网络通信协议允许PC端发送命令读写寄存器,如果有的话API(编程接口)是什么?如果没有,还有其他什么办法?
- 用编程语言如何实现的话,哪种语言既人性化,又比较简单
读写寄存器的操作应该是通过HMI运行的(我还不确定)
如果是这样的话,我们的程序要用到下面二者中的一个:
1、通过以太网连接,使用西门子S7协议让CPU与HMI之间通信
2、通过RS485端口连接,使用PPI协议让CPU与HMI之间通信
中文手册378页,第8.3节的小标题为——HMI与通信驱动程序
- COMFORT HMI
- SMART HMI
- BASIC HMI
- Micro HMI
- WinCC Flexible
上面的手册《S7-200 PC Access SMART》提到PC Access Smart包含VB.NET 2010的示例项目(示例项目好像不支持VB 6.0)。
我们的程序要通过网络读写寄存器,应该是使用带编程口的插头吧!
最佳答案:S7-200 SMART 的以太网通讯不是标准的 TCP协议(RFC 793),而是西门子的S7 协议在以太网上的应用。西门子的S7协议(以太网)是在 ISO ON TCP (RFC 1006 )的基础上在ISO 模型的第7层增加了 S7协议集。所有S7-200 SMART 不支持标准 TCP 通讯。S7-1200,S7-300 CPU 都支持 S7 通讯和 OPEN IE 通讯(包括标准 TCP ,UDP ,ISO ON TCP三个协议)
参考链接
- siemens网站关于S7 communications protocol的讨论
- 程序员S7协议