คู่มือการใช้งานชุดเซนเซอร์ 37-in-1 ร่วมกับ runlinc : Photoresistor

เอกสารนี้แนะนำวิธีการเชื่อมต่อและเขียนโค้ดควบคุมเซนเซอร์ 37 ชนิด ผ่านแพลตฟอร์ม runlinc โดยใช้บอร์ด ESP32 (E32W)

1.ชื่อ: Photoresistor (LDR - Light Dependent Resistor)
ชื่อเรียกทั่วไป: ตัวต้านทานแสง

1.ชื่อ: Photoresistor (LDR - Light Dependent Resistor)

 

 

หน้าที่

Photoresistor เป็นอุปกรณ์อิเล็กทรอนิกส์ที่มีคุณสมบัติพิเศษคือความต้านทานไฟฟ้าจะเปลี่ยนแปลงไปตามปริมาณแสงที่ตกกระทบ ยิ่งมีแสงมาก ความต้านทานก็จะยิ่งต่ำลง และยิ่งมีแสงน้อย ความต้านทานก็จะยิ่งสูงขึ้น คุณสมบัตินี้ทำให้ Photoresistor เหมาะสำหรับการนำไปใช้ในวงจรที่ต้องการตรวจจับระดับแสงสว่าง เช่น การเปิด-ปิดไฟอัตโนมัติเมื่อแสงน้อย, การวัดความสว่างของสภาพแวดล้อม, หรือการสร้างระบบเตือนภัยที่ทำงานเมื่อมีแสงส่องเข้ามา

การเชื่อมต่อ

Flame Sensor Pin

E32W Pin

คำอธิบาย

- (GND)

GND

กราวด์

+ / VCC

3V3

ไฟเลี้ยง 3.3V

S (Signal)

IO32

สัญญาณความเข้นข้นแสง (Analog)

การตั้งค่าใน runlinc:

  • IO32: ANALOG_IN (Name: LightSensor)

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

HTML:

<h1>เซนเซอร์วัดแสง </h1>

<p> ระดับความสว่าง: <span id="lightValue">--</span></p>

JavaScript:

function updateLightValue() {

  const lightSensorValue = analogIn(LightSensor); // อ่านค่าจาก Photoresistor

  document.getElementById('lightValue').innerText = lightSensorValue;

}

 

 

JavaScript Loop:

updateLightValue(); // เรียกฟังก์ชันเพื่ออัปเดตค่าทันทีเมื่อเริ่มทำงาน

await mSec(500); // รอ 500 มิลลิวินาที ก่อนจะวนลูปใหม่

คำอธิบายโค้ด:

HTML: สร้างหัวข้อ "Photoresistor Value" และย่อหน้าสำหรับแสดงค่า "Light Level" โดยใช้ <span> ที่มี id="lightValue" เพื่อให้ JavaScript สามารถอัปเดตค่าได้

JavaScript: updateLightValue(): ฟังก์ชันนี้จะเรียกใช้ analogIn(LightSensor) เพื่ออ่านค่าจาก Photoresistor ที่เชื่อมต่อกับ Pin ที่ตั้งชื่อว่า LightSensor ค่าที่อ่านได้ (ซึ่งจะเป็นตัวเลขระหว่าง 0-255) จะถูกนำไปแสดงผลที่ <span> ที่มี id="lightValue"

JavaScript Loop: updateLightValue();: เรียกฟังก์ชัน updateLightValue() เพื่ออ่านและแสดงค่าแสงทันทีที่โปรแกรมเริ่มทำงาน await mSec(500);: หน่วงเวลา 500 มิลลิวินาที (ครึ่งวินาที) ก่อนที่จะวนกลับไปทำซ้ำใน JavaScript Loop เพื่ออ่านค่าแสงอีกครั้ง ทำให้ค่าที่แสดงบนหน้าเว็บมีการอัปเดตเป็นระยะๆ

ผลลัพธ์การใช้งาน

หน้าเว็บจะแสดงตัวเลข 0-500 ตามความเข้มข้นของแสง

 

 

 

Tags

Rating

No votes yet