ป้อมปืนติดตามการเคลื่อนไหว Raspberry Pi

บทความนี้ให้รายละเอียดเกี่ยวกับวิธีการสร้างป้อมปืนติดตามการเคลื่อนไหวโดยใช้ Raspberry Pi

ป้อมปืนติดตามการเคลื่อนไหว Raspberry Pi

ป้อมปืนอัดลมหรือปืนเนิร์ฟที่ติดตามการเคลื่อนไหวพร้อมโหมดการทำงานอัตโนมัติและด้วยตนเอง ควบคุมด้วย Raspberry Pi

สิ่งที่ใช้ในโครงการนี้

ส่วนประกอบฮาร์ดแวร์

  • ปืนอัดลมไฟฟ้าของ Nerf Gun× 1
  • Raspberry Pi 3 รุ่น B x 1
  • เว็บแคม Logitech C210 × 1
  • บอร์ดป้องกันมอเตอร์ควบคุมการเคลื่อนที่ Adafruit TB6612 × 1
  • สเต็ปเปอร์มอเตอร์ NEMA 17, 200 สเต็ป/รอบ × 2
  • รีเลย์เดี่ยว × 1
  • ตัวแปลงสเต็ปอัพ × 1
  • ที่ชาร์จโทรศัพท์มือถือแบบพกพา × 1
  • สายจัมเปอร์ตัวเมีย/ตัวเมีย × 1
  • สาย USB-A ถึง Micro-USB × 1
  • ขายึดโลหะ 90 องศา × 2
  • #8 สกรูหัวจม 1/2 นิ้ว × 10
  • #8 แหวนรอง × 16
  • สกรู M3 × 8
  • แผ่น MDF ขนาด 2' x 2', 1/4" × 1
  • ตะกั่วบัดกรี × 1

เครื่องมือช่างและเครื่องจักรผลิต

  • หัวแร้ง (ทั่วไป)
  • สว่านมือ
  • เลื่อยมือหรือเลื่อยจิ๊กซอว์

การแนะนำ

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

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

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

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

การสร้างฐาน

ขั้นแรก ให้ใช้แผ่นใยไม้อัดความหนาแน่นปานกลาง (MDF) ขนาด 2' x 2' แล้วใช้ดินสอวาดวงกลมที่มีเส้นผ่านศูนย์กลาง 9 นิ้ว จำนวน 2 วง จากนั้นใช้เลื่อยมือหรือจิ๊กซอว์ไฟฟ้าตัดออก

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

สำหรับรูยึดมอเตอร์ ให้ใช้กระดาษแผ่นหนึ่งวางลงบนหน้ายึดมอเตอร์ โดยเจาะกระดาษด้วยเพลามอเตอร์ ใช้ปากกาเจาะรูบนกระดาษสำหรับรูยึดแบบเกลียวแต่ละรู จากนั้นกระดาษแผ่นนี้สามารถใช้เป็นแม่แบบสำหรับระบุตำแหน่งรูบนวงกลม MDF ได้ วางแม่แบบนี้ไว้ตรงกลางวงกลม MDF วงใดวงหนึ่ง แล้วเจาะรูยึดทั้งสี่รูโดยใช้ดอกสว่านขนาด 1/8 นิ้ว เจาะรูตรงกลางโดยใช้ดอกสว่านขนาด 5/8 นิ้ว

ใช้สกรูหัวจม M3 สี่ตัวและแหวนรองสี่ตัว ยึดมอเตอร์สเต็ปเปอร์ตัวหนึ่งเข้ากับแผ่น MDF แล้วขันให้แน่นด้วยประแจอัลเลน ใช้แผ่น MDF อีกแผ่นหนึ่ง วางหน้าแปลนแบบมีปกพิมพ์ 3 มิติไว้ตรงกลางแผ่น แล้วใช้ดินสอทำเครื่องหมายตำแหน่งเจาะสำหรับรูสกรูยึดทั้งสามรู ใช้สว่านมือหรือไขควงยึดหน้าแปลนเข้ากับแผ่นโดยใช้สกรูหัวจมเบอร์ 8 ยาวครึ่งนิ้วสามตัว จากนั้นจัดร่องของเพลามอเตอร์ให้ตรงกับร่องในหน้าแปลน แล้วกดลงไป

