Главная страница
Навигация по странице:

  • «МОСКОВСКИЙ АВИАЦИОННЫЙ ИНСТИТУТ (НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ

  • Специальность ___

  • Курсовой проект. Разработка электронного устройства Датчик температуры и влажности воздуха


    Скачать 3.22 Mb.
    НазваниеРазработка электронного устройства Датчик температуры и влажности воздуха
    АнкорКурсовой проект
    Дата31.10.2022
    Размер3.22 Mb.
    Формат файлаdocx
    Имя файлаkursovoy_proekt_1 (3).docx
    ТипКурсовой проект
    #763630




    МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

    ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ

    УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ

    «МОСКОВСКИЙ АВИАЦИОННЫЙ ИНСТИТУТ

    (НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ)» (МАИ)

    филиал «РКТ» МАИ в г. Химки Московской области

    Филиал «РКТ» МАИ в г.Химки Московской области

    Специальность ___09.02.01_______________________Группа __Э31-19 ________

    Квалификация ___Техник по компьютерным системам________________________

    КУРСОВОЙ ПРОЕКТ (РАБОТА)

    На тему: _Разработка электронного устройства «Датчик температуры и влажности воздуха»_________________
    _____________________________________________________________________________
    Автор курсового проекта (работы) _Дыга Артём Алексеевич_______________(подпись)

    ( Фамилия Имя Отчество)

    Руководитель _Шалденков Юрий Евгеньевич____________________________(подпись)

    ( Фамилия Имя Отчество)




    Химки

    2022 г.

    СОДЕРЖАНИЕ




    Введение 3

    1 Техническое задание 4

    1.1 Наименование изделия 4

    1.2 Основания для проведения работ 4

    1.3 Заказчик 4

    1.4 Разработчик 4

    1.5 Плановые сроки начала и окончания работы 4

    1.6 Порядок оформления и предъявления заказчику результатов работ 4

    1.7 Назначение изделия 5

    1.8 Требование к разрабатываемому устройству 5

    2 Обзор программно аппаратных платформ 6

    3 Обоснование выбора программно-аппаратной платформы 9

    4 Элементная база 10

    5 Схема электрическая структурная 14

    6 Схема электрическая принципиальная 15

    7 Описание программы 17

    7.1 Блок-схемы программы 17

    7.2 Текст программы 19

    Заключение 21

    Список использованных источников 22

    Приложения 23

    ВВЕДЕНИЕ

    Современная микропроцессорная техника является одним из основополагающих средств при решении различных задач в области сбора и обработки данных, систем автоматического управления, а так же обработка запросов при обслуживании компонентов персонального компьютера. Актуальность темы курсового проекта обусловлена широкой распространённостью микропроцессоров и микропроцессорных систем. В связи с массовым выпуском микропроцессорных наборов БИС с широкими функциональными возможностями, их низкой стоимостью, гибкостью и точностью цифровых методов обработки информации превратили микропроцессоры в системные элементы, на их основе создаются разные системы, связи, измерительной техники, управления транспортом и так далее.

    Этим обусловлена актуальность рассматриваемой темы курсовой работы – разработка электронного устройства «датчик температуры и влажности воздуха». При разработке данного устройства будут получены навыки по работе с микропроцессорной техникой и изучены основы её программирования.

    1. Техническое задание




      1. Наименование изделия


    Разрабатываемое устройство «датчик температуры и влажности воздуха».



    1. Основания для проведения работ

    Работа выполняется на основании задания на курсовой проект студента Дыга Артём Алексеевич

    1. Заказчик

    «МОСКОВСКИЙ АВИАЦИОННЫЙ ИНСТИТУТ (НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ)» (МАИ) филиал «РКТ» МАИ в г. Химки Московской области

    1. Разработчик

    Студент группы Э31-19 Дыга Артём Алексеевич

    1. Плановые сроки начала и окончания работы

    Дата начала фактического получения задания на курсовую работу 11.02.2022

    Дата сдачи проекта согласно заданию, на курсовую работу 25.02.2022

    1. Порядок оформления и предъявления заказчику результатов работ

    Работы по разработке «датчик температуры и влажности воздуха» предъявляются заказчику поэтапно в соответствие с пунктом «перечнем подлежащих разработке разделов и этапы выполнения работы» задания на курсовую работу. По окончании каждого из этапов работ, Разработчик предоставляет Заказчику соответствующие отчетные документы - разделы и подразделы курсовой работы.

    Окончательной сдачей работы, считается предоставление Заказчику - курсовой работы и презентации.

    1. Назначение изделия

    Датчик температуры и влажности - Прибор, при помощи которого измеряется температура воздуха, а так же влажность среды внутри помещений. Оборудование предназначается для использования исключительно при показателях среды выше 0 градусов.

    Данный прибор необходим для фиксирования показателей и поддержания комфортного микроклимата, пригодного для жилых помещений.

    1. Требование к разрабатываемому устройству

    Разрабатываемое устройство должно: иметь размеры не более 20 сантиметров в длину, а так же 10 сантиметров в ширину, иметь массу не более 600 грамм, питаться от 5В, а так же иметь органы визуализации в виде LCD дисплея.


    1. Обзор программно аппаратных платформ

    К наиболее распространенным программно аппаратным платформам относятся Arduino, Ti MSP430 LaunchPad, Netduino, Teensy (ARM-Based). Далее сделан краткий обзор каждой платформы:

    Arduino - это устройство на основе микроконтроллера ATmega328 (datasheet). В его состав входит все необходимое для удобной работы с микроконтроллером: 14 цифровых входов/выходов (из них 6 могут использоваться в качестве ШИМ-выходов), 6 аналоговых входов, кварцевый резонатор на 16 МГц, разъем USB, разъем питания, разъем для внутрисхемного программирования (ICSP) и кнопка сброса. Для начала работы с уcтройством достаточно просто подать питание от AC/DC-адаптера или батарейки, либо подключить его к компьютеру посредством USB-кабеля. Семейство плат довольно популярные, комбинация из open source железа и софта сделала данную платформу наиболее популярной. И многие начинающие радиолюбители с большим удовольствием используют Arduino в своих проектах. В сети можно найти множество проектов на основе той или иной части проекта Arduino. Также есть очень большой выбор и готовых решений для Arduino в виде различных модулей. Данная платформа продемонстрирована на рисунке 1.



    Рисунок 1 – Программно-аппаратная платформа Arduino

    LaunchPad - По размеру, она чуть меньше Arduino, но на LaunchPad вообще нет крепёжных отверстий, зато есть четыре резиновых кружочка на тыльной стороне платы, которые позволяют плате вполне уверенно стоять на рабочем столе. Для подключения с ПК, на LaunchPad стоит разъём mini-USB (вместо полноразмерного USB-разъёма типа B, как на Arduino).На LaunchPad есть три светодиода, один — показывает наличие питания, а два светодиода разных цветов доступны пользователю:LED1 — красный подключен к пину 2 (P1.0),LED2 — зеленый подключен к пину 14 (P1.6).При желании, светодиоды можно отключить, сняв соответствующие джамперы. Так же, на LaunchPad есть две кнопки — кнопка сброса S1 и пользовательская кнопка S2, которая подключена к пину 5 (P1.3). Для ценовой категории около 700 рублей Ti MSP430 LaunchPad является отличным малобюджетным решением, как альтернатива Arduino. MSP430 LaunchPad можно использовать совместно с 3 Ti поддерживаемых IDEs: Energia IDE, CCS Cloud, и Code Composer Studio. Energia визуально очень похожа на Arduino IDE и поставляется с большим количеством примеров программ, включая "Getting Started with Energia" и "The MSP430 is Very Easy.". Как и платформа Ардуино - платформа LaunchPad имеет различные "booster packs" (аналог шилдов) для добавления функциональности к платформе LaunchPad. Изображена на рисунке 2.



    Рисунок 2 – Программно-аппаратная платформа LaunchPad

    Netduino - базируется на основе ARM микроконтроллерах запрограммированных с .NET framework. Микроконтроллеры комплектуются процессорами с частотой вплоть до 168 Mhz. Одним из преимуществ использования Netduino это ардуино совместимое расположение пинов (как в Arduino UNO). Есть несколько различных вариантов плат Netduino, под различные нужны. Данная платформа менее популярна из-за более высоких цен. Обладает сетевым интерфейсом: Ethernet 10 Мбит/с., а так же имеет внешнюю память: Micro SD до 2 ГБ. Данная плата продемонстрирована на рисунке 3.



    Рисунок 3 – Программно-аппаратная платформа Netduino

    Teensy - это линейка плат для разработчиков (development boards) небольшого размера (примерно как Arduino Micro) основанных на микропроцессорах Freescale ARM Cortex-M4. Он имеет тактовою частоту до 75Mhz, несколько дата шин, толерантные к 5 вольтам пины и более менее разумные цены. Данная платформа предлагает хороший функционал и небольшой размер. Teensy использует Arduino IDE, что весьма хорошее решение, так как много программных кодов будут работать без особых изменений. Кроме всего прочего имеются add-on платы для Teensy чтобы увеличить её функциональность, так же подходят модули от Arduino. Teensy Изображена на рисунке 4.



    Рисунок 4 – Программно-аппаратная платформа Teensy

    Все данные программно аппаратные платформы можно использовать для реализации различных проектов [1].





    1. Обоснование выбора программно-аппаратной платформы


    Плату Arduino с некоторых пор можно считать основным компонентом в сообществе радиолюбителей. Сейчас платы Arduino доступны в различных форм-факторах, с различным набором периферии. Большая их часть выполнена на 8-разрядном микроконтроллере компании Atmel. А не так давно была анонсирована плата Arduino Due на мощном ARM микроконтроллере с ядром Cortex-M3. Для дальнейшей работы была выбрана именно Arduino Uno в качестве представителя платформы Arduino. Для нее доступны простая среда разработки и большая база знаний и наработок, что говорит о возможности создания достаточно функциональных приложений.

    Так же плата Arduino имеет довольно простую блок-схему, изображенную на рисунке 4.



    Рисунок 4 – Блок схема Arduino

    Для данной задачи – Разработки электронного устройства «Датчик температуры и влажности» использование программно-аппаратной платформы «Arduino» является оптимальным по следующим причинам:

    • Не высокая стоимость;

    • Простота освоения;

    • Гибкость программирования;

    • Огромное количество различных датчиков и модулей расширения [2].




    1. Элементная база


    Главным элементом разрабатываемого электронного устройства является датчик температуры и влажности на базе DHT11.

    Датчик измерения температуры окружающей среды и влажности для Arduino проектов. Широко применяются в робототехнике и системах автоматизации.

    Принцип действия данного датчика основан на резистивном типе измерения влажности и NTC-типе (NTC – отрицательный температурный коэффициент) измерения температуры. Данный датчик имеет встроенный 8-битный микроконтроллер, что обеспечивает ему быстрый отклик на изменения окружающей среды и приемлемую стоимость. Датчик имеет 4 выходных контакта. Модуль DHT11 работает по принципу последовательной связи по одиночному проводнику.

    Технические характеристики:

    • Диапазон измерения температуры: от 0℃ до 50℃, допуск ± 2℃;

    • Диапазон измерения влажности: 20% 95%, допуск ± 5%;

    • Размеры платы: 29 х 18 мм;

    • Монтажное отверстие: 2.0мм.

    Внешний вид датчика продемонстрирован на рисунке 5.



    Рисунок 5 – Внешний вид датчика

    Arduino Uno – плата от компании Arduino, построенная на микроконтроллере ATmega 328. Плата имеет на борту 6 аналоговых входов, 14 цифровых выводов общего назначения (могут являться как входами, так и выходами), кварцевый генератор на 16 МГц, два разъема: силовой и USB, разъем ISCP для внутрисхемного программирования и кнопку горячей перезагрузки устройства.

    Так как данная плата описывалась в предыдущем разделе, далее приведены краткие характеристики:

    • Максимальная величина выходного тока пина с напряжением 5V: 0,8 А;

    • Тактовая частота кварцевого процессора: 16 МГц;

    • Количество аналоговых и цифровых портов ввода-вывода: 20;

    • Число портов, поддерживающих широтно-импульсную модуляцию: 6;

    • Разрядность аналого-цифрового преобразователя: 10 бит;

    • Максимально допустимая величина тока с пина ввода-вывода: 0,04 А;

    • ОЗУ микроконтроллера: 2 КБ;

    • Флэш-память: 32 КБ (0.5 КБ которых отведены под bootloader);

    • Размерные параметры устройства: 6,9×5,3 см.

    Внешний вид платы изображён на рисунке 6.



    Рисунок 6 – Внешний вид платы Arduino uno

    Резистор - Пассивный элемент электрических цепей, обладающий определённым или переменным значением электрического сопротивления, предназначенный для линейного преобразования силы тока в напряжение и напряжения в силу тока, ограничения тока, поглощения электрической энергии и др. Весьма широко используемый компонент практически всех электрических и электронных устройств.

    Для разъяснения принципа работы резистора можно использовать аналогию с водопроводными трубами. Если каким-либо образом затруднить протекание воды в трубе (например, уменьшив ее диаметр), произойдет повышение внутреннего давления. Убирая преграду, снижается давление. В электротехнике этому давлению соответствует напряжение — затрудняя протекание электрического тока, повышается напряжение в цепи, снижая сопротивление, понижается и напряжение.

    Резисторы с углеродным проводящим слоем предназначены для работы в цепях постоянного, переменного и импульсного тока.

    Характеристики резистора (CF-100 (С1-4) 1 Вт, 1 Ом, 5%) используемого в проекте:

    • Номинальная мощность: 0.25 Вт, 0.5 Вт, 1 Вт, 2 Вт;

    • Диапазон номинальных сопротивлений: 1 Ом - 10 МОм; ряд E24;

    • Точность: 5% (J);

    • Диапазон рабочих температур: -55 …+125°C.

    На рисунке 7 изображен внешний вид резистора.



    Рисунок 7 – Внешний вид резистора

    Жидкокристаллический дисплей — экран на основе жидких кристаллов. Простые приборы (электронные часы, термометры, плееры, телефоны и прочее) могут иметь монохромный или 2—5-цветный дисплей. С появлением быстрой светодиодной подсветки появились дешёвые сегментные и матричные многоцветные дисплеи с последовательной подсветкой цветов. В настоящий момент многоцветное изображение обычно формируется с помощью RGB-триад, используя ограниченное угловое разрешение человеческого глаза.

    Дисплей на жидких кристаллах используется для отображения графической или текстовой информации в компьютерных мониторах (также и в ноутбуках), телевизорах, телефонах, цифровых фотоаппаратах, электронных книгах, навигаторах, планшетах, электронных переводчиках, калькуляторах, часах и так далее.

    Принцип работы LCD или жидкокристаллического дисплея основана на поляризации светового потока. Жидкие кристаллы «просеивают» свет, пропуская лишь определенные волны светового пучка с соответствующей осью поляризации, и оставаясь непрозрачными для всех остальных волн. Изменение вектора поляризации осуществляется жидкими кристаллами в зависимости от приложенного к ним электрического поля. Внешний вид продемонстрирован на рисунке 8.



    Рисунок 8 - Внешний вид жидкокристаллического дисплея

    Модуль I2C: Поскольку количество контактов на контроллерах Arduino ограничено и часто при использовании различных датчиков и модулей они заканчиваются, появляется необходимость в их экономии, для этих случаев разработан этот модуль, с его помощью можно реализовать передачу по двум контактам (SDA и SCL).

    Технические параметры данного модуля:

    • Поддержка дисплеев: LCD 16×02 / 20×04;

    • Дополнительно: регулировка контрастности;

    • Напряжение питания. 5В;

    • Интерфейс: I2C;

    • Габариты: 54мм x 19мм x 15мм.

    Подключается I2C с помощью пайки контактов модуля к самому LCD дисплею. Внешний вид данного модуля продемонстрирован на рисунке 9 [3].



    Рисунок 9 – Внешний вид модуля I2C


    1. Схема электрическая структурная


    Данный раздел позволяет рассмотреть принцип работы устройства. На структурной схеме изображают основные функциональные части (блоки) изделия, их назначение и линии связи между ними.

    Благодаря упрощению схемы изделия удается на раннем этапе обнаружить ошибки проектирования, перераспределять требования к узлам радиоэлектронного устройства.

    Структурная схема разрабатываемого устройства представлена на рисунке 10.



    Рисунок 10 – Структурная схема измерителя температуры и влажности

    В данной схеме сигнал с датчика поступает в виде цифрового сигнала в микропроцессор, где проходит обработку.

    Микропроцессор опрашивает датчик с некоторыми интервалами времени. Если прибор включен, микропроцессор подает питание на ЖК-дисплей и посылает информацию для вывода графической информации о текущих параметрах среды.

    Микропроцессор обеспечивается питанием от источника и в свою очередь управляет питанием датчика и дисплея, что позволяет экономить некоторое количество энергии за счет координации периодов работы микроконтроллера и периферии.

    При отключении питания, дисплей с датчиком отключаются, следовательно прибор выключается.


    1. Схема электрическая принципиальная


    Данный раздел определяет полный состав элементов и связей между ними и дает представление о принципах работы изделия.

    На рисунке 11 представлена принципиальная схема устройства.



    Рисунок 11 – Принципиальная схема устройства

    На рисунке 12 изображен внешний вид макета, на котором видно, как подключены провода к различным пинам.



    Рисунок 12 – Внешний вид макета

    Из приведенных рисунков видно, что все радиоэлементы (lcd дисплей и датчик dht-11) подсоединены проводами к определенным пинам на плате arduino, а именно:

    Датчик температуры и влажности DHT-11. Контакты данного датчика нумеруются слева на право, если корпус датчика находится перед пользователем со стороны решетки, и контакты расположены внизу. Для правильной работы датчика нужно впаять резистор на 10 кОм между выходами сигнала и питанием, но так как используется готовый датчик, смонтированный на плате, с подключенным резистором, можно подключать его к плате Arduino без использования резистора. Для подачи напряжения к датчику, проводом подключается VCC к +5В. GMD подключается к заземлению на плате, а третий контакт датчика подключается к любому пину на плате. Как видно из схемы, третий вывод подключен к пину под номером 2. Номер пина затем нужно будет указать в скетче для того, чтобы данные с датчика передавались на плату arduino.

    LCD дисплей с шиной I2C. Как упоминалось раннее, дисплей с шиной имеет 4 контакта: Питание (VCC), земля (GND), линия тактирования (SCL) и линия данных (SDA). Как видно из схемы линии I2C соединены с аналоговыми пинами А5 и А4 на плате arduino соответственно, а так же протянут провод для сигнал к линии 5 В.


    1. Описание программы




    1. Блок-схемы программы


    Блок-схема — Это схематичное представление процесса, системы или компьютерного алгоритма. Блок-схемы часто применяются в разных сферах деятельности, чтобы документировать, изучать, планировать, совершенствовать и объяснять сложные процессы с помощью простых логичных диаграмм. Для построения блок-схем применяются прямоугольники, овалы, ромбы и некоторые другие фигуры (для обозначения конкретных операций), а также соединительные стрелки, которые указывают последовательность шагов или направление процесса. Блок-схемы варьируются от незамысловатых, нарисованных вручную до подробных, составленных на компьютере диаграмм со множеством шагов и процессов. Если учесть все возможные вариации, блок-схемы можно признать одним из самых распространенных видов схем во всем мире. Они широко используются в разных сферах как технической, так и нетехнической направленности [4].

    На рисунке 13 изображены основные элементы блок-схем.



    Рисунок 13 – Основные элементы блок-схем

    Блок-схема алгоритма для устройства «датчик температуры и влажности воздуха» изображена на рисунке 14.



    Рисунок 14 – Блок-схема устройства

    Описание блок-схемы: При включении питания устройство запускается, происходит считывание информации с подключенного датчика dht11. Так как рабочий диапазон считываемой температуры датчиком колеблется в пределах от 0 до 50 градусов, и если температура выходит за пределы нормы, то на дисплей информация выводиться не будет, после чего будет производиться повторное считывание информации с датчика до тех пор, пока показатели не придут в норму. Если температура подходит в диапазон от 0 до 50 градусов, соответственно происходит вывод считанной информации с датчика на дисплей, после чего показатели будут обновляться каждые несколько секунд путём повторного считывания показателей датчиком. При выключении питания устройство выключается.


    1. Текст программы


    #include // Добавляем необходимые библиотеки

    #include

    #include "DHT.h"

    #define DHTPIN A0 // к какому пину будет подключен сигнальный выход датчика

    //выбор используемого датчика

    #define DHTTYPE DHT11 // DHT 11

    //#define DHTTYPE DHT22 // DHT 22 (AM2302)

    //#define DHTTYPE DHT21 // DHT 21 (AM2301)

    //инициализация датчика

    DHT dht(DHTPIN, DHTTYPE);

    byte degree[8] = // кодируем символ градуса

    {

    B00111,

    B00101,

    B00111,

    B00000,

    B00000,

    B00000,

    B00000,

    };

    LiquidCrystal_I2C lcd(0x27,16,2); // Задаем адрес и размерность дисплея

    void setup()

    {

    lcd.init(); // Инициализация lcd

    lcd.backlight(); // Включаем подсветку

    lcd.createChar(1, degree); // Создаем символ под номером 1

    Serial.begin(9600);

    dht.begin();

    }

    void loop() {

    // Добавляем паузы в несколько секунд между измерениями

    delay(2000);

    // Reading temperature or humidity takes about 250 milliseconds!

    // Sensor readings may also be up to 2 seconds 'old' (its a very slow sensor)

    float h = dht.readHumidity();

    // Read temperature as Celsius

    float t = dht.readTemperature();

    // Read temperature as Fahrenheit

    float f = dht.readTemperature(true);

    // Выводим показания влажности и температуры

    lcd.setCursor(0, 0); // Устанавливаем курсор в начало 1 строки

    lcd.print("Hum = % "); // Выводим текст

    lcd.setCursor(7, 0); // Устанавливаем курсор на 7 символ

    lcd.print(h, 1); // Выводим на экран значение влажности

    lcd.setCursor(0, 1); // Устанавливаем курсор в начало 2 строки

    lcd.print("Temp = \1C "); // Выводим текст, \1 - значок градуса

    lcd.setCursor(7, 1); // Устанавливаем курсор на 7 символ

    lcd.print(t,1); // Выводим значение температуры

    }

    ЗАКЛЮЧЕНИЕ
    В процессе выполнения данной курсовой работы было разработано устройство «датчик температуры и влажности воздуха», предназначенное для контроля температуры и влажности воздуха. С помощью данного устройство, как описывалось ранее можно фиксировать показатели микроклимата пригодного для жилых помещений. Подобное устройство пользуется довольно большой популярностью, тем самым тема данного курсового проекта является актуальной.

    Так же при написании данной курсовой работы были изучены основы программирования и получены навыки по работе с микропроцессорной техникой на основе «Arduino UNO».
    Список использованных источников

    1. Обзор программно аппаратных платформ. URL: https://pikabu.ru/story/5_prekrasnyikh_alternativ_arduino_3923854 (дата обращения: 15.03.2022).

    2. Обоснование выбора платформы. URL: https://amperka.ru/page/development-board-guide (дата обращения: 24.03.2022).

    3. Обзор используемых компонентов. URL: https://www.chipdip.ru/ (дата обращения: 08.04.2022).

    4. Блок-схема. URL: https://www.lucidchart.com/pages/ru/блок-схема (дата обращения: 27.04.2022).





    написать администратору сайта