Датчик напряжения представляет собой простейший делитель напряжения из двух постоянных резисторов. Напряжение с выхода делителя поступает на аналоговый вход микроконтроллера, который при помощи встроенного АЦП измеряет напряжение. Делитель необходим, т. к. на вход микроконтроллера категорически нельзя подавать напряжение батареи напрямую. Это приведет к выходу микроконтроллера из строя. Как минимум, будет испорчен этот аналоговый вход.
Датчик тока устроен несколько сложнее. Это либо низкоомный шунт — мощный резистор с очень низким сопротивлением, включенный последовательно в разрыв силовой цепи, либо датчик Холла, реагирующий на напряженность магнитного поля, возникающего вокруг силового провода. В том и другом случае требуется дополнительная схема, операционный усилитель, усиливающий слабый сигнал датчика.
Существуют готовые измерительные модули. Пример такого модуля изображен на рис. 3.8. Этот модуль кроме резистивного делителя напряжения и токового шунта содержит импульсный источник с выходным напряжением 5,25 В и током 3 А для питания бортовой электроники.
Рис. 3.8. Модуль для измерения напряжения и тока силовой батареи.
Датчики тока и напряжения имеют погрешности, вызванные разбросом параметров элементов, поэтому их показания корректируют программно, при помощи калибровочных констант, которые необходимо один раз подобрать при настройке коптера.
На основании текущей продолжительности полета, напряжения и тока система телеметрии может рассчитать количество потребленной от батареи энергии в миллиампер-часах. Иногда этот параметр более информативен, чем просто текущее напряжение батареи, потому что позволяет знать, сколько батарея "отдает" на самом деле, в отличие от надписи на этикетке, и приблизительно оценить оставшееся время полета.
Датчик температуры применяется нечасто, в основном в мощных квадрокоптерах с большим энергопотреблением, когда силовая батарея может работать в критических режимах. В качестве датчика может использоваться терморезистор или термодиод, меняющие сопротивление в зависимости от температуры, а также интегральный термометр, подключаемый к модулю телеметрии по шине I2С или I-Wire.
Барометр, акселерометр и компас, как правило, используются штатные, установленные на плату полетного контроллера. Полетный контроллер транслирует полученные и обработанные данные в модуль телеметрии.
Модуль GPS обычно тоже подключается к полетному контроллеру, который обрабатывает поток протокола NMEA, выделяет из него координаты и на их основании вычисляет количество спутников, линейную скорость и дистанцию до точки взлета для включения в поток данных телеметрии. Современные прошивки позволяют подключить модуль GPS непосредственно к модулю телеметрии, но в случае с квадрокоптером это не имеет практического смысла — данные GPS нужны в первую очередь полетному контроллеру.
Радиоприемник генерирует сигнал RSSI (Received Signal Strength Indication — индикация уровня принимаемого сигнала) для оценки уровня радиосигнала, поступающего на антенный вход приемника. Сигнал RSSI может присутствовать на выходе приемника в виде постоянного напряжения, пропорционального уровню принимаемого сигнала, или передаваться в стандартной форме через один из выходных каналов управления РРМ или SBUS. В первом случае модулю телеметрии достаточно измерить напряжение, во втором нужно распознавать сигнал радиоуправления, что требует несколько больших ресурсов. К сожалению, дешевые популярные приемники редко оснащены выходом RSSI, хотя их чипсет имеет такую возможность. Некоторые приемники можно прошить альтернативной прошивкой, которая выводит сигнал RSSI в качестве отдельного канала. Также приемник является источником данных о положении рукояток управления, но эти данные обрабатывает и выводит в поток телеметрии полетный контроллер.
Полетный контроллер также является источником собственных данных: режим полета, обороты двигателей, наличие ошибок в шине данных I2С, время полета.
Изображенный на рис. 3.9 вариант реализации телеметрии с использованием OSD наиболее популярен, особенно среди начинающих пилотов. Более того, он просто необходим при полетах по камере, иначе полет с большой вероятностью закончится разряженной батареей или потерей ориентации и утратой коптера. Поэтому мы рассматриваем модуль OSD как часть системы телеметрии.