Innholdsfortegnelse:

Botletics LTE CAT-M/NB-IoT + GPS-skjerm for Arduino: 10 trinn (med bilder)
Botletics LTE CAT-M/NB-IoT + GPS-skjerm for Arduino: 10 trinn (med bilder)

Video: Botletics LTE CAT-M/NB-IoT + GPS-skjerm for Arduino: 10 trinn (med bilder)

Video: Botletics LTE CAT-M/NB-IoT + GPS-skjerm for Arduino: 10 trinn (med bilder)
Video: SIM7000a - Setup and test LTE CAT-M 2024, Juli
Anonim
Image
Image
Botletics LTE CAT-M/NB-IoT + GPS-skjerm for Arduino
Botletics LTE CAT-M/NB-IoT + GPS-skjerm for Arduino

Oversikt

Botletics SIM7000 LTE CAT-M/NB-IoT-skjoldet bruker den nye LTE CAT-M- og NB-IoT-teknologien og har også integrert GNSS (GPS, GLONASS og BeiDou/Compass, Galileo, QZSS-standarder) for posisjonssporing. Det er flere SIM7000-seriemoduler som henvender seg til forskjellige regioner rundt om i verden, og heldigvis har SIMCOM gjort det veldig enkelt å identifisere: SIM7000A (amerikansk), SIM7000E (europeisk), SIM7000C (kinesisk) og SIM7000G (global). Foreløpig støttes NB-IoT i mange land rundt om i verden, men dessverre ikke i USA, selv om det er planlagt å være kommersielt tilgjengelig i nær fremtid (2019) og uansett kan vi fortsatt bruke LTE CAT-M-funksjonene!

For å bruke skjoldet, bare koble skjoldet til en Arduino, sett inn et kompatibelt SIM -kort, fest LTE/GPS -antennen, så er du i gang!

Introduksjon

Med fremveksten av IoT-enheter med lav effekt og mobil tilkobling og utfasingen av 2G (med bare T-mobil som støtter 2G/GSM til 2020), går alt mot LTE, og dette har fått mange til å kjempe for å finne bedre løsninger. Imidlertid har dette også etterlatt mange amatører ansiktspalming med eldre 2G-teknologi som SIM800-serien moduler fra SIMCOM. Selv om disse 2G- og 3G-modulene er et flott utgangspunkt, er det på tide å gå videre og SIMCOM kunngjorde nylig sin nye SIM7000A LTE CAT-M-modul på en utviklerkonferanse. Så spennende!:)

Den fantastiske delen av alt dette er at SIMCOM gjorde det ekstremt enkelt å migrere fra 2G- og 3G -modulene til denne nye modulen! SIM7000-serien bruker mange av de samme AT-kommandoene som minimerer programvareutviklingen med miles! Adafruit har også allerede et fantastisk FONA -bibliotek på Github som kan brukes til å introdusere denne nye SIM7000 i festen!

Hva er LTE CAT-M?

LTE CAT-M1 regnes som nestegenerasjons LTE-teknologi og er lavere effekt og mer egnet for IoT-enheter. NarrowBand IoT (NB-IoT) eller "CAT-M2" -teknologi er en Low-Power Wide Area Network (LPWAN) -teknologi spesielt designet for IoT-enheter med lav effekt. Det er en relativt ny teknologi som dessverre ennå ikke er tilgjengelig i USA, selv om selskaper jobber med å teste og bygge infrastrukturen. For IoT -enheter som bruker radioteknologi (RF) er det flere ting å huske på: Strømforbruk BandwidthRangePacket størrelse (send masse dataCost Hver av disse har avveininger (og jeg vil egentlig ikke forklare dem alle); for eksempel lar stor båndbredde enheter send masse data (som telefonen din, som kan streame YouTube!), men dette betyr også at den er veldig energisulten. Å øke rekkevidden ("området" på nettverket) øker også strømforbruket. Når det gjelder NB-IoT, kutte båndbredden betyr at du ikke vil kunne sende mye data, men for IoT-enheter som skyter biter av data til skyen er dette perfekt! Derfor er "smal" båndteknologi, ideell for enheter med lite strøm med små mengder data, men fortsatt med lang rekkevidde (stort område)!

Botletics SIM7000 -skjoldet for Arduino

Skjoldet som jeg har designet bruker SIM7000-serien for å gjøre det mulig for brukere å ha ekstremt lav effekt LTE CAT-M-teknologi og GPS på fingertuppene! Skjoldet har også en MCP9808 I2C temperatursensor, flott for i det minste å måle noe og sende det via en mobilforbindelse.

  • Skjoldet er åpen kildekode! Jippi!
  • All dokumentasjon (EAGLE PCB -filer, Arduino -kode og detaljert wiki) finner du her på Github.
  • For å se hvilken SIM7000 -versjon som er best egnet for deg, kan du se denne wikisiden.
  • Botletics SIM7000 skjoldsett kan kjøpes her på Amazon.com

Trinn 1: Samle deler

Samle deler
Samle deler
Samle deler
Samle deler
Samle deler
Samle deler
Samle deler
Samle deler

Nedenfor er en liste over alle delene du trenger:

  • Arduino eller Arduino -kompatibelt brett - Arduino Uno er det vanligste valget for dette! Hvis du vil bruke LTE -skjoldet som et "skjold", bør du bruke et Arduino -kort med Arduino -formfaktoren. Når du sier det åpenbare, trenger du også en programmeringskabel for å laste opp Arduino -skisser til brettet! Hvis du ikke bruker et Arduino-form-faktor-bord, er det også greit! Det er informasjon om hvilke tilkoblinger du skal gjøre på denne wikisiden og forskjellige mikrokontrollere som er testet, inkludert ESP8266, ESP32, ATmega32u4, ATmega2560 og ATSAMD21.
  • Botletics SIM7000 Shield Kit - Skjoldet kommer med en dobbel LTE/GPS uFL -antenne og stabling av kvinnelige hoder! Brettet kommer i tre forskjellige versjoner (SIM7000A/C/E/G), og avhengig av hvilket land du bor i må du velge riktig versjon. Jeg har opprettet denne siden på Github wiki som viser deg hvordan du finner ut hvilken versjon som er best for deg!
  • LTE CAT-M eller NB-IoT SIM-kort-Selv om settet ikke lenger inneholder et gratis SIM-kort, kan du hente et Hologram SIM-kort som gir deg 1 MB gratis per måned og fungerer praktisk talt hvor som helst i verden fordi Hologram har inngått et samarbeid med over 500 transportører! De har også pay-as-you-go og månedlige planer og har et flott fellesskapsforum for teknisk støtte for SIM-kortaktivering, Hologram APIer og mer! Det fungerer bra med dette skjoldet landsdekkende i USA for AT&T og Verizons LTE CAT-M1-nettverk, men vær oppmerksom på at i andre land må du kanskje skaffe ditt eget SIM-kort fra en lokal leverandør siden Hologram samarbeider med operatører og CAT-M og NB-IoT er relativt nytt.
  • 3,7V LiPo -batteri (1000mAH+): Når du søker etter nettverk eller overfører data, kan skjoldet trekke betydelige mengder strøm, og du kan ikke stole på direkte strøm fra Arduino 5V -skinnen. Koble et 3,7V LiPo -batteri til JST -kontakten på kortet, og kontroller at batteriet er koblet til den positive ledningen til venstre (som de som finnes på Sparkfun eller Adafruit). Det er også viktig å sørge for at batteriet må ha minst 500mAH kapasitet (minimum) for å kunne levere nok strøm og forhindre at modulen starter på nytt under gjeldende pigger. 1000mAH eller mer anbefales for stabilitet. Grunnen til denne minimale kapasiteten er fordi LiPo -batteriets ladekrets er satt til 500mA, så du bør sørge for at batteriet har minst 500mAH kapasitet for å forhindre skade på batteriet.

Trinn 2: Monter skjoldet

Monter skjoldet
Monter skjoldet
Monter skjoldet
Monter skjoldet
Monter skjoldet
Monter skjoldet

For å bruke skjoldet må du lodde overskrifter på det med mindre du ikke har tenkt å bruke dette brettet som et "skjold" og mer av en frittstående modul i stedet, noe som også er helt OK! Et eksempel på å gjøre dette er å bruke en Arduino Micro som kontroller og koble den til skjoldet separat.

Det vanligste valget for å bruke brettet som et Arduino -skjold er stabling av kvinnelige hoder, som følger med skjoldet. Etter lodding av hodene, fortsett og legg skjoldet på toppen av Arduino -brettet (med mindre du bruker det som et frittstående brett), og du er klar for neste trinn!

Merk: For tips om hvordan du lodder pinnene, kan du besøke denne siden i Github -wikien.

Trinn 3: Skjold pinouts

Skjold Pinouts
Skjold Pinouts
Skjold Pinouts
Skjold Pinouts
Skjold Pinouts
Skjold Pinouts

Skjoldet bruker ganske enkelt Arduinos pinout, men kobler visse pins til spesifikke formål. Disse pinnene kan oppsummeres nedenfor:

Power Pins

  • GND - Felles grunnlag for all logikk og makt
  • 3.3V - 3.3V fra Arduino -regulatoren. Bruk dette akkurat som på Arduino!
  • 5V / LOGIC - Denne 5V -skinnen fra Arduino lader LiPo -batteriet som driver SIM7000 og angir også logisk spenning for I2C og nivåskift. Hvis du bruker en 3.3V mikrokontroller, kobler du 3.3V til skjoldets "5V" -pinne (se avsnittet nedenfor).
  • VBAT - Dette gir tilgang til LiPo -batterispenningen og er normalt ikke koblet til noe på Arduino, så du kan bruke den som du vil! Det er også det samme som inngangsspenningen til SIM7000 -modulen. Hvis du tenker på å måle og overvåke denne spenningen, sjekk "b" -kommandoen i demoopplæringen som måler spenningen og viser batteriprosenten! Husk at LiPo -batteriet er nødvendig!
  • VIN - Denne pinnen er ganske enkelt koblet til VIN -pinnen på Arduino. Du kan drive Arduino som du vanligvis ville med 7-12V på denne pinnen.

Andre pinner

  • D6 - Koblet til SIM7000s PWRKEY -pin
  • D7 - SIM7000s tilbakestillingsnål (bare bruk denne i nødstilfeller!)
  • D8 - pin for UART Data Terminal Ready (DTR). Dette kan brukes til å vekke modulen fra dvale når du bruker kommandoen "AT+CSCLK"
  • D9 - Ringindikator (RI) pin
  • D10 - UART Transmit (TX) pin på SIM7000 (dette betyr at du bør koble Arduino's TX til denne!)
  • D11 - UART mottak (RX) pin på SIM7000 (koble til Arduinos TX pin)
  • D12 - Good 'ole D12 på Arduino, MEN du kan koble den til ALERT -avbruddstappen på temperatursensoren ved å lodde en jumper
  • SDA/SCL - Temperatursensoren er koblet til skjermen via I2C

Hvis du bruker kortet som en frittstående modul og ikke som et "skjold", eller hvis du bruker 3.3V logikk i stedet for 5V, må du gjøre de nødvendige tilkoblingene som beskrevet i avsnittet "Ekstern vertskortledning" i denne Github -wikisiden.

Men hvis alt du trenger er å teste AT -kommandoer, trenger du bare å koble til LiPo -batteriet og mikro -USB -kabelen. Følg deretter disse prosedyrene for å teste AT -kommandoer via USB. Vær oppmerksom på at du også kan teste AT -kommandoer via Arduino IDE, men det vil kreve tilkoblingspinner D10/D11 for UART.

For detaljert informasjon om skjoldets pinouts og hva hver pin gjør, besøk denne Github wiki -siden.

Trinn 4: Slå på skjoldet

Drift av skjoldet
Drift av skjoldet

For å drive skjoldet, bare koble til Arduino og koble til et 3,7V LiPo -batteri (1000mAH eller større kapasitet) som de som selges på Adafruit eller Sparkfun. Uten batteriet vil du sannsynligvis se modulen starte opp og krasje kort tid etterpå. Du kan fortsatt drive Arduino som du vanligvis ville gjort via USB-kabelen eller eksternt med en 7-12V strømkilde på VIN-pinnen og 5V-skinnen på Arduino vil lade LiPo-batteriet. Vær oppmerksom på at hvis du bruker et standard Arduino-kort, kan du trygt koble det til via en ekstern strømkilde samtidig som du holder programmeringskabelen tilkoblet fordi den har spenningsvalgskretser.

LED -indikasjon

Først lurer du kanskje på om brettet er i live, for det er kanskje ikke noen LED -er som tennes. Dette er fordi "PWR" LED er en strømindikator for selve SIM7000 -modulen, og selv om du leverer strøm, har du ikke slått på modulen ennå! Dette gjøres ved å pulsere PWRKEY lavt i minst 72 ms, som jeg skal forklare senere. Hvis du har et batteri tilkoblet og det ikke er fulladet, vil ikke den grønne "DONE" -lampen tennes, men hvis du ikke har et batteri tilkoblet, bør denne LED-lampen slås på (og kan blinke av og til når den blir lurt inn tror det ikke-eksisterende batteriet ikke er fulladet på grunn av små spenningsfall).

Nå som du vet hvordan du driver alt, la oss gå videre til mobilnettet!

Trinn 5: SIM -kort og antenne

SIM -kort og antenne
SIM -kort og antenne
SIM -kort og antenne
SIM -kort og antenne
SIM -kort og antenne
SIM -kort og antenne
SIM -kort og antenne
SIM -kort og antenne

Velge et SIM -kort

Igjen, SIM-kortet ditt må kunne støtte LTE CAT-M (ikke bare tradisjonell LTE som det som sannsynligvis er i telefonen) eller NB-IoT, og det må være en "mikro" SIM-størrelse. Det beste alternativet jeg har funnet for dette skjoldet er Hologram Developer SIM -kortet som gir 1 MB/måned gratis og tilgang til Holograms APIer og ressurser for det første SIM -kortet! Bare logg deg på dashbordet på Hologram.io og skriv inn SIM -kortets CCID -nummer for å aktivere det, og angi deretter APN -innstillingene i koden (allerede angitt som standard). Det er problemfritt og fungerer hvor som helst i verden fordi Hologram støtter over 200 operatører globalt!

Det skal bemerkes at SIM7000C/E/G-versjonene også støtter 2G fallback, så hvis du virkelig vil teste og ikke har et LTE CAT-M eller NB-IoT SIM-kort, kan du fortsatt teste modulen på 2G.

Sette inn SIM -kortet

Først av alt må du bryte mikro-SIM-kortet ut av SIM-kortholderen i normal størrelse. Finn SIM -kortholderen på venstre side av kortet i nærheten av batterikontakten på LTE -skjoldet. SIM -kortet er satt inn i denne holderen med SIM -metallets kontakter vendt ned og det lille hakk på den ene kanten mot SIM -kortholderen.

Antenne godhet

Skjoldpakken kommer med en veldig praktisk dobbel LTE/GPS -antenne! Det er også fleksibelt (selv om du ikke bør prøve å vri og bøye det mye fordi du kan bryte antenneledningene av antennen hvis du ikke er forsiktig) og har et avtagbart lim på bunnen. Koble til ledningene er superenkelt: bare ta ledningene og fest dem på de matchende uFL -kontaktene på høyre kant av skjoldet. MERK: Pass på at du matcher LTE-ledningen på antennen med LTE-kontakten på skjermen, og det samme med GPS-ledningen fordi de krysser hverandre!

Trinn 6: Oppsett av Arduino IDE

Oppsett av Arduino IDE
Oppsett av Arduino IDE

Dette SIM7000 -skjoldet er basert på Adafruit FONA -kortene og bruker det samme biblioteket, men forbedret med ekstra modemstøtte. Du kan lese hele instruksjonene for hvordan du installerer mitt reviderte FONA -bibliotek her på min Github -side.

Du kan også se hvordan du tester temperatursensoren MCP9808 ved å følge disse instruksjonene, men her vil jeg hovedsakelig fokusere på mobilnettet!

Trinn 7: Arduino -eksempel

Arduino eksempel
Arduino eksempel
Arduino eksempel
Arduino eksempel
Arduino eksempel
Arduino eksempel

Oppsett av baudhastighet

Som standard kjører SIM7000 på 115200 baud, men dette er for raskt til at programvare seriell kan fungere pålitelig, og tegn kan tilfeldig vises som firkantede bokser eller andre merkelige symboler (for eksempel kan en "A" vises som "@"). Dette er grunnen til at hvis du ser nøye ut, konfigurerer Arduino modulen til en lavere baudhastighet på 9600 hver gang den initialiseres. Heldigvis blir koblingen tatt hånd om automatisk av koden, så du trenger ikke gjøre noe spesielt for å sette den opp!

LTE Shield Demo

Følg deretter disse instruksjonene for å åpne "LTE_Demo" -skissen (eller hvilken variant av den skissen, avhengig av hvilken mikrokontroller du bruker). Hvis du ruller ned til slutten av "setup ()" -funksjonen, ser du linjen "fona.setGPRSNetworkSettings (F (" hologram "));" som angir APN for Hologram SIM -kortet. Dette er absolutt nødvendig, og hvis du bruker et annet SIM -kort, bør du først konsultere kortets dokumentasjon om hva APN er. Vær oppmerksom på at du bare trenger å endre denne linjen hvis du ikke bruker et Hologram SIM -kort.

Når koden kjører, vil Arduino prøve å kommunisere med SIM7000 via UART (TX/RX) ved hjelp av SoftwareSerial. For å gjøre dette, må selvfølgelig SIM7000 slås på, så mens den prøver å etablere en tilkobling, må du se etter "PWR" -LEDEN for å sikre at den slås på! (Merk: den skal slå på omtrent fire sekunder etter at koden er kjørt). Etter at Arduino har opprettet kommunikasjon med modulen, bør du se en stor meny med en rekke handlinger modulen kan utføre! Vær imidlertid oppmerksom på at noen av disse er for SIMComs andre 2G- eller 3G -moduler, så ikke alle kommandoene gjelder for SIM7000, men mange av dem er det! Bare skriv inn bokstaven som tilsvarer en handling du vil utføre, og klikk "Send" øverst til høyre på den serielle skjermen, eller bare trykk på Enter -tasten. Se overrasket mens skjoldet spytter tilbake et svar!

Demokommandoer

Nedenfor er noen kommandoer du bør kjøre for å sikre at modulen er konfigurert før du fortsetter:

  • Skriv "n" og trykk enter for å kontrollere nettverksregistreringen. Du bør se "Registrert (hjem)". Hvis ikke, sjekk om antennen din er festet, og du må kanskje også kjøre kommandoen "G" (forklart nedenfor) først!
  • Kontroller nettverkssignalstyrken ved å skrive "i". Du bør få en RSSI -verdi; jo høyere denne verdien jo bedre! Min var 31, noe som indikerer den beste signalstyrkebraketten!
  • Skriv inn kommandoen "1" for å sjekke virkelig kul nettverksinformasjon. Du kan få gjeldende tilkoblingsmodus, operatørnavn, bånd, etc.
  • Hvis du har et batteri tilkoblet, kan du prøve "b" -kommandoen for å lese batterispenningen og prosentandelen. Hvis du ikke bruker et batteri, vil denne kommandoen alltid lese rundt 4200mV og derfor si at den er 100% ladet.
  • Skriv inn "G" for å aktivere mobildata. Dette angir APN og er avgjørende for å få enheten din tilkoblet Internett! Hvis du ser "FEIL", prøv å slå av data ved å bruke "g", og prøv igjen.
  • For å teste om du faktisk kan gjøre noe med modulen din, skriv inn "w". Den vil be deg om å skrive inn nettadressen til nettsiden du vil lese, og kopiere/lime inn eksempeladressen "https://dweet.io/get/latest/dweet/for/sim7000test123" og trykke enter. Kort tid etter skulle det gi deg en melding som "{" this ":" failed "," with ": 404," because ":" we could not find this "}" (forutsatt at ingen postet data for "sim7000test123")
  • La oss nå teste å sende dummy -data til dweet.io, et gratis sky -API ved å skrive inn "2" i den serielle skjermen. Du bør se den kjøre gjennom noen AT -kommandoer.
  • For å teste om dataene virkelig kom igjennom, prøv "w" igjen og skriv denne gangen "https://dweet.io/get/latest/dweet/for/{deviceID}" uten parentesene, der enhets -ID er IMEI nummeret på enheten din som skal skrives ut øverst på den serielle skjermen fra modulens initialisering. Du bør se "lyktes" og et JSON -svar som inneholder dataene du nettopp hadde sendt! (Vær oppmerksom på at 87% batteri bare er et dummy -nummer som er angitt i koden og kanskje ikke er ditt faktiske batterinivå)
  • Nå er det på tide å teste GPS! Aktiver strøm til GPS -en ved hjelp av "O"
  • Skriv inn "L" for å spørre posisjonsdataene. Vær oppmerksom på at du kanskje må vente rundt 7-10 sekunder før det blir fikset på stedet. Du kan fortsette å skrive "L" til den viser deg noen data!
  • Når den gir deg data, kan du kopiere og lime den inn i Microsoft Word eller et tekstredigeringsprogram slik at det er lettere å lese. Du vil se at det tredje tallet (tallene er atskilt med kommaer) er dato og klokkeslett, og de neste tre tallene er breddegrad, lengdegrad og høyde (i meter) for posisjonen din! For å sjekke om det var nøyaktig, gå til dette elektroniske verktøyet og søk på din nåværende posisjon. Den skal gi deg bredden/lengden og høyden og sammenligne disse verdiene med den GPS -en din ga!
  • Hvis du ikke trenger GPS, kan du slå den av med "o"
  • Ha det gøy med de andre kommandoene, og sjekk eksempelet "IoT_Example" -skisse for et kult eksempel på hvordan du sender data til et gratis sky -API via LTE!

Send og motta tekster

For å se hvordan du sender tekster fra skjoldet direkte til en hvilken som helst telefon og sender tekster til skjoldet via Holograms Dashboard eller API, kan du lese denne Github -wikisiden.

IoT -eksempel: GPS -sporing

Når du har bekreftet at alt fungerer som forventet, åpner du skissen "IoT_Example". Denne eksempelkoden sender GPS -posisjon og peilingsdata, temperatur og batterinivå til skyen! Last opp koden og se forbløffet på hvordan skjoldet gjør sin magi! For å sjekke om dataene virkelig ble sendt til nettskyen, gå til "https://dweet.io/get/latest/dweet/for/{IMEI}" i en hvilken som helst nettleser (fyll ut IMEI -nummeret som ligger øverst i seriell skjerm etter modulinitialisering, eller skrevet ut på SIMCOM -modulen), og du bør se dataene som enheten sendte!

Med dette eksemplet kan du også kommentere linjen med "#define samplingRate 30" for å sende data gjentatte ganger i stedet for å bare kjøre en gang. Dette gjør enheten din i hovedsak til en GPS -sporingsenhet!

For mer informasjon, vennligst besøk veiledningene jeg laget for GPS-sporing i sanntid:

  • Opplæring i GPS -tracker del 1
  • Opplæring i GPS -tracker del 2

Feilsøking

For vanlige spørsmål og feilsøkingsproblemer, vennligst besøk FAQ på Github.

Trinn 8: Testing med AT -kommandoer

Testing med AT -kommandoer
Testing med AT -kommandoer

Testing fra Arduino IDE

Hvis du vil sende AT -kommandoer til modulen via den serielle skjermen, bruker du "S" -kommandoen fra menyen for å gå inn i seriell rørmodus. Dette vil gjøre det slik at alt du skriver i den serielle skjermen vil bli sendt til modulen. Når det er sagt, sørg for å aktivere "Både NL & CR" nederst på den serielle skjermen, ellers ser du ikke noe svar på kommandoene dine fordi modulen ikke vet at du har skrevet!

For å gå ut av denne modusen, trykker du bare på tilbakestillingsknappen på Arduino. Vær oppmerksom på at hvis du bruker ATmega32u4- eller ATSAMD21-baserte kort, må du også starte den serielle skjermen på nytt.

For mer informasjon om sending av AT -kommandoer fra Arduino IDE, vennligst se denne wikisiden.

Tester direkte via USB

Kanskje en enklere metode (for Windows -brukere) er å installere Windows -driverne som er beskrevet i denne opplæringen og teste AT -kommandoer ved å bruke skjoldets mikro -USB -port i stedet!

Hvis du fortsatt vil eksperimentere med AT -kommandoene, men vil kjøre dem i en sekvens og ikke vil rote med å endre FONA -biblioteket, kan du gjøre det med et enkelt lite bibliotek jeg skrev kalt "AT Command Library" som du finner du her på Github. Alt du trenger å gjøre er å laste ned ZIP fra depotet og trekke det ut i mappen Arduino biblioteker og en eksempelskisse (kalt "AT_Command_Test.ino") for SIM7000 finner du her i LTE shield Github repo. Dette biblioteket lar deg sende AT -kommandoer via Software Serial med tidsavbrudd, sjekker etter et bestemt svar fra modulen, verken eller begge deler!

Trinn 9: Nåværende forbruk

For IoT -enheter vil du se at disse tallene går nedover, så la oss ta en titt på noen av de tekniske spesifikasjonene! For en detaljert rapport om nåværende forbruksmålinger, se denne Github -siden.

Her er en rask oppsummering:

  • SIM7000 -modul slått av: hele skjoldet trekker <8uA på 3,7V LiPo -batteri
  • Dvalemodus trekker omtrent 1,5mA (inkludert den grønne PWR -LED, så sannsynligvis ~ 1mA uten den) og forblir tilkoblet nettverket
  • E-DRX-innstillingene kan konfigurere syklustiden for nettverksforhandlingen og spare energi, men vil også forsinke ting som innkommende tekstmeldinger, avhengig av hva syklustiden er satt til
  • Koblet til LTE CAT-M1-nettverk, inaktiv: ~ 12mA
  • GPS legger til ~ 32mA
  • Tilkobling av USB legger til ~ 20mA
  • Dataoverføring over LTE CAT-M1 er ~ 96mA for ~ 12s
  • Sender SMS tegner ~ 96mA for ~ 10s
  • Motta SMS trekker ~ 89mA for ~ 10s
  • PSM høres ut som en fantastisk funksjon, men har ennå ikke fungert

Og her er litt mer forklaring:

  • Slå av -modus: Du kan bruke "fona.powerDown ()" -funksjonen for å slå SIM7000 helt av. I denne tilstanden trekker modulen bare ca 7,5uA, og kort tid etter at du har slått av modulen, bør "PWR" -LEDEN også slås av.
  • Strømsparingsmodus (PSM): Denne modusen er som strømavbruddsmodus, men modemet forblir registrert i nettverket mens det bare tegner 9uA, mens modulen fortsatt er på. I denne modusen vil bare RTC -effekten være aktiv. For de ESP8266 -fansen der ute, er det i utgangspunktet "ESP.deepSleep ()" og RTC -timeren kan vekke modulen, men du kan gjøre noen ganske kule ting som å vekke modemet ved å sende det en SMS. Imidlertid kunne jeg dessverre ikke få denne funksjonen til å fungere. Gi meg definitivt beskjed hvis du gjør det!
  • Flymodus: I denne modusen er det fortsatt strøm til modulen, men RF er fullstendig deaktivert, men SIM -kortet er fremdeles aktivt, så vel som UART og USB -grensesnitt. Du kan gå inn i denne modusen ved å bruke "AT+CFUN = 4", men jeg så ikke at dette tok effekt heller.
  • Minimum funksjonalitetsmodus: Denne modusen er den samme som flymodus bortsett fra at SIM -kortgrensesnittet er utilgjengelig. Du kan gå inn i denne modusen ved å bruke "AT+CFUN = 0", men du kan også gå inn i denne modusen med "AT+CSCLK = 1", hvoretter SIM7000 trekker opp DTR -pinnen når modulen er i inaktiv modus. I denne dvalemodus vekker modulen ved å dra DTR lavt. Dette kan være nyttig fordi det kan være mye raskere å vekke det enn å slå det på fra bunnen av!
  • Diskontinuerlig mottak/overføring (DRX/DTX) -modus: Du kan så å si konfigurere "samplingshastigheten" til modulen, slik at modulen bare ser etter tekstmeldinger eller sender data med en raskere eller langsommere hastighet, alt mens du fortsatt er koblet til nettverket. Dette reduserer dagens forbruk betraktelig!
  • Deaktiver "PWR" -LED: For å spare noen få øre kan du deaktivere modulens strøm-LED ved å kutte den normalt lukkede loddetrøyen ved siden av den. Hvis du senere ombestemmer deg og vil ha den tilbake, er det bare å lodde genseren!
  • "NETLIGHT" LED På/Av: Du kan også bruke "AT+CNETLIGHT = 0" for å slå av den blå LED -statusen for nettverket helt hvis du ikke trenger det!
  • GNSS På/Av: Du kan spare 30mA ved å slå av GPS ved å bruke kommandoen "fona.enableGPS ()" med true eller false som inngangsparameter. Hvis du ikke bruker den, foreslår jeg at du slår den av! Jeg fant også ut at det bare tar omtrent 20 -årene å få en løsning på stedet fra en kald start og bare ca 2 sekunder når enheten allerede har vært på (for eksempel hvis du slår av GPS -en og slår på igjen og spør igjen), noe som er ganske raskt ! Du kan også eksperimentere med varm/varm start og assistert GPS.

Trinn 10: Konklusjoner

Totalt sett er SIM7000 superrask og bruker banebrytende teknologi med integrert GPS og er lastet med kule funksjoner! Dessverre for oss i USA er NB-IoT ikke fullt ut distribuert her, så vi må vente litt til det kommer ut, men med dette LTE-skjoldet kan vi fortsatt bruke LTE CAT-M1 på AT&T og Verizons nettverk. Dette skjoldet er flott for å eksperimentere med lavenergi-mobilenheter som GPS-trackere, eksterne dataloggere og mye mer! Ved å inkludere andre skjold og moduler for ting som lagring av SD -kort, solcellepaneler, sensorer og annen trådløs tilkobling, er mulighetene nesten uendelige!

  • Hvis du likte dette prosjektet, vennligst gi det et hjerte og stemme på det!
  • Hvis du har kommentarer, forslag eller spørsmål, kan du legge det ut nedenfor!
  • For å bestille ditt eget skjold, vennligst besøk mitt nettsted for informasjon eller bestill det på Amazon.com
  • Som alltid, vennligst del dette prosjektet!

Når det er sagt, glad DIY'ing og sørg for å dele dine prosjekter og forbedringer med alle!

~ Tim

Anbefalt: