В прошивке контроллера необходимо сделать некоторые изменения. Включим измерение напряжения. В файле config.h найдите секцию battery voltage monitoring. Раскомментируйте строку //#define VBAT. Далее необходимо подобрать опытным путем коэффициент деления в строке #define VBATSCALE таким образом, чтобы отображаемое напряжение соответствовало реальному напряжению батареи, измеренному контрольным вольтметром. В отличие от удобного конфигуратора OSD, где настройки можно менять в режиме реального времени, в данном случае нам придется после каждого изменения параметра заново компилировать и загружать прошивку. Чтобы работала звуковая сигнализация разряда батареи, необходимо раскомментировать опцию #define BUZZER, расположенную немного выше по тексту кода.
Параметр VBATNOMINAL нужен только для телеметрии на LCD-экране и соответствует напряжению заряженной силовой батареи без десятичной точки. Следующие параметры позволяют настроить трехуровневое предупреждение о разряде батареи:
#define VBATLEVEL_WARN1 107 // (*) (**) 10,7V
#define VBATLEVEL_WARN2 99 // (*) (**) 9.9V
#define VBATLEVEL_CRIT 93 // (*) (**) 9.3V
Параметр #define NO_VBAT необходим для отключения сигнализации разряда, если силовая батарея вообще не подключена. Такая ситуация возникает, например, при подключении полетного контроллера к разъему USB — контроллер работает и пытается измерить напряжение, но силовой батареи нет.
Далее приступим к настройке измерителя тока. Во время регулярных полетов нас интересует не мгновенное значение потребляемого тока, а количество потребленной энергии в миллиампер-часах. Мы можем приблизительно предположить, сколько еще энергии осталось для полета, а также оценить степень износа самой батареи, насколько ее реальная емкость соответствует заявленной. В прошивке MultiWii v.2.3 предусмотрены два способа оценки потребленной энергии: более точный аппаратный и приблизительный программный на случай, если аппаратный датчик тока отсутствует.
Настройка аппаратного измерителя тока и потребленной энергии
Раскомментируйте строку //#define POWERMETER_HARD.
На выходе датчика тока присутствует постоянное напряжение, значение которого прямо пропорционально току, протекающему через измеритель. Полетный контроллер измеряет это напряжение и пересчитывает в ток. В режиме нулевого тока напряжение обычно не равно нулю. Подберите константу в строке #define PSENSORNULLl таким образом, чтобы при выключенных моторах в GUI или показаниях телеметрии отображалось нулевое значение тока. Теперь приступим к настройке коэффициента пересчета напряжения, поступающего с датчика тока, в отображаемое значение тока. Вам понадобится ваттметр с функцией измерения тока или мощный амперметр, включенный в разрыв провода силовой батареи.
Примечание
Дальнейшие действия потребуют от вас особой осторожности, поскольку измерения будем проводить в рабочем режиме, с установленными винтами. Надежно закрепите квадрокоптер на земле при помощи груза или растяжек. Позаботьтесь о том, чтобы провод USB и посторонние предметы не попали в плоскость вращения винтов.
Активируйте моторы и дайте газ примерно 60–70 %. Сравните показания контрольного прибора со значением тока в GUI или данных телеметрии. При необходимости измените значение параметра #define PiNT2mA. Увеличение этого параметра приводит к увеличению отображаемых значений тока и потребленной энергии. По достижении приемлемой для вас точности измерения тока настройку можно считать законченной.
Настройка программного измерителя потребленной энергии
При отсутствии датчика тока потребленная энергия рассчитывается приблизительно, через время полета и некую усредненную эмпирическую константу, значение которой имитирует потребляемый ток. Разумеется, в этом случае в данных телеметрии мы видим только потребленную энергию. Точность расчета зависит от аппаратной конфигурации коптера, условий и стиля полета. После настройки точность составляет около 10 %. Если совершить около десятка реальных полетов с использованием ваттметра и после каждого полета корректировать поправочный коэффициент, то можно достичь точности около 5 %. Но любое изменение аппаратной конфигурации, включая использование батарей разного веса и мощности, будет приводить к существенному ухудшению точности.
Убедитесь, что напряжение батареи измеряется максимально точно. Раскомментируйте строку //#define POWERMETER_SOFT. "Залейте" прошивку в контроллер. Далее потребуется несколько раз совершить последовательность действий:
Читать дальше