Benutzer-Werkzeuge

Webseiten-Werkzeuge


contiki:a-n-solutions-module:tests

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
contiki:a-n-solutions-module:tests [2012/10/09 14:24] – [2,4GHz @ANY Modul] sven_zehlcontiki:a-n-solutions-module:tests [2017/01/24 18:49] (aktuell) – Externe Bearbeitung 127.0.0.1
Zeile 9: Zeile 9:
 ==== 2,4GHz @ANY Modul ==== ==== 2,4GHz @ANY Modul ====
  
-maximaler Abstand: **48cm**+max. Abstand: **80m**
  
--> Das Ergebnis dieser Messung ist keinesfalls als ausreichend anzusehenDie Ursache für die geringe Reichweite konnte jedoch bisher nicht ermittelt werden. Weitere Tests mit externer Antenne wären vorteilhaft. Unter Nutzung des RZRaven USB Sticks und den 2,4Ghz @ANY Modulen war eine maximale Reichweite von **7m** möglich. Wird die Kombination @ANY USB Stick und AVR Raven Board genutzt, so ist eine Reichweite von über **10m** möglich (eventuell sogar mehr). Das Problem ist also nicht Modul oder USB Stick, das Problem besteht bei beiden Geräten gleichermaßen.\\+-> Die Messung wurde auf Freier Strecke durchgeführt. 
 +==== 900MHz @ANY Modul ====
  
 +<del>max Abstand: **57m**</del>
  
 +<del>-> Messung wurde ebenfalls auf freier Strecke durchgeführt, jedoch wurde prinzipiell erwartet, dass die 900MHz Module eine größere Reichweite als die 2,4GHz Module besitzen. Jedoch muss beachtet werden, dass die 2,4GHz Module einen Sendeverstärker besitzen, welcher in den 900MHz Modulen nicht eingesetzt wird.</del>
  
-__Lösung:__ +<del>-> Zu beachten ist weiterhin, dass sich bei den Versuchen gezeigt hatdass die Sub-GHz Module gegenüber Störungen viel empfindlicher sind als die 2,4GHz ModuleEin störungsfreier Betrieb war während der Messung nicht möglichso war es kaum möglich eine Übertragung mit einem Verlust <30% zu erreichen.</del> 
--> Die @ANY Module besitzen den AT86RF231 Funkchipdieser bietet die Möglichkeit einen externen Verstärker nachzuschaltenDies wurde innerhalb den @ANY Modulen realisiert. Damit dieser Verstärker nicht immer aktiv ist, bietet der AT86RF231 einen Ausgangspinbeim Senden aktiv wird und somit den Verstärker steuertDiese Funktion muss jedoch aktiviert werden. Dazu muss innerhalb des Registers 0x04 (TRX_CTRL_1) das 7Bit (PA_EXT_EN) auf High gesetzt werden. Dies kann innerhalb der Datei ''rf230bb.c'' in der Funktion ''rf230_warm_reset()'' mit den folgenden Codezeilen realisiert werden.   + 
 +-> Messung muss erneut durchgeführt werden, da der verwendete USB Stick nicht korrekt funktioniertDurch Nutzung eines neuen USB 900MHz USB-Sticks ist die Störanfälligkeit nicht mehr höher als bei den 2,4GHz USB Sticks. 
 + 
 +===== Meshed Routing Tests ===== 
 +RPL im vermaschten Betrieb zu testen, kann bei großen Reichweiten der einzelnen Knoten sehr aufwendig werden. Deshalb gibt es innerhalb den ''rf230bb''-Funktreibern die Möglichkeit die Empfangs und Sendestärke der Module zu regulieren. Innerhalb der Datei ''contiki-conf.h'' für den Atmel Raven ist folgender Kommentar zu finden:
  
-innerhalb ''rf230bb.c'' 
 <code c> <code c>
