วิธีที่ LEGO® Education ใช้เว็บบลูทูธและ Web Serial API

โมเดลนักเต้นเบรกที่ประกอบจากเลโก้

ชุด LEGO® Education SPIKE™ Prime เป็นเครื่องมือการเรียนรู้ STEAM (วิทยาศาสตร์ เทคโนโลยี วิศวกรรม ศิลปะ และคณิตศาสตร์) สำหรับนักเรียนระดับประถมศึกษาปีที่ 6-8 (อายุประมาณ 11-13 ปี)

SPIKE Prime ผสมผสานองค์ประกอบการสร้าง LEGO ที่สีสันสดใส ฮาร์ดแวร์ที่ใช้งานง่าย และภาษาการเขียนโค้ดแบบลากและวางที่ใช้งานง่ายซึ่งอิงตาม Scratch และ Python ทำให้นักเรียนมีส่วนร่วมอย่างต่อเนื่องผ่านกิจกรรมการเรียนรู้ที่สนุกสนานเพื่อฝึกการคิดเชิงวิพากษ์และแก้ปัญหาที่ซับซ้อน ไม่ว่านักเรียนจะอยู่ในระดับใดก็ตาม และที่สำคัญคือสนุกสนาน

ประสบการณ์การเขียนโปรแกรม

นักเรียนใช้บล็อกไอคอน บล็อกคำ (ค่าเริ่มต้น) หรือโค้ด Python เพื่อเขียนโปรแกรมโมเดล สภาพแวดล้อมการเขียนโปรแกรมนี้ดัดแปลงมาจากเครื่องมือแก้ไข Scratch ซึ่งนักเรียนจํานวนมากคุ้นเคยอยู่แล้วจากการศึกษา STEAM เบื้องต้นในโรงเรียน

ในโหมดภาพ 2 โหมดนี้ นักเรียนจะเชื่อมต่อบล็อกโดยการลากและวางบล็อกลงบนผืนผ้าใบการเขียนโปรแกรม โดยเชื่อมต่อบล็อกต่างๆ เข้าด้วยกัน

สภาพแวดล้อมการเขียนโปรแกรม LEGO ที่มีโปรแกรมบล็อกคำ

นักเรียนที่เก่งขึ้นสามารถเลือกใช้โค้ด Python จริงได้โดยตรง ซึ่งมาพร้อมกับฐานความรู้แบบรวมเพื่อสนับสนุนนักเรียนขณะเขียนโค้ด

สภาพแวดล้อมการเขียนโปรแกรม LEGO ที่มีโปรแกรม Python

เมื่อสร้างโปรแกรมในแอป LEGO Education SPIKE แล้ว นักเรียนจะส่งโปรแกรมไปยังฮับ LEGO Education Spike Prime ผ่านการเชื่อมต่อบลูทูธหรือ USB ฮับจะเรียกใช้โปรแกรมและควบคุมโมเดล LEGO

ฮาร์ดแวร์ที่รวมอยู่

สมองของชุด SPIKE Education คือฮับ ซึ่งทำหน้าที่ควบคุมฮาร์ดแวร์อื่นๆ เช่น เซ็นเซอร์และมอเตอร์ ชุดประกอบด้วยเซ็นเซอร์สี เซ็นเซอร์ระยะทาง และเซ็นเซอร์แรง นอกจากนี้ยังมีเครื่องยนต์ 2 ตัว ได้แก่ 1 ตัวใหญ่และ 1 ตัวกลาง ฮับเชื่อมต่อกับคอมพิวเตอร์ด้วยบลูทูธหรือ USB

ชิ้นส่วนที่ตั้งโปรแกรมได้ของชุด LEGO SPIKE Education
ฮับขนาดใหญ่ เซ็นเซอร์ 3 ตัวสำหรับสี ระยะทาง และแรง และมอเตอร์ 2 ตัว

แอปพลิเคชันที่รองรับ

นอกจากแอปเฉพาะแพลตฟอร์มแล้ว LEGO ยังมีเว็บแอป SPIKE ที่เข้าถึงได้ที่ spike.legoeducation.com แอปนี้จะไม่แคชไว้ในเบราว์เซอร์ ดังนั้นผู้ใช้จึงต้องเชื่อมต่ออินเทอร์เน็ตอยู่เสมอเพื่อให้เว็บแอปทำงานได้

LEGO รองรับเบราว์เซอร์ Chrome ใน Windows 10 และ 11, MacBook และ Chromebook อย่างเป็นทางการ การปรับปรุงการแคชและทำให้ติดตั้งแอปได้คือฟีเจอร์ที่วางแผนไว้สำหรับอนาคต

เชื่อมต่อกับ SPIKE Hub

ฮับ SPIKE Prime และฮับ SPIKE Essential เชื่อมต่อกับคอมพิวเตอร์ได้โดยใช้บลูทูธหรือ USB โดยค่าเริ่มต้น เว็บแอปจะใช้บลูทูธกับ Web Bluetooth API

หรือเว็บแอปจะใช้ Web Serial API เมื่อเชื่อมต่อกับ USB ไม่ว่าจะใช้สาย USB หรือเชื่อมต่อแบบไร้สาย ขั้นตอนการเชื่อมต่อจะเหมือนกันเกือบทั้งหมด

แอป LEGO Education SPIKE พร้อมวิธีการเชื่อมต่อ USB

เมื่อเชื่อมต่อแล้ว นักเรียนจะอัปโหลดโปรแกรมไปยังช่องพื้นที่เก็บข้อมูล 1 ใน 20 ช่องของฮับขนาดใหญ่

UI "ดาวน์โหลดไปยังฮับ" ของ LEGO Education SPIKE

สําหรับการสื่อสารกับฮับ Web Bluetooth และ Web Serial API ต้องใช้ BluetoothDevice หรือ SerialPort ตามลําดับ ซึ่งจะอยู่ในข้อมูลโค้ดที่มาจากแอป live

การเชื่อมต่อ Web Bluetooth API

(X.next = 4),
  navigator.bluetooth.requestDevice({
    filters: [
      {
        namePrefix: 'GDX',
      },
    ],
    optionalServices: ['d91714ef-28b9-4f91-ba16-f0d9a604f112'],
  });

การเชื่อมต่อ Web Serial API

const v = yield navigator.serial.requestPort({
  filters: [{
    usbVendorId: Zt.SerialVendorId.LEGO // 1684
  }]
});
yield v.open({
  baudRate: 115200
});

เหตุผลที่ควรใช้เว็บเป็นช่องทางหลักและใช้ API ฮาร์ดแวร์บนเว็บ

ปัจจุบัน LEGO ดูแลเวอร์ชันอิสระของแอปสำหรับ Android, macOS/iPadOS และ Windows รวมถึงเวอร์ชันเดิมของแอปเฉพาะแพลตฟอร์มเพิ่มเติมจากเว็บแอป โดยการพุชเว็บแอปในแพลตฟอร์มที่รองรับ Web Hardware API พื้นฐานใน Chrome ซึ่งได้แก่ macOS, Windows และ ChromeOS ช่วยให้นักพัฒนาแอปของ LEGO ลดภาระการดูแลรักษาแอปได้อย่างมาก

อีกสาเหตุหนึ่งคือขนาดการดาวน์โหลด เว็บแอปจะดาวน์โหลดน้อยกว่า 20 MB โดยรวม ในขณะที่แอป macOS และ iPadOS จะมีขนาด 115 MB, แอป Android จะมีขนาด 178 MB และแอป Windows จะมีขนาด 292 MB อย่างไรก็ตาม การติดตั้งครั้งแรกจะไม่รวมเนื้อหาบทเรียนที่จําเป็นในชั้นเรียน หลังจากดาวน์โหลดเนื้อหานี้ ขนาดจะเพิ่มขึ้นเกือบ 1 GB ในเว็บแอป ระบบจะสตรีมเนื้อหาบทเรียน ซึ่งช่วยให้ผู้ใช้มีเวอร์ชันล่าสุดเสมอและดาวน์โหลดเฉพาะบทเรียนที่ต้องการดู

นอกจากเหตุผลทางเทคนิคเหล่านี้แล้ว ความเรียบง่ายของการใช้งานใน Classroom ยังเป็นเหตุผลที่สนับสนุนให้เปลี่ยนไปใช้เวอร์ชันเว็บเป็นหลัก นักเรียนไม่จําเป็นต้องติดตั้งแอปและอัปเดตแอปอยู่เสมอ แต่เพียงคลิกลิงก์และทำงานกับเวอร์ชันล่าสุดเสมอ ทาง LEGO สามารถอัปเดตเนื้อหาได้ทุกเมื่อ โดยไม่ขึ้นอยู่กับกระบวนการตรวจสอบของ App Store

เล่นเลโก้บนเว็บ

เลโก้เป็นแบรนด์ที่เน้นการต่อบล็อกอย่างสร้างสรรค์มาโดยตลอด และชุดนี้ก็ไม่มีข้อยกเว้นจากกฎดังกล่าวเนื่องจากสามารถเข้าถึง LEGO Education SPIKE จากเว็บเบราว์เซอร์ได้

ชุมชนนักพัฒนาซอฟต์แวร์ได้เริ่มสร้างโค้ดที่สื่อสารกับ SPIKE แล้ว เช่น PyREPL-JS เริ่มต้นโดย Gabriel Sessions ที่มหาวิทยาลัยทัฟส์ PyREPL-JS มี MicroPython REPL (อ่าน ประเมิน และพิมพ์ซ้ำ) สำหรับหน้าเว็บเพื่อสื่อสารกับฮับ SPIKE Ethan Danahy จาก Tufts เช่นกันก็ใช้ REPL นี้กับอินเทอร์เฟซเว็บสำหรับ SPIKE Prime หลายรายการ ซึ่งหนึ่งในนั้นคือนักเต้นเบรกแดนซ์ที่ซิงค์กับไฟล์เสียง

มหาวิทยาลัยจัดเวิร์กช็อปเกี่ยวกับแมชชีนเลิร์นนิงด้วย SPIKE และจัดสนามเด็กเล่นหุ่นยนต์พร้อมวิธีการและตัวอย่างโค้ด คุณควรเริ่มต้นที่ Hello SPIKE

โมเดล LEGO ของนักเต้นเบรกแดนซ์ที่ซิงค์กับไฟล์เสียง

Web Serial และ Web Bluetooth API เปิดโอกาสให้นักเรียนสื่อสารกับโมเดล LEGO จริงจากในเบราว์เซอร์ ซึ่งเปิดโอกาสให้แอปพลิเคชันด้านการศึกษา ความคิดสร้างสรรค์ และความบันเทิงมีการพัฒนาได้ไม่รู้จบ นักเรียนจะใช้แอปเวอร์ชันล่าสุดได้เสมอโดยไม่ต้องอัปเดต

ในระยะยาว นักพัฒนาแอป LEGO จะมีแอปที่ต้องดูแลรักษาน้อยลง ซึ่งหมายความว่าต้นทุนจะลดลงและไม่ต้องทุ่มเทในการพัฒนามากนัก จึงมีเวลามากขึ้นในการทำสิ่งที่ LEGO มีชื่อเสียงโด่งดังที่สุด ซึ่งก็คือการปลดล็อกความคิดสร้างสรรค์