RSS

2022-12-08 12:25:12 By : Ms. Leina Chen

CNX Software – Neuigkeiten zu eingebetteten SystemenRezensionen, Tutorials und die neuesten Nachrichten über eingebettete Systeme, IoT, Open-Source-Hardware, SBCs, Mikrocontroller, Prozessoren und mehrVenus Supply ist ein Unternehmen für eingebettete Systeme mit Sitz in Bangkok, Thailand, das Produkte über seine Website/Marke ThaiEasyElec verkauft und als lokaler Distributor für beliebte DIY-Elektronikartikel fungiert.Ich habe zuvor ihr ESPino32 ESP32-Board getestet, und das Unternehmen hat mir jetzt ein weiteres seiner neuen Produkte namens „3G HAT Expansion for Raspberry Pi“ geschickt, das auf Quectel UC20-G basiert und 3G- und GPS/GLONASS-Konnektivität weltweit unterstützt, was bedeutet, dass es funktionieren sollte in jedem Land mit 2G- oder 3G-Abdeckung.Nachdem ich die Spezifikationen aufgelistet, das Auspacken und Zusammenbauen mit einem Raspberry Pi 2/3-Board durchgegangen bin, schreibe ich eine Kurzanleitung, um zu zeigen, was ich tun musste, um GPS zu verwenden und mit einer Hologramm-SIM-Karte eine Verbindung zu 3G herzustellen.Ich habe das Kit in einem Karton mit drei Reißverschlusspaketen erhalten: eines für das Board und Zubehör und zwei für die GPS/GLONASS- und 3G-Antennen, die standardmäßig nicht enthalten sind.Die GPS-Antenne wird mit einem 3-Meter-Kabel geliefert, das für die Installation in den meisten Autos oder Lastwagen geeignet sein sollte, und das HAT-Paket enthält eine zusätzliche Reißverschlusstasche mit Abstandshaltern, Schrauben, Muttern und einer 40-poligen Buchsenleiste.Mir wurde auch gesagt, dass ein 25-cm-Micro-USB-Kabel enthalten sein sollte, aber es scheint, dass sie es für mein Paket vergessen haben…Wenn wir uns das Board genauer ansehen, sehen wir das Quectel UC20GB-Modul in der Mitte des Boards, die drei RP-SMA-Antennenanschlüsse, die deutlich mit DIV, GNSS und MAIN gekennzeichnet sind, den Micro-USB-Anschluss für Strom und Daten, die 3,5-mm-Audiobuchse, und im oberen rechten Anschluss J3 2-Pin-Header zum Aktivieren des Autostarts, 3-Pin-P8-Header zum Auswählen von GPIO 17 oder GPIO 18 zum Ein- und Ausschalten der Software und die Ein- / Aus-Taste zum manuellen Starten oder Stoppen des Moduls.Sie haben auch den 40-Pin-RPi-Header mit männlichen Pins als 4-Pin-UART-Anschluss zugänglich gemacht.Auf der anderen Seite des Akkus befindet sich das Audio-Codec-Board basierend auf Nuvoton NAU8814Y Mono-Audio-Codec, der SIM-Kartensteckplatz mit einer schwarzen Dummy-SIM-Karte, eine CR1220-Knopfzellenbatterie für GPS-Fix-Backup und eine 40-Pin-Buchse für den Anschluss zum RaspberryPi.Mir wurde gesagt, dass die Batterie die interne Uhr des Moduls mit Strom versorgt, die die neue Position von Satelliten berechnen und GPS-Fix schneller aus Daten erhalten kann, die vor bis zu 3 Tagen verwendet wurden.Finden Sie ein (kurzes) Mikro-USB-zu-USB-Kabel, um den Mikro-USB-Anschluss der HAT-Erweiterungskarte mit einem der USB-Anschlüsse des Raspberry Pi zu verbinden, um die Karte einzuschalten.Ich musste auch die Dummy-SIM-Karte entfernen und meine eigene SIM-Karte mit den Kontakten zur Platine einlegen.Nach der Installation sehen wir etwa 3 mm der SIM-Karte, aber das ist normal.Schließlich müssen Sie entscheiden, wie Sie die Stromversorgung verwalten möchten: entweder mit dem Netzschalter, J3-Jumper zum Autostart oder mit Pin 17 oder 18 vom Raspberry Pi.Ich habe mich entschieden, den Jumper auf J3 zu verschieben, um das Modul immer einzuschalten, aber wenn Sie mit Batterien arbeiten, möchten Sie wahrscheinlich stattdessen den GPIO-Pin verwenden.Jetzt können wir unser Raspberry Pi-Board starten und uns über SSH, seriell oder auf dem Desktop bei einem Terminal anmelden.Wir sollten das Quectel UC20-Modul mit 05c6:9003 VID:PID mit lsusb finden:Wenn Sie es nicht sehen, vergewissern Sie sich, dass das USB-Kabel angeschlossen ist und Sie das Modul eingeschaltet haben.Ich empfehle Ihnen, den Jumper zunächst wie ich auf J3 zu verschieben.Dann sollten Sie vier ttyUSB-Geräte sehen:Jedes wird vom Modul wie folgt verwendet:ThaiEasyElec verwendet Putty für Linux, aber da ich das kopflos mache, installiere ich stattdessen picocom:Jetzt können wir mit 115200 8N1 eine Verbindung zu /dev/ttyUSB2 herstellen, um einige AT-Befehle an das Modul zu senden:Der erste Befehl (AT+QGPS=1) schaltet das GNSS-Modul ein und der zweite (AT+QGPSEND) schaltet es aus.Lassen Sie es vorerst eingeschaltet und verbinden Sie sich mit /dev/ttyUSB1 @ 9600 Baud, um die NMEA-Ausgabe zu überprüfen, die jede Sekunde aktualisiert werden sollte, wenn GPS aktiviert ist:Das ist die Bedeutung für jedes Feld:GPGSA enthält keine Daten in der obigen Ausgabe, einfach weil der GPS-Fix noch nicht erfolgt ist.Wenn Sie GNSS nur jedes Mal aktivieren möchten, wenn das Modul eingeschaltet wird, führen Sie den folgenden Befehl aus:Um diese Option zu deaktivieren, führen Sie einfach denselben Befehl mit 0 statt 1 aus. Sie können auch den „autogps“-Status abfragen, aber den Befehl ohne den zweiten Parameter ausführen:Weitere Einzelheiten zum GNSS AT-Befehlssatz für GPS und GLONASS finden Sie im Quectel UC20 GNSS AT Commands Manual (pdf).Das Lesen von NMEA-Sätzen ist möglich, aber nicht wirklich benutzerfreundlich, und wenn wir eine schöne Darstellung der Daten sehen möchten, können wir den GPS-Daemon (gspd) und den Client (cgps) instad ausführen.Lassen Sie uns beide Picocom-Sitzungen mit noch laufendem GPS beenden und die erforderlichen Pakete installieren:Der Daemon wird nach der Installation automatisch ausgeführt, also stoppen wir ihn …… um es mit unseren eigenen Parametern auszuführen, dh mit /dev/ttyUSB1 NMEA-Schnittstelle:Jetzt können wir den Client wie folgt ausführen:Nach ein paar Sekunden sollte ein Fix mit Detailinformationen (links) und Daten zu den Satelliten (rechts) erscheinen.Ich habe früher mit GPS gespielt, indem ich das NavSpark Mini-GPS-Modul (Arduino-kompatibel) benutzte, und damals konnte ich es schaffen, ein GPS-Fix in meinem Zimmer zu bekommen, aber in diesem Fall musste ich die Antenne nach draußen bewegen, um ein Signal zu bekommen.Wenn Sie eine solche Funktion in Ihre eigene App integrieren möchten, sollten Sie sich den cgps-Quellcode ansehen.Es ist auch möglich, die Koordinaten über das Terminal /dev/ttyUSB2 mit dem Befehl QGPSLOC AT in einem der folgenden drei Modi abzurufen:Die Felder von links nach rechts: ,,,,,,,,,,< nsat>Kurze Erklärung für die nicht so offensichtlichen Felder:Kommen wir nun zum zellularen Teil des Moduls.Ich werde die IoT-SIM-Karte des Hologram-Entwicklers verwenden, aber jede 3G-SIM-Karte sollte ausreichen.Die ThaiEasyElec-Dokumentation verwendet die beiden folgenden Programme, um eine 3G-PPP-Verbindung herzustellen:Booth befindet sich im umtskeeper-Paket, das wir von einem Tarball installieren können:Wir müssen dann einige zusätzliche Pakete installieren:Wir werden dann aufgefordert, Sakis3G im interaktiven Modus zu starten, um die Verbindung zu konfigurieren.Das Aussehen hängt davon ab, ob Sie es vom Dekstop, einem SSH-Terminal oder einem seriellen Terminal starten.Die Schnittstelle sieht von der seriellen Konsole aus wirklich hässlich (und chaotisch) aus, also habe ich sie stattdessen von einem SSH-Terminal aus gestartet:Wir müssen 1. Connect with 3G, dann 3. Custom tty… auswählen und /dev/ttyUSB3 für die CUSTOM_TTY-Variable eingeben.Der nächste Schritt hat automatisch den richtigen APN (HOLOGRAM) erkannt, also habe ich einfach OK ausgewählt und wurde dann nach APN_USER und APN_PASS gefragt.Diese Parameter hängen auch von Ihrer spezifischen Verbindung ab.Hologramm verwendet weder Benutzer noch Passwort, aber durch einfaches Drücken der Eingabetaste wird die Konfiguration abgebrochen, also habe ich für beide 0 eingegeben.Danach wird Sakig3G versuchen, eine Verbindung herzustellen, und es hat funktioniert!Durch Drücken der Eingabetaste gelangen wir zurück zum Hauptmenü, wo wir Verbindungsinformationen auswählen können, um einige weitere Details zu finden.Gehen wir zurück in das obere Menü, trennen Sie die Verbindung und beenden Sie Sakis3G.Jetzt können wir umtskeeper mit denselben Parametern ausführen:Allerdings sieht die Ausgabe gleich beim ersten Mal nicht so gut aus, da sie „kein Modem angeschlossen“ beklagt:Aber irgendwann bekommen wir eine Verbindung.Wenn Sie später eine Verbindung herstellen, ändert sich die Internet-Statusmeldung zu:Obwohl ich schließlich erfolgreich war, scheiterte ich beim ersten Versuch mit Methode 1 aus bestimmten Gründen, also suchte ich damals nach alternativen Verbindungswegen und stellte fest, dass Sixfab auch eine Hologramm-SIM-Karte mit ihrem eigenen RPi 3G/4G-Schild verwendete – ebenfalls basierend aa Quectel-Modul und schrieb stattdessen das Skript ppp-creator.sh.Also habe ich es auf mein Raspberry Pi-Board heruntergeladen und ausgeführt, wodurch einige andere Verbindungsskripts erstellt wurden.Jetzt können wir den Befehl pppd call gprs ausführen, um eine Verbindung herzustellen:Alles gut und sogar einfacher als die erste Methode, obwohl Sie möglicherweise das Skript ändern müssen, falls Sie APN-Benutzername und Passwort benötigen.Unabhängig davon, ob wir Methode 1 oder 2 verwenden, können wir jetzt überprüfen, ob ppp0 tatsächlich aktiv und verbunden ist.Ich habe das mit angeschlossenem Ethernet gemacht, also trenne ich jetzt Ethernet, schalte es herunter und starte das Skript von der seriellen Verbindung als Hintergrundprozess:Wieder können wir auf ppp0 sehen, dass eine aktive Verbindung besteht:Ich kann den ausgehenden Verkehr mit Ping testen.Alles gut, aber dann habe ich versucht, mich per SSH zu verbindenAber es konnte keine Verbindung hergestellt werden, vielleicht weil 10.170.40.106 eine „lokale IP-Adresse“ ist und die auf 10.64.64.64 eingestellte „entfernte IP-Adresse“ nur eine Standardadresse ist, wie im Protokoll angezeigt, während pppd call gprs ausgeführt wird.Ich bin mit 3G/4G-Konnektivität nicht vertraut genug, um zu wissen, ob dies ein häufiges Problem ist, aber im Fall des Hologram-Dienstes müssen wir Tunneling für den Zugriff über SSH (oder einen anderen Port/Dienst) einrichten.Dies kann über das SpaceBrige-Programm oder die Befehlszeile erfolgen, da Sie beide Methoden auf der entsprechenden Seite der Hologram-Website finden.Ich habe in diesem Fall das SpaceBridge-Programm verwendet.Sie können den Client für Windows, Linux oder Mac OS herunterladen.Folgendes musste ich in Ubuntu 16.04 tun:Jetzt müssen Sie Tunneling für Ihr Gerät im Hologramm-Dashboard aktivieren und Ihren Hologramm-API-Schlüssel abrufen, den Sie generieren und von Ihrem Konto kopieren können.Klicken Sie auf OK, wählen Sie Ihr(e) Gerät(e) aus, geben Sie Ihren Geräteport (z. B. 22 für SSH) und den lokalen Port auf dem Computer ein, um über 3G remote auf Ihren Raspberry Pi zuzugreifen. Klicken Sie auf Fertig, und innerhalb weniger Sekunden sollte der Tunnel aktiv sein und läuft.Ich konnte den Raspberry Pi endlich über SSH mit dem folgenden Befehl verbinden:Ich könnte auch die GPS-Koordinaten von dort mit dem cgps-Client abrufen.Wenn Sie die Verbindung beenden möchten, die manuell mit pppd call gprs gestartet wurde, suchen Sie die PID und beenden Sie sie:In Ihrem aktuellen Projekt möchten Sie die Verbindung mit initd-Skripten oder systemd steuern.Ich möchte mich bei Venus Supply / ThaiEasyElec für die Zusendung des Produkts zur Überprüfung bedanken, es hat Spaß gemacht, es auszuprobieren.Wenn Sie interessiert sind, können Sie das Board für 2350 THB (ca ).Jean-Luc startete CNX Software im Jahr 2010 als Teilzeitbeschäftigung, bevor er seinen Job als Software Engineering Manager kündigte und später im Jahr 2011 anfing, tägliche Nachrichten und Rezensionen in Vollzeit zu schreiben.Unterstützen Sie CNX-Software!Spende über Kryptowährungen oder werde Patron auf PatreonIch habe nie verstanden, wer diese Abschirmungen kaufen würde, wenn 3G-USB-Dongles für <20 $ gehenGPS und 3G sind beide in Innenräumen „Hit or Miss“.Wenn es heute funktioniert, kann es morgen nicht mehr funktionieren.Wolken, Nebel oder Sonnenflecken reichen oft aus, um das Signal zu stören.@ jqpabc123 Ich war mir über den Grund nicht sicher.Ich konnte sehen, wie die Satellitenliste für ein paar Sekunden auftauchte und dann verschwand.Das Wetter war gut, aber wie auch immer, das Versetzen der Antenne an einen besseren Ort hat das Problem behoben.3G ist hier normalerweise kein Thema.Vielleicht hilft es auch, dass die Basisstation 100 Meter entfernt ist und wir hier keine hohen Gebäude haben.3G-Probleme werden davon beeinflusst, welches Spektrum verwendet wird.Hier in Großbritannien, obwohl ich 6 Meilen von einer größeren Stadt entfernt bin und einen Mobilfunkmast vor Ort habe, bin ich in einem toten Punkt für den 3G-Empfang in Innenräumen von Three, dem Mobilfunkunternehmen.Die von Drei verwendete Frequenz hat eine schlechte Gebäudedurchdringung.Ich muss das Smartphone auf der Fensterbank, auf einer Seite des Hauses lassen oder das Heim-Breitband per WLAN nutzen, um über den Mobilfunkdienst anzurufen.@Jm Vergiss den Dongle und das Schild.Was für den Indoor-Einsatz wirklich benötigt wird, ist ein WLAN-Hotspot mit 3G und GPS.Auf diese Weise kann das Gerät selbst bei Bedarf in der Nähe eines Fensters platziert werden, wo es tatsächlich funktionieren *kann*.In Ihrem letzten Code-Screenshot:Ich erhalte Transaktionen ähnlicher Größe, wenn ich gerade eine PPP-Sitzung öffne, 8-10 Bytes Text sende und sie schließe.Ist das typisch?@davef Ich habe es noch einmal versucht.Stellen Sie einfach eine Verbindung her, pingen Sie google.com 8 Mal an (7 Mal empfangen) und trennen Sie dann die Verbindung.Dann verbinden, SSH und trennen.Wenn Sie also nur ein paar Bytes über eine sichere Verbindung senden, ist dies möglicherweise typisch.Manchmal kann ich für eine Verbindungszeit von 20 Sekunden bis zu 100.000 senden und empfangen.Soweit ich gelesen habe, ist WireShark nicht in der Lage, den gesamten Datenverkehr zu erfassen.Ich tappe also im Dunkeln darüber, wohin all die Daten gehen.@davef Wenn Sie mehr als das bekommen, verbinden sich vielleicht andere Prozesse wie apt oder verwandte mit dem Netz.Verwenden Sie möglicherweise nethogs, um herauszufinden, ob ein anderer Prozess Daten überträgt.@Jean-Luc Aufranc (CNXSoft) Hallo, vielleicht möchten Sie auch das Rasterquadrat unkenntlich machen.Mit einem einfachen QTH-Locator wie dem untenstehenden kann man seine ca.Standort mit Rasterquadrat.http://qthlocator.free.fr/@sky770 (alias TheOldMonk) Danke.Ich wusste nicht, was das bedeutete, ich hätte es nachschlagen sollen.Der Platz ist aber groß genug, vielleicht etwa 20×10 km.Google Map macht sich nicht die Mühe, den Maßstab anzuzeigen.Ich versuche, das Modul zu kaufen, aber ich finde es nicht.Wo kann ich es kaufen?Entschuldigung, sie haben die Links geändert und keine Weiterleitung verwendet.Aber ich habe das Produkt auf ihrer Website gefunden und die Links am Ende des Beitrags erneut aktualisiert.Ad Consent ändern Meine Daten nicht verkaufen