Sommario:

Botletics LTE CAT-M/NB-IoT + GPS Shield per Arduino: 10 passaggi (con immagini)
Botletics LTE CAT-M/NB-IoT + GPS Shield per Arduino: 10 passaggi (con immagini)

Video: Botletics LTE CAT-M/NB-IoT + GPS Shield per Arduino: 10 passaggi (con immagini)

Video: Botletics LTE CAT-M/NB-IoT + GPS Shield per Arduino: 10 passaggi (con immagini)
Video: #9 SIM7000 LTE CAT-M/NB-IoT Shield Demo 2024, Luglio
Anonim
Image
Image
Botletics LTE CAT-M/NB-IoT + Scudo GPS per Arduino
Botletics LTE CAT-M/NB-IoT + Scudo GPS per Arduino

Panoramica

Lo shield Botletics SIM7000 LTE CAT-M/NB-IoT utilizza la nuova tecnologia LTE CAT-M e NB-IoT e dispone anche di GNSS integrato (GPS, GLONASS e BeiDou/Compass, Galileo, standard QZSS) per il tracciamento della posizione. Esistono più moduli della serie SIM7000 che si rivolgono a diverse regioni in tutto il mondo e fortunatamente SIMCOM ha reso davvero facile l'identificazione: SIM7000A (americano), SIM7000E (europeo), SIM7000C (cinese) e SIM7000G (globale). Attualmente NB-IoT è supportato in molti paesi in tutto il mondo, ma sfortunatamente non negli Stati Uniti, anche se è previsto che sia disponibile in commercio nel prossimo futuro (2019) e, a prescindere, possiamo ancora utilizzare le funzionalità LTE CAT-M!

Per utilizzare lo shield, è sufficiente collegare lo shield a un Arduino, inserire una scheda SIM compatibile, collegare l'antenna LTE/GPS e il gioco è fatto!

introduzione

Con l'emergere di dispositivi IoT a bassa potenza con connettività cellulare e l'eliminazione graduale del 2G (con solo T-mobile che supporta 2G/GSM fino al 2020), tutto si sta spostando verso LTE e questo ha lasciato molte persone affannate per trovare soluzioni migliori. Tuttavia, questo ha anche lasciato molti hobbisti a confrontarsi con la tecnologia 2G legacy come i moduli della serie SIM800 di SIMCOM. Sebbene questi moduli 2G e 3G siano un ottimo punto di partenza, è tempo di andare avanti e SIMCOM ha recentemente annunciato il suo nuovo modulo SIM7000A LTE CAT-M in una conferenza degli sviluppatori. Che emozione!:)

La parte sorprendente di tutto questo è che SIMCOM ha reso estremamente facile la migrazione dai suoi moduli 2G e 3G a questo nuovo modulo! La serie SIM7000 utilizza molti degli stessi comandi AT che riducono al minimo lo sviluppo del software di miglia! Inoltre, Adafruit ha già una meravigliosa libreria FONA su Github che può essere utilizzata per introdurre questo nuovo SIM7000 nella festa!

Cos'è LTE CAT-M?

LTE CAT-M1 è considerata la tecnologia LTE di seconda generazione ed è a bassa potenza e più adatta ai dispositivi IoT. La tecnologia NarrowBand IoT (NB-IoT) o "CAT-M2" è una tecnologia LPWAN (Low-Power Wide Area Network) progettata specificamente per dispositivi IoT a bassa potenza. È una tecnologia relativamente nuova che, sfortunatamente, non è ancora disponibile negli Stati Uniti, sebbene le aziende stiano lavorando per testare e costruire l'infrastruttura. Per i dispositivi IoT che utilizzano la tecnologia radio (RF) ci sono diverse cose da tenere a mente: Consumo energeticoBandwidthRangeDimensione del pacchetto (inviare molti datiCostOgnuno di questi ha dei compromessi (e non li spiegherò davvero tutti); ad esempio, una grande larghezza di banda consente ai dispositivi di invia molti dati (come il tuo telefono, che può trasmettere in streaming su YouTube!) ma questo significa anche che è molto affamato di energia. Aumentando la portata (l'"area" della rete) aumenta anche il consumo di energia. Nel caso di NB-IoT, ridurre la larghezza di banda significa che non sarai in grado di inviare molti dati, ma per i dispositivi IoT che inviano frammenti di dati al cloud questo è perfetto!Quindi, tecnologia a banda "stretta", ideale per dispositivi a bassa potenza con piccole quantità di dati ma sempre a lungo raggio (ampia area)!

