Оглавление:
Видео: Как читать датчик перепада давления MPX5010 с помощью Arduino: 5 шагов
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-13 06:58
Я написал код таким образом, что его можно легко изменить для соответствия другому датчику давления. Просто измените следующие константные переменные в коде на основе значений из таблицы данных для любого датчика давления:
- Значение "sensorOffset" в мВ
- значение "чувствительности" в мВ / мм вод. ст.
Как только я получил этот датчик давления, я поискал в Интернете, чтобы попытаться найти пример кода для извлечения показаний давления с этого датчика в реальные единицы давления, кПа или см вод. Я нашел один образец кода для этого точного датчика, после запуска я заметил, что показания не совпадают с тем, что они должны быть в таблице данных, поэтому я решил написать свой собственный расчет и свой собственный код … он выглядит устаревшим, но работает, Ура!! Поэтому я подумал, что поделюсь этим с миром, чтобы другим людям не пришлось пережить ту же боль.
Наслаждаться!!
Запасы
Вам понадобиться:
- Датчик давления MPX5010 (конечно)
- Arduino, Uno или любой другой
- Какой-то силиконовый шланг (для подключения от датчика давления к крану давления)
- Небольшие кабельные стяжки (для фиксации силиконового шланга)
- Маленькая 2-миллиметровая трубка из латуни или пластика (я использовал трубку от банки WD40)
- Немного изоляционной ленты (требуется только в том случае, если ваш силиконовый шланг слишком велик для вашей трубки WD40)
Шаг 1: Подключите схему
См. Супер простое изображение подключения
Шаг 2: Подключите датчик давления
- Подсоедините силиконовый шланг к порту датчика давления, используйте кабельную стяжку, если она вам нужна, чтобы обеспечить хорошее уплотнение.
- Просверлите отверстие диаметром 2 мм в трубе, чтобы измерять давление воздуха.
- Вставьте трубку WD40 в отверстие, она должна плотно прилегать. Используйте немного суперклея, чтобы завершить печать.
- Наденьте силиконовый шланг на трубку WD40 (мне пришлось обернуть трубку изоляционной лентой, чтобы она подошла). Затем добавьте небольшую кабельную стяжку
Шаг 3. Загрузите код
Загрузите мой код в свой Arduino, затем нажмите на последовательный терминал, чтобы просмотреть числа (кнопка со значком лупы в правом верхнем углу экрана).
Вы должны увидеть время в миллисекундах, затем «», затем значение давления.
У вас есть возможность в коде рассчитать число в кПа или см вод. Ст., Просто закомментируйте строку, которая вам не нужна.
Добавьте «задержку (500);» если вы хотите замедлить показания, чтобы их было легче подготовить на терминале.
Я написал код таким образом, что его можно легко изменить для соответствия другому датчику давления. Просто измените следующие константные переменные в коде на основе значений из таблицы данных для любого датчика давления:
- Значение "sensorOffset" в мВ
- значение "чувствительности" в мВ / мм вод. ст.
Шаг 4. Извлеките значения датчика в Excel
- Запишите некоторые показания в свой последовательный терминал Arduino. Он должен быть в формате: «время (мс), давление».
- Отключите USB-кабель
- Выберите все значения из вашего последовательного терминала и скопируйте
- Вставьте их в блокнот
- Щелкните файл> сохранить как
- Введите имя файла, затем измените расширение на «.csv» (очень важно) и сохраните его.
- Откройте проводник, и вы должны увидеть свой файл с логотипом Excel (это означает, что вы правильно создали файл.csv).
- Дважды щелкните свой новый файл.csv, и он откроется в Excel, и он должен автоматически отсортировать ваши значения в два отдельных столбца и избавиться от запятой (поэтому файлы.csv великолепны!)
Затем вы можете продолжить и построить графики давления с течением времени или как хотите.
Кстати: CSV означает «значения, разделенные запятыми».
Шаг 5: лишний зануд
Молодцы, что зашли так далеко! Это означает, что вы прошли тест на ботаников, и в качестве награды я расскажу вам некоторые технические подробности.
Поэтому я упомянул в начале о примере кода, который я нашел для этого точного датчика, который дал мне неправильные значения. Чтобы проверить это, я использовал их уравнение, чтобы вычислить несколько точек на графике отклика (прилагается) из таблицы, и обнаружил, что они не совпадают с графиком. Итак, я создал свой собственный расчет и связал его с графиком в таблице данных, чтобы доказать, что он работает теоретически, затем я записал показания с обоими кодами и наложил графики, которые я приложил.
На прилагаемых графиках синяя линия - это пример кода, который я нашел, а красная линия - мой код. Проблема достаточно очевидна при взгляде на график, потому что код веб-примера не измеряет 0 при температуре окружающей среды, что должно быть, потому что мы измеряем перепад давления.
Хорошо, в конце концов, это не было слишком технично, извините за разочарование, но надеюсь, вам все равно понравилось:)