วิธีใหม่ในการควบคุม Arduino ของรถ RC: 7 ขั้นตอน (พร้อมรูปภาพ)
วิธีใหม่ในการควบคุม Arduino ของรถ RC: 7 ขั้นตอน (พร้อมรูปภาพ)
Anonim
วิธีใหม่ในการควบคุม Arduino ของรถ RC
วิธีใหม่ในการควบคุม Arduino ของรถ RC

ฉันได้ทำงานกับรถยนต์ที่ควบคุมโดย Arduino มาบ้างแล้ว แต่คันที่ฉันทำงานอยู่นั้นช้าและมีระเบียบอยู่เสมอ สิ่งนี้ยอดเยี่ยมเมื่อเรียนรู้ Arduino แต่ฉันต้องการอะไรมากกว่านี้…สนุก เข้าไปในรถ RC

รถ RC ได้รับการออกแบบมาให้สนุกกับการขับอย่างแท้จริง - มันคือของเล่น! ฉันไปที่ YouTube แต่สิ่งที่ฉันพบคือวิธีที่ซับซ้อนมากเกินไปในการแปลงรถ RC เป็นตัวควบคุม Arduino ฉันคิดว่าต้องมีวิธีที่ง่ายกว่านี้ในการทำเช่นนี้ ดังนั้นฉันจึงเริ่มค้นหาวิธีการแปลงรถ RC เป็นตัวควบคุม Arduino ของตัวเอง โดยเน้นความเรียบง่ายและมีประสิทธิภาพ

แทนที่จะใส่ไส้ในรถแล้วสตาร์ทใหม่ ฉันคิดว่ามันจะง่ายกว่ามากที่จะนั่งบนโครงสร้างพื้นฐานที่มีอยู่ วิธีนี้มีประโยชน์ที่ยอดเยี่ยมจริงๆ

ฉันแฮ็คตัวควบคุมรถ แต่ปล่อยตัวรถไว้โดยไม่มีใครแตะต้อง สิ่งนี้ทำให้ฉันสามารถควบคุมรถได้เองในราคาที่ถูกกว่า โดยใช้ระบบวิทยุที่มีอยู่แล้ว

ฉันชอบโซลูชันนี้เพราะมันหรูหรา ง่าย ราคาถูก และขยายได้ หวังว่าคุณจะพบว่ามีประโยชน์เหมือนที่ฉันทำ!

ขั้นตอนที่ 1: ทดลองขับ

Image
Image

คุณต้องการเปิดรถและเริ่มต้นจริงๆ แต่เดี๋ยวก่อน! คุณเพิ่งได้รถ RC ใหม่ที่ยอดเยี่ยมคันนี้ ใช้เวลาสักครู่เพื่อแกล้งทำเป็นเด็กๆ แล้วขับไปรอบๆ! ฉันและเพื่อนๆ สนุกกับการวิ่งไปรอบๆ ด้วยรถ RC "เพื่อวิทยาศาสตร์" จุดที่เราชื่นชอบในการขับรถไปรอบๆ คือลานสเก็ตท้องถิ่นและสนามเบสบอลเก่า สถานที่เหล่านี้เหมาะสำหรับการฝึกซ้อมกระโดดและโดนัท ลองดูวิดีโอสโลว์โมชั่นที่เราได้รับ!

ขั้นตอนที่ 2: เปิดตัวควบคุม

เปิดคอนโทรลเลอร์
เปิดคอนโทรลเลอร์
เปิดคอนโทรลเลอร์
เปิดคอนโทรลเลอร์

ตัวควบคุมแต่ละตัวมีความแตกต่างกัน ดังนั้นคุณควรตรวจสอบภายในเพื่อดูว่าคุณกำลังทำอะไรอยู่ ตัวควบคุมของฉันมีทริกเกอร์สำหรับแก๊สและล้อโฟมสำหรับหมุน ปรากฎว่าทั้งไกปืนและล้อเป็นเพียงตัวเรือนที่ซับซ้อนสำหรับโพเทนชิโอมิเตอร์! สะดวกมากเพราะเราสามารถปลอมแปลงสิ่งนี้ด้วย Arduino ได้อย่างง่ายดาย

ใช้เวลาสักครู่เพื่อค้นหาตำแหน่งที่โพเทนชิโอมิเตอร์เชื่อมต่อกับบอร์ด ควรมีสายไฟบัดกรี 3 เส้น: กำลังไฟฟ้า กราวด์ และข้อมูล สิ่งนี้จะมีความสำคัญในไม่ช้า

ขั้นตอนที่ 3: มัลติมิเตอร์

ฉันพบปัญหาและลืมลองใช้มัลติมิเตอร์ หลังจากจำการใช้มัลติมิเตอร์ได้ในที่สุด มันก็แก้ไขปัญหาทั้งหมดของฉันได้!

มัลติมิเตอร์เป็นเหมือนคำสั่งการพิมพ์ในโค้ดของคุณ ซึ่งเป็นตัวแก้ไขในกระดาษของคุณ ในกรณีนี้ มัลติมิเตอร์ช่วยให้ฉันเข้าใจวิธีเชื่อมต่อโพเทนชิโอมิเตอร์ ดังนั้นฉันจึงสามารถปลอมแปลงด้วย Arduino ได้ดีขึ้น

หากต้องการทราบว่าโพเทนชิโอมิเตอร์ของคุณเชื่อมต่อกันอย่างไร เพียงแค่แตะพื้นถึงพื้น และต่อสายสีแดงของมัลติมิเตอร์ของคุณเข้ากับหมุดข้อมูลของบอร์ด ลำดับควรมีความชัดเจนจากสีของสายไฟ แต่ถ้าไม่ หมุดข้อมูลจะเป็นขาที่จะเปลี่ยนค่าเมื่อโพเทนชิออมิเตอร์ถูกหมุน

จากนั้นฉันบันทึกค่าของสายข้อมูลที่จุดกึ่งกลาง (ตำแหน่งเริ่มต้น) และที่ขั้วใดขั้วหนึ่ง ด้วยวิธีนี้ฉันจะรู้ว่า 0 คืออะไรและควรไปทางใดเพื่อเพิ่มหรือลดความเร็วหรือเลี้ยวซ้ายหรือขวา นี่คือการวัดของฉัน:

  • 0 ความเร็วสูงสุด
  • 1.75v ไม่มีการเคลื่อนไหว
  • ย้อนกลับสูงสุด 3.0v
  • 0 เลี้ยวซ้ายสุด
  • 1.57 ไม่มีเทิร์น
  • 3.37 เลี้ยวขวาสุด

ฉันวางแผนที่จะใช้ขนนก Adafruit เพื่อควบคุมรถอยู่ดีเพราะฉันชอบบอร์ด แต่การวัดเหล่านี้สนับสนุนการตัดสินใจนั้น ขนนกทำงานบนลอจิก 3.3v ซึ่งเข้ากันได้ดีกับช่วงอนาล็อกนี้ สิ่งนี้สามารถทำได้ด้วยบอร์ด 5v แต่คุณจะต้องระมัดระวังให้มากขึ้นเกี่ยวกับแรงดันแอนะล็อกสูงสุดที่คุณจ่าย

ขั้นตอนที่ 4: ทดสอบเลย

Image
Image

ขั้นตอนนี้เป็นทางเลือก แต่ฉันคิดว่ามันดีกว่าเสมอที่จะทดสอบขั้นตอนกลางๆ ด้วยการควบคุม ถ้าเป็นไปได้ ฉันใช้พาวเวอร์แบงค์ของเดสก์ท็อปเพื่อต่อคอนโทรลเลอร์กับคลิปจระเข้ (หลังจากแยกสายข้อมูลออก) และทดสอบแรงดันไฟฟ้าต่างๆ มันยอดเยี่ยมมากที่ได้หมุนปุ่มบนพาวเวอร์แบงค์เพื่อปรับแรงดันไฟฟ้า และดูวงล้อหมุนรอบตัวราวกับว่าฉันทำให้มันเคลื่อนที่ด้วยคอนโทรลเลอร์

ขั้นตอนที่ 5: เชื่อมต่อ Arduino

ต่อ Arduino
ต่อ Arduino
ต่อ Arduino
ต่อ Arduino

