登录 免费注册 首页 | 行业黑名单 | 帮助
维库电子市场网
技术交流 | 电路欣赏 | 工控天地 | 数字广电 | 通信技术 | 电源技术 | 测控之家 | EMC技术 | ARM技术 | EDA技术 | PCB技术 | 嵌入式系统
驱动编程 | 集成电路 | 器件替换 | 模拟技术 | 新手园地 | 单 片 机 | DSP技术 | MCU技术 | IC 设计 | IC 产业 | CAN-bus/DeviceNe

ST7MC控制BLDC资料(更新120度和180度驱动的差异)

作者:grant_jx 栏目:MCU技术
ST7MC控制BLDC资料(更新120度和180度驱动的差异)
真正的技术问题,在ST MCU论坛上还是太少了。不知道是用的人太少,还是ST推广不够……?(怎么觉得好像是骂在自己啊?首先申明我不是ST的)以前在其它网站上曾经有整理贴出来过,既然这里有人问道ST7MC系列,顺手将这些资料转来这里,部分内容稍有删除。

最近发现突然出现很多人问起如何使用MCU来控制马达,由于工作的原因,一直有在接触ST7MC和dsPIC30F的BLDC变频控制,手上到是有一些这样的资料,分别是ST7MC系列、TI TMS320LF2xxx系列、MICROCHIP PIC18和dsPIC系列、FREESCALE MC68H和MC56F800系列的马达控制资料。里面有设计简单的马达控制应用,也有用了PI算法的,也有使用空间矢量算法的。我干脆分帖将这些资料列出来。大家一个方便,有需要的自己找自己所需吧。我本人使用过ST7MC、diPIC30F4011、TMS320LF2407、MC56F8156,不过只有ST7MC是现在用的最多的,后面的两个型号很久以前读书时毕业设计用来做UPS并机的,现在都差不多忘光了,只是还留下点资料,也一并整理出来给大家参考,免得需要的时候满大街找,不知到哪有。资料我可不负责更新啊。

相信大家只要了解电机特性,明白控制理论,用什么单片机都应该是一样的。资料都是英文的,请不要向我要中文的资料,如果我有中文的话,我会尽量提供。PDF格式为应用笔记,ZIP或RAR为参考代码。适当的地方我会加一点中文概述,方便大家。

一、ST7MC部分

ST单片机首页
http://mcu.st.com/mcu/   
这里你可以找到所有ST官方的单片机的资料,包括数据手册、用户手册、应用笔记、参考代码、开发环境

ST7MC的官方网页页面:
http://mcu.st.com/mcu/inchtml.php?fdir=pages&fnam=st7mc

ST7MC的官方应用笔记页面:
http://mcu.st.com/mcu/modules.php?NAME=mcu&file=familiesdocs&FAM=30#Application%20Note
里面有提及ST92141的,这个型号ST已经不建议在新的设计中使用了,使用ST7MC来替代。

1、ST7MC Three-Phase AC Induction Motor Ccontrol SOFTWARE Library
http://www.st.com/stonline/books/pdf/docs/10266.pdf
http://www.st.com/stonline/products/support/micro/files/an1904.zip

2、ST7MC Three-Phase BLDC Motor CONTROL SOFTWARE Library  
http://www.st.com/stonline/books/pdf/docs/10267.pdf
http://www.st.com/stonline/products/support/micro/files/an1905.zip
这个库使用的是三次谐波,PI算法实现电流环或电压环的闭环控制。

3、ST7MC PMAC Sine Wave Motor CONTROL SOFTWARE Library  
http://www.st.com/stonline/books/pdf/docs/10404.pdf
http://mcu.st.com/mcdfiles/1103128212.zip

4、PFC for ST7MC Starter Kit
http://www.st.com/stonline/books/pdf/docs/10426.pdf

5、PWM Management for 3-Phase BLDC Motor Drives using the ST7FMC  
http://www.st.com/stonline/books/pdf/docs/10691.pdf

6、BACK EMF detection during PWM on time by ST7MC
http://www.st.com/stonline/books/pdf/docs/10775.pdf

7、Space Vector Modulation using 8-Bit ST7FMC Microcontroller and AK-ST7FMC Starter Kit  
http://www.st.com/stonline/books/pdf/docs/11367.pdf
用ST7MC实现空间矢量算法,有详细的思路说明,具体的参考代码没有找到

8、ST7MC1 ST7MC2 datasheet
http://www.st.com/stonline/books/pdf/docs/9721.pdf

9、BLDC Sensor Motor Stand Alone library rev 2.0
http://www.st.com/stonline/products/support/micro/files/an1905_3ph_sr_rn.pdf
http://www.st.com/stonline/products/support/micro/files/an1905_3ph_sr.zip

10、BLDC Sensorless Motor Stand Alone Library rev 2.1  
http://www.st.com/stonline/products/support/micro/files/an1905_3ph_sl_rn.pdf
http://www.st.com/stonline/products/support/micro/files/an1905_3ph_sl.zip

