版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、在STEP 7 Micro/WIN中,如何评价主程序或子程序中过多的的上升沿和下降沿?描述: 使用以下库可以实现过多的边沿评价。通常CPU仅支持256个边沿评价 - 见条目号:8804150。本程序例程也可以用于子程序中。通常CPU不支持此程序例程 - 见条目号:7115899。这个库包含两个例行程序:分别适用于上升沿和下降沿。图1:库文件夹上升沿图2:上升沿子程序调用 参数变量类型说明ENBOOL必须始终高(1)InputBOOL信号输入,当发生(0 -> 1)改变时,激 活输出1个循环周期.MemoryBOOL临时存储区OutputBOOL信号输出表1:上升沿的参
2、数说明功能:如果信号输入(input)的状态发生变化0 -> 1(上升沿),那么信号输出(output)将被置位一个循环周期。存储位保留该状态。为了识别另一个边沿,信号输入(input)必须运行一个零循环。这样存储位将被复位。图3:上升沿的时序图下降沿图4:下降沿子程序调用 参数变量类型说明ENBOOL必须始终高(1)InputBOOL信号输入,当发生(0 -> 1)改变时,激活输出1个循环周期MemoryBOOL临时存储区OutputBOOL信号输出表2:下降沿的参数说明功能:如果信号输入 (input) 的状态发生1 -> 0 (下降沿)变化,那么信号输出 (o
3、utput) 将被置位一个循环周期.存储位保留该状态。为了识别另一个边沿,信号输入 (input) 必须被复位为 High 1个循环周期。这样存储位将被复位。图5:下降沿的时序图上升沿与下降沿(块: Edge_detect)图6:子程序调用块Edge_detect 参数变量类型说明ENBOOL使能: 使能功能,必须一直为TRUE (1)INBOOL信号输入,在上升沿(0->1)或下降沿(1->0),将被设置为“ OUT”一个循环周期。MemoryBOOL临时存储区OUTBOOL信号输出表3:Edge_detect的参数功能:如果信号输入“IN”出现上升沿(0->1)
4、或下降沿 (1->0)变化,那么信号输出“OUT2”将被置位一个循环周期。存储位保存“IN”信号的当前状态。图7:Edge_detect 信号图STEP 7 Micro/WIN库的存档文件:把“rising_falling_edge.exe” 文件复制到一个单独的文件夹,然后双击启动该文件。解包 STEP 7 Micro/WIN 库。然后可以集成这个库到 S7-200 项目中,可以在 STEP 7 Micro/WIN的3.2.4.27 以及更高版本中使用这个库。下载包含两个子程序。注意事项:· 关于在 STEP 7 Micro/WIN 中插入库的信息,可以在条目号:166893
5、45 处找到。 rising_falling_edge.exe ( 30 KB ) !下面的 Clock_Integer 库可以自动将传输值从十进制转换为 BCD 格式,反之也可以从 BCD 格式转换成十进制。然后执行相应的时间操作 READ_RTC或SET_RTC。这样当传输值用操作面板或程序的十进制格式保存时,便于时间函数的处理 (READ_RTC和SET_RTC)。注意事项:在条目号:16689345中可以找到关于将库插入 STEP 7 Micro/WIN 中的信息。图1: Clock_Integer库库的全局存储区
6、库使用全局存储区来保证传输的用户数据的一致性。从 库中将其中一个函数 (READ_RTC_I或SET_RTC_I)插入到STEP 7 Micro/Win 项目,然后选中 STEP 7 Micro/Win 菜单“文件”中的条目“Library Memory Allocation (分配库内存)”。系统会提供一个地址区,或者您也可以自己选择一个地址区。该库需要8个字节。 图2:库存储区 从CPU中读取时间(READ_RTC_I)图3:函数“READ_RTC_I”函数“READ_RTC_I”的参数 参数变量类型说明ENBOOL激活块如有需要时才激活块,这样能减轻CPU负
7、担地址DWORD用于保存读取的时间值的地址从该偏移量地址开始为其分配8个字节。 表1:函数“READ_RTC_I”的参数功能:如果激活输入信号“EN”,该块读取当前时间,将 所读取的BCD值转换成十进制值,并保存在从给定偏移量地址开始的地址中。在CPU中设置时间(SET_RTC_I)图4:函数“SET_RTC_I”函数“SET_RTC_I”的参数 参数变量类型说明ENBOOL激活块只有在需要时才激活该块,这样能减轻CPU负担。地址DWORD存储用户时间数据的地址,该块读取从该偏移量地址开始的8个字节。表2:参数“SET_RTC_I”功能:如果激活输入信号(EN)
8、,该块读取所存储的用户数据,将 它们转换成BCD格式并以该格式来设置CPU时钟.以十进制格式读取CPU时钟的实例:如果激活V50.0,就读取时间。所读取的数据以十进制格式存储在VB10开始的地址中。图5:“READ_RTC_I”实例 在状态表中检查数值:该数值以十进制格式存放在时间函数所用的结构中。时间函数的存储区结构(READ_RTC, SET_RTC):VB10 = 年份VB11 = 月份VB12 = 日期VB13 = 小时VB14 = 分钟VB15 = 秒钟VB16 = 保留VB17 = 星期图6:时间值的状态表 注意事项:CPU 221和CPU
9、 222不包含集成的时钟,所以需要CC292模块。 将STEP 7 Micro/WIN库作为档案库文件:将文件clock_integer.exe复制到一个独立目录中并双击启动它。将STEP 7 Micro/WIN库进行解包,可以把该库加到S7-200项目中。该库适用于STEP 7 Micro/WIN 3.2.4.27以及更高版本。 Clock_integer.exe ( 31 KB ) !如何使用 STEP 7 - Micro / WIN 中附加的逻辑运算符 (NEG, NAND, NOR, NXOR)?描述:下面我们将对这些未
10、作为标准运算符包含在编程软件 STEP 7 - Micro / WIN 中的运算符进行描述。在条目的末尾,有一个包含了这些运算符的文件,可以将其作为库集成到 STEP 7 - Micro / WIN 软件中。 此条目描述了运算符 NEG、NAND、NOR 和 NXOR。 · NEGNEG 运算符提供了一个数字的二进制补码,作为返回值。二进制补码格式对应改变符号的数字,或者是数字乘以“-1”。图 1:NEG 运算符 图 2:NEG 运算符实例 · NANDNAND 运算符是 AND 运算符的配对运算符。NAND (非-AND) 的输出仅在所有输入都具有状态 1 (即闭合状态)
11、 时才会具有状态 0。xy结果001101011110表 1:NAND 的布尔代数 图 3:NAND 运算符 图 4:NAND 运算符实例 · NORNOR 运算符是 OR 运算符的配对运算符。NOR (非-OR) 的输出仅在所有输入都具有状态 0 (即断开状态) 时才会具有状态 1。只要其中一个输入接通 (状态 1),输出就会断开。xy结果001100010110表 2:NOR 的布尔代数 图 5:NOR 运算符 图 6:NOR 运算符实例 · NXORNXOR 运算符是 XOR 运算符的配对运算符。当输入具有不同状态值时,NXOR 的输出具有状态 0。xy结果00110
12、0010111表 3:XNOR 的布尔代数 图 7:NXOR 运算符 图 8:NXOR 运算符实例 运算符参数变量类型可用的存储器类型NEG_BNAND_BNOR_BNXOR_BINBYTEVB、EB、AB、MB、SB、SMB、LB、AC、常数、*VD、*AC、*LDOUTBYTEVB、EB、AB、MB、SB、SMB、LB、AC、*VD、*AC、*LDNEG_WNAND_WNOR_WNXOR_WINWORDVW、EW、AW、MW、SW、SMW、T、Z、AEW、LW、AC、常数、*VD、*AC、*LDOUTWORDVW、EW、AW、MW,SW、SMW、T、Z、LW、AC、*VD、*A
13、C、*LDNEG_DWNAND_DWNOR_DWNXOR_DWINDWORDVD、ED、AD、MD、SD、SMD、LD、AC、HC、常数、*VD、*AC、*LDOUTDWORDVD、ED、AD、MD、SD、SMD、LD、AC、*VD、*AC、*LD表 4:操作符参数 使用下列库,您可以使用列出的操作符来访问类型为 BYTE、WORD 和 DWORD 的数据。 !在S7-200中如何限制阶跃的坡度?显示订货号描述:可以使用此FAQ的附件"Ramp" library ,在S7-200中限制浮点变量值的变化。 根据输入参数"IN", "RA
14、MP" 块计算最大变化率限制在"MAX_VARIATION"个单位每秒的输出参数"OUT" 的输出值。图 01 输入参数"IN"管脚如果有正向或负向的阶越,那么输出参数"OUT"管脚会紧跟着一个正向或负向的斜坡输出,此斜坡的变化率被限制在"MAX_VARIATION" 每秒。 "RAMP" 块的输入输出接口符号变量类型数据类型说明ENINBOOL"RAMP" 块的使能端ININREAL输入值MAX_VARIATION
15、IN_OUTREAL输出值的每秒最大变化量(负值取反为正值)OUTIN_OUTREAL输出值表 01将"Ramp"库加入STEP 7 Micro/WIN后,可在程序中调用 "RAMP" 块。图 02下载: 下载压缩包 "Ramp.zip" 包含以下文件: 文件描述"ramp.mwl" 库- 包含 "RAMP" 块 "Ramp.mwp" 项目- 本 FAQ的例子项目Ramp.zip ( 5 KB
16、)图 9:库文件夹 以归档文件形式提供的 STEP 7 Micro/WIN 库:将“logical_operations.exe”文件复制到单独的目录内,然后双击运行该文件。STEP 7 Micro/WIN 库将解包。然后便可以集成该库;在版本 V3.2.4.27 及更高版本的 STEP 7 Micro/WIN 中,可以将该库用于 S7-200 项目。 注意:关于在 STEP 7 Micro/WIN 中插入库的信息,可以在条目号 16689345 中找到。 logical_operations.exe ( 64 KB ) !在STEP 7 - Micro / WIN 如何实现取模功能?显示订货
17、号描述:取模运算符在整数除法运算中给出了余数。实例:6 Mod 2 = 0 -> 6 / 2 = 3;无余数11 Mod 4 = 3 -> 11 / 4 = 2,余数为 3;通过取模功能,可以检查一个数是否可以被另一个数整除 - 取模运算中结果是否为 0。取模运算符通常在高级编程语言中使用,例如 C、Basic、Java 等等。但是它主要用作除法器,仅用于在特定周期执行特定函数或切换特定函数 (在循环中)。实例:FOR x=1 TO 20IF x MOD 2 = 0 THEN CALL AnythingNEXT在此实例中,一个循环执行二十次,此外每第二个周期额外调用一次子程序 (功
18、能) “Anything”。使用取模库的 STEP 7 - Micro / WIN 等价程序如实例 1 所示。库中的每个取模块除了提供除法的余数外,还提供了一个输出位,它能立即表明是否存在除法余数。这样就节省了随后必须将除法余数与零相比较所需要的运算,并且节省了程序存储器中的空间。您需要做的所有工作仅仅是评估输出位 DWR (无余数的除法运算)。参数说明:图 1:字节的取模块 参数变量类型说明ENBOOL执行块E、A、M、SM、T、C、V、S、LIN1BYTE输入值VB、EB、AB、MB、SB、SMB、LB、AC、常数、*VD、*AC、*LDIN2BYTE除数VB、EB、AB、MB、
19、SB、SMB、LB、AC、常数、*VD、*AC、*LDDWRBOOL输出位1 (高) = 除法运算无余数;0 (低) = 除法运算有余数,A, M, V, L, SMOUTBYTE除法运算余数VB、EB、AB、MB、SB、SMB、LB、AC、*VD、*AC、*LD表 1:Modulo_B 的块参数图 2:字的取模块 参数变量类型说明ENBOOL执行块E、A、M、SM、T、C、V、S、LIN1WORD输入值VW、EW、AW、MW、SW、SMW、T、C、AC、LW、AEW、常数、*VD、*LD、*ACIN2WORD除数VW、EW、AW、MW、SW、SMW、T、C、AC、LW、AEW、常数
20、、*VD、*LD、*ACDWRBOOL输出位1 (高) = 除法运算无余数;0 (低) = 除法运算有余数,A, M, V, L, SMOUTWORD除法运算余数VW、EW、AW、MW、SW、SMW、LW、AC、*VD、*LD、*AC表 2:Modulo_W 的块参数图 3:双字的取模块 参数变量类型说明ENBOOL执行块E、A、M、SM、T、C、V、S、LIN1DWORD输入值VD、ED、AD、MD、SMD、SD、LD、AC、HC、常数、*VD、*LD、*ACIN2DWORD除数VD、ED、AD、MD、SMD、SD、LD、AC、HC、常数、*VD、*LD、*ACDWRBOOL输出位
21、1 (高) = 除法运算无余数;0 (低) = 除法运算有余数,A、M、V、L、SMOUTDWORD除法运算余数VD、ED、AD、MD、SMD、SD、LD、AC、*VD、*LD、*AC表 3:Modulo_DW 的块参数下面是两个如何实现取模块的实例。可以在这些块的注释中找到相关说明。实例 1 - 程序循环For.Next 循环运行二十次。每第二个周期临时变量“Indirect_Address”的数值增加 4。如果没有除法运算余数,位 V10.0 始终为高 (1),(即,在第 2 个、第 4 个、第 6 个、第 8 个、第 10 个周期内,如此等等)。循环计数器 VW0 在 FOR 命令的每个
22、周期末尾自动增加 1 (关于此命令的更多信息可以在 STEP 7 - Micro / WIN 帮助中找到)。图 4:程序周期实例实例 2 - 时钟发生器MOD_B (IN2) 的除数在此实例中已经保持为变量 (VB1)。子程序 SBR_0 每三个周期执行一次。周期计数器 VB0 始终在程序段 3 中复位,否则可能会达到 (超过) 最大值范围,此时将会重新从零开始。在零周期内可能会发生偏离,子程序不是严格在第三个周期内调用。图 5:时钟发生器实例通过下列库,您还可以在 STEP 7 - Micro / WIN 中使用取模运算符。该库为每种变量访问宽度 (字节、字、双字) 各提供了一个独立的程序例
23、程。图 6:库文件夹以归档文件形式提供的 STEP 7 Micro/WIN 库:将“modulo.exe”文件复制到单独的目录内,然后双击启动该文件。STEP 7 Micro/WIN 库将解包。然后便可以集成该库;在版本 V3.2.4.27 及更高版本的 STEP 7 Micro/WIN 中,可以将该库用于 S7-200 项目。注意:关于在 STEP 7 Micro/WIN 中插入库的信息,可以在条目号 16689345 中找到。 modulo.exe ( 64 KB )!!如何在 STEP 7 Micro/WIN 中实现 LOGO! 脉冲继电器功能 ?
24、显示订货号描述: 本条目提供了一个包含有脉冲继电器功能的 STEP 7 Micro/WIN 库。脉冲继电器(功能块: Pulse_Relay)图1:Pulse_Relay功能块 参数变量类型解释ENBOOL使能:允许使用该功能块,必须始终为TRUE (1)InputBOOL信号输入,上升沿(0->1)触发输出置位或者复位SetBOOL置位输出,无论当前是什么状态ResetBOOL复位输出,无论当前是什么状态MemoryBOOL临时存储OutputBOOL信号输出表1:Pulse_Relay 的参数功能:如果信号输入“Input” 有 0->1 的变化
25、边沿(上升沿)发生,如果信号输出“Output” 在低电平,那么将被置位,如果在高电平,那么将被复位。图2:Pulse_Relay信号图将 STEP 7 Micro/WIN 库作为归档文件:将“logo_functions.exe” 文件拷贝到一个独立子文件夹中,然后双击打开它,就可以解压 STEP 7 Micro/WIN 库。然后就可将用于 STEP 7 Micro/WIN的V3.2.4.27 以及更高版本的库文件整合到 S7-200 项目上去。注意事项:· 向 STEP 7 Micro/WIN 中增加库文件的相关信息可以在条目 ID:16689345 中获得。
26、;logo_functions.exe ( 29 KB ) !虽然浮点数在状态上相等,但为什么在“比较实数是否相等”运算中却检测到存在差异?显示订货号描述:对于“比较实数是否相等”的比较运算,由过程运算提供的实数类型的数值非常不精确。由于实数存在修正的误差,故不推荐使用此数据格式进行“相等”比较。浮点数 (或实数) 由一个 32 位的单精度数表示,而访问时使用双字格式。在 S7-200 中,实数精确到 6 个小数位。当使用包括较大数和很小数的一系列数值来计算实数时,可能会出现不精确的结果。当在状态表中查看实数时,相同的实数可能有不同的二进制表示。因此我们推荐不要使用“LD
27、R=”函数,而是使用“LDR<=”和“LDR>=”这两个函数来进行比较运算。这为你提供一个数值比较的比较框架。以归档文件形式提供的 STEP 7 Micro/WIN 库:将“real_compare”文件复制到单独的目录内,然后双击启动该文件。将 STEP 7 Micro/WIN 库解包。然后便可以集成该库,在版本 V3.2.4.27 及更高的 STEP 7 Micro/WIN 中,可以将该库用于 S7-200 项目。注意:· 关于在 STEP 7 Micro/WIN 中插入库的信息,可以在条目号 16689345 中找到。real_compare
28、160;( 64 KB )!!怎样在STEP 7 Micro/WIN 中相互转换二进制码和格雷码?显示订货号说明STEP 7 - Micro/WIN 的标准库中不包含格雷码转换。使用下载的附件可以转换成8位、16位和32位二进制数。格雷码指令库的描述"graycode.mwl" 指令库包括用于字节、字和双字格式的编码和解码的功能块。图 1从二进制码转换到格雷码(BIN_GRAY)功能块 BIN_GRAY_B、BIN_GRAY_W 和 BIN_GRAY_DW 把输入的字节、字和双字类型的二进制码编码成格雷码。图 2 功能参数数据类型操作数BIN_GRAY_BINBY
29、TEVB, IB, QB, MB, SB, SMB, LB, AC, Constant, *VD, *LD, *ACOUTBYTEVB, IB, QB, MB, SB, SMB, LB, AC, *VD, *LD, *ACBIN_GRAY_WINWORDVW, IW, QW, MW, SW, SMW, LW, T, Z, AEW, Constant, AC, *VD, *AC, *LDOUTWORDVW, IW, QW, MW, SW, SMW, LW, T, Z, AC, *VD, *AC, *LDBIN_GRAY_DWINDWORDVD, ID, QD, MD, SD, SMD, LD,
30、AC, HC, Constant, *VD, *LD, *ACOUTDWORDVD, ID, QD, MD, SD, SMD, LD, AC, *VD, *LD, *AC表 1从格雷码转换到二进制码(GRAY_BIN)功能块 GRAY_BIN_B、GRAY_BIN_W 和 GRAY_BIN_DW 把输入的格雷码解码成字节、字和双字类型的二进制码。图 3 功能参数数据类型操作数GRAY_BIN_BINBYTEVB, IB, QB, MB, SB, SMB, LB, AC, Constant, *VD, *LD, *ACOUTBYTEVB, IB, QB, MB, SB, SMB, LB
31、, AC, *VD, *LD, *ACGRAY_BIN_WINWORDVW, IW, QW, MW, SW, SMW, LW, T, Z, AEW, Constant, AC, *VD, *AC, *LDOUTWORDVW, IW, QW, MW, SW, SMW, LW, T, Z, AC, *VD, *AC, *LDGRAY_BIN_DWINDWORDVD, ID, QD, MD, SD, SMD, LD, AC, HC, Constant, *VD, *LD, *ACOUTDWORDVD, ID, QD, MD, SD, SMD, LD, AC, *VD, *LD, *AC表 2定义范围
32、没有使用范围的限制,因为此转换是针对二进制和所有最终被解析为二进制的数据(十进制、十六进制和有符号数)。将格雷码转换为二进制码的附加功能子程序 GRAY_BIN 和 XOR 用来将格雷码解码为二进制代码。STEP 7 Micro/WIN 库是 zip 文件复制 "graycode.zip" 文件到单独的目录并解压缩这个文件。您可以添加这个 "graycode.mwl" 库指令到 S7-200项目,这个库指令可用于 V3.2.4.27 和更高版本的 STEP 7 Micro/WIN 中。注意· 这些格雷码编码和解码块不能用于连接串行 SSI 编码
33、器,因为这些编码器需要通信速率大于 187.5 K bit/s 并且需要两对电缆( 用于时钟和数据 )因此不能连接到 S7-200 CPU 的通信接口。· 关于更多格雷码(变量表、译码规则)信息可查看进入 ID: 25629271· 添加库到 STEP 7 Micro/WIN 中的信息可查看进入 ID:16689345 graycode.zip ( 3 KB )!如果不使用感光开关,如何使用 S7-200 控制百叶窗日出而开,日落而关?显示订货号使用说明:光感开关通常用于确定对百叶窗控制的早晚的开关点。 如您希望使用 SIMATIC S7-20
34、0 来控制百叶窗,可以采用一种天文算法来决定日出和日落的时间,这种运算法可以作为一个 STEP 7 Micro/WIN 库函数供您使用。只需指定相关位置的经度和纬度坐标作为参数,并将 CPU 时钟设置为 UTC 时间。 此外,也可对比运算法则中光感应时间调整百叶窗的开关时间。例如,将百叶窗设定在日出前 10 分钟开,在日落后 5 分钟关。 一旦参数设定后,控制器就开始运行且没有任何临时重新调整。同时它不受夏令时变化的影响。以下表格通过事例说明它是如何运作的。 No.步骤1打开 "shutter_control.mwp" 程序。 这里提
35、供的库文件 "sunvector_2015_en.mwl" 实现了这种天文算法,它已经集成在了该项目中,并占用了存储区 VB0 到 VB49。 根据需要在菜单"File > Library Memory."改变内存区。 只需 mwl 库文件本身就可添加程序。2在程序编辑器中进入到主程序(MAIN)。网络 1 显示的是“shutter_control” 子程序调用。该程序执行了天文算法。子程序“shutter_cuntrol”会在日出时在输出位“open_shutter”, 日落时在输出位“close_shutter”输出一个只持续一个周期的脉冲。您
36、可以通过修改该子程序的输入参数来满足特定的需要。图1:子程序“shutter_control”Longitude:经度度数(如,11° 04' 01'' = 11.0669444°);格林威治东部 = 正,格林威治西部 = 负;Latitude:纬度度数(如,49° 26' 16'' = 49.4377778°);赤道以北 = 正,赤道以南 = 负;Up_offset:与算法计算出的日出时间做比较,用来调整百叶窗打开状态的以分钟为单位的时间偏差。如该值是正,百叶窗较早打开,反之则较后。Down_offset
37、:与算法计算出的日出时间做比较,用来调整百叶窗打开状态的以分钟为单位的时间偏差。如该值是正,百叶窗较早关闭,反之则较后。open_man:手动打开百叶窗的位输入。一个上升沿输入可以在输出位“open_shutter”生成一个周期脉冲信号。例如您可以为其组态一个按钮,或利用该参数来使能打开百叶窗的另一个条件。close_man:手动关闭百叶窗的位输入。一个上升沿输入可以在输出位“close_shutter”生成一个周期脉冲信号。例如您可以为其组态一个按钮,或利用该参数来使能关闭百叶窗的另一个条件。open_shutter:日出时打开百叶窗的周期脉冲。close_shutter:日落时关闭百叶窗的
38、周期脉冲。3调整“百叶窗_控制”子程序的输出参数以满足百叶窗的控制条件。网络 2 和网络 3 主程序中提供了2种方式:网络2 (静态输出信号):位输出 "move_up:A0.0" 设定于日出与日落之间。位输出 "move_down:A0.1" 设定于日落与日出之间。网络3 (输出脉冲):位输出 "move_up:A0.0" 在日出时设定1秒钟。位输出 "move_down:A0.1" 在日落时设定1秒钟。保留其中可以满足您控制要求的方法,删除不想用的方法。按需求更改输出位地址。4将控制器设定为 UTC 时间。UT
39、C 时间(协调世界时)是与当地时间相对的有效的全世界的时间,而当地时间只在区域限定的时区内有效。如,UTC+1 为欧洲中部时间,UTC+2 为欧洲中部夏令时间 (CEST)。当前 UTC 时间可通过互联网查找(如 )。 时间控制法有两种。利用 CPU 实时时钟:在“PLC>实时时钟.”下的 Micro/WIN 设定当前日期以及当前的 UTC 时间。夏令时选择“不更改”。注意:如控制器由网络控制,或存在一个比 CPU 实时时钟更可靠的时间源,您可以在适当的间隔通过执行“设置实时时钟”(SET_RTC)操作来同步时间。利用 GPS 接收器:一种很方便的时间控制的方式是将 GPS 接
40、收器连接到 CPU。这就省去了通过其他方式对时间的同步或调整。此外,可获知经度与纬度度数。 关于如何将 GPS 接收器连接到 S7-200 控制器,满足的条件以及可用的软件块等信息可查询条目 ID 26311405 。还请注意以下关于 GPS 块与百叶窗控制器块之间的接口:· 在子程序 "shutter_control" 中两次调用了块 "SunPos_Calculation",每次调用都要将参数“Time_Source”设置为 TRUE。这样就使 CPU 实时时钟从天文运算法中分离出来。· GPS 功能块 GPS
41、_NMEA_UTC_Time 的输出是字节格式,需要将这些日期和时间的成分(年,月,日,小时,分钟,秒)转换为 BCD 格式(二进制编码的十进制),也就是变量库函数 "SunVector_2015(v1.2)" 存储区中的 year_BCD,month_BCD,day_BCD,hour_BCD,minute_BCD 和 second_BCD。· 将“shutter_cuntrol”块的输入参数“经度”和“纬度”(REAL)连接到 GPS 块 GPS_NMEA_POS 相应的输出参数。 在此处对格式做必要的更改。注意方向 N(北)和 E(东)为正,S(南)与 W (
42、西)为负。 下载:以下 ZIP 文件包含了执行天文算法的库函数 "sunvector_2015_en.mwl" 和例程项目"shutter_control_en.mwp"。 shutter_control.zip ( 44 KB )!如何使用 S7-200 计算大于 16 位的值?显示订货号描述:S7-200 提供集成于 STEP 7-Micro/WIN 的 16 位计数功能块,以及 32 位的高速位计数器。下面的所附的 "Counter_DINT" library 可以用于计算大于
43、16 位的循环计数。这个库包含了与集成的 16 位计数功能块相同的块,虽然在双字格式中有附加的溢出输出。 图. 01"Counter_DINT" 运行库在全局变量存储区中占用一个字节。在 STEP 7-Micro/WIN via "File" > "Library Memory." 中输入一个地址,在这个范围可以用于库的变量存储。 图. 02CTU_DI当有一个加计数输入 (CU) 的上升沿时,32 位的计数器 (CTU_DI) 从当前值开始加计数。如果当前值 (CV) 大
44、于或者等于预设值 (PV),那么计数器位 (Q) 被激活。如果复位输入被激活,那么计数器复位。如果达到最大值 (2,147,483,647) ,计数器停止计数。对于最大值一旦 (CU) 进一步得到计数脉冲,最大溢出位被激活。这个位也是通过复位输入进行复位。 图. 03配置 "CTU_DI" 块 标志变量类型数据类型注释ENINBOOL激活 "CTU_DI" 块CUINBOOL加计数输入 (上升沿)RESETINBOOL复位输入PVINDINT预设值CVIN_OUTDINT当前计数值MAXIN_OUTBOOL溢出显示QOUT
45、BOOL计数器位 ("CTD_DI" 块输出)表 01CTD_DI当在 CD 输入有上升沿时,32 位的计数器 (CTU_DI) 从当前计算值开始减计数。如果当前值 (CV) 等于零,计数器位 (Q) 被接通。如果装载输入被接通,计数器复位计数位 (Q),并且装载预设值 (PV) 到当前值 (CV)。当达到零时,减计数器停止计数。一旦计数器达到零进一步脉冲计数 (CD) ,最小溢出位被激活。这个位也是通过负载输入进行复位。图. 04配置 "CTD_DI" 块 标志变量类型数据类型注释ENINBOOL激活 "CTD_DI" 块
46、CDINBOOL减计数输入 (上升沿)LOADINBOOL负载输入PVINDINT预设值CVIN_OUTDINT当前计数值MININ_OUTBOOL溢出显示QOUTBOOL计数器位("CTD_DI"块输出)表 02CTUD_DI当加计数输入 (CU) 有上升沿时,32 位的运行加减计数器 (CTU_DI) 向上计数;当在减计数输入 (CD) 有上升沿时,向下计数。当前值保存在参数 CV 中。每次运行时,预设值 PV 与当前值进行比较。如果达到最大值 (2,147,483,647),在加计数输入的下一个上升沿导致计数器转向并且又从最小值 (2,147,483,64
47、8) 开始计算。如果达到最小值 (-2,147,483,648) ,在减计数输入的下一个上升沿计数器转向并且继续从最大值 (2,147,483,647) 开始计算。不论哪种情况,都设置溢出位 OV 。如果当前值 CV 大于或者等于预设值 PV,计数器位 Q 被激活。在其它任何情况下,计数器位被断开。如果复位输入被激活,计数器 CV 和 溢出位 OV 被复位。图. 05配置 "CTUD_DI" 块 标志变量类型数据类型注释ENINBOOL激活 "CTUD_DI" 块CUINBOOL加计数输入 (上升沿)CDIN
48、BOOL减计数输入 (上升沿)RESETINBOOL复位输入PVINDINT预设值CVIN_OUTDINT当前计数值OVIN_OUTBOOL溢出显示QOUTBOOL计数器位 ("CTUD_DI" 块输出)表 03下载: "Counter_DINT.zip" 下载包括如下文件: 文件描述"counter_dint.mwl" 库- 包含 32 位的计数位 "CTU_DI", "CTD_DI" 和 "CTUD_DI""
49、Counter_DINT.mwp" 项目- 本常问问题的项目案例 Counter_DINT.zip ( 9 KB )!如何使用 S7-200 本体脉冲输出实现伺服驱动轴的定位功能?显示订货号指导:指令库 “ MAP SERV Q0.0 ” 和 “ MAP SERV Q0.1 ”(MAP SERV = Micro Automation Positioning SERVo) 能够用 S7-200 CPU 的脉冲输出点 A0.0 (Q0.0) 和 A0.1 (Q0.1) 支持伺服驱动的轴定位功能。如果在一个 S7-200 项目中同时使用两个指令库,就
50、可以在一个控制器上控制两个轴。下载:可下载的文件 “ SERV_MAP_e.pdf ” 包括指令库的说明,以及英文的例子程序 “ MAP SERV Q0.0.mwp ”; ZIP 文件 “ MAP_SERV.zip ” 包括指令库 “ map serv Q0.0.mwl ” 和 “ map serv Q0.1.mwl ”,以及 “ MAP SERV Q0.0 ” 的应用例程 “ MAP SERV Q0.0.mwp ”。版本更新当前库版本1.8包括以下改变:· 为“ Q0_x_MoveVelocity ”优化了限位功能· 激活
51、参数 “ Disable_Auto_Stop ” · 在寻找参考点“ Q0_x_Home ”过程中优化“ Q0_x_Stop ”停止性能 。下表列出了带有 24 V DC A0.0 和 A0.1 输出的S7-200 CPUs 的最大脉冲输出频率: CPU脉冲频率(最大值) kHz221202222022420224XP10022620表 01 MAP SERV_e.pdf ( 1376 KB ) MAP SERV.zip ( 52 KB )!怎样使用 TD 200 或 TD 200C 来显示棒图?显示订货号说明:文
52、本显示器 200 和 200C 支持棒图字符集。图 01使用 STEP 7 Micro/WIN 中的文本显示向导和 "TD200 Bar" 库指令,可以生成使棒图能够显示到文本显示器上的 ASCII 码值, 此ASCII 码值通过一个整型变量以字节为单位产生 ( 见图 01 )。1. “TD200 Bar” 库指令集图 02此库指令集包含以下功能块:· Bar_V2_1_ae· Bar_V3_CV1· Counter在本文配置说明部分将对这些块指令和文本显示向导一同加以详细解释。配置说明被分为以下两个部分:· 配置 TD 200 V2
53、.1 和更早的版本· 配置 TD 200 V3.0 或 TD 200C 1.02. 配置 TD 200 使其显示棒图使用提供的 PPI 电缆将 TD 200 连接到您的 S7-200 CPU 的 Port 0,并将 Port 1 连接到您的电脑。运行 MicroWin。 序号描述1在 “工具” 菜单下打开 “文本显示向导”。2点击 “下一步” 来跳过 “简介” 页。3选择您的文本显示器的型号和版本。Fig. 03表 012.1 配置 TD 200 V2.1 和更早的版本按照以下步骤将配置 TD 200 V2.1 或更早版本显示棒图。 序号描述1在 “本地
54、化显示” 对话框选择您要使用的语言,并选择 “棒图” 作为支持的语言集。 点击 “下一步”确认。图 042根据您的要求设置 “标准菜单和密码” 窗口,点击 “下一步”。3在菜单项 “功能键和更新速率” 中将更新速率设定为 “尽可能快”,然后点击 “下一步” 确认。4在 “报警选项” 菜单中选择 “40个字符信息格式” 并点击 “下一步”。5在菜单项 “分配存储区” 中设置参数块的起始地址,使能位和消息内容。重要提示:请注意并记住参数块的起始地址!点击 “下一步”。图 056在 “报警” 菜单中 TD 200 底部定义 “嵌入数据”,选择数据格式 “字”以显示整型变量,选择所需的显示格式,点击
55、“OK” 确认并点击 “下一步 >”。图 067在菜单项 “项目组件” 中,点击 “完成” 以完成 “文本显示向导”,并点击 “ Yes ” 确定完成。8在 STEP 7 Micro/WIN 中打开向导生成的数据块 “ TD_DATA_x ” 并找到嵌入数据的存储地址 (这里为 VW62)。图 079在您项目的 “主程序” 中调用库指令 “ Bar_V2_1ae ” (用来在2.1及更早版本的 TD 200 上显示棒图并输出 “ IN ”参数)。将参数块的起始字节地址指针值赋给输入参数 “ PAR_BLOCK ”(这里为 &VB0 )。将嵌入数据的起始字节地址指针值赋给输入参数 “ DATA_ADDR ”(这里为 &VB62 )。图 08表 02库指令集 “ Bar_V2_1_ae ”表 03 中列出了库功能块 “ Bar_V2_1ae ” 的参数说明: 符号变量类型数据类型注释取值范围INININT计数值0 - HI_LIMHI_LIMININT最大值1 - 65.535PAR_BLOCKINDINT参数块起始地址的指针&VBxDATA_ADDRINDINT嵌入数据起始地址的指针&VBx表 032.2 配置 TD 200 V3.0 或 TD 200C 1.0按照
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 石河子大学《语言程序设计》2021-2022学年期末试卷
- 石河子大学《双碳概论》2023-2024学年第一学期期末试卷
- 石河子大学《工程项目管理》2022-2023学年第一学期期末试卷
- 石河子大学《材料力学》2023-2024学年第一学期期末试卷
- 九年级数学专题总复习(含答案)
- 沈阳理工大学《力学》2021-2022学年第一学期期末试卷
- 沈阳理工大学《机电传动控制》2022-2023学年期末试卷
- 四史2023-2024-2学期学习通超星期末考试答案章节答案2024年
- 沈阳理工大学《动态网络广告》2022-2023学年期末试卷
- 关于合同法的专著
- Access数据库课程标准
- 幼儿园中班语言:《两只蚊子吹牛皮》 课件
- 临时用电漏电保护器运行检测记录表
- 头痛的国际分类(第三版)中文
- 音乐ppt课件《小小的船》
- 幼儿园教学课件语言教育《雪地里的小画家》
- 结构化面试经典100题及答案
- ESG引领下的西部城市再出发-新型城市竞争力策略研究白皮书
- 小学生班干部竞选自我介绍PPT模板公开课一等奖市赛课获奖课件
- 万科物业岗位说明书2
- 音乐教学说课
评论
0/150
提交评论