Автор: Горин Н. А., Струнилин В. Н.
Источник оригинальной статьи: Библиотека ДонНТУ
Горин Н. А., Струнилин В. Н. Мониторинг температуры средствами микроконтроллера Arduino Uno. Выполнена разработка электронного прибора, отслеживающего при помощи терморезистора изменение и отображения на LED – дисплее температуры устройства под управлением микроконтроллера Arduino Uno.
Ключевые слова: терморезистор, LED – дисплей, микроконтроллер.
При работе как электронной, так и механической техники выделяется тепловая энергия. Например, при работе микроконтроллера в мобильном телефоне выделяется небольшое количество тепла, а при работе центрального процессора в компьютере может выделяться достаточное количество тепла, способное нарушить работоспособность не только самого процессора, но и электронных элементов, находящихся рядом с ним на плате. Другим примером является конвейер на заводе для штамповки пластмассовых деталей. В конвейере уже установлены датчики контроля температуры, но бывают случаи, когда их для большей надёжности нужно продублировать независимой системой, которая должна быть простая в использовании и недорогая при её компоновке. Следовательно, разработка устройства определения температурного режима является актуальной.
После выполнения анализа литературы выбрана платформа Arduino Uno.
Arduino Uno контроллер построен на ATmega328 [1]. Платформа имеет 14 цифровых входов/выходов (шесть из которых могут использоваться как выходы ШИМ), шесть аналоговых входов, кварцевый генератор 16 МГц, разъем USB, силовой разъем, разъем ICSP и кнопку перезагрузки. Для работы необходимо подключить платформу к компьютеру посредством кабеля USB, либо подать питание при помощи адаптера AC/DC или батареи [1].
Платформа программируется посредством ПО Arduino. Язык программирования устройств Arduino основан на C/C++ [2,3].
Цель статьи – разработать электронный прибор для мониторинга температуры электронных устройств средствами микроконтроллера Arduino Uno.
Необходимо разработать систему мониторинга температуры для домашнего персонального компьютера (ПК), а именно для отслеживания температуры центрального процессора (CPU) и графического процессора (GPU) на видеокарте.
Программироваться микроконтроллер будет через USB при помощи ПК. Для программирования микроконтроллера будем использовать среду разработки Arduino 1.0.5. Микроконтроллер ATmega328 поставляется с записанным загрузчиком, облегчающим запись новых программ без использования внешних программаторов.
Работать полученное устройство будет автономно, т.е. без вмешательства операционной системы либо пользователя. Питание устройства производиться посредством подключения к одному из портов USB на задней панели ПК.
Монтаж устройства производится посредством соединения датчиков температуры и контроллера Arduino Uno при помощи специальных проводников с разъёмами: с одной стороны типа вилка
, с другой стороны типа розетка
.
Электронное устройство состоит из:
Температурный диапазон датчиков от -55 до +125°С с точностью 0.06°С. Напряжение питания 3-5В, следовательно, питание подключается от выхода Arduino. Распиновка: 1-й вывод – земля; 3-й вывод – питание, 2-й – данные. Шина данных подключается к +5 вольт через резистор 4.7кОм (подтягивающий резистор). Все датчики подключаются параллельно.
На рисунках приведена схема аппаратной части (рис. 1) и прототип готового устройства (рис. 2) с одним датчиком температуры.
Рисунок 1 – Схема аппаратной части
Рисунок 2 – Прототип готового устройства
Полученное устройство простое в применении, сборке и настройке. Сборка производится при помощи проводного монтажа. Если есть необходимость в увеличении количества датчиков температуры (больше шести штук), то необходимо дополнительно спаять небольшой модуль расширения и подвести к нему отдельно питание, вследствие чего можно подключить достаточное количество датчиков. Программирование микроконтроллера не сложное, т.к. не нужны специальные программаторы. Для программировании микроконтроллера используется язык С. Среда разработки сама позаботится о том, чтобы перевести программу на язык Assembler – понятный для микроконтроллера. Установка датчиков сводится к закреплению их на необходимом объекте отслеживания. Следует учесть специфику среды, в которую помещаются датчики, т.к. в данном проекте были использованы обычные датчики без изоляции от влаги либо других вредных для схем факторов.
1. Официальный сайт Ардуино в России Интернет-ресурс
2. Официальный сайт Ардуино, библиотека SPI Интернет-ресурс
3. Подбельский В. В., Программирование на языке Си: Учеб. пособие. – 2-е доп. изд. / В.В. Подбельский, С.С. Фомин. – М.: Финансы и статистика, 2004. – 600 с., ил.