这部分功能是一个普通的数显白光控制器该有的功能虽然某些是手动的.
设计功能:
1.3位数码管显示温度
2.三按键操作 (加, 减, 设置)
3.热电偶冷端温度手动设置(按住 加键开机)
4.控温范围 100~420℃
5.温度稳定 ±10℃(无负荷时)
6.PWM控制加热功率
7.接近设定温度(大约50度)时使用PID算法控制加热(200ms间隔), 其它时间使用固定加热长度(加热500ms, 检测一次)
8.10组常用温度, 常规状态下按加,减键切换
9.可通过图形化联机软件校准系统参数与PID参数(需要串口版本固件)
10.按住 设置键开机进入系统参数设置
11.按住 减键开机快速恢复默认设置
12.使用中按 设置键显示当前设定温度2秒(最高位小数点亮)
13.在显示当前设定温度时再按设置键进入温度编辑状态, 编辑完成后10组温度值会按从低到高排序
14.记忆最后选择的温度索引 使用均衡写入 (理论写入寿命 100000 * 512 次)
15.运行状态下长按设置键进入休眠状态(恒温到100度), 再按设置键恢复到正常状态 (中间小数点亮)
16.休眠状态下长按设置键进入关闭状态(关闭T12输出), 再按设置键恢复到正常状态
屏幕参数解释
P01 AD调零值 用于在单电源情况下将ad输出调0
P02 参考端(热电偶冷端)温度
P03 AD值到电压值比例 单位uv
P04 比例常数
P05 积分常数
P06 微分常数
MCU资源使用
Program Size: data=85.4 xdata=0 code=3985
型号 Flash SRAM 定时器 EEPROM
STC15F104E 4K 128 2 1K
系统时钟设置到 22.1184MHz
不算外壳成本约10元左右
AD部分没有采用数字滤波每次读取时间约(室温0.261ms-最高2ms)
PID算法每次耗时 0.042ms
按键与显示更新 0.087ms+0.029ms
本来还想实现自动休眠功能, 但是已经没有代码空间了. 104E也是能用的最高选型了.
如果用204EA 加上冷端热敏电阻用的表空间也是不够的.
----------------------------------------华丽分割线--------------------------------------------
有别与其它控制器的地方是多了一个上位机软件和对应的固件.
通过它你可以调整校正 调零, AD对应电压, 冷端补偿, PID参数, 并且可以直接保存设置到MCU.
在图形化的PID调整界面中你可以直观看到PID参数对PWM的影响, 曲线包括PWM, 设定,温度, 另外还有个AD值曲线可以看看AD的工作状态.
有了它PID设置也可以变成一个饭后娱乐项目:)
工作原理:
由 LM358(B),R2,C5,R3,R5 组成热电偶电压放大电路 放大151倍由R3,R5决定
AD由 LM358(A)作为比较器 -端为电压信号输入, +端为C6电容上的电压
Q2,R9组成C6的放电电路
Q1,R1,R6,D1,D2组成恒流源为C6充电, 模拟到数字的转换就是检测C6上充电电压
是否大于输入电压
R4,R7,Q3组成了pmos的驱动电路
参考文献
容易理解的PID(翻译) 原文(PID Without a PhD)
N型热电偶温度电压转换表
用普通单片机实现低成本A/D转换(二) 作者:Azhu
按键检测参考了春风电源的电路[font='宋体']
[font='宋体']视频:
制作完成后
STC-ISP设置
上位机软件
我制作时使用的电路图和PCB
控制与驱动
按键与现实
关于上面这个电路图的说明:T12Ctrl.hex 为正常使用固件
T12Ctrl_uart.hex 为配合串口调试校正固件
Bin 为上位机程序
控制与驱动_电路图.pdf 中
C6要修改为33nf
当输入电压大于12V时不能使用78L05了, 压差太大会很热
我是直接用3r33模块替换的78l05 所以pcb没有修改 固件与软件
1.00 Build 120417 Beta
12-04-18 增加
校正 无上位机 教程
个更新普通固件
T12Ctrl_1.01 Build 120418 Beta
*设置系统参数 "AD值到电压值比例" 修改为8秒加热时间
*修正"P03"默认值不为自动计算值的不方便操作
在16楼 12-04-22 增加
校正 有上位机 教程
新的串口固件
在29楼 12-04-23 增加
1.02 Build 120422 正式版
2012-04-21
*修改为ADC 12bit版本
*使用新热电偶分度表
-代码空间限制, 取消系统参数设置, 只能由上位机初始化
2012-04-22
*修改休眠温度为200度
+自动关机30分钟内温度变化范围小于正负1.5度关机
+ADC返回数值数字滤波
*恢复默认设置参数为
调零:296 AD对应电压:4358 冷端参考:25 PID: 32 12 50
温度列表: 200 220 ...380
默认索引: 0
+开启看门狗 溢出时间约 0.505s
在
35楼