LU-BST-B:PD09

From DiLab
Jump to: navigation, search

PD1

  • PD1_1: Nokompilēt un uzinstalēt uz sensoru mezgla TinyOS demo aplikāciju Blink
  • PD1_2: Paeksperimentē ar Blink aplikāciju - panākt dažādus diožu mirgošanas "patternus"
  • Pēc vēlēšanās bija iespēja risināt MD1 un uzdot jautājumus

PD2

  • PD2_1: Izpētīt un izprast TinyOS demo aplikācijas RadioCountToLeds darbību
  • PD2_2: Uzrakstīt TinyOS aplikāciju, kas sūta pa radio ziņojumus ar tipu 90 (hex sistēmā 0x5a). Ziņojuma saturs: studenta vārds latīņu burtiem, līdz 20 simboliem garš.
  • PD2_3: Uzrakstīt TinyOS aplikāciju, kas sūta pa radio divu tipu ziņojumus: ziņojumos ar tipu 91 (== 0x5b hex sistēmā) sūta skaitītaju, 2 baitus garu; ziņojumos ar tipu 92 (== 0x5b hex sistēmā) sūta motes id, 2 baitus garu.

PD3

  • PD3_1: Modificēt RadioSense programmu, lai tā sūtītu nevis sprieguma, bet gan temperatūras datus un nevis par radio, bet seriālo portu;
  • PD3_2: Modificēt PD7 rezultātu, lai paketē tiktu sūtīta aktuālā temperatūra ar divām zīmēm aiz komata (t.i., Celsija grādos, nevis izteikta Voltos). Piemēram, 25.12C grādus attēlot kā skaitli 2512. Datu konversijas algoritmu meklēt TMote Sky DataSheet dokumentā (skat. sadaļā Saites).

Praktisko darbu slaidi, par sensoriem (PDF, 112KB). Šeit iekļauti tikai šajos praktiskajos darbos stāstītie slaidi par sensoru lasīšanu.

Lekcijas un praktisko darbu slaidi, par komunikāciju un sensoriem (PDF, 256KB). Šeit iekļauti visi TinyOS slaidi, tai skaitā 2. lekcijā runātais par radio komunikāciju.

AM paketes klausīties var ar Java programmu. To palaist var sekojoši:

java net.tinyos.tools.Listen -comm serial@/dev/ttyUSB0:telosb

, kur /dev/ttyUSB0 ir ports, pie kura pieslēgts sensoru mezgls.

Ja pie programmas kopēšanas uz sensoru mezgla parādās Timeout paziņojums, pārbaudīt, vai nav palikusi palaista Listen programma, kas aizņēmusi seriālo portu. Ja ir, apstādināt Listen programmu un palaist make telosb reinstall vēlreiz.

PD4

  • PD4_1: Modificēt RadioSenseToLeds programmu, lai tā sūtītu nevis sprieguma, bet gan gaismas sensora datus un nevis par radio, bet seriālo portu. Izmantot TMote Sky datasheet, lai noteiktu, kuru ADC kanālu lasīt;
  • PD4_2: Uzrakstīt Java programmu, kas lasa no seriālā porta ziņojumus ar gaismas sensora mērījumiem. Izdrukāt mērījumu kā veselu skaitli. Par pamatu ņemt Listen klasi (support/sdk/java/net/tinyos/tools.Listen.java) un uzģenerēto RadioSenseMsg.java klasi

Java programmu nokompilē ar komandu javac:

javac ManaKlase.java

Tiek izveidots fails ManaKlase.class, kuru var palaist ar java:

java ManaKlase

Klausīšanās programmu jālaiž ar parametru -comm, tā pat kā oriģinālā Listen programma.

PD8

PD8_1: Atrast, kā TinyOS vidē mainīt raidīšanas signāla stiprumu TMoteSky sensora mezglam, kurš izmanto CC2420 radio čipu.

PD13

Pirmajā daļā tika runāts par bezvadu sensoru tīklu ievainojamību, iespējamiem uzbrukumiem un veidiem, kā ar to cīnīties. Praktisko darbu slaidi (PDF, 588KB)

Otrajā daļā praktiskais uzdevums PD13_1 "Safe Dice":

  • Dots: metamais kauliņš ar iebūvētu bezvadu sensoru mezglu, kas aprīkots ar akselerometru (tika demonstrēts iepriekšējā lekcijā). Šis metamais kauliņš māk noteikt, ar kuru pusi uz augšu tas nokritis. Pieejama arī bāzes stacija, kas aprīkota ar tādu pašu sensoru mezglu. Kauliņš var komunicēt ar bāzes staciju pa radio. Bāzes stacijas uzdevums: attēlot uzmesto kauliņa vērtību.
  • Uzdevums: Izveidot drošu protokolu datu apmaiņai starp metamo kauliņu un bāzes staciju tā, lai:
  1. Citi dalībnieki tīklā nevarētu iesūtīt nepatiesu uzmesto kauliņa vērtību;
  2. Citi dalībnieki nebūtu spējīgi noklausīties patieso uzmesto kauliņa vērtību.