Az akvárium technikai részének vezérlését, egy kidobásra szánt PC-vel oldottam meg a printerportján keresztül. Bár a jelenlegi formában 'csak' mint időkapcsoló működik, ez a későbbiekben bővítve lesz.
Hozzávalók: (zárójelben az általam használt anyagok vannak jelölve)
PC tápegység: törekedni kell, hogy AT-s típusú legyen a tápegység, és ennek megfelelően az alaplap is. Ennek előnye, hogy áramszünet után biztosan visszakapcsol. Javasolt a minél csendesebb típus.
PC alaplap...: legkisebb fogyasztásúak, a 386sx típusú processzorral integrált alaplapok voltak.
Printerport: megfelelő a normál egyirányú is.
Jelfogó (relé): jelfeszültsége legfeljebb DC 12 Volt legyen. A kapcsolható feszültség és áram értékei a kapcsolni kívánt eszköztől függnek. Nekem AC 235 Volt és 21 Watt volt (világítás).
Tranzisztor vagy FET: teljesítménye a kiválasztott jelfogótól (relé) függ. A FET előnye, hogy kisebb feszültség esik rajta.
Dióda: szinte bármilyen 'normál' dióda megfelel, ez csak a jelfogó (relé) elengedésekkor keletkező feszültségeket nyeli el.
Számold össze a vezérelni kívánt eszközöket (pl. lámpák, fűtőtestek, stb...)! Egy printerporttal 12 eszközt kapcsolhatsz, a program legfeljebb 3 printerportot támogat (3*12=36 eszköz). Készítsd el a fenti kapcsolási rajz alapján a kapcsolóelemeket!
A kapcsolóelemek (nekem: 3 kapcsolóelem, és a kapcsolt világítási eszközök)
Szereld a kiválasztott helyükre a hozzávalókat, és (billentyűzet ill. monitor segítségével) hozd üzemkész állapotba a PC-t!
Töltsd le a programot!
Futtatható akvarium.exe (7216 bájt) formátumban.
A hozzá tartozó konfigurációs fájlt akvarium.cfg (2104 bájt).
Egy kitöltött 'minta' konfigurációs fájl minta.cfg (3915 bájt) az egyszerűbb megértés elősegítendő.
Tudd meg a printerportod címét (pl. 3BC)! Ezt vagy megtudod a BIOS SETUP-ból, vagy kiírja a PC bootoláskor. Nevezd el a kapcsolandó elemeket kényed és kedved szerint (pl. az ötödik akváriumod második világítása legyen: akvárium5 világítás2)! Nyisd meg valamilyen szövegszerkesztővel az akvarium.cfg konfigurációs fájlt, és a minta.cfg-t alapul véve, értelemszerűen töltsd ki!
A konfigurációs fájlban, az általad beírt kapcsolandó eszköz sorában megtalálod, hogy a vezérlőjel hanyas lába a printerport csatlakozónak. Ezt a lábat kell a kapcsolóelem kapcsolójel vezetékével összekötni. Természetesen a kapcsolóelem a 12 Volt-ot, és a test-et a PC tápegységről kell, hogy kapja.
Készíts egy DOS-os boot floppy-t (win98-as is jó:))), és másold rá az akvarium.exe, és az általad szerkesztett akvarium.cfg fájlokat! Az autoexec.bat fájlba írd be: akvarium.exe ! Ezáltal bekapcsolás után, automatikusan indítani fogja a programot.
Rakd be a floppyt a meghajtóba és indítsd újra (kapcsold ki, majd be) a PC-t! Használd egészséggel! Ha valami nem volt érthető, akkor a lentebbi példa segítségével biztosan az lesz.:)))))
Vegyünk egy egyszerű példát (a boltból?:)))):
Ebben az esetben a konfigurációs fájlod így fog kinézni:
*** itt adhatunk neveket a printerport kimeneteinek (x helyett) pl: lampa1 *** { LPT1(3BC hex) port 02-láb, data0 jel }x { LPT1(3BC hex) port 03-láb, data1 jel }x { LPT1(3BC hex) port 04-láb, data2 jel }x { LPT1(3BC hex) port 05-láb, data3 jel }x { LPT1(3BC hex) port 06-láb, data4 jel }x { LPT1(3BC hex) port 07-láb, data5 jel }x { LPT1(3BC hex) port 08-láb, data6 jel }x { LPT1(3BC hex) port 09-láb, data7 jel }x { LPT1(3BC hex) port 01-láb, strobe jel }x { LPT1(3BC hex) port 14-láb, auto_fd jel }x { LPT1(3BC hex) port 16-láb, init jel }x { LPT1(3BC hex) port 17-láb, sel_in jel }x { LPT2(378 hex) port 02-láb, data0 jel }napkorong az égen { LPT2(378 hex) port 03-láb, data1 jel }x { LPT2(378 hex) port 04-láb, data2 jel }x { LPT2(378 hex) port 05-láb, data3 jel }x { LPT2(378 hex) port 06-láb, data4 jel }x { LPT2(378 hex) port 07-láb, data5 jel }x { LPT2(378 hex) port 08-láb, data6 jel }x { LPT2(378 hex) port 09-láb, data7 jel }x { LPT2(378 hex) port 01-láb, strobe jel }x { LPT2(378 hex) port 14-láb, auto_fd jel }x { LPT2(378 hex) port 16-láb, init jel }x { LPT2(378 hex) port 17-láb, sel_in jel }x { LPT3(278 hex) port 02-láb, data0 jel }x { LPT3(278 hex) port 03-láb, data1 jel }x { LPT3(278 hex) port 04-láb, data2 jel }x { LPT3(278 hex) port 05-láb, data3 jel }x { LPT3(278 hex) port 06-láb, data4 jel }x { LPT3(278 hex) port 07-láb, data5 jel }x { LPT3(278 hex) port 08-láb, data6 jel }x { LPT3(278 hex) port 09-láb, data7 jel }x { LPT3(278 hex) port 01-láb, strobe jel }x { LPT3(278 hex) port 14-láb, auto_fd jel }x { LPT3(278 hex) port 16-láb, init jel }x { LPT3(278 hex) port 17-láb, sel_in jel }x *** itt adhatunk neveket a ki/be kapcsolásnak *** { a portot alacsony szintre állítja (kikapcsolja)} alszik a nap { a portot magas szintre állítja (bekapcsolja) } felkelt a nap *** itt adhatunk neveket a napoknak *** { vasárnap } v { hétfő } h { kedd } k { szerda } szerdán { csütörtök } cs { péntek } pénteken { szombat } szo *** itt adhatjuk meg az eseményeket: nap óra:perc port_neve ki/be pl: k 09:05 x ki *** szerdán 11:58 napkorong az égen felkelt a nap pénteken 21:03 napkorong az égen alszik a nap
A konfigurációs fájlból kiolvasva, a lámpa kapcsolóelemének kapcsolójelét, a printerport csatlakozó 2-es lábára kell kötni (forrasztani:))).
A program alapértelmezésben az akvarium.cfg fájlt keresi (paraméter nélküli indítás), ha paraméterként megadunk neki egy fájl nevet, akkor az lesz a konfigurációs fájlunk (pl. akvarium.exe proba.cfg).
Ha áramszünet után újraindul a program, akkor 24 órával visszamenőleg 'lepörgeti' az eseményeket.
A program percenként olvassa a konfigurációs fájlt, ezért érdemes ramdisk-et létrehozni, majd arra bemásolva a fájlokat onnan futtatni azt.
A program forráskódja: akvarium.pas letölthető.