ต่อสายปืน

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

ตัวเลือกที่ 1:

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

ตัวเลือกที่ 2:

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

การสร้างขาป้อมปืน

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

วาดขาที่ต้องการลงบนกระดาษ แล้วใช้กรรไกรตัดออก จากนั้นใช้กระดาษนี้เป็นแม่แบบสำหรับวาดลงบนแผ่น MDF ของคุณ ใช้เลื่อยมือ หรือเลื่อยจิ๊กซอว์ไฟฟ้า ตัดขาออกจากแผ่น MDF

ที่ขาข้างหนึ่ง ให้เจาะรูขนาด 5/8 นิ้วสำหรับแกนของมอเตอร์ตัวที่สอง โดยเจาะรูขนาด 1/8 นิ้ว จำนวนสี่รูตรงกลางสำหรับยึดมอเตอร์ตัวที่สอง เหมือนกับที่ทำกับแผ่น MDF ทรงกลม ขาอีกข้างหนึ่งจะมีรูขนาดครึ่งนิ้วสำหรับรองรับแกนหน้าแปลนที่พิมพ์แบบ 3 มิติให้หมุนเข้าด้านใน

ยึดมอเตอร์ตัวที่สองเข้ากับขา โดยให้รูขนาด 1/8 นิ้วทั้งสี่รูอยู่ตรงกลางรูขนาด 5/8 นิ้ว โดยใช้สกรู M3 สี่ตัวและแหวนรอง จากนั้นใส่ปลอกหุ้มหน้าแปลนพิมพ์ 3 มิติตัวที่สองลงบนเพลามอเตอร์

ตอนนี้ใช้ตัวยึดมุม 90 องศาทั้งสองตัวแล้วขันเข้าที่ด้านล่างของขาแต่ละข้างตามที่แสดงในภาพโดยใช้สกรูตัวใดก็ได้ที่พอดีกับรูของตัวยึดโลหะของคุณ

การประกอบป้อมปืน

ตอนนี้คุณต้องคำนวณระยะห่างระหว่างขาปืนกับขาปืนแต่ละข้าง วัดความกว้างของปืน ณ จุดที่ต้องการติดตั้ง ใส่แกนหน้าแปลนที่พิมพ์ 3 มิติลงในรูขนาด 1/2 นิ้วของขาปืนอีกข้างหนึ่ง แล้วตั้งขาปืนขึ้น เว้นระยะห่างให้ความกว้างของปืนอยู่ระหว่างชิ้นส่วนหน้าแปลนทั้งสองชิ้น จากนั้นคุณสามารถวัดระยะห่างระหว่างขาปืน แล้วทำเครื่องหมายระยะห่างนี้บนแผ่น MDF วงกลม หลังจากทำเครื่องหมายบนแผ่น MDF วงกลมแล้ว ให้ขันสกรูยึดขาปืนโดยให้มอเตอร์อยู่ด้านหนึ่ง

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

อิเล็กทรอนิกส์

ใส่หมวกสเต็ปเปอร์มอเตอร์เข้ากับ Raspberry Pi ต่อสายไฟเข้าของหมวกสเต็ปเปอร์มอเตอร์เข้ากับสายไฟออกของตัวแปลงสเต็ปอัพ (แสดงทางด้านซ้ายของภาพแรกด้านล่าง)

มีขั้วมอเตอร์สเต็ปเปอร์สองขั้วอยู่บนฝาครอบมอเตอร์ ต่อสายมอเตอร์ที่ฐานป้อมปืนเข้ากับขั้ว A (แสดงทางด้านขวาของภาพแรกด้านล่าง) ต่อสายมอเตอร์แกนหมุนปืนเข้ากับขั้ว B อีกขั้วหนึ่ง

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

เชื่อมต่อรีเลย์เข้ากับขั้วของมอเตอร์สเต็ปเปอร์โดยต่อสายไฟและกราวด์ของรีเลย์เข้ากับรางจ่ายไฟของขั้วของมอเตอร์สเต็ปเปอร์ (สายสีแดงและสีม่วงในภาพที่สามด้านล่าง) จากนั้นเชื่อมต่อสายสัญญาณเข้ากับพิน GPIO 22 บน Pi (สายสีส้มในภาพที่สามด้านล่าง) เชื่อมต่อเอาต์พุตของรีเลย์เข้ากับสายไฟบนปืนของคุณ

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

