ArduCopter Mega: порт на обычную Arduino (тестим)
пробовал на 2х собаках - реакция нулевая, это же не прыгающий отдельный мячик, а какая то непонятная фиговина
Не знаю, как у вас… У меня В8, последний планер, пиды не менял. Летит. Немного колбасит, но это поправимо.
Коллеги-коптероводы, вот вы тут уже летаете (кто-то ровненько, кто-то расколбасом - но ЛЕТАЕТЕ или, во всяком случае, подлетываете 😉)
Соответственно, уже целый ряд первоначальных этапов прошли. А я застрял на калибровке регулей… У меня квадра в Х-конфигурации.
Залил прошивку В8, прошел этап конфигурации через планнер (последний с Мегапиратом, хотя потом в процессе тестирования проделывал все то же самое и со старым планнером). Теперь при включении коптера слышатся равномерные попискивания регуляторов. Надо их калибровать…
(Дальше будет много букв - но как описать все подробно и коротко - ума не приложу, так что наберритесь, пожалуйста, терпения)
Делаю все как по инструкции в rcwiki написано:
- подключаю USB и аккумулятор
- в планнере захожу в теминал (соответственно, нога А5 на ардуине замкнута на землю!)
- даю команду setup->esc
- получаю приглашение все отключить и подключить - отключаю и USB и аккумулятор
- перевожу ардуину в полетный режим (отсоединяю А5 от земли)
- ручку газа вперед до упора, включаю питание и…
Тут дальше в инструкции сказано: “Дальше по паспорту контроллера”.
_“По паспорту” у меня должно быть:
- бип-бип-бип (три банки на аккумуляторе обнаружено)
- потом через пару секунд бип-бип и можно переводить ручку газа в минимум
- потом длинный би-и-и-и-ип - все закончена калибровка
_
И когда я пробую отдельный регуль калибровать таким образом - все получается (разумеется, при этом “тонкие” провода от регуля должны быть воткнуты в канал газа на приемнике). И после калибровки он больше не пищит, а мотор начинает реагировать на ручку газа - то есть все ОК!
А вот при вышеописанной калибровке всех регулей сразу - они же подключены уже к ардуине, а не к приемнику. И на соответствующем шаге инструкции тут никаких сигналов, которых я жду, не звучит. Просто равномерное “бип” однократное из всех регулей, потом пауза, и снова “бип”…
Приемник тоже, разумеется, подключен (кстати при сетапе приемника ручки туда-сюда дергал и через терминал видел, что настройки изменились с дефолтных 1500 на 1900-1920) - видимо подключен корректно.
Вот про подключение-то и будет основной мой вопрос. На каждом канале приемника воткнут 3-х контактный разъем от удлинителя сервопривода. При этом только один сигнальный провод из каждой тройки идет на соответствующую ногу ардуины (2, 3, 5,6 - как по rcwiki). С канала газа также на +5V и “землю” запитаны плюс и минус (от одного из регулей, но я пробовал и от самой ардуины брать “землю” и 5V - результат тот же). Теперь про ESC-ки. Все плюсы силовые замкнуты в кольцо, от него идет провод на плюс аккумулятора, все граунды силовые также замкнуты в другое кольцо, от него идет провод на минус аккумулятора. А вот с “тонкими проводами” опять же непонятка: сигнальные провода идут на соответствующие ноги ардуины (А8,А9,А10 и А11), а что делать с плюсами и минусами на тонких проводах???
Что я делаю не так?
Правильно ли я все подключил?
И самое главное - как же мне все-таки откалибровать регуляторы-то???
😭(
Заранее благодарен за конструктивную помощь. Только пожалуйста, не отсылайте читать форум - перечитал многократно и делал все по написанному. Потом еще раз перечитал и снова сделал - и так несколько раз, прежде чем решился сюда написать…
как же мне все-таки откалировать регуляторы-то?
Я делал так - соединял провода от всех регулей вместе, после включал это все в порт газа. После ставим стик газа на максимум, подключаем аккум и тд и тп. Чтоб не спаивать все провода, я делал это на плате протоипирования.
Вот про подключение-то и будет основной мой вопрос. На каждом канале приемника воткнут 3-х контактный разъем от удлинителя сервопривода. При этом только один сигнальный провод из каждой тройки идет на соответствующую ногу ардуины (2, 3, 5,6 - как по rcwiki). С канала газа также на +5V и “землю” запитаны плюс и минус (от одного из регулей, но я пробовал и от самой ардуины брать “землю” и 5V - результат тот же). Теперь про ESC-ки. Все плюсы силовые замкнуты в кольцо, от него идет провод на плюс аккумулятора, все граунды силовые также замкнуты в другое кольцо, от него идет провод на минус аккумулятора. А вот с “тонкими проводами” опять же непонятка: сигнальные провода идут на соответствующие ноги ардуины (А8,А9,А10 и А11), а что делать с плюсами и минусами на тонких проводах
Если у вас подключено действительно как написано, то у вас перепутаны вход с выходом. ESC надо подключить к D2, D3, D5, D6. Приемник надо подключить к A8, A9, A10, A11, A12.
Лично я, от приемника подключил только сигнальный провод и питание к Arduino. Питание самой Arduino идет от одного из ESC - т.е. от одного из них подключен средний проводок и подан на вход питания +5В.
Калибруйте от приемника:
- Все сигнальные провода в кучу и на приемник на канал газа. От одного из ВЕС регулей подвести к приемнику питание и минус. Калибруете.
- Подключаем все по указанной схеме на ардуину. Питание приемника лучше взять с +5 ардуины. Подключаем ЮСБ.
- Если в Планере все каналы (Радио-сенсор) работают адекватно, арминг проходит и справа(где полосочки моторов) все двигается соответственно - можно пробовать “взлетать”(без винтов пока);
- Регули могут попискивать если нет сигнала с ардуины (у меня регули с РЦтайма пищали) до того, как сделаешь арминг или после того как сделаешь дисарминг.
Если у вас подключено действительно как написано, то у вас перепутаны вход с выходом. ESC надо подключить к D2, D3, D5, D6. Приемник надо подключить к A8, A9, A10, A11, A12.
Нет, я сам ошибся - подключено так, как у Вас написано. Извините за неточность…
Регули могут попискивать если нет сигнала с ардуины (у меня регули с РЦтайма пищали) до того, как сделаешь арминг или после того как сделаешь дисарминг.
Да, регули именно РЦтаймовские. Про арминг не слышал (пропустил?) - это что такое???
UPD.
Ступил… Это Вы про “включение” двигателей левой рукояткой на приемнике (вниз-и-вправо)?
Пробовал… ничего не происходит… Продолжают попискивать…И моторы не крутятся.
Попискивают регули значит не сделал калибровку ру аппаратуры terminal-> setup radio (кнопка наверху консоли) и всеми стиками и переключателем mode покрутить пощелкать.
Попискивают регули значит не сделал калибровку ру аппаратуры terminal-> setup radio (кнопка наверху консоли) и всеми стиками и переключателем mode покрутить пощелкать.
Сергей, в том-то и беда, что сделал! Причем именно не только при первичной настройке (когда мастер сам просит передатчик поюзать, потом спрашивает про компас, про сонар и так далее), но и через терминал setup->radio
😭(
Вот увидел там же еще команду setup->motor (или это глюки были уже в 4 часа ночи?), но разбираться с этим уже не стал и завалился спать. Приеду сегодня с работы и продолжу изыскания… Но если мне эта команда не привиделась, а реально существует, то чтобы она могла такое делать? Никто не знает?
Кстати, никто из Москвы не желает приехать в гости? Кофе-пиво попить и заодно с коптером разобраться бы…
Жена с дочкой в отъезде - никто не помешает! 😉) Метро “Бунинская Аллея”, если что…
Как вариант, посмотрите в планере, правильно ли у вас подключен приемник, т.е. Roll, Pitch, Yaw, Throttle должны адекватно реагировать на стики. Может у вас просто перепутаны какие то каналы и Throttle на пульте, воспринимается как Yaw…
никто из Москвы не желает приехать в гости?
А кондиционер есть?😃
Как вариант, посмотрите в планере, правильно ли у вас подключен приемник, т.е. Roll, Pitch, Yaw, Throttle должны адекватно реагировать на стики.
Ну вот вечером и гляну. Хотя перепроверял ведь, но мало ли - поздно уже было, мог, уставши, что-то проглядеть…
А кондиционер есть?
Нет, но квартира с окнами на две стороны дома - продувается естественным образом и вполне себе не жарко.
Плюс замечательный вид из окна на коттеджный поселок и дальше лес до горизонта - соответственно свежий воздух, кислород и так далее, что немаловажно при жаре.
UPD.
Но мы так от темы отойдем далеко. Если кто-то сможет подъехать и есть вопросы - в личку. Тут нет необходимости засорять ветку.
Лично я, от приемника подключил только сигнальный провод и питание к Arduino. Питание самой Arduino идет от одного из ESC - т.е. от одного из них подключен средний проводок и подан на вход питания +5В.
Именно на +5V или на VCC???
Просто я с ардуиной работал раньше неоднократно (Duemilanove и Nano) и там +5V был ВЫХОД из ардуины для питаниях устройств типа того же сонара или небольшой сервы, а вовсе не вход по питанию.
При подключении от ESC’a землю его и ардуины соединяете? Нет необходимости объединять вообще все “земли” на одну общую шину?
На счет +5V : Выход это он для всех, а для нас коптероводов он вход 😃) Так как это выход с внутреннего стабилизатора дальше на электронику, а если уже есть 5V то зачем еще внутренний пытать 😃
Именно на +5V или на VCC???
У меня Arduino MEGA 2560, Смотрите раздел Power, я подаю на +5В, т.к. выход от BEC’a - уже стабилизированные +5В.
При подключении от ESC’a землю его и ардуины соединяете? Нет необходимости объединять вообще все “земли” на одну общую шину?
Я на собственном шилде, сделал трехконтактные разъемы для подключения ESC, что бы ничего не паять и не менять (Т.к. это мой первый коптер, то я решил все сделать на разъемах, что бы было просто все модули). Поэтому все земли оказались на плате соединены, а питание взято с одного из ESC.
Привет всем. Люди скажите пжлста, кто подружил В8 с компасом? Уж я его и так и сяк настраивал, но что то аппарат с ним какой то неадекватный… то его на север разворачивает, то несет куда то… то носом при полете рыскает, вообщем нервный аппарат с ним (правда и пайлот из меня можно сказать никакой). Компас отключаешь, совершенно другой агрегат получается, я со своим хреновым опытом пилотирования поднимаю его просто ручкой газа, плавно поднимается, не надо подруливать, вообщем нормальный плавный агрегат… Пиды стоковые. Может в прошивке что то не допилено? Все руки не дойдут доделать ардукоптер посмотреть как у оригинала компас работает. Может у кого есть какие нить мысли в этом направлении?
Кто нить может ткнуть чем нибудь, где в скетче МегаПирата найти вычисление напряжения\тока от сенсора? В настройках есть объявление переменных и значения по умолчанию, а как вычисляются эти значения х.з! Очень нужно подправить код под сенсор от Спаркфана. В Вие настроил, а в МП никак не найду.
А там же вроде в планере подбирается. Configuration - Hardware setup - enable battery monitor и тд
В планнере, это одно. С сенсора подается на Ардуиновы ноги данные с датчика. Их нужно преобразовать в реальные напряжение и ток. Типа
vrav = analogRead(pin_num);
irav = analogRead(pin_num);
vbat = vrav/12.99 // Это коэффициент для расчета реального напояжения на батарее для моего датчика
ibat = irav/7.4 //тоже для тока
В результате получаем напряжение и ток батареи в реальном времени. Полезная вещь, если использовать регули в режиме Никель Кадмиевых батарей. Не отсекает по напряжентию, но без контроля можно угробить батарею переразрядом.
где в скетче МегаПирата найти вычисление напряжения\тока от сенсора
Макрос вычисления тока и напряжения находится в defines.h
#define BATTERY_VOLTAGE(x) (x*(INPUT_VOLTAGE/1024.0))*VOLT_DIV_RATIO
#define CURRENT_AMPS(x) ((x*(INPUT_VOLTAGE/1024.0))-CURR_AMPS_OFFSET)*CURR_AMP_PER_VOLT
А чтение значений и вычисление, находится в модуле sensors.pde, строка 89, функция void read_battery(void)
Макрос вычисления тока и напряжения находится в defines.h
#define BATTERY_VOLTAGE(x) (x*(INPUT_VOLTAGE/1024.0))*VOLT_DIV_RATIO #define CURRENT_AMPS(x) ((x*(INPUT_VOLTAGE/1024.0))-CURR_AMPS_OFFSET)*CURR_AMP_PER_VOLT
А чтение значений и вычисление, находится в модуле sensors.pde, строка 89, функция void read_battery(void)
Спасибо!
Сегодня гонял коптера в комнате. Тесновато для такой бандуры, все же почти 2 кг взлетный вес. Но с Мегапиратом взлетает уверенно. И даже висит вполне терпимо, хоть и рыскает слегка. Но удержать можно. Почему то стартуют сначала нижние моторы. Но не критично, верхние стартуют хоть и позже, но обороты набирают синхронно. Это все в стаб моде. В акро не рискнул поднимать в помещении. Кстати, при разряде батареи коптер стремится завалиться влево и на хвост. Хотя регули калибровал и по отдельности и вместе(по рецепту из этого форума) и в планнере тоже. Никаких отличий не заметил. В субботу поеду на природу с коптером, попробую поднять.