系列文章目录

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


文章目录

  • 前言
  • 算法大全
  • 一、控制算法
    • 1、PID算法
      • ①、PID算法的解析
      • ②、PID控制算法讲解
      • ③、PID参数解析(一文读懂PID并会调试kp,ki,kd)(位置式+增量式PID)
      • ④、STM32——PID恒温控制(含C语言程序)
      • ⑤、PID参数调节口诀
      • ⑥、PID温度控制参数整定方法
      • ⑦、Matlab调试
      • ⑧、个人经验
      • ⑨、串口波形调试助手
  • 二、滤波算法
  • 三、其他算法
    • 1、字符串模式匹配
    • 2、排序算法
      • ①、直接插入排序
      • ②、希尔排序
      • ③、直接选择排序
      • ④、堆排序
      • ⑤、冒泡排序
      • ⑥、快速排序
      • ⑦、归并排序
      • ⑧、基数排序
  • 四、可视化算法网站
    • 1、VisuAlgo
    • 2、algorithm-visualizer
  • 五、数据校验
    • 1、C语言版CRC-16系列校验算法
  • 六、数据转换
    • 1、十进制转16进制

前言


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

【牛客网】构建从学习到职业的良性生态圈
中国计算机技术职业资格网
上海市工程系列计算机专业中级专业技术职务任职资格评审


算法大全

1、风仲达——算法笔记
2、坐在马桶上学算法
3、啊哈算法

一、控制算法

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

该网站特点:

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

五、数据校验

1、C语言版CRC-16系列校验算法

CRC-16 CCITT
C语言版CRC-16系列校验算法

六、数据转换

1、十进制转16进制

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

  1. 硬件工程师成长之路(11)——职业规划

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

  2. 硬件工程师成长之路(6)——程序设计

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

  3. 硬件工程师成长之路(0)----认识元件

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

  4. 硬件工程师成长之路(3)——PCB设计

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

  5. 硬件工程师成长之路(5)——板子调试

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

  6. 硬件工程师成长之路(9)——检测标准

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

  7. 网络工程师----成长之路

    网络工程师----成长之路 常用程序快捷键命令(网络工程师) 常用CMD命令(网络工程师) 常用Linux命令(网络工程师) 问题点宝库 第一章:一.網絡工程師–简介 第二章:二.网络工程师学习阶段– ...

  8. 精品课python_python工程师成长之路精品课程(全套)

    python工程师成长之路精品课程(全套)  有需要联系我:QQ:1844912514 什么是Python? Python是一门面向对象的编程语言,它相对于其他语言,更加易学.易读,非常适合快速开发. ...

  9. 电系魔法师成长之路—仪器仪表学习(二)设计T型和Π型衰减器

    电系魔法师成长之路-仪器仪表学习(二)设计T型和Π型衰减器 一.用途 ​ 衰减器是一种提供衰减的电子元器件, 广泛地应用于电子设备中,它的主要用途是:(1)调整电路中信号的大小:(2)在比较法测量电路 ...

最新文章

  1. C++ 之 string
  2. linux下安装和卸载vmware产品
  3. Python程序设计题解【蓝桥杯官网题库】 DAY5-基础练习
  4. 只显示小方格_木托盘拼成院子围栏,镂空方格里都种上菜,一物两用,收获满满...
  5. ROW_NUMBER、RANK、DENSE_RANK的用法
  6. MySQL_前缀索引_建立
  7. 安卓应用安全指南 4.3.2 创建/使用内容供应器 规则书
  8. 【Kafka】kafka 监控指标项
  9. 是什么计算机接入网络的接口设备,什么是计算机接入网络的接口设备
  10. Android中那些有你不知道的事
  11. matlab gaot工具箱安装详细说明
  12. 【android 高德地图出现定位失败key鉴权失败,获取 SHA1,对比是否正确】
  13. 股票什么时候买入什么时候卖出适合?
  14. 不断尝试,做更好的自己|Fabia,很高兴再认识你
  15. [Windows] 系统安装利器WinNTSetup4.2 x86/x64 Final单文件版
  16. 2014年放假安排时间表
  17. Mac下从安装Git到使用github进行版本控制(git命令/Xcode管理)
  18. maven项目模块开发
  19. 图的邻接矩阵存储及遍历
  20. java怎么跳出for循环循环_java如何跳出for循环?

热门文章

  1. 关于使得p标签以及span标签里面内容自动换行css实现
  2. npm publish相关问题记录
  3. 华为交换机ssh登录
  4. 直播干货回顾 | 机器学习,推开AI应用的门
  5. python360指数_Python学习之单线程爬取360看看所有电视剧
  6. androidStudio不得不装的21款,Android Studio插件
  7. python正则表达式模糊匹配_python 正则表达式
  8. JUnit测试模拟JoinPoint
  9. 免费分享20套微信小程序源码 源码免费下载【强烈推荐】
  10. 新基建语境下,网络安全也要换新打法