Arduino ตอน8 วิธีใช้ Analog input ใน arduino

2 Jul 2019,
Share: 
Cover image

สวัสดีครับ บทความนี้เราจะมาเรียนรู้ว่า Analog input ใน Arduino มันคืออะไร มีวิธีการใช้งานอย่างไร พร้อมทั้งตัวอย่างการใช้งานเบื้องต้น เรามาเริ่มต้นไปทีละ Step ดังนี้ครับ

Step1: Analog input คืออะไร

Analog input คือ การอ่านค่าของระดับแรงดันไฟฟ้า (Volt) ส่วนมาก Analog input จะนําไปใช้อ่านค่าแรงดันไฟฟ้าจากอุปกรณ์ที่เป็นประเภท Analog sensor ชนิดต่างๆ เช่น LDR, Analog temperature ฯลฯ ซึ่งเราจะไม่สามารถอ่านค่าจาก Sensor ประเภทนี้ในแบบ Digital ได้

Step2: ทําความรู้จักกับ Analog input ใน Arduino

โดยปกติรุ่นทั่วๆไปของ Arduino จะมี Analog input มาให้ใช้งานประมาณ 6 Pin (A0-A6) ในรุ่นอื่นๆอาจจะมีมากกว่านี้ สามารถอ่านข้อมูลของแต่ละรุ่นได้จากทางเว็บของ Arduino ได้เลย

Analog input ของ Arduino จะสามารถอ่านค่าของแรงดันไฟฟ้าได้ที่ความละเอียด 10 bits (จะมีบางรุ่นอ่านได้ 11 bits) หมายความว่าค่าที่อ่านได้จะมีค่าตั้งแต่ 0 ถึง 1023 (1024 ระดับ) ซึ่งค่าที่อ่านได้นี้เราจะนํามาเทียบกับระดับแรงดันไฟฟ้าอ้างอิง ตัวอย่าง ถ้าเราใช้ Arduino รุ่น UNO ในรุ่นนี้จะมีระดับแรงดันไฟฟ้าอ้างอิงที่เป็น Default สําหรับ Analog input คือ 5V (เราสามารถเปลี่ยนแปลงค่านี้ได้) หมายความว่า Arduino board รุ่นนี้สามารถอ่านค่าของแรงดันไฟฟ้าที่ความละเอียด 5V / 1024 = 0.0049 volts หรือ 4.9 mV ต่อ 1 หน่วยนั่นเอง

Step3: สิ่งที่ต้องมีสําหรับการทดลองนี้

  • Arduino board UNO
  • ทานปรับค่าได้ (Volume) 100k

Step4: ต่อวงจร Analog input กับ Arduino

เราจะต่อตัวต้านทานปรับค่าได้ (Volume) เข้ากับ Arduino board ตามรูปนี้ครับ

Image

เมื่อต่อเสร็จแล้วจะได้ประมาณนี้ครับ

Image

Step5: ลงมือ Coding

Coding ตามตัวอย่างนี้ใน Arduino IDE ได้เลยครับ

int analogPin = A3;

int val = 0;

void setup() {
  Serial.begin(9600);
}

void loop() {
  val = analogRead(analogPin);
  Serial.println(val);
}

จาก Code ด้านบน เรากําหนดให้ pin A3 เป็น pin ที่ใช้อ่านค่า Analog เมื่อทุกครั้งที่วน loop ใน function loop() จะอ่านค่าจาก pin A3 มาเก็บไว้ในตัวแปร val แล้วส่งค่านั้นไปแสดงบน Computer (Serial monitor) ผ่านทาง Serial Port

เมื่อ Coding ใน Arduino IDE เรียบร้อย ก็ Compile แล้ว Upload โปรแกรมลงบน Arduino board ได้เลย

ถ้าทุกอย่างเรียบร้อยให้ทดสอบโดยลองหมุนที่ตัวต้านทานปรับค่าได้ตัวนี้ เพื่อปรับค่าความต้านทานให้เปลี่ยนแปลง เมื่อค่าความต้านทานเปลี่ยนแปลงจะส่งผลให้แรงดันไฟฟ้าที่ส่งเข้า pin A3 เปลี่ยนแปลง ค่าที่อ่านได้ก็จะเปลี่ยนไปด้วยเช่นกัน

Image

จะเห็นค่าที่เปลี่ยนแปลงบน Serial monitor ประมาณนี้ครับ

Image

ขอบคุณทุกทานที่อ่าน และ Share บทความนี้ แล้วเจอกันใหม่บทความหน้านะครับ :)

Suggestion blogs

ตัวแปรในภาษาซี

ตัวแปร คือ ชื่อที่สร้างขึ้นเพื่อใช้ในการเก็บข้อมูลต่างๆ โดยการตั้งชื่อตัวแปรนั้นจะต้องตั้งตาม กฎการตั้งชื่อ

Vue.js เริ่มต้น ตอน7 (Class and Style Bindings)

ในตอนที่ 7 นี้จะเกี่ยวกับเรื่อง Class and Style Bindings ใน vue.js ครับ ในการจัดการ Class และ Style เราสามารถใช้ v-bind ได้ เพื่อให้เราสามารถใส่ Logic หรือ ตัวแปรลงไปได้ ทําให้เราสามารถทํา Class  และ Style แบบ Dinamic ได้ง่ายขึ้น

Unicode

Unicode คือ รหัสข้อมูลทางคอมพิวเตอร์ที่ใช้แทนอักขระ สามารถใช้แทนตัวอักษร ตัวเลข และสัญลักษณ์ต่างๆ ได้มากกว่า ASCII ซึ่งแทนอักขระได้แค่ 256 ตัวเท่านั้น(1Byte) Unicode สามารถใช้แทนตัวอักษร จากภาษาทั้งหมดทั่วโลก 24 ภาษา


Copyright © 2019 - 2026 thiti.dev |  v1.60.0 |  Privacy policy | 

Build with ❤️ and Astro.

Github profile   Linkedin profile   Instagram   X profile   Nostr   Youtube channel   Telegram   Email contact   วงแหวนเว็บ