Оглавление:

RSSI для определения расстояния с помощью радиочастотных модулей (Xbees): 4 шага
RSSI для определения расстояния с помощью радиочастотных модулей (Xbees): 4 шага

Видео: RSSI для определения расстояния с помощью радиочастотных модулей (Xbees): 4 шага

Видео: RSSI для определения расстояния с помощью радиочастотных модулей (Xbees): 4 шага
Видео: Радиомодули EBYTE E22 LoRa 433мГц, обзор и тест дальности 2024, Ноябрь
Anonim
RSSI для определения расстояния с помощью радиочастотных модулей (Xbees)
RSSI для определения расстояния с помощью радиочастотных модулей (Xbees)

Xbees - это небольшие радиочастотные модули, которые могут быть полезны для отправки информации туда и обратно, а также для некоторых других, более специфических целей. В этом проекте я использую их для получения значений индикатора мощности принимаемого сигнала (RSSI), чтобы оценить расстояние между двумя модулями Xbee. Я хотел поделиться своей работой над этим проектом, потому что я видел очень мало полных руководств по получению RSSI с Xbees. Я обнаружил, что один простой способ прочитать значения RSSI Xbee и интерпретировать их - это Arduino. Для этого урока вам понадобится небольшое количество знаний Arduino, чтобы иметь возможность загружать данный код и редактировать его при необходимости. Встроенный в Arduino последовательный монитор может отображать значения RSSI, а затем, если вы хотите пойти дальше, вы можете подключить светодиодный или ЖК-экран, чтобы интерпретировать их без компьютера.

В этом конкретном руководстве используется один модуль Xbee3 «передатчик», который запрограммирован в Micropython, и один «приемник» xbee3, который подключен к Arduino Uno через экран Xbee. Также можно отправлять пакеты, подключив их обоих к их собственному Arduino Uno, что описано в чьем-то онлайн-руководстве здесь. Модули Xbee3 необходимы, потому что это единственные модули Xbee, на которых работает Micropython, и они являются одним из немногих Xbee, предлагающих протокол 802.15.4, который включает значения RSSI в отправленные пакеты.

Запасы

  • XBee3 (x2)
  • антенна u. FL (x2)
  • Arduino Uno - для этой модели разработан щит Xbee
  • Соединительный шнур между Arduino Uno и USB-портом компьютера (USB A - USB B)
  • XBee Щит (x1)
  • Адаптер XBee - USB (x1)

Примечание. Было бы неплохо получить два адаптера, чтобы оба Xbees можно было настроить одновременно, а также это хорошо для отладки, потому что вы также можете отправлять пакеты через XCTU.

Чтобы сделать его автономной системой (необязательно):

  • Портативный блок питания, который не отключается при низком потреблении тока или при подключении аккумулятора к разъему USB.
  • Батарея к разъему Arduino и батарея 9 В

Шаг 1. Настройка оборудования

Настройка оборудования
Настройка оборудования
Настройка оборудования
Настройка оборудования

Физическая настройка довольно проста. Припаяйте несколько контактов разъема к экрану Xbee (вдоль нижней части снаружи, где есть отверстия), а затем вставьте его на место в верхней части Arduino. ВОПРОСЫ НАПРАВЛЕНИЯ - Совместите каждый Xbee с белой дорожкой на печатной плате в верхней части экрана («приемник») или адаптера («передатчик»). Для подключения антенн u. FL я предлагаю это руководство от Sparkfun.

Шаг 2: настройка

Конфигурация
Конфигурация
Конфигурация
Конфигурация
Конфигурация
Конфигурация

Настройка компьютера может быть немного сложнее. Сначала загрузите XCTU. Эта программа используется для настройки Xbees. Документация Xbee3 - бесценный ресурс по XCTU и настройке. Затем выполните следующие действия с каждым Xbee, подключенным к компьютеру через адаптер (светодиод 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.

Рекомендуемые: