Commit 95dfb396 by Claudio Mandrioli

 ... ... @@ -51,26 +51,20 @@ called \emph{ephemeris data}. The ephemeris data describe the satellites' orbits (see for example the trajectory of satellite $s_3$ in Figure~\ref{fig:globe}), and therefore allow the GPS receiver to accurately determine their position in time. The satellite trajectories are not constant in time, due to uncertainties and trajectories change over time, due to uncertainties and disturbances, like corrections for collision avoidance. The hypothesis that the clocks of the receiver and the satellites are synchronized is not valid, so one extra satellite must be tracked and used for the trilateration procedure. The fourth satellite allows the receiver to compensate its time reference offset. The ephemeris data expire after 30 minutes, i.e., after 30 minutes they are not considered valid anymore. To correctly estimate the current position, the receiver should ensure that the ephemeris data are frequently updated. The transmission of the ephemeris data has a duration of 30 seconds, and the satellites continuously broadcast new data. In order to ensure the correct acquisition of one data point, the receiver then has to fetch and decode the signal for a time that is in the interval $[30,60)$ seconds (in the worst case, the receiver starts reading the message right after the start of a new message transmission). All the satellites transmit on the same frequency and then the The ephemeris data are considered valid for a time span of 30 minutes. To correctly estimate the current position, the receiver should ensure that the ephemeris data are up to date. The transmission of the ephemeris data has a duration of 30 seconds, and the satellites continuously broadcast new data. In order to ensure the correct acquisition of one data point, the receiver then has to fetch and decode the signal for a time that is in the interval $[30,60)$ seconds (in the worst case, the receiver starts reading the message right after the start of a new message transmission). All the satellites transmit on the same frequency and the different signals are multiplexed using the Code Division Multiple Access (CDMA) technique. Using CDMA, the signal has three components: (i) the carrier wave, (ii) the data waveform, and (iii) a spreading ... ... @@ -95,6 +89,11 @@ can be written as $d_{x} = \Delta_{x} \cdot C$. The set of the distances the receiver measures from the visible satellites is called \emph{ranging data}. The hypothesis that the clocks of the receiver and the satellites are synchronized is not valid, so one extra satellite must be tracked and used for the trilateration procedure. The fourth satellite allows the receiver to compensate its time reference offset. Due to the satellites' and the receiver's movements, the doppler effect will distort the signal reception. The effect is a shift in the frequency spectrum of the signal. To fetch the signal, the receiver ... ... @@ -205,7 +204,14 @@ font=\footnotesize] The GPS receiver provides a position estimate when it has collected both the ephemeris and the ranging data for at least 4 satellites. Detecting data from more than 4 satellites can improve the positioning accuracy. \textcolor{red}{This depents on many factors which are hard to model, like the relative position of the stellites in sapce and the geography of the environment around the sensor. Therefore, for the sake of keeping the model at a reasonable complexity, it is only required to set a minimum number of satellites to be tracked, depending on the specific application. This number has to be equal to or greater than 4 and it being higher represents the the constraint of higher accuracy in the given application.} As for power consumption, the receiver always consumes a accuracy. This depents on many factors which are hard to model, like the relative position of the stellites in sapce and the geography of the environment around the sensor. Therefore, for the sake of keeping the model at a reasonable complexity, it is only required to set a minimum number of satellites to be tracked, depending on the specific application. This number has to be equal to or greater than 4 and it being higher represents the the constraint of higher accuracy in the given application. As for power consumption, the receiver always consumes a (negligible) idle power. On top of that, the sensor consumes additional power when its radio is turned on, which is precisely the cause of battery draining. This power has been experimentally shown to ... ...
 ... ... @@ -35,7 +35,7 @@ implementations\footnote{The code for both the implementation will be released in case the paper is accepted.}. The first one is written in Modelica\footnote{http://www.modelica.org}, while the second one is written in Matlab\footnote{http://www.mathworks.com/products/matlab.html}. Matlab\footnote{http://www.mathworks.com/products/matlab.html}\footnote{The code and the data used for the simulations are available at: https://gitlab.control.lth.se/mmaggio/gps-modeling/}. The purpose of the Modelica code is to obtain a powerful simulation tool. The nature of Modelica -- in terms of composability and ... ... @@ -368,7 +368,9 @@ show what the tracking would have been when the sensor fusion algorithm was live, compared to the continuous sampling of the GPS. We then use simulations to further analyze the trade-off between power (and therefore battery) consumption and performance (positioning accuracy). \textcolor{red}{The sampling rate of the used traces is $1Hz$ but the localization information is of course made available only when the model is in the correct state.} accuracy). The sampling rate of the used traces is $1Hz$ but the localization information is of course made available only when the model is in the correct state. Figures~\ref{fig:cycling-trace} and~\ref{fig:car-trace} respectively show traces for the tracking of the bike and the car. In each ... ...