佳工机电网 在线工博会 我的佳工网 手机版 English
关键字  
  选择展区 >>
您的位置: 首页 > 工业自动化展区 > 工业PC/工控机展厅 > 产品库 > 技术论文 > 正文 产品库 会展 人才 帮助 | 注册 登录  
工业PC/工控机
 按行业筛选
 按产品筛选
查看本类全部文章
e展厅 产品库 最新动态 技术文章 企业目录 资料下载 视频/样本 反馈/论坛
  技术应用 | 基础知识 | 外刊文摘 | 业内专家 | 文章点评 投稿 发表科技文章 
DSP56F80x及其在电机控制中的应用
作者:解放军电子工程学院 程水英 武传华
欢迎访问e展厅
展厅
7
工业PC/工控机展厅
DCS卡, 平板电脑, 工控板, 单板机, 监控系统, ...
摘 要:介绍了Motorola公司DSP56F80x系列DSP的内核、智能外设、应用领域和内部结构、外部引脚及开发方法等,最后给出了一个应用DSP56F805控制无位置传感器无刷直流电机的实验系统。
关键词:SoC;DSP56F80x;电机控制;无传感器无刷直流电机

电机控制经历了从模拟控制到以MCU(单片机)为主的模数混合控制再到全数字控制的演变。随着电机应用领域的更加广泛和深入,完成电机控制的运算也越来越复杂,而实时性的要求在很多场合却越来越高。这样,以DSP(数字信号处理器)加MCU的控制模式便应运而生。当前,系统设计及更新换代的周期越来越短,而系统的低造价和高可靠性却一直是人们的共同追求,片上系统(SoC)设计便是在此背景下应运而生的电子设计潮流。于是,TI、ADI、Infineon等公司相继推出了面向控制系统设计的DSP芯片。Motorola则更是不甘示弱,其DSP56F80x系列无论是从DSP的运算性能还是从MCU的控制性能来说都表现出了卓越的品质,实际上,该系列的DSP可以说是集成了MCU和DSP功能的一体化设计芯片。

1 DSP56F80x系列DSP

DSP56F80x系列DSP(以下简称 '80x)包括DSP56F801、3、5、7,2003年初,Motorola在该系列中又新增了一个片种DSP56F802。'80x集成了Motorola的16位定点DSP微控制器内核DSP56800,而DSP56800内核的指令集面向DSP和控制领域的应用均进行了优化。DSP56800内核为双哈佛结构,共有3个并行的执行单元,分别为算逻运算单元(ALU)、地址产生单元(AGU)和程序控制单元(PCU)。每个指令周期这3个执行单元共可完成6次操作。在一个指令周期内,DSP内核即可执行一次16位×16位的乘法累加操作(MAC)。另外,DSP内核还提供了硬件循环操作。芯片内核最高可工作于80MHz,在此工作频率下,指令执行速度可达40MIPS。内核的这种高效结构和高速运算能力,为 '80x系列DSP在运算复杂、实时性较强的控制领域中的应用提供了保证。

'80x系列DSP的设计继承了SoC思想,这使得它们在嵌入式系统中的应用更加方便。该系列DSP的片内就包含了容量不等的程序和数据FLASH及RAM;而且除DSP56F801、2外,芯片可外扩程序及数据存储器各64K×16位。此外,芯片还集成了丰富的面向控制的IP(Intellectual Properties)外设,如ADC、PWM、正交解码器(Quadrature Decoder)、四定时器(Quad Timer)、看门狗(Watchdog/COP)、JTAG、通用I/O接口(GPIO)和用于通信用的CAN总线、异步串行总线SCI及同步串行总线SPI等。DSP56F801、2内部还集成有一个弛张振荡器,因而,DSP56F801、2的应用甚至于不需要外接晶体或时钟源。表1为'80x系列DSP特性列表,其中的带“*”的模块引脚共用,可通过软件选择。

'80x系列DSP的应用领域包括:电机控制,如交流感应电机、直流有刷及无刷和有传感器及无传感器电机、开关及可变磁阻电机以及步进电机等;工业控制,如工业自动化电源控制、消噪降噪、环境控制和仪器仪表等;交通运输,如燃料管理、路灯控制、引擎控制、安全气囊等;其他如智能家电、家居安保系统、声控设备、电动玩具等等。

2 DSP56F805的内部结构、外部引脚与智能外设

从表1我们可以看出,'80x系列DSP各片种的主要区别在于各自片内集成的存储器容量和IP外设的种类和数目的不同。在此,我们以DSP56F805为例,详细介绍该芯片的内部结构、外部引脚和智能外设等。

DSP56F805的内部结构及外部引脚的功能分布如图1所示。下面对DSP56F805所集成的与电机控制密切相关的IP外设作几点简单说明。

● 共有两个分辨率为15 位的PWM模块:PWMA和PWMB,每个PWM模块都有6个PWM输出引脚、3个电流检测输入引脚和4个差错输入引脚。PWM输出波形可通过软件设置为边沿对齐或中心对齐。6路PWM输出可配置为0、1、2或3对互补输出,互补输出以外的则为相互独立的PWM输出。对于互补PWM输出对,芯片支持可编程死区电压控制和波形宽度及极性控制。

● 12位的ADC模块最高采样率可达1.66MSPS。考虑到电机控制的方便,ADC模块采用双路各4输入设计,这两路A/D变换器可被软件配置为同步或顺序采样。而且,ADC模块还可与PWM模块实现同步。

● 两个正交解码器(#0和#1)的输入引脚分别与两个四定时器A和B的引脚共用。当作为正交解码器用时,这四个引脚分别为:PHASEA、PHASEB、INDEX和HOME。正交解码器的输入引脚PHASEA和PHASEB可以外接光码盘的两相输出,用于检测电机的位置和转向。另外,这两个引脚也可分别用于单相脉冲信号的累加计数。正交解码器的内部还集成了滤波器,用于消除输入信号中的大脉冲干扰。正交解码器的位置计数器为32位,位差寄存器为16位,既可对高速电机测速,也可与通用定时器一起用于对低速电机测速。

● 四定时器模块:DSP56F805共有四个四定时器模块(A、B、C和D)。其中,四定时器A、B分别与#0及#1正交解码器共用引脚;四定时器C、D则有自己的专用引脚;四定时器C只有两个引脚,其余分别有四个引脚。每个四定时器模块均有四个16位定时/计数器,支持加法和减法计数,并可用软件配置为多种计数模式。而每个四定时器模块的外部引脚实际上是由该模块的四个定时/计数器共用,也可通过软件进行灵活分配。

● DSP56F805的GPIO口共有14个专用引脚和18个复用引脚。而且,每个GPIO引脚可独立地被软件配置为输入、输出或中断触发。当用户觉得芯片引脚不够用,或某些功能模块不需要时,我们即可通过软件编程改变或扩展芯片的功能。

另外,'80x系列DSP总共可以支持7优先级64个中断源,而且,中断系统的反应性能优越。这对于'80x系列DSP在复杂系统中的应用提供了强有力的支持。

3 DSP56F80x的开发方法

为了缩短开发周期,节约成本,无论是从硬件上还是软件上,Motorola均为'80x系列DSP提供了一整套的开发支持工具。

首先,在硬件上来说,Motorola已为DSP56F801、3、5和7开发了评估板(EVM)。这些EVM对于初学者熟悉'80x系列DSP来说不失为一种很好的工具。而对于开发者来说,在产品研发的初期,EVM则提供了良好的软硬件开发的实时环境。EVM的本身已为相应DSP作了外围扩展,而且也为用户的扩展留有足够的接口。由于’80x是Motorola推出的面向电机控制的DSP系列;所以,除了EVM以外,Motorola还为用户准备了电机控制用的硬件开发套件。如评估电机板EMB(Evaluation Motor Board),它为电机控制提供了12V、4A的功率级和一些电机控制连接件。另外还有3相交流/直流无刷高压/低压功率级、光隔离板等等。

事实上,根据我们的开发经验,用户可以按照自己的实际需求,非常方便地制作一套硬件开发工具。即在自己的DSP开发板之外,再用两片244和几只电阻和电容制作一个程序下载板,下载板的一端接计算机的打印口,另一端接DSP的JTAG口。这样就可以方便地实现程序的调试和下载。

其次,从软件上来说,DSP56800本身既可用汇编语言进行开发,也支持C/C++语言的开发,而且效率较高。更为可贵的是,Metrowerks的可视化集成开发环境“代码勇士(CodeWarrior)”则为代码的编辑、浏览、编译和调试提供了一个友好的用户界面。还有,Motorola的SDK(Software Development Kit)则为用户的开发提供了一整套的软件包和应用实例,包括DSP各种集成IP外设和特定开发评估板上外扩设备的驱动程序,以及针对电机控制、语音编码等一些特定应用的软件开发支持库和开发实例等。

4 DSP56F805在无位置传感器无刷直流电机控制中的实际应用
图2为一个应用DSP56F805实现对三相无位置传感器无刷直流电机控制的实验系统框图,选用了Motorola的DSP56F805开发评估板EVM和EVM评估电机板EMB。该系统可以实现对电机速度的闭环控制。电机位置的检测采用的是“反电动势过零检测法”。其中,过零信号由DSP56F805正交解码模块的输入监控寄存器(IMR)读取,PWM输出通道屏蔽操作的切换则由写入PWM模块的PWM通道控制寄存器(PMCCR)的相应MSK位实现。PWM模块被设置为独立模式,输出频率为16kHz。程序既可以在DSP56F805的内部FLASH中运行,也可以在EVM板上的外部RAM中运行,这可以通过在程序编译时进行目标选择。系统中的并口是用于进行程序目标代码的下载,而串口则是用于借用SDK的套件“PC Master”实现对系统的远程控制。这样,电机运行的启停和速度调节控制既可以手工控制,也可以通过PC机进行远程控制。

这里,我们给出有关PWM输出频率fPWM=16kHz的计算和寄存器设置。EVM板上的晶体中心频率为8MHz,DSP内核工作频率为80MHz,IP外围设备工作频率为fIP=40MHz,这可以通过写片上时钟合成模块的PLLDB寄存器进行设置。而PWM模块的PWMCM寄存器的值VPWMCM就决定了PWM模块的输出频率。
VPWMCM= fIP/fPWM=40×103/16=2500=0x09C4(16进制)
所以,我们应在PWMCM寄存器中写入16进制0x09C4。

事实上,将该实验系统稍作变化,还可以实现对其他一些种类的电机控制。在该实验系统上,可以进行有关电机控制各种算法的调试验证。当设计的原型系统比较完善时,可以参考开发评估板的硬件设计,设计实现自己的简化系统。实践证明,这种开发方法快捷高效。

参考文献
1 DSP56F801/803/805/807 User's Manual. Motorola, Inc., 2001
2 DSP56F805 Preliminary Technical Data. Motorola, Inc., 2002.1
3 Targeting Motorola DSP56805 Platform. Motorola, Inc., 2000.9
4 DSP56800 Family Manual. Motorola, Inc., 2000.1
5 David Zalac. DSP5680x Architecture Captures Best of DSP and MCU Worlds. Motorola, Inc., 2001.3
6 Motorola Embedded Motion Control Evaluation Motor Board User's Manual. Motorola, Inc., 2000(end)
文章内容仅供参考 (投稿) (如果您是本文作者,请点击此处) (10/10/2005)
查看更多工业PC/工控机相关文章: more
·集成控制平台帮助制造业产量提高300% Jim Waters (4/1/2006)
·无模型自适应(MFA)控制提高生产效率 Stephen Harris (4/1/2006)
·工业蒸汽锅炉的自动化控制过程与实现 上海神舟科技有限公司 李海 王宏岩 (10/9/2005)
·啤酒厂糖化控制系统的升级 上海西门子自动化公司/青岛啤酒二厂 李漓 马政 (9/21/2005)
·EPP高速数据采集与LabVIEW接口实现 中国矿业大学 袁晓明 叶平 刘春 (9/20/2005)
·合肥第二发电厂350MW机组DCS控制系统 合肥第二发电厂 张和平 (9/6/2005)
·基于DSP的快速多通道数据采集板的设计 哈尔滨瑞雷电气科技公司 李正彬 (8/21/2005)
·浅谈牵引变电所综合自动化系统 哈尔滨瑞雷科技电气有限公司 卢宏伟 (8/21/2005)
·双处理器在变电站监控中的应用研究 东方电子 (7/31/2005)
·汽车焊接车间设备故障自动诊断及焊机群控 深圳市朗助机电有限公司 (7/19/2005)
查看相关文章目录:
·工业自动化展区 > 工业PC/工控机展厅 > 工业PC/工控机文章
·基础件/通用件展区 > 电动机展厅 > 电动机文章
文章点评 查看全部点评 投稿 进入贴吧


对 工业PC/工控机 有何见解?请到 工业PC/工控机论坛 畅所欲言吧!


网站简介 | 企业会员服务 | 广告服务 | 服务条款 | English | Showsbee | 会员登录  
© 1999-2024 newmaker.com. 佳工机电网·嘉工科技