基于CPLD和MCU的光轨闭环控制系统设计

2011-05-03 09:11
中国测试 2011年4期
关键词:闭环控制原理图光栅

李 鸣

(中国测试技术研究院,四川 成都 610021)

0 引 言

标准光源在光轨上运行,要求运行平稳、振动小、重复定位精度高。系统采用光栅反馈位移信号,步进电机驱动组成的全闭环控制系统,有着良好的的位移、定位精度。设计中MCU完成数据处理、运算、控制驱动、通信功能,利用CPLD器件速度快、程序设计灵活、抗干扰能力强、与外围电路接口方便等特点,集成设计了光栅采样、数据锁存、程控变频、运行警戒等硬件电路。这样提高了CPU的管理效率,也增强了数据采集、监控的实时性[1-5]。

1 系统设计原理

控制系统设计对上位机开放了2种控制功能:

(1)MCU对CPLD存储的光栅信息和运行状态信息进行实时采集,并将采集的二进制编码转换为ASCII码后,通过串行接口传送至上位机,上位机对收到的数据进行运算、处理后,反馈控制指令。MCU收到指令后进行解码,根据指令要求执行相应的动作。

(2)系统备有十级调速档,速度档与频率的对应关系见表1。当收到上位机发来的控制位移量后,MCU将ASCII码转换成二进制码,通过模糊运算,并甄别当前位置状态后自动控制运行。

控制系统除具备上位机控制功能外,针对长距离的设备安装、调试等,辅助设计有遥控控制功能。遥控能够实现前进、后退、停车、增速、减速等速度控制功能,对于较长距离的装置检修、调试十分方便。系统设计原理图如图1[6]。

图1 系统设计原理图

2 系统硬件设计与实现

2.1 MCU微处理器

MCU微处理器采用Silicon Storage Technology,Inc.公司的SST89E58RD2芯片为核心处理器,其特点是兼容MCS-51/52指令系统,+5V工作电压,工作频率0~40MHz,内部RAM 1K,内含2块高性能Super Flash存储器(EEPROM),主存储块32K,次存储块8K,支持最大64K的外部程序和数据存储空间,3个16位定时/计数器,全双工增强型串行通信口(UART),8个中断源,4个优先级,带内部可编程看门狗(WDT),可编程计数器阵列(PCA),降低EMI模式,双DPTR指针,支持掉电检测。

2.2 CPLD结构与性能

CPLD (complex programmable logic device)与FPGA(field programmable gate array)均属超大规模可编程逻辑器件。设计采用了Altera公司生产的MAX7128S器件,其结构是将多个可编程阵列器件集成到一个芯片内,CPLD内部结构如图2所示。主要包含3个部分,分别为可编程逻辑阵列块(LAB)、可编程互联阵列(PIA)、可编程I/O控制模块,基本结构是宏单元,包括逻辑阵列、16乘积项选择矩阵和可编程触发器3种功能块,每16个宏单元组成一个LAB,所有逻辑块都连接到同一个可编程互联阵列(PIA)。由于CPLD内部采用固定长度的金属线进行各逻辑块的互连,所以设计的逻辑电路具有时间可预测性,避免了分段式互连结构时序不完全预测的缺点。其特性是编程灵活、集成度高、设计开发周期短、适用范围宽、开发工具先进。

图2 MAX7128S的结构图

2.3 控制电路设计

利用SST89E58RD2内部的丰富资源和CPLD设计灵活的特性,这样就构成了系统体积小、功能强且有很高性价比的控制系统。

控制电路原理图如图3,MCU通过8位数据总线与CPLD内部8位数据总线连接,进行数据交换,地址线用于选择不同的工作单元和接口,RD控制线(有效)读取CPLD内部存储器数据和节点状态信息,WR控制线(有效)将数据/指令送入相应工作单元或对应I/O控制口线。

图3 控制电路示意图

CPLD内部电路设计有地址译码器,地址译码器用于识别组件单元、I/O口线等。对光栅传感器信号设计有判相、倍频电路、计数器、锁存器等。控制驱动设计有程控分频器、脉冲输出、方向控制等。辅助设计有内部节点状态监测、限位甄别等。CPLD内部控制电路原理图如图4所示[7-8]。

3 系统软件设计与实现

控制系统应具有以下功能:

(1)将数据和状态信息实时传送至上位机,内容包括位移值、限位传感器信号、节点信息、速度控制状态。

图4 CPLD内部电路原理图

(2)运动控制包括行进方向、步进电机工作频率、启动、停止。

(3)位移控制包括按绝对坐标运行和按相对坐标运行。绝对坐标运行是指从当前位置运行至指定位置。相对坐标运行是指从当前位置运行至当前所在坐标+位移值(或当前所在坐标值-位移值)。

(4)在位移控制方式,软件能通过位移变化量,经模糊运算反馈速度输出。

(5)控制系统内十档速度参数可由上位机设置。

(6)根据以上要求提出程序设计思想。

控制系统程序设计流程图如图4所示。

程序设计由汇编语言(assembly language)实现,程序包括主程序和中断程序。主程的一个控制流程,首先对指令标志进行检测,当有指令标志时,则按照指令转到相应分支程序执行动作,控制指令由中断程序接收。当指令动作执行完毕,则清除指令标志,等待接收下一次控制指令。当未有指令标志时,程序将执行光栅数据、状态信息采集,然后将采集的数据和状态信息数据处理后送至指定单元,启动发送,将数据由串口传送至上位机[9-10]。

为传送一组完整的数据,启动通信后设置通信标志,当程序循环至此时,对通信标志进行判断。如通信标志“忙”表示该组数据未传送完毕,跳过执行;如通信标志“闲”表示数据已传送完毕,可以进行新的数据传送。至此,主程序的一个控制流程结束,返回至指令标志判断。程序设计流程图见图5。

利用中断处理具有实时性好的特点,将SST89E58RD2串口中断作为与上位机实时数据交换,外部中断0(INT0)作为CPLD对遥控信号解码完成后的指令触发。当串口中断发生时,在中断程序中将上位机指令通过处理后送至指令单元,并设置指令标志,串口中断程序结束。

图5 主程序设计流程图

外部中断0产生中断时,通过调取CPLD的解码单元,经处理后送指令单元,同时设置指令标志,INT0中断程序结束。中断程序流程图见图6

图6 中断程序设计流程图

CPLD编程采用Altera公司的Quartus II10.1设计软件,支持原理图、VHDL、VerilogHDL以及AHDL(altera hardware description language)等多种设计输入形式。该文采用原理图设计形式,通过硬件描述语言(AHDL、VHDL、Verilog)转换原理图,生成相应的目标文件,通过下载电缆将代码传送到目标芯片中,实现设计的数字系统[11-12]。

4 系统调试试验与分析

在测试系统中,光栅栅距为0.05mm,驱动机构采用的步进电机57HB76-306和与其配套的驱动器YKA2304MA,驱动器的最高工作频率200 kHz,64细分。系统中使用的时钟频率为20MHz,经分频后送至驱动器。按照系统运行平稳、低噪音的技术要求应首先调整分频系数,并以此作为设备运行的极限工作频率。以此向下确定10档速度频率,供速度控制使用。在项目应用中,通过计算机控制软件,调试确定的速度/频率关系见表1,计算机操作界面见图7。

表1 速度与频率关系及频率系数

表2 控制速度与位移关系

图7 计算机控制界面示意图

然后,对运动控制指令进行测试,如前进、后退、停车、增速、减速等控制指令。

位移控制方式,首先确定速度与位移关系,测试中采用计算机做闭环控制,位移距离设为2000mm,按表1速度档分别测试,测试结果见表2。由控制速度与位移关系,建立速度-位移关系模型。利用MCU+CPLD控制系统响应速度快的特性,将每次采集的位移变化量,经模糊运算处理后反馈速度输出。经测试,在8m长光轨上,输入任意位置后控制运行,其设置位移与实际位移的偏差均在≤0.1mm范围内。

5 结束语

CPLD的高度集成化和大容量设计,不仅完成了脉冲计数、存储、I/O控制等功能,还可将控制运算程式用硬件方式设计于数字系统。这对于控制环节来说,替代由CPU完成运算后再反馈的处理方式,其实时性和抗干扰能力均有很大的提高。在实际应用中,基于CPLD+MCU的闭环控制系统,结构简洁、开发周期短、响应速度快、可靠性好,有着很好的产品应用前景。

[1]许俊巧,李键,金晶,等.利用单片机形成的速度闭环控制系统[J].自动化与仪表,2005(4):21-25.

[2]李现勇.Visual C++串口通信技术与工程实践[M].北京:人民邮电出版社,2002.

[3]李翠敏,高有行.用寄存器实现步进电机速度控制[J].微特电机,2003,31(5):31-32.

[4]郭军团,高有行,范慧敏,等.基于单片机的光栅测试系统的硬件设计和实现[J].西安工业大学学报,2006(26):423-426.

[5]刘帅,祖静,张红艳.基于单片机的步进电机控制系统设计[J].电子设计工程,2010,18(4):38-40.

[6]李颖,张伏生,张志勇.基于X-Y控制平台的步进电机闭环控制系统[J].微电机,2005,38(2):50-52.

[7]董秀洁,杨艳,周游.FPGA/CPLD选型与设计优化[J].化工自动化及仪表,2009,36(3):60-63.

[8]高钦和.可编程控制器应用技术与设计实例[M].北京:人民邮电出版社,2004.

[9]何立民.单片机高级教程应用与设计[M].北京:北京航空航天大学出版社,2002.

[10]黄向慧.基于高速单片机控制的位移测量系统设计[J].工矿自动化,2006(4):44-45.

[11]张弘.USB接口设计[M].西安:西安电子科技大学出版社,2002.

[12]刘森,慕春棣.基于可编程逻辑器件的嵌入式系统硬件原型设计[J].微计算机信息,2006,22(2):20-22.

猜你喜欢
闭环控制原理图光栅
基于傅里叶变换的光栅衍射分析
基于LMI的过渡态主控回路闭环控制律优化设计
浅谈STM32核心板原理图设计
电路原理图自动布图系统的设计与实现
基于Protel DXP 2004层次原理图的设计
光纤光栅传感器的应用研究及进展
智能车竞赛中的闭环控制算法应用分析
光纤光栅传感器在足尺沥青路面加速加载试验中的应用
基于STC单片机的闭环反馈控制智能鞋柜系统设计
基于“闭环控制”原理的课程质量保障系统的构建与实践