Как подключить Датчик влажности почвы Moisture Sensor ?

Обсуждаем Arduino, Raspberry Pi и другие электронные компоненты и проекты DIY
Ответить
Аватара пользователя
Mr.Kubikus
Сотрудник ПАКПАК
Сообщения: 1020
Зарегистрирован: 22 окт 2010, 23:57

Как подключить Датчик влажности почвы Moisture Sensor ?

Сообщение Mr.Kubikus »

Хочу подключить Датчик влажности почвы Moisture Sensor к компьютеру. Для этого мне понадобиться сам датчик, плата расширения IO Expansion Shield for Arduino (V5) и Кабель для аналоговых сенсоров. Есть ли у вас преобразователи USB и соответствующее программное обеспечение к нему для непосредственной связи с компьютером и дальнейшей обработки данных?
Для подключения датчика влажности почвы Moisture Sensor к компьютеру можно использовать следующую минимальную схему:
sensor-2.png
sensor-2.png (59.37 КБ) 10704 просмотра
Вам потребуются следующие компоненты:
- Датчик влажности
- Контроллер Arduino UNO
- Кабель USB A-B

Как видно из схемы, плату IO Expansion Shield for Arduino (V5) можно не использовать. Она нужна для облегчения монтажа большого количество внешних подключений - для этого на ней есть специальные разъемы. Конечно, если влом паять, то можно использовать.
Также вам не нужен какой-либо преобразователь USB, его функцию выполняет плата Arduino UNO.

Вот как это выглядит на действующем макете:
project-flower-37.JPG
project-flower-37.JPG (119.55 КБ) 10704 просмотра
Это "Умный цветок" из соседнего топика.

Вам надо будет написать программу для Arduino, которая в цикле запускает преобразование AЦП, считывает результат, обрабатывает его, например, фильтрует и передает его на компьютер через последовательный интерфейс. Упрощенный пример ниже:

Код: Выделить всё

/*
  Получаем сигнал от датчика влажности и отправяем его на комп.
  http://pacpac.ru 2012
*/

int sensorPin   = A0;  // датчик влажности подключен к входу A0
int sensorValue = 0;   

void setup() {
  // инициализируем UART
  Serial.begin(9600);
}

void loop() {
  // 1. Считываем значение из АЦП
  sensorValue = analogRead(sensorPin);    

  // 2. Отправляем значение на комп
  Serial.println(sensorValue);
  
  // 3. Пауза 1 сек
  delay(1000); 
}
С уважением, Григорий
GitHub FB ВК
Ответить