<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xml:lang="en" article-type="research-article">
<front>
<journal-meta>
<journal-id journal-id-type="nlm-ta">Sensors</journal-id>
<journal-title>Sensors</journal-title>
<issn pub-type="epub">1424-8220</issn>
<publisher>
<publisher-name>Molecular Diversity Preservation International (MDPI)</publisher-name></publisher></journal-meta>
<article-meta>
<article-id pub-id-type="doi">10.3390/s91210190</article-id>
<article-id pub-id-type="publisher-id">sensors-09-10190</article-id>
<article-categories>
<subj-group>
<subject>Article</subject></subj-group></article-categories>
<title-group>
<article-title>Distance and Cable Length Measurement System</article-title></title-group>
<contrib-group>
<contrib contrib-type="author">
<name><surname>Hernández</surname><given-names>Sergio Elias</given-names></name><xref ref-type="aff" rid="af1-sensors-09-10190"><sup>1</sup></xref><xref ref-type="corresp" rid="c1-sensors-09-10190"><sup>*</sup></xref></contrib>
<contrib contrib-type="author">
<name><surname>Acosta</surname><given-names>Leopoldo</given-names></name><xref ref-type="aff" rid="af2-sensors-09-10190"><sup>2</sup></xref></contrib>
<contrib contrib-type="author">
<name><surname>Toledo</surname><given-names>Jonay</given-names></name><xref ref-type="aff" rid="af2-sensors-09-10190"><sup>2</sup></xref></contrib></contrib-group>
<aff id="af1-sensors-09-10190">
<label>1</label> Department of Física Fundamental y Experimental Electrónica y Sistemas, Universidad de La Laguna, 38200, Spain</aff>
<aff id="af2-sensors-09-10190">
<label>2</label> Departament of Ingeniería de Sistemas Automática y Arquitectura y Tecnología de Computadores, Universidad de La Laguna, 38200, Spain; E-Mails: <email>leo@isaatc.ull.es</email> (L.A.); <email>jonay@isaatc.ull.es</email> (J.T.)</aff>
<author-notes>
<corresp id="c1-sensors-09-10190">
<label>*</label>Author to whom correspondence should be addressed; E-Mail: <email>sergioelias@ull.es</email>; Tel.:+34-922-318-285; Fax: +34-922-318-288.</corresp></author-notes>
<pub-date pub-type="collection">
<year>2009</year></pub-date>
<pub-date pub-type="epub">
<day>16</day>
<month>12</month>
<year>2009</year></pub-date>
<volume>9</volume>
<issue>12</issue>
<fpage>10190</fpage>
<lpage>10200</lpage>
<history>
<date date-type="received">
<day>30</day>
<month>10</month>
<year>2009</year></date>
<date date-type="rev-recd">
<day>2</day>
<month>12</month>
<year>2009</year></date>
<date date-type="accepted">
<day>7</day>
<month>12</month>
<year>2009</year></date></history>
<permissions>
<copyright-statement>© 2009 by the authors; licensee Molecular Diversity Preservation International, Basel, Switzerland.</copyright-statement>
<copyright-year>2009</copyright-year>
<license>
<p>This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution license (http://creativecommons.org/licenses/by/3.0/).</p></license></permissions>
<abstract>
<p>A simple, economic and successful design for distance and cable length detection is presented. The measurement system is based on the continuous repetition of a pulse that endlessly travels along the distance to be detected. There is a pulse repeater at both ends of the distance or cable to be measured. The endless repetition of the pulse generates a frequency that varies almost inversely with the distance to be measured. The resolution and distance or cable length range could be adjusted by varying the repetition time delay introduced at both ends and the measurement time. With this design a distance can be measured with centimeter resolution using electronic system with microsecond resolution, simplifying classical time of flight designs which require electronics with picosecond resolution. This design was also applied to position measurement.</p></abstract>
<kwd-group>
<kwd>distance</kwd>
<kwd>cable length</kwd>
<kwd>repetitive pulse</kwd>
<kwd>localization</kwd></kwd-group></article-meta></front>
<body>
<sec sec-type="intro">
<label>1.</label>
<title>Introduction</title>
<p>Distance and location measurement systems have many important applications. Local positioning or localization can be achieved through two or more distance measurements. A mobile device, with local positioning techniques, can either gather the information about its position or can be localized from elsewhere. In this context, local-positioning systems attract significant attention [<xref ref-type="bibr" rid="b1-sensors-09-10190">1</xref>].</p>
<p>The chosen technology depends on different circumstances such as outdoor or indoor use, range of distance to be measured, system costs, accuracy, <italic>etc.</italic> In most outdoor situations, where a clear line of sight to satellites is available, GPS is the chosen technology. Other available technologies under active research (some for indoor applications) are: sonar [<xref ref-type="bibr" rid="b2-sensors-09-10190">2</xref>,<xref ref-type="bibr" rid="b3-sensors-09-10190">3</xref>], time of flight [<xref ref-type="bibr" rid="b4-sensors-09-10190">4</xref>], radio beacons [<xref ref-type="bibr" rid="b5-sensors-09-10190">5</xref>], systems based on laser-optic technology [<xref ref-type="bibr" rid="b6-sensors-09-10190">6</xref>,<xref ref-type="bibr" rid="b7-sensors-09-10190">7</xref>], vision systems [<xref ref-type="bibr" rid="b8-sensors-09-10190">8</xref>,<xref ref-type="bibr" rid="b9-sensors-09-10190">9</xref>]. <xref ref-type="table" rid="t1-sensors-09-10190">Table 1</xref> shows a comparison of different measurement systems.</p>
<p>The prototype described in this paper is a low cost distance measurement system based on pulse repetition between a pair of transceivers. Under these conditions a frequency is generated by the endless travel of the pulse, this frequency is inversely proportional to the time of flight, so the distance between a pair of transceivers can be obtained. The main advantage of our system is that with microsecond electronics it is possible to measure distance with centimeter resolution. A traditional time of flight RF system needs picosecond electronic resolution to get similar distance resolution.</p>
<p>Other advantages of our system over other available and equivalent systems are that our system doesn't need direct vision from transmitters to receivers, as opposed to sonar or laser systems. Our system can be installed indoors, and our design is very cheap (<xref ref-type="table" rid="t1-sensors-09-10190">Table 1</xref>).</p></sec>
<sec>
<label>2.</label>
<title>System Description</title>
<p>As already mentioned, the proposed measurement system is based on the endless and continuous repetition of an electric pulse that propagates along the distance to be measured (<xref ref-type="fig" rid="f1-sensors-09-10190">Figure 1</xref>). At both ends of the distance or cable to be measured, there is pulse repetition hardware based on a monostable integrated circuit that generates a new pulse, after a constant delay, <italic>T<sub>d</sub></italic>, every time a pulse is received, in reality <italic>T<sub>d</sub></italic> will include all subsystem delays that are the delays introduced also by the transmitter and receiver. Supposing a zero distance is to be measured, the period <italic>T</italic> of every cycle will be. <italic>T</italic> = 2<italic>T<sub>d</sub></italic>, because pulse repetitions introduce the same delay at both ends, <italic>T<sub>d</sub></italic>. If the distance traveled by the wave is considered the new period will be, <italic>T</italic> = 2<italic>T<sub>d</sub></italic> + 2<italic>T<sub>f</sub></italic>, where <italic>T<sub>f</sub></italic> is the time of flight, which is the time needed for the pulse to travel from terminal 1 to terminal 2 or vice versa, with <italic>T</italic> being the time a pulse needs to make a complete circle from terminal 1 to terminal 2 and back, see <xref ref-type="fig" rid="f1-sensors-09-10190">Figure1</xref>. If <italic>d</italic> is the distance to be measured and <italic>v</italic> the pulse wave propagation velocity, 
<inline-formula>
<mml:math id="mm1">
<mml:semantics id="sm1">
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>f</mml:mi></mml:msub>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mi>d</mml:mi>
<mml:mi>v</mml:mi></mml:mfrac></mml:mrow></mml:semantics></mml:math></inline-formula>, and 
<inline-formula>
<mml:math id="mm2">
<mml:semantics id="sm2">
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mo>⋅</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>d</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mfrac>
<mml:mi>d</mml:mi>
<mml:mi>v</mml:mi></mml:mfrac>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:semantics></mml:math></inline-formula> being <italic>T</italic> the total time to make the circle: which, when expressed as frequency, <italic>f</italic>, implies:
<disp-formula id="FD1">
<label>(1)</label>
<mml:math id="mm3" display="block">
<mml:semantics id="sm3">
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mi>T</mml:mi></mml:mfrac>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mo>⋅</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>d</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mfrac>
<mml:mi>d</mml:mi>
<mml:mi>v</mml:mi></mml:mfrac>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mfrac></mml:mrow></mml:semantics></mml:math></disp-formula></p>
<p><xref ref-type="disp-formula" rid="FD1">Equation (1)</xref> shows that the measured frequency <italic>f</italic> decreases as distance <italic>d</italic> increases.</p>
<p>The selection of the appropriate repetition delay on both terminals, <italic>T<sub>d</sub></italic>, will fix the maximum and minimum frequencies captured for a range of distances. The sensitivity diminishes significantly as distance <italic>d</italic> increases, as can be seen in <xref ref-type="disp-formula" rid="FD2">Equation (2)</xref> and <xref ref-type="table" rid="t1-sensors-09-10190">Table 1</xref>:
<disp-formula id="FD2">
<label>(2)</label>
<mml:math id="mm4" display="block">
<mml:semantics id="sm4">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:mi>f</mml:mi></mml:mrow>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:mi>d</mml:mi></mml:mrow></mml:mfrac>
<mml:mo>=</mml:mo>
<mml:mo>−</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mi>v</mml:mi>
<mml:mo>⋅</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>d</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mfrac>
<mml:mi>d</mml:mi>
<mml:mi>v</mml:mi></mml:mfrac></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow></mml:mrow>
<mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:mfrac></mml:mrow></mml:semantics></mml:math></disp-formula></p>
<p><xref ref-type="disp-formula" rid="FD2">Equation (2)</xref> shows how the sensitivity 
<inline-formula>
<mml:math id="mm5">
<mml:semantics id="sm5">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:mi>f</mml:mi></mml:mrow>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:mi>d</mml:mi></mml:mrow></mml:mfrac></mml:mrow></mml:semantics></mml:math></inline-formula> varies significantly with distance d and pulse repetition delay, <italic>T<sub>d</sub></italic>. One can observe that sensitivity significantly diminishes with both magnitudes. <xref ref-type="fig" rid="f2-sensors-09-10190">Figure 2</xref> and <xref ref-type="table" rid="t1-sensors-09-10190">Table 1</xref>, show how <italic>f</italic> and Δ<italic>f</italic> decrease nonlinearly with the distance <italic>d</italic> to be measured, following <xref ref-type="disp-formula" rid="FD1">Equation (1)</xref> and <xref ref-type="disp-formula" rid="FD2">Equation (2)</xref> respectively. The selection of an appropriate <italic>T<sub>d</sub></italic> will depend on the range of distances to be measured and the precision, sensitivity and resolution required. Precision, sensitivity and resolution increase by reducing <italic>T<sub>d</sub></italic>, but this reduction of <italic>T<sub>d</sub></italic> has the drawback of increasing the bandwidth and the complexity of the electronic circuit.</p>
<p>The distance resolution depends also on measurement time. Distance calculation is defined by the frequency measurement, so the precision in the calculation of the frequency of the travelled pulsed is related to the distance resolution. <xref ref-type="fig" rid="f3-sensors-09-10190">Figure 3</xref> shows the evolution of errors as a function of the measurement time. When the measurement time is high, the frequency is accurate and the error is low, if the measurement time is low, the error increases.</p>
<p>In our project, the main goal was to locate an autonomous vehicle over a 1 Km<sup>2</sup> area with an accuracy of around 10 cm. In order to achieve this goal, <italic>T<sub>d</sub></italic> = 2.68 <italic>μS</italic> is used on the prototype, this implies 
<inline-formula>
<mml:math id="mm6">
<mml:semantics id="sm6">
<mml:mrow>
<mml:msub>
<mml:mtext>f</mml:mtext>
<mml:mn>0</mml:mn></mml:msub>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mrow>
<mml:msub>
<mml:mtext>T</mml:mtext>
<mml:mtext>d</mml:mtext></mml:msub></mml:mrow></mml:mfrac>
<mml:mo>=</mml:mo>
<mml:mn>186.6</mml:mn>
<mml:mtext mathvariant="italic">KHz</mml:mtext></mml:mrow></mml:semantics></mml:math></inline-formula> and a sensitivity, Δ<italic>f</italic>/Δ<italic>d</italic>, ranging from 232 to 46 Hz (see <xref ref-type="table" rid="t2-sensors-09-10190">Table 2</xref>). The measurement time was fixed at 1 second (<italic>T<sub>m</sub></italic> = 1 s). With these parameters 1Hz resolution is obtained for the measured frequency with a theoretical accuracy in <italic>d</italic> between 1mm and 4 mm. The real accuracy will be lower due to variances in system parameters and RF bounces. As already mentioned, <italic>T<sub>d</sub></italic> includes monostable repetition delays, and all other delays. The maximum distance to be measured was 1 Km, and the transmitters have a bigger range.</p>
<p>Real measured data can be observed in <xref ref-type="fig" rid="f4-sensors-09-10190">Figure 4</xref>, note that real data follows, with a high degree of accuracy, the predicted behavior shown in <xref ref-type="disp-formula" rid="FD1">Equation (1)</xref>.</p></sec>
<sec>
<label>3.</label>
<title>Prototype Description</title>
<p>Our prototype as depicted in <xref ref-type="fig" rid="f1-sensors-09-10190">Figure 1</xref> is composed of two different terminals, placed at both ends of the distance to be measured. Each terminal is composed of three different elements: 1. Radio frequency pulse transmitter (T1 and T2 in <xref ref-type="fig" rid="f1-sensors-09-10190">Figure 1</xref>), 2. Monostable Integrated Circuit, needed to repeat and delay the pulse (Pulse Repeater), and 3. Radio frequency pulse receiver, (R1 and R2). Apart from these elements Terminal 1 includes a simple microcontroller (<xref ref-type="fig" rid="f5-sensors-09-10190">Figure 5</xref>), whose tasks are:
<list list-type="bullet">
<list-item>
<p>To generate the first pulse to be sent from terminal 1 to terminal 2.</p></list-item>
<list-item>
<p>To detect the generated frequency using an inner microcontroller counter.</p></list-item>
<list-item>
<p>To convert the captured frequency to distance based on <xref ref-type="disp-formula" rid="FD1">Equation (1)</xref>.</p></list-item></list></p>
<p>Our system uses two different frequencies to avoid interferences, one frequency f1 to send pulses from terminal 1 to terminal 2 and a second frequency, f2, for pulses from terminal 2 to terminal 1 (see <xref ref-type="fig" rid="f1-sensors-09-10190">Figure 1</xref>). It is obvious that the same system can be used to measure cable length, for this purpose each terminal should be located at each end of the cable, no radio module is needed because the electric pulse travels through the cable.</p>
<p>The material cost of our prototype, mainly integrated circuit cost, is less than 5 euros when used for cable length measurement and around 100 € when used for distance measurements, but in this last case, around 90% of this cost is for the radio data modules.</p></sec>
<sec>
<label>4.</label>
<title>Cartesian Position of a Mobile System</title>
<p>The system described here can be used as a localization system. It's necessary for this application to measure two distances from two different fixed points (see <xref ref-type="fig" rid="f6-sensors-09-10190">Figure 6</xref>). Calculating the position of the vehicle is determined using these distances. Trilateration is applied in order to resolve the location problem. The localization scheme can be seen in <xref ref-type="fig" rid="f6-sensors-09-10190">Figure 6</xref> the distance between the two fixed points (d), and between each one of these fixed points and the vehicle (d1,d2) are known, so the radius of the circumferences can be calculated, see <xref ref-type="fig" rid="f6-sensors-09-10190">Figure 6</xref>, and the (x,y) Cartesian position is resolved by <xref ref-type="disp-formula" rid="FD3">equations (3)</xref> and <xref ref-type="disp-formula" rid="FD4">(4)</xref>.</p>
<p>When this schema with only two measurements (<italic>d</italic><sub>1</sub> and <italic>d</italic><sub>2</sub>) is used, an alternative localization point appears. It's discarded because it is outside the working area. The system only works inside a predefined working area. The radius of each circle is the distance from each fixed point to theproto type. So <xref ref-type="disp-formula" rid="FD3">Equation (3)</xref> is applied in order to calculate the vehicle localization (<italic>x,y</italic>):
<disp-formula id="FD3">
<label>(3)</label>
<mml:math id="mm7" display="block">
<mml:semantics id="sm7">
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mn>1</mml:mn>
<mml:mn>2</mml:mn></mml:msubsup>
<mml:mo>=</mml:mo>
<mml:msup>
<mml:mi>x</mml:mi>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>+</mml:mo>
<mml:msup>
<mml:mi>y</mml:mi>
<mml:mn>2</mml:mn></mml:msup></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mn>2</mml:mn>
<mml:mn>2</mml:mn></mml:msubsup>
<mml:mo>=</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>−</mml:mo>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>+</mml:mo>
<mml:msup>
<mml:mi>y</mml:mi>
<mml:mn>2</mml:mn></mml:msup></mml:mtd></mml:mtr></mml:mtable></mml:semantics></mml:math></disp-formula></p>
<p>Solving <xref ref-type="disp-formula" rid="FD3">Equation (3)</xref> for x and y <xref ref-type="disp-formula" rid="FD4">Equation (4)</xref> is obtained:
<disp-formula id="FD4">
<label>(4)</label>
<mml:math id="mm8" display="block">
<mml:semantics id="sm8">
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mi>x</mml:mi>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mn>1</mml:mn>
<mml:mn>2</mml:mn></mml:msubsup>
<mml:mo>−</mml:mo>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mn>2</mml:mn>
<mml:mn>2</mml:mn></mml:msubsup>
<mml:mo>+</mml:mo>
<mml:msup>
<mml:mi>d</mml:mi>
<mml:mn>2</mml:mn></mml:msup></mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mi>d</mml:mi></mml:mrow></mml:mfrac></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mi>y</mml:mi>
<mml:mo>=</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mn>1</mml:mn>
<mml:mn>2</mml:mn></mml:msubsup>
<mml:mo>−</mml:mo>
<mml:msup>
<mml:mi>x</mml:mi>
<mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:msqrt>
<mml:mo>=</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mn>1</mml:mn>
<mml:mn>2</mml:mn></mml:msubsup>
<mml:mo>−</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msup>
<mml:mi>d</mml:mi>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>+</mml:mo>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mn>1</mml:mn>
<mml:mn>2</mml:mn></mml:msubsup>
<mml:mo>−</mml:mo>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mn>2</mml:mn>
<mml:mn>2</mml:mn></mml:msubsup></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow></mml:mrow>
<mml:mn>2</mml:mn></mml:msup></mml:mrow>
<mml:mrow>
<mml:mn>4</mml:mn>
<mml:msup>
<mml:mi>d</mml:mi>
<mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:mfrac></mml:mrow></mml:msqrt></mml:mtd></mml:mtr></mml:mtable></mml:semantics></mml:math></disp-formula></p>
<p>Based on <xref ref-type="disp-formula" rid="FD4">Equation (4)</xref> the system sensitivity, <xref ref-type="disp-formula" rid="FD5">Equation (5)</xref>, can be calculated for the Cartesian localization variables (<italic>x,y</italic>). The error is presented as a function of the Cartesian positions in <xref ref-type="fig" rid="f7-sensors-09-10190">Figure 7</xref>. It can be seen a minimum position error at the cartesian position <italic>x</italic> = 500, <italic>y</italic> = 0. This combination produces a minimum distance (<italic>d</italic><sub>1</sub> = 500, <italic>d</italic><sub>2</sub> = 500) to each fixed point. According to <xref ref-type="disp-formula" rid="FD2">Equation (2)</xref> and <xref ref-type="fig" rid="f3-sensors-09-10190">Figure 3</xref> the minimum error is reached when the distance is small and this is the lowest distance for each distance:
<disp-formula id="FD5">
<label>(5)</label>
<mml:math id="mm9" display="block">
<mml:semantics id="sm9">
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mo>Δ</mml:mo>
<mml:mi>x</mml:mi>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>|</mml:mo>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:mi>x</mml:mi></mml:mrow>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mn>1</mml:mn></mml:msub></mml:mrow></mml:mfrac></mml:mrow>
<mml:mo>|</mml:mo></mml:mrow>
<mml:mo>Δ</mml:mo>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:mo>|</mml:mo>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:mi>x</mml:mi></mml:mrow>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:mfrac></mml:mrow>
<mml:mo>|</mml:mo></mml:mrow>
<mml:mo>Δ</mml:mo>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mfrac>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:mi>x</mml:mi></mml:mrow>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mn>1</mml:mn></mml:msub></mml:mrow></mml:mfrac>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mn>1</mml:mn></mml:msub></mml:mrow>
<mml:mi>d</mml:mi></mml:mfrac>
<mml:mo>;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:mi>x</mml:mi></mml:mrow>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:mfrac>
<mml:mo>=</mml:mo>
<mml:mo>−</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow>
<mml:mi>d</mml:mi></mml:mfrac></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mo>Δ</mml:mo>
<mml:mi>y</mml:mi>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>|</mml:mo>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:mi>y</mml:mi></mml:mrow>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mn>1</mml:mn></mml:msub></mml:mrow></mml:mfrac></mml:mrow>
<mml:mo>|</mml:mo></mml:mrow>
<mml:mo>Δ</mml:mo>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:mo>|</mml:mo>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:mi>y</mml:mi></mml:mrow>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:mfrac></mml:mrow>
<mml:mo>|</mml:mo></mml:mrow>
<mml:mo>Δ</mml:mo>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mfrac>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:mi>y</mml:mi></mml:mrow>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mn>1</mml:mn></mml:msub></mml:mrow></mml:mfrac>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msup>
<mml:mi>d</mml:mi>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>−</mml:mo>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mn>1</mml:mn>
<mml:mn>2</mml:mn></mml:msubsup>
<mml:mo>+</mml:mo>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mn>2</mml:mn>
<mml:mn>2</mml:mn></mml:msubsup></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow></mml:mrow>
<mml:mrow>
<mml:msup>
<mml:mi>d</mml:mi>
<mml:mn>2</mml:mn></mml:msup>
<mml:msqrt>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msup>
<mml:mi>d</mml:mi>
<mml:mn>4</mml:mn></mml:msup>
<mml:mo>+</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mn>1</mml:mn>
<mml:mn>2</mml:mn></mml:msubsup>
<mml:mo>−</mml:mo>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mn>2</mml:mn>
<mml:mn>2</mml:mn></mml:msubsup></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>−</mml:mo>
<mml:mn>2</mml:mn>
<mml:msup>
<mml:mi>d</mml:mi>
<mml:mn>2</mml:mn></mml:msup>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mn>1</mml:mn>
<mml:mn>2</mml:mn></mml:msubsup>
<mml:mo>+</mml:mo>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mn>2</mml:mn>
<mml:mn>2</mml:mn></mml:msubsup></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow></mml:mrow>
<mml:mrow>
<mml:msup>
<mml:mi>d</mml:mi>
<mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:mfrac></mml:mrow></mml:msqrt></mml:mrow></mml:mfrac>
<mml:mo>;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:mi>y</mml:mi></mml:mrow>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:mfrac>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msup>
<mml:mi>d</mml:mi>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>+</mml:mo>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mn>1</mml:mn>
<mml:mn>2</mml:mn></mml:msubsup>
<mml:mo>−</mml:mo>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mn>2</mml:mn>
<mml:mn>2</mml:mn></mml:msubsup></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow></mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:msup>
<mml:mi>d</mml:mi>
<mml:mn>2</mml:mn></mml:msup>
<mml:msqrt>
<mml:mrow>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mn>1</mml:mn>
<mml:mn>2</mml:mn></mml:msubsup>
<mml:mo>−</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msup>
<mml:mi>d</mml:mi>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>+</mml:mo>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mn>1</mml:mn>
<mml:mn>2</mml:mn></mml:msubsup>
<mml:mo>−</mml:mo>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mn>2</mml:mn>
<mml:mn>2</mml:mn></mml:msubsup></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow></mml:mrow>
<mml:mn>2</mml:mn></mml:msup></mml:mrow>
<mml:mrow>
<mml:mn>4</mml:mn>
<mml:msup>
<mml:mi>d</mml:mi>
<mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:mfrac></mml:mrow></mml:msqrt></mml:mrow></mml:mfrac></mml:mtd></mml:mtr></mml:mtable></mml:semantics></mml:math></disp-formula></p>
<p>The orientation of the prototype can be obtained if two localization systems are installed on the mobile device. These systems must be separated to get the Cartesian coordinates of each system (<italic>x</italic><sub>1</sub>,<italic>y</italic><sub>1</sub>), (<italic>x</italic><sub>2</sub>,<italic>y</italic><sub>2</sub>). The prototype orientation can be calculated with these coordinates using <xref ref-type="disp-formula" rid="FD6">Equation (6)</xref> where <italic>x</italic><sub>dif</sub> is the difference between <italic>x</italic><sub>1</sub> and <italic>x</italic><sub>2</sub> coordinate and <italic>y</italic><sub>dif</sub> between <italic>y</italic><sub>1</sub> and <italic>y</italic><sub>2</sub>. The error in the orientation is proportional to the distance of the systems installed in the prototype and the precision in the (<italic>x,y</italic>) calculus:
<disp-formula id="FD6">
<label>(6)</label>
<mml:math id="mm10" display="block">
<mml:semantics id="sm10">
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mi>α</mml:mi>
<mml:mo>=</mml:mo>
<mml:mo>arctan</mml:mo>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:mfrac></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow>
<mml:mo>=</mml:mo>
<mml:mo>arctan</mml:mo>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">dif</mml:mtext></mml:mrow></mml:msub></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">dif</mml:mtext></mml:mrow></mml:msub></mml:mrow></mml:mfrac></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mo>Δ</mml:mo>
<mml:mi>α</mml:mi>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>|</mml:mo>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:mi>α</mml:mi></mml:mrow>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>1</mml:mn></mml:msub></mml:mrow></mml:mfrac></mml:mrow>
<mml:mo>|</mml:mo></mml:mrow>
<mml:mo>Δ</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:mo>|</mml:mo>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:mi>α</mml:mi></mml:mrow>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:mfrac></mml:mrow>
<mml:mo>|</mml:mo></mml:mrow>
<mml:mo>Δ</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:mo>|</mml:mo>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:mi>α</mml:mi></mml:mrow>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>1</mml:mn></mml:msub></mml:mrow></mml:mfrac></mml:mrow>
<mml:mo>|</mml:mo></mml:mrow>
<mml:mo>Δ</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:mo>|</mml:mo>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:mi>α</mml:mi></mml:mrow>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:mfrac></mml:mrow>
<mml:mo>|</mml:mo></mml:mrow>
<mml:mo>Δ</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mfrac>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:mi>α</mml:mi></mml:mrow>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>1</mml:mn></mml:msub></mml:mrow></mml:mfrac>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">dif</mml:mtext></mml:mrow></mml:msub></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">dif</mml:mtext></mml:mrow>
<mml:mn>2</mml:mn></mml:msubsup>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>+</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msubsup>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">dif</mml:mtext></mml:mrow>
<mml:mn>2</mml:mn></mml:msubsup></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">dif</mml:mtext></mml:mrow>
<mml:mn>2</mml:mn></mml:msubsup></mml:mrow></mml:mfrac></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow></mml:mrow></mml:mfrac>
<mml:mo>;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:mi>α</mml:mi></mml:mrow>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:mfrac>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">dif</mml:mtext></mml:mrow></mml:msub></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">dif</mml:mtext></mml:mrow>
<mml:mn>2</mml:mn></mml:msubsup>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>+</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msubsup>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">dif</mml:mtext></mml:mrow>
<mml:mn>2</mml:mn></mml:msubsup></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">dif</mml:mtext></mml:mrow>
<mml:mn>2</mml:mn></mml:msubsup></mml:mrow></mml:mfrac></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow></mml:mrow></mml:mfrac></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mfrac>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:mi>α</mml:mi></mml:mrow>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>1</mml:mn></mml:msub></mml:mrow></mml:mfrac>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">dif</mml:mtext></mml:mrow></mml:msub>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>+</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msubsup>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">dif</mml:mtext></mml:mrow>
<mml:mn>2</mml:mn></mml:msubsup></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">dif</mml:mtext></mml:mrow>
<mml:mn>2</mml:mn></mml:msubsup></mml:mrow></mml:mfrac></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow></mml:mrow></mml:mfrac>
<mml:mo>;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:mi>α</mml:mi></mml:mrow>
<mml:mrow>
<mml:mo>∂</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:mfrac>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">dif</mml:mtext></mml:mrow></mml:msub>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>+</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msubsup>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">dif</mml:mtext></mml:mrow>
<mml:mn>2</mml:mn></mml:msubsup></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">dif</mml:mtext></mml:mrow>
<mml:mn>2</mml:mn></mml:msubsup></mml:mrow></mml:mfrac></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow></mml:mrow></mml:mfrac></mml:mtd></mml:mtr></mml:mtable></mml:semantics></mml:math></disp-formula></p>
<p><xref ref-type="fig" rid="f8-sensors-09-10190">Figure 8</xref> shows the orientation error as a function of the distance between the sensors and orientation angle. The cartesian position of the vehicle is fixed to <italic>x</italic> = 500 m, <italic>y</italic> = 500 m in this graph. If the error in Cartesian position is represented, <xref ref-type="fig" rid="f9-sensors-09-10190">Figure 9</xref> is obtained, where the distance between the two sensors in the prototype is fixed at 1 m. The error as a function of the orientation is plotted with different colors.</p></sec>
<sec>
<label>5.</label>
<title>Non Static Measurements</title>
<p>If the prototype is moving, the frequency measurement changes as a function of the vehicle velocity <italic>V<sub>ν</sub></italic>, and measurement time <italic>T<sub>m</sub></italic> <xref ref-type="disp-formula" rid="FD7">Equation (7)</xref>. The error increases with the prototype speed and with the measurement time <xref ref-type="fig" rid="f10-sensors-09-10190">Figure 10</xref>. For a mobile system better precision is obtained if small measurement times are used. Error will be proportional to <italic>V<sub>ν</sub></italic> and <italic>T<sub>m</sub></italic> so the main error source is proportional to the prototype speed movement. <xref ref-type="fig" rid="f10-sensors-09-10190">Figure 10</xref> shows the evolution of error as a function of speed and distance for different measurement times. The main error source is velocity, so in order to get a better distance estimation it's necessary to reduce the measurement time. A detail is presented in <xref ref-type="fig" rid="f10-sensors-09-10190">Figure 10</xref> where the nonlinear error as a function of distance can be appreciated:
<disp-formula id="FD7">
<label>(7)</label>
<mml:math id="mm11" display="block">
<mml:semantics id="sm11">
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mi>T</mml:mi></mml:mfrac>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mo>⋅</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>d</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mfrac>
<mml:mi>d</mml:mi>
<mml:mi>v</mml:mi></mml:mfrac>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mfrac>
<mml:mo>⇒</mml:mo>
<mml:mi>f</mml:mi>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mo>⋅</mml:mo>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>d</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mn>0</mml:mn></mml:msub>
<mml:mo>+</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mi>m</mml:mi></mml:mrow></mml:mfrac>
<mml:mrow>
<mml:munderover>
<mml:mo>∫</mml:mo>
<mml:mn>0</mml:mn>
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mi>m</mml:mi></mml:mrow></mml:munderover>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:msub>
<mml:mi>V</mml:mi>
<mml:mi>v</mml:mi></mml:msub>
<mml:mo>∂</mml:mo>
<mml:mi>T</mml:mi>
<mml:mi>t</mml:mi></mml:mrow></mml:mrow></mml:mrow>
<mml:mi>v</mml:mi></mml:mfrac></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow></mml:mrow></mml:mfrac>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mo>⋅</mml:mo>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>d</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mn>0</mml:mn></mml:msub>
<mml:mo>+</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mi>m</mml:mi></mml:mrow>
<mml:mn>2</mml:mn></mml:mfrac>
<mml:msub>
<mml:mi>V</mml:mi>
<mml:mi>v</mml:mi></mml:msub></mml:mrow>
<mml:mi>v</mml:mi></mml:mfrac></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow></mml:mrow></mml:mfrac></mml:mrow></mml:semantics></mml:math></disp-formula></p>
<p>Another way to see the error is as a measurement delay. Position is not got in real time, the position is obtained 
<inline-formula>
<mml:math id="mm12">
<mml:semantics id="sm12">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mi>m</mml:mi>
<mml:msub>
<mml:mi>V</mml:mi>
<mml:mi>v</mml:mi></mml:msub></mml:mrow>
<mml:mn>2</mml:mn></mml:mfrac></mml:mrow></mml:semantics></mml:math></inline-formula> seconds before, when the prototype was located in a previous place. When the system stops, the position will be calculated again with good resolution.</p></sec>
<sec sec-type="conclusions">
<label>6.</label>
<title>Conclusions</title>
<p>A very simple prototype for distance and cable length measurements is built based on a simple algorithm. The basis of our device is continuous repetitions of an electric pulse that endlessly travels backwards and forwards through the distance or cable to be measured. The endless travel of the pulse generates a frequency that varies almost inversely with the distance to be measured. The frequency range and resolution of the distance measured will depend on the range of the distances to be measured, and the time delay it takes for the pulse to be repeated at each end. The proposed system uses a simple and low cost electronic device based on a basic microcontroller that performs the main tasks. The system has been successfully tested for distances from 0 to 500 m, with 10 cm accuracy. This system can be used as a local position system to get position and orientation of mobile systems.</p></sec></body>
<back>
<ack>
<p>This work was supported by the ‘Comision Interministerial de Ciencia y Tecnología’, Spanish Government, project DPI2007-64137.</p></ack>
<ref-list>
<title>References and Notes</title>
<ref id="b1-sensors-09-10190"><label>1.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Hightower</surname><given-names>J.</given-names></name><name><surname>Borriello</surname><given-names>G.</given-names></name></person-group><article-title>Locations systems for ubiquitous computing</article-title><source>IEEE Comput.</source><year>2001</year><issue>34</issue><fpage>57</fpage><lpage>66</lpage></citation></ref>
<ref id="b2-sensors-09-10190"><label>2.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Tards</surname><given-names>D.</given-names></name><name><surname>Neira</surname><given-names>J.</given-names></name><name><surname>Newman</surname><given-names>P.M.</given-names></name><name><surname>Leonard</surname><given-names>J.J.</given-names></name></person-group><article-title>Robust mapping and localization in indoor environments using sonar data</article-title><source>Int. J. Robot. Res.</source><year>2002</year><volume>21</volume><fpage>311</fpage><lpage>330</lpage></citation></ref>
<ref id="b3-sensors-09-10190"><label>3.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Navarro</surname><given-names>D.</given-names></name><name><surname>Benet</surname><given-names>G.</given-names></name><name><surname>Martinez</surname><given-names>M.</given-names></name></person-group><article-title>Line based robot localization using a rotary sonar</article-title><source>IEEE Conf. Emerg. Tech. Factory Autom.</source><year>2007</year><volume>25-28</volume><fpage>896</fpage><lpage>899</lpage></citation></ref>
<ref id="b4-sensors-09-10190"><label>4.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Larsson</surname><given-names>U.</given-names></name><name><surname>Forsberg</surname><given-names>J.</given-names></name><name><surname>Wernersson</surname><given-names>A.</given-names></name></person-group><article-title>Mobile robot localization: Integrating measurements from a time-of-flight laser</article-title><source>IEEE Trans. Ind. Electron.</source><year>1996</year><volume>43</volume><fpage>422</fpage><lpage>431</lpage></citation></ref>
<ref id="b5-sensors-09-10190"><label>5.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Djugash</surname><given-names>J.</given-names></name><name><surname>Singh</surname><given-names>S.</given-names></name><name><surname>Corke</surname><given-names>P.I.</given-names></name></person-group><article-title>Further results with localization and mapping using range from radio</article-title><source>Int. Conf. Field Serv. Robot.</source><year>2005</year><volume>25</volume><fpage>231</fpage><lpage>242</lpage></citation></ref>
<ref id="b6-sensors-09-10190"><label>6.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Zhou</surname><given-names>Y.</given-names></name><name><surname>Lu</surname><given-names>W.</given-names></name><name><surname>Huang</surname><given-names>P.</given-names></name></person-group><article-title>Laser-activated RFID-based Indoor Localization System for Mobile Robots</article-title><conf-name>Proceedings of the 2007 IEEE International Conference on Robotics and Automation</conf-name><conf-loc>Rome, Italy</conf-loc><conf-date>April, 2007</conf-date><fpage>4600</fpage><lpage>4605</lpage></citation></ref>
<ref id="b7-sensors-09-10190"><label>7.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Hernández</surname><given-names>S.E.</given-names></name><name><surname>Torres</surname><given-names>J.M.</given-names></name><name><surname>Morales</surname><given-names>C.A.</given-names></name><name><surname>Acosta</surname><given-names>L.</given-names></name></person-group><article-title>A new low cost system for autonomous robot heading and position localization in a closed area</article-title><source>Auton. Robots</source><year>2003</year><volume>15</volume><fpage>99</fpage><lpage>110</lpage></citation></ref>
<ref id="b8-sensors-09-10190"><label>8.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Agrawal</surname><given-names>M.</given-names></name><name><surname>Konolige</surname><given-names>K.</given-names></name><name><surname>Bolles</surname><given-names>R.C.</given-names></name></person-group><article-title>Robust vision-based localization by combining an image-retrieval system with Monte Carlo localization</article-title><source>IEEE Trans. Robot.</source><year>2005</year><volume>21</volume><fpage>208</fpage><lpage>216</lpage></citation></ref>
<ref id="b9-sensors-09-10190"><label>9.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Menegatti</surname><given-names>E.</given-names></name><name><surname>Pretto</surname><given-names>A.</given-names></name><name><surname>Scarpa</surname><given-names>A.</given-names></name><name><surname>Pagello</surname><given-names>E.</given-names></name></person-group><article-title>Omnidirectional vision scan matching for robot localization in dynamic environments</article-title><source>IEEE Trans. Robot.</source><year>2006</year><volume>22</volume><fpage>523</fpage><lpage>535</lpage></citation></ref></ref-list>
<sec sec-type="display-objects">
<title>Figures and Tables</title>
<fig id="f1-sensors-09-10190" position="float">
<label>Figure 1.</label>
<caption>
<p>Block diagram of the prototype system.</p></caption>
<graphic xlink:href="sensors-09-10190f1.gif"/></fig>
<fig id="f2-sensors-09-10190" position="float">
<label>Figure 2.</label>
<caption>
<p>Frequency detected <italic>versus</italic> distance measured left, sensitivity as Δf/Δd <italic>versus</italic> distance right.</p></caption>
<graphic xlink:href="sensors-09-10190f2.gif"/></fig>
<fig id="f3-sensors-09-10190" position="float">
<label>Figure 3.</label>
<caption>
<p>Distance <italic>versus</italic> errors as a function of measurement time <italic>T<sub>m</sub></italic> in seconds.</p></caption>
<graphic xlink:href="sensors-09-10190f3.gif"/></fig>
<fig id="f4-sensors-09-10190" position="float">
<label>Figure 4.</label>
<caption>
<p>Frequency measured <italic>versus</italic> distance.</p></caption>
<graphic xlink:href="sensors-09-10190f4.gif"/></fig>
<fig id="f5-sensors-09-10190" position="float">
<label>Figure 5.</label>
<caption>
<p>Terminal 1 Photograph, RF-transmitter Up-left, pulse repeater circuit up-right, and microcontroller circuit board bottom.</p></caption>
<graphic xlink:href="sensors-09-10190f5.gif"/></fig>
<fig id="f6-sensors-09-10190" position="float">
<label>Figure 6.</label>
<caption>
<p>Localization schema, the distance between the two fixed points is known, and the prototype coordinates can be calculated using d1, and d2 distances.</p></caption>
<graphic xlink:href="sensors-09-10190f6.gif"/></fig>
<fig id="f7-sensors-09-10190" position="float">
<label>Figure 7.</label>
<caption>
<p>Localization error as a function of Cartesian positions.</p></caption>
<graphic xlink:href="sensors-09-10190f7.gif"/></fig>
<fig id="f8-sensors-09-10190" position="float">
<label>Figure 8.</label>
<caption>
<p>Orientation error angle as a function of distance between sensors and orientation angle for a fixed Cartesian position.</p></caption>
<graphic xlink:href="sensors-09-10190f8.gif"/></fig>
<fig id="f9-sensors-09-10190" position="float">
<label>Figure 9.</label>
<caption>
<p>Orientation error angle as a function of Cartesian position for a distance between sensors of 1 m, each graph represents a different orientation.</p></caption>
<graphic xlink:href="sensors-09-10190f9.gif"/></fig>
<fig id="f10-sensors-09-10190" position="float">
<label>Figure 10.</label>
<caption>
<p>Distance calculus error as a function of prototype travel velocity with different measurement times.</p></caption>
<graphic xlink:href="sensors-09-10190f10.gif"/></fig>
<table-wrap id="t1-sensors-09-10190" position="float">
<label>Table 1.</label>
<caption>
<p>Comparison with other distance measurement systems.</p></caption>
<table frame="box" rules="all">
<thead>
<tr>
<th align="center" valign="bottom"><bold>Technology</bold></th>
<th align="center" valign="bottom"><bold>Resolution</bold></th>
<th align="center" valign="bottom"><bold>Price</bold></th>
<th align="center" valign="bottom"><bold>Distance</bold></th>
<th align="center" valign="bottom"><bold>Details</bold></th></tr></thead>
<tbody>
<tr>
<td align="center" valign="top">Ultrasound</td>
<td align="center" valign="top">Medium, 3–5 cm</td>
<td align="center" valign="top">Low</td>
<td align="center" valign="top">Low, 8 meters</td>
<td align="center" valign="top">Very low distance<break/>Needs direct vision<break/>Simple Electonics</td></tr>
<tr>
<td align="center" valign="top">Laser</td>
<td align="center" valign="top">High, 2–5 mm</td>
<td align="center" valign="top">High</td>
<td align="center" valign="top">High, Km</td>
<td align="center" valign="top">Needs direct vision<break/>Picosecond electronics</td></tr>
<tr>
<td align="center" valign="top">Vision</td>
<td align="center" valign="top">Medium, 10 cm</td>
<td align="center" valign="top">Low</td>
<td align="center" valign="top">Low, 20 meters</td>
<td align="center" valign="top">Computer processing<break/>Landmarks installed in the field</td></tr>
<tr>
<td align="center" valign="bottom">Radar</td>
<td align="center" valign="bottom">Low, 30 cm</td>
<td align="center" valign="bottom">High</td>
<td align="center" valign="bottom">High, Km</td>
<td align="center" valign="bottom">Picosecond electronics</td></tr>
<tr>
<td align="center" valign="bottom">DGPS</td>
<td align="center" valign="bottom">High, 10 cm</td>
<td align="center" valign="bottom">Medium</td>
<td align="center" valign="bottom">High, Km</td>
<td align="center" valign="bottom">Only outdoor use</td></tr></tbody></table></table-wrap>
<table-wrap id="t2-sensors-09-10190" position="float">
<label>Table 2.</label>
<caption>
<p>Frequencies and sensitivity <italic>versus</italic> distances: <italic>T<sub>d</sub></italic> (μS) time delay for pulse repetition, <italic>f</italic><sub>0</sub> and <italic>f</italic><sub>1Km</sub> frequency detected for 0 or 1 Km distance, Δ<italic>f</italic><sub>10</sub>/Δ<italic>d</italic> and Δ<italic>f</italic><sub>1Km</sub>/Δ<italic>d</italic> sensitivity at 10 m and 1 Km respectively.</p></caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th align="center" valign="middle"><bold><italic>T<sub>d</sub></italic> (μS)</bold></th>
<th align="center" valign="middle"><bold><italic>f</italic><sub>0</sub> (KHz)</bold></th>
<th align="center" valign="middle"><bold><italic>f<sub>1Km</sub></italic> (KHz)</bold></th>
<th align="center" valign="middle"><bold>Δ<italic>f</italic><sub>0</sub>/Δ<italic>d</italic></bold><break/><bold>(Hz/m)</bold></th>
<th align="center" valign="middle"><bold>Δ<italic>f</italic><sub>10</sub>/Δ<italic>d</italic></bold><break/><bold>(Hz/m)</bold></th>
<th align="center" valign="middle"><bold>Δ<italic>f</italic><sub>100</sub>/Δ<italic>d</italic></bold><break/><bold>(Hz/m)</bold></th>
<th align="center" valign="middle"><bold>Δ<italic>f</italic><sub>1Km</sub>/Δ<italic>d</italic></bold><break/><bold>(Hz/m)</bold></th></tr></thead>
<tbody>
<tr>
<td align="center" valign="top">0,1</td>
<td align="center" valign="top">5,000</td>
<td align="center" valign="top">145.8</td>
<td align="center" valign="top">161.3 × 10<sup>3</sup></td>
<td align="center" valign="top">96154</td>
<td align="center" valign="top">8,944.5</td>
<td align="center" valign="top">141.5</td></tr>
<tr>
<td align="center" valign="top">1</td>
<td align="center" valign="top">500</td>
<td align="center" valign="top">115.5</td>
<td align="center" valign="top">1661.1</td>
<td align="center" valign="top">1565.9</td>
<td align="center" valign="top">939.85</td>
<td align="center" valign="top">88.8</td></tr>
<tr>
<td align="center" valign="top"><bold>2.68</bold></td>
<td align="center" valign="top"><bold>186.6</bold></td>
<td align="center" valign="top"><bold>83.1</bold></td>
<td align="center" valign="top"><bold>232.0</bold></td>
<td align="center" valign="top"><bold>226.3</bold></td>
<td align="center" valign="top"><bold>183.5</bold></td>
<td align="center" valign="top"><bold>46.1</bold></td></tr>
<tr>
<td align="center" valign="top">10</td>
<td align="center" valign="top">50</td>
<td align="center" valign="top">37.5</td>
<td align="center" valign="top">16.66</td>
<td align="center" valign="top">16.562</td>
<td align="center" valign="top">15.614</td>
<td align="center" valign="top">9.38</td></tr>
<tr>
<td align="center" valign="top">100</td>
<td align="center" valign="top">5</td>
<td align="center" valign="top">4.84</td>
<td align="center" valign="top">0.167</td>
<td align="center" valign="top">0.16656</td>
<td align="center" valign="top">0.16557</td>
<td align="center" valign="top">0.156</td></tr>
<tr>
<td align="center" valign="top">1,000</td>
<td align="center" valign="top">0.5</td>
<td align="center" valign="top">0.498</td>
<td align="center" valign="top">1.67 × 10<sup>−3</sup></td>
<td align="center" valign="top">1.66 × 10<sup>−3</sup></td>
<td align="center" valign="top">1.66 × 10<sup>−3</sup></td>
<td align="center" valign="top">1.65 × 10<sup>−3</sup></td></tr></tbody></table></table-wrap></sec></back></article>
