Разработка робота, идущего по линии
Безмельницын В.А., студент Уфимского государственного колледжа радиоэлектроники
Хакимова Г.Г. научный руководитель, преподаватель Уфимского государственного колледжа радиоэлектроники
До настоящего времени не выработано единой концепции относительно того, из чего же состоит робот. Например, в Японии роботом называется устройство, действующее по принципу взять-положить, т.е. простая «механическая рука», движения которой ограничены механическими упорами. Однако на Западе подобное устройство, не обладающее гибкостью, считается особым видом жесткого автомата, а не роботом.
Простейший робот может состоять лишь из одной микросхемы драйвера моторов и пары фотоэлементов. В зависимости от способа соединения моторов, микросхемы и фотоэлементов, можно «научить» робота двигаться на свет или, наоборот, прятаться в темноту, следовать за линией, или избегать ее. Если добавить в схему робота фототранзисторы и светодиоды, то можно добиться, чтобы он следовал за рукой и даже следовал по темной или светлой линии. Принцип поведения робота основывается на "фоторецепции" и является типичным для целого класса BEAM-роботов.
В настоящее время имеется уже множество различных направлений разработки, таких как создание эстетичных роботов, шагающих и катающихся роботов. Одним из примеров катающихся роботов является робот, идущий по линии. Робот, идущий по линии,двигается вслед за черной линией, что позволяет применять роботов такого класса для работ по перемещению предметов в соответствии с заданной траекторией.
Рисунок 1 – Структурная схема робота, идущего по линии
Структурная схема робота, идущего по линии (рисунок 1), состоит из следующих блоков:
–микроконтроллер – анализирует работу блока ИК светодиодов и блока фототранзисторов, также управляет режимом работы двигателей;
–ограничители тока – контролируют максимальный ток выходов порта D микроконтроллера;
–блок ИК светодиодов - излучает сигналы, попадающие на поверхность с темной линией и отражающиеся от нее;
–блок фототранзисторов - принимает отраженный от поверхности сигнал и передает его микроконтроллеру;
–резистор регулировки чувствительности фотодиодов - отвечает за восприимчивость черной линии фотосенсорами;
–элемент питания 1 осуществляет питание схемы.
Рисунок 2 – Принципиальная схема робота, идущего по линии
На рисунке (3) представлена принципиальная схема робота, идущего по линии. Он собран на микроконтроллере фирмы ATMEL ATmega8L-8PU(DD1). В качестве ИК светодиодов используются L-53SRD-F, фототранзисторов - L-53P3C. ИК светодиоды (VD1,...,VD3) включаются на время, достаточное, чтобы АЦП, встроенный в МК, преобразовал напряжение, развиваемое соответствующими фототранзисторами (VT1,…,VT3) в цифровой код. Используются лишь восемь старших разрядов результата, т.к. два младших содержат шум. Если под датчиком нет темной линии, освещенность фототранзистора и напряжение на нем больше, если она есть – меньше. Сравнивая показания фототранзисторов с образцовым напряжением, снимаемым с резистора регулировки чувствительности (R4), программа принимает решение о положении робота относительно линии согласно следующим значениям:
000 – линия потеряна;
001 – смещение вправо;
010 – точно на линии;
011 – небольшое смещение вправо;
100 – смещение влево;
110 – небольшое смещение влево;
111 – не используется.
Далее происходит вызов подпрограммы в микроконтроллере, изменяющей режим работы двигателей (M1,M2) робота. Микроконтроллер работает от встроенного RC-генератора.
Ограничители тока (R1,…,R3) контролируют максимальный ток выходов порта D, который не должен превышать 20мА. Элемент питания G1, обеспечивает работу микроконтроллера и реализует работу двигателей и остальных элементов схемы.
Разработанный робот, идущий по линии, позволяет изучить основные характеристики и особенности микроконтроллеров семейства AVR, основы программирования этих микроконтроллеров. А также наглядно показать работу фотосенсоров. Знания о микроконтроллерах предоставляют возможность разрабатывать роботы от простых, до более сложных и многофункциональных устройств.
Преимуществом разработанного робота, идущего по линии,перед устройствами подобного назначения,является возможность его применения в различных областях. Основным достоинством разработанного робота является то, что он может перемещаться по заданной траектории, движение робота не зависит от наличия источника света, траекторию движения робота можно изменять, благодаря использованию микроконтроллера.
Разработка анализатора USB
Гарипова А.М., студентка Уфимского государственного колледжа радиоэлектроники
Зубкова И.В., научный руководитель, преподаватель Уфимского государственного колледжа радиоэлектроники
Рисунок 1 –Внешний вид устройства
В настоящее время практически все периферийные устройства подключаются к компьютеру через USB интерфейс. Наряду с простотой использования для конечного пользователя, реализация протокола обмена по шине USB достаточно сложна для программистов и разработчиков периферийных устройств. Для отладки обычно используются программные средства, например USB-Monitor, позволяющие следить за информацией, передаваемой по шине. Это существенно упрощает отладку программного обеспечения. Однако отследить обмен данными между хост-контроллером и устройством на уровне передаваемых блоков данных, называемых пакетами, таким образом невозможно. Дело в том, что каждый пакет содержит много служебной информации, которая добавляется на аппаратном уровне в контроллере USB, как на стороне хоста, так и на стороне устройства. Это идентификатор пакета, адрес, контрольная сумма и др. Таким образом, программно можно отследить, что передается, но нельзя увидеть, как это делается. А для разработчика устройства это может быть очень важно, особенно при программной реализации протокола на контроллерах, не имеющих аппаратного порта USB. В данном проекте разработано устройство, которое подключается между устройством и компьютером и перехватывает всю информацию, передаваемую по шине. Быстродействие контроллера AVR, использованного в данном устройстве, позволяет отслеживать только низкоскоростной (Low-speed) режим передачи данных (скорость 1,5 Мбайта/с). Однако этот режим довольно широко используется, например, в клавиатуре, мыши, джойстике.
Структурная схема анализатора USB представлена на плакате. Она состоит из следующих блоков {показываешь каждый блок и поясняешь}:
1) микроконтроллер (МК);
2) буферное ОЗУ;
3) разъем USB;
4) разъем COM.
Основой анализатора является микроконтроллер DD1, построенный на микросхеме ATmega8515 {показать на принципиальной}.
Анализатор подключается параллельно шине USB и перехватывает всю передаваемую по ней информацию.
Для подключения отлаживаемого устройства используется разъем – USB розетка типа «A». Параллельно ей распаивается кабель с вилкой USB типа «A» для подключения к компьютеру.
Эта информация временно сохраняется во внешнем буферном ОЗУ ,а затем передается в компьютер через COM порт. Скорость передачи USB на много превышает скорость COM порта, поэтому необходимо накапливать информацию в ОЗУ, а затем в паузах между пакетами обрабатывать ее и передавать в компьютер. Объема встроенного ОЗУ контроллера для этого недостаточно.
В качестве буферного ОЗУ используется микросхема UM61256 объемом 32 кбайт. Такого объема обычно достаточно для отслеживания процесса нумерации любого устройства.
Для передачи информации в компьютер используется порт COM (интерфейс RS-232C). Если в компьютере нет COM-порта, можно использовать конвертер USB-COM.
Уровни сигналов интерфейса RS-232 отличаются от уровней сигналов микроконтроллера. Поэтому для согласования уровней используется инвертирующий триггер Шмитта SN74HC14.
Для сигнализации готовности устройства к работе используется светодиод HL1. При переполнении ОЗУ светодиод гаснет.
К выводам микроконтроллера подключается кварцевый резонатор с тактовой частотой 12 МГц.
Питание анализатора осуществляется от порта USB компьютера.
Рисунок 2 – Структурная схема анализатора
Анализатор представляет собой одностороннюю печатную плату. Односторонняя плата была выбрана благодаря простоте изготовления, достаточно высокой точности исполнения печатного рисунка и низкой стоимости. На верхней стороне платы выполнены проводные перемычки, установлены микросхемы, кварцевый резонатор, светодиод, полярный конденсатор. Припаяны разъемы USB (штекер для подключения к компьютеру и розетка для подключения внешнего устройства) и СОМ (штекер для подключения к компьютеру). На обратной стороне платы установлены резисторы и конденсаторы в планарном исполнении.
Порядок работы с устройством следующий.
Вначале необходимо запустить на компьютере какую-либо терминальную программу (мы воспользуемся Tera Term Pro 2.3), выбрать в ней реальный (или виртуальный, при работе через конвертер USB-COM) порт и подключить к нему COM разъем анализатора.
Для установки параметров порта выбираем вкладку Setup/Serial Port.
Параметры порта должны быть установлены следующие: скорость (Baud rate) – 9600 бит/с, биты данных (Data) – 8, четность (Parity) – нет, стоповые биты (Stop) – 1, управление потоком (Flow control) – аппаратное (hardware).
Подключить USB вилку анализатора к свободному USB порту компьютера. Устройство никак себя не проявляет, поэтому компьютер не обнаружит этого подключения. В терминальной программе выведется на экран сообщение о готовности анализатора к работе, а на нем засветится светодиод HL1.
Теперь можно подключить кабель отлаживаемого устройства к розетке анализатора. При этом оно определится компьютером и начнется процедура нумерации. В терминальной программе будет выводиться на экран все, что происходит на шине USB.
Разработанное устройство имеет меньшую цену, по сравнению с аналогами, содержит небольшое количество элементов на печатной плате, что говорит о простоте его монтажа.