ขั้นตอนนี้ค่อนข้างตรงไปตรงมา แต่ฉันได้ทำบางสิ่งที่ทำให้งานนี้ดีขึ้นมาก นี่คือวิธีการของฉัน:

  1. ปลดสายข้อมูลจากโพเทนชิโอมิเตอร์สองตัวที่ด้านกระดาน
  2. บัดกรีสายไฟที่หลวมกับปลั๊กตัวผู้: เร่งความเร็วเพื่อจ่ายไฟและหมุนลงกราวด์
  3. บัดกรีปลั๊กตัวเมียที่เข้าชุดกันเข้ากับบอร์ด เพื่อที่ว่าหากเสียบปลั๊ก มันก็จะทำงานเหมือนเดิม
  4. บัดกรีปลั๊กตัวผู้เข้ากับ Arduino

    • สายเดียวไปยัง DAC ในตัว (บนบอร์ดของฉันนี่คือพิน A0 ไม่ใช่ทุกบอร์ดที่มีสิ่งนี้ ดังนั้นโปรดตรวจสอบก่อน!)
    • หากคุณบังเอิญใช้ Arduino Due หรือคล้ายกัน ให้เชื่อมต่อสายอื่นเข้ากับ DAC ในตัวที่สอง
    • มิฉะนั้นให้เชื่อมต่อสายอื่นเข้ากับเอาต์พุตของ DAC ภายนอก ฉันซื้อบอร์ดฝ่าวงล้อม DAC ภายนอกจาก adafruit
    • เชื่อมต่อพินอื่นๆ ของ DAC ภายนอกเข้ากับ Arduino
  5. ต่อสายกราวด์ของโพเทนชิโอมิเตอร์ตัวใดตัวหนึ่งเข้ากับกราวด์ของ Arduino

    การให้พื้นร่วมช่วยลดสัญญาณรบกวนอย่างมาก

ขั้นตอนที่ 6: การเขียนโปรแกรมรถยนต์อิสระใหม่ของคุณ

Image
Image

ตอนนี้คุณสามารถควบคุมรถ RC ของคุณโดยอัตโนมัติ! คุณจะต้องใช้ไลบรารี่หากคุณใช้ DAC ภายนอก มิฉะนั้น การเขียนโปรแกรมควรจะค่อนข้างตรงไปตรงมา ตามที่คุณอาจเดาได้จากการเดินสาย การใช้สัญญาณแอนะล็อกที่แท้จริงเป็นสิ่งสำคัญ ตอนแรกฉันพยายามทำให้มันทำงานกับสัญญาณ PWM ได้ แต่มันให้ผลลัพธ์ที่สับสนและโดยทั่วไปไม่ดี ด้วยเอาท์พุตแอนะล็อกที่แท้จริง มันใช้งานได้ดี!

เริ่มต้นด้วยรูปทรงและลวดลายทางเรขาคณิตที่ยากต่อการสร้างด้วยตัวควบคุม ตัวอย่างเช่น สิ่งแรกที่ฉันตั้งโปรแกรมให้ทำคือขับรถเป็นวงกลมที่สมบูรณ์แบบซึ่งมีเส้นผ่านศูนย์กลางต่างกัน

นี่เป็นการดัดแปลงน้ำหนักเบาที่สุดเท่าที่ฉันเคยเห็นมาเพื่อควบคุมรถ rc แบบอัตโนมัติ และคุณจะได้เรียนรู้มากมายเกี่ยวกับวิธีการทำงานของพวกมันในระหว่างกระบวนการ!

ขั้นตอนที่ 7: ขั้นตอนถัดไป

ข้อเสียเปรียบหลักของการแก้ปัญหานี้คือ ฉันไม่มีการสื่อสารแบบสองทาง ซึ่งหมายความว่าฉันสามารถส่งคำแนะนำเกี่ยวกับรถยนต์ได้ แต่ไม่สามารถรับข้อมูลเซ็นเซอร์ได้

สิ่งต่อไปที่ฉันวางแผนจะทำคือจัดการกับปัญหานี้ ไม่ว่าจะโดยการแฮ็กข้อมูลด้านรถเพื่อส่งข้อมูลกลับ หรือโดยการตั้งค่าลิงก์แยกต่างหากเพื่อถ่ายทอดข้อมูลเซ็นเซอร์ ถ้าฉันตั้งค่าลิงก์แยกต่างหาก ไม่จำเป็นต้องเชื่อถือได้เท่ากับลิงก์ของไดรฟ์หลัก เนื่องจากการควบคุมมอเตอร์มีความสำคัญมากกว่า