สารบัญ:
- ขั้นตอนที่ 1: รายการชิ้นส่วน
- ขั้นตอนที่ 2: The Cube
- ขั้นตอนที่ 3: แผงเรืองแสง
- ขั้นตอนที่ 4: พับทับ
- ขั้นตอนที่ 5: เซ็นเซอร์
- ขั้นตอนที่ 6: สตริงไฟกะพริบ
- ขั้นตอนที่ 7: พลัง
- ขั้นตอนที่ 8: วงจร
- ขั้นตอนที่ 9: โมดูล BLE
- ขั้นตอนที่ 10: การเดินสายขั้นสุดท้าย
- ขั้นตอนที่ 11: การทดสอบ
- ขั้นตอนที่ 12: การออกแบบเซนเซอร์ใหม่
- ขั้นตอนที่ 13: รหัส
- ขั้นตอนที่ 14: การพับครั้งสุดท้าย
- ขั้นตอนที่ 15: อนาคต
วีดีโอ: พับ Blinky Light Thing: 15 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:07
แรงบันดาลใจ
เมื่อหลายปีก่อน พี่ชายของฉันมีไอเดียที่ยอดเยี่ยมสำหรับผลิตภัณฑ์ที่เรียกว่า Blinky Light Thing มันเป็นอุปกรณ์ที่ไร้ประโยชน์ซึ่งเกือบจะสร้างความสนุกสนานให้กับเจ้าของด้วยไฟกะพริบ การสั่น และการเคลื่อนไหวแบบดั้งเดิมบางอย่าง (เช่นเท้าเดียวที่มันสามารถโยกเยกได้) มันจะเป็นเหมือน Pet Rock สำหรับสหัสวรรษใหม่ มันไม่เคยทำ
แฟลชไปข้างหน้าถึงตอนนี้ ฉันมีไอเดียเกี่ยวกับเกมที่มีไฟกระพริบ เสียงบี๊บ และเซ็นเซอร์สัมผัส ดูเหมือนใช้งานได้จริงมากขึ้น แต่ก็ยังเป็น "สิ่งของ" ที่มี "ไฟกะพริบ" และชื่อจึงเหมาะสมกับอุปกรณ์นี้!
Blinky Light Thing คืออะไร?
ต่อจากนี้จะเรียกว่า BLT เป็นวัตถุมือถือขนาดเล็ก (ปัจจุบันเป็นลูกบาศก์) ซึ่งคุณสามารถเล่นเกมได้หลายเกม แต่ละด้านของลูกบาศก์สามารถสว่างขึ้นและยังสัมผัสได้ถึงการสัมผัส คิวบ์ยังรู้ว่ามันอยู่ในทิศทางใดและสามารถรับรู้การเคลื่อนไหวได้
แต่นี่เป็นส่วนเด็ด (นอกจากไฟกระพริบและอย่างอื่น..). มันมีความสามารถในการสื่อสารกับ BLT อื่น ๆ ! ทำได้ผ่าน Bluetooth Low Energy หรือ BLE ซึ่งจะทำให้เกมมีมากกว่าหนึ่งคิวบ์ และเกมที่มีผู้เล่นหลายคน
วิวัฒนาการ
ในขั้นต้น เมื่อแรงบันดาลใจมากระทบฉัน ฉันจินตนาการถึงลูกบาศก์ที่เล็กกว่ามากและมีจำนวนลูกบาศก์ ฉันสรุปได้อย่างรวดเร็วว่าสิ่งนี้ซับซ้อนเกินไปที่จะดึงออกมาเป็นต้นแบบแรก และตกลงกับแนวคิดที่จะมีเพียง 2 ก้อนที่ใหญ่กว่าเพื่อพิสูจน์แนวคิด การออกแบบครั้งแรกจะสร้างเป็นลูกบาศก์แข็งที่มีด้านอะครีลิก โดยมีเม็ดมีดที่มีอุปกรณ์อิเล็กทรอนิกส์และแผงติดตั้งอยู่บนเฟรมด้านใน นอกจากนี้ ในการออกแบบดั้งเดิม ไฟ LED ในตัวบน Circuit Playground จะส่องสว่างด้านลูกบาศก์ผ่าน 'ท่อไฟ' ที่ทำจากอะครีลิคงอ โดยรวมแล้วนี่ฉลาดมาก แต่อาจได้รับการออกแบบทางวิศวกรรมมากเกินไป! ฉันไปถึงขั้นสร้างลูกบาศก์ แผง และโครงสร้างภายในก่อนที่จะรู้ว่ามันซับซ้อนเกินไป
ใส่: กระดาษ
เมื่อถึงจุดหนึ่งในสเก็ตช์ของฉัน ฉันได้จัดวางส่วนประกอบทั้งหมดบนภาพวาดด้านลูกบาศก์แบนๆ เพื่อให้เห็นภาพสิ่งต่างๆ ได้ดีขึ้น ต่อมา ฉันกลับมาที่ความคิดนี้และคิดว่า บางทีฉันอาจจะทำให้มันแบนแล้วค่อย "พับ" ขึ้น ฉันคิดว่าฉันสามารถทำเช่นนี้กับแผงอะครีลิคโดยวางให้แบน ติดตั้งชิ้นส่วนทั้งหมดแล้ว "พับ" ทั้งหมดเข้าที่
ต่อมา ฉันคิดว่า ทำไมคุณไม่ลองสร้างต้นแบบจากกระดาษ/กระดาษแข็ง แล้วพับมันขึ้นมาล่ะ? ฉันได้เล่นกับความคิดของคอมพิวเตอร์พับและหุ่นยนต์พับแล้วทำไมไม่ทำเช่นนี้ด้วย?
ขั้นตอนที่ 1: รายการชิ้นส่วน
ชิ้นส่วนสำหรับทำ Blinky Light Thing ชิ้นเดียว โดยทั่วไปแล้ว NeoPixels จะมาในรูปแบบแถบยาว 1 เมตร ซึ่งเพียงพอสำหรับสร้างลูกบาศก์ 2 ก้อนโดยเหลืออีกเล็กน้อย
เทปฟอยล์โลหะสะท้อนแสง 2 - $3.38
แผ่นอะคริลิค 8" x 10" - $3.38
สต็อกการ์ด 2 แผ่น 8.5" x 11" - $3.99 ฉันใช้สีน้ำเงิน แต่สีเข้มจะทำงานได้ดี
Circuit Playground Classic - $20
โมดูล HM-10 BLE - $4
สายวัดเล็ก. ฉันใช้สายแพแบบรีไซเคิล - $1.77 จากตัวเชื่อมต่อฟลอปปีไดรฟ์เก่า
แถบ NeoPixel 1 เมตร - $ 6 (30 leds เราต้องการเพียง 12)
ที่ใส่แบตเตอรี่ AAA 3x - $140
กาวเหนียว - $1.29 หรือกาวอื่นๆ สำหรับกระดาษ
กาวร้อน
เครื่องมือที่จำเป็น
ที่ปอกสายไฟหรือใช้ใบมีดโกนอย่างระมัดระวัง..
เครื่องมือให้คะแนนอะคริลิกหรือใบมีด x-acto ที่เหมาะสม
เครื่องมือให้คะแนนสำหรับกระดาษแข็งหรือปากกาลูกลื่นที่ดี
แคลมป์ (ทำให้ตัดอะครีลิคได้ง่ายขึ้น)
ช่างแกะสลักหรือเครื่องมืออื่นๆ ที่คล้ายเดรเมล
กระดาษทรายละเอียด
ไฟแช็ก Bic (หากต้องการขัดสีอะครีลิคด้วยไฟ)
เจาะรู
ขั้นตอนที่ 2: The Cube
BLT ที่เสร็จสมบูรณ์เป็นลูกบาศก์ขนาด 2.5 นิ้ว ขนาดนี้มาถึงแล้วเพื่อเป็นการประนีประนอมที่ดีเพื่อให้มี Circuit Playground (วงกลม 2 นิ้ว) และแผงอะคริลิก ที่ใส่แบตเตอรี่ ฯลฯ
ด้านข้างของลูกบาศก์สามารถวางราบบนแผ่นการ์ดได้ คุณรู้หรือไม่ว่ามี 11 วิธีในการทำเช่นนี้? ฉันไม่ได้! ฉันมีข้อ จำกัด เพิ่มเติมแม้ว่า ต้องพอดีกับกระดาษ/การ์ดขนาดมาตรฐาน (8.5" x 11") และต้องพับในลักษณะนี้เพื่อลดการโค้งงอในสายไฟ รูปแบบที่ฉันเลือกนั้นพอดีเกือบสมบูรณ์แบบเพื่อสร้างลูกบาศก์ขนาด 2.5 นิ้ว นอกจากนี้ยังช่วยให้แต่ละด้านของลูกบาศก์มีด้านนอกและพับทับ ซึ่งเป็นรูปแบบด้านหลังของแผงอะครีลิกแต่ละแผ่น
ฉันพิมพ์สิ่งนี้ (รวม-p.webp
ขั้นตอนที่ 3: แผงเรืองแสง
แต่ละด้านของลูกบาศก์มีแผงเรืองแสงที่ขอบ แต่ละขนาดมีขนาดเป็นสี่เหลี่ยมจัตุรัส 2 นิ้ว โดยมีขนาดเพิ่มขึ้นอีกประมาณ 1/4 นิ้ว บิตพิเศษนี้จะเป็นตำแหน่งที่ติดตั้งไฟ LED ฉันใช้อะคริลิคหนา.08 นิ้วจาก Plaskolite ซึ่งฉันซื้อที่ Lowes ใน 8 x 10 แผ่น หนึ่งแผ่นจะได้รับชิ้นส่วนทั้งหมดสำหรับหนึ่งก้อน คุณสามารถนำชิ้นส่วนเหล่านี้ไปตัดด้วยเลเซอร์ได้จากบริการอย่าง Ponoko แต่ฉันทำด้วยมือ
ในการตัดชิ้นส่วน คุณต้องมีเครื่องมือให้คะแนน ฉันใช้ใบมีดหนึ่งอันจากชุด x-acto ของฉัน ฉันพิมพ์ชิ้นส่วนต่างๆ ใต้พลาสติก แล้วทำแต้มตามเส้นด้านบน คุณต้องคิดก่อนว่าจะหักเส้นไหนก่อน เพราะคุณต้องแยกพลาสติกจากขอบข้างหนึ่งไปอีกขอบหนึ่ง คุณไม่สามารถทำเช่นนี้เพื่อสร้างรูได้ ฉันแนะนำให้หนีบพลาสติกไว้กับขอบโต๊ะโดยให้เส้นบอกคะแนนอยู่ที่ขอบโต๊ะ จากนั้นกดลงอย่างรวดเร็วพลาสติกจะแตก วิธีนี้ทำให้ขอบเรียบแต่คุณจะต้องการขัดให้เรียบที่สุดเท่าที่จะทำได้
จากนั้นขัดขอบทั้งหมดด้วยกระดาษทรายละเอียดเพื่อให้เรียบที่สุดเท่าที่จะเป็นไปได้ และให้โค้งมนเล็กน้อย ซึ่งจะช่วยให้แสงสะท้อนภายในพลาสติก สุดท้าย ฉันได้ "ขัดเงา" ขอบด้วยไฟแช็ก Bic แบบธรรมดา ที่ขอบด้านหนึ่ง (ด้านยาว, IE, ส่วนเสริมพิเศษ 1/4 นิ้ว) ฉันได้ขัดมุมเอียงเป็นวงกลม ซึ่งจะช่วยให้สะท้อนแสงไปยังส่วนที่เหลือของแผง แทนที่จะติด LEDS เข้ากับขอบ ซึ่งน่าจะทำได้ยากในการออกแบบนี้ ไฟ LED จะติดที่อีกด้านหนึ่งของมุมเอียง โดยให้ชิดกับพื้นผิวของแผง
ลวดลายถูกแกะสลักลงในพลาสติกด้วยเครื่องมือ Dremel และหัวเจียรกลมขนาดเล็ก ทำให้สำหรับพื้นผิวที่สามารถหักเหแสงได้ จึงทำให้เกิดรูปแบบที่เรืองแสงได้ เพื่อให้ได้แสงที่ดีที่สุด คุณต้องมีลวดลายที่ด้านหลังของจาน จากนั้นเพลตจะได้รับการสนับสนุนด้วยการพับเพื่อให้คุณสมบัติเรืองแสงมีความเปรียบต่างมากขึ้น สำหรับการกักเก็บแสงเป็นพิเศษ ฉันใช้เทปฟอยล์บางส่วนรอบๆ บริเวณโค้งงอและรอบๆ LED
คุณอาจได้ผลลัพธ์ที่ดีกว่าเมื่อใช้บริการอย่าง Ponoko laser cut และ engrave the panel แต่ฉันไม่อดทนพอสำหรับต้นแบบนี้ ฉันจึงทำด้วยมือ
สำหรับลูกบาศก์แรกของฉัน ฉันใช้รูปแบบของคำกาลิเฟรยันสำหรับแต่ละด้าน หากคุณเป็นแฟนไซไฟ คุณจะรู้ได้ทันทีว่าสิ่งเหล่านี้คืออะไร แม้ว่าคุณจะไม่รู้ว่ามันพูดอะไร…:)
ขั้นตอนที่ 4: พับทับ
ตอนนี้เราต้องการแนบพาเนล ฉันพบว่ากาวเหนียวไม่ติดอะครีลิคจริงๆ ฉันลงเอยด้วยการใช้เทปสองหน้า ฉันเพิ่งนึกขึ้นได้หลังจากที่ทำลูกบาศก์เสร็จแล้วว่าเทปกาวสองหน้ามีแนวโน้มที่จะเรืองแสงด้วย ดังนั้นจึงไม่ควรใช้กับด้านหลังทั้งแผง คุณควรติดที่มุมทั้งสี่เท่านั้น
สังเกตการจัดเรียงของแผงเพื่อให้คุณสามารถพับและจัดวางได้อย่างถูกต้อง ฉันกดลงไปที่ขอบของแผงเพื่อใส่ไว้กับบอร์ดการ์ด กาว Tacky ใช้งานได้ดีที่นี่ เพราะจับกระดาษได้อย่างรวดเร็วและถือไว้
ขั้นตอนที่ 5: เซ็นเซอร์
ในการตรวจจับการสัมผัส ลูกบาศก์แต่ละด้านมีเซ็นเซอร์คาปาซิทีฟ เทปนี้ทำมาจากเทปฟอยล์ ซึ่งคุณสามารถซื้อได้ง่ายจากร้านขายของใช้ในบ้านอย่าง Lowes มักใช้ในท่ออากาศเพื่อปิดผนึกชิ้นส่วนของท่อ ลวดเส้นเดียวถูกดึงที่ปลายด้านหนึ่งและวางไว้ใกล้ขอบของเซ็นเซอร์ จากนั้นยึดไว้กับเทปฟอยล์สี่เหลี่ยมเล็กๆ อีกอันหนึ่ง เทปกว้าง 2 นิ้ว ซึ่งเป็นขนาดที่เหมาะสมที่สุด และใช้ความยาวสามความยาวเพื่อให้ได้เซ็นเซอร์สัมผัสสองตัวแต่ละตัว
เซ็นเซอร์ทั้งหมดเชื่อมต่อเข้าด้วยกันและต่อสายดินด้วยการตัดวงกลมตรงกลางของแต่ละแผงและเชื่อมต่อด้วยลวด
การทดลองมีความสำคัญที่นี่ ครั้งแรกของฉันฉันใช้ฟอยล์สี่เหลี่ยมธรรมดา วิธีนี้ใช้ได้ผลดีเมื่อสัมผัสฟอยล์โดยตรง แต่ใช้งานไม่ได้ดีหรือเลยเมื่ออยู่ด้านหลังอะคริลิก สำหรับความพยายามครั้งต่อไปของฉัน ฉันตัดวงกลมตรงกลางฟอยล์โดยมีช่องว่างประมาณ 2 มม. ถึงฟอยล์ด้านนอกที่เหลือ สายเซ็นเซอร์เชื่อมต่อกับศูนย์กลางในขณะที่ฟอยล์ด้านนอกต่อสายดิน วิธีนี้ใช้ได้ผลดีขึ้นมากและมีความอ่อนไหวหลังพลาสติกถึง 2 ชั้น
เซ็นเซอร์ 5 ตัวเหมือนกันทั้งหมด แต่เซ็นเซอร์ตัวที่หกคือที่ที่ Circuit Playground อยู่ ฉันต้องการที่จะยังคงใช้ไฟ LED ภายในบนบอร์ดนี้ ดังนั้นจึงมีการสร้างลวดลายและใช้ในการตัดวงกลมในกระดาษฟอยล์ รวมทั้งการสำรองสต็อกการ์ด
ขั้นตอนที่ 6: สตริงไฟกะพริบ
ในการออกแบบดั้งเดิมของฉัน ฉันซื้อ 5050 SMT LED แต่ละตัวและบัดกรีสายไฟให้พวกเขา มันดูงุ่มง่ามและซับซ้อน และสตริงที่ได้ไม่พอดีกับกระดาษแบบพับที่ฉันทำลงไป ดังนั้นฉันจึงซื้อ NeoPixels ความยาว 1 เมตร ที่มี 30 พิกเซลต่อเมตร นี่เป็นระยะห่างที่เกือบจะสมบูรณ์แบบในการรับสองพิกเซลต่อแผง ปัญหาคือฉันจะต้องงอเชือกรอบมุมไม่ว่าฉันจะวางลูกบาศก์อย่างไร โค้งงอก็จะเป็นโค้งผสมไม่ใช่แค่พับธรรมดา
คุณสามารถสั่งแถบที่มีรูปทรงตัว "S" ที่จะพับในลักษณะนี้ได้ แต่ฉันไม่ต้องการรอเป็นเดือนเพื่อสั่งซื้อจากจีน ดังนั้นฉันจึงได้แถบมาตรฐานและตัดสามรูอย่างระมัดระวังเพื่อให้ได้แถบที่ยืดหยุ่นมากขึ้น ระวังที่นี่เพราะคุณต้องการทิ้งร่องรอยทองแดงให้เพียงพอเพื่อให้มันยังคงใช้งานได้ ฉันคำนวณว่าแถบนี้จะใช้พลังงานเท่าใดและต้องมีความกว้างเท่าใด ตราบใดที่มันยังกว้างประมาณ 2 มม. คุณก็น่าจะใช้ได้
แม้จะมีรู แต่ก็ยากที่จะเอาแถบเข้าที่ ถูกหยดกาวร้อนไว้ครึ่งหนึ่งระหว่าง LED แต่ละตัว เนื่องจากแถบกาวเป็นมันเงา คุณจึงสามารถดึงออกจากกาวร้อนได้ง่าย ดังนั้นควรระมัดระวัง มองเห็นได้ยาก แต่สำหรับการพับแต่ละครั้ง ฉันได้ให้ "ลักยิ้ม" ขึ้นด้านบนเล็กน้อยเพื่อที่ว่าเมื่อพับลูกบาศก์แล้ว มันจะพับเข้าด้านใน นี่เป็นสิ่งจำเป็นเพราะไม่เช่นนั้นจะทำให้พับได้ยากเนื่องจากแถบแข็งเกินไป
ตรวจสอบให้แน่ใจว่าคุณวางแนวแถบเพื่อให้ปลายอินพุตอยู่ใกล้กับแผงที่จะติดตั้ง Circuit Playground คุณจะต้องบัดกรีสายไฟสามเส้นที่ส่วนท้ายของแถบนี้
ขั้นตอนที่ 7: พลัง
ฉันใช้แบตเตอรี่ AAA 3 ก้อนเพื่อรับ 4.5V ซึ่งมากเกินพอที่จะจ่ายไฟให้กับ Circuit Playground (ซึ่งจะควบคุมให้เป็น 3.3v สำหรับโมดูล BLE) และเพียงพอสำหรับแถบ LED (ตามหลักแล้ว 5V ดังนั้นพวกเขาอาจไม่ ให้สว่างเต็มที่เท่าที่จะทำได้ แต่ก็ดีพอ)
ใช้สต็อกการ์ดสีเขียวมากขึ้น (เพื่อความสนุก) ฉันสร้างกล่องเรียบง่ายรอบๆ ที่ใส่แบตเตอรี่ ฉันใช้ที่ใส่ AAA x 2 อันและที่ใส่ AAA อีกอันหนึ่งอันเพราะนั่นคือสิ่งที่ฉันมีอยู่ในมือ กล่องใส่แบตเตอรี่จะทำการติดตั้งที่ปลอดภัยสำหรับแบตเตอรี่และยังเพิ่มความแข็งแรงให้กับก้อนสุดท้ายอีกด้วย
ขั้นตอนที่ 8: วงจร
เพื่อควบคุมลูกบาศก์ ฉันใช้ Adafruit Circuit Playground สิ่งเหล่านี้มีราคาแพงกว่า Arduino Nano หรือ Pro Mini แต่มีของในตัวมากมาย เช่น มาตรความเร่งและลำโพง ไมโครโฟน และปุ่มสองปุ่ม นอกจากนี้ยังมี 10 NeoPixels บนเครื่อง เดิมทีฉันวางแผนที่จะใช้อะคริลิกเพื่อสร้างท่อไฟที่จะโค้งงอไปรอบ ๆ ภายในลูกบาศก์เพื่อเปลี่ยนเส้นทางแสงไปทั้งหกด้าน สิ่งนี้ซับซ้อนเกินไป และในการทดสอบดูเหมือนว่าแสงจะไม่สว่างเพียงพอ ดังนั้นฉันจึงเลือกใช้แถบ NeoPixel พิกเซลในตัวจะใช้สำหรับตัวบ่งชี้อื่นๆ
โมดูล HM-10 ต้องการระดับ 3.3v สำหรับการสื่อสารแบบอนุกรม และเนื่องจาก Circuit Playground ทำงานที่ 3.3v จึงไม่มีปัญหาในการเชื่อมต่อโดยตรง ถ้าเราจะใช้ Arduino ชนิดอื่นเช่น Nano หรือ Pro Mini ที่ทำงานที่ 5V เราจะต้องการลดแรงดันไฟฟ้าที่อินพุต RX บน HM-10 ด้วยตัวต้านทานสองตัว (ตัวแบ่งแรงดันไฟฟ้า)
เนื่องจากเราใช้โมดูลบลูทูธเพื่อสื่อสารระหว่างคิวบ์ เราจึงเหลือเพียงสาย I/O หกเส้น หนึ่งเส้นสำหรับเซ็นเซอร์คาปาซิทีฟแต่ละตัวสำหรับด้านข้างของคิวบ์ ที่ไม่ทิ้ง I/O ไว้สำหรับ NeoPixels ภายนอก เนื่องจากต้องมีระยะเวลาที่เข้มงวดในการตั้งโปรแกรม NeoPixels เราจึงสามารถใช้พินเดียวสำหรับทั้งพิกเซลและเซ็นเซอร์ได้ เราตรวจสอบเซ็นเซอร์เป็นระยะ จากนั้นเมื่อจำเป็น ให้ใช้หมุดเพื่อตั้งโปรแกรมพิกเซล พิกเซลไม่ได้สังเกตเซ็นเซอร์จริงๆ และแน่นอนว่าเซ็นเซอร์ไม่สนใจเกี่ยวกับพัลส์การตั้งโปรแกรม ตามทฤษฎีแล้ว เซ็นเซอร์จะเพิ่มความจุให้กับเส้นซึ่งอาจส่งผลต่อพิกเซล แต่ดูเหมือนว่าจะไม่เพียงพอที่จะทำให้เกิดปัญหา
อย่างไรก็ตาม สิ่งที่เกิดขึ้นคือปัญหาการเข้ารหัส เนื่องจากเซ็นเซอร์คาปาซิทีฟเป็นอินพุต โค้ดจึงตั้งค่าพินเป็นโหมดอินพุต เมื่อคุณพยายามควบคุม NeoPixels จะไม่ทำงาน เพียงแค่ตั้งค่าพินกลับเป็นโหมดเอาท์พุตด้วยตนเองก็สามารถแก้ไขปัญหาได้
แผนภาพ Fritzing แสดงโมดูลบลูทูธ HC-05 แต่เรากำลังใช้โมดูล HM-10 BLE ซึ่งมีพินเอาต์เหมือนกัน นอกจากนี้ยังแสดงแบตเตอรี่ AAA 4 ก้อน แต่เราต้องการเพียง 3 ก้อน สุดท้าย เซ็นเซอร์คาปาซิทีฟไม่ได้เป็นแบบสำเร็จรูป แต่ทำจากเทปฟอยล์ สายไฟถูกจัดกลุ่มเพื่อแสดงวิธีการใช้สายแพ
ขั้นตอนที่ 9: โมดูล BLE
เราจำเป็นต้องกำหนดค่าโมดูลไร้สาย BLE วิธีที่ง่ายที่สุดในการทำเช่นนี้คือการใช้โปรแกรมเมอร์ FTDI อย่างง่าย ซึ่งมักใช้ในการเขียนโปรแกรม Arduino ที่ไม่มี USB ในตัว (เช่น Pro Mini เป็นต้น) คุณสามารถรับสิ่งเหล่านี้ได้เพียงไม่กี่ดอลลาร์ คุณจะต้องเชื่อมต่อ Gnd และ Vcc กับโมดูล BLE และการเชื่อมต่อ RX และ TX แต่จะสลับกัน ดังนั้น RX บนบอร์ดหนึ่งจะไปที่ TX บนอีกบอร์ดหนึ่ง สิ่งนี้สมเหตุสมผลเพราะกระดานหนึ่งส่งไปยังอีกกระดานหนึ่งที่ได้รับ
เมื่อคุณเสียบ USB ของ FTDI เข้ากับคอมพิวเตอร์ของคุณ คุณจะสามารถเชื่อมต่อผ่านจอภาพอนุกรมใน Arduino IDE ได้ (ฉันใช้เวอร์ชันออนไลน์ที่ https://create.arduino.cc/editor) คุณจะต้องตั้งค่า Baud เป็น 9600 หากยังไม่ได้ตั้งค่า
เพื่อให้แน่ใจว่าใช้งานได้ ให้พิมพ์:
AT+NAME?
และกดปุ่มส่ง คุณควรได้รับการตอบกลับด้วยชื่อปัจจุบันของอุปกรณ์ (+NAME=อะไรก็ตาม) ตอนแรกฉันชื่อ BT-05 ซึ่งเป็นโมดูลที่ต่างจาก HM-10 มาตรฐาน (AT-09 *) แต่ในภาพ คุณจะเห็นว่าฉันเปลี่ยนชื่อเป็น BLT แล้ว (ชื่อมีอักขระจำกัดเพียง 12 ตัวเท่านั้น.. ดังนั้น "Blinky Light Thing" จะไม่ทำงาน) หากต้องการเปลี่ยนชื่อ ให้พิมพ์:
AT+NAME=BLT
จากนั้นฉันต้องรีเซ็ตเพื่อให้ชื่อปรากฏขึ้น:
AT+รีเซ็ต
เนื่องจากเรากำลังสร้างคิวบ์หลายอันที่ต้องคุยกัน คิวบ์หนึ่งต้องเป็น "มาสเตอร์" (หรือ "ส่วนกลาง" ในข้อกำหนด BLE) และควบคุม/พูดคุยกับคิวบ์อื่น ("ทาส" หรือ "อุปกรณ์ต่อพ่วง"). ในการทำเช่นนี้ สำหรับมาสเตอร์ เราต้องส่งคำสั่งเหล่านี้ (โมดูลมีค่าเริ่มต้นเป็นทาส/อุปกรณ์ต่อพ่วง)
AT+IMM0
AT+ROLE1
สิ่งนี้บอกให้โมดูลเชื่อมต่ออัตโนมัติ (คำสั่งแรก) จากนั้นให้เป็นอุปกรณ์ "ส่วนกลาง" (คำสั่งที่สอง)
* บันทึก
โมดูลของฉันคือโมดูล AT-09 (บอร์ด "ฝ่าวงล้อม" ที่ใหญ่กว่า) โดยมี HM-10 (บอร์ดที่เล็กกว่า) ติดอยู่ ชิปจริงที่ทำงานได้ทั้งหมดคือ Texas Instruments CC2541 โมดูลเหล่านี้มีหลากหลายรูปแบบ ดังนั้นโปรดใช้ความระมัดระวังในการสั่งซื้อของคุณ คุณต้องการค้นหาโมดูลของแท้จาก Jinan Huamao
ของฉันยังมีเฟิร์มแวร์ที่ฉันระบุไม่ได้ ดังนั้นจึงไม่ตอบสนองต่อคำสั่ง AT ที่น่าสนใจเกือบทั้งหมด ฉันต้อง reflash เป็นเฟิร์มแวร์จาก Jinan Huamao (https://www.jnhuamao.cn/download_rom_en.asp?id=) หากคุณลงเอยด้วยสิ่งเหล่านี้ นี่คือขั้นตอนในการ "แก้ไข" (https://forum.arduino.cc/index.php?topic=393655.0)
ขั้นตอนที่ 10: การเดินสายขั้นสุดท้าย
สำหรับการเดินสายขั้นสุดท้าย ฉันใช้สายแพแบบรีไซเคิลจากขั้วต่อไดรฟ์ฟล็อปปี้ดิสก์ตัวเก่า ลวดเส้นเล็กเส้นไหนก็ใช้ได้ แต่สายแพช่วยให้เก็บสิ่งของต่างๆ ให้สะอาดและเป็นระเบียบได้ง่ายขึ้น สายแพมีความยืดหยุ่นพอที่จะงอและรัดได้เมื่อจำเป็น
ฉันใช้จุดกาวร้อนเพื่อยึดสิ่งของหรือในบางแห่งก็ใช้เทปฟอยล์มากกว่าเดิม Circuit Playground ถูกจัดขึ้นพร้อมกับสต็อกการ์ดอีกเล็กน้อย
ขั้นตอนที่ 11: การทดสอบ
ก่อนที่จะสรุปสิ่งใด ให้ทดสอบสิ่งต่าง ๆ เสมอเพื่อดูว่ามันทำงานอย่างไร (ถ้าได้ผล!)
ก่อนประกอบชิ้นส่วนใดๆ เลย ผมต้องการทดสอบเซนเซอร์และสายไฟ LED ด้วย เนื่องจากต้องแชร์พินเดียวระหว่างสตริง LED และเซ็นเซอร์หนึ่งตัว นี่เป็นสิ่งแรกที่ฉันทดสอบ นี่คือที่ที่ฉันค้นพบว่ามันใช้งานไม่ได้ แต่เหตุผลก็คือต้องตั้งค่าพินที่ใช้ร่วมกันกลับไปที่พินเอาต์พุตหลังจากใช้เซ็นเซอร์
เซ็นเซอร์ตัวแรกที่ฉันทดสอบเป็นเพียงสี่เหลี่ยมฟอยล์ธรรมดา สิ่งนี้ได้ผล แต่ไม่ละเอียดอ่อนจริงๆ Circuit Playground ได้รับการกำหนดค่าให้สัมผัส capacitive โดยตรงกับแผ่นอิเล็กโทรดของมัน (โดยใช้ตัวต้านทานที่เล็กกว่า) น่าเสียดาย เพื่อให้ได้ความไวมากขึ้น คุณต้องมีตัวต้านทานที่ใหญ่กว่า แต่เราไม่สามารถเปลี่ยนแปลงสิ่งที่อยู่บนกระดานได้ การทดสอบครั้งที่สองของฉัน ฉันใช้เซ็นเซอร์ทรงกลมตรงกลางสี่เหลี่ยมฟอยล์โดยเอาฟอยล์ออกประมาณ 2 มม. โดยที่เหลือของฟอยล์ต่อกราวด์ สิ่งนี้สร้างขึ้นสำหรับเซ็นเซอร์ที่ละเอียดอ่อนกว่ามากซึ่งทำงานได้แม้กระทั่งหลังแผงอะครีลิค
น่าเสียดายที่หลังจากประกอบสิ่งของทั้งหมดแล้ว แต่ยังอยู่ในรูปแบบ "แบน" ฉันได้ทดสอบเซ็นเซอร์อีกครั้งและทำงานได้ไม่ดี โดยต้องสัมผัสโดยตรงกับฟอยล์ ฉันเชื่อว่านี่เป็นผลมาจากความจุกาฝากในสายแพ สิ่งที่ฉันไม่ได้พิจารณา
ขั้นตอนที่ 12: การออกแบบเซนเซอร์ใหม่
สิ่งแรกที่ฉันพยายามคือลดผลกระทบของความจุกาฝาก ฉันตระหนักได้เมื่อใช้สายแพว่าสายเซ็นเซอร์ทั้งหมดอยู่ติดกัน ทำให้เกิดความจุมากขึ้น สิ่งนี้ส่งผลให้เซ็นเซอร์สองตัวที่อยู่ไกลที่สุดทำงานร่วมกัน IE ฉันสามารถกดอันใดอันหนึ่งและรับค่าที่อ่านเหมือนกันบนพินอินพุตทั้งสอง เมื่อมองย้อนกลับไป ฉันสามารถใช้สายไฟเพิ่มเติมในสายแพได้ โดยมีสายกราวด์อยู่ระหว่างสายเซ็นเซอร์แต่ละเส้น ฉันไม่ต้องการเดินสายไฟใหม่ทั้งหมด ณ จุดนี้ ดังนั้นฉันจึงคิดวิธีแก้ปัญหาที่ชาญฉลาด
แทนที่จะใช้สายกราวด์เฉพาะ ฉันสามารถเปลี่ยนพินเซ็นเซอร์ทั้งหมดให้เป็นเอาต์พุตที่มีค่าตรรกะเท่ากับ 0 ซึ่งหมายความว่าพวกเขาจะต่อสายดิน จากนั้นเซ็นเซอร์ตัวเดียวที่ฉันต้องการอ่านจะเป็นอินพุตเดียวเท่านั้น นี้จะถูกทำซ้ำเพื่ออ่านเซ็นเซอร์แต่ละตัว สิ่งนี้ช่วยได้มากด้วยการเขียนโปรแกรมเพิ่มเติมเล็กน้อย!
นอกจากนี้ ฉันยังแยกสายไฟออกจากโมดูล BLE ออกจากสายเซ็นเซอร์เพื่อไม่ให้รบกวน
ถึงกระนั้นเซ็นเซอร์ก็ตรวจไม่พบการสัมผัสด้านหลังหน้าจออะครีลิค ในที่สุด ฉันตัดสินใจว่าการตรวจจับความจุในตัวของ Circuit Playground จะไม่ทำงาน มันถูกออกแบบมาสำหรับการสัมผัสโดยตรง ดังนั้นจึงมีตัวต้านทาน 1 เมกะโอห์มในแต่ละอินพุต เนื่องจากฉันไม่สามารถเปลี่ยนแปลงได้ และไม่มีพินเหลือแล้ว ฉันจึงต้องตรวจจับความจุด้วยพินเดียวเท่านั้นและตัวต้านทานภายนอก
ฉันเพิ่มตัวต้านทาน 10 megohm ให้กับแต่ละอินพุต เชื่อมต่อกับพิน 3.3v และเปลี่ยนเป็นไลบรารีเซ็นเซอร์ capacitive ที่ทำงานบนพินเดียว สาเหตุที่ทำให้เซ็นเซอร์มีความไวมากขึ้นคือตัวต้านทานที่สูงขึ้นทำให้ชาร์จช้าลง ทำให้สามารถวัดได้แม่นยำยิ่งขึ้น
ขั้นตอนที่ 13: รหัส
รหัสเป็นสิ่งที่ทำให้ทั้งหมดนี้ใช้งานได้แน่นอน ฉันมีหลายเกมในใจสำหรับคิวบ์นี้และหลายคิวบ์ ขณะนี้ฉันเพิ่งมีการใช้งานเกมที่เหมือนซิมง คุณสามารถค้นหาโค้ดได้ที่นี่:
ขั้นตอนที่ 14: การพับครั้งสุดท้าย
ตอนนี้เรามีทุกอย่างที่แนบ และทดสอบแล้ว เราสามารถทำการพับขั้นสุดท้ายที่เปลี่ยนการสร้าง 2D นี้เป็นคิวบ์ 3 มิติได้ เริ่มต้นด้วยมิติด้านยาวของชุดประกอบ พับส่วนพับด้านในทั้งสามส่วน จากนั้นใส่แถบลงในช่อง สร้างส่วนหลักของลูกบาศก์ กาวนี้ด้วย Tacky Glue ถัดไป พับแผงด้านบน (อันที่มี Circuit Playground) ลงบนลูกบาศก์ วางแท็บลงในช่อง คุณควรติดเทปนี้เข้าที่เพราะคุณอาจต้องเปิดมันเพื่อจุดประสงค์ในการตั้งโปรแกรมใหม่
ด้านสุดท้ายซึ่งทำหน้าที่เป็นฝาปิดสำหรับแบตเตอรี่ ไม่ควรติดกาว แต่ต้องใช้เทปหรือสิ่งอื่นเพื่อยึดให้เข้าที่ ในการออกแบบต่อมา อาจมีแถบล็อคที่จะเสียบเข้ากับแท็บหลักเพื่อยึดเข้าที่ เช่นเดียวกับที่ผลิตภัณฑ์จำนวนมากใช้ในแพ็คเกจ
ตอนนี้คุณควรมี Blinky Light Thing ที่ทำงานได้อย่างสมบูรณ์!
ขั้นตอนที่ 15: อนาคต
นี่คือต้นแบบของ Blinky Light Thing เป้าหมายคือสร้างลูกบาศก์อีกหลายๆ ก้อน คิวบ์จะสามารถสื่อสารระหว่างกันและเปิดใช้งานเกมที่เล่นกับหลายคิวบ์ และ / หรือผู้เล่นหลายคน การออกแบบขั้นสุดท้ายควรเป็นคิวบ์อะครีลิคตัดด้วยเลเซอร์ที่ดี หรืออาจเป็นตัวพิมพ์ 3 มิติพร้อมแผงอะครีลิค ฉันต้องการทำสิ่งนี้เป็นชุดและทำให้มันง่ายพอที่จะสร้างสำหรับเด็ก วงจรเซ็นเซอร์ของ LED สามารถสร้างขึ้นบน PCB ที่ยืดหยุ่นได้ เพื่อให้ง่ายต่อการสร้าง
หรือใครจะรู้ บางทีมันอาจจะทำเป็นของเล่นก็ได้? ผมต้องเล่นทดสอบกับคนดูว่าพวกเขาคิดอย่างไร เป็นโปรโตไทป์แล้ว มีเด็กและผู้ใหญ่หลายคนอยากเล่นและถามว่ามันคืออะไร..
แนะนำ:
Arduino Keyboard Joystick Extender Box และ Sound Controller Thing โดยใช้ Deej: 8 ขั้นตอน
Arduino Keyboard Joystick Extender Box และ Sound Controller Thing โดยใช้ Deej: ทำไมฉันจึงต้องการเพิ่มจอยสติ๊กขนาดเล็กลงในแป้นพิมพ์เพื่อควบคุมองค์ประกอบอินเทอร์เฟซหรืองานขนาดเล็กอื่นๆ ในเกมและเครื่องจำลอง (MS Flight Sim, Elite: Dangerous, Star Wars: ฝูงบิน ฯลฯ) สำหรับ Elite: Dangerous ฉันเคย
Blinky Building Shape: 5 ขั้นตอน (พร้อมรูปภาพ)
Blinky Building Shape: คุณเคยต้องการที่จะรวมไฟกะพริบในโครงการหรือของเล่นหรือไม่? ในโครงการนี้ ฉันเพิ่ม LED ขนาด x6 3 มม. ลงในบล็อคพลาสติกที่เชื่อมต่อกันเพื่อให้สนุกยิ่งขึ้น การเรียนรู้ STEM และการสร้างสรรค์ทางวิศวกรรม ด้านล่างนี้คือรายละเอียดผลิตภัณฑ์: สร้างตัวเอง
ชุดบัดกรีบอร์ด Blinky KEY: 17 ขั้นตอน
Blinky KEY Board Soldering Kit: คุณเคยต้องการเรียนรู้วิธีการประสานและสร้างโครงการอิเล็กทรอนิกส์ของคุณเองหรือไม่? ตอนนี้คุณสามารถ! นี่คือบอร์ด Blinky KEY ซึ่งเป็นชุดอุปกรณ์อิเล็กทรอนิกส์ที่คุณรวบรวมไว้เพื่อสร้างพวงกุญแจไฟ LED ของคุณเอง! ทุกคนสามารถสร้างโครงการนี้ได้ ต้องขอบคุณสิ่งเหล่านี้
Microbit Gun Light Sound Thing Toy: 5 ขั้นตอน
Microbit Gun Light Sound Thing Toy: นี่เป็นเพียงของเล่นง่ายๆ ที่ทำขึ้นเพื่อลองใช้ส่วนประกอบและวัสดุของฉัน และสำหรับฉันที่จะเล่นและขีดข่วนเมื่อต้องทำอะไรบางอย่าง ที่หมายความถึงของเล่น ฉันไม่ได้ทำให้มันดูเหมือนของจริง และทำขึ้นเพื่อให้มีนายพล
การตรวจสอบโรงงาน DIY Gardening Drone (พับ Tricopter ในงบประมาณ): 20 ขั้นตอน (พร้อมรูปภาพ)
โดรนสำหรับตรวจสอบพืช DIY (Folding Tricopter on a Budget): ที่บ้านวันหยุดสุดสัปดาห์ของเรามีสวนเล็กๆ ที่สวยงามพร้อมผักและผลไม้มากมาย แต่บางครั้งก็ยากที่จะติดตามว่าพืชเปลี่ยนไปอย่างไร พวกเขาต้องการการดูแลอย่างต่อเนื่องและมีความเสี่ยงต่อสภาพอากาศ การติดเชื้อ แมลง ฯลฯ… ฉัน