Реклама на сайте

вход на сайт

Имя пользователя :
Пароль :

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

А теперь более человеческим языком.

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

Основой регистратора данных является микроконтроллер ATmega32. Программа, записанная в микроконтроллер, позволяет работать с картами памяти типа SD и MMC, которые отформатированы в системе FAT16 или FAT32. Файловая система, применённая в проекте – FatFs (за что мой низкий поклон мистеру ChaN(у) который подарил человечеству продукт своих титанических усилий. Хотя в программе CodeVision AVR, в которой я создавал проект, присутствует встроенная библиотека работы с картами памяти и файловой системой, я подключил библиотеку FatFs именно ChaN(а), т.к. хотел разобраться с некоторыми особенностями её работы.

Регистратор позволяет отслеживать 8 аналоговых каналов (столько аналоговых входов имеет АЦП микроконтроллера), т.е. пользователи могут подключить к устройству до 8 аналоговых сенсоров.

Принципиальная схема регистратора:

Дата-логгер (регистратор аналоговых данных)

Устройство содержит часы реального времени с резервным источником питания, что позволяет записывать, помимо данных с АЦП, время получения данных. Такая функция полезна при анализе данных и при составлении статистики их изменения.

Для реализации функции записи времени регистрации данных применена микросхема часов реального времени DS1307 (DD2) с интерфейсом I2C.

Данные сохраняются регистратором на карте памяти SD или MMC емкостью до 32 ГБайт в формате TXT, хотя вы можете без проблем изменить расширение на CSV. (CSV – текстовый формат, предназначенный для представления табличных данных. Каждая строка файла – это одна строка таблицы. Значения отдельных колонок разделяются разделительным символом – запятой) Карта памяти должна быть с файловой системой FAT. Файл данных имеет вид "DATA000.txt". Т.к. данные с карты памяти в любом случае будут считываться после проведения записи аналоговых сигналов, то при разработке схемы решено было отказаться от какого-либо интерфейса, связывающего регистратор с компьютером, а установка даты, времени и режима работы регистратора происходит изменением значений файла конфигурации на карте памяти.

Установка времени, даты и интервала измерения выполняется корректировкой файла конфигурации, который создаётся на карте памяти при первом включении устройства. Это простой текстовый файл с именем "auto_exe.txt", который можно создать с помощью любого текстового редактора. При первом включении контроллера с картой памяти, в конфигурационном файле будет содержаться конфигурационная строка вида:
HH:MM DD/MM/YY NNNN

Например:
12:00 01/01/14 10

В приведенной строке устанавливается время 12:00, дата 1 января 2012 года и интервал выборок 10 секунд. Значение интервала выборок может быть четырёхзначным числом от 1 до 3600 (т.е. интервал измерения и записи аналогового сигнала от 1 секунды до 1 часа).

После начальной установки текущего времени и даты в часах реального времени DD2, в файле конфигурации напротив конфигурационной строки установится знак «+», сигнализирующий о том, что время установлено успешно. Это предохраняет от очередной установки времени часов при последующих включениях регистратора.

При минимуме средств индикации (два светодиода) обеспечивается полноценная наглядность работы устройства. Разные варианты работы светодиодов позволяют контролировать режим работы (наличие питания, начало записи) и определять наличие и характер ошибок в работе регистратора (карта памяти переполнена, сбой часов реального времени, сбой в работе карты памяти). Кнопкой SB1 осуществляется пуск и остановка записи данных. Кнопка SB2 сбрасывает порядковый номер создаваемого файла (количество созданных файлов имеет ограничение в 999 файлов, что при необходимости можно изменить, подкорректировав программу).

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

Сохраненные на карте памяти данные можно затем просмотреть на компьютере с помощью программы «Блокнот» или же импортировать в другую программу для обработки.

Собственно, девайс (мне было лень делать разводку для SMD-монтажа):

Дата-логгер (регистратор аналоговых данных)


Дата-логгер (регистратор аналоговых данных)

Биты конфигурации для микроконтроллера:

Дата-логгер (регистратор аналоговых данных)

Дата-логгер (регистратор аналоговых данных)

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

На рисунке 3 показан пример файла, открытого на компьютере в программе «Блокнот», в который проходила запись данных с 8-ми каналов АЦП с интервалом в 10 секунд, причём напряжение (в виде подключённой пальчиковой батарейки на 1,5 В) подавалось только на первый канал АЦП.

Дата-логгер (регистратор аналоговых данных)




Файлы:

mc288.pdf [160,95 Kb] (cкачиваний: 94)
mc288_Data_Logger-kod.rar [552,82 Kb] (cкачиваний: 109)
mc288_Data_Logger-Plata-pod-LUT.rar [89,85 Kb] (cкачиваний: 76)
mc288_Logger.rar [19,78 Kb] (cкачиваний: 77)

Автор: Igoryosha, источник

  • 0
Новость опубликована 21-07-2014, 23:26, её прочитали 3013 раз(а)
Понравилась тема? Посмотрите эти:
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.