这部分功能是一个普通的数显白光控制器该有的功能虽然某些是手动的.
设计功能: 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='宋体']视频:
[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 ![]() 把菲林打印好, 用的是喷墨打印机. ![]() pcb打磨清洗干净, 准备贴膜 ![]() 取大小合适的感光干膜 ![]() 用手机贴膜的刮板很好用 ![]() 贴好模后加热一下让模的表面更加贴紧pcb ![]() 贴膜完成 ![]() 上刑具准备曝光 ![]() 曝光的时间很重要, 上面的定时控制器也是使用104E做的 ![]() ![]() 曝光完成 可以清晰看到曝光的痕迹 ![]() 曝光用的箱子 2跟紫外灯管+一个鞋盒子 ![]() ![]() ![]() 准备显影和腐蚀了 这个东西是用来控制T12加热腐蚀液的 泡泡箱里也就只能放下T12烙铁头这个直径了 电路参考 我的"白光T12烧水 腐蚀箱温控" ![]() 泡泡箱 ![]() 图发不完, 调校的教程丢后面再说吧 ![]() 显影中... ![]() ![]() 显影完成 ![]() 丢泡泡箱里腐蚀 ![]() 快腐蚀完了 ![]() 很久没做pcb手生了 这个膜贴的不好,得用油性笔修修 ![]() 修好的样子 ![]() ![]() ![]() 腐蚀完了 ![]() 脱膜 ![]() ![]() ![]() 化学镀锡后的板子 好像薄了点 不过镀时间上了又会发黑... ![]()
|