找回密码
 立即注册
楼主: 梁工

PID 算法来了,视频讲解; PID温控;串口绘图;USB-CDC虚拟串口/就是串口

 火.. [复制链接]
  • 打卡等级:偶尔看看III
  • 打卡总天数:50
  • 最近打卡:2025-04-30 22:59:03

73

主题

5882

回帖

1万

积分

超级版主

积分
12073
发表于 2023-8-28 10:01:51 | 显示全部楼层
our*** 发表于 2023-8-27 22:08
梁工,这个如果把热敏电阻换成热电偶需要注意哪些方面的问题不?我看好多温控器都是用热电偶来做温度探头的 ...

用热电偶是因为要测更高的温度,还便宜。
常用的K型热电偶分辨率大约是40uV/度的量级,要用运放放大15~16倍,同时要检测环境温度。
当然,也可以用热电偶专用的处理IC,不过会比较贵。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:416
  • 最近打卡:2025-04-30 07:00:00

12

主题

87

回帖

2272

积分

金牌会员

积分
2272
发表于 2023-8-28 19:40:26 | 显示全部楼层
梁*** 发表于 2023-8-28 10:01
用热电偶是因为要测更高的温度,还便宜。
常用的K型热电偶分辨率大约是40uV/度的量级,要用运放放大15~16 ...

谢啦
回复 支持 反对

使用道具 举报 送花

0

主题

1

回帖

42

积分

新手上路

积分
42
发表于 2023-9-1 20:32:52 来自手机 | 显示全部楼层
梁工,你好,我把温控PID用在数控可调电源上,出现一个问题,当实际电压小于设置电压时,PwM就会输出0,这是什问题?

点评

你可能计算有误。 输出电压小于设置电压时,误差为正,积分也为正,则会加大PWM输出,而你的逻辑是反的了。  详情 回复 发表于 2023-9-2 12:40
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:50
  • 最近打卡:2025-04-30 22:59:03

73

主题

5882

回帖

1万

积分

超级版主

积分
12073
发表于 2023-9-2 12:40:12 | 显示全部楼层
deng*** 发表于 2023-9-1 20:32
梁工,你好,我把温控PID用在数控可调电源上,出现一个问题,当实际电压小于设置电压时,PwM就会输出0,这 ...

你可能计算有误。
输出电压小于设置电压时,误差为正,积分也为正,则会加大PWM输出,而你的逻辑是反的了。
回复 支持 反对

使用道具 举报 送花

0

主题

4

回帖

46

积分

新手上路

积分
46
发表于 2023-9-16 04:05:21 | 显示全部楼层
程序中的  j = (u16)pidTerm;   pwm = (u8)j;这两句写法变量前面加了数据类型不是很理解,请梁工指导

点评

UpdatePID(); // 更新PID参数 if(pidTerm < 0) j = 0; // 输出驱动PWM不能是负数 else j = (u16)pidTerm; //pidTerm是浮点数,要取出整数部分赋值给16位无符号变量j  详情 回复 发表于 2023-9-16 18:37
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:50
  • 最近打卡:2025-04-30 22:59:03

73

主题

5882

回帖

1万

积分

超级版主

积分
12073
发表于 2023-9-16 18:37:59 | 显示全部楼层
tnyq*** 发表于 2023-9-16 04:05
程序中的  j = (u16)pidTerm;   pwm = (u8)j;这两句写法变量前面加了数据类型不是很理解,请梁工指导{:4_19 ...

UpdatePID();        // 更新PID参数
if(pidTerm < 0)     j = 0;                     // 输出驱动PWM不能是负数
else                     j = (u16)pidTerm;    //pidTerm是浮点数,要取出整数部分赋值给16位无符号变量j,
if(j >= 250)        j = 250;                // PWM是8位的,最大值限制250.
pwm = (u8)j;                //pwm是8位的,16位的j转成8位给pwm,输出PWM控制加热
回复 支持 反对

使用道具 举报 送花

0

主题

1

回帖

14

积分

新手上路

积分
14
发表于 2023-9-18 12:08:26 来自手机 | 显示全部楼层
本帖最后由 clickclick 于 2023-9-18 12:28 编辑

请问下这个mosfet驱动电路为什么加这个10K接地电阻呀?我看很多电路都是io口直接连接1k电阻然后连接mosfet.
另外想请教下,io口模式应该是配置成准双向口还是推挽输出,原因是什么?
-3b3f670fcdc3288.jpg

点评

基本都会加这个下拉电阻的。 上电时IO为高阻,MOSFET输入也是高阻,会导致电平不确定,所以用下拉电阻确定其上电时为低电平。  详情 回复 发表于 2023-9-18 12:46
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:50
  • 最近打卡:2025-04-30 22:59:03

73

主题

5882

回帖

1万

积分

超级版主

积分
12073
发表于 2023-9-18 12:46:46 | 显示全部楼层
click*** 发表于 2023-9-18 12:08
请问下这个mosfet驱动电路为什么加这个10K接地电阻呀?我看很多电路都是io口直接连接1k电阻然后连接mosfet ...

基本都会加这个下拉电阻的。
上电时IO为高阻,MOSFET输入也是高阻,会导致电平不确定,所以用下拉电阻确定其上电时为低电平。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:54
  • 最近打卡:2025-05-01 09:07:55

717

主题

1万

回帖

1万

积分

管理员

积分
15613
发表于 2023-10-24 12:54:12 | 显示全部楼层
USB 原理实战16课时】,视频教学已完美完成 ,大学标准课程
【10月/9号,10月/11号】USB基本原理教学视频, 已上传
10月/16号USB-HID 通信 实战】教学视频超级完美, 已上传
             是对着协议代码一行一行的讲解,认真听的都说会了
10月/18号下午USB-CDC虚拟串口 实战】教学视频, 已上传
             USB-CDC虚拟串口 / 就是最简单最强大的串口
             是对着协议代码一行一行的讲解,认真听的都说会了

请帮忙转发给可能需要:从0开始了解 USB 同学/同事/老师/研发人员
https://www.stcaimcu.com/forum.php?mod=viewthread&tid=4526&extra=&page=1
=========================================
CAN 原理实战8课时】,教学视频,制作中,后续直接看视频回放

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:8
  • 最近打卡:2023-12-05 19:37:53

3

主题

324

回帖

363

积分

禁止发言

积分
363
发表于 2023-11-9 12:25:55 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-2 00:27 , Processed in 0.162312 second(s), 124 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表