This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Kakukkosóra multimédia alkalmazás rapid prototyping módszerrel történő összeállítása dataflow programozási architektúra alapokon, elosztott rendszerű heterogén kialakítású alacsony energiafelvételű nyílt forráskódú server környezetre, AJAX felhasználói felülettel
Pulsar komponens: megadott időközönként (ms) Triggert küld ki.
Egy ilyen komponens fogja megnoszogatni a kakukkokat 10 másodpercenként.
AP: homeaut.com http://192.168.2.1:8080
Cuckoo komponens
Cuckoo komponens: 6-ot rakunk le belőle.
Paraméterei:• melyik webes widgethez van
hozzárendelve,• melyik hangot játssza le.
AP: homeaut.com http://192.168.2.1:8080
Összekötés fail
Így minden kakukkegyszerre szólal meg.
(Az üzenetekegyszerre továbbítódnak)
AP: homeaut.com http://192.168.2.1:8080
Carousel komponens
Carousel komponens: különleges message továbbítás az out producer porton, nem egyszerre küldi el, hanem egyesével,körbe-karikába
AP: homeaut.com http://192.168.2.1:8080
Kakukkosóra kakukkoló kész
A Pulsar 10 s időközönkénttriggereli a Carousel-t,aki egyesével továbbítjaazt a cuckoo1..cuckoo6-nak.
AP: homeaut.com http://192.168.2.1:8080
Kakukkosóra Master, Heartbeat I.
Heartbeat küldése: egy másik Pulsar
Blinker: olyan webeswidget, amely Triggerérkezésekor felvillan
AP: homeaut.com http://192.168.2.1:8080
Kakukkosóra Master, Heartbeat II.
Remote: bejövő értékek Packet-be csomagolásaUdpSend: Packet küldése IP-n, másik gépre
AP: homeaut.com http://192.168.2.1:8080
Kakukkosóra Master áttekintés
heartbeat küldése
kakukkok sorban
AP: homeaut.com http://192.168.2.1:8080
Ismertebb dataflow rendszerek I.
Unix shell pipes• komponens: parancsok felparaméterezve• adattípus: csak egyféle, szöveg soronként• kapcsolat: korlátozott, 1 in (stdin), 2 out
(stdout, stderr)• futás: párhuzamos (MS-DOS: egymás után, file)• érdekesség: minden cli program helyből
komponens/usr/bin/tee
AP: homeaut.com http://192.168.2.1:8080
Ismertebb dataflow rendszerek II.
Spreadsheet (pl. Excel)• komponens: képlet (kár, hogy nincs library!)• adattípus: szám, szöveg• kapcsolat: hivatkozási hálózat• futás: csak komponens módosításkor• érdekesség: komponensekre hivatkozás címmel
És most legalább megtudtuk azt is, hogy spreadsheetek készítése programozás-e vagy sem: határeset(Egy HTML oldal elkészítése viszont nem az, ha már itt tartunk.)
AP: homeaut.com http://192.168.2.1:8080
Ismertebb dataflow rendszerek III.
Make• komponens: egyes elemek fordítása (job)• adattípus: csak egyféle, “megváltozott” trigger• kapcsolat: dependency-tree• futás: kézi indításkor minden üzenet lefut• érdekesség: párhuzamos rendszer
make -j
AP: homeaut.com http://192.168.2.1:8080
Szép visual programming I.
Quartz Composer
Terület: grafika
Mac-hez adják
AP: homeaut.com http://192.168.2.1:8080
Szép visual programming II.
Microsoft Robotics Studio
AP: homeaut.com http://192.168.2.1:8080
Szép visual programming III.
Rane Drag Net
Terület: audio rendszer
AP: homeaut.com http://192.168.2.1:8080
Szép visual programming IV.
Blender
Terület: video, img proc
opensource
AP: homeaut.com http://192.168.2.1:8080
Szép visual programming V.
Clavia Nord Modular
Win32 és Maceditor
AP: homeaut.com http://192.168.2.1:8080
Köszönjük a figyelmet!
Amíg a kérdezőkfelkészülnek,leállítjuk a master applikációt.
Innentől a slave gép veszi át afeladatot, ha minden összejön.
AP: homeaut.com http://192.168.2.1:8080
Kérdések I.
Miért jó ez?• REUSE helyett USE, azonnal bevethető kódok• kétféle fejlesztő: komponens- és applikáció-• gyorsan összedobáljuk a prototípust, gyorsan
módosítunk• hirtelen lefejlesztjük a bétás komponenst,
később ráérünk tökéletesíteni• többszálúság anélkül, hogy a komponensnek
ezzel törődni kéne (make: a gcc nem többszálú)
AP: homeaut.com http://192.168.2.1:8080
Kérdések II.
Házautomatizáláshoz miért jó?• minden ház egyedi applikáció, egyedi logikák,
egyedi felület• mindig vannak kivételek, fura kívánságok, nincs
az a konfigurációs séma, ami ne dőlne be• driver architektúra: protocol és transport
komponensek• nagyobb épületekhez többszerveres
architektúra
AP: homeaut.com http://192.168.2.1:8080
Néznivaló – Kakukkosóra Slave
Röviden: a blockert 7000 ms-onként áteresztőre állítja az enabler, 4444 ms-onként blokkolóra a heartbeat (udprecv, remote felől érkezik a master gépről). A heartbeat reseteli az enablert is, így amíg jön heartbeat, a blocker zárva marad. Ha nem jön, enabler kinyitja, és 10000 ms-onként kakukkoltat a cuckoo_clock Pulsar.