mirror of
https://github.com/oliverschmidt/contiki.git
synced 2024-11-03 22:06:22 +00:00
setting UDGM signal strength depending on distance
This commit is contained in:
parent
af0fcc9be5
commit
1937e663ad
@ -26,7 +26,7 @@
|
|||||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||||
* SUCH DAMAGE.
|
* SUCH DAMAGE.
|
||||||
*
|
*
|
||||||
* $Id: UDGM.java,v 1.3 2007/03/23 21:06:23 fros4943 Exp $
|
* $Id: UDGM.java,v 1.4 2007/05/18 15:17:11 fros4943 Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package se.sics.cooja.radiomediums;
|
package se.sics.cooja.radiomediums;
|
||||||
@ -79,7 +79,9 @@ public class UDGM extends AbstractRadioMedium {
|
|||||||
|
|
||||||
public static final double SS_NOISE = -60;
|
public static final double SS_NOISE = -60;
|
||||||
|
|
||||||
public static final double SS_OK = 0;
|
public static final double SS_OK_BEST = 0;
|
||||||
|
|
||||||
|
public static final double SS_OK_WORST = -30;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Visualizes radio traffic in the UDGM. Allows a user to
|
* Visualizes radio traffic in the UDGM. Allows a user to
|
||||||
@ -415,9 +417,13 @@ public class UDGM extends AbstractRadioMedium {
|
|||||||
|
|
||||||
// Set signal strength on all OK transmissions
|
// Set signal strength on all OK transmissions
|
||||||
for (RadioConnection conn : getActiveConnections()) {
|
for (RadioConnection conn : getActiveConnections()) {
|
||||||
conn.getSource().setCurrentSignalStrength(SS_OK);
|
conn.getSource().setCurrentSignalStrength(SS_OK_BEST);
|
||||||
for (Radio dstRadio : conn.getDestinations()) {
|
for (Radio dstRadio : conn.getDestinations()) {
|
||||||
dstRadio.setCurrentSignalStrength(SS_OK);
|
double dist = conn.getSource().getPosition().getDistanceTo(dstRadio.getPosition());
|
||||||
|
double distFactor = dist/TRANSMITTING_RANGE;
|
||||||
|
distFactor = distFactor*distFactor;
|
||||||
|
double signalStrength = SS_OK_BEST + distFactor*(SS_OK_WORST - SS_OK_BEST);
|
||||||
|
dstRadio.setCurrentSignalStrength(signalStrength);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user