Πίνακας περιεχομένων:

Botletics LTE CAT-M/NB-IoT + GPS Shield για Arduino: 10 βήματα (με εικόνες)
Botletics LTE CAT-M/NB-IoT + GPS Shield για Arduino: 10 βήματα (με εικόνες)

Βίντεο: Botletics LTE CAT-M/NB-IoT + GPS Shield για Arduino: 10 βήματα (με εικόνες)

Βίντεο: Botletics LTE CAT-M/NB-IoT + GPS Shield για Arduino: 10 βήματα (με εικόνες)
Βίντεο: Δείκτες ποιότητας στις ενδοσκοπικές πράξεις 2024, Ιούλιος
Anonim
Image
Image
Botletics LTE CAT-M/NB-IoT + GPS Shield για Arduino
Botletics LTE CAT-M/NB-IoT + GPS Shield για Arduino

ΣΦΑΙΡΙΚΗ ΕΙΚΟΝΑ

Η ασπίδα Botletics SIM7000 LTE CAT-M/NB-IoT χρησιμοποιεί τη νέα τεχνολογία LTE CAT-M και NB-IoT και έχει επίσης ενσωματωμένο GNSS (πρότυπα GPS, GLONASS και BeiDou/Compass, Galileo, QZSS) για παρακολούθηση τοποθεσίας. Υπάρχουν πολλές μονάδες της σειράς SIM7000 που καλύπτουν διαφορετικές περιοχές σε όλο τον κόσμο, και ευτυχώς η SIMCOM διευκόλυνε τον εντοπισμό: SIM7000A (Αμερικανική), SIM7000E (Ευρωπαϊκή), SIM7000C (Κινέζικη) και SIM7000G (Παγκόσμια). Επί του παρόντος, το NB-IoT υποστηρίζεται σε πολλές χώρες σε όλο τον κόσμο αλλά δυστυχώς όχι στις ΗΠΑ, αν και έχει προγραμματιστεί να είναι εμπορικά διαθέσιμο στο εγγύς μέλλον (2019) και ανεξάρτητα, μπορούμε ακόμα να χρησιμοποιήσουμε τις λειτουργίες LTE CAT-M!

Για να χρησιμοποιήσετε την ασπίδα, απλώς συνδέστε την ασπίδα σε ένα Arduino, τοποθετήστε μια συμβατή κάρτα SIM, συνδέστε την κεραία LTE/GPS και είστε έτοιμοι!

Εισαγωγή

Με την εμφάνιση συσκευών IoT χαμηλής ισχύος με κινητή συνδεσιμότητα και τη σταδιακή κατάργηση του 2G (με μόνο το T-mobile να υποστηρίζει 2G/GSM έως το 2020), όλα κινούνται προς το LTE και αυτό έχει αφήσει πολλούς ανθρώπους να προσπαθούν να βρουν καλύτερες λύσεις. Ωστόσο, αυτό έχει επίσης αφήσει πολλούς χομπίστες να αντιμετωπίζουν την παλιά τεχνολογία 2G, όπως οι μονάδες της σειράς SIM800 της SIMCOM. Παρόλο που αυτές οι μονάδες 2G και 3G είναι ένα εξαιρετικό σημείο εκκίνησης, ήρθε η ώρα να προχωρήσουμε και η SIMCOM ανακοίνωσε πρόσφατα τη νέα μονάδα SIM7000A LTE CAT-M σε συνέδριο προγραμματιστή. Πόσο συναρπαστικό!:)

Το εκπληκτικό μέρος όλων αυτών είναι ότι το SIMCOM έκανε εξαιρετικά εύκολη τη μετάβαση από τις μονάδες 2G και 3G σε αυτήν τη νέα μονάδα! Η σειρά SIM7000 χρησιμοποιεί πολλές από τις ίδιες εντολές AT που ελαχιστοποιεί την ανάπτυξη λογισμικού κατά μίλια! Επίσης, το Adafruit διαθέτει ήδη μια υπέροχη βιβλιοθήκη FONA στο Github που μπορεί να χρησιμοποιηθεί για να εισαγάγει αυτή τη νέα SIM7000 στο πάρτι!

Τι είναι το LTE CAT-M;

Το LTE CAT-M1 θεωρείται η τεχνολογία LTE δεύτερης γενιάς και είναι χαμηλότερης ισχύος και πιο κατάλληλο για συσκευές IoT. Η τεχνολογία NarrowBand IoT (NB-IoT) ή "CAT-M2" είναι μια τεχνολογία Low-Power Wide Area Network (LPWAN) ειδικά σχεδιασμένη για συσκευές IoT χαμηλής ισχύος. Πρόκειται για μια σχετικά νέα τεχνολογία που, δυστυχώς, δεν είναι ακόμη διαθέσιμη στις ΗΠΑ, αν και οι εταιρείες εργάζονται για τη δοκιμή και την κατασκευή της υποδομής. Για συσκευές IoT που χρησιμοποιούν τεχνολογία ραδιοφώνου (RF) υπάρχουν πολλά πράγματα που πρέπει να έχετε υπόψη: Κατανάλωση ρεύματος Bandwidth Εύρος Μέγεθος πακέτου (αποστολή πολλών δεδομένων Κόστος Κάθε ένα από αυτά έχει αντισταθμίσεις (και δεν θα τα εξηγήσω πραγματικά όλα) · για παράδειγμα, το μεγάλο εύρος ζώνης επιτρέπει στις συσκευές να στείλτε πολλά δεδομένα (όπως το τηλέφωνό σας, το οποίο μπορεί να μεταδώσει ροή στο YouTube!), αλλά αυτό σημαίνει επίσης ότι είναι πολύ ενεργό. Η αύξηση του εύρους (η "περιοχή" του δικτύου) αυξάνει επίσης την κατανάλωση ενέργειας. Στην περίπτωση του NB-IoT, Η μείωση του εύρους ζώνης σημαίνει ότι δεν θα μπορείτε να στείλετε πολλά δεδομένα, αλλά για συσκευές IoT που τραβάνε κομμάτια δεδομένων στο σύννεφο αυτό είναι τέλειο! Επομένως, τεχνολογία "στενής" ζώνης, ιδανική για συσκευές χαμηλής ισχύος με μικρές ποσότητες δεδομένων αλλά ακόμα με μεγάλη εμβέλεια (ευρεία περιοχή)!

Η Ασπίδα Botletics SIM7000 για το Arduino

Η ασπίδα που έχω σχεδιάσει χρησιμοποιεί τη σειρά SIM7000 για να επιτρέπει στους χρήστες να έχουν εξαιρετικά χαμηλής ισχύος τεχνολογία LTE CAT-M και GPS στην άκρη των δακτύλων τους! Η ασπίδα διαθέτει επίσης έναν αισθητήρα θερμοκρασίας MCP9808 I2C, ιδανικό για τουλάχιστον τη μέτρηση κάτι και την αποστολή του μέσω κυψελοειδούς σύνδεσης.

  • Η ασπίδα είναι ανοιχτού κώδικα! Ναι!
  • Όλη η τεκμηρίωση (αρχεία PCB EAGLE, κώδικας Arduino και λεπτομερές wiki) μπορείτε να βρείτε εδώ στο Github.
  • Για να δείτε ποια έκδοση SIM7000 είναι η πιο κατάλληλη για εσάς, δείτε αυτήν τη σελίδα wiki.
  • Το κιτ ασπίδας Botletics SIM7000 μπορείτε να το αγοράσετε εδώ στο Amazon.com

Βήμα 1: Συγκεντρώστε μέρη

Συγκεντρώστε ανταλλακτικά
Συγκεντρώστε ανταλλακτικά
Συγκεντρώστε ανταλλακτικά
Συγκεντρώστε ανταλλακτικά
Συγκεντρώστε ανταλλακτικά
Συγκεντρώστε ανταλλακτικά
Συγκεντρώστε ανταλλακτικά
Συγκεντρώστε ανταλλακτικά

Παρακάτω είναι μια λίστα με όλα τα μέρη που θα χρειαστείτε:

  • Arduino ή συμβατός με Arduino πίνακας - Το Arduino Uno είναι η πιο κοινή επιλογή για αυτό! Εάν θέλετε να χρησιμοποιήσετε την ασπίδα LTE ως πραγματικά "ασπίδα", θα πρέπει να χρησιμοποιήσετε έναν πίνακα Arduino με τον παράγοντα μορφής Arduino. Δηλώνοντας το προφανές, θα χρειαστείτε επίσης ένα καλώδιο προγραμματισμού για να ανεβάσετε σκίτσα Arduino στον πίνακα! Εάν δεν χρησιμοποιείτε πίνακα συντελεστή Arduino, είναι επίσης καλό! Υπάρχουν πληροφορίες σχετικά με τις συνδέσεις που πρέπει να γίνουν σε αυτήν τη σελίδα wiki και έχουν δοκιμαστεί διαφορετικοί μικροελεγκτές, συμπεριλαμβανομένων των ESP8266, ESP32, ATmega32u4, ATmega2560 και ATSAMD21.
  • Botletics SIM7000 Shield Kit - Η ασπίδα έρχεται με διπλή κεραία LTE/GPS uFL και στοιβάζει γυναικείες κεφαλίδες! Ο πίνακας διατίθεται σε τρεις διαφορετικές εκδόσεις (SIM7000A/C/E/G) και ανάλογα με τη χώρα που ζείτε θα πρέπει να επιλέξετε τη σωστή έκδοση. Δημιούργησα αυτήν τη σελίδα στο wiki του Github που σας δείχνει πώς να μάθετε ποια έκδοση είναι η καλύτερη για εσάς!
  • Κάρτα SIM LTE CAT-M ή NB-IoT-Παρόλο που το κιτ δεν περιλαμβάνει πλέον δωρεάν κάρτα SIM, μπορείτε να παραλάβετε μια κάρτα SIM ολόγραμμα που σας δίνει 1MB το μήνα δωρεάν και λειτουργεί σχεδόν οπουδήποτε στον κόσμο επειδή το ολόγραμμα έχει συνεργαστεί με πάνω από 500 μεταφορείς! Έχουν επίσης pay-as-you-go και μηνιαία σχέδια και έχουν ένα μεγάλο κοινοτικό φόρουμ για τεχνική υποστήριξη σχετικά με την ενεργοποίηση της κάρτας SIM, API ολογραμμάτων και πολλά άλλα! Λειτουργεί τέλεια με αυτήν την ασπίδα σε εθνικό επίπεδο στις ΗΠΑ για δίκτυα AT&T και LTE CAT-M1 της Verizon, αλλά σημειώστε ότι σε άλλες χώρες μπορεί να χρειαστεί να πάρετε τη δική σας κάρτα SIM από έναν τοπικό πάροχο, αφού το Hologram συνεργάζεται με φορείς και CAT-M και το NB-IoT είναι σχετικά νέο.
  • Μπαταρία 3.7V LiPo (1000mAH+): Κατά την αναζήτηση δικτύων ή τη μετάδοση δεδομένων, η ασπίδα μπορεί να αντλήσει σημαντικά ποσά ρεύματος και δεν μπορείτε να βασιστείτε στην άμεση ισχύ από τη ράγα Arduino 5V. Συνδέστε μια μπαταρία LiPo 3.7V στην υποδοχή JST της πλακέτας και βεβαιωθείτε ότι η μπαταρία είναι καλωδιωμένη με το θετικό καλώδιο στα αριστερά (όπως αυτά που βρίσκονται στο Sparkfun ή στο Adafruit). Επίσης, είναι σημαντικό να βεβαιωθείτε ότι η μπαταρία πρέπει να έχει τουλάχιστον 500mAH χωρητικότητα (ελάχιστο ελάχιστο) για να είναι σε θέση να παρέχει αρκετό ρεύμα και να αποτρέψει την επανεκκίνηση της μονάδας κατά τη διάρκεια των τρέχων αιχμών. Συνιστάται 1000mAH ή μεγαλύτερη για σταθερότητα. Ο λόγος για αυτήν την ελάχιστη χωρητικότητα είναι επειδή το κύκλωμα φόρτισης της μπαταρίας LiPo έχει οριστεί στα 500mA, οπότε θα πρέπει να βεβαιωθείτε ότι η μπαταρία έχει χωρητικότητα τουλάχιστον 500mAH για να αποφύγετε ζημιά στην μπαταρία.

Βήμα 2: Συναρμολογήστε την Ασπίδα

Συγκεντρώστε την Ασπίδα
Συγκεντρώστε την Ασπίδα
Συγκεντρώστε την Ασπίδα
Συγκεντρώστε την Ασπίδα
Συγκεντρώστε την Ασπίδα
Συγκεντρώστε την Ασπίδα

Για να χρησιμοποιήσετε την ασπίδα, θα χρειαστεί να κολλήσετε κεφαλίδες σε αυτήν, εκτός εάν δεν σκοπεύετε να χρησιμοποιήσετε αυτόν τον πίνακα ως "ασπίδα" και περισσότερο ως αυτόνομο δομοστοιχείο αντ 'αυτού, το οποίο είναι επίσης εντελώς ΟΚ! Ένα παράδειγμα για να το κάνετε αυτό είναι να χρησιμοποιήσετε ένα Arduino Micro ως χειριστήριο και να το συνδέσετε ξεχωριστά μέχρι την ασπίδα.

Η πιο κοινή επιλογή για τη χρήση της σανίδας ως ασπίδα Arduino είναι η στοίβαξη γυναικείων κεφαλίδων, τα οποία περιλαμβάνονται με την ασπίδα. Αφού συγκολλήσετε τις κεφαλίδες, προχωρήστε και τοποθετήστε την ασπίδα πάνω από τον πίνακα Arduino (εκτός αν το χρησιμοποιείτε ως αυτόνομος πίνακας) και είστε έτοιμοι για το επόμενο βήμα!

Σημείωση: Για συμβουλές σχετικά με τον τρόπο συγκόλλησης των καρφιτσών, μπορείτε να επισκεφθείτε αυτήν τη σελίδα του wiki του Github.

Βήμα 3: Ασπίδα Pinouts

Ασπίδα Pinouts
Ασπίδα Pinouts
Ασπίδα Pinouts
Ασπίδα Pinouts
Ασπίδα Pinouts
Ασπίδα Pinouts

Η ασπίδα χρησιμοποιεί απλώς το pinout του Arduino, αλλά συνδέει συγκεκριμένες ακίδες για συγκεκριμένους σκοπούς. Αυτές οι καρφίτσες μπορούν να συνοψιστούν παρακάτω:

Καρφίτσες τροφοδοσίας

  • GND - Κοινή βάση για κάθε λογική και δύναμη
  • 3.3V - 3.3V από τον ρυθμιστή Arduino. Χρησιμοποιήστε αυτό ακριβώς όπως θα κάνατε στο Arduino!
  • 5V / LOGIC - Αυτή η ράγα 5V από το Arduino φορτίζει την μπαταρία LiPo η οποία τροφοδοτεί την SIM7000 και ρυθμίζει επίσης τη λογική τάση για το I2C και τη μετατόπιση επιπέδου. Εάν χρησιμοποιείτε μικροελεγκτή 3.3V, συνδέστε 3.3V στον πείρο "5V" της ασπίδας (δείτε την παρακάτω ενότητα).
  • VBAT - Αυτό παρέχει πρόσβαση στην τάση της μπαταρίας LiPo και κανονικά δεν συνδέεται με τίποτα στο Arduino, ώστε να είστε ελεύθεροι να το χρησιμοποιήσετε όπως θέλετε! Είναι επίσης η ίδια με την τάση εισόδου της μονάδας SIM7000. Αν σκέφτεστε να μετρήσετε και να παρακολουθήσετε αυτήν την τάση, ελέγξτε την εντολή "b" στο demo tutorial που μετρά την τάση και εμφανίζει το ποσοστό της μπαταρίας! Θυμηθείτε, απαιτείται μπαταρία LiPo!
  • VIN - Αυτός ο πείρος συνδέεται απλά με τον πείρο VIN στο Arduino. Μπορείτε να τροφοδοτήσετε το Arduino όπως συνήθως με 7-12V σε αυτόν τον πείρο.

Άλλες καρφίτσες

  • D6 - Συνδέεται με την καρφίτσα PWRKEY της SIM7000
  • D7 - Καρφίτσα επαναφοράς SIM7000 (χρησιμοποιήστε αυτό μόνο σε περίπτωση επείγουσας επαναφοράς!)
  • D8 - Καρφίτσα UART Data Terminal Ready (DTR). Αυτό μπορεί να χρησιμοποιηθεί για την αφύπνιση της μονάδας από τον ύπνο όταν χρησιμοποιείτε την εντολή "AT+CSCLK"
  • D9 - Πείρος δείκτης δακτυλίου (RI)
  • D10 - UART Transmit (TX) pin of SIM7000 (αυτό σημαίνει ότι πρέπει να συνδέσετε το Arduino's TX σε αυτό!)
  • D11 - UART Λήψη (RX) καρφίτσα της SIM7000 (σύνδεση με την καρφίτσα TX του Arduino)
  • D12 - Καλό ole D12 στο Arduino, ΑΛΛΑ μπορείτε να το συνδέσετε με τον πείρο διακοπής ALERT του αισθητήρα θερμοκρασίας συγκολλώντας έναν βραχυκυκλωτήρα
  • SDA/SCL - Ο αισθητήρας θερμοκρασίας συνδέεται στην ασπίδα μέσω I2C

Εάν χρησιμοποιείτε τον πίνακα ως αυτόνομη μονάδα και όχι ως "ασπίδα" ή εάν χρησιμοποιείτε λογική 3.3V αντί για 5V, θα πρέπει να πραγματοποιήσετε τις απαραίτητες συνδέσεις, όπως περιγράφεται λεπτομερώς στην ενότητα "Εξωτερική καλωδίωση πλακέτας κεντρικού υπολογιστή" αυτή τη σελίδα Wiki του Github.

Ωστόσο, εάν το μόνο που χρειάζεστε είναι να δοκιμάσετε τις εντολές AT, τότε πρέπει μόνο να συνδέσετε τη μπαταρία LiPo και το καλώδιο micro USB και, στη συνέχεια, ακολουθήστε αυτές τις διαδικασίες για να δοκιμάσετε τις εντολές AT μέσω USB. Σημειώστε ότι μπορείτε επίσης να δοκιμάσετε εντολές AT μέσω του Arduino IDE, αλλά αυτό απαιτεί τη σύνδεση ακίδων D10/D11 για UART.

Για λεπτομερείς πληροφορίες σχετικά με τα pinout των ασπίδων και τι κάνει κάθε καρφίτσα, επισκεφθείτε αυτήν τη σελίδα wiki του Github.

Βήμα 4: Τροφοδοσία της ασπίδας

Τροφοδοσία της ασπίδας
Τροφοδοσία της ασπίδας

Για να τροφοδοτήσετε την ασπίδα, απλώς συνδέστε το Arduino και συνδέστε μια μπαταρία LiPo 3.7V (1000mAH ή μεγαλύτερη χωρητικότητα), όπως αυτές που πωλούνται στο Adafruit ή το Sparkfun. Χωρίς την μπαταρία, πιθανότατα θα δείτε την μονάδα να εκκινείται και να συντρίβεται λίγο αργότερα. Μπορείτε ακόμα να τροφοδοτήσετε το Arduino όπως θα κάνατε κανονικά μέσω του καλωδίου USB ή εξωτερικά από μια πηγή ισχύος 7-12V στον πείρο VIN και η ράγα 5V στο Arduino θα φορτίσει την μπαταρία LiPo. Σημειώστε ότι εάν χρησιμοποιείτε τυπική πλακέτα Arduino, μπορείτε να την τροφοδοτήσετε με ασφάλεια μέσω εξωτερικής πηγής τροφοδοσίας, διατηρώντας παράλληλα το καλώδιο προγραμματισμού συνδεδεμένο, επειδή διαθέτει κύκλωμα επιλογής τάσης.

Ένδειξη LED

Στην αρχή μπορεί να αναρωτιέστε αν η πλακέτα είναι ακόμη ζωντανή επειδή ίσως δεν ανάβει κανένα LED. Αυτό συμβαίνει επειδή το LED "PWR" είναι ένας δείκτης ισχύος για την ίδια τη μονάδα SIM7000, και παρόλο που τροφοδοτείτε με ρεύμα δεν έχετε ενεργοποιήσει ακόμα τη μονάδα! Αυτό γίνεται με παλμό του χαμηλού PWRKEY για τουλάχιστον 72ms, το οποίο θα εξηγήσω αργότερα. Επίσης, εάν έχετε συνδέσει μια μπαταρία και δεν είναι πλήρως φορτισμένη, το πράσινο LED "DONE" δεν θα ανάψει, αλλά εάν δεν έχετε συνδεδεμένη μπαταρία, αυτό το LED θα ανάψει (και ενδέχεται να αναβοσβήνει περιστασιακά νομίζοντας ότι η ανύπαρκτη μπαταρία δεν είναι πλήρως φορτισμένη λόγω μικρών πτώσεων τάσης).

Τώρα που ξέρετε πώς να τροφοδοτείτε τα πάντα, ας προχωρήσουμε στα κυψελοειδή πράγματα!

Βήμα 5: Κάρτα SIM & Κεραία

Κάρτα SIM & Κεραία
Κάρτα SIM & Κεραία
Κάρτα SIM & Κεραία
Κάρτα SIM & Κεραία
Κάρτα SIM & Κεραία
Κάρτα SIM & Κεραία
Κάρτα SIM & Κεραία
Κάρτα SIM & Κεραία

Επιλογή κάρτας SIM

Και πάλι, η κάρτα SIM σας πρέπει να είναι σε θέση να υποστηρίζει LTE CAT-M (όχι μόνο παραδοσιακό LTE όπως αυτό που πιθανότατα υπάρχει στο τηλέφωνό σας) ή NB-IoT και πρέπει να έχει μέγεθος "μικρο" SIM. Η καλύτερη επιλογή που βρήκα για αυτήν την ασπίδα είναι η κάρτα SIM προγραμματιστή Hologram που παρέχει 1MB/μήνα δωρεάν και πρόσβαση σε API και πόρους του Ολογράμματος για την πρώτη κάρτα SIM! Απλώς συνδεθείτε στον πίνακα ελέγχου Hologram.io και εισαγάγετε τον αριθμό CCID της SIM για να τον ενεργοποιήσετε και, στη συνέχεια, ορίστε τις ρυθμίσεις APN στον κώδικα (που έχουν ήδη οριστεί από προεπιλογή). Είναι χωρίς προβλήματα και λειτουργεί οπουδήποτε στον κόσμο επειδή το ολόγραμμα υποστηρίζει πάνω από 200 μεταφορείς παγκοσμίως!

Πρέπει να σημειωθεί ότι οι εκδόσεις SIM7000C/E/G υποστηρίζουν επίσης 2G εφεδρική, οπότε αν θέλετε πραγματικά να δοκιμάσετε και δεν έχετε κάρτα SIM LTE CAT-M ή NB-IoT, μπορείτε ακόμα να δοκιμάσετε τη μονάδα σε 2G.

Εισαγωγή της κάρτας SIM

Πρώτα απ 'όλα πρέπει να σπάσετε τη μικρο SIM από τη θήκη της κάρτας SIM κανονικού μεγέθους. Στην ασπίδα LTE εντοπίστε τη θήκη της κάρτας SIM στην αριστερή πλευρά της πλακέτας κοντά στη θύρα της μπαταρίας. Η κάρτα SIM εισάγεται σε αυτήν τη θήκη με τις μεταλλικές επαφές της SIM στραμμένες προς τα κάτω και τη μικρή εγκοπή στη μία άκρη στραμμένη προς τη θήκη της κάρτας SIM.

Antenna Goodness

Το κιτ ασπίδας έρχεται με μια πραγματικά βολική διπλή κεραία LTE/GPS! Είναι επίσης ευέλικτο (αν και δεν πρέπει να προσπαθείτε να το στρίψετε και να το λυγίσετε πολύ γιατί μπορεί να σπάσετε τα καλώδια της κεραίας από την κεραία αν δεν είστε προσεκτικοί) και έχει μια κόλλα που αποκολλάται στο κάτω μέρος. Η σύνδεση των καλωδίων είναι εξαιρετικά απλή: απλά πάρτε τα καλώδια και ασφαλίστε τα στα αντίστοιχα βύσματα uFL στη δεξιά άκρη της θωράκισης. ΣΗΜΕΙΩΣΗ: Βεβαιωθείτε ότι ταιριάζετε το καλώδιο LTE στην κεραία με το βύσμα LTE στην ασπίδα και το ίδιο με το καλώδιο GPS επειδή είναι διασταυρωμένα!

Βήμα 6: Ρύθμιση Arduino IDE

Arduino IDE Setup
Arduino IDE Setup

Αυτή η ασπίδα SIM7000 βασίζεται στους πίνακες Adafruit FONA και χρησιμοποιεί την ίδια βιβλιοθήκη αλλά βελτιώνεται με πρόσθετη υποστήριξη μόντεμ. Μπορείτε να διαβάσετε όλες τις οδηγίες σχετικά με τον τρόπο εγκατάστασης της αναθεωρημένης βιβλιοθήκης FONA εδώ στη σελίδα μου στο Github.

Μπορείτε επίσης να δείτε πώς να δοκιμάσετε τον αισθητήρα θερμοκρασίας MCP9808 ακολουθώντας αυτές τις οδηγίες, αλλά εδώ θα επικεντρωθώ κυρίως στα κυτταρικά στοιχεία!

Βήμα 7: Παράδειγμα Arduino

Παράδειγμα Arduino
Παράδειγμα Arduino
Παράδειγμα Arduino
Παράδειγμα Arduino
Παράδειγμα Arduino
Παράδειγμα Arduino

Ρύθμιση ρυθμού Baud

Από προεπιλογή, το SIM7000 λειτουργεί με 115200 baud, αλλά αυτό είναι πολύ γρήγορο για να λειτουργεί αξιόπιστα το σειριακό λογισμικό και οι χαρακτήρες μπορεί να εμφανίζονται τυχαία ως τετράγωνα πλαίσια ή άλλα περίεργα σύμβολα (για παράδειγμα, ένα "Α" θα μπορούσε να εμφανιστεί ως "@"). Αυτός είναι ο λόγος για τον οποίο αν κοιτάξετε προσεκτικά, το Arduino διαμορφώνει τη μονάδα σε πιο αργό ρυθμό baud 9600 κάθε φορά που προετοιμάζεται. Ευτυχώς, η αλλαγή πραγματοποιείται αυτόματα από τον κώδικα, οπότε δεν χρειάζεται να κάνετε κάτι ιδιαίτερο για να το ρυθμίσετε!

Επίδειξη LTE Shield

Στη συνέχεια, ακολουθήστε αυτές τις οδηγίες για να ανοίξετε το σκίτσο "LTE_Demo" (ή όποια παραλλαγή αυτού του σκίτσου, ανάλογα με τον μικροελεγκτή που χρησιμοποιείτε). Εάν μετακινηθείτε προς τα κάτω στο τέλος της λειτουργίας "setup ()", θα δείτε μια γραμμή "fona.setGPRSNetworkSettings (F (" ολόγραμμα "));" που ορίζει το APN για την κάρτα SIM ολόγραμμα. Αυτό είναι απολύτως απαραίτητο και εάν χρησιμοποιείτε διαφορετική κάρτα SIM θα πρέπει πρώτα να συμβουλευτείτε την τεκμηρίωση της κάρτας για το τι είναι το APN. Σημειώστε ότι πρέπει να αλλάξετε αυτήν τη γραμμή μόνο εάν δεν χρησιμοποιείτε κάρτα SIM ολόγραμμα.

Όταν εκτελείται ο κωδικός, το Arduino θα επιχειρήσει να επικοινωνήσει με την SIM7000 μέσω UART (TX/RX) χρησιμοποιώντας το SoftwareSerial. Για να γίνει αυτό, φυσικά, το SIM7000 πρέπει να είναι ενεργοποιημένο, οπότε ενώ προσπαθείτε να δημιουργήσετε μια σύνδεση, ελέγξτε για το LED "PWR" για να βεβαιωθείτε ότι ανάβει! (Σημείωση: θα πρέπει να ενεργοποιηθεί περίπου 4 δευτερόλεπτα μετά την εκτέλεση του κώδικα). Αφού το Arduino εγκαθιδρύσει επιτυχώς την επικοινωνία με τη μονάδα, θα πρέπει να δείτε ένα μεγάλο μενού με μια δέσμη ενεργειών που μπορεί να εκτελέσει η μονάδα! Ωστόσο, σημειώστε ότι ορισμένες από αυτές είναι για τις άλλες μονάδες 2G ή 3G της SIMCom, επομένως δεν ισχύουν όλες οι εντολές για την SIM7000, αλλά πολλές από αυτές ισχύουν! Απλώς πληκτρολογήστε το γράμμα που αντιστοιχεί σε μια ενέργεια που θέλετε να εκτελέσετε και κάντε κλικ στην επιλογή "Αποστολή" στην επάνω δεξιά γωνία της σειριακής οθόνης ή απλά πατήστε το πλήκτρο Enter. Παρακολουθήστε με έκπληξη την ασπίδα να ανταποδίδει μια απάντηση!

Εντολές επίδειξης

Παρακάτω είναι μερικές εντολές που πρέπει να εκτελέσετε για να βεβαιωθείτε ότι η μονάδα σας έχει ρυθμιστεί πριν προχωρήσετε:

  • Πληκτρολογήστε "n" και πατήστε enter για να ελέγξετε την εγγραφή δικτύου. Θα πρέπει να δείτε την ένδειξη "Εγγραφή (σπίτι)". Εάν όχι, ελέγξτε αν η κεραία σας είναι προσαρτημένη και ίσως χρειαστεί επίσης να εκτελέσετε πρώτα την εντολή "G" (εξηγείται παρακάτω)!
  • Ελέγξτε την ισχύ του σήματος δικτύου εισάγοντας "i". Θα πρέπει να λάβετε μια τιμή RSSI. όσο υψηλότερη είναι αυτή η τιμή τόσο το καλύτερο! Το δικό μου ήταν 31, το οποίο υποδεικνύει τον καλύτερο βραχίονα ισχύος σήματος!
  • Εισαγάγετε την εντολή "1" για να ελέγξετε μερικές πολύ καλές πληροφορίες δικτύου. Μπορείτε να λάβετε την τρέχουσα λειτουργία σύνδεσης, όνομα φορέα, μπάντα κ.λπ.
  • Εάν έχετε συνδεδεμένη μπαταρία, δοκιμάστε την εντολή "b" για να διαβάσετε την τάση και το ποσοστό της μπαταρίας. Εάν δεν χρησιμοποιείτε μπαταρία, αυτή η εντολή θα διαβάζει πάντα περίπου 4200mV και επομένως λέει ότι είναι 100% φορτισμένη.
  • Τώρα εισάγετε "G" για να ενεργοποιήσετε τα δεδομένα κινητής τηλεφωνίας. Αυτό ρυθμίζει το APN και είναι ζωτικής σημασίας για τη σύνδεση της συσκευής σας στον ιστό! Εάν δείτε "ERROR" δοκιμάστε να απενεργοποιήσετε τα δεδομένα χρησιμοποιώντας το "g" και στη συνέχεια δοκιμάστε ξανά.
  • Για να ελέγξετε αν μπορείτε πραγματικά να κάνετε κάτι με τη μονάδα σας, εισαγάγετε "w". Θα σας ζητήσει να εισαγάγετε τη διεύθυνση URL της ιστοσελίδας που θέλετε να διαβάσετε και να αντιγράψετε/επικολλήσετε το παράδειγμα URL "https://dweet.io/get/latest/dweet/for/sim7000test123" και να πατήσετε enter. Λίγο αργότερα θα πρέπει να σας δώσει ένα μήνυμα όπως "{" αυτό ":" απέτυχε "," με ": 404", επειδή ":" δεν μπορέσαμε να το βρούμε αυτό "}" (υποθέτοντας ότι κανείς δεν δημοσίευσε δεδομένα για το "sim7000test123")
  • Τώρα ας δοκιμάσουμε την αποστολή εικονικών δεδομένων στο dweet.io, ένα δωρεάν cloud API εισάγοντας "2" στη σειριακή οθόνη. Θα πρέπει να το δείτε να εκτελείται μέσω ορισμένων εντολών AT.
  • Για να ελέγξετε αν τα δεδομένα έχουν περάσει πραγματικά, δοκιμάστε ξανά "w" και αυτή τη φορά εισαγάγετε "https://dweet.io/get/latest/dweet/for/{deviceID}" χωρίς τις αγκύλες, όπου το αναγνωριστικό συσκευής είναι το IMEI αριθμό της συσκευής σας που θα πρέπει να εκτυπωθεί στο επάνω μέρος της σειριακής οθόνης από την προετοιμασία της μονάδας. Θα πρέπει να δείτε "επιτυχημένο" και μια απάντηση JSON που περιέχει τα δεδομένα που μόλις στείλατε! (Σημειώστε ότι η μπαταρία 87% είναι απλώς ένας εικονικός αριθμός που έχει οριστεί στον κωδικό και μπορεί να μην είναι το πραγματικό επίπεδο μπαταρίας σας)
  • Τώρα ήρθε η ώρα να δοκιμάσετε το GPS! Ενεργοποιήστε την τροφοδοσία του GPS χρησιμοποιώντας το "O"
  • Εισαγάγετε "L" για να ζητήσετε τα δεδομένα τοποθεσίας. Λάβετε υπόψη ότι μπορεί να χρειαστεί να περιμένετε περίπου 7-10 δευτερόλεπτα προτού διορθωθεί η τοποθεσία. Μπορείτε να συνεχίσετε να εισάγετε "L" μέχρι να σας εμφανίσει κάποια δεδομένα!
  • Μόλις σας δώσει δεδομένα, αντιγράψτε και επικολλήστε τα στο Microsoft Word ή σε πρόγραμμα επεξεργασίας κειμένου, ώστε να είναι ευκολότερο να διαβαστεί. Θα δείτε ότι ο τρίτος αριθμός (οι αριθμοί χωρίζονται με κόμματα) είναι η ημερομηνία και η ώρα και οι επόμενοι τρεις αριθμοί είναι το γεωγραφικό πλάτος, το γεωγραφικό μήκος και το υψόμετρο (σε μέτρα) της τοποθεσίας σας! Για να ελέγξετε αν ήταν ακριβές, μεταβείτε σε αυτό το διαδικτυακό εργαλείο και αναζητήστε την τρέχουσα τοποθεσία σας. Θα πρέπει να σας δίνει το lat/long και το υψόμετρο και να συγκρίνει αυτές τις τιμές με αυτήν που έδωσε το GPS σας!
  • Εάν δεν χρειάζεστε GPS, μπορείτε να το απενεργοποιήσετε χρησιμοποιώντας το "o"
  • Διασκεδάστε με τις άλλες εντολές και δείτε το παράδειγμα σκίτσου "IoT_Example" για ένα υπέροχο παράδειγμα σχετικά με τον τρόπο αποστολής δεδομένων σε ένα δωρεάν cloud cloud μέσω LTE!

Αποστολή & Λήψη Κειμένων

Για να δείτε πώς να στέλνετε κείμενα από την ασπίδα απευθείας σε οποιοδήποτε τηλέφωνο και να στέλνετε κείμενα στην ασπίδα μέσω του Πίνακα ελέγχου του Ολογράμματος ή του API, διαβάστε αυτήν τη σελίδα wiki του Github.

Παράδειγμα IoT: Παρακολούθηση GPS

Μόλις επαληθεύσετε ότι όλα λειτουργούν όπως αναμένεται, ανοίξτε το σκίτσο "IoT_Example". Αυτό το παράδειγμα κώδικα στέλνει τη θέση GPS και τα δεδομένα που φέρουν, τη θερμοκρασία και τη στάθμη της μπαταρίας στο σύννεφο! Ανεβάστε τον κωδικό και παρακολουθήστε με έκπληξη την ασπίδα που κάνει τα μαγικά της! Για να ελέγξετε αν τα δεδομένα έχουν σταλεί πραγματικά στο cloud, μεταβείτε στη διεύθυνση "https://dweet.io/get/latest/dweet/for/{IMEI}" σε οποιοδήποτε πρόγραμμα περιήγησης (συμπληρώστε τον αριθμό IMEI που βρίσκεται στο επάνω μέρος του σειριακή οθόνη μετά την προετοιμασία της μονάδας ή τυπωμένη στη μονάδα SIMCOM) και θα πρέπει να δείτε τα δεδομένα που έστειλε η συσκευή σας!

Με αυτό το παράδειγμα μπορείτε επίσης να σχολιάσετε τη γραμμή με "#define samplingRate 30" για να στέλνετε δεδομένα επανειλημμένα αντί να εκτελείται μόνο μία φορά. Αυτό καθιστά τη συσκευή σας ουσιαστικά μια συσκευή παρακολούθησης GPS!

Για περισσότερες λεπτομέρειες, επισκεφθείτε τα σεμινάρια που έκανα για παρακολούθηση GPS σε πραγματικό χρόνο:

  • Οδηγίες παρακολούθησης GPS tracker μέρος 1
  • Σεμινάριο παρακολούθησης GPS μέρος 2

Αντιμετώπιση προβλημάτων

Για συχνές ερωτήσεις και θέματα αντιμετώπισης προβλημάτων, επισκεφτείτε τις Συχνές ερωτήσεις στο Github.

Βήμα 8: Δοκιμή με εντολές AT

Δοκιμή με εντολές AT
Δοκιμή με εντολές AT

Δοκιμή από το Arduino IDE

Εάν θέλετε να στείλετε εντολές AT στη μονάδα μέσω της σειριακής οθόνης, χρησιμοποιήστε την εντολή "S" από το μενού για να μπείτε στη λειτουργία σειριακού σωλήνα. Αυτό θα κάνει έτσι ώστε όλα όσα πληκτρολογείτε στη σειριακή οθόνη να αποστέλλονται στη μονάδα. Τούτου λεχθέντος, βεβαιωθείτε ότι έχετε ενεργοποιήσει το "Και το NL & CR" στο κάτω μέρος της σειριακής οθόνης, διαφορετικά δεν θα δείτε καμία απάντηση στις εντολές σας επειδή η μονάδα δεν θα γνωρίζει ότι τελειώσατε την πληκτρολόγηση!

Για έξοδο από αυτήν τη λειτουργία, απλώς πατήστε το κουμπί επαναφοράς στο Arduino σας. Σημειώστε ότι εάν χρησιμοποιείτε πίνακες που βασίζονται σε ATmega32u4 ή ATSAMD21, θα πρέπει επίσης να κάνετε επανεκκίνηση της σειριακής οθόνης.

Για περισσότερες πληροφορίες σχετικά με την αποστολή εντολών AT από το Arduino IDE, δείτε αυτήν τη σελίδα wiki.

Δοκιμή απευθείας μέσω USB

Perhapsσως μια ευκολότερη μέθοδος (για χρήστες Windows) είναι να εγκαταστήσετε τα προγράμματα οδήγησης των Windows που περιγράφονται σε αυτό το σεμινάριο και να δοκιμάσετε τις εντολές AT χρησιμοποιώντας τη θύρα micro USB της ασπίδας αντ 'αυτού!

Εάν εξακολουθείτε να θέλετε να πειραματιστείτε με τις εντολές AT, αλλά θέλετε να τις εκτελέσετε με μια σειρά και δεν θέλετε να μπλέξετε με την αλλαγή της βιβλιοθήκης FONA, μπορείτε να το κάνετε με μια απλή μικρή βιβλιοθήκη που έγραψα και ονομάζεται "AT Command Library". μπορείτε να βρείτε εδώ στο Github. Το μόνο που χρειάζεται να κάνετε είναι να κατεβάσετε το ZIP από το χώρο αποθήκευσης και να το εξαγάγετε στο φάκελο βιβλιοθηκών Arduino και ένα παράδειγμα σκίτσου (που ονομάζεται "AT_Command_Test.ino") για το SIM7000 μπορεί να βρεθεί εδώ στο LTE shield Github repo. Αυτή η βιβλιοθήκη σάς επιτρέπει να στέλνετε εντολές AT μέσω Σειριακού Λογισμικού με χρονικά όρια, ελέγχους για συγκεκριμένη απάντηση από τη μονάδα, ούτε, ούτε και τα δύο!

Βήμα 9: Τρέχουσα κατανάλωση

Για συσκευές IoT θέλετε να δείτε αυτούς τους αριθμούς να μειώνονται, οπότε ας ρίξουμε μια ματιά σε ορισμένες από τις τεχνικές προδιαγραφές! Για μια λεπτομερή αναφορά των τρεχουσών μετρήσεων κατανάλωσης, ανατρέξτε σε αυτήν τη σελίδα Github.

Ακολουθεί μια σύντομη περίληψη:

  • Η μονάδα SIM7000 απενεργοποιείται: ολόκληρη η ασπίδα αντλεί <8uA με μπαταρία LiPo 3.7V
  • Η κατάσταση αναστολής λειτουργίας αντλεί περίπου 1,5mA (συμπεριλαμβανομένης της πράσινης λυχνίας PWR, πιθανότατα ~ 1mA χωρίς αυτήν) και παραμένει συνδεδεμένη στο δίκτυο
  • Οι ρυθμίσεις e-DRX μπορούν να διαμορφώσουν τον χρόνο κύκλου της διαπραγμάτευσης δικτύου και να εξοικονομήσουν ενέργεια, αλλά επίσης θα καθυστερήσουν πράγματα, όπως εισερχόμενα μηνύματα κειμένου, ανάλογα με το τι έχει οριστεί ο χρόνος κύκλου
  • Συνδεδεμένο στο δίκτυο LTE CAT-M1, αδρανές: ~ 12mA
  • Το GPS προσθέτει m 32mA
  • Η σύνδεση USB προσθέτει m 20mA
  • Η μετάδοση δεδομένων μέσω LTE CAT-M1 είναι m 96mA για 12 ~
  • Η αποστολή SMS αντλεί ~ 96mA για 10 ~
  • Λήψη SMS αντλεί m 89mA για 10 ~
  • Το PSM ακούγεται σαν ένα υπέροχο χαρακτηριστικό αλλά δεν έχει ακόμη λειτουργήσει

Και εδώ είναι μια μικρή εξήγηση:

  • Λειτουργία Απενεργοποίησης: Μπορείτε να χρησιμοποιήσετε τη λειτουργία "fona.powerDown ()" για να απενεργοποιήσετε πλήρως την SIM7000. Σε αυτήν την κατάσταση, η μονάδα αντλεί μόνο περίπου 7,5uA και λίγο μετά την απενεργοποίηση της μονάδας θα πρέπει επίσης να απενεργοποιηθεί το LED "PWR".
  • Λειτουργία εξοικονόμησης ενέργειας (PSM): Αυτή η λειτουργία μοιάζει με τη λειτουργία απενεργοποίησης, αλλά το μόντεμ παραμένει εγγεγραμμένο στο δίκτυο ενώ σχεδιάζει μόνο 9uA ενώ διατηρεί την μονάδα σε λειτουργία. Σε αυτήν τη λειτουργία μόνο η ισχύς του RTC θα είναι ενεργή. Για εκείνους τους θαυμαστές του ESP8266, είναι βασικά "ESP.deepSleep ()" και ο χρονοδιακόπτης RTC μπορεί να ξυπνήσει τη μονάδα, αλλά μπορείτε να κάνετε μερικά πολύ ωραία πράγματα, όπως να ξυπνήσετε το μόντεμ στέλνοντάς του ένα SMS. Ωστόσο, δυστυχώς δεν μπόρεσα να λειτουργήσω αυτήν τη δυνατότητα. Πείτε μου σίγουρα αν το κάνετε!
  • Λειτουργία πτήσης: Σε αυτήν τη λειτουργία εξακολουθεί να παρέχεται ενέργεια στη μονάδα, αλλά το RF είναι εντελώς απενεργοποιημένο, αλλά η κάρτα SIM είναι ακόμα ενεργή, καθώς και η διεπαφή UART και USB. Μπορείτε να εισαγάγετε αυτήν τη λειτουργία χρησιμοποιώντας το "AT+CFUN = 4", αλλά ούτε εγώ είδα να ισχύει.
  • Λειτουργία ελάχιστης λειτουργικότητας: Αυτή η λειτουργία είναι η ίδια με τη Λειτουργία πτήσης, εκτός εάν η διεπαφή της κάρτας SIM δεν είναι προσβάσιμη. Μπορείτε να εισαγάγετε αυτήν τη λειτουργία χρησιμοποιώντας "AT+CFUN = 0", αλλά μπορείτε επίσης να μπείτε σε αυτήν τη λειτουργία χρησιμοποιώντας "AT+CSCLK = 1", μετά την οποία η SIM7000 θα τραβήξει προς τα πάνω τον πείρο DTR όταν η μονάδα είναι σε κατάσταση αδράνειας. Σε αυτήν την κατάσταση αδράνειας, αν χαμηλώσετε το DTR, θα ξυπνήσει τη μονάδα. Αυτό μπορεί να είναι βολικό γιατί το ξύπνημά του μπορεί να είναι πολύ πιο γρήγορο από το να το ενεργοποιήσετε από την αρχή!
  • Λειτουργία ασυνεχούς λήψης/μετάδοσης (DRX/DTX): Μπορείτε να διαμορφώσετε το "ποσοστό δειγματοληψίας" της ενότητας, έτσι ώστε η μονάδα να ελέγχει μόνο για μηνύματα κειμένου ή να στέλνει δεδομένα με ταχύτερο ή βραδύτερο ρυθμό, ενώ παραμένει συνδεδεμένη το δίκτυο. Αυτό μειώνει σημαντικά την τρέχουσα κατανάλωση!
  • Απενεργοποιήστε τη λυχνία LED "PWR": Για να εξοικονομήσετε μερικές πένες ακόμη, μπορείτε να απενεργοποιήσετε τη λυχνία LED ισχύος της μονάδας, κόβοντας το βραχυκυκλωτήρα συγκόλλησης που έχει κλείσει κανονικά δίπλα. Αν αργότερα αλλάξετε γνώμη και το θέλετε πίσω, απλά κολλήστε τον άλτη!
  • LED "NETLIGHT" On/Off: Μπορείτε επίσης να χρησιμοποιήσετε το "AT+CNETLIGHT = 0" για να απενεργοποιήσετε εντελώς το μπλε LED κατάστασης δικτύου εάν δεν το χρειάζεστε!
  • Ενεργοποίηση/Απενεργοποίηση GNSS: Μπορείτε να εξοικονομήσετε 30mA απενεργοποιώντας το GPS χρησιμοποιώντας την εντολή "fona.enableGPS ()" με την παράμετρο εισόδου true ή false. Εάν δεν το χρησιμοποιείτε, θα σας πρότεινα να το απενεργοποιήσετε! Επίσης, διαπίστωσα ότι χρειάζονται μόνο περίπου 20 δευτερόλεπτα για να επιδιορθωθεί η τοποθεσία από μια κρύα εκκίνηση και μόνο περίπου 2 δευτερόλεπτα όταν η συσκευή είναι ήδη ενεργοποιημένη (όπως αν απενεργοποιήσετε το GPS, στη συνέχεια ενεργοποιήσετε ξανά και κάνετε ξανά ερώτηση), το οποίο είναι αρκετά γρήγορο ! Μπορείτε επίσης να πειραματιστείτε με ζεστή/θερμή εκκίνηση και υποβοηθούμενο GPS.

Βήμα 10: Συμπεράσματα

Συνολικά, το SIM7000 είναι εξαιρετικά γρήγορο και χρησιμοποιεί τεχνολογία αιχμής με ενσωματωμένο GPS και έρχεται φορτωμένο με εξαιρετικά χαρακτηριστικά! Δυστυχώς για εμάς στις Ηνωμένες Πολιτείες, το NB-IoT δεν έχει αναπτυχθεί πλήρως εδώ, οπότε θα πρέπει να περιμένουμε λίγο μέχρι να βγει, αλλά με αυτήν την ασπίδα LTE μπορούμε ακόμα να χρησιμοποιήσουμε το LTE CAT-M1 στα δίκτυα AT&T και Verizon. Αυτή η ασπίδα είναι ιδανική για πειραματισμούς με κυψελοειδείς συσκευές χαμηλής ισχύος, όπως ιχνηλάτες GPS, απομακρυσμένους καταγραφείς δεδομένων και πολλά άλλα! Συμπεριλαμβάνοντας άλλες ασπίδες και μονάδες για πράγματα όπως αποθήκευση κάρτας SD, ηλιακούς συλλέκτες, αισθητήρες και άλλη ασύρματη συνδεσιμότητα, οι δυνατότητες είναι σχεδόν ατελείωτες!

  • Αν σας άρεσε αυτό το έργο, δώστε του μια καρδιά και ψηφίστε το!
  • Εάν έχετε σχόλια, προτάσεις ή ερωτήσεις, μη διστάσετε να το δημοσιεύσετε παρακάτω!
  • Για να παραγγείλετε τη δική σας ασπίδα, επισκεφθείτε τον ιστότοπό μου για πληροφορίες ή παραγγείλετε την στο Amazon.com
  • Όπως πάντα, μοιραστείτε αυτό το έργο!

Με αυτά τα λόγια, ευτυχισμένο DIY και φροντίστε να μοιραστείτε τα έργα και τις βελτιώσεις σας με όλους!

~ Τιμ

Συνιστάται: