Suivi d’actifs en intérieur en temps réel : du tag RTLS au marqueur en direct sur votre plan
Afficher des positions RTLS, BLE, UWB ou Wi‑Fi sur un plan intérieur en direct : choisir la techno, écrire dans une table, cartographier, rejouer.


Ce que couvre ce guide
Quelle technologie de tag ?
Partez de la question, pas de la radio. « Dans quelle salle est le vidéoprojecteur ? », « Où est exactement le chariot dans cette allée ? » et « Ce chariot est‑il passé par la porte du quai ? » sont trois questions différentes, et chaque technologie répond bien à l’une d’elles. Spatial Map ne dépend pas de votre choix : il lui faut un identifiant et une position (ou un point de lecture) par ligne.
| Technologie | Ce qu’elle vous dit | Granularité habituelle | Ce que vous installez | Bien adaptée à |
|---|---|---|---|---|
| Tags BLE + passerelles | Où se trouve un tag, à peu près — en général quelle salle ou zone | Salle ou zone, jusqu’à quelques mètres ; dépend de la densité des passerelles et du bâtiment | Tags sur pile, passerelles ou récepteurs BLE | Outils, chariots, équipements portables, badges du personnel |
| UWB | Une position x/y précise (souvent z aussi) | Moins d’un mètre possible avec des ancres denses et soigneusement relevées | Ancres alimentées, relevé du site, tags | Chariots élévateurs, manutention robotisée, équipements où chaque mètre compte |
| RFID UHF passive | Qu’un tag est passé par un point de lecture | Présence à un portique, une porte, un ascenseur ou une étagère — pas une trajectoire continue | Lecteurs fixes et antennes aux points de passage, étiquettes bon marché | Palettes, bacs, consommables, inventaire aux portes et portiques |
| Localisation Wi‑Fi | Où se trouve un appareil Wi‑Fi, d’après votre réseau sans fil | Quelques mètres, très variable selon l’implantation des points d’accès | Points d’accès existants et un moteur de localisation | Ordinateurs portables, tablettes, tags Wi‑Fi déjà en place |
La RFID fonctionne autrement que les trois autres : au lieu d’un point qui bouge, vous obtenez des lectures sur des lecteurs fixes. Notre démo Retail Mart illustre ce cas — 85 lecteurs aux portiques, ascenseurs et escalators, dessinés comme des zones pulsantes. Voir intégrer des lecteurs RFID à un plan intérieur.
Câbler la chaîne de données
Spatial Map n’est pas un moteur de positionnement et ne parle jamais aux tags ni aux ancres. Le moteur que vous exploitez calcule les positions ; un petit relais — un script, une fonction serverless ou votre middleware d’intégration — transforme son flux en lignes de table. Il n’y a ni webhook, ni stream, ni ingestion WebSocket à configurer dans l’application : l’API d’écriture des tables est la voie d’entrée.
- 1Créer la table
Dans Tables, créez une table de type Asset (mobile) avec les champs dont vos marqueurs et infobulles ont besoin. Par exemple : asset_tag, asset_name, asset_type, status, location, battery_pct, last_seen, lat, lng et elevation_m, plus status_color si votre relais choisit la couleur. Voir Tables.
- 2Créer une clé
Dans l’onglet API & access de la table, cliquez sur Create key. La clé commence par sgv_tbl_, ne s’affiche qu’une fois et ne peut écrire que dans cette table — donnez une clé à chaque système pour pouvoir en révoquer une sans casser les autres. Copiez l’URL de base exacte et les exemples curl depuis ce même onglet.
- 3Convertir en latitude / longitude
La plupart des moteurs renvoient x/y en mètres dans un repère local. Convertissez en WGS84 avant l’envoi (une transformation affine à partir de deux ou trois points relevés) et envoyez la hauteur en mètres (elevation_m) pour que le marqueur soit au bon niveau en 3D.
- 4Regrouper et envoyer
Toutes les quelques secondes, envoyez les tags qui ont bougé ou changé de statut en un seul POST /rows/bulk — jusqu’à 1 000 lignes dans une transaction. Les lignes invalides reviennent dans errors[] tandis que les valides sont enregistrées ; un champ obligatoire manquant ou une valeur unique en double est refusé.
- 5Patcher plutôt qu’écraser
POST remplace tout le contenu de la ligne. Si la table contient des données que votre moteur ignore (nom de l’équipement, service responsable), créez chaque ligne une fois puis envoyez les positions avec PATCH /rows/bulk, qui ne fusionne que les champs envoyés.
# 1) Create or replace rows (full payload) — once per asset,
# or whenever its master data changes
curl -X POST https://app.spatialmap.io/api/v1/public/tables/rows/bulk \
-H "Authorization: Bearer $SPATIALMAP_TABLE_KEY" \
-H "Content-Type: application/json" \
-d '{"rows":[
{"entityKey":"EQ-0103","payload":{"asset_tag":"EQ-0103","asset_name":"Pallet jack 03",
"asset_type":"Pallet jack","status":"In use","location":"Dock 2","battery_pct":76,
"lat":42.4637,"lng":-5.8802,"elevation_m":0.9,"status_color":"#2563eb",
"last_seen":"2026-10-11T16:28:03Z"}},
{"entityKey":"EQ-0149","payload":{"asset_tag":"EQ-0149","asset_name":"Torque wrench 02",
"asset_type":"Tool","status":"Available","location":"Tool crib",
"lat":42.46345,"lng":-5.88047,"elevation_m":0.9,"status_color":"#16a34a",
"last_seen":"2026-10-11T16:28:01Z"}}
]}'
# 2) Every few seconds: patch only the tags that moved or changed
curl -X PATCH https://app.spatialmap.io/api/v1/public/tables/rows/bulk \
-H "Authorization: Bearer $SPATIALMAP_TABLE_KEY" \
-H "Content-Type: application/json" \
-d '{"rows":[
{"entityKey":"EQ-0103","patch":{"lat":42.46336,"lng":-5.88014,"location":"Dock 4",
"last_seen":"2026-10-11T16:28:09Z"}}
]}'Ensuite : chaque écriture est enregistrée, ajoutée à l’historique de la ligne et signalée à toutes les cartes ouvertes, qui rechargent aussitôt cette couche ; un rafraîchissement toutes les 30 secondes sert de filet de sécurité. De bout en bout, le marqueur suit l’actif réel avec le délai de votre moteur plus votre intervalle d’envoi. Quelques secondes, c’est réaliste ; le suivi sous la seconde n’est pas l’objet de cette chaîne.
Transformer les lignes en marqueurs mobiles
Un data link décide comment les lignes d’une table apparaissent sur un site. Pour le suivi, le mode est Live location marker : chaque ligne devient un marqueur à sa propre latitude et longitude. Une configuration de suivi type en a deux, un par table :
- Equipment lit une table Equipment de type Asset (mobile) — outils, chariots, transpalettes, matériel de test, tout ce qui porte un tag. lng/lat placent le marqueur, elevation_m le surélève, asset_name l’étiquette et une icône le signale comme équipement ; la couleur vient d’un champ comme status_color ou de règles de style sur un statut comme Available, In use ou Maintenance.
- Staff lit une table Staff du même type, avec l’identifiant du badge comme clé. Même mode avec une icône de personne, le nom de la personne en étiquette et une couleur par rôle ou par statut.


Connect fields sert à pointer le lien vers vos propres noms de colonnes — inutile qu’elles s’appellent lat et lng (mise en correspondance des champs). La couleur peut venir directement d’un champ comme status_color, ou de règles de style qui associent des couleurs à des valeurs comme In use ou Maintenance. L’étape Map tooltip choisit ce qui s’affiche au survol ou au clic ; un lien d’équipements peut montrer étiquette, type, statut, emplacement, batterie et dernière détection.
Étages : un lien peut afficher ses enregistrements sur tous les étages, sur certains étages, ou sur l’étage indiqué dans chaque enregistrement. Si votre moteur remonte un niveau comme « Level 1 », envoyez‑le comme champ et choisissez From record dans la portée des étages ; chaque marqueur n’apparaît alors que sur son étage.
Ce que les gens voient sur la carte
Dans la visionneuse ou via un lien de partage, les deux couches reposent sur le plan 3D avec le reste du site. Le panneau Layers liste les couches de données à côté des zones, escaliers, racks et plans : un chef d’équipe peut masquer les badges du personnel pour ne voir que les équipements, ou désactiver une couche entière (panneau des couches).
Des couches de tags BLE comme celles‑ci tournent sur plusieurs sites de l’espace de démonstration : outils et équipes dans l’atelier de Summit Assembly Plant, chariots élévateurs et équipes à quai à Eastport Cross‑Dock Freight Hub, outils et équipements salle par salle à Northgate Electronics, et personnel, visiteurs et équipements par zone à Harborview Corporate Campus, où le registre des actifs et le prêt d’équipements partagent la même carte de trois étages.


