四轴运动控制卡应用研究

摘 要基于PC运动控制板卡的运动控制系统在工业自动化领域得到广泛应用。本文主要进行了固高GT400四轴运动控制卡的初步VC开发,对该运动控制卡的工作原理进行了简单的介绍;进行了方案和硬件连接设计;实现了四轴相对位置和绝对位置的寸动,以及对轴运动的速度和加速度的参数设置,同时给出了程序代码,并且利用现有的控制卡对各功能进行了实验。采用VC++6.0中的MFC基于对话框的基本应用,介绍了关于对话框的切换、密码登陆对话框、数码管控件的添加和使用等技巧步骤。结果表明,整个平台运行平稳,监控界面友好、操作方便、安全性好,有一定的应用价值。
目 录
第一章 绪论 1
1.1运动控制 1
1.2运动控制卡 1
1.3 VC++6.0 2
第二章 方案和硬件设计 3
2.1总体方案设计 3
2.1.1主对话框 3
2.1.2密码对话框 3
2.1.3参数设置对话框 4
2.1.4插补仿真对话框 4
2.2硬件连接 4
2.3硬件的参数信息 5
第三章 软件设计 6
3.1MFC工程对话框的创建 6
3.2寸动响应 9
3.3速度,加速度的参数设置 16
3.4对话框的切换 17
3.5密码登陆对话框 19
3.6.数码管显示 22
第四章 实验结果 31
4.1 四轴点动 31
4.2 对话框的切换 31
4.3 密码对话框 31
4.3LED数码管 31
4.5 设计不足 32
结束语 34
致 谢 35
参考文献 36
第一章 绪论
1.1运动控制
运动控制由最早的伺服控制所演变。通俗地讲,运动控制就是实时对工程部件的速度、状态和位置等进行控制管理,能让这些部件按照预计规定的运动参数和运动轨迹进行运动。最早的运动控制主要随着机器人技术、数控技术和自动化技术的发展而得到发展的。那时候的运动控制器实际上是能独立运行的专门的控制器
 *好棒文|www.hbsrm.com +Q: #351916072# 
,通常不需要得到其他的处理器和操作控制系统的支持,能够实现独立完成运动控制的控制功能、现有工艺技术要求的人机交互功能和其他现阶段能实现的功能。这样,相关的控制器就能完成独立运行的运动控制器。这种相关的控制器主要是为专门的自动化机械和其他数控设备所设计,通常都根据相关行业的工艺要求来设计一定的功能,用户只需要根据协议所要求的来编写相关应用进一步的加工代码文件,通过RS232或者DNC的方式来传输到控制器,控制器就能完成规定好的运动。这中控制器通常必须有特定的工艺要求才能跨行业应用,控制器的开放性通常依赖于控制器的加工代码文件,用户一般不能根据自己的要求而重组运动控制系统。
1.2运动控制卡
在当今的自动控制领域,伺服系统(基于PC机及运动控制卡)正在上演着一场自动化的工业革命。现在,通常能用的多轴控制系统大致分为三个大块:基于总线的,基于PC机的和基于PLC的。因为PC机可以在现在的大部分工业现场得到广泛的应用,走在时代先头的理论和DSP技术的实现手段的一起发展,现在很多工业机械的研究和改造需要一个关于运动控制的硬件平台,还有为了实现最新的数控系统能实现开放性,标准化和柔性化等要求,让基于PC和运动控制卡的伺服系统广受欢迎。
运动控制器要实现多个电机的多轴协调控制可以利用高性能的微处理器还有能大规模的可编程序来突破性地将硬件和控制底层的一定算法融合在一起,这样很大程度上提高了人们能在控制算法的前提下,随意编制需要的程序控制电机完成规定运动的能力。当前,开放式运动控制器大致有DeltaTau公司的PMAC系列,Dali公司的DNIC系列,固高公司的GT系列[等。因为考虑到使用的方便性,通用性和系统软硬件的兼容性方面考虑.以及学校的实验室的条件,本文将选用固高公司GT400SV运动控制卡作为控制核心。
本文下面主要就是利用VC++6.0中的MFC开发平台来研究探索固高SV400运动控制卡的点动,寸动,增量和绝对值的实现与深入研究和运动移动的速度和加速度的参数设置。同时利用VC++6.0中的功能,实现对话框的切换,实现参数设置前的密码验证对话框和通过LED数码管控件来显示实时数据,要实现功能,就要深入了解VC++6.0。
1.3 VC++6.0
VC++6.0简称为VC6.0,是Microsoft推出的一个C++编译器,是一个能将“高级语言”转换为“机器语言(低级语言)”的编译器。VC++是一款功能很强的可视化软件开发工具。自从微软公司在1993年推出VC++1.0之后,伴随着新版本的不断出世,VC++现在已经成为专业程序员软件开发的首选软件工具。后来Microsoft公司推出了Visual C++.NET(VC++7.0),但是其应用有很大的局限性,极大的影响了其发展和推广,因为它只适用于Windows2000,WindowsXP和WindowsNT4.0。所以在我们实际生活中,大部分都是使用VC++6.0为编译软件平台,因为Visual C++6.0不单单是一款C++的编译软件,更是一个基于Windows操作系统的可视化集成开发环境(integrated development environment,IDE)。Visual C++6.0由很多的组建部分组成,其中就包括程序向导,类向导,文件向导,编辑器以及调试器等开发工具,这些组建由一个叫Developer Studio的组建集成,才能实现一个和谐的开发环境。
VC++6.0主要分为三个部分:1Developer Studio ,2MFC ,3Platform SDK。在本文下面的软件编译过程中,主要用到其中的MFC,所以这里来重点介绍下MFC。MFC从理论上说,并不是专用于VC++,其实在Borland C++,C++Builder和Symantec C++中一样能处理MFC的语言。并且,用Visual C++编写程序也是不意味着必须使用MFC,只要条件允许,使用Visual C++来编写SDK程序,使用STL,ATL,同样地,也没有限制。但是,Visual C++本来就是为MFC定制的,Visual C++里面很多特征和语言的扩展也是为MFC所特制的,所以用Visual C++但是不用MFC就相当于抛弃了Visual C++中很重要的一部分功能。但是,Visual C++也不全是MFC。
Microsoft Foundation Classes,简称MFC。是微软公司向大众提供的类文件库(class libraries),通过C++类的形式,将Windows API进行了封装,并且在其中包含了一个应用程序框架,来减轻程序员的工作量。在里面收录的类包含了很多Windows句柄封装类还有很多的Windows的内建组建的封装类和控件。MFC不仅仅是一个类库,同时,还是一个框架,在VC++中新建一个MFC的工程,开发环境将自动帮用户生成许多文件,与此同时,MFC使用了mfcxx.dll。其中xx是版本,它封装了mfc的内核,所以用户的代码看不到原本的SDK的编译消息循环等。因为MFC的框架已经帮用户封装完成,因为这样,用户次啊能专心考虑程序的逻辑,而不是所有的编程都需要重复,同时,作为通用的框架,没有一定的针对性,所以也就没有了一定的灵活性和高效率性。要知道MFC的封装性很小,所以在用户的关心的效率性上,影响并不大。

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jxgc/zdh/2873.html

好棒文