码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 基于遗传算法的PID控制器增益的实现(Matlab代码实现)


     👨‍🎓个人主页:研学社的博客 

    💥💥💞💞欢迎来到本博客❤️❤️💥💥

    🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

    ⛳️座右铭:行百里者,半于九十。

    📋📋📋本文目录如下:🎁🎁🎁

    目录

    💥1 概述

    📚2 运行结果

    🎉3 参考文献

    🌈4 Matlab代码实现


    💥1 概述

    本文利用遗传算法 (GA) 实现,用于调整 PID 控制器的增益。 的重点是无人机(UAV)上使用的PID控制器。模拟二阶系统的动力学。调优基于满意度等标准。

    📚2 运行结果

     

    部分代码:

    clear all;
    clc;

    % Values of damping, natural frequency and SS gain
    damping_ratio = (2:8)/10;
    natural_freq = (3:10);
    b0 = 1;

    %variables used to selected different frequency/damping values
    i = 1;  % natural frequency
    j = 1;  % damping ratio

    % Calculating the values of the nominator and denominator of the TF
    a = b0*(natural_freq(i)^2);
    b = 2*natural_freq(i)*damping_ratio(j);
    c = natural_freq(i)^2;

    k =1;

    %Simulink model required
    model = 'reference_tracking';
    load_system(model)

    max_prop_gain = 1;
    max_int_gain = 1;
    % kp_initial = rand*max_prop_gain;
    % ki_initial = rand*max_int_gain;
     
    kp_initial = 3;
    ki_initial = 3;

    %population creation
    gains = [ kp_initial ki_initial;
        0.5*kp_initial ki_initial;
        kp_initial 0.5*ki_initial;
        0.5*kp_initial 0.5*ki_initial
        2*kp_initial 2*ki_initial];

    disp(gains);
    kp = kp_initial;
    ki = ki_initial;

    kp_p1 = num2str(kp);
    ki_p2 = num2str(ki);
    s_kp_p1 = strcat('Initial P Gain: ', kp_p1);
    s_ki_p2  = strcat('Initial I Gain: ',ki_p2);
    initial_gains = [s_kp_p1 char(10) s_ki_p2]; % textbox element

    🎉3 参考文献

    部分理论来源于网络,如有侵权请联系删除。

    [1]杨黎明. 一种改进的免疫遗传算法及在PID控制器优化设计中的应用[D].中南大学,2007.

    🌈4 Matlab代码实现

  • 相关阅读:
    windows 定制 terminal 上手实践
    蓝桥杯模拟赛:最远滑行距离 ← dfs
    数据结构与算法初体验
    【***操作系统---第三章***】
    计算机毕业设计springboot教学物资管理系统f1v89源码+系统+程序+lw文档+部署
    Linux 系统之 CentOS 和 Ubuntu 的区别
    计算机组成原理学习笔记(1.计算机系统概述 2.数据的表示和运算)
    城市旅游景点信息交流平台的设计与实现 毕业设计-附源码290915
    模型层知识点补充
    Eclipse配置Tomcat教程+创建第一个Java Web程序
  • 原文地址:https://blog.csdn.net/weixin_46039719/article/details/128044379
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号