การจำลองแรงโน้มถ่วง: นาฬิกาทราย OLED แบบเคลื่อนไหว
Animated Hourglass เป็นโปรเจกต์ภาพที่น่าพึงพอใจอย่างยิ่ง แทนที่จะแสดงแค่ข้อความ จอแสดงผลจะเรนเดอร์ "เม็ดทราย" (pixels) แต่ละเม็ดนับสิบเม็ด เมื่อคุณเอียง breadboard จริงๆ เม็ดทรายก็จะ "ตกลงมา" ตามหลักการของแรงโน้มถ่วงดิจิทัล!

คณิตศาสตร์ของเมทริกซ์
ESP8266 มีความสำคัญอย่างยิ่งสำหรับโปรเจกต์นี้ เนื่องจากความเร็วในการประมวลผล
- The Sensors: MPU6050 Accelerometer จะอ่านค่าการเอียงของบอร์ดของคุณบนแกน X และ Y อย่างต่อเนื่อง
- The Draw Loop: โค้ดจะสร้างอาร์เรย์ที่แสดงถึงเม็ดทรายแต่ละเม็ด ในทุกๆ เฟรมของลูป จะมีการคำนวณ:
- ทิศทางไหนคือด้านล่าง? (จากการอ่านค่าของ MPU6050)
- มี pixel ว่างอยู่ใต้เม็ดทรายหรือไม่?
- ถ้าใช่ ให้ลบ pixel ปัจจุบันและวาดมันลงมาหนึ่ง pixel
- ไลบรารี
Adafruit_GFXผลักดันการอัปเดตเฟรมขนาดใหญ่เหล่านี้ไปยัง 0.96" OLED Display ด้วยอัตราเฟรมที่เร็วอย่างไม่น่าเชื่อ
การตั้งค่าฮาร์ดแวร์หลัก
- ESP8266 NodeMCU or ESP32: จำเป็นสำหรับการคำนวณความเร็วสูงเพื่อให้ได้แอนิเมชันที่ราบรื่น
- MPU6050 6-Axis IMU Module.
- 0.96" I2C OLED Screen.
- Mini Breadboard.
ด้วยการเพิ่มการตรวจจับการชน (การวาดโครงร่างรูปนาฬิกาทรายที่เม็ดทรายไม่สามารถผ่านไปได้ ยกเว้นเมื่อมันชนกับ "จุดคอขวด" แคบๆ ตรงกลาง) คุณก็สร้างการจำลองฟิสิกส์ที่สมจริงอย่างน่าทึ่งด้วยโค้ดเพียง 500 บรรทัดเท่านั้น