สารบัญ:

Wireless Wii Nunchuck ควบคุม Arduino: 7 ขั้นตอน
Wireless Wii Nunchuck ควบคุม Arduino: 7 ขั้นตอน

วีดีโอ: Wireless Wii Nunchuck ควบคุม Arduino: 7 ขั้นตอน

วีดีโอ: Wireless Wii Nunchuck ควบคุม Arduino: 7 ขั้นตอน
วีดีโอ: Arduino Wii Nunchuck Tutorial 2024, พฤศจิกายน
Anonim
ไร้สาย Wii Nunchuck ควบคุม Arduino
ไร้สาย Wii Nunchuck ควบคุม Arduino

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

มีคำอธิบายบนเน็ตเกี่ยวกับวิธีใช้ Arduino เพื่อ "อ่าน" ข้อมูลจาก Nunchuck แบบมีสายมาตรฐาน นี่คืออุปกรณ์พกพาที่มีไว้เพื่อเชื่อมต่อผ่านสายเคเบิลสั้น ๆ กับซ็อกเก็ตที่ฐานของคอนโทรลเลอร์ Wii (สิ่งที่เป็นรูปสี่เหลี่ยมผืนผ้า) ซึ่งจะส่งข้อมูลผ่าน Bluetooth ไปยัง Wii (หรือพีซีจริงๆ)

มีการสร้างอะแดปเตอร์พิเศษโดยใช้หน้าสัมผัสหกตัวเพื่อให้ผู้ทดลองสามารถเชื่อมต่อปลั๊กที่ปลาย Nunchuck กับหมุดของบอร์ด Arduino

นี่คือตัวอย่างหนึ่งของสิ่งเหล่านี้:

todbot.com/blog/2008/02/18/wiichuck-wii-nunchuck-adapter-available/ ฉันจะอธิบายการเชื่อมต่อที่แข็งแกร่งกว่านี้ ซอฟต์แวร์ที่จำเป็นในการ "อ่าน" หัวจับมาตรฐาน (เช่น เมื่อใช้สายเคเบิล) จะไม่ทำงานกับหัวจับไร้สาย ซอฟต์แวร์สำหรับหัวจับแบบมีสายสามารถพบได้ในหลายๆ ที่บนเน็ต หัวจับไร้สายไม่ได้ผลิตโดย Nintendo และมีผู้ผลิตหลายราย - ทั้งหมดมาจากประเทศจีน หัวจับไร้สายมีมาตรความเร่งแบบ 3 แกน ปุ่ม 2 ปุ่ม และจอยสติ๊กแบบใช้นิ้วโป้งตามสัดส่วนที่เหมาะสม ราคาต่ำมาก ดังนั้นนี่จึงเป็นวิธีที่ดีในการสร้างระบบควบคุมไร้สายระยะสั้นสำหรับอุปกรณ์ที่ใช้ Arduino ทุกประเภท นี่คือเหตุผลที่ฉันโพสต์คำแนะนำนี้ ต่อไปนี้คือหัวจับไร้สายสองประเภทที่ฉันรู้ว่าจะใช้ได้กับแฮ็คนี้ ฉันยังไม่ได้ลองตัวอื่นเลย

ขั้นตอนที่ 1: ความหมายของสายไฟ

สายไฟหมายถึงอะไร
สายไฟหมายถึงอะไร

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

ขั้นตอนที่ 2: วิธีเชื่อมต่อสายเหล่านี้กับบอร์ด

วิธีเชื่อมต่อสายเหล่านี้กับบอร์ด
วิธีเชื่อมต่อสายเหล่านี้กับบอร์ด

เมื่อซ็อกเก็ตนี้ถูกบัดกรีกับ Arduino คุณเพียงแค่เสียบเครื่องรับวิทยุของ Nunchuck ไร้สายเข้ากับมันและออกไป ต้องการเพียง 4 จาก 6 หน้าสัมผัสในปลั๊ก/ซ็อกเก็ต เหล่านี้คือ: +V Power (Chuck ออกแบบมาสำหรับ 3.3V แต่ดูเหมือนว่าจะทำงานได้ดีกับแหล่งจ่ายไฟ 5V จากบอร์ด Arduino) GND (Ground) SDA (เชื่อมต่อกับ Analog pin 4 บน Arduino) SCK (เชื่อมต่อกับ Analog Pin 5 บน Arduino) ตรวจสอบและตรวจสอบสายไฟของคุณอีกครั้งและติดป้ายกำกับ นี่คือมุมมองเมื่อมองเข้าไปในซ็อกเก็ตตัวเมีย (ที่ปลายสายต่อของคุณที่คุณเพิ่งผ่าครึ่ง) คุณจะเสียบปลั๊กตัวผู้ที่ยื่นออกมาจากเครื่องรับวิทยุแบบกระบองไร้สายเข้าไปใน: หมายเหตุ: ฉันได้อัปเดตรูปนี้แล้ว 25 /6/10 เนื่องจากแผนภาพก่อนหน้านี้ผิด! ง่ายมากที่จะทำผิดพลาดที่นี่

ขั้นตอนที่ 3: สายเคเบิลต่อพ่วง Wii Chuck

สายต่อ Wii Chuck
สายต่อ Wii Chuck

นี่คือรูปถ่ายของสายต่อ Wii Nunchuck ที่ฉันตัดเพื่อทำซ็อกเก็ตที่ปลายตะกั่ว:

ขั้นตอนที่ 4: ลวดสี

สีลวด
สีลวด

หากคุณซื้อลีดต่อขยายยี่ห้อเดียวกันกับที่ฉันแสดงไว้ในรูปที่แล้ว และคุณตัดมันแล้วเปิดปลายสาย นี่คือสีของสายไฟและแถบบนอาร์ดิโนที่คุณเชื่อมต่อ หากคุณตัดซ็อกเก็ตจากตะกั่วต่อยี่ห้ออื่น สีอาจแตกต่างกัน ในกรณีนั้น ให้ตรวจสอบและตรวจสอบสายไฟอีกครั้งกับแผนภาพ 2 หน้าก่อนหน้านี้โดยใช้ชุดมิเตอร์เพื่อวัดความต้านทาน (ตะกั่วตัวหนึ่งแตะป้ายทองแดงภายในซ็อกเก็ต และอีกขั้วหนึ่งตรวจสอบลวดเปลือยทั้งหมดจนสุดความต้านทานเป็นศูนย์โอห์ม….จากนั้น คุณรู้ว่าแท็กใดในซ็อกเก็ตคือปลายสาย)

ขั้นตอนที่ 5: เชื่อมต่อสายไฟเข้ากับบอร์ด

ต่อสายไฟเข้ากับบอร์ด
ต่อสายไฟเข้ากับบอร์ด

ซอฟต์แวร์บางเวอร์ชันจะแปลงพินอะนาล็อก 2 และ 3 เป็น +5V และ GND เพื่อให้คุณสามารถจัดเรียง 4 พิน SCK, SDA, 5V และ GND ได้เป็นแถว ฉันเลือกที่จะบัดกรี +V และ GND กับหมุด +5V และ GND บน Arduino อย่างถาวร จากนั้น SCK ไปที่ขาอะนาล็อก 5 และ SDA ไปที่ขาอะนาล็อก 4 นอกจากนี้ และสิ่งนี้เพิ่งถูกค้นพบโดยการลองผิดลองถูกเพื่อให้สิ่งนี้ทำงานโดยใช้ "สายต่อขยาย Nunchuck แบบตัด" เป็นวิธีการเชื่อมต่อแบบไร้สาย ตัวรับหัวจับ - คุณต้องบัดกรีตัวต้านทานแบบดึงขึ้นภายนอกสองตัว - ประมาณ 1800 โอห์มแต่ละตัวดูเหมือนถูกต้อง อันหนึ่งอยู่ระหว่าง SCK (อนาล็อกพิน 5) และ +5V และอีกอันอยู่ระหว่าง SDA (อนาล็อกพิน 4) และ +5V

เห็นได้ชัดว่าไม่จำเป็นต้องใช้หากคุณเก็บเครื่องรับไว้ข้างๆ Arduino (เช่นโดยใช้อะแดปเตอร์ Arduino ของประเภท TodBot)

ขั้นตอนที่ 6: การเดินสายไปยัง Arduino 2

การเดินสายไฟไปยัง Arduino 2
การเดินสายไฟไปยัง Arduino 2

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

ขั้นตอนที่ 7: ซอฟต์แวร์

ซอฟต์แวร์ของฉันได้รับการแก้ไขจากซอฟต์แวร์เครื่องอ่านหัวจับไร้สายสำหรับใช้งานทั่วไปที่พัฒนาโดยผู้อื่น มันยึดตามรหัสโดย Chad Phillips, Mike Dreher, Björn Giesler และงานจัดระเบียบอื่น ๆ เมื่อเร็ว ๆ นี้โดย Mike Dreher (ดูลิงก์ฟอรัมด้านล่าง) เมษายน 2011: ฉันได้เพิ่มเวอร์ชันของฉันเป็นไฟล์ข้อความในหน้าแนะนำนี้แล้ว หัวข้อนี้อยู่ในฟอรัม Arduino และปัญหาเพิ่งได้รับการแก้ไข มีซอฟต์แวร์สองเวอร์ชัน ซึ่งทั้งสองแบบที่ฉันจัดการเพื่อให้ทำงานได้: หน้าฟอรัม Arduino นี้มีโค้ดทั้งสองเวอร์ชัน:https://www.arduino.cc/cgi-bin/yabb2/Y… ฉันยืนยันได้ ใช้งานได้กับบอร์ด Arduino รุ่นล่าสุดที่มีโปรเซสเซอร์ ATmega328 โดยใช้ Arduino17 เพื่อคอมไพล์และโหลด ดูหุ่นยนต์ R2D2 ที่ควบคุมหัวจับไร้สาย (!):https://www.youtube.com/embed/PvAdX5… เพิ่มเติมเกี่ยวกับสเก็ตบอร์ดทรงตัวของฉันที่นี่:https://sites.google.com/site/onewheel… https://www.instructables.com/id/Self_balancing_one_wheeled_electric_skateboard/ นี่คือวิดีโอที่แสดงหัวจับไร้สายที่ควบคุมพวงมาลัยของสเก็ตบอร์ดทรงตัว 2 ล้อของฉัน เห็นได้ชัดว่าแฮ็คนี้สามารถใช้เพื่อควบคุมหุ่นยนต์ รถยนต์ อุปกรณ์ที่ทำงานด้วยเซอร์โว แขนหุ่นยนต์ เมาส์ในอากาศ ฯลฯ ได้ทุกประเภท และมีราคาถูกมาก คุณสามารถใช้จอยสติ๊กหรือเพียงแค่เอียงหัวจับไปในทิศทางที่คุณต้องการให้อุปกรณ์เคลื่อนที่

มีความสุข…………….

แนะนำ: