Зеркало сайта: vivacious-stockings-frog.cyclic.app

V-REP симулятор роботов

разделы: myRobot, дата: 24 марта 2016г.

    Разработку робота можно разделить на несколько этапов:
  • разработка математической модели;
  • составление алгоритма;
  • написание программы;
  • разработка проекта;
  • изготовление;
  • испытание.

Симулятор роботов позволит проверить математическую модель и алгоритм перед тем как приступать к изготовлению робота. V-REP компании Coppelia Robotics - один из самых совершенных симуляторов в настоящее время. Программный комплекс является кроссплатформенным и бесплатным для использования в образовательных целях. Симулятор состоит из физического и графического движка, что позволяет достаточно комфортно работать с программой.

На скорую руку я отметил важнейшие элементы в интерфейсе V-REP:

Читать дальше

ATmega168: колесный энкодер на дополнительном внешнем прерывании

разделы: AVR, myRobot, дата: 11 марта 2016г.


колесо в сборе с двигателем постоянного тока, редуктором и диском энкодера

Дополнительные внешние прерывания, относительно новая штука в периферии AVR. В микроконтроллерах ATmega8/ATmega16 их нет, зато они есть в ATmega88/ATmega168. В официальной документации они описаны в главе 13 "Внешние прерывания". В отличии от обычных внешних прерываний, в дополнительных, одно прерывание отведено на один порт (т.е. на восемь пинов), и в них нельзя выставить условия срабатывания. Прерывание будет генерироваться при любом изменении сигнала, даже если он был изменен программно, самим микроконтроллером.

    Т.о. задача состоит в следующем. Дано одно прерывание, и на него подключено два энкодера. Нужно:
  • определить какой именно энкодер вызвал прерывание;
  • определить время прошедшее с предыдущего срабатывания энкодера, т.е. интервал;
  • обеспечить защиту от "дребезга"
    Рассмотрим матчасть:
  • Диск энкодера имеет двадцать прорезей. Следовательно, поворот на одно деление примерно равно ~0.1π
  • Диаметр колеса около 66мм. Окружность 20.5 см, т.е. поворот на одно деление диска, равно примерно 1см пройденного пути.

Читать дальше

ATmega168: подключение нескольких ультразвуковых сенсоров HC-SR04 используя аналоговый компаратор

разделы: AVR, HC-SR04, myRobot, дата: 6 марта 2016г.

Компаратор это единственная периферия в AVR которая включена по умолчанию. Поэтому, если он не используется, его следует выключать. Допустимая ошибка (напряжение смещения) не более 40мВ, время отклика не более 0,5 мкс. Рабочие пины: прямой AIN0 и инверсный AIN1. Так же AIN0 называют положительным, а AIN1 отрицательным. Результат заносится в ACO бит регистра ACSR.

Официальный datasheet на ATmega168: http://www.atmel.com/images/doc2545.pdf работа компаратора описана в главе 23.2 на странице 246

    Хорошие справочные обзоры по работе компаратора в AVR можно найти здесь:
  1. Учебный курс AVR. Аналоговый компаратор
  2. AVR. Учебный курс. Использование аналогового компаратора

Я потратил немного времени на перевод официального руководства, с которым и предлагаю далее ознакомится.

Описание регистра ACSR

Компаратор управляется через регистр "Analog comparator control and status register" т.е. ACSR:

Читать дальше