磁悬浮轴承控制器中MAX115与DSP的接口设计

2006-09-06 15:43:01来源: 电子设计应用

引言
  在五自由度主动磁悬浮轴承控制系统中,采用由工控PC+DSP控制器的架构是一种较好的方法,而DSP核心控制器则是磁悬浮轴承控制系统中非常重要的一部分,对主轴位置信号的精确采集是DSP控制器的首要任务。在本控制器中采用MAX115对主轴位置的模拟信号进行采集。

图1 磁悬浮轴承DSP控制器的结构简图

图2 MAX115与TMS320F240 DSP之间的接口电路图

磁悬浮控制器中的ADC选择
  在磁悬浮主轴控制器的设计中,对主轴位置的测量是至关重要的。位置传感器的信号经过适当的信号调理电路处理后被传送到A/D采样通道,ADC把得到的模拟信号转换成相应的数字信号,芯片采样的精度和分辨率以及采样转换时间是非常重要的技术参数,它们直接决定着控制速度和控制精度。本控制器中采用的传感器是一种电涡流位移传感器。它是一种高精度无接触式传感器。

  本系统要求能分辨1mm位置信号,根据传感器的传感特性,必须要求有至少为12位的分辨率。同时本系统中要求绝对精度不低于±1LSB。由于磁力轴承系统要求的控制周期很短(一般小于200ms),故要求ADC的采样时间也必须很快(一般在20ms内)。
综上考虑选用Maxim公司的MAX115作为ADC来完成主轴位置信号的采集。MAX115是12位2×4通道同步采样逐次比较型ADC,其具有两组ADC,每组4通道连续采集保持;单通道转换时间为2ms;转换精度±1/2LSB;4通道传输率为16ksps;并且内部具有2.5V参考电压和10MHz时钟,极大地精简了外部附加电路;其高速的并行接口可以方便地与DSP相连。

MAX115与TMS320F240的接口电路
  图1是磁悬浮轴承DSP控制器的结构简图。图中4路主轴位置信号经由MAX115进行A/D转换后,采集结果通过中断方式输入到DSP内。DSP经过滤波算法处理后,将采集数据写到双口RAM内,计算机通过ISA总线访问双口RAM并将其中的数据取走,进行上位机的图形显示、数据分析等功能。同时DSP进行控制算法计算,计算之后将控制数据通过控制器板卡上的4路DAC输出给功率放大器,从而实现对主轴的控制。这样,利用DSP处理速度快的特点来完成算法的计算,利用PC机强大的多媒体处理特点来实现主轴位置监视和数据分析,DSP和PC同时相对独立工作,互不影响,从而加快了系统的处理速度。

  MAX115和DSP硬件的接口设计如图2所示,MAX115引脚A0-A3和引脚D0-D11是具有三态的双向接口,可以直接和DSP相关引脚进行连接。为简化电路设计和增加可靠性,系统中使用的是内部基准电源,此时要将REFIN引脚接上一个0.1mF的旁路电容;同时使用内部时钟10MHz,并将CLK引脚接上VCC。

  MAX115与TMS320F240进行接口设计时主要考虑两个问题:一是MAX115数据线和控制模式线共用问题。由于MAX115的D1/A3,D0/A2为数据和地址共用引脚,但实际设计时不能将此引脚同时连接到DSP的地址线和数据线,此处即为DSP和MAX115接口连接的难点。本系统设计时用一种全新的方法来实现,因为DSP有16位的数据线,而MAX115只需要12位数据线和2根工作模式控制引脚,所以通过将DSP的14根数据线直接接到MAX115上的地址和数据线,即D0接AD_A0,D1接AD_A1,D2接AD_D0,D3接AD_D1,D4接AD_D2......D13接AD_D11,当对MAX115进行编程时,通过可编程逻辑器件MAX7128进行地址选通,MAX7128编程采用Altera公司的Max+plusⅡ集成环境,使用AHDL语言编写。
... ...

  MAX115的和信号线由DSP的和分别直接连接即可。通过DSP的数据线的D0-D3作为编程地址线从而对其工作模式进行编程。当A/D转换结束后,要从ADC中读取数据,读到14位数据D13-D0时,再将所得数据左移2位,即屏蔽掉低2位无效的输入后,即可得到12位A/D采集数据。另一个问题是MAX115与DSP接口的速度匹配问题,由于DSP速度过快,会导致MAX115无法正常工作,所以系统中采用软件的方法插入等待状态,具体操作见下文的软件设计。

  控制器中MAX115的片选()信号、转换开始()信号及读()写()信号都是由MAX7128产生的。MAX7128编程方便,易于调试,用其实现快速地址选通等功能来加快系统的处理速度。其中DSP的参与地址译码。

软件设计
  DSP作为下层的CPU来控制数据采集的整个过程。本控制器设计使用的编程软件是TI公司的CCS,采用C语言及嵌入式汇编编程,这样编写的程序简洁,易于读懂。

  本控制器采用4通道连续转换,A3A2A1A0=0011。上电后DSP给MAX115写入工作方式,然后送信号,A/D转换开始,转换完成后,MAX115发出请求AD_INT变低,DSP中断立刻开始读取A/D转换结果。MAX115的与DSP的XINT1相连,作为DSP的外部中断输入。当A/D转换完成后,变低,DSP进入中断服务程序,在中断服务程序中将A/D转换结果读出。这种方法应用于快速转换,只要中断来了便进行转换,充分利用了CPU的资源。下面给出了中断方式下DSP控制A/D转换的部分程序。其中主要以中断子程序为主,其它中断初始化及其DSP中断向量程序均省略。
_
____ A/D转换电路 _____
data=0X03;           /*MAX115工作方式选择A3A2A1A0=0011*/
asm(" OUT _data,0003h ");
/*选择ADC,并写入工作模式*/
asm("rpt XXX ");
/*XXX为一个数值 其大小应根据实际调试而决定*/
 asm(" nop ");
/*延时 匹配速度*/
asm(" OUT _data,1003h ");
/*A/D转换开始用地址1003h来选中信号*/

_____A/D转换结果的读取_____
void AD_INT()
{ asm(" IN _ad_result1,0003h "); /*读入AD_CH1A转换结果*/ 
ad_result1=ad_result1&0x0fff; 
ad_result1=ad_result1*2;
/* CH1A通道最后结果ad_result1*/
asm(" rpt XXX ");
asm(" nop ");
asm(" IN _ad_result2,0003h "); /*读入AD_CH2A转换结果*/
ad_result2=ad_result2&0x0fff;
ad_result2=ad_result2*2;
/* CH2A通道最后结果ad_result2*/
asm(" rpt XXX ");
asm(" nop ");
asm(" IN _ad_result3,0003h "); /*读入AD_CH3A转换结果*/
ad_result3=ad_result3&0x0fff;
ad_result3=ad_result3*2;
/* CH3A通道最后结果ad_result3*/
asm("rpt XXX ");
asm(" nop ")

关键字:控制器  数据线  主轴

编辑: 引用地址:http://www.eeworld.com.cn/gykz/CDYZX/200609/3925.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
控制器
数据线
主轴

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved