สารบัญ:
- ขั้นตอนที่ 1: เชื่อมต่อ MPU6050 และปุ่มกดกับ Arduino Leonardo Board
- ขั้นตอนที่ 2: สร้างฐานจอยสติ๊ก
- ขั้นตอนที่ 3: ตั้งค่า Arduino IDE
- ขั้นตอนที่ 4: โปรแกรม Arduino
- ขั้นตอนที่ 5: ทดสอบจอยสติ๊ก
วีดีโอ: DIY MPU-6050 USB จอยสติ๊ก: 5 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:03
ด้วย Microsoft Flight Simulator 2020 ฉันรู้ได้อย่างรวดเร็วว่าการใช้แป้นพิมพ์เพื่อวางแผนการบินนั้นยากเพียงใด ค้นหาออนไลน์ไม่พบจอยสติ๊กราคาสมเหตุสมผลที่จะซื้อ ร้านค้าปลีกออนไลน์ส่วนใหญ่มีสินค้าหมดสต็อก ความนิยมของ MS Flight Simulator และการระบาดของ COVID 19 ได้ลบล้างสต็อกจอยสติ๊กที่มีอยู่ทั้งหมด ทางเลือกเดียวของฉันคือสร้างมันขึ้นมาเอง
จอยสติ๊กส่วนใหญ่ที่นั่นใช้โพเทนชิโอมิเตอร์ที่ฐานเพื่อกำหนดมุมของจอยสติ๊กและส่งข้อมูลแกน x และ y กลับไปที่คอมพิวเตอร์ ใช้งานได้ดีแต่ทำให้การสร้างจอยสติ๊กซับซ้อนขึ้น และเมื่อเวลาผ่านไป โพเทนชิโอมิเตอร์อาจเสื่อมสภาพ แทนที่จะใช้โพเทนชิโอมิเตอร์ ฉันตัดสินใจใช้บอร์ดเซ็นเซอร์มาตรความเร่ง/ไจโรสโคปเพื่อส่งข้อมูลไปยังคอมพิวเตอร์ที่มุมของแท่ง
ด้วยความนิยมของไมโครโปรเซสเซอร์ Arduino และเซ็นเซอร์ต่างๆ ต้นทุนในการสร้างโครงการ Arduino จึงมีราคาไม่แพงมาก แผงเซ็นเซอร์ความเร่ง/ไจโรสโคปที่ใช้กันทั่วไปคือ MPU-6050 ในแคนาดา Amazon มีค่าใช้จ่ายประมาณ $7CAN ฉันได้ของฉันจาก eBay ที่ส่งจากจีนในราคาที่ถูกกว่ามาก แต่เวลาในการจัดส่งประมาณ 3 เดือนหรือนานกว่านั้น
www.amazon.ca/Neuftech-MPU-6050-3-Gyroscop…
บอร์ด Arduino ใดๆ ก็ใช้งานได้ แต่การใช้บอร์ดที่ใช้ ATmega32u4 จะง่ายกว่ามาก เนื่องจาก ATmega32u4 รองรับ HID (Human Interface Device) แบบเนทีฟ เมื่อตั้งโปรแกรมบอร์ดแล้ว คุณสามารถใช้บอร์ดนี้กับพีซี Windows 10 เครื่องใดก็ได้ โดยไม่ต้องใช้ซอฟต์แวร์เพิ่มเติม Windows 10 จะรับรู้โดยอัตโนมัติว่าเป็นจอยสติ๊กเมื่อเสียบ USB (การใช้บอร์ด Arduino ประเภทอื่นซับซ้อนเกินไปสำหรับโครงการสร้างง่ายๆ นี้)
ฉันเลือกบอร์ด Arduino Leonardo $17CAN จากอเมซอน
www.amazon.ca/KEYESTUDIO-Leonardo-Developm…
อุปกรณ์ 2 ชิ้นนี้เป็นข้อกำหนดหลักสำหรับโครงการนี้ สิ่งของชิ้นเล็กๆ อื่นๆ เช่น สายไฟและปุ่มกดก็จำเป็นเช่นกัน ในโครงการนี้ ฉันใช้เพียง 2 ปุ่มกดเพื่อความง่าย
ด้ามจอยสติ๊กทำจากเศษท่อน้ำพีวีซี สามารถใช้แทนท่อแข็งแบบสั้นได้อย่างง่ายดาย
ฐานของจอยสติ๊กคือตัวหยุดประตูแบบสปริงจับจ้องอยู่ที่ชิ้นไม้
ตัวหยุดประตูสปริงสามารถหาซื้อได้จาก Home Depot ในราคา $2.83CAN
www.homedepot.ca/product/everbilt-spring-d…
ขั้นตอนที่ 1: เชื่อมต่อ MPU6050 และปุ่มกดกับ Arduino Leonardo Board
MPU 6050 ใช้การเชื่อมต่อเพียง 4 รายการเท่านั้น โดยมีป้ายกำกับว่า VCC, GND, SCL และ SDA
เชื่อมต่อ VCC กับ 5v หรือ 3.3v บน Arduino Leonardo (MPU 6050 จะใช้ 5v หรือ 3.3v ก็ได้ ไม่เป็นไร)
เชื่อมต่อ GND กับ GND ใด ๆ บน Arduino Leonardo
เชื่อมต่อ SCL กับ SCL บน Arduino Leonardo
เชื่อมต่อ SDA กับ SDA บน Arduino Leonardo
ฉันใช้ปุ่มกดเพียง 2 ปุ่มเพื่อการสาธิตนี้
ปุ่มกดแรกใช้เพื่อรีเซ็ตศูนย์จอยสติ๊ก ในตัวอย่างนี้ ปลายด้านหนึ่งของปุ่มกดเชื่อมต่อกับ GND และปลายด้านหนึ่งเป็น PIN 13
ปุ่มกดที่สองใช้เป็นปุ่มจอยสติ๊ก ในตัวอย่างนี้ เชื่อมต่อกับ PIN 9 และ GND
คุณสามารถเพิ่มปุ่มเพิ่มเติมได้ตามต้องการในโครงการของคุณ
ขั้นตอนที่ 2: สร้างฐานจอยสติ๊ก
หาบล็อกไม้สักชิ้น ยิ่งหนักยิ่งดี มันจะทำให้ฐานจอยสติ๊กมีเสถียรภาพมากขึ้น
ขันสกรูตัวกั้นประตูสปริงตรงกลางบล็อกไม้ตามที่แสดงในภาพ
ใช้ท่อสั้นเป็นที่จับจอยสติ๊ก ฉันใช้ท่อพีวีซีขูด เหยียบสายไฟโดยให้เซ็นเซอร์มาตรความเร่ง/ไจโรสโคปนั่งอยู่ที่ด้านบนของท่อ
จากนั้นวางท่อไว้เหนือตัวกั้นประตูสปริง ฉันใช้เทปพันสายไฟติดเซ็นเซอร์ไว้ด้านบน
ขั้นตอนที่ 3: ตั้งค่า Arduino IDE
ดาวน์โหลดและติดตั้ง Arduino IDEhttps://www.arduino.cc/en/Main/Software
ฉันใช้ Arduino 1.8.13 สำหรับโครงการนี้ Arduino Web Editor สามารถใช้สำหรับโครงการนี้ได้เช่นกัน
ใช้ห้องสมุด 2 แห่ง
1. MPU6050_tockn โดย tockn
github.com/Tockn/MPU6050_tockn
หรือคุณสามารถค้นหาได้ในเมนู "จัดการห้องสมุด"
2. ห้องสมุดจอยสติ๊ก โดย Matthew Heironimus
github.com/MHeironimus/ArduinoJoystickLibr…
ปัจจุบันนี้ใช้ได้เฉพาะจากเว็บไซต์ GitHub
คลิกที่ดาวน์โหลดรหัสและดาวน์โหลดรหัสไปรษณีย์ แตกไฟล์ ZIP ไปยังไดเร็กทอรีไลบรารี Arduino ของคุณ
ในกรณีของฉัน มันคือ E:\PinChung\Documents\Arduino\libraries
ขั้นตอนที่ 4: โปรแกรม Arduino
โหลด Pin_Joystick.ino ลงใน Arduino IDE แล้วคอมไพล์และอัปโหลดไปยังบอร์ด Leonardo
ตรวจสอบให้แน่ใจว่าได้เลือกบอร์ด Arduino Leonardo และเลือกหมายเลขพอร์ตไว้ที่ COM ที่ถูกต้อง: ภายใต้เมนูเครื่องมือ
ฉันสังเกตเห็นว่าบางครั้งไม่สามารถอัปโหลดโปรแกรมได้โดยมีรหัสข้อผิดพลาดของพอร์ต COM ไม่พร้อมใช้งาน การกดปุ่มรีเซ็ตบนกระดาน Leonardo สองสามครั้งขณะรวบรวมอาจช่วยได้ การรีสตาร์ท Windows 10 อาจช่วยทำให้พอร์ต COM ว่างขึ้นได้
เมื่ออัปโหลดโปรแกรมไปยังบอร์ด Leonardo แล้ว Windows 10 ควรตรวจพบ Leonardo Joystick โดยอัตโนมัติ ในแถบค้นหาของ Windows 10 ให้พิมพ์ Game Controllers เรียกใช้ Set up USB Game Controllers
เลือก Leonardo Joystick แล้วคลิก Properties Windows 10 ควรเลือกการเคลื่อนไหวของจอยสติ๊กและปุ่มจอยสติ๊ก #1
หากจอยสติ๊กไม่อยู่ตรงกลาง เมื่อคุณปล่อยจอยสติ๊ก ให้คลิกที่ปุ่มรีเซ็ตจอยสติ๊กตรงกลางที่เราเพิ่งสร้างขึ้น ตัวควบคุมเกม USB ควรแสดงจุดจอยสติ๊กตรงกลาง ไม่จำเป็นต้องปรับเทียบจอยสติ๊กในโปรแกรม USB Game Controller..
หมายเหตุด้านข้าง: สำหรับผู้ที่ไม่คุ้นเคยกับ Arduino Leonardo เมื่อกำหนดค่าอุปกรณ์เป็นจอยสติ๊ก เมาส์ หรือคีย์บอร์ด พอร์ตอนุกรมจะไม่ทำงาน ดังนั้น "Serial.print()" จะไม่ทำงาน นอกจากนี้ MPU6050 ยังใช้ไลบรารีสาย i2c และใช้หมุด SDA และ SLC สำหรับ Leonardo SDA และ SCL ใช้ทั้ง PIN 2 และ PIN 3 ดังนั้นอย่าใช้ 2 พินนี้เพื่อสิ่งอื่น
ขั้นตอนที่ 5: ทดสอบจอยสติ๊ก
ฉันทดสอบบน Microsoft Flight Simulator 2020 และใช้งานได้ดีมาก ฉันต้องกดปุ่มกลางบางครั้งเพื่อให้จอยสติ๊กเป็นศูนย์ ค่าเซ็นเซอร์ MPU6050 อาจคลาดเคลื่อนเล็กน้อยเมื่อเวลาผ่านไป
มีโอกาสมากมายที่จะใช้จ่ายในโครงการ เช่น การเพิ่มปุ่มและการเพิ่มการควบคุมคันเร่ง หวังว่านี่จะเป็นแรงบันดาลใจให้คนจรจัดคนอื่นๆ ค้นพบวิธีการใหม่ๆ ในการทำสิ่งต่างๆ
แนะนำ:
การควบคุมแขนหุ่นยนต์ด้วย TLV493D, จอยสติ๊ก และ Arduino: 3 ขั้นตอน
การควบคุมแขนหุ่นยนต์ด้วย TLV493D, จอยสติ๊ก และ Arduino: ตัวควบคุมทางเลือกสำหรับหุ่นยนต์ของคุณด้วยเซ็นเซอร์ TLV493D ซึ่งเป็นเซ็นเซอร์แม่เหล็กที่มีอิสระ 3 องศา (x,y,z) คุณสามารถควบคุมโครงการใหม่ของคุณด้วยการสื่อสาร I2C ของคุณ ไมโครคอนโทรลเลอร์และบอร์ดอิเล็กทรอนิกส์ที่ Bast P
จอยสติ๊ก USB Hall Effect: 7 ขั้นตอน (พร้อมรูปภาพ)
จอยสติ๊ก USB ของ Hall Effect: คำแนะนำนี้แสดงวิธีใช้จอยสติ๊ก Hall Effect ระดับอุตสาหกรรมเพื่อสร้างจอยสติ๊ก USB ที่มีความแม่นยำสูง มีคำแนะนำอื่นที่เกี่ยวข้อง Tiny USB Joystick ที่สามารถให้โซลูชันต้นทุนต่ำได้>
จอยสติ๊ก USB จิ๋ว: 5 ขั้นตอน (พร้อมรูปภาพ)
จอยสติ๊ก USB จิ๋ว: ตัวติดตั้งนี้แสดงวิธีการสร้างจอยสติ๊ก USB ขนาดเล็กที่ง่ายมาก คำแนะนำนี้เกี่ยวข้องกับจอยสติ๊ก USB ของ Hall Effect เพื่อมอบโซลูชันราคาประหยัด
จอยสติ๊ก PC แบบไร้สาย/ปุ่มวงล้อ: 4 ขั้นตอน (พร้อมรูปภาพ)
จอยสติ๊ก PC แบบไร้สาย/ปุ่มวงล้อ: ฉันได้สร้างซิมแข่งรถขึ้นมาใหม่ในช่วงไม่กี่ปีที่ผ่านมา และตัดสินใจใช้พวงมาลัย DIY Direct Drive แม้ว่าโปรเจ็กต์นั้นเพียงอย่างเดียวสามารถสอนได้หลายอย่างในตัวเอง แต่นี่เป็นคำแนะนำเกี่ยวกับการสร้างปุ่มทั้งหมดบนเ
หุ่นยนต์ Arduino พร้อมคอนโทรลเลอร์ PS2 (จอยสติ๊ก PlayStation 2): 10 ขั้นตอน (พร้อมรูปภาพ)
หุ่นยนต์ Arduino พร้อมตัวควบคุม PS2 (จอยสติ๊กของ PlayStation 2): ในบทช่วยสอนนี้ ฉันจะแสดงวิธีใช้จอยสติ๊ก Playstation 2 (PS2) แบบไร้สายเพื่อขับถังหุ่นยนต์ บอร์ด Arduino Uno ถูกใช้เป็นแกนหลักของโครงการนี้ รับคำสั่งจากคอนโทรลเลอร์ไร้สายและตั้งค่าความเร็วของมอเตอร์