การใช้งานบอร์ด Arduino ควบคู่กับการทดลองวงจรไฟฟ้าและอิเล็กทรอนิกส์#

Keywords: Arduino Classic Boards, Basic Electrical and Electronics Labs


Arduino กับการทดลองวงจรไฟฟ้าและอิเล็กทรอนิกส์#

เนื้อหาในบทความนี้กล่าวถึง แนวทางและตัวอย่างการใช้งานบอร์ดไมโครคอนโทรลเลอร์ Arduino "Classic" ควบคู่ไปกับการเรียนรู้วงจรไฟฟ้าและอิเล็กทรอนิกส์พื้นฐาน

บอร์ด Arduino "Classic" หมายถึง บอร์ดไมโครคอนโทรลเลอร์ที่ใช้ชิปตัวประมวลผล ขนาด 8 บิต ของบริษัท Microchip/Atmel ตระกูล ATmega และมีสถาปัตยกรรมของชุดคำสั่งสำหรับซีพียูที่มีชื่อว่า AVR

ตัวอย่างบอร์ด Arduino "Classic" ได้แก่

  • Arduino Uno
  • Arduino Nano
  • Arduino Leonardo
  • Arduino MEGA 2560

แม้ว่าในปัจจุบัน การใช้งานชิปไมโครคอนโทรลเลอร์ที่มีตัวประมวลผลขนาด 32 บิต ได้รับความนิยมแพร่หลายมากขึ้นตามลำดับ และมีความสามารถในเชิงฮาร์ดแวร์และประสิทธิภาพสูงกว่าชิปในตระกูล ATmega AVR และบอร์ด Arduino ที่ใช้ตัวประมวลผลขนาด 32 บิต ก็ให้เลือกใช้งานอีกหลายรุ่น แต่บอร์ด Arduino ตามที่ได้ยกตัวอย่างไป ก็สามารถนำมาใช้งานได้อยู่

หากย้อนไปก่อนยุค Arduino การทดลองทางไฟฟ้าและวงจรอิเล็กทรอนิกส์ในระดับพื้นฐาน อาจไม่ได้มีเนื้อหาเชื่อมโยงเกี่ยวกับไมโครคอนโทรลเลอร์เท่าใดนัก หรือแยกกันอย่างชัดเจน ในปัจจุบันบอร์ดไมโครคอนโทรลเลอร์มีราคาไม่แพง หาซื้อได้ง่าย การเขียนโปรแกรมก็สะดวกและง่ายกว่าในอดีต ผู้ใช้สามารถเขียนโปรแกรมด้วย Arduino ทั้งการใช้ซอฟต์แวร์ เช่น IDE และมีการกำหนด API สำหรับคำสั่งพื้นฐานในการเขียนโค้ด และไลบรารี่ต่าง ๆ ที่เป็น Open Source อีกจำนวนมาก 

นอกจากการเขียนโปรแกรมด้วยภาษา C/C++ แล้ว ก็ยังมีภาษาอื่นให้เลือกใช้ได้ เช่น MicroPython / CircuitPython เหมาะสำหรับผู้ที่มีพื้นฐานการเขียนโค้ด Python มาบ้าง แต่บอร์ด Arduino Classic ไม่รองรับการใช้งานภาษา Python หากจะใช้ ก็ต้องเลือกใช้บอร์ดไมโครคอนโทลเลอร์ที่มีตัวประมวลผลขนาด 32 บิต เช่น ซีพียูตระกูล Arm Cortex-M Series และบอร์ดอย่างเช่น Espressif ESP32 และ BBC Micro:bit ก็สามารถเขียนโปรแกรมด้วยภาษา Python ได้

ดังนั้นในยุคปัจจุบัน การเรียนรู้และทดลองปฏิบัติเกี่ยวกับอุปกรณ์และวงจรไฟฟ้าและอิเล็กทรอนิกส์ (Basic Circuits & Electronics Lab) ควรควบคู่ไปพร้อม ๆ กับการเรียนรู้ไมโครคอนโทรลเลอร์และการเขียนโค้ด (Microcontroller Programming) และก็มีแนวโน้มเป็นดังที่กล่าวไป

 


การจำแนกหัวข้อในการฝึกปฏิบัติ#

การฝึกปฏิบัติในระดับพื้นฐาน อาจแบ่งได้ตาม 5 หัวข้อหลัก ต่อไปนี้

  1. ทฤษฎีวงจรไฟฟ้า
  2. การใช้งานอุปกรณ์ไฟฟ้า-อิเล็กทรอนิกส์พื้นฐาน
  3. การใช้งานเครื่องมือวัดปริมาณทางไฟฟ้า
  4. การใช้งานซอฟต์แวร์
  5. การเขียนโปรแกรมด้วยภาษาคอมพิวเตอร์

ในแต่ละหัวข้อหลัก ก็มีตัวอย่างหัวข้อย่อย โดยนำเสนอเป็นตัวอย่าง ดังนี้

1) ทฤษฎีวงจรไฟฟ้า เช่น 

  • กฎของโอห์ม (Ohm's Law
  • กฎของเคอร์ชอฟฟ์ (Kirchoff's Laws: KVL / KCL
  • วงจรไฟฟ้ากระแสตรงและวงจรไฟฟ้ากระแสสลับ
  • การสร้างโมเดลจำลองสำหรับวงจร การวิเคราะห์วงจรในโดเมนเวลาและโดเมนความถี่
  • การหาผลตอบสนองเชิงความถี่ของวงจร

2) การใช้งานอุปกรณ์ไฟฟ้า-อิเล็กทรอนิกส์พื้นฐาน เช่น

  • แผงต่อวงจร หรือ เบรดบอร์ด ตัวต้านทาน ตัวต้านทานปรับค่าได้ ตัวเก็บประจุชนิดต่าง ๆ ตัวเหนี่ยวนำไฟฟ้า และหม้อแปลงไฟฟ้า 
  • ไดโอดประเภทต่าง ๆ ไดโอดเปล่งแสง หรือ แอลอีดี 
  • ทรานซิสเตอร์ประเภทรอยต่อคู่ ทรานซิสเตอร์ประเภทมอสเฟต 
  • ไอซี OpAmp ไอซี Timer 555 ไอซีแปลงระดับแรงดันไฟฟ้า และไอซีลอจิกเกตพื้นฐาน
  • ไอซีที่ทำงานด้วยแสง เช่น ไอซีเซ็นเซอร์แสง อุปกรณ์เชื่อมต่อสัญญาณด้วยแสง
  • วงจรอิเล็กทรอนิกส์พื้นฐาน เช่น วงจรเรียงกระแส วงจรขยายสัญญาณไฟฟ้า วงจรควบคุมการจ่ายกระแสให้โหลดไฟฟ้า
  • โมดูลอิเล็กทรอนิกส์ เช่น โมดูลเซนเซอร์ประเภทต่าง ๆ

3) การใช้งานเครื่องมือวัดปริมาณทางไฟฟ้า เช่น

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

4) การใช้งานซอฟต์แวร์ประเภท EDA (Electronics Design Automation) เช่น

  • การวาดผังวงจรไฟฟ้า การออกแบบแผ่นพิมพ์วงจร (PCB) ในเบื้องต้น เช่น
    • Fritzing
    • EasyEDA
    • KiCAD
  • การวางแผนและฝึกต่อวงจรบนเบรดบอร์ดเสมือนจริง เช่น
    • Fritzing
    • Autodesk Tinkercad Circuits
  • การเขียนโค้ดสำหรับบอร์ด Arduino และจำลองการทำงานของวงจร
    • Autodesk Tinkercad Circuits
    • Arduino IDE
    • Wokwi Simulator

5) การเขียนโปรแกรมด้วยภาษาคอมพิวเตอร์ เช่น

  • การเรียนรู้ภาษา C/C++ ในเบื้องต้น เพื่อใช้งานสำหรับบอร์ด Arduino
  • การเขียนโปรแกรมสำหรับบอร์ด Arduino Classic (เช่น Uno และ Nano) โดยใช้คำสั่งของ Arduino API
  • การเขียนโปรแกรม Python สำหรับการวิเคราะห์และแสดงผลข้อมูลจากการทดลอง
  • การใช้งาน AUTODESK Tinkercad Circuit และบอร์ด Arduino Classic เพื่อทดลองเขียนโค้ดและจำลองการทำงานของบอร์ดเสมือนจริง

ตัวอย่างกิจกรรม#

  • การทดลองวงจรแบ่งแรงดันไฟฟ้า (Voltage Divider) ที่ประกอบด้วยตัวต้านทานคงที่ ตัวต้านทานปรับค่าได้ และตัวต้านทานที่มีค่าความต้านทานเปลี่ยนแปลงตามสภาพแวดล้อม เช่น
    • ตัวต้านทานไวแสง (LDR: Light-Dependent Resistor) ที่มีค่าความต้านเปลี่ยนแปลงตามความเข้มแสง หรือ
    • เทอร์มิสเตอร์ (Thermistor) ที่มีค่าความต้านเปลี่ยนแปลงตามอุณหภูมิ หรือ
    • เซนเซอร์ตรวจจับแรงกด (Resistive Force Sensor) เมื่อได้รับแรงกระทำ จะทำให้ค่าความต้านทานเปลี่ยนแปลงได้
    • เซนเซอร์ตรวจจับการโค้งงอ (Resistive Flex Sensor) เมื่อทำเกิดความโค้งงอ จะทำให้ค่าความต้านทานเปลี่ยนแปลงได้
  • การเขียนโปรแกรม Arduino และ Python เพื่อแสดงค่าแรงดันไฟฟ้าที่วัดได้จากวงจรแบ่งแรงดันไฟฟ้าที่มีระดับแรงดันไฟฟ้าเปลี่ยนแปลงได้ โดยใช้วงจร ADC (Analog Digital Converter) สำหรับสัญญาณแอนะล็อก และได้ข้อมูลในรูปแบบของ Time-Series Data
  • การหาค่าความจุของตัวเก็บประจุไฟฟ้า โดยใช้วงจร RC โดยการจับเวลาเมื่อมีการอัดหรือคายประจุไฟฟ้า
  • การทดลองวงจรเรียงกระแส โดยใช้ไดโอดและการแปลงและลดระดับแรงดันไฟฟ้า AC ด้วยหม้อแปลงไฟฟ้า
  • การลดระดับแรงดันไฟฟ้า DC และควบคุมให้คงที่ โดยใช้ไอซีแปลงแรงดันประเภท Linear Voltage Regulator
  • การทดลองวงจรทรานซิสเตอร์ หรือ รีเลย์ เป็นสวิตช์สำหรับโหลดไฟฟ้า
  • การทดลองวงจรหน่วงเวลาด้วยไอซี Timer 555 สำหรับการเปิด-ปิดไฟส่องสว่าง
  • การทดลองวงจรเปิด-ปิดไฟสองสว่างอัตโนมัติตามสภาพแสง
  • การทดลองวงจรเซนเซอร์ตรวจจับการเคลื่อนไหว และเปิด-ปิดไฟส่องสว่างอัตโนมัติ
  • การทดลองวงจรแจ้งเตือนระยะห่างวัตถุ ด้วยโมดูลเซนเซอร์เสียงอัลตราโซนิก หรือ เซนเซอร์แสงอินฟราเรด
  • การทดลองวงจรสร้างสัญญาณพัลส์ที่เปลี่ยนแปลงค่าได้ตามค่าตัวเก็บประจุไฟฟ้าของวงจร

 


กล่าวสรุป#

บทความนี้ได้กล่าวถึง ความสำคัญในการเรียนรู้การใช้งานบอร์ดไมโครคอนโทรลเลอร์ Arduino และการเขียนโปรแกรม ควบคู่ไปกับการทดลองปฏิบัติเกี่ยวกับวงจรไฟฟ้าและอิเล็กทรอนิกส์ในเบื้องต้น

บทความที่เกี่ยวข้อง

 


This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

Created: 2023-12-05 | Last Updated: 2023-12-08