RSS лента

Панкратов Сергей

Продвинутый контроллер для Bait Boat.

Рейтинг: 5.00. Голосов: 3.
16.02.2019 в 16:50 (2029 Показов)
Назначение, функции.

Контроллер создавался под свои нужды. Хотя, думаю что он подойдет по функционалу многим строителям Bait Boat.
Работает с бюджетной аппаратурой FlySky FS-i6.
Контроллер будет крайне полезен коллегам, кто хочет объективно и точно оптимизировать винтомоторную группу на кораблике.
Для этого имеется отображение на экране пульта:

1. Напряжение батареи на борту.
2. Ток потребления от бортовой батареи.
3. Мощность потребляемая от батареи.
4. Температура датчика ( температура двигателя).
5. Скорость кораблика.
К примеру, меняя винт- можно объективно видеть какое потребление идет на разных скоростях и нет ли перегрева мотора..

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

6.Номер точки.
7. Дистанция от кораблика до точки.
8. Ошибка меж курсом кораблика и азимутом на точку.
9. Глубина от эхолота.
То есть имея только пульт и кораблик можно находить глубокие места, перепады глубины, запоминать позиции и в последующем точно заплывать в эти позиции.
( Эхолот "на воде" не тестировался, только на столе. Более подробная информация будет после испытаний.)

Кроме того контроллер расширяет функционал FlySky FS-i6:

10. Дискретный канал от тумблера на два дискретных канала- включение габаритов и фары.
11. Включение питания эхолота.
12. Управления двух серв на бункера от одного свободного стика пульта. Отклоняем влево- выгружается левый бункер, вправо- правый бункер.

Для повторения этого проекта будет необходимо:
- сделать плату методом ЛУТ.
- распаять элементы на плату.
- прошить контроллер либо посредством ST-LINK, либо посредством USB-TTL конвертора.
- задать параметры GPS модуля через программу u-center посредством USB-TTL конвертора.
- перешить пульт FlySky FS-i6 по известной методике посредством USB-TTL конвертора моим доработанным файлом.

Подробнее по всем этапам:

Печатная плата.
Покупной модуль с контроллером STM32 упрощает изготовление печатной платы да и прилично дешевле по сравнению с тем что покупать россыпью.
https://ru.aliexpress.com/item/1pcs-...274233edYag9BG
1. Два файла платы. Одна побольше другая поменьше. Есть разница кроме размера-
Шунт на одной из них составлен из 4-х параллельных по 0.02 ома, на другой- последовательно-параллельно 0.005 ома. Общее сопротивление шунта 0.005 ома. Типоразмер резисторов шунта 2512.


2. То что не нужно под ваши желаемые функции- можно не паять.
3. Добавлен третий дискретный канал, для фары. Будет работать или с крутилкой, или с трехпозиционным тумблером.
На схеме третий канал присутствует , на плате не разведено. На фото можно увидеть реализацию на монтажке.
4. Добавлена телеметрия температуры. Есть и на схеме, есть и выводы под термосопротивление на плате..
6. GPS модуль... Можно NEO-6M, очень дешево, но менее точно.
Сам использовал в тестах BN-800, но он был относительно дорог, сейчас смотрю цены сильно снизились.
Заказал еще такой-
https://ru.aliexpress.com/item/small...32aa33edQFYd9Q
и такой-
https://ru.aliexpress.com/item/small...274233edSdRKBw
7. Куда на плату паять какие детали, номиналы- хорошо видно на фото собранной.


8. Диод Шотки- любой, подходящий по размеру
9. Резисторы 330, 680, 1к- в принципе все можно 680 или 1 к.. Не принципиально. Но указанные номиналы- "более правильные".
10. Модуль GPS нужно будет сконфигурировать на выдачу двух сообщений- GNGGA и GNVTG,
Проще это делать в U-center. В архиве прогу положил.

Прошивка процессора STM32.

Шить можно либо посредством ST-LINK с программой ST-LINK Utility, либо посредством USB-TTL конвертора c программой Flash Loader Demonstrator . Как это делать в инете полно информации.
В документации два файла SerPanRC_Boat_NEO-6.hex и SerPanRC_Boat_NEO-8.hex, один при использовании модулей NEO-6M, другой для NEO-8, по названию файла видно.

Модуль GPS.

Модуль необходимо сконфигурировать на выдачу двух сообщений ( мессаг) GNVTG и GNGGA ( GPVTG и GPGGA- для NEO-6M) со скоростью 38400 бод и с частотой повторения 2-5 гц.
Конфигурируется в программе U-center через подключение модуля к ПК посредством USB-TTL конвертора.
Скриншоты экрана при конфигурировании в папке документации.
Первым делом изменяете скорость с 9600 на 38400
Далее меняете частоту повторения изменяя период с 1000мс на 200-250-400-500. Подойдет любой из этих, установите к примеру 400. В этом случае мессаги будут идти 2.5 раза за 1 секунду.
Далее изменяете набор мессаг, по умолчанию их больше чем нам нужно.
Последним пунктом сохраняете все изменения одной командой- Save Config.


Более ничего менять не нужно!! Иначе имеете возможность окирпичить модуль..

Пульт.

Необходимо перешить пульт FlySky FS-i6 по известной методике посредством USB-TTL конвертора моим доработанным файлом. Файл- это таже известная крайняя прошивка 1.7.5_fast_telemetry, только мной в ней изменены наименования параметров телеметрии.
Файл прошивки и программа для прошивки в архиве по ссылке ниже.
Процедура следующая-
1.Распаковываете файл.
2. Подключаем пульт посредством FTDI к USB ( так же что и раньше делали- если уже шили)
3. Смотрим под каким com-портом FTDI ( вот тут может быть небольшая проблема- если номер выше чем 8, у меня так было, то в свойствах этого соединения нужно принудительно назначить номер менее чем 9)
4. На пульту заходим в меню и запускаешь пульт на обновление- экран станет черным
5. Запускаем экзешник ( у меня хоть и 64-битная система, но работать нормально стал только обычный экзешник)
6. Выйдет окно- предложит выбрать сом-порт, просто нажимаем нужную цифру и энтер ( у меня сом8- соответственно 8)
7. В окне будет предложены файл на выбор для загрузки-
выбираем предложенный номер.
8. После нажатия идет загрузка, по завершению пульт перезагружается.
9. Далее под свои предпочтения можно вывести в нужной последовательности параметры телеметрии на экран пульта, фото того как это у меня- в документации из архива.

Подключаем плату в кораблике по схеме соединения платы контроллера . Нагрузки на дискретные каналы- до 1 ампера, до 3S, но не индуктивные. Если индуктивные- то параллельно им нужно ставить диоды.




Настройка пульта.

Для заявленных функций используем 5, 7, 8, и 10 канал.
На эти каналы назначил следующие управляющие тумблера-крутилки-джостики ( вы можете изменить по своим предпочтениям) :
5 канал- крутилка VrA, поворотом выбирается номер точки, на экране он отображается в строке "Krs" значением после запятой.
10 канал- Swb, при его опускании на время от 0.3 до 5 сек происходит запоминание позиции в которой в это время находится кораблик, при этом вы увидите что Dist ( дистанция ) обнулится ( совпадут позиция кораблика с позицией задания) .
Позиция сохранится под номером, который выбран ранее крутилкой и в этот момент отображается на экране.
7 канал, трехпозиционный SwC, Нет огней- габарит+фара- габариты. Если приемник на кораблике не видит пульт ( нет связи) - то габариты включаются автоматом. На случай проблем в темное время.
8 канал- SwD. Включение эхолота.
4 канал, стик. Отклонение от центра влево- левый бункер, вправо- правый. Сервомашинки подключаются к плате контроллера.
Внимание: в положении "бункер опущен" положение сервы нужно выставить механически. "Расходами" в пульту и "конечными точками" можно будет откорректировать только положение "бункер поднят".


