2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-13 06:58
Мы создали измерительное устройство для измерения солености воды с помощью магнитного поля и линейного датчика Холла. Для этого мы использовали Particle Photon, но также можно было использовать Arduino, поскольку они работают практически одинаково.
Для создания этого проекта вам понадобится пара вещей:
- Частица / Arduino, включая макет и некоторые кабели
- линейный датчик Холла
- несколько магнитов (мы использовали небольшие, но прочные неодимовые магниты)
- ручка
- немного ленты
Шаг 1: Контейнер
Ручка будет использоваться в качестве контейнера, поэтому выньте булавку, чтобы у вас остался только пластиковый контейнер.
Закройте маленькое отверстие скотчем и приклейте магниты рядом с маленьким отверстием на боковой стороне ручки.
Шаг 2: Подключите частицу / Arduino
Подключите частицу или ардуино к макету. Также подключите линейный датчик Холла так же, как на картинке, верхний контакт к 3,3 В, средний контакт к GND и нижний контакт к аналоговому входу.
Шаг 3: Код
На фотоне частицы вы можете просто нажать на штырь, который вы использовали в качестве входа, и использовать функцию analogRead, чтобы получить значение от датчика Холла.
Если вы хотите, чтобы это выполнялось автоматически или если вы используете Arduino, вам понадобится код, который выглядит примерно так:
// вывод для измерения fromint analogPin = A0;
// количество времени в миллисекундах между измерениями.
// поскольку вы не можете публиковать слишком много событий, оно должно быть не менее 1000
int delayTime = 5000;
// имя события, чтобы вы могли распознать текущие измерения
Строка eventName = "измерение / соленость";
String laag = "Низкий";
Строка middel = "Средний";
String hoog = "Высокий";
void setup () {
}
void loop () {
int измерения = analogRead (analogPin);
if (измерение <= 1750) {
Particle.publish (eventName, laag); }
if (измерение> = 1751 && измерение <= 1830) {
Particle.publish (eventName, middel);
}
if (измерение> = 1831 && измерение <= 2100) {
Particle.publish (eventName, hoog);
}
if (измерение> = 2101) {
}
задержка (delayTime);
}
Шаг 4: Измерьте
Конечно, значения в коде должны быть откалиброваны с учетом солености, которую вы используете, поэтому возьмите 3 стакана воды. Стакан 1 будет просто водой, стакан 3 будет полностью пропитан солью, а стакан 2 будет где-то посередине.
Возьмите одну из чашек и налейте немного воды в ручку.
Держите ручку рядом с датчиком Холла так, чтобы магниты торчали с другой стороны (так, чтобы вода была зажата между магнитами и датчиком).
Используйте функцию analogRead, чтобы увидеть значение воды, которую вы используете, и используйте это значение в коде.
Мы измерили следующие значения:
просто вода: 1720
Насыщен солью: 1840 г.
где-то посередине: 1760