Quantum Technology and Electromagnetic Research Forum

KidBright => KidBright with Arduino IDE Q&A => ข้อความที่เริ่มโดย: aphorist ที่ สิงหาคม 27, 2018, 05:04:22 PM

หัวข้อ: KidBright + ArduinoIDE #1 ติดตั้ง ArduinoIDE และตัวอย่างโปรแกรม LED Blink
เริ่มหัวข้อโดย: aphorist ที่ สิงหาคม 27, 2018, 05:04:22 PM
สวัสดีครับ
เนื่องด้วย KidBright IDE ยังไม่สามารถทำอะไรต่าง ๆ ได้ดังใจ และยังไม่ยืดหยุ่น รวมทั้ง Sensor หรือ โมดูล ต่าง ๆ ที่ใช้งานกับ Arduino ก็ยังไม่ซัพพอร์ตกัน
แต่ด้วย KidBright ผลิตด้วยชิป ESP-WROOM-32 ทำให้เราสามารถใช้ Arduino IDE ในการเขียนโปรแกรมได้ และยังสามารถนำ โมดูลต่าง ๆ ที่ใช้งานกับ Arduino มาใช้กับ KidBright ได้ด้วย

ก่อนอื่น ให้เราติดต้ง Arduino IDE เวอร์ชันล่าสุดมาก่อนครับ แล้ว ทำการติดตั้ง Board ESP32 Core for Arduino ด้วย

การติดตั้ง Arduino IDE + ESP32 Core for Arduino

1. ดาวน์โหลด Arduino IDE จากเว็บ https://www.arduino.cc/

2. ติดตั้งไปตามปรกติ เหมือนโปรแกรมทั่วไปครับ

3. เมื่อติดตั้ง Arduino IDE เสร็จเรียบร้อยแล้ว ไปที่เมนู File --> Preference เพื่อทำการเพิ่ม บอร์ด ESP32
(http://quantum.engr.tu.ac.th/smf/index.php?action=dlattach;topic=48.0;attach=73;image)


4. ที่หน้าต่าง Preference คลิกตามภาพเพื่อเปิด Additionnal Boards Manager แล้ว ใส่ URL ด้านล่างลงไปครับ (ในตัวอย่างผมมีบอร์ด ESP8266 ด้วย) ใส่บรรทัดละบอร์ดนะครับ
โค๊ด: [Select]
https://dl.espressif.com/dl/package_esp32_index.json
(http://quantum.engr.tu.ac.th/smf/index.php?action=dlattach;topic=48.0;attach=75;image)


5. เสร็จแล้ว กด OK ออกมาจนหมดปิด Arduino IDE แล้วเปิดขึ้นมาใหม่ แล้วไปที่ เมนู Tools - Boards - Boards Manager ดังภาพด้านล่าง
(http://quantum.engr.tu.ac.th/smf/index.php?action=dlattach;topic=48.0;attach=77;image)


6. หน้าต่าง Board Manager ให้ค้นหาคำว่า esp ครับ จะเห็น ESP32 ก็คลิก แล้วเลือก Install ได้เลย
(http://quantum.engr.tu.ac.th/smf/index.php?action=dlattach;topic=48.0;attach=79;image)


7. รอให้โหลดและติดตั้งจนเสร็จ เสร็จแล้ว เปิดโปรแกรม Arduino IDE ไปก่อนครับ แล้วเปิดขึ้นใหม่
หัวข้อ: Re: KidBright + ArduinoIDE #1 ติดตั้ง ArduinoIDE และตัวอย่างโปรแกรม LED Blink
เริ่มหัวข้อโดย: aphorist ที่ สิงหาคม 27, 2018, 05:20:00 PM
เขียนโปรแกรมแรกบน Arduino IDE ให้กับ KidBright กัน

เรามาลองเขียนโปรแกรมแรกก่อนครับ แต่ก่อนอื่น ขอให้ท่านไปศึกษาเรื่อง Digital/Analog Input Output ก่อนนะครับ จากแหล่งไหนก็ได้
ขอให้ท่านดู Diagram นี้นะครับ (ภาพจาก อ.วัชระ)
(http://quantum.engr.tu.ac.th/smf/index.php?action=dlattach;topic=48.0;attach=94;image)


ดูไฟ LED ของ BlueTooth, WiFi, NTP, IoT อันที่จริงแล้ว led เหล่านี้ เชื่อมต่อกับพิน IO17, IO2, IO15 และ IO12 ตามลำดับ
ทีนี้ เรารู้แล้วว่า แต่ละดวง เชื่อมต่อกับพินไหน เราก็สามารถสั่งเปิด/ปิดได้แล้ว เรามาลองทำไฟวิ่งก่อนดีกว่าครับ

1. ก่อนอื่นให้เลือก Boards เป็น Node32s  ก่อนครับ และ Port เป็น port ที่ KidBright เชื่อมต่ออยู่ (หากไม่ทราบว่าเป็น Port ไหน ลองถอดออก แล้วไปดูที่เมนู Port ว่าหมายเลขไหนหายไป แล้วลองเสียบใหม่ดูว่า หมายเลขไหนเพิ่มเข้ามา)
(http://quantum.engr.tu.ac.th/smf/index.php?action=dlattach;topic=48.0;attach=81;image)


2. ให้คัดลอก Code นี้ ไปวางใน Arduino IDE
โค๊ด: [Select]
void setup() {
  // ตั้งค่าสถานะพิน ให้เป็นโหมดส่งออก หมายเลขพิน ไม่ต้องใส่ IO
  // เช่น IO17 ก็ใส่หมายเลข 17 ไปเลย
  pinMode(17, OUTPUT);    // Bluetooth
  pinMode(2, OUTPUT);     // Wifi
  pinMode(15, OUTPUT);    // NTP
  pinMode(12, OUTPUT);    // IoT
}

void loop() {
  // เปิด LED
  digitalWrite(17,HIGH);
  delay(100);
  digitalWrite(2,HIGH);
  delay(100);
  digitalWrite(15,HIGH);
  delay(100);
  digitalWrite(12,HIGH);
  delay(300);
 
  // ปิด LED
  digitalWrite(17,LOW);
  delay(100);
  digitalWrite(2,LOW);
  delay(100);
  digitalWrite(15,LOW);
  delay(100);
  digitalWrite(12,LOW);
  delay(300);
}

3. กด Upload ครับ แล้วโปรแกรมจะให้บันทึกไฟล์ซอร์สโค้ด
(http://quantum.engr.tu.ac.th/smf/index.php?action=dlattach;topic=48.0;attach=83;image) (http://quantum.engr.tu.ac.th/smf/index.php?action=dlattach;topic=48.0;attach=85;image)


4. ถ้าไม่เกิดข้อผิดพลาดอะไร ท่านจะเห็นคำว่า Done Upload ที่มุมซ้ายล่างครับ
(http://quantum.engr.tu.ac.th/smf/index.php?action=dlattach;topic=48.0;attach=87;image)

5. ดูผลลัพธ์ ที่บอร์ด KidBright ท่านได้เลยครับ



##############################################################################

ตอนหน้า จะใช้งาน LED Matrix + LDR (เซ็นเซอร์แสง) นะครับ
หัวข้อ: Re: KidBright + ArduinoIDE #1 ติดตั้ง ArduinoIDE และตัวอย่างโปรแกรม LED Blink
เริ่มหัวข้อโดย: aphorist ที่ สิงหาคม 28, 2018, 04:04:19 PM
แก้ไข pin mapping ของ KidBright จาก  อ.วัชระนะครับ

ในบทความยังเป็นรูปภาพเดิมที่ใช้ Pin จาก Diagram เก่าอยู่ครับ



หัวข้อ: Re: KidBright + ArduinoIDE #1 ติดตั้ง ArduinoIDE และตัวอย่างโปรแกรม LED Blink
เริ่มหัวข้อโดย: Pete Jaturawit ที่ สิงหาคม 24, 2019, 02:56:24 PM
ช่วยหน่อยครับ
คือ เหมือนแบบน้ทุกอย่างแล้ว
แต่มันขึ้น error ว่า Failed to connect to ESP32: Invalid head of packet
มีวิธีแก้มั้ยครับ หรือว่าผมโหลดผิดเวอร์ชั่น (1.0.2)
ขอบคุณครับ
หัวข้อ: Re: KidBright + ArduinoIDE #1 ติดตั้ง ArduinoIDE และตัวอย่างโปรแกรม LED Blink
เริ่มหัวข้อโดย: Watchara A. ที่ สิงหาคม 25, 2019, 10:39:35 AM
ถ้าเป็น ณ เวลานี้อาจารย์ใช้ KBIDE จะง่ายที่สุดครับ
ลองค้นด้วยคีย์เวิร์ดนี้ในกูเกิ้ลนะครับ