2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-13 06:58
Вступление:
Привет, это #LionoMaker. Это мой официальный канал на YouTube с открытым исходным кодом.
Вот ссылка: Liono Maker / YOUTUBE CHANNEL
В этом проекте мы узнаем, как сделать «Запись данных метеостанции». это очень интересный проект. В этом проекте я использую Micro SD Card, модуль DS3231, DHT 11, модуль GPS, LDR и Arduino UNO. Данные метеостанции означают, что они будут определять влажность, температуру, свет, дату и время, долготу и широту.
ЗАМЕТКА:
1) В схемах Fritzing я использую контакты 6 и 7 для связи с модулем GPS и контакт 4 для связи с DHT11. 2) В Proteus Schematics я использую контакты 3 и 4 для связи с модулем GPS, а контакты 6 - для связи с DHT11. 3) В противном случае оба соединения верны, просто нам нужно определить номер контакта в кодировке Arduino в соответствии со схемой.
//*******************************************************
Шаг 1:
1_SD-карта: -
Карты SD (Secure Digital) могут использоваться для хранения и регистрации данных. Примеры включают хранение данных на цифровых камерах или мобильных телефонах и регистрацию данных для записи информации с датчиков. Карты Micro SD могут хранить 2 ГБ данных и должны быть отформатированы в формате FAT32 (таблица размещения файлов). Карта micro SD работает при напряжении 3,3 В, поэтому к источнику питания Arduino 5V можно подключать только модули карты micro SD с микросхемой переключателя уровня напряжения 5–3,3 В и регулятором напряжения 3,3 В. Модуль micro SD связывается с Arduino с помощью последовательного периферийного интерфейса (SPI). Соединительные контакты SPI на модуле micro SD включают в себя выводы MOSI, MISO, SCK и выводы SS, обозначенные как выбор микросхемы (CS), которые подключены к выводам 11, 12, 13 и 10 Arduino соответственно.
Интерфейс SD-карты с Arduino UNO:
GND ------ GND
5вольт ------- VCC
Контакт 12 -------- MISO
Контакт 11 -------- MOSI
Штифт 13 ------- SCK
Контакт 10 -------- SCS
Данные записываются в файл на SD-карте только в соответствии с инструкцией file.close (); следовательно, за каждой инструкцией file.println (data) должна следовать инструкция file.close (), а перед ней должна стоять инструкция SD.open ("filename", FILE_WRITE). Функция SD.open () имеет настройку по умолчанию FILE_READ, поэтому для записи в файл требуется опция FILE_WRITE. Последовательность инструкций, требуемых каждый раз для записи на SD-карту, - SD.open ("имя файла", FILE_WRITE); file.println (данные); file.close ();
2) LDR: -
Фоторезистор (аббревиатура LDR от Light Decreasing Resistance, или светозависимый резистор, или фотопроводящий элемент) - это пассивный компонент, который снижает сопротивление по отношению к получению яркости (света) на чувствительной поверхности компонента. Сопротивление фоторезистора уменьшается с увеличением интенсивности падающего света; другими словами, он проявляет фотопроводимость.
LDR, взаимодействующий с Arduino UNO:
Его одна клемма подключена к 5 вольт, а вторая клемма подключена к резистору 1 кОм. Второй конец резистора 1 кОм заземлен. LDR сам по себе является резистором, и этот тип конфигураций используется для измерения & напряжения, это метод делителя напряжения. Общий вывод подключен к аналоговому выводу № A3 Arduino UNO.
3) DS3231: -
Дата и время измерения датчика или записи данных могут быть включены при записи данных на SD-карту с использованием модуля часов реального времени (RTC), такого как DS3231. Часы реального времени могут отображать секунды, минуты, часы, день, дату, месяц и год. DS3231 может питаться от 3,3 В или 5 В, а литиевая батарея типа «таблетка» CR2032 питает RTC, когда она не подключена к Arduino. DS3231 также имеет встроенный датчик температуры. DS3231 использует связь I2C с двумя двунаправленными линиями:
1) Последовательные часы (SCL)
&
2) Последовательные данные (SDA)
ПРИМЕЧАНИЕ: >>> DS3231 подключен к Arduino UNO как таковой;
DS3231: Arduino UNO:
Земля ----------------------- Земля
VCC --------------------- 5вольт
SDA -------------------- контакт # A4
SCL -------------------- контакт # A5
4) DHT11: -
DHT11 - это недорогой цифровой датчик для измерения температуры и влажности. Этот датчик можно легко подключить к любому микроконтроллеру, например, Arduino, Raspberry Pi и т. Д., Для мгновенного измерения влажности и температуры. Датчик влажности и температуры DHT11 доступен как датчик и как модуль. Разница между этим датчиком и модулем заключается в подтягивающем резисторе и светодиоде включения. DHT11 - датчик относительной влажности. Для измерения окружающего воздуха этот датчик использует термостат и емкостной датчик влажности.
Подключение датчика DHT 11 к Arduino UNO:
DHT11 Arduino UNO
ЗЕМЛЯ ---------------------------- ЗЕМЛЯ
VCC ----------------------------- 5вольт
Данные (сигнал) ------------------ контакт # 6
5) Модуль GPS: -
Модуль GPS (Global Positioning System) и используется для навигации. Модуль просто проверяет свое местоположение на Земле и предоставляет выходные данные, которые представляют собой долготу и широту его местоположения.
Существуют разные типы модулей GPS, которые используются для поиска значений различных переменных. Такие как;
//**********************************************************************************************************************
ПРИМЕЧАНИЕ: - ДЛЯ БОЛЕЕ ПОДРОБНОЙ ИНФОРМАЦИИ ВЫ МОЖЕТЕ НАЗВАТЬ ЭТУ ФУНКЦИЮ;
gps.getDataGPRMC (время, статус, широта, latitudHemisphere, longitud, longitudMeridiano, speedKnots, trackAngle, date, MagneticVariation, MagneticVariationOrientation);
Serial.println (время); Serial.println (статус);
Serial.println (широта);
Serial.println (широта полушария);
Serial.println (продольный);
Serial.println (longitudMeridiano);
Serial.println (speedKnots);
Serial.println (trackAngle);
Serial.println (дата);
Serial.println (магнитная вариация);
Serial.println (MagneticVariationOrientation);
//******************************************************************************************************************
другой пример используется для создания ссылки для модуля GPS. Такие как;
gps. Google (ссылка);
//*******************************************************************************************************************
&&&
ПРИМЕЧАНИЕ: - ЕСЛИ ВЫ НЕ ПОЛУЧИТЕ БОЛЬШЕ ПОДРОБНОЙ ИНФОРМАЦИИ, ВЫ МОЖЕТЕ ВЫЗВАТЬ ЭТУ ФУНКЦИЮ;
gps.getDataGPRMC
широта, широта, полушария, долгота, долгота, меридиано
; Serial.println (широта);
Serial.println (широта полушария);
Serial.println (продольный);
Serial.println (longitudMeridiano);
//******************************************************************************************************************
Я использовал эти строки, чтобы получить ДОЛГОТУ и ШИРОТУ.
Longi = (gps.location.lng (), 54.01125); Lati = (gps.location.lat (), 1.95949);
//******************************************************************************************************************
Заметка:
вы можете использовать приведенную выше кодировку, чтобы получить дополнительную информацию от вашего модуля GPS. Я просто привык получать долготу и широту.
//******************************************************************************************************************
СЛЕДУЮЩИЙ СПОСОБ ПОДКЛЮЧЕНИЯ МОДУЛЯ GPS К ARDUINO UNO:
Модуль GPS: Arduino UNO:
Земля ----------------------------- Земля
Vcc ------------------------------ 5вольт
RX ------------------------------- контакт # 3
TX ------------------------------ контакт # 4
//********************************************************************************************************************
Шаг 2:
КАК ПОЛУЧИТЬ ФАЙЛ "DATA. CSV" ВО ВРЕМЯ МОДЕЛИРОВАНИЯ PROTEUS: -
ЗАМЕТКА:
> Во-первых, убедитесь, что ваша схема исправна и нет ошибок.
> Вы загрузили шестнадцатеричный файл в Arduino UNO.
> Вы загрузили файл с SD-карты на SD-карту.
> Запустите симуляцию после нажатия кнопки воспроизведения в левом нижнем углу Proteus.
> ваш виртуальный терминал открыт, и ваши данные записываются с задержкой (1000);
>>>>>>>>> Нажмите Esc >>>>>>>>>>>>>>>>>>
Вы увидите окно с содержимым карты памяти, здесь доступен файл data.csv. Экспортируйте его на свой компьютер.
Шаг 3:
EXCEL Работает: -
Откройте Excel и вставьте в него файл data.csv. данные будут отображаться в столбцах с названием и построены линейные графики.