สารบัญ:

RSSI ถึงระยะทางด้วยโมดูล RF (Xbees): 4 ขั้นตอน
RSSI ถึงระยะทางด้วยโมดูล RF (Xbees): 4 ขั้นตอน

วีดีโอ: RSSI ถึงระยะทางด้วยโมดูล RF (Xbees): 4 ขั้นตอน

วีดีโอ: RSSI ถึงระยะทางด้วยโมดูล RF (Xbees): 4 ขั้นตอน
วีดีโอ: Which RF Module is better for the Long Range 2024, กรกฎาคม
Anonim
RSSI ถึงระยะทางด้วยโมดูล RF (Xbees)
RSSI ถึงระยะทางด้วยโมดูล RF (Xbees)

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

แนะนำ: