Link, velocità e traffico
I percorsi dicono dove un veicolo può muoversi. Link, versi di percorrenza, velocità e zone di traffico dicono come: quali tragitti segue, a che velocità e quando deve attendere gli altri.
Come i veicoli scelgono il tragitto
Il router non inventa mai un passaggio che il layout non consente. Lavora in una di due modalità, decise dal layout stesso:
- Nessun link nel layout: i veicoli si muovono direttamente lungo i percorsi collegati, rispettando il verso di ciascuno. È il modo più rapido per iniziare.
- Almeno un link: i veicoli si muovono solo lungo catene di link, da stazione a stazione. Tra le catene possibili il router sceglie la più rapida per tempo di percorrenza nominale.
Un trasporto richiede solo un tragitto consentito dal prelievo al deposito; per accettarlo non serve un percorso di ritorno. Dopo lo scarico, l'ordine successivo viene pianificato dalla posizione effettiva del veicolo.
Con i link un veicolo deve anche raggiungere i prelievi dal caricabatterie o parking di partenza e tornare dai depositi a un caricabatterie o parking. Se nessuna catena di link lo consente, gli ordini restano in coda con il motivo Nessun AGV può raggiungere il prelievo, oppure il veicolo segnala Rientro impossibile.
Link
Con lo strumento Link (8) clicca la stazione di origine, poi quella di destinazione. L'app cerca tra le due la sequenza di percorsi consentita più corta in millimetri e crea il link. Se esiste già un link con la stessa origine e destinazione, viene selezionato quello.
Le proprietà del link mostrano:
- Nome, Origine e Destinazione;
- Velocità link (cm/s), oppure Usa velocità predefinita;
- Zone richieste libere (vedi Condizioni di zona sui link);
- Sequenza calcolata: gli ID dei percorsi seguiti dal link. Clicca un ID per selezionare quel percorso;
- Ricalcola percorso, Crea ritorno ed Elimina.
I link sono a senso unico. Per il ritorno premi Crea ritorno: i link di ritorno non vengono mai creati automaticamente.
Percorsi a senso unico
Ogni percorso ha un Verso di percorrenza: entrambi i sensi, da A a B oppure da B ad A. Le frecce sul percorso selezionato lo mostrano. Gli anelli a senso unico sono il modo più semplice per evitare incontri frontali.
Il router rispetta il verso quando crea i link. Se cambi un verso in seguito, i link esistenti che ora vanno in senso contrario diventano non percorribili ma non vengono cancellati: seleziona il link e premi Ricalcola percorso per ricalcolarne la sequenza.
Velocità e moto
Ogni flotta ha le sue velocità e rampe, nella sua scheda in Simula → Veicoli: una nuova flotta parte da 80 cm/s sui rettilinei, 40 cm/s in curva, accelerazione 40 cm/s² e decelerazione 60 cm/s². Le velocità del layout hanno la precedenza:
| Tratto | Velocità usata |
|---|---|
| Percorso rettilineo | La velocità del percorso, altrimenti quella del link, altrimenti la velocità sui rettilinei della flotta. |
| Curva o curva S | La velocità della curva, altrimenti la velocità in curva della flotta, anche se il link ha una velocità personalizzata. |
Lo stesso link può quindi attraversare tratti con velocità diverse. Ripristina tutte le velocità del layout, nel passo Flotta, rimuove in un'unica operazione annullabile tutte le velocità personalizzate di link e percorsi.
I veicoli accelerano progressivamente e frenano in anticipo prima di tratti più lenti, curve, soste e del limite dello spazio concesso dal controllo del traffico. Prima di invertire il senso di marcia, anche all'interno dello stesso link, il veicolo si ferma del tutto e poi riaccelera nel verso opposto. È un modello longitudinale semplice: niente dinamica di sterzata o aderenza.
Anticollisione locale
Ogni flotta ha un corpo rettangolare orientato nelle dimensioni reali e un margine configurabile su ciascun lato. La Distanza minima (1000 mm di default) resta un limite inferiore alle dimensioni protette. Le prenotazioni coprono l’area attraversata e lo spazio di frenata, con una griglia conservativa. Lo scanner attivo guarda solo nel senso di marcia: davanti in marcia avanti, dietro in retromarcia, con i range della flotta. Un AGV nel campo di stop fa frenare il mezzo e lo tiene fermo finché il campo si libera. Un AGV solo a fianco non attiva lo scanner. Durante uno stop scanner, la prenotazione termina al blocco che contiene il punto di arresto, mantenendo protetti ingombro e frenata; non occupa tratti successivi inutilizzati che potrebbero bloccare la svolta del mezzo davanti. Chi deve entrare in una zona esclusiva la prenota poco prima del bordo e chi la attende si ferma lì, così il disimpegno resta libero. I mezzi fermi conservano l’occupazione del corpo. Un mezzo che si ferma dove la mossa successiva inizia con una rotazione sul posto (un angolo tra due percorsi, un prelievo su un incrocio) tiene l’area spazzata da quella rotazione dal momento in cui prenota la fermata, così un mezzo in coda non può avvicinarsi al punto da bloccare entrambi. Dopo un deposito la mossa successiva non è ancora nota: la fermata tiene le rotazioni verso tutti i percorsi che passano per la stazione. Non è coperto un mezzo fermo inattivo in una stazione che poi riparte con una rotazione. Lo stesso vale per le inversioni di marcia a metà percorso: quando il percorso torna indietro su un tratto che corre vicino a quello appena fatto (per esempio una curva che si stacca quasi parallela), il mezzo tiene quel tratto da quando chi lo segue ne è ancora fuori, e solo se nessuno è tra lui e il punto di inversione. Chi segue attende lì, invece di chiudergli lo spazio in cui deve arretrare. Campi scanner nella barra disegna in 2D e 3D il campo di stop attivo di ogni AGV in marcia, rosso mentre frena. È un modello di campo protettivo, senza raggi o riflettività LiDAR; il CAD resta uno sfondo grafico.
L'anticollisione locale tiene separati i veicoli ma non organizza manovre. In un vicolo cieco o su percorsi contrapposti i veicoli possono bloccarsi a vicenda senza urtarsi. Quando tutti gli AGV con una missione aspettano gli altri da più di un minuto, i risultati mostrano Possibile stallo. Usa anelli a senso unico e zone esclusive per prevenirlo.
Per una prima stima di capacità puoi spegnere tutte queste regole nello Scenario: vedi Regole di traffico. Gli AGV allora si attraversano e attendono solo le stazioni occupate.
Zone di traffico esclusive
Una zona di traffico è un rettangolo (o un poligono, vedi sotto) che può essere occupato da un solo AGV alla volta. Usala su corridoi stretti, passaggi a corsia unica e incroci dove due veicoli non devono mai incontrarsi.
- Disegna la zona. Scegli Zona (9) e trascina un rettangolo sul collo di bottiglia, includendo gli imbocchi fino alle diramazioni dove i veicoli possono attendere senza ostruire l'uscita.
- Regolala. Con Seleziona o Edit clicca il bordo per selezionare la zona, trascina un angolo per ridimensionarla o l'interno per spostarla. I percorsi interni non si spostano mai. Puoi anche digitare X minimo, X massimo, Y minimo, Y massimo e il Nome zona nelle proprietà.
- Verificala. Le proprietà indicano quanti percorsi attraversano il rettangolo. Una zona che non intercetta percorsi mostra un avviso.
Zone poligonali. Quando un rettangolo non si adatta al collo di bottiglia, scegli Zona poligonale (0): clicca per aggiungere i vertici, poi clicca il primo vertice o premi Invio per chiudere la forma (Backspace toglie l'ultimo vertice, Esc annulla). La zona può essere concava, ma i suoi lati non possono incrociarsi. Mentre posizioni o trascini un vertice, questo si allinea automaticamente ai vertici della stessa zona e di ogni altra zona (angoli dei rettangoli compresi) che stanno sulla sua stessa retta orizzontale o verticale: una linea tratteggiata temporanea mostra con cosa si è allineato, così la forma resta regolare. Con Seleziona o Edit trascina un vertice per rimodellare la zona, oppure modifica l'elenco dei vertici nelle proprietà, aggiungi un vertice (divide il lato più lungo) o rimuovine uno (ne restano almeno 3). Un poligono si comporta come una zona rettangolare per traffico, condizioni dei link e prenotazioni degli operatori, e conta solo la sua forma: un veicolo in un'insenatura che non la tocca non la occupa.
Come funziona una zona durante la simulazione:
- Una zona è occupata solo da un veicolo che ci entra: dal momento in cui la prenota poco prima del bordo (a una distanza pari al suo raggio più un piccolo spazio per la rotazione) finché il suo ingombro, cioè le dimensioni della flotta più il margine di sicurezza, non ne è uscito del tutto. La mantiene durante le soste interne; non viene liberata a fine missione né per timeout.
- Un veicolo che passa accanto a una zona senza entrarci non la occupa, per quanto le passi vicino.
- Gli altri veicoli diretti nella zona si fermano a quella stessa distanza dal bordo e attendono lì, fuori dall'area in cui chi è dentro manovra.
- Sono protetti anche i link solo in parte interni e i movimenti senza link espliciti.
- Ogni zona è indipendente: zone sovrapposte o vicine, comprese quelle automatiche dei corridoi di magazzino, non vengono mai unite. Un veicolo che le attraversa una dopo l'altra le prenota insieme all'ingresso e libera ciascuna appena ne è uscito. Le rotazioni sul posto che lo portano in parte fuori da una zona si prenotano con la zona, così chi passa accanto non si ferma dove lui deve girare. Resta attiva la prenotazione dello spazio di uscita.
- Se un prelievo o un deposito è dentro una zona, per uscirne il veicolo ha bisogno di un tragitto consentito verso un caricabatterie o parking esterno; viene prenotato solo lo spazio di uscita, non tutto il ritorno.
Un layout può avere fino a 100 zone di traffico.
Condizioni di zona sui link
Un link può richiedere che una o più zone siano libere prima che il veicolo superi l'origine del link. Nelle proprietà del link, Zone richieste libere elenca tutte le zone:
- le zone che contengono la destinazione del link sono spuntate automaticamente e marcate automatica; seguono la destinazione e i confini delle zone (il bordo conta come interno);
- spunta altre zone per aggiungere condizioni manuali. Tutte le zone, automatiche e manuali, devono essere libere.
Il controllo avviene mentre il veicolo si avvicina all'origine di ciascun link, compresi i link intermedi di un viaggio più lungo. Se le zone sono libere prosegue senza fermarsi. Se una zona richiesta è occupata frena in anticipo e attende all'origine del link; se la zona si libera durante la frenata può riaccelerare senza fermarsi. La tabella In corso del riquadro inferiore mostra il link, le zone occupate e l'AGV che le occupa.
Se elimini una zona richiesta manualmente da un link, il link resta bloccato e mostra Zona N mancante — link bloccato. Togli la zona mancante nelle proprietà del link oppure annulla l'eliminazione.
Ottimizza traffico · Sperimentale
In Scenario → Traffico automatico, Avvia ottimizzazione cerca configurazioni che risolvano i blocchi osservati nelle prove e limitino il loro costo sul flusso. Non modifica le regole durante una run in corso: lavora su una copia del progetto, mette in pausa la run ordinaria e sospende le modifiche al progetto, mentre puoi navigare nella mappa e cambiare workspace, lingua e tema.
- Scegli il motore. Locale cerca e simula alternative nel browser, esplorando prima le famiglie di interventi e poi gli affinamenti promettenti. Assistito da AI, disponibile con l'abilitazione AI dell'account, analizza gli incidenti, propone proprie modifiche consentite e ne chiede la verifica allo stesso simulatore locale. Usa le quote AI esistenti.
- Scegli l'autonomia. Appena un miglioramento supera la verifica integrale, viene presentato senza attendere le altre alternative. Chiedi prima di modificare è l'impostazione iniziale: mostra modifiche ed effetti e attende la tua accettazione prima di diventare la nuova soluzione provvisoria. Accesso completo lo accetta automaticamente. Puoi cambiare modalità durante la ricerca; attivare Accesso completo accetta anche la proposta verificata già in attesa.
- Controlla la durata e avvia. Ogni soluzione conservabile viene verificata sull'intera durata impostata. Sono previsti tre seed di ricerca e due distinti di verifica; se la prima prova completa non usa estrazioni casuali, una sola esecuzione basta per quella configurazione. Con durata ordinaria ∞, imposta una durata finita di verifica; il valore iniziale è 8 ore. Le prove brevi servono soltanto a scartare tentativi fallimentari.
- Leggi il progresso. Il pannello mostra l'avanzamento delle alternative selezionate per il giro corrente, tempo reale trascorso, Fine giro stimata e migliore risultato verificato. La stima usa la velocità effettiva delle prove, è approssimativa e si sospende durante le decisioni; inizialmente può essere In calcolo. Vale soltanto per quel giro: alcune varianti possono essere rinviate e un miglioramento accettato può avviare un altro giro.
- Osserva il tentativo. Alternativa corrente descrive la modifica in prova; espandi Operazioni proposte per i dettagli. Mostra sulla mappa attiva l'anteprima in sola lettura, senza applicare né accettare il candidato. I dettagli delle prove confrontano blocchi, missioni e attese: l'eliminazione dei blocchi ha priorità, poi vengono produttività e tempi, infine estensione delle esclusioni e quantità di modifiche.
Quando basta una prova. Il motore conta le estrazioni casuali dall'inizializzazione fino alla fine dell'intera durata. Con zero estrazioni segnala Una prova: nessuna casualità attivata; altrimenti esegue i cinque seed. Ogni candidato viene controllato di nuovo: una configurazione iniziale deterministica non garantisce che lo siano le varianti. Lo stesso criterio evita ripetizioni nello screening breve, ma una prova breve senza casualità non basta a dimostrare l'equivalenza sulla durata completa. Il rapporto distingue i cinque seed previsti da quelli effettivamente eseguiti e registra l'equivalenza osservata.
La diagnosi segue i gruppi di veicoli che non progrediscono per almeno 60 secondi simulati, anche quando altri AGV continuano a lavorare. Distingue attese reciproche, scanner, spazio occupato, zone, ingressi e uscite, e catene bloccate da un mezzo inattivo. Servizi, ricariche, guasti e prenotazioni dell'operatore rimangono cause distinte. Gli urti delle sagome fisiche sono rilevati separatamente dagli scanner e dai margini protettivi.
La ricerca può creare, ridimensionare, sostituire, unire, separare e rimuovere le zone salvate, anche quelle disegnate manualmente. Può aggiungere punti di transito sui percorsi esistenti: stazioni neutre che controllano l'ingresso alle zone, senza ruoli di servizio, nuovi parcheggi o fermate obbligatorie. Non aggiunge link né modifica la geometria dei percorsi. Le condizioni manuali dei link restano nella posizione originaria; solo i controlli automatici compatibili possono spostarsi a un punto di transito prima dell'ingresso protetto. Le protezioni dei magazzini restano derivate dai magazzini e partecipano alle prove.
I tentativi che introducono urti, nuovi blocchi irrisolti, meno AGV collocati, perdita di raggiungibilità o lavoro impossibile vengono scartati. I riferimenti alle zone e le prenotazioni degli operatori devono mantenere il loro significato. La ricerca locale usa una griglia di 250 mm, conservando le coordinate originali, e procede per famiglie: prima interventi ampi, poi affinamenti dove i risultati sono promettenti. Prevenire gli stalli. La ricerca parte anche dalle corsie a doppio senso a rischio elencate nella scheda Rete, prima che una prova si blocchi. Quando esiste una corsia così, la configurazione corrente viene simulata anche con domanda di ordini doppia (intervalli e attese dimezzati, ritmi produttivi raddoppiati; layout, flotte e stazioni invariati) per al massimo due ore e due seed. Una modifica che non porta guadagni sul carico reale viene conservata solo se elimina un blocco visto con domanda doppia, non ne aggiunge e costa al massimo l’1% di missioni completate e throughput; la proposta lo indica. Da quel momento nessun’altra modifica può riportare quel blocco. Senza corsie a rischio non si esegue alcuna prova con domanda doppia, quindi la ricerca non costa di più. Quando i mezzi si aspettano di fronte in una corsia unica, per esempio due AGV in un vicolo cieco a doppio senso, uno in uscita e uno in entrata, una zona attorno ai loro musi sposta soltanto l’attesa all’uscita della corsia: la ricerca propone quindi anche zone che crescono lungo il percorso davanti ai mezzi, segmento dopo segmento, fino a tenere l’intera corsia fino all’incrocio, senza mai coprire un caricabatterie o un parcheggio. L’agente AI riceve il percorso davanti a ogni mezzo e, come suggerimenti facoltativi, queste zone a corridoio. Le varianti vicine a tentativi improduttivi possono essere rinviate. Rinviata significa non provata: non dimostra equivalenza o assenza di utilità. La conclusione descrive questa ricerca selettiva, non l'esaurimento di tutte le configurazioni né un ottimo globale.
Come lavora l'agente AI
L'agente ispeziona gli incidenti, le dimensioni e il moto delle flotte, scanner, percorsi e condizioni dei link. Può proporre proprie operazioni sulle zone e sui punti di transito, chiedere una prova locale e leggerne gli esiti prima di correggere la proposta o concludere. Dopo due tentativi della stessa famiglia senza guadagno operativo rispetto alla soluzione corrente, ulteriori varianti vengono rinviate senza simularle e l'agente deve cambiare strategia. Può ricevere fino a due immagini diagnostiche generate dalle pose dei mezzi registrate nelle prove, con corpi, scanner e percorsi: escludono sfondo CAD, nomi dell'utente e comandi dell'interfaccia. Ogni miglioramento deve comunque superare la verifica integrale.
Strategia corrente mostra cosa sta facendo il motore e la motivazione. Apri Contesto condiviso con AI per vedere le immagini diagnostiche inviate. In Dettagli delle prove → Tentativi recenti trovi esiti e motivi dei tentativi.
Passaggi AI mostra i passaggi eseguiti e il limite della tranche. Raggiunto quel limite, oppure dopo tre ripetizioni consecutive senza progresso, il lavoro si sospende. Continua con AI autorizza esplicitamente una nuova tranche; puoi anche proseguire in locale o interrompere. Anche un errore del provider o la quota esaurita sospendono l'assistenza. Accesso completo regola l'accettazione dei miglioramenti, non rinnova automaticamente la tranche e non supera i limiti dell'account.
Interrompere, conservare e recuperare
Interrompi cancella il tentativo in corso. Conserva applica soltanto la migliore configurazione già verificata e accettata; Scarta mantiene il progetto iniziale. Alla conclusione naturale viene applicata la migliore configurazione accettata. Il risultato entra nella cronologia come un'unica modifica annullabile con Ctrl+Z; usa Salva per scriverlo su disco.
Il browser conserva un punto di recupero verificato, separato per account e progetto. Dopo una chiusura imprevista puoi recuperarlo esplicitamente: il tentativo interrotto ricomincia dall'inizio e le chiamate AI non ripartono da sole. Se IndexedDB non è disponibile, un avviso segnala che il recupero resta soltanto nella scheda aperta. Se il provider AI non risponde o la quota è esaurita, puoi continuare in locale oppure terminare.
Il rapporto registra durata, seed, modifiche, produttività e blocchi residui. Nessun blocco rilevato nelle prove eseguite descrive quelle prove: non garantisce ogni possibile condizione. Un seed ripete una configurazione; dopo una modifica, l'ordine dei sorteggi casuali può cambiare e con esso la sequenza temporale dei disturbi.
Convogli nel traffico
Rimorchi e timoni di un convoglio occupano il loro spazio come il corpo del trattore: una catena di rettangoli dal gancio all'indietro, che si sposta con i rimorchi. Entrano solo nello spazio appena occupato dal trattore, perché ne seguono il percorso, e le prenotazioni del trattore sono larghe almeno quanto i suoi rimorchi. Gli altri veicoli quindi si fermano prima dell'ultimo rimorchio, non possono infilarsi tra trattore e rimorchi e i loro scanner vedono anche i rimorchi. Una zona esclusiva in cui il convoglio è entrato resta occupata finché l'ultimo rimorchio non ne è uscito, e le condizioni di zona sui link contano i rimorchi dentro una zona. Un convoglio parte con i rimorchi allineati dietro di sé, quindi una postazione troppo vicina alle sue spalle resta libera. Con le regole di traffico spente i rimorchi attraversano gli altri veicoli come i trattori. Il modello mantiene il convoglio in sola marcia avanti (vedi Trattori di traino) ma non dimostra che un layout con convogli sia privo di stalli; il margine di uscita di una zona esclusiva è verificato per il trattore, non per l'intero convoglio.
Consigli per il layout
- Preferisci anelli a senso unico con brevi diramazioni a doppio senso verso le stazioni. I convogli di traino non possono usare le diramazioni: dai loro anelli che passano dalle stazioni.
- Proteggi ogni tratto a corsia unica accessibile da entrambi i lati con una zona esclusiva che includa gli imbocchi.
- Tieni caricabatterie e parking fuori dal flusso principale e distanziati almeno della distanza minima.
- Dopo aver modificato versi o geometria, seleziona ogni link e premi Ricalcola percorso.
- Esegui una breve simulazione e guarda le heatmap Attese e Punti fermi per capire dove il traffico si inceppa (vedi Heatmap).