O laboratoriju
Osebje
Objave
Raziskave
Pravila
Predmeti/ vaje
Izpitni roki
Rezultati
Naloge
Informacije
Real-time Systems Laboratory

Vaje - Sistemi v realnem času, RI UNI/5

New Page 1

Gradivo za vaje

Priročnik za PEARL90 (pdf, 664kb)
Uvodna predavanja za vaje (pdf, 133kb)

Osnovna navodila za izvedbo vaj (pdf, 36kb)
Dokumentacija za temperaturni senzor: (a) , (b) , (c) 
Opis V/I vmesnika (pdf, 17kb) Dokumentacija za gonilnik motorčkov

Opis V/I vmesnika (pdf, 17kb)
Naslovi vhodno/izhodnih naprav (txt, 1kb)

Splošna navodila

Pri predmetu Sistemi v realnem času je pred opravljanjem teoretičnega dela izpita potrebno opraviti in zagovarjati vaje. Naloge so ovrednotene s točkami. Vsaka točka  pomeni eno oceno, vendar le v primeru, če je naloga popolnoma opravljena. Za pridobitev podpisa, možnosti pristopa k izpitu in za pozitivno oceno je potrebno uspešno opraviti naloge za vsaj šest točk.

Pred izdelavo naloge je potrebno izvesti analizo in predlagati rešitev problema v obliki psevdokode, diagrama poteka, grobe strukture programa ipd. Rezultat je potrebno pripravit v (neformalni) pisni obliki, ki je sestavni del opravljene naloge. Za osnovo lahko uporabite Obrazec za pripravo vaj. Dokument je potrebno pripraviti pred prihodom na vaje. Brez priprav prisotnost na vajah ni možna!

Možnost dela doma

S pomočjo emulatorja za AtariST lahko pišete in prevajate programe napisane PEARL-u tudi doma. Perifernih naprav sicer ne morete priklopiti, lahko pa naloge preizkusite s pomočjo PUT ukazov. Ker gre za Emulator, ena sekunda ni vedno dolga eno sekundo.

Navodila (.pdf)
Emulator (.zip)
Razvojno okolje PEdit (.zip)

Zagovori prvi treh nalog v šolskem letu 2008/2009 bodo možni do 8.1.2009.