ซอฟต์แวร์

สำหรับคำแนะนำโดยละเอียดเกี่ยวกับการตั้งค่าและการปรับเทียบซอฟต์แวร์ โปรดดูวิดีโอ YouTube และที่เก็บ GitHub ไฟล์ README ของ GitHub ประกอบด้วยไฟล์ dependencies ทั้งหมดที่จำเป็นต่อการทำงานของโค้ด Python

ในการสื่อสารกับมอเตอร์สเต็ปเปอร์แฮท คุณจะต้องกำหนดค่า Raspberry Pi ของคุณให้รองรับการสื่อสารแบบ I2C ดูลิงก์ในคำอธิบายวิดีโอเพื่อดูคำแนะนำในการตั้งค่า Raspberry Pi ให้เป็น I2C จากนั้นคุณจะต้องติดตั้งไลบรารีสำหรับควบคุมมอเตอร์สเต็ปเปอร์แฮทจากคลังข้อมูล Adafruit GitHub

นอกจากนี้ยังมีไลบรารีอีกสองสามตัวที่คุณจำเป็นต้องติดตั้งสำหรับการประมวลผลและการรู้จำภาพ รวมถึง OpenCV และ imutils อีกครั้ง มีคำอธิบายโดยละเอียดเพิ่มเติมในวิดีโอ

การสอบเทียบโหมดการติดตามการเคลื่อนไหว

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

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

โหมดโต้ตอบ

ไม่จำเป็นต้องปรับเทียบในโหมดอินเทอร์แอคทีฟ เพียงวางกล้องให้ตรงกับลำกล้องปืน แล้วใช้แป้นพิมพ์เพื่อเคลื่อนที่และยิงป้อมปืน ใช้ปุ่ม "a" และ "d" เพื่อหมุนไปทางซ้ายและขวา และปุ่ม "w" และ "s" เพื่อปรับมุมป้อมปืนขึ้นและลง กด "Enter" เพื่อยิง

ปกป้อง!

ยินดีด้วย! ตอนนี้คุณมีแนวป้องกันที่แข็งแกร่งมากพอที่จะป้องกันศัตรูของคุณได้แล้ว แต่อย่าลืมว่าพลังที่ยิ่งใหญ่มาพร้อมกับความรับผิดชอบที่ยิ่งใหญ่ ขอให้สนุกและปลอดภัย!

ป้อมปืนติดตามการเคลื่อนไหว Raspberry Pi

บทความนี้ให้รายละเอียดเกี่ยวกับวิธีการสร้างป้อมปืนติดตามการเคลื่อนไหวโดยใช้ Raspberry Pi

นักเขียนบทความ
by 
นักเขียนบทความ
ป้อมปืนติดตามการเคลื่อนไหว Raspberry Pi

ป้อมปืนติดตามการเคลื่อนไหว Raspberry Pi

บทความนี้ให้รายละเอียดเกี่ยวกับวิธีการสร้างป้อมปืนติดตามการเคลื่อนไหวโดยใช้ Raspberry Pi

ป้อมปืนอัดลมหรือปืนเนิร์ฟที่ติดตามการเคลื่อนไหวพร้อมโหมดการทำงานอัตโนมัติและด้วยตนเอง ควบคุมด้วย Raspberry Pi

สิ่งที่ใช้ในโครงการนี้

ส่วนประกอบฮาร์ดแวร์

  • ปืนอัดลมไฟฟ้าของ Nerf Gun× 1
  • Raspberry Pi 3 รุ่น B x 1
  • เว็บแคม Logitech C210 × 1
  • บอร์ดป้องกันมอเตอร์ควบคุมการเคลื่อนที่ Adafruit TB6612 × 1
  • สเต็ปเปอร์มอเตอร์ NEMA 17, 200 สเต็ป/รอบ × 2
  • รีเลย์เดี่ยว × 1
  • ตัวแปลงสเต็ปอัพ × 1
  • ที่ชาร์จโทรศัพท์มือถือแบบพกพา × 1
  • สายจัมเปอร์ตัวเมีย/ตัวเมีย × 1
  • สาย USB-A ถึง Micro-USB × 1
  • ขายึดโลหะ 90 องศา × 2
  • #8 สกรูหัวจม 1/2 นิ้ว × 10
  • #8 แหวนรอง × 16
  • สกรู M3 × 8
  • แผ่น MDF ขนาด 2' x 2', 1/4" × 1
  • ตะกั่วบัดกรี × 1

เครื่องมือช่างและเครื่องจักรผลิต

  • หัวแร้ง (ทั่วไป)
  • สว่านมือ
  • เลื่อยมือหรือเลื่อยจิ๊กซอว์

การแนะนำ

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

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

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

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

การสร้างฐาน

ขั้นแรก ให้ใช้แผ่นใยไม้อัดความหนาแน่นปานกลาง (MDF) ขนาด 2' x 2' แล้วใช้ดินสอวาดวงกลมที่มีเส้นผ่านศูนย์กลาง 9 นิ้ว จำนวน 2 วง จากนั้นใช้เลื่อยมือหรือจิ๊กซอว์ไฟฟ้าตัดออก

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

สำหรับรูยึดมอเตอร์ ให้ใช้กระดาษแผ่นหนึ่งวางลงบนหน้ายึดมอเตอร์ โดยเจาะกระดาษด้วยเพลามอเตอร์ ใช้ปากกาเจาะรูบนกระดาษสำหรับรูยึดแบบเกลียวแต่ละรู จากนั้นกระดาษแผ่นนี้สามารถใช้เป็นแม่แบบสำหรับระบุตำแหน่งรูบนวงกลม MDF ได้ วางแม่แบบนี้ไว้ตรงกลางวงกลม MDF วงใดวงหนึ่ง แล้วเจาะรูยึดทั้งสี่รูโดยใช้ดอกสว่านขนาด 1/8 นิ้ว เจาะรูตรงกลางโดยใช้ดอกสว่านขนาด 5/8 นิ้ว

ใช้สกรูหัวจม M3 สี่ตัวและแหวนรองสี่ตัว ยึดมอเตอร์สเต็ปเปอร์ตัวหนึ่งเข้ากับแผ่น MDF แล้วขันให้แน่นด้วยประแจอัลเลน ใช้แผ่น MDF อีกแผ่นหนึ่ง วางหน้าแปลนแบบมีปกพิมพ์ 3 มิติไว้ตรงกลางแผ่น แล้วใช้ดินสอทำเครื่องหมายตำแหน่งเจาะสำหรับรูสกรูยึดทั้งสามรู ใช้สว่านมือหรือไขควงยึดหน้าแปลนเข้ากับแผ่นโดยใช้สกรูหัวจมเบอร์ 8 ยาวครึ่งนิ้วสามตัว จากนั้นจัดร่องของเพลามอเตอร์ให้ตรงกับร่องในหน้าแปลน แล้วกดลงไป

ต่อสายปืน

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

ตัวเลือกที่ 1:

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

ตัวเลือกที่ 2:

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

การสร้างขาป้อมปืน

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

วาดขาที่ต้องการลงบนกระดาษ แล้วใช้กรรไกรตัดออก จากนั้นใช้กระดาษนี้เป็นแม่แบบสำหรับวาดลงบนแผ่น MDF ของคุณ ใช้เลื่อยมือ หรือเลื่อยจิ๊กซอว์ไฟฟ้า ตัดขาออกจากแผ่น MDF

ที่ขาข้างหนึ่ง ให้เจาะรูขนาด 5/8 นิ้วสำหรับแกนของมอเตอร์ตัวที่สอง โดยเจาะรูขนาด 1/8 นิ้ว จำนวนสี่รูตรงกลางสำหรับยึดมอเตอร์ตัวที่สอง เหมือนกับที่ทำกับแผ่น MDF ทรงกลม ขาอีกข้างหนึ่งจะมีรูขนาดครึ่งนิ้วสำหรับรองรับแกนหน้าแปลนที่พิมพ์แบบ 3 มิติให้หมุนเข้าด้านใน

ยึดมอเตอร์ตัวที่สองเข้ากับขา โดยให้รูขนาด 1/8 นิ้วทั้งสี่รูอยู่ตรงกลางรูขนาด 5/8 นิ้ว โดยใช้สกรู M3 สี่ตัวและแหวนรอง จากนั้นใส่ปลอกหุ้มหน้าแปลนพิมพ์ 3 มิติตัวที่สองลงบนเพลามอเตอร์

ตอนนี้ใช้ตัวยึดมุม 90 องศาทั้งสองตัวแล้วขันเข้าที่ด้านล่างของขาแต่ละข้างตามที่แสดงในภาพโดยใช้สกรูตัวใดก็ได้ที่พอดีกับรูของตัวยึดโลหะของคุณ

การประกอบป้อมปืน

ตอนนี้คุณต้องคำนวณระยะห่างระหว่างขาปืนกับขาปืนแต่ละข้าง วัดความกว้างของปืน ณ จุดที่ต้องการติดตั้ง ใส่แกนหน้าแปลนที่พิมพ์ 3 มิติลงในรูขนาด 1/2 นิ้วของขาปืนอีกข้างหนึ่ง แล้วตั้งขาปืนขึ้น เว้นระยะห่างให้ความกว้างของปืนอยู่ระหว่างชิ้นส่วนหน้าแปลนทั้งสองชิ้น จากนั้นคุณสามารถวัดระยะห่างระหว่างขาปืน แล้วทำเครื่องหมายระยะห่างนี้บนแผ่น MDF วงกลม หลังจากทำเครื่องหมายบนแผ่น MDF วงกลมแล้ว ให้ขันสกรูยึดขาปืนโดยให้มอเตอร์อยู่ด้านหนึ่ง

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

อิเล็กทรอนิกส์

ใส่หมวกสเต็ปเปอร์มอเตอร์เข้ากับ Raspberry Pi ต่อสายไฟเข้าของหมวกสเต็ปเปอร์มอเตอร์เข้ากับสายไฟออกของตัวแปลงสเต็ปอัพ (แสดงทางด้านซ้ายของภาพแรกด้านล่าง)

มีขั้วมอเตอร์สเต็ปเปอร์สองขั้วอยู่บนฝาครอบมอเตอร์ ต่อสายมอเตอร์ที่ฐานป้อมปืนเข้ากับขั้ว A (แสดงทางด้านขวาของภาพแรกด้านล่าง) ต่อสายมอเตอร์แกนหมุนปืนเข้ากับขั้ว B อีกขั้วหนึ่ง

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

เชื่อมต่อรีเลย์เข้ากับขั้วของมอเตอร์สเต็ปเปอร์โดยต่อสายไฟและกราวด์ของรีเลย์เข้ากับรางจ่ายไฟของขั้วของมอเตอร์สเต็ปเปอร์ (สายสีแดงและสีม่วงในภาพที่สามด้านล่าง) จากนั้นเชื่อมต่อสายสัญญาณเข้ากับพิน GPIO 22 บน Pi (สายสีส้มในภาพที่สามด้านล่าง) เชื่อมต่อเอาต์พุตของรีเลย์เข้ากับสายไฟบนปืนของคุณ

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

ซอฟต์แวร์

สำหรับคำแนะนำโดยละเอียดเกี่ยวกับการตั้งค่าและการปรับเทียบซอฟต์แวร์ โปรดดูวิดีโอ YouTube และที่เก็บ GitHub ไฟล์ README ของ GitHub ประกอบด้วยไฟล์ dependencies ทั้งหมดที่จำเป็นต่อการทำงานของโค้ด Python

ในการสื่อสารกับมอเตอร์สเต็ปเปอร์แฮท คุณจะต้องกำหนดค่า Raspberry Pi ของคุณให้รองรับการสื่อสารแบบ I2C ดูลิงก์ในคำอธิบายวิดีโอเพื่อดูคำแนะนำในการตั้งค่า Raspberry Pi ให้เป็น I2C จากนั้นคุณจะต้องติดตั้งไลบรารีสำหรับควบคุมมอเตอร์สเต็ปเปอร์แฮทจากคลังข้อมูล Adafruit GitHub

นอกจากนี้ยังมีไลบรารีอีกสองสามตัวที่คุณจำเป็นต้องติดตั้งสำหรับการประมวลผลและการรู้จำภาพ รวมถึง OpenCV และ imutils อีกครั้ง มีคำอธิบายโดยละเอียดเพิ่มเติมในวิดีโอ

การสอบเทียบโหมดการติดตามการเคลื่อนไหว

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

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

โหมดโต้ตอบ

ไม่จำเป็นต้องปรับเทียบในโหมดอินเทอร์แอคทีฟ เพียงวางกล้องให้ตรงกับลำกล้องปืน แล้วใช้แป้นพิมพ์เพื่อเคลื่อนที่และยิงป้อมปืน ใช้ปุ่ม "a" และ "d" เพื่อหมุนไปทางซ้ายและขวา และปุ่ม "w" และ "s" เพื่อปรับมุมป้อมปืนขึ้นและลง กด "Enter" เพื่อยิง

ปกป้อง!

ยินดีด้วย! ตอนนี้คุณมีแนวป้องกันที่แข็งแกร่งมากพอที่จะป้องกันศัตรูของคุณได้แล้ว แต่อย่าลืมว่าพลังที่ยิ่งใหญ่มาพร้อมกับความรับผิดชอบที่ยิ่งใหญ่ ขอให้สนุกและปลอดภัย!

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.

ป้อมปืนติดตามการเคลื่อนไหว Raspberry Pi

ป้อมปืนติดตามการเคลื่อนไหว Raspberry Pi

บทความนี้ให้รายละเอียดเกี่ยวกับวิธีการสร้างป้อมปืนติดตามการเคลื่อนไหวโดยใช้ Raspberry Pi

Lorem ipsum dolor amet consectetur adipiscing elit tortor massa arcu non.

ป้อมปืนอัดลมหรือปืนเนิร์ฟที่ติดตามการเคลื่อนไหวพร้อมโหมดการทำงานอัตโนมัติและด้วยตนเอง ควบคุมด้วย Raspberry Pi

สิ่งที่ใช้ในโครงการนี้

ส่วนประกอบฮาร์ดแวร์

  • ปืนอัดลมไฟฟ้าของ Nerf Gun× 1
  • Raspberry Pi 3 รุ่น B x 1
  • เว็บแคม Logitech C210 × 1
  • บอร์ดป้องกันมอเตอร์ควบคุมการเคลื่อนที่ Adafruit TB6612 × 1
  • สเต็ปเปอร์มอเตอร์ NEMA 17, 200 สเต็ป/รอบ × 2
  • รีเลย์เดี่ยว × 1
  • ตัวแปลงสเต็ปอัพ × 1
  • ที่ชาร์จโทรศัพท์มือถือแบบพกพา × 1
  • สายจัมเปอร์ตัวเมีย/ตัวเมีย × 1
  • สาย USB-A ถึง Micro-USB × 1
  • ขายึดโลหะ 90 องศา × 2
  • #8 สกรูหัวจม 1/2 นิ้ว × 10
  • #8 แหวนรอง × 16
  • สกรู M3 × 8
  • แผ่น MDF ขนาด 2' x 2', 1/4" × 1
  • ตะกั่วบัดกรี × 1

เครื่องมือช่างและเครื่องจักรผลิต

  • หัวแร้ง (ทั่วไป)
  • สว่านมือ
  • เลื่อยมือหรือเลื่อยจิ๊กซอว์

การแนะนำ

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

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

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

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

การสร้างฐาน

ขั้นแรก ให้ใช้แผ่นใยไม้อัดความหนาแน่นปานกลาง (MDF) ขนาด 2' x 2' แล้วใช้ดินสอวาดวงกลมที่มีเส้นผ่านศูนย์กลาง 9 นิ้ว จำนวน 2 วง จากนั้นใช้เลื่อยมือหรือจิ๊กซอว์ไฟฟ้าตัดออก

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

สำหรับรูยึดมอเตอร์ ให้ใช้กระดาษแผ่นหนึ่งวางลงบนหน้ายึดมอเตอร์ โดยเจาะกระดาษด้วยเพลามอเตอร์ ใช้ปากกาเจาะรูบนกระดาษสำหรับรูยึดแบบเกลียวแต่ละรู จากนั้นกระดาษแผ่นนี้สามารถใช้เป็นแม่แบบสำหรับระบุตำแหน่งรูบนวงกลม MDF ได้ วางแม่แบบนี้ไว้ตรงกลางวงกลม MDF วงใดวงหนึ่ง แล้วเจาะรูยึดทั้งสี่รูโดยใช้ดอกสว่านขนาด 1/8 นิ้ว เจาะรูตรงกลางโดยใช้ดอกสว่านขนาด 5/8 นิ้ว

ใช้สกรูหัวจม M3 สี่ตัวและแหวนรองสี่ตัว ยึดมอเตอร์สเต็ปเปอร์ตัวหนึ่งเข้ากับแผ่น MDF แล้วขันให้แน่นด้วยประแจอัลเลน ใช้แผ่น MDF อีกแผ่นหนึ่ง วางหน้าแปลนแบบมีปกพิมพ์ 3 มิติไว้ตรงกลางแผ่น แล้วใช้ดินสอทำเครื่องหมายตำแหน่งเจาะสำหรับรูสกรูยึดทั้งสามรู ใช้สว่านมือหรือไขควงยึดหน้าแปลนเข้ากับแผ่นโดยใช้สกรูหัวจมเบอร์ 8 ยาวครึ่งนิ้วสามตัว จากนั้นจัดร่องของเพลามอเตอร์ให้ตรงกับร่องในหน้าแปลน แล้วกดลงไป

ต่อสายปืน

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

ตัวเลือกที่ 1:

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

ตัวเลือกที่ 2:

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

การสร้างขาป้อมปืน

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

วาดขาที่ต้องการลงบนกระดาษ แล้วใช้กรรไกรตัดออก จากนั้นใช้กระดาษนี้เป็นแม่แบบสำหรับวาดลงบนแผ่น MDF ของคุณ ใช้เลื่อยมือ หรือเลื่อยจิ๊กซอว์ไฟฟ้า ตัดขาออกจากแผ่น MDF

ที่ขาข้างหนึ่ง ให้เจาะรูขนาด 5/8 นิ้วสำหรับแกนของมอเตอร์ตัวที่สอง โดยเจาะรูขนาด 1/8 นิ้ว จำนวนสี่รูตรงกลางสำหรับยึดมอเตอร์ตัวที่สอง เหมือนกับที่ทำกับแผ่น MDF ทรงกลม ขาอีกข้างหนึ่งจะมีรูขนาดครึ่งนิ้วสำหรับรองรับแกนหน้าแปลนที่พิมพ์แบบ 3 มิติให้หมุนเข้าด้านใน

ยึดมอเตอร์ตัวที่สองเข้ากับขา โดยให้รูขนาด 1/8 นิ้วทั้งสี่รูอยู่ตรงกลางรูขนาด 5/8 นิ้ว โดยใช้สกรู M3 สี่ตัวและแหวนรอง จากนั้นใส่ปลอกหุ้มหน้าแปลนพิมพ์ 3 มิติตัวที่สองลงบนเพลามอเตอร์

ตอนนี้ใช้ตัวยึดมุม 90 องศาทั้งสองตัวแล้วขันเข้าที่ด้านล่างของขาแต่ละข้างตามที่แสดงในภาพโดยใช้สกรูตัวใดก็ได้ที่พอดีกับรูของตัวยึดโลหะของคุณ

การประกอบป้อมปืน

ตอนนี้คุณต้องคำนวณระยะห่างระหว่างขาปืนกับขาปืนแต่ละข้าง วัดความกว้างของปืน ณ จุดที่ต้องการติดตั้ง ใส่แกนหน้าแปลนที่พิมพ์ 3 มิติลงในรูขนาด 1/2 นิ้วของขาปืนอีกข้างหนึ่ง แล้วตั้งขาปืนขึ้น เว้นระยะห่างให้ความกว้างของปืนอยู่ระหว่างชิ้นส่วนหน้าแปลนทั้งสองชิ้น จากนั้นคุณสามารถวัดระยะห่างระหว่างขาปืน แล้วทำเครื่องหมายระยะห่างนี้บนแผ่น MDF วงกลม หลังจากทำเครื่องหมายบนแผ่น MDF วงกลมแล้ว ให้ขันสกรูยึดขาปืนโดยให้มอเตอร์อยู่ด้านหนึ่ง

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

อิเล็กทรอนิกส์

ใส่หมวกสเต็ปเปอร์มอเตอร์เข้ากับ Raspberry Pi ต่อสายไฟเข้าของหมวกสเต็ปเปอร์มอเตอร์เข้ากับสายไฟออกของตัวแปลงสเต็ปอัพ (แสดงทางด้านซ้ายของภาพแรกด้านล่าง)

มีขั้วมอเตอร์สเต็ปเปอร์สองขั้วอยู่บนฝาครอบมอเตอร์ ต่อสายมอเตอร์ที่ฐานป้อมปืนเข้ากับขั้ว A (แสดงทางด้านขวาของภาพแรกด้านล่าง) ต่อสายมอเตอร์แกนหมุนปืนเข้ากับขั้ว B อีกขั้วหนึ่ง

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

เชื่อมต่อรีเลย์เข้ากับขั้วของมอเตอร์สเต็ปเปอร์โดยต่อสายไฟและกราวด์ของรีเลย์เข้ากับรางจ่ายไฟของขั้วของมอเตอร์สเต็ปเปอร์ (สายสีแดงและสีม่วงในภาพที่สามด้านล่าง) จากนั้นเชื่อมต่อสายสัญญาณเข้ากับพิน GPIO 22 บน Pi (สายสีส้มในภาพที่สามด้านล่าง) เชื่อมต่อเอาต์พุตของรีเลย์เข้ากับสายไฟบนปืนของคุณ

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

ซอฟต์แวร์

สำหรับคำแนะนำโดยละเอียดเกี่ยวกับการตั้งค่าและการปรับเทียบซอฟต์แวร์ โปรดดูวิดีโอ YouTube และที่เก็บ GitHub ไฟล์ README ของ GitHub ประกอบด้วยไฟล์ dependencies ทั้งหมดที่จำเป็นต่อการทำงานของโค้ด Python

ในการสื่อสารกับมอเตอร์สเต็ปเปอร์แฮท คุณจะต้องกำหนดค่า Raspberry Pi ของคุณให้รองรับการสื่อสารแบบ I2C ดูลิงก์ในคำอธิบายวิดีโอเพื่อดูคำแนะนำในการตั้งค่า Raspberry Pi ให้เป็น I2C จากนั้นคุณจะต้องติดตั้งไลบรารีสำหรับควบคุมมอเตอร์สเต็ปเปอร์แฮทจากคลังข้อมูล Adafruit GitHub

นอกจากนี้ยังมีไลบรารีอีกสองสามตัวที่คุณจำเป็นต้องติดตั้งสำหรับการประมวลผลและการรู้จำภาพ รวมถึง OpenCV และ imutils อีกครั้ง มีคำอธิบายโดยละเอียดเพิ่มเติมในวิดีโอ

การสอบเทียบโหมดการติดตามการเคลื่อนไหว

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

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

โหมดโต้ตอบ

ไม่จำเป็นต้องปรับเทียบในโหมดอินเทอร์แอคทีฟ เพียงวางกล้องให้ตรงกับลำกล้องปืน แล้วใช้แป้นพิมพ์เพื่อเคลื่อนที่และยิงป้อมปืน ใช้ปุ่ม "a" และ "d" เพื่อหมุนไปทางซ้ายและขวา และปุ่ม "w" และ "s" เพื่อปรับมุมป้อมปืนขึ้นและลง กด "Enter" เพื่อยิง

ปกป้อง!

ยินดีด้วย! ตอนนี้คุณมีแนวป้องกันที่แข็งแกร่งมากพอที่จะป้องกันศัตรูของคุณได้แล้ว แต่อย่าลืมว่าพลังที่ยิ่งใหญ่มาพร้อมกับความรับผิดชอบที่ยิ่งใหญ่ ขอให้สนุกและปลอดภัย!