Требуется объединить два скетча
- Войдите на сайт для отправки комментариев
Пт, 03/07/2020 - 23:54
Добрый день.
Необходимо объединить в один скетч два нижеуказанных скетча. Под Ардуино микро или мини, мега2560, нано или предлагать варианты.
https://github.com/povlhp/iBus2PPM
https://github.com/qba667/MAVLinkToIbus
Насколько это реально и что будет стоить?
3тр. man9913@mail.ru
от 5 тыр.
ого! тут творения самого qba667 адаптировать берутся )))
Вы предлагаете это сделать за 5000руб?
Вы предлагаете это сделать за 5000руб?
Вы бы определились, что именно "желать изволите", на уровне блок-схемы, а то непонятки )))
PS флайскай перешитый на 14 каналов имеется
Данные проекты были разработаны для радиоуправляемых моделей с применением контроллера АПМ.
Да, перепрошитый флайскай имеется.
АПМ 2.8 тоже имеется.
Все настроил, все работает.
Сейчас определенные команды от пульта на контроллер идут через IBUS2PPM. Протокол IBUS контроллеру АПМ не знаком поэтому и используется конвертер IBUS2PPM.
А параметры телеметрии идут через MavlinkTOIbus. Причем через него контроллер АПМ только пока может передавать показания датчиков. Вот так это выглядит.
Требуется совместить оба проекта в один, чтобы АПМ с его помощью мог передавать параметры телеметрии на пульт через порт приемника SENS, и при помощи его же поступали команды с пульта через порт приемника SERVO на АПМ в виде PPM сигнала.
Если знакомы с протоколом Mavlink. то задача вообще сделать так, чтобы с пульта можно было отправить определенную комбинацию команд, а эта плата эту комбинацию определяет, как команду "идти в точку А" и передает эту команду затем в АПМ (параметры этой точки уже заранее находятся в памяти контроллера АПМ) и АПМ перемещает модель в эту точку. Эту команду можно считать только с порта SERVO, а там сигнал IBUS. В АПМ можно отправить только по протоколу Mavlink. Поэтому и нужно данное устройство.
У кого есть какие-нибудь предложения?
PPM на 1 ногу APM.2.8, 2 и 3 перемкнуты, так?
Со стандартного порта телеметрии загоняете в IBUS приёмника, через конвертер.
На раздельных контроллерах всё работает?
Похоже, что реализовать хотите прикормочный кораблик, делал всё в рамках стандартной конфигурации.
Непонятно как в вашей схеме GS передаст координаты флайскаю
Да, прошивка АПМ может принять только 8 каналов PPM или я чего то не знаю )))
Все верно. Раздельно они работают. Но через РРМ АПМ воспринимает только ШИМ сигнал. Аппаратура через IBUS может передавать все 14 каналов и через IBUS2PPM АПМ их все видит. Я сейчас сделал так чтобы приопределенной комбинации команд плата с IBUS2PPM распознала команду отправки на точку, но IBUS2PPM не может никак передать эту команду в АПМ, это сможет сделать только Mavlinktoibus через порт телеметрии. Для чего я и хочу их слить воедино.
канал сенсоров, он только обратный. понимает до 16 устройств, полноценная телеметрия завязывается на GS а не на аппаратуру управления, GS и ведёт аппарат на точку, я в качестве GS использовал программу TOWER, это типовое решение
Я сейчас для работы с АПМ использую программу Мишен планер. АПМ принимает команды и передаёт данные через порт телеметрии по протоколу mavlink.
В создаваемом блоке будет конечно же не весь функционал, а только команда "идти на точку А". И все.
Вы не поверите, но я тоже, а других прошивок и не знаю...
Что за прошивка в нём?
у нас разное представление, как это работает в действительности...
Мне представляется так:
По каналу телеметрии APM гонит данные GPS, высоту и данные с каналов PWM, программа GS сохраняет эти данные в лог и как только поступила команда с 7 канала отмечает WP. (если это настроено в мишинпланере) При активации с GS полётного задания идти на точку A к примеру GS и берёт на себя управление, получает от APM текущие координаты, вычисляет требуемые корректировки курса и управляет, вычислительной мощности на борту ведь явно маловато, хотя могу и ошибаться, до технических подробностей не докапывался, работает и ладно, все полётные задания хранятся в программе GS по такой схеме
непонятно каким чудным образом думаете реализовать функции GS в передатчике флайскай, у него мозгов кот наплакал
PS Мишин планер - титанический труд программиста, возможностями программы владею на пару процентов, не обессудь, многого могу и не знать
А совместить можно попробовать, на 328PB, у неё 2 последовательных порта, но надо смотреть скетчи, не пересекаются ли по ресурсам
Это уже не в моих силах, поэтому и ищу того кто возьмётся за это.
Брокли точно сможет, если это вообще теоретически возможно )))
АПМ запоминает точку по команде сам, без участия Мишен планера.
Брокли точно сможет, если это вообще теоретически возможно )))
Нет, уважаемые, простите. Не возьмусь. Я не в теме.
del
Есть еще один проект https://github.com/docice/MavLink2iBUS2PPM правда не могу его запустить, нет необходимой для нее платы, да и дороговата она выходит. Так вот, в этом проекте вроде реализован, тот функционал, который я хочу получить (без отправки на точку). Поэтому хочу найти так же человека, который сможет адаптировать тот проект к примеру под ардуино мега2560 или про микро, вообщем под что то недорогое.
Как мне объяснили, что там проблемка в библиотеке PulsePosition
Как мне объяснили, что там проблемка в библиотеке PulsePosition
Отставить!!!
Там уже всё сделано!
Вход пин 13, выход PPM пин 5
А плата только Teensy 3.1 и выше? А ардуино попроще может можно использовать?
А плата только Teensy 3.1 и выше? А ардуино попроще может можно использовать?
автор пишет, что рабочая конфигурация
Working definition:
As input capture pin 4 must be used and as output compare pin 9 must be used.
То-есть принимает по IBUS, преобразовывает в PPM, далее упаковывает в Mavlink
Всё должно работать без верхней ардуины микры
32U4 любая, про микро в частности
Там еще ПО приёмника вроде надо обновить...
Лучше спрашивать на тематическом форуме, мои познания в сей области весьма скромны
Когда я пробую залить в Ардуино про микро, выходит ошибка.
При загрузке в ардуино мега 2560 вылазит уже вот это
Подсказали, что она якобы будет работать только на ардуино-совместимых плат Teensy с микроконтроллером NXP Kinetis
Подсказали, что она якобы будет работать только на ардуино-совместимых плат Teensy с микроконтроллером NXP Kinetis
автор чётко написал, на чём она будет работать, pro micro , yun, leonardo...
попробовал в версии среды 1.6.12, , это сделать обязательно - For MAVLink communication AltSoftSerial has been used. It will work also with use of hardware serial but not on ProMicro becuase 2nd serial is attached to USB. Do not use SoftSerial or NewSoftSerial - they are too slow. After downloading of AltSoftSerial lib configuration for ARDUINO_AVR_YUN, ARDUINO_AVR_LEONARDO and AVR_ATmega32U4 (in file AltSoftSerial_Boards.h) must be replaced.
Всё компилируется
С этими, то двумя проектами проблем нет, они работают, все четко, а вот этот у этого с этими Ардуинами проблема с библиотекой PulsePosition, так как она заточена, я так понял, под ардуино-совместимых плат Teensy.
https://github.com/docice/MavLink2iBUS2PPM
И поэтому этот проект не компилируется в ARDUINO_AVR_YUN, ARDUINO_AVR_LEONARDO and AVR_ATmega32U4
И еще Вы писали Вход пин 13, выход PPM пин 5 это про какой скетч?
То-есть, без верхнего (на вашем рисунке) блока команды проходят?
5 пин нижней ардуины это выход PPM
Нет не проходят. Команды с приемника выходят с порта SERVO в виде ШИМ-сигнала в IBUS формате и этот сигнал никак не заводится в нижний блок. Поэтому его и нет. А как завезти его в нижний блок ума не приложу. Сам нижний блок сейчас служит для отправки с АПМ показания телеметрии.
Команды с порта SERVO в виде ШИМ-сигнала служат в основном для управления моделью в реальном времени: вправо, влево, назад, вперед, стоп, включить фару.
Есть другие команды для АПМ которые могут управлять контроллером АПМ: идти домой, запомнить точку, идти на выбранную точку. Сейчас эти команды можно отдавать только с Мишен планера или др. аналогичной программы в формате Mavlink. Я хочу прописать в блоке команду для АПМ в формате Mavlink (к примеру "Иди на точку А") и чтобы при определенной комбинации с порта SERVO в виде ШИМ-сигнала, блок отправил эту команду в АПМ.
Поэтому необходимо, чтобы нижний блок мог считывать ШИМ-сигналы с порта SERVO.
Прошивка верхнего девайса IBUS-PPM уже включена в прошивку нижнего девайса IBUS-Mavlink, выход, исходя из текста ppm.h - 5 пин, что вход - не смотрел, автор нижнего девайса как раз и есть автор прошивки передатчика флайскай на 14 каналов
Так и есть, я с ним на эту тему списывался. вот его ответы
Привет, к сожалению, он просто перевел Mavlink и передал его на радио Flysky в качестве данных IBUS.
Но у нас есть около 4 байтов данных канала, которые можно использовать для отправки команды в APM, но это будет сложной задачей. Хотите услышать подробности?
Mavlink To IBUS говорит по протоколу MAVLINK с одной стороны.
Другой конец использует протокол телеметрии IBUS, предназначенный только для передачи телеметрических данных, то есть данных с эмулируемых датчиков.
Однако, используя ia6b с «тем же последовательным» путем, вы можете получить в arduino также данные канала.
Данные канала преобразуются в выходные данные PPM. Но у нас есть 14 каналов. В файле
https://github.com/qba667/FlySkyI6/b...e/source/alt.c есть метод
createPacketCh1114 (но он создает данные канала для каналов 7-14.
Здесь начинается волшебство, вы можете вывести все, что вы хотите для этих каналов.
Затем проанализируйте его в MavlinkToIbus - так вы создадите новый мост IbusToMavlink, и связь будет двунаправленной!
Но для меня это пока сложновато.
отсюда напрашивается вывод, не выпендривайтесь, делайте как все делают, или как говорит Det - "не плодите ненужных сущностей", если Вам даже сам автор сих модификаций говорит, что это очень сложно, здесь точно не найти Исполнителя разбирающегося в этом вопросе лучше автора прошивки Аппаратуры )))
PS Брокли! Уважаю! Интуиция у тебя отменная! )))
Все ясно.
Брокли! Уважаю! Интуиция у тебя отменная! )))
Ошибаешься, это не интуиция.
Эта задача решаема, просто ее стоимость, в моем исполнении, не устроит частника :)
И во сколько это оценивается в Вашем исполнении?
Брокли! Уважаю! Интуиция у тебя отменная! )))
Ошибаешься, это не интуиция.
Эта задача решаема, просто ее стоимость, в моем исполнении, не устроит частника :)
если сам автор сказал, что очень сложно, то понятно, что очень дорого и то это будут обычные костыли...
Канал телеметрии стоит 1000 рублей, простенький планшетик или смартфон с USB-OTG 3-5 т.р. и, смысл ???
TOWER сейчаc недоступен в магазине гугла, но можно скачать, зато имеем - полноценная карта, координаты и высота в реальном времени и масса сервиса
А вообще, лично я так и не понял, что автору нужно, чем не устроил режим AUTO )))
И во сколько это оценивается в Вашем исполнении?
Для вас 800 рублей/час :)
И сколько ориентировочно займет времени?
Согласен с Вами, я так сейчас и управляю, но хотелось бы иметь возможность отправлять на точку модель и с пульта тоже, днем когда яркое солнце экран смартфона бликует и плохо видно экран, а тут включил определенную комбинацию на пульте и все. Поэтому и хочу выяснить во сколько это встанет?
del
так отправляйте, взлетел, щёлкнул тумблером режим AUTO он и пошёл )))
В режиме AUTO модель движется по всем точкам поочередно, а хотелось бы конкретно, на выбранную. Сейчас это возможно только в режиме Guided и только со смартфона.