โปรเจกต์นี้คือเกมปริศนาสีแบบอินเทอร์แอคทีฟที่ใช้ Arduino เป็นแกนหลัก ผู้เล่นต้องแก้โจทย์สีเพื่อ "ปลดล็อก" ตู้เซฟลึกลับในจินตนาการ โดนแรงบันดาลใจจากแนวคิดการผจญภัยลึกลับ ระบบนี้ใช้ RGB LED, โพเทนชิโอมิเตอร์ และปุ่มกดเพื่อสร้างสีเฉพาะและตรวจสอบลำดับรหัสลับ โปรเจกต์นี้มีโหมดหลักอยู่ 4 โหมดด้วยกัน:
- โหมดปุ่มกด (Button or Single mode): เปิดใช้งานสีแดงและสีน้ำเงินแยกกัน เมื่อกดพร้อมกันจะได้สีม่วง ซึ่งเป็นสัญลักษณ์ของการเปิดตู้เซฟ
- โหมดรหัสลึกลับ (Mystic Code Mode): ผู้ใช้ต้องกดปุ่มให้ได้ลำดับสีที่กำหนดเพื่อปลดล็อกตู้เซฟ (เช่น แดง, แดง, น้ำเงิน, แดง)
- โหมดสายรุ้งวิเศษ (Total Arcane mode): ใช้โพเทนชิโอมิเตอร์ควบคุมเฉดสีของ LED ให้แสดงสีรุ้งทั้งหมด
- โหมดรหัสมอร์สต้องห้าม (Forbidden Enigma mode): LED จะกระพริบเป็นรหัสมอร์สเพื่อชี้นำผู้ใช้
อุปกรณ์ที่ต้องใช้
- Arduino Uno 1 ตัว
- RGB LED (แบบแอโนดร่วม) 1 ดวง
- ปุ่มกด 3 ปุ่ม (สำหรับสีแดง, สีน้ำเงิน และสำหรับเปลี่ยนโหมด)
- ตัวต้านทาน 220Ω 3 ตัว (เพื่อป้องกัน LED)
- โพเทนชิโอมิเตอร์ 1 ตัว (สำหรับโหมดสายรุ้งวิเศษ)
- จัมเปอร์ไวร์และเบรดบอร์ด
ไดอะแกรมการต่อวงจร

ล้วงลึกเทคนิคแบบจัดเต็ม
- การควบคุมสีและการวิเคราะห์แสง (Chromatic Orchestration & Photometric Forensics):
- ศูนย์กลางตรรกะของ RGB (The RGB Logic-Hub): ใช้เทคนิค Pulse-Width Modulation (PWM) บนพิน 9, 10 และ 11 เพื่อให้ได้การวินิจฉัยการผสมสีที่มีความละเอียดสูง การวิเคราะห์เกี่ยวข้องกับการวัด "ความสมดุลของความเข้มแสง (Luminous-Intensity Balance)" ระบบจะแมปค่าจำนวนเต็ม 8-bit $(0-255)$ ไปยังไดโอดแต่ละตัวเพื่อสร้างสเปกตรัมสีเฉพาะ การวิเคราะห์มุ่งเน้นไปที่ "การวิเคราะห์ผลรวมของโฟตอน (Photonic-Summation Analytics)" เพื่อให้แน่ใจว่าการเปิดใช้งานโหนดสีแดงและสีน้ำเงินพร้อมกันจะส่งผลให้เกิดการทริกเกอร์เปิดตู้เซฟด้วยสีม่วง
- การวิเคราะห์ลำดับเวลา (Mystic Code): เฟิร์มแวร์ใช้ state-machine ในการจับสัญญาณอินพุตแบบอะซิงโครนัส การวิเคราะห์รวมถึงการตรวจสอบ "ความแม่นยำของลำดับการกด (Press-Sequence Fidelity)" ระบบจะเปรียบเทียบบัฟเฟอร์แบบเรียลไทม์กับเวกเตอร์รหัสลับที่กำหนดไว้ล่วงหน้า (เช่น R-R-B-R) เพื่อทริกเกอร์สถานะการวินิจฉัย "ปลดล็อกแล้ว"
- สุนทรียะของอนาล็อกและความถี่ของการวัดระยะไกล (Analog Aesthetics & Telemetry Harmonics):
- การตรวจสอบสัญญาณจากโพเทนชิโอมิเตอร์ (The Potentiometer Signal-Probe): ใช้ ADC 10-bit เพื่อปรับการวิเคราะห์การเลือกโหมด การวิเคราะห์รวมถึงการแมป "ขอบเขตแรงดันไฟฟ้าอนาล็อก (Analog-Voltage Envelope)" $(0-1023)$ ผ่านเมทริกซ์การแปลง HSV-to-RGB
- การวัดระยะไกลด้วยแสงแบบเข้ารหัสมอร์ส (Morse-Encoded Photonic Telemetry): การนำโหมด "รหัสมอร์สต้องห้าม" ไปใช้ โดยที่ LED จะทำงานด้วยการวิเคราะห์การเปิด-ปิดความเร็วสูง การวินิจฉัยมุ่งเน้นไปที่ "การวิเคราะห์รอบหน้าที่เวลา (Temporal-Duty-Cycle Analytics)" แปลงพัลส์รหัสมอร์ส $(.\text{ } .\text{ } .\text{ } -)$ เป็นเวกเตอร์คำแนะนำทิศทาง
วิศวกรรมและการลงมือทำ (Engineering & Implementation)
- การวิเคราะห์สัญญาณอินพุตและความน่าเชื่อถือของสวิตช์ (Input-Logic & Switch-Integrity Forensics):
- การวิเคราะห์การจับมือแบบอะซิงโครนัส (Asynchronous Handshake Analytics): ใช้ตัวต้านทานดึงขึ้น/ดึงลงภายใน (ผ่านการตั้งค่าฮาร์ดแวร์) เพื่อรักษาระดับลอจิกให้สะอาดปราศจากสัญญาณรบกวน การวิเคราะห์รวมถึงการวัด "Contact-Bounce Jitter" เพื่อป้องกันการวินิจฉัยสัญญาณหลอก (false-trigger) ขณะที่กำลังแก้ปริศนาอย่างรวดเร็ว
- การวินิจฉัยความเที่ยงตรงของ PWM (PWM-Fidelity Diagnostics): Arduino Uno รักษาความถี่พาหะ (carrier frequency) ที่ $490\text{Hz}$ สำหรับโหนด RGB การวิเคราะห์เน้นที่ "ความเสถียรของ Duty-Cycle" เพื่อป้องกันการเกิดฮาร์มอนิกส์ของการกะพริบภาพ (visual flickering-harmonics) ขณะทำการแรสเตอร์สี (chromatic-rasterization) ที่ความสว่างต่ำ
- ตรรกะฮิวริสติกและการแยกโหมด (Logic-Heuristics & Mode-Abstraction):
- การลงมือทำนี้ใช้สถาปัตยกรรม "การประสานโหมดแบบลำดับชั้น (Hierarchical Mode-Orchestration)" การวิเคราะห์รวมถึงการวัด "ความหน่วงในการสลับโหมด (Mode-Switch Latency)" ขณะที่ผู้ใช้เปลี่ยนจากลอจิกที่ขับเคลื่อนด้วยปุ่ม ไปเป็นการวิเคราะห์แบบแอนะล็อกที่ขับเคลื่อนด้วยโพเทนชิโอมิเตอร์
โหมดการทำงาน (Operating modes) :
- โหมดปุ่ม (Button mode) กดปุ่มสีแดง -> ไฟ LED สีแดงติดเท่านั้น กดปุ่มสีน้ำเงิน -> ไฟ LED สีน้ำเงินติดเท่านั้น กดทั้งสองปุ่มพร้อมกัน -> ได้สีม่วง (แดง + น้ำเงิน) ง่ายๆ ตรงไปตรงมาแบบนี้แหละน้อง
- โหมดรหัสลับ (Mystic Code mode) ผู้ใช้ต้องกดปุ่มตามลำดับที่ถูกต้อง (เช่น แดง, แดง, น้ำเงิน, แดง) ถ้าลำดับถูกต้อง ตู้นิรภัยจะเปิด (ไฟ RGB ติดสีม่วง) ถ้าลำดับผิด ไฟจะไม่ติดและลำดับจะถูกรีเซ็ตใหม่ ระวังกดผิดนะตัวนี้!
- โหมดสายรุ้ง (Total Arcane mode) ไฟ RGB จะแสดงสีรุ้งทั้งหมด ขึ้นอยู่กับตำแหน่งของโพเทนชิโอมิเตอร์ หมุนเล่นได้เรื่อยๆ ตามอารมณ์วัยรุ่น
- โหมดปริศนา (Forbidden Enigma mode) ไฟ LED จะกะพริบรหัสมอร์สเพื่อชี้นำผู้ใช้ ตัวอย่างเช่น มันอาจจะแสดงตัวอักษร “...-” ซึ่งหมายถึงสีม่วง
การเลือกโหมด กำหนดโดยตำแหน่งของโพเทนชิโอมิเตอร์ หรือ การกดปุ่มสีเขียว :
- โพเทนชิโอมิเตอร์อยู่ที่ 0 → โหมดปุ่ม
- โพเทนชิโอมิเตอร์อยู่ระหว่าง 10 ถึง 1000 → โหมดสายรุ้ง
- โพเทนชิโอมิเตอร์อยู่ที่ 1000 → โหมดปริศนา
- กดปุ่มสีเขียว → โหมดรหัสลับ
ไอเดียอัพเกรดเพิ่มเติม (Possible improvements) :
- โหมดผู้พิทักษ์แสงสว่าง (Guardian of the Lost Lights mode): เพิ่มลำดับที่ซับซ้อนขึ้น โดยต้องกดปุ่มหลายปุ่มตามลำดับที่แม่นยำ งานเข้าแล้ววว!
- ตัวบอกเสียง (Audio indications): เพิ่มออด (buzzer) เพื่อบอกเสียงเมื่อทำผิดหรือสำเร็จ จะได้ไม่ต้องจ้องแต่ไฟ
- จอแสดงผล LCD: ใช้หน้าจอ LCD เพื่อแนะนำผู้ใช้เกี่ยวกับโหมดที่กำลังทำงานและขั้นตอนที่ต้องทำต่อไป สวยหรูดูโปรขึ้นอีกเป็นกอง
โปรเจคนี้ให้ประสบการณ์แบบอินเทอร์แอคทีฟและให้ความรู้ผ่านการใช้ไฟ LED RGB และอินพุตของ Arduino เหมาะมากสำหรับมือใหม่ที่อยากเรียนรู้เรื่องการจัดการสีและการโต้ตอบกับปุ่มกด ถ้าน้องรับคำท้าและอัพเกรดโปรเจคนี้ได้แล้ว อย่าลืมเอามาโชว์พี่ดูบ้างนะ! 😉 สู้งานนะน้อง!