MultiWii
какие значения в проекте #define MAXTHROTTLE?
Посмотрю попозже, сейчас нет возможности.
как калибровали регули? с пульта или через контроллер?
И так и так
Если в настройках регуляторов что то меняли по незнанию попробуйте заново его перешить.
На настройках по умолчанию (кроме Throttle min и Throttle max) должно работать, у меня проблем с ними небыло ни разу.
В регулировки не лазил. Но перешить попробую. Тем более странно, что все 4 регуля ведут себя одинаково.
Все верно, с куком летал.
может большие вибрации ?
без включенного акселя (АСС) так же ведет себя квадр ?
Отключал все датчики, результат один.
Такое впечатление, что автоматом ограничивается газ.
А моторы правильно крутятся? В нужную сторону?
Да, все правильно. Он подпрыгивает см до 10, а потом снижается. Выглядит как програмное ограничение высоты. Пробовал и другие винты, которые по грузоподъемности сильнее. Эффект один и тот же.
Пока не добрался до отпайки регулей. Есть подозрение, что срабатывает защита от перегрева (вроде она в прошивке регулей есть).
На данный момент посмотрю в сторону работоспособности регулей и настройки регулей (хотя в настройках мало чего можно поменять, чтобы оно не летело) 😃
батарея какая ? может токоотдачи не хватает ?
На куке хватает, на криусе нет 😃
Батареи разные пробовал, итог один
У меня такое было при большой вибрации. Не знаю, поможет ли отключение акселя. Там ведь ещё и гиры есть… 😃
вопрос по учету тока потребления. В MultiWiiConf есть три показометра POWER, PowerAllarm, Volt
C последними двумя все ясно как день - указываем емкость батареи для оповещения о разряде на А3 подаем через делитель напряжение батареи.
А вот для расчета первого есть два дефайна в секции
**** powermeter (battery capacity monitoring) ****
#define POWERMETER_SOFT - как написано в вики при использовании плющей относительно точно расчитывается мощность потребления коптера исходя из выдаваемого газа и падения напряжения батареи.
Но у меня применен ACS756SCA-100B в качестве датчика тока, поэтому сингал с него подал на А2 (дефайн CAMTRIG закомментирован)
и раскоментировал
#define POWERMETER_HARD
а теперь вопрос - как и где я могу увидеть ток потребления ?
или как проконтролировать правильность учета расхода энергии?
multiwii 2.2 и еще где смотреть уровень RSSI по
//#define RX_RSSI
//#define RX_RSSI_PIN A3
?
Коллеги, может уже кто делал - нужен код, который перенаправляет какой либо AUX канал приходящий по CPPM на свободный PWM выход контроллера?
перенаправляет какой либо AUX канал приходящий по CPPM на свободный PWM выход контроллера
Смотрите, как реализовано управление подвесом: SERVO_TILT
S_PITCH = TILT_PITCH_MIDDLE + rcData[AUX3]-1500;
S_ROLL = TILT_ROLL_MIDDLE + rcData[AUX4]-1500;
И у меня просьба - нужен код который будет при арме/дизарме переключать 50% / 100% уровень на на свободном PWM выходе контроллера.
(И куда его вставлять, подскажите…)
Это нужно для автоматического включения-выключения записи на камере.
а теперь вопрос - как и где я могу увидеть ток потребления ?
конкретно ток - никак…
поверметр софт - чисто вычислительный, если есть датчик тока то только поверметр хард
И у меня просьба - нужен код который будет при арме/дизарме переключать 50% / 100% уровень на на свободном PWM выходе контроллера.
(И куда его вставлять, подскажите…)
Ну для включения камеры есть дефайн
//#define CAMTRIG
задействуйте его или в основном коде найти и дописать (нечто вроде, разумеется изначально определите свою переменную)
if (armed) {LEDPIN_ON; CAM_ON=1500 }
else { CAM_ON=2000 }
Сейчас подумал еще, или можно задействовать существующую цепь со светодиодиком
конкретно ток - никак…
поверметр софт - чисто вычислительный, если есть датчик тока то только поверметр хард
Понятно только на OSD вывести и наслаждаться
Смотрите, как реализовано управление подвесом: SERVO_TILT
Если бы всё так просто было… Ещё надо правильно привязать и инициализировать таймера. Хочу чтобы при схеме HEX6X AUX1 дублировался на пины motor[6] и motor[7], пока с этим не разобрался…
Хочу чтобы при схеме HEX6X AUX1 дублировался на пины motor[6] и motor[7]
Тут тоже тогда просто, смотрите, как для вашей платы инициализируется окто
Пример для меги2560
#if (NUMBER_MOTOR > 6)
#ifndef EXT_MOTOR_RANGE
OCR2B = motor[6]>>3; // pin 9
OCR2A = motor[7]>>3; // pin 10
#if (NUMBER_MOTOR > 6)
// timer 2 is a 8bit timer so we cant change its range
TCCR2A |= _BV(COM2B1); // connect pin 9 to timer 2 channel B
TCCR2A |= _BV(COM2A1); // connect pin 10 to timer 2 channel A
а потом тут
#ifdef HEX6X
motor[0] = PIDMIX(-1/2,+7/8,+1); //REAR_R
motor[1] = PIDMIX(-1/2,-7/8,+1); //FRONT_R
motor[2] = PIDMIX(+1/2,+7/8,-1); //REAR_L
motor[3] = PIDMIX(+1/2,-7/8,-1); //FRONT_L
motor[4] = PIDMIX(-1 ,+0 ,-1); //RIGHT
motor[5] = PIDMIX(+1 ,+0 ,+1); //LEFT
дописываете нужные “моторы”
По идее, должно заработать…
(хотя, я бы объявил аппарат октой, да поменял пидмиксы окты на описанное в нижней цитате…)
if (armed) {LEDPIN_ON; CAM_ON=1500}
else { CAM_ON=2000 }
Алексей, спасибо большое, что откликнулись!
Но я вас очень прошу, укажите более подробно куда, что прописать. Я конечно в детстве программировал на Паскале, но тут мне это не сильно помогает…
Если есть возможность конечно!
Фух, полетело только на mahowii, причем сразу без проблем, немного P задрал и rate до 0.99, а то вяло на стики реагировал. Но осталось проблемка: что в multiwii крутят чтобы коптер шустрее/точнее в горизонт возвращался? При отпускании стиков небольшой наклон всеравно сохраняется и коптер сильно уводит в сторону.
Видео очень коротенькое записал:
www.youtube.com/watch?v=cjT2CYs-pqM
После наклона отпускаю стик, коптер почти возвращается в горизонт, но продолжает сильно дрейфовать, сохраняя наклон (почти специально в занавески полетел, не трогая стики).
По поводу запуска в комнате говорить не стоит, в ней гексу на пирате запускаю без особых напрягов (пруф с квадриком из аналогичной по размеру комнаты).
Во вложении нынешние настройки.
заранее спасибо =)
Глеб опустите I по левелу до 0 или до 8 и будет сразу в горизонт возвращаться.