สารบัญ:

DIY 3D Controller: 8 ขั้นตอน (พร้อมรูปภาพ)
DIY 3D Controller: 8 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: DIY 3D Controller: 8 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: DIY 3D Controller: 8 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: DIY 3D printer ประกอบเครื่องพิม 3 มิติด้วยตัวเอง part 3 2024, พฤศจิกายน
Anonim
DIY 3D Controller
DIY 3D Controller

สร้างอินเทอร์เฟซ 3 มิติโดยใช้ตัวต้านทาน 6 ตัว อะลูมิเนียมฟอยล์ และ Arduino รับสิ่งนั้น Wii. Update: คำอธิบายโดยละเอียดเพิ่มเติมของโครงการนี้มีให้ในนิตยสาร Make การปฏิบัติตามคำแนะนำของพวกเขาอาจง่ายกว่า และฉันคิดว่าโค้ดของพวกเขาเป็นปัจจุบันมากกว่า เป้าหมายพื้นฐานที่นี่คือการสร้างระบบตรวจจับตำแหน่งมือแบบ 3 มิติที่คนส่วนใหญ่สามารถสร้างได้ ในขณะที่ยังคงรักษาลักษณะการทำงานบางอย่างไว้ หากต้องการทราบแนวคิดเกี่ยวกับแอปพลิเคชันที่เป็นไปได้ โปรดดูวิดีโอสาธิต หากคุณคิดว่าคุณสามารถสร้างสิ่งที่ง่ายกว่าและแม่นยำกว่า หรือซับซ้อนกว่าและแม่นยำกว่าเล็กน้อย ให้แบ่งปันความคิดเห็น!อินเทอร์เฟซ 3 มิติ DIY: Tic Tac Toe จาก Kyle McDonald บน Vimeo

ขั้นตอนที่ 1: วัสดุ

วัสดุ
วัสดุ
วัสดุ
วัสดุ

เครื่องมือ

  • Arduino
  • กำลังประมวลผล
  • เครื่องตัดลวด
  • หัวแร้ง
  • เครื่องตัดกล่อง

วัสดุ

  • (3) ตัวต้านทาน 270k
  • (3) ตัวต้านทาน 10k
  • ประสาน
  • ลวด
  • อลูมิเนียมฟอยล์
  • กระดาษแข็ง

ไม่จำเป็น:

  • เทป (เช่น สก๊อต)
  • ลวดชีลด์ (เช่น: สายโคแอกเชียล, ~3')
  • (3) คลิปจระเข้
  • ส่วนหัว 3 ขา
  • ซิปรูด
  • ท่อหดหรือกาวร้อน

ขั้นตอนที่ 2: ทำเพลท

ทำจาน
ทำจาน
ทำจาน
ทำจาน

เซ็นเซอร์นี้จะทำงานโดยใช้วงจร RC แบบง่าย โดยแต่ละระยะการตรวจจับวงจรจะอยู่ในมิติเดียว ฉันพบว่าวิธีที่ง่ายที่สุดในการจัดเพลต capacitive สามแผ่นเพื่อจุดประสงค์นี้อยู่ที่มุมของลูกบาศก์ ฉันตัดมุมของกล่องกระดาษแข็งเป็นลูกบาศก์ขนาด 8.5 นิ้ว แล้วตัดอลูมิเนียมฟอยล์บางส่วนให้เป็นสี่เหลี่ยมเล็กๆ ที่มีขนาดเล็กกว่าเล็กน้อย เทปที่มุมช่วยให้เข้าที่ อย่าพันเทปไว้ทั้งเส้น เราจำเป็นต้องใช้ ภายหลังสำหรับติดคลิปจระเข้

ขั้นตอนที่ 3: สร้างตัวเชื่อมต่อ

ทำตัวเชื่อมต่อ
ทำตัวเชื่อมต่อ
ทำตัวเชื่อมต่อ
ทำตัวเชื่อมต่อ
ทำตัวเชื่อมต่อ
ทำตัวเชื่อมต่อ

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

  • ตัดสายเคเบิลหุ้มฉนวนสามความยาวเท่ากัน ฉันเลือกประมาณ 12" ยิ่งสั้นยิ่งดี สายโคแอกเชียลใช้งานได้ แต่ยิ่งเบา/ยืดหยุ่นได้ยิ่งดี
  • ตัดครึ่งนิ้วสุดท้ายหรือประมาณนั้นเพื่อเปิดเผยเกราะและนิ้วสุดท้ายเพื่อเปิดเผยลวด
  • บิดคลิปจระเข้เข้ากับสายไฟเข้ากับสายไฟแล้วประสานเข้าด้วยกัน
  • ใส่ท่อหดด้วยความร้อนหรือกาวร้อนเพื่อเก็บสิ่งของเข้าด้วยกัน

ขั้นตอนที่ 4: สร้างวงจร

สร้างวงจร
สร้างวงจร
สร้างวงจร
สร้างวงจร
สร้างวงจร
สร้างวงจร
สร้างวงจร
สร้างวงจร

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

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

ตัวต้านทาน 270k ให้แรงดันไฟฟ้าเพื่อชาร์จตัวเก็บประจุ ยิ่งค่าน้อยเท่าไหร่ ก็ยิ่งชาร์จได้เร็วเท่านั้น ตัวต้านทาน 10k ส่งผลต่อเวลาเช่นกัน แต่ฉันไม่เข้าใจบทบาทของมันอย่างสมบูรณ์ เราจะสร้างวงจรนี้ที่ฐานของเส้นลวดแต่ละเส้น

  • บัดกรีตัวต้านทาน 10k ไปที่ปลายลวดตรงข้ามกับคลิปจระเข้
  • ประสานตัวต้านทาน 270k ระหว่างตัวป้องกันและลวด (แผ่น) เราจะป้องกันลวดด้วย 5 V เดียวกันกับที่เราใช้เพื่อชาร์จตัวเก็บประจุ

ขั้นตอนที่ 5: เสร็จสิ้นและแนบตัวเชื่อมต่อ

เสร็จสิ้นและแนบตัวเชื่อมต่อ
เสร็จสิ้นและแนบตัวเชื่อมต่อ
เสร็จสิ้นและแนบตัวเชื่อมต่อ
เสร็จสิ้นและแนบตัวเชื่อมต่อ
เสร็จสิ้นและแนบตัวเชื่อมต่อ
เสร็จสิ้นและแนบตัวเชื่อมต่อ

เมื่อตัวเชื่อมต่อ 3 ตัวเสร็จสิ้น คุณอาจต้องการเพิ่มท่อหดแบบใช้ความร้อนหรือกาวร้อนเพื่อหุ้มฉนวนจากกันและกัน เนื่องจากคุณจะต้องบัดกรีส่วนป้องกัน/5 V จุดเข้าด้วยกัน

สำหรับฉัน การเชื่อมตัวเชื่อมต่อนอกสุดทั้งสองเข้าด้วยกันนั้นง่ายที่สุด แล้วเพิ่มตัวเชื่อมต่อที่สามเข้าไป เมื่อคุณบัดกรีตัวเชื่อมต่อทั้งสามแล้ว ให้เพิ่มสายที่สี่เพื่อจ่ายแผงป้องกัน/5 V.

ขั้นตอนที่ 6: เชื่อมต่อและอัปโหลดรหัส

เชื่อมต่อและอัปโหลดรหัส
เชื่อมต่อและอัปโหลดรหัส
เชื่อมต่อและอัปโหลดรหัส
เชื่อมต่อและอัปโหลดรหัส
  • เสียบขั้วต่อเข้ากับ Arduino (พิน 8, 9 และ 10)
  • ติดคลิปจระเข้ลงบนจาน (8:x:left, 9:y:bottom, 10:z:right)
  • ให้พลังงานโดยเสียบสายที่สี่ (สายสีแดงของฉัน) เข้ากับ 5 V. ของ Arduino
  • เสียบ Arduino เริ่มสภาพแวดล้อม Arduino
  • อัปโหลดรหัสไปที่บอร์ด (หมายเหตุ: หากคุณอยู่นอกอเมริกาเหนือ คุณอาจต้องเปลี่ยน #define mains เป็น 50 แทนที่จะเป็น 60)

แนบรหัส Arduino เป็น Interface3D.ino และแนบรหัสประมวลผลเป็น TicTacToe3D.zip

ขั้นตอนที่ 7: ทำสิ่งที่เจ๋ง

หากคุณดูที่หน้าต่างอนุกรมในสภาพแวดล้อม Arduino คุณจะสังเกตเห็นว่ามีการคายพิกัด 3 มิติดิบที่ 115200 บอด ที่ประมาณ 10 Hz = 60Hz / (2 รอบเต็ม * 3 เซ็นเซอร์) โค้ดนี้จะทำการวัดให้มากที่สุดเท่าที่จะเป็นไปได้บนเซ็นเซอร์แต่ละตัวในช่วงสองรอบของความถี่ของกำลังไฟฟ้าหลัก (ซึ่งมีความเสถียรอย่างน่าประหลาดใจ) เพื่อยกเลิกการคัปปลิ้ง สิ่งแรกที่ฉันทำกับสิ่งนี้คือสร้าง 3D Tic อย่างง่าย อินเทอร์เฟซ Tac Toe หากคุณต้องการเริ่มต้นด้วยการสาธิตการทำงาน โค้ดมีให้ที่นี่ เพียงวางโฟลเดอร์ "TicTacToe3D" ในโฟลเดอร์การประมวลผลภาพสเก็ตช์ของคุณ สิ่งที่เป็นประโยชน์สามประการที่โค้ด Tic Tac Toe แสดงให้เห็น:

  • ทำให้ข้อมูลดิบเป็นเส้นตรง เวลาในการชาร์จเป็นไปตามกฎกำลังที่สัมพันธ์กับระยะทางจริง ๆ ดังนั้นคุณต้องหารากที่สองของหนึ่งตลอดเวลา (เช่น ระยะทาง ~= sqrt(1/ครั้ง))
  • ทำให้ข้อมูลเป็นปกติ เมื่อคุณเริ่มร่างภาพ ให้กดปุ่มซ้ายของเมาส์ค้างไว้ขณะเคลื่อนมือไปรอบๆ เพื่อกำหนดขอบเขตของพื้นที่ที่คุณต้องการใช้งาน
  • การเพิ่ม "โมเมนตัม" ให้กับข้อมูลเพื่อลดความกระวนกระวายใจ

ในทางปฏิบัติ โดยใช้การตั้งค่านี้กับอลูมิเนียมฟอยล์ ฉันจะได้รับขนาดฟอยล์ที่ใหญ่ที่สุด (ชิ้นที่ใหญ่ที่สุดที่ฉันเคยทดสอบคือ 1.5 ตารางฟุต)

ขั้นตอนที่ 8: รูปแบบและหมายเหตุ

รูปแบบต่างๆ

  • สร้างเซ็นเซอร์ขนาดใหญ่
  • ปรับตัวต้านทานและโค้ดให้เหมาะสมสำหรับสิ่งที่สั่นอย่างรวดเร็ว และใช้เป็นปิ๊กอัพ/ไมโครโฟน
  • อาจมีเทคนิคอื่นๆ ในการแยกระบบออกจาก AC hum (ตัวเก็บประจุขนาดใหญ่ระหว่างเพลตกับพื้น?)
  • ฉันได้ทดลองกับการป้องกันเพลตที่ด้านล่าง แต่ดูเหมือนว่าจะสร้างปัญหาเท่านั้น
  • สร้างตัวเลือกสี RGB หรือ HSB
  • ควบคุมพารามิเตอร์วิดีโอหรือเพลง ลำดับจังหวะหรือทำนอง
  • พื้นผิวขนาดใหญ่โค้งงอเล็กน้อยพร้อมแผ่นหลายแผ่น + โปรเจ็กเตอร์ = อินเทอร์เฟซ "รายงานส่วนน้อย"

หมายเหตุ

สนามเด็กเล่น Arduino มีบทความสองบทความเกี่ยวกับการตรวจจับการสัมผัสแบบ capacitive (CapSense และ CapacitiveSensor) ในท้ายที่สุด ฉันไปกับการผกผันของการออกแบบที่ฉันพบในสำเนา "Physical Computing" (Sullivan/Igoe) ของเพื่อนที่อธิบายวิธีใช้ RCtime (วงจรมีตัวเก็บประจุและตัวต้านทานหนึ่งตัวคงที่ และวัดค่าของ a โพเทนชิโอมิเตอร์) จับเวลาไมโครวินาทีได้สำเร็จโดยใช้โค้ดที่ปรับให้เหมาะสมเล็กน้อยจากฟอรัม Arduino อีกครั้ง: จากการเริ่มต้นที่ตันของแผนผัง theremin ฉันไม่เข้าใจอย่างสมบูรณ์ฉันตระหนักดีว่ามีวิธีที่ดีกว่าในการตรวจจับระยะทางแบบ capacitive แต่ฉันต้องการทำสิ่งที่เรียบง่ายที่สุดเท่าที่จะเป็นไปได้ซึ่งยังคงใช้งานได้ หากคุณมีการออกแบบที่เรียบง่ายและใช้งานได้จริง ให้โพสต์ไว้ในความคิดเห็น! ขอบคุณ Dane Kouttron ที่อดทนต่อคำถามเกี่ยวกับอุปกรณ์อิเล็กทรอนิกส์พื้นฐานทั้งหมดของฉัน และช่วยให้ฉันเข้าใจว่าวงจรเฮเทอโรไดน์เรมินแบบง่ายๆ ทำงานอย่างไร (เดิมที ฉันจะใช้สิ่งเหล่านี้ -- และ ถ้าปรับให้ถูกก็น่าจะแม่นยำกว่า)

รางวัลที่หนึ่งในการประกวดหนังสือผู้สอน

แนะนำ: