Author Archive

ModBus RTU & PC

При создании программы, управляющей исполнительными механизмами робота TurboT и собирающей данные с его всех датчиков мне предстояло написать на C++ классы устройств: сервис платы(плата сбора данных), платы для управления двигателями ... проблема была в том, что в 2011 году все разработанные нами платы были переведены на стандартный протокол обмена ModBus. Мне предстояло либо написать код для мастера самостоятельно, либо использовать готовый код если он существует и устраивает меня... Я избрал второй вариант =). Библиотеку для реализации этого протокола можно скачать с сайта разработчика libmodbus.org. Библиотека написана на С и по заявлению разработчика библиотеки она поддерживает следующие операционные системы: Linux, Mac OS X, FreeBSD, QNX and Windows. На момент написания статьи библиотека представлена в двух версиях 2.0.3(stable) и 2.9.2/2.9.3(unstable). Хочу заметить, что интерфейсы старой и новой версий библиотеки сильно отличаются и автор рекомендует использовать более свежую версию, пусть еще и не до конца стабильную. Для большого количества задач все ее нестабильности не будут заметны. Я использовал версию библиотеки 2.9.2 в операционной системе opensuse 11.3, в качестве среды разработки я использовал IDE Qt Creator.

Читать полностью »

Комментарии (10)

Dynamixel

Dynamixel AX-12В этой статье мы поговорим о сервоприводах Dynamixel компании Robotis. Приводы Dynamixel - это сервоприводы для робототехники, обеспечивающие высокий выходной момент, хорошую точность позиционирования, управляются цифровыми пакетами и обладают гибкой настройкой, также эти приводы можно объединять в сеть. Компания Robotis выпускает целую линейку приводов с различными параметрами  выходного момента. Приводы стоят от 50 до 500 долларов США за штуку в зависимости от модели. Используя сервоприводы Dynamixel как базовый элемент создано большое количество роботов-игрушек: роботы пауки, шагающие роботы, манипуляторы. Компания производит компактный модуль управления для этого чуда и поставляет некоторые библиотеки с помощью которых можно управлять с компьютера. Также для роботов, созданных целиком из этих сервоприводов, Robotis разработала среду разработки где можно с легкостью создавать различные алгоритмы движения робота. Закончим краткое описание и перейдем к использованию этого маленького чуда.

Для подключения сервоприводов к компьютеру потребуется переходник. Я использовал фирменный переходник USB2Dynamixel. Как понятно из названия переходник подключается к компьютеру через USB. В зависимости от того какие вы используете сервоприводы у них может отличаться интерфейс подключения. Это будет либо TTL - что-то похожее на UART только с одним проводом или RS485. Читать полностью »

Комментарии (2)

Serial port & boost

com-portПри разработке роботов регулярно нужно общаться с кучей внешних устройств, старый добрый COM-port не раз выручал разработчиков и заслуженно занимает почетное место среди портов передачи данных. Он нашел широкое распространение в самых разных областях и сейчас есть во многих современных компьютерах. Часто для разработки своих устройств или отладки работы устройств сторонних производителей приходиться работать с этим портом. Существует множество различных программ для работы с ним, в которых можно отправлять и принимать данные, выставляя настройки, вести простенькую отладку и тестирование, но что делать если необходимо написать свое приложение использующее этот порт? Какие средства существуют и что использовать? Этому и посвящена эта статья.
Существует замечательная библиотека, написанная на С++, ее название boost. Библиотека негласно является уже почти стандартом языка и содержит кучу полезного. Одно из ключевых преимуществ библиотеки - ее кроссплатформенность. Представьте, код работающий с "железом", можно легко скомпилировать как в Windows так и различных Linux системах. Это дает огромное преимущество этому инструменту по сравнению с платформенно зависимыми библиотеками.

Установку библиотеки я упущу - информации на эту тему хватает.

Для использования библиотеки необходимо подключить заголовочные файлы:

#include "boost/asio.hpp"

В make file необходимо подключить следующие библиотеки: Читать полностью »

1 комментарий

Eurobot 2011 Virus Team Promo Movie

Comment

Eurobot 2010-2011 Virus Team Promo Movie

Comment

Eurobot 2010 Virus Team Game Video

Финал российского этапа соревнований Eurobot 2010 года с участием команды Virus.

1 комментарий