八九寺真宵 2024-04-26 09:28 采纳率: 100%
浏览 2
已结题

要用NTC测温,根据3S内温升去预判温度

最近做的一个项目,用一个铜包裹着NTC去测温,要求温度在-20度到200度,
但是NTC接触到物体后实际上升温很慢,200度的电烙铁加热好久也只能让NTC升到70度左右,
现在那边不满意,要求更改,现在是温度检测3S然后根据温度上升的速度去预测最终能到达多少度
但是我并不是很清楚这个该怎么样去操作

  • 写回答

3条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-04-26 09:28
    关注

    引自免费微信小程序:皆我百晓生

    为了实现基于3秒内温度上升速度预测最终温度的功能,你需要进行以下几个步骤:

    1. 数据采集

      • 在不同已知温度条件下,记录NTC电阻值随时间变化的数据。
      • 为不同的目标温度,至少准备一组完整的数据,包括初始温度、3秒内的温度变化以及最终稳定温度。
    2. 模型建立

      • 基于数据点,可以考虑使用多项式拟合或其他数学模型(如指数函数、对数函数等)来描述温度上升曲线。
      • 模型的形式取决于实际数据的趋势,可以通过尝试不同的函数类型并比较其R²得分来选择最佳模型。
    3. 实时预测

      • 当你在3秒内测量到NTC的温度变化时,将这些数据代入之前建立的模型中,计算出预计达到的最终温度。

    下面是一个简单的Python示例,展示了如何使用线性回归模型来进行预测。注意,这只是一个基础的示例,实际应用可能需要更复杂的模型。

    import numpy as np
    from sklearn.linear_model import LinearRegression
    
    # 假设我们有以下数据,其中x是时间(秒),y是温度(摄氏度)
    data = {
        50: [(0, 20), (1, 25), (2, 30), (3, 35)],
        100: [(0, 40), (1, 50), (2, 60), (3, 70)],
        # ... 对于其他目标温度添加更多数据点
    }
    
    def fit_and_predict(initial_temp, temp_change):
        # 根据初始温度找到对应的数据组
        target_temp_data = data[initial_temp]
        
        # 提取时间与温度变化数据
        x = np.array([t for t, _ in target_temp_data])
        y = np.array([temp for _, temp in target_temp_data])
    
        # 使用线性回归拟合数据
        model = LinearRegression()
        model.fit(x.reshape(-1, 1), y)
    
        # 预测3秒后的温度
        predicted_final_temp = model.predict([[3]])
        return predicted_final_temp[0]
    
    # 示例:预测初始温度为50度,3秒内温度升高了10度的情况
    predicted_final_temp = fit_and_predict(50, 10)
    print(f"预测最终温度: {predicted_final_temp:.2f}℃")
    

    请注意,这个示例仅适用于线性关系。如果你发现温度上升并不完全遵循线性规律,可能需要使用更复杂的模型,例如多项式回归、指数函数或其他非线性模型。对于这种情况,你可能需要收集更多的实验数据,并尝试不同的模型来找到最合适的预测方法。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 5月4日
  • 已采纳回答 4月26日
  • 创建了问题 4月26日

悬赏问题

  • ¥15 12864只亮屏 不显示汉字
  • ¥20 三极管1000倍放大电路
  • ¥15 vscode报错如何解决
  • ¥15 前端vue CryptoJS Aes CBC加密后端java解密
  • ¥15 python随机森林对两个excel表格读取,shap报错
  • ¥15 基于STM32心率血氧监测(OLED显示)相关代码运行成功后烧录成功OLED显示屏不显示的原因是什么
  • ¥100 X轴为分离变量(因子变量),如何控制X轴每个分类变量的长度。
  • ¥30 求给定范围的全体素数p的(p-2)/p的连乘积值
  • ¥15 VFP如何使用阿里TTS实现文字转语音?
  • ¥100 需要跳转番茄畅听app的adb命令