
Analog Read Serial รับค่าอนาล๊อก
สวัสดีครับ!! ในบทเรียนนี้จะเป็นการจำลองและเรียนรู้การรับค่า Analog จากนั้นแสดงผลออกทาง Serial Monitor ไปดูอุปกรณ์ที่ต้องใช้กันครับ

1. บอร์ด Arduino Uno R3 หรือ Arduino Mega 2560 R3 (สาย USB ด้วยนะอย่าลืม)
2. Breadboard หรือ บอร์ดทดลอง (โฟโต้บอร์ด ที่เราเรียกกันจนติดปากนั้นแหละ)
3. สายจั๊ม ผู้-ผู้
4. หลอด LED ขนาด 5 มิลลิเมตร (สีใดก็ได้ตามสะดวกจร้า)
5. ตัวต้านทานปรับค่าได้ 10 กิโลโอมห์
วิธีเชื่อมต่ออุปกรณ์
เชื่อมต่อสายไฟสามสายจากตัวต้านทานปรับค่าได้เข้ากับบอร์ด Arduino เชื่อมต่อขาทางซ้านไปที่ไฟ 5 โวลต์ เชื่อมต่อขาทางขวาไปที่ GND และขาตรงกลางไปยังอะนาล็อก A0
หลักการทำงาน
จะเป็นการแสดงการอ่านค่าอินพุตแบบอนาล๊อกจากตัวต้านทานปรับค่าได้ โดยตัวต้านทานปรับค่าได้เป็นอุปกรณ์แบบกลไกง่ายๆที่ทำให้เกิดความต้านทานที่แตกต่างกันเมื่อหมุน และเมื่อมีแรงดันไฟฟ้าผ่านและเข้าไปยังอินพุตแบบอนาล๊อกของ Arduino เราสามารถวัดปริมาณความต้านทานที่สร้างโดยตัวต้านทานปรับค่าได้เป็นค่าอนาล๊อก เอาหล่ะครับ ไปดูอุปกรณ์ที่ต้องใชค้ในการทดลองกัน
โค๊ดโปรแกรม
/*
* Coding By : Arduino-MakerZone > www.arduino-makerzone.com
* Sample Coding : Analog Read Serial
*/
void setup() {
Serial.begin(9600); // เริ่มต้นการสื่อสารแบบอนุกรมที่ 9600 บิตต่อวินาที
}
void loop() {
int sensorValue = analogRead(A0); // อ่านข้อมูลขาเข้าแบบอนาล็อกที่ขา A0
Serial.println(sensorValue); // พิมพ์ค่าที่อ่านได้
delay(1); // หน่วงเวลาระหว่างการอ่านเพื่อความเสถียน
}
จากการทดลองที่ 1 ทำการหมุนตัวต้านทานปรับค่าได้ไปในทิศทางทวนเข็มนาฬิกาจนสุด ผลปรากฏว่าค่าที่ได้อยู่ในช่วง 1021 ถึง 1023
จากการทดลองที่ 2 ทำการหมุนตัวต้านทานปรับค่าได้ไปในทิศทางทวนเข็มนาฬิกาจนสุด ผลปรากฏว่าค่าที่ได้อยู่ในช่วง 509 ถึง 511
จากการทดลองที่ 3 ทำการหมุนตัวต้านทานปรับค่าได้ไปในทิศทางทวนเข็มนาฬิกาจนสุด ผลปรากฏว่าค่าที่ได้คือ 0
สรุป
จะเห็นได้ว่าค่าอนาล๊อกจะอยู่ในช่วง 0 ถึง 1023 ซึ่งสามารถนำไปประยุกต์ใช้กับเซนเซอร์ที่ส่งค่ามาในรูปแบบอนาล๊อก แต่ถ้าหากจำเป็นต้องการค่าเพื่อใช้ในการประมวลผลต่อเช่น 0 ถึง 100 เราจำเป็นต้องนำค่าที่ได้จากอนาล๊อกมาเข้าสมการเพื่อแปลงค่าอีกที (ไว้เดี๋ยวจะมาสอนทำนะครับ)