» Статьи о COM-портах » Роботы предпочитают USB?
Роботы предпочитают USB?
Программная модель роботов-игрушек использует готовые микропроцессорные решения, и это давно не секрет. А если так, актуальным остается вопрос о программировании контроллеров, ставших и сердцем, и аортой этих милых устройств. При конструировании робототехники своими руками на повестке дня стоит выбор управляющего интерфейса. Если раньше платы на отладки программного кода (Development Kit) были однозначно «привязаны» к последовательному порту персонального компьютера, сегодня средства разработки и коммуникации с цифровыми игрушками предпочитают более современные решения, главным из которых видится универсальная последовательная шина (USB).
Рассмотрим модуль управления робота от всемирно известного бренда Lego, в задачу которого входит контроль узлов и подсистем с помощью программного обеспечения Mindstorms NXT. Как видим, кроме служебных проприентарных интерфейсов, обозначенных на корпусе блока управления литерами A, B и C, владельцу игрушки доступен разъем USB Bf, через который «заливается» прошивка в устройство.
Так ли это на самом деле? Вполне вероятно, что USB-интерфейс преобразуется с помощью одного из известных мостов USB-to-COM в последовательный, с тем, чтобы донести до конечного потребителя данных по двум тривиальным линиям приёма и передачи (Rx и Tx). Давайте проверим свою догадку, заглянув «внутрь» управляющего контроллера с помощью утилиты UTLiteTest:
К сожалению, «в лоб» эта задача не решается, так как без драйверов содержимое USB-устройства, детектированного с VID=0694 и PID=0005, для идентификации недоступно. Анализируя схемные решения подобных игрушек, можно прийти к выводу, что (скорее всего) в качестве управляющего там используется RISC-процессор типа STM32 Nucleo.

В силу того, что современных процессорные решения, используемые в роботах, уже оснащены встроенным USB-портом, вопрос о выборе интерфейса управления однозначно решается в его пользу. Совсем в стороне остается тот факт, что все дальнейшие операции могут выполняться через виртуальный COM-порт, который никуда из STM32 Nucleo не делся.

15.11.2024



