求助 關於MLX90614 紅外線溫度感測器+Arduino 程序問題~~有大神可以幫忙健檢程式嗎?

求助
關於MLX90614 紅外線溫度感測器+Arduino 程序問題,小弟是Arduino心心手
利用MLX90614 紅外線溫度感測器檢測物件溫度,若溫度大於40度會發出訊號傳給繼電器模塊
問題在於檢測的過程中繼電器會不時的ON/OFF 一直跳阿跳阿,就是檢測到的溫度會一直介於觸發之間!
有辦法讓它不要一直ON/OFF嗎?
還請各位大神健檢一下小弟的程序,感謝

//////////////////////////////////////////////////////////////////////////////

#include <Wire.h>
#include "MLX90614.h"

esl::MLX90614 mlx90614;

void setup() {
Serial.begin(115200);
while (!Serial) ; // for Leonardo or Pro Micro
Wire.begin();
mlx90614.init( );
Serial.print( "Address = 0x" );
Serial.println( mlx90614.readSlaveAddress(), HEX );
pinMode(13, OUTPUT);
pinMode(12, OUTPUT);
}

void loop() {
float f;
Serial.print( "Object1 temp. (To): " );
f = mlx90614.readObjectTemperature(); // object1 temperature
if ( !mlx90614.is_crc_error() )
{
Serial.println(f);
}
if (f>=40 )
{
digitalWrite(13, HIGH);
digitalWrite(12, LOW);
}
else if (f<=39 )
{
digitalWrite(13, LOW);
digitalWrite(12, HIGH);
}
delay(1000);
}
///////////////////////////////////////////////////////////////////////////
多一度的容許誤差範圍是不是就解決了?
實務上,溫控除非是PID控制,或是被測體是不易升降溫的物質
否則大多不會用這麼狹窄的溫度設定範圍的。
看檢測的物體以及SENSER的信號穩定度,來決定範圍比較合適
建議可以大於45度動作,小於39斷開,不適合再慢慢調整
另外檢測時間拉長也是可行的
有試過將檢測溫度設定提高,但是情況相同....
我會將溫度檢測的區間在設大一點不然就是檢測延遲時間由1000改成3000試試看,先感謝snake52023的指點
請問您是要做溫控吧?
若sensor的讀值本來就會漂或許多次平均後再作動會較穩定
是的~想利用紅外線溫度感測器來做溫控
現在程式和線路重新修改,等上機測試
文章分享
評分
評分
複製連結

今日熱門文章 網友點擊推薦!