Rumah >hujung hadapan web >tutorial js >Mengesan data GPS dengan Tessel 2

Mengesan data GPS dengan Tessel 2

Christopher Nolan
Christopher Nolanasal
2025-02-17 12:02:09660semak imbas

Penjejakan GPS Menggunakan modul Tessel 2 dan GPS: Projek kedudukan masa nyata berdasarkan JavaScript

Tracking GPS data with the Tessel 2

Tracking GPS data with the Tessel 2 Artikel ini memperkenalkan cara membina sistem penjejakan GPS masa nyata menggunakan mikrokontroler Tessel 2 dan modul GPSnya. Tessel 2 menyokong pengaturcaraan JavaScript dan boleh melanjutkan fungsinya melalui pelbagai modul. Kami akan belajar bagaimana untuk menyambungkan modul GPS, menulis kod JavaScript di Tessel 2-side untuk memproses data GPS, dan membina pelayan Node.js dan integrasi Peta Google front-end untuk mencapai visualisasi lokasi masa nyata.

1

Sambungkan modul GPS ke pelabuhan Tessel 2 (berhampiran penyambung kuasa USB). Pastikan pin GND disambungkan ke pin GND Tessel 2.

2. Penyediaan perisian

Buat projek:
    Buat folder bernama "GPS" di terminal, masukkan folder, dan jalankan
  1. untuk memulakan projek baru.

    t2 init

    Memasang modul GPS:
  2. Gunakan NPM untuk memasang modul GPS:
  3. (laraskan nama modul mengikut model modul GPS anda). Jika anda menghadapi ralat yang tidak dijumpai oleh arahan

    , sila pasangkannya secara global terlebih dahulu: . npm install gps-a2235h pakmanager npm install pakmanager -g

    3.
  4. kod berikut melaksanakan pengambilalihan data GPS dan menghantarnya ke pelayan melalui WebSocket:

iv.

Kod berikut membina pelayan WebSocket, menerima data GPS yang dihantar oleh Tessel 2 dan menyiarkannya kepada semua pelanggan yang disambungkan:

<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

Tambah kod API Peta Google dan JavaScript dalam fail

untuk memaparkan maklumat lokasi masa nyata dan peta haba. (Kod API Google Maps terperinci ditinggalkan di sini, sila rujuk teks asal atau tutorial yang berkaitan.)

<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>

vi Run node.js Server: Jalankan Tessel 2 Code:

public/index.html

Buka pelayar untuk melawat

untuk melihat hasil penjejakan GPS masa nyata.

    7.
  1. Pada akhir artikel ini, kami menyediakan Soalan Lazim mengenai pengesanan data GPS menggunakan node.js, termasuk cara menggunakan modul GPS, membina aplikasi yang menyedari lokasi, menjejaki dalam masa nyata dengan socket.io, dan penjejakan dalam GPS dengan TESSEL dengan TESSEL dengan TESSEL dengan TESSEL dengan TESSEL 2. node index.js
  2. t2 run index.js Perhatikan bahawa anda perlu menggantikan pemegang tempat "[alamat IP pelayan anda]" dalam kod ke alamat IP pelayan sebenar anda, serta mendapatkan kunci API Peta Google. Pastikan Tessel 2 dan pelayan disambungkan ke rangkaian yang sama.

Atas ialah kandungan terperinci Mengesan data GPS dengan Tessel 2. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn