สารบัญ:

โคมไฟระบบสัมผัสแบบซิงโครไนซ์สี: 5 ขั้นตอน (พร้อมรูปภาพ)
โคมไฟระบบสัมผัสแบบซิงโครไนซ์สี: 5 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: โคมไฟระบบสัมผัสแบบซิงโครไนซ์สี: 5 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: โคมไฟระบบสัมผัสแบบซิงโครไนซ์สี: 5 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: เผยเคล็ดลับ! วิธีดูว่าโคมไฟโซล่าเซลล์จะสว่างแค่ไหน พร้อมการพิสูจน์ เทียบกับหลอดไฟบ้าน Daddy's Tips 2024, กรกฎาคม
Anonim
Image
Image

สำหรับโครงการนี้ เราจะทำโคมไฟสองดวงที่สามารถเปลี่ยนสีได้ด้วยการสัมผัส และสามารถประสานสีนี้กับแต่ละอื่น ๆ ผ่านทางอินเทอร์เน็ต เราใช้สิ่งนี้เป็นของขวัญคริสต์มาสสำหรับเพื่อนที่ย้ายไปอยู่เมืองอื่น เธอได้ตะเกียงอันหนึ่งและอีกอันหนึ่งยังคงอยู่กับเรา ด้วยวิธีนี้เราทั้งคู่จะได้โคมไฟที่ดูดีในขณะที่ยังสามารถส่งสีให้กันและกันได้อีกด้วย นี่เป็นวิธีที่ดีและยอดเยี่ยมในการสื่อสารระหว่างกัน แม้ว่าจะแยกจากกัน และรูปแบบการสื่อสารที่เบากว่าผ่านข้อความ เสียง หรือรูปภาพมาก

โปรเจ็กต์นี้ได้รับแรงบันดาลใจจากโปรเจ็กต์ Syncenlight ของรายการวิทยุเยอรมัน Netzbasteln แม้ว่าเราจะปรับเปลี่ยนซอฟต์แวร์ให้เงียบลงเล็กน้อย และสร้างโคมไฟที่ซับซ้อนมากขึ้นสำหรับโครงการของเรา ในวิดีโอคุณสามารถดูวิธีการทำงาน เพื่อจุดประสงค์ในการสาธิต หลอดไฟทั้งสองดวงตั้งตรงติดกัน – แต่จะใช้งานได้หากอยู่คนละฟากของโลก (ตราบใดที่มี WiFi)

ขั้นตอนที่ 1: ทักษะ เครื่องมือ และชิ้นส่วนที่จำเป็น

แนวคิดพื้นฐานและวิธีการทำงาน
แนวคิดพื้นฐานและวิธีการทำงาน

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

ชิ้นส่วนที่จำเป็นสำหรับหลอดไฟสามารถดูได้ในภาพด้านบน หากคุณต้องการสร้างมันเหมือนกับที่เราทำ นี่คือสิ่งที่คุณต้องการ:

  • ตัวต้านทาน 100kΩ
  • Wemos D1 mini (หรือบอร์ดที่ใช้ ESP8266 อื่นๆ)
  • ไฟ LED WS2812B บางตัว (ทั้งแบบเดี่ยวหรือแบบแถบ)
  • บางสาย
  • สาย USB (แบบเดียวกับที่ใช้กับสมาร์ตโฟนส่วนใหญ่ ต้องเป็นสายดาต้า)
  • กระถางดอกไม้โลหะ
  • แจกันแก้ว
  • สเปรย์ดอกไม้น้ำแข็ง (หรืออะไรทำนองนั้น)
  • ไม้สองท่อน
  • กระดาษแข็งชิ้นเล็ก (ขนาดของ Wemos D1 mini)

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

แน่นอนว่าเราไม่เพียงแต่ต้องการชิ้นส่วนเท่านั้น แต่ยังต้องการเครื่องมือในการประกอบทุกอย่างเข้าด้วยกันด้วย สำหรับสิ่งนี้เราต้องการรายการต่อไปนี้:

  • หัวแร้ง (บวกบัดกรี)
  • กระดาษทราย
  • กรรไกรคู่หนึ่ง
  • ปืนร้อนละลาย
  • เลื่อยไม้

