摘 要:设计一种研究数字控制(尤其是各种数字插补算法及其性能和状态的研究)的专用数字图示仪,其适用于数控人才培养。该图示仪能对控制芯片发出的各类脉冲和电平信号实时捕获,并进行分析,通过图形的形式形象地将插补算法,脉冲信号以及运动轨迹之间的关系以一组按比例缩放的脉冲序列和一个坐标图的形式显示出来。它具有结构简单,价格低廉,功能实用等特点。
关键词:ARM;数控;数字图示;脉冲插补;运动轨迹
0 引 言
在数字控制的研究中经常需要检测多轴驱动器输出脉冲,以了解算法、插补脉冲、运动轨迹及其三者之间的关系。采用普通示波器虽然可以查看脉冲,但由于多数示波器是基于两轴设计的,对三轴和多轴的情况进行观察时操作很不方便,并且不能反映出脉冲和运动轨迹之间的关系。此外,在数控人才培训的过程中,初学者通过轨迹仿真这一过程来理解和分析整个机床各机构的工作原理具有一定的困难,要再进一步分析插补脉冲和机床运动之间的关系难度更大。
在此设计了一种基于ARM嵌入式处理器的专用数字图示仪,能帮助仅具有基本操作知识的使用者,直观清楚地了解插补过程中各轴脉冲的关系和对应算法下刀具运动的轨迹。
1 系统硬件设计
系统以采用NXP公司的ARM7 LPC2136高速处理器作为核心处理硬件,该处理器体积少,功耗低,价格便宜,性能较高,I/O资源丰富,运算速度满足系统需求。根据功能的设计要求,系统的硬件组成划分为面板控制模块、液晶显示模块、核心处理单元和运动控制模块4大部分,如图1所示。
面板控制模块是由电位器、琴键开关和扭置开关等组成的简单电路,供使用者进行输入设置和调整。ARM处理器通过A/D采样和电平检测,获取电位器分担的电压和各个开关的状态,从而获取输入信息。之后根据输入信息处理,及时调整液晶屏幕上的显示,实现示波调整和观测内容切换的功能。液晶显示模块采用的是金鹏电子生产的OCM 128×128液晶显示屏,其成本低,体积小,信号处理简单,驱动技术成熟,十分适合本系统的应用。液晶屏的地址和数据共用数据总线,通过专用端口(如 C/D,CE,RD,WR等)控制数据和命令的输入与输出,其接口关系和时序简单明确,在ARM处理器上编写驱动程序十分简单。运动控制模块基于专用运动控制芯片MCX314,它拥有4轴(x,y,z,μ轴)驱动能力。MCX314芯片向步进电动机驱动器输出高低电平来控制电机的转动方向;输出变频脉冲信号来控制电机的转速。在一定的频率范围内,芯片输出脉冲频率越高,电机的转速越高。ARM处理器对MCX314的输出脉冲进行捕获,获取脉冲的时延,准确测得各轴的频率值,再通过软件算法将插补脉冲与刀具的运动速度和运动方向结合起来,产生运动轨迹数据,通过显示器模拟出来。从而直观地显示出脉冲插补和运动轨迹的对应关系,达到预期的实验效果。
系统的具体实现上,MCX314输出的信号分别为方向信号(高低电平)和脉冲信号,PP代表脉冲;PM代表方向;z,y,z分别对应各方向轴。液晶屏采用 I/O方式驱动,ARM处理器由P0.12~PO.15端口输出控制信号,由P0.16~P0.23端口写入或读取数据。显示波形的纵向增益、横向增益、触发电平及波形的扩展分别通过4个不同的电位器控制,ARM处理器对电位器上的电压进行A/D采样获取输入信息。另外,还设计了脉冲、特性和电压测试,以扩展该数字图示仪的应用场合。
2 软件系统设计
软件系统由运行在实时操作系统μC/OS-Ⅱ上的两个任务和独立于操作系统的一个中断服务程序组成。显示更新任务负责将传人数据以图形方式及时准确地显示在显示屏上;操作检测任务负责将外界各项操作的电平信号转换为一定格式的数据传递给操作系统的其他任务,以便下一步处理;脉冲捕获中断服务程序负责计算运动控制芯片发送的脉冲频率,并检测方向电平的状态,确定电机转动方向。系统软件架构如图2 所示。
(1)显示更新任务:流程如图3所示。该任务启动后将检测更新信号是否到来。若信号没有到来,操作系统将其从运行状态转入等待状态;若更新信号到来,程序从邮箱中取出中断服务程序发送的各轴计数值或操作检测任务发送的显示设置信息。经换算和比较后,选定频率最高的轴作为基准,将其与另外两个轴的脉冲一同显示在脉冲显示区中,并以正负号的方式在屏幕的方向标志区上指示出各轴的运动方向。随后再根据频率值f和步进电机在单个脉冲下驱动刀具直线运动的距离l计算出实际速度,按照一定比例N衰减后得到显示屏上的各轴运动速度v=fl/N和行进距离s=vt,进而绘制出刀具各轴向的大致行走情况。
(2)操作检测任务:流程如图4所示。该任务启动后将定时进行A/D采样和I/O电平检测,并与上次结果进行对比。如果电位器的电位发生较大的变化或功能选择的I/O电平发生变化时,就将变换值以约定好的数据形式通过邮箱发送给显示更新任务,并发送更新信号量,通知显示更新任务刷新显示屏。
(3)信号捕获中断服务程序:流程如图5所示。
发生中断后首先判断是哪一个轴产生的中断,然后将计数值存放在相应的变量中,并清除计时器的值,接着读取方向信号的电平。在与上一次的计时数值比较后,如果相同,则说明机床在做直线运动,不需要刷新显示屏,程序返回;如果计数值或电平发生了变化,则通过邮箱向更新任务发送相关数据,然后发送信号量通知屏幕刷新。
3 系统测试与应用
经测试,该系统在最高脉冲频率为200 kHz的运动控制芯片驱动下能够正常显示各轴脉冲的比例关系和相应的频率值,并能准确地描绘出如直线、简单曲线和基本弧形等加工轨迹。图示仪的最大响应延时约为30 ms,基本上能满足设计要求。
图6是驱动器最高脉冲频率为20 kHz下加工弧形时绘制的图形。图中弧形约占5π/8,横轴和纵轴的速度比约为2:1。在驱动器允许范围内,频率表与速度成正比,即频率比也约为2:1。图中测试值基本符合理论值。
该系统应用于数控机床实验系统,教学中,取得了较好的实验教学效果,学生反应良好。
4 结 话
在此着重介绍了基于ARM的运动轨迹数字图示仪的设计,分别从硬件设计和软件设计两个方面描述了系统的实现方法。它通过较低的成本,解决了数控研究和教学过程中分析插补算法、插补脉冲和刀具运动轨迹三者间关系的困难问题,在教学实用性上效果明显。