การเขียนโปรแกรมควบคม Arduino ด้วยมือถือ Android

ArduinoDroid และ Arduino Studio - Arduino IDE ช่วยให้คุณเขียน คอมไพล์ และอัปโหลดสเก็ตช์ Arduino จากโทรศัพท์หรือแท็บเล็ต Android ของคุณได้ แล้วโดยไม่จำเป็นต้องมีคอมพิวเตอร์ หรือโน๊ตบุ๊ค คุณก็สามารถพัฒนาปรับปรุงโค้ดการควบคุมบอร์ด Arduino ได้ โดยต้องใช้สาย OTG เพื่อเชื่อมต่ออุปกรณ์หรือบอร์ด Arduino ก็สามารถอัพโหลดไฟล์ควบคุมลงสู่บอร์ด Arduino ได้เช่นกัน

Arduino IDE Screenshot
ภาพจาก Arduino IDE © Arduino.cc

ขั้นตอนการใช้งาน

1.ติดตั้งโปรแกรม ArduinoDroid

ให้ทำการติดตั้งแอพพลิเคชัน ArduinoDroid บนโทรศัพท์มือถือที่ใช้ระบบปฏิบัติการแอนด์ดรอยด์ (Android OS) โดยเข้าไปยัง Play Store แล้วค้นหา ArduinoDroid

Arduino IDE Screenshot
ภาพจาก Android

แล้วทำการติดตั้ง

Arduino IDE Screenshot
ภาพจาก Android

จากนั้นจะเข้าสู่กระบวนการติดตั้ง ให้แตะปุ่ม Next ไปเรื่อย ๆ เมื่อขึ้นหน้าใหม่

Arduino IDE Screenshot
ภาพจาก Arduino IDE © Arduino.cc
Arduino IDE Screenshot
ภาพจาก Arduino IDE © Arduino.cc
Arduino IDE Screenshot
ภาพจาก Arduino IDE © Arduino.cc
Arduino IDE Screenshot
ภาพจาก Arduino IDE © Arduino.cc

จนกระทั่งปรากฏหน้าลักษณะนี้ ก็จะพร้อมสำหรับการเขียนโค้ดด้วยภาษา C++

Arduino IDE Screenshot
ภาพจาก Arduino IDE © Arduino.cc

เริ่มต้นการเขียนโค้ด

ตอนนี้จะเป็นการเริ่มต้นทดลองเขียนโค้ดบน Arduino Android ด้วยภาษา C++ เพื่อทดลองขับหลอด LED ที่ต่ออยู่กับชา GPIO2 ดังรูป ให้ให้สว่างติดและดับเป๋นไฟกระพริบติดและดับทุก ๆ 1 วินาทีไม่รู้จบ ดังตัวอย่างในโค้ด



void setup() {
  pinMode(2,OUTPUT);
  Serial.begin(9600);         
  Serial.println("First message"); 
}

void loop() {
  digitalWrite(2,HIGH);
  delay(1000);
  digitalWrite(2,LOW);
  delay(1000);
  Serial.println("Test");  
}

Thinkercad
ภาพจาก Thinkercad

ใช้สาย OTG เพื่อเชื่อมต่อกับบอร์ด Arduino Uno R3 เพื่อเป็นสายในการอัพโหลดไฟล์โปรแกรมจากโทรศัพท์มือถือ และเป็นแหล่งจ่ายไฟเลี้ยงแรงดัน 5 โวลท์แก่บอร์ด

myself
อะแดปเตอร์ OTG สำหรับการเชื่อมต่อระหว่างสายอัพโหลด Arduino Uno USB to Android

myself

แตะที่ 3จุดเพื่อเข้าสู่การตั้งค่า Setting เพื่อการเลือกบอร์ดที่จะใช้งานร่วมกับโทรศัพท์มือถือ โดยมีบอร์ดคอนโทรลเลอร์ที่สามารถใช้่งานได้เช่น บอร์ด Arduino Uno, ESP32, ESP8266 เป็นต้น

Arduino IDE Screenshot
ภาพจาก Arduino IDE © Arduino.cc

แตะ Setting เพื่อตั้งค่า และเลือกชนิดบอร์ด Board Type

Arduino IDE Screenshot
ภาพจาก Arduino IDE © Arduino.cc

เลือกชนิดบอร์ด Arduino

Arduino IDE Screenshot
ภาพจาก Arduino IDE © Arduino.cc

เลือกชนิดบอร์ด Arduino Uno

Arduino IDE Screenshot
ภาพจาก Arduino IDE © Arduino.cc

กลับมาหน้าหลัก เมื่อเขียนโค้ดเสร็จเรียบร้อย ให้ทำการ Compie เพื่อตรวจสอบโค้ดที่เขียนถูกต้องหรือไม่ ด้วยการแตะปุ่ม Compile ซึ่งเป็นรูปสายฟ้า

Arduino IDE Screenshot
ภาพจาก Arduino IDE © Arduino.cc

หากการคอมไพล์ผ่านไม่มีข้อผิดพลาดหรือ Error ให้อัพโหลดโค้ดโปรแกรมลงสู่บอร์ด Arduino Uno ด้วยการแตะ ปุ่มอัพโหลด

Arduino IDE Screenshot
ภาพจาก Arduino IDE © Arduino.cc

หากเกิด Pop up แจ้งเตือน ให้เลือก Later

Arduino IDE Screenshot
ภาพจาก Arduino IDE © Arduino.cc

เมื่ออัปโหลดโค้ดโปรแกรมเสร็จสิ้น จะเห็นหลอด LED ติดกระพริบ ติดและดับตามเวลาที่เขียนไว้ในโค้ด

myselt

การใช้ Serial Monitor

การใช้ Serial Monitor เพื่อสื่อสารแบบอนุกรมกับโทรศัพท์มือถือกับบอร์ดไมโครคอนโทรลเลอร์ Arduino ก็สามารถทำได้เช่นเดียวกับ Serial Monitor ของเครื่องคอมพิวเตอร์ โดยต้องมีการกำหนดอัตราบอร์ดเรต (ฺBaud Rate) ให้เท่ากับที่กำหนดค่าในโค้ด Arduino โดยในตัวอย่างโดค้ได้กำหนดไว้ที่ 9600บิต/วินาที ในคำสั่ง Serial.begin(9600) ดงนั้นจึงต้องตั้งค่า Baud Rate บนโทรศัพท์ให้มีค่าเท่ากันดังรูป โดยแตะที่ 3จุด แล้วเลือก Action

Arduino IDE Screenshot
ภาพจาก Arduino IDE © Arduino.cc

จากนั้นเลือก Monitor เพื่อใช้งาน Serial Monitor สำหรับสื่อสารผ่านพอร์ตอนุกรมกับบอร์ด Arduino

Arduino IDE Screenshot
ภาพจาก Arduino IDE © Arduino.cc

เลือกอัตราบอต 9600 บิต/วินาที ให้ตรงกับที่กำหนดไว้ในโค้ด

Arduino IDE Screenshot
ภาพจาก Arduino IDE © Arduino.cc

จะปรากฏข้อความ Test ซึ่งเป็นข้อความที่ถูกส่งจากบอร์ด Arduino ไปแสดงผลบนหน้าจอโทรศัพท์เคลื่อนที่ดังแสดงในรูป

Arduino IDE Screenshot
ภาพจาก Arduino IDE © Arduino.cc

        ดังนั้นหากไม่มี PC หรือโน๊ตบุ๊คก็สามารถใช้ โทรศัพท์มือถือเขียนโค้ดเพื่่อควบคุมการทำงานของบอร์ด Arduino หรือ ESP32 หรือ ESP8266 ได้ ซึ่งเป็นทางเลือก ทำให้มีค่าใช้จ่ายที่ต่ำกว่า ไม่จำเป็นต้องพกพาโน๊ตบุ๊คหรือคอมพิวเตอร์ในกรณีที่ต้องออกหน้างาน นอกจากนี้ยังสามารถประยุกต์การทำงานให้รับข้อมูลจากเซนเซอร์ต่าง ๆ เช่น อุณหภูมิ ความชื้น ผ่า่นทางบอร์ดคอนโทรลเลอร์เพื่อนำมาเสนอผลบนโทรศัพท์มือถือได้อีกด้วย