S7-1200-PLC编程及应用第三版-廖常初-课件-第6章.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《S7-1200-PLC编程及应用第三版-廖常初-课件-第6章.ppt》由会员分享,可在线阅读,更多相关《S7-1200-PLC编程及应用第三版-廖常初-课件-第6章.ppt(57页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 2. IEEE 802通信标准通信标准 (1)CSMA/CD (带冲突检测的载波侦听多路访问 )的基础是以太网。 每个站都是平等的,采用竞争方式发送信息到传输线上,为了防止冲突, “先听后讲”和“边听边讲”。其控制策略是竞争发送、广播式传送、载体监听、冲突检测、冲突后退和再试发送。以太网越来越多地在底层网络使用。 (2)令牌总线 令牌绕逻辑环周而复始地传送。要发送报文的站等到令牌传给自己,判断为空令牌时才能发送报文。令牌沿环网循环一周后返回发送站时,如果报文已被接收站复制,发送站将令牌置为“空”,送上环网继续传送,以供其他站使用。 (3)主从通信方式 主从通信网络有一个主站和若干个从站。主站
2、向某个从站发送请求帧,该从站接收到后才能向主站返回响应帧。主站按事先设置好的轮询表的排列顺序对从站进行周期性的查询。 3现场总线及其国际标准现场总线及其国际标准 IEC对现场总线的定义是“安装在制造和过程区域的现场装置与控制室内的自动控制装置之间的数字式、串行、多点通信的数据总线”。 IEC 61158第4版采纳了经过市场考验的20种现场总线。其中约一半是实时以太网。西门子公司支持类型3(PROFIBUS)和类型10(PROFINET)。 IEC 62026是供低压开关设备与控制设备使用的控制器电气接口标准。西门子公司支持执行器传感器接口(AS-i)。6.1.2 SIMATIC通信网络通信网络
3、 西门子的工业自动化通信网络SIMATIC NET的顶层为工业以太网,可以集成到互联网。 PROFIBUS用于少量和中等数量数据的高速传送。AS-i是底层的低成本网络。 通用总线系统KNX用于楼宇自动控制。IWLAN是工业无线局域网。各个网络之间用链接器或有路由器功能的PLC连接。 MPI(多点接口)是SIMATIC产品使用的内部通信协议,可以建立传送少量数据的低成本网络。PPI(点对点接口)是用于S7-200和S7-200 SMART的通信协议。点对点(PtP)通信用于特殊协议的串行通信。 2PROFINET PROFINET是基于工业以太网的开放的现场总线标准。使用PROFINET IO,
4、现场设备可以直接连接到以太网。通过代理服务器,PROFINET可以透明地集成现有的PROFIBUS设备。 PROFINET的实时(RT)通信功能典型的更新循环时间为110ms。同步实时(IRT)功能用于高性能的同步运动控制,响应时间为0.251ms。IRT通信需要特殊的交换机的支持。PROFINET同时用一条工业以太网电缆实现IT集成化领域、实时自动化领域和同步实时通信。 PROFINET支持故障安全通信的标准行规PROFIsafe和驱动器配置行规PROFIdrive。 3PROFIBUS PROFIBUS是开放式的现场总线,传输速率最高12Mbit/s,最多可以接127个从站。PROFIBU
5、S提供了下列3种通信服务: 1) PROFIBUS-DP (分布式外部设备)用于PLC与分布式I/O(例如ET 200)的通信。主站之间的通信为令牌方式,主站与从站之间为主从方式。 2)PROFIBUS-PA(过程自动化)用于过程自动化的现场传感器和执行器的低速数据传输,可以用于防爆区域的设备与PLC的通信。使用屏蔽双绞线电缆,由总线提供电源。 3)PROFIBUS-FMS (现场总线报文规范) 已被以太网代替,很少使用。 此外还有用于运动控制的总线驱动技术PROFIdrive和故障安全通信技术PROFIsafe。6.2 基于以太网的开放式用户通信基于以太网的开放式用户通信 S7-1200/1
6、500的CPU集成的PROFINET接口是10M/100Mbit/s的RJ45以太网口,可以使用标准的或交叉的以太网电缆。支持TCP、ISO-on-TCP、UDP和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和
7、192.168.0.2,子网掩码为默认的255.255.255.0。启用MB0做它们的时钟存储器字节。 3组态组态CPU之间的通信连接之间的通信连接 打开网络视图,用“拖拽”的方法连接PLC_1和 PLC_2的以太网接口,出现绿色的以太网线和名称为“PN/IE_1”的连接。 4验证通信是否实现的典型程序结构验证通信是否实现的典型程序结构 双方生成保存发送和接收数据的数据块DB1(SendData)和DB2(RcvData),去掉“优化的块访问”属性。在数据块中生成有100个整数元素的数组。 在OB100中用指令FILL_BLK将双方DB1中要发送的100个整数初始化为16#1111和16#22
8、22,将保存接收数据的DB2的100个整数清零。 在OB1中用周期为0.5s的时钟存储器位M0.3的上升沿,将要发送的第一个字DB1.DBW0加1。 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的接描
9、述数据块“PLC_2_Send_DB”(DB5)。 用单选框设置PLC_1主动建立连接。采用默认的传输服务访问点TSAP 。双方组态“连接参数”的对话框的结构相同。 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
10、的EN_R为1时准备好接收数据,CONT和EN_R均为1时连续接收数据。RCVD_LEN是实际接收的数据的字节数。 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仿真实验仿真实验 选中P
11、LC_1,单击工具栏上的“开始仿真”按钮 ,出现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
12、断开连接。 选中TCON,然后选中巡视窗口的“属性 组态 连接参数”,设置通信伙伴为“未指定”,连接类型为UDP。不能设置“主动建立连接”单选框。 选中“连接数据”下拉式列表中的“”,自动生成连接描述数据块“PLC_1 _ Connection _DB”(DB4)。本地端口号采用默认的2000。 双方组态“连接参数”的对话框的结构相同。 2生成定义生成定义UDP连接参数的数据块连接参数的数据块 在“添加新块”对话框生成类型为TADDR_Param的全局数据块DB7,将它的名称修改为“接口参数”。UDP连接需要用DB7来设置远程通信伙伴的IP地址和端口号,双方的本地端口号应相同。在程序运行过程中
13、修改DB7中通信伙伴的IP地址和端口号,可以和不同的伙伴通信。 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的同名参数相同。 4通信实验通信实验 UDP通信不能仿真。用以太网电缆连接计算机和两块CPU的以太网接口,将用户程
14、序和组态信息分别下载到两块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-1
15、200与S7-300/400集成的PN接口之间的开放式用户通信可以使用ISO-on-TCP、TCP和UDP协议。可以用STEP 7 V5.5对S7-300/400编程。本节主要介绍S7-300/400基于博途的开放式用户通信。 2S7-300/400的组态与编程的组态与编程 项目“300_1200TCP”的PLC_1为CPU 314-2PN/DP,CPU_2为CPU 1215C。它们的IP地址分别为192.168.0.1和192.168.0.2。启用双方的MB0为时钟存储器字节。为PLC_1生成DB1和DB2,在数据块中分别生成有100个整数元素的数组。不启用“优化的块访问”属性。在OB100
16、中预置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个整数保存到D
17、B2。LEN是发送或接收的最大字节数,RCVD_LEN是实际接收到的字节数。3S7-1200的组态与编程的组态与编程 在CPU 1215C的OB1中,用周期为0.5s的时钟脉冲M0.3将要发送的第一个字DB1.DBW0加1。调用TCON、TDISCON、TSEND和TRCV的程序与PLC_1的基本上相同。 TSEND和TRCV的参数LEN被隐藏。 4通信实验通信实验 通信实验的方法和结果与项目“1200_1200UDP”的基本上相同。用监控表中的M10.0和M10.4的上升沿建立连接和断开连接。 项目“300_1200ISO”与“300_1200TCP”基本上相同。连接类型为“ISO-on-T
18、CP”,采用默认的TSAP。 在S7-300/400和S7-1200 的TCP和ISO-on-TCP协议通信中,S7-1200除了使用TSEND和TRCV指令,还可以使用TSEND_C和TRCV_C指令。S7-1200和S7-300/400之间也可以使用UDP协议通信。6.3 S7协议通信协议通信6.3.1 S7-1200之间的之间的S7协议通信协议通信 1S7协议协议 S7协议是专为西门子控制产品优化设计的通信协议,它是面向连接的协议。连接是指两个通信伙伴之间为了执行通信服务建立的逻辑链路。S7连接是需要组态的静态连接,静态连接要占用CPU的连接资源。S7-1200 仅支持 S7 单向连接。
19、 单向连接中的客户机(Client)是向服务器(Server)请求服务的设备,客户机调用GET/PUT指令读、写服务器的存储区。服务器是通信中的被动方,用户不用编写服务器的S7通信程序,S7通信是由服务器的操作系统完成的。 2创建创建S7连接连接 在名为“1200_1200IE_S7”的项目中,PLC_1为客户机,PLC_2为服务器。采用默认的IP地址和子网掩码。组态时启用MB0为时钟存储器字节。 打开网络视图,单击按下“连接”按钮,设置连接类型为S7连接。用“拖拽”的方法建立两个CPU的PN接口之间的名为“S7_连接_1”的连接。 单击网络视图右边竖条上向左的小三角形按钮,打开弹出的视图中的
20、“连接”选项卡,可以看到生成的S7连接的详细信息。连接ID为16#100。 选中“S7_连接_1”,再选中巡视窗口的“特殊连接属性”,勾选复选框“主动建立连接”。选中“地址详细信息”,可以看到通信双方默认的TSAP(传输服务访问点)。 使用固件版本为V4.0及以上的S7-1200 CPU作为S7通信的服务器,需要选中服务器设备视图中的CPU ,再选中巡视窗口中的“保护”,激活复选框“允许从远程伙伴使用PUT/GET通信访问”。 3编写程序编写程序 为PLC_1生成DB1和DB2,为PLC_2生成DB3和DB4,在这些数据块中生成由100个整数组成的数组。不要启用数据块属性中的“优化的块访问”功
21、能。在时钟脉冲M0.5的上升沿,GET指令每1s读取PLC_2的DB3中的100个整数,用本机的DB2保存。PUT指令每1s将本机的DB1中的100个整数写入PLC_2的DB4。客户机最多可以分别读取和改写服务器的4个数据区。 PLC_2在S7通信中作服务器,不用编写调用指令GET和PUT的程序。 在双方的OB100中,预置DB1和DB3中要发送的100个字,将保存接收到的数据的DB2和DB4中的100个字清0。在双方的OB1中,用周期为0.5s的时钟脉冲M0.3的上升沿,将要发送的第1个字加1。 5仿真实验仿真实验 选中项目树中的PLC_1,单击工具栏上的“开始仿真”按钮 ,将程序和组态数据
22、下载到仿真PLC。选中PLC_2,单击工具栏上的“开始仿真”按钮 ,将程序和组态数据下载到仿真PLC,二者被切换到RUN模式后,用两台PLC的监控表监控接收到的数据。6.3.2 S7-1200与其他与其他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为
23、1,为单向连接,由本地站点主动建立连接。本地和伙伴的TSAP分别为10.02和03.00。 为PLC_1生成DB1和DB2,为PLC_2生成DB3和DB4,在这些数据块中生成由100个整数组成的数组。不要启用数据块属性中的“优化的块访问”功能。PLC_1做S7通信的客户机。在它的OB1中调用 GET和PUT指令。 通信的实验方法与例程“1200_1200IE_S7”相同。不能仿真。 2 S7-1200与与S7-200 SMART的的S7协议通信协议通信 例程“1200_SMART_S7”中,只有做客户机的CPU 1215C,启用MB0为时钟存储器字节。 右键单击网络视图中CPU的以太网接口,执
24、行 “添加子网”命令,生成一个名为“PN/IE_1”的以太网。单击工具栏上的“连接”,设置连接类型为S7连接。右键单击CPU,执行“添加新连接”命令。在“创建新连接”对话框中,采用默认的连接类型“S7连接”,默认的连接伙伴为左边窗口的“未指定”。多选框“主动建立连接”被自动选中,由S7-1200建立连接。单击“添加”和“关闭”按钮,新连接被创建。连接的本地ID为16#100,将在编程中使用。 选中S7连接后选中巡视窗口中的“常规”,设置伙伴的IP地址为192.168.0.2。连接的本地ID为1,为单向连接,由本地站点主动建立连接。本地和伙伴的TSAP分别为10.01和03.01。 为CPU 1
25、215C生成DB3和DB4,在数据块中生成由100个整数组成的数组。不要启用“优化的块访问”属性。 在CPU 1215C的OB1中调用指令GET和PUT。S7-200 SMART的V区被映射为S7-1200的DB1,要读取的S7-200 SMART的VB100VB299被映射为P#DB1.DBX100.0 INT 100,要写入的S7-200 SMART的VB300VB499被映射为P#DB1.DBX300.0 INT 100。分别用DB3和DB4保存S7-300要发送的数据和接收到的数据。周期为1s的时钟脉冲M0.5每秒钟将发送的第一个字DB3.DBW0加1。在OB100中初始化DB3中的地
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- S7 1200 PLC 编程 应用 第三 廖常初 课件
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内