摘要:磁存储设备是应用广泛的信息存储器件,研究其抗振动、抗冲击的控制技术对于在恶劣环境下工作的硬盘和便携式计算机具有重要意义。本文在采用外加固主动控制方案的基础上,提出数字主动控制系统的设计思路,并且详细阐述以DSP为核心的数字控制系统的软、硬件设计方案。
关键词:微型盘 主动控制系统 数字信号处理器
1 引言
磁存储设备(本文主要指微型硬磁盘)是应用广泛的信息存储器件。在数据存储业中,磁盘驱动器生产商多采用增加磁道密度(每英寸的磁道数)和磁盘转速(每分钟转数)来扩大计算机硬盘驱动器的容量。而随着磁道密度的增加,二个相邻磁道间的距离变小了,因此,所允许的读/写头和磁道的偏离误差,即磁盘驱动器业内人士所说的误定位也相应降低了,这样硬盘很容易受到伤害。上述工作原理决定了实际应用中必须使用抗恶劣环境的加固技术来提高存储设备的抗振动和抗冲击性,而且应主要针对机械物理环境和气候环境实施加固。笔者采用外加固主动控制理论与技术,将电磁主动控制技术用于计算机外部设备(微型盘)的振动冲击外加固,并且构建了以DSP为硬件平台的数字主动控制系统。
2 主动冲击振动控制技术
提高磁盘存储设备的抗冲击、抗振动性能始终是国内外十分重视的研究课题。上世纪90年代中期多采用被动控制技术来解决这一难题,如钢丝绳减振器、油膜减振器、金属丝网减振器、复刚度双橡胶减振器及二级减振技术等。我国从20世纪90年代中期开始重视磁存储设备的抗冲击、抗振动研究,并对被动外加固理论与技术进行了深入研究,已获得一些较好的可实施性成果。随着对强冲击、较低频抗振要求的提高,研究主动控制理论及研制相应的主动控制装置成为发展趋势和发展水平的标志。通常民用硬盘的头盘系统所能承受的外界冲击加速度小于3.975g,当用于60g(持续时间6~9ms)冲击和5g(振动频率为50~1000Hz)振动的恶劣环境下时,必须使用加固技术构建加固型硬盘。
2.1 头盘系统的冲击特性
微型硬盘驱动器通常是电子系统抗冲击振动的薄弱环节之一,它的头盘系统由弹性取数臂、浮动质量块(磁头)、盘片、气膜刚度和驱动控制系统组成,其简化模型如图1所示。一般而言,头盘系统主要有如下工作特点:
(1)由盘片转换V使质量块与盘而间形成浮动气膜间隙δ,在工作状态时由取数臂刚度和气膜刚度提供质量块的悬浮力。
2)气膜间隙δ对读写工作性能影响极大取数臂刚度k及质量块流线外形对限制δ的大小有重要作用。若由控制系统信号驱动电机使磁头沿盘面运动寻道,则其运动响应快速性会比较好。
2.2 主动控制系统
系统可能要承受来自各个方向的振动和冲击,对于头盘系统而言,主要是垂直于盘面方向的振动冲击,主要是垂直于盘面方向的振动冲击,故可将系统看作单自由度系统,其系统组成如图2所示。图中,传感器、控制器、功率放大器构成系统的电路部分,执行装置、弹簧、阻尼和质量块构成系统的机械部分。
微型硬盘是本系统的受控对象。加速度传感器、前置放大器等构成系统的测量模块;控制器按基础传感信号和控制策略发出控制信号;电磁执行装置为作动器;功率放大器将控制信号放大并提供控制的能源,以驱动作动器产生执行动作。该控制系统的工作原理是先由基础加速度传感器拾取基础振动冲击加速度信号,经前置放大器后信号送入控制器,然后在控制器中完成对信号的一次积分(转换为速度信号)和二次积分(转换为位移信号)运算,并将二次积分结果做求和运算,之后控制信号输入功率放大器,最后将功率放大器输出信号以控制电压的形式加在执行机构上,这样执行机构便会产生相应的作动力,从而抵消来自基础的振动和冲击。
3 数字控制系统的硬件设计
从1982年TI(美国德州仪器公司)推出通用可编程DSP以来,DSP技术取得了迅猛的发展。目前DSP市场主要由TI、ADI、AT&T和Motorola公司占据。本文综合实际要求,采用一款由TI公司生产的TMS320F243型16位定点DSP。它集成了A/D、PWM调制等几种先进外设,特别适用于对电机的数字化控制。
3.1 控制系统的基本原理
数字信号处理器(简称DSP)具有实时信号处理能力和强大的运算功能。为此笔者构建了以DSP为核心的数字控制系统。它首先通过A/D转换器完成对电荷放大信号及一次、二次积分系统数的采样,再由DSP按照一定的控制算法对采样到的信号进行 运算,最后将结果经D/A转换器送入功率放大器后输出。由于DSP内集成了10位A/D转换器,所以可直接将模拟信号与DSP相接,图3是整个数字控制系统的结构框图。
3.2 DAC接口与外部存储器扩展
系统中的D/A器件选用了URR-BROWN公司的DAC7611。由于DSP内部10位ADC的电压输入范围为0~5V,输入信号经ADC转换后用数值0~1023(10进制数)分别对于0~5V的电压信号。所以DSP的输入信号已不是正负对称信号。加之DAC7611的输出范围为0~4.095V,而系统后级中功率放大器的输入应是零均值的,所以需要对DAC输出信号利用运算放大器进行电平变换。另外,DAC7611对于时钟信号的要求非常严格,要求时钟信号的上升沿发生在每一位数据的传送过程中。而TMS320F243的SPI(串行外设接口)是一个高速、同步串行I/O口,它可以设置每次产生的串行数据流的位数(1~16位),并且位传输速度也可以编程控制。SPI的时钟输出信号线SPICLK能够提供4种类型的时钟信号。其中有一种带延时的上升沿时钟,可使SPI在上升沿之前的半个周期内发送数据,或在SPICLK信号上升沿后接收数据,这恰好符合DAC7611对时钟信号的要求。另外,由于DSP的片内资源有限,因此设计中在片外扩展了用于存放数据的CY71021型RAM,其读写时间为12ns,与DSP的速度匹配,并且该RAM不工作时会自动采用低功耗工作方式。在利用DSP的串行外设接口向DMA传送数据时,系统还采用光耦器件对数/模电路进行隔离。外围接口电路如图4所示。
由于系统加电后,程序首先是从片内的FLASHROM开始执行的,所以一定要把引脚MP/MC接成微处理器方式。
4 数字控制系统的软件设计
4.1 控制算法
经过深入研究和大量的分析、计算,得出该系统的机电动力学模型:
系统的传感检测方程:
其中,u为基础振动加速度,C1和K1分别为与基础振动相关的二次积分和一次积分系数。
设u为u的电荷放大信号,根据控制要求,该系统主要利用DSP完成以下运算:
采用均值补偿法对积分结果进行修正,从而实现数字系统的控制。将上式离散化则生成
显然,这需要二次积分运算,其运算过程如
:
其中,m1(n)和m2(n)分别是一、二次积分运算的均值。
4.2 系统软件设计与实现
系统头文件(扩展名为.h)的主要功能是将DSP内部的各个特殊功能寄存器的名称与其默认地址相对应。这样,在汇编语言的执行过程中,DSP指令便会直接按寄存器名称去访问头文件中规定的地址。命令文件(扩展名为.cmd)实际上是DSP的资源配置文件,在PAGE0页(程序空间)它定义了各程序模块的起始地址和空间长度、片内外各程序段和中断矢量表的定义等;在PAGE1页(数据空间)它定义了各数据模块的起始地址和空间长度、各种参数和片内外数据区的定义等。此外,应注意遵守DSP实际存储器及存储空间的约定。
由于该系统主要通过DS宾ADC模块和SPI模块与其外围器件通信,所以在软件设计中需要对它们的工作模式进行配置。对于片内ADC,首先应该确定ADC的启动模式,然后使ADC,首先应该确定ADC的启动模式,然后使ADC达到10kHz的采样率。为了保证准确的采样率,通过DSP内部计数器计数产生中断作为ADC的启动方式。由于TMS320F243的机器指令周期为50ns,所以在二次采样时间间隔内至多可以运行约2000个指令周期,否则就不能完成实时运算。对于SPI模块,首先设不定期其通信方式为主模式,使数据按时序从SPISIMO引脚移出,然后设定每次传输串行数据的位数、时钟信号方式、传输速率等。另外,由于DSP的片外DAC的12位,而DSP的数据总线为16位,所以必须将最后的运算结果进行相应调整后再由SPI送出。另外,由于DSP用内部的ADC由数值0~1023(10进制数)分别对应0~5V的输入电压信号,所以应用值511来表示零均值点,这一点在均值补偿时要特别注意。系统程序流程如图5所示。
5 结论
笔者采用均值补偿算法进行了汇编程序的编写和调试,并对DSP的SPI、A/D、PWM端口及与片外RAM间的通信分别进行了测试,在确认硬件电路没有问题的情况下将调度过的程序加载到DSP内进行了实际硬件实验。实验表明,以DSP为核心的数字控制系统可以实现实时控制,不但低频段的相位误差非常小,同时可以兼顾到较高频段,适用范围大。总之,该控制系统的稳定性好,精度高,易于实现复杂模型的控制。