
- •2 Разработка модуля инерционного сенсора 8
- •3 Разработка технологического процесса начальной калибровки модуля инерционного сенсора 38
- •8 Заключение 104
- •9 Список литературы 105 Введение и постановка задачи
- •Введение
- •Техническое задание на дипломный проект
- •Разработка модуля инерционного сенсора
- •Предложение и обоснование подхода к созданию сенсора
- •Разработка структурной схемы модуля инерционного сенсора
- •Обоснование выбора элементной базы
- •Акселерометр
- •Магниторезистивный сенсор
- •Температурный датчик
- •Операционный усилитель
- •Мультиплексор
- •Микроконтроллер
- •Принцип работы модуля инерционного сенсора
- •Расчет потребляемой мощности
- •Разработка технологического процесса начальной калибровки модуля инерционного сенсора
- •Обоснование необходимости начальной калибровки модуля инерционного сенсора
- •Разработка алгоритма технологического процесса начальной калибровки инерционного сенсора
- •Результаты испытания разработанного технологического процесса начальной калибровки инерционного сенсора
- •Разработка алгоритмов управления инерциальными приложениями
- •Разработка алгоритма опроса модуля инерционного сенсора и фильтрации полученных показаний
- •Разработка алгоритма распознавания базовых движенийFlip
- •Разработка алгоритма выделения базовых движенийPush
- •Разработка методики написания инерциальных приложений
- •Специфика разработки приложений для операционной системыPalmOs4.0
- •Разработка разделяемого ресурса базы данных инерционного сенсора
- •Разработка демонстрационного инерциального приложения
- •Планирование и оценка затрат создания программного продукта
- •Смоляная яма программирования
- •Сетевое планирование
- •Создание структурной таблицы работ
- •Расчет затрат на создание программного продукта
- •Расчет затрат на непосредственную разработку программного комплекса
- •Расчет затрат на изготовление опытного образца программного продукта
- •Расчет затрат на технологию
- •Затраты на эвм
- •Общие затраты на создание программного продукта
- •Производственная и экологическая безопасность
- •Введение в производственную и экологическую безопасность
- •Обеспечение производственной безопасности при разработке, производстве и эксплуатации микропроцессорных устройств
- •Микроклимат лаборатории
- •Требования к уровням шума и вибрации
- •Электробезопасность
- •Требование к защите от статического электричества и излучений при работе за компьютером.
- •Требования к освещению на рабочем месте
- •Воздействие вредных веществ при пайке
- •Психофизические факторы
- •Эргономика рабочего места
- •Расчет искусственного освещения на рабочем месте
- •Охрана окружающей среды
- •Заключение
- •Список литературы
Микроконтроллер
В качестве микроконтроллера будем использовать микросхему AT89S8252 фирмы Atmel. Это высокопроизводительный, низкопотребляющий, восьмибитный CMOS микроконтроллер. Основными характеристиками которого являются:
100000 Циклов перезаписывания
От 4 до 6В рабочий диапазон.
Диапазон частот от 0 до 24МГц
Три уровня запирания памяти
256*8 бит внутренняя ОЗУ
32 Программируемых линий ввода/вывода
Низкое потребление
Восстановление в рабочий режим по прерыванию
Рис. 2.14 Микросхема AT89S8252, вид сверху
Описание выводов:
VCC – напряжение питания.
GND – общий.
Port 0 – открытый, двунаправленный восьмибитный порт ввода/вывода. Порт 0 может быть настроен для работы с совмещённой шиной адреса и данных.
Port 1 – восьмибитный двунаправленный порт с внутренней подтяжкой до третьего состояния.
Port 2 - восьмибитный двунаправленный порт с внутренней подтяжкой до третьего состояния. Используется как порт адреса.
Port 3 – восьмибитный двунаправленный порт ввода-вывода с подтяжкой до третьего состояния. Также можут быть использован для передачи информации по последовательному каналу.
RST – Сброс.
ALE/PROG – Address Latch Enable.
PSE – читает строб в память программы.
EA/VPP – Включение внешнего адреса.
XTAL1 – вход инвертирующего усилителя.
XTAL2 – выход из инвертирующего усилителя.
Таблица 2.18
Описания дополнительных функций выводов порта 1 и 3микросхемы AT89S8252
Мнемоника |
Описание |
P1.0 |
Т2 синхо выход |
P1.1 |
Т2 дополнительный синхро выход |
P1.4 |
Выход выбора подчиненного порта |
P1.5 |
Главный выход данных, подчиненный вход данных для SPIканала |
P1.6 |
Главный вход данных, подчиненный выход данных для SPIканала |
P1.7 |
Главный выход синхронизации, подчиненный выход синхронизации для SPIканала |
P3.0 |
RXD (для последовательного канала) |
P3.1 |
TXD (для последовательного канала) |
P3.2 |
Внешнее прерывание 0 |
P3.3 |
Внешнее прерывание 1 |
P3.4 |
Таймер 0, внешний вход |
P3.5 |
Таймер 1, внешний вход |
P3.6 |
Строб записи |
P3.7 |
Строб чтения |
Принцип работы модуля инерционного сенсора
ПЛИС генерирует на выход сигнала сброса сигнал «меандр», схема сброса по положительным и отрицательным фронтам этого сигнала подаёт на вход сброса магниторезистивного сенсора сигнал с большим током, заставляя домены магниторезистивного сенсора переориентироваться в одном направлении. В промежутки времени между положительными и отрицательными фронтами сигнала сброса ПЛИС с частотой 2кГц опрашивает последовательно магниторезистивный сенсор, первый и второй акселерометры и температурный датчик , записывая их показания в 7 12-и разрядных регистров.
Регистр оси Х магниторезистивного сенсора.
Регистр оси Y магниторезистивного сенсора.
Регистр оси Z магниторезистивного сенсора.
Регистр оси X акселерометров.
Регистр оси Y акселерометров.
Регистр оси Z акселерометров.
Регистр показаний температуры.
Сразу после включения схемы ПЛИС подаёт на масштабирующие входы магниторезистивного сенсора калибровочные коэффициенты, необходимые для масштабирования и линейного выравнивания показаний магниторезистивного сенсора.
Микроконтроллер с частотой 2кГц производит считывание данных из первых 6-и вышеупомянутых регистров ПЛИС. Проводит масштабную и линейную корректировку показаний акселерометров. Раз в минуту микроконтроллер производит считывание показаний температурного датчика и использует его показания для температурной корректировки показаний акселерометров и магниторезистивных сенсоров в соответствии с таблицей поправок зашитой в микроконтроллере. После снятия и корректировки показаний акселерометров и магниторезистивных сенсоров, микроконтроллер производит первичную фильтрацию этих показаний алгоритмом скользящего среднего, с размеров скользящего окна равным 16.
При поступлении сигнала с интерфейса RS-232C микроконтроллер проверяет присланный байт. Если он равен 55h, то микроконтроллер начинает последовательно отсылать корректированные и отфильтрованные показания акселерометров и магниторезистивных сенсоров через интерфейс RS-232C в КПК. Последовательность посылки такая:
Первые 8 бит показаний оси X магниторезистивного сенсора.
Последние 4 бита показаний оси X магниторезистивного сенсора дополненные нулями в старших разрядах.
Первые 8 бит показаний оси Y магниторезистивного сенсора.
Последние 4 бита показаний оси Y магниторезистивного сенсора дополненные нулями в старших разрядах.
Первые 8 бит показаний оси Z магниторезистивного сенсора.
Последние 4 бита показаний оси Z магниторезистивного сенсора дополненные нулями в старших разрядах.
Первые 8 бит показаний оси X акселерометров.
Последние 4 бита показаний оси X акселерометров дополненные нулями в старших разрядах.
Первые 8 бит показаний оси Y акселерометров.
Последние 4 бита показаний оси Y акселерометров дополненные нулями в старших разрядах.
Первые 8 бит показаний оси Z акселерометров.
Последние 4 бита показаний оси Z акселерометров дополненные нулями в старших разрядах.