2020 年4月2日 由于浏览数量的增加,这里做了一些增补及修改。有问题请大家指出。
大家好,又见面了,我是你们的朋友全栈君。 目录 0.背景 1.粒子群算法 1.1.算法简介 1.2.算法步骤 1.3.算法举例 2.PID自整定 2.1.基于M文件编写的PID参数自整定 *2.2.复杂系统的PID自整定(基于simulink仿真) 2.2.1.PSO优化PID的过程详解 2.2.2.在PSO优化过程中修改参数价值权重 阅读前必看: 本代码基于MATLAB2017a版本,如果版本不同可能会报错 请从set_para.m文件开始运行,其他M文件(+下载的资源包里面的slx文件)放在
在电路中将直流电转换为交流电的过程称之为逆变,这种转换通常通过逆变电源来实现。这就涉及到在逆变过程中的控制算法问题。本文引用地址:http://www.eepw.com.cn/article/201710/366918.htm
在S7-200中PID功能是通过PID指令功能块实现。通过定时(按照采样时间)执行PID功能块,按照PID运算规律,根据当时的给定、反馈、比例-积分-微分数据,计算出控制量。本文详细介绍了S7-200的PID类型和各参数作用、通过PID指令功能块和PID向导两种方式实现PID编程,同时给出了PID的调节步骤、手自动无扰切换的实现方式,此外还对通过自整定方式进行PID调节给出了控制面板启动和编程启动两种详细方案。如果想要了解更详细的PID算法,请参考《S7-200系统手册》中PID指令部分的相关内容。
比例控制是一种最简单的控制方式。其控制器的输出与输入误差信号成比例关系。当仅有比例控制时系统输出存在稳态误差(Steady-state error)。
可参考:https://www.shiyanlou.com/courses/854 邀请码 U23ERF8H
调参的方法可以分为两大类,理论整定法和工程整定法,不过理论整定对我们实践虽然有帮助,但是实践上的参数整定用工程整定法就够了,工程整定法包括:凑试法、临界比例法、经验法等。
做嵌入式开发控制系统,应该经常会用到PID(比例,积分,微分,proportional,integral,derivative)算法,PID 控制器以各种形式使用超过了很多年,广泛应用在机械设备、传动设备和电子设备。在微处理器出现以前,许多的老工程师都是用电阻电容等期间来搭建PID硬件控制器,最基础的硬件PID控制器,在模电课程中应该都学习过,但是估计大家都忘记的差不多了,没事可以去复习下,随着微处理器电子技术的发展,采用微处理器的数字 PID 控制器算法应用也越来越广泛,但是最基础的PID知识,还是有
最近在学习电机的智能控制,上周学习了基于单神经元的PID控制,这周研究基于BP神经网络的PID控制。
说实话整定口诀对于初学者来说,其实根本就看不懂,只有从实际整定过程中才能慢慢发觉其中的奥秘。
新的S7-200 SMART CPU支持PID自整定功能,在STEP 7-Micro/WIN SMART中也添加了PID调节控制面板。
之前的几篇文章(电机控制基础篇),介绍的电机编码器原理、定时器输出PWM、定时器编码器模式测速等。
关于ADRC的优点本人不会赘述,毕竟作为一个ADRC算法都推导不出来的应用工程师,最希望看到的就是有手就行的操作方法。ARC的缺点就显而易见,就是参数多,一环ADRC大概就有11个参数,但一个粗略的效果很快就出来。本文所有的言论仅以我最近的一次速度闭环控制经验之谈,并没有经过大量的实验验证其绝对正确性,慎用(注:文中公式来自于csdn用户:遥远的乌托邦,有稍作修改)。 ADRC说白了就是PID的升级版,保留了PID的优点,改良了PID的缺点,其结构和PID一样,ADRC可以被看作三个作用效果的结合,分别是TD(跟踪微分器)、ESO(扩张状态观测器)、NLSEF(非线性控制律)。TD是为了防止目标值突变而安排的过渡过程;ADRC的灵魂就在于ESO,其作用下文给客官细细道来;NLSEF是为了改良PID直接线性加权(输出=比例+积分+微分)的缺点而引进的非线性控制律,其更符合非线性系统。
温度是生活及生产中最基本的物理量,它表征的是物体的冷热程度。自然界中任何物理、化学过程都紧密地与温度相联系。在很多生产过程中,温度的测量和控制都直接和安全生产、提高生产效率如消防报警、冷库温度调节、仓库温度检测等等。因此以温度参数为基础而设计的温度控制系统被广泛开发和使用。
PID( Proportional Integral Derivative)控制是最早发展起来的控制策略之一,由于其算法简单、鲁棒性好和可靠性高,被广泛应用于工业过程控制,尤其适用于可建立精确数学模型的确定性控制系统。
完整代码请点击阅读原文,也可体验贫道的PID控制演示小程序,(PID控制相关视频见:基础/整定/重要补充)。
机器人的控制方法,根据控制量、控制算法的不同分为多种类型。下面分别针对不同的类型,介绍常用的机器人控制方法。 一、根据控制量分类 按照控制量所处空间的不同,机器人控制可以分为关节空间的控制和笛卡尔空间的控制。对于串联式多关节机器人,关节空间的控制是针对机器人各个关节的变量进行的控制,笛卡尔空间控制是针对机器人末端的变量进行的控制。按照控制量的不同,机器人控制可以分为:位置控制、速度控制、加速度控制、力控制、力位混合控制等。这些控制可以是关节空间的控制,也可以是末端笛卡尔空间的控制。 位置控制的目标是使
校园安全Ai视频分析预警算法通过yolov5+python深度学习算法网络模型,校园安全Ai视频分析预警算法对学生的行为进行智能监测和预警如识别学生打架斗殴、抽烟、翻墙、倒地以及异常聚集等行为,及时发出预警通知。校园安全Ai视频分析预警算法YOLO模型的结构非常简单,就是单纯的卷积、池化最后加了两层全连接,从网络结构上看,与前面介绍的CNN分类网络没有本质的区别,最大的差异是输出层用线性函数做激活函数,因为需要预测bounding box的位置(数值型),而不仅仅是对象的概率。所以粗略来说,YOLO的整个结构就是输入图片经过神经网络的变换得到一个输出的张量。
一、前言 模拟退火、遗传算法、禁忌搜索、神经网络等在解决全局最优解的问题上有着独到的优点,其中共同特点就是模拟了自然过程。模拟退火思路源于物理学中固体物质的退火过程,遗传算法借鉴了自然界优胜劣汰的进化思想,禁忌搜索模拟了人类有记忆过程的智力过程,神经网络更是直接模拟了人脑。它们之间的联系也非常紧密,比如模拟退火和遗传算法为神经网络提供更优良的学习算法提供了思路。把它们有机地综合在一起,取长补短,性能将更加优良。 这几种智能算法有别于一般的按照图灵机进行精确计算的程序,尤其是人工神经网络,是对计算机模
河道船舶识别检测系统通过ppython+YOLOv5网络模型算法技术,河道船舶识别检测系统对画面中的船只进行7*24小时实时监测,若发现存在进行违规采砂或者捕鱼立即自动抓拍触发告警。与C / C++等语言相比,Python速度较慢。也就是说,Python可以使用C / C++轻松扩展,这使我们可以在C / C++中编写计算密集型代码,并创建可用作Python模块的Python包装器。这给我们带来了两个好处:首先,代码与原始C / C++代码一样快(因为它是在后台工作的实际C++代码),其次,在Python中编写代码比使用C / C++更容易。OpenCV-Python是原始OpenCV C++实现的Python包装器。Python是一种由Guido van Rossum开发的通用编程语言,它很快就变得非常流行,主要是因为它的简单性和代码可读性。它使程序员能够用更少的代码行表达思想,而不会降低可读性。
Jason Pei,携程高级算法工程师,对计算广告、推荐系统、NLP等领域有浓厚兴趣。
ADRC,全称叫做Active Disturbance Rejection Control,中文名是自抗扰控制技术。这项控制算法是由中科院的韩京清教授提出的。韩教授继承了经典PID控制器的精华,对被控对象的数学模型几乎没有任何要求,又在其基础上引入了基于现代控制理论的状态观测器技术,将抗干扰技术融入到了传统PID控制当中去,最终设计出了适合在工程实践中广泛应用的全新控制器。
PID功能用于对闭环过程进行控制。PID控制适用于温度,压力,流量等物理量,是工业现场中应用最为广泛的一种控制方式。TIA Portal为S7-1200/1500提供PID_Compact、PID_3STEP和PID_TEMP指令,可以通过工艺对象的方式进行配置和调试。图文化的向导配置以及可通过调试面板进行的自整定功能,使用户能够更方便、快捷的使用PID功能。
学过控制工程或者相关理论的同学应该比较了解,判断系统稳定性的条件一般用到劳斯表(劳斯判据)。而PID控制和模糊PID控制极大地依赖系统传递函数的建立,因此如果对于系统复杂,难以建立模型的,还是需要考虑一下。
最近两天在考虑一般控制算法的C语言实现问题,发现网络上尚没有一套完整的比较体系的讲解。于是总结了几天,整理一套思路分享给大家。
河道水面垃圾识别检测系统采用yolov5忘了模型计算机视觉技术,水面垃圾识别检测算法通过在河道的摄像头,对水面垃圾进行实时监测自动识别。近几年来,目标检测算法取得了很大的突破。比较流行的算法可以分为两类,一类是基于Region Proposal的R-CNN系算法(R-CNN,Fast R-CNN, Faster R-CNN),它们是two-stage的,需要先使用启发式方法(selective search)或者CNN网络(RPN)产生Region Proposal,然后再在Region Proposal上做分类与回归。而另一类是Yolo。
PID控制原理图下图1,PID控制系统包括三个模块:P比例控制、I积分控制、D微分控制。P比例控制:基本作用就是控制对象以线性的方式增加,在一个常量比例下,动态输出,缺点是会产生稳态误差;I积分控制:基本作用就是用来消除稳态误差,缺点是会增加超调;D微分控制:基本作用就是减弱超调,加大惯性响应速度。P、I、D根据实际控制对象选择不同组合,如PI控制、PD控制、PID控制。(参考链接:https://blog.csdn.net/weixin_48435215/article/details/125261840)
我司在老一代模切烫金机上的加热控制系统使用的是温控仪表的方式来进行控制。在设备控制中,加热控制和设备控制是彼此分开的,设备操作界面上也不能直观显示控制的温度。在操作和运行上来说,加热系统需要分开单独对其调试,存在诸多不方便之处,大型的设备需要进行多温区的控制扩展,操作显得就更加复杂和不便。
1.本人使用window10+VMware+ubuntu 18.04 这里不多阐述 2.按照官方文档移植XR806的FreeRTOS
3.设备及电缆过热,并且影响同电网设备运行、这将导致计划外停机时间的增加和生产力的降低
当今的闭环自动控制技术都是基于反馈的概念以减少不确定性。反馈理论的要素包括三个部分:测量、比较和执行。测量关键的是被控变量的实际值,与期望值相比较,用这个偏差来纠正系统的响应,执行调节控制。在工程实际中,应用最为广泛的调节器控制规律为比例、积分、微分控制,简称PID控制,又称PID调节。
在现实控制中,被控系统并非是线性时不变的,往往需要动态调整PID的参数,而模糊控制正好能够满足这一需求,所以在接下来的这一节我们将讨论模糊PID控制器的相关问题。模糊PID控制器是将模糊算法与PID控制参数的自整定相结合的一种控制算法。可以说是模糊算法在PID参数整定上的应用。
小明接到这样一个任务:有一个水缸漏水,且漏水的速度是不定的,但要求水面高度维持在某个位置,一旦发现水面高度低于要求位置,就要往水缸里加水。 开始小明用瓢加水,水龙头离水缸有十几米的距离,经常要跑好几趟
参数中:V(t)是目标值h、h0为积分步长,一般来说h可以等于h0,但是为了减少超调和减少震荡,才把他们分开,一般h0比h大,比如大20倍。当h0较大时,能够明显减少震荡,所以也叫滤波因子。减小h可以抑制噪声放大作用。r为速度因子,值越大,逼近速度越快,但是最好根据实际被控对象的可承受能力而定。 表达式中:其中fhan函数第一种表达式为:
一、PID的故事 小明接到这样一个任务:有一个水缸点漏水(而且漏水的速度还不一定固定不变),要求水面高度维持在某个位置,一旦发现水面高度低于要求位置,就要往水缸里加水。 小明接到任务后就一直守在水缸旁边,时间长就觉得无聊,就跑到房里看小说了,每30分钟来检查一次水面高度。水漏得太快,每次小明来检查时,水都快漏完了,离要求的高度相差很远,小明改为每3分钟来检查一次,结果每次来水都没怎么漏,不需要加水,来得太频繁做的是无用功。几次试验后,确定每10分钟来检查一次。这个检查时间就称为采样周期。 开始小明用瓢加
人员拥挤检测系统通过YOLOv5网络模型算法技术,人员拥挤检测系统算法模型对校园/厂区车间/街道等场景的异常的人群聚集(出现拥挤情况)时,人员拥挤检测系统立刻抓拍存档并通知相关人员及时处理。在介绍Yolo算法之前,首先先介绍一下滑动窗口技术,这对我们理解Yolo算法是有帮助的。采用滑动窗口的目标检测算法思路非常简单,它将检测问题转化为了图像分类问题。其基本原理就是采用不同大小和比例(宽高比)的窗口在整张图片上以一定的步长进行滑动,然后对这些窗口对应的区域做图像分类,这样就可以实现对整张图片的检测了。整体来看,Yolo算法采用一个单独的CNN模型实现end-to-end的目标检测,整个系统如图5所示:首先将输入图片resize到448x448,然后送入CNN网络,最后处理网络预测结果得到检测的目标。相比R-CNN算法,其是一个统一的框架,其速度更快,而且Yolo的训练过程也是end-to-end的。
电子封条监控系统算法模型利用yoloov5+python 深度学习训练模型技术,电子封条监控系统算法模型实现对画面内外的出入人员、人数变化及非煤矿山生产作业状态等情况的实时监测和分析,及时发现异常动态,减少了人为介入的过程。介绍电子封条监控系统算法模型Yolo算法之前,首先先介绍一下滑动窗口技术,这对我们理解Yolo算法是有帮助的。采用滑动窗口的目标检测算法思路非常简单,它将检测问题转化为了图像分类问题。电子封条监控系统算法模型基本原理就是采用不同大小和比例(宽高比)的窗口在整张图片上以一定的步长进行滑动,然后对这些窗口对应的区域做图像分类,这样就可以实现对整张图片的检测了,如下图3所示,如DPM就是采用这种思路。但是这个方法有致命的缺点,就是你并不知道要检测的目标大小是什么规模,所以你要设置不同大小和比例的窗口去滑动,而且还要选取合适的步长。
控制目的: 控制的根本目的就是要使控制对象当前的状态值与用户的设定值相同(最大限度的接近)。
简要 平衡车文章分为4篇进行说明: 《平衡车 - 硬件》:讲解平衡车的硬件设计。 《平衡车 - 软件》:讲解平衡车的软件设计,算法。 《平衡车 - 上位机》:讲解调参上位机的设计 《平衡车 - 微信小程序》:讲解微信小程序作为遥控器的实现。 github连接:https://github.com/RiceChen/Balance_Car.git 软件设计 代码结构 平衡车的代码设计,该平衡车是基于RT-THREAD NANO上进行设计,主要分为3层,driver-device-controler。 driv
这次工程以STM32F103RC为例用CAN驱动控制两路直流无刷电机,带霍尔传感器,TIM1和TIM8用来输出PWM,TIM2和TIM4用来接霍尔,采用6步法控制算法实现电机的换向和控制,电机的转速由霍尔信号计算,每个电机的电流采用单电阻采样,使用DMA,减少CPU处理时间,使用CubeMX快速配置工程,管脚分布,生成初始工程,为了代码可读性,分配管脚时候,命名为代码中要使用的名字如霍尔三个管脚可命名为M1_HALL_H1, M1_HALL_H2, M1_HALL_H3。
我国智能驾驶车辆起源于1980年,然而在1992年国防科技大学研发真正第一辆智能车。2003年,清华大学研发的THMR-V可在清晰的车道线上完成车道保持,而且它的最高时速可达到150km/h,如图1所示。
《传热学》相关小程序演示动画如下(其中下图1D非稳态导热计算发散,调小时间步长后重新计算,结果收敛!):
1 https://www.anaconda.com/ 下载对应的anaconda安装包,一路下一步完成安装;
2.S7-200 SMART CPU最多可以支持8个PID控制回路(8个PID指令功能块),根据PID算法自己编程没有具体数目的限制,但是需要考虑PLC的存储空间以及扫描周期等影响。
PID:比列(Proportion),积分(Integral),微分(Differential)
二、为什么PID好,以及,为什么PID不够好1.为什么PID好——基于模型的现代控制理论不实用
按了水泵电源按钮后,上水阀门旋转开启,水流入水池,流入到一定高度时,管道里开始有水流动,测压管水位缓缓上升,集水池水位缓缓增加,最后回流到潜水泵箱体。关闭电源,水箱液位下降,测压管道水位下降。流速可调,慢速,中速、高速。 实现实验切换->伯努利方程验证实验、沿程阻力系数测定、局部阻力系数测定等。
愿有朝一日用上国产的IDE、编译器、数据库系统、OS、光刻机、芯片等等,以形成闭环。
领取专属 10元无门槛券
手把手带您无忧上云