通过输入 1I2 (2I2) 多次设置计数器下图显示了通过输入 1I2 多次设置计数器 1。 通过输入 2I2 设置计数器2 的情况类似。 此处描述的情况中,仅设置了 ENSET_UP,即在向上计数过程中设置计数器。只要设置了 ENSET_UP,则会在输入1I2 处通过第一个上升沿设置相关计数器。 当复位ENSET_UP 时,无法通过输入 1I2 设置计数器。 只有在设置ENSET_UP 后,输入 1I2处的下一个正跳沿才会设置计数器。通过零标记设置计数器如果为通过编码器的零标记设置计数器分配参数,则通过零标记的上升沿设置相关计数器。如果只在零标记的上升沿时设置相关计数器的输入1I2 (2I2),则执行设置。使用属于 FC CNT_CTRL 的 DB 的 ENSET_UP 和 ENSET_DN变量以及通过分配参数,您可以在出现零标记上升沿的情况下指定相应 FM 450-1 计数器的特性。位 FM 450-1计数器的特性ENSET_UP 设置 仅在向上计数的情况下设置计数器。ENSET_DN 设置仅在向下计数的情况下设置计数器。ENSET_UP 和ENSET_DN 设置为向上和向下计数设置计数器。参数分配 FM 450-1计数器的特性参数分配“计数器的单次设置”仅在出现第一个零标记的上升沿时设置计数器。如果要设置计数器,则必须先设置ENSET_UP 或ENSET_DN(跳沿评估)。通过零标记的下一个上升沿设置计数器。参数分配“计数器的多次设置”只要设置了ENSET_UP 和/或 ENSET_DN,就将通过零标记的每个上升沿设置计数器。说明必须设置 ENSET_UP 或/和ENSET_DN 两个变量中的一个和输入 1I2(2I2),以便可以通过零标记设置相关的计数器。通过零标记单次设置下图显示了正在通过零标记设置一次计数器 1。此处描述的情况中,仅设置了 ENSET_UP,即在向上计数过程中设置计数器。只要设置了 ENSET_UP 和输入1I2,就会通过零标记的第一个上升沿设置相关计数器。如果要设置计数器 1,则必须复位ENSET_UP,设置它。如果没有设置输入 1I2,则会在设置 1/2 后通过第一个零标记执行设置。如果已设置输入1I2,则会通过下一个零标记执行设置。通过输入 2I2 设置计数器 2的情况类似。通过零标记多次设置下图显示了通过零标记多次设置计数器 1。 此处描述的情况中,仅设置了ENSET_UP,即在向上计数过程中设置计数器。只要设置了 ENSET_UP 和输入1I2,就会通过零标记的每个第一个上升沿设置相关计数器。通过输入 2I2 设置计数器 2 的情况类似。启动过程中断简介对于 FM450-1 的单个计数器,您可以在操作过程中设置要触发硬件中断的事件。为此,您可以在参数分配屏幕标记中对计数器中断进行参数分配。什么是硬件中断?如果不考虑 CPU 的循环而对事件做出响应,则 FM450-1 的每个计数器均可触发硬件中断。CPU 会中断循环程序并处理硬件中断 OB。哪些事件可触发硬件中断?在 FM450-1 计数模式中,以下事件可以触发硬件中断(两个计数器的每一个之间均相互独立):• 门的打开(在使用 HW 或 SW门的模式下)• 门的关闭(在使用 HW 或 SW 门的模式下)• 上溢• 下溢• 过零点• 向上达到比较值 1• 向下达到比较值 1•向上达到比较值 2• 向下达到比较值 2•通过外部信号设置计数器只要遵守边界条件,您可以为触发硬件中断选择任意数量的事件。启用硬件中断当配置硬件时,在参数分配屏幕标记中,您可以为模块启用中断并选择该模块是否启动诊断和/或硬件中断。硬件中断OB,OB 4x如果发生硬件中断,则将中断用户程序,还会将数据从模块传送到 OB 4x 的启动信息并调用OB 4x。 硬件中断通过退出OB 4x 确认。如果未对 OB 4x 进行编程,则 CPU 将切换到 STOP。如果随后切换回RUN,则将删除硬件中断要求。启动信息临时变量 OB4x_POINT_ADDR 将在 OB4x的启动信息中说明。OB4x_POINT_ADDR 变量(字节 8 - 11)由四个字节组成。有关启动硬件中断的事件的信息将输入到这四个字节中。下表显示了为中断设置的位。所有未列出的位没有意义并且为零。丢失硬件中断如果触发硬件中断的事件发生,而上一个相同的事件尚未确认,则将不会触发其他硬件中断,硬件中断丢失。根据分配的参数,这可能导致诊断中断“硬件中断丢失”。缺省设置在缺省设置中未分配硬件中断。
编码器信号及其评估章概述章概述本章介绍以下内容:•可以将哪些编码器连接到计数器模块• 编码器信号的时间剖面• 通过计数器模块对编码器信号进行多重评估• 模块如何监视各种编码器信号•哪些信号可被分配输入过滤器参数。可以连接的编码器引言计数器模块可处理增量编码器或脉冲生成器生成的矩形计数信号。增量编码器可以扫描条形码以生成矩形电脉冲。它们的区别在于脉冲大小和信号数不同。脉冲生成器(例如光栅或接近开关[BERO])仅返回特定大小的矩形信号。连接不同的编码器计数器模块支持返回计数信号脉冲的不同编码器。下表显示了这些编码器和相应的信号。5 V 差分信号5 V 增量编码器的计数信号由 5 V 增量编码器返回的到模块的 RS422信号:• A 和 /A• B 和 /B• N 和 /N信号 /A、/B 和 /N 分别为 A、B 和 N 的反转信号。信号 A 和 B是通过将相位移位 90° 得到的。5 V 增量编码器的轨迹 A 和 B 用于计数。 如果据此编程,则轨迹 N用于通过装载值初始化计数器。以这六个信号为特征的编码器是对称编码器。该图显示了编码器信号的时间剖面:模块通过判断信号 A 和 B的比率来检测计数方向。“信号判断 (页 89)”一章中的图显示了对信号 A 和 B的哪些沿进行向下或向上计数。改变计数方向可以在不必修改接线的情况下使用“计数方向常规”和“计数信号反向”参数改变计数方向。监视编码器信号模块将监视电缆连接,并检测断线或短路。您可以定义三个信号对中哪些包含在程序的监视中。如果您已在程序(监视)中禁用相应的诊断功能,则无需为任何未使用的的信号对接线。所有三个信号处的错误状态指出了有故障的编码器,“5.2V DC”编码器电源短路或缺少编码器。编程完成时,模块检测到错误,错误信息将写入诊断数据记录 DS0 和 DS1。如果据此编程,此情况可能导致诊断中断。编码插头(仅适用于 FM 350-1)要操作此编码器,请在位置 A 插入编码插头。24 V信号24 V 编码器返回的计数信号24 V 增量编码器24 V 增量编码器将 24 V 信号 A*、B* 和 N* 返回到模块。信号A* 和 B* 是通过将相位移位 90°得到的。24 V 信号使用星号“*”标记。24 V 增量编码器的轨迹 A* 和 B*用于计数。 如果据此编程,轨迹 N*用于通过装载值初始化计数器。未返回反转信号的编码器为对称编码器。该图显示了编码器信号的时间剖面:模块通过判断信号 A* 和 B*的比率检测计数方向。 “信号判断 (页 89)”一章中的图显示了对信号 A* 和 B*的哪些跳沿进行加计数或减计数。可以为源输出、推挽输出或漏型输出的连接对 24 V 编码器信号的输入进行编程。有关详细信息,请参考“编码器手册”。可以在不必修改接线的情况下使用“计数方向常规”和“计数信号反向”参数改变计数方向。不具有/具有方向信号的24 V 脉冲编码器编码器(例如接近开关 [BERO] 或光栅)仅返回接线到前连接器的端子 A*的计数信号。您可以为方向检测将信号接线到相关计数器的端子 B*。 如果编码器没有返回相应的信号,您可以接线在用户程序内生成的相应ID 信号,或使用相应的过程信号。该图显示了编码器信号以及生成的计数脉冲的时间曲线您无法通过反转信号 B*来翻转这些计数信号的方向。说明添加所有信号后,如果计数信号发生振荡,此类型的判断可能导致边沿处的计数值“渐渐离开”。24 V计数输入的输入滤波器为了抑制干扰,可将输入滤波器参数化,使 24 V 输入 A*、B* 和 N* 以及数字输入使用统一的过滤时间。可用的输入滤波器:监视编码器信号不监视 24 V 计数信号以检测断线或短路情况。编码插头(仅适用于 FM350-1)要操作此编码器,请在位置 D 插入编码插头。信号判断概述计数器模块支持信号沿的计数。 它通常判断 A (A*)处的沿(信号判断)。 增加分辨率的程序中的选项:• 单重判断• 双重判断• 四重判断对于具有信号 A* 和 B* 的 90° 相移位的24 V 增量 24 V 编码器,返回相位移动 90°的信号 A 和 B的 5 V增量编码器仅支持多重判断。单重判断在此模式下,模块将仅判断信号 A 的一个沿。如果轨迹 B 处是低电平,则会在轨迹 A的正跳沿处记录向上计数脉冲。 如果轨迹 B 处是低电平,则会在轨迹 A的正跳沿处记录向下计数脉冲。该图显示了信号的单重判断:双重判断双重判断指信号 A 的正跳沿和负跳沿的判断。信号 B处的逻辑电平将确定计数方向,即向上或向下计数脉冲。该图显示了信号的双重判断:四重判断四重判断指信号 A 和 B的正跳沿和负跳沿的判断。信号 A 和 B 处的逻辑电平将确定计数方向,即向上或向下计数脉冲。该图显示了信号的四重判断: DB的分配FC CNT_CTRL 的 DB与模块中某个通道相关的所有数据都在 FC CNT_CTRL 的 DB 中。DB 数据结构和长度由FCCNT_CTRL 中的变量声明来确定。在配置模块之前,DB 必须为其分配以下有效数据(请参见“程序 (页 39)”一节):•模块地址(地址 6.0)• 通道起始地址(地址 8.0)• 用户数据长度(地址 12.0)该 DB 从 UDT 1中生成,用作包含关联的用户特定数据类型的数据块(请参见“程序(页 39)”一节)。 以下显示了由此得出的 DB分配。
错误和诊断本章概述本章概述出错原因可能是操作错误或者必须与用户进行通讯的模块接线错误。错误和故障在模块上分为以下几类:•通过指示内部和外部模块故障的诊断 LED 所显示的故障。• 可触发诊断中断的故障。•由于操作错误所导致的操作错误。不同类别的错误在不同的位置指示并显示,且必须以不同方式进行确认。本章描述了• 可能发生的错误或故障、•显示这些错误和故障的位置以及• 确认这些错误和故障的方式。通过诊断 LED 指示的故障在何处显示故障?两个红色诊断 LED所指示的故障:• INTF 诊断 LED 显示模块的内部故障。• EXTF 诊断 LED显示电缆连接的外部故障。诊断中断的启动如果已在相关的参数分配屏幕窗体中启用诊断中断,则所有故障(EPROM测试中的故障除外)均可启动诊断中断。 您将在诊断数据记录 DS0 和 DS1 中找到导致 LED 亮起的故障。 诊断数据记录 DS0和 DS1 的分配将在下节中予以描述。诊断中断的启动什么是诊断中断?如果用户程序要对内部或外部故障进行响应,您可以为将要中断 CPU设备周期性程序的诊断中断设置参数,并调用诊断中断 OB (OB 82)。哪些事件可启动诊断中断?以下事件可启动诊断中断:• 外部辅助1L+/1M 电压出现故障。• 5.2 VDC 编码器电源出现短路或过载。• 模块参数分配错误。• 看门狗超时• RAM 故障•硬件中断丢失• 信号 A 出现故障(线路断开、短路、电缆丢失)• 信号 B 出现故障(线路断开、短路、电缆丢失)• 信号 N出现故障(线路断开、短路、电缆丢失)启用诊断中断您可以禁用或启用用于模块的中断,并选择该模块是否启动诊断中断和/或硬件中断。对诊断中断的响应如果发生可触发诊断中断的事件,则会发生下列情况:•诊断信息存储于模块上的诊断数据记录 DS0 和 DS1 中。• 错误 LED 亮起。• 已调用诊断中断 OB (OB82)。•将在诊断中断 OB 的启动信息中输入诊断数据记录 DS0。• 计数过程保持不变。如果未编程任何 OB82,CPU 将进入 STOP状态。诊断数据记录 DS0 和 DS1有关哪个事件触发了诊断中断的信息存储于诊断数据记录 DS0 和 DS1 中。诊断数据记录DS0由 4 个字节组成;DS1 由 12 个字节组成,其前 4 个字节与 DS0 相同。从模块读取数据记录调用诊断 OB时,会将诊断数据记录 DS0 自动传送到启动信息。 这四个字节将存储在 OB 82的本地数据元件(字节 8 到 11)中。您可使用FC DIAG_INF 从模块读出诊断数据记录 DS1,并由此读出 DS0 的内容。这仅在DS0报告有一个通道发生错误时有用。