สารบัญ:
- เสบียง
- ขั้นตอนที่ 1: การตั้งค่าฮาร์ดแวร์
- ขั้นตอนที่ 2: การกำหนดค่า
- ขั้นตอนที่ 3: รหัส
- ขั้นตอนที่ 4: ทดสอบเลย
วีดีโอ: RSSI ถึงระยะทางด้วยโมดูล RF (Xbees): 4 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:04
Xbees เป็นโมดูลความถี่วิทยุขนาดเล็กซึ่งมีประโยชน์สำหรับการส่งข้อมูลไปมา และการใช้งานเฉพาะอื่นๆ สำหรับโปรเจ็กต์นี้ ฉันใช้ค่าเหล่านี้เพื่อรับค่า Received Signal Strength Indicator (RSSI) เพื่อประเมินระยะห่างระหว่างโมดูล Xbee สองโมดูล ฉันต้องการแบ่งปันงานของฉันในโปรเจ็กต์นี้เพราะฉันได้เห็นบทช่วยสอนแบบเต็มจำนวนน้อยมากเกี่ยวกับการรับ RSSI ด้วย Xbees ฉันพบว่าวิธีง่ายๆ ในการอ่านค่า RSSI ของ Xbee และตีความคือ Arduino สำหรับบทช่วยสอนนี้ คุณจะต้องมีความรู้เกี่ยวกับ Arduino เพียงเล็กน้อย เพื่อที่จะสามารถอัปโหลดโค้ดที่กำหนด และแก้ไขได้หากจำเป็น จอภาพอนุกรมในตัวบน Arduino สามารถแสดงค่า RSSI ได้ และหากคุณต้องการดำเนินการต่อไป คุณสามารถติดหน้าจอ LED หรือ LCD เพื่อแปลค่าโดยไม่ต้องใช้คอมพิวเตอร์
บทช่วยสอนนี้ใช้โมดูล Xbee3 "ส่งสัญญาณ" หนึ่งโมดูลซึ่งตั้งโปรแกรมไว้ใน Micropython และ xbee3 "ตัวรับ" หนึ่งตัวซึ่งต่ออยู่กับ Arduino Uno ผ่าน Xbee shield นอกจากนี้ยังสามารถส่งแพ็กเก็ตโดยให้ทั้งคู่เชื่อมต่อกับ Arduino Uno ของตนเอง ซึ่งครอบคลุมอยู่ในบทช่วยสอนออนไลน์ของคนอื่นที่นี่ จำเป็นต้องมีโมดูล Xbee3 เนื่องจากเป็นโมดูล Xbee เพียงโมดูลเดียวที่รัน Micropython และเป็นหนึ่งใน Xbees ไม่กี่ตัวที่นำเสนอโปรโตคอล 802.15.4 ซึ่งรวมถึงค่า RSSI ในแพ็กเก็ตที่ส่ง
เสบียง
- XBee3 (x2)
- เสาอากาศ u. FL (x2)
- Arduino Uno - Xbee shield ออกแบบมาสำหรับรุ่นนี้
- สายต่อระหว่าง Arduino Uno และพอร์ต USB ของคอมพิวเตอร์ (USB A ถึง USB B)
- โล่ XBee (x1)
- อะแดปเตอร์ XBee เป็น USB (x1)
หมายเหตุ: อาจเป็นการดีที่จะได้รับอะแดปเตอร์สองตัวเพื่อให้สามารถกำหนดค่า Xbees ทั้งสองได้พร้อมกัน และยังดีสำหรับการดีบักเนื่องจากคุณสามารถส่งแพ็คเก็ตผ่าน XCTU ได้เช่นกัน
ในการทำให้เป็นระบบในตัวเอง (ไม่บังคับ):
- Powerpack แบบพกพาที่ไม่ปิดเมื่อมีกระแสไฟต่ำหรือขั้วต่อแบตเตอรี่กับ USB
- ขั้วต่อแบตเตอรี่กับ Arduino และแบตเตอรี่ 9V
ขั้นตอนที่ 1: การตั้งค่าฮาร์ดแวร์
การตั้งค่าทางกายภาพค่อนข้างง่าย ประสานหมุดตัวเชื่อมต่อบางตัวเข้ากับตัวป้องกัน Xbee (ตามด้านล่างด้านนอกซึ่งเป็นรู) จากนั้นดันเข้าที่ด้านบนของ Arduino ทิศทางมีความสำคัญ - จัดเรียง Xbee แต่ละตัวด้วยแผ่น PCB สีขาวที่ด้านบนของโล่ ("เครื่องรับ") หรืออะแดปเตอร์ ("เครื่องส่ง") ในการเชื่อมต่อเสาอากาศ u. FL ฉันแนะนำคู่มือนี้โดย Sparkfun
ขั้นตอนที่ 2: การกำหนดค่า
การตั้งค่าคอมพิวเตอร์อาจยุ่งยากกว่าเล็กน้อย ขั้นแรก ดาวน์โหลด XCTU โปรแกรมนี้ใช้เพื่อกำหนดค่า Xbees เอกสารประกอบ Xbee3 เป็นทรัพยากรอันล้ำค่าสำหรับ XCTU และการกำหนดค่า จากนั้นทำตามขั้นตอนต่อไปนี้โดยเสียบ Xbee แต่ละตัวเข้ากับคอมพิวเตอร์บนอะแดปเตอร์ (ไฟ LED PWR บนอะแดปเตอร์จะสว่างขึ้น)
ใน XCTU ให้คลิก "ค้นพบโมดูลวิทยุ…" (ไอคอนคือ Xbee พร้อมแว่นขยายที่มุมซ้ายบน) แล้วคลิกถัดไป จากนั้นจึงเสร็จสิ้น จากนั้นรอจนกว่า Xbee จะปรากฏในการค้นหา คลิกมัน แล้วคลิก "เพิ่มอุปกรณ์ที่เลือก" คลิก Xbee ที่ปรากฏทางด้านซ้ายของหน้าจอ และรอให้การตั้งค่าโหลดขึ้น ก่อนคลิก "อัปเดตเฟิร์มแวร์" ทำตามภาพแรกด้านบนและตั้งค่าเฟิร์มแวร์เป็น 802.15.4 และเวอร์ชันใหม่ล่าสุด จากนั้นกำหนดค่า "ส่ง" Xbee ให้ตรงกับการตั้งค่า "ส่ง" ในภาพที่สอง และทำเช่นเดียวกันสำหรับ Xbee "รับ" คุณจะต้องวาง Xbee "รับ" ในโหมด API 2 เพื่อเชื่อมต่อกับ Arduino (นี่เป็นเรื่องง่ายสำหรับ google หากคุณหาได้ยาก)
ขั้นตอนที่ 3: รหัส
สำหรับ Arduino คุณจะต้องดาวน์โหลดไฟล์แนบไฟล์แรกบน "ตัวรับ" Xbee คุณจะต้องดาวน์โหลดไลบรารี Xbee-Arduino ซึ่งอยู่ที่นี่ด้วย Arduino เป็นภาษาที่เรียบง่ายและมีเอกสารประกอบอย่างดี ดังนั้นหากคุณพบปัญหาใดๆ เว็บไซต์ Arduino คือเพื่อนของคุณ
รหัส Micropython เป็นไฟล์แนบที่สอง ทำตามคำแนะนำนี้เพื่อดาวน์โหลดรหัสไปยัง "เครื่องส่งสัญญาณ" Xbee
ขั้นตอนที่ 4: ทดสอบเลย
เมื่อคุณมีชิ้นส่วนที่จำเป็นทั้งหมดแล้ว คุณก็สามารถส่งแพ็กเก็ตได้ในที่สุด ตรวจสอบให้แน่ใจว่า "ตัวส่งสัญญาณ" Xbee มีโค้ดทำงานอยู่ จากนั้นเสียบเข้ากับแหล่งพลังงาน (การเสียบปลั๊กเข้ากับคอมพิวเตอร์ก็ทำงานได้ดีเช่นกัน) สำหรับ "ตัวรับ" Xbee ให้เสียบ Arduino เข้ากับคอมพิวเตอร์ก่อน และเมื่อดาวน์โหลดโค้ดแล้ว ให้เปิดจอภาพแบบอนุกรม จอภาพแบบอนุกรมควรแสดงค่า (ประมาณ 20-70 โดยประมาณ)
จากการทดสอบของฉันเอง ฉันพบว่าในพื้นที่เปิดกว้าง ค่า RSSI สัมพันธ์กับระยะทางสูงสุด 15 ฟุต และในพื้นที่ขนาดเล็กถึง 5 ฟุต เนื่องจากมีหลายเส้นทาง ซึ่งเป็นปัญหาทั่วไปเมื่อพูดถึงสัญญาณความถี่วิทยุ ฉันหวังว่าบทช่วยสอนนี้จะเป็นประโยชน์และขอขอบคุณที่อ่าน
ที่มา: RSSI อื่น ๆ ที่สอนได้ RSSI พร้อม Arduinos / xbees สองตัวและเอกสาร Xbee และ Arduino
แนะนำ:
การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: 5 ขั้นตอน
การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: การตวัดเป็นวิธีง่ายๆ ในการสร้างเกม โดยเฉพาะอย่างยิ่งเกมปริศนา นิยายภาพ หรือเกมผจญภัย
การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: 3 ขั้นตอน
การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: ในคำแนะนำนี้ เราจะทำการตรวจจับใบหน้าบน Raspberry Pi 4 ด้วย Shunya O/S โดยใช้ Shunyaface Library Shunyaface เป็นห้องสมุดจดจำใบหน้า/ตรวจจับใบหน้า โปรเจ็กต์นี้มีจุดมุ่งหมายเพื่อให้เกิดความเร็วในการตรวจจับและจดจำได้เร็วที่สุดด้วย
Arduino FR632 RSSI Antenna Tracker: 10 ขั้นตอน
Arduino FR632 RSSI Antenna Tracker: ตัวติดตามนี้ไม่ได้ใช้ระบบ gps ใด ๆ ตัวติดตามนี้ใช้ตัวรับสัญญาณวิดีโอที่หลากหลายและ arduino pro mini ผ่านอินพุตแบบอะนาล็อก arduino อ่านเปอร์เซ็นต์ไซน์ RSSI จากตัวรับ Sinal เปรียบเทียบและเซอร์โวตามสัญญาณ RSSI ที่แรงกว่า NS
เกมเดาอย่างง่าย - Python + XBees + Arduino: 10 ขั้นตอน
เกมเดาอย่างง่าย - Python + XBees + Arduino: นี่คือวิธีการทำงานของเกม: คุณมี 4 พยายามเดาตัวอักษรระหว่าง 'a' - 'h'-> เดาตัวอักษรที่ถูกต้อง: คุณชนะ! ?-> เดาตัวอักษรผิด: จบเกม ?-> เดาตัวละครอื่นนอกเหนือจาก 'a' - 'h': จบเกม ? Arduino ของคุณจะช่วยให้คุณ
FlySky Receiver RSSI Mod: 4 ขั้นตอน
FlySky Receiver RSSI Mod: ฉันเริ่มอาชีพนักบินโดรนโดยใช้เครื่องส่งสัญญาณราคาถูกที่ผลิตโดย Flysky ซึ่งเป็น FS-I6 ไม่ใช่เรื่องเลวร้ายที่จะเริ่มต้น แต่ไม่ช้าก็เร็วคุณจะต้องการอะไรมากกว่านี้ คุณสามารถใช้ FS-I6 ที่เทียบเท่ากับเครื่องส่งสัญญาณระดับดีหรือคุณ