0 卖盘信息
BOM询价
您现在的位置: 首页 > 技术方案 >计算机及配件 > 基于 Arduino Nano R3 的烙铁控制器(原理图+代码)

基于 Arduino Nano R3 的烙铁控制器(原理图+代码)

来源: 电路城
2021-11-05
类别:计算机及配件
eye 12
文章创建人 拍明

原标题:基于 Arduino Nano R3 的烙铁控制器(原理图+代码)

cirmall

cirmall

cirmall

cirmall

cirmall

  控制器处理带有可更换尖端的 hakko 907 焊接手柄,并具有内置的加热元件和热敏电阻或热电偶来检查烙铁温度。手柄有两个独立的电路,用于熨斗加热和温度检查。该控制器可以与具有类似架构的另一个铁手柄一起使用。

  铁柄上的插头最好换一个,比如航空插头GX16-5或GX-12-5。

  该控制器的主要特点是:

  控制器适合搭配各种hakko 907手柄,搭配热电偶或热敏电阻来检测温度。您应该选择合适的原理图。

  在PID算法被实现,以保持烙铁的温度。熨斗在大约 30 秒内升高温度,并将其保持在 1 -2 摄氏度以内。

  控制器在大量使用的情况下保持温度,因为PID算法非常敏感并且可以快速增加供应功率。

  在烙铁校准程序中实施的三个参考温度点。

  校准程序通过使用 PID 算法自动进行,以将温度保持在参考点附近。

  控制器支持两种工作模式:保持温度和保持供电。

  为了保持操作静默,在控制器中实现了 Timer1 高频中断。这允许通过内置功能将 PWM 频率提高到 31250 Hz 而不是 490 Hz analogWrite() 。

  控制器实现加速旋转编码器。当编码器缓慢旋转时,温度设置改变 1 度。当编码器快速旋转时,温度设置改变 5 度。

  使用烙铁后,温度存储在 Arduino EEPROM 中,以防更改温度设置。

  控制器支持摄氏度或华氏度单位用于显示温度值、预设温度和校准数据。

  控制器具有调谐模式以简化控制器的初始设置过程。

  控制器菜单

  正如我之前提到的,控制器有几种模式:

  待机模式

  主要工作方式(保持温度)

  电源模式(保持供电)

  设置模式

  校准模式

  调谐模式(初始设置程序)

  当控制器刚上电时,待机模式被激活。在这种模式下,烙铁通电。主显示屏显示以下信息:

  上一行左侧的预设温度(单位选择 - 摄氏度或华氏度);

  上一行右侧的“OFF”信息表示熨斗已断电;

  第二行左侧的熨斗当前温度;

  如果熨斗未连接到控制器,则第二行会显示消息“无熨斗”。当熨斗变冷(使用后)时,第二行会显示“冷”消息,表明可以安全触摸熨斗。

  熨斗关闭时,可以通过旋转编码器手柄来调整预设温度。要打开烙铁,请轻轻推动编码器手柄。控制器将切换到主模式。现在控制器将熨斗温度保持在预设温度附近。大量使用熨斗时,温度可能会与预设温度略有偏差。

  在主模式下,显示屏显示以下信息:

  上一行左侧的预设温度(单位选择 - 摄氏度或华氏度)

  上方一行右侧的“ON”消息表示熨斗已通电且仍在加热。当熨斗达到预设温度时,将显示“ rdy”(就绪)信息;

  第二行左侧显示熨斗当前温度;

  提供给熨斗的功率(以最大允许功率的百分比表示)显示在屏幕右侧;

  通过旋转编码器,可以更改预设温度。信息“ON”将再次显示,直到熨斗达到新的预设温度。要返回待机模式,请轻按编码器手柄。

  在主模式下,控制器检查熨斗是否正常工作。如果在启动后 10 秒内温度没有变化,控制器将关闭电源,屏幕上将显示消息“ Failed”。在这种情况下,轻按编码器按钮可返回待机模式。

  在主模式下长按编码器可以开启电源模式。在功率模式下,您可以通过旋转编码器手动调整提供给烙铁的功率。在电源模式下,屏幕显示内部装置中熨斗的供电功率和人类可读单位中的熨斗温度。轻按编码器可在电源模式下切换电源开关。长按旋转编码器手柄将使控制器从电源模式返回到主模式。

  要进入设置模式,请在待机模式下长按编码器。在设置模式下,可以调整配置参数。此模式下有 7 个菜单项:

  自动关机超时(分钟)

  温度单位(摄氏度或华氏度)

  铁校准('calib.')

  初始设置程序(“调谐”)

  保存更改

  取消更改

  恢复默认值

  旋转手柄以选择菜单项。要更改所选项目,请轻按编码器手柄。调整好参数后,再次按下手柄返回设置菜单。长按编码器手柄可返回待机模式并将参数保存在EEPROM中。

  提示:您应该在首次使用控制器之前或在刷新新的次要软件版本之后加载默认参数。

  传感器读数示意图

  该控制器的传感器读数原理图取决于烙铁热传感器的类型:热敏电阻或热电偶。两个原理图结合在下面的一张图片中。

  在这两个原理图中都使用了实现轨到轨技术的精确运算放大器 MCP602。该放大器显着提高了温度读数的精度,并产生接近全电压提供给输出引脚。所以A0引脚上的读数间隔是0-1023。您可以用它的模拟替换 mcp602 放大器。使用精确的运算放大器可使控制器将熨斗的温度保持在较小的区间内。

  如果是铁手柄的热电偶变体,则跳线 JP1 和 JP2 都应该打开,如果是热敏电阻手柄,它们应该关闭。

  如果铁柄实现热敏电阻,则传感器的电阻从冷时的约50欧姆增加到烙铁温度变为400摄氏度时的约200欧姆。如果烙铁柄实施热电偶,则产生的电压从环境温度下的零增加到烙铁达到400摄氏度时的9 mV。无论如何,另一个铁柄可以有不同的参数,所以我决定使用多圈电位器来调整放大器 MCP602。这个电位器第一次应该按以下方式调整:当熨斗温度为 400 摄氏度时,输出电压应该接近 5 伏(Arduino 中 A0 引脚的读数约为 900)。为了简化初始设置程序,在控制器软件中实现了调谐模式。

  控制器的初始设置

  您需要外部温度计来校准控制器。不要忘记从设置菜单加载控制器的默认参数。

  程序草图中假设烙铁的工作温度区间为180-400摄氏度。在计划调整控制器之前,可以通过在程序草图中编辑常量来更改此间隔。

  必须调整 500k 多圈电位器才能使运算放大器从烙铁获得正确的信号。为了简化控制器的初始设置过程,实现了调谐模式。

  从设置菜单中选择“调谐”菜单项。熨斗开始加热。在此模式下,控制器以内部单元 (0-1023) 显示来自 A0 引脚的温度读数。通过旋转编码器可以调节功率,使熨斗温度保持在 400 摄氏度(使用外部温度计)。开始时可将供电功率调至最大值以加快熨斗加热速度,然后降低功率以保持温度在400度。现在旋转多圈电位器手柄,得到接近 900 的传感器读数。确保这个读数不是最大值,旋转变量寄存器得到 930-950,然后返回到 900。这很重要,因为控制器应该是能够测量大于摄氏400度的温度。

  待变量寄存器调整好后,按住编码器手柄约2秒。初始设置过程现已完成。

  烙铁加热器

  第二代控制器的主要特点是用于加热熨斗的高频PWM信号。不幸的是,管理 MOSFET 晶体管上的高频信号需要原理图中的额外元素。这个论坛帖子详细解释了这个问题。简而言之,MOSFET 在栅极中有电容,需要时间来充电或放电。为了提高 MOSFET (irfz44n) 的速度,在双极晶体管上实现了双晶体管驱动器。您可以使用另一个双极晶体管对。

  齐纳二极管 (D2, 15V) 用于在 MOSFET 开路时限制其栅极电压 (Vgs),因为电源电压高于 mosfet vgs 电压的最大值。当 MOSFET 闭合时,二极管 FR107 会从铁中移除电源。您可以用另一个二极管替换这个二极管,但必须使用快速恢复二极管。

  冷铁加热元件的电阻很低,有些笔记本电源会拒绝工作。在这种情况下,控制器刚刚重置并且熨斗保持冷态。为了避免这种情况,1000uF 的电容是在 24v 输入之后实现的(参见完整的控制器原理图)。

  校准烙铁

  控制器通过读取 A0 Arduino 引脚上的电压来读取内部单位 (0-1023) 的温度。我们可以方便地使用人类可读的单位,如摄氏度或华氏度。控制器具有允许将内部温度读数转换为人类可读单位的默认参数。但是烙铁可能不同,因此在控制器中实施校准程序。烙铁校准有3个参考点:200、300和400摄氏度。控制器保存这三个参考点的内部读数,并使用它们将温度从内部读数转换为人类可读值。

  选择“校准”。菜单项从设置菜单开始校准过程。从菜单列表中选择所需的校准点(200、300 或 400),然后按下编码器手柄打开熨斗。烙铁开始加热。PID 算法允许在短时间内达到所需的温度。当达到参考点温度时,控制器发出“哔哔”声,表明它已准备好通过外部传感器检查温度。稍等片刻,让温度稳定下来,然后通过外部传感器(热电偶)检查烙铁的实际温度。然后,旋转旋转编码器的手柄,选择熨斗的真实温度。轻轻按下编码器手柄。控制器保存参考点的实际温度。选择下一个参考温度并重复该过程。您可以通过选择所需的参考点再次校准参考温度。您可以多次设置任何参考点。每次,您保存真实温度作为参考点,控制器更新平移公式。这使您可以更准确地校准熨斗。校准完成后,长按旋转编码器手柄。现在控制器为您选择的所有参考温度保存了新值。校准完成后,长按旋转编码器手柄。现在控制器为您选择的所有参考温度保存了新值。校准完成后,长按旋转编码器手柄。现在控制器为您选择的所有参考温度保存了新值。

  自动关机功能

  自动关闭功能已在第二代控制器中实现。这是一个巨大的挑战,因为熨斗手柄没有震动传感器或其他方法来正确验证熨斗现在正在使用或只是放在桌子上。主要想法是使用铁的供电值。在空闲状态下,控制器将功率降低到最小值以保持预设温度。不幸的是,温度和所提供功率的数学离散在空闲状态下不是恒定的,并且可以周期性地偏离。调整 PID 算法参数,我已经稳定了读数并最小化了两个分散。现在处于空闲状态的控制器保持尽可能低的温度离散。熨斗使用量的标准是功率从记录的最小值开始略有增加。该算法经过一段时间的测试,证明可以用于自动关机功能。

  此解决方案不是很可靠,因此如果出现问题,您可以禁用此功能。此外,草图包含用于调试和手动调整 PID 参数的类。

  您可以在您的控制器版本中实现另一个铁手柄,手柄可以有震动传感器或类似的东西,以确保区分空闲状态。

  关于温度转换和不同的传感器类型

  为了以人类可读的单位(摄氏度或华氏度)显示温度 IRON_CFG::tempHuman() 在草图中实现。如上所述,控制器读取内部单元中的熨斗温度(A0 模拟引脚上的电压)。校准程序允许测量三个参考点(200、300 和 400 摄氏度)周围的真实温度。提到的方法 (tempHuman()) 使用线性温度插值,使用两个参考点来降低和提高当前熨斗温度读数。但是,还有另一个未校准的点:环境温度。当熨斗温度低于 200 摄氏度时,控制器将实际温度插值两点:环境温度和 200 度。环境温度在草图的#244 和#245 行定义。这些值可以根据您自己的情况进行调整。如您所见,这些值假设您使用热敏电阻作为铁温传感器(内部单位的环境温度为 350)。当然,如果您使用带有热电偶的熨斗,您可以将此值更改为 0。

  结论

  使用受控烙铁是一种极大的乐趣。它可以快速加热并保持适合情况的温度。



