Оглавление:

Матрица сельскохозяйственных датчиков: 6 шагов
Матрица сельскохозяйственных датчиков: 6 шагов

Видео: Матрица сельскохозяйственных датчиков: 6 шагов

Видео: Матрица сельскохозяйственных датчиков: 6 шагов
Видео: Он Предугадал Развитие Цивилизации На 6 Шагов Вперед! Наука Будущего! l НИКОШО и Жак Фреско 2024, Июль
Anonim
Матрица сельскохозяйственных датчиков
Матрица сельскохозяйственных датчиков

Проект Джексона Брейкелла, Тайлера МакКуббинса и Якоба Талера для EF 230

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

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

Шаг 1. Соберите необходимые материалы

Соберите необходимые материалы
Соберите необходимые материалы

Ниже приведен список необходимых материалов, которые вам понадобятся для начала работы"

1. Плата Arduino, желательно Arduino Uno

2. Базовый макет

3. 1x 220 Ом резистор

4. Ассорти проводов разных цветов.

5. Кабель Micro USB - USB.

6. Монтируемый на плате динамик.

7. Фотоэлектрический датчик

8. Датчик температуры.

9. Датчик дождевой воды.

10. Датчик влажности почвы.

11. Компьютер с установленным пакетом поддержки Matlab 2017 и Arduino (пакет поддержки можно найти в разделе «Надстройки»).

Шаг 2: Подключите плату и подключите

Подключите плату и подключите
Подключите плату и подключите

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

Убедившись, что плата подключена правильно, подключите кабель Micro USB к USB от вашего компьютера к порту Micro USB на вашем компьютере и включите Arduino. Откройте Matlab и, убедившись, что вы установили пакет поддержки Arduino в разделе «Надстройки», запустите команду «fopen (serial ('nada'))» без символа «. у вас есть доступный компорт с номером. Запустите команду «a = arduino ('comx', 'uno')», где x - номер вашего компорта, чтобы сопоставить ваш Arduino с объектом. Светодиод на Arduino должен быстро мигать, показывая, что он подключен.

Шаг 3. Кодируйте фотоэлектрические датчики и датчики температуры

Кодируйте фотоэлектрические датчики и датчики температуры
Кодируйте фотоэлектрические датчики и датчики температуры

Перед тем, как начать кодирование, обратите внимание на то, где ваши датчики подключены к Arduino, так как это будет важно для команды readVoltage. Начните свой код с установки переменной солнечного света, равной команде «readVoltage (a, 'X #')», где X # - это порт, к которому вы подключены, а a просто вызывает Arduino, который вы сопоставили с этой переменной. Запустите оператор if, и установите первое условие для солнечного света <3. Задайте вывод как «info. TOD = 'night'», чтобы выводить время дня в виде структуры, а затем добавьте оператор else с выводом как «info. TOD = ' day '". Поскольку это оператор else, нам не нужно условие, так как оно будет работать для всех других значений, не определенных в операторе if. Убедитесь, что вы завершили оператор if концом, и переходите к программированию датчик температуры.

Установите переменную thermo равной другой команде readVoltage, при этом команда будет "readVoltage (a, 'X #')". В нашем случае температуру нужно было преобразовать из единиц напряжения в градусы Цельсия, поэтому уравнение «tempC = (thermo-.5). * 100» для преобразования напряжения в градусы Цельсия. Для удобства мы перевели температуру из Цельсия в Фаренгейт, но это не обязательно.

Код для вставки

солнечный свет = считывание Напряжение (a, 'A1'), если солнечный свет <3

info. TOD = 'ночь'

еще

info. TOD = 'день'

конец

thermo = readVoltage (a, 'A3');

tempC = (термо-.5). * 100;

info.tempF = (9 / 5. * tempC) +32

Шаг 4. Кодирование датчиков дождевой воды и влажности почвы

Кодируйте датчики дождевой воды и влажности почвы
Кодируйте датчики дождевой воды и влажности почвы

Как было сказано на последнем шаге, убедитесь, что вы знаете, к каким портам подключены ваши датчики на плате Arduino, так как это сделает этот шаг гораздо менее разочаровывающим. Начните с датчика дождевой воды и начните с оператора if. Задайте первое условие для «readVoltage (a, 'X #')> 4» и установите его вывод на «info. Rain = 'без осадков». Добавьте elseif и перед этим установите его условие для команды readVoltage, но установите для него значение> 2. Добавьте «&&», чтобы обозначить другое условие, которое должно быть выполнено, и установите для него команду readVoltage, как раньше, и установите для него значение <= 4. Результатом будет «info. Rain = 'misting'». Наконец, добавьте else и установите его вывод на «info. Rain = 'downpour'». Возможно, вам придется отрегулировать значения для условий в зависимости от влажности окружающей среды в помещении, в котором вы работаете.

Затем начните код датчика влажности почвы и начните с оператора if. Установите для условия оператора if значение «readVoltage (a, 'X #')> 4 и добавьте вывод« info.soil = 'dry' ». Добавьте оператор elseif и, используя приведенную выше команду readVoltage, установите его для> 2. Добавьте «&&» и установите другую команду readVoltage для <= 4. Установите ее вывод на «info.soil = 'optimuration'». Добавьте оператор else и установите его вывод на «info.soil = 'flood' ", и не забудьте добавить конец.

Код для вставки

если readVoltage (a, 'A0')> 4 info. Rain = 'без осадков'

elseif readVoltage (a, 'A0')> 2 && readVoltage (a, 'A0') <= 4

info. Rain = 'запотевание'

еще

info. Rain = 'ливень'

конец

если readVoltage (a, 'A2')> 4

info.soil = 'сухой'

elseif readVoltage (a, 'A2')> 2 && readVoltage (a, 'A0') <= 4

info.soil = 'оптимальная насыщенность'

еще

info.soil = 'наводнение'

конец

Шаг 5: Кодирование вывода динамика и окна сообщений

Кодирование вывода динамика и окна сообщений
Кодирование вывода динамика и окна сообщений

Выходы для этого устройства могут сильно различаться, но в этом случае мы рассмотрим выход динамика, установленный непосредственно на устройстве, и выход окна сообщения, который можно просмотреть на удаленном компьютере. Наш динамик предназначен для вывода различных частот, от более низких до более низких, для оптимальной температуры сельскохозяйственных культур, солнечного света, влажности почвы и осадков. Начните код вывода динамика с оператора if и установите его условие на команду "readVoltage (a, 'X #')> 4 || info.tempF = 3 || readVoltage (a, 'A2')> 2 && readVoltage (a, 'A0') <= 4 ". Добавьте ту же команду playTone, как показано выше, но измените 200 на 1000, чтобы получить более высокий и позитивный тон. Затем добавьте else и снова добавьте ту же команду playTone, но измените 1000 на 1500. Эти различные тона указывают на серьезность ситуации в поле. Убедитесь, что вы добавили конец, чтобы завершить оператор if.

Наш последний раздел кода будет выводом, который создает окно сообщения. Создайте строку, используя знаки 'в скобках, и преобразуйте части вашей структуры в строки с помощью команды «num2str (info.x)», где x - имя подструктуры в информационной структуре. Используйте «новую строку строки», чтобы добавить новую строку в окно сообщения, и введите текст сообщения, используя кавычки, добавляя фактическое значение поля в строку с помощью вышеупомянутой команды num2str. Наконец, определив строку, используйте команду «msgbox (строка)» для отображения данных в виде окна сообщения на вашем мониторе.

Код для вставки

если readVoltage (a, 'A2')> 4 || info.tempF <32 playTone (a, 'D9', 200, 1)

иначе, если солнечный свет> = 3 || readVoltage (a, 'A2')> 2 && readVoltage (a, 'A0') <= 4

playTone (a, 'D9', 1000, 3)

еще

playTone (a, 'D9', 1500, 5)

конец

string = ['Температура (градус F)', num2str (info.tempF)]

string = [строка новой строки 'Почва есть', num2str (info.soil)]

string = [string newline 'Внешние осадки есть', num2str (info. Rain)]

string = [string newline 'Текущее время', num2str (info. TOD)]

msgbox (строка)

Шаг 6: Заключение

Заключение
Заключение

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

Удачного кодирования, Команда разработчиков систем сельскохозяйственных датчиков

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