MultiWii

AlexFreeman

Помогите разобраться с переназначением BUZZER для 328-ой меги.
Нужно подключить пищалку на пины D5 или D6.
Для такой платы но пробовал и на этой.
На стандартной ноге D8 всё работает.
Если в def.h #define BUZZERPIN_PINMODE pinMode (8, OUTPUT);
заменить на #define BUZZERPIN_PINMODE pinMode (6, OUTPUT);
или на #define BUZZERPIN_PINMODE pinMode (А__2, OUTPUT);
то режим ножки D6 или А2 меняется, но зуммер на них не работает.

Если в config.h
заменить //#define OVERRIDE_BUZZERPIN_PINMODE pinMode (D5, OUTPUT); // use A2 instead of d8
на #define OVERRIDE_BUZZERPIN_PINMODE pinMode (A2, OUTPUT); // use A2 instead of d8
то на А2 зуммер работает, а если ставить значения D__5 или D__6 то конфигуратор ругается на MultiWii.cpp: In function ‘void setup()’:
MultiWii.cpp:570: error: ‘D6’ was not declared in this scope

bernie

После перехода на прошивку MahoWii RC3 появилась проблема с удержанием высоты. При включении АХ квадрокоптер 2-3 сек. зависает потом начинает медленно снижаться. Как будто идет на посадку. До это была прошивка MultiWii 2.1, такого не наблюдалось. Контроллер AIOP 2.0, двигатели Sunnusky V2216 KV800, регули Afro 30А.

Владимир#
bernie:

После перехода на прошивку MahoWii RC3 появилась проблема с удержанием высоты.

А вы учитываете другой алгоритм удержания высоты в маховие? Или снижается полюбому , независимо от положения стика газа?

bernie
Владимир#:

А вы учитываете другой алгоритм удержания…

С алгоритмом ознакомился. Может, конечно, я его до конца не понял. Стик газа в среднем положении, коптер висит. Включаю АХ коптер висти 2-3 сек, потом начинает снижаться. При этом реакции на стик газа в диапазоне +/- 25% от центра нет. Даю практически максимальный газ, коптер набирает высоту. Как будто выключается АХ.
Как я понимаю если в режиме АХ коптер по каким-либо причинам теряет высоту контроллер должен добавить оборотов двигателя что-бы поднять его на заданую высоту. Но этого не происходит.

Vasilich11

Уважаемые, подскажите такую штуку - подвес на сервах (понимаю что прошлый век)- настроил - отрабатывает правильно, но есть ньюанс - если какое либо НЕГОРИЗОНТАЛЬНОЕ положение коптера сохраняется более 1 сек. - сервы начинают отрабатывать медленно в противоположную сторону до упора. Что за?

mataor
bernie:

Может, конечно, я его до конца не понял.

не до конца.

  1. баро вообще постоянно включен - смысл его выключать, взлетайте, летайте и садитесь с ним.
  2. при включении идет автокалибровка середины газа, т.е. нужно взлететь, а потом немного опуститься, иногда нужно повторить 2-3 раза - ищется точка висения, и после этого на середине газа держит высоту просто изумительно
Vasilich11:

Что за?

даже и не подскажу - такого быть не должно

djsatan

Привет всем,давно не юзал платку (для коптера,стал летать на ней на самике)
Короче проблема в следующем,
Прошиваю офф 2.3, Плата такая (не реклама) ru.aliexpress.com/item/…/1899319801.html
Что я делаю
В ардуине указываю нужный ком порт
В ардуине указываю плату Arduino Pro or Pro Mini (5V, 16 MHz) w/ ATmega328
Далее лью чистый епром (файл\примеры\EEPROM\eeprom_clear)
Потом в 2.3 захожу в config.h
Раскоментирую define QUADX
Раскоментирую плату define CRIUS_SE_v2_0 // Crius MultiWii SE 2.0 with MPU6050, HMC5883 and BMP085
И лью прошивку,далее всё работает,но
После того как я откалебрую аксель,поставлю полётные режимы (ангел и горизонт) то поторы после арма начинают стартовать с середины стика газа,сам стик работает не с 1000 по 2000 а с 0 по 2000, перекидываю батарейку и реги как будто входят в режим калибровки.
[Что делать ребята ?]

