В статье мы рассмотрим устройство на микроконтроллере, осуществляющее сбор и накопление данных (Data-logger). Данные, получаемые от встроенного в микроконтроллер аналого-цифрового преобразователя, сохраняются на карте памяти microSD с файловой системой FAT32 в формате CSV. Устройство позволяет отслеживать 8 аналоговых каналов (именно столько имеет АЦП микроконтроллера), т.е. пользователи могут подключить к устройству до 8 аналоговых сенсоров. В нашем случае, к одному из каналов подключен датчик температуры, остальные используются для измерения напряжения.
Устройство имеет часы реального времени с резервным источником питания, что позволяет записывать, помимо данных с АЦП, время получения данных. Такая функция может быть полезна при анализе данных и составления статистики изменения данных.
Настройка системы является очень простой и производится с персонального компьютера по интерфейсу RS-232. После настройки системы в подключении по RS-232 нет необходимости, однако данный интерфейс может использоваться для отладки.
Основой устройства является 8-разрядный микроконтроллер Atmel AVR ATmega32, имеющий 32 КБайт Flash-памяти, 2 КБайт SRAM и богатую периферию. В данном устройстве микроконтроллер работает от внешнего кварцевого резонатора на частоте 16 МГц. Для реализации функции записи времени регистрации данных применена микросхема часов реального времени DS1307 с интерфейсом I2C.
Следует отметить, что необходимо проверить правильность подключения часов реального времени к микроконтроллеру, иначе микроконтроллер может "зависнуть" на этапе получения данных по интерфейсу I2C.
Для подключения карты памяти к микроконтроллеру использовался специальный модуль с установленным слотом под карту. Кроме того, модуль имеет установленный LDO регулятор напряжения 3.3 В (LDO – с низким падением напряжения на регуляторе), микросхему преобразователя логических уровней 5 В – 3.3 В и некоторые защитные элементы. Данный модуль предоставляет более стабильный интерфейс и повышает надежность системы.
Пользователи могут самостоятельно реализовать данный интерфейс, для этого стоит ознакомиться с ранее опубликованным материалом - Подключение SD и SDHC карт памяти к микроконтроллерам ATmega8 / Atmega32. Кроме того, в указанном материале подробно описываются процедуры реализации различных функций работы с файлами в файловой системе FAT32.
Принципиальная схема системы сбора и накопления данных
Надписи на схеме | |
Power Supply | Источник питания |
LED2 (Green) – Power ON Indicator | LED2 (Зеленый) – Индикатор включения питания |
LED1 (Red) – Recording ON Indicator | LED1 (Красный) – Индикатор включения записи |
S1 – Start/Stop Recording Button | S1 – Кнопка пуска/останова записи |
ADC Connector | Разъем АЦП |
microSD module Connector | Разъем модуля microSD |
RS232 DB9(F) Connector | Разъем RS-232 гнездо DB9F |
Для питания микроконтроллера и периферии устанолвлен регулятор напряжения 5 В LM7805. По интерфейсу I2C к микроконтроллеру поключена микросхема часов реального времени с резервным источником питания (батарея типа CR2032).
Для преобразования логических уровней интерфейса RS232 применена специализированная микросхема MAX232 в стандартном включении.
Датчик температуры LM35 подключен к каналу 0 АЦП (ADC0). Остальные каналы выведены на коннектор с целью придания системе универсальности и подключения различных датчиков.
Загрузки
Принципиальная схема (Eagle) – скачать
Принципиальная схема (pdf) - скачать
Во второй части статьи мы рассмотрим режимы работы системы, порядок действий для каждого режима, основные параметры конфигурирования системы.