|
Одночиповый регистратор данных температуры
Статьи публикуются по мере поступления. Для упорядоченного тематического
поиска воспользуйтесь блоком "Карта сайта"
Регистратор данных - это устройство, которое записывает измерения с течением времени. Измерения могут представлять собой любые физические переменные, такие как температура, давление, напряжение, влажность и т. д. В этом проекте описывается, как построить мини-регистратор, который записывает значения температуры окружающей среды. Он имеет следующие данные:
Использует только один 8-контактный чип, поэтому очень компактная схема.
Диапазон температур: от 0 до + 125 ° C.
Может хранить до 254 измерений.
Опции интервала выборки: 1 сек, 1 мин, 10 мин
Сброс, чтобы удалить все предыдущие измерения.
Последовательный перенос записанных измерений на ПК
Три тактильных переключателя для пользовательских входов и светодиодный индикатор.
Красота этого проекта заключается в том, что он использует только один чип для регистрации. Это PIC12F683, 8-контактный микроконтроллер от Microchip. PIC12F683 имеет шесть выводов ввода-вывода общего назначения (GP0, GP5, GP3 является только входом) и 2K x 14 Flash-память с 256 байтами внутренней EEPROM. Температура будет измеряться датчиком температуры DS1820. DS1820 - однопроводный цифровой температурный датчик от Dallas Semiconductor (теперь MAXIM). Диапазон рабочих температур устройства составляет от -55 ° C до + 125 ° C с точностью ± 0,5 ° C в диапазоне от -10 ° C до + 85 ° C. Выход термодатчика измеряет температуру 9 ° C по Цельсию, поэтому разрешение по температуре соответствует наименее значащему биту и составляет 0,5 ° C. Но в этом проекте мы будем использовать только самые значительные восемь бит. Поэтому температурное разрешение будет 1 ° C. Измеренные температуры будут записаны во внутреннюю память EEPROM PIC12F683. В первом месте внутреннего EEPROM будет храниться интервал выборки регистратора данных. Интервал выборки определяет временной интервал между двумя последовательными измерениями. Будет иметь 3 варианта времени выборки: 1 с, 1 мин и 10 мин. Они выбираются пользователем. Во втором месте EEPROM будет храниться количество записанных до сих пор измерений. А в оставшихся 254, EEPROM будет хранить температуры по 8 бит. Таким образом, используя 10 мин интервал выборки, 254 байта EEPROM будут обеспечивать регистрацию данных в течение 42 часов. Записанные измерения могут быть отправлены на ПК в любое время через последовательную линию связи со скоростью 9600 бод.
Перенос данных на ПК.
Старт: Когда нажата кнопка «Старт», начинается регистрация данных.
Стоп: После нажатия кнопки «Стоп» запись данных прекращается.
Отправить: Перенесите данные на ПК через последовательный порт.
Сброс: удерживая кнопку «Отправить» в течение 2 секунд или более, очищает внутреннюю память EEPROM.
Выбор времени выборки. Предположим, если нам потребуется 1 мин. Времени выборки, сначала выключите питание, затем нажмите кнопку «Стоп», включите питание и подождите, пока загорится светодиод. Как только загорится светодиод, отпустите кнопку, и интервал выборки будет установлен на 1 мин. Новое время выборки набора будет обновлено до места EEPROM 0, так что в случае сбоя питания предыдущее время выборки будет восстановлено. Аналогичным образом, используйте кнопки «Старт» и «Отправить» в течение 1 секунды и 10 минут интервалов выборки соответственно. Каждый раз, когда пользователь нажимает кнопки ввода, светодиод мигает на мгновение, показывая, что вход принят. Он также мигает трижды каждый раз, когда выполняется операция записи EEPROM. Он также начинает мигать в начале, когда питание включено. Он также светится, когда память EEPROM заполнена.
Принципиальная электрическая схема
Список компонентов
Микроконтроллер PIC12F683
Датчик температуры DS1820
BC557 NPN-транзистор
Резисторы: 10K (4), 4.7K (2), 470 Ом (1)
Конденсатор: 10uF, 50V (1)
СИД (1)
Выключатели тактовые (3)
Прошивка написана на C и скомпилирована с mikroC компилятором от MikroElektronika. Я использовал бесплатную версию, потому что наш HEX-выход будет меньше 2K. Ссылка для загрузки для mikroC: mikroc_pro_pic_2010_v380_setup.zip
Мои настройки HyperTerminal: bps: 9600, бит данных: 8, четность: нет, стоповые биты: 1, управление потоком: аппаратное
Окно приема гипертерминала.
Фото
Скачать