koder76

Дурацкий, может быть, вопрос. А регули калибровали? И если да, то через прошивку или через аппу? И настройки в аппе на 1050 1500 1950 выставленны?

djsatan

Рег стоит Qbrain 4в1,калибровал его,просто реально, не понятно.

koder76

Аппу попробуйте настроить, чтобы по газу в гуи было от 1050 до 1950, и ро другим каналам тоже самое и середина 1500. В факе все хорошо расписано. multiwiifaq.ts9.ru

djsatan

Вот поче му то 1500 везде кроме газа,газ стоит на 0

koder76

аппа какая? Когда газ внизу в гуи по газу должно быть в районе 1000. Проверьте в аппе настройки.

djsatan

Аппа турнига 9х,прошитая,
Я понимаю,газ находится примерно 1000 (990) , но когда армлюсь то положение моторов (мин тротл) идёт не 1000 (1150) а идёт с 0 и достигает 1000 (крутятся моторы) только когда аппа на 1500 газ.
Проблемку то победил,причину так и не понял,после перепрошивки всё гуд,калебрую аксель,ставлю полётные режимы и тогда получается такая борода,
в гуи делаю сброс и всё становится нормально.

koder76

Я тут как бы сам не особо специалист 😃 А полетные режимы как выставляете?

mataor

неоднократная проблема 2.3 мультивия, уже не раз в этой теме появлялась, покопайтесь

AlexFreeman

У меня так же слетают настройки газа на MultiWii 2.3, если устанавливать полётные режимы из WinGui 2.2 (2.3 чего то перестал работать). Пока проблему решаю установкой режимов из MultiWiiConf. И ещё так же слетают настройки VBAT - всегда показывает 25,5 Вольт.

GrafSher
AlexFreeman:

И ещё так же слетают настройки VBAT - всегда показывает 25,5 Вольт.

В 2.2 было такое же. Может и в 2.3 перешло. Точно не помно, но там было связано с тем, что переменная VBATSCALE при первом запуске прошивки копируется в eeprom и дальше используется только сохраненное значение. Т.е после изменения VBATSCALE надо каждый раз очищать eeprom.

или в основном файле прошивки поменять строку
vbat = (vbatRaw*2) / conf.vbatscale; // result is Vbatt in 0.1V steps
на
vbat = (vbatRaw*2) / vbatscale; // result is Vbatt in 0.1V steps
(Это для 2.2)

Посмотрел 2.3
Там тоже самое.
Только в файле MultiWii.cpp
analog.vbat = (v<<4) / conf.vbatscale; // result is Vbatt in 0.1V steps

Попробуйте тоже сделать
analog.vbat = (v<<4) / vbatscale; // result is Vbatt in 0.1V steps

Должно помочь.

Art_Nesterov
GrafSher:

В 2.2 было такое же. Может и в 2.3 перешло. Точно не помно, но там было связано с тем, что переменная VBATSCALE при первом запуске прошивки копируется в eeprom и дальше используется только сохраненное значение. Т.е после изменения VBATSCALE надо каждый раз очищать eeprom.

я проще поступал, в код лезть не нужно. Можно вместо фиксированного делителя на входе поставить потенциометр, выставить правильное значение напряжения по ГУИ, а потом потенциометр заменить на два постоянных резистора (измерив сопротивление, естественно).

GrafSher
Art_Nesterov:

я проще поступал,

Э… не знаю даже что и сказать.

  1. Неужели поменять пару цифр в коде сложнее возни с припайкой/перепайкой резисторов?
  2. Что бы получить максимальную точность измерения желательно использовать максимально широко весь диапазон входного напряжения ADC. Для этого напряжение на выходе резисторного делителя (при максимальном напряжении заряда батареи) должно быть как можно ближе к 5В (но не превышать!). Так что резисторный делитель надо посчитать исходя из этих соображений.