西门子PLC与人机界面通讯

西门子PLC与人机界面通讯
西门子PLC与人机界面通讯

S7-200通信最经济的方式就是采用PPI协议和自由口通信协议。对于S7-200之间进行通信,PPI协议又更适合——它比自由口通信的编程更简单!下面就对这个PPI通信进行说明——以2台S7-200通信为例,做一个实例。

设备配置:1台S7-200 CPU 226CN的PLC、1台S7-200 CPU 224XP 的PLC

硬件连接:原则上需要配备1条紫色的Profibus电缆、2个黑色的Profibus-DP接头。如果需要在PLC通信时对所有在线的PLC进行监控/编程操作而不占用另外的通信口(也就是说,假如所有PLC用端口PROT1进行PPI 通信,而现在要对所有PLC依次编程/监控,但又不想占用这些PLC的端口PROT0——端口PROT0可能已作它用),那么必须在其中1台PLC采用带编程口的Profibus-DP接头。所以说,带编程口的Profibus-DP接头在整个网络中只需要一个就可以了。这样,也就可以在某一台PLC处对在网的其它PLC进行编程/监控。

引脚分配:

........S7--200 CPU上的通讯端口是符合欧洲标准EN 50170中PROFIBUS标准的RS--485兼容9针D型连接器。下表列出了为通讯端口提供物理连接的连接器,并描述了通讯端口的针脚分配。下面是S7-200的通信接口——D型9孔母头的引脚定义。

网络电缆的偏压电阻和终端电阻

为了能够把多个设备很容易地连接到网络中,西门子公司提供两种网络连接器:一种标准网络连接器(引脚分配如表7-7所示)和一种带编程接口的连接器,后者允许您在不影响现有网络连接的情况下,再连接一个编程站或者一个HMI 设备到网络中。带编程接口的连接器将S7--200的所有信号(包括电源引脚)传到编程接口。这种连接器对于那些从S7--200取电源的设备(例如TD200)尤为有用。两种连接器都有两组螺钉连接端子,可以用来连接输入连接电缆和输出连接电缆。两种连接器也都有网络偏置和终端匹配的选择开关。典型的网络连接器偏置和终端如图所示:

........处于中间节点的从站在不工作时可以断电。

PROFIBUS电缆的接法

........PROFIBUS电缆,紫色,只有两根线在里面,一根红的一根绿的,然后外面有屏蔽层,接线的时候,要把屏蔽层接好,不能和里面的电线接触到,要分清楚进去的和出去的线分别是哪个,假如是一串的,就是一根总线下去,中间

不断地接入分站,这个是很常用的方法,在总线的两头的两个接头,线都要接在进去的那个孔里,不能是出的那个孔,然后这两个两头的接头,要把它们的开关置为ON状态,这时候就只有进去的那个接线是通的,而出去的那个接线是断的,其余中间的接头,都置为OFF,它们的进出两个接线都是通的(我觉得德国人真的是和我们的思维不同,我觉得应该是OFF表示关闭吧,他偏设置ON为关闭,搞不懂)。这就是线的接法,接好了线以后呢,还要用万用表量一量,看这个线是不是通的。假如你这根线上只有一个接头,你量它的收发两个针上面的电阻值,假如是220欧姆,那么就是对的,假如你这根线已经做好了,连了一串的接口,你就要从一端开始逐个检查了。第一个单独接线的接口,是ON状态,然后你把邻近的第一个接口的开关也置为ON,那么这个接口以后的部分就断了(出口的线已经被关掉了啊~)现在测最边上,就是单线接的那个接口,之后的东西一直都是测这个接口,测它的收发两个针,和刚才一样,假如电阻是110

欧姆(被并联了),那么这段线路就是通的,然后把中间刚才那个改动为ON的接口改回到OFF,然后是下一个接口改为ON,。。。。。。就这么测下去,哪个的电阻不是110欧姆了,就是那一段的线路出问题了。

........PROFIBUS网络电缆(西门子产品号:6XV1 830-0EH10),波特率为100Kbps以下时也可使用普通双绞线(截面积不小0.22平方毫米)。原则上绿色接RS485信号负(对应Profibus接头的A1)、红色接RS485信号正(对应Profibus接头的B1)。当然,统一反着接也可以——绿色接RS485信号正(对应Profibus接头的B1)、红色接RS485信号负(对应Profibus接头的A1)。不要交叉就行。

Profibus-DP现场总线电缆电缆:用于Siemens公司支持的Profibus-DP总线系统。

●能够对应12Mbps的高速传送,充分发挥PROFIBUS-DP的功能。

●铝箔PET带和高密度编织的双层屏蔽使抗干扰性能出色,通信的传送质量稳定。

●护套使用了柔软性和耐油、耐热性能良好的无铅聚氯乙烯混合物。

●护套的颜色以紫色(RAL001)为标准色。

........德国LAPP UNITRONICO BUS L2/FIP:实心裸铜丝导体,2芯绞合成对,芯线颜色为红+绿。铝箔屏蔽后加裸铜丝编织,PVC外护套,阻燃,符合VDE 0472第804部份,B类试验(IEC 332.1),紫色(RAL4001)。

........传输速率决定允许的总线电缆最大长度如下:

PROFIBUS-DP 1.5MBit/s=最长200m

(SIMATIC网) 12.0MBit/s=最长100m

工厂通讯处理层1.0MBit/s=最长200m

2.5MBit/s=最长200m

........上述参数适用于PROFIBUS-DP及PROFIBUS—FMS总线电缆。

........国产普通屏蔽电缆也可以替代PROFIBUS电缆,没有问题,实践证明是可以用的。这样说吧,使用是没有问题的,但是是要有些请提条件的,比如西门子给出的多大速率下对应多大的通讯距离,西门子DP电缆没有问题,但是国产屏蔽电缆就有可能不能用到这么长的通讯距离。要选用质量好的国产屏蔽电缆。

........为了保证信号的稳定要在DP网络的两端接电阻,3和8脚接220电阻,3和VP引脚接390电阻,8脚和DGND脚接390电阻。如果有RS485连接器,

就不用自己加终端电阻,RS485连接器中已经自带终端电阻了。

.......国产屏蔽电缆抗干扰的能力应该要若一些,如果是电磁环境很差的地方,例如有交交变频系统等,建议使用profibus-dp电缆。比较重要的系统中,对通讯安全非常严格的话,建议还是使用西门子的profibus-dp电缆。

........上面是官方提到的硬件连接方式,在实际中,我们可能因为使用情况不同(临时使用、实验使用、同一个电控柜内使用等),手边没有现成的Profibus 电缆和Profibus-DP接头。那么,在这种情况下就需要自己制作了。下面就简单说一下制作方法:

1、不带编程口的通信线制作:

........有多少个PLC就买多少个D型9针公头,然后买需要长度的Profibus 电缆(实在没有,买屏蔽双绞线也可以,不过抗干扰性没那么好哟;近距离的话,随便用什么线连接都可以,哪怕是2根单股导线,也没问题)。通过电缆,把这些D型9针公头的3脚依次连接在一起,把这些D型9针公头的8脚也依次连接在一起。接线的时候注意点,不要接错了——笔者就因为疏忽大意接错线,导致查了几个小时的故障才发现接线错了(首先怀疑线错了,用万用表打,没发现问题,晕哟,可能是遇见鬼了;最后把线全拆了,重新焊接即恢复正常)。

........如果通信存在问题,那么建议把这些D型9针公头的5脚也接在一起,强制低电位相等。如果有屏蔽线的话,就接上屏蔽线。屏蔽层接到每台设备的外壳并最后接大地。

........至于终端电阻和偏置电阻,距离短的话,就可以不接了。不过,虽然

不接,也得了解其原理——终端电阻和偏置电阻如17楼图示。因为PROFIBUS 的连接电缆通常采用TYPE A标准,其中的电缆阻抗值最大为165欧,

390/220/390的等效电阻是170,是为了实现阻抗匹配。当没有通讯进行时,终端电阻可以保证信号线间的电压差。通常加载在终端的电压为5V,390/220/390使得两信号线点的电压值分别为1.95和3.05V,是理想的静态电压(差分)。

........官方的PROFIBUS接头有进线和出线2个口,采用官方的PROFIBUS 接头接线时需要注意:“首站”和“末站”都接进线。

........其实“首站”和“末站”接出也能通信的,但是为了保证通讯的稳定,“首站”和“末站”都要把终端电阻置为ON,这时如果还把“首站”和“末站”接出线,那么“首站”和“末站”都被终端掉了。所以西门子规定:“首站”和“末站”都接进线。

2、带编程口的通信线制作:

........先制作不带编程口的通信线,然后再找一个D型9孔母头,与其中一台PLC的D型9针公头一对一连接:1-1,2-2,3-3,4-4,5-5,6-6,7-7,8-8,9-9。PLC编程电缆(多主站电缆)连接那个D型9孔母头。这样,电脑就可以监控那台PLC了。同时,因为同时也连接到了网内所有PLC,所以也可以监控网内所有PLC。

........注意:无论是否采用西门子原装的总线电缆和接头,如果是不带编程口,那么就只能监控到1台PLC而监控不到在网的其它PLC————例如,1

台PLC采用端口PORT1与其他PLC进行通信,而编程电缆连接到了这台PLC 的端口PORT0,那么在电脑上是无法监控到在网的其它PLC的。因为,电脑的编程电缆的通信线3,8脚和在网的其它PLC都不存在物理连接嘛。

采用了不带编程口的通信线,PLC插在不是联网那个通信口上监控,只能

看到1台PLC:

采用了带编程口的通信线,PLC插在联网那个通信口上监控,能看到在网

的所有PLC:

不过,最好只搜索设定的波特率就可以了,不要搜索所有波特率,否则可能出现问题:

要监控在网的哪台PLC,需要打开相应的PLC程序,然后搜索出所有的PLC,再把光标置于相应的PLC上,点击“确定”。然后可以下载和监控那台PLC:

如果电脑上当前PLC程序和“通信”的当前地址的PLC的程序不同,是无法监控该PLC的。

如果电脑上当前PLC程序“系统块”中的地址和“通信”的当前地址不同,那么将无法下载:

下面就来针对dingqw1234网友的要求做一个实例:1台CPU 226CN 作为主站,1台CPU 224XP作为从站,要把CPU 224XP的输入点数据全部传到CPU 226CN里面。

一、硬件连接:

........按照上面所说的方法,用到编程口的通信电缆把CPU 226CN和CPU 224XP的端口PORT1连接起来。当然,这个连接口可以随意组合,不过,根据不同的情况,可能会影响到程序的编制——如果同一台PLC的2个编程口的地址不同(要连接多个通信设备或不同的用途,就需要把2个通信口设置为不同的地址),那么就可能会影响到程序的编制。

二、PLC地址分配:

........编程软件TEP 7 MicroWIN分配的地址固定是0;程序中PLC的默认地址为2,这个我们要修改;因为该系统中没有其它设备,例如人机界面/触摸屏,这里就把CPU 226CN的PROT0口的地址设为1,把CPU 226CN的PROT1口的地址设为2,把CPU 224XP的PROT0口的地址设为3,把CPU 224XP 的PROT1口的地址设为4。

........当然,每个PLC的2个端口可以设置为相同的地址,这样的好处是:当一个通信口坏掉时,可以插到另外一个通信口,而不用更改主站PLC的程序。

........把每个PLC的2个端口设置为不相同的地址,笔者认为这样做没有什么好处(如果你知道,请告诉笔者,多谢!),只有坏处:当一个通信口坏掉时,插到另外一个通信口,需要更改与这台PLC通信的主站PLC的程序。不过这个例子中笔者这样分配地址,是做个实验而已。

三、编程:

........针对上面的控制要求,从站CPU 224XP就不需要编程了,只需要把CPU 224XP的PROT0口的地址设为3,把CPU 224XP的PROT1口的地址设为4并下载系统块就可以了。这个步骤就不赘述了,地址设置方法请参阅对CPU 226CN的设置。

........下面是对主站CPU 226CN进行编程和系统块地址设置的步骤。该例中,采用PPI协议进行通信(比自由口通信要简单得多),而且采用指令向导来编程(比直接设置特殊存储器SMB、调用NETR和NETW指令要简单得多)。

........点“设置PG/PC接口”,选中“PC/PPI Cable(PPI)”,点“属性”,在“本地连接”中选择你的编程程电缆的类型——COM1、COM2或是USB;在PPI中勾选“高级PPI”——非西门子官方电缆就不要选了,即使选了也不支持。点击“确定”——“确定”。

........把编程电缆插到每个PLC,对每个PLC设置指定的地址和设置统一的波特率——如果电缆质量不好,非原装电缆,波特率设置不要过高。先点“通信”,然后双击“双击刷新”。搜索到PLC地址后,设置好当前PLC地址。然后修改系统块中的PLC端口,按照预设的地址进行修改。最后下载系统块,把PLC相应端口设置为预设的地址。这个操作比较简单,我就不在贴图赘述了。

........把编程电缆插回到D型9孔母头。点击“通信”,取消勾选“搜索所有波特率”,然后双击“双击刷新”:

把光标移动到要监控/下载的PLC上面。如果要编226CN主站,移到地址2,如上图。

点击“工具”——“指令向导”,选择“NETR/NETW”,点击“下一步”:

选择需要配置的操作数量(这个例子为1),点击“下一步”:

选择主站的通信口(本例为端口1),点击“下一步”:

选择读还是写(本例为读),选择读几个数据(本例读2个数据,IB0-IB1;对于226CN的输入,应当读3个数据,IB0-IB2,共24个输入),选择PLC 的地址(本例为4):

说明:

如果您在配置NETR,指定以下内容:

- 数据存储在本地PLC 中的位置。有效操作数:VB、IB、QB、MB、LB。

- 从远程PLC 读取数据的位置。有效操作数:VB、IB、QB、MB、LB。

如果您在配置NETW,指定以下内容:

- 数据存储在本地PLC 中的位置。有效操作数:VB、IB、QB、MB、LB。

- 向远程PLC 写入数据的位置。有效操作数:VB、IB、QB、MB、LB。

点击“下一步”:

至此,向导完成。

然后在组程序中调用生成的加密子程序:

然后,下载该程序到PLC中即可。

然后监控程序,如果错误输出为1,那么是有问题的,表示通信不成功。如下图,M0.1的值为1:

只有错误输出为0,通信才是成功的(网络读写成功),如下图:

通信成功以后,重站PLC的输入就被读取到主站的VB存储器中了:

关于西门子PLC的PPI通信协议的研究

关于西门子PLC的PPI通信协议的研究 摘要:本文结合西门子PLC的PPI通信协议的相关理论,主要研究了PPI协议的 通信过程、通信协议模型,并对PLC网络通信模式的构建进行了实例分析。 关键词:西门子PLC;PPI通信协议;通信程序 前言 PPI通信协议是一种特殊的通信协议,其协议本身是不公开的,只有西门子 S7-200的设备支持它。但掌握它也很重要,有时s7-200系列的设备之间只能通过PPI协议通信,例如上位机STEP7-Micro/WIN与S7-200PLC之间的基本通信;有 时只要通过一根电缆就可以实现S7-200PLC之间的简单通信,非常适用。但由于PPI通信协议不是公开的协议,因此一般现场设备是不支持的,限制了其作为标 准现场总线的应用,由此还需对协议内容、功能实现进行研究和分析。 1西门子PLC的PPI通信协议概述 1.1通信过程 在PPI网上,计算机与PLC通信,是采用主从方式,通信总是由计算机发起,PLC予以响应。具体过程如下: 1)计算机按通信任务,用一定格式,向PLC发送通信命令。 2)PLC收到命令后,进行命令校验,如校验后正确无误,则向计算机返回数 据E5H或F9H,作出初步应答。 3)计算机收到初步应答后,再向PLC发送SD(开始定界字符,为10H)、 DA(目标地址,即PLC地址02H)、SA(源地址,即计算机地址00H)、FC(功 能码,取5CH)、FCS(SA、DA、FC和的256余数,为5EH)、ED(结束分界符)确认命令。 如按以上设定的计算机及PLC地址,则发送10、02、00、5C、5E及16,6个字节的十六进制数据,以确认所发命令。 4)PLC收到此确认后,执行计算机所发送的通信命令,并向计算机返回相应 数据。 需要注意的是:如为读命令,情况将如上所述。但如为写或控制命令,PLC 收到后,经校验,如无误,一方面向计算机发送数据E5H,作出初步应答;另一 方面不需计算机确认,也将执行所发命令。但当收到计算机确认信息命令后,会 返回有关执行情况的信息代码[1]。 1.2 PPI协议模型 PPI通信协议的模型以OSI模型为基础,将其中的物理层、数据链路层和应用 层构成现场总线通信的三层模型,如表1所示。 其中PPI的应用层是通信模型的最高层,负责进行应用数据的读写操作。应用层是在数 据链路层之上的,接收数据链路层上传的数据,用来更新本站点的相关数据。当应用层需要 发送数据时,它只要将发送数据的目的站点、数据类型和数据本身等信息下载给数据链路层,由数据链路层去实现数据的发送。 PPI的数据链路层是位于通信模型的第2层,它介于物理层与应用层之间。一方面,它要 执行应用层的数据发送任务,生成数据和控制帧,并将这些帧下载给物理层,通过物理层实 现帧的发送;另一方面,数据链路层还要接收物理层的帧,根据帧进行校验等操作,若是数 据帧,则将其中的数据从帧中读出,上传给应用层。 一次数据写出操作的步骤包括:首先由本站(主站)向从站发出写入请求,从站作出正确接

西门子PLC的以太网通讯及OPC通讯介绍

西門子PLC的以太網通訊及OPC通訊介紹 1.以太網通訊 CAL有很多地方用到以太網通訊,L2,焊機與PLC間通訊等,表檢的成像原理為:在金屬板帶表面沒有缺陷時,反射的光在明視場下很強,而在暗視場的散射光很弱;如有缺陷,則明視場的光強減弱,而暗視場的光強增加。根據這個原理,通過檢測攝像頭裡光強的變化,可檢測出材料表面上的一些物理缺陷。CAL 僅僅用到了它的檢測破孔這一個功能。 下面再來看西門子的以太網通訊,使用以太網通訊處理器可能的連接方式: 我們可以看到不同的通訊方式在PLC裏面需要調用不同的功能塊。 像S7-Connection方式連接的,需要調用SFB12/FB12等來讀取發送數據息,而TCP等連接的,需要FC5等來讀取發送數據。 下面簡單介紹下每種連接特點: Send/receive: iso 連接:ISO傳輸服務通過組態連接提供SEND/REVEICE interface服務在以太網上傳輸數據,此時服務使用的是ISO協議。此通訊速度較快,可是不能實現網絡路由,只能用於局域網通訊。 Send/receive: iso-On-TCP 連接:突破了局域網的限制,可以路由到公網上去;數據重發功能和基於第2層的CRC校驗保證了數據傳輸的完整性和可靠性。 Send/receive: TCP 連接:TCP/IP提供面向連接的數據通訊,數據並不會被打包因而並沒有數據包確認位,在這TCP服務提供了統一的sccket接口到每一個終

端,因而數據塊可以整體發送,這裡區別於iso-On-TCP 連接。 Send/receive: UDP連接:UDP提供簡單數據傳輸,無需確認,與TCP同屬第4層協議。與TCP相比,UDP屬於無連接的協議,數據報文無需確認。 S7通信:S7協議是西門子S7家族的標準通信協議,使用S7應用接口的通信不依賴特定的總線系統(Ethernet,PROFIBUS,MPI)。接口位於ISO-OSI參考模型的第7層,下面圖模型各層的通信方式。 那麼根據表檢的通訊協議規定: Transmission mode:TCP protocol (not S7), PLC will always be the client , Gauge will always be the server. Byte order: use PLC Byte Order ( not x86 byte order ). 我們建立通訊就需選擇send/receive中的TCP連接。 因此,在PLC中做如下配置: 1.打開硬件配置->點擊網絡組態:

S7200_PPI通信协议

S7-200 PPI通信协议 PPI通信协议是一种主从式的通信协议,上位机即PC机为主,PLC为从。通信开始由计算机发起,PLC予以响应。 1)、计算机按通信任务,用一定格式,向PLC发送通信命令。 2)、PLC收到命令后,进行命令校验,如无误,则向计算机发送数据E5H或F9H,作出初步应答。 3)、计算机收到初步应答后,再向PLC发送SD DA SA FC FCS ED确认命令。 这里,SD为起始字符,为10H;DA为目的,即PLC地址02H;SA为数据源,即计算机地址00H;FC为功能码,取5CH;FCS为SA、DA、FC和的256余数,为5EH;末字节ED为结束符,也是16H。如按以上设定的计算机及PLC地址,则发送10、02、00、5C、5E、及16,6个字节的十六进制数据,以确认所发命令。 4)、PLC收到此确认后,执行计算机所发送的通信命令,并向计算机返回相应数据。它的通信过程要往复两次才完成一次的通信,比较麻烦,但较严谨,不易出错。 SD LE LER SD DA SA FC DASP SSAP DU FCS ED SD:(Start Delimiter)开始定界符,占1字节,为68H LE:(Length)报文数据长度,占1字节,标明报文以字节计,从DA到DU的长度; LER:(Repeated Length)重复数据长度,同LE SD: (Start Delimiter)开始定界符(68H) DA:(Destination Address)目标地址,占1字节,指PLC在PPI上地址,一台PLC时,一般为02,多台PLC时,则各有各的地址; SA:(Source Address)源地址,占1字节,指计算机在PPI上地址,一般为00; FC:(Function Code)功能码,占1字节,6CH一般为读数据,7CH一般为写数据 DSAP:(Destination Service Access Point)目的服务存取点,占多个字节 SSAP:(Source Service Access Point)源服务存取点,占多个字节 DU:(Data Unit)数据单元,占多个字节

Siemens PPI协议分析

Siemens PPI协议分析 大家好:我是山东临沂的郝金红,由于前段时间的疯狂的研究西门子PPI协议解密之故,所以无心插柳的研究出了较实用的西门子S7-200 PPI协议,今天奉献大家。我们经常要用于上位机、现场设备与S7-200CPU之间的通讯,但是西门子公司没有公布PPI协议的格式,用户如果想使用PPI协议监控,必须购买其监控产品或第三方厂家的组态软件。大家要知道国内的组态王、紫金桥、力控等等组态公司是花了多少钱才得到的PPI的深层协议吗?其实西门子工控产品的超高价垄断掠夺行为已经引起了我们国家及业内人士的抵制和抗议,他们的什么软件都需要授权且对于系统的霸道性是有目共睹的。 这样给用户自主开发就带来了一定的困难,特别是想用VB、VC等语言自行开发,根本没办法接入PLC,要么你大把掏钱给他们。洋为中用,最近在国外网站得到一个串口监视软件,带协议分析的相当不错,你吧!我就是通过此软件的数据监视、分析方法,找出了PPI协议的关键报文格式所在。 其实西门子S7-200 PLC之间或者PLC与PC之间通信有很多种方式:自由口,PPI方式,MPI方式,Profibus方式。使用自由口方式进行编程时,在上位机和PLC 中都要编写数据通信程序。使用PPI协议进行通信时,PLC可以不用编程,而且可读写所有数据区,快捷方便。这也是我们之所以要研究、找出PPI协议的源动力! 下面我们就要说说分析的方法了! 西门子的STEP 7 MicroWIN 是用于S7-200系列PLC的开发工具,它使用PC机上的COM口通过一条PC/PPI编程电缆连到PLC的编程口上。这说明,PC实际上是可以通过串口同S7-200 CPU通讯。只是我们不知道通讯协议而已。通过截获PC机串口上的收发数据,对照Step 7软件发出的指令,我们就有可能分析出有关指令的报文和通讯方式;然后,直接通过串口向PLC发送报文,以验证这些指令报文是否正确。本着这一思想,我们采用以下步骤获得这些报文。

西门子以太网通讯设置

西门子以太网通讯 一、功能: S7-200做客户机(主站), S7-300做服务器(服务器) 二、硬件配置: 1.CP243-1 2.CPU224 3.CPU314 4.CP343-1 三、设置步骤: 第一步打开S7-200编程软件MicroWIN,在工具栏中选择以太网向导

第二步读取CP243-1【以太网模块】。注意:PC与S7-200连接正常才能读取到 第三步选择以太网模块

第四步输入【 CP243-1 】的IP地址 192.168.0.50 注意 IP设置与S7-300侧要在同一个网段 第五步配置连接数【最多连接8路】以太网模块要占用地址,建议放在最后插槽连接数:根据实际的连接数配置

第六步 1.选择客户机连接【s7-200为客户机】 2.【03.02】----03:单边通信 02: S7-300CPU模块的插槽号 【10:00】 ----1:固定 0:连接号 00:s7-200CPU模块的位置 3. 输入CP343-1的IP地址【在S7-300的硬件组态中设置】 4. 单击“数据传输”,进入配置窗口。 注意:连接号一定要记住,在编程的时候会应用到

第七步 1.选择向服务器读取数据 2.选择读取数据的大小【最大212个字节】 3.数据的对应关系。【把S7-300“DB10.DBB0开始的10个字节”的数据读取到本地“VB0开始的10个字节”中】 4.配置完后点击【新转输】 注意:传输号要记住,在编程中要应用到

第八步 1. 选择向服务器写入数据 2. 选择写入数据的大小【最大212个字节】 3. 数据的对应关系。【把本地“VB10开始的10个字节”的数据写入到S7-300“DB10.DBB10开始的10个字节”中】 4.配置完后点击确认 注意:传输号要记住,在编程中要应用到

MPI协议和PPI协议有什么不同

竭诚为您提供优质文档/双击可除MPI协议和PPI协议有什么不同 篇一:通讯不同点 请教下大虾们,常说的总线有profibus、can、modbus、FF、devicenet等,这些是不是以走什么协议来命名的?那 我可以说:“它走can协议吗?”而常见的串口通信modbus,mpi, 据校验和。 在波特率一致、各站地址不同的情况下,ppi,mpi和pRoFibus可以同时在一个网络上运行,并且互不干扰。 这就是说如果一个网络上有s7-300、s7-200,s7-300 之间可以通过mpi或pRoFibus通信,而在同时在同一个网 络上的tp170如果在一个通信网络上存在其他主站(如td200,或者上位计算机等),同时需要进行micro/win的编程、监控,这就是多主站网络编程。 使用西门子的下列设备可以实现micro/win的多主站编程: micro触摸屏可以与一个s7-200cpu通信。 使用智能多主站电缆和micro/winV3.2sp4以上版本。

新电缆可以在网络上传递令牌,因而自动支持多主站网络编程。 如果使用cp卡,如cp5511/cp5512(笔记本电脑pcmcia 卡)、cp5611(台式机pci卡),能够支持多主站编程通信。 如果通过cp卡编程时,选择了mpi协议,注意mpi主站不能访问作为ppi主站的cpu。如果有第三方的产品要连接到多主站网络上,用户需要咨询第三方产品提供商以了解是否支持西门子的s7-200多主站网络。要进行多主站编程,不但编程计算机要支持,网上的其他设备也要有多主站通信能力。 早期的多主站连接依赖于计算机硬件和windows操作系统。随着计算机技术的发展,多数情况下已经不能做到多主站编程通信。建议用户使用西门子的多主站编程电缆或者cp 卡配合micro/win实现多主站编程通信。 4.mpi(multipointinterface)是simatics7多点通信的接口,是一种适用于少数站点间通信的网络,多用于连接上位机和少量plc之间近距离通信。 通过pRoFibus电缆和接头,将控制器s7-300或s7-400的cpu自带的mpi编程口及s7-200cpu自带的ppi通信口相互连接,以及与上位机网卡的编程口(mpi/dp口)通过pRoFibus或mpi电缆连接即可实现。网络中当然也可以不包括pc机而只包括plc。

西门子PPI通讯协议

?西门子PPI通讯协议!看看吧! S7-200?PLC之PPI协议? ????通过硬件和软件侦听的方法,分析PLC内部固有的PPI通讯协议,然后上位机采用VB 编程,遵循PPI通讯协议,读写PLC数据,实现人机操作任务。这种通讯方法,与一般的自由通讯协议相比,省略了PLC的通讯程序编写,只需编写上位机的通讯程序资源 S7-226的编程口物理层为RS-485结构,SIEMENS提供MicroWin软件,采用的是PPI(Point?to?Point)协议,可以用来传输、调试PLC程序。在现场应用中,当需要PLC与上位机通讯时,较多的使用自定义协议与上位机通讯。在这种通讯方式中,需要编程者首先定义自己的自由通讯格式,在PLC中编写代码,利用中断方式控制通讯端口的数据收发。采用这种方式,PLC编程调试较为烦琐,占用PLC的软件中断和代码资源,而且当PLC的通讯口定义为自由通讯口时,PLC的编程软件无法对PLC进行监控,给PLC程序调试带来不便。SIEMENS?S7-200PLC的编程通讯接口,内部固化的通讯协议为PPI协议,如果上位机遵循PPI 协议来读写PLC,就可以省略编写PLC的通讯代码。如何获得PPI协议?可以在PLC的编程软件读写PLC数据时,利用第三个串口侦听PLC的通讯数据,或者利用软件方法,截取已经打开且正在通讯的端口的数据,然后归纳总结,解析出PPI协议的数据读写报文。这样,上位机遵循PPI协议,就可以便利的读写PLC内部的数据,实现上位机的人机操作功能。 软件设计 ?系统中测控任务由SIEMENS?S7-226PLC完成,PLC采用循环扫描方式工作,当定时时间到时,执行数据采集或PID控制任务,完成现场的信号控制。计算机的监控软件采用VB编制,利用MSComm控件完成串口数据通讯,通讯遵循的协议为PPI协议。 ?PPI协议 西门子的PPI(Point?to?Point)通讯协议采用主从式的通讯方式,一次读写操作的步骤包括:首先上位机发出读写命令,PLC作出接收正确的响应,上位机接到此响应则发出确认申请命令,PLC则完成正确的读写响应,回应给上位机数据。这样收发两次数据,完成一次数据的读写[5]。 其通讯数据报文格式大致有以下几类: 1、读写申请的数据格式如下: ? SD?LE?LER?SD?DA?SA?FC?DASP?SSAP?DU?FCS?ED?? SD:(Start?Delimiter)开始定界符(68H) LE:(Length)报文数据长度 LER:(Repeated?Length)重复数据长度 SD:?(Start?Delimiter)开始定界符(68H) SA:(Source?Address)源地址,指该地址的指针,为地址值乘以8 DA:(Destination?Address)目标地址,指该地址的指针,为地址值乘以8 FC:(Function?Code)功能码 DSAP:(Destination?Service?Access?Point)目的服务存取点 SSAP:(Source?Service?Access?Point)源服务存取点 DU:(Data?Unit)数据单元 FCS:(Frame?Check?Sequence)校验码 ED:(End?Delimiter)结束分界符(16H) 报文数据长度和重复数据长度为自DA至DU的数据长度,校验码为DA至DU数据的和校验,只取其中的末字节值。 在读写PLC的变量数据中,读数据的功能码为?6CH,写数据的功能码为?7CH。

SiemensPPI协议分析

编号:_______________本资料为word版本,可以直接编辑和打印,感谢您的下载 SiemensPPI协议分析 甲方:___________________ 乙方:___________________ 日期:___________________

大家好:我是山东临沂的郝金红,由丁前段时间的疯狂的研究西门子PPI协议解密之故,所以无心插柳的研究出了较实用的西门子S7-200 PPI协议,今天奉献大家。我们经常要用丁上位机、现场设备与S7-200CP比问的通讯,但是西门子公司没有公布PPI协议的格式,用户如果想使用PPI协议监控,必须购买其监控产品或第三方厂家的组态软件。大家要知道国内的组态王、紫金桥、力控等等组态公司是花了多少钱才得到的PPI的深层协议吗?其实西门子工控产品的超高价垄断掠夺行为已经引起了我们国家及业内人士的抵制和抗议,他们的什么软件都 需要授权且对丁系统的霸道性是有目共睹的。 这样给用户自主开发就带来了一定的困难,特别是想用VB VCC?语言自行开发,根本没办法接入PLC要么你大把掏钱给他们。洋为中用,最近在国外网站得到一个申口监视软件,带协议分析的相当不错,你'下裁吧!我就是通过此软件的数据监视、分析方法,找出了PPI协议的关键报文格式所在。 其实西门子S7-200 PLC之间或者PL必P&问通信有很多种方式:自由口, PPI方式,MP方式,Profibus方式。使用自由口方式进行编程时,在上位机和PLC 中都要编写数据通信程序。使用PPI协议进行通信时,PLW以不用编程,而且可读写所有数据区,快捷方便。这也是我们之所以要研究、找出PPI协议的源动力! 卜面我们就要说说分析的方法了! 西门子的STEP 7 MicroWIN是用丁S7-200系列PLC勺开发工具,它使用PCL上的COI^通过一条PC/PPI编程电缆连到PLC勺编程口上。这说明,PCS际上是可以通过申口同S7-200 CPIffl讯。只是我们不知道通讯协议而已。通过截获PO申口上的收发数据,对照Step 7软件发出的指令,我们就有可能分析出有关指令的报文和通讯方式;然后,直接通过申口向PLCCc送报文,以验证这些指令报文是否正确。本着这一思想,我们采用以下步骤获得这些报文。 你首先下载上面那个英文的申口监控软件,英文不好的网友可以使用我们为你汉化的汉化包,替换原文件即可,你必须使用这个软件,因为我先前使用过很多的监控软件,在收发数据很多的情况下都有死机现象,造成数据丢失,容易给

PPI MPI Profibus 通信协议详解

