• Kilopixel เป็นจอพิกเซลไม้ขนาดใหญ่ที่พัฒนามาเป็นเวลา 6 ปี และเป็นระบบที่ใครก็สามารถวาดภาพผ่านอินเทอร์เน็ตได้ด้วย พิกเซลไม้จำนวน 1,000 ตัว
  • โครงการนี้ถูกทำให้สมบูรณ์ผ่านการออกแบบต้นแบบทางกายภาพหลากหลาย การทดสอบวัสดุ และการทดลองเปลี่ยนรูปทรงพิกเซลหลายรอบ
  • ใช้ CNC machine, Raspberry Pi, เว็บแอป, เซนเซอร์ ฯลฯ ในการเชื่อมต่อโลกออนไลน์และออฟไลน์ผ่านโครงสร้างที่เป็นเอกลักษณ์
  • ผู้ใช้สามารถมีส่วนร่วมได้ผ่านการส่งภาพโดยตรงบนเว็บไซต์หรือการโหวต และยังมีระบบสตรีมแบบเรียลไทม์และวิดีโอไทม์แล็ปส์
  • โครงการนี้เป็นโปรเจกต์ที่เปิดกว้างและสร้างสรรค์ พร้อมสำรวจการโอนสิทธิ์การควบคุมจอให้ผู้อื่นในอนาคต รวมถึงแนวทางการใช้งานที่หลากหลาย

ภาพรวมโครงการ

  • Kilopixel เป็นจอพิกเซลไม้ 1,000 ตัวที่ไม่มีประสิทธิภาพที่สุดในโลก ที่พัฒนามาเป็นเวลา 6 ปี
  • ออกแบบเป็น ระบบเชิงโต้ตอบ ที่ให้ใครก็ได้วาดภาพลงบนหน้าจอนี้ผ่านเว็บไซต์ kilopx.com
  • โครงการเป็นผลลัพธ์ที่รวมเอาองค์ประกอบ IT และเมกเกอร์หลายด้าน ไม่ว่าจะเป็นเว็บแอป, ตัวควบคุมทางกายภาพ, การกลึง CNC, การสร้าง G-code, การทำแบบจำลองและพิมพ์ 3D

จุดเริ่มต้นของแนวคิดและแรงบันดาลใจ

  • ได้แรงบันดาลใจจาก ผลงานกระจกเงาแนวทดลอง ของ Danny Rozin และตัวเล่นวิดีโอ eInk แบบความเร็วต่ำมาก
  • ต่างจากจอความละเอียดสูงในปัจจุบัน โครงการนี้เลือกใช้วิธีที่ช้ามากและไม่ค่อยมีประสิทธิภาพ โดยเปลี่ยนพิกเซลได้เพียง 10 ครั้งต่อนาที
  • ใช้กริดขนาด 40×25 เพื่อแสดงผล 1,000 พิกเซลอย่างแม่นยำ และตั้งชื่อโดเมนเป็น kilopx.com เพราะจำง่าย

การผลิตต้นแบบแรก (21×3 พิกเซล)

  • เริ่มจากใช้โครงไม้เป็นหลัก ก่อนเปลี่ยนมาใช้ชิ้นส่วนอะลูมิเนียมของ Openbuilds kit ทันที ซึ่งมีโครงสร้างคล้ายเครื่องพิมพ์ 3D
  • ทดลองประกอบระบบอัตโนมัติพื้นฐานด้วย Raspberry Pi, ตัวควบคุม CNC และสเต็ปเปอร์มอเตอร์เพื่อทดลองใช้งาน
  • พบข้อจำกัดและปัญหาทางเทคนิคหลายด้านในกลไกการเลือกและควบคุมพิกเซล

ความยากในการหาพิกเซลที่เหมาะสม

  • ทดลองวัสดุทรงกลมหลายแบบ เช่น ลูกปิงปอง, สไตรีโอโฟม, ลูกไม้
    • เผชิญปัญหาปฏิบัติจริงด้าน ต้นทุน, น้ำหนัก, ความยากในการหาแหล่งซื้อ และความไม่สม่ำเสมอของขนาด
    • ตัวอย่าง: หากใช้ลูกบอลราคาประมาณ 50 เซนต์ จำนวน 1,000 ลูก จะมีต้นทุนราว 500 ดอลลาร์สหรัฐ
  • ลูกปิงปองจะเสียรูปง่ายเมื่อเจาะรู และล้มเหลวจากความผันแปรของขนาด
  • นี๊อฟบอล, บอลเด้ง, ลูกไม้, สไตรีโอโฟม ฯลฯ ก็ตัดสินว่าไม่เหมาะสมเช่นกัน เพราะปัญหาเจาะรู การลงสี ความทนทาน และน้ำหนัก

