书签 分享 收藏 举报 版权申诉 / 64
上传文档赚钱

类型S71200PLC编程及应用第4版课件第6章.ppt

  • 上传人(卖家):晟晟文业
  • 文档编号:3726085
  • 上传时间:2022-10-07
  • 格式:PPT
  • 页数:64
  • 大小:1.41MB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《S71200PLC编程及应用第4版课件第6章.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    S71200PLC 编程 应用 课件
    资源描述:

    1、第6章 S7-1200的通信与故障诊断6.1 网络通信基础网络通信基础6.1.1 计算机通信的国际标准计算机通信的国际标准 1开放系统互连模型开放系统互连模型 开放系统互连模型详细描述了通信功能的7个层次,某些现场总线只使用第1、2、7层。物理层的下面是物理媒体,例如双绞线和光纤等。物理层定义了传输媒体端口的机械、电气功能和规程的特性。数据链路层的数据以帧为单位传送,每一帧包含数据和同步信息、地址信息和流量控制信息等。通过校验、确认和要求重发等方法实现差错控制。应用层为用户的应用服务提供信息交换,为应用接口提供操作标准。2.IEEE 802通信标准通信标准 (1)CSMA/CD(带冲突检测的载

    2、波侦听多路访问)的基础是以太网。每个站都是平等的,为了防止冲突,采用“先听后讲”和“边听边讲”的发送方法。其控制策略是竞争发送、广播式传送、载体监听、冲突检测、冲突后退和再试发送。以太网越来越多地在底层网络使用。(2)令牌总线 令牌绕逻辑环周而复始地传送。要发送报文的站等到令牌传给自己,判断为空令牌时才能发送报文。令牌沿环网循环一周后返回发送站时,如果报文已被接收站复制,发送站将令牌置为“空”,送上环网继续传送,以供其他站使用。(3)主从通信方式 主从通信网络有一个主站和若干个从站。主站向某个从站发送请求帧,该从站接收到后才能向主站返回响应帧。主站按事先设置好的轮询表的排列顺序对从站进行周期性

    3、的查询。3现场总线及其国际标准现场总线及其国际标准 IEC对现场总线的定义是“安装在制造和过程区域的现场装置与控制室内的自动控制装置之间的数字式、串行、多点通信的数据总线”。IEC 61158第4版采纳了经过市场考验的20种现场总线。其中约一半是实时以太网。西门子公司支持类型3(PROFIBUS)和类型10(PROFINET)。IEC 62026是供低压开关设备与控制设备使用的控制器电气接口标准。西门子公司支持执行器传感器接口(AS-i)。6.1.2 SIMATIC通信网络通信网络 1SIMATIC NET 西门子的工业自动化通信网络SIMATIC NET的顶层为工业以太网,可以集成到互联网。

    4、PROFIBUS用于少量和中等数量数据的高速传送。AS-i是底层的低成本网络。通用总线系统KNX用于楼宇自动控制。IWLAN是工业无线局域网。各个网络之间用链接器或有路由器功能的PLC连接。MPI(多点接口)是SIMATIC产品使用的内部通信协议,可以建立传送少量数据的低成本网络。PPI(点对点接口)是用于S7-200和S7-200 SMART的通信协议。点对点(PtP)通信用于特殊协议的串行通信。2PROFINET PROFINET是基于工业以太网的开放的现场总线标准。使用PROFINET IO,现场设备可以直接连接到以太网。通过代理服务器,PROFINET可以透明地集成现有的PROFIBU

    5、S设备。PROFINET的实时(RT)通信功能典型的更新循环时间为110ms。同步实时(IRT)功能用于高性能的同步运动控制,响应时间为0.251ms。IRT通信需要特殊的交换机的支持。PROFINET同时用一条工业以太网电缆实现IT集成化领域、实时自动化领域和同步实时通信。PROFINET支持故障安全通信的标准行规PROFIsafe和驱动器配置行规PROFIdrive。3PROFIBUS PROFIBUS是是基于RS-485的上一代的现场总线,传输速率最高12Mbit/s,最多可以接127个从站。PROFIBUS提供了下列3种通信服务:1)PROFIBUS-DP(分布式外部设备)用于PLC与

    6、分布式I/O(例如ET 200)的通信。主站之间的通信为令牌方式,主站与从站之间为主从方式。2)PROFIBUS-PA(过程自动化)用于过程自动化的现场传感器和执行器的低速数据传输,可以用于防爆区域的设备与PLC的通信。使用屏蔽双绞线电缆,由总线提供电源。3)PROFIBUS-FMS(现场总线报文规范)已被以太网代替,用得很少。此外还有用于运动控制的总线驱动技术PROFIdrive和故障安全通信技术PROFIsafe。6.2 基于以太网的开放式用户通信基于以太网的开放式用户通信 S7-1200/1500的CPU集成的PROFINET接口是10M/100Mbit/s的RJ45以太网口,可以使用标

    7、准的或交叉的以太网电缆。支持PROFINET、开放式用户通信和S7通信。6.2.1 S7-1200之间的之间的ISO-on-TCP和和TCP协议通信协议通信 1开放式用户通信开放式用户通信 基于CPU集成的PN接口的开放式用户通信用功能块建立和断开通信连接,发送和接收数据。TSEND_C和TRCV_C同时具有建立、断开连接和发送、接收数据的功能。2组态组态CPU的硬件的硬件 生成项目“1200_1200ISO_C”,两台PLC为CPU 1215C,PN接口的IP地址为默认的192.168.0.1和192.168.0.2,子网掩码为默认的255.255.255.0。启用MB0做它们的时钟存储器字

    8、节。3组态组态CPU之间的通信连接之间的通信连接 打开网络视图,用“拖拽”的方法连接PLC_1和 PLC_2的以太网接口,出现绿色的以太网线和名称为“PN/IE_1”的连接。4验证通信是否实现的典型程序结构验证通信是否实现的典型程序结构 双方生成保存发送和接收数据的数据块DB1(SendData)和DB2(RcvData),去掉“优化的块访问”属性。在数据块中生成有100个整数元素的数组。在OB100中用指令FILL_BLK将双方DB1中要发送的100个整数初始化为16#1111和16#2222,将保存接收到的数据的DB2的100个整数清零。在OB1中用周期为0.5s的时钟存储器位M0.3的上

    9、升沿,将要发送的第一个字DB1.DBW0加1。图6-3 数据块SendData与OB100中的程序 5调用调用TSEND_C和和TRCV_C 在OB1中调用TSEND_C指令发送数据,调用TRCV_C指令接收数据,自动生成它们的背景数据块。6组态连接参数组态连接参数 选中指令TSEND_C,然后选中下面的巡视窗口的“属性 组态 连接参数”,伙伴的“端点”设为PLC_2,连接类型为ISO-on-TCP。单击“本地”的“连接数据”下拉式列表中的“”,自动生成连接描述数据块“PLC_1_Send_DB”(DB5)。用同样的方法生成PLC_2的接描述数据块“PLC_2_Send_DB”(DB5)。用单

    10、选框设置PLC_1主动建立连接。采用默认的传输服务访问点TSAP。PLC_2组态“连接参数”的对话框与图6-6的结构相同。7TSEND_C和和TRCV_C的参数的参数 TSEND_C的参数的意义如下:在请求信号REQ的上升沿,根据DB5中的连接描述发送数据。发送成功后,DONE在一个扫描周期内为1。CONT为1时建立和保持连接,为0时断开连接。LEN为默认值0时,发送DATA定义的所有的数据。COM_RST为1时,断开现有的通信连接,新的连接被建立。BUSY为1时任务尚未完成。ERROR为1时出错,STATUS中是错误的详细信息。指令TRCV_C的EN_R为1时准备好接收数据,CONT和EN_

    11、R均为1时连续接收数据。RCVD_LEN是实际接收的数据的字节数。图6-5 TSEND_C和TRCV_C指令 8硬件通信实验硬件通信实验的典型方法的典型方法 通过交换机或路由器连接计算机和两块CPU的以太网接口,下载程序后令两块CPU为RUN模式。用监控表监视两块CPU的DB2中接收到的部分数据。将两块CPU的TSEND_C和TRCV_C的参数CONT(M10.1和M11.1)均置位为1,建立起通信连接。双方的DB2.DBW0应不断增大。通信正常时令M10.1或M11.1为0,建立的连接被断开,CPU将停止发送或接收数据。接收方的DB2.DBW0停止变化。9仿真实验仿真实验 选中PLC_1,单

    12、击工具栏上的“开始仿真”按钮,出现S7-1200的仿真软件,下载程序后仿真PLC进入RUN模式。用同样的方法将PLC_2的程序下载到另一台仿真PLC。调试程序的方法与硬件PLC相同。使用TCP协议的通信:将项目另存为名为“1200_1200TCP_C”的项目。将“连接类型”改为TCP,“伙伴端口”为默认的2000,用户程序和组态数据不变。两个项目的实验方法和实验结果相同。6.2.2 S7-1200之间的之间的UDP通信通信 1组态连接参数组态连接参数 项目“1200_1200UDP”的硬件结构与上一节的相同。通信双方在OB1中用指令TCON建立连接,用指令TDISCON断开连接。选中TCON,

    13、然后选中巡视窗口的“属性 组态 连接参数”,设置通信伙伴为“未指定”,连接类型为UDP。不能设置“主动建立连接”单选框。单击“连接数据”下拉式列表中的“”,自动生成连接描述数据块“PLC_1 _ Connection _DB”(DB4)。本地端口号采用默认的2000。双方组态“连接参数”的对话框的结构相同。2生成定义生成定义UDP连接参数的数据块连接参数的数据块 在“添加新块”对话框生成类型为TADDR_Param的全局数据块DB7,将它的名称修改为“接口参数”。UDP连接需要用DB7来设置远程通信伙伴的IP地址和端口号,双方的本地端口号应相同。在程序运行过程中修改DB7中通信伙伴的IP地址和

    14、端口号,可以和不同的伙伴通信。3编写发送与接收数据的程序编写发送与接收数据的程序 在OB1中调用TUSEND和TURCV指令。在M0.3的上升沿,每0.5s TUSEND发送一次DB1中的数据。TURCV的接收使能输入EN_R为TRUE,准备好接收数据,接收的数据用DB2保存。LEN为默认值0时,发送或接收用参数DATA定义的所有的数据。RCVD_LEN是实际接收的数据字节数。参数ADDR的实参为DB7。其他参数的意义与TSEND_C和TRCV_C的同名参数相同。图6-10 发送与接收数据的程序 4通信实验通信实验 UDP通信不能仿真。用以太网电缆连接计算机和两块CPU的以太网接口,将用户程序

    15、和组态信息分别下载到两块CPU,令它们处于运行模式。用双方的监控表分别监控两块CPU的TCON和TDISCON指令的REQ输入M10.0和M10.4,以及DB2中接收到的DBW0、DBW2和DBW198。用DB7设置远程通信伙伴的IP地址和端口号,运行时用监控表令双方的TDISCON的REQ为0,在TCON的REQ(M10.0)的上升沿,建立起通信连接,开始传输数据。可以用TDISCON指令的请求信号M10.4的上升沿断开连接,停止数据传输。6.2.3 S7-1200与与S7-300/400之间的开放式用户通信之间的开放式用户通信 1S7-1200与S7-300/400的以太网通信概述 S7-

    16、1200与S7-300/400集成的PN接口之间的开放式用户通信可以使用ISO-on-TCP、TCP和UDP协议。可以用STEP 7 V5.5对S7-300/400编程。本节主要介绍S7-300/400基于博途的开放式用户通信。2S7-300/400的组态与编程的组态与编程 项目“300_1200ISO_C”的PLC_1为CPU 314-2PN/DP,PLC_2为CPU 1215C。它们的IP地址分别为192.168.0.1和192.168.0.2。启用双方的MB0为时钟存储器字节。为PLC_1生成DB1和DB2,在数据块中分别生成有100个整数元素的数组。不启用“优化的块访问”属性。在OB1

    17、00中预置DB1中要发送的数据区,将DB2中保存接收到的数据的数据区清0。在循环周期为0.5s的OB33中,用ADD指令将要发送的第一个字DB1.DBW0加1。在OB1中调用指令TCON建立连接,调用TDISCON断开连接。DB3是组态连接时生成的连接描述数据块。选中TCON,然后选中下面的巡视窗口的“属性 组态 连接参数”。设置通信伙伴的“端点”为“未指定”,IP地址为192.168.0.2。连接类型为TCP,由S7-300主动建立连接,本地端口号采用默认的2000。在OB1中调用TSEND,每0.5s发送一次DB1中的100个整数;调用TRCV接收数据,将接收到的100个整数保存到DB2。

    18、LEN是发送或接收的最大字节数,RCVD_LEN是实际接收到的字节数。3S7-1200的组态与编程的组态与编程 PLC_2的OB1中调用TSEND_C和TRCV_C的程序与图6-5中的基本上相同。组态“连接参数”的对话框与图6-12的结构相同,只是“本地”与“伙伴”列的内容相互交换,由伙伴主动建立连接。4通信实验通信实验 通信实验的方法和结果与项目“1200_1200 ISO_C”的基本上相同。用监控表监控双方数据的收、发,和DB2中接收到的数据。5使用TCP连接的通信 项目“300_1200ISO_C”与“300_1200TCP_C”基本上相同。将连接类型改为“TCP”,采用默认的伙伴端口2

    19、000。S7-1200和S7-300/400之间也可以使用UDP协议通信。6.3 S7协议通信协议通信6.3.1 S7-1200之间的单向之间的单向S7协议通信协议通信 1S7协议协议 S7协议是专为西门子控制产品优化设计的通信协议,它是面向连接的协议。连接是指两个通信伙伴之间为了执行通信服务建立的逻辑链路。S7连接是需要组态的静态连接,静态连接要占用CPU的连接资源。S7-1200 仅支持 S7 单向连接。单向连接中的客户机(Client)是向服务器(Server)请求服务的设备,客户机调用GET/PUT指令读、写服务器的存储区。服务器是通信中的被动方,用户不用编写服务器的S7通信程序,S7

    20、通信是由服务器的操作系统完成的。2创建创建S7连接连接 在名为“1200_1200IE_S7”的项目中,PLC_1为客户机,PLC_2为服务器。采用默认的IP地址和子网掩码。组态时启用MB0为时钟存储器字节。打开网络视图,单击按下“连接”按钮,设置连接类型为S7连接。用“拖拽”的方法建立两个CPU的PN接口之间的名为“S7_连接_1”的连接。单击网络视图右边竖条上向左的小三角形按钮,打开弹出的视图中的“连接”选项卡,可以看到生成的S7连接的详细信息。连接ID为16#100。选中“S7_连接_1”,再选中巡视窗口的“特殊连接属性”,勾选复选框“主动建立连接”。选中“地址详细信息”,可以看到通信双

    21、方默认的TSAP(传输服务访问点)。如果使用固件版本为V4.0及以上的CPU作为S7通信的服务器,需要选中服务器设备视图中的CPU,再选中巡视窗口中的“属性 常规 防护与安全 连接机制”,勾选“允许来自远程对象的PUT/GET通信访问”复选框。3编写程序编写程序 为PLC_1生成DB1和DB2,为PLC_2生成DB3和DB4,在这些数据块中生成由100个整数组成的数组。不要启用数据块属性中的“优化的块访问”功能。在时钟脉冲M0.5的上升沿,GET指令每1s读取PLC_2的DB3中的100个整数,用本机的DB2保存。PUT指令每1s将本机的DB1中的100个整数写入PLC_2的DB4。客户机最多

    22、可以分别读取和改写服务器的4个数据区。PLC_2在S7通信中作服务器,不用为它编写调用指令GET和PUT的程序。在双方的OB100中,预置DB1和DB3中要发送的100个字,将保存接收到的数据的DB2和DB4中的100个字清0。在双方的OB1中,用周期为0.5s的时钟脉冲M0.3的上升沿,将要发送的第1个字加1。5仿真实验仿真实验 选中项目树中的PLC_1,单击工具栏上的“开始仿真”按钮,将程序和组态数据下载到仿真PLC。选中PLC_2,单击工具栏上的“开始仿真”按钮,将程序和组态数据下载到仿真PLC,二者被切换到RUN模式后,用两台PLC的监控表监控接收到的数据。6.3.2 S7-1200与

    23、其他与其他S7 PLC之间的之间的S7通信通信 1S7-300作客户机的作客户机的S7通信通信 项目名称为“300_1200IE_S7”,PLC_1为CPU 314-2PN/DP,PLC_2为CPU 1215C。启用双方的MB0为时钟存储器字节。在网络视图中创建S7连接,PLC_1的通信伙伴为“未知”。选中S7连接后选中巡视窗口中的“常规”,设置伙伴的IP地址为192.168.0.2。连接的本地ID为1,为单向连接,由本地站点主动建立连接。本地和伙伴的TSAP分别为10.02和03.00。为PLC_1生成DB1和DB2,为PLC_2生成DB3和DB4,在这些数据块中生成由100个整数组成的数组

    24、。不要启用数据块属性中的“优化的块访问”功能。PLC_1做S7通信的客户机。在它的OB1中调用 GET和PUT指令。通信的实验方法与例程“1200_1200IE_S7”相同。不能仿真。2 S7-200 SMART作作S7通信的服务器通信的服务器 例程“1200_SMART_S7”中,只有做客户机的CPU 1215C,启用MB0为时钟存储器字节。右键单击网络视图中CPU的以太网接口,执行“添加子网”命令,生成一个名为“PN/IE_1”的以太网。单击工具栏上的“连接”,设置连接类型为S7连接。右键单击CPU,执行“添加新连接”命令。在“创建新连接”对话框中,采用默认的连接类型“S7连接”,默认的连

    25、接伙伴为左边窗口的“未指定”。多选框“主动建立连接”被自动选中,由S7-1200建立连接。单击“添加”和“关闭”按钮,新连接被创建。连接的本地ID为16#100,将在编程中使用。选中S7连接后选中巡视窗口中的“常规”,设置伙伴的IP地址为192.168.0.2。连接的本地ID为1,为单向连接,由本地站点主动建立连接。本地和伙伴的TSAP分别为10.01和03.01。为CPU 1215C生成DB3和DB4,在数据块中生成由100个整数组成的数组。不要启用“优化的块访问”属性。在CPU 1215C的OB1中调用指令GET和PUT。S7-200 SMART的V区被映射为S7-1200的DB1,要读取

    26、的S7-200 SMART的VB100VB299被映射为P#DB1.DBX100.0 INT 100,要写入的S7-200 SMART的VB300VB499被映射为P#DB1.DBX300.0 INT 100。分别用DB3和DB4保存S7-1200要要写入服务器的数据和从服务器读取到的数据。时钟脉冲M0.5每秒钟将发送的第一个字DB3.DBW0加1。在OB100中初始化DB3中的地址区,将DB4中的各个字清0。“SMART做服务器.smart”是S7-200 SMART的程序,以太网端口的IP地址为192.168.0.2,在OB1中初始化V区中要发送的VB100VB299,将保存接收到的数据的

    27、VB300VB499清0,每秒钟将要发送的第一个字VW100加1。用状态图表监控接收到的数据。实验的方法与项目“1200_1200IE_S7”差不多。6.4 PROFIBUS-DP、PROFINET与与AS-i网络通信网络通信 PROFIBUS-DP与PROFINET属于主从通信,只需要组态,就能实现IO控制器和IO设备之间、DP主站和从站之间的周期性通信。6.4.1 S7-1200作作IO控制器和控制器和DP主站主站 1PROFINET网络的组态网络的组态 S7-1200最多可以带16个IO设备,最多256个子模块。新建项目“1200作IO控制器”中,打开网络视图,将ET 200S PN的接

    28、口模块IM151-3 PN拖拽到网络视图,生成IO设备ET 200SP PN。将电源模块、DI、2DQ和和2AQ模块插入14号槽。采用默认的IP地址,设备编号为1。IO控制器通过设备名称对IO设备寻址。选中IM151-3 PN的以太网接口,再选中巡视窗口中的“以太网地址”,设置IO设备的名称为et 200s pn 1。右键单击网络视图中CPU 的PN接口,执行菜单命令“添加IO系统”。单击ET 200S PN上蓝色的“未分配”,将它分配给IO控制器。在ET 200S PN的设备视图中,打开它的设备概览。可以看到分配给它的信号模块的 I、Q地址。用这些地址直接读、写ET 200S的模块。用同样的

    29、方法生成第二台IO设备ET 200S PN,将它分配给IO控制器CPU 1215C。插入电源模块和信号模块。采用默认的IP地址,设备编号为2。将它的设备名称改为et 200s pn 2。2分配设备名称分配设备名称 如果IO设备中的设备名称与组态的设备名称不一致,连接IO控制器和IO设备后,它们的故障LED亮。右键单击网络视图中的1号设备,执行快捷菜单命令“分配设备名称”。单击“更新列表”按钮,“网络中的可访问节点”列表中出现网络上的两台ET 200S PN原有的设备名称。用“PROFINET设备名称”选择框选中组态的1号设备的名称。选中IP地址为192.168.0.2的可访问节点,单击“分配名

    30、称”按钮,组态的设备名称被分配和下载给1号设备。分配好后,IO设备的状态变为“确定”。两台IO设备的设备名称都分配好以后,IO设备和IO控制器上的ERROR LED熄灭。为了验证通信是否正常,在OB1中编写简单的程序,观察是否能用IO设备的输入点控制它的输出点。3S7-1200做做DP主站主站 S7-1200的DP主站模块为CM 1243-5,传输速率960012Mbit/s。新建项目“1200作DP主站”。PLC_1为CPU 1215C,打开它的设备视图,将右边的硬件目录窗口的CM 1243-5主站模块拖拽到CPU左侧的101号槽。DP主站地址为默认值2。打开网络视图,将右边的硬件目录窗口的

    31、ET 200S的IM151-1标准型接口模块拖拽到网络视图。打开ET 200S的设备视图,插入电源模块和信号模块。右键单击DP主站模块的DP接口,执行快捷菜单命令“添加主站系统”,生成DP主站系统。右键单击ET 200S的DP接口,将它连接到DP主站系统。用同样的方法生另一个DP从站ET 200S,插入电源模块和信号模块。将该从站连接到DP主站系统。选中主站和从站的DP接口,可用巡视窗口设置PROFIBUS地址。打开ET 200S的设备视图,在设备概览中可以看到分配给它的模块的S7-1200的I、Q地址。6.4.2 S7-1200作作IO设备和设备和DP智能从站智能从站 1生成生成IO控制器和

    32、控制器和IO设备设备 项目“1200做1500的IO设备”的PLC_1(CPU 1511-1 PN)为IO控制器。CPU 1215C是智能IO设备。右键单击网络视图中CPU 1511-1 PN的PN接口,执行快捷菜单命令“添加IO系统”,生成PROFINET IO系统。选中网络视图中PLC_2的PN接口,再选中巡视窗口中的的“属性 常规 操作模式”,勾选复选框“IO设备”,CPU 1215C做智能IO设备。用“已分配的IO控制器”选择框将IO设备分配给IO控制器PLC_1的PN接口。2组态智能组态智能设备设备通信的传输区通信的传输区 IO设备的传输区(I、Q地址区)是IO控制器与智能IO设备的

    33、用户程序之间的通信接口。IO控制器与智能IO设备之间通过传输区自动地周期性地进行数据交换。通信双方用组态的Q区发送数据,用组态的 I 区接收数据。选中网络视图中PLC_2的PN接口,然后选中巡视窗口的“属性 常规 操作模式 智能设备通信”,双击右边窗口“传输区”列表中的,在第一行生成“传输区_1”。选中左边窗口中的“传输区_1”,在右边窗口定义IO控制器(伙伴)发送数据的Q区和智能设备(本地)接收数据的 I 区。组态的传输区不能与硬件使用的地址区重叠。用同样的方法生成“传输区_2”,与传输区_1相比,只是交换了地址的I、Q类型,其他参数与图6-29的相同。图6-28 组态好的智能设备通信的传输

    34、区 3编写验证通信的程序与通信实验编写验证通信的程序与通信实验 在PLC_1的OB100中,给QW130和QW158设置初始值16#1511,将IW130和IW158清0。在PLC_1的OB1中,用时钟存储器位M0.3的上升沿,每500ms将要发送的第一个字QW128加1。PLC_2与PLC_1的程序基本上相同,其区别在于给QW130和QW158设置的初始值为16#1215。分别选中PLC_1和PLC_2,下载它们的组态信息和程序。做好在线操作的准备工作后,右键单击网络视图中的PN总线,执行“分配设备名称”命令,用出现的对话框分配IO设备的名称。用以太网电缆连接主站和从站的PN接口,运行时用监

    35、控表监控双方接收到IW128、IW130和IW158,检查通信是否正常。4S7-1200作作DP智能从站智能从站 新建项目“1200做DP从站”,PLC_1是是配有DP主站模块CM 1243-5的CPU 1214C,PLC_2是配有DP从站模块CM 1242-5的CPU 1215C。在网络视图中用拖拽的方法连接主站和从站的DP接口,自动生成DP主站系统。主站和从站的DP站地址分别为默认的2和3。选中从站模块的DP接口,然后选中下面的巡视窗口的“属性 常规 操作模式 智能从站通信”,生成主站和从站通信用的传输区的方法与生成IO设备的传输区基本上相同。验证通信的程序和通信实验也基本上相同。AS-i

    36、是执行器-传感器接口的缩写,AS-i通信用得很少。6.5 点对点通信点对点通信 6.5.1 串行通信概述串行通信概述 1并行通信与串行通信并行通信与串行通信 并行数据通信是以字节或字为单位的数据传输方式,需要多根数据线和控制线,在工业通信中很少使用。串行数据通信以二进制的位为单位,每次只传送一位。最少只需要两根线就可以连接多台设备,组成控制网络,可用于距离较远的场合。2异步通信异步通信 接收方和发送方的传输速率的微小差异产生的积累误差,可能使发送和接收的数据错位。异步通信采用字符同步方式,通信双方需要对采用的信息格式和数据的传输速率作相同的约定。接收方将停止位和起始位之间的下降沿作为接收的起始

    37、点,在每一位的中点接收信息。奇偶校验用硬件保证发送方发送的每一个字符的数据位和奇偶校验位中“1”的个数为偶数或奇数。接收方用硬件对接收到的每一个字符的奇偶性进行校验,可以检验出传送过程中的错误。可以设置为无奇偶校验。传输速率单位为bit/s或bps,即每秒传送的二进制位数。3单工与双工通信单工与双工通信 方式方式 单工通信只能沿单一方向传输数据,双工通信的每一个站既可以发送数据,也可以接收数据。全双工方式通信的双方都能在同一时刻接收和发送数据。半双工方式通信的双方在同一时刻只能发送数据或只能接收数据。通信方向的切换过程需要一定的延迟时间。4串行通信的接口标准串行通信的接口标准 (1)RS-23

    38、2 RS-232的最大通信距离为15m,最高传输速率为20kbit/s,只能进行一对一的通信。RS-232使用单端驱动、单端接收电路,容易受到公共地线上的电位差和外部引入的干扰信号的影响。(2)RS-422 RS-422采用平衡驱动、差分接收电路,因为接收器是差分输入,两根线上的共模干扰信号互相抵消。在最大传输速率10Mbit/s时,最大通信距离为12m。传输速率为100kbit/s时,最大通信距离为1200m,一台驱动器可以连接10台接收器。(3)RS-485 RS-422是全双工,用4根导线传送数据。RS-485是RS-422的变形,为半双工,使用双绞线可以组成串行通信网络,构成分布式系统

    39、。图6-38 RS-422通信接线图 图6-39 RS-485网络 6.5.2 点对点通信的组态与编点对点通信的组态与编程程 1点对点通信模块点对点通信模块 S7-1200支持使用自由口协议的点对点通信。点对点通信使用RS-485 CM 1241模块、RS-485 CB 1241通信板和RS-232 CM 1241模块。它们支持ASCII、USS驱动、Modbus RTU主站协议和Modbus RTU从站协议。2组态通信模块组态通信模块 生成一个名为“点对点通信”的新项目,PLC_1和PLC_2均为CPU 1214C。打开PLC_1的设备视图,将RS-485模块拖放到CPU左边的101号槽。选

    40、中该模块后,选中下面的巡视窗口的“属性 常规 RS-485接口 IO-Link”,设置通信接口的参数。除了波特率其他参数均采用默认值。3设计用户程序设计用户程序 PLC_1作主站,PLC_2作从站。在启动信号M2.0为1状态时,主站发送100个字的数据,从站接收到后返回100个字的数据。以后重复上述过程。输入参数PORT为通信接口的标识符,可以在通信接口的属性对话框中找到它。BUFFER是发送缓冲区的起始地址,LENGTH是发送缓冲区的长度。发送结束时输出位DONE为1状态。指令执行出错时输出位ERROR为1状态,错误代码在STATUS中。接收完成时Receive_P2P的输出位NDR为1状态

    41、,LENGTH中是接收到的报文的字节数。在主站的DB1和DB2中分别生成有100个字元素的数组。在OB100中给要发送的数组元素赋初值,将保存接收到的数据的数组的所有元素清零。在OB1中用周期为0.5s的时钟存储器位M0.3的上升沿,将要发送的第一个字的值加1。下面是主站的轮询顺序:1)在Send_P2P指令的REQ信号M2.0的上升沿,启动发送过程,发送DB1中的100个整数。在多个扫描周期内继续执行该指令,完成报文的发送。2)Send_P2P的输出位DONE(M2.1)为1状态时,表示发送完成,将M2.4置位。用M2.4作为Receive_P2P的接收使能信号EN的实参,反复执行Recei

    42、ve_P2P。模块接收到响应报文后,Receive_P2P指令的输出位NDR(M2.5)为1状态,表示已接收到新数据。3)在M2.5的下降沿将M2.7置位,返回第1步,重新启动发送过程。同时将接收使能信号M2.4复位。在发送完成时,将M2.7复位。从站接收和发送数据的程序见图6-42,其他程序与PLC_1的基本上相同。从站的轮询顺序如下:1)在OB1中调用Receive_P2P指令,开始时它的使能信号EN为1状态。2)从站接收到请求报文后,Receive_P2P指令的输出位NDR(M2.5)变为1状态。在M2.5的下降沿将M2.4置位,启动Send_P2P指令,将DB1中的响应报文发送给主站。

    43、M2.4的常闭触点断开,Receive_P2P指令停止接收数据。3)在响应报文发送完成时,Send_P2P的输出位DONE(M2.1)变为1状态,将M2.4复位,停止发送报文。Receive_P2P的EN输入变为1状态,又开始准备接收主站发送的报文。图6-42 从站的OB1中的程序 4点对点通信的实验点对点通信的实验 用监控表将M2.0置为1状态后马上置为0状态,启动主站向从站发送数据。观察双方接收到的第一个字DB2.DBW0的值是否不断增大,DB2的DBW2和DBW198的值是否与对方在OB100中预置的值相同。6.6 Modbus 协议通信协议通信6.6.1 Modbus RTU主站的编程

    44、主站的编程 1Modbus协议协议 Modbus串行链路协议是主-从协议,采用请求-响应方式。有一个主站,1247个子站。RTU模式用循环冗余校验(CRC)进行错误检查,报文最长256B。使用通信模块CM 1241(RS485)作主站时,最多可以与32个从站通信。2组态硬件组态硬件 生成一个名为“Modbus RTU通信”的项目,主站PLC_1和从站PLC_2的CPU均为CPU 1214C。启用它们默认的时钟存储器字节MB0。打开主站PLC_1的设备视图,将CM 1241(RS485)模块插入101号槽。选中该模块以后,选中巡视窗口的“端口组态”,按图6-40设置通信接口的参数。3调用调用Mo

    45、dbus_Comm_Load指令指令 必须在OB100中,对每个通信模块调用一次Modbus_Comm_Load指令,来组态它的通信接口。参数REQ为请求信号,PORT是通信端口的硬件标识符,BAUD(波特率)为38400bps,PARITY(奇偶校验位)为0,不使用奇偶校验校验。响应超时时间RESP_TO为1000ms,MB_DB的实参是函数块Modbus_Master的背景数据块DB3中的静态变量MB_DB,DONE为1表示指令执行完且没有出错。ERROR为1表示检测到错误,参数STATUS中是错误代码。图6-44 主站OB100中的程序 生成DB1和DB2,在它们中间分别生成有10个字元

    46、素的数组。在OB100中给要发送的DB1中的10个字赋初值16#1111,将保存接收到的数据的DB2中的10个字清零。在OB1中用周期为0.5s的时钟存储器位M0.3的上升沿,将要发送的第一个字加1。4调用调用Modbus_Master指令指令 该指令用于Modbus主站与指定的从站进行通信。主站可以访问一个或多个从站。在OB1中两次调用该指令,读取1号从站中Modbus地址从40001开始的10个字中的数据,保存到主站的DB2中;将主站DB1中的10个字的数据写入从站的Modbus地址从40011开始的10个字中。同一个Modbus端口的所有Modbus_Master指令必须使用同一个Mod

    47、bus_Master背景数据块。图6-45 OB1中的Modbus_Master指令 5Modbus_Master指令的输入、输出参数指令的输入、输出参数 在输入参数REQ的上升沿,请求向Modbus从站发送数据。MB_ADDR是从站地址(0247)。MODE用于选择Modbus功能的类型(见表6-1)。DATA_ADDR是要访问的从站中数据的Modbus起始地址。Modbus_Master指令根据这两个参数确定Modbus报文中的功能代码。DATA_LEN是要访问的数据长度(位数或字数)。DATA_PTR指针指向CPU的数据块或位存储器地址,从该位置读取数据或向其写入数据。DONE为1表示指

    48、令已完成对Modbus从站的操作。BUSY为1表示正在处理任务。ERROR为1状态表示检测到错误,参数STATUS提供的错误代码有效。6.6.2 Modbus RTU从站的编程与通信实验从站的编程与通信实验 1组态从站的组态从站的RS-485模块模块 打开从站PLC_2的设备视图,将RS-485模块拖放到CPU左边的101号槽。2初始化程序初始化程序 在OB100中调用Modbus_Comm_Load指令,来组态串行通信接口的参数。其输入参数PORT的值为267,MB_DB的实参为Modbus_Slave_DB.MB_DB。生成DB1,不能激活“仅符号地址”属性。在它中间生成有20个字元素的数

    49、组DATA。在OB100中给数组DATA要发送的前10个元素赋初值16#1111,将保存接收到的数据的数组DATA的后10个元素清零。3调用调用Modbus_Slave指令指令 在OB1中调用Modbus_Slave指令,它用于为Modbus主站发出的请求服务。开机时执行OB100中的Modbus_Comm_Load指令,通信接口被初始化。从站接收到Modbus RTU主站发送的请求时,通过执行Modbus_Slave指令来响应。它的输入/输出参数的意义如下:MB_ADDR是从站地址(1247)。MB_HOLD_REG是指向Modbus保持寄存器数据块的指针,其实参为DB1中的数组DATA,该

    50、数组用来保存供主站读写的数据值。DB1.DBW0对应于Modbus地址40001。NDR为1表示主站已写入新数据,DR为1表示主站已读取数据,ERROR为1状态表示检测到错误,参数STATUS中的错误代码有效。在OB1中用周期为0.5s的时钟存储器位M0.3的上升沿,将要发送的第一个字“DATA1”的值加1。4Modbus通信实验通信实验 硬件接线图见下图。用监控表监控主站的DB2的DBW0、DBW2和DBW18,以及从站的DB1的DBW20、DBW22和DBW38。用外接的小开关产生请求信号I0.0的脉冲,启动主站读取从站的数据。用主站的监控表观察DB2中主站的DBW2和DBW18读取到的数

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:S71200PLC编程及应用第4版课件第6章.ppt
    链接地址:https://www.163wenku.com/p-3726085.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库