Besedila vaj

  1. Vzporedno delovanje opravil (1 točka)
    Izdelajte program,ki bo ponazoril vzporedno delovanje več opravil (vsaj 3). Preizkusite različne možnosti aktivacije, razvrščanja in drugih operacij nad opravili (ACTIVATE, TERMINATE, SUSPEND, CONTINUE, PREVENT, RESUME). Za ponazoritev delovanja uporabite izpis na terminalski zaslon.
    V program vključite tudi nekaj testnih procedur in funkcij ter preučite razlike med klicanjem procedur in aktivacijo opravil.

    Zagovori prvi treh nalog v šolskem letu 2008/2009 bodo možni do 8.1.2009.

  2. Sinhronizacija med opravili (1 točka)
    Izdelajte program, s katerim boste demonstrirali delovanje sinhonizacijskih mehanizmov semafor in zapah (SEMA in BOLT). Preučite vse možne operacije za delo s sinhronizatorji (REQUEST, RELEASE, TRY, PRESET, ENTER, LEAVE, RESERVE, FREE) in skušajte čim bolj nazorno prikazati njihovo delovanje.
    Preučite kaj je to smrtni objem in implementirajte scenarij pri katerem bo do smrtnega objema prišlo.

    Zagovori prvi treh nalog v šolskem letu 2008/2009 bodo možni do 8.1.2009.

  3. Delo z datotekami (1 točka)
    Izdelajte program, s katerim boste demonstrirali delovanje podatkovnih postaj. Uporabite vse vrste podatkovnih postaj (serijski vmesnik (ALPHIC), disk, binarne datoteke, BU). Preučite vse možne operacije za delo z njimi (odpiranje, zapiranje, branje, pisanje), ki jih podpira razvojni sistem in skušajte čim bolj nazorno prikazati njihovo delovanje. Za odpiranje binarnih datotek, na našem razvojnem sistemu, je potrebno uporabiti tekstovne datoteke.

    Zagovori prvi treh nalog v šolskem letu 2008/2009 bodo možni do 8.1.2009.

  4. Sledilec svetlobnega vira (1 točka)
    Izdelajte program za napravo, ki se obrača proti viru svetlobe. Na navpično os sta montirana dva svetlobna senzorja zamaknjena za določen kot. Os je povezana na motorček preko reduktorja. S primerjavo jakosti svetlobe iz obeh senzorjev poskušajte os zasukati tako, da bo obrnjena proti najmočnejšemu viru svetlobe.

  5. Regulator temperature v prostoru (1 točka)
    Izdelajte program s katerim boste nadzorovali temperaturo v nekem prostoru. Na razpolago imate temperaturni senzor, ki toploto pretvarja v analogno napetost, ventilator za hlajenje in grelec za ogrevanje. Želeno temperaturo nastavite preko tipkovnice. Če temperatura preveč odstopa od nastavljene, naj se vklopi ventilator oz. grelec.

  6. Prodajni avtomat (1 točka)
    Izdelajte program, ki bo ponazoril krmiljenje prodajnega avtomata. Prodajni avtomat sprejema žetone. Uporabnik lahko izbira med več izdelki. Vsakemu izdelku pripada ena lučka, ki se prižge, ko nekega izdelka zmanjka. Uporabnik si lahko tudi premisli in zahteva vračilo žetona. Model simulirajte s pomočjo tipk, lučk in izpisovanja na zaslonu.

  7. Polnilna linija (1 točka)
    Izdelajte program, ki bo nadzoroval polnilno linijo za polnjenje pijač. Prazne steklenice se pomikajo po tekočem traku in ko pridejo do določenega mesta se v njih spusti šoba in jih napolni s pijačo. Za ponazoritev tekočega traku uporabite motorček, za zaznavanje steklenice pa uporabite svetlobni senzor, ki zazna prekinitev svetlobnega žarka. 

  8. Semaforizacija križišča (2 točki) *
    Izdelajte program, ki bo služil za krmiljenje semaforjev v križišču. Za osnovo si oglejte delovanje katerega izmed dejanskih križišč in ga poskušajte posnemati. Dodajte tudi gumbe za prehod za pešce in "nočni režim" delovanja ko utripajo samo rumene luči. Na eno izmed cest namestite tudi "magnetno zanko", ki zazna prihod avtomobila, ter ustrezno prilagodi režim delovanja. Za rešitev problema uporabite več opravil, ki se medsebojno sinhronizirajo.

  9. Pralni stroj (2 točki)
    Preučite delovanje pralnega stroja in izdelajte program za njegov programator. V ta namen imate na razpolago model pralnega stroja, ki ima boben (motorček), simulacijo črpalke za vodo ter grelca vode. Na modelu se nahaja tudi senzor, ki pove ali je boben odprt. Implementirajte več "pralnih programov". Na zaslonu prikazujte trenutne faze v "pranju". Hitrost vrtenja "bobna" regulirajte s pulzno širinsko modulacijo. Za popestritev naloge lahko uporabite zvočne efekte, ki jih ima model na razpolago.

  10. Želva (2 ali 3 točke)
    Izdelajte enostavni model robota, ki se pomika s pomočjo dveh z motorji gnanih koles. Smer premikanja je določena z razliko hitrosti poganjanja posameznih koles. Omogočite krmiljenje robota z ukazi preko tipkovnice oz. preko naprej napisanega seznama ukazov iz datoteke. Za dodatno točko robota opremite s senzorjema svetlobe in ga sprogramirajte tako, da se bo samostojno pomikal proti najmočnejšemu viru svetlobe.

  11. Dvigalo (2 točki)
    Izdelajte program s katerim boste krmilili dvigalo v večnadstropni hiši. Vsako nadstropje je opremljeno z gumbom za klicanje dvigala. Vrata v vsakem nadstropju imajo senzor za to ali so odprta in posebno varnostno stikalo, ki omogoča ali preprečuje odpiranje vrat. V kabini dvigala se nahajajo gumbi za izbiro posameznega nadstropja. Kabina ima svoja vrata s senzorjem, ki pove ali so vrata zaprta ter senzor, ki pove ali je kabina prazna. Kabino dviguje in spušča motor. V vsakem nadstropju so nameščeni senzorji, ki povedo ali je kabina na poziciji vstopa v dvigalo. Delovanje dvigala lahko simulirate (uporabite motorček, tipke in lučke) ali pa za izdelate model.

  12. Drive by wire (2 točki)
    Izdelajte program, ki bo ponazoril upravljanje avtomobila po principu "Drive by wire". Volan in stopalke komand ne prenašajo direktno temveč se generira ustrezna električna napetost, ki preko krmilnega sistema poganja servo mehanizme. Za zajemanje vhodov uporabite potenciometre za servo mehanizme pa uporabite motorčke.

  13. Železniški prehod (2 do 3 točke)
    Izvedite podrobno modeliranje in implementacijo programa, ki bo ponazoril delovanje sistema za spuščanje zapornic na avtomatiziranem železniškem prehodu. S pomočjo UML orodja najprej izdelajte podrobno specifikacijo problema v katero vključite vse podane časovne omejitve in upoštevajte vse možne napake. Nato izdelajte program s katerim boste specifikacije implementirali. Pri tem si pomagajte z izpisom na zaslon. Za dodatno točko izdelajte model sistema, ki ga boste sestavili s pomočjo lučk, stikal in modela zapornice.
    Podrobna predstavitev zahtev je podana v tem dokumentu.

  14. Mešalna posoda (2 do 3 točke)
    Izvedite podrobno modeliranje in implementacijo programa, ki bo ponazoril delovanje industrijskega procesa mešanja tekočin. S pomočjo UML orodja najprej izdelajte podrobno specifikacijo problema v katero vključite vse podane časovne omejitve in upoštevajte vse možne napake. Nato izdelajte program s katerim boste specifikacije implementirali. Pri tem si pomagajte z izpisom na zaslon. Za dodatno točko izdelajte model sistema, ki ga boste sestavili s pomočjo lučk, stikal in motorčkov.
    Podrobna predstavitev zahtev je podana v tem dokumentu.

  15. Kopirni stroj (3 do 4 točke 2 študenta)
    Izvedite podrobno modeliranje in implementacijo programa, ki bo ponazoril delovanje kopirnega stroja. S pomočjo UML orodja najprej izdelajte podrobno specifikacijo problema v katero vključite vse podane časovne omejitve in upoštevajte vse možne napake. Nato izdelajte program s katerim boste specifikacije implementirali. Pri tem si pomagajte z izpisom na zaslon. Za dodatno točko izdelajte model sistema, ki ga boste sestavili s pomočjo lučk, stikal in motorčkov.
    Podrobna predstavitev zahtev je podana v tem dokumentu.

Povezave

Vsebina predmeta
Rezultati izpitov

Na vrh | Prva stran | O laboratoriju | Osebje | Inštitut za informatiko | E-pošta

 

RTS UM Inštitut za informatiko FERI FERI