Бесплатная техническая библиотека ЭНЦИКЛОПЕДИЯ РАДИОЭЛЕКТРОНИКИ И ЭЛЕКТРОТЕХНИКИ Манипулятор с датчиком ускорения. Энциклопедия радиоэлектроники и электротехники Энциклопедия радиоэлектроники и электротехники / Микроконтроллеры Для работы на ПК сегодня используют самые разные манипуляторы - "мыши", джойстики, трекболы. В статье описывается еще один тип манипулятора, заменяющий компьютерную "мышь", но ему не требуется ровная горизонтальная поверхность для перемещения. Его можно просто держать в руке, а указатель "мыши" будет перемещаться при наклоне манипулятора в соответствующем направлении. Такой способ управления может оказаться очень эффективным в некоторых компьютерных играх, например, в авиасимуляторах, или как альтернативный манипулятор для ноутбуков. Предлагаемый манипулятор (его принципиальная схема изображена на рис. 1) выполнен на микроконтроллере (МК) PIC16F84A и интегральном измерителе ускорения (акселерометре) ADXL202E фирмы Analog Devices. Эти приборы представляют собой датчики линейного ускорения и широко используются для измерения углов наклона тел, сил инерции, ударных нагрузок и вибрации. Акселерометр ADXL202E является двухосным на максимальное ускорение по обеим осям ±2g [1 ]. Для удобства сопряжения с МК выходные сигналы этой микросхемы представляют собой прямоугольные импульсы с постоянной частотой повторения. Информация об ускорении передается их относительной длительностью (отношением длительности импульса к периоду колебаний) [2]. Длительность, равная 0,5, соответствует нулевому ускорению. В настоящее время для устройств типа "мышь" существуют три типа интерфейса: последовательный, PS/2 и USB. Наиболее прост в реализации как с аппаратной, так и с программной точек зрения последовательный интерфейс. Для последовательного интерфейса наиболее распространен протокол "microsoft mouse", представляющий собой последовательную передачу трех байтов в формате 7N1 (семь информационных бит, бита четности нет, один стоп-бит) на скорости 1200 бит/с. Описание информационных байтов дано в табл. 1. Следует отметить, что лог. 1 в интерфейсе RS-232 соответствует уровню -12, а лог. 0 - +12 В. Диаграмма передачи первого байта, соответствующая нулевому перемещению по осям и нажатой правой кнопке (SB2), показана на рис. 2. Абсолютное большинство современных системных плат имеют интегрированный адаптер последовательного интерфейса, устойчиво работающий при подаче на вход уровней TTL. Драйвер операционной системы может распознать мышь, установив сигнал RTS, при этом мышь должна вернуть значение 0x4D (символ "М"). Относительное движение мыши посылается как dx (положительное значение означает движение вправо) и dy (положительное значение - движение вниз). Напряжение питания манипулятора формируется из сигнала RTS с помощью стабилитрона VD1. В процессе работы драйвер мыши поддерживает на этом выходе постоянный уровень+12 В. Выходные импульсы микросхемы DD1 обрабатываются МК DD2 и преобразуются в сигналы последовательного интерфейса, которые через разъем ХР1 подаются в СОМ порт компьютера. Кнопки SB1, SB2 манипулятора соответствуют левой и правой кнопкам стандартном мыши. Выключателем SA1 можно выбирать характеристику манипулятора - линейную или квадратичную зависимость перемещения указателя от угла наклона манипулятора. Кратко рассмотрим основные моменты работы управляющей программы МК. После включения питания он настраивает порты ввода/вывода, источники прерываний и выдает в СОМ порт последовательность байт для идентификации себя как устройства типа "мышь". Далее МК ожидает прерывания от микросхемы DD1 и производит замер длительности импульсов, используя встроенный таймер. Одновременно с этим он циклически опрашивает кнопки SB1 и SB2. При изменении состояния любой из них или наличии ненулевого ускорения происходит передача последовательности из трех байт согласно табл. 1. Состояние переключателя SA1 проверяется перед каждой отправкой последовательности байт, что позволяет изменять режим работы манипулятора непосредственно в процессе его использования. Резистор R1 задает частоту следования импульсов на выходе DD1, R3 защищает порт МК от перегрузки при случайном замыкании проводов в кабеле и разъеме. Все детали манипулятора, кроме вилки ХР1, смонтированы на печатной плате. Микросхема DD1 расположена на нижней стороне платы (выводами вверх) и ориентирована так, чтобы ее ось X давала перемещения курсора в горизонтальной плоскости, а ось Y - в вертикальной. Нумерация выводов DD1 на рис. 1 соответствует микросхеме в корпусе LCC-8 (в скобках указаны номера выводов при использовании микросхемы в корпусе QC-14). Конденсаторы С1, С2 и резистор R1 должны располагаться в непосредственной близости от микросхемы DD1. В устройстве допустимо применение МК PIC16F84A в любом исполнении. Вилка ХР1 - компьютерная DB-9F. Длина соединительного кабеля - не более 2 м. Коды управляющей программы МК приведены в табл. 2. При его программировании нужно установить следующие значения бит в конфигурационном слове: тип генератора (OSC) - HS, сторожевой таймер (WDT) выключен, задержка после включения питания (PWRTE) выключена. Собранное из исправных деталей и без ошибок в монтаже (и, естественно, в программе МК) устройство налаживания не требует. Единственное, что, возможно, придется сделать (при использовании некоторых экземпляров кварцевых резонаторов), это подобрать константу pause в программе МК, отвечающую за формирование скорости обмена. Несоответствие значения зтой константы проявляется в хаотическом перемещении указателя по экрану при неизменном положении манипулятора. Чувствительность в небольших пределах можно изменять подбором резистора R1. Большинством существующих операционных систем описанный манипулятор определяется как стандартная мышь для последовательного порта и специального драйвера не требует. Следует учесть, что через переходник COM->PS/2 устройство не работает, так как поддерживает только последовательный интерфейс. Исходный текст программы для МК Литература
Автор: С.Кулешов, г. Курган Смотрите другие статьи раздела Микроконтроллеры. Читайте и пишите полезные комментарии к этой статье. Последние новости науки и техники, новинки электроники: Искусственная кожа для эмуляции прикосновений
15.04.2024 Кошачий унитаз Petgugu Global
15.04.2024 Привлекательность заботливых мужчин
14.04.2024
Другие интересные новости: ▪ Персистентные клетки манипулирующие иммунными клетками ▪ Проекционные дисплеи в автомобилях могут быть небозопасны ▪ Миниатюрный окислительно-восстановительный проточный источник питания Лента новостей науки и техники, новинок электроники
Интересные материалы Бесплатной технической библиотеки: ▪ раздел сайта Зарядные устройства, аккумуляторы, батарейки. Подборка статей ▪ статья Ко Вестерик. Знаменитые афоризмы ▪ статья Когда и почему на мужских брюках появились стрелки? Подробный ответ ▪ статья Маркетолог. Должностная инструкция ▪ статья Усилитель на микросхеме TDA1013b. Энциклопедия радиоэлектроники и электротехники ▪ статья Зарядное устройство на тиристорном инверторе. Энциклопедия радиоэлектроники и электротехники
Оставьте свой комментарий к этой статье: All languages of this page Главная страница | Библиотека | Статьи | Карта сайта | Отзывы о сайте www.diagram.com.ua |