Arduino Uno คืออะไร? อธิบายอย่างละเอียด
Arduino Uno เป็นบอร์ดไมโครคอนโทรลเลอร์ที่ได้รับความนิยมอย่างมากในหมู่ผู้เริ่มต้นและผู้ที่สนใจพัฒนาโปรเจ็กต์อิเล็กทรอนิกส์ต่างๆ คำว่า "Uno"
ในภาษาอิตาเลียนหมายถึง "หนึ่ง" ซึ่งสื่อถึงความเป็นบอร์ดรุ่นพื้นฐานและเป็นจุดเริ่มต้นที่ดีสำหรับการเรียนรู้ไมโครคอนโทรลเลอร์
บอร์ด Arduino Uno ทำอะไรได้บ้าง?
ควบคุมอุปกรณ์อิเล็กทรอนิกส์ต่างๆ: เช่น LED, มอเตอร์, เซ็นเซอร์, รีเลย์ และอื่นๆ
อ่านค่าจากเซ็นเซอร์: เช่น เซ็นเซอร์วัดอุณหภูมิ, เซ็นเซอร์วัดแสง, เซ็นเซอร์วัดความชื้น
สร้างอินเทอร์เฟซ: เช่น ปุ่มกด, จอ LCD, และอื่นๆ
เชื่อมต่อกับคอมพิวเตอร์: เพื่ออัปโหลดโปรแกรมและรับข้อมูล
สร้างโปรเจ็กต์อัตโนมัติ: เช่น ระบบควบคุมบ้านอัจฉริยะ, หุ่นยนต์, และอื่นๆ
ทำไม Arduino Uno ถึงได้รับความนิยม?
ใช้งานง่าย: มีภาษาโปรแกรมที่เข้าใจง่าย (ภาษา C++) และมีชุมชนผู้ใช้ขนาดใหญ่ที่พร้อมให้ความช่วยเหลือ
ราคาไม่แพง: เหมาะสำหรับผู้เริ่มต้นที่ต้องการทดลองและเรียนรู้
มีส่วนประกอบที่หลากหลาย: สามารถเชื่อมต่อกับอุปกรณ์อิเล็กทรอนิกส์ต่างๆ ได้มากมาย
โอเพนซอร์ส: สามารถเข้าถึงรหัสโปรแกรมและออกแบบบอร์ดได้อย่างอิสระ
มีเอกสารและตัวอย่างโปรแกรมมากมาย: ช่วยให้ผู้ใช้สามารถเรียนรู้และพัฒนาโปรเจ็กต์ได้อย่างรวดเร็ว
ส่วนประกอบหลักของ Arduino Uno
ไมโครคอนโทรลเลอร์ ATmega328P: เป็นหน่วยประมวลผลหลักที่ควบคุมการทำงานทั้งหมดของบอร์ด
พินดิจิตอล: ใช้สำหรับรับสัญญาณจากปุ่มกด, เซ็นเซอร์ และส่งสัญญาณไปควบคุมอุปกรณ์ต่างๆ
พินอนาล็อก: ใช้สำหรับอ่านค่าจากเซ็นเซอร์ที่ให้ค่าแบบต่อเนื่อง เช่น เซ็นเซอร์วัดแสง
พอร์ต USB: ใช้สำหรับเชื่อมต่อกับคอมพิวเตอร์เพื่ออัปโหลดโปรแกรม
ช่องจ่ายไฟ: ใช้สำหรับจ่ายไฟให้กับบอร์ด
การเริ่มต้นใช้งาน Arduino Uno
ติดตั้ง Arduino IDE: เป็นโปรแกรมที่ใช้สำหรับเขียนโปรแกรมและอัปโหลดไปยังบอร์ด Arduino
เชื่อมต่อบอร์ด Arduino กับคอมพิวเตอร์: ใช้สาย USB
เขียนโปรแกรม: ภาษา C++ ที่ใช้กับ Arduino มีโครงสร้างที่เรียบง่ายและเข้าใจง่าย
อัปโหลดโปรแกรม: คลิกปุ่ม Upload ใน Arduino IDE เพื่ออัปโหลดโปรแกรมไปยังบอร์ด
โปรเจ็กต์ตัวอย่างที่สามารถทำได้กับ Arduino Uno
ควบคุมไฟ LED ให้กระพริบ: โปรเจ็กต์พื้นฐานที่ใช้เรียนรู้การควบคุมพินดิจิตอล
อ่านค่าจากเซ็นเซอร์วัดอุณหภูมิ: แสดงค่าอุณหภูมิบนจอ LCD หรือส่งไปยังคอมพิวเตอร์
สร้างรถบังคับวิทยุ: ควบคุมมอเตอร์ของรถผ่านรีโมทคอนโทรล
สร้างระบบควบคุมแสงสว่างอัตโนมัติ: เปิด-ปิดไฟตามระดับแสง
สร้างเครื่องตรวจจับการเคลื่อนไหว: ใช้เซ็นเซอร์ตรวจจับการเคลื่อนไหวและส่งสัญญาณเตือน
สรุป
Arduino Uno เป็นบอร์ดไมโครคอนโทรลเลอร์ที่ใช้งานง่ายและมีประสิทธิภาพ
เหมาะสำหรับผู้ที่ต้องการเริ่มต้นเรียนรู้การเขียนโปรแกรมและสร้างโปรเจ็กต์อิเล็กทรอนิกส์
ด้วยความสามารถที่หลากหลายและชุมชนผู้ใช้ที่แข็งแกร่ง Arduino Uno จึงเป็นเครื่องมือที่น่าสนใจสำหรับผู้ที่ต้องการสร้างสรรค์สิ่งใหม่ ๆ
อุปกรณ์ ที่ต้องใช้
1.Arduino Ide 2.3.2 หรือเวอร์ชั่นอื่น
2.โมดูล Bluetooth HC-05
3.สาย Jumper
4.แหล่งจ่ายไฟ (ถ้าไม่ใช้จาก Arduino)
2.Check board USB Win10 Port
Press Windows key + R to open the Run dialog.
Type "devmgmt.msc" and press Enter to open the Device Manager.
3. Install Driver
https://sparks.gogo.co.nz/ch340.html
4. การเชื่อมต่อ:
เชื่อมต่อพินของ HC-05 เข้ากับ Arduino UNO:
VCC ของ HC-05 → 5V ของ Arduino UNO
GND ของ HC-05 → GND ของ Arduino UNO
TX ของ HC-05 → RX (2) ของ Arduino (หรือต่อผ่าน SoftwareSerial ใช้พินอื่น)
RX ของ HC-05 → TX (3) ของ Arduino (ใช้ตัวต้านทานแบ่งแรงดันถ้าจำเป็น 5V → 3.3V)
EN ของ HC-05 → 3.3V ของ Arduino
5.การเปลี่ยนโหมด BT to AT Command
AT Command ไฟกระพริบ 1 ครั้งเว้น 2 วินาที
BT ไฟกระพริบ 2 ครั้งเว้น 1 วินาที
เข้า AT Mode กดปุ่มรีเซ็ต HC-05 ค้าง ดึงปลั๊กออก แล้วกดปุ่มรีเซ็ตค้าง เสียบปลั๊ก
เข้า BT Mode กดปุ่มรีเซ็ต HC-05 ค้าง ดึงปลั๊กออก เสียบปลั๊ก
6. Test Code Arduino UNU R3
//Test Code
void setup() {
pinMode(13, OUTPUT);
}
void loop() {
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
delay(1000);
}
7. Test Code Arduino UNU R3 with HC-05
#include <SoftwareSerial.h>
SoftwareSerial BTserial(2, 3); // TXD ,RXD
// int = -32768 to 0,+32767 (2 ยกกำลัง 15 )
// 00000000 - 01111111 = 0->+32767
// 10000000 - 11111111 = -32768
const long baudRate = 38400;
char c=' ';
boolean NL = true;
void setup()
{
Serial.begin(9600);
Serial.print("Sketch: "); Serial.println(__FILE__);
Serial.print("Uploaded: "); Serial.println(__DATE__);
Serial.println(" ");
BTserial.begin(baudRate);
Serial.print("BTserial started at "); Serial.println(baudRate);
Serial.println(" ");
}
void loop()
{
// Read from the Bluetooth module and send to the Arduino Serial Monitor
if (BTserial.available())
{
c = BTserial.read();
Serial.write(c);
}
// Read from the Serial Monitor and send to the Bluetooth module
if (Serial.available())
{
c = Serial.read();
BTserial.write(c);
// Echo the user input to the main window. The ">" character indicates the user entered text.
if (NL) { Serial.print(">"); NL = false; }
Serial.write(c);
if (c==10) { NL = true; }
}
}
อ้างอิง แหล่งที่มา
Note:
https://agriculture-lalur.blogspot.com/2024/08/arduino-uno-link-hc-05-module.html
Diagram Arduino UNO R3
https://store-usa.arduino.cc/products/arduino-uno-rev3
Install Driver
https://sparks.gogo.co.nz/ch340.html
AT Command
https://www.martyncurrey.com/arduino-with-hc-05-bluetooth-module-at-mode/
หมายเหตุ
RAM (Random Access Memory) หน่วยความจำประเภทนี้จะมี แบตเตอรี่ เล็กๆ ต่อไว้
เพื่อใช้เลี้ยงข้อมูลเมื่อเกิดไฟดับ การอ่านและเขียนโปรแกรมลงใน RAM ทำได้ง่ายมาก
จึงเหมาะกับการใช้งานในระยะทดลองเครื่องที่มีการเปลี่ยนแปลงแก้ไขโปรแกรมบ่อยๆ
EPROM (Erasable Programmable Read Only Memory)
หน่วยความจำชนิด EPROM นี้จะต้องใช้เครื่องมือพิเศษในการเขียนโปรแกรม
การลบโปรแกรมทำได้โดยใช้แสงอัลตราไวโอเลตหรือตากแดดร้อนๆ นาน ๆ
มีข้อดีตรงที่โปรแกรมจะไม่สูญหายแม้ไฟดับ จึงเหมาะกับการใช้งานที่ไม่ต้องเปลี่ยนโปรแกรม
EEPROM (Electrical Erasable Programmable Read Only Memory)
หน่วยความจำชนิดนี้ไม่ต้องใช้เครื่องมือพิเศษในการเขียน และลบโปรแกรม โดยใช้วิธีการทางไฟฟ้าเหมือนกับ RAM
นอกจากนั้นก็ไม่จำเป็นต้องมีแบตเตอรี่สำรองไฟเมื่อไฟดับ ราคาจะแพงกว่า
แต่จะรวมคุณสมบัติที่ดีของทั้ง RAM และ EPROM เอาไว้ด้วยกัน
Contact:
https://www.facebook.com/chaiyutpong
ความคิดเห็น
แสดงความคิดเห็น