S7-200PLC间的PPI通信

一. PPI通信协议是一种主从式的通信协议,上位机即PC机为主,PLC为从。通信开始由计算机发起,PLC予以响应。

1)、计算机按通信任务,用一定格式,向PLC发送通信命令。

2)、PLC收到命令后,进行命令校验,如无误,则向计算机发送数据E5H或F9H,作出初步应答。

3)、计算机收到初步应答后,再向PLC发送SD DA SA FCFCS ED确认命令。

二. PPI网络配置使用向导

1.进入配置向导,选择2项网络读写操作

2.选择PLC端口0,系统创建的可执行子程序名为NET_EXE

3.选择网络读,从远程读取2个字节,远程PLC地址为3,读取远程PLC软元件地址为VB0-VB1,存储到本地PLC地址为VB100-VB101

4.点击下一项操作,选择网络写,写的字节数为2,远程写入的PLC地址为3,从本地的VB0-VB1写入数据到远程的VB100-VB101

5.选择分配的存储区VB5-VB25

6.完成配置

三.主站程序PPI通信程序编写

四.从站程序编写

时间: 2024-08-04 21:59:28

S7-200PLC间的PPI通信的相关文章

实现不同vlan间的相互通信方法一:单臂路由

实现不同vlan间的相互通信方法一:单臂路由   一.试验目的:通过单臂路由实现VLAN间的通信 二.使用工具:GNS3模拟器,SecureCRT,其中PC1和PC2用Route模拟 三.实验拓扑: 四.具体步骤 1.设置PC1的IP:192.168.1.1 /24 网关:192.168.1.254 最后通过show ip inter brief进行验证 2.设置PC2的IP:192.168.2.1 /24 网关:192.168.2.254 最后通过show ip inter brief进行验证

iOS程序间使用scheme通信

在 iOS 里,由于沙盒机制,程序之间都是相互隔离,所以想要从一个程序跳转到另一个程序一般情况是做不到,幸好 iOS 程序可以很方便的注册自己的 URL Scheme,这样就可以通过打开特定 URL 的方式来传递参数给另外一个程序,并启动它. 1.首先在A程序中注册scheme, 注意结构体不要搞乱,我开始就是因为结构体顺序不对,导致一直跳转 不成功. 这样的话就设置成功了scheme了.接下来就是去B程序调用该程序了. 2.新建一个B程序,调用A 新建一个button,添加点击事件 当点击该按

ssh实现服务器间无密钥通信

通过ssh-keygent实现两台服务器间的无密钥通信: 两台服务器均为centos6.6系统: [[email protected] ~]# ssh-keygen -t rsa   #全部按enter键,不需要输入其它内容 Generating public/private rsa key pair. Enter file in which to save the key(/root/.ssh/id_rsa): Enter passphrase (empty for no passphrase

Linux间的进程通信;以及子进程的创建

1 "-----第六天-----------------------------------------------------------------------------" 2 3 1.版本控制:svn/git; 4 5 2.进程的概念: 6 1)程序和进程: 7 每个进程操作系统会为它分配 0-4G 的虚拟内存空间(32位操作系统): 其中0-3G为用户内存空间,进程可以对它进行读写操作: 3G - 4G 为系统内核空间,进程没有读写权限. 8 进程只能读写用户空间,没有权限读

PPAPI与Browser间使用AsyncIPC通信

采用AsyncIpc这个项目(https://github.com/hicdre/AsyncIpc),来完成PPAPI Plugin进程与Browser进程的通信. foruok原创,如需转载请关注foruok的微信订阅号"程序视界"联系foruok. AsyncIpc的IPC实现基于管道,是参考Chromium的IPC代码而来,适用于Windows.Chromium在Render和Browser进程间就使用类似的IPC机制,每一个Render都会与Browser建立一个双向的Chan

【转】在Java与C程序间进行socket通信的讨论

1. 背景 使用socket在Java程序与C程序间进行进程间通信.本文主要描述了在同C程序进行通信的Client端的Java实现功能. 1.1. 使用的语言 Client端:Java,JVM(JDK1.3) Server端:C,UNIX(Sun Solaris) 1.2. 讨论范围 数据发送:只涉及到Java中int整型系列的讨论,包括byte,short,int. 数据接受:涉及到byte,short,int,long,float,double,char. 1.3.Java与C的数据类型的比

在Prism 框架中,实现主程序与模块间 UI 的通信

背景: 在模块的UI中包含 TreeView 控件,在该树形控件的每一节点前面定义了一个复选框,如图 需求: 在两个不同的应用程序中使用该控件,而它在不同应用程序中的外观则并不一致,按照本例,即一个显示复选框,一个不显示. 问题: 解决该问题的一个难处在于,Prism框架本身的设计原则——此 View 会被添加到主程序的 Shell 的 Region 中,所以在主程序中不能直接来控制该 View 的属性及其逻辑. 思路: 利用 EventAggregator 使得主程序与模块间进行通信,从而间接

linux上 用户间发送消息 通信

联想:scp命令 1.使用write命令,向指定用户发送信息:           用户可以使用write命令给其他在线用户发送消息.格式: $ write zhangsan hello   world      //通信内容 按CTRL+D就将消息发送给zhangsan这个用户.          在Shell提示符号输入write,username指接受发送信息的用户名.如果一个用户多次登录到系统, tty参数指定要发送的终端.使用write发送信息的前提条件是该用户已经登录到系统. 可以使

【python】网络编程-SocketServer 实现客户端与服务器间非阻塞通信

利用SocketServer模块来实现网络客户端与服务器并发连接非阻塞通信.首先,先了解下SocketServer模块中可供使用的类:BaseServer:包含服务器的核心功能与混合(mix-in)类挂钩:这个类只用于派生,所以不会生成这个类的实例:可以考虑使用TCPServer和UDPServer.TCPServer/UDPServer:基本的网络同步TCP/UDP服务器.UnixStreamServer/ UnixDatagramServer:基本的基于文件同步TCP/UDP服务器.Fork