В тази статия ще научите как да използвате аналогови сензори с Intel Галилео. Аз ще ви покажа как да използвате един прост сензор за дъжд и влага на почвата сензор.
Този проект може да се използва във фермата: да се вземат по-добри решения, когато за вода отглеждането на селскостопански култури, както и много полезно да има информация за това как много дъжд падна, както и нивото на влажност почвата.
Въпреки факта, че съм използвал в проекта за Intel Галилео, вие също може да използва същия код и връзката с Arduino.
Компонентите, които съм използвал:
- Intel Galileo - 1 бр.
- Layout Type IB401 експерименти с 400 точки и хребети
- Влажност на почвата сензор - 1 бр.
- Сензор за дъжд FC-37 - 1 брой.
Как сензора за влажност на почвата?
Влажност на почвата на сензора е много проста.
Тя измерва съпротивлението на почвата и я преобразува в напрежение от 0 до 5 V. Можете да прочетете тази стойност през борда Intel Галилео аналоговите изходи.
Това ще ви даде цифра от 0 до 1024 кода си.
На страницата информация на влажност на почвата сензор, можете да видите, че сензорът ще ви дам следния изход за сухата почва, влажна почвата и водите:
- Сензорът в суха почва: 0 ~ 300
- Сензорът във влажна почва: 300 ~ 700
- Сензорът във водата: 700 ~ 950
Различни растения се нуждаят от такова ниво на влага. Можете да измерите в реално референтна стойност - и след това да го използвате в своя проект.
Как габарит дъжд?
Няма такъв сензор също е проста напрежение стойност от 0 до 5 V. И вие можете да го прочетете с един от аналоговите входове Intel Galileo вашия съвет.
Сензорите имат и цифров изход. Тя ще бъде висока, когато нивото на влажност е над определен праг. Можете да контролирате прага чрез вградения потенциометър.
Но тъй като това е лесно да се направи в кода си, можете да пропуснете този извод и се използва само на аналоговия изход на проекта.
Стъпка 1: Свързване на компонентите
Свързване на свързващите проводници от 5 V и GND от Galileo на две празни редове на оформлението.
Използване на свързващите кабели за свързване на VCC и GND от сензора за влажност на почвата, за да 5V и GND в оформлението.
И се свързват джъмпер от контакт SIG сензор влажността на почвата до терминал A0 на борда Intel Галилео.
Направете същото и със сензор за дъжд: свържете VCC и GND на 5V и земята, върху оформлението.
И се свързват A0 от сензора за дъжд до А1 на Галилео.
Свържете захранващия борда Intel Галилео, а когато USB индикаторът светва, свържете USB кабела от компютъра към Galileo.
Вече сте готови за програмиране.
Стъпка 2: Изтеглете код, за да чете стойности от сензора на почвената влага
Проверете сензора за влажност на почвата, като изтеглите следния код:
Int sensorPin = А0; // изберете входния щифт за сензора
невалидни настройка () {
// Инициализиране сериен порт
Serial.begin (9600);
}
невалидни линия () {
// чете стойности от сензора
Int sensorValue = analogRead (sensorPin);
// Посочете стойност
Serial.println (sensorValue);
// забавяне на 200 милисекунди.
забавяне (200);
}
След това докоснете пръстите си към двете контактите на сензора, за да се гарантира, че е налице реакция. Ако забележите промяна в стойностите, когато докоснете двата контакта, което означава, че всичко работи.
Стъпка 3: Проверете сензора за дъжд
Сега промените кода, за да провери габарит дъжд.
Използвайте един и същ код, както по-горе, но вместо това се промени променливата sensorPin на А1. Можете да проверите габарит дъжд, например, с помощта на влажна гъба.
Етап 4. Комбинирайте кода в едно
И накрая, комбинирайте всички на кода за тези два сензора в една програма и да направи сериен изход по-приятно:
Int sensorPinSoil = А0; // въвеждане на ПИН за сензор почвената влага
Int sensorPinRain = А1; // въвеждане на ПИН за сензора за дъжд
невалидни настройка () {
Serial.begin (9600);
}
невалидни линия () {
Int soilValue = analogRead (sensorPinSoil);
Int rainValue = analogRead (sensorPinRain);
// изход към четим формат ценности
Serial.print ( "сензор за дъжд Текуща стойност");
Serial.println (rainValue);
Serial.print ( "Текуща стойност на сензора влажността на почвата");
Serial.println (soilValue);
Serial.println ( "");
забавяне (200);
}
Готово! Тест! И не забравяйте да се абонирате за моята RSS емисия.