สารบัญ:
- ขั้นตอนที่ 1: โค้งงอแทร็คเซนเซอร์
- ขั้นตอนที่ 2: การใช้การสื่อสารแบบอนุกรมกับ Micro:bit
- ขั้นตอนที่ 3: การสร้างต้นแบบวงจร
- ขั้นตอนที่ 4: การทดสอบมาตรความเร่งและเซ็นเซอร์วัดแสง
- ขั้นตอนที่ 5: บัดกรีเซ็นเซอร์โค้ง
- ขั้นตอนที่ 6: การบัดกรีกับ Micro:bit และการประกอบถุงมือ
- ขั้นตอนที่ 7: รหัสไมโคร:บิต
- ขั้นตอนที่ 8: การสื่อสารแบบอนุกรมด้วย P5.js
- ขั้นตอนที่ 9: รหัส P5.js
- ขั้นตอนที่ 10: ผลิตภัณฑ์ขั้นสุดท้าย
วีดีโอ: Art Glove: 10 ขั้นตอน (พร้อมรูปภาพ)
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:02
Art Glove เป็นถุงมือที่สวมใส่ได้ซึ่งมีเซ็นเซอร์ประเภทต่างๆ เพื่อควบคุมกราฟิกอาร์ตผ่าน Micro:bit และ p5.js นิ้วจะใช้เซ็นเซอร์การโค้งงอที่ควบคุมค่า r, g, b และมาตรความเร่งในตัวควบคุม Micro:bit x, พิกัด y สำหรับกราฟิก ฉันสร้างโครงการนี้เป็นโครงการภาคเรียนสำหรับชั้นเรียนเทคโนโลยีสวมใส่ของฉันในฐานะผู้อาวุโสในโปรแกรมเทคโนโลยี ศิลปะ และสื่อที่ CU Boulder
เสบียง:
- ถุงมือทำสวน
- BBC Micro:Bit
- เซ็นเซอร์แบบยืดหยุ่น 3-4 ตัว
- ตัวต้านทาน 10K โอห์ม
- ลวดเชื่อม (แดง & ดำ)
- กรรไกรตัดลวด
- เขียงหั่นขนม
- คลิปจระเข้ (สองด้าน & ด้านเดียว)
- ประสาน
- หัวแร้ง
- เข็ม
- เกลียว
- กระดาษแว็กซ์
- เทป
- กรรไกร
- ปากกาและดินสอ
ขั้นตอนที่ 1: โค้งงอแทร็คเซนเซอร์
อันดับแรก เราจะเน้นที่การสร้างฮาร์ดแวร์ วิธีนี้เมื่อเราเขียนโค้ด เราจะมีส่วนประกอบของถุงมือจริงเพื่อใช้และทดสอบ
- ในการเริ่มต้น เราจะสร้างรอยเท้าบนนิ้วที่จะเก็บเซ็นเซอร์การโค้งงอเข้าที่ การมีรางเหล่านี้ช่วยให้เซ็นเซอร์การโค้งงอสามารถเคลื่อนที่ไปมาได้เล็กน้อยในขณะที่ยังรักษาให้แน่นกับนิ้วเพื่องอ ขั้นแรก พลิกถุงมือของคุณออกด้านใน
- ใช้เซ็นเซอร์โค้งงอแล้ววางไว้ที่สันกลางของนิ้ว ใช้ปากกาวาดโครงร่างเซ็นเซอร์การโค้งงอ
- สอดด้ายของคุณผ่านเข็มของคุณ ให้ตัวเองชิ้นใจกว้าง ผูกปมที่ปลายด้าย
- เริ่มต้นที่ด้านบนและบนเส้น เพียงเป่าส่วนโค้งของเซ็นเซอร์การโค้งงอ สอดเข็มผ่านถุงมือเข้าไปด้านใน แล้วดันกลับเข้าไปในเส้นขนาน ดึงเข็มไปจนสุดเพื่อให้ปมอยู่บนเส้นที่คุณวาด
- ดึงให้แน่น อีกด้านอีก 2-3 นอต เพื่อให้แน่ใจว่าด้ายจะไม่หลุดออกมา ตรวจสอบให้แน่ใจว่าแน่นเพื่อให้เซ็นเซอร์โค้งงอแน่นกับนิ้วของคุณ
- ตัดด้ายทิ้งไว้สองสามซม. ปลายด้ายเพื่อไม่ให้ปมหลุด
- ทำซ้ำขั้นตอนที่ 2-6 สำหรับนิ้วทั้งหมดที่คุณติดเซ็นเซอร์แบบยืดหยุ่นจนกว่าจะดูเหมือนภาพที่ 3 จนถึงภาพสุดท้าย
- พลิกถุงมือกลับด้านที่ถูกต้อง เลื่อนเซ็นเซอร์โค้งของคุณไปตามรางเพื่อให้แน่ใจว่าพอดีกับมือของคุณ
ขั้นตอนที่ 2: การใช้การสื่อสารแบบอนุกรมกับ Micro:bit
หากต้องการดูผลลัพธ์จากเซ็นเซอร์ของเรา เราจะใช้การสื่อสารแบบอนุกรม คุณจะเห็นวิธีตั้งค่าโค้ดใน Makecode ในขั้นตอนถัดไป แต่ก่อนอื่น เราจะมาเรียนรู้วิธีอ่านโค้ดจากเทอร์มินัลของเรา (หมายเหตุ: ฉันใช้ Mac ดังนั้นขั้นตอนเหล่านี้อาจแตกต่างกันไปตามระบบปฏิบัติการของคุณ สำหรับระบบปฏิบัติการอื่นๆ ดูที่นี่)
- เสียบ Micro:bit. ของคุณ
- เปิดเทอร์มินัลของคุณ
- พิมพ์ ' ls /dev/cu.* '
- คุณควรเห็นสิ่งที่ดูเหมือน ' /dev/cu.usbmodem1422 ' แต่จำนวนที่แน่นอนจะขึ้นอยู่กับคอมพิวเตอร์ของคุณ
- เมื่อคุณเรียกใช้โค้ด การพิมพ์ ' screen /dev/cu.usbmodem1422 115200 ' (พร้อมหมายเลขพอร์ตซีเรียลเฉพาะของคุณ) จะให้เอาต์พุตอนุกรมของ Micro:bit แก่คุณ
- ผลงานของคุณควรมีลักษณะเหมือนภาพด้านบน ขึ้นอยู่กับว่าคุณจัดรูปแบบผลงานของคุณอย่างไร!
ขั้นตอนที่ 3: การสร้างต้นแบบวงจร
ก่อนที่จะบัดกรีส่วนประกอบทั้งหมดของเราเข้าด้วยกัน เราจะสร้างต้นแบบวงจรและเขียนโค้ดตัวอย่างสองสามบรรทัดเพื่ออ่านค่าเซ็นเซอร์ของเรา และตรวจสอบให้แน่ใจว่าส่วนประกอบของเราทำงานอย่างถูกต้อง
- ใช้แผนภาพวงจรด้านบน สร้างต้นแบบวงจรของคุณบนเขียงหั่นขนมโดยใช้สายจัมเปอร์ ตัวต้านทาน คลิปจระเข้ด้านเดียว และ Micro:bit ของคุณ
- เชื่อมต่อเซ็นเซอร์โค้งงอกับหมุด 0, 1 และ 2
- ฉันใช้รหัสนี้เพื่อทดสอบเซ็นเซอร์แบบยืดหยุ่นของฉัน
- โค้งงอ 2-3 ครั้งเพื่อดูค่าที่อ่านได้และตรวจดูให้แน่ใจว่าทำงานได้อย่างถูกต้อง
ในโค้ด บรรทัดสุดท้าย "serial.writeLine" คือตำแหน่งที่เรากำลังเขียนไปยังเอาต์พุตแบบอนุกรมของเรา คุณสามารถจัดรูปแบบผลลัพธ์นี้ได้ตามที่คุณต้องการ ฉันแยกทุกตัวแปรด้วยเครื่องหมายจุลภาค แล้วแยกออกเป็นลูกน้ำในภายหลัง แต่ส่วนนี้ขึ้นอยู่กับคุณ
(หมายเหตุ: หลังจากที่ฉันทำตามขั้นตอนนี้แล้ว ฉันพบว่าเซ็นเซอร์การโค้งงอตัวใดตัวหนึ่งของฉันมีรอยหยักในสีนำไฟฟ้า ดังนั้นจึงอ่านได้ไม่ดี นั่นเป็นสาเหตุที่รูปภาพบางภาพแสดงให้ฉันเห็นการทำงานกับเซ็นเซอร์ 4 ตัว หลังจากพบสิ่งนี้ ฉันไป เหลือเซ็นเซอร์เพียง 3 ตัวบนตัวชี้ นิ้วกลาง และนิ้วนาง นอกจากนี้ ฉันยังพบว่าเซ็นเซอร์การโค้งงอของฉันมีช่วงการอ่านที่กว้างที่สุดในการดัดโค้งในลักษณะ "ตรงกันข้าม" ซึ่งเป็นเหตุผลที่ฉันสวมมันลงบนถุงมือโดยให้สีต้านทานการคว่ำลง)
ขั้นตอนที่ 4: การทดสอบมาตรความเร่งและเซ็นเซอร์วัดแสง
ในขั้นตอนนี้ ฉันยังเลือกทดสอบมาตรความเร่งและเซ็นเซอร์แสงบน Micro:bit
- เชื่อมต่อ Micro:bit เข้ากับคอมพิวเตอร์
- ดาวน์โหลดรหัสนี้
- จากนั้นฉันก็ทดสอบเซ็นเซอร์ความเร่ง แสง และเซ็นเซอร์โค้งงอพร้อมกับรหัสนี้
(หมายเหตุ: ณ จุดนี้ ฉันคิดว่าคุณไม่สามารถใช้หมุดและเซ็นเซอร์วัดแสงพร้อมกันได้ ดังนั้นฉันจึงไม่ได้ใช้เซ็นเซอร์วัดแสงในขั้นสุดท้าย แต่ฉันต้องการให้คุณดูวิธีการอ่าน เซ็นเซอร์วัดแสงถ้าคุณต้องการ!)
ขั้นตอนที่ 5: บัดกรีเซ็นเซอร์โค้ง
ตอนนี้เราจะเริ่มบัดกรีส่วนประกอบของเราด้วยกัน! นี่เป็นส่วนที่น่าตื่นเต้น แต่สิ่งสำคัญคือต้องดำเนินการอย่างช้าๆ และตรวจสอบว่าทุกอย่างยังทำงานอยู่เพื่อที่คุณจะได้ไปไม่ถึงจุดสิ้นสุด มีบางอย่างที่ไม่ทำงาน และไม่แน่ใจว่ามันผิดพลาดตรงไหน! ฉันขอแนะนำให้ใช้คลิปจระเข้สองด้านของคุณที่นี่เพื่อตรวจสอบว่าเซ็นเซอร์แต่ละตัวยังทำงานอยู่เมื่อสายไฟและตัวต้านทานถูกบัดกรีเข้าด้วยกัน
- นำเซ็นเซอร์วัดความโค้งงอและเทปติดไว้ หรือวางของหนักทับไว้เพื่อยึดเข้าที่
- นำตัวต้านทาน 10K Ohm ของคุณและตัดส่วนปลายส่วนใหญ่ออก เพื่อให้สายวัดยาวเท่ากับตะกั่วบนเซ็นเซอร์การโค้งงอ
- นำหัวแร้งของคุณแล้วกดลงบนตัวต้านทานและตะกั่วเซ็นเซอร์งอจนร้อน
- นำบัดกรีของคุณแล้วกดลงในเตารีดร้อนขณะที่มันเริ่มละลายเหนือส่วนประกอบต่างๆ คุณเพียงแค่ต้องเพียงพอที่จะครอบคลุมสายไฟ
- ถอดเหล็กออก ที่นี่ฉันสวมถุงมือทำสวนอีกอันแล้วจับตัวต้านทานและลวดเข้าที่ในขณะที่บัดกรีเย็นลง
- หนีบลวดสีแดงยาวๆ แล้ววางไว้ที่ข้อต่อประสานที่ตัวต้านทานและเซ็นเซอร์การโค้งงอมาบรรจบกัน ทำซ้ำขั้นตอนที่ 4-5 นี่คือสายพินแบบอะนาล็อก
- หนีบลวดสีดำยาวๆ แล้ววางไว้ที่ปลายอีกด้าน ทำซ้ำขั้นตอนที่ 4-5 นี่คือสายดินของคุณ
- หนีบลวดสีแดงยาวๆ แล้วหนีบปลายอีกด้านของตัวต้านทานให้ยาวเท่ากับด้านก่อนหน้า ทำซ้ำขั้นตอนที่ 4-5 นี่คือสายไฟของคุณ
- ทำซ้ำขั้นตอนที่ 1-8 สำหรับส่วนที่เหลือของเซ็นเซอร์การโค้งงอของคุณ
- ปล่อยสายไฟไว้ยาวๆ เพื่อให้คุณมีพื้นที่ทำงานด้วยเพื่อให้มีความยาวที่ถูกต้องในภายหลังเมื่อนำไปใส่ใน Micro:bit
ขั้นตอนที่ 6: การบัดกรีกับ Micro:bit และการประกอบถุงมือ
เมื่อเซ็นเซอร์ของเราพร้อมแล้ว เราจะเริ่มบัดกรีกับ Micro:bit และประกอบถุงมือ อย่าลืมทดสอบอีกครั้งขณะใช้งาน โดยใช้คลิปจระเข้เพื่อให้แน่ใจว่าส่วนประกอบยังคงทำงานหลังจากที่คุณประสานเข้าด้วยกันแล้ว
- วางเซ็นเซอร์และ Micro:bit ไว้บนถุงมือเพื่อดูว่าต้องเดินสายไฟไปที่ใดและต้องอยู่นานแค่ไหน
- พันลวดสีแดงรอบๆ ปลั๊กไฟ ใช้คีมตัดลวดดึงลวดออกและปล่อยให้มีช่องว่างที่คุณจะติดลวดไว้ ทำเช่นนี้สำหรับสายกราวด์เช่นกัน
- ร่างถุงมือที่คุณไม่ได้ใช้ สิ่งนี้จะช่วยให้เราประสานทุกอย่างเข้าด้วยกันและทำให้ความยาวของสิ่งต่าง ๆ ถูกต้อง คุณจะทำทุกอย่างย้อนกลับ แต่ให้ตรวจสอบอีกครั้งว่าคุณกำลังบัดกรีสิ่งต่าง ๆ อย่างถูกวิธี!
- วาง Micro:bit ในตำแหน่งที่คุณต้องการวางบนมือ ทำเครื่องหมายเป็นพื้นและสายไฟนั่ง
- พันเทปสายไฟ กำลังไฟ หรือกราวด์ให้เข้าที่
- ติดเทปเซ็นเซอร์การโค้งงอของคุณเข้าที่
- ตัดสายไฟให้เลยผ่านเครื่องหมายบนสายไฟทั้งหมด
- ประสานชิ้นส่วนเหล่านี้เข้าด้วยกัน
- ทำซ้ำขั้นตอนที่ 5-8 สำหรับสายไฟอื่นๆ และสำหรับสายกราวด์
- นำ Micro:bit ไปวางไว้ใต้สายไฟที่เพิ่งบัดกรี ประสานกำลังและกราวด์กับพินที่ถูกต้อง
- หนีบสายแอนะล็อกเพื่อให้ผ่านปลายหมุดและสามารถพันรอบด้านหน้าได้
- บัดกรีสายไฟเข้ากับหมุดที่ถูกต้อง
- ฉันพบว่าการอ่านของฉันดีที่สุดและสม่ำเสมอที่สุดเมื่อสายไฟทั้งหมด (กำลัง กราวด์ และแอนะล็อก) สัมผัสทั้งด้านหน้าและด้านหลังของหมุด
- หนึ่งแทร็กต่อหนึ่งแทร็ก ดันเซ็นเซอร์งอนิ้วขึ้นพร้อมกัน
- เมื่อเซ็นเซอร์เข้าที่แล้ว ให้สวมถุงมือและตรวจดูให้แน่ใจว่าใส่ได้พอดี หากคุณต้องการเพิ่มแทร็กหรือแก้ไขตำแหน่ง ให้ทำทันที
- เมื่อเซ็นเซอร์อยู่ในตำแหน่งที่คุณต้องการแล้ว ให้จดตำแหน่งที่จะผูก Micro:bit เข้าที่ คุณสามารถใช้รูเล็กๆ ที่ด้านใดด้านหนึ่งของปุ่ม A และ B หรือใช้รูสำหรับหมุดก็ได้ ใช้เข็มและด้ายมัดให้เข้าที่ในมือ
ยินดีด้วย! ส่วนประกอบฮาร์ดแวร์สำหรับถุงมือเสร็จเรียบร้อยแล้ว!
ขั้นตอนที่ 7: รหัสไมโคร:บิต
ตอนนี้ฉันกำลังจะแนะนำคุณเกี่ยวกับรหัส Micro:bit คุณยินดีเป็นอย่างยิ่งที่จะสร้างรหัสนี้ตามที่คุณต้องการ แต่ฉันต้องการอธิบายและอธิบายทุกอย่างเพื่อให้คุณเห็นว่าฉันทำอะไร ฉันทำมันอย่างไร และทำไม! คุณสามารถหารหัสของฉันได้ที่นี่
-
บรรทัดที่ 1-31 ฉันกำลังใช้ฟังก์ชันพรีเซ็ตที่ Micro:bit ให้มาด้วย
- การกด A จะลดจำนวน ซึ่งเป็นการเลือกกราฟิกที่พร้อมใช้งาน เมื่อคุณถึง 0 มันจะกลับไปที่จำนวนสูงสุด
- การกด B จะเพิ่มจำนวน เมื่อคุณถึงจำนวนสูงสุดของกราฟิกที่มีอยู่แล้ว จะกลับไปเป็น 0
- หากกราฟิกปัจจุบันที่คุณเลือกไม่ใช่กราฟิกที่กำลังวาดอยู่ การกด A และ B จะเป็นการเลือกกราฟิกใหม่พร้อมกัน
- หากกราฟิกปัจจุบันที่คุณเลือกเป็นภาพเดียวกับที่กำลังวาด การกด A และ B จะเติมรูปร่างพร้อมกันหากสามารถเติมได้
- การเขย่า Micro:bit จะตั้งค่าตัวแปรการลบเป็น 1 ซึ่งบอก p5.js ให้ลบแคนวาสและเริ่มเป็นสีดำ มันหยุดการทำงานชั่วคราวหนึ่งวินาทีแล้วตั้งค่ากลับเป็น 0 เพื่อให้ผู้ใช้สามารถวาดต่อได้
-
บรรทัดที่ 32-64 กำลังตั้งค่าตัวแปรของฉัน สิ่งสำคัญคือต้องใช้ตัวแปรจำนวนมากเพื่อที่ค่าส่วนใหญ่จะไม่ถูกฮาร์ดโค้ด พวกเขาสามารถเปลี่ยนแปลงได้ด้วยถุงมือและยังสามารถเปลี่ยนแปลงได้อย่างง่ายดายในที่เดียว แทนที่จะอัปเดตค่าจำนวนมากทั่วทุกแห่ง ฉันจะเน้นบางสิ่งที่สำคัญ
- ขนาดผ้าใบเป็นสิ่งที่ดีที่มีตัวแปรเดียวในการอัปเดตขึ้นอยู่กับขนาดของผืนผ้าใบของฉัน เหมือนกันกับรูปร่างสูง ขณะที่ฉันเพิ่มหรือกำจัดกราฟิก ฉันสามารถอัปเดตหมายเลขนั้นได้ที่นี่
- ตัวแปรสูงและต่ำช่วยให้ฉันติดตามค่าสูงและต่ำในปัจจุบันสำหรับเซ็นเซอร์และมีช่วงการสอบเทียบอย่างต่อเนื่อง นี่เป็นสิ่งสำคัญเนื่องจากทุกคนที่สวมถุงมือจะมีช่วงการเคลื่อนไหวที่แตกต่างกัน ดังนั้นเสียงสูงและเสียงต่ำจึงจะสามารถเข้าถึงได้
- บรรทัดที่ 66-68 กำลังอ่านค่าอะนาล็อกจากหมุดสำหรับเซ็นเซอร์แบบยืดหยุ่น
-
บรรทัดที่ 69-74 กำลังปรับเทียบค่าสูงสำหรับนิ้วชี้
- หากถึงจุดสูงสุดใหม่ จะกำหนดเป็นระดับสูงสุด
- ปรับช่วงของนิ้วนั้นใหม่
- ใช้ช่วงใหม่นั้นสำหรับการจับคู่สี
- บรรทัดที่ 75-80 กำลังปรับเทียบค่าต่ำสำหรับนิ้วชี้
- บรรทัดที่ 81-104 ทำแบบเดียวกับที่ 4 และ 5 สำหรับนิ้วกลางและนิ้วนาง
-
เส้น 105-107 กำลังจับคู่ค่าเซ็นเซอร์แบบยืดหยุ่นของฉันกับค่าสี 0-255 (หรือ colorLow ไปที่ colorHigh หากฉันไม่ได้ทำแบบเต็มช่วง)
- ฟังก์ชันแผนที่ในตัวจาก Makecode ไม่ได้ให้แผนที่ที่ยอดเยี่ยมแก่ฉัน เนื่องจากช่วงที่ฉันได้รับจากเซ็นเซอร์มีจำกัด ดังนั้นฉันจึงสร้างฟังก์ชันการทำแผนที่ของตัวเอง
- นี่คือวิธีการทำงาน ช่วงอินพุตของแต่ละนิ้วจะถูกกำหนดโดยมัน (ค่าสูงสุด - เป็นค่าต่ำสุด) ช่วงสี ซึ่งก็คือ (ค่าสีสูงสุด - ค่าสีต่ำสุด) หารด้วยแต่ละช่วงนิ้ว ตัวเลขนี้ปัดเศษจำนวนเต็มต่ำสุดและเป็นผลหาร
- (ค่าเซ็นเซอร์จริง - ค่าเซ็นเซอร์ต่ำสุด) ให้ค่าภายในช่วง การคูณสิ่งนี้ด้วยผลหารที่เราพบด้านบนและการเพิ่มค่าสีที่ต่ำที่สุดจะทำให้คุณได้ค่าที่แมปจากเซ็นเซอร์ไปยังสีภายในช่วงสี
- บรรทัดที่ 109 กำลังอ่านค่าระดับเสียง (ขึ้นและลง)
- เส้น 110-115 กำลังสอบเทียบค่าสูงและต่ำสำหรับค่านี้
- บรรทัดที่ 116 กำลังอ่านค่าม้วน (ซ้ายและขวา)
- บรรทัดที่ 117-122 กำลังสอบเทียบค่าสูงและต่ำสำหรับค่านี้
- บรรทัดที่ 123-126 จะจับคู่ค่า pitch และ roll กับขนาดผ้าใบและปัดเศษให้เป็นจำนวนเต็ม
- บรรทัดที่ 127 เขียนตัวแปรลงในเอาต์พุตแบบอนุกรมโดยใช้ serial.writeLine โดยคั่นทุกค่าด้วยเครื่องหมายจุลภาคและช่องว่าง ", " เพื่อแยกวิเคราะห์ในภายหลัง
เมื่อคุณได้โค้ดตามที่ต้องการแล้ว ให้ดาวน์โหลดและลากจากการดาวน์โหลดของคุณไปยัง Micro:bit (คุณควรเห็นมันใน "Locations" ทางด้านซ้ายของเครื่องมือค้นหาของคุณ) เพื่ออัปโหลดโค้ดไปยัง Micro:bit
ขั้นตอนที่ 8: การสื่อสารแบบอนุกรมด้วย P5.js
ในการสื่อสารแบบอนุกรมกับ p5.js เราจำเป็นต้องมีเครื่องมือพิเศษ หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับเบื้องหลังของการสื่อสารแบบอนุกรม ฉันขอแนะนำให้อ่านบทความนี้
- ดาวน์โหลดแอป p5.js เวอร์ชันหนึ่งจากลิงก์นี้ ฉันมีเวอร์ชันอัลฟ่า 6 แต่จะใช้งานได้
- ใช้เทมเพลต p5.js นี้สำหรับการสื่อสารแบบอนุกรม ในการตั้งค่าให้ใส่ชื่อพอร์ตอนุกรมที่ถูกต้องของคุณสำหรับ portName ในบรรทัดที่ 12 นี่คือชื่อที่เราพบในขั้นตอนที่ 2
- เชื่อมต่อ Micro:bit เข้ากับคอมพิวเตอร์
- เปิดแอปซีเรียล p5.js
- เลือกพอร์ตของคุณจากรายการพอร์ตและไม่ต้องดำเนินการอื่นใด ไม่แม้แต่จะกดเปิด! เพียงเลือกพอร์ตของคุณจากรายการของคุณ
- กดเรียกใช้ในเทมเพลตอนุกรม p5.js คุณควรจะเห็นมันเปิดอยู่ และมันจะอ่านค่าว่างให้คุณ เนื่องจากเรายังไม่ได้เขียนโค้ดเพื่อแยกวิเคราะห์เอาต์พุตอนุกรมของเรา
ตอนนี้เราสามารถสื่อสารแบบอนุกรมจาก Micro:bit ถึง p5.js ได้แล้ว!
ขั้นตอนที่ 9: รหัส P5.js
ตอนนี้เราจะข้ามไปที่รหัส p5.js นี่คือที่ที่เราอ่านค่าเอาต์พุตแบบอนุกรมและใช้เพื่อสร้างงานศิลปะ
- ดังที่ได้กล่าวไว้ในขั้นตอนก่อนหน้านี้ ตรวจสอบให้แน่ใจว่า portName ในบรรทัดที่ 12 เป็นชื่อพอร์ตคอมพิวเตอร์เฉพาะของคุณ
- ในฟังก์ชัน setup() ในบรรทัดที่ 32-33 ฉันได้เพิ่มด้านซ้ายและ rightBuffer ด้วย createGraphics ฉันทำสิ่งนี้เพื่อแยกผืนผ้าใบเพื่อให้ส่วนหนึ่งใช้สำหรับการวาดภาพ และอีกส่วนหนึ่งสามารถแสดงทิศทางและแสดงกราฟิกใด คุณกำลังดูหรือเลื่อนดู
- ฟังก์ชัน draw() เรียกใช้ฟังก์ชันที่ฉันสร้างเพื่อสร้าง leftBuffer และ rightBuffer แยกกัน นอกจากนี้ยังกำหนดตำแหน่งที่มุมบนซ้ายของแต่ละบัฟเฟอร์เริ่มต้น
- ฟังก์ชัน drawRightBuffer() จะแสดงข้อความทั้งหมดสำหรับทิศทางและการเลือกกราฟิก
-
ฟังก์ชัน drawLeftBuffer() แสดงกราฟิกทั้งหมด
- บรรทัดที่ 93 สุ่มสร้างค่าสำหรับค่าอัลฟ่า ดังนั้นสีทั้งหมดจึงมีค่าความโปร่งใสต่างกันเพื่อให้ดูน่าสนใจยิ่งขึ้น หากฉันมีเซ็นเซอร์แบบยืดหยุ่น 4 ตัว ฉันจะใช้อันที่ 4 สำหรับสิ่งนี้!
- บรรทัดที่ 94 ตั้งค่าจังหวะเป็นค่า r, g, b ที่กำหนดโดยเซ็นเซอร์แบบยืดหยุ่น
- บรรทัด 96-102 สามารถยกเลิกการใส่ความคิดเห็นเพื่อทดสอบว่าถุงมือทำงานอย่างไรโดยไม่ต้องใช้ถุงมือโดยใช้เมาส์แทน แทนที่บรรทัด 102 ด้วยกราฟิกจากฟังก์ชันที่เหลือ
- 104-106 ลบผ้าใบเมื่อมือสั่นโดยการตั้งค่าพื้นหลังผ้าใบเป็นสีดำ
- 108-114 ควบคุมการเติมรูปร่างเมื่อกด A+B และเลือกและรูปร่างปัจจุบันเหมือนกัน
- 117-312 เป็นตำแหน่งที่แสดงกราฟิก นี่คือโค้ดจำนวนมากและส่วนที่ต้องสร้างสรรค์! ฉันขอแนะนำให้ดูการอ้างอิง p5.js เพื่อทำความเข้าใจวิธีควบคุมรูปร่างให้ดีขึ้น ฉันใช้การหมุนและระยะพิทช์เพื่อควบคุมตำแหน่ง x, y และเปลี่ยนขนาดของรูปร่างและกราฟิก และดังที่ฉันได้กล่าวไว้ก่อนหน้านี้ว่าใช้ เซ็นเซอร์โค้งงอเพื่อควบคุมสี ที่นี่คุณสามารถสร้างสรรค์ได้! เล่นกับสิ่งที่ p5.js นำเสนอและสร้างกราฟิกสนุกๆ ของคุณเองเพื่อควบคุม! ที่นี่ฉันยังตั้งค่าคำอธิบายสำหรับ currentShape ที่แสดงบน rightBuffer
- 318-460 ฉันตั้งค่าคำอธิบายสำหรับรูปร่างที่เลือก
-
บรรทัด 478-498 เป็นฟังก์ชัน serialEvent() นี่คือที่ที่เราได้รับข้อมูลอนุกรม
- ในบรรทัดที่ 485-486 ฉันตั้งค่า proll และ ppitch (การม้วนและพิทช์ก่อนหน้า) เป็นค่าการม้วนและพิทช์ก่อนหน้า
- ในบรรทัดที่ 487 ฉันแยกข้อมูลใน ", " ฉันทำเช่นนี้เพราะฉันเขียนข้อมูลให้คั่นด้วยเครื่องหมายจุลภาค คุณจะใส่อะไรก็ตามที่แยกตัวแปรไว้ตรงนี้ ตัวแปรเหล่านี้จะถูกใส่ลงในอาร์เรย์ตัวเลข
- จากนั้นในบรรทัดที่ 488-496 ฉันตั้งค่าตัวแปรเป็นองค์ประกอบที่เกี่ยวข้องในอาร์เรย์และแปลจากสตริงเป็นตัวเลข ฉันใช้ตัวแปรเหล่านี้ตลอดฟังก์ชัน drawLeftBuffer() เพื่อควบคุมกราฟิก
นั่นเป็นการสรุปโค้ดและเสร็จสิ้นโครงการ! ตอนนี้เราสามารถเห็นถุงมือทำงานจริง
ขั้นตอนที่ 10: ผลิตภัณฑ์ขั้นสุดท้าย
นี่คือภาพถุงมือที่ทำเสร็จแล้วและงานศิลปะบางส่วนที่สร้างขึ้น! ชมวิดีโอสาธิตการใช้งานจริง!
แนะนำ:
ต่อเนื่อง - จอแสดงผล LED Art แบบสโลว์โมชั่น: 22 ขั้นตอน (พร้อมรูปภาพ)
Continuum - จอแสดงผล LED Art แบบสโลว์โมชั่น: Continuum คือการแสดงผลงานศิลปะแบบไลท์อาร์ตที่เคลื่อนไหวอย่างต่อเนื่อง โดยมีตัวเลือกให้เคลื่อนที่อย่างรวดเร็ว ช้า หรือช้าอย่างเหลือเชื่อ ไฟ LED RGB ในจอแสดงผลได้รับการอัปเดต 240 ครั้งต่อวินาที โดยจะมีการคำนวณสีที่ไม่ซ้ำกันในแต่ละการอัปเดต สไลเดอร์ด้านข้าง
Shadow Box Wall Art: 8 ขั้นตอน (พร้อมรูปภาพ)
Shadow Box Wall Art: บางครั้งฉันชอบที่จะมีโครงการที่ท้าทาย ซึ่งฉันสามารถนำแนวคิดที่น่าสนใจมาใช้ รายการโปรดของฉันคือโปรเจ็กต์ที่สวยงามและสวยงาม ซึ่งฉันได้ทำไปแล้วบางส่วนแล้ว ในขณะที่ทำงานในโครงการเหล่านี้ ฉันได้เ
Heated Glove Liners Ver. ถุงมือกันความร้อน 2: 8 ขั้นตอน (พร้อมรูปภาพ)
Heated Glove Liners Ver. ถุงมือกันความร้อน 2: หมายเหตุ: วิธีการต่อสายที่อธิบายไว้ในคำแนะนำนี้ไม่แข็งแรงเท่าที่ควร วิธีปรับปรุงสามารถพบได้ที่นี่: การทำงานกับ Carbon Heat Rope นี่เป็นเวอร์ชันปรับปรุงของโครงการก่อนหน้าของฉัน การก่อสร้างง่ายขึ้น
DIY Glove Controller พร้อมเซนเซอร์ E-Textile: 14 ขั้นตอน (พร้อมรูปภาพ)
ตัวควบคุมถุงมือ DIY พร้อมเซ็นเซอร์ E-Textile: คำแนะนำนี้เป็นการสอนทีละขั้นตอนเกี่ยวกับวิธีการทำถุงมือข้อมูลด้วยเซ็นเซอร์ eTextile โครงการนี้เป็นความร่วมมือระหว่าง Rachel Freire และ Artyom Maxim Rachel เป็นนักออกแบบสิ่งทอถุงมือและเซ็นเซอร์ eTextile และ Arty เป็นผู้ออกแบบวงจร
Power Glove Pi: 7 ขั้นตอน
Power Glove Pi: นี่คือถุงมือ Nintendo Power ที่มี Raspberry pi zero อยู่ข้างใน ฉันกำลังใช้ D-pad, A, B, Start และ Select ดั้งเดิมสำหรับการควบคุม สิ่งที่คุณต้องมีสำหรับโปรเจ็กต์นี้:1) ถุงมือพาวเวอร์นินเทนโด 2) Raspberry pi zero พร้อมการ์ด SD และสายทั้งหมด