Difference between revisions of "LU-BST-B:index"

From DiLab
Jump to: navigation, search
(Lokalizācija)
(Rezultāti)
 
(41 intermediate revisions by 2 users not shown)
Line 4: Line 4:


Kursa apraksts:
Kursa apraksts:
[[http://home.lanet.lv/~elo/bst2007/BST_anotacija_lv.pdf LV]],
[[http://jupiter.cs.fmf.lu.lv/kursi/bst/BST_anotacija_09_lv.pdf LV]],
[[http://home.lanet.lv/~elo/bst2007/BST_anotacija_en.pdf EN]]
[[http://jupiter.cs.fmf.lu.lv/kursi/bst/BST_anotacija_09_en.pdf EN]]


Pasniedzējs: asoc.prof. [[User:Leo | Leo Seļāvo]]
Pasniedzējs: asoc.prof. [[User:Leo | Leo Seļāvo]]


Asistenti: [[User:Girts | Ģirts Strazdiņš]], Artis Mednis
Asistents: [[User:Girts | Ģirts Strazdiņš]]


== Kalendārs ==
== Kalendārs ==
Line 25: Line 25:
|-
|-
| 03.09.2008.
| 03.09.2008.
| [[#1. Praktiskie darbi | 1. Praktiskie darbi]]: Blink aplikācija TinyOS vidē
| [[LU-BST-B:PD#PD1 | 1. Praktiskie darbi]]: Blink aplikācija TinyOS vidē
Izsludināts [[LU-BST-B:MD#1. Mājas darbs | 1. Mājas darbs]]
Izsludināts [[LU-BST-B:MD#MD1 | 1. Mājas darbs]]
|-
|-
| 09.09.2008.
| 09.09.2008.
| [[#2. Lekcija | 2. Lekcija]]: TinyOS: ideoloģija, radio un seriāla porta komunikācija
| [[LU-BST-B:LC#2. Lekcija | 2. Lekcija]]: TinyOS: ideoloģija, radio un seriāla porta komunikācija
|-
|-
| 10.09.2008.
| 10.09.2008.
| [[#2. Praktiskie darbi | 2. Praktiskie darbi]]: TinyOS radio komunikācija
| [[LU-BST-B:PD#PD2 | 2. Praktiskie darbi]]: TinyOS radio komunikācija
|-
|-
| 16.09.2008.
| 16.09.2008.
| [[#3. Lekcija | 3. Lekcija]]: Sensoru apskats, iedalījums, savienojums ar mikrokontrolieri, lasīšanas iespējas
| [[LU-BST-B:LC#3. Lekcija | 3. Lekcija]]: Sensoru apskats, iedalījums, savienojums ar mikrokontrolieri, lasīšanas iespējas
|-
|-
| 17.09.2008.
| 17.09.2008.
| [[#3. Praktiskie darbi | 3. Praktiskie darbi]]: Sensoru lasīšana TinyOS vidē
| [[LU-BST-B:PD#PD3 | 3. Praktiskie darbi]]: Sensoru lasīšana TinyOS vidē
|-
|-
| 23.09.2008.
| 23.09.2008.
| 4. Lekcija: Radio realitāte
| 4. Lekcija: Radio realitāte
Termiņš [[LU-BST-B:MD#1. Mājas darbs | 1. Mājas darbam]] (iesūtīt līdz 12:00)
Termiņš [[LU-BST-B:MD#MD1 | 1. Mājas darbam]] (iesūtīt līdz 12:00)
|-
|-
| 24.09.2008.
| 24.09.2008.
| [[#4. Praktiskie darbi | 4. Praktiskie darbi]]: Sensoru lasīšana un radio komunikācija TinyOS vidē
| [[LU-BST-B:PD#PD4 | 4. Praktiskie darbi]]: Sensoru lasīšana un radio komunikācija TinyOS vidē
|-
|-
| 30.09.2008.
| 30.09.2008.
| [[#5. Lekcija | 5. Lekcija]]: Laika sinhronizācija
| [[LU-BST-B:LC#5. Lekcija | 5. Lekcija]]: Laika sinhronizācija
|-
|-
| 01.10.2008.
| 01.10.2008.
| [[#5. Praktiskie darbi | 5. Praktiskie darbi]]: Mājas darbu pārrunāšana, sensoru mezglu sinhronizācija TinyOS vidē
| [[LU-BST-B:PD#PD5 | 5. Praktiskie darbi]]: Mājas darbu pārrunāšana, sensoru mezglu sinhronizācija TinyOS vidē
Izsludināts [[LU-BST-B:MD#2. Mājas darbs | 2. Mājas darbs]]
Izsludināts [[LU-BST-B:MD#MD2 | 2. Mājas darbs]]
|-
|-
| 07.10.2008.
| 07.10.2008.
| 6. Lekcija: Laika sinhronizācija (turpinājums)
| 6. Lekcija: Laika sinhronizācija (turpinājums)
Izsludināts [[LU-BST-B:MD#3. Mājas darbs | 3. Mājas darbs]]
Izsludināts [[LU-BST-B:MD#MD3 | 3. Mājas darbs]]
|-
|-
| 08.10.2008.
| 08.10.2008.
Line 63: Line 63:
| 14.10.2008.
| 14.10.2008.
| 7. Lekcija: Iesūtīto projektu apskats. Lokalizācija (ievads)
| 7. Lekcija: Iesūtīto projektu apskats. Lokalizācija (ievads)
Termiņš [[LU-BST-B:MD#3. Mājas darbs | 3. Mājas darbam]] (iesūtīt līdz 12:00)
Termiņš [[LU-BST-B:MD#MD3 | 3. Mājas darbam]] (iesūtīt līdz 12:00)
|-
|-
| 15.10.2008.
| 15.10.2008.
| 7. Praktiskie darbi: Piemēra projekta pieteikums (Elektroniskā tāfele)
| 7. Praktiskie darbi: Piemēra projekta pieteikums (Elektroniskā tāfele)
Termiņš [[LU-BST-B:MD#2. Mājas darbs | 2. Mājas darbam]] (iesūtīt līdz 12:00)
Termiņš [[LU-BST-B:MD#MD2 | 2. Mājas darbam]] (iesūtīt līdz 12:00)
|-
|-
| 21.10.2008.
| 21.10.2008.
| Lekcija: Lokalizācijas algoritmi
| 8. Lekcija: Lokalizācijas algoritmi
|-
|-
| 22.10.2008.
| 22.10.2008.
| 8. Praktiskie darbi: Lokalizācija, izmantojot radio signāla jaudas mērīšanu TinyOS vidē
| Praktiskie darbi.
|-
|-
| 28.10.2008.
| 28.10.2008.
| 9. Lekcija: MAC protokoli
| Studijas
|-
|-
| 29.10.2008.
| 29.10.2008.
| [[LU-BST-B:PD#PD9 | 9. Praktiskie darbi]]: Semestra vielas atkārtojums, gatavošanās kontroldarbam
| Studijas
|-
|-
| 04.11.2008.
| 04.11.2008.
| Vidus semestra kontroldarbs (grūts)
| Vidus semestra kontroldarbs
|-
|-
| 05.11.2008.
| 05.11.2008.
| Praktiskie darbi pie individuālā projekta
| Praktiskie darbi pie individuālā projekta
|-
|-
| 10.11.2008. - 16.11.2008.
| 11.11.2008.
| 10. Lekcija: Maršrutizācija
| Studijas
|-
|-
| 17.11.2008. - 23.11.2008.
| 12.11.2008.
| [[LU-BST-B:PD#PD10 | 10. Praktiskie darbi]]: Maršrutizācijas protokola izstrāde
| Studijas
|-
|-
| 24.11.2008. - 30.11.2008.
| 18.11.2008.
| Valsts svētku diena
| Studijas
|-
|-
| 01.12.2008. - 07.12.2008.
| 19.11.2008.
| [[LU-BST-B:PD#PD11 | 11. Praktiskie darbi]]: Virtuālā mašīna bezvadu sensoru tīkliem
| Studijas
|-
| 25.11.2008.
| [[LU-BST-B:LC#12. Lekcija | 12. Lekcija]]: Bezvadu sensoru tīklu virtuālās mašīnas, viens piemērs: Mate
Izsludināts [[LU-BST-B:MD#MD4 | 4. Mājas darbs]]
|-
| 26.11.2008.
| Praktiskie darbi nenotiek
|-
| 02.12.2008.
| 13. Lekcija
|-
| 03.12.2008.
| [[LU-BST-B:PD#PD13 | 13. Praktiskie darbi]]: Bezvadu sensoru tīklu drošība
Termiņš [[LU-BST-B:MD#MD4 | 4. Mājas darbam]] (iesūtīt līdz 12:00)
|-
|-
| 08.12.2008. - 14.12.2008.
| 08.12.2008. - 14.12.2008.
Line 108: Line 122:
| Ziemassvētku un Jaungada brīvdienas
| Ziemassvētku un Jaungada brīvdienas
|-
|-
| 05.01.2009. - 11.01.2009.
| 07.01.2009.
| Konsultācijas
| Individuālās studijas un pārbaudījumi
|-
|-
| 12.01.2009. - 18.01.2009.
| 14.01.2009. 14:30
| Gala eksāmena kontroldarbs
|-
|-
| 19.01.2009. - 25.01.2009.
| 21.01.2009. 14:30
| Konsultācijas
|-
|-
| 26.01.2009. - 01.02.2009.
| 27.01.2009. 14:30
| Konsultācijas
|-
| 28.01.2009. 14:30
| Konsultācijas
|-
| 29.01.2009. 12:00
| Projektu prezentācijas
|}
|}


== Mācību materiāli ==
== Materiāli ==


=== [[LU-BST-B:LC | Lekciju materiāli]] ===
=== 1. Praktiskie darbi ===
* [[LU-BST-B:LC#2. Lekcija | 2. Lekcija]]
* PD1: Nokompilēt un uzinstalēt uz sensoru mezgla TinyOS demo aplikāciju Blink
* [[LU-BST-B:LC#3. Lekcija | 3. Lekcija]]
* PD2: 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 [[LU-BST-B:MD#1. Mājas darbs | MD1]] un uzdot jautājumus


=== 2. Lekcija ===
=== [[LU-BST-B:PD | Praktiskie darbi]] ===
* [[LU-BST-B:PD#PD1 | PD1]]
[http://jupiter.cs.fmf.lu.lv/~kursi/bst/L01-TinyOS-2008-09-09.pdf Lekcijas slaidi (PDF, 227KB)]. Šeit iekļauti tikai lekcijā izstāstītie slaidi: ideoloģija, uzdevumi (tasks), radio un seriālā porta komunikācija.
* [[LU-BST-B:PD#PD2 | PD2]]
* [[LU-BST-B:PD#PD3 | PD3]]
* [[LU-BST-B:PD#PD4 | PD4]]
* [[LU-BST-B:PD#PD8 | PD8]]
* [[LU-BST-B:PD#PD9 | PD9]]
* [[LU-BST-B:PD#PD10 | PD10]]
* [[LU-BST-B:PD#PD13 | PD13]]


=== 2. Praktiskie darbi ===
=== [[LU-BST-B:MD | Mājas darbi]] ===
* [[LU-BST-B:MD#Formulējumi | Formulējumi]]
* PD3: Izpētīt un izprast TinyOS demo aplikācijas RadioCountToLeds darbību
* PD4: 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š.
* PD5: 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.


=== 3. Lekcija ===
Lekcijā tika apskatīti dažādi sensoru tipi, to savienojuma veidi ar mikrokontrolieri (dažādi seriālie protokoli un savienojums caur ADC), seriālo interfeisu priekšrocības salīdzinājumā ar paralēlo interfeisu, kā arī konceptuālā shēma sensora savienojumam ar mikrokontrolieri, par piemēru ņemot MSP430 mikrokontrolieri, kas iebūvēts TMote Sky sensoru mezglā. Materiālus var meklēt pēc atslēgvārdiem "Sensor", "Sensor Types", "Analog-to-Digital-Converter", "ADC", "how ADC works".


=== 3. Praktiskie darbi ===
* PD6: Modificēt RadioSense programmu, lai tā sūtītu nevis sprieguma, bet gan temperatūras datus un nevis par radio, bet seriālo portu;
* PD7: 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 | Saites]]).

[http://jupiter.cs.fmf.lu.lv/~kursi/bst/L03-TinyOS-2008-09-17.pdf Praktisko darbu slaidi, par sensoriem (PDF, 112KB)]. Šeit iekļauti tikai šajos praktiskajos darbos stāstītie slaidi par sensoru lasīšanu.

[http://jupiter.cs.fmf.lu.lv/~kursi/bst/L03-TinyOS-2008-09-17-complete.pdf 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:

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

, 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 <code>make telosb reinstall</code> vēlreiz.

=== 4. Praktiskie darbi ===
* PD8: 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 [[#Aparatūra | TMote Sky datasheet]], lai noteiktu, kuru ADC kanālu lasīt;
* PD9: 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:

<code>
javac ManaKlase.java
</code>

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

<code>
java ManaKlase
</code>

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

== [[LU-BST-B:MD | Mājas darbi]] ==
Mājas darbu formulējumi iznesti atsevišķā [[LU-BST-B:MD | sadaļā]].

== Rezultāti ==
Precīzi rezultāti par katru mājas darbu netiks publicēti. Šeit redzama reitingu tabula - kādā secībā studenti sakārtoti pēc summārā vērtējuma. Vienādu vērtējumu gadījumā studenti tiek sakārtoti darbu iesūtīšanas secībā. Tabulā parādīti tikai tie studenti, kas iesūtījuši mājas darbu.

=== MD1 (Blink) rezultāti ===
# Andris Žogota
# Edgars Ozolnieks
# Ansis Atteka
# Atis Gūtmanis
# Igors Gulbinskis
# Ansis Liepkalns
# Māris Zinbergs
# Jānis Laimiņš
# Jānis Mažuika
# Aldis Dejus
# Kristaps Dinvietis
# Māris Ābols
# Ivars Reņģe
# Sergejs Klesčinskis

=== MD2 (Button Blink) rezultāti ===
# Ansis Liepkalns
# Jānis Mažuika
# Ivars Reņģe
# Andris Žogota
# Atis Gūtmanis
# Ansis Atteka
# Igors Gulbinskis
# Edgars Ozolnieks
# Aldis Dejus

=== MD3 (Kursa projekta pieteikums) rezultāti ===
# Ivars Reņģe
# Māris Ābols
# Andris Žogota
# Edgars Ozolnieks
# Ansis Atteka
# Māris Zinbergs
# Aldis Dejus
# Atis Gūtmanis
# Kristaps Dinvietis
# Ansis Liepkalns
# Agris Meļko
# Jānis Mažuika
# Igors Gulbinskis
# Andrejs Jakovļevs

=== Summārie rezultāti pēc pirmajiem trim mājas darbiem ===
# Ansis Liepkalns
# Andris Žogota
# Ansis Atteka
# Jānis Mažuika
# Atis Gūtmanis
# Ivars Reņģe
# Edgars Ozolnieks
# Igors Gulbinskis
# Aldis Dejus
# Māris Zinbergs
# Māris Ābols
# Kristaps Dinvietis
# Agris Meļko
# Andrejs Jakovļevs
# Jānis Laimiņš
# Sergejs Klesčinskis


== Saites ==
== Saites ==
* [[LU-BST:links | Bezvadu sensoru tīklu saites]]
=== TinyOS ===
* [http://www.tinyos.net TinyOS portāls]
* [http://docs.tinyos.net/index.php/Getting_started TinyOS instalācijas metodes]
* [http://docs.tinyos.net/index.php/TinyOS_Tutorials TinyOS apmācības materiāli (tutorials) ]
* [http://www.sics.se/project/mspsim MSP430 simulators]
* [http://docs.tinyos.net/index.php/TOSSIM TOSSIM - TinyOS sensoru mezgla simulators]
* [http://www.tinyos.net/tinyos-2.x/doc/pdf/tinyos-programming.pdf TinyOS grāmata (PDF, 758KB)]
* [http://www.tinyos.net/tinyos-2.x/doc/html/tep3.html TinyOS TEP3: Coding standart]
* [http://www.tinyos.net/tinyos-2.x/doc/html/tep101.html TinyOS TEP101: Analog-to-Digital Converters (ADCs)]
* [http://www.tinyos.net/tinyos-2.x/doc/html/tep114.html TinyOS TEP114: SIDs: Source and Sink Independent Drivers]
* [http://nescc.sourceforge.net/papers/nesc-ref.pdf nesC rokasgrāmata (PDF, 236KB)]
* [http://docs.tinyos.net/index.php/Mote-PC_serial_communication_and_SerialForwarder Mote-PC serial communication and SerialForwarder]

=== TinyOS izstrādes rīki ===
* [http://www.eclipse.org/cdt/ Eclipse CDT - Eclipse editors ar C++ valodas spraudni]
* [http://tos-ide.ethz.ch/wiki/pmwiki.php?n=Site.TinyOSEclipsePlugin Eclipse spraudnis nesC valodai]

=== Aparatūra ===
* [http://www.sentilla.com/pdf/eol/tmote-sky-datasheet.pdf TMote Sky sensoru mezgla "datasheet" (PDF, 780KB)]
* [http://focus.ti.com/lit/ug/slau049f/slau049f.pdf MSP430 mikrokontroliera lietotāja rokasgrāmata. (PDF, 1.5MB) ]
** Arhitektūra -> Chapter 1, Fig.1-1
** 16-bitu RISC procesors -> Chapter 3
** Fleš-atmiņas organizācija -> Chapter 5
** Digitālie ievad-izvad kanāli (uz kontroliera kājām) -> Chapter 9
** Seriālie porti, USART -> Chapter 13
** ADC realizācija -> Chapter 17
** DAC realizācija -> Chapter 19

* [[Chips_cc2420 | CC2420 Radio čips (Tiek lietots TMote Sky sensoru mezglam)]]

=== Lokalizācija ===
* [http://www.cs.virginia.edu/papers/p81-he.pdf Range-Free Localization Schemes for Large Scale Sensor Networks], T. He, C. Huang, B. Blum, J. Stankovic, and T. Abdelzaher, ACM International Conference on Mobile Computing and Networking (Mobicom), September 2003, pp. 81-95.

Latest revision as of 15:20, 12 January 2012

Bezvadu Sensoru Tīkli

LU FMF DN kurss, bakalaura programma, 2008.g rudens

Kursa apraksts: [LV], [EN]

Pasniedzējs: asoc.prof. Leo Seļāvo

Asistents: Ģirts Strazdiņš

Kalendārs

Nedēļas datumi Kursa saturs
25.08.2008. - 31.08.2008. Reģistrācijas nedēļa
02.09.2008. 1. Lekcija: Ievadlekcija
03.09.2008. 1. Praktiskie darbi: Blink aplikācija TinyOS vidē

Izsludināts 1. Mājas darbs

09.09.2008. 2. Lekcija: TinyOS: ideoloģija, radio un seriāla porta komunikācija
10.09.2008. 2. Praktiskie darbi: TinyOS radio komunikācija
16.09.2008. 3. Lekcija: Sensoru apskats, iedalījums, savienojums ar mikrokontrolieri, lasīšanas iespējas
17.09.2008. 3. Praktiskie darbi: Sensoru lasīšana TinyOS vidē
23.09.2008. 4. Lekcija: Radio realitāte

Termiņš 1. Mājas darbam (iesūtīt līdz 12:00)

24.09.2008. 4. Praktiskie darbi: Sensoru lasīšana un radio komunikācija TinyOS vidē
30.09.2008. 5. Lekcija: Laika sinhronizācija
01.10.2008. 5. Praktiskie darbi: Mājas darbu pārrunāšana, sensoru mezglu sinhronizācija TinyOS vidē

Izsludināts 2. Mājas darbs

07.10.2008. 6. Lekcija: Laika sinhronizācija (turpinājums)

Izsludināts 3. Mājas darbs

08.10.2008. 6. Praktiskie darbi: Sensoru mezglu sinhronizācija TinyOS vidē (turpinājums)
14.10.2008. 7. Lekcija: Iesūtīto projektu apskats. Lokalizācija (ievads)

Termiņš 3. Mājas darbam (iesūtīt līdz 12:00)

15.10.2008. 7. Praktiskie darbi: Piemēra projekta pieteikums (Elektroniskā tāfele)

Termiņš 2. Mājas darbam (iesūtīt līdz 12:00)

21.10.2008. 8. Lekcija: Lokalizācijas algoritmi
22.10.2008. 8. Praktiskie darbi: Lokalizācija, izmantojot radio signāla jaudas mērīšanu TinyOS vidē
28.10.2008. 9. Lekcija: MAC protokoli
29.10.2008. 9. Praktiskie darbi: Semestra vielas atkārtojums, gatavošanās kontroldarbam
04.11.2008. Vidus semestra kontroldarbs
05.11.2008. Praktiskie darbi pie individuālā projekta
11.11.2008. 10. Lekcija: Maršrutizācija
12.11.2008. 10. Praktiskie darbi: Maršrutizācijas protokola izstrāde
18.11.2008. Valsts svētku diena
19.11.2008. 11. Praktiskie darbi: Virtuālā mašīna bezvadu sensoru tīkliem
25.11.2008. 12. Lekcija: Bezvadu sensoru tīklu virtuālās mašīnas, viens piemērs: Mate

Izsludināts 4. Mājas darbs

26.11.2008. Praktiskie darbi nenotiek
02.12.2008. 13. Lekcija
03.12.2008. 13. Praktiskie darbi: Bezvadu sensoru tīklu drošība

Termiņš 4. Mājas darbam (iesūtīt līdz 12:00)

08.12.2008. - 14.12.2008. Studijas
15.12.2008. - 21.12.2008. Studijas
22.12.2008. - 04.01.2009. Ziemassvētku un Jaungada brīvdienas
07.01.2009. Konsultācijas
14.01.2009. 14:30 Gala eksāmena kontroldarbs
21.01.2009. 14:30 Konsultācijas
27.01.2009. 14:30 Konsultācijas
28.01.2009. 14:30 Konsultācijas
29.01.2009. 12:00 Projektu prezentācijas

Materiāli

Lekciju materiāli

Praktiskie darbi

Mājas darbi


Saites