DIY及创意
直播中

韩玉峰

4年用户 19经验值
私信 关注
[创意DIY]

我做的真彩界面TFT白光T12电烙铁(已开源)

  T12 白光烙铁也是电子DIY中一个非常经典的项目,以至于T12白光DIY烙铁也是广大爱好者和专业人员的标配工具;T12的整个威廉希尔官方网站 可以说是一个标准的温控系统,因此把代码稍微改制,就可以实现各种温控器的方案;
  T12目前大多数采用12864的OLD方案在做,少数低端的还在使用数码管,为了彰显豪华版的T12,我们决定拿2.8吋的shmictrl液晶屏来做,这样显示就可以足够豪华
  为了做这个项目,某宝上买了一个最低档的套件,说实话,就是买个手柄,怕烫到自己。 好了,废话不多说,上图:




  利用原来的外壳做个一个支架,连接屏幕。
  威廉希尔官方网站 上采用标准的T12 控制:
  加热部分:


  PWM 信号控制MOS给烙铁头加热
  烙铁头热电偶信号放大:


  一个标准的运算放大威廉希尔官方网站 ,放大信号约200倍
  电源部分:


  40V以下均可以输入,转成5V,供屏幕和单片机使用 其中C12预留焊盘
  全部的原理图,请参见: https://lceda.cn/zhqsoft/shmictrl-28-t12
  实际PCB以及接法


  图中预留了ESP12s的位置,理论上可以做成物联网烙铁,但是没有什么实际用途,只是预留。
  核心控制算法
  有人觉得控制算法很神秘,其实很简单;
  int TAD=0; //温度AD值
  int pwm=327; //占空比一半
  int setupAD=900; //设置的AD值
  void ctrl0(){
  if (TAD
  pwm=65535; //100%
  }
  else {
  if (TAD>setupAD){
  pwm=100; //基本相当于关闭
  }
  else{
  //自动计算PWM
  pwm=(setupAD-TAD)*65535/100;
  }
  }
  }
  复制代码
  这个函数就是控制算法,可以看到总共没有几行代码,大致的意思是每次获取温度测量的AD值(TAD)之后,调用一下本函数,根据目标AD值(setupAD)来计算一下需要加热的PWM占空比;
  可以看到,当TAD与目标setupAD 差值比较大的时候,100%全力加热;当100以内,根据差值大小动态按比例调整PWM值;当温度超过预设温度时,给一个非常小的PWM维护,当然也可以测底关闭;
  当然这只是原理,实际请参见源代码,多个几个分组。
  界面:


  实际效果:


  从80度上升到250度,实际焊接无明显降温。


  50度上升到450度。
  相关资料下载:
  原理图与PCB https://lceda.cn/zhqsoft/shmictrl-28-t12
  sHMIctrl工程文件(源代码) http://shmictrl.com/download/shmictrl-t12.sz
  T12 白光烙铁也是电子DIY中一个非常经典的项目,以至于T12白光DIY烙铁也是广大爱好者和专业人员的标配工具;T12的整个威廉希尔官方网站 可以说是一个标准的温控系统,因此把代码稍微改制,就可以实现各种温控器的方案;
  T12目前大多数采用12864的OLD方案在做,少数低端的还在使用数码管,为了彰显豪华版的T12,我们决定拿2.8吋的shmictrl液晶屏来做,这样显示就可以足够豪华
  为了做这个项目,某宝上买了一个最低档的套件,说实话,就是买个手柄,怕烫到自己。 好了,废话不多说,上图:




  利用原来的外壳做个一个支架,连接屏幕。
  威廉希尔官方网站 上采用标准的T12 控制:
  加热部分:


  PWM 信号控制MOS给烙铁头加热
  烙铁头热电偶信号放大:


  一个标准的运算放大威廉希尔官方网站 ,放大信号约200倍
  电源部分:


  40V以下均可以输入,转成5V,供屏幕和单片机使用 其中C12预留焊盘
  实际PCB以及接法


  图中预留了ESP12s的位置,理论上可以做成物联网烙铁,但是没有什么实际用途,只是预留。
  核心控制算法
  有人觉得控制算法很神秘,其实很简单;
  int TAD=0; //温度AD值
  int pwm=327; //占空比一半
  int setupAD=900; //设置的AD值
  void ctrl0(){
  if (TAD
  pwm=65535; //100%
  }
  else {
  if (TAD>setupAD){
  pwm=100; //基本相当于关闭
  }
  else{
  //自动计算PWM
  pwm=(setupAD-TAD)*65535/100;
  }
  }
  }
  复制代码
  这个函数就是控制算法,可以看到总共没有几行代码,大致的意思是每次获取温度测量的AD值(TAD)之后,调用一下本函数,根据目标AD值(setupAD)来计算一下需要加热的PWM占空比;
  可以看到,当TAD与目标setupAD 差值比较大的时候,100%全力加热;当100以内,根据差值大小动态按比例调整PWM值;当温度超过预设温度时,给一个非常小的PWM维护,当然也可以测底关闭;
  当然这只是原理,实际请参见源代码,多个几个分组。
  界面:


  实际效果:


  从80度上升到250度,实际焊接无明显降温。


  50度上升到450度。
  

回帖(2)

王栋春

2020-8-12 21:06:37
那个屏设计的不错
举报

xinjihua

2020-8-14 12:04:46
那个屏设计的不错
举报

更多回帖

发帖
×
20
完善资料,
赚取积分