ตอนนี้เรามีทุกอย่างที่ต้องการแล้ว เราจะอธิบายแนวคิดพื้นฐานของโคมไฟ วิธีทำงาน และแน่นอนว่าจะสร้างโคมไฟอย่างไร

ขั้นตอนที่ 2: แนวคิดพื้นฐานและวิธีการทำงาน

แนวคิดพื้นฐานสามารถเห็นได้ในรูปแบบการเดินสาย หัวใจของโปรเจ็กต์นี้คือบอร์ดขนาดเล็ก Wemos D1 ซึ่งมีไมโครคอนโทรลเลอร์ ESP8266 ข้อดีของ ESP8266 คือราคาถูกและมี WiFi บนเครื่องโดยตรง ซึ่งเป็นสิ่งที่เราต้องการ เราใช้บอร์ดขนาดเล็ก Wemos D1 เพราะในบอร์ดนี้ คุณไม่จำเป็นต้องมีเครื่องมือพิเศษใดๆ ในการอัปโหลดซอฟต์แวร์ไปยังไมโครคอนโทรลเลอร์ (นอกเหนือจากสายข้อมูล USB มาตรฐาน) แต่บอร์ดที่ใช้ ESP8266 ควรทำงานสำหรับโครงการนี้

เพื่อควบคุมหลอดไฟ เราต้องการใช้เซ็นเซอร์สัมผัสแบบ capacitive (ดังนั้นหลักการพื้นฐานเดียวกันกับที่ใช้ในหน้าจอสมาร์ทโฟนส่วนใหญ่) เซ็นเซอร์สัมผัสดังกล่าวสามารถสร้างขึ้นได้โดยการเชื่อมต่อตัวต้านทาน 100kΩ กับหมุดสองตัวของ ESP8266 (ในกรณีของเราคือหมุด D2 และ D5) จากนั้นต่อสายเพิ่มเติมเข้ากับขา D5 จากนั้นจึงบัดกรีลวดนั้นเข้ากับแผ่นโลหะ ตำแหน่งที่คุณบัดกรีลวดนี้ขึ้นอยู่กับการออกแบบหลอดไฟที่คุณเลือก ในรูปแบบการเดินสาย เราเพิ่งใช้แผ่นโลหะทั่วไป แต่สำหรับการออกแบบหลอดไฟเฉพาะของเรา เราบัดกรีสายเคเบิลนี้เข้ากับส่วนหม้อโลหะของหลอดไฟ หากคุณสนใจว่ามันทำงานอย่างไร มีคำอธิบายที่ดีในเว็บไซต์สำหรับไลบรารี Arduino ที่เราใช้สำหรับการเขียนโปรแกรมเซ็นเซอร์สัมผัสแบบคาปาซิทีฟ

ตอนนี้เรามีบางอย่างที่สามารถสัมผัสเพื่อควบคุมหลอดไฟได้ สิ่งต่อไปที่เราต้องการคือแหล่งกำเนิดแสง สำหรับสิ่งนี้เราใช้ไฟ LED WS2812B มีการใช้กันอย่างแพร่หลายในโครงการต่างๆ และข้อได้เปรียบหลักคือ คุณสามารถควบคุมสีของ LED จำนวนมากได้โดยใช้การเชื่อมต่อข้อมูลเพียงจุดเดียวระหว่าง LED ตัวแรกและไมโครคอนโทรลเลอร์ (ในกรณีของเราเชื่อมต่อกับ D8 ของ ESP8266) ในโครงการของเรา เราใช้ไฟ LED WS2812B สี่ดวง ในรูปแบบการเดินสายไฟจะแสดงขึ้น 2 ดวง แต่การเพิ่ม LED เพิ่มเติมจะทำงานเหมือนกับการเพิ่มไฟดวงที่สอง: หมุด DOUT ของ LED ตัวที่สองจะต้องเชื่อมต่อกับ DIN ของชุดที่สาม และ VSS และ VDD จะต้องเชื่อมต่อกับขากราวด์และ พิน 5V ตามลำดับ จากนั้นจึงตั้งโปรแกรม LED WS2812B ได้อย่างง่ายดาย เช่น ด้วยห้องสมุด NeoPixel ของ Adafruit

ตอนนี้เรามีส่วนผสมทั้งหมดที่เราต้องการแล้ว: ไมโครคอนโทรลเลอร์ที่มีความสามารถ WiFi, เซ็นเซอร์สัมผัสสำหรับควบคุมหลอดไฟและแหล่งกำเนิดแสงเอง ในขั้นตอนต่อไป เราจะอธิบายวิธีสร้างหลอดไฟจริงและวิธีการอัปโหลดซอฟต์แวร์ และสิ่งที่ต้องทำเพื่อให้หลอดไฟสองดวง (หรือมากกว่า) สามารถซิงโครไนซ์ผ่านอินเทอร์เน็ตได้

ขั้นตอนที่ 3: บัดกรีอุปกรณ์อิเล็กทรอนิกส์

บัดกรีอุปกรณ์อิเล็กทรอนิกส์
บัดกรีอุปกรณ์อิเล็กทรอนิกส์
บัดกรีอุปกรณ์อิเล็กทรอนิกส์
บัดกรีอุปกรณ์อิเล็กทรอนิกส์
บัดกรีอุปกรณ์อิเล็กทรอนิกส์
บัดกรีอุปกรณ์อิเล็กทรอนิกส์
บัดกรีอุปกรณ์อิเล็กทรอนิกส์
บัดกรีอุปกรณ์อิเล็กทรอนิกส์

ก่อนอื่นเราต้องประสานชิ้นส่วนอิเล็กทรอนิกส์ทั้งหมดเข้าด้วยกัน เราเริ่มต้นด้วยการบัดกรี LED WS2812B เดี่ยวเข้าด้วยกัน (ดังที่แสดงและอธิบายไว้ในขั้นตอนก่อนหน้า) ถ้าเราจะทำโครงการนี้อีกครั้งเราอาจจะซื้อไฟ LED WS2812B ในรูปแบบแถบ แถบเหล่านั้นสามารถตัดได้เพื่อให้คุณมีปริมาณ LED ที่คุณต้องการ จากนั้นคุณเพียงแค่บัดกรีตัวเชื่อมต่อ DIN, VDD และ VSS ของแถบนั้นเข้ากับหมุด D8, 5V และ G ของ ESP8266 สิ่งนี้จะง่ายกว่าการทำแบบที่เราทำ แต่การบัดกรี LED WS2812B เดี่ยวเข้าด้วยกันก็เป็นไปได้ดังที่เห็นในภาพ (แม้ว่าข้อต่อบัดกรีของเราจะไม่สวยงามมาก - แต่ใช้งานได้)

ต่อไปเราบัดกรีตัวต้านทานระหว่างพิน D2 และ D5 ที่พิน D5 เรายังต้องบัดกรีด้วยลวดเพิ่มเติม ซึ่งต่อมาจะถูกบัดกรีบนส่วนของหลอดไฟที่ควรทำหน้าที่เป็นเซ็นเซอร์สัมผัส ในภาพคุณจะเห็นว่าเราไม่ได้บัดกรีตัวต้านทานเข้ากับบอร์ดโดยตรง แต่บัดกรีตัวเชื่อมต่อเข้ากับบอร์ดที่เราใส่ตัวต้านทานแทน เนื่องจากเราต้องการค้นหาว่าตัวต้านทานตัวใดทำงานได้ดีที่สุดสำหรับโครงการนี้ แต่คุณสามารถประสานตัวต้านทานเข้ากับบอร์ดได้โดยตรง

ในขั้นตอนสุดท้าย เราสามารถเชื่อมต่อสาย USB ของเรากับปลั๊ก USB ของ Wemos D1 mini ได้แล้ว (ตรวจสอบให้แน่ใจว่าคุณมีสายข้อมูล USB – มีสายที่ใช้สำหรับการชาร์จเท่านั้นแต่ไม่ใช่สำหรับการถ่ายโอนข้อมูล แต่เราต้องการ ความสามารถในการแฟลชซอฟต์แวร์ในภายหลัง)

ขั้นตอนที่ 4: การสร้างโคมไฟ

การสร้างโคมไฟ
การสร้างโคมไฟ
การสร้างโคมไฟ
การสร้างโคมไฟ
การสร้างโคมไฟ
การสร้างโคมไฟ

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

ในการสร้างโคมไฟตอนนี้ เราต้องตรวจสอบให้แน่ใจว่ากระถางดอกไม้โลหะอยู่ด้านบนของแจกันที่ความสูงที่เหมาะสม และติดอุปกรณ์อิเล็กทรอนิกส์ภายในหม้อเพื่อให้ไฟ LED ส่องแจกัน ในการทำเช่นนี้เราใช้แท่งไม้สองอัน กระดาษทรายและไม้เลื่อยทำไม้กางเขน ไม้กางเขนนี้จะนั่งบนแจกันและปลายไม้กางเขนจะติดกับหม้อ ด้วยวิธีนี้เราจึงมั่นใจได้ว่าหม้ออยู่ในความสูงที่เหมาะสม (หากไม้กางเขนมีขนาดที่เหมาะสม)

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

หากทุกอย่างเข้ากันได้ดีขั้นตอนต่อไปคือการติดกระดาษแข็งบนไม้กางเขน นี้จะต้องอยู่ด้านข้างของไม้กางเขนที่ไม่มีร่อง จากนั้นเราก็ติดกระดานขนาดเล็ก Wemos D1 ที่ด้านบนของกระดาษแข็ง และไฟ LED อยู่ที่อีกด้านหนึ่งของไม้กางเขน

ขั้นตอนต่อไปคือการบัดกรีสายเคเบิลสำหรับเซ็นเซอร์สัมผัสตัวต้านทานกับหม้อโลหะ วิธีนี้ทำให้เราสามารถควบคุมสีของโคมไฟได้โดยการสัมผัสหม้อ หากทำเสร็จแล้ว ไม้กางเขนสามารถติดกาวบนหม้อโลหะด้วยปืนร้อนละลาย จากนั้นจึงติดกากบาทและหม้อที่ด้านบนของแจกัน

ในขั้นตอนสุดท้าย ตอนนี้เราสามารถติดสาย USB ด้วยซุปเปอร์กาวบนแจกันเพื่อให้ทุกอย่างดูสวยงามและเป็นระเบียบเรียบร้อย ตอนนี้เราเกือบจะเสร็จแล้ว

ขั้นตอนที่ 5: นำไปใช้งาน

ขั้นตอนสุดท้ายคือการอัปโหลดซอฟต์แวร์ไปยังหลอดไฟและกำหนดค่าเซิร์ฟเวอร์ที่จะใช้สำหรับการซิงโครไนซ์ของหลอดไฟ หากคุณสนใจว่าซอฟต์แวร์ทำงานอย่างไร คุณสามารถศึกษาซอร์สโค้ดได้ เราจะไม่ลงรายละเอียดมากเกินไปที่นี่ แต่แนวคิดพื้นฐานคือหลอดไฟแต่ละดวงที่คุณต้องการซิงโครไนซ์จะต้องเชื่อมต่อกับเซิร์ฟเวอร์ MQTT เดียวกัน MQTT เป็นโปรโตคอลการส่งข้อความสำหรับอินเทอร์เน็ตของสิ่งต่าง ๆ และการสื่อสารระหว่างเครื่องกับเครื่อง หากหลอดไฟดวงใดดวงหนึ่งเปลี่ยนสี มันจะเผยแพร่สิ่งนี้ไปยังเซิร์ฟเวอร์ MQTT ซึ่งจะส่งสัญญาณไปยังหลอดไฟอื่นๆ ทั้งหมดซึ่งจะบอกให้พวกเขาเปลี่ยนสีด้วย

แต่ไม่ต้องกังวล คุณไม่จำเป็นต้องเข้าใจอะไรเกี่ยวกับ MQTT วิธีการทำงาน หรือวิธีตั้งค่าเซิร์ฟเวอร์ MQTT หากคุณต้องการใช้หลอดไฟ แน่นอน คุณสามารถตั้งค่าและกำหนดค่าเซิร์ฟเวอร์ของคุณเองได้หากต้องการ แต่ถ้าคุณไม่ต้องการทำเช่นนั้น มีบริการหลายอย่างที่คุณสามารถเช่าเซิร์ฟเวอร์ MQTT ที่โฮสต์ในระบบคลาวด์ได้ เราใช้ CloudMQTT สำหรับสิ่งนี้ ซึ่งคุณสามารถรับเซิร์ฟเวอร์ที่จำกัดมากๆ ได้ฟรี (แต่มีฟังก์ชันและแบนด์วิธเพียงพอสำหรับจุดประสงค์ของเรา) แผนบริการฟรีเรียกว่า Cute Cat และหากคุณได้รับแผนใดแผนหนึ่ง คุณเพียงแค่ต้องดูรายละเอียด→ข้อมูลอินสแตนซ์ จากนั้นคุณจะเห็นเซิร์ฟเวอร์ ผู้ใช้ รหัสผ่าน และพอร์ตของอินสแตนซ์ MQTT ของคุณ ค่าเหล่านั้นคือทั้งหมดที่คุณต้องการ ดังนั้นให้จดไว้:-)

ตอนนี้ในการอัปโหลดซอฟต์แวร์ไปยังหลอดไฟ คุณต้องเชื่อมต่อสาย USB กับแล็ปท็อปหรือคอมพิวเตอร์ของคุณ จากนั้นคุณสามารถอัปโหลดซอฟต์แวร์โดยใช้ซอฟต์แวร์ Arduino วิธีการติดตั้งและกำหนดค่าซอฟต์แวร์ Arduino สำหรับใช้กับบอร์ดที่ใช้ ESP8266 มีการอธิบายไว้อย่างดีในคำแนะนำนี้ ดังนั้นเราจึงไม่จำเป็นต้องทำซ้ำขั้นตอนเหล่านี้ที่นี่

หลังจากที่คุณติดตั้งและกำหนดค่าทุกอย่างที่คุณต้องไปที่ Tools →Manage Libraries ในซอฟต์แวร์ Arduino และติดตั้งไลบรารีที่จำเป็นสำหรับโครงการนี้: Adafruit NeoPixel, CapacativeSensor, PubSubClient, WifiManager (ในเวอร์ชัน 0.11) และ ArduinoJson (ในเวอร์ชัน 5 ไม่ใช่รุ่นเบต้า 6) หากติดตั้งไว้แล้ว คุณสามารถดาวน์โหลดซอร์สโค้ดสำหรับหลอดไฟจากที่เก็บ Github สำหรับโครงการนี้ และอัปโหลดไปยังหลอดไฟโดยใช้ซอฟต์แวร์ Arduino

หากทุกอย่างเป็นไปด้วยดี หลอดไฟก็จะเริ่มทำงานและพร้อมใช้งาน:-) ขณะที่สตาร์ทเครื่อง ไฟจะกะพริบเป็นสีน้ำเงินและพยายามเชื่อมต่อกับ WiFi ที่รู้จัก ในการเริ่มต้นครั้งแรก หลอดไฟไม่ทราบเกี่ยวกับ WiFi ใด ๆ ดังนั้นมันจะเริ่มต้นฮอตสปอตของตัวเอง (ด้วยชื่อที่เป็นการรวมกันของ "Syncenlight" และตัวระบุเฉพาะสำหรับ ESP8266 ที่คุณใช้) คุณสามารถเชื่อมต่อได้เช่น สมาร์ทโฟนของคุณไปยัง WiFi นี้ และคุณจะถูกนำไปยังหน้าการกำหนดค่าของหลอดไฟ ซึ่งคุณสามารถกำหนดค่าข้อมูลรับรอง WiFi ของคุณและป้อนการตั้งค่าที่จำเป็นสำหรับเซิร์ฟเวอร์ MQTT (สิ่งที่คุณต้องจดไว้ก่อนหน้านี้สองสามย่อหน้า) หากคุณทำเสร็จแล้ว หลอดไฟจะรีบูทและตอนนี้พร้อมใช้งานอย่างสมบูรณ์!

แจ้งให้เราทราบว่าคุณชอบโครงการนี้อย่างไรหรือหากคุณมีคำถามใด ๆ เราหวังว่าคุณจะชอบคำแนะนำนี้:-)

แนะนำ: