สารบัญ:
- ขั้นตอนที่ 1: เครื่องมือและชิ้นส่วนที่จำเป็น…
- ขั้นตอนที่ 2: ขั้นตอนแรกในการสร้าง…
- ขั้นตอนที่ 3: เลเซอร์ตัดลูกบาศก์และระบายสี
- ขั้นตอนที่ 4: กาวลูกบาศก์ด้วยกัน…
- ขั้นตอนที่ 5: ใส่เลนส์และอุปกรณ์อิเล็กทรอนิกส์ลงในรู…
- ขั้นตอนที่ 6: กาวในตา…
- ขั้นตอนที่ 7: D1 การเขียนโปรแกรมขนาดเล็ก
- ขั้นตอนที่ 8: ภาพร่าง MQTT…
- ขั้นตอนที่ 9: หน้าแรกของ Google, IFTTT และ Dweet.io Sketches…
- ขั้นตอนที่ 10: ความคิดสุดท้ายและรูปภาพเพิ่มเติมอีกเล็กน้อย
วีดีโอ: หัวหน้างาน Eric Inspired LED Cube (ผู้คนแห่งโลก): 10 ขั้นตอน (พร้อมรูปภาพ)
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:05
ใครหรืออะไรคือหัวหน้างาน Eric - และทำไมคุณถึงสร้างสิ่งนี้
หัวหน้างาน Eric เป็น BOX หรือ Cube หรืออะไรก็ตามจากรายการ TBS "People of Earth"
ซึ่งเป็นรายการตลกเล็กๆ เกี่ยวกับคนที่ถูกเอเลี่ยนลักพาตัวไป ส่วนใหญ่เอเลี่ยนจะเป็นคนงี่เง่ามาก ฉันคิดว่าในช่วงต้นฤดูกาลที่สอง ลูกบาศก์บินที่ชื่อเอริครับช่วงต่อภารกิจของมนุษย์ต่างดาว เขาเป็นที่รู้จักในนามหัวหน้าเอริค ไม่ชัดเจนจริง ๆ ว่าเขาเป็นสิ่งมีชีวิตในลูกบาศก์ เป็น AI หรือมันคืออะไรกันแน่ เอริคมีวาระของตัวเองและแม้กระทั่งล้างสมองสมาชิกของกลุ่มสนับสนุนการลักพาตัว แต่นั่นเป็นอีกเรื่องหนึ่งทั้งหมด
ฉันเห็นเอริคแล้วคิดว่า มันดูเรียบร้อย - และมันจะง่ายมากที่จะสร้างมันขึ้นมา - ฉันก็เลยสร้างมันขึ้นมา
น่าเสียดายที่มีข้อมูลไม่มากนักเกี่ยวกับเขา - ดังนั้นฉันต้องไปกับสิ่งนี้ "Supervisor Eric" ที่ได้รับแรงบันดาลใจจากแฟน ๆ - ของฉันไม่ได้และจะไม่มีวันบิน (ฉันค่อนข้างแน่ใจว่านั่นเป็นเพียงเทคนิคพิเศษในการแสดงอยู่ดี.)
นอกจากนี้ ฉันไม่รู้จริงๆ ว่ามันใหญ่แค่ไหน ฉันเดาว่าน่าจะประมาณ 7" ลูกบาศก์ที่มีตาประมาณ 3" งานสร้างของฉันกลายเป็นลูกบาศก์ประมาณ 5 นิ้ว มีตาประมาณ 2 นิ้ว
ฉันใช้ WeMos D1 Mini สำหรับตัวควบคุม โดยมีไฟ LED WS2812 ทำให้ฉันสามารถเปลี่ยนสีดวงตาได้
ในการแสดง ฉันเคยเห็นดวงตาสีต่างๆ กันสามสี - สีฟ้าซึ่งดูเหมือนจะเป็นสีปกติของเขา สีแดงซึ่งปรากฏขึ้นเมื่อเขาทำอะไรบางอย่างหรือโกรธหรือโมโห และสีเขียวเมื่อเขากำลังสแกนอะไรบางอย่าง
สำหรับภาพสเก็ตช์ภาพหนึ่งที่ผมทำ - ฉันมีสีหน้าของเขา อีกภาพหนึ่งฉันกำลังใช้ MQTT และได้สีเชียร์ไลท์จากทวิตเตอร์ ฉันยังสร้างแอปเพล็ต IFTTT ที่ช่วยให้ฉันใช้ Google Home/Google Assistant เพื่อเปลี่ยนอารมณ์ได้โดยใช้ dweet.io ซึ่งจะมีข้อมูลเพิ่มเติมเกี่ยวกับเรื่องนี้ด้านล่าง
ขั้นตอนที่ 1: เครื่องมือและชิ้นส่วนที่จำเป็น…
ฮาร์ดแวร์สำหรับโครงการนี้ง่ายมาก - สำหรับอุปกรณ์อิเล็กทรอนิกส์ จำเป็นต้องมีทักษะการบัดกรีขั้นพื้นฐาน
1 ชุด 44 มม. แก้วเลนส์สะท้อนแสงและกรอบคงที่สำหรับเลนส์ LED 20W-100W ร้อน $2.60
WS2812B RGB Shield สำหรับ WeMos D1 Mini $1.75
WeMos D1 Mini ModeMCU 4M บอร์ดพัฒนา WiFi ESP8266 $3.40
เราต้องการลูกบาศก์ขนาด 5 นิ้ว (12.7 ซม.) - ความหนาประมาณ 1/8 นิ้ว (ประมาณ 3.175 มม.)
ตอนแรกฉันลองใช้กล่องกระดาษแข็งขนาด 7 นิ้ว แต่ลงเอยด้วยการตัดแผ่น MDF บางส่วนด้วยเลเซอร์ ไฟล์ dfx รวมอยู่ในที่เก็บ GitHub ของฉัน
ฉันยังใช้กระดาษทิชชู่เพื่อปิดเกราะ WS2812
เลือกซื้อของเล็กน้อยเหล่านี้อาจเป็นราคาที่ดีที่สุดหรือไม่ก็ได้ eBay, Aliexpress และแม้แต่ Amazon ก็มีราคาที่ดีที่สุด
สิ่งอื่น ๆ ที่คุณอาจต้องการ -
สีสเปรย์สีดำเรียบ กาวไม้ กระดาษทราย และตะไบขนาดเล็ก
คุณจะต้องใช้สกรูไม้ขนาดเล็กด้วย
เครื่องมือบางอย่างที่จำเป็น - หัวแร้ง ไขควงปากแบน ตะไบ คีมปากแหลม
การเข้าถึงเครื่องเจาะขนาดเล็ก (หรือสว่านขนาดเล็ก) เครื่องตัดเลเซอร์หรือเครื่องซีเอ็นซีจะทำให้โครงการนี้ง่ายขึ้นมาก
เพื่ออำนาจ
ความคิดดั้งเดิมของฉันคือการใช้ก้อนแบตเตอรี่ขนาดเล็ก - มันไม่พอดี ฉันจึงลงเอยด้วยการเจาะรูเล็กๆ ที่ด้านหลังและใช้ที่ชาร์จโทรศัพท์มือถือเครื่องเก่าเพื่อจ่ายไฟ
ชุดแบตเตอรี่ขนาดเล็ก (อาจใช้งานได้ 1,650) D1 mini เป็นตัวควบคุม 3 โวลต์ - ดังนั้นคุณต้องดูว่าคุณใช้พินใดในการจ่ายไฟ มีตัวควบคุมบนขั้วต่อ USB ดังนั้นจึงเป็นวิธีที่ง่ายที่สุดในการจ่ายไฟ
ขั้นตอนที่ 2: ขั้นตอนแรกในการสร้าง…
ฉันเชื่อว่าเลนส์นี้ใช้สำหรับรถยนต์ บางทีอาจเป็นระบบไฟในบ้านก็ได้ ฉันไม่แน่ใจ - มันไม่มีไฟ LED อยู่ในนั้น สิ่งแรกที่ฉันทำคือทำให้แน่ใจว่าชิลด์ WS2812 จะใช้งานได้ - ฉันใช้แถบยางเพื่อยึดชิ้นส่วนทั้งหมดเข้าด้วยกัน - ใช้งานได้ - แต่ก็ไม่ได้ยอดเยี่ยม ฉันสามารถเรียกใช้โค้ดทดสอบและสร้างเอฟเฟกต์ต่างๆ ได้
ต่อมา ฉันตัดสินใจเพิ่มกระจก - ฉันชอบมัน แต่สุดท้ายกระจกก็ยังไม่ใช่สิ่งที่ฉันต้องการ และยากที่จะทำให้กระจกเลื่อนไม่ได้
อย่างที่คุณเห็นเมื่อถึงจุดหนึ่ง ฉันแค่จะใช้กล่องกระดาษแข็ง - ฉันไม่ค่อยพอใจกับรูปลักษณ์นี้จริงๆ มันไม่สะอาด แต่มันบอกว่าฉันจำเป็นต้องตัดด้วยเลเซอร์จริงๆ
ส่วนใหญ่คือฉันเพิ่งมารู้ว่าความคิดดั้งเดิมของฉันที่ต้องการตัดบางอย่างนั้นถูกต้อง!
ขั้นตอนที่ 3: เลเซอร์ตัดลูกบาศก์และระบายสี
ขอบคุณเพื่อนๆ ที่ Rabbit Laser สหรัฐอเมริกา ฉันสามารถตัดลูกบาศก์ได้ สิ่งทั้งหมดใช้เวลาน้อยกว่า 5 นาทีในการทำ ฉันเชื่อว่าเราใช้เลเซอร์ 60 วัตต์ที่กำลังไฟ 60% และฉันเชื่อว่าเราลดความเร็วของเลเซอร์ลงเพื่อให้สามารถตัดขอบได้ดีขึ้นเล็กน้อย
หากคุณไม่มีเพื่อนกับเครื่องตัดเลเซอร์ ให้ลองดูที่พื้นที่ของผู้ผลิต หรือแม้แต่ห้องสมุดสาธารณะ หลายแห่งมีเครื่องเลเซอร์ ห้องสมุดรอบๆ นี้เรียกเก็บเฉพาะวัสดุที่ใช้เท่านั้น ห้องสมุดบางแห่งสามารถใช้งานได้ฟรีหากคุณนำสื่อของคุณเองมาเอง เป็นแหล่งข้อมูลที่ยอดเยี่ยมสำหรับผู้ผลิตที่มีงบประมาณจำกัด อย่างไรก็ตาม การได้เวลาเลเซอร์เป็นอีกเรื่องหนึ่ง และบางครั้งคุณต้องอยู่ในรายชื่อรอ
สำหรับผม ไม่จำเป็นต้องใช้วิธีการทำความสะอาดขอบหยาบหรืออะไรทำนองนั้นมากนัก ฉันอาจจะมี / ควรจะขัดชิ้นส่วนเล็กน้อย - แต่ก็ไม่ได้
ฉันทำการฟิตติ้งคร่าวๆ เพื่อให้แน่ใจว่าชิ้นส่วนทั้งหมดจะพอดี และวางกระดาษแข็งชิ้นใหญ่ให้พวกเขา
ฉันนับจำนวนด้านในแล้วจึงนำลูกบาศก์กลับมารวมกันในภายหลัง - ความจริงก็คือ 4 ชิ้นเหมือนกันและ 2 ชิ้นต่างกัน (บนและล่าง) 4 ชิ้นที่เหมือนกันประกอบเป็นด้านข้าง - จาก 4 ชิ้นนี้ หนึ่งมีรู 2 นิ้วสำหรับเลนส์ ฉันเชื่อว่ามันง่ายกว่าที่จะประกอบเข้าด้วยกันหลังจากที่ฉันนับชิ้นส่วนแล้ว ซึ่งไม่จำเป็น 100%
ฉันพลิกชิ้นส่วนและทาสีดำเรียบกับพวกเขา
ฉันวาดภาพซ้ำอีกสามครั้ง แต่ละครั้งที่ฉันรอให้ขนแห้งก่อนที่จะแห้ง
ขั้นตอนที่ 4: กาวลูกบาศก์ด้วยกัน…
หลังจากปล่อยให้สีแห้งสองสามชั่วโมง - ฉันติดกาวด้านล่างและสามด้านเข้าด้วยกัน
ฉันไม่ได้ใช้ที่หนีบอะไรเลย - และแค่จับชิ้นส่วนด้วยมือจนกาวแห้งพอที่จะจับ - ใช้เวลาไม่นาน อาจจะ 5 หรือ 6 นาที ฉันคิดว่าควรใช้ที่หนีบ แต่ฉันไม่มีขนาดใหญ่พอสำหรับโครงการนี้ เป็นเรื่องดีที่รู้ว่าการถือครองนั้นได้ผล
ฉันพบว่ามันง่ายกว่าที่จะทากาวที่ตะเข็บด้านในของกล่องโดยใช้นิ้วกดกาวในตำแหน่งที่จำเป็น
ฉันวางส่วนเหล่านี้ไว้เพื่อให้กาวแห้ง…..
ขั้นตอนที่ 5: ใส่เลนส์และอุปกรณ์อิเล็กทรอนิกส์ลงในรู…
ขณะที่ฉันกำลังรอให้ลูกบาศก์ของฉันแห้งครึ่งหนึ่ง
ฉันเจาะรูเล็กๆ ในส่วนมุมทั้งสี่ของกรอบเลนส์ที่ไม่มีรู เหตุผลที่คุณอาจถาม - รูที่อยู่ในกรอบมีขนาดใหญ่ ใหญ่เกินไปจริงๆ ฉันจำเป็นต้องใช้สกรูขนาดเล็กมากเพื่อไม่ให้ไปตลอดทาง (ไม่โผล่ออกมาจากอีกด้านหนึ่ง) ดังนั้นมันจึงง่ายกว่าที่จะสร้างรูของตัวเอง ขอบตัวเรือนเป็นโลหะบางมากและไม่เจาะมาก
ณ จุดนี้เองที่ฉันงอรูขนาดใหญ่ขึ้นสองสามรู - ฉันจะใช้สิ่งเหล่านี้เพื่อยึดอุปกรณ์อิเล็กทรอนิกส์ให้เข้าที่
ฉันไปข้างหน้าและวางกรอบเลนส์ให้เข้าที่ และขันมันลงด้วยสกรูขนาดเล็กมาก - จนถึงตอนนี้
ฉันพบสายรัดขนมปัง/ลวดสองสามเส้นแล้วนำไปใส่ในรูที่ฉันงอ ฉันใส่ LEN ไว้ในกรอบ และวางฝาครอบด้านหลังไว้บนเลนส์ ฉันวางกระดาษทิชชูชิ้นเล็ก ๆ (ที่พบในกล่องที่มีรองเท้าคู่ใหม่อยู่) บนปกหลัง - และวางกระดาน WS2812 ไว้ด้านบน ใช้ลวดผูกเพื่อยึดเข้าที่ จากนั้นฉันก็ใส่ D1 mini ลงใน WS2812
หลังจากนั้นไม่นานและเพื่อความสนุกสนานของฉัน WS2812 และกระดาษทิชชู่ก็ทำงานที่ปกหลัง - WS2812 มีขนาดเล็กเพียงเล็กน้อยสำหรับการเปิดบนปกหลัง จึงไม่แปลกใจเลย
สิ่งที่น่าประหลาดใจก็คือมันทำให้ "EYE" ดูดีขึ้นได้อย่างไรเมื่อใส่กระดาษทิชชู่อยู่ข้างใน ฉันมีความสุขมากกับความประหลาดใจนั้น
ฉันวางสิ่งนี้ไว้และรอให้ชิ้นอื่นๆ ของฉันแห้ง - ใช้เวลาไม่นาน อาจครึ่งชั่วโมง หรืออาจจะเป็นชั่วโมง
ขั้นตอนที่ 6: กาวในตา…
ฉันไม่ได้ถ่ายรูปส่วนนี้เลย --(แย่ฉัน)
อย่างไรก็ตาม หลังจากที่กาวแห้งเป็นส่วนใหญ่ ผมก็ใส่ด้านหน้า (ตา) เข้าที่ (โดยมีอุปกรณ์อิเล็กทรอนิกส์อยู่แล้ว)
เนื่องจากทุกด้านที่อยู่ในกล่องตอนนี้ มันจึงยากกว่าเล็กน้อยที่จะติดกาว แต่ก็ไม่ได้แย่ อีกครั้ง ฉันใช้นิ้วของฉันไปเอากาวตรงที่ฉันต้องการ แล้วเกลี่ยให้ทั่วข้อต่อ
ครั้งนี้ฉันต้องยึดมันให้เข้าที่นานขึ้น - ฉันไม่แน่ใจจริงๆ ว่าทำไม บางทีอาจมีเวลา 10 หรือ 15 นาทีที่กาวตั้งไว้มากพอที่จะวางกล่องลงและปล่อยให้มันแห้งสนิท
* คุณอาจจะถามเกี่ยวกับด้านบน
ดังนั้นฉันจึงปิดส่วนบน (และแกะกาว) เพื่อที่ว่าถ้าฉันจำเป็นต้องเปลี่ยนหรือเพิ่ม หรือใส่อุปกรณ์อิเล็กทรอนิกส์ต่างๆ ในกล่อง ฉันสามารถทำมันได้อย่างง่ายดาย ด้านบนยกขึ้นและทุกอย่างก็สวยอยู่ที่นั่น
การออกแบบใหม่/ที่ดีขึ้นอาจเป็นแบบบานพับด้านบนหรือด้านที่เป็นบานพับ แต่ฉันพอใจกับรูปลักษณ์ของลูกบาศก์
ขั้นตอนที่ 7: D1 การเขียนโปรแกรมขนาดเล็ก
มีข้อกำหนดบางประการก่อนที่เราจะสามารถเริ่มโปรแกรม D1 Mini ได้
ไม่มีขั้นตอนใดยาก…แต่จำเป็นต้องทำ
ขั้นแรกเราต้องติดตั้งบอร์ด ESP8266 ลงใน Arduino Board Manager สำหรับสิ่งนี้ให้ทำตามคำแนะนำที่นี่:
หากคุณได้ติดตั้งบอร์ด ESP8266 แล้ว คุณสามารถข้ามขั้นตอนนี้ได้
ตอนนี้เราต้องติดตั้งไลบรารี Adafruit_Neopixel
วิธีที่ง่ายที่สุดในการทำเช่นนี้คือจากตัวจัดการไลบรารีใน Arduino 1.6.5 และ IDEs ที่ใหม่กว่า
เปิดตัวจัดการห้องสมุดและในบล็อกการค้นหาประเภท adafruit และ neopixel
อีกครั้งถ้าคุณมีพื้นที่ทำสิ่งนี้คุณสามารถข้ามไปได้
ข้างต้นเป็นเรื่องปกติสำหรับภาพร่างที่ฉันทำขึ้นสำหรับสิ่งนี้
ขึ้นอยู่กับว่าคุณต้องการใช้ "Eric" ของคุณอย่างไรหรืออย่างไรจะขึ้นอยู่กับสิ่งที่จำเป็นต้องติดตั้งในตอนนี้
(คุณควรติดตั้งไลบรารีทั้งสองนี้เพียงเพราะว่า แต่….)
หากคุณต้องการใช้เวอร์ชัน MQTT (เวอร์ชันนี้สมัครรับข้อมูลสตรีม MQTT ของเชียร์ไลท์) - มันจะเปลี่ยนสีของ LED WS2812 ตาม Cheerlight * Cheerlights เป็นโครงการ IoT ที่สร้างขึ้นโดย Hans Scharler ซึ่งช่วยให้ผู้คนทั่วโลกสามารถซิงโครไนซ์เป็นสีเดียวได้ด้วยการทวีต #cheerlights *
ฉันเคยใช้ Cheerlights ในหลายโปรเจ็กต์ของฉัน ต้องขอบคุณสตรีม MQTT ที่ทำให้โปรเจ็กต์ง่ายขึ้น
สำหรับเวอร์ชันนี้ คุณต้องมีไลบรารี PubSubClient
ฉันค่อนข้างแน่ใจว่าห้องสมุดนี้อยู่ในตัวจัดการห้องสมุดด้วย
ภาพสเก็ตช์อื่นๆ ของฉันใช้ IFTTT และ Dweet.io - ฉันขอให้ Google Home เปลี่ยน Moods หรือ Modes ของ Eric แตกต่างกันเล็กน้อย
ในการใช้ภาพสเก็ตช์ dweet คุณต้องมีห้องสมุด arduino-dweet.io - https://github.com/quentinpigne/arduino-dweet.io นี่เป็นห้องสมุดรุ่นเก่า (2015) และเกือบจะไม่อยู่ในตัวจัดการห้องสมุด ดังนั้นคุณต้องติดตั้งด้วยตนเอง มีสองวิธีในการทำเช่นนี้ - ฉันชอบ ดาวน์โหลดไฟล์ คลายซิปและเปลี่ยนชื่อ (ลบ -master) ลากโฟลเดอร์ไปยังโฟลเดอร์ไลบรารีของฉัน คุณอาจต้องรีสตาร์ท IDE ด้วยวิธีนี้
ฉันรู้ว่ามีขั้นตอนมากมาย และมีวิธีที่ง่ายกว่านั้น - จาก IDE คุณสามารถคลิกแท็บ Sketch ลงไปเพื่อรวมไลบรารี่ และคลิกที่ Add. ZIP library - ค้นหาไฟล์ที่คุณดาวน์โหลดมา และนั่นก็ควรจะเป็น
ฉันไม่รู้ว่าทำไมฉันไม่เคยชอบติดตั้งไลบรารี่แบบนั้นเลย แต่มันง่าย
ตอนนี้คุณมีไลบรารีที่จำเป็นแล้ว เราก็สามารถตั้งโปรแกรม D1 mini ของเราได้
ในที่สุดรหัสของฉันสามารถพบได้ที่นี่:
ขั้นตอนที่ 8: ภาพร่าง MQTT…
MQTT คืออะไร? MQTT ย่อมาจาก MQ Telemetry Transport เป็นโปรโตคอลการส่งข้อความแบบเผยแพร่/สมัครใช้งานที่ง่ายมากและน้ำหนักเบา ออกแบบมาสำหรับอุปกรณ์ที่มีข้อจำกัดและเครือข่ายแบนด์วิดธ์ต่ำ เวลาแฝงสูง หรือไม่น่าเชื่อถือ หลักการออกแบบคือการลดแบนด์วิดท์เครือข่ายและความต้องการทรัพยากรอุปกรณ์ในขณะที่พยายามทำให้มั่นใจถึงความน่าเชื่อถือและการรับประกันระดับหนึ่ง หลักการเหล่านี้ยังทำให้โปรโตคอลในอุดมคติของโลก "เครื่องต่อเครื่อง" (M2M) หรือ "อินเทอร์เน็ตของสิ่งต่างๆ" ที่เกิดขึ้นใหม่ของอุปกรณ์ที่เชื่อมต่อ และสำหรับแอปพลิเคชันมือถือที่มีแบนด์วิดท์และพลังงานแบตเตอรี่อยู่ในระดับสูง
mqtt.org/faq
กล่าวคือ อุปกรณ์ของฉันสมัครรับข้อมูลหรือฟังสิ่งที่อุปกรณ์อื่นเผยแพร่
โค้ดชิ้นเดียวที่สะดวกสำหรับ MQTT คือ
uint32_t chipid=ESP.getChipId(); ถ่านลูกค้า[25]; snprintf(ไคลเอนต์, 25, "EricBotAI-%08X", ชิปปิด);
สิ่งนี้ทำให้ชื่ออุปกรณ์เฉพาะสำหรับโบรกเกอร์ MQTT โดยจะใช้ส่วนหนึ่งของที่อยู่ MAC ของ ESP8266 เพื่อทำสิ่งนี้ ขณะนี้รับประกันได้ 100% ว่าจะไม่เหมือนใคร จนถึงขณะนี้ดูเหมือนว่าจะใช้ได้ผล
มิฉะนั้น โค้ดที่เหลือจะค่อนข้างตรงไปตรงมา เราฟังสีจากโบรกเกอร์ MQTT เราตรวจสอบเพื่อดูว่าเป็นสีที่ถูกต้องหรือไม่ เราตั้งค่านีโอพิกเซลเป็นสีนั้น และเริ่มกระบวนการใหม่อีกครั้ง
สำหรับสิ่งที่เรากำลังทำอยู่นั้นมีการใช้นายหน้าสาธารณะและไม่มีการรักษาความปลอดภัยประเภทใด - สิ่งนี้ใช้ได้สำหรับสิ่งที่เรากำลังทำอยู่ แต่อาจไม่ดีสำหรับบางโครงการ
มีภาพสเก็ตช์ MQTT สามแบบ และพวกเขาทั้งหมดทำในสิ่งเดียวกัน ความแตกต่างที่ใหญ่ที่สุดคือการแสดงสีจาก Cheerlights
หนึ่งแสดงสีด้วยการกะพริบเร็ว (ดูวิดีโอที่โพสต์ก่อนหน้านี้) มันเกือบจะเหมือนแสงแฟลช (ericbotai_neopixel_mqtt) - ฉันเคยใช้การกะพริบเร็วแบบเดียวกันนี้สำหรับโปรเจ็กต์ฮัลโลวีนของฉันในอดีตและเอฟเฟกต์นั้นดีมาก (สำหรับสิ่งเหล่านั้น) - มันไม่ดีสำหรับโครงการนี้อย่างไรก็ตาม
หนึ่งแสดงเฉพาะสีทึบ - และเปลี่ยนแปลงเท่านั้น (หากสูญเสีย MQTT) หรือหากสีเปลี่ยนไป (ericbotai_neopixel_mqtt_solid_color)
สิ่งที่ฉันโปรดปรานจากทั้งสามตัวนี้น่าจะเป็น Breathe Effect ซึ่งใช้สีและทำให้มืดลงจนหมด และค่อยๆ เพิ่มความสว่างเต็มที่ เป็นเอฟเฟกต์ที่ดูเรียบร้อยซึ่งดูดีจริงๆ ภายในคิวบ์
(ericbotai_neopixel_mqtt_breathe_effect)
ทั้งสามเป็นภาพร่างเดียวกันโดยมีการเปลี่ยนแปลงเพียงเล็กน้อยสำหรับ "เอฟเฟกต์" แต่ละรายการ
ขั้นตอนที่ 9: หน้าแรกของ Google, IFTTT และ Dweet.io Sketches…
ก่อนอื่น เรามาเริ่มด้วยการบอกว่าภาพสเก็ตช์เหล่านี้ไม่เสถียรเท่าที่ฉันอยากให้เป็น
และแม้กระทั่งคุณได้รวมฟังก์ชันเวลาเฝ้าระวังและฟังก์ชันให้ผลแล้ว ฉันยังคงได้รับข้อผิดพลาด WDT แบบสุ่ม - ดูเหมือนว่าเมื่อพวกมันนั่งบนสีเดียวตลอดเวลา ฉันไม่ค่อยโชคดีนักกับการเพิ่มฟังก์ชัน WDT หรือลบฟังก์ชันที่มีอยู่
อย่างที่กล่าวไปแล้ว แนวคิดคือการทำให้ Eric โต้ตอบกันมากขึ้น - เมื่อใช้ Google Home/Google Assistant ของฉัน ฉันสามารถพูดว่า "Ok Google โหมด Eric Angry" และให้ไฟ LED เปลี่ยนจากอะไรก็ได้เป็นสีแดง
Dweet.io คือวิธีที่ข้อความของฉันส่งถึงเอริค หากคุณไม่รู้ว่า Dweet.io คืออะไร โปรดคลิกที่ลิงก์และลองดู กล่าวง่ายๆ ก็คือ API ของเว็บที่อุปกรณ์สามารถเผยแพร่หรือฟังได้ การโทรแต่ละครั้งจะมีชื่ออุปกรณ์เป็นของตัวเอง นอกจากนี้ยังใช้งานได้ฟรีซึ่งเป็นโบนัสก้อนโต! เนื่องจากเป็นการโทรผ่านเว็บ จึงง่ายต่อการตั้งค่า IFTTT เพื่อใช้งาน
dweet.io/dweet/for/ericcube?mood={{TextFie…
ที่ที่ {{TextField}} จะเป็นอย่างที่ Google Home ได้ยิน
ดังนั้นหากใช้ตัวอย่างข้างต้น "โหมดโกรธ Ok Google Eric" - การโทรผ่านเว็บจะมีลักษณะดังนี้:
dweet.io/dweet/for/ericcube?mood=angry
เอาต์พุต API จะดูเหมือนสตริง JSON นี้:
ภาพร่าง Arduino - รับสตริง JSON ทั้งหมด - แต่ด้วยฟังก์ชันที่มีประโยชน์ที่เรียกว่า "ลบ" เราจึงสามารถลบขอทานส่วนใหญ่ได้ แล้วเอาส่วนท้ายออก…..อาจมีวิธีที่ดีกว่าในการลบส่วนท้าย เพราะสิ่งที่เกิดขึ้นคือฉันไม่ได้อ่าน man page ใกล้พอที่จะ "ลบ" และตอนนี้ทุกอย่างถูกตัดให้เหลือ 6 ตัวอักษร ดังนั้น ถ้าคุณพูดว่าโหมด "ปกติ" - มันจะกลายเป็น "ปกติ" - ไม่เป็นไร ไม่เป็นไร - ซอฟต์แวร์ดูแลมัน….แต่ก็ยังไม่ถูกต้อง:-)
ดังนั้นฉันสามารถพูดได้ว่า - "โหมดอีริคโกรธ" และสิ่งนี้จะเปลี่ยน LED เป็นสีแดง "โหมดมีความสุขของเอริค" หรือ "โหมดปกติของเอริค" และไฟ LED จะเป็นสีน้ำเงิน "โหมดสแกนเนอร์ของเอริค" และไฟ LED จะเปลี่ยนเป็นสีเขียวและเพียงแค่ เพื่อความสนุก (และเพราะในตอนหนึ่ง Eric ชาร์จและไฟ LED ของเขาดับ) "โหมดการชาร์จของ Eric" หรือ "โหมด Eric black" และไฟ LED ของเขาจะดับลง
และสุดท้ายเพื่อความสนุก เรามี "โหมดปาร์ตี้อีริค"
มีภาพสเก็ตช์สองภาพที่ใช้ Dweet.io ภาพร่างทั้งสองภาพค่อนข้างเหมือนกัน เพียงเอฟเฟกต์ LED แตกต่างกันเล็กน้อย
ฉันไม่ค่อยพอใจกับเอฟเฟกต์ LED อย่างใดอย่างหนึ่ง (ยกเว้นบางทีโหมดปาร์ตี้)
ericbotai_neopixel_pulse_effect_dweet ใช้โค้ดเดียวกันมากหรือน้อยจากภาพร่างเอฟเฟกต์การหายใจ - โดยมีการกำหนดเวลาต่างกันเล็กน้อย (ทั้งเนื่องจากการเปลี่ยนแปลงในสเก็ตช์และฟังก์ชัน WDT) - เอฟเฟกต์จะหายใจน้อยลงและมีเอฟเฟกต์ชีพจรมากขึ้น
ericbotai_neopixel_solid_color_dweet สวยมากอย่างที่บอก มันแสดงสี (ทึบ) - โหมดปาร์ตี้เป็นเอฟเฟกต์ดิสโก้
คุณสามารถเพิ่มหรือเปลี่ยนเอฟเฟกต์ได้ เพียงจำไว้ว่าการตอบกลับมีความยาวเพียง 6 ตัวอักษรเท่านั้น
ในภาพร่างทั้งสอง - บรรทัด 64 เป็นที่ที่คุณสามารถเปลี่ยนชื่อ "สิ่งของ" เพียงจำไว้ว่าให้เปลี่ยนการโทรเว็บเป็น "สิ่ง" เดียวกัน - หากเราทุกคนใช้ชื่อเดียวกันเราทุกคนสามารถเปลี่ยน "Eric" กันได้
ขั้นตอนที่ 10: ความคิดสุดท้ายและรูปภาพเพิ่มเติมอีกเล็กน้อย
นี่คือรูปภาพอีกสองสามภาพจากงานสร้างของฉันที่ดูเหมือนจะไม่พอดีกับที่ใด…..
สิ่งหนึ่งที่ฉันต้องการจะพูด - ฉันลงเอยด้วยการตัดรอยบากเล็กๆ ที่ด้านหลังลูกบาศก์ของฉัน และเรียกใช้ที่ชาร์จ/สายไฟในรอยบากนั้นเพื่อจ่ายไฟ - โดยรวมแล้วมันไม่ได้เบี่ยงเบนความสนใจจากลูกบาศก์ - แต่มี ฉันรู้ว่าฉันกำลังจะทำแบบนั้น ฉันอยากจะให้มันตัดด้วยเลเซอร์
กรอบของฉันแตกต่างออกไปเล็กน้อย - ขอบจอของฉันลงเอยกับกล่อง - ฉันไม่คิดว่ามันดูแย่แบบนี้ - และเป็นวิธีที่ดีที่จะพูด - ฉันได้รับแรงบันดาลใจแต่ไม่ใช่สำเนา "เอริค" โดยตรง
ฉันวางแผนที่จะเพิ่มเครื่องเล่น MP3 ด้วยคำพูดของ "Eric" บางอย่าง….ที่อาจไม่เกิดขึ้นอย่างรวดเร็วคุณ - ฉันไม่พบไฟล์บันทึกของ "Eric" เลย ดังนั้นฉันจะต้องทำด้วยตัวเอง
สุดท้าย ด้วยการใช้ MQTT หรือ Dweet ทำให้ระบบแจ้งเตือนบนเดสก์ท็อป (เช่น สีสำหรับทวีต หรือสีต่างๆ สำหรับสภาพอากาศในตอนเช้า เป็นต้น) ไม่ควรยากเกินไปที่จะนำรหัสฐานบางส่วนมาผสมกันเพื่อสร้างสิ่งดีๆ ทุกประเภท
และสุดท้ายจริงๆ - ฉันเห็นว่าอาจสร้างจอแสดงผลติดผนัง HAL 9000 โดยใช้เลนส์เดียวกันนี้และการเขียนโปรแกรมที่แตกต่างกันเล็กน้อย
แนะนำ:
วิธีทำ LED Cube - LED Cube 4x4x4: 3 ขั้นตอน
วิธีทำ LED Cube | LED Cube 4x4x4: LED Cube ถือได้ว่าเป็นหน้าจอ LED ซึ่ง LED ขนาด 5 มม. แบบธรรมดาจะทำหน้าที่เป็นพิกเซลดิจิทัล ลูกบาศก์ LED ช่วยให้เราสามารถสร้างภาพและรูปแบบโดยใช้แนวคิดของปรากฏการณ์ทางแสงที่เรียกว่าการคงอยู่ของการมองเห็น (POV) ดังนั้น,
DIY 3D LED Cube พร้อม Raspberry Pi: 6 ขั้นตอน (พร้อมรูปภาพ)
DIY 3D LED Cube ด้วย Raspberry Pi: โครงการนี้จะกล่าวถึงวิธีที่เราทำ DIY 3D LED Cube จาก ws2812b LEDs ลูกบาศก์คือ LED 8x8x8 รวมทั้งหมด 512 อัน และชั้นต่างๆ ทำจากแผ่นอะคริลิกที่เราได้รับจากคลังอุปกรณ์ในบ้าน แอนิเมชั่นขับเคลื่อนโดย Raspberry Pi และแหล่งพลังงาน 5V ไทย
LED Sound Reactive Infinity Cube End Table: 6 ขั้นตอน (พร้อมรูปภาพ)
LED Sound Reactive Infinity Cube End Table: ว้าว! โว้ว! ช่างเป็นเอฟเฟกต์ที่ยอดเยี่ยม! -- นี่คือบางสิ่งที่คุณจะได้ยินเมื่ออ่านคู่มือจบ ลูกบาศก์อินฟินิตี้แบบอินฟินิตี้ที่โค้งงออย่างเหลือเชื่อ สวยงาม สะกดจิต และมีปฏิกิริยาต่อเสียง นี่เป็นโปรเจ็กต์การบัดกรีขั้นสูงที่เจียมเนื้อเจียมตัว ฉันใช้เวลาประมาณ 12 คน
Simple LED Lightbox Cube: 7 ขั้นตอน (พร้อมรูปภาพ)
Simple LED Lightbox Cube: สวัสดีทุกคน ครั้งนี้ฉันอยากจะแบ่งปันกับคุณเกี่ยวกับแบบจำลองของ Lightbox Cube แบบง่ายที่สามารถใช้กับการเปิด (เพื่อยิงส่วนของวัตถุขนาดใหญ่) และด้านที่ปิดสำหรับวัตถุขนาดเล็ก ลูกบาศก์นี้มีโครงสร้างแบบโมดูลาร์ สามารถเ
Magic Cube หรือ Micro-controller Cube: 7 ขั้นตอน (พร้อมรูปภาพ)
เมจิกคิวบ์หรือไมโครคอนโทรลเลอร์คิวบ์: ในคำแนะนำนี้ ฉันจะแสดงให้คุณเห็นถึงวิธีการสร้างเมจิกคิวบ์จากไมโครคอนโทรลเลอร์ที่ผิดพลาด แนวคิดนี้มาจากเมื่อฉันนำไมโครคอนโทรลเลอร์ ATmega2560 ที่ผิดพลาดจาก Arduino Mega 2560 มาสร้างลูกบาศก์ .เกี่ยวกับฮาร์ดแวร์ Magic Cube ฉันได้ทำเป็น