M218脉冲输出及高速计数实验2015

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

M218脉冲输出及高速计数器功能简介及应用
2015-03
目录
1 在Somachine 中配置脉冲输出(PTO)模式 (5)
设备树中右键IO摘要,查看配置好的PTO模式 (6)
应用程序中POU中编写程序,输出正向脉冲 (7)
应用程序中POU中编写程序,输出反向脉冲 (8)
2 在Somachine 中配高速计数(HSC)模式 (9)
一次性模式原理简述 (10)
应用程序树中添加POU,HSC一次性模式程序 (11)
应用程序树中添加POU,监控HSC一次性模式程序 (12)
模数回路模式原理简述 (13)
高速计数(HSC)SIMPLE模式模数回路脉冲计数程序 (15)
高速计数(HSC)MAIN模式模数回路脉冲计数程序 (16)
高速计数(HSC)MAIN模式模数回路脉冲计数程序 (17)
高速计数(HSC)自由大型模式简介 (18)
高速计数(HSC)自由大型模式硬件配置 (19)
高速计数(HSC)自由大型模式程序设计及计数过程监控 (20)
高速计数(HSC)频率计模式硬件端口配置 (21)
高速计数(HSC)频率计模式程序设计及监控 (22)
高速计数(HSC)频率计模式程序设计及监控 (23)
自由大型高数计数的当前值断电保持程序设置 (24)
自由大型高数计数的当前值断电保持程序变量寄存器设置 (25)
3 附录1 PTO简介 (26)
4 附录2 HSC概述 (43)
实验概述
本次实验利用M218本体的快速输出端子TR0和TR1做为信号源接到本体快速输入端子和,来实现高速计数的功能,下图是本次实验的硬件接线图。

图1 硬件接线图
1 在Somachine 中配置脉冲输出(PTO)模式
图2 M218 PTO硬件端口配置(M218的PTO输出是推挽接口)
在Somachine 设备树中右键IO摘要,查看配置好的PTO模式
图3 硬件配置好后点击IO摘要,查看配置的快速输出端口
在Somachine 应用程序中POU中编写程序,调用PTOSimple及PTOMoveVelociy功能块,采用脉冲+方向模式,输出正向脉冲,各功能块引脚变量数值及功能块连接见下图。

图4 PTO脉冲+方向模式正向脉冲输出程序编制
在Somachine 应用程序中POU中编写程序,调用PTOSimple及PTOMoveVelociy功能块,采用脉冲+方向模式,输出反向脉冲,各功能块引脚变量数值及功能块连接见下图。

图5 PTO脉冲+方向模式反向脉冲输出程序编制
2 在Somachine 中配高速计数(HSC)一次性模式
图6 高速计数器一次性模式配置
一次性模式原理简述
1 在同步条件的上升沿上,预设值被加载到计数器(不考虑当前值),并且计数器被激活。

2 当启用条件 = 1 时,当前的计数器值依据输入 A 上的各个脉冲递减,直至达到 0。

3 计数器等待同步条件的下一个上升沿出现。

注:此时,输入 A 上的脉冲对计数器不起作用。

4 当启用条件 = 0 时,计数器忽略来自输入 A 的脉冲,并保留其当前值,直到启用条件再次 = 1。

在启用输入的上升沿,计数器从保留的值开始恢复输入 A 的脉冲的计数。

在Somachine 应用程序树中添加POU,编写配高速计数(HSC)一次性模式程序
图7 高速计数器一次性模式程序编制
在Somachine 应用程序树中添加POU,监控高速计数(HSC)一次性模式程序
图8 高速计数器一次性模式计数监控(完成)状态
模数回路模式原理简述
1 在同步条件的上升沿,当前值复位为 0 并激活计数器。

2 当启用条件 = 1 时, A 上的每个脉冲会递增计数器值。

3 计数器达到模数值减 1 时,计数器在下一个脉冲返回 0,并继续计数。

Modulo_Flag 设置为 1。

4 在同步条件的上升沿,当前计数器值复位为 0。

5 当启用条件 = 1 时, B 上的每个脉冲会递减计数器。

6 计数器达到 0 时,计数器在下一个脉冲返回模数值减 1,并继续计数。

7 启用条件 = 0 时,忽略输入上的脉冲。

8 在同步条件的上升沿,当前计数器值复位为 0。

高速计数(HSC)SIMPLE模式模数回路脉冲计数程序
图9 高速计数器一次性模式计数监控(完成)状态
高速计数(HSC)MAIN模式模数回路脉冲计数程序
图10 主要(MAIN)类型计数器模数回路硬件配置
高速计数(HSC)MAIN模式模数回路脉冲计数程序
图11 MAIN模式模数回路脉冲计数程序计计数过程
高速计数(HSC)自由大型模式简介
高速计数(HSC)自由大型模式硬件配置
图12 自由大型计数模式硬件配置图
高速计数(HSC)自由大型模式程序设计及计数过程监控
图13 自由大型计数程序及计数过程图
高速计数(HSC)频率计模式硬件端口配置
图14 频率计模式硬件端口配置
高速计数(HSC)频率计模式程序设计及监控
图15 频率计模式硬件端口配置
高速计数(HSC)频率计模式程序设计及监控
图16 频率计模式脉冲计数过程
自由大型高数计数的当前值断电保持程序设置
图17 高速计数器实现断电保持当前计数值的程序样例
自由大型高数计数的当前值断电保持程序变量寄存器设置
图18 高速计数器实现断电保持当前计数值时设置变量为保持类型
附录1 PTO简介
概述
PTO 内嵌可以提供 3 种不同的功能:
•PTO:
(脉冲串输出)可以精确定位电机驱动器的控制。

•PWM:
(脉冲宽度调制)功能可以在上生成具有可调整占空比和频率的可编程方波信号。

•FG:
(频率发生器)功能可以在上生成具有固定占空比 (50%) 的方波信号。

访问 PTO_PWM 配置选项卡
按照以下步骤,访问 PTO_PWM 内嵌功能选项卡:
下图显示用于配置 PTO、PWM 或 FG 的 PTO_PWM 配置窗口示例:
简介
PTO (Pulse Train Output) 实现的数字技术可以精确定位电机驱动器的开路控制。

PTO、PWM(脉冲宽度调制)和 FG(频率发生器)功能使用相同的专用输出。

在同一个通道上只能使用这 3 个功能的其中一个。

通道 0 和通道 1 上可以使用不同的功能。

PTO概念
PTO 功能针对指定的脉冲数和指定的速度(频率)提供方波输出。

PTO 用于控制旋转设备的轴定位或轴速度。

PTO 命令
PTOSimple 功能块管理 PTO。

运动命令由 4 个运动功能块进行管理:
•:移动到参考位置
•:按设定的距离移动
•:以设定的速度移动
•:移动
调整和诊断由 3 个管理块进行管理:
•:修改参数
•:读取参数
•:识别检测到的错误
性能
2 个 PTO 通道虽然可以同时使用,但只能控制独立的轴。

因此,内嵌 PTO 功能可用于:
•单轴点对点运动
• 2 轴同时点对点运动(每个轴分别管理)
但不适用于具有以下要求的:
• 2 轴同步点对点运动,
• 2 轴插补运动。

PTO 配置概述
在控制器上可配置 2 个 PTO 通道。

注意: PTO 功能在 AC 控制器(TM238LFAC24DR 和 TM238LDA24DR)上不可用。

硬件配置
配置的每个 PTO 通道都使用。

打开配置窗口
输出模式
有 4 种可能的输出模式:
•脉冲/方向
•方向/脉冲
•顺时针/逆时针
•逆时针/顺时针
脉冲/方向模式在 PTO 输出上生成 2 个信号:•在输出 0 上:用于提供电机运转速度的脉冲。

•在输出 1 上:用于提供电机旋转方向的方向。

方向/脉冲模式在 PTO 输出上生成 2 个信号:•在输出 0 上:用于提供电机旋转方向的方向。

•在输出 1 上:用于提供电机运转速度的脉冲。

下图给出脉冲/方向模式下的一个时序图示例:
顺时针/逆时针模式生成 1 个定义电机运转速度的信号。

此信号在 PTO 输出 0 或 PTO 输出 1 上实现,视电机旋转方向而定:
•在输出 0 上:电机按顺时针方向。

•在输出 1 上:电机按逆时针方向运行。

逆时针/顺时针模式生成 1 个定义电机运转速度的信号。

此信号在 PTO 输出 0 或 PTO 输出 1 上实现,视电机旋转方向而定:
•在输出 0 上:电机按逆时针方向运行。

•在输出 1 上:电机按顺时针方向运行。

下图给出顺时针/逆时针模式下的一个时序图示例:
参数值描述
加速度/减速度单位毫秒“加速度”值表示从 0 达到最大频率所需的时间。

“减速度”值表示从最大频率达到 0 所需的时间。

10 千赫,则会在 (10 千赫 - 5 千赫)/2 赫兹/毫秒 = 2500 毫秒后达到该速度。

AUX 辅助输入参数有 2 个可能的设置:驱动器就绪
TRUE = 允许 PTO 移动命令。

FALSE = 触发了检测到的轴错误,所有正在运行的移动都被“快速停止”中止。

PTOSimple 功能块的输入可用来禁用驱动器就绪监控。

AUX 过滤器过滤值减少了辅助输入上的跳动影响。

PROX 接近输入用于具有正/负限制的归位,它指示 PTOHome 的参考点的方向。

PROX 过滤器过滤值减少了接近输入上的跳动影响。

要将某个移动编程到该参考位置,在配置过程中必须定义以下参数:
辅助输入:配置为起点输入。

回归模式:启动于参考位置后(凸轮正向)或在参考位置前(凸轮反向)
回归加速度:回归过程中的加速度(20 到 65000)
回归减速度:回归过程中的减速度(20 到 65000)
软件上下限
如果位置达到软件的最小值或最大值限制,则 PTO 运动停止并报告检测到的错误。

本节介绍 PTOMoveVelocity 功能块
速度控制是对电机速度控制的参考。

要控制与 PTO 通道关联的电机的速度,请使用 PTOMoveVelocity 功能块。

PTOMoveVelocity 功能块用于通过加速度或减速度斜坡按指定频率(速度)生成脉冲串输出。

当执行 PTOMoveVelocity 命令时,当前的为连续运动,即使轴已经达到 0 Hz 的目标速度。

要停止连续运动,请执行命令。

PTOMoveVelocity功能介绍
此功能块指示以指定速度连续移动。

按照指定的加速度和减速度值达到此速度。

图形表示形式
IL 和 ST 表示形式
若要查看 IL 或 ST 语言的一般表示形式,请参阅一章。

I/O 变量描述
输入类型注释
PTO_REF_IN 对 PTO 通道的参考。

要连接到 PTOSimple 的 PTO_REF,或连接到管理或运动输出引脚功能块的 PTO_REF_OUT。

Execute BOOL 在上升沿启动功能块的执行。

如果为 FALSE,则在其执行终结时,复位功能块的输出。

Velocity DWORD 以赫兹表示的目标速度。

范围:0...最大输出频率
加速度DWORD 以赫兹/毫秒或毫秒(根据配置)表示的加速度。

范围(赫兹/毫秒):1...加速度最大值
范围(毫秒):加速度最大值 (100000)
减速度DWORD 以赫兹/毫秒或毫秒(根据配置)表示的减速度。

范围(赫兹/毫秒):1...减速度最大值
范围(毫秒):减速度最大值 (100000)
方向移动的方向。

注意:加速和减速斜坡不能超过 4,294,967,295 个脉冲。

在最大频率 100 kHz,它会将加速/减速斜坡的持续时间限制为 80 秒。

注意:对于轴处于运动状态时的新 PTOMoveVelocity 运动命令,必须已达到前一个运动命令的指定速度 (InVelocity
=TRUE)。

在加速或减速阶段(在 Busy =TRUE 时)执行 PTOMoveVelocity 将中止该命令,并以配置的Dec. Fast Stop速率停止轴。

输入/输出之间的交互在中详细介绍。

运动命令之间的交互在中详细介绍。

PTOMoveVelocity 运动在下列情况下中止:
•调用了 PTOStop 功能块
•驱动器就绪输入(如果已在配置时定义)变为非活动状态
•不受支持
•应用程序已停止
•检测到错误
本节介绍PTOStop功能块
此功能块指示受控停止轴(减速到停止),并中止正在进行的所有运动。

轴完全停止后,只要Execute 输入仍为TRUE 或检测到轴错误并且未.
如果加速度/减速度单位配置为毫秒,则使用的加速度速率和减速度速率如下:•加速度速率 = 目标速度 / 加速时间
•减速率 = 目标速度 / 减速时间
功能介绍
此功能块指示受控停止轴(减速到停止),并中止正在进行的所有运动。

图形表示形式
IL 和 ST 表示形式
若要查看 IL 或 ST 语言的一般表示形式,请参阅一章。

I/O 变量描述
输入类型注释
PTO_REF_IN 对 PTO 通道的参考。

要连接到 PTOSimple 的 PTO_REF,或连接到管理或运动输出引脚功能块的 PTO_REF_OUT。

Execute BOOL 在上升沿上,启动功能块的执行。

如果为 FALSE,则在功能块执行终结时复位功能块的输出。

减速度DWORD 以赫兹/毫秒或毫秒(根据配置)表示的减速度。

速率范围(赫兹/毫秒):1...减速度最大值
时间范围(毫秒):减速度最大值 (100000)
输出类型注释
PTO_REF_OUT 对 PTO 通道的参考。

要与管理和运动功能块的 PTO_REF_IN 输入引脚连接。

Done BOOL TRUE = 表示命令完成。

功能块执行结束。

Busy BOOL TRUE = 表示命令正在执行中。

Error BOOL TRUE = 表示检测到一个错误。

功能块执行结束。

ErrID 当 Error 为 TRUE 时:检测到的错误的类型。

注意:有关 Done、Busy、CommandAborted 和 Execution 引脚的更多信息,请参阅。

和 PTOSetParam 功能块概述
可以使用两个功能块调整 PTO 参数:
•,可用于读取参数
•,可用于写入参数
可调整参数
和 PTOSetParam 用于读取和写入以下参数:
•启动频率
•停止频率
•减速度快速停止
注意:通过程序设置的参数会覆盖在中配置的初始参数值。

但是,将在时恢复初始配置参数。

功能介绍
此功能块返回指定 PTO 通道的特定参数的值。

图形表示形式
IL 和 ST 表示形式
若要查看 IL 或 ST 语言的一般表示形式,请参阅一章。

I/O 变量描述
输入类型注释
PTO_REF_IN 对 PTO 通道的参考。

要连接到 PTOSimple 的 PTO_REF,或连接到管理或运动输出引脚功能块的 PTO_REF_OUT。

Execute BOOL 在上升沿开始功能块的执行。

如果为 FALSE,则在其执行终结时,复位功能块的输出。

Param 要读取的参数。

输出类型注释
PTO_REF_OUT 对 PTO 通道的参考。

与管理和移动功能块的 PTO_REF_IN 输入引脚连接。

Done BOOL TRUE = 表示ParamValue 有效。

功能块执行结束。

Busy BOOL TRUE = 表示功能块执行正在进行中。

Error BOOL TRUE = 表示检测到一个错误。

功能块执行结束。

ErrID 当 Error 为 TRUE 时:检测到的错误的类型。

ParamValue DWORD 如果Done 为TRUE: 参数值有效。

PTOSetParam功能介绍
此功能块修改指定 PTO 通道的特定参数的值。

图形表示形式
IL 和 ST 表示形式
若要查看 IL 或 ST 语言的一般表示形式,请参阅一章。

I/O 变量描述
输入类型注释
PTO_REF_IN 对 PTO 通道的参考。

要连接到 PTOSimple 的 PTO_REF,或连接到管理或运动输出引脚功能块的 PTO_REF_OUT。

Execute BOOL 在上升沿开始功能块的执行。

如果为 FALSE,则在功能块执行终结时复位功能块的输出。

Param 要设置的值。

Param_Value DWORD 要写入的参数值。

输出类型注释
PTO_REF_OUT 对 PTO 通道的参考。

要与管理和运动功能块的 PTO_REF_IN 输入引脚连接。

Done BOOL TRUE = 表示ParamValue 有效。

功能块执行结束。

Busy BOOL TRUE = 表示功能块执行正在进行中。

Error BOOL TRUE = 表示检测到一个错误。

功能块执行结束。

ErrID 当设置 Error 时:检测到的错误类型。

注意:有关 Done、Busy、CommandAborted 和 Execution 引脚的更多信息,请参阅。

附录2 HSC概述
概述
HSC 内嵌功能可以对与专用快速输入相连的传感器、、开关等中的脉冲执行快速计数。

有以下 2 种类型的内嵌计数功能:
•Simple 类型:。

•Main 类型:最多可使用的计数器。

访问 HSC 配置窗口
要访问内嵌 HSC 窗口,请双击设备树中的内嵌功能→ HSC。

HSC 配置窗口
下图显示用于配置 HSC 的 HSC 配置窗口的示例:
下表介绍 HSC 配置窗口的各个区域及关联操作:
编号操作
1 选择 HSC 选项卡,访问每一个 HSC 配置窗口。

2 选择特定的 HSC 选项卡,访问需要配置的 HSC 通道。

3 选择需要的 HSC(简单或主要)类型之后,请使用变量字段更改实例。

4 单击每个参数旁边的加号可访问其设置,以配置每个参数。

可用参数取决于使用的模式。

DC 控制器的 HSC I/O 映射
(2) 仅当 HSC4 未用作 Main 时,HSC4 到 HSC7 的通道才能用作 Simple HSC。

(3) A 和 B 功能取决于的配置。

(4) 是否使用取决于 Main HSC 模式的配置。

AC 控制器的 HSC I/O 映射
(2) 仅当 HSC4 未用作 Main 时,HSC4 到 HSC7 的通道才能用作 Simple HSC。

(3) A 和 B 功能取决于的配置。

(4) 可选:是否使用取决于 Main HSC 模式的配置。

Simple 类型概述
Simple 类型是单个输入计数器。

计数器上的所有操作(启用、同步)以及所有触发的动作(达到计数值时)都在任务环境中执行。

使用 Simple 类型,无法触发事件或反射输出。

Simple 类型模式
Simple 类型支持 2 个可配置的计数模式(仅限于单相脉冲):
:在此模式下,对于应用到 A 输入的每个脉冲,计数器当前值寄存器都会(从用户定义的值)递减,直到计数器达到 0。

:在此模式下,计数器从 0 计数到用户定义的模数值,然后返回到 0 并重新启动计数,周而复始,反复执行。

性能
Simple 类型的最大频率是 100 kHz。

Main概述
Main 类型的计数器最多可使用 4 路快速输入和 2 路反射输出。

Main 类型模式
Main 类型支持单相(1 个输入)或双相(2 个输入)脉冲上的以下计数模式:
:在此模式下,A 输入上每应用一次脉冲,计数器当前值寄存器就会(从用户定义的值)递减一次,直到计数器达到 0。

:在此模式下,计数器从 0 计数到用户定义的模数值,然后返回到 0 并重新启动计数,周而复始,反复执行。

反过来,计数器从模数值减计数到 0,然后预设为模数值,再重新启动计数。

:在此模式下,计数器的行为类似于大范围加和减计数器。

可与一个配合使用。

:在此模式下,计数器对在用户配置的时基期间接收的事件数进行累计。

:在此模式下,计数器测量事件的频率。

频率是每秒的事件数 (Hz)。

可选功能
可根据选择的模式配置可选功能:
•用于操作计数器(启用、同步)或捕捉当前计数值的的硬件输入
•最多 4 个阈值
•最多 4 个事件(阈值占 1 个)可与外部任务进行关联
•最多 2 个反射输出
性能
Main 类型的最大频率是 100 kHz。

一次性模式原理概述
计数器由同步跳变沿激活,同时加载预设值。

启用计数时,每个应用到输入的脉冲都递减当前值。

计数器在其当前值达到 0 时停止。

即使新的脉冲应用到输入,计数器值仍然保持为 0。

要再次激活计数器,需要新的同步。

原理图
阶段操作
1 在同步条件的上升沿上,预设值被加载到计数器(不考虑当前值),并且计数器被激活。

2 当启用条件 = 1 时,当前的计数器值依据输入 A 上的各个脉冲递减,直至达到 0。

3 计数器等待同步条件的下一个上升沿出现。

注:此时,输入 A 上的脉冲对计数器不起作用。

4 当启用条件 = 0 时,计数器忽略来自输入 A 的脉冲,并保留其当前值,直到启用条件再次 = 1。

在启用输入的上升沿,计
数器从保留的值开始恢复输入 A 的脉冲的计数。

下图概述了一次性模式下的 Simple 类型:
A 是High Speed Counter的计数输入。

一次性模式的 Simple 计数类型仅加计数。

概述
Simple 类型始终由功能块进行管理。

注意:如果使用 HSCSimple 功能块管理其他 HSC 类型,则在编译时会显示检测到的错误代码。

步骤描述
1 在软件目录中选择库选项卡,然后单击库。

在列表中选择控制器→ M238 → M238 HSC → 计数器→ HSCSimple,然后将该项目拖放至 POU 窗口中。

2 键入 Simple 类型实例名称(在配置中定义),或通过单击以下内容选择功能块实例:
使用输入助手,可按照以下路径选择 HSC 实例:全局变量→ <MyController> → 内嵌功能→ HSC。

I/O 变量用法
下表介绍了功能块的不同引脚在一次性模式中的使用方法。

下表中介绍的参数列表可使用或功能块进行读取或修改。

注意:通过程序设置的参数将覆盖在 HSC 配置窗口中配置的参数值。

初始配置参数会在后恢复。

可调整参数
下图概述了一次性模式下的 Main 类型:
A 是计数器的计数输入。

EN 是计数器的启用输入。

CAP 是计数器的捕捉输入。

SYNC 是计数器的同步输入。

可选功能
除了一次性模式,Main 类型还可以提供以下功能:




配置过程。

相关文档
最新文档