1、MPI是Multi-Point Interface,适用于PLC 200/300/400、操作面板TP/OP及上位机MPI/PROFIBUS通信卡,MPI网络的通信速率为网络才支持12Mbit/s的通信速率。MPI网络最多可以连接32个接节点,最大通信距离为50m,但是可以通过中继器来扩展长度。PPI协议是专门为S7-200开发的通信协议。S7-200 CPU的通信口(Port0、Port1)支持PPI通信协议,S7-200的一些通信模块也支持PPI协议。Micro/WIN与CPU进行编程通信也通过PPI协议。PPI是一种主从协议,主站、从站在一个令牌网。在一个PPI网络中,与一个从站通信的主站的个数并没有限制,但是一个网络中主站的个数不能超过32个。主站既可以读写从站的数据,也可以读写主站的数据。也就是说,S7-200作为PPI主站时,仍然可以作为从站响应其他主站的数据请求。 MPI是主站之间的通信;PPI可以是多台主站与从站之间通信。 2、MPI协议:西门子内部协议,不公开; PROFIBUS-DP协议:标准协议,公开。 3、MODBUS 是MODICON公司最先倡导的一种软的通讯规约,经过大多数公司的实际应用,逐渐被认可,成为一种标准的通讯规约,只要按照这种规约进行数据通讯或传输,不同的系统就可以通讯。目前,在RS232/RS485通讯过程中,更是广泛采用这种规约。 常用的MODBUS 通讯规约有两种,一种是MODBUS ASCII,一种是MODBUS RTU。 一般来说,通讯数据量少而且主要是文本的通讯则采用MODBUS ASCII规约,通讯数据数据量大而且是二进制数值时,多采用MODBUS RTU规约。 在实际的应用过程中,为了解决某一个特殊问题,人们喜欢自己修改MODBUS规约来满足自己的需要(事实上,人们经常使用自己定义的规约来通讯,这样能解决问题,但不太规范)。更为普通的用法是,少量修改规约,但将规约格式附在软件说明书一起,或直接放在帮助中,这样就方便了用户的通讯。 3. PPI,MPI和PROFIBUS都是基于OSI(开放系统互联)的七层网络结构模型,符合欧洲标准EN50170所定义的PROFIBUS标准,基于令牌的的网络通信协议。这些协议是非同步的(串行的)基于字符的通信协议,字符格式包括一个起始位、8个数据位、一个偶校验位和一个停止位。其通信帧包括特定的起始和结束字符、源和目的站的地址、帧长度和数据校验和。 在波特率一致、各站地址不同的情况下,PPI,MPI和PROFIBUS可以同时在一个网络上运行,并且互不干扰。 这就是说如果一个网络上有S7-300、S7-200,S7-300之间可以通过MPI或PROFIBUS 通信,而在同时在同一个网络上的TP170 如果在一个通信网络上存在其他主站(如TD 200,或者上位计算机等),同时需要进行Micro/WIN的编程、监控,这就是多主站网络编程。 使用西门子的下列设备可以实现Micro/WIN的多主站编程: micro触摸屏可以与一个S7-200 CPU通信。 使用智能多主站电缆和Micro/WIN V3.2 SP4以上版本。新电缆可以在网络上传递令牌,因而自动支持多主站网络编程。 如果使用CP卡,如CP5511/CP5512(笔记本电脑PCMCIA卡)、CP5611(台式机PCI

西门子以太网通讯模块调用

西门子S7300/400以太网连接程序数据交换方法 一、对于343-1的专门以太网连接模块做通讯的项目由于模块支持较多通讯协议,故推荐使 用使用通讯功能块FC5/FC50 和FC6/FC60 编程 ? TCP 连接 ? ISO-on-TCP 连接 (RFC 1006) ? ISO 连接 ? UDP 连接 ? FDL 连接 通讯功能块FC5 “AG_SEND”和FC6 “AG_RECV”的特点 ? FC5 和 FC6 是异步通讯功能块。 ? FC5 和 FC6 的运行需要几个 OB1 周期。 ? FC5 由输入参数 "ACT" 使能。 ?通讯任务结束由“DONE”或“ERROR”指示。 ? AG_LSEND 和 AG_LRECV 可以通过一个连接同时通讯。 ?可以在 SIMATIC_NET_CP 库"CP 300 > Blocks" 里找到通讯功能块 FC5 "AG_SEND" 和 FC6 "AG_RECV"。 首先在STEP7中的NETCONFIG中进行网络配置,设置好IP后,点需要配置连接的PLC,按 添加一个新的网络连接:在选择好伙伴PLC后添加IS0-on-TCP connection协议 然后再对选择好后的协议进行配置,注意下图中标注的地方按默认就可以

再在程序中调用FC5/FC6块,注意在引脚ID和LADDR处填入上面标识处的参数 如果FC5和FC6的块在原程序中已经被占用,新调入的AG_SEND和AG_RECEIVE需重新命名,其中需填入的参数为: ACT—激活该块工作直到ACT信号消失,BOOL变量 ID—网络配置后主机与伙伴机之间的网络地址,特别注意发射、接收块的ID,主机与伙伴机的ID需相同 LADDR—网络配置后生成的特殊标识,WORD变量 SEND/RECV—指针型位变量,表示从该位开始以后的数据数量,以BYTE为单位 LEN—所传送数据长度,10进制数,以BYTE为单位 DONE/NDR—数据发送/接收成功标志位 ERROR—块运行错误标识,显示的是16进制数,根据代码可以查询故障原因 STATUS—状态标识字,表示块运行状态

S7-200PPI通讯协议

S7-200 PLC之PPI协议 S7-200 PLC之PPI协议 通过硬件和软件侦听的方法,分析PLC内部固有的PPI通讯协议,然后上位机采用VB编程,遵循PPI通讯协议,读写PLC数据,实现人机操作任务。这种通讯方法,与一般的自由通讯协议相比,省略了PLC的通讯程序编写,只需 编写上位机的通讯程序资源 S7-226的编程口物理层为RS-485结构,SIEMENS提供MicroWin软件,采用的是PPI(Point to Point)协议,可以用来传输、调试PLC程序。在现场应用中,当需要PLC与上位机通讯时,较多的使用自定义协议与上位机通讯。在这种通讯方式中,需要编程者首先定义自己的自由通讯格式,在PLC中编写代码,利用中断方式控制通讯端口的数据收发[4]。采用这种方式,PLC编程调试较为烦琐,占用PLC的软件中断和代码资源,而且当PLC的通讯口定义为自由通讯口时,PLC的编程软件无法对PLC进行监控,给PLC程序调试带来不便。 SIEMENS S7-200PLC的编程通讯接口,内部固化的通讯协议为PPI协议,如果上位机遵循PPI协议来读写PLC,就可以省略编写PLC的通讯代码。如何获得PPI协议?可以在PLC的编程软件读写PLC数据时,利用第三个串口侦听PLC 的通讯数据,或者利用软件方法,截取已经打开且正在通讯的端口的数据,然后归纳总结,解析出PPI协议的数据读写报文。这样,上位机遵循PPI协议,就可以便利的读写PLC内部的数据,实现上位机的人机操作功能。 软件设计 系统中测控任务由SIEMENS S7-226PLC完成,PLC采用循环扫描方式工作,当定时时间到时,执行数据采集或PID控制任务,完成现场的信号控制。计算机的监控软件采用VB编制,利用MSComm控件完成串口数据通讯,通讯遵循的协议为PPI协议[2]。 PPI协议 西门子的PPI(Point to Point)通讯协议采用主从式的通讯方式,一次读写操作的步骤包括:首先上位机发出读写命令,PLC作出接收正确的响应,上位机接到此响应则发出确认申请命令,PLC则完成正确的读写响应,回应给上位机数据。这样收发两次数据,完成一次数据的读写[5]。 其通讯数据报文格式大致有以下几类: 1、读写申请的数据格式如下:

西门子以太网(S7协议)通讯

西门子以太网(S7协议)通讯 一、概述 西门子支持多种协议,包括DP协议,FMS协议,S7协议,当使用力控通过以太网S7协议访问设 备时,需要安装西门子SIMATIC NET5.0的相应软件。 二、硬件配置 安装网卡 1、硬件安装:请参照西门子说明书,注意地址设置。 2、板卡软件设置:打开PG/PC界面,(“开始”菜单或“控制面板”中),点击INSTALL按钮,弹 出Install/Remove Interface对话框,在Selection的选项中,选择相应的板卡,点击Install 安装。安装完成后,可在控制面板的系统项中检查是否有冲突。 三、通讯配置 运行SIMATIC NET PB soft s7中的COML S7,生成新的.TXT文件 1、在network type中选择TCP/IP 2、在name栏中,键入一个S7 连接名,此名代表一个PLC站点,比如testtcp。 3、在VFD栏中,键入REQ(或VFD)

4、在Remote Addr键入需要访问的PLC的IP地址,比如202.168.0.1。 5、Local TSAP键入1.00(缺省) 6、Remote TSAP为四位16进制数字,中间以“.”隔开。第二位数字表示远程站点的类型:2-OS, 1-PG,0-PS;第三位数字表示PLC的CPU的RACK号,第四位数字表示CPU的SLOT号,一般为:02.02。如下图: 7、在File菜单中,选择 Generate Binary DB As 生成二进制数据库。见下图:

四、网卡的配置 重新进入PG/PC界面。选择相应的网卡为S7ONLINE (STEP 7) -→TCP/IP-→******方式。如下图: 点击Properties弹出Propeities界面: 在SAPI S7 (Protocol)页中,点击Search,查找并选择在COML S7中生成的相应的 *.ldb文件。 图形如下:

西门子S7-200 PLC之PPI通讯协议

西門子S7-200 PLC之PPI通訊協議 西門子PPI通訊協議S7-200 PLC之PPI協議通過硬件和軟件偵聽的方法,分析PLC內部固有的PPI通訊協議,然後上位機采用VB編程,遵循PPI通訊協議,讀寫PLC數據,實現人機操作任務。這種通訊方法,與一般的自由通訊協議相比,省略了PLC的通訊程序編寫,隻需編寫上位機的通訊程序資源S7-226的編程口物理層為RS-485結構,SIEMENS提供MicroWin軟件,采用的是PPI(Point to Point)協議,可以用來傳輸、調試PLC程序。在現場應用中,當需要PLC與上位機通訊時,較多的使用自定義協議與上位機通訊。在這種通訊方式中,需要編程者首先定義自己的自由通訊格式,在PLC中編寫代碼,利用中斷方式控製通訊端口的數據收發。采用這種方式,PLC編程調試較為煩瑣,占用PLC 的軟件中斷和代碼資源,而且當PLC的通訊口定義為自由通訊口時,PLC的編程軟件無法對PLC進行監控,給PLC程序調試帶來不便。 SIEMENS S7-200PLC的編程通訊接口,內部固化的

通訊協議為PPI協議,如果上位機遵循PPI協議來讀寫PLC,就可以省略編寫PLC的通訊代碼。如何獲得PPI協議?可以在PLC的編程軟件讀寫PLC數據時,利用第三個串口偵聽PLC的通訊數據,或者利用軟件方法,截取已經打開且正在通訊的端口的數據,然後歸納總結,解析出PPI協議的數據讀寫報文。這樣,上位機遵循PPI協議,就可以便利的讀寫PLC 內部的數據,實現上位機的人機操作功能。 軟件設計 係統中測控任務由SIEMENS S7-226PLC完成,PLC采用循環掃描方式工作,當定時時間到時,執行數據采集或PID控製任務,完成現場的信號控製。計算機的監控軟件采用VB編製,利用MSComm控件完成串口數據通訊,通訊遵循的協議為PPI協議。PPI協議 西門子的PPI(Point to Point)通訊協議采用主從式的通訊方式,一次讀寫操作的步驟包括:首先上位機發出讀寫命令,PLC作出接收正確的響應,上位機接到此響應則發出確認申請命令,PLC則完成正確的讀寫響應,回應給上位機數據。這樣收發兩次數據,完成一次數據的讀寫[5]。 其通訊數據報文格式大致有以下幾類:

kepserver与西门子plc通信配置方法

KepServer软件与西门子PLC通信配置方法 (串口或以太网) 一、PLC采用自由口通讯配置方法 1. KepServer配置 (a). 在KepServerEx中新建一个空白工程,添加1个通道,在“Device driver”中选择 【Siemens S7-200】; 说明:如下图,【Siemens S7 MPI:指PLC300】、【Siemens S7-200:指PLC200】、【Siemens TCP/IP Ethernet:PLC200和PLC300均可】。 然后设置与PLC通讯的电脑串口,其它基本采用默认即可,根据需要可调整设置;

(b) 添加一个设备,在“Device Model”选择【S7-200】; 在设置“Device ID”时一定要注意,这个值对应于PLC程序里“通讯”->“远程ID”;如果不对应,将无法通讯;

(c). 添加tsg标签,注意IO地址的格式与以太网方式有点区别,其数据类型必须要在“Data type”中设置才行,同样在上位机配置OPC驱动时也要注意IO点的数据类型;

(d). 配置好后,可以用KepServerEx自带的quick client来调试与PLC通讯是否正常,配置是否正确; 2. iFix组态上位机OPC驱动配置 (a). 打开OPC Tool配置工具,新建空白工程文件,添加opc server、group、Item,注意 所有的Enable均要打勾; 注意:可以用添加多个IO项的方式快速设置;

(b). 配置完成后,点击1:Start按钮,然后点击2:Statistics来进行状态监视,检查通 讯配置是否正常。

西门子PPI通讯协议

西门子PPI通讯协议 通过硬件和软件侦听的方法,分析PLC内部固有的PPI通讯协议,然后上位机采用VB编程,遵循PPI通讯协议,读写PLC数据,实现人机操作任务。这种通讯方法,与一般的自由通讯协议相比,省略了PLC的通讯程序编写,只需编写上位机的通讯程序资源S7-226的编程口物理层为RS-485结构,SIEMENS提供MicroWin软件,采用的是PPI(Point to Point)协议,可以用来传输、调试PLC程序。在现场应用中,当需要PLC与上位机通讯时,较多的使用自定义协议与上位机通讯。在这种通讯方式中,需要编程者首先定义自己的自由通讯格式,在PLC中编写代码,利用中断方式控制通讯端口的数据收发。采用这种方式,PLC编程调试较为烦琐,占用PLC的软件中断和代码资源,而且当PLC的通讯口定义为自由通讯口时,PLC的编程软件无法对PLC进行监控,给PLC程序调试带来不便。SIEMENS S7-200PLC的编程通讯接口,内部固化的通讯协议为PPI协议,如果上位机遵循PPI协议来读写PLC,就可以省略编写PL C的通讯代码。如何获得PPI协议?可以在PLC的编程软件读写PLC数据时,利用第三个串口侦听PLC的通讯数据,或者利用软件方法,截取已经打开且正在通讯的端口的数据,然后归纳总结,解析出PPI协议的数据读写报文。这样,上位机遵循PPI协议,就可以便利的读写PLC内部的数据,实现上位机的人机操作功能。 软件设计 系统中测控任务由SIEMENS S7-226PLC完成,PLC采用循环扫描方式工作,当定时时间到时,执行数据采集或PID控制任务,完成现场的信号控制。计算机的监控软件采用VB编制,利用MSComm控件完成串口数据通讯,通讯遵循的协议为PPI协议。 PPI协议 西门子的PPI(Point to Point)通讯协议采用主从式的通讯方式,一次读写操作的步骤包括:首先上位机发出读写命令,PLC作出接收正确的响应,上位机接到此响应则发出确认申请命令,PLC则完成正确的读写响应,回应给上位机数据。这样收发两次数据,完成一次数据的读写[5]。 其通讯数据报文格式大致有以下几类: 1、读写申请的数据格式如下:

西门子以太网通讯设置

西门子以太网通讯一、功能: S7-200做客户机(主站),S7-300做服务器(服务器) 二、硬件配置: 1.CP243-1 2.CPU224 3.CPU314 4.CP343-1 三、设置步骤: 第一步打开S7-200编程软件MicroWIN,在工具栏中选择以太网向导

第二步读取CP243-1【以太网模块】。注意:PC与S7-200连接正常才能读取到

第三步选择以太网模块 第四步输入【CP243-1 】的IP地址192.168.0.50 注意IP设置与S7-300侧要在同一个网段

第五步配置连接数【最多连接8路】以太网模块要占用地址,建议放在最后插槽连接数:根据实际的连接数配置 第六步

1.选择客户机连接【s7-200为客户机】 2.【03.02】----03:单边通信02: S7-300CPU模块的插槽号【10:00】----1:固定0:连接号00:s7-200CPU模块的位置 3. 输入CP343-1的IP地址【在S7-300的硬件组态中设置】 4. 单击“数据传输”,进入配置窗口。 注意:连接号一定要记住,在编程的时候会应用到

第七步 1.选择向服务器读取数据 2.选择读取数据的大小【最大212个字节】 3.数据的对应关系。【把S7-300“DB10.DBB0开始的10个字节”的数据读取到本地“VB0开始的10个字节”中】 4.配置完后点击【新转输】 注意:传输号要记住,在编程中要应用到 第八步 1. 选择向服务器写入数据 2. 选择写入数据的大小【最大212个字节】 3. 数据的对应关系。【把本地“VB10开始的10个字节”的数据写入到S7-300“DB10.DBB10开始的10个字节”中】 4.配置完后点击确认 注意:传输号要记住,在编程中要应用到

20090524西门子ppi协议分析

西门子ppi协议分析: 西门子s7-200 plc之间或者plc与pc之间通信有很多种方式:自由口,ppi方式,mpi方式,profibus方式。使用自由口方式进行编程时,在上位机和plc 中都要编写数据通信程序。使用ppi协议进行通信时,plc可以不用编程,而且可读写所有数据区,快捷方便。但是西门子公司没有公布ppi协议的格式。用户如果想使用ppi协议监控,必须购买其监控产品或第三方厂家的组态软件。这样给用户自主开发带来一定困难,特别是自行开发的现场设备就不能通过ppi 协议接入plc。其它通讯方式编程也存在编程复杂,需要购买软件和授权等局限性(1)。通过数据监视、分析的方法,我们找出了ppi协议的关键报文格式,可用于上位机、现场设备与s7-200 cpu之间通讯。 pc与plc采用主从方式通讯,pc按如下的格式发读写指令,plc作出接收正确的响应(返回应答数据e5h或f9h见下文分析),上位机接到此响应则发出确认命令(10 02 5c 5e 16),plc再返回给上位机相应数据。 一般上位机要连接plc就要先发送如下数据 10 02 00 49 4b 16 你可以理解为我们常用的对讲机通话模式:00呼叫02,听到请回答 10起始符 02是之上位机要联系的下位级的地址站号 00就是上位级本本身自己的站号 49寻呼指令 16终止符其中4b为校验码,是这样得来的:02+00+49的最后两位就是校验码,这就是所说的偶校验或称和校验。计算器在16进制计算时公式(02+00+49)mod 100得出的数就是校验码,你计算一下是不是等于4b啊!其他的所有ppi 协议校验都是如此。假如02站号的plc收到寻呼信号那么会回答: 10 00 02 00 02 16 意思是:报告00 ,02收到,请指示这样的解释是不是有意思啊!你有更好的解释吗?

西门子采用Get-Put向导完成PLC之间Get-Put以太网通讯实例分析

西门子采用Get/Put向导完成PLC之间Get/Put以太网通讯实例分析 工艺要求:近千米的距离非均匀分布N多分站,每个分站就地控制一台电机正反转。控制室需要监控联网的所有分站设备。 用CN之间PPI联网,软件自带的PPI向导组态很是方便,整个网络基于RS485接口传输。现在SMART自带的DB9口不支持PPI联网通讯,支持以太网口的GET/PUT通讯,下来一起完成GET/PUT通讯联机过程。 2台SR30,一台做主机(192.168.2.200),一台做从机(192.168.2.201)。 主机中程序编写如下: 打开向导 1. 进入向导 2. 点击添加,操作项目树下添加一个名称,与默认名称共2个分别组态成PUT/GET 3. 双击可以修改名称以及添加注释 4. 完成后自动出现组态的数量,上图为2个 2个操作——Put、Get的具体组态步骤: 双击组态Put界面,相当于将主站VB0映射到分站QB0(写一个字节的数据) 主机检测到自己I0.0上升沿,将255 MOV到VB0(即就是VB0的8个位都为1),而组态的联机Put指令将主站VB0映射到了分站QB0,那么此时分机(192.168.2.201)Q0.0~Q0.7整个QB0全部都有输出;同理,主机检测到自己I0.0下降沿,将0 MOV到VB0(即就是VB0的8个位都为0),此时分机(192.168.2.201)Q0.0~Q0.7整个QB0全部没有输出。简单点说,就是用主机I0.0点控制从机QB0一个字节的输出;用从机I0.0点控制主机QB0一个字节的输出。 到底是不是这样子?下载程序后看看运行情况。 将分控程序下载进分站PLC,如上图将2台PLC网口用网线连接起来,红色按键按下锁定(接于主机I0.0位),此时检测到主机I0.0上升沿,分机PLC的Q0.0~Q0.7全部输出(上

S7200SMART通讯问题—以太网设置

一:TCP 协议通讯 (一)S7 200 SMART之间的TCP通讯 TCP是一个因特网核心协议。在通过以太网通信的主机上运行的应用程序之间,TCP 提供了可靠、有序并能够进行错误校验的消息发送功能。TCP 能保证接收和发送的所有字节内容和顺序完全相同。TCP 协议在主动设备(发起连接的设备)和被动设备(接受连接的设备)之间创建连接。一旦连接建立,任一方均可发起数据传送。 TCP协议是一种"流"协议。这意味着消息中不存在结束标志。所有接收到的消息均被认为是数据流的一部分。 S7 200 SMART与之间的TCP通讯可以通过两边调用OUC(开放式用户通讯)指令库中的TCP_CONNECT、TCP_SEND、TCP_RECV、DISCONNECT指令来实现。 图1.开放式用户通讯库 开放式用户通信库需要使用 50 个字节的 V 存储器。 开放式的用户通讯连接资源包括8个主动连接和8个被动连接。 只可从主程序或中断例程中调用库函数,但不可同时从这两个程序中调用。 所需条件: 1、软件版本:STEP 7-Micro/WIN SMART V2.2 2、SMART CPU固件版本:V2.2 3、通讯硬件:TP电缆(以太网电缆) 所完成的通讯任务: 将作为客户端的PLC(IP地址为192.168.0.101)中VB0-VB3的数据传送到作为服务器端的PLC(IP地址为192.168.0.102)的VB2000-VB2003中。

S7-200 SMART 客户端编程 1、设置本机IP地址 在客户端设置IP地址为192.168.0.101 图2.设置IP地址 2、建立TCP连接 调用TCP_CONNECT指令建立TCP连接。设置连接伙伴地址为192.168.0.102,远端端口为2001,本地端口为5000,连接标识ID为1。利用SM0.0使能Active,设置为主动连接。 图3.调用TCP_CONNECT指令

相关文档
最新文档