Съдържание:
- Стъпка 1: Необходими части
- Стъпка 2: Схематични принципи
- Стъпка 3: Arduino код
- Стъпка 4: Тест в реалния свят
Видео: Компактен сензор за времето с GPRS (SIM карта) Връзка за данни: 4 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:50
Обобщение на проект
Това е метеорологичен сензор, захранван от батерии, базиран на BME280 сензор за температура/налягане/влажност и ATMega328P MCU. Работи с две 3.6 V литиево -тионилови батерии тип АА. Той има изключително нисък разход на сън от 6 µA. Той изпраща данни на половин час чрез GPRS (използвайки SIM800L GSM модул) до ThingSpeak, управляван от часовник DS3231 в реално време. Прогнозната услуга на един комплект батерии е> 6 месеца.
Използвам ASDA платена SIM карта, която предлага изключително добри условия за целите на този проект, тъй като има много дълъг срок на валидност за кредит (180 дни) и таксува само 5p/MB обем данни.
Мотивация: Разработване на икономичен, автономен сензор за околната среда с нулева поддръжка, захранван от батерии, който може да бъде поставен в дивата природа, за да получава метеорологични или други данни и да предава чрез GSM/GPRS мрежа до IoT сървър.
Физически размери: 109 x 55 x 39 мм (включително фланци на корпуса). Тегло 133 g. IP рейтинг 54 (приблизително).
Цена на материала: прибл. 20 паунда за единица.
Време за сглобяване: 2 часа на единица (ръчно запояване)
Източник на захранване: Две литиево-тионилови батерии тип АА, които не се презареждат (3.6V, 2.6Ah).
Мрежов протокол: GSM GPRS (2G)
Потенциални приложения: Всяко отдалечено място с покритие на GSM сигнала. Гори, фарове, шамандури, частни яхти, каравани, къмпинги, хижи за планински убежища, необитаеми сгради
Тест за надеждност: Едно устройство преминава дългосрочно тестване без надзор от 30.8.20 г. Освен един софтуерен срив, той изпраща данни надеждно на всеки 30 минути.
Стъпка 1: Необходими части
- PCB по поръчка. Цип файлове на Gerber тук (instructables.com изглежда блокира качването на ZIP файлове). Силно препоръчвам jlcpcb.com за производство на печатни платки. За хората, живеещи в Обединеното кралство, ще се радвам да ви изпратя резервна печатна платка за минимален принос към материалите и пощенските разходи - изпратете ми съобщение.
- ATMega328P-AU
- Модифициран часовник в реално време DS3231 (вижте параграф по -долу)
- BME280 Пробивна дъска, като тази
- SIM800L GSM GPRS модул
- Различни SMD части според подробен списък.
- Hammond 1591, черен ABS корпус, IP54, фланец, 85 x 56 x 35 мм, от RS Components UK
Промяна на DS3231
Четворната резисторна мрежа, закръглена в червено, трябва да бъде разпаяна. Други по -разрушителни методи също са ОК, но избягвайте свързването на подложките от вътрешния ред от 4 подложки (към страната на MCU). Останалите 4 подложки са свързани така или иначе чрез следи от печатни платки. Тази модификация е от съществено значение, за да позволи на SQW щифта да функционира като аларма. Без премахване на резисторите, той няма да работи, докато не свържете VCC захранване към модула, което нарушава целта на RTC с много ниска мощност.
Стъпка 2: Схематични принципи
Основните приоритети за дизайна бяха:
- Работа на батерията с ниска консумация на ток на заспиване
- Компактен дизайн
Захранване
Две 3.6V Saft литиево -тионилови АА батерии. P-канал MOSFET за защита от обратна полярност.
Във веригата има два регулатора на напрежение:
- A Texas Instruments TPS562208 2 Amp понижаващ регулатор за захранване на SIM800L на около 4.1V. Това може да се превключва от ATMega и се поставя в режим на изключване през повечето време чрез Enable pin 5.
- MCP1700 3.3V регулатор за ATMega и BME280. Това е изключително ефективен регулатор с ниско падане с ток на покой само около 1 µA. Тъй като е толерантен само до 6V вход, добавих два токоизправителни диода (D1, D2) последователно, за да понижа захранването на 7.2V до приемливо ниво около 6V. Забравих да добавя обичайния кондензатор за отделяне на 10 µF на печатната платка за захранването на ATMega. Затова надстроих обичайния изходен кондензатор на MCP1700 от 1 на 10 µF и работи добре.
- Контрол на напрежението на батерията чрез ADC0 на ATMega (чрез делител на напрежение)
Часовник в реално време
Модифициран DS3231, който активира ATMega на определени интервали, за да започне цикъл на измерване и предаване на данни. Самият DS3231 се захранва с литиева клетка CR2032.
BME280
Опитах да използвам оригиналния модул на Bosch BME280 самостоятелно, което е почти невъзможно да се запои поради малкия си размер. Затова използвам широко достъпната пробивна дъска. Тъй като това има ненужен регулатор на напрежението, който консумира енергия, го включвам с N-канален MOSFET точно преди измерванията.
SIM800L
Този модул е надежден, но изглежда доста темпераментен, ако захранването не е твърдо. Открих, че захранващото напрежение 4.1V работи най -добре. Направих следи от печатни платки за VCC и GND до SIM800L изключително дебел (20 мили).
Коментари за схеми/печатни платки
- Етикетът на мрежата "1" - посочен като "SINGLEPIN" в списъка с части просто се отнася до мъжки щифт на заглавката.
- Двата щифта, съседни на плъзгащия превключвател, трябва да се свържат с джъмпер за нормална работа, в противен случай VCC линията е отворена тук. Те са предназначени за текущи измервания, ако е необходимо.
- Кондензаторът от 100 µF (C12) за модула SIM800L не е необходим. Той беше добавен като предпазна (отчаяна) мярка в случай на очаквани проблеми със стабилността
Препоръчителни стъпки за сглобяване
- Сглобете всички компоненти на захранването в долната лява част на печатната платка. Щифтът за разрешаване (щифт 5) на TPS562208 трябва да е на логическо високо ниво за тестване, в противен случай модулът е в режим на изключване и ще имате 0V изход. За да издърпате щифта Enable високо за тестване, временен проводник от тампон 9 на ATMega (който на печатната платка е свързан към PIN 5 на регулатора на напрежението) може да бъде свързан към VCC точка; най -близката точка би била до долния щифт на R3, който лежи на VCC линията.
- Тестов изход от TPS562208 между долните щифтове на C2, C3 или C4 и GND. Трябва да имате около 4.1V.
- Тестов изход от MCP1700, между горния десен щифт на U6 и GND. Трябва да имате 3.3V.
- Припой ATMega328P; наблюдавайте маркера на щифт 1 в горния ляв ъгъл. Необходима е известна практика, но не твърде трудна.
- Записвайте буутлоудъра на ATMega328 - уроци за това на други места. Не е задължително да използвате пинови заглавки за свързване към MOSI, MISO, SCK и RST. За няколко секунди, необходими за изгаряне на буутлоудъра, можете да използвате кабелите на Dupont и да използвате малко ъгъл, за да постигнете добър контакт.
- Прикрепете 5 -кратна женска щифтова заглавка за DS3231.
- Припой SIM800L чрез мъжки щифтове
- Припой BME280
- Качете код в Arduino IDE с помощта на USB2TTL адаптер (изберете Arduino Uno/Genuino като цел).
Стъпка 3: Arduino код
Вижте изходния код на Arduino във прикачен файл.
Стъпка 4: Тест в реалния свят
Пробих две малки дупки от дясната страна на кутията, дълбоко в предната страна. Покрих ги отвътре с петна Goretex, за да позволя обмен на въздух, но изключва вода. Добавих допълнителна защита от дъжд с малки пластмасови покриви. След това поставям целия комплект в кутията с компонентите обърнати напред и батерията към капака. Добавям малко силиконова грес към кутията за допълнителна защита от проникване на вода.
В момента устройството е "инсталирано" до малка река. Ето емисията с данни на живо.
Препоръчано:
Как да направим рекордер за данни за влажност и температура в реално време с Arduino UNO и SD-карта - DHT11 регистратор на данни Симулация в Proteus: 5 стъпки
Как да направим рекордер за данни за влажност и температура в реално време с Arduino UNO и SD-карта | DHT11 симулация на регистратор на данни в Proteus: Въведение: Здравейте, това е Liono Maker, ето линк към YouTube. Ние правим творчески проект с Arduino и работим върху вградени системи. Data-Logger: Регистратор на данни (също регистратор на данни или запис на данни) е електронно устройство, което записва данни във времето с
Показване на времето и времето на Arduino 3 в 1: 11 стъпки
Arduino 3-в-1 дисплей за времето и времето: Харесвам PIC микроконтролерите и харесвам програмирането на асемблер. Всъщност през последните няколко години публикувах около 40 проекта на моя уебсайт въз основа на тази комбинация. Наскоро поръчах някои части от един от любимите ми американски
TCP/IP връзка през GPRS: Как да изпращате данни към сървър с помощта на модул SIM900A: 4 стъпки
TCP/IP връзка през GPRS: Как да изпращате данни към сървър с помощта на модул SIM900A: В този урок ще ви разкажа как да изпращате данни към TCP сървър, използвайки модул sim900. Също така ще видим как можем да получаваме данни от сървър до клиент (GSM модул)
RF серийна връзка за данни {през USB}: 3 стъпки
RF серийна връзка за данни {през USB}: TECGRAF DOC Как да предаваме данни чрез евтин RF модул през USB. Веригата получава енергия от USB порта (може да осигури 100mA и с известно програмиране можете да достигнете 500mA) Списък на материалите: 1 - Една двойка RF модул (като Laipac RLP/TL
Изградете 500 -метрова връзка за радио данни за под $ 40 .: 7 стъпки
Изградете 500 -метрова връзка за радио данни за под $ 40 .: Имате резервоар за вода, който искате да измерите, язовир или порта? Искате ли да откриете кола, която слиза по задвижването, но не искате да нанизвате проводници през градината? Тази инструкция показва как да изпращате данни на 500 метра със 100% надеждност, използвайки picaxe microcontr