Actel Fusion FPGA的无刷电机(BLDC)控制

描述

无刷直流电机(BLDC)具有体积小,无机械触点,寿命长,安装方便的优点,一直都是电机应用的研究热点。目前无刷电机控制基本上都是采用霍尔传感器作为转子位置反馈元件,但位置传感器的存在不仅增加了电机的体积和成本,很大程度上还成为电机的故障源之一,使系统可靠性降低。所以无位置传感器的无刷电机控制方案业已成为当前的研究热点。

  近年来,采用数字控制的无位置传感器控制技术,已逐渐成为今后无刷电机控制的发展趋势。在此采用Actel公司的Fusion系列混合信号FPGA为控制器核心,设计了一款无位置传感器无刷电机控制器。采用Fusion内部特有的12位多路高速A/D转换器,实现电机反电动势检测,使用内嵌的51软核实现速度闭环控制算法,成功实现无刷电机无位置传感器控制方案,具有系统硬件方案简单,集成度高,可靠性好,调速精度高等优点。

  2 系统方案设计

  2.1 Fusion FPGA简介翻

  Actel Fusion系列器件是业界首款也是唯一具有模拟功能的Flash架构的FPGA,融合了FPGA数字内核、A/D转换器、Flash存储器、模拟的I/0、RTC等数字和模拟器件。Fusion器件内部具有2~8 Mbit不等的用户可用Flash存储器和30通道、最高12位精度、最高600 Ks/s采样率的A/D转换器,片内100 MHz的RC振荡器与PLL(锁相环)一起共同为FPGA提供时钟,以节省外部时钟的开销。这些特点极大地提高了该系列FPGA器件的功能,简化了系统设计,大幅度减少了电路板面积和系统总成本。当Fusion系列FPGA器件结合8051,CortexMl,ARM7等软件MCU核时,还可以实现真正的SoC系统。Actel Fusion系列FPGA器件是迄今为止最全面的单芯片模拟与数字可编程逻辑系统的解决方案。

  2.2 控制器方案设计

  根据无刷电机反电动势检测法原理,结合Actel FusionFPGA的内部功能特性,设计了图1所示的无刷电机控制方案。

  在该设计方案中,Fusion AFS600作为控制器核心,用内嵌的软核8051 MCU实现控制算法,高速12位A/D转换器分别检测三相绕组的反电动势和外部电位器设定电压。电位器设定电压用于确定电机的转动方向和转速。通过FPGA逻辑实现LCD液晶屏接口,用于显示设定转速和实际转速。此外一个重要的模块是三相PWM波形发生模块,通过可编程计数器实现。PLL模块用于向单片机、A/D转换器和PWM模块提供基准时钟信号。

  

  外围电路主要包括:LCDl602字符型液晶显示器、设定转速的电位器和无刷电机驱动器。无刷电机驱动器采用A3935三相全桥器件配合6个大功率NMOS管IRF2807S实现完整的无刷电机控制方案。每项绕组的反电动势通过串联电阻分压并滤波再送入Fusion AFS600内部的A/D转换器。A3935是一款汽车级三相功率MOSFET驱动器,特别适用于无刷电机控制,具有过压、欠压、过流、过热、短路和开路监控功能,功能强,可靠性高等功能。

2.3 三相PWM产生

  设计方案中采用Fusion的逻辑门电路实现了PWM频率和占空比可连续调节的PWM发生模块。其中,设定的频率参数和占空比可根据A/D转换器采集的电位器电压值转换为相应的参数值,只要调节外部电位器就能产生6路占空比可调的PWM信号波形。下面给出的相关代码是采用VerilogHDL语言编写的一部分三相PWM的源码。图2示出用示波器测出的其中两路PWM信号波形。

  

  2.4 反电动势检测

  实现反电动势检测原理是:无刷直流电动机在运转过程中,同一时间只有两相绕组处于工作状态,即该两相所对应的功率器件处于PWM状态,而第三相处于悬空状态,其端电压等于感应电动势。反电动势的过零点就发生在该相绕组悬空期间。此时通过检测端电压就能间接检测该相反电动势的过零点。该控制器的反电动势检测采用Fusion系列FPGA器件内部的模拟模块,三相端电压经过电阻分压滤波后送入Fusion系列FPGA器件内的12位A/D转换器进行分时采样。Fusion系列FPGA器件内部采用分时循环采样电位器设定电压和三相绕组的反电动势电压,A/D转换器将转换结果分别存入相应的数据寄存器。A/D转换器循环采样部分的

  

  图3示出用示波器测量到的实际反电动势μ1和μ2的波形,由于反电动势信号经过一定的模拟滤波处理,信噪比较好,便于FPGA进行过零点检测。

  

  2.5 控制软件设计

  上述有关PWM产生模块和A/D转换器循环采样模块都是用Verilog HDL语言编写的,在Actel Libero IDE集成开发环境下编译通过并作为模块调用,而调速控制算法的实现则使用了Fusion系列FPGA器件内部的8051软核实现,开发工具是Keil C。图4示出51软核的算法流程。

  

  3 结论

  无刷电机控制器硬件平台基础上分别编制开发了FPGA内部各功能单元,并进行了编译链接和引脚分配。经过实验实现了对无刷电机的平稳启动和转速调节。所用无刷电机24 V供电,额定转速l 600 r/min。由该FPGA控制器控制的调速范围为760~1 600 r/min内连续可调。该控制器的实现充分体现了Actel Fusion系列混合信号FPGA在模数混合系统应用中的高度集成性,真正单片SoC的优点,为Fusion系列FPGA器件的应用提供了参考价值。

