แผนการง่ายๆ นี้จะช่วยให้น้องสามารถควบคุมตารางเดินรถไฟได้อย่างรวดเร็วเลยจ้า น้องสามารถปรับเวลาเคลื่อนที่และเวลาหยุดจอดของรถไฟได้ตามใจชอบ อัตราเร่งและการเบรกของรถไฟก็ตั้งค่าได้หมด แค่เปลี่ยนพารามิเตอร์ตารางเวลาในสเก็ตช์ น้องก็สร้างการเคลื่อนไหวอัตโนมัติแบบไหนก็ได้แล้ว เปิดไฟเลี้ยงปุ๊บ รถไฟของน้องก็ออกเดินทางปั๊บ!
ต่อยอดจากโปรเจค Interlocking ระบบ ควบคุมรถไฟอัตโนมัติ (ATC) ตัวนี้จะโฟกัสที่ตัวรถไฟโดยตรง แทนที่จะแค่ป้องกันการชนเท่านั้น โปรเจคนี้ทำหน้าที่เหมือน "พนักงานขับรถไฟ" คอยควบคุมทางลาดของการเร่งและลดความเร็วให้หยุดที่สถานีได้สมจริงสุดๆ สำหรับเลย์เอาท์สเกล HO หรือ N
พัลส์วิดท์ DDC (Digital Command Control)
รถไฟโมเดลได้รับพลังงานไฟฟ้าจากรางโลหะโดยตรง
- วงจร: Arduino ใช้มอเตอร์ชีลด์กำลังสูง (L298P หรือเทียบเท่า) ต่อตรงเข้ากับรางรถไฟเพื่อส่งสัญญาณ PWM 12V ออกไป
- อัลกอริทึมทางลาด: รถจักรจริงหนักเป็นร้อยตันมันไม่หยุดกึกทันทีหรอกน้อง โค้ด Arduino ใช้ลูป
forเพื่อค่อยๆ เพิ่มและลดสัญญาณ PWM แบบนี้:for(speed=255; speed>50; speed--) { analogWrite(trackPin, speed); delay(20); }มันจะทำให้ได้โมเมนตัมที่ลื่นไหลและสมจริงมากๆ
ตรรกะการหยุดที่สถานี
เพื่อให้การทำงานเป็นไปตามตารางเวลา Arduino ต้องรู้ตำแหน่งที่แน่นอนของรถไฟ
- น้องวาง เซ็นเซอร์อินฟราเรด (TCRT5000) หรือ รีดสวิตช์ ไว้ใต้รางตรงจุดเริ่มต้นชานชาลาสถานี
- พอรถไฟผ่านเซ็นเซอร์ Arduino ก็จะรันลูปการลดความเร็วทันที
- รถไฟจะหยุดนิ่งอย่างนุ่มนวลพอดีที่ชานชาลาสถานีเล็กๆ ของเรา
- Arduino จะรัน
delay(10000)เพื่อให้ผู้โดยสารจินตนาการลงรถ จากนั้นก็รันลูปการเร่งความเร็วช้าๆ เพื่อออกเดินทางต่อ!
การเปลี่ยนพารามิเตอร์เวลาในสเก็ตช์:
// 1 | 0 > Time < 5 sec
if (counterScheduler <= 5) {
......
// 2 | 10 sec > Time < 15 sec
if ((counterScheduler >= 10) && (counterScheduler <= 15)) {
......
// 3 | Change direction
if (counterScheduler == 16) {
.... etc.
จะสร้างตารางเวลาขึ้นมา
ตัวแปร:
int brakingDelta = 5;
int accelerateDelta = 6;
กำหนดพารามิเตอร์การเคลื่อนที่ของรถไฟ
ทิศทางของรถไฟถูกกำหนดโดยสถานะของพิน D6 และ D7:
// Set default direction to FORWARD
digitalWrite(L298_IN1, HIGH);
digitalWrite(L298_IN2, LOW);
อุปกรณ์ที่ต้องใช้
- Arduino Uno/Mega
- มอเตอร์คอนโทรลชีลด์: ที่สามารถจ่ายกระแสต่อเนื่อง 1-2 แอมป์ที่ 12V ได้
- เซ็นเซอร์อินฟราเรดหรือรีดสวิตช์ + แม่เหล็ก
- ชุดรถไฟสเกล HO หรือ N แบบอนาล็อก
น้องสามารถปรับแต่งสเก็ตช์นี้ได้เรื่อยๆ เพื่อสร้างตัวเลือกใหม่ๆ ในการควบคุมรถไฟอัตโนมัติ เอาเลยวัยรุ่น!
สู้งานนะน้อง!