BAIT BOAT для рыбалки

mars
rusanov:

fort21.ru/download/protocol_nmea.pdf пятая страница

www.robosoft.info/ru/technologies/…/nmea0183

Указано что относительно истинного севера дается направление.

Откуда у Вас данные что не относительно севера будет направление.

Ну и пусть теряет, для нас это не принципиально, начнет движение и после этого скорректирует свое направление.

6 метров не так уж много. С какой скоростью должно перемещаться тело, есть практические наработки какие нибудь?

Я время от времени пользуюсь навигаторм с программой Oziexplorer и наблюдаю что приёмник шлёт по компорту. Там есть окно с отображением пакетов NMEA RMC и пр. Плюс в этой программе есть курсор с ориентацией по направлению движения и рисование трека движения на местности. Чтобы установился азимут и перестал вертеться и дёргаться курсор, нужно идти спокойным шагом со скоростью хотябы 3км\час. Трек будет ровный. если плестись медленно трек будет ка бык посс…л и курсор направления будет постоянно шевелиться.

rusanov
mars:

Я время от времени пользуюсь навигаторм с программой Oziexplorer и наблюдаю что приёмник шлёт по компорту. Там есть окно с отображением пакетов NMEA RMC и пр. Плюс в этой программе есть курсор с ориентацией по направлению движения и рисование трека движения на местности. Чтобы установился азимут и перестал вертеться и дёргаться курсор, нужно идти спокойным шагом со скоростью хотябы 3км\час. Трек будет ровный. если плестись медленно трек будет ка бык посс…л и курсор направления будет постоянно шевелиться.

мда… это уже хуже. 1м/с скорость приличная получается у нас все же не гоночный катерок.

mars
Carpfish:

Цена вопроса действительно не большая. Вот как это все в кучу связать. И не будит или эта система чересчур чувствительна.

На сайте, что я ссылку дал есть готовый код для вычисления азимута. Вся эта связка давным-давно работает во всех коптерных ардупилотах мегапиратах и т.д. Полёт по точкам называется.Движков там по 4 , 6 и 8 штук стоит и очень мощных часто с магнитными однако полями не меньше, чем от наших 2 движков. А направление Иван взял правильное. Коптерные автопилоты к нашей задаче приспасабливать не целесообразно. Там 90% кода - это обработка положения коптера в пространстве по 9-10 степеням свободы с гироскопом, барометром высоты и прочей начинкой, которая байтботу как зайцу стопсигнал. Нам бы простенький алгоритм хождения на точку(её запоминание) и возврата домой по компасу и GPS с возможным возвратом в ручное управление в любой момент.

rusanov

Хорошо, тогда заложу в железо компас и акселерометр. Посмотрим что получится. Спасибо за информацию!

Probelzaelo
Carpfish:

Позволю себе посоветовать Вам сервозамедлитель.

Все гораздо проще, расход нужно снизить в аппе где нибудь до 25% и все будет нормально )) ну или стиком шевелить плавнее. А то смешно получается. на ходу поворачиваешь стик, посудина почти подпрыгивает и разворачивается на 180++ )))

mars
rusanov:

Хорошо, тогда заложу в железо компас и акселерометр. Посмотрим что получится. Спасибо за информацию!

Компас HMC5883L на е-Вау стоит 2.25$.
Акселерометр для коррекции на наше корытце можно ставить и дешёвый типа ADXL345 (3.95$). Он шумит, но нам это не страшно, так как скорости у нас достаточно низкие, не то что у летунов, где ставят дорогие малошумящие акселерометры. Мы можем усреднить его показания во времени и шума не будет.
А что за контроллер планируете использовать?

rusanov
mars:

А что за контроллер планируете использовать?

PIC18F242

mars
Carpfish:

Ну будим пробовать. Микширование каналов СН1 и СН2. Уменьшение газа на 40%. Ну и в принципе все. С остальным я потом разберусь.

Если ваши регуляторы работают так, что при максимуме ШИМ (максимальная длительность импульса) соответствует максимуму скорости, то вам нужны такие настройки:
Порядок работы с программой такой:

  1. Подключить аппу к ПК кабелем.
  2. Включить аппу.
  3. Запустить программу.
  4. Вверху окна программы выбрать из списка правильный номер компорта (у меня был COM5. Список состоял из СОМ1 и СОМ5).
  5. Нажать птичку “Отображать данные с передатчика”.
  6. Нажать кнопку считать с передатчика.
  7. Выставить все настройки как на картинке выше.
  8. Нажать кнопку “Записать в передатчик”.
    При шевелении джойстика в окне программы должны правильно шевелиться ползунки 1 и 2 каналов.
