Разработка hexapod с нуля (часть 5) — электроника +31



Всем привет! Разработка гексапода близится к завершению первой боевой версии и вот настало время для описания всей его электронной начинки. На данном этапе разработки я наконец-то покажу все исходники проекта на github (ссылки как всегда будут в конце). Так же я добавил HC-SR04 для обнаружения препятствий, которого так не хватало для визуальной удовлетворенности во внешнем виде гексапода. Будет немного нового видео и у Вас есть шанс меня отпинать по электронике.

Вид с установленным HC-SR04


Изначально корпус проектировался под раздельные платы питания и управления, чтобы одну разместить в центре корпуса ближе к АКБ, а вторую вынести наверх для удобства отладки. И так давайте начнем.

Блок управления


Блок управления является «мозгом» гексапода на базе контроллера SAM3X8E и состоит из двух плат: плата с контроллером и плата распределения. Плата с контроллером используется уже готовая (картинка ниже), а вот плату распределения придется изготовить. Возможно в будущем закажу плату на производстве с местом под контроллер, чтобы убрать бутерброд.

Главная цель платы распределения — питать «легкие» периферийные устройства, контроллер и распределять сигналы по его пинам. Я составил список своих требований к этой плате:

  1. Возможность установки на плату HLK-RM04 (UART-WIFI converter);
  2. Возможность подключения I2C дисплея;
  3. Возможность подключения HC-SR04;
  4. Возможность измерять напряжение АКБ = напряжение питания платы;
  5. Возможность измерять напряжение питания периферии и HLK-RM04;
  6. Подключение пищалки для индикации разряда АКБ;
  7. Светодиодная индикация состояния системы: отвалилось что-то важное (конфигурация не верная или еще что-нибудь), отвалилось что-то неважное (дисплей к примеру), все ОК;

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


Дорожки специально делал широкими, чтобы в процессе изготовления не было проблем. Плату решил изготовить ЛУТом, хорошо получилось только со 2 раза. Под спойлером фотографии для сравнения неудачного и удачного вариантов (слева неудачный, справа удачный).

Фотки



Ну дальше всё по инструкции — лудим плату, сверлим дырки и закидываем компоненты. Результат не заставил себя долго ждать:

В центре вставляется HLK-RM04, справа в гребенку шлейф к плате питания, слева подается питание. Напряжение на плате измеряется простым делителем напряжения. При долгой работе (минут 30 — 40) регулятор напряжения для HLK-RM04 ощутимо нагревается и я на всякий случай поставил радиатор.

HLK-RM04


Плата питания


Суммарный ток потребления (пиковый) приводами составляет приблизительно 30А (в среднем по ~1.3A на привод) при сильной нагрузке, при ходьбе 10-13А, в состоянии покоя — 5-6А. Измерения проводил опытным путем мультиметром.

Питание я решил сделать отдельным для каждого привода основанным на линейных регуляторах напряжения, т.е. 18 линейных регуляторов напряжения — по одному на каждый привод. В качестве линейных регуляторов используются LM317D2T-TR сконфигурированные на выдачу 5V. Есть несколько причин для использования 18 линейных регуляторов напряжения и использования регуляторов в принципе:

  • Напрямую подключить приводы к АКБ нельзя, для них максимальное допустимое напряжение питания 6В;
  • Относительная независимость скорости\усилия приводов от входного напряжения;
  • Линейных регуляторов у меня завались. Я когда-то ими закупился на Ali пакетом 70шт (пункт внес наибольший вклад в решение);
  • Я не нашел линейного регулятора напряжения на такой ток;
  • Я не нашел схемы компактного и легкого DC-DC на такой ток;
  • Вариант параллельного подключения регуляторов довольно сомнителен;
  • Вариант «линейный регулятор + усилительный транзистор» лишает схему питания всех защитный функций, которые дает линейный регулятор (по крайней мере так пишут люди и в данном случае я с ними согласен);
  • Я довольно плохо разбираюсь в проектировании импульсных источников питания;

Плата очень простая и я так же не стал рисовать для нее принципиальную схему, да и желание поскорее увидеть результат тоже давало о себе знать. Разводка получилась следующей:



Сверху имеются контактные площадки для припаивания проводов для АКБ, снизу гребенка под шлейф и питание к блоку управления, а по бокам подключаются приводы. Изначально хотел еще сделать возможность измерения величины потребляемого тока каждым сервоприводом и измерение температуры платы, но решил пока не усложнять.

Плата получилась простой и надежной, ломаться там нечему. Проводил тесты на нагрузку при входном напряжении 11.1V (3S LiPo) и 7.4V (2S LiPo). При входном напряжении 11.1V, как и ожидалось, регуляторы слишком сильно нагревались и срабатывала защита по температуре во время ходьбы (радиатор соответственно не спасал, да и еще к тому же регуляторы SMD), что вынудило меня снизить входное напряжение. При напряжении 7.4V регуляторы теплые и при продолжительной ходьбе защита уже не срабатывает — то что нужно.

Плату так же изготавливал ЛУТом и получилась она довольно неплохо с первого раза. К сожалению, есть только фотография экспериментальной версии платы, а новую вытаскивать из корпуса это часа 4 где-то и разбирать ради фотографии не очень хотелось (нужно разобрать около 70% корпуса). Отличие старой от новой только в отсутствии дырок по центральной линии платы (проводились веселые эксперименты).


Немного видео и исходники



Тестирование работы HC-SR04


Отношение моего кота к гексаподу


Первая гулянка по улице


Ссылки на другие этапы разработки


Часть 1 — проектирование
Часть 2 — сборка
Часть 3 — кинематика
Часть 4 — математика траекторий и последовательности




К сожалению, не доступен сервер mySQL