基于一阶倒立摆系统的模糊神经网络PID控制

基于一阶倒立摆系统的模糊神经网络PID控制

1.1 研究背景
模糊系统、神经网络和遗传算法被认为是21世纪人工智能最具发展前途的三个重要领域。它们构成了所谓的“智能计算”。随着科学技术的飞速发展,现代工业控制系统变得越来月复杂,基于精确数学模型的传统控制已经达不到理想的控制效果。智能控制是一种模拟人类智能的高级控制系统,它是基于知识的控制,是将控制者和专家经验与知识作为被控对象的模型。
倒立摆系统是一种典型的高阶、非线性、强耦合、多变量、不稳定的装置,通常被用来检验控制策略的有效性。因为倒立摆系统的竖直稳定状态与机器人直立行走的形态相似,同时又与火箭和飞控很相似,所以对倒立摆系统的学习和研究具有广泛、深远的事件意义。关于倒立摆的学习和研究对其它工程控制问题具有指导意义。
1.2 模糊神经网络概述
模糊控制是一门发展迅速、具有广阔应用前景的技术,它不受数学模型的束缚,而是利用人类专家的经验形成模糊语言,生成模糊控制列表,并在实际应用中经过人们反复修正,然后通过计算机采用查表的方法在控制列表中找出相应的模糊控制量,最后经过一定的比例运算得到实际控制量加到被控对象上。模糊控制的规则是由人类专家的经验知识写出的,所以模糊控制能够容易被理解。模糊控制的原理如图1.1所示。
在这里插入图片描述图1.1 模糊控制原理框图
人工神经网络是指从信息处理角度对人脑神经元网络进行抽象,建立某种简单模型,按不同的连接方式组成不同的网络来模拟人脑神经网络的结构和功能。人工神经网络反映了人脑功能的若干基本特征,包括并行信息处理、学习、联想、模式分类、记忆等。如图1.2所示,是一个简单的 的三层神经网络,包括了输入层、隐含层和输出层,层与层之间通过权值相连接,神经网络的训练的实质是修正权值。
在这里插入图片描述
图1.2 神经网络结构

模糊控制和神经网络,具有互补性。模糊控制具备处理模糊语言信息的能力,可以模拟人类智慧进行判断和决策,但是它模糊控制不具备学习的能力。而神经网络具备学习的能力,但是不具备处理和描述模糊信息。本文基于模糊控制和神经网络的优劣点,将神经网络与模糊控制相结合来实现对倒立摆系统的控制。本文使用的神经网络是BP神经网络,虽然BP神经网络收敛速度较慢、有时还会出现局部极小的情况,但是BP神经网络是目前应用最为广泛的神经网络,关于BP神经网络的研究已经相当成熟,可查询的资料也较为广泛。
1.3 课题主要工作和内容安排
课题的主要工作是通过将神经网络与模糊控制相结合的模糊神经网络算法实验对一阶倒立摆系统的控制,并利用MTALAB进行仿真分析,与传统的PID控制算法进行对比。
本文的内容安排如下:
第一章 前言。主要讲述课题研究内容的背景,简单描述了模糊控制和神经网络控制的原理以及其优劣点,引出文章的研究的模糊神经网络算法。
第二章 一级倒立摆的数学建模。为了能够使用计算机对实际问题进行模拟仿真,在本章节中,对实际倒立摆系统进行分析,并推到其数学模型。
第三章 模糊神经网络的建立。在该章节中,将详细的描述模糊PID控制和模糊神经网络PID控制的原理,搭建模糊神经网络PID控制器。
第四章 仿真分析对比。对建立模糊神经网络模型进行仿真分析,并与传统的PID控制以及模糊PID控制进行对比。
第五章 总结。总结课题使用的模糊神经网络算法的优缺点,对存在的问题进行分析总结。讨论课题的进一步的研究方向,最后归纳在总体设计中的心得和体验。

2 一级倒立摆的数学建模
2.1 引言
在本章节中,将详细的介绍如何对一级倒立摆系统进行数学的建模。在2.2小节中,将简单描述一级倒立摆系统的组成。在2.3小节中,详细的推导了直线一级倒立摆的数学模型。
2.2 一级倒立摆系统
一级倒立摆系统是由计算机、运动控制卡、伺服机构、倒立摆本体和光电码盘几大部分组成的闭环系统如图2.1所示。光电码盘1将小车的位移、速度信号反馈给伺服驱动器和运动控制卡,摆杆的角度、角速度信号由光电码盘2反馈给运动控制卡。计算机从运动控制卡中读取实时数据,确定控制决策(小车的运动方向、移动速度、加速度等),并由运动控制卡来实现控制决策,产生相应的控制量,使电机转动,通过皮带带动小车运动,保持平衡。

在这里插入图片描述

图2.1 一级倒立摆闭环系统图
2.3 一级倒立摆系统数学模型的推导
关于一级倒立摆的数学建模的方法有很多,如牛顿欧拉法、拉格朗日法等[1]。相对于拉格朗日法,牛顿法较为简单、明晰。本文采用牛顿欧拉法对实际的倒立摆系统进行数学建模。
本课题所研究的一级直线倒立摆是由一个交流伺服电机驱动的单入双出耦合系统,对一级直线倒立摆系统进行建模时,常作如下假设:(1)系统做刚性运行,忽略弹性势能;(2)摆杆竖直时为平衡位置;(3)忽略所有摩擦系数。
在这里插入图片描述图2.2 一级直线倒立摆结构模型

图2.2为一级倒立摆结构模型,关于该倒立摆的参数及其定义如表2.1所示。
在这里插入图片描述
表2.1 倒立摆系统的参数定义
参数 定义 参数值

小车质量 0.5Kg

摆杆质量 0.2Kg

小车摩擦系数 0.1N/m/sec

摆杆转动轴心到杆质心的长度 0.3m

摆杆惯量 0.006Kg*m2

加在小车上的力

小车的位置

摆杆与垂直向上方向的夹角

摆杆与垂直向下方向的夹角

对一级倒立摆倒立摆系统中的小车和摆杆进行受力分析,其中, 和 为小车与摆杆相互作用力的水平和垂直方向的分量,如图2.3所示。
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
(2.14)
2.4 本章小节
通过2.2和2.3小节对倒立摆系统的分析,利用牛顿欧拉法对小车进行受力分析,并建立了摆杆与小车加速度之间的传递函数模型公式(2.14)。为第四章的仿真分析提供了理论基础。

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
图3.3 输出变量的隶属度函数
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
训练模糊神经网络程序

e=[6 6 6 6 6 6 6 4 4 4 4 4 4 4 2 2 2 2 2 2 2 0 0 0 0 0 0 0 -2 -2 -2 -2 -2 -2 -2 -4 -4 -4 -4 -4 -4 -4 -6 -6 -6 -6 -6 -6 -6];
ec=[6 4 2 0 -2 -4 -6 6 4 2 0 -2 -4 -6 6 4 2 0 -2 -4 -6 6 4 2 0 -2 -4 -6 6 4 2 0 -2 -4 -6 6 4 2 0 -2 -4 -6 6 4 2 0 -2 4 6];
kkp=[-6 -6 -4 -4 -4 0 0 -6 -4 -4 -4 -2 0 2 -4 -4 -2 -2 0 2 2 -4 -4 -2 0 2 4 4 -2 -2 0 2 4 4 4 -2 0 2 2 4 6 6 0 0 2 4 4 6 6];
kki=[6 6 4 4 2 0 0 6 6 4 2 2 0 0 6 4 2 2 0 -2 -4 4 4 2 0 -2 -4 -4 2 2 0 -2 -2 -4 -6 0 0 -2 -2 -4 -6 -6 0 0 -2 -4 -4 -6 -6];
kkd=[6 2 2 4 4 4 6 6 2 2 2 2 2 6 0 0 0 0 0 0 0 0 -2 -2 -2 -2 -2 0 0 -2 -2 -4 -4 -2 0 0 -2 -4 -4 -6 -2 2 2 -4 -6 -6 -6 -2 2];
ee=[e;ec];

bpki=newff([-6 6;-6 6],[2 49 14 7 1],{'tansig','tansig','tansig','tansig','purelin'},'traingdm');
bpki=init(bpki);%Ki 训练过程
bpki.trainParam.epochs=5000;
bpki.trainParam.Ir=0.04;
bpki.trainParam.goal=5e-3;
bpki=train(bpki,ee,kki);

bpkd=newff([-6 6;-6 6],[2 49 14 7 1],{'tansig','tansig','tansig','tansig','purelin'},'traingdm');
bpkd=init(bpkd);%Kd 训练过程
bpkd.trainParam.epochs=5000;
bpkd.trainParam.Ir=0.04;
bpkd.trainParam.goal=5e-3;
bpkd=train(bpkd,ee,kkd);

bpkp=newff([-6 6;-6 6],[2 49 14 7 1],{'tansig','tansig','tansig','tansig','purelin'},'traingdm');
bpkp=init(bpkp);%Kp 训练过程
bpkp.trainParam.epochs=5000;
bpkp.trainParam.Ir=0.04;
bpkp.trainParam.goal=5e-3;
bpkp=train(bpkp,ee,kkp);

gensim(bpkp,-1)
gensim(bpki,-1)
gensim(bpkd,-1)
### 回答1: 基于一阶倒立摆系统模糊神经网络PID控制是一种结合了模糊控制和神经网络的控制方法,用于实现对倒立摆系统的精确控制。 一阶倒立摆系统是指一个杆子在一个水平平面上保持垂直的系统,可用于模拟物体受力平衡状态的控制。而PID控制是一种常见的控制算法,通过比较目标值和实际值的差异来调整控制器的输出,以实现系统状态的稳定。 在模糊神经网络PID控制中,先使用模糊控制的方法去构建一个模糊控制器,该模糊控制器可以将输入的误差信号转化为相应的控制输出。然后,通过神经网络的学习和训练,将模糊控制器中的模糊规则进行优化和调整,以提高控制系统的性能和适应性。 这种控制方法的基本原理是将模糊控制器的模糊规则转化为一组神经网络的权重和参数,通过神经网络的学习和训练,优化这些权重和参数,以使系统的控制输出更加准确和稳定。整个过程可以通过反向传播算法或其他神经网络训练算法实现。 模糊神经网络PID控制的优点是可以提高系统的鲁棒性和适应性,适用于非线性和时变的系统,并且可以通过对神经网络进行在线学习和调整,自动优化控制器的性能。 总的来说,基于一阶倒立摆系统模糊神经网络PID控制是一种综合利用模糊控制和神经网络的控制方法,通过神经网络的优化和学习,提高倒立摆系统的控制精度和稳定性,具有较好的应用前景。 ### 回答2: 基于一阶倒立摆系统模糊神经网络PID控制是一种结合了模糊控制和神经网络控制的控制方法。一阶倒立摆系统是指一个单杆倒立在一个平衡点上,通过控制杆的角度使其保持平衡。 模糊控制是一种基于模糊逻辑的控制方法,通过模糊化输入变量、定义模糊规则和模糊推理来实现系统控制。在一阶倒立摆系统中,模糊控制可以根据摆杆的角度和角速度的变化来调整控制信号,达到保持平衡的目的。 而神经网络则是一种模拟人脑神经元功能的数学模型,通过训练网络来学习输入和输出之间的映射关系。在一阶倒立摆系统中,神经网络可以通过输入摆杆角度和角速度的信息,经过学习和训练,输出控制信号,实现平衡控制。 PID控制(Proportional-Integral-Derivative)是一种常用的控制方法,根据当前误差、误差累积和误差变化率来调整控制信号。在一阶倒立摆系统中,PID控制可以通过测量摆杆的角度误差和角速度误差,并根据这些误差的大小和变化率来计算合适的控制信号,从而实现平衡。 综上所述,基于一阶倒立摆系统模糊神经网络PID控制是将模糊控制、神经网络控制和PID控制相结合的控制方法。通过模糊化输入变量、训练神经网络和调整PID参数,可以实现对倒立摆系统的稳定控制。
评论 26
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值