-/*sz*/ +/* Define MAX_*X_POWER to reduce tx power and ignore weak rx packets for testing a miniature multihop network. 
-/*set external PA in on state, used for @ANY modules*/ + Leave undefined for full power and sensitivity. 
-uint8_t reg_trx_ctrl_state; + * tx=(3dbm, default) to 15 (-17.2dbm
-reg_trx_ctrl_state hal_register_read(0x04); + * RF230_CONF_AUTOACK sets the extended mode using the energy-detect register with rx=(-91dBmto 84 (-7dBm
-reg_trx_ctrl_state = (reg_trx_ctrl_state(0x80); + *   else the rssi register is used having range 0 (91dBm) to 28 (-10dBm
-hal_register_write(0x04, reg_trx_ctrl_state); +   For simplicity RF230_MIN_RX_POWER is based on the energy-detect value and divided by 3 when autoack is not set. 
-/*sz*/+ * On the RF230 a reduced rx power threshold will not prevent autoack if enabled and requested. 
 + * These numbers applied to both Raven and Jackdaw give a maximum communication distance of about 15 cm 
 + * and a 10 meter range to a full-sensitivity RF230 sniffer. 
 +#define RF230_MAX_TX_POWER 15 
 +#define RF230_MIN_RX_POWER 30 
 + */
 </code> </code>
  
--> gesamte Datei (Änderungen markiert mit /*sz*/) +Diese Makros lassen sich natürlich auch für das Zigbit Modul nutzen. Somit kann der ''rpl-border-router'' sowie das Modul mit den Compilerflags ''RF230_MAX_TX_POWER'' und ''RF230_MIN_RX_POWER'' kompiliert werdenDadurch ist die Reichweite pro Modul etwa auf 15cm begrenztInnerhalb des Makefiles sieht diese Anweisung dann wie folgt aus: 
-[[contiki:a-n-solutions-module:rf230bb.c|rf230bb.c]] + 
-==== 900MHz @ANY Modul ====+<code c> 
 + 
 +CFLAGS+-DRF230_MAX_TX_POWER=15 
 +CFLAGS+-DRF230_MIN_RX_POWER=30 
 + 
 +</code>
  
-max Abstand: **>20m**+=== Übertragungsgeschwindigkeit mittels ICMPv6 und PING Paketen ===
  
--> erneute Messung eventuell im Freien notwendig um genaue maxEntfernung zu bestimmen.+Da innerhalb Sensornetzwerken keine großen Datenströme übertragen werden, ist es sinnvoll die maximale Datenrate  mittels ICMP und Echo Requests durchzuführen. Hierbei sind eventuell folgende Hinweise hilfreich: 
 +  * ''ping6'' erlaubt das Versenden von Nachrichten mit einem Abstand von weniger als 100ms nicht, sollen Übertragungstests mit Paketabstand unterhalb 100ms durchgeführt werden bietet es sich an Ping Paketen abzufangen und mit Scapy zu injizieren. Hierbei müssen entweder die Header Checksummen neu berechnet werden, oder innerhalb den Modulen die Checksummenüberprüfung deaktiviert werden. Dies kann innerhalb der Datei ''contiki-conf.h'' im ''platform'' Ordner geändert werden (''#define UIP_CONF_IPV6_CHECKS''). 
 +  * Damit immer komplett gefüllte 802.15.4 Frames versendet werden, muss über ''ping6'' mit dem ''size''(-s) Parameter eine Größe von 73 bei 0 Hops und 65 bei >0 Hops verwendet werden. Um zu überprüfen ob auch wirklich die kompletten 102 Byte Nutzdaten pro Frame verwendet werden, kann innerhalb des RPL-Border-Router Quellcodes in der 6lowmac Implementierung der Debug Modus aktiviert werden. Ein Beispiel einer für diese Zwecke modifizierten Datei ist hier [[contiki:a-n-solutions-module:tests:siclowmac.c|]] zu betrachten  (Änderungen zur Signalisierung der Eingehenden und Ausgehenden Daten ist mit /*sz*/ markiert).
contiki/a-n-solutions-module/tests.1349792649.txt.gz · Zuletzt geändert: 2017/01/24 18:49 (Externe Bearbeitung)