Телеметрия на экране.

Krs - отображение азимута на выбранную точку, для наглядности выполнено так как мы смотрим на циферблат часов. Сам кораблик плывет в направлении 00 минут, цель находится в направлении куда указывает стрелка значения минут в этой строке. цифра после запятой- номер выбранной точки.
Стоит учитывать что если нет движения - то значение в этой строке- это истинный азимут цели относительно места, в котором находится кораблик. То есть куда направлен нос корабля не имеет в этом случае значения.
На небольшой скорости значение азимута будет "скакать".

Dist - расстояние до выбранной точки в метрах, значение дробное.

Curr- потребляемый ток, в амперах, значение дробное.

Powr- потребляемая мощность, в ваттах, дробное.

ExtV- напряжение в вольтах, дробное.

Temp-температура в градусах Цельсия, дробная.

GSpe- скорость по GPS, км/ч, дробное.

Deep- глубина по эхолоту, в метрах, дробное.

При включении координаты GPS определяются не мгновенно, необходимо какое то время.. Если старт "холодный", а это бывает если последнее включение происходило давно - то время получения точных координат может быть и до 10 минут.
Если старт "горячий", то есть последнее включение было не далее как за пару часов до этого момента - то определение координат быстрое, до минуты..
Вы можете судить о том определяются ли координаты и точно ли по GSpe ( скорости). Если не определено- то значение ноль. Если значение сильно "скачет" ( то есть кораблик на месте- а значение скорости на экране часто выскакивает более 1км/ч) - то нужно еще подождать, поймано мало спутников- и определение координат не точное.
Как только значение скорости станет в основном менее 0.5 км/ч- то можно считать что определение координат и скорости стало приемлемое..

Теперь можно пользоваться.
Удачной рыбалки.
Архив с схемой, файлами прошивки пульта и контроллера, с фотографиями и скриншотами-
https://yadi.sk/d/AoGhBOfHsiRYhg
Вариант прошивки для выбора номера точки посредством 9 канала ( в первой прошивке был пятый).
https://drive.google.com/open?id=1aJ...siu1wo7xNNVCJl
Не для коммерческого применения.
Панкратов Сергей. serpanrc@yandex.ru

Обновлено 09.03.2019 в 16:53 [ARG:5 UNDEFINED]

Метки: bait boat, serpanrc
Категории
Без категории

Комментарии

  1. Аватар для duzer
    Сергей, а у Вас гуглдиска нет случайно? яндекс закрыт
  2. Аватар для Панкратов Сергей
  3. Аватар для duzer
    работает, спасибо.
  4. Аватар для Fantom41kk
  5. Аватар для Панкратов Сергей
    Вариант прошивки для выбора номера точки посредством 9 канала ( в первой прошивке был пятый).
    https://drive.google.com/open?id=1aJ...siu1wo7xNNVCJl
  6. Аватар для vosol
    К гугл диск нет доступа.
  7. Аватар для Генадич
    Цитата Сообщение от vosol
    К гугл диск нет доступа.
    Рабочие ссылки:
    https://drive.google.com/file/d/1njI...ew?usp=sharing

    https://yadi.sk/d/ogv3np5zgYiUVA
  8. Аватар для TGOdessa
    Приветствую! датчик тока ZXCT1009 какой-то дефицитный оказался, чем его можно заменить?
  9. Аватар для vosol
    https://ru.aliexpress.com/item/32790...274233eddWLgxJ
    я тут брал, оказалось проще подождать, чем лепить операционник
  10. Аватар для TGOdessa
    В теме обсуждали, что реализация сбросов на стик не очень удобна, т.к. могут быть ложные срабатывания. На китайских готовых изделиях, тоже сброс на стике левом, но в ПО реализована задержка, т.е. стик нужно удерживать где-то секунду, после чего на соленоид поступает сигнал на сброс.