11、ST7MC Three-phase AC Induction Motor CONTROL Library Rev 2.0  
http://www.st.com/stonline/products/support/micro/files/an1904_rn.pdf
http://www.st.com/stonline/products/support/micro/files/an1904_sw.zip

12、ST7MC-KIT/BLDC Starter kit SOFTWARE Suite.  
(includes comprehensive PC Graphical User Interface and C SOFTWARE libraries for standalone operation of the starter kit)
http://mcu.st.com/mcdfiles/1131027818.exe
这个GUI可以看到调试的时候需要配置那些参数。


13、ST有一些内部培训的材料,下列的资料仅用于技术交流,请勿用于商业用途。如需商业用途,请删除下述这些资料,然后自行与ST联系获取你的需要。希望下载者注意!
AC Induction Motor

1)、AC Induction Motor Advanced.pdf
2)、AC Induction Motor Basics.pdf
3)、AC Motor CONTROL Library Overview.pdf
4)、Use of GUI and stand-alone software.pdf
5)、Working with the AC Motor CONTROL SOFTWARE Library.pdf   
6)、Hands-on session exercises.pdf
7)、AC induction motor MTC peripheral exercise.pdf
8)、AC induction motor MTC peripheral,features and associated registers.pdf
9)、Sinewave generation technique.pdf
10)、Sinewave generation technique(Solution).pdf

BLDC Motor
1)、BLDC Motor basics.pdf
2)、ST7FMC2x BLDC Motor Peripheral.pdf
3)、ST7FMC2x Microcontroller.pdf
4)、BLDC START & DRIVE.pdf
5)、BLDC Flowchart.pdf
6)、Starter Kit & GUI.pdf
7)、BLDC MOTOR BASIC.pdf
8)、BLDC motor MTC peripheral exercise.pdf



14、ST7 FLASH STICK User Manual   
http://www.st.com/stonline/books/pdf/docs/9133.pdf


3、RD56F801XPMSMBLDC
    PMSM and BLDC Sensorless Motor CONTROL using the 56F801X
    1)、Reference Manuals:
    http://www.freescale.com/fi
2楼: >>参与讨论
grant_jx
120度驱动BLDC和180度驱动BLDC的区别
通常对于BLDC所说的6步法驱动:

下图是一个简单的BLDC马达六步法的简单示意图:

按照六步法的每个相的导通次序,我们可以得到每个开关的导通时序:



如果把它的每一相的电压的导通时间以导通角度来做横坐标,我们可以看到:
1、每一相的导通角度是120度;
2、在每一相的导通时间内是使用PWM信号来调制的;

有传感器(霍尔)和无传感器(反电动势BEMF)是两种不同的 转子位置反馈方式。检测到转子的位置目的是为了实现换相。

在第二幅图中我们可以看到:
当BEMF到通过PhaseA、PhaseB、PhaseC中间值(即1/2VCC)时,可以算出转子的位置。
那BEMF又是如何实现?


上图的mx 点即为反电动势过零点,其中 x=1,2,3,4,5,6。对于特定的某一相而言,以 a 相为例, (x=3, 6)所处的60° 扇区即为反电动势过零检测区域。上图横坐标所对应的电压为半电压uN。

这样我们可以知道:
1. 反电动势过零点超前于实际换相点30°
2. 一个电周期内,任一相反电动势有两次过零
3. 检测反电动势过零点等效于检测实际换相点(霍尔位置传感器)
4. 反电动势检测可以简化为反电动势过零检测

这里需要注意的是:反电动势过零检测只是针对任意时刻没有通电的线圈(相/绕组)而言。

  下面这份图时FREESCALE给出的一个相压和BEMF的关联图:


对于BEMF的采样,有几种方法,传统的是使用3个电阻虚拟一个中性点,即虚地:


在PWM导通期间,  中点的电压位HV/2。这样通过三个电阻与每个相线连接,然后连在一起,人为的创建一个虚地点。
ST7MC使用了另一种方式:


这样做的好处?看上面的两种图啊。
 

* - 本贴最后修改时间:2006-9-14 15:19:21 修改者:grant_jx

3楼: >>参与讨论
gyt
谢谢
 
4楼: >>参与讨论
STMCUChina
楼主真是有心人,热心人
 
5楼: >>参与讨论
STMCUChina
楼主真是有心人,热心人,谢谢与大家分享搜集的资料
还没写完怎么就走了呢?还不熟练!

6楼: >>参与讨论
grant_jx
对BLDC还谈不上很熟,只是还没学会怎么在21IC上贴图
要是不拿几张图来说明一下,光用文字解释起来很费劲。图帖了几次都失败了。我现在连上传文件都老是失败。

对BLDC这东西,只是因为工作的需要接触得多一点罢了。

* - 本贴最后修改时间:2006-9-4 20:08:14 修改者:grant_jx

7楼: >>参与讨论
northfish
还是ST7MC的性价比高些
ST7MC可用于驱动交流,直流,带传感器和不带传感器的各种类型的电机;而且是8位机,性价比不错吆!据我了解,st提供的库程序还是相当的完整,特别是3 phase induction AC motor 和 3 phase BLDC motor做得非常好,要是在这个基础上开发,相信可以节约不少时间的。

