Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Отчет по учебной практике ИБ-1401 Владимиров, Поликарпов, Смирнов.docx
Скачиваний:
9
Добавлен:
01.07.2025
Размер:
1 Мб
Скачать
☆

4. Данные о комплектующих

4.1 Arduino ProMini ATmega168 20MU

Рис *** Arduino ATmega168

Изначально система разрабатывалась на Arduino Mega2560, но так как потенциал Mega2560 не был использован полностью нами было принято решение оптимизировать и перенести все на Promini. Изначально код для InsideArduino весил ~23 КБайта и использовал ~1.5 КБайта оперативной памяти, но после оптимизации библиотек и самого кода, а также удаления маловажных функций, код стал занимать 14 028 байт памяти и использует 742 байта динамической памяти. Это дополнительно помогло сделать проект более экономически выгодным.

Стоимость

84 руб.

Питание (постоянный ток)

От 5 до 12 V

Частота процессора

16 МГц

Размер

33.3*18.0 мм

Кол-во выводов

32

Цифровые выводы

13

Аналоговые выводы

4

Флеш память

16 кБайт

Оперативная память

1 кБайт

4.2 LCD Keypad Shield

Встроенный IIC/I2C преобразователь. Питание 5В. Работает только с латиницей, но можно добавлять собственные символы.

Шилд с дисплеем LCD1602 подключается через 6 цифровых выходов и 1 аналоговый выводы. Через аналоговый пин подключены 5 кнопок благодаря подключению кнопок через резисторы разного сопротивления (рис. 3). Также для работы шилда необходимо подключить питание и выход Reset.Используемые выводы: А0 - кнопки (Select, Up, Right, Down, Left), D4-D10 - подключение экрана.

Рис.3 Схема подключения кнопок на LCD Keypad Shield.

5. Ик передача данных

InfraRed Data Association - передача данных с использованием инфракрасного диапазона световых волн в качестве среды передачи. Является разновидностью оптической линии связи ближнего радиуса действия.

Была особо популярна в конце 1990-х начале 2000-х годов. В данное время практически вытеснена более современными аналогами, такими как WiFi и Bluetooth.

Основные причины отказа от IrDA были:

1. Усложнение сборки корпусов устройств, в которых монтировалось ИК-прозрачное окно.

2. Ограниченная дальность действия и требования прямой видимости пары приёмник-передатчик.

3. Относительно низкая скорость передачи данных первых реализаций стандарта. В последующих ревизиях стандарта этот недостаток исправили: скоростные возможности немного превышают, например, возможности самой распространённой на сегодняшний момент версии протокола Bluetooth (спецификация 4.0). Однако широкого распространения скоростные варианты IrDA получить уже не успели.

В нашей системе передача ИК сигнала происходит через NEC протокол инфракрасного управления. Формат NEC, первоначально разработанный одноименной японской фирмой, встречается в большом количестве вариаций. Здесь представлен так называемый Японский вариант.

Особенности формата:

  1. 8 бит данных и 8 бит команда

  2. Адрес и команда передаются дважды для исключения ошибки

  3. Метод кодирования бит - интервалами

  4. Несущая частота 38 кГц

  5. Время передачи бита 1.125 мс или 2.25 мс

NEC формат использует для передачи информации опорную частоту 38 кГц со скважностью 3 или 4. Все пакеты кроме преамбулы имеют длительность 560 мкс (21 импульс опорной частоты). "Единица" передается интервалом 2.25 мс, "ноль" - интервалом 1.125 мс.

Рис ** Логические 1 и 0 в NEC формате

Типичный формат посылки NEC состоит из преамбулы - пакета несущей частоты длительностью 9 мс, за которой следует промежуток 4.5 мс. Преамбула помогает приемнику установить необходимый уровень усиления и нуля, хотя современные приемники в этом не нуждаются. Далее следует реперный пакет стандартной длительности и за ней 32  интервала, соответствующие 4 байтам информации, причем каждый байт передается младшим битом вперед. Адрес и команда передаются дважды, второй раз они передаются в дополнительном коде.  Общая длительность передачи пакета постоянна, поскольку каждый бит передается сначала в прямом, затем в инверсном виде.

Рис *** NEC сигнал с 8 битами полезной нагрузки

При удержании кнопки пульта, команда передается только один раз, затем передаются короткие посылки, состоящие из преамбулы длительностью 9 мс и единичного интервала. Такие посылки передаются с периодичностью 110 мс.

Рис *** Преамбула и единичный интервал

Общий вид последовательности при нажатой и удерживаемой кнопке такой:

Рис *** Сигнал при зажимании кнопки

Одна из наиболее часто встречаемых модификаций протокола NEC отличается от стандартного тем, что адрес имеет не 8, а 16 бит. При этом, адрес не передается в дополнительном коде и общее число бит сохраняется. Однако длительность пакета становится зависимой от кода адреса.

Рис *** Сигнал NEC с 16 битами полезной нагрузки

Существует множество форматов передачи данных по ИК излучению, но для наших целей нужен был простой в реализации и понимании формат, поэтому наш выбор пал на NEC.

В нашей системе используется модифицированная версия протокола, которая задается через переменную nbits в нашем коде:

int nbits = 16;

irsend.sendNEC(data, nbits);

Переменная data это 16 бит информации, в нашем случае это целое шестнадцатеричное число.