Heim >Web-Frontend >js-Tutorial >GPS -Daten mit dem Tessel 2 verfolgen

GPS -Daten mit dem Tessel 2 verfolgen

Christopher Nolan
Christopher NolanOriginal
2025-02-17 12:02:09660Durchsuche

GPS-Tracking mit Tessel 2 und GPS-Modulen: Ein Echtzeit-Positionierungsprojekt basierend auf JavaScript

Tracking GPS data with the Tessel 2

Tracking GPS data with the Tessel 2

In diesem Artikel wird ein Echtzeit-GPS-Tracking-System mit dem Tessel 2-Mikrocontroller und seinem GPS-Modul erstellt. Tessel 2 unterstützt die JavaScript -Programmierung und kann seine Funktionalität durch verschiedene Module erweitern. Wir lernen, wie Sie GPS-Module anschließen, JavaScript-Code auf Tessel 2-Side schreiben, um GPS-Daten zu verarbeiten und einen Node.JS-Server und die Front-End-Google Maps-Integration zu erstellen, um die Visualisierung von Standort-Standorten in Echtzeit zu erreichen.

1 Verbinden Sie das GPS -Modul mit dem A -Port von Tessel 2 (in der Nähe des USB -Leistungsanschlusss). Stellen Sie sicher, dass der GND -Pin mit dem GND -Pin von Tessel 2 verbunden ist.

2. Softwarezubereitung

  1. Erstellen Sie ein Projekt:

    Erstellen Sie einen Ordner mit dem Namen "GPS" im Terminal, geben Sie den Ordner ein und führen Sie aus, um das neue Projekt zu initialisieren. t2 init

  2. Installieren des GPS -Moduls:

    Verwenden Sie NPM, um das GPS -Modul zu installieren: (Passen Sie den Modulnamen gemäß Ihrem GPS -Modulmodell an). Wenn Sie auf einen Fehler stoßen, der nicht vom Befehl gefunden wird, installieren Sie ihn bitte zuerst global: npm install gps-a2235h. pakmanager npm install pakmanager -g

3.

Der folgende Code implementiert die GPS -Datenerfassung und sendet ihn über WebSocket an den Server:

iv.

Der folgende Code erstellt einen WebSocket -Server, empfängt GPS -Daten, die von Tessel 2 gesendet werden und an alle verbundenen Clients übertragen werden:
<code class="language-javascript">var tessel = require("tessel"),
gpsLib = require("gps-a2235h"),
gps = gpsLib.use(tessel.port["A"]),
WebSocket = require('ws'),
ws = new WebSocket('ws://[您的服务器IP地址]:5000'), // 将[您的服务器IP地址]替换为您的服务器IP
latestCoords;

gps.setCoordinateFormat({'format': 'deg-dec'});

gps.on('ready', function() {
console.log('GPS模块正在搜索卫星...');

gps.on('coordinates', function(coords) {
console.log('纬度:', coords.lat, '\t经度:', coords.lon, '\t时间戳:', coords.timestamp);
latestCoords = coords.lat + ',' + coords.lon;
});

gps.on('fix', function(data) {
console.log(data.numSat, '颗卫星已锁定.');
});

gps.on('dropped', function(){
console.log('GPS信号已中断');
});
});

gps.on('error', function(err){
console.log('GPS错误: ', err);
});

ws.on('open', function() {
setInterval(function() {
if (latestCoords !== undefined) {
console.log('尝试发送坐标: ' + latestCoords);
ws.send(latestCoords);
} else {
console.log('未收到坐标数据');
}
}, 10000);
});</code>

5. Front-End Google Maps Integration

Google Maps API und JavaScript-Code in der Datei
<code class="language-javascript">var http = require('http'),
express = require('express'),
app = express(),
bodyParser = require('body-parser'),
server = require('http').Server(app),
WebSocketServer = require('ws').Server,
wss = new WebSocketServer({server: server}),
port = process.env.PORT || 5000;

app.use(bodyParser.json());
app.use(express.static(__dirname + '/public'));

wss.on('connection', function connection(ws) {
ws.on('message', function incoming(message) {
console.log('收到消息: %s', message);
wss.clients.forEach(function each(client) {
if (client !== ws && client.readyState === WebSocket.OPEN) {
client.send(message);
}
});
});
});

server.listen(port, function() {
console.log('服务器监听端口 ' + port);
});</code>
hinzufügen, um Echtzeit-Standortinformationen und Wärmekarten anzuzeigen. (Der detaillierte API -Code von Google Maps wird hier weggelassen. Weitere Informationen finden Sie im Originaltext oder den zugehörigen Tutorials.)

vi

node.js Server ausführen: public/index.html

Tessel 2 Code ausführen:

Öffnen Sie den Browser, um
    zu besuchen, um Echtzeit-GPS-Tracking-Ergebnisse anzuzeigen.
  1. node index.js
  2. 7. t2 run index.js Am Ende dieses Artikels stellen wir FAQs für GPS-Datenverfolgung mithilfe von node.js bereit, einschließlich der Verwendung von GPS-Modulen, Erstellen von Standorten-bewussten Anwendungen, Verfolgung in Echtzeit mit Socket.io und Verfolgung in GPS mit Tessel 2.
  3. http://[您的服务器IP地址]:5000
Beachten Sie, dass Sie den Platzhalter "[Ihre Server -IP -Adresse]" im Code an Ihre tatsächliche Server -IP -Adresse ersetzen müssen und den Google Maps -API -Schlüssel erhalten. Stellen Sie sicher, dass Tessel 2 und der Server mit demselben Netzwerk verbunden sind.

Das obige ist der detaillierte Inhalt vonGPS -Daten mit dem Tessel 2 verfolgen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn