Я разрабатываю сенсорные модули с низким энергопотреблением, которые будут распределены по достаточно небольшой площади. Все модули питаются от батареи и должны работать достаточно долго, без необходимости перезаряжать / заменять батареи (чем дольше, тем лучше, подумайте, по крайней мере, несколько недель, если не месяцы или годы). Идея состоит в том, что каждые полчаса или час модуль выйдет из режима низкого энергопотребления, возьмет несколько выборок и передаст данные в центральный регистратор данных. Центральный регистратор данных, вероятно, будет питаться от стены, поэтому низкое энергопотребление не так необходимо. Я не ожидаю, что какие-либо модули будут дальше, чем 100 м от центрального регистратора, вероятно, намного меньше.
Я определил несколько возможных модулей приемопередатчика, которые потенциально могут работать:
- ALPHA-TRX433S, 433 МГц
- ALPHA-TRX915S, 915 МГц
- Микрочип MRF89XAM8A, 868 МГц
- Микрочип MRF89XAM9A, 915 МГц
Из того, что я прочитал, все эти модули работают в нерегулируемых диапазонах FCC и должны быть безопасными для использования. Модули Alpha рекламируют диапазон 300 м, но я не могу понять, какой будет максимальный диапазон модулей Microchip. Как бы я мог рассчитать это?
Кроме того, поскольку у меня есть выбор диапазонов, которые я должен выбрать и почему (то есть, что я получу от 915 МГц до 433 МГц и что я теряю)? В порядке каких параметров я бы посчитал наиболее важными:
- Малая мощность
- Дальность передачи (чем больше, тем лучше)
- Невосприимчивость к другим факторам окружающей среды (например, Wi-Fi / сотовые сети, работающие микроволновые печи, стены / физические препятствия, температура и т. Д.). Целевое использование в жилых помещениях, и, вероятно, будут существенные колебания температуры (скажем, от -20 ° C до 50 ° C).
- Скорость передачи данных. Это не очень важно, так как я ожидаю очень мало данных на выборку (максимум несколько байтов).
Другой вопрос, который у меня есть, - как обрабатывать несколько модулей, пытаясь передавать данные одновременно. У меня есть несколько мыслей о том, как смягчить это, но я не уверен, какое решение продолжить:
Используйте случайное смещение времени для передачи данных. Надежда на то, что столкновений просто избежать. Это, вероятно, будет самым простым для реализации и потенциально будет использовать наименьшее количество энергии. Тем не менее, это не гарантирует, что не будет никаких столкновений. Кроме того, получение хорошего источника случайности или уникального псевдослучайного начального числа может вызвать проблемы, хотя и не является неразрешимым.
При пробуждении и попытке передачи проверьте, выполняется ли передача в данный момент. Просто дождитесь окончания передачи перед отправкой данных. Тогда возникает проблема, как мне обрабатывать несколько датчиков в состоянии ожидания, поскольку они могут потенциально решить, что последняя передача завершилась, и оба начнут передачу одновременно.
Какое-то другое решение.