首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
FPGA/CPLD可编程逻辑
» 论工业控制系统的FPGA设计方法(6)- FPGA在智能与复杂控制系统中的应用总结
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
论工业控制系统的FPGA设计方法(6)- FPGA在智能与复杂控制系统中的应用总结
发短消息
加为好友
pengpengpang
(pengpengpang)
当前离线
UID
1023229
帖子
6106
精华
0
积分
3055
阅读权限
90
来自
中国
在线时间
156 小时
注册时间
2013-12-20
最后登录
2016-7-3
论坛元老
UID
1023229
来自
中国
1
#
打印
字体大小:
t
T
pengpengpang
发表于 2014-12-3 21:52
|
只看该作者
论工业控制系统的FPGA设计方法(6)- FPGA在智能与复杂控制系统中的应用总结
控制系统
,
控制器
,
工具包
,
工业
,
智能
上次博文大概介绍了FPGA在工业控制器设计中的贡献与限制。本次主要就FPGA在工业系统中应用的典型案例进行归类、总结。
现代电子系统设计中越来越先进的EDA工具包使得将复杂的工业控制算法实现到FPGA中变得越来越容易。因此,越来越多的智能的、复杂的工业控制器开始被使用FPGA设计,因为FPGA具有快速的原型验证能力与高度的灵活性。特别是随着FPGA集成了ARM、PowerPC等硬核之后,FPGA的软硬件协同设计功能变得愈发强大。下面列举了一些使用FPGA实现复杂的工业控制算法的例子,包括神经网络、模糊逻辑控制系统、智能专家系统、可进化式硬件、电机控制器及其接口等
1. FPGA与神经网络(NN)
神经网络是由大量处理单元互联组成的非线性、自适应信息处理系统。它是在现代神经科学研究成果的基础上提出的,试图通过模拟大脑神经网络处理、记忆信息的方式进行信息处理。
为什么要使用FPGA来实现神经网络呢?可以先看一下神经网络的结构图,如图1所示。
图1 神经网络的结构原理图
很容易看出,神经网络具有高度的并行性,用FPGA做原型开发与实现是最合适的方案。
有一本书不知道大家看过没有,是Amos R. Omondi与Jagath C. Rajapakse编写的《FPGA implementations of neural networks》(Springer, c2006.),专门讲了使用Xilinx VirtexII和Spartan3系列芯片来实现各种神经网络。
2模糊逻辑控制系统
随着模糊逻辑控制的发展,简单的模糊逻辑控制器(FLC)在我们的生活中已经无处不在,从空调系统一直到手持的自动对焦相机中都能找到它们。
任何基于模糊逻辑的控制器具有三个组件:模糊化器、规则库和去模糊化器。在将一个明确(数字)输入转变成模糊值并对该值进行处理,然后再将模糊值转变成明确值输出的过程中,每个组件扮演着重要的角色。尽管模糊控制器的实现不尽相同,他们都具有这三个基本部分。
以一个电梯控制的模糊逻辑为例:
IF门打开AND速度为零 AND距离可以忽略 THEN电机转速为0
IF 门关闭AND速度慢 AND 距离大THEN电机转速最大
IF 门关闭AND速度中等 AND距离一般 THEN电机转速一般
IF 门关闭AND 速度快AND 距离一般THEN电机转速一般
用C语言书写时其代码风格如图2所示。
图2 C语言下的FLC风格
这个例子有四个规则,每个规则有四个变量:门、电机、速度、距离(到选定层)。每个规则有三个条件和一个结果,总共有十种情况组成了四个变量的隶属关系集合。例如,速度具有变量0、慢、中等和快速。可变距离具有以下四个值:忽略、很小、一般、大。门要么开要么就是关闭。对于各种隶属集合,电机转速具有0、最小、平均和最大四个变量。
显然这些逻辑判断、多重循环在用DSP实现时的效率是很低的,使用高性价比的FPGA,如Spartan3E可以达到很完美的性能。
3. 可进化式硬件
在人类的科学研究中,有不少研究成果得益于大自然的启发,例如仿生学技术。随着计算机技术和电子技术的发展,许多的科学研究越来越与生物学紧密相联。在人工智能方面,已经实现了能用计算机和电子设备模仿人类生物体的看、听、和思维等能力;另一方面,受进化论的启发,科学家们提出了基于生物学的电子电路设计技术,将进化理论的方法应用于电子电路的设计中,使得新的电子电路能像生物一样具有对环境变化的适应、免疫、自我进化及自我复制等特性,用来实现高适应、高可靠的电子系统。这类电子电路常称为可进化硬件(Evolvable hardware)。
EHW是进化计算技术在系统内部结构的设计、调节、实时自适应等方面的应用,即以进化算法特别是遗传算法作为组合优化和全局搜索的主要工具,以可编程器件作为主要的评估手段和实现载体,寻求在不依赖先验知识和外力推动(如人工干预)的条件下,通过进化来获得满足给定要求的电路和系统结构,甚至使系统自动地、实时地调整(重新配置)其内部结构,以适应内部条件(如局部故障)和外部环境(功能要求或物理条件)的变化。这种动态配置硬件电路的能力是FPGA天生具有的;当然,在现在的FPGA技术下,配置速度慢的问题还有待解决。
4.电机控制与电机接口
作为FPGA领域的领先者,Xilinx 面向工业、科技和医疗(ISM)的 FPGA 和目标设计平台为包括工业成像和监视、工业自动化和医学成像设备在内的大量应用实现了更高的灵活性、更快的面市时间和更低的偶生工程总成本(NRE)(
http://china.xilinx.com/esp/ism.htm
)。在工业控制领域中,电机系统及其控制又是重点之重点;目前FPGA已经在此领域崭露头角。以ABB公司的独门技术直接转矩控制(DTC)为例,其计算周期极端,同时用非常复杂,用传统的DSPs几乎根本无法实现,这也在一定程度上造成了别人研究、实现与复制的难度。随着FPGA在电机控制中的发展,设计者已经逐渐可以使用FPGA来承担复杂的控制了。图3即给出了DTC控制中电机的磁链、转矩辨识的方案。
图3 电机控制中的磁链、转矩辨识
总结:用了半个多月的时间,学习了老外把FPGA用于工业控制系统设计的思想、方法。我的感觉就是,在需要大规模并行执行,含有大量逻辑、非算数运算,或者需要数量庞大的IO、选线等应用中,使用一片FPGA即可完成非常复杂的操作;随着FPGA集成了PowerPC、ARM等硬核,制约FPGA在工业控制领域发展的重要因素:算术运算、特别是大量的浮点运算,也许在不久的将来就能轻易解决了。下一步就是把我们自己的复杂的闭环控制算法使用FPGA实现了。但愿能够尽早实验成功,以将相关经验、方法拿来讨论。
附件大小
1.NNJie_Gou_Tu_.gif
18.83 KB
Tu_2_FLCDe_CDai_Ma_.jpg
46.43 KB
Tu_3_Dian_Ji_Kong_Zhi_Zhong_De_Ci_Lian_Zhuan_Ju_Bian_Shi_.jpg
70.93 KB
收藏
分享
评分
记录学习中的点点滴滴,让每一天过的更加有意义!
回复
引用
订阅
TOP
返回列表
MCU 单片机技术
嵌入式技术
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议