Оглавление:

Простая закрытая обсерватория: 9 шагов (с изображениями)
Простая закрытая обсерватория: 9 шагов (с изображениями)

Видео: Простая закрытая обсерватория: 9 шагов (с изображениями)

Видео: Простая закрытая обсерватория: 9 шагов (с изображениями)
Видео: Путь на Терскол. Истории нашей обсерватории 2024, Июль
Anonim
Простая закрытая обсерватория
Простая закрытая обсерватория

Этот проект покажет вам, как создать простую обсерваторию с некоторыми существующими и легко доступными датчиками. Действительно, я построил это для одного из моих учеников. Студент хотел бы узнать, как солнечный свет влияет на температуру и влажность в помещении. В данном проекте интересующими физическими величинами являются (1) сила света, (2) влажность, (3) температура и (4) давление воздуха. Обладая этой информацией, вы сможете создавать другие системы или устройства для управления кондиционером, увлажнителем или обогревателем для создания комфортных условий в помещении.

Шаг 1: Подготовка датчиков

Подготовка датчиков
Подготовка датчиков

Вы можете построить схему со следующими датчиками или просто купить платы модулей этих датчиков или плату модуля.

1. Датчик внешней освещенности TEMT6000 (техническое описание, PDF)

2. Давление и температура BMP085 или BMP180 (* это старые продукты, возможно, вам потребуется найти другие альтернативы) (учебный документ от Adafruit)

3. Датчик температуры и влажности DHT11 (учебный документ от Adafruit)

4. Датчик УФ-излучения GUVA-S12SD (Технический паспорт PDF)

Для использования датчиков я приложил несколько справочных ссылок. Вы можете найти полезные руководства и ссылки в Интернете.

Шаг 2: Подготовка главного процессора

Подготовка главного процессора
Подготовка главного процессора

Я выбрал плату Arduino Uno для тестирования системы и кодирования. Однако я обнаружил, что atmega328P не имеет достаточно памяти для хранения и запуска кода, если будут добавлены дополнительные датчики. Таким образом, я рекомендую вам использовать плату Arduino atmega2560, когда вам нужно более 4 датчиков.

Микроконтроллер (MCU):

· Плата Atmega328P для Arduino

· Или плата Atmega2560 для Arduino

Шаг 3: Подготовка системы

Подготовка системы
Подготовка системы
Подготовка системы
Подготовка системы

Я хотел бы измерить некоторые физические характеристики на открытом воздухе и в помещении. Наконец, я подключил следующие датчики к плате Atmega2560.

Внутренняя среда:

1. Давление и температура BMP180 x 1 шт.

2. Датчик температуры и влажности DHT11 x 1 шт.

Наружная среда:

1. Датчик внешней освещенности TEMT6000 x 1 шт.

2. Давление и температура BMP085 x 1 шт.

3. Датчик температуры и влажности DHT11 x 1 шт.

4. Датчик УФ-излучения GUVA-S12SD x 1 шт.

Вы можете обнаружить, что я использовал разные датчики для измерения давления. Просто потому, что у меня не было платы модуля BMP180, когда я собирал схему. Я рекомендую вам использовать одни и те же датчики, если вам нужно точное измерение и справедливое сравнение.

Шаг 4: Подготовка регистрации данных

Кроме того, я бы хотел, чтобы устройство сохраняло данные без подключения к компьютеру. Я добавил модуль регистрации данных с часами реального времени. Следующие элементы предназначены для регистрации данных и подключения проводов.

· SD Card

· Батарейка для монет CR1220

· Модуль регистрации данных для Arduino (учебный документ от Adafruit)

Шаг 5: Подготовка инструментов

Ниже приведены некоторые инструменты или устройства, которые могут потребоваться для построения схемы.

  • Инструмент для упаковки 30AWG
  • Паяльник
  • Паяльная проволока (без свинца)
  • Макетная плата
  • Заголовки 2,54 мм
  • Провода перемычки
  • Обмотка проводов (30AWG)
  • Горячий клей
  • 3D-печать (если вам нужен чехол для вашего устройства)
  • Arduino IDE (нам нужно это для программирования платы микроконтроллера)

Шаг 6. Сбросьте настройки часов реального времени (RTC) DS1307 на модуле регистрации данных

Сброс часов реального времени (RTC) DS1307 на модуле регистрации данных
Сброс часов реального времени (RTC) DS1307 на модуле регистрации данных
Сброс часов реального времени (RTC) DS1307 на модуле регистрации данных
Сброс часов реального времени (RTC) DS1307 на модуле регистрации данных

Я хотел бы использовать данные для научного эксперимента. Таким образом, правильное время измерения важно для анализа данных. Использование функции delay () в программировании может вызвать ошибку измерения при сдвиге времени. Напротив, я не знаю, как проводить точные измерения в реальном времени только на платформе Arduino. Чтобы избежать ошибки времени выборки или минимизировать погрешность измерения, я хотел бы брать каждую выборку измерения с записью времени. К счастью, в модуле регистрации данных есть часы реального времени (RTC). Мы можем использовать его для вывода времени выборки данных.

Чтобы использовать RTC, я следую инструкции (ссылке) по сбросу RTC. Я рекомендую сделать это в первую очередь с платой Arduino Uno. Это связано с тем, что вам нужно изменить схему при использовании платы Atmega2560 (соединение I2C отличается). После того, как вы установили RTC, вы не должны извлекать батарею cr1220. Между тем, пожалуйста, проверьте состояние батареи перед регистрацией данных.

Шаг 7: Подключение

Связь
Связь
Связь
Связь
Связь
Связь

Я разделил внутренние и внешние измерения. Таким образом, я сделал два разъема для подключения двух разных групп датчиков. Я использовал пустое место в модуле регистрации данных для монтажа заголовков. Для завершения подключения схемы использую и пайку, и обмотку. Процесс упаковки чистый и удобный, а пайка прочная и надежная. Вы можете выбрать удобный способ построения схемы. Если вы используете плату Atmega2560, убедитесь, что вы создали перемычку для контактов SDA и SCL. Подключение часов реального времени к экрану регистрации данных необходимо повторно подключить.

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

Стол. Модуль датчика и рабочее напряжение

Шаг 8: Программирование MCU

Программирование MCU
Программирование MCU

К счастью, я могу найти примеры применения для всех датчиков. Если вы новичок в их использовании, вы можете загрузить их в Интернете или установить с помощью диспетчера библиотек в Arduino IDE.

Я запрограммировал вывод строки для каждого сэмпла. Строка будет выведена и сохранена на смонтированной SD-карте. Если вам нужно просмотреть данные, выключите устройство, а затем отключите SD-карту. Затем вы можете установить SD-карту в картридер. Файл будет сохранен как файл csv. После того, как вы загрузили файл данных на компьютер, вы можете просмотреть его с помощью текстовой программы или программы для работы с листами.

(Вы можете скачать исходный код в прикрепленном файле.)

Шаг 9: Протестируйте и используйте

Протестируйте и используйте!
Протестируйте и используйте!
Протестируйте и используйте!
Протестируйте и используйте!
Протестируйте и используйте!
Протестируйте и используйте!

Важно, чтобы вы понимали значение данных. Частота дискретизации - один из важных параметров. Текущий временной интервал измерения составляет 1 мин, возможно, вам потребуется его изменить.

Кроме того, вы обнаружите, что измерение температуры DHT11 неточно. Если вам нужно более точное значение, вы можете просто использовать показания температуры датчиков давления BMP.

Спасибо, что прочитали это!

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