Выбрать главу

В случае использования готового измерительного модуля, аналогичного представленному на рис. 3.8, сигналы с его выходов можно подавать непосредственно на аналоговые входы полетного контроллера. Если имеется только датчик тока, то схема входных цепей аналогична показанной на рис. 6.47. Измеряемое напряжение силовой батареи необходимо подавать только через резистивный делитель! В противном случае аналоговый вход контроллера выйдет из строя. В стандартной схеме подключения измеряемое напряжение с выхода делителя или модуля подается на вход А1 полетного контроллера, а напряжение с выхода датчика тока — на вход А2. В комментарии внутри кода прошивки предлагается использовать иные номиналы резисторов (33 и 51 кОм), с меньшим коэффициентом деления. Но при указанных номиналах на вход датчика нельзя подавать напряжение 12 В с батареи, т. к. на выходе делителя будет около 8 В.

В прошивке контроллера необходимо сделать некоторые изменения. Включим измерение напряжения. В файле 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. Увеличение этого параметра приводит к увеличению отображаемых значений тока и потребленной энергии. По достижении приемлемой для вас точности измерения тока настройку можно считать законченной.

Настройка программного измерителя потребленной энергии