基于visual c的运动控制系统开发

上传人:E**** 文档编号:117931368 上传时间:2019-12-11 格式:PDF 页数:4 大小:113.16KB
返回 下载 相关 举报
基于visual c的运动控制系统开发_第1页
第1页 / 共4页
基于visual c的运动控制系统开发_第2页
第2页 / 共4页
基于visual c的运动控制系统开发_第3页
第3页 / 共4页
基于visual c的运动控制系统开发_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《基于visual c的运动控制系统开发》由会员分享,可在线阅读,更多相关《基于visual c的运动控制系统开发(4页珍藏版)》请在金锄头文库上搜索。

1、基于 Visual C+的运动控制系统开发 作 者 :宝鸡文理学院 电气系 胡 皓 周妮娜 关键词: 运动控制、Visual C+、MPC 信息时代的高新技术流向传统产业, 引起传统产业的深刻变革。 微电子技术、 微计算机技术使信息和智能与机械装置和动力设备相结合, 促使机械工业开始了 一场大规模的机电一体化技术革命。机电一体化技术已越来越受到各方面的关 注,在机电一体化技术迅速发展的同时,运动控制技术作为其关键组成部分,也 得到前所未有的大发展。 在一个运动控制系统中“上位控制”和“执行机构”是系统中举足轻重的 两个组成部分。“执行机构”部分一般不外乎: 步进电机,伺服电机,以及直流 电机等

2、。它们作为执行机构,带动刀具或工件动作; “上位控制”单元的方案主 要有四种: 单片机系统, 专业运动控制 P L C , P C + 运动控制卡, 专用控制系统。 “上 位控制”是“指挥”执行机构动作的。本文主要介绍了基于运动控制卡( M o t i o n C o n t r o l l i n g B o a r d ) 技术的步进电机驱动运动控制系统及其在W i n d o w s 环境下的 实现方法 采用 P C + 运动控制卡的控制方案 采用 P C + 运动控制卡作为上位控制可充分利用计算机资源,用于运动过程、 运动轨迹都比较复杂,且柔性比较强的机器和设备。从用户使用的角度来看,

3、基 于 P C 机的运动控制卡主要是硬件接口( 输入/ 输出信号的种类、 性能) 和软件接口 ( 运动控制函数库的功能函数) 的差异。 运动控制卡是基于 P C 机各种总线的步进电机或数字式伺服电机的上位控制 单元,总线形式也是多种多样。由于计算机主板的更新换代,I S A 插槽都越来越 少了,P C I 总线的运动控制卡应该是目前的主流。卡上专用 C P U 与 P C 机 C P U 构 成主从式双 C P U 控制模式。P C 机 C P U 可以专注于人机界面、实时监控和发送指 令等系统管理工作; 卡上专用 C P U 来处理所有运动控制的细节: 升降速计算、 行程 控制、多轴插补等,

4、无需占用 P C 机资源。同时随卡还提供功能强大的运动控制 软件库: 语言运动库、W i n d o w s D L L 动态链接库等,让用户更快、更有效地解 决复杂的运动控制问题。 运动控制卡采用了开放式结构,使用简便,功能丰富,可靠性高。若采用 P C 机的 P C I 总线方式,卡上无需进行任何跳线设置,所有资源自动配置,并且 所有的输入、输出信号均用光电隔离,提高了控制卡的可靠性和抗干扰能力; 在 软件方面提供了丰富的运动控制函数库,以满足不同的应用要求。用户只需根据 控制系统的要求编制人机界面,并调用控制卡运动函数库中的指令函数,就可以 开发出既满足要求又成本低廉的多轴运动控制系统。

5、 运动函数库为单轴及多轴的步进或伺服控制提供了许多运动函数, 如单轴运 动、多轴独立运动、多轴插补运动等等。另外,为了配合运动控制系统的开发, 还提供了一些辅助函数,如中断处理、编码器反馈、间隙补偿,运动中变速等。 正是由于运动控制卡的开放式结构,强大而丰富的软件功能,对于使用者来说进 行二次开发的设计周期缩短了,开发手段增多了,针对不同的数控设备,其柔性 化、模块化、高性能的优势得以被充分利用。 M P C 系列通用运动控制器 M P C 系列运动控制卡是基于 P C 机 I S A 、P C I 总线的步进电机或数字式伺服电 机的上位控制单元,配备了许多功能强大、内容丰富的运动控制软件工具

6、。 M P C 卡分为 A 、B 两种类型: A 型卡采用先进的控制芯片,具有 S 形升降速曲 线,最高输出频率可达 2 . 4 M H z ,带有编码器反馈端口,主要适用于数字式交流 伺服系统或闭环的步进电机控制系统; B 型卡具有梯形升降速曲线,最高输出频 率可达 1 0 0 k H z ,主要适用于开环的步进电机控制系统。 以 M P C - 0 2 为例,M P C 控制卡的结构示如图 1 所示。 图 1 M P C - 0 2 控制卡的构 图 1 中,P C 机负责人机交互界面的管理和控制系统的实时监控等方面的工 作,例如键盘和鼠标的管理,系统状态的显示,控制指令的发送,外部信号的监

7、 控等等M P C - 0 2 卡完成运动控制的所有细节包括脉冲和方向信号的输出、自动 升降速的处理、原点和限位等信号的检测等等。M P C 0 2 卡可控制 3 轴步进电机或 数字式伺服电机,并支持多卡共用以实现多于三个运动轴的控制。每轴均可输出 脉冲和方向信号,以控制电机的运转。同时可外接原点减速限位等开关信号,以 实现回原点保护等功能,这些开关信号由 M P C 0 2 卡自动检测并做出反应。另外 M P C 0 2 卡还提供了适用于伺服系统的伺服使能和偏差清零信号接口,以及供用户 使用的通用 I O 接口。 W I N D O W S 下基于 V i s u a l C + + 运动控

8、制系统的开发 开发环境 W i n d o w s 应用程序设计的最大特点就是消息处理。所有的 W i n d o w s 应用程序 都是基于消息的,每一个 W i n d o w s 程序都要求有一个消息循环,应用程序中的每 一个窗口都要求有一个消息处理器。 不论什么时候, 只要出现一个事件, W i n d o w s 系统就会产生一条消息。因此,W i n d o w s 应用程序设计的核心就是传递消息,读 入消息、处理消息W i n d o w s 系统是多任务系统,如果有消息要处理,它就占用 C P U 处理消息,如果一个程序不再有要处理的消息,系统就询问其他正在运行的 程序是否有消

9、息要处理,并把控制权于有消息要处理的应用程序。 V i s u a l C + + 是一个在 W i n d o w s 环境下的程序开发工具,它是可视化的、面向 对象的,采用事件驱动的。它屏蔽了 W i n d o w s 环境下程序设计的复杂性,使 W i n d o w s 应用程序设计变得简单、方便、快捷。利用 M P C 卡的动态链接库 D L L 可 以很快开发出 W i n d o w s 平台下的运动控制系统。M P C 卡动态链接库是标准的 W i n d o w s 3 2 位动态链接库,选用的开发工具应支持 W i n d o w s 标准的 3 2 位 D L L 调

10、用。 动态链接库函数调用方法 在 V C 中调用动态链接库 D L L 中函数有两种方法。 隐式调用需要 D L L 函数声明头文件 M P C 0 2 H ; 编译连接时用的导入库文件 M P C 0 2 1 i b ; 动态链接库文件 M P C 0 2 d l l ; 设备驱动程序 M P C 0 2 S y s 。当建立工 程之后,在 V C 集成环境中点击“p r o j e c t / s e t t i n g s ”菜单弹出“p r o j e c t s e t t i n g s ”对话框。选“L i n k ”选项卡,在“o b j e c t l i b r a r y

11、 m o d u l e s ”栏内 输入导入库文件名 M P C 0 2 l i b ,单击“O K 按钮。在调用 D L L 函数的源代码文 件开始处包含 M P C 0 2 h 头文件。之后则可以按照调用内部函数一样调用 D L L 函 数。 显式调用只需要如下文件动态链接库文件 M P C 0 2 D l l 和设备驱动程序 M P C 0 2 s y s 。显式调用方法需要调用 W i n d o w s A P l 函数加载和释放动态链接库。 控制运动函数的用法 M P C 0 2 函数库中提供常用的单轴运动,多轴独立运动控制,多轴插补运动控 制,中断、光码盘反馈等功能。 如下面一

12、段代码使某根轴按梯形速度运动一段距离。 s e t - p r o f i l e ( 1 , 0 , 1 0 0 0 , 1 0 0 0 ) ; / / 设置 1 轴低速为 0 ,高速为 1 0 0 0 ,加速 度为 1 0 0 0 f a s t - p m o v e ( 1 ,1 0 0 0 0 ) ; / / 使 1 轴按照设置的梯形速度运动 1 0 0 0 0 个脉 冲 下面一段代码使三轴同时运动,各以不同的速度运动不同的距离。 s e t - c o n s p e e d ( 1 , 1 0 0 0 ) ; s e t - c o n s p e e d ( 2 , 2 0 0

13、 0 ) ; s e t - c o n s p e e d ( 3 , 3 0 0 0 ) ; c o n - p m o v e 3 ( 1 , 1 0 0 0 0 , 2 , 3 0 0 0 0 , 3 , 2 0 0 0 0 ) ; 下面一段代码使两轴以常速度作直线插补 s e t - v e c t o r c o n s p e e d ( 1 0 0 0 ) ; / / 设置矢量常速度 c o n - l i n e 2 ( 1 , 5 0 0 0 , 2 , 2 0 0 0 ) ; / / 轴 l 移动 5 0 0 0 个脉冲,轴 2 移动 2 0 0 0 个脉 冲 下面一段代

14、码使两轴以梯形速度作直线插补 s e t - v e c t o r p m f i l e ( 6 0 0 , 3 0 0 0 , l 0 0 0 ) ; / / 设置矢量梯形速度 f a s t - l i n e 2 ( 1 , 5 0 0 0 , 2 , 1 0 0 0 0 ) ; / / 轴 I 移动 5 0 0 0 个脉冲,轴 2 移动 1 0 0 0 0 个脉冲 用 c h a n g e - s p e e d 函数可以很容易实观运动中变速,以下代码实现运动中变 速的问题。 定义全局变量 d o u b l e C u r S p e e d = O ; d o u b l e

15、 M a x S p e e d = 1 0 0 0 0 0 ; 在“启动”按钮的响应函数中增加如下代码: s e t - m a x s p e e d ( 1 , M a x S p e e d ) ; s e t - v e c t o r c o n s p e e d ( 1 0 0 , 1 0 0 0 , 1 0 0 0 ) ; f a s t - m o v e ( 1 , 1 0 0 0 0 0 0 ) ; 在“升速”按钮的响应函数中增加如下代码: C u r S p e e d = C u r S p e e d + 1 0 0 0 ; I f ( C u r S p e e

16、 d M a x S p e e d ) C u r S p e e d = M a x S p e e d ; / / 限定变速范围不超过最大值 c h a n g e - s p e e d ( 1 , C u r S p e e d ) ; 在“降速”按钮的响应函数中增加如下代码: C u r S p e e d = C u r S p e e d - 1 0 0 0 ; C h a n g e - s p e e d ( 1 , C u r S p e e d ) ; 先单击“启动”按钮启动运动,之后每单击一次“升速”按钮,当前速度增 加 1 0 0 0 ,每单击一次“降速”按钮,当前速度减小 1 0 0 0 。 共用问题 每块 M P C 0 2 卡最多可以控制 3 轴的运动,当需要控制多个轴时,可以在 P C 机上插入几块卡,而在编程时,把它们当成一个整体对待,各卡之间的轴与同一 块卡上的轴也同样能够进行联动或插补,这样就能实现多于 3 轴的运动控制。对 于 4 轴控制,可以用两块

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号