Тема: Детектор сигналов для самодельного хроматографа
Недорогое устройство сбора данных с открытым исходным кодом на базе USB Arduino
для химических приборов.Универсальный детектор любых аналоговых сигналов с записью данных в файл и визуальным программным интерфейсом.
Многие исследовательские и учебные лаборатории полагаются на USB-устройства сбора данных для сбора сигналов напряжения с приборов. Однако, эти устройства могут быть дорогостоящими и требуют разработки программного обеспечения для работы. В этом материале я опишу разработку и использование USB-устройства сбора данных с открытым исходным кодом. Простое USB-устройство ргистрации данных с открытым исходным кодом (с разрешением 16 бит), построенного с использованием недорогих электронных компонентов на Arduino, которые стоят менее 3000р в сборе. Кроме того, программное обеспечение с открытым исходным кодом, написанное на языке Python, позволяет получать данные с помощью практически любого компьютера PC или Mac с обычнымUSB-соединением.
Использование устройства было продемонстрировано для аналитического эксперимента с использованием газовой хроматографии и капиллярного электрофореза с УФ-разделением в исследовательских целях.
КРАТКОЕ ВВЕДЕНИЕ
Микроэлектроника с открытым исходным кодом становится все более полезной в области аналитической химии благодаря своей низкой стоимости и интегрированным интерфейсам разработки. В лаборатории, готовые к эксплуатации платы микроконтроллеров (такие как Arduino ) могут быть подключены как к штатным, так и к портативным приборам для управления, сбора и анализа данных. В учебных лабораториях для студентов эти устройства позволяют им получить практический опыт создания и программирования аналитических приборов.
Во время экспериментов с Arduino использовались для подключения датчиков таких как pH-метры или термометры, калориметры и иные источники аналоговых сигналов.
В этом отчете описывается разработанная схема на базе Arduino для электронного сбора данных. Хотя схемы сбора данных с использованием Arduino были множественно описаны и для других приборов, в данной схеме используется программное обеспечение с открытым исходным кодом, написанное на языке Python, чтобы обеспечить простой и недорогой сбор данных, совместимый в принципе с любым прибором. Это устройство может стать полезной альтернативой более дорогим устройствам сбора данных.
КАК ЭТО РАБОТАЕТ
В устройстве используется Arduino и 16-битный аналого-цифровой преобразователь (АЦП) (ADS1115) для управления и сбора данных.
АЦП, который позволяет собирать данные с более высоким разрешением, чем это возможно с помощью Arduino напрямую, может быть установлено на макетную плату и подключено к микроконтроллеру с помощью перемычек (полная электрическая схема приведена ниже). Хотя здесь это и не показано, корпус для электроники желательно использовать для защиты от внешних факторов. Во время работы Arduino подключается к стандартному USB-порту любого ноутбука или настольного компьютера для подачи питания
(до 5 В при ∼500 мА) и включения сбора данных.
Программное обеспечение с открытым исходным кодом, используемое для управления этим устройством, было разработано на языке Python. В интерфейсе ПО, пользователи могут выбрать последовательный порт для передачи данных на подключенный компьютер, канал аналогового ввода для сбора данных, скорость сбора данных, длину файла и путь/имя файла. Данные выводятся в виде текстового файла с разделителями табуляции
и могут быть легко пересчитаны и проанализированы в любой электронной таблице или программе для построения графиков. Хотя скорость сбора данных до 860Гц, но максимальная частота сбора данных до 860 Гц возможна только с помощью разводной экранированной платы АЦП. Поэтому, максимальная частота была ограничена 500 Гц в самом программном обеспечении для обеспечения стабильного сигнала во времени. Эта скорость ниже, чем та, которая достигается во многих коммерческих устройствах сбора данных, но она достаточна для большинства лабораторных экспериментов (за исключением использования сверхбыстрых методов и фильтров передискретизации).
Ключевым преимуществом программного обеспечения с открытым исходным кодом является то, что его можно установить практически на любой компьютер PC или Mac без лицензии и использовать совместно с комерческим программным обеспечением, которое может быть дорогостоящим дополнением к этой простой системе сбора данных…
ИСПОЛЬЗОВАНИЕ УСТРОЙСТВА
Чтобы продемонстрировать использование устройства сбора данных на базе Arduino с открытым программным обеспечением в сравнение с коммерческими решениями сбора данных, были проведены эксперименты, обычно встречающиеся в учебных и исследовательских лабораториях. В рамках аналитической учебной лаборатории (курс для второкурсников, в котором принимало участие 20 студентов в течение 4 часов под руководством ассистента), один двухпериодный эксперимент включал в себя разделение и идентификацию спиртов методом газовой хроматографии с детектором теплопроводности (GC-TCD).
На рисунке представлены хроматограммы, полученные при разделения трех спиртов (воздух в качестве маркера ноля, 1- пропанол, 1-бутанол и 1-пентанол) на насадочной колонке ГХ полученные с помощью существующего интерфейса и описанного здесь устройства на базе Arduinо. (рис.А).
Сравниваемые хроматограммы идентичны, что свидетельствует о том, что это устройство с открытым исходным кодом является недорогой заменой для текущей схемы сбора данных используемых в лабораториях. Несмотря на то, что здесь не реализованы иные эксперименты, этот вариант сборки устройства на Arduino также может быть использован в лабораторных экспериментах для получения дополнительного практического опыта с регистрацией различных аналоговых сигналов.
В сравнительном эксперименте для получения данных использовался хроматограф Agilent 7100 CE со встроенным ультрафиолетовым детектором. Данные, полученные с помощью коммерческого устройства, также совпадают с данными, полученными с помощью Arduino и программным обеспечениеем на Python для разделения тиомочевины, допамина и серина (рис.В см. выше).
Для многих экспериментов с временными характеристиками на самодельных приборах, где достаточно частоты сбора данных до 500 Гц, таких как амперометрии или хроматографии, этот прибор является идеальным вариантом для сбора данных с 16-битным разрешением сигнала. Коммерчески доступные устройства, также способные собирать 16-битные данные но могут стоить более 600 долларов, что делает их потенциально непригодными для широкомасштабного использования в учебных заведениях и любительских лабораториях.
Многие приборы и датчики могут посылать цифровой сигнал (через реле или замыкание контактов) для запуска сбора данных. Возможность обнаружения этот внешний сигнал с помощью цифрового входа на Arduino. включена в программное обеспечение.
Устройство, описанное в данном материале, позволяет регистрировать сигналы напряжения
как с коммерческих, так и с самодельных датчиков. Простая в изготовлении схема
с использованием широко доступных деталей, эта USB-установка сбора данных может быть готова к использованию практически в любых условиях, где требуется сбор сигнала «напряжение-время».
ИНТЕРФЕЙС ПРОГРАММЫ СБОРА СИГНАЛОВ
УСТАНОВКА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
Версия Python 2.7.
https://www.python.org/downloads/release/python-270/
Библиотеки python (все они доступны по лицензии с открытым исходным кодом):
PyQt4 для Python 2.7
https://riverbankcomputing.com/software/pyqt/download
b. pyqtgraph
http://www.pyqtgraph.org/
c. pyserial
https://github.com/pyserial/pyserial
Установите среду разработки Arduino.
https://www.arduino.cc/en/Main/Software
Подключите Arduino к компьютеру.
Откройте скетч Arduino, расположенный по адресу /ArduinoDataLogger/ArduinoSketch/ArduinoSketch.ino
Перейдите в меню Инструменты->Порт и выберите порт, подключенный к Arduino.
Загрузите скетч на Arduino, нажав кнопку «Upload» в левом верхнем углу Arduino
IDE.
Запустите файл ArduinoDataLogger.pyw, чтобы запустить программу сбора данных. Ее можно запустить через
командную строку терминала с помощью команды python. В Linux работает по умолчанию, но возможно придется понизить версию python или подпилить под новую саму программу.
Скетч, программа, схема одним архивом тут:
Скачать
Для размышления энтузиастам подкину ссылочку
Попытка сделать хроматограф
Ссылка в тему Химические анализы дистиллятов, спирта и других напитков
Регистрация на форуме отключает почти всю рекламу.