มีใครพอจะเขียน code เพิ่มระยะตวรจจับของ amg8833 thermal sensor ได้บ้างคะ

Sensor AMG8833 ตอนนี้มันตรวจจับได้แค่ระยะใกล้ๆ ค่ะ อยากให้ตรวจจับได้ระยะไกลกว่านี้ พอจะมี code ที่ใช้ตรงนี้ไหมคะ ทิ้ง contact ไว้ได้ค่ะ พอดีอยากปรึกษาเพิ่มเติมค่ะ🥺

ใกล้ๆ นี้ได้กี่เมตรครับ ใน data sheet มันบอกสามารถตรวจจับมนุษย์ได้ไกลถึง 7 เมตร นะครับ

โค้ตตัวอย่าง

#include <Wire.h>
#include <Adafruit_AMG88xx.h>

Adafruit_AMG88xx amg;

void setup() {
    Serial.begin(9600);
    Serial.println(F("AMG88xx test"));

    bool status;
    
    // default settings
    status = amg.begin();
    if (!status) {
        Serial.println("Could not find a valid AMG88xx sensor, check wiring!");
        while (1);
    }
    
    Serial.println("-- Thermistor Test --");

    Serial.println();

    delay(100); // let sensor boot up
}


void loop() { 
    Serial.print("Thermistor Temperature = ");
    Serial.print(amg.readThermistor());
    Serial.println(" *C");
  
    Serial.println();

    //delay a second
    delay(1000);
}

ใช้ code ที่เขาให้มาได้แค่ 30 cm เองค่ะ ในนั้นบอกได้ถึง7เมตร เลยคิดว่าน่าจะต้องเขียน code เพิ่มค่ะ

เอาโค้ตมาดูหน่อยครับ แล้วก็ขอผลลัพธ์ที่เป็นตัวเลข ว่า ไกลกว่า 30 cm มัน คลาดเคลื่อนไปเท่าไหร่ หรือว่ามันได้ค่า อะไร

test8833.pdf (1017.3 KB)
ใช้ code ที่เป็นพิกเซลค่ะ

โค้ตที่ให้ไปใช้ได้ไหม แล้วข้อมูล ผลลัพธ์ที่ถามเป็นอย่างไร

ที่ระยะ 50 cm อ่านได้ค่าเท่าไหร่ครับ คิดเป็น กี่ % ถ้าหากเราวัดเลยจากจุดที่แม่นยำที่สุดก่อน จากนั้นเลยไปทีละ 10 cm ดูว่า error ไปกี่ % เราก็เอาไปเขียน สมการทดแทนความคลาดเคลื่อน เข้าไป ครับ น่าจะได้

ขอชมว่น้องเขียนรายงานผลค่อนข้างดี บอกระยะเป็นช่วงๆ เข้าใจง่าย แต่ขาดสรุปค่าว่าสรุปแล้วอ่านได้เท่าไหร่

amg8833 datasheet

AMG8833-Panasonic.pdf (298.9 KB)

อีกประเด็นคือหาเครื่องมือมาเช็คหน่อยว่าแหล่งจ่ายที่จ่ายให้เซ็นเซอร์เราได้ไฟเท่ากับ 3.3 V ไหม ถ้าไม่ถึงอาจจะทำให้เซ็นเซอร์เราทำงานไม่เต็มประสิทธิภาพได้ครับ

ภาพ

อ่อโอเคค่ะเดี๋ยวจะลองทำดูค่ะ ขอบคุณค่ะ

ใช้ 5v อ่ะค่ะ งั้นเดี๋ยวจะลอง 3.3V ดูค่ะ

ระวังเซ็นเซอร์จะเสียนะครับ มันใช้แค่ 3.3v ดูจาก datasheet

ภาพ

โอเคค่ะ ขอบคุณนะคะ :pray:t2: :pray:t2: