สารบัญ:
- ขั้นตอนที่ 1: แนวคิดและการเชื่อมต่อ
- ขั้นตอนที่ 2: การเชื่อมต่อและการกำหนดค่า Raspberry Pi
- ขั้นตอนที่ 3: การเชื่อมต่อและการกำหนดค่า APM
- ขั้นตอนที่ 4: Arduino Leonardo Configuration
- ขั้นตอนที่ 5: เที่ยวบินแรก
วีดีโอ: โดรนผู้ติดตามสายอัตโนมัติพร้อม Raspberry Pi: 5 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:04
บทช่วยสอนนี้แสดงให้เห็นว่าคุณสามารถสร้างเสียงพึมพำผู้ติดตามสายได้อย่างไรในที่สุด
โดรนตัวนี้จะมีสวิตช์ "โหมดอัตโนมัติ" ที่จะเข้าสู่โหมดโดรน ดังนั้น คุณยังสามารถบินโดรนได้เหมือนเมื่อก่อน
โปรดทราบว่าจะใช้เวลาในการสร้างและมีเวลามากขึ้นในการปรับตัว แต่สุดท้าย… ทำให้คุณคิดว่าคุ้มค่า
ในการเริ่มต้นสร้างโดรนติดตามสายอัตโนมัติของคุณเอง ให้แน่ใจว่าคุณมี
- Rasberry Pi 3 หรือ Raspberry Pi Zero W พร้อมการเข้าถึง SSH
- โดรนพร้อมบินพร้อม APM หรือ Pixhawk flight controller
- Arduino Leonardo หรือ Arduino ตัวอื่นที่มีความเร็วสัญญาณนาฬิกาเร็ว
- เครื่องส่งสัญญาณอย่างน้อย 6 CH
- เว็บแคม USB ที่ Raspberry Pi และ OpenCV รองรับ
- พีซี
- ทรานซิสเตอร์เอนกประสงค์ 6 ตัว
- สายไฟ
ขั้นตอนที่ 1: แนวคิดและการเชื่อมต่อ
APM หรือที่รู้จักว่า ArduPilot เป็นตัวควบคุมการบินที่ใช้ Arduino Mega ซึ่งหมายความว่าเราสามารถปรับเปลี่ยนให้ดีที่สุดสำหรับกรณีของเรา แต่เนื่องจากผมไม่มีข้อมูลที่จะทำเช่นนั้น ผมจะไปทำตามวิธีอื่น
น่าเสียดายที่ Raspberry Pi ไม่ไวต่อเวลาซึ่งหมายความว่าไม่สามารถจัดการกับสัญญาณ PPM ได้
นั่นเป็นเหตุผลที่เราต้องการบอร์ด Arduino เพิ่มเติม
ด้วยวิธีนี้ Raspberry Pi จะประมวลผลภาพและคำนวณคำแนะนำการบินและส่งไปยัง Arduino ผ่านอินเทอร์เฟซ Serial UART การ์ด Arduino จะยืนอยู่ที่นี่ในฐานะตัวเข้ารหัส/ตัวถอดรหัส PPM ซึ่งเข้ารหัสคำแนะนำการบินไปยังสัญญาณ PPM ที่ APM ต้องการ เพื่อให้มีแนวคิด คุณสามารถตรวจสอบแผนภาพวงจรสัญลักษณ์ได้
Raspberry Pi จะทำงานเป็นเครื่องส่งสัญญาณ telemetry ควบคู่ไปกับการตรวจจับสาย
วงจรสำคัญแสดงอยู่ในภาพ ฉันจะอธิบายต่อไปในขั้นตอนต่อไป
ขั้นตอนที่ 2: การเชื่อมต่อและการกำหนดค่า Raspberry Pi
Raspberry Pi จะเชื่อมต่อกับอะแดปเตอร์ Wi-Fi (อุปกรณ์เสริม), เว็บแคม USB, Arduino Leonardo ผ่าน USB, APM ผ่านอินเทอร์เฟซแบบอนุกรมในตัว APM - การเชื่อมต่อ RPI แสดงพร้อมรายละเอียดในภาพ
ในการกำหนดค่า คุณมีสองตัวเลือก: Raspbian แท้พร้อมแพ็คเกจที่จำเป็น หรือรูปภาพพิเศษสำหรับการเชื่อมต่อ MAVLink ที่เรียกว่า APSync หากคุณกำลังจะใช้ Raspbian ตรวจสอบให้แน่ใจว่าคุณได้ติดตั้งแพ็คเกจเหล่านี้แล้ว:
sudo apt-get update
sudo apt-get install -y หน้าจอ python-wxgtk3.0 python-matplotlib sudo apt-get install -y python-opencv python-pip python-numpy python-dev sudo apt-get install -y libxml2-dev libxslt-dev python- lxml sudo pip ติดตั้ง pymavlink ในอนาคต mavproxy pyserial
ในการใช้อินเทอร์เฟซอนุกรมในตัวของ Raspberry Pi คุณต้องบอก OS ว่าอย่าใช้งาน โดยพิมพ์
sudo raspi-config
และทำตามตัวเลือกการเชื่อมต่อ > Serial interface
คุณต้องปิดใช้งานอินเทอร์เฟซแบบอนุกรม แต่เปิดใช้งานฮาร์ดแวร์แบบอนุกรม
ณ จุดนี้ ส่วนที่เหลือเหมาะสำหรับทั้ง Raspbian และ APSync
ในโฮมไดเร็กทอรี สร้างสามไฟล์: สคริปต์รีบูตและสคริปต์ตัวประมวลผลภาพ บรรทัดที่สองทำให้สคริปต์การรีบูตสามารถเรียกใช้งานได้
แตะ reboot.sh image_processor.py
chmod +x reboot.sh
คัดลอกบรรทัดทั้งหมดในไฟล์ที่ระบุด้านล่างไปยังโฮมไดเร็กตอรี่ของคุณ (/home/pi) ใน Raspberry Pi
สคริปต์รีบูตจะมีทริกเกอร์ที่จะทริกเกอร์ตัวประมวลผลภาพและสคริปต์การวัดและส่งข้อมูลทางไกล นอกจากนี้ยังมีการตั้งค่าเล็กน้อย โปรดทราบว่าหากคุณไม่ต้องการคุณสมบัติ telemetry ให้เพิ่ม # ก่อนบรรทัดนั้น
นาโนรีบูต.sh
#!/bin/bash
python3 /home/pi/image_processor.py
บันทึกด้วย CTRL+O และออกด้วย CTRL+X ขั้นตอนสุดท้ายคือการลงทะเบียนกับไฟล์เริ่มต้นระบบปฏิบัติการ rc.local
sudo nano /etc/rc.local
ต่อท้ายบรรทัดนี้เหนือทางออก 0:
/home/pi/reboot.sh
สคริปต์รีบูตของเราจะดำเนินการทุกครั้งที่บูต
เราต้องการให้ Raspberry Pi บันทึกวิดีโอสด ประมวลผลได้ทันที คำนวณคำแนะนำในการบิน ส่งไปยังผู้ควบคุมการบิน และส่งข้อมูลทางไกล แต่เนื่องจาก Raspberry Pi ไม่สามารถสร้างสัญญาณ PPM ที่ APM ต้องการได้ เราจึงต้องหาวิธีอื่นในการทำให้สำเร็จ
Raspberry Pi จะส่งเอาต์พุตการประมวลผลภาพไปยัง Arduino (ในกรณีของฉัน Arduino Leonardo) ผ่าน Serial Port Arduino จะสร้างสัญญาณ PPM จากอินพุตนั้นและส่งไปยัง Flight Controller ผ่านสายจัมเปอร์ นี่คือทั้งหมดสำหรับ Raspberry Pi
ไปที่ขั้นตอนต่อไป
ขั้นตอนที่ 3: การเชื่อมต่อและการกำหนดค่า APM
สิ่งต่าง ๆ เกี่ยวกับ APM นั้นเรียบง่ายเพราะพร้อมบินแล้ว เราจำเป็นต้องทราบบอดเรตของพอร์ตอนุกรม และตรวจสอบให้แน่ใจว่าพอร์ต TELEM เปิดใช้งานอยู่
ในซอฟต์แวร์ภาคพื้นดินของคุณ ในกรณีของฉัน Mission Planner ให้ตรวจสอบรายการพารามิเตอร์ของผู้ควบคุมการบินและค้นหา Baudrates ตัวอย่างเช่น SERIAL_BAUD คือ USB baudrate และ SERIAL_BAUD1 คือ TELEM port baudrate สำหรับ APM สังเกตว่าค่า
ส่วนที่สำคัญที่สุดคือการเชื่อมต่อของพิน INPUT ดังที่แสดงในภาพ เชื่อมต่อหมุดดิจิทัลของ Arduino 4 อย่างทั่วถึง 9 คุณอาจต้องการใช้ breadbord สำหรับสิ่งนี้ เนื่องจากเราจะเพิ่มทรานซิสเตอร์และเอาต์พุตตัวรับบางส่วน (ดูภาพ) (ทรานซิสเตอร์จะทำงานในกรณีที่คุณต้องการควบคุมโดรนของคุณ)
รพ.4 ↔ APM INPUT 1
รพ 5 ↔ APM INPUT 2
รพช.6 ↔ อินพุต APM 3
รพ.7 ↔ APM INPUT 4
รพช 8 ↔ อินพุต APM 5
รพ.9 ↔ APM INPUT 6
เชื่อมต่อพิน 5V ทั้งหมดบนอินพุต APM กับพิน Arduino Leonardo 5V ในทำนองเดียวกันเชื่อมต่อพิน APM Input GND ทั้งหมดกับพิน Arduino Leonardo GND
ขั้นตอนที่ 4: Arduino Leonardo Configuration
เราได้เชื่อมต่อสายไฟทั้งหมดสำหรับ Leonardo แล้ว เหลือเพียงรหัสเท่านั้น
อัปโหลดรหัสที่กำหนดด้านล่างไปยัง Arduino Leonardo ของคุณ ให้ความสนใจกับ Baudrates
ขั้นตอนที่ 5: เที่ยวบินแรก
เมื่อคุณทำขั้นตอนก่อนหน้าทั้งหมดเสร็จแล้ว แสดงว่าคุณพร้อม
เพิ่มพลังให้การ์ดทั้งหมดและเชื่อมต่อกับ SSH กับ Raspberry Pi พิมพ์เทอร์มินัล:
ซูโด ซู
mavproxy.py --master=/dev/[SERIAL INTERFACE] --baudrate [TELEM PORT BAUDRATE] --aircraft [ชื่อที่กำหนดเอง
อินเทอร์เฟซอนุกรมในตัว Raspberry Pi เริ่มต้นคือ ttyS0 (/ dev / ttyS0)
ค่าเริ่มต้นของพอร์ต APM TELEM คือ 57600
บอดเรตพอร์ต APM USB เริ่มต้นคือ 115200
คุณสามารถตั้งชื่อเครื่องบินของคุณ เลือกอย่างชาญฉลาด เพื่อให้คุณจดจำได้ในภายหลัง
หากทุกอย่างเรียบร้อยดี ตอนนี้เชื่อมต่อกับ Raspberry Pi ของคุณผ่าน VNC เพื่อให้คุณสามารถดูสิ่งที่โดรนเห็นในแบบเรียลไทม์
ตอนนี้คุณสามารถติดอาวุธโดรนของคุณ น่าตื่นเต้นใช่มั้ย?
ถอดโดรนออกแล้วบินเหนือรางรถไฟ ตอนนี้คุณสามารถเปิดใช้งานโหมดการติดตามสายได้โดยใช้สวิตช์ CH6
แนะนำ:
การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: 3 ขั้นตอน
การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: ในคำแนะนำนี้ เราจะทำการตรวจจับใบหน้าบน Raspberry Pi 4 ด้วย Shunya O/S โดยใช้ Shunyaface Library Shunyaface เป็นห้องสมุดจดจำใบหน้า/ตรวจจับใบหน้า โปรเจ็กต์นี้มีจุดมุ่งหมายเพื่อให้เกิดความเร็วในการตรวจจับและจดจำได้เร็วที่สุดด้วย
LED กะพริบด้วย Raspberry Pi - วิธีใช้พิน GPIO บน Raspberry Pi: 4 ขั้นตอน
LED กะพริบด้วย Raspberry Pi | วิธีใช้ GPIO Pins บน Raspberry Pi: สวัสดีทุกคนในคำแนะนำนี้เราจะเรียนรู้วิธีใช้ GPIO ของ Raspberry pi หากคุณเคยใช้ Arduino คุณอาจรู้ว่าเราสามารถเชื่อมต่อสวิตช์ LED ฯลฯ เข้ากับหมุดของมันและทำให้มันทำงานได้ ทำให้ไฟ LED กะพริบหรือรับอินพุตจากสวิตช์ดังนั้น
อินเทอร์เฟซ ADXL335 Sensor บน Raspberry Pi 4B ใน 4 ขั้นตอน: 4 ขั้นตอน
อินเทอร์เฟซ ADXL335 Sensor บน Raspberry Pi 4B ใน 4 ขั้นตอน: ในคำแนะนำนี้ เราจะเชื่อมต่อเซ็นเซอร์ ADXL335 (accelerometer) บน Raspberry Pi 4 กับ Shunya O/S
การติดตั้ง Raspbian Buster บน Raspberry Pi 3 - เริ่มต้นใช้งาน Raspbian Buster ด้วย Raspberry Pi 3b / 3b+: 4 ขั้นตอน
การติดตั้ง Raspbian Buster บน Raspberry Pi 3 | เริ่มต้นใช้งาน Raspbian Buster ด้วย Raspberry Pi 3b / 3b+: สวัสดี องค์กร Raspberry pi ที่เพิ่งเปิดตัว Raspbian OS ใหม่ที่เรียกว่า Raspbian Buster เป็นเวอร์ชันใหม่ของ Raspbian สำหรับ Raspberry pi ดังนั้นวันนี้ในคำแนะนำนี้ เราจะได้เรียนรู้วิธีติดตั้ง Raspbian Buster OS บน Raspberry pi 3 ของคุณ
การติดตั้ง Raspbian ใน Raspberry Pi 3 B โดยไม่ต้องใช้ HDMI - เริ่มต้นใช้งาน Raspberry Pi 3B - การตั้งค่า Raspberry Pi ของคุณ 3: 6 ขั้นตอน
การติดตั้ง Raspbian ใน Raspberry Pi 3 B โดยไม่ต้องใช้ HDMI | เริ่มต้นใช้งาน Raspberry Pi 3B | การตั้งค่า Raspberry Pi ของคุณ 3: อย่างที่พวกคุณบางคนรู้ว่าคอมพิวเตอร์ Raspberry Pi นั้นยอดเยี่ยมมากและคุณสามารถรับคอมพิวเตอร์ทั้งหมดได้บนบอร์ดเล็ก ๆ ตัวเดียว Raspberry Pi 3 Model B มี ARM Cortex A53 แบบ 64 บิตแบบ quad-core โอเวอร์คล็อกที่ 1.2 GHz ทำให้ Pi 3 ประมาณ 50