没有合适的资源?快使用搜索试试~ 我知道了~
资源详情
资源评论
资源推荐
基于 的 闭环位置控制
在变频驱动技术中,定位控制是一项比较复杂的技术。简单定位如使用凸轮开关触发,定
位精度较差。如果需要精确定位,比较可靠的办法是采用电机旋转编码器、直线光栅尺编
码器读取位置信息。编码器通过 总线方式与变频器的接口连接。变频器内部拥有中
央处理单元()以及强大的内部程序系统,时刻高速处理接收到的数据,实时进行速
度与位置控制。
下面以 公司的 系列变频器产品为例,介绍如何使用 编程内部程序以实
现驱动器精确定位的。 产品支持汇编语言与 编程,基本指令与语法传统计算
机语言基本一致。稍有不同的是, 中包含一些特殊指令、函数(如读取编码器
指令,位置控制指令等),以及具有固定功能的变量。
在编写闭环程序之前需要了解控制方式。使用外部 点进行控制时需要了解相应 的配
置信息。变频器内部程序中某些 点功能是固定的,比如 是设备紧停等。内部变量
是以 的形式定义的,变量范围 。每个变量由 个 位组成,某些变量的
功能也是固定的比如 设备使能。
变频器内部程序可以并行运行两个任务 、 !。两个任务在编程的时候是写在一个
程序当中,需要了解的是这两个任务同时运行,互不干涉。这样可以使用一个任务进行位
置控制,另一个任务进行位置监控并控制 点输出。
本文介绍一台具有正反两个方向,两个停止位设备的闭环程序开发过程。变频器的运行使
用 点控制,包括设备紧停、设备使能、正转、反转、手自动、定位点等。为了便于编程
引用,将各个 点定义为变量名方式。代码如下:
"#$%#&'#()#*+,#**#&&--定义变量指向 点,紧急停止
"#$%#&'*#(./#&0&--定义变量指向 0 点,设备使能
"#$%#&'1+21%+''&&--位置
"#$%#&'314.25&&--手动、自动控制模式
"#$%#&1+21%'&&--定义变量 1+21% 为 ,用于设定返回位置
"#$%#&1+21%'&&--定义变量 1+21% 为 ,用于设定前进位置
程序中还可以对某些内部标志位的操作定义为子过程,便于编程时随时调用。例如:
"#$%#&#'#67+).38&'#!&--设置内部变量 的第 个 位为 。 变量
为电机顺时针旋转标志位,通过设置该位来使电机正转。
"#$%#&#+#')%5+).38&')#.*!&--将内部变量 的第 个 位清 ,使电机正转
停止。
对 变 量 声 明 、 定 义 之 后 , 即 可 开 始 主 程 序 编 程 。 主 程 序 开 始 使 用 固 定 的 过 程 名
“4.%()”。
在主程序中首先启动任务 & !, 是实时监控编码器数据,发现当前位置达到设
定值即输出 信号,使设备做出停止动作。 是自动启动的,所以此时两个任务并行
运行。接下来对定义的变量赋值。位置、速度设定:
1+21%'9::&--对位置 !赋值为位置值 ::
1+21%'90&--对位置 !赋值为位置值 0
下面开始编写程序核心部分,位置定位。代码如下:
1+21%#*#%()--定义定位过程
81+21%%(#;.#7)&<<'1+21%#*8*#(#/#!&--如果位置 / 至 / 中任一位不为 则继续
执行。这三个 / 位是 = 发过来的位置信息。
#*5#*'+,1+21%&9&6,1+'/+&--将设备当前位置存入变量
#*5#*'1)),1+21%&9&>#),1+21%?#3&--将目标位置存入变量
tdktdktdktdk
- 粉丝: 1
- 资源: 5
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0