Новости: СОРЕВНОВАНИЯ ПО ИК-БОЮ 16.12.2018СМ. ТУТ: https://tankspb.com/index.php?topic=950.msg7635;topicseen#new

Автор Тема: The Open Panzer TCB from scratch  (Прочитано 2543 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Sergevk

  • Клуб
  • Лейтенант
  • **
  • Сообщений: 114
  • РЕПУТАЦИЯ: +2007/-0
    • Награды
The Open Panzer TCB from scratch
« : 08 Январь 2018, 23:21:40 »
Добрый день, некоторое время назад появилось желание собрать управляющий модуль для танка, основанный на проекте Open Panzer. В то время как Денис тестирует функции, которые заложены в этой плате, попытаемся собрать ее самостоятельно. Этот пост будет обновляться, чтобы все необходимое для самостоятельной сборки можно было оперативно найти.

Введение:
Проект Open Panzer - это контроллер управления различными видами техники (танки, автомобили и т.д.) с поддержкой различных систем ик-боя. Коды проекта находятся в открытом доступе в GitHub репозитории (ссылки ниже). Аппаратная часть основана на чипе AtMega 2560, таком же как и в популярном микроконтроллере Arduino Mega 2560.

Цели:
Построить гибкую систему управления основанную на доступных аппаратных компонентах и открытом исходном коде прошивки.

Ссылки:
- Сайт проекта: Для просмотр ссылок требуется регистрация.
- Репозиторий c прошивками: Для просмотр ссылок требуется регистрация.
- Форум с запуском прошивки на Arduino Mega: Для просмотр ссылок требуется регистрация.
- Соответствие пинов Arduino функцияь TCB: Для просмотр ссылок требуется регистрация.
- Принципиальная схема: Для просмотр ссылок требуется регистрация.

В настоящее время собран и предварительно испытан один вариант контроллера:

Компоненты:

- Пульт дистанционного управления: FlySky  i6s, протокол iBus - в этой версии платы поддержка пультов только iBus; но в проекте Open Panzer есть возможность также подключать sBus и PPM приемники. (Для просмотр ссылок требуется регистрация.
 

- Контроллеры двигателей: Monster Shield VNH2SP30, 30A, 2 штуки. (Для просмотр ссылок требуется регистрация. )
 

Двойные конторолеры Monster Shield не использовались из-за крайне низкого качества (ни один из 4-х не работал полноценно). Есть подозрение, что и с одинарными контроллерами может быть не все в порядке, но у меня отлично заработали 2 из 2-х. Заявленная мощность - 14 Ампер, в пике до 30. Данные контроллеры подключаются к схеме как Built-in Driver.
- Серво-приводы для отката и подъема \ опускания ствола
- Поворот башни с помощью штатного механизма HengLong \ Taigen (в планах переделать на серво-привод). Для поворота башни стандартым механизмом использовался RC ESC контроллер. (Для просмотр ссылок требуется регистрация.)
 

- Микроконтроллер: Arduino Mega Mini ATMega2560. Полный аналог Arduino Mega в компактном форм-факторе. (Для просмотр ссылок требуется регистрация.). .
 

- Разветвитель питания с выключателем и предохранителем
- Радиодетали

Расположение в корпусе
 
 
 

... продолжение следует ...



Оффлайн Sergevk

  • Клуб
  • Лейтенант
  • **
  • Сообщений: 114
  • РЕПУТАЦИЯ: +2007/-0
    • Награды
The Open Panzer TCB from scratch
« Ответ #1 : 11 Январь 2018, 22:14:56 »
... Продолжение ...

Контроллер

Внешний вид, плата
 
 


Плата с Arduino, подключенные Bluetooth и RC приемник
 
 


Компоненты
- Arduino Mega Mini: 1 шт (основной компонент)
- Разъемы
-- JST XH 2 pin: 5 шт. (Для просмотр ссылок требуется регистрация.)
-- JST XH 5 pin: 1 шт. (Для просмотр ссылок требуется регистрация.)
-- JST XH 10 pin: 1 шт. (Для просмотр ссылок требуется регистрация.)
-- 2.54 pin header male: 2-3 штуки (Для просмотр ссылок требуется регистрация.)
-- 2.54 pin header female: 2-3 штуки (Для просмотр ссылок требуется регистрация.)
-- Кнопка: 1 штука (Для просмотр ссылок требуется регистрация.)
-- Разъем питания: 1 штука (Для просмотр ссылок требуется регистрация.)
-- 6-ти позиционный DIP переключатель: 1 шт. (Для просмотр ссылок требуется регистрация.)
-- 2 светодиода (красный и зеленый) (Для просмотр ссылок требуется регистрация.)
-- Сопротивления:
--- 220 ОМ; 0.25W: 3 штуки
--- 2200 ОМ; 0.25W: 1 штука
--- 3.3 ОМ; 1W: 1 штука
-- Транзистор ВС337: 1 штука
-- Модуль стабилизации напряжения 5в, 800мА: 1 штука (возможно будут добавлены еще или заменены на более мощные) (Для просмотр ссылок требуется регистрация.)


Назначение разъемов:
Верх (слева направо):
- 4 2-pin разъема: свет;
- 10-pin разъем - подключение built-in драйвера двигателей
- 5-pin разъем - ИК-бой (приемник и передатчик, контакты так же как на Taigen / HengLong)
- 2-pin разъем - индикация попадания

Левая часть
- 8 рядов по 3 пина - подключение серв, контроллеров двигателей, звука
- Модуль понижения напряжения до 5в (питание серв)
- 4-pin разъем - Bluetooth модуль (Для просмотр ссылок требуется регистрация.)

Правая часть
- 2 контактный разъем - питание контроллера
- 6-ти позиционный DIP переключатель - настройка режимов:
-- 1-2 позиции: тип танка (Настраиваемый, легкий, средний тяжелый)
-- 3-4 позиции: настройка крайних точек для серв
-- 5 позиция: USB/Bluetooth управление
-- 6 позиция: режим ИК; бой или ремонт (режим ремонт на на плате не реализован)
- 3-pin разъем: подключение RC приемника по протоколу iBus. Другие протоколы не реализованы
- Кнопка для включения режима конфигурации серв
- 2 светодиода статуса платы (красный и зеленый)

По центру - разъем для Arduino Mega Mini

Схема:

Оффлайн Sergevk

  • Клуб
  • Лейтенант
  • **
  • Сообщений: 114
  • РЕПУТАЦИЯ: +2007/-0
    • Награды
The Open Panzer TCB from scratch
« Ответ #2 : 11 Январь 2018, 22:59:02 »
... Продолжение ...

Подключение драйверов двигателей к контроллеру

В проекте OpenPanzer в качестве встроенного драйвера для двигателей используется контроллер на базе микросхемы L298 (Для просмотр ссылок требуется регистрация.). Это двухканальный контроллер двигателей с постоянной мощностью 2А на канал, пиковая - 3А на канал. Для работы каждого канала (двигателя) нужно задействовать 3 контакта
- INA - движение в прямом направлении
- INB - движение в обратном направлении
- PWM - ШИМ - частота вращения (скорость движения).

В нашем случае мы можем подключить более мощные драйверы двигателей, используя ту же самую логику. Для Варианта1 были выбраны драйверы на базе чипа VNH2SP30, 15А на канал, пиковая 30А. Также данные контроллеры можно использовать как полумост (подключать их параллельно) наращивая мощность если это необходимо (Для просмотр ссылок требуется регистрация.). Но, к сожалению, на Aliexpress достаточно много бракованных модулей (ни один из 2-х канальных не заработал так, как нужно), но одноканальные лично мне не попадались.

Одноканальный модуль:
 


Двухканальный модуль:
 

 


Схема подключения одноканальных модулей к плату (10-pin разъем в верхней части)
 



Назначение контактов


Оффлайн Deny

  • Администратор
  • Маршал
  • *****
  • Сообщений: 1845
  • РЕПУТАЦИЯ: +10533/-1
    • Питерский танковод
    • Награды
The Open Panzer TCB from scratch
« Ответ #3 : 12 Январь 2018, 01:07:35 »
Действительно двойные драйверы часто попадаются  бракованные. Из трех штук рабочий один! Одиночные работают без сбоев, имею два!

Оффлайн Sergevk

  • Клуб
  • Лейтенант
  • **
  • Сообщений: 114
  • РЕПУТАЦИЯ: +2007/-0
    • Награды
The Open Panzer TCB from scratch
« Ответ #4 : 18 Январь 2018, 23:31:39 »
Подключение Bluetooth модуля


По умолчанию загрузка новых версий прошивок и конфигурация контроллера OpenPanzer осуществляется через USB кабель, но существует возможность выполнять переконфигурацию платы через беспроводное соединение bluetooth (обновление прошивки при этом может быть реализовано по-прежнему только через кабель).


Bluetooth модуль подключается к одному из COM портов (Serial1, AUX) реализованных в OpenPanzer. На данной плате это 4-контактный разъем в нижнем левом углу.


Контакты:
1 - Питание (3,3 - 6v)
2 - Земля
3 - Передача данных
4 - Прием данных
 

Используемый bluetooth модуль: Для просмотр ссылок требуется регистрация.
 



Настройка Bluetooth модуля


Перед подключением Bluetooth модуля к контроллеру OpenPanzer необходимо выполнить его первоначальную настройку. Параметры, которые необходимо задать:
- Скорость COM порта
- Имя Bluetooth модуля
- Пин-код (опционально)


1. Подключаем Bluetooth модуль к FTDI адаптеру (USB COM-порт; данные адаптеры используются для прошивки Arduino Pro mini)
 

2. Запускаем программу-терминал (например termite 3.3; Для просмотр ссылок требуется регистрация.)
3. Выставляем параметры для подключения к Bluetooth адаптеру
- Port: COM порт, на котором находится FTDI адаптер
- Baud rate: 9600
- Data bits: 8
- Stop bits: 1
- Parity: none
- Flow control: none
- Forward: none
- Append CR-LF
 

4. Подключаемся к Bluetooth адаптеру; после успешного подключения он должен отвечать на команды AT
AT
OK
5. Выставляем имя Bluetooth адаптера (оно будет отображаться при поиске и подключении; имя задается после команды AT+NAME без пробела)
AT+NAMETankT-34
6. Выставляем скорость COM порта: 57600 (после применения этой команды Bluetooth модуль отключится от терминала)
AT+BAUD7


Настройка OpenPanzer


Чтобы включить возможноcть работы через Bluetooth также необходимо настроить контроллер OpenPanzer.
1. Запускаем конфигуратор OP Config
2. Подключаемся к контроллеру
 

 

3. Считываем параметры из контроллера  (если необходимо)
 

4. Переходим в раздем Misc
5. Выставляем для Serial 1 (AUX) 57600
 

6. Сохраняем данные в контроллере
 

7. Переключаем на плате DIP-переключатель 5 в положение 'выключено'
8. Перезагружаем контроллер OpenPanzer.


Подключение Bluetooth модуля к контроллеру
1. Подключаем Bluetooth модуль к контроллеру OpenPanzer 4-х контактным разъемом
2. Включаем контроллер (если он выключен)
3. Выполняем поиск Bluetooth модуля на ПК; подключаем его, вводим PIN код; ждем пока установится COM порт
4. Запускаем программу OP Config; Выставляем COM порт и скорость подключения - 57600
5. Подключаемся к контроллеру через Bluetooth

Оффлайн Deny

  • Администратор
  • Маршал
  • *****
  • Сообщений: 1845
  • РЕПУТАЦИЯ: +10533/-1
    • Питерский танковод
    • Награды
The Open Panzer TCB from scratch
« Ответ #5 : 19 Январь 2018, 00:04:21 »
У меня происходит странное поведение Bluetooth модуля, он подключается и соединяется с программой, но через минуту отсоединяется, если я не произвожу никаких действий.

Оффлайн Sergevk

  • Клуб
  • Лейтенант
  • **
  • Сообщений: 114
  • РЕПУТАЦИЯ: +2007/-0
    • Награды
The Open Panzer TCB from scratch
« Ответ #6 : 19 Январь 2018, 12:02:56 »
Да, вот тут задан тайм-аут по неактивности, и он всего 8,5 секунд: Для просмотр ссылок требуется регистрация. . Вероятно, это сделано для экономии аккумулятора.

Оффлайн Sergevk

  • Клуб
  • Лейтенант
  • **
  • Сообщений: 114
  • РЕПУТАЦИЯ: +2007/-0
    • Награды
The Open Panzer TCB from scratch
« Ответ #7 : 19 Январь 2018, 14:44:09 »
В пост №2 добавил схему для Arduino Mega Mini

Оффлайн Юрий_1

  • Клуб
  • Лейтенант
  • **
  • Сообщений: 149
  • РЕПУТАЦИЯ: +1246/-0
    • Награды
The Open Panzer TCB from scratch
« Ответ #8 : 19 Январь 2018, 19:54:46 »
Добрый вечер, коллеги.
Сергей, Вы супер!
Спасибо.

Оффлайн Deny

  • Администратор
  • Маршал
  • *****
  • Сообщений: 1845
  • РЕПУТАЦИЯ: +10533/-1
    • Питерский танковод
    • Награды
The Open Panzer TCB from scratch
« Ответ #9 : 19 Январь 2018, 20:46:48 »
Спасибо, а то я подумал, что у меня что-то не то))))