Sintomo
Viene calcolato un percorso per camion utilizzando Custom Feature Layers (CFL) che definiscono una rete di Trasporto Eccezionale (TE) categorizzata (ad esempio 1TE, 2TE48). I segmenti di questa rete TE riportano restrizioni di peso massimo da dati HERE (tramite PTV_TruckAttributes), ad esempio 19T, che confliggono con la tonnellaggio autorizzato TE (ad esempio fino a 44T).
Per consentire al veicolo di viaggiare sui segmenti TE nonostante queste restrizioni HERE, il peso del veicolo viene impostato a 1T nella richiesta:
json
"weight": {
"totalPermittedWeight": 1000,
"emptyWeight": 1000,
"loadWeight": 0
}
Questa soluzione temporanea permette al percorso di seguire la rete TE. Tuttavia, al di fuori della rete TE, il veicolo viene trattato come un veicolo leggero (1T) e ignora le reali restrizioni di peso sui segmenti non TE — ad esempio attraversando segmenti con limite di 3,5T senza che venga segnalata alcuna violazione.
Il comportamento atteso è:
- Le restrizioni di peso (e altezza) di HERE ignorate sui segmenti della rete TE
- Le restrizioni di peso (e altezza) di HERE applicate su tutti gli altri segmenti
Causa
Il peso del veicolo è un parametro globale in xRoute. Non può essere applicato in modo condizionale a seconda che un segmento appartenga o meno a una specifica rete CFL.
Impostare totalPermittedWeight a 1T per bypassare le restrizioni maxWeight di HERE sui segmenti TE disabilita tutte le restrizioni basate sul peso su tutto il percorso, inclusi i segmenti al di fuori della rete TE.
Tuttavia, questa soluzione temporanea non è necessaria. Quando una Custom Road Class è dichiarata come preferredRouteTypes nel profilo veicolo, le restrizioni PTV_TruckAttributes — incluse le restrizioni fisiche come maxWeight e maxHeight — sono già ignorate sui segmenti corrispondenti dal motore di routing. Rimangono attive solo le restrizioni di apertura/blocco.
Questo comportamento è progettato intenzionalmente ed è confermato dall'ingegneria PTV.
Risoluzione
Passo 1 – Assegnare una customRoadClass a tutti i segmenti della rete TE nel CFL (ad esempio CUSTOM_ROAD_CLASS_5). Questo è tipicamente già fatto nella configurazione CFL del cliente.
Passo 2 – Dichiarare questa classe stradale come preferredRouteTypes nel profilo veicolo della richiesta xRoute:
"vehicleProfile": {
"preferredRouteTypes": "CUSTOM_ROAD_CLASS_5",
"weight": {
"totalPermittedWeight": 44000,
"emptyWeight": 14500,
"loadWeight": 25500
}
}
Passo 3 – Impostare il peso reale del veicolo nella richiesta. La soluzione temporanea di 1T non è più necessaria.
Risultato:
- Sui segmenti CUSTOM_ROAD_CLASS_5 (rete TE): le restrizioni fisiche PTV_TruckAttributes (maxWeight, maxHeight) sono ignorate dal motore di routing.
- Al di fuori della rete TE: tutte le restrizioni HERE si applicano normalmente.
- La CFL personalizzata per l'altezza (CFL_Hauteur) rimane attiva indipendentemente su tutti i segmenti.
Il problema è risolto quando il percorso segue correttamente la rete TE utilizzando il peso reale del veicolo, senza generare false violazioni al di fuori della rete TE.
Nota — unrestrictedRouteTypes non è adatto per questo caso d'uso
unrestrictedRouteTypes ignora anch'esso tutte le restrizioni PTV_TruckAttributes sui segmenti corrispondenti, ma senza la possibilità di filtrare per tipo di proprietà. Le restrizioni di altezza di HERE sarebbero anch'esse ignorate, il che non è accettabile se il cliente usa una CFL personalizzata CFL_Hauteur per gestire indipendentemente i vincoli di altezza di ponti/gallerie. preferredRouteTypes è il meccanismo corretto per questo caso d'uso.
Articoli correlati
PTV xServer 2: RouteNotFoundFault quando si utilizzano profili camion con PTV_TruckAttributes abilitati
PTV xServer 2: livello funzionale PTV_TruckAttributes: ruolo e requisito per il routing ADR
PTV xServer 2: Divergenza del percorso dopo modifica dei parametri veicolo (altezza, peso)
PTV xServer 2: Le violazioni di altezza scompaiono o il percorso cambia aggiungendo un punto di passaggio
Commenti
0 commenti
Questo articolo è chiuso ai commenti.