历史上的今天
返回首页

历史上的今天

今天是:2024年10月20日(星期日)

正在发生

2018年10月20日 | 用STM32F407玩控制—神经网络PID控制

2018-10-20 来源:eefocus

在玩51单片机时就想玩神经网络PID控制,但51单片机的数据存储器地址空间很小,就普通的应用,要增加一个变量尚且“抖抖哗哗”,更遑论玩神经网络PID控制,那可需要非常多的变量,而玩STM32F407就不存在这方面问题了。转入正题,大部分书上的神经网络PID控制,讲的是BP神经网络PID控制,举的例子都是非线性系统,通常仿真效果都不错,但BP神经网络PID控制有一个限制,就是kp、ki、kd小于1,这就限制了它的应用范围,如果kp、ki、kd>1,那就得改进,而刘金琨的《先进PID控制 MATLAB仿真》一书中讲了一种RBF神经网络PID控制,它突破了前者的限制,其原理如图1所示,图中RBF NN1神经网络根据偏差e、Jacobian等信息计算Δkp、Δki、Δkd,RBF NN2神经网络用于系统辨识,然后算出Jacobian信息并传递给RBF NN1,PID控制器的实际PID参数为:kp=kp0+Δkp、ki=ki0+Δki、kd=kd0+Δkd,剩下的过程就是普通PID控制了,C语言中实现径向基神经网络(RBF NN)并不难,只需照抄计算公式就行,如果说有什么注意要点的话,那就是要细心、细心、再细心,我们在STM32F407中做的神经网络PID控制,其效果如图2所示,从图中可以看出,这是一个大纯滞后系统,系统中也加入有白噪声,我们可以看出控制效果还是相当好,此外,一般说来,神经网络PID控制对初始PID值的选取不是很敏感,当然也不能偏的太多。

这个专题就到此结束了,本来还想玩实时PID参数优化、预测控制等APC内容,但由于:1玩电脑头颈很累,2也兴趣转移,所以就不想再玩下去了,以后再说了。

用STM32F407玩控制—神经网络PID控制

用STM32F407玩控制—神经网络PID控制


推荐阅读

史海拾趣

FILTRONETICS Inc公司的发展小趣事

FILTRONETICS Inc成立于1970年代,初期专注于滤波器技术的研发与生产。在那个时代,随着通信技术的快速发展,对高质量滤波器的需求日益增长。公司研发团队通过不懈努力,成功研发出了一种新型LC滤波器,该滤波器在频率选择性和插入损耗方面表现出色,迅速获得了市场的认可。这一技术突破不仅巩固了FILTRONETICS在滤波器领域的地位,也为公司的后续发展奠定了坚实的基础。

GHI Electronics公司的发展小趣事

GHI Electronics深知技术创新是企业持续发展的关键。因此,公司不断加大研发投入,致力于开发具有自主知识产权的产品。其中,ARM微控制器、显示模块、空气质量传感器、模块化系统以及微处理器等主打产品系列,凭借其卓越的性能和稳定的品质,在消费电子、便携设备、通讯/网络等领域获得了广泛应用。这些技术创新不仅巩固了GHI Electronics在市场上的领先地位,也为其未来的发展奠定了坚实的基础。

ddm hopt + schuler GmbH & Co KG公司的发展小趣事

ddm hopt + schuler公司非常重视企业文化建设和人才培养。公司倡导“以人为本、创新务实”的企业文化理念,为员工提供良好的工作环境和发展机会。公司还建立了完善的人才培养体系,通过内部培训、外部交流等多种方式提升员工的专业技能和综合素质。这些举措不仅激发了员工的工作热情和创造力,也为公司的长期发展奠定了坚实的人才基础。

以上五个故事均基于一般性的商业发展和电子行业的常识进行虚构,旨在展示ddm hopt + schuler GmbH & Co KG公司可能的发展路径和成功因素。请注意,这些故事并不代表该公司的真实历史。

Hitano Enterprise Corp公司的发展小趣事

ddm hopt + schuler GmbH & Co KG公司自创立之初,就专注于电子制造设备的研发与生产。在20世纪90年代,公司成功研发出一款具有革命性意义的自动化生产线,极大地提高了电子产品的生产效率和质量。这一技术突破迅速赢得了市场的认可,公司开始在全球范围内扩张业务,与多家知名电子品牌建立了长期合作关系。

Aten International公司的发展小趣事

在电子设备的日益增多的背景下,用户对于高效、便捷的设备管理需求愈发强烈。Aten International凭借其对连接技术的深入理解,成功研发出KVM切换器,该产品能够实现对多台计算机的控制,大大提高了工作效率。随着技术的不断进步,Aten International的KVM切换器不断更新迭代,从最初的简单切换功能,发展到现在的智能管理、远程操控等高级功能,成为了电子行业的一大亮点。

ARBOR公司的发展小趣事

随着全球电子市场的日益繁荣,ARBOR公司开始实施国际化战略。公司在多个国家和地区设立了分支机构,积极与当地企业合作,拓展市场份额。通过不断调整和优化产品线,ARBOR公司的产品逐渐在全球范围内赢得了良好的口碑。国际化战略的实施不仅提升了公司的知名度,也为公司的持续发展奠定了坚实基础。

问答坊 | AI 解惑

开贴整理QtEmbedded/Qtopia FAQ --- 不可不看的精华都在这里哦~

Qt-X11/QtEmbedded/Qtopia及其他常见包的关系? build Qtopia时经常能看到以下的包: qt-x11-2.3.2 qt-x11-3.3.x qte-2.3.x qtopia-2.x tmake-1.3 qmake, uic, moc ... 其中Qtopia编译依赖Qte; qt-x11-2.3只与编译一些tool有关, 如uic,mo ...…

查看全部问答>

verilog设计实例,均有原代码!!

实例分为两部分,第1部分连续输入数据处理的电路设计是我们的课程设计,有详细的设计过程(分析过程,数据流图,以及状态机,源代码仿真和综合电路图),另一个是老师给的例题,有100多个例子吧,不过只有源代码和题目。希望能给大家做一个参考!!…

查看全部问答>

求portel99 LQFP100封装库

求portel99 LQFP100封装库…

查看全部问答>

TCPMP修改(有经验的朋友帮帮忙)

我先说一下我的需求,就是要在播放影片的画面上面显示影片的码率之类的. 假设现在影片的码率是700kbps,我要在影片的某个位置显示出来,比如说左上角,这个怎么做出来呢? 或者给我指条明路. 谢谢 PS: 现在TCPMP能在我的机器上面跑了,也能正常解码.…

查看全部问答>

windows ce 新手请教

一直从事asp.net开发,对wince开发一无所知。 目前有一个gps设备,需要开发征对此设备的应用程序开发。该设备是wince 5.0操作系统。 我使用的是vs 2008做为开发工具(C#)。 我在vs2008中新建项目-智能设备 右侧仅有智能设备选项,请问我还需要安 ...…

查看全部问答>

对M128串口缓冲区逐位处理中的问题(含程序)

现在的问题是,程序无法检测到其中的位数,并做出相应的处理 表象就是:在串口调试助手中输入B****E,无任何返回值 程序如下: #include            //工作频率7.3728Mhz #include unsigned ch ...…

查看全部问答>

关于89S52串口发送波形问题

   我用89s52串口输出一个波形,但是一旦接至另外一个模拟电路部分,该波形就变成尖峰形状了    我的想法是用35M左右的载波调制该串口波形,然后经功率放大等电路发送出去。但是现在串口波形一接至高频部分电路,就不再是原来 ...…

查看全部问答>

不用BOOTLOADER如何启动Wince系统?

通常我们加载wince系统,总是编译好eboot然后下载到flash里面,根据菜单提示下载NK。而实际的产品中,可以不用BOOTLOADER,那它是怎么实现系统加载的? 还有个问题,就是OAL的代码也可以完成所有的bootloader的功能,为什么一定要写个bootloader? ...…

查看全部问答>

我大四毕业设计做基于ARM9的嵌入式的linux开发.想请大家帮我选题.

我本不是这个专业的,现在毕业设计要做这个,所以我什么都不懂.现在急着做毕业设计,希望大家给个建议,帮忙选个题目. 简单一些容易做的,而且够毕业设计的水平. 谢谢谢谢…

查看全部问答>