สารบัญ:
- ขั้นตอนที่ 1: ภาพรวมส่วนขยาย AI
- ขั้นตอนที่ 2: เล่น Space Invaders ด้วยจมูกของคุณ
- ขั้นตอนที่ 3: ควบคุมรถ Grove Zero ด้วย Codecraft AI
- ขั้นตอนที่ 4: ติดตามบรรทัดด้วยการสั่งการด้วยเสียง
- ขั้นตอนที่ 5: เบื้องหลัง
วีดีโอ: AI ด้วย Grove Zero และ Codecraft (Scratch 3.0): 5 ขั้นตอน (พร้อมรูปภาพ)
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:03
ในบทความนี้ เราจะสร้างสามโปรเจ็กต์โดยใช้ฟังก์ชัน AI ของ Codecraft ซึ่งเป็นสภาพแวดล้อมการเขียนโปรแกรมแบบกราฟิกที่ใช้ Scratch 3.0 Codecraft ได้รับการพัฒนาและดูแลโดยการศึกษาของ TinkerGen และใช้งานได้ฟรี
AI และส่วนย่อยของการเรียนรู้ด้วยเครื่อง ได้กลายเป็นส่วนสำคัญในชีวิตของเราในช่วง 10 ปีที่ผ่านมา หลักสูตรของโรงเรียนในหลายประเทศรวมถึงความรู้ด้าน AI และแมชชีนเลิร์นนิง แต่อาจเป็นเรื่องยากสำหรับครูทั่วไปในการสร้างสื่อการสอนสำหรับการสอนหัวข้อนี้โดยไม่ต้องใช้เครื่องมือที่เหมาะสม การใช้ไลบรารีแมชชีนเลิร์นนิง แม้แต่ไลบรารีที่ใช้งานง่ายที่สุด เช่น Keras เพื่อสร้างแอปพลิเคชันที่นักเรียนสามารถโต้ตอบด้วย อาจเป็นงานที่ใช้เวลานานและน่ากังวล นี่คือจุดที่ Codecraft อาจช่วยได้ - มีชุดแอปพลิเคชันที่ขับเคลื่อนด้วยการเรียนรู้ของเครื่องที่ครูสามารถใช้เพื่ออธิบายและสาธิตแนวคิดที่เกี่ยวข้องกับปัญญาประดิษฐ์ ไปดูกันเลย!
ขั้นตอนที่ 1: ภาพรวมส่วนขยาย AI
เปิดโปรแกรมแก้ไขออนไลน์ Codecraft ที่
คลิกที่โหมดสเตจแล้วเพิ่มปุ่มส่วนขยายที่ด้านล่างของแท็บการนำทางบล็อก
คุณจะเห็นว่ามีส่วนขยาย AI สามรายการ:
- บริการทางปัญญา --- โมเดลการเรียนรู้ของเครื่องสำหรับการประมวลผลฟีดวิดีโอและเสียงสด
- Teachable Machine --- สามารถใช้สำหรับฝึกโมเดลการจำแนกประเภทด้วยภาพที่ถ่ายด้วยกล้องของคุณ
- แปลภาษา --- ใช้การเรียนรู้ของเครื่องเพื่อการแปล
ในบทความนี้ เราจะเน้นที่ Cognitive Services และการใช้ฟังก์ชันเหล่านี้เพื่อควบคุมฮาร์ดแวร์ Grove Zero การสื่อสารแบบไร้สายระหว่างคอมพิวเตอร์และ Grove Zero ยังคงดำเนินการอยู่ และฉันจะอัปเดตบทความทันทีที่มีให้บริการ สำหรับตอนนี้ เราจะใช้การเชื่อมต่อแบบมีสายเพื่อส่งข้อความระหว่างโมดูล Grove Zero กับคอมพิวเตอร์
ขั้นตอนที่ 2: เล่น Space Invaders ด้วยจมูกของคุณ
สำหรับงานแรก เราจะใช้เฉพาะโหมดสเตจโดยไม่มีฮาร์ดแวร์ใดๆ Codecraft มีตัวอย่างมากมายในการเริ่มต้นเขียนโปรแกรม หนึ่งในตัวอย่างเหล่านี้คือการเขียนโปรแกรมเกมคลาสสิกของ Space Invaders ในโหมด Codecraft Stage เราจะขยายตัวอย่างนี้และเพิ่มความสามารถในการควบคุมเครื่องบินรบในเกมด้วยจมูกของคุณโดยใช้บริการความรู้ความเข้าใจ
คลิกที่ปุ่มตัวอย่าง เปิดตัวอย่าง SpaceInvaders เราต้องเปลี่ยนเฉพาะส่วนที่เกี่ยวข้องกับการเคลื่อนไหวเท่านั้น เพื่อที่เราจะได้ตำแหน่ง x ของจมูกบนใบหน้าที่ตรวจพบในฟีดวิดีโอสด บันทึกไว้ใน pos ตัวแปร จากนั้นถ้าค่า pos มากกว่า 50 เราจะย้ายนักสู้อวกาศของเราไปทางขวา ถ้ามันน้อยกว่า -50 เราจะย้ายนักสู้ไปทางซ้าย นี่ไง. ลองดูสิ! หากคุณรู้สึกว่าความเร็วในการเคลื่อนที่ของนักสู้นั้นเร็วเกินไป คุณสามารถเปลี่ยนการเปลี่ยนแปลง x โดย … บล็อกเป็นจำนวนที่น้อยกว่า
ต่อไปเราจะขยายการทำงานนี้เพื่อควบคุมรถ Grove Zero และทำให้มันเดินหน้า/ถอยหลัง/ซ้าย/ขวา
ขั้นตอนที่ 3: ควบคุมรถ Grove Zero ด้วย Codecraft AI
เริ่มต้นด้วยการเขียนโค้ดในโหมดสเตจ - นี่คือส่วนที่รับผิดชอบในการวิเคราะห์ฟีดวิดีโอและส่งออกคำสั่งไปยัง Grove Zero
1) เรารันโค้ดในภาพหน้าจอแรกจนกว่าจะกดปุ่มเว้นวรรค หลังจากนั้นเราจะส่งคำสั่งหยุด
2) ทำซ้ำภายในจนถึงบล็อก เราจะตรวจสอบ x-pos และ y-pos ของจมูกของใบหน้าที่ตรวจพบและบันทึกลงในตัวแปรที่เกี่ยวข้อง
3)ถ้าค่าสัมบูรณ์ของ x-pos น้อยกว่า 21 (หมายความว่าระหว่าง -20 ถึง 20 ดังนั้นใกล้จุดศูนย์กลางของภาพ) เราจะไปตรวจสอบ y-pos เพื่อพิจารณาว่ารถควรเดินหน้าหรือถอยหลัง
4) มิฉะนั้นเราจะตรวจสอบว่ารถควรไปทางซ้ายหรือขวา
ตอนนี้ ไปที่แท็บอุปกรณ์และเขียนโค้ดสั้นๆ สำหรับรถยนต์ Grove Zero เราจะใช้ When I receive block ซึ่งมีหน้าที่รับคำสั่งออกอากาศภายใน เพื่อไม่ให้สับสนกับ เมื่อวิทยุได้รับซึ่งใช้สำหรับการสื่อสารผ่านบลูทูธ ดูรายละเอียดจากภาพหน้าจอ โค้ดค่อนข้างง่าย
เชื่อมต่อรถ Grove Zero ที่ประกอบเข้ากับคอมพิวเตอร์แล้วกดปุ่ม Connect ใน Codecraft เปลี่ยนเป็นโหมดดีบักออนไลน์ - ซึ่งจะทำให้ Grove Mainboard รับคำสั่งออกอากาศผ่านสาย จากนั้นไปที่โหมดสเตจแล้วกดที่ธง รถน่าจะวิ่งได้แล้ว ลองบังคับด้วยจมูกดู:)
ขั้นตอนที่ 4: ติดตามบรรทัดด้วยการสั่งการด้วยเสียง
มีแผนที่ในชุดอุปกรณ์ติดรถยนต์ของ Grove Zero ซึ่งเดิมใช้สำหรับเล่นมินิเกม Collect the Coins เราสามารถนำมาใช้ใหม่เพื่อใช้การจดจำเสียงใน Codecraft เพื่อสั่งการรถที่จะเลี้ยวทางแยกได้
ส่วนโหมดสเตจที่นี่ซับซ้อนน้อยกว่าในตัวอย่างก่อนหน้านี้ สิ่งที่เราทำคือ:
1) เมื่อได้รับข้อความออกอากาศ select_direction ให้รับรู้ส่วนของคำพูดและบันทึกไว้ในตัวแปรผลลัพธ์
2) รับรู้ต่อไปจนกว่าจะไม่ทราบผล
3) เปรียบเทียบผลลัพธ์กับสองสตริง - "ซ้าย" และ "ขวา" ออกอากาศข้อความที่เกี่ยวข้องไปยังรถ Grove Zero
รหัสที่ทำงานในรถ Grove Zero นั้นซับซ้อนกว่าเล็กน้อยในครั้งนี้ แต่โดยพื้นฐานแล้วมันเป็นไปตามตรรกะนี้:
1) เมื่อเริ่มออกอากาศข้อความส่งต่อ
2) เมื่อได้รับข้อความส่งต่อให้เริ่มทำตามบรรทัด หากสายขาด ให้หยุดมอเตอร์และออกอากาศ
เลือก_direction ที่นี่โค้ดในโหมด Stage เริ่มทำงาน
3) หากข้อความได้รับซ้ายเริ่มเลี้ยวซ้ายแล้วสลับกลับไปที่โหมดบรรทัดต่อไป
หากได้รับข้อความทางขวา เริ่มเลี้ยวขวาแล้วเปลี่ยนกลับเป็นโหมดบรรทัดต่อไป
ขั้นตอนที่ 5: เบื้องหลัง
โมเดลโครงข่ายประสาทเทียมที่ใช้ในแอปพลิเคชันข้างต้นทั้งหมดทำงานภายในเบราว์เซอร์ของคุณ ซึ่งมีข้อดีที่แตกต่างกันเล็กน้อยเมื่อเปรียบเทียบกับการส่งข้อมูลไปยังระบบคลาวด์เพื่อการประมวลผล: เวลาแฝงที่น้อยกว่าและความเป็นส่วนตัวที่ดีขึ้น มีการใช้โครงข่ายประสาทเทียมจำนวนหนึ่งในบริการความรู้ความเข้าใจ - การจำแนกเสียงสำหรับคำสั่งเสียงพูด (, การตรวจจับจุดสังเกตใบหน้า, การจดจำใบหน้า และการประมาณอายุ
ในบทความนี้ เราได้สำรวจการทำงานพื้นฐานของหนึ่งในส่วนขยาย Codecraft AI - บริการความรู้ความเข้าใจ มีหลายวิธีที่คุณสามารถสร้างจากตัวอย่างเหล่านี้เพื่อสร้างแอปพลิเคชันที่สนุกและน่าตื่นเต้นยิ่งขึ้นไปอีก!
หากคุณตัดสินใจที่จะลองใช้ Grove Zero หรือเพียงแค่ใช้โหมด Stage โปรดแชร์ในความคิดเห็นด้านล่าง สำหรับข้อมูลเพิ่มเติมเกี่ยวกับซีรีส์ Grove Zero, Codecraft และฮาร์ดแวร์อื่นๆ สำหรับผู้ผลิตและผู้ให้การศึกษา STEM โปรดเยี่ยมชมเว็บไซต์ของเราที่
TinkerGen ได้สร้างแคมเปญ Kickstarter สำหรับ MARK (Make A Robot Kit) ซึ่งเป็นชุดหุ่นยนต์สำหรับสอนการเขียนโค้ด หุ่นยนต์ AI!
แนะนำ:
วิธีสร้าง Battlebot ด้วย Cardboard และ Arduino: 7 ขั้นตอน (พร้อมรูปภาพ)
วิธีสร้าง Battlebot ด้วย Cardboard และ Arduino: ฉันสร้าง battlebots โดยใช้ Arduino UNO และใช้กระดาษแข็งเพื่อสร้างร่างกาย ฉันพยายามใช้อุปกรณ์ราคาไม่แพงและให้อิสระในการสร้างสรรค์แก่เด็กๆ ในการออกแบบบอทต่อสู้ของพวกเขา Battlebot ได้รับคำสั่งจากคอนโทรลเลอร์ไร้สาย
Power Timer ด้วย Arduino และ Rotary Encoder: 7 ขั้นตอน (พร้อมรูปภาพ)
Power Timer ด้วย Arduino และ Rotary Encoder: Power Timer นี้อิงตามตัวจับเวลาที่แสดงที่:https://www.instructables.com/id/Timer-With-Arduin…A โมดูลจ่ายไฟและ SSR (โซลิดสเตตรีเลย์ ) ติดอยู่กับมัน สามารถสั่งงานกำลังไฟฟ้าได้ถึง 1KW และด้วยการเปลี่ยนแปลงเพียงเล็กน้อย l
Blinds Control ด้วย ESP8266, Google Home และ Openhab Integration และ Webcontrol: 5 ขั้นตอน (พร้อมรูปภาพ)
การควบคุมมู่ลี่ด้วย ESP8266, Google Home และ Openhab Integration และ Webcontrol: ในคำแนะนำนี้ ฉันจะแสดงให้คุณเห็นว่าฉันเพิ่มระบบอัตโนมัติให้กับมู่ลี่ของฉันอย่างไร ฉันต้องการเพิ่มและลบระบบอัตโนมัติได้ ดังนั้นการติดตั้งทั้งหมดจึงเป็นแบบหนีบ ส่วนหลักคือ: สเต็ปเปอร์มอเตอร์ ตัวขับสเต็ปควบคุม bij ESP-01 เกียร์และการติดตั้ง
Alexa Voice ควบคุม Raspberry Pi Drone ด้วย IoT และ AWS: 6 ขั้นตอน (พร้อมรูปภาพ)
Alexa Voice ควบคุม Raspberry Pi Drone ด้วย IoT และ AWS: สวัสดี! ฉันชื่ออาร์ม ฉันอายุ 13 ปีจากแมสซาชูเซตส์ บทช่วยสอนนี้แสดงให้เห็นว่าคุณสามารถอนุมานจากชื่อได้อย่างไรว่าจะสร้าง Raspberry Pi Drone ได้อย่างไร ต้นแบบนี้แสดงให้เห็นว่าโดรนมีการพัฒนาอย่างไร และพวกมันจะมีบทบาทสำคัญขนาดไหนใน
DIY IBeacon และ Beacon Scanner ด้วย Raspberry Pi และ HM13: 3 ขั้นตอน
DIY IBeacon และ Beacon Scanner ด้วย Raspberry Pi และ HM13: Story A beacon จะส่งสัญญาณอย่างต่อเนื่องเพื่อให้อุปกรณ์บลูทู ธ อื่น ๆ รู้ว่ามีอยู่ และฉันอยากได้บีคอนบลูทูธเพื่อติดตามกุญแจมาตลอด เพราะฉันลืมเอามันมาเหมือน 10 ครั้งในปีที่แล้ว และฉันก็เกิดขึ้น