Оглавление:

Индикация инвертированного магнетронного преобразователя Arduino: 3 шага
Индикация инвертированного магнетронного преобразователя Arduino: 3 шага

Видео: Индикация инвертированного магнетронного преобразователя Arduino: 3 шага

Видео: Индикация инвертированного магнетронного преобразователя Arduino: 3 шага
Видео: Как продлить жизнь пчёлам. Правильный корм. Сироп инвертированный. Рецепт приготовления. 2024, Ноябрь
Anonim
Индикация инвертированного магнетронного преобразователя Arduino
Индикация инвертированного магнетронного преобразователя Arduino

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

Я купил излишки вакуумметра MKS серии 903 IMT с холодным катодом, без контроллера или считывающего устройства. Для некоторой предыстории системам сверхвысокого вакуума требуются различные ступени датчиков для правильного измерения нехватки газов в камере. Чем сильнее и сильнее вакуум, тем сложнее становится это измерение.

При низком или грубом вакууме простые датчики с термопарой могут справиться с этой задачей, но по мере того, как вы удаляете все больше и больше из камеры, вам понадобится что-то вроде датчика ионизации газа. Двумя наиболее распространенными методами являются датчики с горячим и холодным катодом. Датчики с горячим катодом работают как многие вакуумные лампы, в которых есть нить накала, которая испаряет свободные электроны, которые ускоряются по направлению к решетке. Любые молекулы газа на пути ионизируют и срабатывают датчик. Датчики с холодным катодом используют высокое напряжение без нити накала внутри магнетрона для создания пути электронов, который также ионизирует локальные молекулы газа и отключает датчик.

Мой манометр известен как манометр с инвертированным магнетронным преобразователем, изготовленный MKS, который интегрировал управляющую электронику с самим прибором. Однако выходное напряжение представляет собой линейное напряжение, которое совпадает с логарифмической шкалой, используемой для измерения вакуума. Это то, на что мы будем программировать нашу ардуино.

Шаг 1. Что необходимо?

Что нужно?
Что нужно?
Что нужно?
Что нужно?
Что нужно?
Что нужно?
Что нужно?
Что нужно?

Если вы, как и я, пытаетесь построить вакуумную систему по дешевке, то получите любой калибр, который сможете, - это то, на что вы согласитесь. К счастью, многие производители манометров строят манометры таким образом, при этом они выдают напряжение, которое можно использовать в вашей собственной измерительной системе. Однако для этого конкретно вам потребуются:

  • 1 MKS HPS серии 903 AP IMT датчик вакуума с холодным катодом
  • 1 arduino uno
  • 1 стандартный символьный ЖК-дисплей 2x16
  • Потенциометр 10 кОм
  • гнездовой разъем DSUB-9
  • последовательный кабель DB-9
  • делитель напряжения

Шаг 2: Код

Код!
Код!

Итак, у меня есть некоторый опыт работы с Arduino, например, когда я возился с конфигурацией RAMPS моего 3D-принтера, но у меня не было опыта написания кода с нуля, так что это был мой первый настоящий проект. Я изучил множество руководств по датчикам и изменил их, чтобы понять, как я могу использовать их со своим датчиком. Сначала идея заключалась в том, чтобы использовать таблицу поиска, поскольку я видел другие датчики, но в конечном итоге я использовал способность Arduino с плавающей запятой для выполнения логарифмического / линейного уравнения на основе таблицы преобразования, предоставленной MKS в руководстве.

В приведенном ниже коде A0 просто устанавливается как единица измерения с плавающей запятой для напряжения, которое составляет 0-5 В от делителя напряжения. Затем он рассчитывается с точностью до шкалы 10 В и интерполируется с использованием уравнения P = 10 ^ (v-k), где p - давление, v - напряжение по шкале 10 В, а k - единица измерения, в данном случае торр, представленная числом 11.000. Он вычисляет это число с плавающей запятой, а затем отображает его на ЖК-экране в экспоненциальном представлении с помощью dtostre.

#include #include // инициализируем библиотеку номерами контактов интерфейса LiquidCrystal lcd (12, 11, 5, 4, 3, 2); // процедура установки запускается один раз при нажатии кнопки reset: void setup () {/ / инициализировать последовательную связь со скоростью 9600 бит в секунду: Serial.begin (9600); pinMode (A0, ВХОД); // A0 устанавливается как ввод #define PRESSURE_SENSOR A0; lcd.begin (16, 2); lcd.print («МКС Инструменты»); lcd.setCursor (0, 1); lcd.print («Холодный катод IMT»); задержка (6500); lcd.clear (); lcd.print ("Манометрическое давление:"); } // процедура цикла выполняется снова и снова бесконечно: void loop () {float v = analogRead (A0); // v - входное напряжение, заданное как единица измерения с плавающей запятой на analogRead v = v * 10.0 / 1024; // v - напряжение делителя 0-5 В, измеренное от 0 до 1024, вычисленное по шкале от 0 до 10 В float p = pow (10, v - 11.000); // p - давление в торр, которое в уравнении [P = 10 ^ (vk)] представлено буквой k, что равно- // -11,000 (K = 11,000 для торр, 10,875 для мбар, 8,000 для микрон, 8,875 для Паскаля) Serial.print (v); давление угля E [8]; dtostre (p, давлениеE, 1, 0); // научный формат с 1 десятичным знаком lcd.setCursor (0, 1); lcd.print (давлениеE); lcd.print («Торр»); }

Шаг 3. Тестирование

Image
Image
Тестирование
Тестирование

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

Этот проект был для меня огромным первым проектом кода, и я бы не закончил его, если бы не фантастическое сообщество arduino: 3

Бесчисленные руководства и проекты датчиков действительно помогли понять, как это сделать. Было много проб и ошибок и много зависаний. Но, в конце концов, я очень доволен тем, как это получилось, и, честно говоря, увидеть, как код, который вы заставили, делает то, что он должен делать, в первый раз, довольно здорово.

Рекомендуемые: