Analyse approfondieAMRAGVrobotics

Navigation AMR / AGV et plan de votre site : ce que Spatial Map apporte à une équipe robotique (et ce qu’il n’apporte pas)

Spatial Map n’est pas un gestionnaire de flotte : géométrie du site en GeoJSON, test d’itinéraire depuis murs, portes et racks, positions des robots en direct.

9 min de lecturePublié Mis à jour Par Spatial Map team
Entrepôt de démonstration Acme Warehouse en 3D : racks, allées de chariots, quais et marqueurs d’opérateurs — les murs, portes et racks à partir desquels un itinéraire est calculé

Ce que la carte peut faire — ou non — pour une flotte

Comment Spatial Map calcule vraiment un itinéraire

Il n’y a pas de graphe de nœuds et d’arêtes entretenu à la main. Quand vous demandez un itinéraire, Spatial Map pose une grille de cellules de 25 cm sur l’étage courant et marque chaque cellule libre ou bloquée selon ce qui y est dessiné. Le sol libre — pièces, zones et allées dessinées comme zones — est praticable. Les lignes et les murs bloquent, selon leur épaisseur. Chaque porte ouvre un passage dans le mur qui la porte. Chaque cellule de rack est un obstacle. Murs et racks reçoivent une marge d’environ 0,3 m : un passage de moins de 0,6 m environ compte comme fermé. A* trouve ensuite le chemin libre le plus court, redressé et centré dans chaque allée.

Plan du site → grille praticable → chemin A*Le sol libre est praticable, murs et cellules de racks bloquent, les portes ouvrent des passages ; A* trouve le plus court chemin sur une grille de 25 cm.

Le calcul reste sur un étage. Escaliers, ascenseurs et escalators sont dessinés et étiquetés sur la carte, mais la recherche ne les emprunte pas et il n’existe pas d’option « privilégier les ascenseurs ». Un trajet multi-étages, ce sont deux itinéraires : jusqu’à l’ascenseur au premier étage, puis depuis le palier au suivant. Toutes les règles sont dans la documentation wayfinding.

Dessiner la géométrie une seule fois

Dans la démo Acme Warehouse, ce travail est déjà fait : 17 racks et 33 portes posés sur le plan calqué, si bien qu’un aperçu d’itinéraire de la réception à une face de préparation emprunte les allées de chariots entre les racks au lieu de les traverser. Pour votre propre site :

  1. 1
    Dessinez murs et allées en lignes

    Utilisez l’outil Aisle / Line (L) ou Magic walls (W), qui construit des murs autour des zones choisies. Les lignes sont des barrières pour le calcul, selon leur épaisseur. Un mur qui n’existe que dans l’image du plan ne bloque rien tant que vous ne l’avez pas dessiné.

  2. 2
    Posez les portes sur les murs

    L’outil Door (D) place une porte par ses deux montants sur un mur. Chaque porte ouvre un passage que l’itinéraire peut franchir ; une pièce sans porte sur son mur est inaccessible.

  3. 3
    Dessinez les racks avec l’outil Rack

    Appuyez sur G. Chaque cellule de rack est un obstacle : les itinéraires passent par les allées entre les racks.

  4. 4
    Dessinez pièces et zones en zones

    Utilisez l’outil Area (P). Les zones sont de la surface au sol, pas des barrières. Vous pouvez leur donner un rôle (Zone, Office, Storage…) pour l’étiquetage, mais les rôles ne changent pas le calcul : il n’existe pas de rôle « interdit » ou « réservé aux robots ».

  5. 5
    Vérifiez avec Route preview

    Appuyez sur N dans l’éditeur et cliquez un départ et une arrivée. « No path found » signifie généralement qu’une porte manque ou n’est pas sur son mur ; le panneau Directions affiche distance, temps de marche et étapes. Faites-le avant qu’une équipe robotique ne voie la carte.

Remettre la géométrie à la flotte

