Ciao a tutti,
ho un problema un po' particolare: devo fare un'analisi di visibilità di un'antenna posta in una certa posizione, ma invece di calcolare dove vedo l'antenna e dove no, devo calcolare a che altezza devo stare per poterla vedere. In pratica ho un'antenna che serve per ricevere un segnale da un elicottero e devo calcolare la minima altitudine a cui deve stare l'elicottero per vedere l'antenna per una certa porzione di territorio. ovviamente del suddetto territorio possiedo il DTM. Penso che GRASS con qualche combinazione di r.los e r.mapcalc sia in grado di risolvere il problema ma non riesco ancora a trovare il bandolo della matassa. Ogni idea o suggerimento è ben accolto. Ciao, Stefano _______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [hidden email] http://lists.faunalia.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it. 440 iscritti al 15.3.2010 |
Il 08/04/2010 11.06, Stefano Salvador ha scritto:
> Ciao a tutti, > > ho un problema un po' particolare: devo fare un'analisi di visibilità > di un'antenna posta in una certa posizione, ma invece di calcolare > dove vedo l'antenna e dove no, devo calcolare a che altezza devo stare > per poterla vedere. In pratica ho un'antenna che serve per ricevere un > segnale da un elicottero e devo calcolare la minima altitudine a cui > deve stare l'elicottero per vedere l'antenna per una certa porzione di > territorio. ovviamente del suddetto territorio possiedo il DTM. > > Penso che GRASS con qualche combinazione di r.los e r.mapcalc sia in > grado di risolvere il problema ma non riesco ancora a trovare il > bandolo della matassa. > > Ogni idea o suggerimento è ben accolto. 1) studiati bene l'help di r.los [1]; 2) guardati un po' Dodd [2] che ha fatto qualcosa di molto simile, anche se con software proprietario; 3) dovresti poi tenere conto di un opportuno coefficiente di rifrazione atmosferica (al posto del classico 0.13 valido per le radiazioni luminose) in funzione della frequenza del segnale dell'antenna, poiche' questo puo' incidere significativamente nella tua analisi di visibilita'. ciao Antonio [1] http://www.grass.itc.it/grass62/manuals/html62_user/r.los.html [2] http://scholar.lib.vt.edu/theses/available/etd-09202001-155212/unrestricted/1etd_dodd_0911.pdf -- Antonio Falciano http://www.linkedin.com/in/antoniofalciano _______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [hidden email] http://lists.faunalia.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it. 440 iscritti al 15.3.2010 |
Io semplicemente invertirei il problema: metti l'osservatore nel punto
in cui c'è l'antenna e fai girare r.los. Per forza di cose tutti i punti visibili dall'antenna sono anche i punti dai quali l'antenna può essere vista (la luce viaggia di massima in linea retta!), a quel punto varia l'altezza dell'osservatore fino a raggiungere il risultato che desideri (in r.los devi specificare anche l'altezza del punto di osservazione rispetto al modello di terreno che stai usando). Antonio Falciano ha scritto: > Il 08/04/2010 11.06, Stefano Salvador ha scritto: >> Ciao a tutti, >> >> ho un problema un po' particolare: devo fare un'analisi di visibilità >> di un'antenna posta in una certa posizione, ma invece di calcolare >> dove vedo l'antenna e dove no, devo calcolare a che altezza devo stare >> per poterla vedere. In pratica ho un'antenna che serve per ricevere un >> segnale da un elicottero e devo calcolare la minima altitudine a cui >> deve stare l'elicottero per vedere l'antenna per una certa porzione di >> territorio. ovviamente del suddetto territorio possiedo il DTM. >> >> Penso che GRASS con qualche combinazione di r.los e r.mapcalc sia in >> grado di risolvere il problema ma non riesco ancora a trovare il >> bandolo della matassa. >> >> Ogni idea o suggerimento è ben accolto. > > 1) studiati bene l'help di r.los [1]; > 2) guardati un po' Dodd [2] che ha fatto qualcosa di molto simile, anche > se con software proprietario; > 3) dovresti poi tenere conto di un opportuno coefficiente di rifrazione > atmosferica (al posto del classico 0.13 valido per le radiazioni > luminose) in funzione della frequenza del segnale dell'antenna, poiche' > questo puo' incidere significativamente nella tua analisi di visibilita'. > > ciao > Antonio > > [1] http://www.grass.itc.it/grass62/manuals/html62_user/r.los.html > [2] > http://scholar.lib.vt.edu/theses/available/etd-09202001-155212/unrestricted/1etd_dodd_0911.pdf > > _______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [hidden email] http://lists.faunalia.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it. 440 iscritti al 15.3.2010 |
Comunque la giri mi sa che è necessario un processo iterativo.
Per ogni cell che non sono visibili dall'antenna/non vedono l'antenna [CELLA_NV], dovresti trovare la quota della cella più alta [CELLA_MAX] tra CELL_NV e l'antenna, lungo la LOS, e quindi interpolare, usando l'angolo in CELL_MAX e la distanza tra CELL_NV e antenna. A me non viene in mente un modo non iterativo. Usando i comandi esistenti uno potrebbe fare: 1 - r.los 2 - con r.cost calcolarsi le ditanze tra antenna e le celle della griglia (ponendo a 1 il costo dei pixel). 2 - per le celle non visibili calcolare il profilo lungo la coniungente tra antenna e le celle stesse con r.profile 3 - prendere il valore più alto di r.profile e quindi, con r.mapcalc e il risultato del punto 2, farsi il calcoletto trigonometrico per interpolare. l'ho buttata lì, su due piedi, probabilmente ci sarà una strada più semplice o elegante... giovanni Il giorno 08 aprile 2010 12.17, Patti Giuseppe <[hidden email]> ha scritto: Io semplicemente invertirei il problema: metti l'osservatore nel punto in cui c'è l'antenna e fai girare r.los. Per forza di cose tutti i punti visibili dall'antenna sono anche i punti dai quali l'antenna può essere vista (la luce viaggia di massima in linea retta!), a quel punto varia l'altezza dell'osservatore fino a raggiungere il risultato che desideri (in r.los devi specificare anche l'altezza del punto di osservazione rispetto al modello di terreno che stai usando). _______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [hidden email] http://lists.faunalia.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it. 440 iscritti al 15.3.2010 |
In reply to this post by Stefano Salvador
La linea di visibilita' non e' applicabile a un onda elettromagnetica a meno che non viaggi -- ----------------- Andrea Peri . . . . . . . . . qwerty àèìòù ----------------- _______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [hidden email] http://lists.faunalia.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it. 440 iscritti al 15.3.2010 |
In reply to this post by Stefano Salvador
Aggiungo altra informazione (spero utile) alla precedente email.
Non avevo letto che l'emettitore/ricevitore e' su un elicottero. Questo ti complica il calcolo, perche' Se ricordo bene (sono ricordi universitari di molti anni fa' e sono un po' arrugginito), l'ampiezza dell'ellissoide di fresnel dipende da vari parametri, tra cui la frequenza dell'onda elettromagnetica. Ovvero piu' e' alta (piu' va' verso il visivo, ovvero la luce) e piu' Fresnel e' stretto. Pero' questo implica che sia molto direzionale, ovvero diviene difficile per l'elicottero centrare il fascio dell'antenna o viceversa. Allora devi abbassare la frequenza, questo rende piu' facile centrare il fascio, ma di conseguenza questo allarga Fresnel, e di conseguenza l'elicottero deve alzarsi per escludere dall'ellissoide di Fresnel eventuali ostacoli. http://it.wikipedia.org/wiki/Zona_di_Fresnel Dalla formula b = 17.32 * (sqr(d / (4*f))) vedi che al diminuire della frequenza (f) la prima zona di fresnel aumenta nel suo raggio (b). E nella zona coperta dall'ellissoide non devono esserci ostacoli se non si vuole interferenze. Spero di aver ricordato bene. :) -- ----------------- Andrea Peri . . . . . . . . . qwerty àèìòù ----------------- _______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [hidden email] http://lists.faunalia.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it. 440 iscritti al 15.3.2010 |
Grazie a tutti per le risposte.
Per quanto riguarda rifrazioni e altri effetti elettromagnitici almeno per ora posso ignorarli, l'apparato sull'elicottero e quello a terra sono studiati appositamente per "parlarsi" tenendo conto di tutto ciò. In questo contesto io devo solo produrre un raster che per ogni cella mi dice quanto devo essere alto per vedere l'antenna in visibilità ottica. Purtroppo con GRASS non ci riesco perché posso impostare solo l'altezza dell'osservatore (nel mio caso l'antenna) e non dell'osservato (l'elicottero), anche invertendo gli attori il problema rimane. Ciao, Stefano _______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [hidden email] http://lists.faunalia.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it. 440 iscritti al 15.3.2010 |
2010/4/8 Stefano Salvador <[hidden email]>:
... > Purtroppo con GRASS non ci riesco perché posso impostare solo l'altezza > dell'osservatore (nel mio caso l'antenna) e non dell'osservato (l'elicottero), > anche invertendo gli attori il problema rimane. Potresti semplicemente alzare il DTM nella cella in quale sta l'elicottero... ciao Markus PS: rifrazione di luce dovrebbe esserci in r.los (-c Consider earth curvature (current ellipsoid)) _______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [hidden email] http://lists.faunalia.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it. 440 iscritti al 15.3.2010 |
> Potresti semplicemente alzare il DTM nella cella in quale sta
> l'elicottero... ci ho pensato, ma l'elicottero potrebbe stare dappertutto, quindi per ogni punto del DTM dovrei fare un'analisi r.los e ripetere il tutto finché non c'è visibilità ... un po' noiso. in realtà sono partito ardimentoso e sto dando un'occhiata al codice di r.los per vedere quanto è difficile aggiungere l'altezza dell'osservato ... vi terrò aggiornati. Ciao, Stefano _______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [hidden email] http://lists.faunalia.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it. 440 iscritti al 15.3.2010 |
Il 08/04/2010 22.15, Stefano Salvador ha scritto:
>> Potresti semplicemente alzare il DTM nella cella in quale sta >> l'elicottero... > > ci ho pensato, ma l'elicottero potrebbe stare dappertutto, quindi per ogni > punto del DTM dovrei fare un'analisi r.los e ripetere il tutto finché non c'è > visibilità ... un po' noiso. > > in realtà sono partito ardimentoso e sto dando un'occhiata al codice di r.los > per vedere quanto è difficile aggiungere l'altezza dell'osservato ... vi terrò > aggiornati. ...e perche' non "alzare" il DTM in tutte le celle (eccetto ovviamente quella contenente la torre, già coperta da obs_elev)? Se N sono i valori discreti di altezza dell'elicottero rispetto al suolo da esaminare, dovresti elaborare esattamente N viewshed. Basta un ciclo su N valori che utilizzi r.los ed r.mapcalc per "correggere" il DTM. -- Antonio Falciano http://www.linkedin.com/in/antoniofalciano _______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [hidden email] http://lists.faunalia.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it. 440 iscritti al 15.3.2010 |
In reply to this post by giohappy
> ...e perche' non "alzare" il DTM in tutte le celle (eccetto ovviamente
> quella contenente la torre, già coperta da obs_elev)? perché se alzo tutti alzo anche gli ostacoli, devo alzare solo la cella dove sta l'osservato. sarebbe come quando allo stadio si alzano tutti in piedi, alla fine si vede lo stesso che se fossero tutti seduti. > Comunque la giri mi sa che è necessario un processo iterativo. questo è pacifico, io volevo iterare su tutte le altezze possibili (a step discreti ovviamente) dell'elicotero sulle celle che risultano invisibili fino a quando non c'è più nessuna cella invisibile. > Per ogni cell che non sono visibili dall'antenna/non vedono l'antenna > [CELLA_NV], dovresti trovare la quota della cella più alta [CELLA_MAX] tra > CELL_NV e l'antenna, lungo la LOS, e quindi interpolare, usando l'angolo in > CELL_MAX e la distanza tra CELL_NV e antenna. se riesco a implementare questo algoritmo direttamente nel codice di r.los non mi serve neanche il processo iterativo, mi basta un po' di trigonometria. Grazie a tutti, Stefano _______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [hidden email] http://lists.faunalia.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it. 440 iscritti al 15.3.2010 |
> se riesco a implementare questo algoritmo direttamente nel codice di
> r.los non mi serve neanche il processo iterativo, mi basta un po' di > trigonometria. Certo, non ho mai guardato il codice di r.los, però immagino che ci siano già tutti gli elementi per implementarlo direttamente lì. giovanni _______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [hidden email] http://lists.faunalia.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it. 440 iscritti al 15.3.2010 |
Free forum by Nabble | Edit this page |