悄悄地说,采用ST7MC开发的变频家电产品已经大批量上市了。相信大家很快就可以在市场上看到这个产品了!

8楼: >>参与讨论
Lee.
谢谢。Grand兄辛苦了。
 
9楼: >>参与讨论
李淳
回复Grand兄
Grand兄,注意你很久了,觉得你的人品和技术真的都很不错,我的QQ:8825059能加我为好友么?有一些事情想和你说说

10楼: >>参与讨论
grant_jx
180度驱动BLDC
120度和180度的区别在与其推动每一相的导通角不一样。



1、每一相的导通角为180;
2、输出的信号为正弦波;


对电流分解有激励电流(D轴)和转矩电流(Q轴)
1、D轴:一般为永磁体磁场方向;
2、Q轴:电枢电流方向,滞后D轴90度;

此类驱动一般都是用矢量控制的方式。下图是TI的一份应用笔记中给出的控制函数模型:


下图是瑞萨给出的一个数学原型:





对于180的驱动我也不是很懂,只是了解了一点皮毛,仍在琢磨中。
上述给出的贴图多是来自ST的ST7MC、FREESCALE、Ti、MICROCHIP的DSP应用笔记,要是对马达驱动有兴趣,可以去这些网站上看看。

* - 本贴最后修改时间:2006-9-14 15:54:17 修改者:grant_jx

11楼: >>参与讨论
lishu
汉王手写芯片
汉王手写芯片,它内置了触摸屏控制电路、UART接口,内嵌了汉王科技最新的手写识别核心,可以为用户提供方便、成熟的汉王手写识别技术,在产品中实现手写输入功能,大大缩短用户的产品开发周期,提升产品性能。 并提供了灵活的控制命令接口,完成三种工作模式及其参数的设置,可以满足用户在触摸屏 LCD 分离型、触摸屏LCD 一体型等不同情况下的各种应用


http://www.chinesesee.com/html/listProducts/200609/1158149454.html

12楼: >>参与讨论
shengyue
请兄弟能留下联系方式,希望能有机会大力合作
我姓冯;13510511876;shengyue200@sohu.com;我们希望能与电机控制高手合作;期待兄台的来信来电;专职、兼职皆可;报酬可以商谈;

13楼: >>参与讨论
grant_jx
我可以告诉你我的QQ
937035

不过非常遗憾的是我现在基本上已经不再使用QQ、MSN了。我现有的两台计算机上都没有安装QQ程序。主要因为我现在很难道有时间经常可以泡在网上,不比读书的时候,时间大把大把的有啊。

* - 本贴最后修改时间:2006-11-1 13:09:30 修改者:grant_jx

14楼: >>参与讨论
yjf1979yjf
那怎么联系你  给个方法 GRANT
 
15楼: >>参与讨论
noley
请教高手:BLDC如何控制恒流?
试过PID调节,但是效果很不理想,不知道各位有没有好的建议?

16楼: >>参与讨论
grant_jx
邮件
grant_jx@163.com,别出太难的题给我,要不我会潜水。因为经常要到外地出差,不能保证给你按时回复。

17楼: >>参与讨论
weikun
我用MEGA8和ti 的dsp实现电机控制。
MEGA8控制无刷电机,无传感器的,有传感器的。

ti dsp实现pmsm的电机控制,矢量的。


18楼: >>参与讨论
21icer
楼主好人
 
19楼: >>参与讨论
violit
请问一个外行的问题
目前航模中使用的无刷电机调速器很多使用AVR M8实现的,基本是仅仅对下桥臂作PWM驱动,
如果使用专用电机处理器实现矢量控制的话,同样的配置在飞行时间上大概能提高多久?


20楼: >>参与讨论
mcu430
haoa taihaol
 
21楼: >>参与讨论
powte
真的是好贴呀

虽然我不用ST这个东东,也不做电机控制,还是顶楼主

22楼: >>参与讨论
pagan
请教BLDC加速问题
六状态切换法控制BLDC, 没有位置传感器, 现在碰到的瓶颈问题是客户要求非常快的加速, 在140ms内从6krpm 升到22krpm. 我想尽办法只能做到6krpm - 20krpm, 好象可以直接控制的变量: PWM的占空比, 以及端电压与BACK EMF的相位差都控制了, 但还是无法达到客户要求. 想请教grant_jx, 是否有什么好方法或者技术参考资料? 多谢多谢!

BLDC是24v, 三对极, 最高速22krpm, 机械时间常数24.5ms

参与讨论
昵称:
讨论内容:
 
 
相关帖子
ST7 16位通用定时器中的输出比较功能(Output Compare)详解
选择串口的问题
STR7 应用笔记目录,欢迎免费下载
用Rlink烧写 st72324J6的问题
请教hjtag +j-link的问题?
免费注册为维库电子开发网会员,参与电子工程师社区讨论,点此进入


Copyright © 1998-2006 www.dzsc.com 浙ICP证030469号