ดาวน์โหลดงานนำเสนอ
งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ
1
การเขียนโปรแกรมรับข้อมูลแบบอนาล็อก
สัญญาณ Analog เป็นสัญญาณที่มีความต่อเนื่องขนาดของสัญญาณเปลี่ยนแปลงตามเวลา ต่างจากสัญญาณแบบ digital ที่มีแค่ 0 กับ 1 เท่านั้น ใน Arduino Uno ของเรานั้นมี PIN สำหรับอ่านค่าสัญญาณ Analog อยู่ทั้งหมด 6 pin ครับ โดยการอ่านค่า analog ของ Arduino จะแปลงค่าที่อ่านได้เป็นค่า digital แบบ 10 บิต หรือมีค่าเป็นจำนวนเต็มคือ 0 ถึง 1023
2
วงจรแบ่งแรงดัน (Voltage Divider)
ในการเรียนรู้เรื่อง Analog เพื่อความเข้าใจและเพื่อทำให้สามารถนำไปประยุกต์ใมช้ได้หลากหลาย เราจำเป็นต้องรู้ในเรื่องของวงจรแบ่งแรงดัน ถ้าเรานำตัวต้านทานสองตัวมาต่ออนุกรมกัน แล้วป้อนแรงดัน (Vin) ให้กับตัวต้านทานสองตัวนั้น ค่าแรงดันที่ออกมาจากวงจรนี้ (Vout) จะมีค่าเป็นตามสมการ Vout = (R2/(R1+R2))xVin
3
อธิบายง่ายๆคือ วงจรแบ่งแรงดัน สามารถแบ่งแรงดันให้ลดน้อยลงได้
โดยแรงดันที่ลดลงจะเป็นสัดส่วนเท่ากับค่าความต้านทานของตัวต้านทาน R2 ต่อค่าความต้านทานรวมทั้งหมด
4
จากตัวอย่างเมื่อเรานำตัวต้านทานที่เท่ากันมาต่ออนุกรมกัน แล้วป้อนแรงดันขนาด 5V ให้กับมัน สัดส่วนของ R2 ที่อยู่ด้านล่างกับ R1+R2 จะเป็น 1 ต่อ 2 พอดี ดังนั้นแรงดันที่ป้อนเข้ามา 5V จะถูกแบ่งให้ลดลงเหลือ 2.5V ตามที่เห็นในภาพด้านบน
5
คำสั่งที่ใช้อ่านค่า Analog
analogRead(PIN); โดยในส่วนของ PIN นั้นคือหมายเลขขาของ Arduino ที่เราต้องการให้มันอ่านค่า Analog ยกตัวอย่างเช่นถ้าเราต้องให้ ขา A0 ของ Arduino Uno อ่านสัญญาณ Analog เราต้องใช้ คำสั่งว่า analogRead(0);
6
คำสั่งที่ใช้อ่านค่า Analog(ต่อ)
Arduino จะทำการอ่านค่า Analog มาให้เรา โดยค่าที่ Return กลับมาจะเป็นจำนวนเต็มตั้งแต่ 0 ไปจนถึง 1023 ดังนั้งการใช้คำสั่ง analogRead จำเป็นต้องมีตัวแปรมาเก็บค่าที่อ่านได้จากฟังก์ชั้นนี้ โดยต้องประกาศตัวแปรเป็นจำนวนเต็ม (Integer) ตามตัวอย่าง int value; value = analogRead(0); เป็นการสั่งให้ Arduino อ่านค่า analog จากขา A0 แล้วนำค่าที่ได้มาเก็บไว้ตัวแปรชนิดจำนวนเต็มที่ชื่อว่า value
7
การเขียนโปรแกรมอ่านค่า Analog (ต่อ)
กำหนดตัวแปรเก็บข้อมูลแบบจำนวนเต็ม กำหนดอัตราเร็วการอ่านพอร์ตอนุกรม อ่าน Analog (pin0) เก็บในตัวแปร value ส่ง value ออกพอร์ตอนุกรม
8
การเขียนโปรแกรมส่งข้อมูล PWM
PWM(Pulse Width Modulation) คือเทคนิดการส่งสัญญาณแบบสวิตซ์ หรือ ส่งค่าดิจิตอล 0-1 โดยให้สัญญาณความถี่คงที่ การควบคุมระยะเวลาสัญญาณสูงและสัญญาณต่ำ ที่ต่างกัน ก็จะทำให้ค่าแรงดันเฉลี่ยของสัญญาณสวิต ต่างกันด้วย
9
สำหรับโมดุล PWM ของ Arduino มีความละเอียด 8 bit หรือ ปรับได้ 255 ระดับ
10
การเขียนโปรแกรมส่งสัญญาณ PWM
กำหนดขาควบคุม กำหนดตัวแปรเก็บข้อมูล กำหนดโหมด ของ Pin ตัวแปรValue = อ่านค่า(A0) ปรับ Value ให้อยู่ใน ช่วง 0-255 ส่งข้อมูลออก LED
11
กิจกรรมที่ทำ 1. เขียนโฟลว์ชาร์ต 2. แนวคิดการออกแบบโปรแกรม
งานนำเสนอที่คล้ายกัน
© 2024 SlidePlayer.in.th Inc.
All rights reserved.