การทดลองกลไกการหมุนพิกเซล

  • พยายามหมุนพิกเซลโดยใช้ ล้อเลโก้, มอเตอร์ และเซนเซอร์ ร่วมกัน
  • ทดสอบการทำงานด้วยโซลินอยด์, เซอร์โวมอเตอร์ และกลไกอื่นๆ หลายแบบ แต่ทุกอย่างถูกยกเลิกเพราะควบคุมความสัมพันธ์ที่ต้องละเอียดได้ยาก

เปลี่ยนจากพิกเซลทรงกลมไปเป็นพิกเซลทรงลูกบาศก์

  • หลังการพูดคุยผ่านพอดแคสต์ จึงเปลี่ยนไปใช้ พิกเซลไม้ทรงลูกบาศก์ และเริ่มผลิตเอง
  • การผลิตแบบ mass production ใช้เวลามากพอสมควร แต่ผลลัพธ์ด้านภาพและการเคลื่อนไหวสุดท้ายให้ความพึงพอใจ

การสร้างกริดพิกเซล

  • แทนการออกแบบพิกเซลเองโดยตรง เลือกออกแบบ โครงกริดคงที่ เพื่อให้การจัดเรียง 40×25 ถูกต้อง
  • เจาะชิ้นไม้แผ่นบาง 25 ชิ้น ให้มีรู 40 รู แล้วร้อยพิกเซลผ่านลวดโลหะเพื่อคงระยะห่างสม่ำเสมอ
  • ออกแบบให้แต่ละพิกเซลทำงาน อย่างอิสระสมบูรณ์ โดยไม่ถูกกระทบจากพิกเซลรอบข้าง

CNC และระบบควบคุม

  • มีคำอธิบายพื้นฐานเกี่ยวกับ หลักการ CNC และการใช้ G-code
  • ใช้ Raspberry Pi และตัวควบคุม CNC, สคริปต์ Python, เซนเซอร์แสง, ไลบรารี pigpio ฯลฯ
  • เชื่อมต่อกับเว็บ API เพื่อเลือกพิกเซลต่อไปที่ต้องเปลี่ยน ควบคุมด้วย G-code ตรวจผลลัพธ์ด้วยเซนเซอร์ แล้วส่งกลับมายัง API เป็น feedback loop

กลไกการจัดการพิกเซล (pixel poking)

  • พิกเซลมีร่องรับเฉพาะทุก 90° และหมุนโดยดันขอบด้วยแท่งยืดหยุ่น (glue stick)
  • การเคลื่อนไหวทั้งหมดถูกทำให้อัตโนมัติโดย G-code

โหมดการแสดงผลภาพและเว็บอินเทอร์เฟซ

  • API ถูกควบคุมผ่านเว็บแอป และมี 3 โหมดในการแสดงผลจอ
    • ส่งโดยผู้ใช้: ใครก็ได้สามารถส่งภาพขนาด 40×25 และโหวตได้ และระบบจะแสดงผลงานตามลำดับความนิยม
    • ร่วมมือแบบเรียลไทม์: ผู้ร่วมสามารถเปลี่ยนพิกเซลแบบสด แต่ถ้าจำนวนผู้ร่วมงานมากเกินไปอาจไม่เหมาะสม
    • โหมดพัก (Idle): แสดงผลตามอัลกอริทึม เช่น นาฬิกา รูปร่างต่างๆ
  • สแตกเว็บแอปพัฒนาจาก Node/Socket.IO และ Laravel+Livewire สุดท้ายกลายเป็น Laravel+InertiaJS+VueJS

สตรีมมิ่งแบบเรียลไทม์และไทม์แล็ปส์

  • ใช้เว็บแคม 2 ตัว (โหมดใกล้และโหมดกว้าง) ร่วมกับ OBS และ ffmpeg เพื่อสตรีมจอแบบเรียลไทม์ลง YouTube
  • รองรับการตรวจสอบสถานะ API และการสร้าง/เผยแพร่วิดีโอไทม์แล็ปส์ของผลงานที่เสร็จสมบูรณ์

ความปลอดภัยและการดำเนินงานของระบบแบบเปิด

  • สร้างการตรวจสอบขั้นต่ำเพื่อป้องกันการใช้งานผิดวัตถุประสงค์ และมีระบบลบงานอย่างรวดเร็วเมื่อจำเป็น
  • ยังคงโครงสร้างการมีส่วนร่วมที่เปิดกว้างเป็นหลัก โดยใช้การล็อกอินผ่าน Bluesky OAuth เป็นต้น

แผนอนาคต

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

บทสรุป

  • Kilopixel เป็นโครงการเฉพาะตัวที่ผสานความโต้ตอบบนอินเทอร์เน็ตเข้ากับความเป็นกายภาพของโลกออฟไลน์ได้อย่างสร้างสรรค์
  • กระบวนการสร้างที่ผ่านการลองผิดลองถูกและความพยายามทางเทคนิคมากมาย เป็นกรณีที่น่าสนใจและอาจสร้างแรงบันดาลใจแก่ผู้เชี่ยวชาญทำเอง (เมกเกอร์) และนักพัฒนา

ยังไม่มีความคิดเห็น

ยังไม่มีความคิดเห็น