Cliquez sur un marqueur pour ouvrir le panneau de détail : toutes les propriétés de la ligne — étiquette, statut, emplacement, batterie, dernière détection, coordonnées — et, en dessous, une section History avec la chronologie des changements de cette ligne.
Où est‑il passé ? Historique et relecture
Chaque écriture via l’API est conservée comme un événement avec un instantané complet de la ligne. Cela donne deux façons de regarder en arrière, décrites dans historique et relecture des tables :
- Par actif — la section History du panneau liste chaque création, modification et suppression de la ligne, de la plus récente à la plus ancienne, avec les champs modifiés. Elle répond à « quand le transpalette 03 est‑il passé en Maintenance, et où était‑il alors ? ».
- Toute la couche — ajoutez un second data link sur la même table en mode Historical movement. Tant qu’il est visible, un History player apparaît en bas de la carte : choisissez une fenêtre (1h, 24h, 7d ou 30d), lancez la lecture ou faites glisser le curseur, et chaque marqueur saute là où se trouvait son actif à cet instant. La vitesse est exprimée en temps d’historique par seconde de lecture, de 15s/s à 30m/s.
Ce qui casse en premier
Pour aller plus loin
Pour le volet gestion des actifs de cette histoire — un registre des actifs, le prêt d’équipements et des équipements localisés sur une même carte — consultez la solution de gestion des actifs et la vitrine Harborview Corporate Campus ; pour des outils et des équipes en atelier, Summit Assembly Plant, et pour des chariots élévateurs et des équipes à quai, Eastport Cross‑Dock Freight Hub. La documentation couvre chaque brique : data links, l’API d’écriture des tables et le tutoriel suivre le personnel et les équipements avec des marqueurs en direct, qui construit cette même chaîne à partir d’une table vide, étape par étape.
Essayez la plateforme que méritent vos données.
Spatial Map transforme les tableurs, les capteurs et les plans CAO en une vue 3D en direct de vos sites — rien à installer, essai gratuit de sept jours.
À voir en direct
- RFID Loss Prevention & Anti-Theft Map
- Indoor Asset Management Map & Equipment Tracking
- Cross-Dock & Yard Management Map in Live 3D
- Manufacturing Digital Twin & Plant Floor Map
- Harborview Corporate Campus — Building A
- Ridgeline Data Center
- Westbrook University — Science Building
- Eastport Cross-Dock Freight Hub
- Summit Assembly Plant
- Production Museum
À lire ensuite
- Cas d’usageL’exploitation d’un terminal sur une carte en direct : étiquettes bagages RFID, files et portesUn terminal fonctionne par passages de relais : de l’enregistrement à la sûreté, de la porte au tapis à bagages. Chaque relais a lieu quelque part, donc chacun a sa place sur une carte. Voici comment notre démo Silverbay Terminal 2 réunit étiquettes bagages, files, portes et affluence dans une vue live à deux niveaux.
- Cas d’usageCross-dock et cour à remorques sur une carte en direct : quais, remorques et portailsUn cross-dock vit au rythme des créneaux : quelle porte tourne, quelle remorque attend depuis trop longtemps dans la cour, quel couloir d’entrée sature. Mettre le bâtiment et la cour sur une même carte en direct rend ces réponses visibles d’un coup d’œil. Voici comment, avec notre démo Eastport Cross-Dock Freight Hub.
- Cas d’usageEntrepôt froid pharmaceutique et contrôle qualité sur une carte en directUn identifiant de sonde, un numéro de porte ou un identifiant d’échantillon ne deviennent utiles que lorsqu’on voit à quelle chambre, quel quai ou quel rack ils appartiennent. Voici comment un entrepôt froid pharmaceutique et sa zone de contrôle qualité tiennent sur une seule carte en direct, avec notre démo Polar Pharma sur deux niveaux comme exemple.