Skip to content

Latest commit

 

History

History

LDR_read_light

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 

ตัวอย่างโค้ดอ่านค่าความเข้มของแสง

เซ็นเซอร์วัดความเข้มของแสดงที่บอร์ด KidBright32 ใช้ คือ LDR ซึ่งอุปกรณ์ทำงานโดยเปลี่ยนค่าความต้านทานไปตามความเข้มของแสงที่ตกกระทบบนหน้าเซ็นเซอร์ เนื่องจากไมโครคอนโทรลเลอร์ไม่สามารถอ่านค่าความต้านทานได้โดยตรง บนบอร์ดจึงนำมาต่อกับตัวต้านทานให้เป็นวงรแบ่งแรงดัน เมื่อความเข้มของแสงที่วัดได้เปลี่ยนไป แรงดันไฟฟ้าที่วัดได้จากวงจรแบ่งแรงดันเทียบกราวด์จะเปลี่ยนไปด้วย เมื่อ

  • แสงมาก แรงดันเอาต์พุตต่ำ ทำให้อ่านค่าได้ต่ำ
  • แสงน้อย แรงดันเอาต์พุตสูง ทำให้อ่านค่าได้สูง

แรงดันเอาต์พุตจากวงจรแบ่งแรงดันต่อเข้ากับขา GPIO36 การอ่านค่าแรงดันทำได้โดยใช้ฟังก์ชั่น analogRead() อ่านออกมา ซึ่งหากต้องการค่าแรงดัน ต้องนำค่าจากฟังก์ชั่นนี้ไปคำนวณต่อ

เนื่องจาก KidBrgiht IDE อ่านค่าความเข้มของแสงออกมาในรูปของ % โดยมีค่า 0 ถึง 100 แต่ฟังก์ชั่นที่ใช้อ่านค่าแรงดัน analogRead() ให้ค่า 0 ถึง 1023 จึงต้องมีการแปลงค่าร่วมด้วย

การใช้งาน

เปิดไฟล์ LDR_read_light.ino ด้วยโปรแกรม Arduino IDE แล้วอัพโหลดลงบอร์ด เปิด Serial Monitor ปรับ Band ไปที่ 115200 ค่าความเข้มแสงที่วัดได้จะแสดงทุก ๆ ครึ่งวินาที