ชื่อโปรเจกต์: Mini Oscilloscope using ATmega328p
Overview
ในงานวิศวกรรมเนี่ยนะ การจะดูว่าสัญญาณมันวิ่งยังไง ขึ้นลงแค่ไหน หรือจะเช็คความถี่ของอัลกอริทึม ไปจนถึงการคายประจุของไลน์ไฟเลี้ยง มันคือหัวใจสำคัญเลยเว้ย ปกติเราต้องมานั่งพลอต Vector ค่าความต่างศักย์ลงบนแกนเวลา (Time Axis) แต่จะมานั่งจดด้วยมือก็ใช่เรื่อง โปรเจกต์นี้เราเลยจัด Miniature Oscilloscope มาให้ เป็นอุปกรณ์สุดคูลที่ใช้อัลกอริทึมสุ่มเก็บตัวอย่างสัญญาณผ่านพวก Probe แล้วเอามาวาดรูป Waveform ลงบนจอ GLCD ให้เห็นกันจะๆ เอาไว้ใช้วิเคราะห์งานแบบหน้างานได้เลย จัดไปวัยรุ่น!
Mechanical Enclosure Fabrication (งานโครงสร้างต้องเป๊ะ)
เพื่อความแข็งแรงและช่วยกันสัญญาณรบกวน พี่เลยเลือกทำเคสแบบ Custom โดยใช้ไม้บัลซ่า (Balsa) เป็นหลัก พอดีตอนนั้นไม่มีเครื่อง 3D printing ให้ใช้ เลยต้องใช้ฝีมือช่างแบบแมนนวลกันหน่อยตามนี้:
- เอาเลื่อยเหล็ก (hacksaw) มาหั่นไม้บัลซ่าให้ได้ขนาดตามที่ออกแบบไว้
- ใช้กาว Fevicol แปะเชื่อมไม้ให้เป็นโครงสี่เหลี่ยม โดยกะระยะให้พอดีกับขอบจอ GLCD ของเรา
- ขั้นตอนนี้สำคัญ "ขัดวนไปครับน้อง" ใช้กระดาษทรายเบอร์ละเอียดขัดจนผิวไม้เนียนกริบ เพื่อให้ได้สัมผัสที่ลื่นไหลและดูเนี๊ยบที่สุด
Operational Heuristics and Analog-to-Digital Interfacing (เจาะลึกระบบประมวลผล)
พอเราเอา Probe ไปจิ้มวัดสัญญาณปุ๊บ เจ้าตัว ADC (Analog-to-Digital Converter) ในชิป ATmega328P มันจะเริ่มทำ Sampling ใน Loop วนไปเรื่อยๆ เพื่อเก็บค่าสัญญาณจากจุดที่เราวัด
- Sampling Rate & Interval: ความเร็วในการเก็บข้อมูลจะขึ้นอยู่กับ Clock ของระบบ (หน่วยเป็น Samples Per Second - SPS) โดย ATmega328P จะคอยเก็บข้อมูลแรงดันที่แปลงเป็นดิจิทัลแล้วยัดลงใน RAM เพื่อพักข้อมูลไว้ทำ Waveform ต่อไป
- Temporal Scaling (ซูมภาพแบบเซียนๆ): ถ้าเรากดสวิตช์
Div +veโปรแกรมมันจะสั่งDelay(T)เพื่อถ่วงเวลาตอน ADC ทำงาน ทำให้จุดข้อมูลบนจอ GLCD มันดูห่างขึ้น เป็นการจำลองการ Zoom Out ดูสัญญาณในแนวนอนนั่นเอง - Peak Detection Forensics: ตัว Software จะวิ่งไล่เช็คข้อมูลใน Buffer ทั้งหมด เพื่อหาว่าค่าไหนแรงที่สุด แล้วดึงค่านั้นมาโชว์เป็นแรงดัน Peak ให้เราดูแบบเรียลไทม์
ข้อมูลทางคณิตศาสตร์ทั้งหมดจะถูกพ่นลงบนพิกัด Cartesian ในโซน DISPLAY WAVEFORM ส่วนพวกค่าวิเคราะห์อื่นๆ (เช่น ความถี่, แรงดันไฟฟ้าสูงสุด) จะไปโผล่ที่ช่อง INFO ข้างๆ กัน ทำให้เราเห็นภาพรวมของระบบได้ครบ จบในที่เดียว สู้งานนะน้อง!