硬件工程师成长之路(7)——算法学习

系列文章目录

1.元件基础
2.电路设计
3.PCB设计
4.元件焊接
5.板子调试
6.程序设计
7.算法学习
8.编写exe
9.检测标准
10.项目举例
11.职业规划


前言

一个普通专科生,拿什么拯救你的未来?

送给大学毕业后找不到奋斗方向的你(每周不定时更新)

中国计算机技术职业资格网
上海市工程系列计算机专业中级专业技术职务任职资格评审


算法大全

1、风仲达——算法笔记

一、控制算法

1、PID算法

①、PID算法的解析

PID算法的解析

②、PID控制算法讲解

通俗易懂的 PID 控制算法讲解

③、PID参数解析(一文读懂PID并会调试kp,ki,kd)(位置式+增量式PID)

PID参数解析(一文读懂PID并会调试kp,ki,kd)(位置式+增量式PID)

④、STM32——PID恒温控制(含C语言程序)

STM32——PID恒温控制

⑤、PID参数调节口诀

参数整定找最佳,从小到大顺序查
先是比例后积分,最后再把微分加
曲线振荡很频繁,比例度盘要放大
曲线漂浮绕大湾,比例度盘往小扳
曲线偏离回复慢,积分时间往下降
曲线波动周期长,积分时间再加长
曲线振荡频率快,先把微分降下来
动差大来波动慢。微分时间应加长
理想曲线两个波,前高后低4比1
一看二调多分析,调节质量不会低
若要反应增快,增大P减小I;
若要反应减慢,减小P增大I;
如果比例太大,会引起系统振荡
如果积分太大,会引起系统迟钝
在这里插入图片描述

⑥、PID温度控制参数整定方法

先多看两个,来点印象,再调

1、PID温度控制参数整定方法
2、PID控制参数整定(调节方法)原理+图示+MATLAB调试
3、PID原理的详细分析及调节过程
4、PID调节经验
5、控温设备的PID参数选定的个人方法(真实有效)
(1) 确定比例系数Kp
确定比例系数Kp时,首先去掉PID的积分项和微分项,可以令Ti=0、Td=0,使之成为
纯比例调节。输入设定为系统允许输出最大值的60%~70%,比例系数Kp由0开始逐渐增
大,直至系统出现振荡;再反过来,从此时的比例系数Kp逐渐减小,直至系统振荡消失。
记录此时的比例系数Kp,设定PID的比例系数Kp为当前值的60%~70%。

(2) 确定积分时间常数Ti
比例系数Kp确定之后,设定一个较大的积分时间常数Ti,然后逐渐减小Ti,直至系统出现
振荡,然后再反过来,逐渐增大Ti,直至系统振荡消失。记录此时的Ti,设定PID的积分
时间常数Ti为当前值的150%~180%。

(3) 确定微分时间常数Td
微分时间常数Td一般不用设定,为0即可,此时PID调节转换为PI调节。如果需要设定,
则与确定Kp的方法相同,取不振荡时其值的30%。

(4) 系统空载、带载联调
对PID参数进行微调,直到满足性能要求。

⑦、Matlab调试

(1)、2016 matlab 中文版软件和安装教程
2016 matlab 中文版软件和安装教程

(2)matlab实现pid仿真
matlab实现pid仿真
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
搜索,PID
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

⑧、个人经验

刚碰到这个东西的时候,也啥都不知道,跟着网上各种教程就瞎调,最终还真调出来了
在这里插入图片描述
(1)、首先先有程序,上面第四小节有,PID.c和PID.h可以直接用;讲的还是比较细的。
(2)、程序只是套用,调还得自己花时间调,主要调KP,Ti和Td;
在这里插入图片描述
(3)、先把KP设为1,其他为0;看输出波动情况

如果输出的实际值一直缓慢上升,超过设定值了还上升,上升了好久才下来,这时应该是
KP设小了

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

(4)、KP等于刚才的值不动,TI等于100000,TD还是0;
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(5)、KP,TI等于刚才确定的值,TD等于1。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
以上为正常情况,下面还有不正常情况
1、检测端有问题
在这里插入图片描述
当不管怎么调整,输出就是要么一直偏高,要么一直偏低,这时候就要看看是不是你的检测的这个信号有没有问题。
2、输出端有问题
在这里插入图片描述
当不管怎么调整,输出就是要么一直振荡着有缓慢上升趋势或下降趋势,这时候就要看看是不是你的输出端有问题;举个例子,假如控制到100,那么100就是保持信号,101就是当前还没达到设定值,加大输出信号,同理99就是减小输出信号。如果在线调试,99成了加,或者101成了减,那么就会出现上面的情况。

以上均为个人经验,欢迎指正。

⑨、串口波形调试助手

纸飞机调试助手

纸飞机串口调试助手观察mup6050数据波形

在这里插入图片描述

二、滤波算法

嵌入式开发中常见用的10种数字滤波算法
在这里插入图片描述

三、其他算法

1、字符串模式匹配

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

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

2、排序算法

算法中的排序问题总结,时间复杂度为O(n)的排序,计数排序,桶排序,基数排序
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

①、直接插入排序

在这里插入图片描述

在这里插入图片描述

②、希尔排序

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

③、直接选择排序

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

④、堆排序

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

在这里插入图片描述

⑤、冒泡排序

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

⑥、快速排序

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

⑦、归并排序

在这里插入图片描述

⑧、基数排序

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

四、可视化算法网站

1、VisuAlgo

VisuAlgo
在这里插入图片描述
该网站特点:

算法可视化
文字讲解
复杂度备注
图形可操控调整

2、algorithm-visualizer

algorithm-visualizer
在这里插入图片描述
该网站特点:

算法可视化
有代码
有控制台输出帮助理解
算法种类丰富

猜你喜欢

转载自blog.csdn.net/weixin_44407238/article/details/118976524