Spatial Map n’expose pas son calcul d’itinéraire par API, SDK ou connecteur de gestionnaire de flotte, et ne publie pas de graphe de navigation. Ce qu’il donne à une équipe robotique, c’est la géométrie source. Dans l’éditeur, l’export du menu Data ouvre Export shapes…, qui écrit le site en GeoJSON (une FeatureCollection avec le type de chaque élément dans properties.kind et sa géométrie complète), JSON, Excel ou CSV — tout, les types choisis (lignes et murs, portes, racks, zones, escaliers…) ou seulement la sélection.

json·Extrait d’un fichier GeoJSON Export shapes… (valeurs indicatives, champs de configuration omis)
{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "geometry": { "type": "LineString", "coordinates": [[-81.70061, 41.50012], [-81.70002, 41.50013]] },
      "properties": { "id": 412, "kind": "line", "name": "North wall", "floorPlanId": 48, "rotation": 0 }
    },
    {
      "type": "Feature",
      "geometry": { "type": "LineString", "coordinates": [[-81.70041, 41.50012], [-81.70037, 41.50012]] },
      "properties": { "id": 88, "kind": "door", "name": "Dock door 3", "floorPlanId": 48, "rotation": 0 }
    }
  ]
}

Montrer la flotte sur la carte — supervision, pas pilotage

Là où Spatial Map aide au quotidien, c’est la visibilité. Si votre gestionnaire de flotte ou votre middleware peut indiquer où se trouve chaque robot, la carte peut l’afficher à côté des racks, des personnes et du stock qu’elle montre déjà :

  1. 1
    Créez une table pour la flotte

    Dans Tables, créez une table comme « Forklifts » ou « AMRs » et choisissez Asset (mobile). Elle démarre avec les colonnes standard — un code externe, la longitude et la latitude — et vous ajoutez batterie, état ou mission (tables).

  2. 2
    Alimentez-la en positions

    Poussez des lignes depuis votre middleware avec l’API d’écriture de la table — un jeton par table, des upserts groupés jusqu’à 1 000 lignes par appel, 60 requêtes par minute et par jeton par défaut — ou laissez la table interroger un point d’accès REST à intervalle régulier (le collecteur passe environ une fois par minute). C’est une visibilité quasi temps réel, pas une boucle de commande.

  3. 3
    Liez-la au site

    Ajoutez un lien de données en Live location marker pour placer chaque robot à ses coordonnées, en Movement trails pour tracer ses trajets récents, ou en Historical movement pour rejouer l’historique de la table avec un lecteur en bas de la carte (liens de données).

  4. 4
    Faites des rapports sur le travail

    Journalisez aussi les missions dans une table. La démo Acme Warehouse tient un journal Pick Events avec un chariot sur chaque événement, et son rapport Forklift Utilization en tire un anneau des trajets par chariot ; le même assistant fonctionne pour des missions de robots.

Créer une table d’actifs mobiles
Écran Create new table d’Acme Corp : champ de nom avec l’exemple e.g. Forklifts, Cameras, Shipments, les types Polygon / area, Circle, Marker / POI, Asset (mobile), Camera, Sensor, Shipment, RFID tag et Streaming / batch replay, et les champs de départ External code et Longitude
Écran Create new table d’Acme Corp : champ de nom avec l’exemple e.g. Forklifts, Cameras, Shipments, les types Polygon / area, Circle, Marker / POI, Asset (mobile), Camera, Sensor, Shipment, RFID tag et Streaming / batch replay, et les champs de départ External code et Longitude

À quoi s’attendre

25 cm
Taille de cellule de la grille
≈ 0,3 m
Marge autour des murs et des racks
1 étage
Par itinéraire — escaliers et ascenseurs exclus
GeoJSON
Export de géométrie pour la robotique

Pour le côté humain de ce même calcul — le bouton Navigate du visualiseur, les temps de marche, les étapes pas à pas — lisez le guidage intérieur pas à pas. Pour l’exploitation autour des robots, voir Spatial Map pour les entrepôts.

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

À lire ensuite