用户程序的重新接线 目录 页 目标 ..............…………............................................................................................................................ 2 概述………............................................................................................................................................. 3 用SIMATIC 管理器重新接线 ………………….......................................................................................... 4 重新接线的结果 …….....................................................................................................................……... 5 用“符号优先” 重新接线 …...................................................................................................………..... 6 符号表:匹配绝对地址 ..............................................................................……………..…………….. 7 用LAD/FBD/STL编辑器重新接线 ………………….................................................................................. 8 显示参考数据.......................................................................................................................................... 9 I,Q,M,T,C分配表 .................................................................................................................................. 10 块的比较 (1) .......................................................................................................................................... 11 块的比较 (2) ......................................................................................................................................... 12 练习:准备重新接线 ....................................................................…….................................………....... 13 练习:用SIMATIC管理器重新接线点动传送带电机 .............................................................………....... 14 练习:用LAD/FBD/STL编辑器重新接线点动传送带电机 ........................................................……....... 15 练习:块的比较 ..............................................................................................................……………..... 16
目标 学习了本章之后,你将 ... ... 了解如何重新接线和如何应用 ... 能够用SIMATIC®进行重新接线 ... 了解如何重新接线和如何应用 ... 能够用SIMATIC®进行重新接线 ... 能够用符号表进行重新接线(“符号优先”) ... 能够比较在线 - 离线和离线 - 离线的S7块
用 "leading symbols„ 重新接线 概述 A I 8.1 . = Q 8.5 A I 4.0 . = Q 0.5 “旧“程序传送带 模型接到中央 I/O “新“程序传送带 模型接到分布 I/O 用 SIMATIC Manager 重新接线 A I 1.0 . A I 0.4 A M 30.3 . A M 30.4 “旧“程序 用模拟器操作 “新“程序 用TP170B操作 用 "leading symbols„ 重新接线 用途 • 已经发现输入模板上的一个通道(画面中I 8.1)失效。 如果模板上的输入没有被占满,就可以把传感器重新连接到可用的通道 上 (画面中I 4.0)。 • 必须修改程序来适应新的接线, 传感器和执行器已经接到不同的地址上。 重新接线 在各种情况下,程序必须适应新的接线(程序中新的地址) ,本例中所有的输入I 8.1必须用输入I 4.0替换。 有四种方法完成程序的重新接线(适应新的地址): • 用SIMATIC 管理器(该方法不需要符号表)。 • 用“符号优先”重新接线,这种方法也需要符号表。 - 用LAD/FBD/STL编辑器 - 用块的一致性检查(Check block consistency)功能 • 用源程序重新接线。 注 “块的一致性检查”功能和用源程序在高级编程课中讨论。
用SIMATIC管理器实现重新接线 或 重新接线 和符号表无关,在已有程序中,所有块中的旧地址(例如: I 16.7 )用新地址(例如: I 17.0 )替换。原来的块被新的、重新接线的块覆盖。 用SIMATIC 管理器重新接线时,必须在块文件夹Object Properties中选择Address priority: Absolute value 。 在几个块中 如果你要替换一个或几个块中的地址,你应在启动本功能前选择这些块。 在所有块中 如果你要重新接线既替换所有块中的地址,你应在启动本功能前选择S7程序的块文件夹。 …All Accesses 如果你检查(激活)这一选项, 所选的字节、字或双字地址中的各位也被重新 Within the Specified 接线。如本例所示,输入I 16.7是“旧地址”输入字节IB 16 的一个位,被重 Addresses 新接线到输入I 17.0 ,它是“新地址”输入字节IB 17 的一个位。 步骤 1. 关闭LAD/STL/FBD Editor以便确实没有块在处理 2. 在SIMATIC管理器中,选择“Blocks”文件夹或要重新接线的块 3. 启动重新接线 SIMATIC® Manager -> Options -> Rewiring... 4. 在重新接线窗口中,输入旧地址和新地址,如果需要,激活“All addresses within the specified address area” 5. 用“OK”确认
重新接线的结果 FC 99 “旧” FC 99 “新” 结果 在重新接线的块和/或整个用户程序中,旧地址(例如: I 16.7 )已经被新地址 (例如: I 17.0 )替换。原来的块(例如FC 99)被覆盖。 注 重新接线后,可以打印出在这些块中多少替换发生的协议。
用“符号优先”重新接线 概述 也可以用LAD/STL/FBD 中的“符号优先”或“块的一致性检查”功能重新接线S7程序。 前提条件是: • 符号表存在 • 在块文件夹的对象属性,选择设置“符号优先….对所有访问(I, Q, M, T, C, 和 DB)” 步骤 可以设置块文件夹 - 对象属性“符号优先”如下 1. 在SIMATIC管理器离线显示中选择S7 程序的块文件夹 2. 打开块文件夹的对象属性 选择菜单功能Edit 或在块文件夹单击鼠标右键 -> Object Properties 3. 在窗口中选择标签“Address Priority ” 4. 选择下列属性 “Symbol has priority…..For all accesses (I, Q, M, T, C, and DB)”
符号表: 匹配绝对地址 之前 之后 匹配绝对地址 在你用LAD/FBD/STL编辑器或用块的一致性检查功能重新接线之前,你已经在符号表中输入了新地址的绝对地址。该地址的符号必须不变。 在示例中,绝对地址I 16.7 被输入I 17.0 替换,不改变符号“Input2”。 注意 在符号表中匹配绝对地址仅在你已经在块文件夹的对象特性中选择了符号作为地址优先后才可发生!以前的改变不被识别!
用 LAD/FBD/STL 编辑器重新接线 2x 重新接线 重新接线的最后一步,用“符号优先”,是打开包含地址已经改变的符号的块。你需要应答信息“至少一个符号赋值改变”。总结: 1. 在块特性的地址优先,选择“符号”。 2. 在符号表编辑器中,你已经改变了需要重新接线的符号的绝对地址。 3. 最后,你打开包含地址以经改变的符号的块。 注意 重新接线仅在你已经用编辑器打开块时执行!块的重新接线仅当块被保存时才奏效。 如果程序的几个或所有的块中的一个或多个地址要重新接线既改变,所有的块必须用编辑器一个接一个地打开然后保存。
用“检查块一致性”功能重新接线 After compilation 重新接线 在块文件夹的属性选择了“符号”作为地址优先并且随后在符号表中调整了绝对地址,你可以用“检查块一致性”功能开始重新接线。 当地址在几个块中使用时这是一个好方法,因为这些块不用被打开。 做什么 1. 在 SIMATIC Manager 中, 右键点击 “Blocks” 并选择菜单选项 Check Block Consistency 2. 如果有块显示红色,必须编译。你可以用 按钮触发编译。
块的比较 (1) 概述 块的比较功能可以用来比较离线和在线的块或者硬盘上的两个用户程序的块。 例如,可以利用该功能来确定在离线编程并下装后,后来在CPU中是否对程序 做过修改及在哪些段上程序不同。 步骤 1. 用鼠标右键选择S7程序中的块文件夹。 2. 选择菜单Compare Blocks。 3. 选择比较对象是在线/离线程序还是两个离线程序,然后用“OK”按钮确认。 4. 在随后的画面中,列出了块的区别。 5. 选择有区别的行然后单击“Details”按钮。 6. 在“Compare Blocks - Details”窗口中,可以确定块被修改的时间和块的长 度是否被改变。 7. 单击“Go To…”按钮后,有区别的在线和离线块将分别在两个窗口中打 开,并显示第一个不同之处。 注 只能在离线窗口修改程序。 见下页
块的比较 (2) 区别 单击“Go To…” 按钮后(见上页),编辑器中将并列打开两个窗口中,并显示有区别的块中第一个不同之处。 使用“上一个” (“Previous”)和“下一个” (“Next”)按钮可以快捷地在不同的段或程序区之间切换 例如 在上例中,以离线 - 离线比较两个不同的S7程序的块。两个S7程序都含有FC16块,但每个都有不同的程序代码。 通过读“Compare Blocks - Results”窗口中的时间标签,可以识别出哪一个块是最后修改的。
练习:准备重新接线 1. 2. 任务 为熟悉重新接线的各种形式,你要重新接线用户程序两次。所以当你完成时原程序仍然有效,你要用原程序的拷贝做重新接线。为此,在你的项目中生成与硬件无关的S7程序“Rewiring1“和“Rewiring2“ 。 做什么 1. 用拖拽,直接拷贝S7程序“My_Program“作为与硬件无关的程序到项目 ”My_Project“ 。 2. 把拷贝的程序改名为“Rewiring1“ 点击 S7 程序两次 (不是双击!) -> 写 “Rewiring1“覆盖旧名 3. 重复拷贝过程并命名新拷贝“Rewiring2“ 3.
练习: 用 SIMATIC® 管理器重新接线点动传送带电机 DI DO Q 4.... I 0.0 T_System_ON .0 V I 0.1 T_System_OFF L_System .1 I 0.2 T_Jog_RT L_MAN .2 I 0.3 T_Jog_LT L_AUTO .3 I 0.4 S_M/A_ModeSelect .4 I 0.5 T_M/A_Accept .5 I 0.6 .6 -15V...+15V -15V...+15V AI2 AO1 AO2 I 0.7 .7 AI1 AI1 Weight V AI2 I 1.2 T_Jog_RT I 1.3 T_Jog_LT 任务 S7程序“Rewiring1“的FC 16中的点动传送带电机功能要用SIMATIC重新接线。用于点动向右和向左的暂态开关要用其他代替(见图)。用户程序必须通过重新接线适当调整。 重新接线: 旧: 新: • 点动向右的暂态开关 I 0.2 -> I 1.2 • 点动向左的暂态开关 I 0.3 -> I 1.3 做什么 1. 首先,检查赋值表,在当前程序是否仍未使用新地址 在 SIMATIC® 管理器中, 选择 S7 程序 “Rewiring1“的块文件夹-> Options -> Reference Data... -> display -> (如果还没有发生: update 或 generate new) -> 输入、输出和标志的赋值表 2. 选择 S7 程序 “Rewiring1“的块文件夹并启动重新接线功能 SIMATIC® Manager -> Options -> Rewiring 3. 在重新接线的对话表中,输入旧地址和新地址并用OK确认 4. 用LAD/STL/FBD编辑器打开FC 16块并观察结果检查重新接线是否成功 5. 通过在符号表中输入用于传送带电机点动向右和向左的暂态开关新的绝对 地址修改程序注释 在LAD/STL/FBD 编辑器中右键点击 I 1.2 or I 1.3 -> Edit Symbols... 6. 下装修改过的块到CPU并通过模拟器测试新功能 结果 用新地址,程序满足和原程序相同的功能。 0 8 1 5 AI1 AI2 AO1 AO2
练习: 用 LAD/STL/FBD编辑器重新接线点动传送带电机 DI DO Q 4.... I 0.0 T_System_ON .0 V I 0.1 T_System_OFF L_System .1 I 0.2 T_Jog_RT L_MAN .2 I 0.3 T_Jog_LT L_AUTO .3 I 0.4 S_M/A_ModeSelect .4 I 0.5 T_M/A_Accept .5 I 0.6 .6 -15V...+15V -15V...+15V AI2 AO1 AO2 I 0.7 .7 AI1 AI1 Weight V AI2 I 1.2 T_Jog_RT I 1.3 T_Jog_LT 任务 FC 16中的传送带电机的点动要再次重新接线,这次用S7程序“Rewiring2“。使用LAD/STL/FBD编辑器重新接线。 这里,再一次,这些地址重新接线: 重新接线: 旧: 新: • 点动向右的暂态开关 I 0.2 -> I 1.2 • 点动向左的暂态开关 I 0.3 -> I 1.3 做什么 1. 赋值对象属性“Address priority: Symbol S7“到程序 “Rewiring2“的块文件夹 在 SIMATIC® 管理器中, 选择 S7 程序 “Rewiring1“的块文件夹-> 右键点击块文件夹-> 在对话框中选择 ”Blocks” 标签 -> 选择Address priority "Symbol" 2. 在符号表中,用新绝对地址替换旧地址,不改变符号 SIMATIC® Manager ->双击符号表 3. 用LAD/STL/FBD编辑器打开FC 16块并观察结果检查重新接线是否成功 4. 下装修改过的块到CPU并通过模拟器测试新功能 结果 S7程序“Rewiring1“和“Rewiring2“的块文件夹中的程序相同,并且使用新地址,满足和原程序相同的功能。 0 8 1 5 AI1 AI2 AO1 AO2
练习: 块的比较 任务 #1 使用“块比较”功能,检查经过重新接线后的变化。比较重新接线的S7程序“Rewiring2“和原程序“My_Program“ 。 做什么 1. 在 SIMATIC® 管理器中, 选择原程序 “My_Program“的块文件夹并启动“块 比较”功能 SIMATIC® Manager -> Options -> Compare Blocks 2. 在接下来的对话框中,选择“Path 1 / Path 2“作为比较的类型并点击SIMATIC® 管理器窗口中的S7程序“Rewiring2“的块文件夹(见图)。用OK启动该功能 3. 窗口中的“Details...”显示出现比较的结果 4. 接着在窗口中出现细节, 用 “Go To...”.显示FC 16的不同版本(从 “My_Program” 和 "Rewiring2") 任务 #2 • 使用“块比较”功能检查两个S7程序“Rewiring1“和“Rewiring2“是否相同(它 们实际应该相同)。 • 再比较在线存储的程序和原程序“My_Program“