电赛训练了大半个暑假,人渐渐开始进入到了疲倦期.既然这样那就好好休息下自己也好吧. 休息也不能光休息,乘机把平常写过的一些东西好好整理也好. 从第一次训练开始我们就接触到了一个新的名词——PID控制理论.接触这个理论时间还是挺早的.大二某天晚上与学长“促膝交谈”时他就有跟我提起过这个算法.当初他给我说的一个应用的场合就是在智能小车两个轮子速度的控制上,通过pid使得两个轮子的速度尽可能接近相等.那个时候就感觉很纠结,速度控制直接左边慢一点就给左边加速,反之给右边加速.但真正当第一个题目(恒温水壶…
上面一篇文章讲了一下PID算法中的三个常量大致的在PID算法中起的一个作用,但在实际的使用中,究竟应该如何调节(或者用更加专业的话说是整定)PID控制算法的三个.首先可以将KP,KI,KD三个常量全部设为一,观察一下系统的调节情况是不是过快.大致确定输出控制量的结果需要右移多少位来做最终的控制量.然后将KI,KD设为0,KP从0一直逐渐增加试探,直到被控制量有一定超调,且有一定的小震荡.此时kp算调节到差不多了.我们可以继续调节Ki,通过增大Ki使被控制量最终平稳下来的值尽可能是我们设定的值.积…
真遗憾,第二篇章没能够发表到首页上去.趁热打铁.把最终篇——代码篇给发上来. 代码的设计思想请移步前两篇文章 //pid.h #ifndef __PID__ #define __PID__ /*PID = Uk + KP*[E(k)-E(k-1)]+KI*E(k)+KD*[E(k)-2E(k-1)+E(k-2)];(增量型PID算式) 函数入口: RK(设定值),CK(实际值),KP,KI,KD 函数出口: U(K)*/ typedef struct PIDValue { int8 KP; in…
小白学习VUE第一篇文章---如何看懂网上搜索到的VUE代码或文章---使用VUE的三种模式: 直接引用VUE; 将vue.js下载到本地后本目录下使用; 安装Node环境下使用; ant-design-vue只是Vue实现的一组ant-design UI模板代码,真正使用的还是VUE环境; 直接引用VUE(直接将代码复制保存成一个html文件即可双击在浏览器中运行):<script src="https://unpkg.com/vue"></script> &…
参考: PID控制器开发笔 浅谈位置式PID 专家PID控制在快速系统中的仿真及应用(这篇了论文介绍的积分分离PID.专家PID(脚本实现和simulink实现)很详细) PID控制算法的C语言实现一 PID算法原理 在工业应用中PID及其衍生算法是应用最广泛的算法之一,是当之无愧的万能算法,如果能够熟练掌握PID算法的设计与实现过程,对于一般的研发人员来讲,应该是足够应对一般研发问题了,而难能可贵的是,在我所接触的控制算法当中,PID控制算法又是最简单,最能体现反馈思想的控制算法,可谓经典中的…
PID控制算法是工业界使用极其广泛的一个负反馈算法,相信这个算法在做系统软件时也有用武之处,这里摘录了知乎上的一篇文章,后面学习更多后自己总结一篇 以下为原文: PID控制应该算是应用非常广泛的控制算法了.小到控制一个元件的温度,大到控制无人机的飞行姿态和飞行速度等等,都可以使用PID控制.这里我们从原理上来理解PID控制. PID(proportion integration differentiation)其实就是指比例,积分,微分控制.先把图片和公式摆出来,看不懂没关系.(一开始看这个算法…
分布式文件系统 FastDFS 5.0.5 & Linux CentOS 7 安装配置(单点安装)--第一篇 简介 首先简单了解一下基础概念,FastDFS是一个开源的轻量级分布式文件系统,由跟踪服务器(tracker server).存储服务器(storage server)和客户端(client)三个部分组成,主要解决了海量数据存储问题,特别适合以中小文件(建议范围:4KB < file_size <500MB)为载体的在线服务.FastDFS的系统结构图如下: 如上图,FastD…
PID算法简单剖析如下: 1.首先我们来看一下PID系统的基本组成模块: 如图所示,图中相关参数的表示如下: r(t):系统实际上需要的输出值,这是一个标准值,在我们设定了之后让这个系统去逼近的一个值(随时间变化的原因是,我们对系统的需求不同才会改变!) y(t):系统当前的输出值,这个值应该需要趋近于我们设定的值,当我们没有增加PID控制模块之前,它是由被控对象通过r(t)输入直接产生的. e(t):系统由于某些扰动,导致的系统产生的偏差,实际输出的值和想要设定的初始值r(t)的差值. u(t…
在PID控制算法的C语言实现九中,文章已经对模糊PID的实质做了一个简要说明.本来打算等到完成毕业设计,工作稳定了再着力完成剩下的部分.鉴于网友的要求和信任,抽出时间来,对模糊PID做一个较为详细的论述,这里我不打算做出仿真程序了,但就基本概念和思路进行一下说明,相信有C语言基础的朋友可以通过这些介绍性的文字自行实现.这篇文章主要说明一下模糊算法的含义和原理. 实际上模糊算法属于智能算法,智能算法也可以叫非模型算法,也就是说,当我们对于系统的模型认识不是很深刻,或者说客观的原因导致我们无法对系统…
虚拟内存探究 -- 第一篇:C strings & /proc http://blog.coderhuo.tech/2017/10/12/Virtual_Memory_C_strings_proc/ 看不懂哦.    翻译  虚拟内存  翻译 这是虚拟内存系列文章的第一篇.本文通过实验的手段, 带大家了解一些计算机科学相关的基础知识. 在本文,我们将利用/proc查找进程虚拟内存中的ASCII字符串, 然后修改该字符串.在这一过程中,我们将学到很多有趣的东西. 一.实验环境 所有的脚本和程序都在…