Carpfish
mars:

Если ваши регуляторы работают так, что при максимуме ШИМ (максимальная длительность импульса) соответствует максимуму скорости, то вам нужны такие настройки:

Не могу открыть картинку (говорит что больше не существует.

mars

Carpfish:

Не могу открыть картинку (говорит что больше не существует.

Ещё раз попробуем

Probelzaelo
rusanov:

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

у мультироторщиков по 4-8 моторов на борту, но “электрокомпАс”(магнетометр) вполне нормально работает…

rusanov:

PIC18F242

Выбор остановил на PIC потому что привык к работе с пиками? Или по какой то еще причине?
а то есть же готовые платформы с почти готовым софтом от multiwii
понимаю конечно что полностью самостоятельное изготовление с нуля и полностью на своей платформе приносит большее удовольствие, но есть ли смысл делать все с самого низа?

mars
rusanov:

PIC18F242

Контроллер хоть и не популярный у автопилотчиков (они всё больше АВРки-ардуинки применяют), но очень мощный. Для нашей задачи более чем достаточно ресурсов, как я думаю. Судя по картинке, достаточно будет 4 каналов управления. Так как ещё 1 канал как минимум на сброс прикормки нужен, то стандартные аппы на 6 или 9 каналов подойдут. А как вообще планируется инициировать процесс запуска автопилота? Ведь надо как-то объяснить системе, где у нас дом (точка возврата), а где точка лова (точка сброса прикормки). Причём точек лова обычно несколько и их как-то надо назначать, а входов управления для этих функций на вашей схеме не обозначено.

rusanov
Probelzaelo:

Выбор остановил на PIC потому что привык к работе с пиками?

Да, потому что привычней. И есть рядом люди которые подскажут если не соображу чего. Мне кажется если делать на готовых модулях проще, но очень много лишнего в этих модулях, а следовательно и плата лишняя. Можно конечно как конструктор собрать, но это не для меня.

mars:

А как вообще планируется инициировать процесс запуска автопилота? Ведь надо как-то объяснить системе, где у нас дом (точка возврата), а где точка лова (точка сброса прикормки). Причём точек лова обычно несколько и их как-то надо назначать, а входов управления для этих функций на вашей схеме не обозначено.

Думаю для запоминания точек выведу управляющий на корпус. т.е. включили режим “запомнить маршрут” ведем его в нужную точку, с пульта управления приходит команда запомнить координаты. дальше по нажатию этой же кнопки на пульте запоминаются координаты следующей точки. Думаю трёх будет достаточно. Затем катер возвращаем к берегу загружаем прикормкой. и с пульта посылаем команду включить автопилот, повторной командой можно отключить его в любой момент.

Probelzaelo
rusanov:

Мне кажется если делать на готовых модулях проще, но очень много лишнего в этих модулях, а следовательно и плата лишняя.

Не знаю, я пример показал, получается что готовое, не слабо навороченное, не побоюсь этого слова, устройство вполне стоит тех денег. Тем более что наверняка покупка всей той же комплектухи для сборки в розницу, с учетом почтовых расходов по каждому “таракану”, не дай бог, сделают цену равной или даже выше. Но при этом ограничения все равно ни куда не денутся. На том же ХК “аналог” самопальной платы, с процессором попроще, стоит вообще менее 20$. Хочешь не хочешь - а призадумаешься )

mars
rusanov:

Сообщение от Probelzaelo Выбор остановил на PIC потому что привык к работе с пиками? Да, потому что привычней. И есть рядом люди которые подскажут если не соображу чего. Мне кажется если делать на готовых модулях проще, но очень много лишнего в этих модулях, а следовательно и плата лишняя. Можно конечно как конструктор собрать, но это не для меня.

Абсолютно согласен с таким подходом. Более того, на мой взгляд пытаться сделать катерный автопилот из коптерного типа мультивии или мегапирата или ардупилота бессмысленная трата времени. Это будет сложнее, чем по образу и подобию их решения полёта по точкам сделать хороший автопилот специально для катера. Я смотрел исходники программ этих систем и понял, что выковырять оттуда полёт по точкам очень сложно (это во-первых), будет очень сложно увязать это всё с нашим простым объектом управления без навороченных интерфейсов (это во-вторых). Код полёта по точкам в этих автопилотах всего лишь опция. Плюс нужно на ноутбуке в специальной программе задавать маршрут. Зачем нам ноутбук на рыбалке? (это в-третьих). Сами эти готовые платы с избыточными для нас ресурсами стоят более 30$ и это ещё без GPS приёмника (это в-четвёртых). Если удастся сделать эту штуку на пике, то её можно будет сделать и на чём угодно. Хоть на авр-ке, хоть на stm-ке, хоть на любом другом камне.

Probelzaelo
rusanov:

Думаю для запоминания точек выведу управляющий на корпус. т.е. включили режим “запомнить маршрут” ведем его в нужную точку, с пульта управления приходит команда запомнить координаты.

однако наверняка в недрах у твоего радиомодема есть возможность выводить сигналы доп линий всякие DTR/CTS и тп. устанавливать эти линии возможно и программно. может быть копнуть в этом месте, для того чтобы выбирать с удаленного дистанционного пульта, того, кто тут главный? типа началась передача с пульта, значит слушаем пульт, закончилась передача, слушаем GPS пульт можно настроить сразу на передачу комманд в том же самом формате NMEA, как и положено настоящему, бортовому устройству ) а контроллеру в таком случае можно вообще ни чего не сообщать, он сам когда будет просматривать строки, разберется от кого они, от $GP или от $TX ))

Carpfish
rusanov:

Думаю для запоминания точек выведу управляющий на корпус. т.е. включили режим “запомнить маршрут” ведем его в нужную точку, с пульта управления приходит команда запомнить координаты. дальше по нажатию этой же кнопки на пульте запоминаются координаты следующей точки. Думаю трёх будет достаточно. Затем катер возвращаем к берегу загружаем прикормкой. и с пульта посылаем команду включить автопилот, повторной командой можно отключить его в любой момент.

Вот именно то что доктор прописал.Ставить замороченные автопилоты которые следят за высотой, горизонтом, гороскопы и т.д нет не какого смысла. Нужно максимально просто и не дорого (хотя все относительно)

rusanov
Probelzaelo:

однако наверняка в недрах у твоего радиомодема есть возможность выводить сигналы доп линий всякие DTR/CTS и тп. устанавливать эти линии возможно и программно.

У меня там с одной стороны все проще будет, у меня все можно будет делать с пульта.

Probelzaelo
mars:

Я смотрел исходники программ этих систем и понял, что выковырять оттуда полёт по точкам очень сложно (это во-первых)

Там есть, среди прочих конфигураций, еще и AeroPlane - самолет, впрочем существует еще и автомобильный вариант. от катера он отличается только наличием стабилизации крена и руля высоты. мне что то подсказывает что эту прошивку можно почти в лоб заливать в кораблик, просто игнорируя сигнализацию от пары этих, лишних серв.
Основная же видимая сложность в прошивке это попытка делать ее универсальной для самых разных платформ, но не забываем что, кроме проблем перемещения по точкам, там реализованы и достаточно сложные функции стабилизации полета, крены, удержание высоты и тп. В случае применения модема и цифрового канала для связи в обе стороны, вообще нет смысла городить огород. в мозг катера достаточно вбить единственную координату - куда возвращаться в случае потери связи или получения комманды - $TXGO HOME )))
все остальные точки прекрасно могут лежать в управляющем устройстве. мягко гря - получено сообщение прибыл в точку - отправляется комманда что посетить дальше например $TXGO 12.345678, 90.123456. весь маршрут можно будет не только проложить с берега, удобно пользуясь картой гугля, но и в любой момент изменить его на новый.
кстати, бесплатная идея. Если радиоприемный модем(бортовой) настроить на режим - echo, то он будет пропускать сквозь себя всю “переписку” направленную от GPS к контроллеру, а значит ни каких мультиплексоров уже не нужно ))
Впрочем если учесть что ГПС будет бросаться данными 1-2 раза в секунду то времени на то чтобы передать все остальное более чем хватит. Делать ответы ГПС с частотой в 10 раз в сек, как у летунов, для кораблика не имеет смысла. он за это время не проскочит много, тем более что при подходе на место есть смысл остановить мотор и дойти по инерции или вообще подруливать медленно, повернув морду против ветра, чтобы компенсировать дрейф.

mars
rusanov:

Думаю для запоминания точек выведу управляющий на корпус. т.е. включили режим “запомнить маршрут” ведем его в нужную точку, с пульта управления приходит команда запомнить координаты. дальше по нажатию этой же кнопки на пульте запоминаются координаты следующей точки. Думаю трёх будет достаточно. Затем катер возвращаем к берегу загружаем прикормкой. и с пульта посылаем команду включить автопилот, повторной командой можно отключить его в любой момент.

То есть будет вставлена в корпус дополнительная кнопка режима “запомнить маршрут”? По поводу 3 точек я не понял. Я не имел в виду подряд ходить по 3 точкам за один заплыв. Речь шла о том, что допустим у меня 5 удочек и я ловлю ими в 5 точках. Дом - это ещё как минимум 1 точка на берегу (или в неск метрах от него в воде). В идеале я бы сделал так: стоит лодка в начальной точке “дом”. Нажимаем что-то и система запоминает эту координату и знает, что это именно дом (туда надо возвращаться). Далее ведём катер 1 раз на 1 точку лова. По приходу на эту точку запоминаем её как точку №1. Потом едем на точку №2 и т.д. В результате получаем в памяти системы 1 точку “дом” и 5 штук “точка лова” под известными номерами. Возвращаемся в точку “дом”. Это был заплыв для запоминания точек. Вообще-то в идеале и точек “дом” нужно иметь несколько. Далее начинается сама рыбалка. Выглядит так: ставим катер в точку “дом”, каким-то способом задаём маршрут типа “дом1”-“точка лова3”-“дом2”. Включаем автопилот и понеслась. Катер едет в точку лова №3, сбрасывает корм, разворачивается и сам идёт в точку “дом2”. По приходу он останавливается и рыбак доруливает его в ручном режиме до самого берега. Причём если в ходе работы автопилота что-то пошло не так, то можно переключить режим на ручной и управлять вручную в любой момент времени.

Probelzaelo
Carpfish:

Нужно максимально просто и не дорого

Про стоимость в единичном экземпляре говорить вообще не приходится, индивидуальная разработка стОит кучу собственного времени, это как правило главный критерий выбора. Тем более если программа пишется не на ассемблере а например на С, то ее можно переносить с платформы на платформу учитывая лишь некоторые особенности.
вот пример существует платформа Arduino изначально построенная на какой то старенькой Меге, но средой поддерживаются Проц. достаточно разных типов, и возможностей что само по себе подразумевает что учтена особенность каждого из процессоров. Недавно появилась плата на конкурирующем и совсем никак не совместимом процессоре PIC32 весь прикол в том что большая часть програм ардуино прекрасно работает на новом устройстве )) вот уж действительно в PICу Меге )

mars:

сам идёт в точку “дом2”

С этим поосторожнее, а то его там быстро заставят сожительствовать с другими катерами )))))))

А точка возврата все же должна быть единственной, это место старта. Все остальное это могут быть доп базы BASE1, BASE2 … на одной прикорм сыплют, на другой рыбу из бункера вынимают, на третьей снасть зацепляют для доставке, но HOME это святое… при потере связи или другом форсмажоре у робота не должно быть выбора в том, куда вернуться. Где спустили на воду там и спасут если что … ну мало ли, может у капитана управляющий мобильник разрядился … 😉

rusanov:

Ну и пусть теряет, для нас это не принципиально, начнет движение и после этого скорректирует свое направление. 6 метров не так уж много. С какой скоростью должно перемещаться тело, есть практические наработки какие нибудь?

У меня есть личный опыт когда я пытался без компаса, но зато с навигатором, найти нужную точку посреди леса ))) там дорог нет, но в случае если двигаешься то стрелочка показывает направление в котором движешься, надо сказать то еще занятие для мозга, я лично чуть не вскипел, не смотря на то, что направление на стороны света как правило знаешь, выбрать правильно направление на нужную точку не очень легко… Очень рекомендую, попробуй на досуге заняться таким “ориентированием”! Особенно если учитывать, что положение корпуса относительно сторон света тоже придется вычислять заново после каждого маневра, и что для каждого вычисления нужно еще и проехать метров 5-6, то вопрос полезности компаса однозначно пропадет сам собой… сложность алгоритма при таком блуждании с закрытыми глазами - это вообще отдельная тема для отдельного форума …