3 คะแนน โดย GN⁺ 2025-08-05 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • 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 เป็นโครงการเฉพาะตัวที่ผสานความโต้ตอบบนอินเทอร์เน็ตเข้ากับความเป็นกายภาพของโลกออฟไลน์ได้อย่างสร้างสรรค์
  • กระบวนการสร้างที่ผ่านการลองผิดลองถูกและความพยายามทางเทคนิคมากมาย เป็นกรณีที่น่าสนใจและอาจสร้างแรงบันดาลใจแก่ผู้เชี่ยวชาญทำเอง (เมกเกอร์) และนักพัฒนา

1 ความคิดเห็น

 
GN⁺ 2025-08-05
ความคิดเห็นจาก Hacker News
  • รู้สึกว่าเป็นโปรเจกต์ที่น่าทึ่งมาก และตอนก่อนหน้านี้ฉันเคยทำจอแบบ 30 พิกเซลด้วยตัวเองมาก่อน ดูโปรเจกต์ PixelWeaver โครงสร้างเป็นแบบกลไก ใช้บัตรเจาะรูและคันโยกแบบเครื่องจักร ทำให้พิกเซลทั้งหมดเปลี่ยนสถานะพร้อมกันในคราวเดียวเลย กระบวนการพัฒนากลไกรู้สึกคุ้นเคยมากจริง ๆ

    • รู้สึกว่ามันเป็นงานที่น่าทึ่งมาก และยอมรับว่าต้องใช้ความพยายามมากพอสมควรกว่าจะทำให้สำเร็จได้ จากการเห็นเครื่อง Linotype ตัวจริงของศตวรรษที่ 1800 มันทำให้ฉันชื่นชมความสำเร็จของคนรุ่นก่อน ๆ มาก เครื่องนี้ซับซ้อนมากจนจินตนาการไม่ออกเลยว่าผลิตอย่างไร เรื่องของเครื่องทอผ้า (loom) ที่ได้ยินมาก่อนก็ยิ่งทำให้ความรู้สึกนั้นเด่นชัดขึ้น
  • Mumbo Jumbo เคยทำแนวคิดที่คล้ายกันใน Hermitcraft ด้วยการใช้ trap door ก็ดีมาก โดยตอนนี้มีการปฏิวัติ "buildstone" ที่กำลังเกิดขึ้นเกี่ยวกับการสร้างเอฟเฟกต์ด้วย redstone ให้ดูสวยงาม วิดีโอ Mumbot 2.0 ดูได้ นอกจากนี้ Grian เคยใช้ดีสเพนเซอร์, ฝอยหิมะ และลูกศรยาเพื่อทำน้ำตกที่เคลื่อนไหวได้ วิดีโอ waterfall ของ Grian

  • โปรเจกต์นี้น่าทึ่งมาก เดินเรื่อง "แมวพูดว่า 'hi'" ไปจนดูจบแล้วเหมือนกัน ช่วง 9 วันล่าสุดแทบไม่มีโพสต์ใหม่บน Bluesky ของ @kilopx.com เลย เลยคิดว่ามีข้อเสนอแนะเล็กน้อยคือหลังจากส่งงานเสร็จ ควรให้ย้าย "ปากกา" ได้มากสุดเพื่อให้ถ่ายภาพผลงานที่เสร็จแล้วได้สวยขึ้น และน่าจะดีถ้าบนไซต์แสดงข้อมูลผู้ใช้ที่กำลังส่งงานอยู่ด้วย และควรแยกแสดงงานที่เสร็จสมบูรณ์ในแกลเลอรีชื่อ "history" ตอนนี้มีลิงก์คงที่แบบ "Timelapse will be available after this is drawn" ให้เฉพาะงานที่กำลังรอเท่านั้น และยังรู้สึกว่าหาส่งผลลัพธ์ที่เสร็จแล้วหรือที่กำลังทำอยู่ได้ไม่ง่าย

  • อัตรารีเฟรช 370 ไมโครเฮิรตซ์ทำให้แนวคิด "Calm Technology" มีความหมายใหม่ให้มากขึ้นในแบบที่น่าทึ่งมาก คำอธิบาย Calm Technology ในวิกิพีเดีย

    • หัวข้อนี้น่าทึ่งมากจริง ๆ ถ้าใครเคยอ่านหนังสือ "Calm Technology" ของ Amber Case คงน่าสนใจมากครับ

    • ส่วนนี่บอกเป็นนัยว่าส่วนเฟรมเรตของกล้องหลักสตรีม YouTube ก็บังเอิญเท่ากันด้วย และอยากให้ OP ปรับจุดนี้ให้ดีขึ้นด้วย

  • จากประสบการณ์จุดหนึ่งที่ค่อนข้างแพงที่สุดคงเป็นต้นทุนต่อพิกเซล แต่เป็นจอที่น่าหลงใหลที่สุดชิ้นหนึ่งที่เคยเห็น อย่างที่ดีที่สุด มันก็ "ผิดธรรมชาติ" ในความหมายที่ดีมาก

    • อีกตัวอย่างพิกเซลที่สวยและแพงอีกชุดหนึ่งคือผลงานกระจกของ Danny Rosin ที่ถูกพูดถึงในบทความนี้ วิดีโอที่เกี่ยวข้อง

    • ข้อดีอีกอย่างคือใช้ไฟฟ้าพลังงานเป็นศูนย์เมื่อไม่เปลี่ยนภาพ

    • ดูเหมือนว่า Mythbusters ยังคงครองสถิติอยู่นะ วิดีโอการทดสอบที่เกี่ยวข้อง

    • แท้จริงแล้วไม่อยากคำนวณราคาต่อพิกเซลเลย และพอรวมถึงมูลค่าของเวลาแล้ว ก็ยิ่งไม่อยากคำนวณ จึงไม่คิดต้นทุนสุดท้ายไว้เลย

    • ฉันใช้กลไกการเยียดไป-กลับแบบ "ปิงปอง" ที่ทำจากกาวแท่งแบบยืดหยุ่น ซึ่งเป็นทางเลือกที่คุ้มค่าและสร้างสรรค์สำหรับ "วัสดุสิ้นเปลือง" ที่ดีที่สุด

  • ความคิดเสริมคือเมื่อหันลูกบาศก์ให้ขอบหันหน้า กล่องหน้าตรงจะไม่ใช่ผิวหน้าแต่เป็นขอบ และถ้าลูกบาศก์แต่ละลูกมีด้านมืด 2 ด้านและด้านสว่าง 2 ด้านที่ติดกัน หนึ่งด้านเห็นได้จาก 45° ซ้าย อีกด้านเห็นได้จาก 45° ขวา เราสามารถตั้งภาพเป็น "พร้อมกัน" สองภาพได้ในคราวเดียว (พิกเซลต่อหนึ่งตัวมี 4 สถานะ)

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

    • อาจขยายต่อเป็นจอสีได้โดยทาสีแต่ละด้านเป็น RGBK หรือ CYMK

    • ในทำนองเดียวกัน คิดว่าถ้าตั้งกล้องทางด้านหน้า ก็อาจเพิ่มจำนวนพิกเซลได้เป็นสองเท่าด้วยฮาร์ดแวร์เดิม

  • โครงการนี้ทำได้ยอดเยี่ยมมาก แต่ยังคงทำให้ฉันคิดหาวิธีเร่งความเร็วต่าง ๆ (แม้จะรู้ดีว่า ความเร็วไม่ใช่ใจกลางของสิ่งนี้) หากอุปกรณ์หมุนบล็อกทำงานได้โดยไม่ต้องคอยสลับการจัดตำแหน่งแกน x ตลอดเวลา อาจประมวลผลทั้งคอลัมน์ได้เร็วขึ้น และหากโครงสร้างไม่จำเป็นต้องจัดตำแหน่งแกน y ก็อาจจัดการเป็นรายแถวได้ การออกแบบให้กลไกหมุนบล็อกไม่ต้องรีเซ็ตตลอดเวลา (เช่น โครงหมุนต่อเนื่อง) ก็น่าจะเร็วขึ้นมาก คิดภาพง่าย ๆ ว่าหากจ้างผู้เชี่ยวชาญระบบอัตโนมัติในโรงงานเข้าช่วย คงทำให้เกิดได้เร็วมาก โดยเฉพาะช่วงต้นที่ใช้แนวทาง e-ink อนาล็อกแบบใช้ลูกกลม ฉันประทับใจมากกับแนวคิดนี้

  • หากพูดถึง "ทางเลือกของเมทริกซ์จุดที่ใช้พลังงานเฉพาะตอนอัปเดตภาพ" นี่คือแนวคิดที่ไม่เคยได้คาดคิดมาก่อน: ในด้านหนึ่งของกล่องมีเครื่องพิมพ์เทอร์มอล ส่วนอีกด้านเป็นม้วนกระดาษเทอร์มอล+สปริงดึงที่ซ่อนอยู่ ทำให้กระดาษเทอร์มอลที่พิมพ์แล้วขยายผ่านกระจกบัง [UV] แล้วกลายเป็นจอ เมื่อมีการพิมพ์ภาพใหม่เพื่อ "รีเฟรช" จอ ก็อาจสร้างจอแบบนี้ได้

    • พรอมไปอีกขั้นได้ด้วยหมึกลบรอยเขียนจากปากกา Pilot Frixion ที่ปกคลุมผิวจอได้ หมึกนี้จะจางหายที่ 60 อีกรี และกลับเข้มอีกที่ -10 อีกรี ความเสถียรเกิดขึ้นที่อุณหภูมิเฉลี่ย จึงสามารถใช้ลูปเดิมซ้ำ ๆ ได้ แต่ปัจจัยว่าเหรอะคุมราวกี่รอบได้ยังไม่ชัดเจน

    • เครื่องแฟกซ์บางรุ่นใช้กระดาษเทอร์มอล ทำให้ขยายได้อย่างน้อย 8.5 นิ้ว

    • หากต้องทิ้งกระดาษทุกครั้งที่เปลี่ยนภาพ ฉันก็งงอยู่ว่าจะยังเรียกว่า "จอแสดงผล" ได้หรือไม่

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

  • โครงการนี้ยอดเยี่ยมมากและเนื้อหาก็อ่านสนุกมาก ทำให้นึกถึงสิ่งที่เคยเห็นในนิยายแนว steampunk ฉันค้นหาข้อมูลเพิ่มเติมผ่าน Google และเจอว่าเป็น kinotrope ใน Difference Engine ของ Gibson & Sterling มีคนเคยทำเวอร์ชันที่ใช้เซอร์โวที่แต่ละพิกเซล ซึ่งก็คงจะแพงมาก โพสต์บล็อกที่เกี่ยวข้อง

    • ที่ Breakfast Design ฉันเคยทำแผงหลายแบบจำนวนมากโดยได้รับแรงบันดาลใจจากงานของ Rozin ด้วยสื่อที่หลากหลาย แผง Breakfaststudio
  • ความคิดเรื่อง "เวอร์ชันที่เร็วขึ้น" ยังตามมาหลายชิ้นอยู่เสมอ เช่น การยิงลูกกลมไม้ผ่านท่อหรือช่องสำหรับแต่ละบรรทัดสแกนเพื่อนำลูกที่เข้ากับสีที่ต้องการมาเติมให้เหมาะสม สามารถใช้แรงโน้มถ่วงหรือระบบลมอัดเพื่อรีเซ็ต/เติมพลังให้แถวหนึ่งได้ และฉันยังจินตนาการขยายไปถึงขนาดสนามกีฬาพร้อมพิกเซลลูกโบว์ลิ่งได้ อุปสรรคคือการแบ่งเวลาป้อนลูกกลับสู่ช่องเลี้ยงใหม่ให้แม่นยำและการลดเสียงจากการหน่วงการกระแทกเพื่อป้องกันความสึกหรอในระบบอีกด้วย ด้านตรงข้ามอาจใช้แมตริกซ์แอคทีฟ โดยแต่ละบล็อกหมุนที่ตำแหน่งเดิมด้วยโซลินอยด์/เซอร์โวเพื่อแสดงหลายสี