历史上的今天
返回首页

历史上的今天

今天是:2025年02月03日(星期一)

2018年02月03日 | 基于ARM电冰箱模糊控制系统的仿真与设计

2018-02-03 来源:eefocus

     1 引 言

 

     模糊控制理论的提出,为我们提供了一种新的控制方法。这种方法以微处理器构成的模糊控制器为核心,以模拟人脑的思维方式为基本出发点,不需要我们对控制对象准确建模,就能很好的解决非线性、大滞后环节、变参数对象的控制问题[1]。依靠操作人员的经验来建立合理的模糊控制算法,就能使难控制的系统达到比较好的控制效果。

 

     在电冰箱的控制中,温度是主要的控制对象,控制的好就有显著的节能效果。影响温度变化的因素很多,如环境温度的高低,冰箱本身的容积,开冰箱门的次数,每次开门的时间,冰箱中食物的多少,以及食物的种类和性质等等。所以要想建立电冰箱温度变化的精确数学模型是很困难的。因此可采用模糊控制解决。

 

     在本设计中,模糊控制器输入量为系统的误差E和误差变化率DE、输出为系统的控制量U,因此模糊控制器的工作过程可以描述为:首先将模糊控制器的输入量转化为模糊量供模糊逻辑决策系统用,模糊逻辑决策器根据规则决定的模糊关系R,应用模糊逻辑推理算法得出控制器的模糊输出量。最后经精确化计算得到的控制值去控制被控对象。

 

     2 模糊控制系统的设计

 

     2.1输入输出

 

     将传感器测得的精确温度在各自的变化区间上分为几个档次,使每档对应一个模糊集。我们设定电冰箱温度升降范围-15℃~+15℃之间变化,而输入变化范围为-15℃~+15℃,输入变化率变化范围为-6~6之间。将它分为6档,并和模糊变量负大,负小,负零,正零,正小,正大一一对应,所以K1=6/15=0.24,K2=6/6=1,K3=15/6=2.5。

 

     在MATLAB环境下,键入Fuzzy命令,进入模糊逻辑上具箱[2],在屏幕上出现带有单输入、单输出、模糊规则的模块系统,用户双击输入、输出模块,可进行输入、输出变量的论域范围、各个语台变量的隶属函数形状等参数的编辑。并保存为wen.fis本例中3个变量的隶属函数,它们的语言量值分别为:

 

     E ={NB NS ZR PS PB}、DE={NB NS ZR PS PB}、U ={NB NS ZR PS PB}

输入偏差E论域:“正大”(PB)多数取在+6℃附近、“正小”(PS)多数取在+2℃附近、“正零”(ZR)多数取在零左右一点附近、“负小”(BS)多数取在-2℃附近、“负大”(NB)多数取在-6℃附近。输入变化率DE语言变量值和输出U的语言变量值同输入变量E;输入隶属度函数如图2.1所示 ,输出隶属度函数如图2.2所示

 

    

图2.4仿真框图

     2.2模糊规则

  

      本系统采用IF E and DE then U 为模糊规则。模糊关系为R=E X DE X U; 模糊推理采用U =(E X DE )o R;

改系统的模糊规则表如下表1

 

     2.3 解模糊

 

      本系统采用加权平均法(重心法)[1]来求的输出的精确量U 的值:

           (2.3.1)

其中  则

….      (2.3.2)                                               

其中,Ci为论域对应值

 

      图2.3是模糊控制系统输出曲面观测器的输出面。

 

     在MATLAB命令窗口中键入simulink 建立一 wen.mdl文件如图2.4,对模糊控制系统

进行仿真,得到曲线如图2.5。可以看出,仿真输出曲线超调量有点大,但系统反应较快即调节时间短,系统也比较稳定。单从仿真来看模糊控制切实可行。

 

     3 在ARM上实现模糊控制器

 

     3.1硬件设计

 

     本文采用的微处理器是PHILIPS公司出品的Lpc2214[3]。这是一款支持实时仿真、嵌入式跟踪、在系统编程和在应用编程的ARM7TDMI-STMCPU微处理器,ARM7TDMI是目前低端的ARM核。微处理器Lpc2214对代码规模有严格的控制,这种可以使用16位Thumb的模式将代码规模降低超过30%,而性能的损失却很小;由于这款微处理器具有很高的代码处理速度、极低的功耗、多个32 位定时器、8路10位的ADC、PWM输出以及多达9个外部中断等特点;微处理器芯片自带16K字节的片内静态RAM和256K字节的片内闪存Flash,都可以用来存储数据或代码;Lpc2214是144脚封装,是一款总线开放的微处理器,允许直接连接并行存储芯片;由于内置了串行通信接口,它也适合于通信和各种类型的应用。系统框图如图3.1所示。

 

     3.2软件设计

 

     当论域为离散时,经过量化后的输入量的个数是有限的。因此可以针对输入的不同组合离线计算出相应的控制量,从而组成一张控制表,实际控制时只要直接查这张控制表即可,在线的运算量是很少的。

 

     由于LPC2214内存足够大,无需考虑内存之忧。在LPC中如何实现控制规则表是整个系统的关键所在,本系统采用二维矩阵形式存储控制规则表,假设二维矩阵为control[13][13]。在LPC2214只能存储数字量,故在内存中模糊语言用十六进制表示:输入量E,DE量化后分别为x, y,且x,y={-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6},在ARMz中则对应a,b={0,1,2,3,4,5,6,7,8,9,10,11,12}。假设E量化后x=-5, y=2,在ARM中对应a=1,b=8查表时只需查control[1][8]则这样表示无论从数据管理还是从查表方便而言,都具有极大的优势。

 

     这种离线计算、在线查表的模糊控制方法比较容易满足实时控制的要求。这种离线计算采用MATLAB计算出控制表,然后以二维矩阵形式存储在ROM中,供在线查表。

 

     另外,本设计还有一优点,就是模糊控制结合传统控制方法PID控制,其中TP=6,TI=0.001,TD=1;软件判断E的大小范围。

 

     当E>+6℃或E<-6℃时,系统自动跳到PID控制程序段,使系统能快速响应;

     当-6℃

     在ARM中实现模糊控制时,模糊化采用单点模糊集合,如果输入量数据x0是准确的,则通常将其模糊化为单点模糊集合。设模糊集合用A表示,则有3.2.1

     (3.2.1)

 

     模糊集合的隶属度函数,根据论域为离散和连续的不同情况,隶属度函数也有离散和连续两种方法。本设计中隶属度函数采用离散方法,也就是连续隶属度简单离散化。解模糊用的仍然是重心法,只不过在求模糊控制规则表时,已用到这一步。控制主程序如图4.1所示,模糊控制程序如图4.2所示。

 

     4 结论

 

     模糊控制方法是一种的解决非线性、大滞后环节、变参数对象控制方法[4],对无法取得数学模型或数学模糊相对难求的系统可以取得比较满意的效果。而且借助于MATLAB的模糊工具箱(fuzzy logIC)和simulink仿真可以快速方便地设计仿真模糊控制系统。尤其是在家用电器的控制中模糊控制取得了越来越来广泛的应用,具有重大的实用意义。

本文作者创新点为在ARM中用二维矩阵实现模糊控制表,简单易行、速度快、足以满足实时性要求。

 

      参考文献

 

     [1] 孙增圻等编著. 智能控制理论域技术[M] 清华大学出版社. 广西科学技术出版社,.1997

     [2] 楼顺天,胡昌华,张 伟等. 基于MATLAB的系统分析设计[M]. 西安电子科技大学出版社,2001

     [3] 周立功等编著. ARM嵌入式系统基础教程[M]. 北京航空航天大学出版社,2005

     [4] 尹 琦,曲 毅,模糊控制在单片机空调室温调节中的应用[J],微计算机信息,2005,第21卷,第7-2期


推荐阅读

史海拾趣

Chen Yang Technologies GmbH & Co KG公司的发展小趣事

Chen Yang Technologies最初是一家专注于半导体芯片研发的小型公司。在某个关键时期,公司成功研发出了一种低功耗、高性能的芯片技术,这一技术突破立即引起了市场的广泛关注。凭借这一技术,Chen Yang Technologies迅速扩大了其产品线,并开始向全球范围内的电子设备制造商供应芯片。随着市场份额的逐步增长,公司逐渐在电子行业中建立了自己的地位。

Hartmann Codier GmbH公司的发展小趣事

在快速发展的过程中,Chen Yang Technologies始终重视内部管理和人才培养。公司推行了一系列创新的管理理念和措施,如扁平化管理、项目制运作等,这些措施有效提高了工作效率和团队协作能力。同时,公司还注重人才培养和引进,通过设立激励机制、提供培训和发展机会等方式,吸引和留住了一批优秀的技术人才和管理人才。

Dynachip Corp公司的发展小趣事

Dynachip Corp始终将创新作为公司发展的核心动力。他们不断投入研发资源,探索新的技术方向和应用场景。同时,他们还积极关注行业动态和市场趋势,及时调整产品策略和市场布局。这种持续创新的精神使Dynachip Corp能够保持在行业中的领先地位,并为未来的发展奠定了坚实的基础。展望未来,Dynachip Corp将继续秉承创新、品质、合作的理念,致力于成为全球领先的半导体企业。

Altus Technology Inc公司的发展小趣事

Altus Technology Inc自成立以来,始终将技术创新作为公司发展的核心驱动力。在早期,公司研发团队通过不懈努力,成功开发出了一款具有革命性的芯片,这款芯片在性能和功耗上均优于当时的同类产品。凭借这一技术突破,Altus在市场上迅速获得了一席之地,并吸引了大量合作伙伴和投资人的关注。随着技术的不断迭代和升级,Altus逐渐在电子行业中树立了技术领先的形象,并持续推出了一系列创新产品,巩固了市场地位。

FINDER公司的发展小趣事

Altus深知人才是企业发展的根本。因此,公司一直注重人才培养和引进工作。通过建立完善的培训体系和激励机制,Altus吸引了大量优秀人才加入公司,并为他们提供了广阔的发展空间和职业晋升机会。这些人才在公司的各个岗位上发挥着重要作用,推动了公司的技术创新和市场拓展。同时,Altus还注重员工的福利待遇和文化建设,营造了积极向上、团结和谐的工作氛围。

HAHN - Elektrobau GmbH & Co KG公司的发展小趣事

1985年,美国电子工程师欧文·雅各布斯等7人在加利福尼亚州创立了高通公司。起初,由于创业资金严重不足,他们只能租用简陋的办公用房,团队成员甚至需要兼职打工来维持公司运营。高通的首个产品是一款用于对地站通信的调制解调器。然而,真正的突破发生在1989年,高通成功研发出全球第一台采用CDMA(码分多址)技术的无线通信系统原型机,这项技术极大地提高了频谱利用率。尽管初期面临各大运营商的质疑和拒绝,高通团队历经艰辛,最终成功说服运营商采用CDMA技术,开启了移动通信的新篇章。

问答坊 | AI 解惑

我想买WINCE开发板 谁能否提供价格和功能都好的给我

我想买WINCE开发板 谁能否提供价格和功能都好的给我…

查看全部问答>

st单片机看门狗

ST单片机看门狗中设置ST7单片机中定时器控制/状态寄存器LTCSR设置的WDGRF WDGE WDGD设置和看门狗定时器WDG有什么相通之处,看了真的一头雾水,能解释一下吗?…

查看全部问答>

【求助】达人进

调试的时候发现点击完DEBUG后,一些没用到的端口寄存器就有初始值了,还有的脚居然自己输出高电平了,我在程序里并没有定义这些,不知道是何原因…

查看全部问答>

大尺寸数码管驱动电路

近几天在网上找了不少大尺寸数码管驱动电路,可些地方不太明白,请大家多多指教。     问题1:图中达林顿管的射极端接入了24V,如果达林顿管处于导通工作状态,那么,数码管的公共端的电压大概有多少呢?是不是约24V 问题2:4寸的 ...…

查看全部问答>

无感电阻真贵

偶去电子市场买了两个无感电阻,花了50大洋。 FX24N 不知道被宰没。…

查看全部问答>

ccs3.3,烧写时提示non-supproted part id,怎么解决啊,大神

大虾们好:    今天弄了一天都没什么成果,28335烧写,在点击“Tools”菜单选择“F28xx  on-chop Flash programmer”后弹出如下提示“              Non-supported Part ID:0x00EF ...…

查看全部问答>

ccs5环境下,连接MSP430-FET430UIF仿真器,debug的问题

连接仿真器debug,出现防火墙升级的“a fireware is required for the MSP430 Debug Interface(MSP430-FET430UIF),check the updata.......” 然后点击升级,就一直卡在那了。‘configure debugger ....’ 更为意外的是,仿真器好像就此坏掉了 ...…

查看全部问答>

有一个quartus IP核的问题来询问一下大神。

我调用FFT这个IP核,可是运行到最后那个“EDA Netlist Writer”的时候出现这样的错误,Error: Can\'t generate netlist output files because the license for encrypted file \"D:/myworks/dianzijingsai/FPGA/FFT/fft-library/asj_fft_bfp_i_fft_ ...…

查看全部问答>

算法

本帖最后由 paulhyde 于 2014-9-15 03:27 编辑 算法    …

查看全部问答>