一种多轴运动检测方法_第1页
一种多轴运动检测方法_第2页
一种多轴运动检测方法_第3页
一种多轴运动检测方法_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一种多轴运动检测方法

多轴协调运动控制是运动控制系统的一项重要技术。它在许多行业的应用如半夏、高速控制技术、光学和工业、工业控制、信息技术等。多个运动轴之间的高精度协同运动是实现复杂的设备功能、高精度控制策略和提高产品质量的关键。而多轴运动协同性是借助对其运动轨迹和速度的实时检测实现的1fpga/arm7tdai-s控制器多轴运动在线测量方法的硬件主要由光栅尺,Altera公司推出的低成本、高性能的MAXII器件系列的可编程逻辑器件EPM570T100C5,PHILIPS公司出品的基于ARM7TDMI(-S)内核的嵌入式微处理器LPC2214等组成。1.1arm与cpld设计中的主控制芯片选用Altera公司出品的低功耗高性能MAXII器件系列EPM570T100C5CPLD,CPLD控制光栅尺信号的采样、滤波、倍频、计数,控制不同测量轴的位置数据同步锁存及保持、对位置数据寄存器寻址和读写操作以及控制与微控制器之间的数据通信握手协议。选用PHILIPS公司的LPC2214微控制器,控制与CPLD之间的通信,CPLD以存储器的方式挂载在ARM的控制器接口上,ARM与CPLD之间的数据交换采用定时器中断方式,即当设定值采样周期1ms到达后,ARM进入中断服务程序并以静态存储器的标准读方式读取缓存器中的测量数据。由光栅尺检测位移信号输出的差分信号A+、A-和B+、B-经过AM26LS32芯片构成的调理电路转化得到相位差为90°的正交编码信号A和B,对于多轴同步控制系统所需的高精度协同性,若将光栅尺输出信号直接读出,必定会由于各轴采样信号不同步而引起数据延时的不确定性问题,设计中在CPLD内部生成缓存器,由缓存器在同一个时钟沿将位置数据同步采集、缓存,输出到数据总线上以供ARM读取和管理,最终传入上位机以完成数据采集过程1.2系统硬件结构1.2.1cpld信号转换电路数据采集是指将信号源送入CPLD的整个过程。为了能有较远距离的传输,各个光栅或磁栅的输出采用差分的A+、A-、B+、B-、Z+、Z-信号方式输出,先由DB9将其引入测量装置,再用芯片AM26LS32将差分的信号转化为单端的A、B、Z信号输入CPLD进行处理。为了增加硬件电路的可靠性和灵活性,采用CPLD构建电路的各个逻辑功能,如图2所示。CPLD用于实现采集脉冲信号的滤波、倍频处理、光栅A/B两相正交信号的二倍频、计数和鉴向、将地址译码成片选信号等功能。1.2.2arm处理器与cpld的通信设计中,利用CPLD的高度可编程特性来实现对多轴运动参数的采集控制,为了实现多个轴的同步测量,将采集后的数据存储到CPLD缓存器中,同时CPLD完成相关的数字逻辑电路。需要在ARM控制器中完成对数据的处理及传送,因此,需要设计ARM控制器与CPLD的通信连接,由于ARM处理器集成了丰富的串行外设接口,包括2个16C550工业标准UART、高速I由于需要对多个轴进行同步测量,设计中采用通过外部总线方式连接ARM和CPLD,将CPLD映射成系统的一段存储器进行读写访问,系统将ARM处理器外部总线的数据线DATA[0…31]、地址线ADDR[1…3]、读写信号OE、WE、片选信号CS1、CS2以及中断信号INT0、INT1连接到EPM570T100C5的IO管脚。测量输出信号通过芯片AM26LS32处理后接入CPLD。ARM与CPLD的接口连接图如图3所示。2控制程序设计整个多轴在线测量系统的软件设计包括CPLD在内的滤波鉴相、倍频、计数、握手协议的测量数据采集控制程序、中断程序和应用程序的设计。其中CPLD中的数据处理程序采用VerilogHDL语言编写,ARM控制器中的数据采集控制程序和应用程序分别应用C语言和VisualC++完成。2.1同步采集程序软件设计设计中的在线测量方法面向多轴系统,探测系统由多个光栅转换接口板构成,并且可根据实际应用需要进行扩展。每个转换接口均由一路A/B/Z数字信号输出,因此要求测量装置必须具有同时处理多路并行信号的能力,由于多轴数据采集采用相同的物理接口且遵循相同的传输协议,因此在CPLD中采用复制拷贝技术将多个轴的输出信号进行解复用以后送入缓存器中,以实现多轴运动参数实时测量所有的复用模块采用相同的状态机实现,状态机分4个状态S1-S4,CPLD控制的同步采集程序状态转移图如图4所示。S1为滤波鉴向状态,设计一个数字滤波模块以消除抖动脉冲,采用以一定频率的时钟脉冲对信号进行采样处理,连续3次采样得到高电平的信号即为正常信号,并参与以后的数据处理,其余信号视为干扰给予滤除的滤波方法防止计数器错误计数,鉴于滤波后A、B信号顺序未改变,用1个D触发器实现其鉴相功能;S2为四倍频状态,信号的倍频有利于提高测量精度,设计中采用D触发器延时的方法对其中一个信号进行延时后异或的逻辑运算以实现信号的四倍频;S3为可逆计数状态,倍频后的测量信号经计数器计数后转化为位移计数值;S4状态完成在同一时钟上升沿将不同轴的测量数据锁存,CPU向CPLD发送命令,CPLD根据从ARM接收到的相应命令将计数值放到数据总线上,CPU定时读取测量计数值。用ModelSim-Altera6.4a软件仿真VerilogHDL语言编写的CPLD的同步采集程序仿真波形如图5所示。由于ARM从CPLD读取数据和ARM向CPLD写命令两个过程同时进行会发生时序冲突,因此设计中采用在CPLD中编写接口协议方法解决冲突问题。由VerilogHDL语言定义一个数据总线控制信号bus_switch用于控制CPLD对总线的占用,当bus_switch为低电平且写信号也为低电平时,同时总线数据处于已建立的状态,ARM向CPLD写命令;反之,当bus_switch为高电平且读信号为低电平时,同时测量数据已放到数据总线上,ARM从CPLD读取测量值,从而解决冲突问题。2.2上位机pc测量的控制程序设计系统应用程序决定调用资源以完成相应的任务。应用程序的设计采用VisualC++集成开发环境,利用MFC编程,其主要完成程序初始化、实时地从串口采集、分析并显示数据。测量系统按照上位机PC命令完成相应的动作。当接收到PC发送的“0x00”时,测量装置即将当前计数值发送到PC,经计算就可显示当前各个轴的位置信息;当接收到PC发送的“0x01”时,将外部存储器中的数据按地址顺序依次发送至PC作历史数据保存,以供后续处理和分析用。测量系统的主程序流程图和中断程序流程图分别如图6和图7所示。3测量速度和理论位移误差将上述测试方法用于工业CTCD300BX平台上,定时1ms采样该平台分度、平移、射线源分层和探测器分层共四轴的位移信号4min,并对采样数据使用Matlab软件分析其实时性。根据工业CTCD300BX分度轴运动的正常运动理论速度、位移和实际检测速度、位移数据可绘出其位移-时间、速度-时间曲线,分别如图8、图9所示,可用于分析多轴运动系统的实时性。从图8中读出两条曲线的同一时刻最大位移差并计算实际测量位移和理论位移误差精度为0.012%,同理由图9读出两条位移曲线的同一时刻最大速度差计算实际测量速度和理论速度误差精度为0.027%,可以得出该设计方法实时性非常好。为了进一步说明测试方法的实时性精度,设计中另外通过计算从上位机发送读取命令到测量装置反馈测量值到上位机的总时间长度为采用定时中断采集测量数据的程序执行时间t4基于cpld的运动测量系统上述多轴运动参数在线测量系统采用当前流行的工业级ARM处理器芯片,不仅系统的运行速度得到很大程度的提高,而且方便灵活管理数据和系统的扩展。采用CPLD可完成不同测量轴的位置数据同步锁存,实现对不同轴的位置数据寄存器

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论