www.diagram.com.ua
www.diagram.com.ua
Русский: Русская версия English: English version
Translate it!
Поиск по сайту

+ Поиск по журналам
+ Поиск по статьям сайта
+ Поиск по схемам СССР
+ Поиск по Библиотеке

Бесплатная техническая библиотека:
Все статьи А-Я
Энциклопедия радиоэлектроники и электротехники
Новости науки и техники
Журналы, книги, сборники
Архив статей и поиск
Схемы, сервис-мануалы
Электронные справочники
Инструкции по эксплуатации
Голосования
Ваши истории из жизни
На досуге
Случайные статьи
Отзывы о сайте

Справочник:
Большая энциклопедия для детей и взрослых
Биографии великих ученых
Важнейшие научные открытия
Детская научная лаборатория
Должностные инструкции
Домашняя мастерская
Жизнь замечательных физиков
Заводские технологии на дому
Загадки, ребусы, вопросы с подвохом
Инструменты и механизмы для сельского хозяйства
Искусство аудио
Искусство видео
История техники, технологии, предметов вокруг нас
И тут появился изобретатель (ТРИЗ)
Конспекты лекций, шпаргалки
Крылатые слова, фразеологизмы
Личный транспорт: наземный, водный, воздушный
Любителям путешествовать - советы туристу
Моделирование
Нормативная документация по охране труда
Опыты по физике
Опыты по химии
Основы безопасной жизнедеятельности (ОБЖД)
Основы первой медицинской помощи (ОПМП)
Охрана труда
Радиоэлектроника и электротехника
Строителю, домашнему мастеру
Типовые инструкции по охране труда (ТОИ)
Чудеса природы
Шпионские штучки
Электрик в доме
Эффектные фокусы и их разгадки

Техническая документация:
Схемы и сервис-мануалы
Книги, журналы, сборники
Справочники
Параметры радиодеталей
Прошивки
Инструкции по эксплуатации
Энциклопедия радиоэлектроники и электротехники

Бесплатный архив статей
(150000 статей в Архиве)

Алфавитный указатель статей в книгах и журналах

Бонусы:
Ваши истории
Загадки для взрослых и детей
Знаете ли Вы, что...
Зрительные иллюзии
Веселые задачки
Каталог Вивасан
Палиндромы
Сборка кубика Рубика
Форумы
Карта сайта

ДИАГРАММА
© 2000-2020

Дизайн и поддержка:
Александр Кузнецов

Техническое обеспечение:
Михаил Булах

Программирование:
Данил Мончукин

Маркетинг:
Татьяна Анастасьева

Перевод:
Наталья Кузнецова

Контакты

При использовании материалов сайта обязательна ссылка на http://www.diagram.com.ua

сделано в Украине
сделано в Украине

Диаграмма. Бесплатная техническая библиотека

Бесплатная техническая библиотека Бесплатная техническая библиотека, Энциклопедия радиоэлектроники и электротехники

Манипулятор с датчиком ускорения

Бесплатная техническая библиотека

Энциклопедия радиоэлектроники и электротехники / Микроконтроллеры

Комментарии к статье Комментарии к статье

Для работы на ПК сегодня используют самые разные манипуляторы - "мыши", джойстики, трекболы. В статье описывается еще один тип манипулятора, заменяющий компьютерную "мышь", но ему не требуется ровная горизонтальная поверхность для перемещения. Его можно просто держать в руке, а указатель "мыши" будет перемещаться при наклоне манипулятора в соответствующем направлении. Такой способ управления может оказаться очень эффективным в некоторых компьютерных играх, например, в авиасимуляторах, или как альтернативный манипулятор для ноутбуков.

Предлагаемый манипулятор (его принципиальная схема изображена на рис. 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 устройство не работает, так как поддерживает только последовательный интерфейс.

Литература
  1. ADXL202E, Low-Cost ±2 g Dual-Axis Accelerometer with Duty Cycle Output. - <analog.com>.
  2. Воловий А., Врлович Г. Интегральные акселерометры. - Компоненты и технологии, 2002, № 1, с. 66.
Автор: С.Кулешов, г. Курган

Смотрите другие статьи раздела Микроконтроллеры.

Читайте и пишите полезные комментарии к этой статье.

<< Назад

Рекомендуем скачать в нашей Бесплатной технической библиотеке:

раздел сайта Телефония

журналы Chip (годовые архивы)

книга Асинхронные электродвигатели. Архипцев Ю.Ф., 1986

книга Настольная радиола с магнитофоном. Керножицкий Е.П., 1953

статья Акустическая система VERNA 50-01

статья Устройство автоматической подачи воды для мытья рук

справочник Сервисные режимы телевизоров зарубежных телевизоров. Книга №12

Оставьте свой комментарий к этой статье:

Имя:


E-mail (не обязательно):


Комментарий:

[lol][;)][roll][oops][cry][up][down][!][?]




Бесплатная техническая библиотека Бесплатная техническая документация для любителей и профессионалов