Innehållsförteckning:

Kompakt vädersensor med GPRS (SIM -kort) datalänk: 4 steg
Kompakt vädersensor med GPRS (SIM -kort) datalänk: 4 steg

Video: Kompakt vädersensor med GPRS (SIM -kort) datalänk: 4 steg

Video: Kompakt vädersensor med GPRS (SIM -kort) datalänk: 4 steg
Video: [CES 2013] Sigma to unveil its 46 megapixel camera 'DP3 Merrill' 2024, November
Anonim
Kompakt vädersensor med datalänk med GPRS (SIM -kort)
Kompakt vädersensor med datalänk med GPRS (SIM -kort)
Kompakt vädersensor med datalänk med GPRS (SIM -kort)
Kompakt vädersensor med datalänk med GPRS (SIM -kort)
Kompakt vädersensor med datalänk med GPRS (SIM -kort)
Kompakt vädersensor med datalänk med GPRS (SIM -kort)

Projekt sammanfattning

Detta är en batteridriven vädersensor baserad på en BME280 temperatur/tryck/fuktighetssensor och en ATMega328P MCU. Den drivs med två 3,6 V litiumtionyl AA -batterier. Den har en extremt låg sömnförbrukning på 6 µA. Den sänder data halvtimme via GPRS (med en SIM800L GSM-modul) till ThingSpeak, styrd av en DS3231 realtidsklocka. Uppskattad service på en uppsättning batterier är> 6 månader.

Jag använder ett ASDA pay-as-you-go-SIM-kort, som erbjuder extremt bra förutsättningar för detta projekt, eftersom det har en mycket lång utgångstid för kredit (180 dagar) och endast tar ut 5p/MB datavolym.

Motivation: Utveckling av en ekonomisk, autonom, batteridriven miljösensor utan underhåll, som kan placeras i naturen för att samla in väder eller andra data och överföra via GSM/GPRS-nätverk till en IoT-server.

Fysiska mått: 109 x 55 x 39 mm (inklusive höljesflänsar). Vikt 133 g. IP -klassificering 54 (uppskattad).

Materialkostnad: Ca. £ 20 per enhet.

Monteringstid: 2 timmar per enhet (handlödning)

Strömkälla: Två litiumtionyl AA-batterier, ej uppladdningsbara (3,6V, 2,6Ah).

Nätverksprotokoll: GSM GPRS (2G)

Potentiella användningsområden: Alla avlägsna platser med GSM -signal täckning. Skogar, fyrar, bojar, privata yachter, husvagnar, campingplatser, fjällstugor, obebodda byggnader

Pålitlighetstest: En enhet har genomgått långsiktig testning utan uppsikt sedan 30.8.20. Förutom en programkrasch har den skickat data tillförlitligt var 30: e minut.

Steg 1: Obligatoriska delar

Obligatoriska delar
Obligatoriska delar
Obligatoriska delar
Obligatoriska delar
  • Skräddarsydda kretskort. Zippade Gerber -filer här (instructables.com verkar blockera uppladdningar av ZIP -filer). Jag rekommenderar starkt jlcpcb.com för PCB -produktion. För människor som bor i Storbritannien skickar jag dig gärna ett extra PCB för ett minimalt bidrag till material- och portokostnad - meddela mig.
  • ATMega328P-AU
  • Modifierad DS3231 Realtidsklocka (se avsnittet nedan)
  • BME280 Breakout board, som den här
  • SIM800L GSM GPRS -modul
  • Olika SMD -delar enligt detaljerad lista.
  • Hammond 1591, svart ABS -hölje, IP54, flänsad, 85 x 56 x 35 mm, från RS Components UK

Ändring av DS3231

Det fyrdubbla motståndsnätverket som är cirkulerat i rött måste vara lödt. Andra mer destruktiva metoder är också OK, men undvik att överbrygga kuddarna på den inre raden med 4 kuddar (mot sidan av MCU). De övriga 4 kuddarna är anslutna ändå med PCB -spår. Denna modifiering är avgörande för att SQW -stiftet ska fungera som ett larm. Utan att ta bort motstånden fungerar det inte förrän du ansluter en VCC-matning till modulen, vilket besegrar syftet med en mycket låg effekt RTC.

Steg 2: Schematiska principer

Schematiska principer
Schematiska principer

De högsta prioriteringarna för designen var:

  • Batteridrift med låg strömförbrukning
  • Kompakt design

Strömförsörjning

Två 3,6V Saft litiumtionyl AA -batterier. En P-kanal MOSFET för skydd mot omvänd polaritet.

Det finns två spänningsregulatorer i kretsen:

  • En Texas Instruments TPS562208 2 Amp nedtrappningsregulator för att driva SIM800L på cirka 4,1V. Detta kan bytas från ATMega och sätts i avstängningsläge för det mesta via Enable pin 5.
  • En MCP1700 3.3V regulator för ATMega och BME280. Detta är en extremt effektiv lågdroppsregulator med en vilande ström på endast cirka 1 µA. Eftersom det bara är tolerant upp till 6V ingång, lade jag till två likriktardioder (D1, D2) i serie för att sänka 7,2V -matningen till en acceptabel nivå runt 6V. Jag glömde lägga till den vanliga 10 µF avkopplingskondensatorn på kretskortet för strömförsörjningen på ATMega. Därför har jag uppgraderat den vanliga utkondensatorn på MCP1700 från 1 till 10 µF och det fungerar bra.
  • Batterispänningsövervakning via ADC0 på ATMega (via en spänningsdelare)

Riktig tids klocka

En modifierad DS3231, som väcker ATMega med angivna intervall för att starta en mätcykel och dataöverföring. Själva DS3231 drivs med en CR2032 litiumcell.

BME280

Jag har försökt använda den ursprungliga Bosch BME280 -modulen på egen hand, vilket är nästan omöjligt att löda på grund av dess minsta storlek. Därför använder jag den allmänt tillgängliga breakout -brädan. Eftersom denna har en onödig spänningsregulator, som förbrukar energi, slår jag på den med en N-kanal MOSFET strax före mätningar.

SIM800L

Denna modul är tillförlitlig men verkar vara ganska temperamentsfull om strömförsörjningen inte är fast. Jag fann att en 4,1V matningsspänning fungerar bäst. Jag har gjort PCB -spåren för VCC och GND till SIM800L extra tjock (20 mil).

Schematiska/PCB -kommentarer

  • Nätverksetiketten "1" - listad som "SINGLEPIN" i dellistan hänvisar helt enkelt till en manlig rubrikstift.
  • De två stiften intill glidomkopplaren måste överbryggas med en bygel för normal drift, annars är VCC -linjen öppen här. De är avsedda för strömmätningar vid behov.
  • 100 µF kondensator (C12) för SIM800L -modulen är inte nödvändig. Det lades till som en försiktighetsåtgärd (desperat) vid förväntade stabilitetsproblem

Rekommenderade monteringssteg

  1. Montera alla strömförsörjningskomponenter i den nedre vänstra delen av kretskortet. Aktiveringsstiftet (stift 5) på TPS562208 måste vara logiskt högt för testning, annars är modulen i avstängningsläge och du har 0V -utgång. För att dra aktiveringsnålen högt för testning kan en tillfällig kabel från pad 9 på ATMega (som på kretskortet är ansluten till PIN 5 på spänningsregulatorn) anslutas till en VCC -punkt; den närmaste punkten skulle vara den nedre stiftet på R3, som ligger på VCC -linjen.
  2. Testa utgången från TPS562208 mellan de nedre stiften på antingen C2, C3 eller C4 och GND. Du bör ha runt 4.1V.
  3. Testutmatning från MCP1700, mellan övre högra stift på U6 och GND. Du bör ha 3.3V.
  4. Löd ATMega328P; observera stift 1 -markören i övre vänstra hörnet. Vissa övningar krävs, men inte för svårt.
  5. Bränn bootloader på ATMega328 - självstudier för detta någon annanstans. Du behöver inte nödvändigtvis använda stifthuvuden för att ansluta till MOSI, MISO, SCK och RST. Under de få sekunder det tar att bränna startladdaren kan du använda Dupont -trådar och använda lite vinkling för att uppnå en bra kontakt.
  6. Fäst 5x kvinnlig stifthuvud för DS3231.
  7. Löd SIM800L via stifthuvuden
  8. Lödning BME280
  9. Ladda upp kod i Arduino IDE med en USB2TTL -adapter (välj Arduino Uno/Genuino som mål).

Steg 3: Arduino -kod

Se Arduino -källkoden i filbilagan.

Steg 4: Verkliga test

Test i verkligheten
Test i verkligheten
Test i verkligheten
Test i verkligheten
Test i verkligheten
Test i verkligheten

Jag borrade två små hål på höger sida av fodralet bara djupt till framsidan. Jag täckte dem inifrån med Goretex -lappar för att tillåta luftutbyte men utesluta vatten. Jag lade till ytterligare regnskydd med lite plasttak. Jag sätter sedan in hela enheten i fodralet med komponenterna vända framåt och batteriet mot locket. Jag lägger till lite kiselfett i fodralet för extra vatteninträngningsskydd.

Enheten är för närvarande "installerad" bredvid en liten flod. Här är live dataflöde.

Rekommenderad: