首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
FPGA/CPLD可编程逻辑
» FPGA在电机控制系统设计中的应用(2)
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
FPGA在电机控制系统设计中的应用(2)
发短消息
加为好友
yuyang911220
当前离线
UID
1029342
帖子
9914
精华
0
积分
4959
阅读权限
90
在线时间
286 小时
注册时间
2014-5-22
最后登录
2017-7-24
论坛元老
UID
1029342
性别
男
1
#
打印
字体大小:
t
T
yuyang911220
发表于 2015-8-30 22:28
|
只看该作者
FPGA在电机控制系统设计中的应用(2)
嵌入式开发
,
控制系统
,
管理系统
,
系统集成
,
处理器
图5 采用Qsys或者SOPC Builder管理系统互联
Altera的系统集成和嵌入式开发工具帮助设计人员迅速实现处理器与使用DSP Builder开发的硬件加速电机控制算法之间的接口连接。
DSP Builder和 MATLAB/Simulink
电机控制系统设计人员可以采用FPGA中的DSP功能来实现需要大量数学功能的高速电机控制算法。Altera的 DSP Builder在友好算法开发环境中,帮助设计人员生成 DSP设计的硬件表征,缩短了 DSP设计周期。DSP Builder结合了 MathWorks MATLAB®和 Simulink®系统级设计工具以及 Altera Quartus II软件和第三方综合和仿真工具,实现算法开发、仿真和验证功能。设计人员可以组合使用 Simulink模块和 DSP Builder模块以及 IP模块,验证系统级规范,进行仿真。
利用 Altera的集成 DSP Builder工具,设计人员在 MATLAB/Simulink环境中直接对FOC算法进行建模,构建结构图,连接表示系统的基本模块,如图6所示。这一实例中使用的基本模块是 ADD、SUB、MULTIPLY、CONSTANT、COSINE和 SINE。Simulink支持您对模型或者系统算法行为运行比特精度数学仿真。完成了算法开发后,DSP Builder针对您所选择的Altera FPGA器件,自动生成流水线RTL并进行优化。
图6 永磁体同步电机的 FOC实例
这一设计实例还包括位置和速度控制环,支持对转子速度和角度的控制,如图7所示。典型的电机控制 IP系统包括空间矢量 PWM、电流和扭矩控制环以及速度和位置控制环。根据 FPGA和CPU资源的使用情况,设计人员在硬件和软件之间分配这些单元。
图7 永磁体同步电机的位置、速度和FOC控制器
一个典型的传统设计流程包括建立电信号和电机系统模型,通过仿真开发算法,然后,编写C程序,实现算法,在 DSP模块上运行。这一设计流程具有以下缺点。
• 通常以浮点方式实现算法建模,然后转换为定点方式,在 DSP模块中实现。一般以手动方式实现浮点到定点的转换,缩放和上溢保护功能非常复杂。
• 必须针对模型重新验证 C程序。
• 提高算法运行时性能还需要进行以下步骤:
a.手动优化C程序以提高性能。
b.更新到速度更快但是更昂贵的 DSP模块。
c.在多个DSP模块上并行运行算法(如果可能)。
设计人员可以采用 DSP Builder,优化基于 FPGA的 DSP系统设计。DSP Builder优化流水线以及共享资源,生成高效的RTL表征。您可以组合使用现有的 MATLAB功能和Simulink模块以及Altera DSP Builder模块和其他IP内核,连接系统级设计,实现DSP算法开发,如图8所示。利用DSP Builder,系统、算法和硬件设计人员可以共享公共开发平台。
图8 DSP Builder系统级设计
注释:
(1)所使用的PI控制器需要反馈通路以支持要计算的整数部分。这一通路位于DSP Builder模型外部,通过连接测试台和生成的 VHDL中的 I_out端口和相应的 I_in端口来实现。
DSP Builder高级模块库自然支持定点或者单精度和双精度浮点类型的算法建模。设计人员可以使用比要求更高的精度,先在 Simulink中对算法建模,然后,在工具中调整精度,以满足最终要求。DSP Builder具有以下优势:
• 采用高级模块库,以按键FPGA方式实现算法。不需要手动转换步骤。
• 在硬件中运行之前,在 Simulink中直接观察运行时延时、数据吞吐量以及算法应用。采用 Simulink进行设计空间研究,选择最合适的实现方式。
• 在生成时优化并调整基本算子,包括 SQRT和三角等函数,在软件中实现这些算子时,其运行较慢而且时间可变。这一方法提供了可预测的算法运行时间,显著加速了某些算子的运行。
FOC算法基准测试
为展示这些特性和功能,Altera开发了一个基准测试练习,以仿真 FOC算法,对比标准非折叠和折叠实现的结果。FOC算法包括 Park/Clarke变换以及 PI控制模块,它需要加法 /减法、乘法、Sin、Cos算子以及某些常数和饱和逻辑,如图9和图10所示。在一个典型的 FOC控制器中,以 10-100ksps速率对输入进行采样,100MHz FPGA时钟速率很容易达到这一速率要求。在100ksps时,每10ms必须处理一个新采样。将这一处理延时常数保持在最小值,有利于提高控制算法的性能。
测试台包括图10 所示的单元:
图9 简单PI控制器
图10 永磁体同步电机位置、速度和磁场定向控制的控制器
收藏
分享
评分
继承事业,薪火相传
回复
引用
订阅
TOP
返回列表
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议