推荐课程:

张飞软硬开源,基于STM32 BLDC直流无刷电机驱动器视频套件

http://t.elecfans.com/topic/42.html?elecfans_trackid=fsy_post

打开APP阅读更多精彩内容

(0)

相关推荐

  • ADC采样积分方式的BLDC方波无感控制的原理

    本文主要参考了TIDA-010031参考设计,分析下ADC采样积分方波无感控制的原理,方便大家更好地完成类似的方案设计. 1.下面是典型的三相BLDC电机控制框图. 三个半桥驱动BLDC无刷电机,检测 ...

  • 反电动势过零点的检测方法

    一般的永磁无刷直流电机是由三相逆变桥来驱动的,根据转子位置的不同,为了产生最大的平均转矩,在一个电角度周期中,具有6个换相状态.在任意一个时间段中,电机三相中都只有两相导通,每相的导通时间间隔为120 ...

  • 【学术论文】基于DSP+FPGA+CPLD的电力电子设备通用控制器

    摘要 传统数字信号处理器(Digital Signal Processor,DSP)控制系统在中低压电力电子设备的控制和保护中已有广泛的应用,并取得了良好的控制效果,但对于高压大功率电力电子设备的控制 ...

  • 直流无刷电机BLDC是如何工作的?

    BLDC是直流无刷电机,与之相对的是直流有刷电机,两者最大的区别就是一个有电刷,一个没有电刷.电刷的作用是换相.直流无刷电机BLDC是怎么旋转的,下面通过和有刷电机的旋转通过对比介绍一下. 直流有刷电 ...

  • 【精品博文】详细解析基于FPGA的LCD1602驱动控制

    赢一个双肩背包 有多难? 戳一下试试看! →_→ 长摁识别 [主题]:详细解析基于FPGA的LCD1602驱动控制 [作者]:LinCoding [时间]:2016.11.23 这周末去找女票玩了,回 ...

  • 【每周一问】如何控制加载FPGA程序时,Xilinx FPGA的IO管脚输出高低电平

    可以利用约束文件进行约束吗? 在程序加载过程中,约束文件不会起作用,所以设置约束没有用. 先看下Xilinx FPGA的IO结构(参考XIlinx官方文档) 在FPGA IOB内部,Pad输出之前,内 ...

  • SCOOT过时了?西门子和TfL启动交通控制FUSION

    伦敦西门子交通运输公司(TfL)宣布推出全新的自适应交通控制解决方案Sitraffic FUSION.FUSION是伦敦实时优化器(RTO)系统的一部分,该系统将提供一种全新的方式来管理整个城市的道路 ...

  • BLDC无刷电机和DD直驱变频电机的区别 | 洪杨博客

    洪杨    2017-06-10 现在变频洗衣机电机种类很多,所以造成大家选择的时候非常的难选,不知道到底应该首选哪种种类电机的滚筒洗衣机,我今天就和大家说一下BLDC无刷电机和DD直驱变频电机以及t ...

  • 基于FPGA的磁耦合谐振式无线电能传输频率跟踪控制

    ★中国电工技术学会出品★ 致力于产业界与学术界融合创新的品牌会议 ①浏览会议详情,请戳下面标题 ☟ ☞ 参会指南︱2018第十二届中国电工装备创新与发展论坛暨第八届电工技术前沿问题学术论坛 ☞ 会议程 ...

  • 【学术论文】基于FPGA小型化数传中继天线驱动控制设计

    摘要 为满足航天器小型化设计需求,采用单片反熔丝FPGA作为中继天线驱动控制主控芯片.为达到天线指向机构的高精度要求,采用双通道旋转变压器配合AD2S80解码获得位置数据.为提高机构速度稳定度,采用步 ...

  • 华硕推出ROG Strix Fusion耳机,能用手机控制灯效

    ROG Strix有一个很明确的定位,基本上就是针对现在火热的电竞市场,在耳机这一领域,ROG Strix其实是有很大的发展空间的.所以,华硕在Computex 2017上继续切入了这块市场,推出了最 ...