一、 高速计数器的介绍 01 高速计数器功能的概要 高速计数器是使用CPU模块的通用输入端子及高速脉冲输入输出模块,对普通计数器无法计测的高速脉冲的输入数进行计数的功能。 根据所用输入(模块),高速计数器的各功能有以下限制。
02 高速计数器功能的动作模式 (1)普通模式 作为一般的高速计数器使用。 (2)脉冲密度测定模式 测定从输入脉冲数开始到指定时间内的脉冲数。 (3)转速测定模式 测定从输入脉冲数开始到指定时间内的转速。 03 高速计数器的专用指令 高速计数器的计测使用高速计数器用的HIOEN/DHIOEN指令进行计数的开始、停止指示等。 04 其它高速计数器的用指令 还有DHSCS指令、DHSCR指令、DHSZ指令(以下称高速比较指令)等高速计数器用指令。 05 高速计数器功能的执行步骤 (1)确认高速计数器的规格。 确认高速计数器的类型、最高频率等规格。 (2)与外部设备连接。 关于与外部设备的配线的详细内容,参照MELSEC iQ-F FX5U用户手册(硬件篇)。 (3)设置参数。 进行高速计数器的通道设置等参数设置。 (4)创建程序。 创建使用高速计数器所需的程序。 (5)执行并调试程序。 二、 高速计数器的规格 01 高速计数器的类型 (1)1相1输入计数器(S/W)--受扫描周期影响 1相1输入计数器(S/W)的计数方法如下所示。
(2)1相1输入计数器(H/W)--受硬件输入影响 1相1输入计数器(H/W)的计数方法如下所示。
(3)1相2输入计数器 1相2输入计数器的计数方法如下所示。
(4)2相2输入计数器[1倍频] 2相2输入计数器[1倍频]的计数方法如下所示。
(5)2相2输入计数器[2倍频] 2相2输入计数器[2倍频]的计数方法如下所示。
(6)2相2输入计数器[4倍频] 2相2输入计数器[4倍频]的计数方法如下所示。
(7)内部时钟 内部时钟的计数方法如下所示。
内部时钟始终以1Mhz的时钟进行计数递增/递减。不使用来自外部的输入。 1Hz,即在单位时间内完成振动的次数,单位为赫兹(1赫兹=1次/秒)。 1MHz=1000kHz(1百万赫兹,即每秒振动1百万次)。 02 高速计数器的形式与计数范围 根据环长设置,高速计数器的形式为环形计数器。 (1)设置了链接长度时
(2)未设置链接长度时(环形计数器)
03 高速计数器的最高频率 各类高速计数器的可计数最高频率如下所示。 关于各输入分配的最高频率,参照【高速计数器的各输入分配的最高频率】。
注意:最高频率会受到输入电路的限制。
04 高速计数器的一致输出性能 (1)CPU模块 使用高速比较指令(DHSCS、DHSCR、DHSZ指令)、高速比较表、多点输出高速比较表输出到Y0~Y17时,脉冲的输入→计数值的比较(一致)→输出至Y为止的时间为5μs+输入响应时间。 输出到Y20以后时,从脉冲的输入到输出为止的时间将受到通信及用户中断的影响。 (2)高速脉冲输入输出模块 高速比较表的一致输出只能是自身模块内的输出。 输入脉冲→比较计数值(一致)→输出至Y所花费的时间是5μs+输入响应时间。 (3)动作图 动作图如下所示。(比较值:5)
三、 高速计数器的分配 01 高速计数器的输入分配 高速计数器的输入软元件的分配通过参数进行设置。 通过参数对各通道设置各自的功能时,即确定与之对应的分配。 使用内部时钟时,为与1相1输入(S/W)相同的分配,不使用A相。 高速计数器的输入分配如下所示。 A:A相输入 P:外部预置输入 E:外部使能输入 B:B相输入(但是,1相1输入(H/W)时,变为方向切换输入。)
02 高速脉冲输入输出模块 各输入的□是各高速脉冲输入输出模块的起始输入编号。
要点 高速脉冲输入输出模块的通道编号分配如下。按距离CPU模块的顺序排列,从近到远分别为第1台、第2台……。 1)高速脉冲输入输出模块 第1台:通道9、通道10 2)高速脉冲输入输出模块 第2台:通道11、通道12 3)高速脉冲输入输出模块 第3台:通道13、通道14 4)高速脉冲输入输出模块 第4台:通道15、通道16 03 高速计数器的各输入分配的最高频率 高速计数器的各输入分配的最高频率如下所示。 (1)FX5U-32M□ 、FX5UC-32M□ X6~X17为止的输入频率与最高频率的值无关,最高为10kHz。 预置输入、使能输入的输入频率与最高频率的值无关,最高为10kHz。 A:A相输入、B:B相输入、P:外部预置输入、E:外部使能输入
(2)FX5U-64M□、FX5U-80M□、FX5UC-64M□、FX5UC-96M□ X10~X17为止的输入频率与最高频率的值无关,最高为10kHz。 预置输入、使能输入的输入频率与最高频率的值无关,最高为10kHz。
(3)高速脉冲输入输出模块 X□+6、X□+7为止的输入频率与最高频率的值无关,最高为10kHz。 预置输入、使能输入的输入频率与最高频率的值无关,最高为10kHz。 各输入的□是各高速脉冲输入输出模块的起始输入编号。 A:A相输入、B:B相输入、P:外部预置输入、E:外部使能输入
四、高速计数器的参数 01 参数的概要 高速计数器的设置、高速比较表、多点输出高速比较表、输入响应时间的设置通过参数进行。 可通过参数设置的主要项目如下所示。 (1)基本设置 (2)高速比较表的设置 (3)多点输出高速表的设置 (4)输入响应时间的设置 02 参数设置详细 (1)高速计数器(普通模式)。 (2)高速计数器(脉冲密度测定模式)。 (3)高速计数器(转速测定模式)。 (4)高速比较表。 (5)多点输出高速比较表。 (6)输入响应时间的设置。 要点: 参数在CPU模块的电源ON时或复位时变为有效。此外,也将同时向特殊继电器、特殊寄存器传送值,通过用程序更改该值,可执行与参数设置不同的动作。 关于高速计数器的特殊继电器、特殊寄存器,参照【特殊继电器一览】、【特殊寄存器一览】。 (1)高速计数器(普通模式) 作为一般的高速计数器使用时使用普通模式。 1)参数设置 通过高速计数器的参数,将动作模式设置为普通模式。 进行要使用的通道的详细设置。 CPU模块的参数设置位置:导航窗口[参数]→[FX5UCPU]→[模块参数]→[高速I/O]→“输入功能” →“高速计数器”→“详细设置”→“基本设置”。
2)设置步骤: ①通道启用:可选择[使用]或者[不使用];
②设置[运行模式];
③设置[脉冲输入模式];
④设置[预置输入]和[预置值];
⑤设置[使能输入]; 对应高速计数器的 E:外部使能输入; 设定禁用,E信号对应的硬件信号无效,不需使能输入; 设定启动,需要E信号输入才可使用高速计数器。
⑥设置[链接长度];
3)开始/停止高速计数器的计测: 高速计数器仅通过设置参数无法进行计数。 要开始/停止计数,需要通过HIOEN/DHIOEN指令执行开始/停止。 4)读取/写入高速计数器的当前值 高速计数器的当前值按每个通道存储在特殊寄存器中,通过监视该值可确认当前值。但是,特殊寄存器会因END处理而被更新,因此有可能与实际的值不同。 希望读取最新的值时,可使用HCMOV/DHCMOV指令读取最新的值。 五、高速计数器的专用指令 01 16位数据高速输入输出功能的开始/停止: (1)HIOEN(P)指令:控制高速输入输出功能的开始/停止。 (2)指令格式
(3)功能编号S1的值 *1:动作中使高速计数器(功能编号: K0)停止时,虽然功能仍处于工作状态,但因计数器停止,因此将变为无处理。 *2:使多点输出高速比较表(功能编号: K30)停止时,相同通道的高速计数器也将同时停止。
(4)S2和S3的值 ①功能编号S1为K0的情况 可对每个高速计数器的通道,分别控制计数器的开始、停止。 通道1~通道8变为CPU模块,通道9~通道16变为高速脉冲输入输出模块。
例如: 要启用通道3时,应在(s2)中设置04H。要停止时,在(s3)中设置04H。 要启用通道1、通道4、通道5时,应在(s2)中设置19H。要停止时,在(s3)中设置19H。 要启用通道1、通道4、停止通道5时,应在(s2)中设置09H、在(s3)中设置10H。 ②功能编号S1为K10的情况 可对每个高速计数器的通道,分别控制脉冲密度测定(转速测定)的开始、停止。
③功能编号S1为K20~K24的情况 设置将启用、停止的高速比较表编号位设为ON的值。 CPU模块(K20)时,可以使用b0~b15。 高速脉冲输入输出模块(K21~K24)时,可以使用b0~b14。
④功能编号S1为K30的情况 在多点输出高速比较表的情况下,无需指定通道。 启用时,在(s2)中设置01H。停止时,在(s3)中设置01H。
⑤功能编号S1为K40、K50的情况 可对每个通道,分别控制脉冲宽度测定及PWM的开始、停止。 通道1~通道4变为CPU模块,通道5~通道12变为高速脉冲输入输出模块。
(5)HIOEN(P)指令编程示例 使用高速计数器[普通模式]时,则(s1)设为K0; 设定CH1、CH3通道开启计数时,则(s2)设为H5; 设定CH4、CH6通道关闭计数时,则(s3)设为H28。
02 32位数据高速输入输出功能的开始/停止: (1)DHIOEN(P)指令:控制高速输入输出功能的开始/停止。 (2)指令格式
(3)与16位指令HIOEN不同的地方在于 当s1为K20时,s2、s3需使用32位的数据。
03 读取/写入高速计数器的当前值: 高速计数器的当前值按每个通道存储在特殊寄存器中,通过监视该值可确认当前值。但是,特殊寄存器会因END处理而被更新,因此有可能与实际的值不同。 希望读取最新的值时,可使用HCMOV/DHCMOV指令读取最新的值。 (1)32位数据高速当前值传送 DHCMOV(P)指令:以高速计数器/脉冲宽度测定/PWM/定位用特殊寄存器为对象,进行读取或写入(更新)操作时使用该指令。 (2)指令格式
(3)功能 将(s)中指定的软元件值传送至(d)中指定的软元件。此时, 如果(n)的值为K0,则保留(s)的值。 如果(n)的值为K1,传送后将(s)的值清零。仅在高速计数器的当前值SD软元件或作为高速计数器使用FX3兼容高速计数器时的LC软元件时执行清除。 (4)要点 ①(s)为支持高速传送的软元件时 执行DHCMOV指令时,获取高速计数器当前值等的最新值后,传送至(d)。 ②(d)为支持高速传送的软元件时 执行DHCMOV指令时,可以更改高速计数器当前值等值。 (4)高速计数器对应的特殊存储器编号 R/W表示可读可写。
六、应用实例 1、使用FX-5U的高速计数器功能,对增量式编码器进行计数,读取计数值。2、编码器的介绍(1)选用的编码器规格: ① 4线的增量式编码器:A相、B相、24V、0V; ②每转脉冲数:400P/R,即编码器旋转一圈发出400个脉冲; ③编码器输出类型:NPN,即A/B相输出的电压为0V。 (2)编码器的接线
3、FX-5U的高速计数器参数设置(1)[CH1]使用高速计数器; (2)运行模式设置为[普通模式]; (3)脉冲数入模式设置为[2相1倍频]; (4)预置输入设置为[禁用],则预置值无效; (5)使能输入设置为[禁用]; (6)链接长度设置为[禁用],则对应计数范围为-2147483648~+2147483747; (7)运行模式为[普通模式],[测定的单位时间]和[每转的脉冲数]无效。
4、程序编程(1)启用/停止高速计数器计数功能,指令HIOEN ①高速计数器的普通模式,则S1为K0; ②启用CH1,则S2为2#0000 0000 0000 0001,即H0001; ③未使用CH16~CH2,停止功能无需设置,则S3为2#0000 0000 0000 0000,即H0000。 (2)读取高速计数器的当前值,指令DHCMOV ① 将CH1的当前值SD4501、SD4500传送给D1001、D1000 ② n的值设为为K0,则传送完成后保留s的值。
(3)设置输入响应时间 将X0和X1的输入响应时间由10ms修改为10μs,保证能够获取全部的高速脉冲输入信号。
(4)查看SD4500、SD4501的值,D1001、D1000的值 ①打开监视功能,在程序中查看SD4500、SD4501的值,D1001、D1000的值 ②打开【监看窗口】,查看SD4500、SD4501的值,D1001、D1000的值
责任编辑:xj
文章出处:【微信公众号:工业机器人前沿】欢迎添加关注!文章转载请注明出处。
-
plc
+关注
关注
5008文章
13150浏览量
462013 -
计数器
+关注
关注
32文章
2253浏览量
94347
原文标题:三菱FX 5U PLC高速计数器基础及模拟量
文章出处:【微信号:robotqy,微信公众号:机械自动化前沿】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论