资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第,10,章,S7-200 PLC,的通信功能,1,10.1 PPI,通讯,10.1.1,概述,PPI,协议是,S7-200 PLC,中最基本的一种通信方式,通过,S7-200 CPU,自身的端口,(port0,或,Port 1),即可完成,是,S7-200 CPU,默认的通信协议。,PPI,是一种主,-,从协议,协议定义了主站和从站,网络中主站向网络中的从站发出请求,从站只能对主站发出的请求做出响应,自己不能发出请求。主站也可以对网络中其他主站的请求做出响应。,2,S7-200,的通信口为,RS-485,接口,,PC/PPI,多主站电缆用于计算机与,S7-200,之间的通信,有,RS-232C,PPI,和,USB,PPI,两种电缆。,PPI,网络连接示意图如图,10-1,所示,要求如下,:,(,1,)每个网段至多,32,个网络节点;,(,2,)每个网段最长,50,米,(,不用中继器,),,可通过中继器扩展网络,最多,9,个中继器;,(,3,)网络可包含,127,节点;,(,4,)网络可包含,32,个主站;,(,5,)网络总长,9600,米。,一个网段 一个网段 一个网段,50,米 最多,1000,米,50,米,图,10-1 PPI,网络连接示意图,3,PROFIBUS,连接器和电缆将,CP,通信卡和,S7-200,通信口连接。,不同主,/,从站之间也可以通过,PROFIBUS,连接器和电缆进行连接通信。,PPI,是主,/,从协议,默认情况下网络中的,S7-200 CPU,均为从站,其他,CPU,、,SIMATIC,编程器或文本显示器(例,TD400C,等)为主站。,PPI,网络包括单主站,PPI,网络和多主站,PPI,网络。,4,图,10-2,多主站,PPI,网络结构图,5,10.1.2,使用网络读写指令实现,PPI,通信,如果在用户程序中使能了,PPI,主站模式,一些,S7-200 CPU,在,RUN,模式下可以做主站,它们可以用网络读(,NETR,,,Net Read,)和网络写(,NETW,,,Net Write,)指令读写其他,CPU,中的数据。,S7-200 PLC,之间的,PPI,通信可以使用,PROFIBUS,网线直接连接,CPU,上,PORT 0,或,PORT1,,然后在,CPU,内调用网络读写指令即可实现。,6,1,网络读写指令,NETR/NETW,网络读取(,NETR,)指令开始一项通讯操作,通过指定的端口(,PORT,)从远程设备收集数据。网络写入(,NETW,)指令开始一项通讯操作,通过指定的端口(,PORT,)向远程设备写入数据。,每一个,NETR/NETW,指令可从,/,向远程站读取,/,写入,16,个字节信息。网络读写指令是通过,TBL,参数表来指定报文头,,TBL,参数表如表,10-1,所示。,字节,7 0,0,D,A,E,0,错误代码,1,远程地址,2,远程站的数据区指针,(,I,、,Q,、,M,、,V,),3,4,5,6,数据长度,7,数据字节,0,8,数据字节,1,.,22,数据字节,15,表,10-1,网络读写指令,TBL,7,错误代码如表,10-2,所示:,错误代码,定 义,0,无错误,1,远程站响应超时,2,接受错误:奇偶校验错,响应时帧或校验出错,3,离线错误:相同的站地址或无效的硬件引发冲突,4,队列溢出错误:激活超过,8,个的,NETR/TREW,指令,5,通信协议错误:没有使用,PPI,协议(,SMB30,)而调用,NETR/NETW,指令,6,非法参数:,NETR/NETW,表中包含非法或无效的值,7,没有资源:远程站点正在忙中(上装或下载程序),8,第,7,层错误:违反应用协议,9,信息错误:错误的数据地址或数据长度,10,保留,表,10-2,错误代码表,8,2,设定通信协议,在程序的开始必须设定通信协议。,SMB30,用于配置通信端口,0,(,Port 0,),,SMB130,用于配置通信端口,1(Port 1),,此两个特殊寄存器字节的含义如表,10-3,所示。,表,10-3,中:,pp,(校验选择)、,d,(每个字符的数据位)、,bbb,(自由口波特率)均为自由口通信时才需要设定的参数,在,PPI,通信时都设置为,0,即可。,mm,协议选择,9,3,设定,NETW,和,NETR,的,TBL,参数表,图,10-3,网络写指令,NETW,10,图,10-4,网络读指令,NETR,11,4,通信参数设定,CPU,通信端口的设定可以通过,STEP 7 Micro/WIN,软件的“系统块(,System Block,)”选项来进行。,最高地址(,Highest Address,波特率,地址间隔刷新系数(,Gap Update Factor,),12,10.1.3,使用向导实现,PPI,通信,图,10-5 “,网络读,/,写操作”对话框,13,单击图,10-5“,下一项操作”按钮,进入第二项“网络读,/,写操作”对话框,单击“下一步”,出现分配存储区对话框,接下来,要调用向导生成的子程序来实现数据的传输,主站程序及注释如图,10-6,所示。,图,10-6,主站主程序,14,10.2,自由口通信,S7-200 CPU,的串行通讯口可由用户程序控制,这种操作模式称为自由口模式。自由口通信是一种基于,RS485,硬件基础上,允许应用程序控制,S7-200 CPU,的通信端口,以实现一些自定义通信协议的通信方式。,当选择了自由口模式,程序可以使用接收中断、发送中断、发送指令(,XMT),和接收指令,(RCV,)来控制通讯操作。在自由口模式下,通讯协议完全由程序控制。,SMB30,(用于端口,0,)和,SMB31,(如果,CPU,有两个端口,则用于端口,1,)用于选择波特率和奇偶校验。,S7-200 CPU,处于自由口通信模式时,所有的通信任务和信息定义均需由用户编程实现。,只有,CPU,处于,RUN,模式时,才能进行自由端口通讯。,15,10.2.1,自由口模式下的发送和接收指令,S7-200 CPU,的自由口通信的数据字节格式必须含有一个起始位、一个停止位,数据位长度为,7,位或,8,位,校验位和校验类型(奇、偶校验)可选。,S7-200 CPU,的自由口通信定义方法为将自由口通信操作数传入特殊寄存器,SMB30,(端口,0,)和,SMB130,(端口,1,)进行端口定义,自由口通信操作数定义如表,10-4,所示。,16,自由口通信模式主要使用,XMT,(发送)和,RCV,(接收)两条指令及相应的特殊寄存器。,XMT,指令利用数据缓冲区指定要发送的字符,用于向指定通信口以字节为单位发送一串数据字符,一次最多发送,255,个字节。,表,10-5 XMT,指令的缓冲区格式,17,RCV,指令可以接收一个或多个字符,最多有,255,个字符,这些字符存储在缓冲区中。,RCV,指令的缓冲区格式如表,10-6,所示。当超界或奇偶校验错时,接收信息功能自动终止。必须为接收信息功能操作定义一个启动条件(,x,或,z,)和一个结束条件(,y,,,t,或最大字符数)。,协议支持使用字符中断控制来接收数据。,表,10-6 RCV,指令的缓冲区格式,18,10.2.2,自由口通信举例,1,自由口发送实例,要求:记录定时中断次数,将计数值转化为,ASCII,字符串,再通过,CPU224XP,的,Port0,发送到计算机串口,计算机接受并利用超级终端显示与,S7-200 CPU,通信的内容。,(,1,),PLC,编程,规定缓冲区为,VB100,到,VB114,,使用数据块进行缓冲区定义,如图,10-7,所示,,16#0D,和,16#0A,用于计算机的超级终端显示需要。,图,10-7,组态数据块,19,主程序如图,10-8,所示,根据,I 0.3,状态初始化端口,1,为自由口通信。,SBR_0,程序如图,10-9,所示,定义端口,0,为自由口,初始化定时中断。,图,10-8,自由口通信主程序,图,10-9 SBR_0,子程序,20,SBR_1,子程序如图,10-10,所示,用于定义端口,0,为普通,PPI,从站通信口。,图,10-10 SBR_1,子程序,INT_0,程序如图,10-11,所示,对定时中断计数并从端口,0,发送计数值,图,10-11 INT_0,子程序,图,10-10 SBR_1,子程序,图,10-11 INT_0,子程序,21,(,2,)超级终端设置,超级终端(,Hyper Terminal,)是,Windows,操作系统提供的通信测试程序,本例用来监测计算机和,S7-200 CPU,之间的串口通信。,超级终端组态步骤如下:,1,)执行,Windows,菜单命令“开始”,“,附件”,“,通信”,“,超级终端”,为要新建的连接输入连接名称。,2,)选择连接时要使用的串口。,3,)设置串口通信参数并保存连接,注意此处设置要与,PLC,程序中对应。,4,)使用超级终端接收,S7-200 CPU,发送的信息。,图,10-12,超级终端接受显示,22,2,自由口接收实例,要求,S7-200 CPU,从端口,0,接收计算机发送的字符串,并在信息接收中断服务程序中把接收到的第一个字节传送到,CPU,输出字节,QB0,上显示。,(,1,),PLC,编程,主程序如图,10-13,所示,根据,I 0.3,状态初始化端口,1,为自由口通信。,图,10-13,自由口通信主程序,23,SBR_0,子程序如图,10-14,所示,用于定义端口,0,为自由口,初始化接收指令。,图,10-14 SBR_0,程序,24,SBR_1,子程序如图,10-15,所示,定义端口,0,为普通,PPI,从站通信口。,INT_0,中断子程序如图,10-16,所示,在,QB0,输出接收到的第一个字节。,(,2,)配置超级终端,打开前面建立的超级终端链接,进入属性窗口,点击“,ASCII,码设置”按钮,在弹出的,ASCII,码设置窗口中,勾选“以换行符作为发送行末尾”和“本地回显键入的字符”两项。,25,10.3 MODBUS,通信,Modbus,通信协议是,Modicon,公司提出的一种报文传输协议,它广泛应用于工业控制领域,并已经成为一种通用的行业标准。不同厂商提供的控制设备可通过,Modbus,协议连成通信网络,从而实现集中控制。,10.3.1 Modbus,报文格式,Modbus,地址通常是包含数据类型和偏移量的,5,个或,6,个字符值。第一个或前两个字符决定数据类型,最后的四个字符是符合数据类型的一个适当的值。,(,1,),Modbus,主站寻址,Modbus,主设备指令支持下列,Modbus,地址:,00001,至,09999,是离散输出(线圈);,10001,至,19999,是离散输入(触点);,30001,至,39999,是输入寄存器(通常是模拟量输入);,40001,至,49999,是保持寄存器。,26,(,2,),Modbus,从站寻址,Modbus,地址与,S7-200,地址对应关系如表,10-7,所示。,000001,Q0.0,000002,Q0.1,000003,Q0.2,000127,Q15.6,000128,Q15.7,010001,I0.0,010002,I0.1,010003,I0.2,010127,I15.6,010128,I15.7,030001,AIW0,030002,AIW2,030003,AIW4,030032,AIW62,040001,HoldStart,040002,HoldStart+2,040003,HoldStart+4,04xxxx,HoldStart+2x,(,xxxx-1,),27,Modbus,通信协议有,ASCII,和,RTU,(远程传输单元)两种报文传输模式。,(,1,),ASCII,模式,ASCII,模式采用,LRC,(纵向冗余校验)方式进行校验,其报文格式如表,10-8,所示。,表,10-8 ASCII,模式的报文格式,28,(,2,),RTU,模式,RTU,模式的报文格式如表,10-9,所示。,地址,功能码:,Modbus,功能代码,,1,个字节;,Modbus,协议支持的功能码共,16,条(,116,),其中西门子,Modbus RTU,协议库支持最常用的,8,条,如表,10-10,所示;,信息数据,CRC,:循环冗余校验,两个字节。,功能码,描述,1,读取单个,/,多个线圈的实际输出状态。功能,1,返回任意数量输出点的接通,/,断开状态(,Q,)。,2,读取单个,/,多个线圈的实际输入状态。功能,2,返回任意数量的输入点的接通,/,断开状态(,I,)。,3,多个保持寄存器。功能,3,返回,V,存储器的内容。保持寄存器在,Modbus,下是字类型,在一个请求中最多可读,120,个字。,4,读单个,/,多个输入寄存器,返回模拟输入值。,5,写单个线圈(实际输出)。功能,5,将实际输出点设置为指定值。该输出点不是被强制,用户程序可以重写由,Modbus,的请求而写入的值。,6,写单个保持寄存器。功能,6,写一个单个保持寄存器的值到,S7-200,的,V,存储区。,15,写多个线圈(实际输出)。功能,15,写多个实际输出值到,S7-200,的,Q,映像区。起始输出点必须是一个字节的开始(如,Q0.0,或,Q2.0,),并且要写得输出的数量是,8,的倍数。这是,Modbus,从站协议指令的限定。这些点不是被强制,用户程序可以重写由,Modbus,的请求而写入的值。,16,写多个保持寄存器。功能,16,写多个保持寄存器到,S7-200,的,V,区。在一个请求中最多可写,120,字。,表,10-10,西门子,Modbus RTU,协议库支持最常用的,8,条功能码,表,10-9 RTU,模式的报文格式,29,RTU,模式下,报文中的每个,8,位字节被转化为两个,16,进制字符,然后以字节为单位进行传输,并采用,CRC,(循环冗余校验)方式进行校验。,目前支持,Modbus,通信的,DCS,系统和过程仪表大都采用基于串行接口的,Modbus RTU,模式,西门子提供了针对西门子,PLC Modbus RTU,通信的协议库。,如果要在西门子,PLC,上实现,Modbus ASCII,模式通信,可根据相关协议规定利用自由口通信模式自主编程实现。,30,10.3.2 Modbus,通讯协议指令,西门子专门为,Modbus RTU,通信开发了指令库,极大地简化了,Modbus RTU,通信的开发,以便于快速实现相关应用。,要使用,Modbus,指令库必须注意以下四点:,(,1,)使用,Modbus,指令库前,需要将其安装到,Step7-Micro/Win,中,,STEP 7-Micro/WIN,必须为,V3.2,或以上版本。,(,2,),S7-200 CPU,必须是固化程序修订版,2.00,或最好支持,Modbus,主设备协议库,(CPU MLFB 21x-2xx23-0XB0),。,(,3,)由于目前已经推出了针对端口,0,和端口,1,的,Modbus RTU,主站指令库,Modbus Master Port0,和,Modbus Master Port1,、以及针对端口,0,的,Modbus RTU,从站指令库,故可利用指令库实现端口,0,的,Modbus RTU,主,/,从站通信。,(,4,)一旦,CPU,端口被用于,Modbus RTU,主,/,从站协议通信时,该端口就无法用于任何其它用途,包括与,STEP 7-Micro/WIN,通讯。,31,1,Modbus,主站协议指令,西门子,Modbus,主站协议库包括两条主站协议指令:,MBUS_CTRL,指令和,MBUS_MSG,指令。,MBUS_CTRL,指令用于初始化主站通信,,MBUS_MSG,指令,(,或用于端口,1,的,MBUS_MSG_P1),用于启动对,Modbus,从站的请求并处理应答。,1,),MBUS_CTRL,指令,MBUS_CTRL,指令如图,10-17,所示。,图,10-17 MBUS_CTRL,指令块,32,2,),MBUS_MSG,指令,MBUS_MSG,指令,(,或用于端口,1,的,MBUS_MSG_P1),用于启动对,Modbus,从站的请求并处理应答。,MBUS_MSG,指令如图,10-18,所示,图,10-18 MBUS_MSG,指令,33,Count,:“计数”参数;,“计数”参数指定在该请求中读取或写入的数据元素的数目。根据,Modbus,协议,“计数”参数与,Modbus,地址存在表,10-11,对应关系。,地址,计数,0 xxxx,“,计数,”,是要读取或写入的位数,1xxxx,“,计数,”,是要读取的位数,3xxxx,“,计数,”,是要读取的输入寄存器的字数,4xxxx,“,计数,”,是要读取或写入的保持寄存器的字数,表,10-11 “,计数”参数与,Modbus,地址的对应关系,34,MBUS_MSG,错误代码,说明,0,无错误,1,应答时奇偶校验错误:仅当使用偶校验或奇校验时才发生。传输被干扰,可能会收到不正确的数据。该错误通常是由电气故障(例如错误接线或影响通讯的电噪声)引起的。,2,保留位,3,接收超时:在,“,超时,”,时间内,没有来自从站的应答。可能有以下一些原因:与从站的电气连接有问题、主设备和从站设置为不同的波特率,/,奇偶校验设置以及错误的从站地址,4,请求参数出错:一个或多个输入参数(从站、读写、地址或计数)被设置为非法值。检查输入参数的允许值。,5,Modbus,主设备未启用:在调用,MBUS_MSG,前,每次扫描时都调用,MBUS_MSG,。,6,Modbus,忙于处理另一个请求:一次只能激活一条,MBUS_MSG,指令。,7,应答时出错:收到的应答与请求不相关。这表示从站中出现了某些错误或者错误从站应答了请求。,8,应答时,CRC,错误:传输被干扰,可能会收到不正确的数据。该错误通常是由电气故障(例如错误接线或影响通讯的电噪声)引起的。,101,从站不支持在该地址处所请求的功能。,102,从站不支持数据地址:,“,地址,”,加上,“,计数,”,所要求的地址范围超出了从站所允许的地址范围。,103,从站不支持数据类型:该,“,地址,”,类型不被从站支持。,104,从站故障。,105,从站已接收消息但应答延迟:这是,MBUS_MSG,的错误。用户程序应在稍后重新发送请求。,106,从站忙,因此拒绝消息:可以在此尝试相同的请求,以获得应答。,107,从站因未知原因拒绝消息。,108,从站存储器奇偶校验错误:从站中有错误。,表,10-12 MBUS_MSG,指令错误代码含义,35,2,Modbus,从站协议指令,西门子,Modbus,从站协议库包括两条从站指令:,MBUS_INIT,指令和,MBUS_SLAVE,指令。,1,),MBUS_INIT,指令,MBUS_INIT,指令用于启用和初始化或禁止,Modbus,从站通讯。在使用,MBUS_SLAVE,指令之前,必须正确执行,MBUS_INIT,指令。指令完成后立即设定“完成”位,才能继续执行下一条指令。,MBUS_INIT,指令如图,10-19,所示,图,10-19 MBUS_INIT,指令,36,错误代码,说明,0,无错误,1,内存范围错误,2,非法波特率或奇偶校验,3,非法从站地址,4,非法,Modbus,参数值,5,保持寄存器与,Modbus,从站符号重叠,6,收到奇偶校验错误,7,收到,CRC,错误,8,非法功能请求,/,功能不受支持,9,请求中的非法内存地址,10,从站功能未启用,表,10-13 MBUS_INIT,指令错误代码的含义,37,2,),MBUS_SLAVE,指令,MBUS_SLAVE,指令被用于为,Modbus,主设备发出的请求服务,并且必须在每次扫描时执行,以便允许该指令检查和回答,Modbus,请求。,MBUS_SLAVE,指令无输入参数,在每次扫描且,EN,输入开启时执行。,错误代码,说明,0,无错误,1,内存范围错误,2,非法波特率或奇偶校验,3,非法从站地址,4,非法,Modbus,参数值,5,保持寄存器与,Modbus,从站符号重叠,6,收到奇偶校验错误,7,收到,CRC,错误,8,非法功能请求,/,功能不受支持,9,请求中的非法内存地址,10,从站功能未启用,图,10-20 MBUS_SLAVE,指令,表,10-14 MBUS_SLAVE,指令错误代码的含义,38,10.3.3,编程实例,两台,S7-200 CPU224XP,进行通信。,利用指令库编程前首先应为其分配存储区,否则,Step7-Micro/Win,编译时会报错。执行,Step7 Micro/Win,菜单命令“文件”,“,库存储区”,打开“库存储区分配”对话框,输入库存储区的起始地址,注意避免该地址和程序中已经采用或准备采用的其它地址重合,点击“建议地址”按钮,系统将自动计算存储区的地址范围。,39,(,1,)从站编程,根据要求,从站要响应主站报文,故只需编写主程序,如图,10-21,所示。,图,10-21,从站主程序,40,(,2,)主站编程,Modbus,主站也只需编写主程序,如图,10-22,所示。,运行测试即可。,图,10-22,主站主程序,41,10.4 MODEM,通信,通过,EM241,扩展模块可以将,S7-200,连接到模拟电话线上,实现与远程设备的通讯。这里,我们给出一个例子,即通过小型交换机电话网实现对,PLC,的编程诊断及两台,PLC,之间的数据交换。,10.4.1,配置主叫猫和被叫猫,启动,STEP7 Micro/Win,软件,选择项目树中的“向导,EM241,调制解调器”进入,EM241,配置向导。,42,单击图,10-23,所示的“电话号码”标签,设置远程设备电话号码,点击“新电话号码”按钮进入电话号码属性设置窗口,设置电话号码为,3,,并将其添加到右边的窗口,如图,10-24,所示。,图,10-23,配置数据传输,43,图,10-24,远程设备电话号码设置对话框,44,图,10-25,回拨配置窗口,45,10.4.2,编程,输入,/,输出,数据类型,注 释,EN,BOOL,EN,位必须开启,才能启用发至模块的命令,并且,EN,位必须保持开启,直至,“,完成,”,位被设置,表示程序完成。当,START,(开始)输入开启且模块目前不繁忙时,每次扫描均会向调制解调器模块发送一则,XFR,命令,START,BOOL,START,(开始)输入可以通过一个边缘检测元素以脉冲方式开启,该程序仅允许发送一则命令,Phone,BYTE,远程,EM241,模块的电话号码,使用在向导中配置的符号名,Data,BYTE,数据,指一个已经定义的数据传送,使用在向导中定义的符号名,Done,BOOL,完成,是当调制解调器模块完成数据传送时开启的位,表,10-15 MODx_XFR,指令含义,46,主叫“猫”对应的PLC中的主程序及注释如图10-26所示。被叫“猫”对应的PLC中的主程序及注释如图10-27所示。,通过前面的设置,现在编程计算机和两台PLC共处于一个小型的电话网络中,注意要实现远程的编程诊断必须保证两台PLC处于“STOP”运行模式。,图,10-26,主叫“猫”对应的主程序,图,10-26,主叫“猫”对应的主程序,47,10.4.3,远程诊断,通过,Modem,模块可以实现,S7-200,的远程编程与诊断,图,10-28 “,选择一个远程站连接”对话框,48,10.5 USS,通信,USS,通信总是由主站发起,,USS,主站不断循环轮询各个从站,从站根据收到的指令,决定是否以及如何响应。从站永远不会主动发送数据。从站在以下条件满足时应答:,(,1,)接收到的主站报文没有错误。,(,2,)本从站在接收到主站报文中被寻址。,USS,协议的特点为:,(,1,)支持多点通信(因而可以应用在,RS 485,等网络上)。,(,2,)采用单主站的“主,从”访问机制。,(,3,)一个网络上最多可以有,32,个节点(最多,31,个从站)。,(,4,)简单可靠的报文格式,使数据传输灵活高效。,(,5,)容易实现,成本较低。,49,10.5.1 USS,通信报文格式,(,1,)字符帧格式:,USS,的字符传输格式符合,UART,规范,即使用串行异步传输方式。,USS,在串行数据总线上的字符传输帧为,11,位长度,如表,10-16,所示。,连续的字符帧组成,USS,报文。在一条报文中,字符帧之间的间隔延时要小于两个字符帧的传输时间(当然这个时间取决于传输速率)。,S7-200 CPU,的自由口通信模式正好能够支持上述字符帧格式。,表,10-16,字符帧格式,50,(,2,)报文帧格式,:,协议的报文简洁可靠,高效灵活。报文由一连串的字符组成,协议中定义了它们的特定功能,如表,10-17,所示。,在,ADR,和,BCC,之间的数据字节,称为,USS,的净数据。主站和从站交换的数据都包括在每条报文的净数据区域内。净数据区由,PKW,区和,PZD,区组成,如表,10-18,所示。,51,10.5.2 USS,指令,STEP 7-Micro/WIN USS,指令库提供,14,个子程序、,3,个中断例行程序和,8,条指令,极大地简化了,USS,通信的开发和实现。使用,USS,指令库必须满足以下需求:,(,1,)将端口,0,指定用于,USS,通讯。,(,2,)在使用,USS,协议通讯的程序开发过程中,应该使用带两个通讯端口的,S7-200 CPU,(,3,),USS,指令影响与端口,0,上自由接口通讯相关的所有,SM,位置。,(,4,),USS,指令的变量要求一个,400,个字节,V,内存块。,(,5,)某些,USS,指令也要求有一个,16,个字节的通讯缓冲区。,52,1,USS_INIT,指令,使用,USS,库指令前必须使用,USS_INIT,指令初始化,USS,通信参数,如图,10-29,所示。,图,10-29,初始化,USS,通信指令,53,表,10-19 Active,参数设置,54,2,USS_CTRL,指令,USS_CTRL,指令用于对单个驱动装置进行运行控制,利用了,USS,协议中的,PZD,数据传输,控制和反馈信号更新较快,如图,10-30,所示。,图10-30 USS_CTRL 指令块,55,3,USS,读,/,写参数指令,USS,指令库中共有,6,种参数读写功能块,分别用于读写驱动装置中不同规格的参数,如表,10-20,所示。,USS,参数读写指令采用与,USS_CTRL,功能块不同的数据传输方式。,表,10-20 USS,读,/,写功能块,56,(,1,)读参数指令,图,10-31,所示的程序段读取实际的电动机电流值(参数,r0068,)。由于此参数是一个实数,因此选用实型参数读功能块。,参数读写指令必须与参数的类型配合。,图,10-31,读参数指令,57,(,2,)写参数指令,写参数指令的用法与读参数指令类似,与读参数指令的区别是参数是功能块的输入。,(,3,)读写多个参数,在任一时刻,USS,主站内只能有一个参数读写功能块有效,否则会出错。因此如果需要读写多个参数(来自一个或多个驱动装置),必须在编程时进行读写指令之间的轮替处理。,58,10.5.3 MM 440,变频器的参数设置,以下只涉及与,S7-200,控制器连接相关的参数。,MM 440,的参数分为几个访问级别,以便于过滤不需要查看的部分。,(,1,)控制源参数设置,控制源由参数,P0700,设置,如表,10-21,所示:,59,表,10-21,控制源参数设置,60,(2)设定源控制参数设置,设定值控制驱动装置的转速/频率等功能。,设置源由参数 P1000 设置,如表10-22所示。,表10-22 设定源控制参数设置,61,(,3,),USS,通信控制的参数设置,控制源和设定源之间可以自由组合,根据工艺要求可以灵活选用。我们以控制源和设定源都来自,COM Link,上的,USS,通信为例,简介,USS,通信的参数设置。,主要参数有:,P0700,P1000,P2009,P2010,P2011,P2012,P2013,P2014,P0971,62,10.6 S7-200 PLC,与,S7-300 PLC,的,MPI,通信,MPI(MultiPoint Interface),通信是当通信速率要求不高、通信数据量不大时,可以采用的一种简单经济的通信方式。,63,MPI,STEP 7,S7-22x,PG/PC,19.2,或,187.5 Kb,S7-400,M7-400,S7-300,M7-300,S7-115U/H,S5-135U,S5-155U/H,SIMATIC 505,S5-95U,OP,图,10-32 MPI,网络结构配置,64,通过MPI实现 PLC之间的通信有三种方式:,(1)全局数据包通信方式,(2)组态连接通信方式,(3)无组态连接通信方式,S7-300 与 S7-200 的 MPI 通信,只能采用单边编程方式,即 S7-200 作为服务器,无需任何编程。,65,S7-200,与,S7-300,的,MPI,通信的硬件包括:,(,1,),S7-300 PLC,(,2,),S7-200 PLC,(,3,),PC Adapter,或,CP5611,。,(,4,),Profibus,总线连接器及电缆。,软件要求包括:,(,1,),STEP7 V5.2,或以上。,(,2,),Step7-Micro/Win SP4,或以上。,66,步骤如下:,(,1,)在,STEP7,中新建,S7-300,项目,按硬件安装顺序和订货号依次插入机架、电源、,CPU,进行硬件组态。,(,2,)在,Step7-Micro/Win,的系统块中,设定,S7-200,的站地址为,4,,通信波特率,187.5kbps,。,(,3,)将组态设置下载到,S7-200 PLC,中。,(,4,)使用,Profibus,电缆连接,CPU314-2DP,的,X1 DP,口 和,CPU 224XP,的,DP0,口。,67,为实现,S7-300,作为客户机,对服务器,S7-200,的数据读写,需要在,STEP 7,中编写两个网络如图,10-33,和图,10-34,所示。,图,10-33 X_PUT,网络,68,图,10-34,所示网络,2,中,当,M1.5,为,1,时,,S7-300,会将,S7-200,的,IB0,的数值读取到,S7-300,的,MB7,中。,将,S7-300,项目下载,运行测试即可。,图,10-34 X_GET,网络,69,10.7 Profibus-DP通信,Profibus,符合国际标准,IEC61158,,是目前国际上通用的现场总线标准之一,并凭借其领先的技术特点、严格的认证规范、众多厂商的支持,逐渐发展为业界优良的现场级通信网络解决方案。,Profibus,已成为机械制造行业的标准。,PROFIBUS,协议采用,ISO/OSI,模型的第一层、第二层和第七层。从用户角度看,,PROFIBUS,提供了三种通信协议类型:,DP,、,FMS,和,PA,。,70,另外,对于西门子,PLC,系统,,PROFIBUS,提供了两种更为优化的通信方式:,S7,通信和,S5,兼容通信。,(,1,),PROFIBUS-S7,(,PG/OP,通信),(,2,),PROFIBUS-FDL,(与,s5,兼容通信),PROFIBUS,是一个令牌网络结构,采用主从协议,一个网络中有若干个被动节点,(,从站,),,而它的逻辑令牌只含有一个主动节点,(,主站,),,这样的网络为纯主一从系统。,Profibus-DP,网络配置示意图如图,10-35,所示。,71,图,10-35 Profibus-DP,网络配置示意图,72,图,10-36 S7-200&S7-300 PROFIBUS-DP,通信网络,73,S7-300,与,S7-200,通过,EM277,进行,PROFIBUS DP,通讯,只需在,STEP7,中组态,S7-300,和,EM 277,,,S7-200,端只需对应存放将要进行通讯的数据,无需组态和编程。,图,10-37,插入,EM277,从站,74,10.8,工业以太网通信,10.8.1,工业以太网概述,1,OSI,参考模型,图,10-38 OSI,参考模型,75,OSI,参考模型的上三层通常称为应用层,用来处理用户接口、数据格式和应用程序的访问;下四层负责定义数据的物理传输介质和网络设备。如图,10-39,和,10-40,所示。,图,10-39,对等层通信结,图,10-39,对等层通信结,76,2,以太网技术,底层网络由物理层和,MAC,层(介质访问子层)构成。,IEEE802.3,以“以太网”为技术原形,在,MAC,层上采用,CSMA/CD,(带冲突检测的载波侦听多路存取控制协议)的介质访问控制技术来处理通信中的冲突。,在以太网模型的网络层和传输层上常采用,TCP/IP,协议组。其中,IP,(,Internet Protocol),称为网际通信协议,对应网络层;,TCP(Transmission Control Protocol),称为传输控制协议,对应传输层,保证数据被可靠地传送。,77,3.,工业以太网,将以太网高速传输技术引入到工业控制领域,使得企业内部互联网,(,如,Intrunet),,外部互联网,(Extrunet),和国际互联网,(Internet),提供的技术和广泛应用已经进入生产和过程自动化。工业以大网和传统以太网的比较如表,10-23,所示。,功能,工业以太网设备,普通商用以太网设备,元器件和设计,工业级,商用级,工作电压,24VDC,220VAC,电源冗余,双电源,一般没有,安装方式,DIN,导轨安装,桌面,机架,工作温度,0-60,度,5-40,度,冷却方式,无风扇,有风扇,电磁兼容性标准,EN50081-2(EMC,工业,),EN50082-2(EMC,工业,),EN50081-1(EMC,办公室,),EN50082-1(EMC,办公室,),冗余环网切换时间,小于,500ms,30-90s,MTFB,(可靠性),至少,10,年,3-5,年,要求备件供货时间,10,年,3-5,年,表,10-23,工业以大网和传统以太网的比较,78,工业以太网的技术优势如下:,1,可以满足控制系统各个层次的要求,使企业信息网络与控制网络得以统一;,2,设备成本下降;,3,用户拥有成本下降;,4,以太网易与,Internet,集成;,5,软硬件开发方便;,6,避免工业总线技术游离于计算机网络技术的发展主流之外,相互促进。,工业以太网中的关键问题包括:,1,通信实时性;,2,对环境的适应性和可靠性;,3,总线供电;,4,本质安全性。,79,4,西门子工业以太网(,SIMATIC NET,),西门子公司通过,SIMATIC NET,提供了开放的、适用于工业环境下各种控制级别的不同的通信系统。这些通信系统均基于国家和国际标准,符合,ISO/OSI,模型。,SIMATIC NET,包括以下内容:组成通信网络的媒介、媒介附件和传输组件以及相应的传输技术,数据传输的协议和服务,用于连接,PLC,或,PC,的通信模板(通信处理器“,CP”,)。,通过以太网扩展模块(,CP243-1,)或互联网扩展模块(,CP243-1 IT,),,S7-200,将能支持,TCP/IP,以太网通讯。,80,10.8.2 S7-200 PLC,之间的以太网通信,要通过以太网与,S7-200 PLC,通信,,S7-200,必须使用,CP243-1,(或,CP243-1 IT,)以太网模块,,PC,机上也要安装以太网网卡。,本例实现两台带有,CP243-1IT,扩展模块的,S7-200 CPU,的以太网连接以及通过以太网对,PLC,进行编程和诊断。,81,图,10-42 “,配置连接”对话框,82,图,10-43,客户机配置连接对话框,83
展开阅读全文