责任编辑:

【免责声明】

1、本文内容、数据、图表等来源于网络引用或其他公开资料,版权归属原作者、原发表出处。若版权所有方对本文的引用持有异议,请联系拍明芯城(marketing@iczoom.com),本方将及时处理。

2、本文的引用仅供读者交流学习使用,不涉及商业目的。

3、本文内容仅代表作者观点,拍明芯城不对内容的准确性、可靠性或完整性提供明示或暗示的保证。读者阅读本文后做出的决定或行为,是基于自主意愿和独立判断做出的,请读者明确相关结果。

4、如需转载本方拥有版权的文章,请联系拍明芯城(marketing@iczoom.com)注明“转载原因”。未经允许私自转载拍明芯城将保留追究其法律责任的权利。

拍明芯城拥有对此声明的最终解释权。

相关资讯

方案推荐
基于MC33771主控芯片的新能源锂电池管理系统解决方案

基于MC33771主控芯片的新能源锂电池管理系统解决方案

AMIC110 32位Sitara ARM MCU开发方案

AMIC110 32位Sitara ARM MCU开发方案

基于AMIC110多协议可编程工业通信处理器的32位Sitara ARM MCU开发方案

基于AMIC110多协议可编程工业通信处理器的32位Sitara ARM MCU开发方案

基于展讯SC9820超低成本LTE芯片平台的儿童智能手表解决方案

基于展讯SC9820超低成本LTE芯片平台的儿童智能手表解决方案

基于TI公司的AM437x双照相机参考设计

基于TI公司的AM437x双照相机参考设计

基于MTK6580芯片的W2智能手表解决方案

基于MTK6580芯片的W2智能手表解决方案