Анонс, вопрос и опрос по контроллеру робоплатформы v2

В прошлом году писал о неудавшемся контроллере робоплатформы на PIC16F877. Что, на выбранный микроконтроллер взвалил слишком большую ношу и он извинился, и отказался исполнять половину моего кода. Время идёт, работа над ошибками проводиться, элементная база совершенствуется, и пора бы приступать за вторую версию контроллера для роботизированных платформ различной конфигурации.

Крафт

Крафт

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

Данный проект во время работы может перейти и в коммерческое русло (с малой вероятностью), но, тем не менее, будет открытым, хоть, возможно с небольшим запозданием. В цели входит разработка схемотехники, трассировка и изготовление платы, правда в этот раз, скорее всего, не в домашних условиях, но на возможность домашнего изготовления, по возможности, ориентироваться буду. И написание рабочей прошивки с минимальным требуемым функционалом.

Ориентация, как и в предыдущей версии делается на разработку подчинённого контроллера, так называемого низкого уровня, который будет управлять установленной периферией, опрашивать датчики, но не будет иметь ни каких зачатков искусственного разума, для этого ему нужен будет или оператор с пультом, ил компьютер или иной другой управляющий контроллер. Хотя, если дело пойдёт очень хорошо, всё будет устаивать и всего хватать – то зачатки виртуального интеллекта могут и появиться. Тем не мене контроллер буду брать с запасом, в отличие от предыдущей версии.

Основное управлении контроллером будет по UART. Почему UART? т.к. это самый распространённый интерфейс, который есть почти на всех контроллерах, большей части радиоканалов и на компьютерах (разуметься через преобразователь интерфейса USB-UART, аля cp2102, ft232). Так же его не трудно превратить и в промышленные линии, например Rs-485. На контроллере не будет никаких радиоканалов, т.к. на некоторых мероприятиях и соревнованиях они запрещены, но есть UART, к которому можно подключить Bluetooth, Wi-Fi, GSM и некоторые другие радиоканалы.

Протокол управления, пока что беру за основу свой ранее разработанный, но о котором пока ещё не упоминал, но скоро вкратце расскажу, если он пройдёт критику, иначе тогда возможны другие варианты, например ModBus или иные предложения, или будет несколько вариантов.

Основной микроконтроллер контроллера роботоплатформы будет из семейства STM32, какой, будет видно из конечных требований к контроллеру. Скорее всего STM32F100-103, но это не смотря далеко вперед.

Установка видеокамер и обработка картинки с них не планируется, это остаётся более мощному управляющему контроллеру или может быть в 3 версии контроллера в далёком будущем. Но возможно может быть предусмотрена встроенная IMU (inertial measurement unit) – инерциальная система навигации, проще говоря, что-то из набора датчиков: гироскоп, акселерометр…

Как и в прошлой версии, платформа рассчитывается на батарейное/аккумуляторное питание порядка 6-10В (ограничение драйвера двигателей drv8833), при замене некоторых компонентов в проекте максимально напряжение питания может подняться до 14-15В. И наличие раздельного питания для самого контроллера и слабой периферии в виде датчиков и дополнительного стабилизатора для питания мощной периферии в виде сервоприводов, электромагнитов, иллюминации, управляющих роутеров и иных контроллеров с другой периферией.

Основные возможности контроллера:

  • Драйвер двигателей 2 канала по 2А(максимум, 4А пик) или (возможно) 4 канала по 1А(максимум, 2А пик). Напряжением 3-10В. Сам драйвер: два с объединёнными каналами drv8833; Если знаете другие интересные решения то, пожалуйста, поделитесь.
  • Минимум 5 аналоговых/цифровых входов выходов;
  • 8 цифровых входов-выходов с отдельным стабилизатором на 5В до 3А;
  • Контроль напряжения питания и токов на каждом из моторов (точнее на двух моторах или двух парах моторов);
  • Контроль 2-х колёсных энкодеров;
  • I2C и возможно SPI и UART расширение;
  • Встроенный IMU, для балансирующих платформ (опционально);
  • Наличие нескольких (минимум 1-2) силовых коммутирующих ключей (mosfet) для управления мощной нагрузкой;
  • Пара светодиодов для индикации работы.

Данный функционал – это минимальный функционал, на который буду ориентироваться при проектировании контроллера, он может быть дополнен в ходе проектирования и/или если у выбранного МК останутся свободные ресурсы.

По времени реализации – этот проект будет долгостроем, если только на него не упадёт интерес широких масс и/или найдутся заказчики и/или инвесторы. Или он может так и остаться идеей.

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

3 комментария »

Alex_EXE | 08.06.2014 | Новости |

3 комментария на « Анонс, вопрос и опрос по контроллеру робоплатформы v2»

  1. Сергей пишет 17.06.2014 в 00:28 #

    У амперки недавно появился свой контроллер amperka.ru/collection/boards/product/strela.
    Еще могу предложить вместо простых мосфетов поставить интеллектуальные ключи.
    Надо кил-фичу! Может bluetooth-чип на плате? или ИК-приемник и готовую либу? или крутую универсальную терминалку написать?

  2. Alex_EXE пишет 18.06.2014 в 17:57 #

    Спасибо за наводку.
    ИК приёмник — это уже не ново, предусматривать буду, хорошая идея.
    На счёт встроенного радиоканала — против, т.к. где-то он не нужен, где-то может быть другим, а где-то вообще запрещён (на каких-либо мероприятиях), а место занимать на плате будет и денег стоит, лучше предусмотреть универсальный разъём для подключения сменных модулей.
    Как уже и писал, протокол будет известен и простой демонстрационный софт написать не проблема; библиотека или её подобие будет.
    Главный вопрос — это интересно только мне и будет только для себя или ещё кому-нибудь подобное интересно.

  3. Антон пишет 01.07.2014 в 01:55 #

    А почему не сделать универсальный разъем расширения, типа как UEXT у Olimex’а?

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

    И центральная плата при этом не будет не обвешана никакой ненужной периферией.

Комментарии RSS

Оставьте отзыв