Vezérlés elkészítése

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

Hozzávalók: (zárójelben az általam használt anyagok vannak jelölve)

  1. PC tápegység
  2. PC alaplap, processzor, ram; minimum 286-os 1MB rammal (486-os, 8MB ram)
  3. 1 Printerport vezérlő, 1 floppy vezérlő, 1 bármilyen videókártya (integrálva voltak az alaplapra)
  4. floppy meghajtó, lemez, kábel (1.44MB-os)
  5. relé avagy jelfogó, legfeljebb DC12V-os, kapcsolóelemenként 1 darab (DC12V-os TAKAMISAWA)
  6. NPN tranzisztor vagy FET, kapcsolóelemenként 1 darab (FET PHP45N03)
  7. dióda, kapcsolóelemenként 1 darab (1N4148)
  8. vezeték
  9. működtető program floppy lemezen

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.

az integrált alaplap

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.

kapcsolási rajzok

tranzisztoros kapcsolóelem rajza FET-es kapcsolóelem rajza

elkészítés

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)

kapcsolóelemek kapcsolóelemek

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!

floppy és tápegység az alaplap is a helyén így talán jobban látszik a kapcsolóelemek is a helyükön

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ést 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.:)))))

egyszerű példa

Vegyünk egy egyszerű példát (a boltból?:)))):

    példaadatok:
  • a printerportod címe 378
  • egy lámpát kell kapcsolnod, amelynek a napkorong az égen nevet adtad
  • a bekapcsolási állapotnak a felkelt a nap nevet adtad
  • a kikapcsolási állapotnak az alszik a nap nevet adtad
  • a lámpádat szerdán akarod 11 óra 58 perckor bekapcsolni, és pénteken 21 óra 03 perckor kikapcsolni
  • a szerdának a szerdán, pénteknek a pénteken nevet adtad

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:))).

egyéb tudnivalók

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ő.