Hobbylord UltraPWM Brushless ESC 20A Частота 500 Гц

Piranha

Антон, ну не будет он работать! инициализироваться не будет! При старте от обычных мозгов этот регуль будет думать что ты ему полный газ влупил и будет становиться в режим программирования(если у него такой имеется вообще), ТОЧКА!
И да, мыж регуляторами с Леонидом барыжим, у нас тут целая фабрика по производству не ультра пвм регуле, и по этому мы гнобим кетайских конкурентов!!! 😃

Это вопрос из серии -“а почему регулятор I2C не будет работать с мозгом от Капитана Кука”

int=

Теоретически юзать вроде можно, но требует допиливания кода.
Пробовал сркестить реги от Xaircraft с MultiWii.
Подробности тут
Моторы нормально стартовали и обороты регулировались, но на полный газ не выходили 😦 (по ощущениям процентов 50 где-то было 😦 ). В общем, нужно еще в коде рыться…

Adekamer
Piranha:

и по этому мы гнобим кетайских конкурентов!!!

а то нет? рамы делаете ? делаете - почему на китайских не летаете ?
это антикитайский заговор 😃
а жаль - я очень надеялся

Piranha

Рамы делаю потому что проще сделать самому под свои нужды чем за косорукими переделывать 😃

delfin000
int=:

Теоретически юзать вроде можно, но требует допиливания кода.

не нужно юзать. Давно проверено. На обычных мозгах сразу войтет в средний газ при положении газа на пульте в минимум 😉 И не дай бог кто с пропами это попробует. Нужен преобразователь сигнала для него смещающий диаппазон на понижение в 900-1000. И им все равно в каком канале работать. Вот тогда будет все Ок . А так регули конкретно шустрые. Но ХА политику идеотскую ведет. Если бы сделали их как как все делают 1100-2000. То на одних таких регулях наварились бы по полной. На ура бы пошли;)

int=
delfin000:

Нужен преобразователь сигнала для него смещающий диаппазон на понижение в 900-1000. И им все равно в каком канале работать. Вот тогда будет все Ок

Именно это я и пытался сделать в коде мультивия - (понизить управляющие импульсы с 1100-2000 до 200-1200 мс.
Пока правдо безуспешно. 😦

18 days later
int=

Ура! 😃
Вроде что-то получилось! 😃
Сегодня удалось поднять квадр в воздух 😃
Времени было мало, так что как следует все еще не отладил… Но, тем не менее, после небольшой правки кода UltraPWM регули с мультивием у меня заработали 😃

В вс буду тестить по полной 😃
Если кто-нибудь рискнет и проверит на своем квадре раньше, буду оч благодарен 😃

Код:

В config.h
добавить дефайн:

 #define ULTRAPWMOFFSET 900

поменять следущие значения:

 #define MINTHROTTLE 1150
 #define MINCOMMAND 1050
 #define MAXTHROTTLE 1990

в фалйе Output

функцию writeMotors заменить на следующее:

void writeMotors() { // [1000;2000] => [125;250]
      #if defined(MEGA)
        for(uint8_t i=0;i<NUMBER_MOTOR;i++)
          analogWrite(PWM_PIN[i], ((motor[i]-ULTRAPWMOFFSET)>>3));
      #else
        for(uint8_t i=0;i<min(NUMBER_MOTOR,4);i++)
          analogWrite(PWM_PIN[i], (motor[i]-ULTRAPWMOFFSET)>>3);
        #if (NUMBER_MOTOR == 6)
          atomicPWM_PIN5_highState = (motor[5]-ULTRAPWMOFFSET)/8;
          atomicPWM_PIN5_lowState = 255-atomicPWM_PIN5_highState;
          atomicPWM_PIN6_highState = (motor[4]-ULTRAPWMOFFSET)/8;
          atomicPWM_PIN6_lowState = 255-atomicPWM_PIN6_highState;
        #endif
      #endif
    }

В общем еще нужно поиграть со значениями MINTHROTTLE и MAXTHROTTLE, а то сейчас теряются последние 100 мс из диапозона 200-1200 мс…

Мне это не сильно критично (летать на макс газу приходится не так уж и часто 😃 ) Но всеж непорядок… Так что будем эксперементировать дальше 😃

И еще обязательно заменить в output

строку

writeAllMotors(1000);

заменить на

writeAllMotors(MINCOMMAND);