Lo scudo Botletics SIM7000 per Arduino

Lo scudo che ho progettato utilizza la serie SIM7000 per consentire agli utenti di avere la tecnologia LTE CAT-M e il GPS a bassissima potenza sulla punta delle dita! Lo scudo sfoggia anche un sensore di temperatura I2C MCP9808, ottimo almeno per misurare qualcosa e inviarlo tramite una connessione cellulare.

  • Lo scudo è open source! Sìì!
  • Tutta la documentazione (file EAGLE PCB, codice Arduino e wiki dettagliato) può essere trovata qui su Github.
  • Per vedere quale versione di SIM7000 è più adatta a te, consulta questa pagina wiki.
  • Il kit scudo Botletics SIM7000 può essere acquistato qui su Amazon.com

Passaggio 1: raccogliere le parti

Raccogli parti
Raccogli parti
Raccogli parti
Raccogli parti
Raccogli parti
Raccogli parti
Raccogli parti
Raccogli parti

Di seguito è riportato un elenco di tutte le parti necessarie:

  • Scheda Arduino o compatibile con Arduino - Arduino Uno è la scelta più comune per questo! Se vuoi usare lo scudo LTE come davvero uno "scudo" dovresti usare una scheda Arduino con il fattore di forma Arduino. Affermando l'ovvio, avrai anche bisogno di un cavo di programmazione per caricare gli schizzi Arduino sulla scheda! Se non stai usando una scheda con fattore di forma Arduino, va bene lo stesso! Ci sono informazioni su quali connessioni effettuare in questa pagina wiki e sono stati testati diversi microcontrollori, inclusi ESP8266, ESP32, ATmega32u4, ATmega2560 e ATSAMD21.
  • Botletics SIM7000 Shield Kit - Lo shield viene fornito con una doppia antenna uFL LTE/GPS e connettori femmina impilabili! La scheda è disponibile in tre diverse versioni (SIM7000A/C/E/G) ea seconda del paese in cui vivi dovrai selezionare la versione giusta. Ho creato questa pagina sulla wiki di Github che ti mostra come scoprire quale versione è la migliore per te!
  • Scheda SIM LTE CAT-M o NB-IoT - Sebbene il kit non includa più una scheda SIM gratuita, puoi acquistare una scheda SIM Hologram che ti dà 1 MB al mese gratis e funziona praticamente ovunque nel mondo perché Hologram ha stretto una partnership con oltre 500 vettori! Hanno anche piani pay-as-you-go e mensili e hanno un ottimo forum della community per il supporto tecnico sull'attivazione della carta SIM, API Hologram e altro! Funziona alla grande con questo scudo a livello nazionale negli Stati Uniti per le reti AT&T e LTE CAT-M1 di Verizon, ma tieni presente che in altri paesi potresti dover ottenere la tua scheda SIM da un provider locale poiché Hologram collabora con operatori e CAT-M e NB-IoT è relativamente nuovo.
  • Batteria LiPo da 3,7 V (1000 mAH+): durante la ricerca di reti o la trasmissione di dati, lo shield può assorbire quantità significative di corrente e non è possibile fare affidamento sull'alimentazione diretta dalla guida Arduino 5V. Collega una batteria LiPo da 3,7 V al connettore JST sulla scheda e assicurati che la batteria sia cablata con il filo positivo a sinistra (come quelli che si trovano su Sparkfun o Adafruit). Inoltre, è importante assicurarsi che la batteria abbia una capacità di almeno 500 mAH (minimo minimo) per essere in grado di fornire corrente sufficiente ed evitare che il modulo si riavvii durante i picchi di corrente. 1000 mAH o superiore è consigliato per la stabilità. Il motivo di questa capacità minima è che il circuito di ricarica della batteria LiPo è impostato su 500 mA, quindi dovresti assicurarti che la batteria abbia una capacità di almeno 500 mAH per evitare danni alla batteria.

Passaggio 2: assemblare lo scudo

Assemblare lo scudo
Assemblare lo scudo
Assemblare lo scudo
Assemblare lo scudo
Assemblare lo scudo
Assemblare lo scudo

Per utilizzare lo scudo dovrai saldare le intestazioni su di esso a meno che non prevedi di utilizzare questa scheda come "scudo" e più di un modulo autonomo, il che è anche perfettamente OK! Un esempio di ciò è l'utilizzo di un Arduino Micro come controller e il cablaggio separato allo shield.

La scelta più comune per l'utilizzo della scheda come scudo Arduino è impilare le intestazioni femminili, che sono incluse con lo scudo. Dopo aver saldato le intestazioni, vai avanti e posiziona lo scudo sopra la scheda Arduino (a meno che tu non la usi come scheda autonoma) e sei pronto per il passaggio successivo!

Nota: per suggerimenti su come saldare i pin puoi visitare questa pagina del wiki di Github.

Passaggio 3: pinout dello schermo

Pinout dello scudo
Pinout dello scudo
Pinout dello scudo
Pinout dello scudo
Pinout dello scudo
Pinout dello scudo

Lo shield utilizza semplicemente il pinout di Arduino ma collega determinati pin per scopi specifici. Questi pin possono essere riassunti di seguito:

Perni di alimentazione

  • GND - Massa comune per tutta la logica e la potenza
  • 3.3V - 3.3V dal regolatore di Arduino. Usalo proprio come faresti su Arduino!
  • 5V / LOGICA - Questa linea 5V di Arduino carica la batteria LiPo che alimenta il SIM7000 e imposta anche la tensione logica per l'I2C e lo spostamento del livello. Se si utilizza un microcontrollore da 3,3 V, collegare 3,3 V al pin "5 V" dello schermo (vedere la sezione seguente).
  • VBAT - Questo garantisce l'accesso alla tensione della batteria LiPo e normalmente non è collegato a nulla su Arduino, quindi sei libero di usarlo come desideri! È anche la stessa della tensione di ingresso del modulo SIM7000. Se stai pensando di misurare e monitorare questa tensione, controlla il comando "b" nel tutorial demo che misura la tensione e mostra la percentuale della batteria! Ricorda, è necessaria la batteria LiPo!
  • VIN - Questo pin è semplicemente collegato al pin VIN su Arduino. Puoi alimentare Arduino come faresti normalmente con 7-12V su questo pin.

Altri Pin

  • D6 - Collegato al pin PWRKEY della SIM7000
  • D7 - Pin di reset di SIM7000 (usalo solo in caso di reset di emergenza!)
  • D8 - Pin DTR (UART Data Terminal Ready). Questo può essere usato per riattivare il modulo dalla sospensione quando si utilizza il comando "AT+CSCLK"
  • D9 - Perno indicatore ad anello (RI)
  • D10 - Pin di trasmissione UART (TX) del SIM7000 (questo significa che dovresti collegare il TX di Arduino a questo!)
  • D11 - Pin di ricezione UART (RX) del SIM7000 (collegare al pin TX di Arduino)
  • D12 - Buon 'ole D12 su Arduino, MA puoi collegarlo al pin di interruzione ALERT del sensore di temperatura saldando un ponticello
  • SDA/SCL - Il sensore di temperatura è collegato allo schermo tramite I2C

Se si utilizza la scheda come modulo autonomo e non come "schermo", o se si utilizza la logica a 3,3 V anziché a 5 V sarà necessario effettuare i collegamenti necessari come dettagliato nella sezione "Cablaggio scheda host esterna" di questa pagina wiki di Github.

Tuttavia, se tutto ciò di cui hai bisogno è testare i comandi AT, devi solo collegare la batteria LiPo e il cavo micro USB, quindi seguire queste procedure per testare i comandi AT tramite USB. Nota che puoi anche testare i comandi AT tramite l'IDE Arduino, ma ciò richiederebbe il collegamento dei pin D10/D11 per UART.

Per informazioni dettagliate sui pinout dello scudo e su cosa fa ogni pin, visita questa pagina wiki di Github.

Passaggio 4: alimentazione dello scudo

Alimentare lo scudo
Alimentare lo scudo

Per alimentare lo shield, è sufficiente collegare Arduino e collegare una batteria LiPo da 3,7 V (1000 mAH o capacità maggiore) come quelle vendute da Adafruit o Sparkfun. Senza la batteria probabilmente vedrai il modulo avviarsi e poi bloccarsi poco dopo. Puoi ancora alimentare Arduino come faresti normalmente tramite il cavo USB o esternamente da una fonte di alimentazione 7-12V sul pin VIN e la guida 5V sull'Arduino caricherà la batteria LiPo. Si noti che se si utilizza una scheda Arduino standard è possibile alimentarla in sicurezza tramite una fonte di alimentazione esterna mantenendo collegato anche il cavo di programmazione poiché dispone di circuiti di selezione della tensione.

Indicazione LED

All'inizio ti starai chiedendo se la scheda è viva perché forse non ci sono LED che si accendono. Questo perché il LED "PWR" è un indicatore di alimentazione per il modulo SIM7000 stesso e, sebbene tu stia fornendo alimentazione, non hai ancora acceso il modulo! Questo viene fatto facendo pulsare il PWRKEY basso per almeno 72 ms, che spiegherò più avanti. Inoltre, se hai una batteria collegata e non è completamente carica, il LED verde "FATTO" non si accende, ma se non hai una batteria collegata questo LED dovrebbe accendersi (e potrebbe lampeggiare occasionalmente quando viene ingannato in pensando che la batteria inesistente non sia completamente carica a causa di lievi cadute di tensione).

Ora che sai come alimentare tutto, passiamo alla roba cellulare!

Passaggio 5: scheda SIM e antenna

Scheda SIM e antenna
Scheda SIM e antenna
Scheda SIM e antenna
Scheda SIM e antenna
Scheda SIM e antenna
Scheda SIM e antenna
Scheda SIM e antenna
Scheda SIM e antenna

Scelta di una carta SIM

Ancora una volta, la tua scheda SIM deve essere in grado di supportare LTE CAT-M (non solo LTE tradizionale come quello che probabilmente c'è nel tuo telefono) o NB-IoT e deve essere una dimensione SIM "micro". L'opzione migliore che ho trovato per questo scudo è la scheda SIM Hologram Developer che fornisce 1 MB al mese gratis e l'accesso alle API e alle risorse di Hologram per la prima scheda SIM! Basta accedere alla dashboard di Hologram.io e inserire il numero CCID della SIM per attivarla, quindi impostare le impostazioni APN nel codice (già impostato di default). È semplice e funziona ovunque nel mondo perché Hologram supporta oltre 200 operatori in tutto il mondo!

Va notato che le versioni SIM7000C/E/G supportano anche il fallback 2G, quindi se vuoi davvero testare e non hai una scheda SIM LTE CAT-M o NB-IoT, puoi comunque testare il modulo su 2G.

Inserimento della carta SIM

Prima di tutto dovresti staccare la micro SIM dal supporto della carta SIM di dimensioni normali. Sullo scudo LTE individuare il supporto della carta SIM sul lato sinistro della scheda vicino al connettore della batteria. La carta SIM viene inserita in questo supporto con i contatti metallici della SIM rivolti verso il basso e la piccola tacca su un bordo rivolta verso il supporto della carta SIM.

Bontà dell'antenna

Il kit shield è dotato di una doppia antenna LTE/GPS davvero conveniente! È anche flessibile (anche se non dovresti provare a torcerlo e piegarlo molto perché potresti rompere i fili dell'antenna dall'antenna se non stai attento) e ha un adesivo staccabile sul fondo. Collegare i fili è semplicissimo: basta prendere i fili e agganciarli ai connettori uFL corrispondenti sul bordo destro dello schermo. NOTA: assicurati di abbinare il cavo LTE sull'antenna al connettore LTE sullo schermo e lo stesso con il cavo GPS perché sono incrociati!

Passaggio 6: configurazione dell'IDE Arduino

Configurazione dell'IDE Arduino
Configurazione dell'IDE Arduino

Questo shield SIM7000 è basato sulle schede Adafruit FONA e utilizza la stessa libreria ma migliorata con l'aggiunta del supporto modem. Puoi leggere le istruzioni complete su come installare la mia libreria FONA rivista qui sulla mia pagina Github.

Puoi anche vedere come testare il sensore di temperatura MCP9808 seguendo queste istruzioni, ma qui mi concentrerò principalmente sulle cose cellulari!

Passaggio 7: esempio Arduino

Arduino Esempio
Arduino Esempio
Arduino Esempio
Arduino Esempio
Arduino Esempio
Arduino Esempio

Impostazione velocità di trasmissione

Per impostazione predefinita, il SIM7000 funziona a 115200 baud, ma è troppo veloce perché il seriale del software funzioni in modo affidabile e i caratteri potrebbero apparire casualmente come caselle quadrate o altri simboli strani (ad esempio, una "A" potrebbe essere visualizzata come "@"). Questo è il motivo per cui se guardi attentamente, Arduino configura il modulo a una velocità di trasmissione più lenta di 9600 ogni volta che viene inizializzato. Fortunatamente la commutazione è gestita automaticamente dal codice, quindi non devi fare nulla di speciale per configurarlo!

Demo scudo LTE

Quindi, segui queste istruzioni per aprire lo schizzo "LTE_Demo" (o qualsiasi variazione di quello schizzo, a seconda del microcontrollore che stai utilizzando). Se scorri verso il basso fino alla fine della funzione "setup()" vedrai una riga "fona.setGPRSNetworkSettings(F("hologram"));" che imposta l'APN per la scheda SIM Hologram. Questo è assolutamente necessario e se stai usando una carta SIM diversa dovresti prima consultare la documentazione della carta su cosa sia l'APN. Si noti che è necessario modificare questa riga solo se non si utilizza una scheda SIM Hologram.

Quando il codice viene eseguito, Arduino tenterà di comunicare con il SIM7000 tramite UART (TX/RX) utilizzando SoftwareSerial. Per fare ciò, ovviamente, il SIM7000 deve essere acceso, quindi mentre sta cercando di stabilire una connessione, controlla il LED "PWR" per assicurarti che si accenda! (Nota: dovrebbe accendersi circa 4 secondi dopo l'esecuzione del codice). Dopo che Arduino ha stabilito con successo la comunicazione con il modulo, dovresti vedere un grande menu con una serie di azioni che il modulo può eseguire! Tuttavia, tieni presente che alcuni di questi sono per gli altri moduli 2G o 3G di SIMCom, quindi non tutti i comandi sono applicabili al SIM7000, ma molti lo sono! Basta digitare la lettera corrispondente all'azione che si desidera eseguire e fare clic su "Invia" in alto a destra del monitor seriale o premere semplicemente il tasto Invio. Guarda con stupore mentre lo scudo risponde!

Comandi dimostrativi

Di seguito sono riportati alcuni comandi che dovresti eseguire per assicurarti che il tuo modulo sia configurato prima di procedere:

  • Digitare "n" e premere invio per verificare la registrazione della rete. Dovresti vedere "Registrato (home)". In caso contrario, controlla se la tua antenna è collegata e potresti anche dover eseguire prima il comando "G" (spiegato di seguito)!
  • Controllare la potenza del segnale di rete inserendo "i". Dovresti ottenere un valore RSSI; più alto è questo valore meglio è! Il mio era 31, che indica la migliore fascia di potenza del segnale!
  • Inserisci il comando "1" per controllare alcune informazioni di rete davvero interessanti. È possibile ottenere la modalità di connessione corrente, il nome dell'operatore, la banda, ecc.
  • Se hai una batteria collegata, prova il comando "b" per leggere la tensione e la percentuale della batteria. Se non stai utilizzando una batteria, questo comando leggerà sempre circa 4200 mV e quindi dirà che è carica al 100%.
  • Ora inserisci "G" per abilitare i dati cellulari. Questo imposta l'APN ed è fondamentale per connettere il tuo dispositivo al web! Se vedi "ERRORE" prova a disattivare i dati utilizzando "g", quindi riprova.
  • Per verificare se puoi effettivamente fare qualcosa con il tuo modulo, inserisci "w". Ti verrà chiesto di inserire l'URL della pagina Web che desideri leggere e di copiare/incollare l'URL di esempio "https://dweet.io/get/latest/dweet/for/sim7000test123" e premere invio. Poco dopo dovrebbe darti un messaggio come "{"this":"failed", "with":404, "because":"non siamo riusciti a trovare questo"}" (supponendo che nessuno abbia pubblicato dati per "sim7000test123")
  • Ora proviamo a inviare dati fittizi a dweet.io, un'API cloud gratuita inserendo "2" nel monitor seriale. Dovresti vederlo eseguire alcuni comandi AT.
  • Per verificare se i dati sono davvero passati, prova di nuovo "w" e questa volta inserisci "https://dweet.io/get/latest/dweet/for/{deviceID}" senza le parentesi, dove l'ID del dispositivo è l'IMEI numero del tuo dispositivo che dovrebbe essere stampato nella parte superiore del monitor seriale dall'inizializzazione del modulo. Dovresti vedere "riuscito" e una risposta JSON contenente i dati che hai appena inviato! (Si noti che la batteria dell'87% è solo un numero fittizio impostato nel codice e potrebbe non essere il livello effettivo della batteria)
  • Ora è il momento di testare il GPS! Abilita l'alimentazione al GPS usando "O"
  • Immettere "L" per interrogare i dati sulla posizione. Tieni presente che potresti dover attendere circa 7-10 secondi prima di ottenere una correzione sulla posizione. Puoi continuare a inserire "L" finché non ti vengono mostrati alcuni dati!
  • Una volta forniti i dati, copiali e incollali in Microsoft Word o in un editor di testo in modo che sia più facile da leggere. Vedrai che il terzo numero (i numeri sono separati da virgole) è la data e l'ora, e i successivi tre numeri sono la latitudine, la longitudine e l'elevazione (in metri) della tua posizione! Per verificare se era accurato, vai a questo strumento online e cerca la tua posizione attuale. Dovrebbe darti lat/long e altitudine e confrontare questi valori con quelli forniti dal tuo GPS!
  • Se non hai bisogno del GPS puoi spegnerlo usando "o"
  • Divertiti con gli altri comandi e dai un'occhiata allo schizzo di esempio "IoT_Example" per un esempio interessante su come inviare dati a un'API cloud gratuita tramite LTE!

Invia e ricevi testi

Per vedere come inviare messaggi dallo scudo direttamente a qualsiasi telefono e inviare messaggi allo scudo tramite la dashboard o l'API di Hologram, leggi questa pagina wiki di Github.

Esempio IoT: localizzazione GPS

Dopo aver verificato che tutto funzioni come previsto, apri lo schizzo "IoT_Example". Questo codice di esempio invia la posizione GPS e i dati di rilevamento, la temperatura e il livello della batteria al cloud! Carica il codice e guarda con stupore come lo scudo fa la sua magia! Per verificare se i dati sono stati effettivamente inviati al cloud, vai su "https://dweet.io/get/latest/dweet/for/{IMEI}" in qualsiasi browser (inserisci il numero IMEI che si trova nella parte superiore del monitor seriale dopo l'inizializzazione del modulo, o stampato sul modulo SIMCOM) e dovresti vedere i dati che il tuo dispositivo ha inviato!

Con questo esempio puoi anche decommentare la riga con "#define samplingRate 30" per inviare dati ripetutamente invece di eseguirli solo una volta. Questo rende il tuo dispositivo essenzialmente un dispositivo di localizzazione GPS!

Per maggiori dettagli, visita i tutorial che ho realizzato per il tracciamento GPS in tempo reale:

  • Tutorial localizzatore GPS parte 1
  • Tutorial localizzatore GPS parte 2

Risoluzione dei problemi

Per domande comuni e problemi di risoluzione dei problemi, visita le FAQ su Github.

Passaggio 8: test con comandi AT

Test con comandi AT
Test con comandi AT

Test da Arduino IDE

Se si desidera inviare comandi AT al modulo tramite il monitor seriale, utilizzare il comando "S" dal menu per entrare in modalità tubo seriale. In questo modo tutto ciò che digiti nel monitor seriale verrà inviato al modulo. Detto questo, assicurati di abilitare "Both NL & CR" nella parte inferiore del monitor seriale, altrimenti non vedrai alcuna risposta ai tuoi comandi perché il modulo non saprà che hai finito di digitare!

Per uscire da questa modalità, premi semplicemente il pulsante di ripristino sul tuo Arduino. Notare che se si utilizzano schede basate su ATmega32u4 o ATSAMD21, sarà necessario riavviare anche il monitor seriale.

Per maggiori informazioni sull'invio di comandi AT dall'IDE Arduino, vedere questa pagina wiki.

Test direttamente tramite USB

Forse un metodo più semplice (per utenti Windows) è installare i driver Windows descritti in questo tutorial e testare i comandi AT utilizzando invece la porta micro USB dello shield!

Se vuoi ancora sperimentare con i comandi AT ma vuoi eseguirli in sequenza e non vuoi alterare la libreria FONA, puoi farlo con una semplice piccola libreria che ho scritto chiamata "AT Command Library" che tu puoi trovare qui su Github. Tutto quello che devi fare è scaricare lo ZIP dal repository ed estrarlo nella cartella delle librerie Arduino e uno sketch di esempio (chiamato "AT_Command_Test.ino") per il SIM7000 può essere trovato qui nel repository Github dello shield LTE. Questa libreria ti consente di inviare comandi AT tramite Software Serial con timeout, verifica una risposta specifica dal modulo, nessuno dei due o entrambi!

Passaggio 9: consumo di corrente

Per i dispositivi IoT vuoi che questi numeri scendano, quindi diamo un'occhiata ad alcune delle specifiche tecniche! Per un rapporto dettagliato delle misurazioni del consumo di corrente, vedere questa pagina Github.

Ecco un breve riassunto:

  • Modulo SIM7000 spento: l'intero schermo assorbe < 8uA con una batteria LiPo da 3,7 V
  • La modalità di sospensione assorbe circa 1,5 mA (incluso il LED PWR verde, quindi probabilmente ~ 1 mA senza di esso) e rimane connesso alla rete
  • Le impostazioni e-DRX possono configurare il tempo di ciclo della negoziazione di rete e risparmiare energia, ma anche ritardare cose come i messaggi di testo in arrivo a seconda di come è impostato il tempo di ciclo
  • Connesso alla rete LTE CAT-M1, inattivo: ~12mA
  • Il GPS aggiunge ~32mA
  • Il collegamento USB aggiunge ~20mA
  • La trasmissione dati su LTE CAT-M1 è ~96mA per ~12s
  • L'invio di SMS assorbe ~96mA per ~10s
  • La ricezione di SMS assorbe ~89mA per ~10s
  • PSM sembra una funzione meravigliosa ma deve ancora funzionare

Ed ecco un po' più di spiegazione:

  • Modalità di spegnimento: è possibile utilizzare la funzione "fona.powerDown()" per spegnere completamente il SIM7000. In questo stato il modulo assorbe solo circa 7.5uA, e poco dopo aver spento il modulo dovrebbe spegnersi anche il LED "PWR".
  • Modalità di risparmio energetico (PSM): questa modalità è come la modalità di spegnimento, ma il modem rimane registrato sulla rete mentre assorbe solo 9uA mantenendo il modulo alimentato. In questa modalità sarà attiva solo l'alimentazione dell'RTC. Per quei fan di ESP8266 là fuori, è fondamentalmente "ESP.deepSleep()" e il timer RTC può riattivare il modulo, ma puoi fare cose piuttosto interessanti come riattivare il modem inviandogli un SMS. Tuttavia, purtroppo non sono riuscito a far funzionare questa funzione. Fammi assolutamente sapere se lo fai!
  • Modalità aereo: in questa modalità l'alimentazione è ancora fornita al modulo ma la RF è completamente disabilitata ma la scheda SIM è ancora attiva così come l'interfaccia UART e USB. Puoi entrare in questa modalità usando "AT+CFUN=4" ma non ho visto nemmeno questo effetto.
  • Modalità funzionalità minima: questa modalità è la stessa della modalità aereo, tranne che l'interfaccia della scheda SIM è inaccessibile. Puoi entrare in questa modalità usando "AT+CFUN=0" ma puoi anche entrare in questa modalità usando "AT+CSCLK=1" dopo di che il SIM7000 tirerà su il pin DTR quando il modulo è in modalità inattiva. In questa modalità di sospensione, abbassando il DTR si riattiverà il modulo. Questo può essere utile perché svegliarlo può essere molto più veloce che accenderlo da zero!
  • Modalità di ricezione/trasmissione discontinua (DRX/DTX): è possibile configurare la "frequenza di campionamento" del modulo per così dire, in modo che il modulo controlli solo i messaggi di testo o invii i dati a una velocità maggiore o minore, il tutto rimanendo connesso a il network. Questo riduce significativamente il consumo di corrente!
  • Disabilita LED "PWR": Per risparmiare qualche centesimo in più puoi disabilitare il LED di alimentazione del modulo tagliando il ponticello di saldatura normalmente chiuso accanto ad esso. Se in seguito cambi idea e lo rivuoi, salda semplicemente il ponticello!
  • LED "NETLIGHT" On/Off: puoi anche usare "AT+CNETLIGHT=0" per spegnere completamente il LED blu di stato della rete se non ne hai bisogno!
  • GNSS On/Off: è possibile risparmiare 30 mA disattivando il GPS utilizzando il comando "fona.enableGPS()" con true o false come parametro di input. Se non lo usi ti consiglio di spegnerlo! Inoltre, ho scoperto che occorrono solo circa 20 secondi per ottenere una correzione della posizione da un avvio a freddo e solo circa 2 secondi quando il dispositivo è già stato acceso (ad esempio se si spegne il GPS, lo si riaccende e si esegue nuovamente la query), il che è abbastanza veloce ! Puoi anche sperimentare con l'avviamento a caldo/a caldo e il GPS assistito.

Passo 10: Conclusioni

Nel complesso, il SIM7000 è super veloce e utilizza una tecnologia all'avanguardia con GPS integrato e viene caricato con funzioni interessanti! Sfortunatamente per quelli di noi negli Stati Uniti, NB-IoT non è completamente implementato qui, quindi dovremo aspettare un po' prima che esca, ma con questo shield LTE possiamo ancora usare LTE CAT-M1 su AT&T e sulle reti di Verizon. Questo scudo è ottimo per sperimentare dispositivi cellulari a bassa potenza come localizzatori GPS, datalogger remoti e molto altro! Includendo altri scudi e moduli per cose come l'archiviazione di schede SD, pannelli solari, sensori e altre connettività wireless, le possibilità sono quasi infinite!

  • Se ti è piaciuto questo progetto, per favore dagli un cuore e votalo!
  • Se hai commenti, suggerimenti o domande, non esitare a pubblicarli qui sotto!
  • Per ordinare il tuo scudo, visita il mio sito Web per informazioni o ordinalo su Amazon.com
  • Come sempre, condividi questo progetto!

Detto questo, buon fai-da-te e assicurati di condividere i tuoi progetti e miglioramenti con tutti!

~ Tim

Consigliato: