W-F LAB 1.0
VIRTUÁLIS SEGÉDKÖNYV
Készítette:dr Piláth Károly
1996 jan.25.
Előszó 1
A számítógépet először csak a tudományos kutatásban, adminisztrációban használták, csak később lett belőle oktatási segédeszköz. A számítógép oktatásban való alkalmazásának jelentősége abban van, hogy vele a tanuló egyrészt megszerzi a legmodernebb és leghatékonyabb technika feletti uralom érzését, másrészt bensőséges kapcsolatba kerül a tudomány, matematika, az intellektuális modellalkotás legmélyebb gondolataival. A számítógépet motivációs eszközként használhatjuk. "A számítógép és a programozás elterjedésével - az emberi kultúra alapvető részévé lesz - új lehetőségek tárulnak fel az oktatás minden területen." [S. Papert 1988.] A számítógépet motivációs eszközökre alapozott oktatórendszer a tanulási-tanítási folyamatban az irányításelméleti modellnek megfelelően a következő feladatokat látja el: információforrásként szolgál, ismereteket közvetít, ellenőriz, értékel, a tanulási folyamatot irányítja, gondoskodik gyakorlásról illetve gyakoroltatásról E funkciók teljes vagy részleges ellátásara alkalmas tervszerű kifejlesztett rendszereket nevezzük oktatórendszereknek. Egy ilyen rendszer a WFIZ is, amely hatékonyan használható a fizikaoktatásban. A számítógépek oktatási célú felhasználásával kettős cél érhető el: megbarátkozni és megismertetni a tanulókat az informatikával, másrészt pedig a számítógépek pedagógiai célú alkalmazásával emelhető az oktatás színvonala. A számítógép csoportos, osztálytermi felhasználása során a tanítási-tanulási folyamatban a következő eszközfunkciókban illetve minőségben juthat szerephez: 1.általános oktatási segédeszköz 2.laboratóriumi (kísérleti és demonstrációs) eszköz 3.a gyakorlás eszköze 1. A számítógép, mint általános oktatási segédeszköz A számítógépet bevonva a tananyag kifejtésébe, a jelenségek bemutatásába, a megismerést valósághűbbé, a tanulást hatékonyabbá tehetjük. Természetesen a hagyományos oktatási segédeszközöket - mint pl. a tábla, kréta, megszokott kísérleti eszközök - sem hanyagolhatjuk el. A számítógép általános segédeszközként való alkalmazása kapcsolódik a számítógép egyéb, ismeretközlő funkcióihoz is (pl. képi megjelenítés). A számítógéppel, mint kísérleti eszközökkel végrehajtott szimuláció, a számítások elvégzése és a grafikus megjelenítés egymást kiegészítő, egymásra támaszkodó vagy egymást feltételező funkciók.
Tanulói segédeszköz Számítások Feladatmegoldás Tesztelés Könyvtár
A számítógép, mint az oktatás eszköze Tanári segédeszköz Tanítási-tanulási segédeszköz Adminisztráció Ismeretközlés Tervezés Gyakorlás Vizsgázás Szimuláció, játék Problémamegoldás
2
2. A számítógép, mint kísérleti eszköz Az iskolai kísérletek elvégzését általában kétféle cél indokolja: valamely jelenség bemutatása, demonstrációja (deduktív) a kísérlet elvégzése során kapott eredmények alapján törvényszerűségek felfedezése (induktív) 3. A számítógép, mint a gyakorlás eszköze A program fáradtság nélkül teszi fel az újabb és újabb kérdéseket, így a gyakoroltatás szünetmentes, és nemcsak kérdez, de a program képes felismerni a választ és elemzi is azt. Számítógép és fizikaoktatás A számítógép alkalmazása módszertani szempontok alapján a fizika oktatásában 1.Kísérletek szimulációja a kísérlet tanteremben nem valósítható meg mérete bonyolultsága költséges volta miatt pl. Rutherford-szórás atomerőmű működése 2.Hosszú idejű jelenségek megfigyelése az idő felgyorsítása a sok évmilliót igénylő folyamatok esetében, így a szemünk előtt zajlanak az események pl. Csillagászat égi mechanika 3.Rövid idejű jelenségek megfigyelése gyorsan lejátszódó, gyors változású jelenségek megfigyeléséhez és analizálásához ütközések rezgések oszcilloszkóp 4.Sok elemű rendszerek vizsgálata statisztikus fizikai jelenségek tanulmányozása nagy elemszámú rendszerek vizsgálata véletlenszám-generátor segítségével véletlen ütközések energiacsere megvalósítása lépésszám korlátlanul változtatható és jobban megközelíthetjük a valóságot, a statisztikus törvények könnyebben bemutathatók 5.Differenciál-egyenletek közelítő megoldása sok probléma egzakt vizsgálata vezet differenciálegyenlethez, amelyek megoldása közelítő módszerrel alkalmas lehet : mozgásegyenlet rezgések elektromágneses rezgőkörök vizsgálatára közelítő módszereket alkalmazunk
3
6.Mérési adatok feldolgozása tanulói mérések, laborgyakorlatok mérési eredményeinek kiértékelése (adatfeldolgozás) függvények felrajzolása 7.Számítógép, mint mérőeszköz alkalmazása kis átalakítással alkalmassá tehető fizikai mennyiségek mérésére, így akár a meglevő eszköznél fejlettebb mérőeszközhöz juthatunk feszültség hőmérséklet frekvencia sebesség
Felhasznált irodalom: Pribusz Katalin: Az Internet és a fizikatanár Dr. Agócs László: Mikroszámítógépek az oktatásban • Számítógép az oktatásban 54-67. o.
A WFIZ - ben a számítógép fő funkciója a folyamatok eredményének kijelzése, ill. mérési adatok gyűjtése. Az így kialakított rendszer az egyik fizika órán a mozgástörvényeket szemlélteti, egy másik osztályban az Ohm törvény felállításához szükséges adatokat méri. De felhasználható egy kémia szakkör keretein belül is pl. a közeli patak vizéből származó minta elemezéséhez is. További előnye e rendszernek még az, hogy a kijelzőként használt monitor mindenki számára jól látható különösen, ha egy írásvetítős LCD monitorra gondolunk, ami azért ma még áránál fogva a közoktatásban "luxusnak" számít. A mérési eredmények a számítógéphez kapcsolt nyomtató segítségével maradandóan dokumentálhatóak, és igy a gyermekek számára tapasztalati szinten is élménnyé tehető, hogy a PC nem csak játékprogramok futtatására használható.
4
A W-F LAB interface A WFIZ programcsomag egyik leghatékonyabb eleme a W-F LAB interface és hozzá tartozó meghajtó-programok. Az interface közvetlenül a számítógép printer portjához csatlakoztatható és használatával könnyen feldolgozható formában, kényelmesen mérhető minden olyan fizikai mennyiség, amely elektromos jellé alakítható. Ezek közül a leggyakrabban használatosak a feszültség, áramerősség, hőmérséklet, nyomás, erő, távolság, idő, frekvencia, stb. Az interface közvetlenül csak feszültség mérésére használható, de megfelelő átalakítók használatával a fent felsorolt többi mennyiség is mérhető. Erre a későbbiekben még részletesen kitérünk. A W-F LAB-ban a számítógép fő funkciója a folyamatok eredményének kijelzése, ill. mérési adatok gyűjtése. Az így kialakított rendszer az egyik fizika órán a mozgástörvényeket szemlélteti, egy másik osztályban az Ohm törvény felállításához szükséges adatokat méri. De felhasználható egy kémia szakkör keretein belül is pl. a közeli patak vizéből származó minta elemezéséhez is. További előnye e rendszernek még az, hogy a kijelzőként használt monitor mindenki számára jól látható különösen, ha egy írásvetítős LCD monitorra gondolunk. A mérési eredmények a számítógéphez kapcsolt nyomtató segítségével maradandóan dokumentálhatóak, és így a gyermekek számára tapasztalati szinten is élménnyé tehető, hogy a PC nem csak játékprogramok futtatására használható. Az interface blokkvázlata az 1. ábrán látható. A vázlatról leolvashatóak, a főbb egységek így 2 db 8 bites AD konverter, egy 8 bites DA konverter, egy méréshatár-váltó egység, egy elektromágnes meghajtására képes kimenet, egy digitális jelek fogadására képes bement, valamint egy elektronikus chopper rendszer.
1. ábra
A berendezés konkrét kapcsolási rajza a 2. ábrán látható. Ennek részletes ismerete természetesen nem feltétlenül szükséges az eszköz használatához, de segít a működésének megértésében.
5
2. ábra A hardver műszaki paraméterei : Eszköz AD konverter DA konverter Méréshatár Digitális bemenet El mágnes meghajtó
áramkör ADC0831 ZN 428E CD 4052 paralel port BC 182
felbontás 8 bit 8 bit 2V,+/- 5V,1V,100mv 1 bit 1bit max 50 mA
átalakítási idő 8x /1 fclk < 15 us /konverzió < 20us < 5us Rmagn >150 ohm
kommunikáció módja soros párhuzamos párhuzamos párhuzamos párhuzamos
Kezelőszervek, csatlakozók Az interface egy műanyag dobozban lett elhelyezve. A doboz hátoldalán található tápcsatlakozóba kell bedugni a készülékhez mellékelt AC/DC adaptert. Ez a hálózati 220V os feszültségből állít elő 12V egyenfeszültséget. Az interface áramfelvétele kb. 150 mA, így e célra megfelel a legegyszerűbb univerzális tápegység is, amely magnókhoz, vagy kalkulátorokhoz használatos. A csatlakozó középső pontja a pozitív pólus, ezért a készülékhez mellékelt tápot, ha ennek polaritása változtatható, akkor az eredeti beállítását ne változtassuk meg. Szintén a készülék hátoldalán található az a kábel, amely a számítógép nyomtató csatlakozójához csatlakoztatandó. A doboz előlapján található csatlakozók és ezek funkciója a 3. ábrán látható. Az egyes csatlakozók aktuális funkciója a szoftvermeghajtók leírásában szerepel. ( pl. Analóg In1 = az oszcilloszkóp egyes csatornájának bemenete, vagy DA out = HF generátor kimenete). Külön említést érdemel az érzékelők fogadására szolgáló bemenet, amely egy 3.5 mm sztereo jack
6
dugó fogadására alkalmas és +/- 5V tápfeszültséggel láthatja el a különféle érzékelők elektronikáját is.
3. ábra
Az intreface földelési rendszere A készülék szakszerű használatához fontos a földelési rendszer ismerete. A 3. ábrán látható, hogy az interface megérinthető kivezetései össze vannak kötve az interface-hez kapcsolt számítógép védőföldelésével, így csak olyan számítógéphez kapcsoljuk, amelynek a hálózati csatlakozója védőföldeléssel van ellátva és a számítógép is ilyen védőfölddel ellátott 220 V os hálózathoz kapcsolódik. Ennek hibátlan voltáról úgy győződhetünk meg, hogy ha a számítógép és az interface kikapcsolt állapotában összekapcsoljuk a számítógépünket az interface-el, akkor ebben az állapotban a CH1 in bemenet földpontja és a számítógép 220 Vos hálózati csatlakozójának védőföldelése között 0 ellenállást kel mérnünk.
3.ábra
7
A nyomtató adapter Mivel az interface a nyomtató adapteren keresztül kommunikál a számítógépünkkel, ezért az alábbiakban táblázatos formában összefoglaljuk nyomtató adapter portjait és a csatlakozó bekötését. Cs1 A csatlakozó lábkiosztása (-) invertált ki vagy bemenet * chopper, elektromágnes ki, be Cs1 2 3 4 5 6 7 8 9
Kimenet (cime=cim) nyomtató Wf-Lab D0 DA 0, * D1 DA 1 D2 DA 2 D3 DA 3 D4 DA 4 D5 DA 5 D6 DA 6 D7 DA 7
bit 0 1 2 3 4 5 6 7
Cs1 10 11 12 13 15
Bemenet (cime=cim+1) nyomtató Wf-Lab ACK(-) AD 2 out BUSY AD1 out PE(-) DG in SLCT(-) ERROR(-)
bit 6 7 5 4 3 x x x x
Cs1 1 14 16 17 18 19 20 21 22
Kimenet (cime=cim+2) nyomtató Wf-Lab STROBE(-) AD1,AD2 csipszelekt AUTOFEED(-) mérésh. A INIT mérésh. B SLCT(-) AD1,AD2,clock gnd gnd gnd gnd gnd gnd gnd gnd gnd gnd
bit 0 1 2 3 4 x x x x
A számítógép ROM-BIOS rendszere négy nyomtatóadapter egyidejű meglétét engedi meg, de a DOS csak hármat képes kezelni, amelyekre az LPT1, LPT2, LPT3 nevekkel hivatkozhatunk. A nyomtatóadapterek I/O báziscíme a ROM-BIOS adatterületén helyezkednek el a 408H...40FH tartományban négyszer kétbájtos formában. Ezek a következőek Cim=&H378 LPT1 Cim=&H3BC LPT2 Cim=&H278 LPT3 A főbb egységek a meghajtó-szoftvereken keresztül érhetőek el. Mivel az interface a nyomtatóproton keresztül kommunikál a számítógépünkkel, ezért minden esetben ki kell jelölni, hogy melyik portot használjuk a kommunikációhoz. A meghajtó-programok mindegyike tartalmaz egy ilyen beállítási lehetőséget a SETUP menüpontban. A programok indításkor automatikusan az LPT1 portot használják, de ha valamilyen oknál fogva ez nem lehetséges, akkor választható az LPT2 vagy az LPT3 port is. A SETUP menü kijelzi azt is, hogy melyik porthoz milyen báziscím tartozik. Mint az a 5. ábrán is látható az LPT1 portnak 378H a báziscíme.
5. ábra
8
Mivel a mérésh A és a mérésh B és az AD konverterek csipszelektje ;és az AD konverter órajele azonos címen (cím+2 ) találhatóak, ezért e címre a méréshatár, a csipszelekt és az órajel aktuális bitjeinek az összegét kell kiírni a helyes működés érdekében. Lássuk először tehát a méréshatár kiválasztását Mivel a méréshatárt vezérlő bitek a b1 és b2 vonalat használják ezek együtt 0,2,4,6 értéket vehetnek fel. A kapcsolási rajzból és a táblázatból kikövetkeztethető (ne feledjük, hogy a b1 invertált), hogy az egyes méréshatárokhoz, melyek a cím+2 című porton találhatóak, a következő értékeket kell kiírni a b1 és b2 bitnek megfelelő vonalakra. mh%= 4 [b1=1;b2=1] "2V" mh%= 6 [b1=0;b2=1] "+/- 1V" mh%= 2 [b1=0;b2=0] "+/- 5V" mh%= 0 [b1=1;b2=0] "+/- 100mV" továbbra is ennél a portnál maradva Az AD konverter órajelét vezérlő bit értéke, mivel a b3 ról van vezérelve 8 és 0 lehet. Mivel b3 is invertált kimenet ezért ClkLO%=8 [b3=0] ClkHI%=0 [b3=1] Az AD konverterek csipszelektje a b0- vonalra van bekötve, ami szintén invertált értéke 0 és 1 lehet CsLO%=1 [b0=0] CsHI%=0 [b0=1] A DA konverter programozása A főbb egységek közül a legegyszerűbb talán a DA konverter programozása. Az aktivizálás itt úgy történik, hogy a báziscímre kiírunk egy szót, és ennek értékétől függően a DA out kimeneten megjelenik a kívánt feszültség. A főprogram deklarációs részében deklaráljuk a változókat és a használni kívánt függvényeket és eljárásokat General Declaration Declare Function Inp Lib "inpout.dll" (ByVal Port%) As Integer Declare Sub out Lib "inpout.dll" (ByVal Port%, ByVal Value%) Global Const Cim1=&H378 Global Const Cim2=&H379 Global Const Cim3=&H37A DIM jel As INTEGER Sub DA() jel=200 Out Cim1, jel End Sub
' Uki=2500* (200/255) [ mV ]
Ezen egyszerű szubrutin meghívása esetén a DA kimeneten kb 2V kimenőfeszültséget mérhetünk. A AD konverter programozása
9
Az AD konverterek programozásához tekintsük át a 6. ábrát, amely az interface-ben használt ADC 0831 típusú konverter időzítését mutatja be .
6.ábra A kapcsolási rajzon látható, hogy az AD-k órajele a printer port SLCT bitjére van kötve ennek a kimenetnek a címe=cím+2, alapesetben tehát 37AH. Mindkét AD konverter csipszelekt-je ugyanezen a címen található és a STRB bithez van kapcsolva, ami a 0. bitnek fele meg és kimenet. Az AD1 kimenete a printer port BUSY (7. bit) bemenetére, az AD2 kimenete pedig a printer port ACK(-) bemenetére (6. bit) van bekötve. Ennek a bemeneti portnak a címe= cím+1, alapesetben tehát 379H. Ezen információk birtokában tehát az AD rutin a következőképpen alakul. Első lépésben engedélyezzük a mérést CS 1-ből 0-ra vált, majd a CLK kimenetre váltakozva 8 x 0-t illetve 1-et írunk és közben ezen érték 1 szintjénél kiolvassuk az aktuális bit tartalmát az AD konverterek kimenetén. Az indításkor az első órajel magasról vált alacsonyra. Az AD indítása tehát a következő Out cím+2 , CsLO%+ClkHI%+ mh% Out cím+2 , CsHI%+ClkLO%+ mh% Out cím+2 , CsLO%+ClkHI%+ mh% Majd a folytatás az engedélyezést követően For I%=8 To 0 Sep -1 Out cím+2 , CsLO%+ClkLO%+ mh% Out cím+2 , CsLO%+ClkHI%+ mh% Mer(I%)=Inp(cim+2) NEXT I% A konkrét szubrutin tehát a fentiek alapján A főprogram deklarációs részében deklaráljuk a változókat és a használni kívánt függvényeket és eljárásokat General Declaration Declare Function Inp Lib "inpout.dll" (ByVal Port%) As Integer Declare Sub out Lib "inpout.dll" (ByVal Port%, ByVal Value%) Global Const Cim1=&H378 Global Const Cim2=&H379 Global Const Cim3=&H37A Global Const ClkLO%=8 Global Const ClkHI%=0 Global Const CsLO%=1 Global Const CsHI%=0 DIM Mer(9) As INTEGER
10
SUB Adc() Out Cím3 , CsLO%+ClkHI%+ mh% Out Cím3 , CsHI%+ClkLO%+ mh% Out Cím3 , CsLO%+ClkHI%+ mh% For I%=8 To 0 Sep -1 Out Cím3 , CsLO%+ClkLO%+ mh% Out Cím3 , CsLO%+ClkHI%+ mh% Mer(I%)=Inp(Cim2) Next I% END Sub A mer=(I%) tömbből a mérési eredményt maszkolással olvashatjuk ki a konverziót követően. Sub Feldolgoz() AD1% = 0: AD2% = 0 For I% = 7 To 0 Step -1 AD1% =AD1% + 2 ^ I% * (2 + Not (mer( I%) And 128) \ 128) AD2% = AD2% + 2 ^ I% * ((mer(I%) And 64) \ 64) Next I% END sub
Az inverz bemenet 'miatt kell negálni
Az AD1 konverter mérési eredménye az AD1'% változóban az AD2-é pedig az AD2% változóban található Az elektromágnes meghajtójának programozása Az elektromágnes vezérlése a báziscím 0.-dik bitjének írásával történik. Ez a bit megegyezik a DA konverter LSB- jével, de ez a működés során általában nem okoz problémát, mert az elektromágnest valamilyen folyamat elindításának szinkronizálásához használjuk és így, ha egyszer már elengedte pl. a demonstrációs kiskocsit, így további állapota még abban az esetben is érdektelen, ha a DA konverterrel együtt használnánk. Sub ElmagBe () out &H378, 0 End Sub
'Elektromágnes bekapcsolva
Sub ElmagKi () out &H378, 1 End Sub
'Elektromágnes kikapcsolva
Az chopper programozása A chopper használata ütközések bemutatásakor, vagy X,Y koordináták egyidejű meghatározásakor lehet hasznos. Használatát lásd később. Programozása az elektromágnes programozásával megegyező mivel azonos cím azonos bitjéhez van kötve. Ha ezen bit értéke 1, akkor A+=+5V és A-=-5V valamint a B+ és a B- jelű vezeték impedanciája kb. 100 M. Ha azonban ezen bit értéke 0, akkor B+=+5V és B-=-5V valamint a A+ és a A- jelű vezeték impedanciája kb. 100 M. Helyettesítő kapcsolása az 7. ábrán látható
11
7. ábra Programozása a következő Sub ChA () out &H378, 0 End Sub Sub ChB () out &H378, 1 End Sub
'A oldal aktív
'B oldal aktív
A fenti példaprogramok VISUAL BASIC nyelven íródtak. Az interface természetesen bármilyen erre alkalmas nyelvből elérhető a fentiek alapján. Mivel az out cím%, word% és az inp(word%) utasítások a VISUAL BASIC programnyelvnek nem standard elemei, ezért ezen függvényeket deklarálni szükséges. Ennek módja a következő: Declare Function Inp Lib "inpout.dll" (ByVal Port%) As Integer Declare Sub out Lib "inpout.dll" (ByVal Port%, ByVal Value%) (Ha valaki ezen függvények részletesebb leírására kíváncsi azt az alábbiakban tanulmányozhatja ezen ismeretek azonban az interface felhasználói megértéséhez nem szükségesek. ;InpOut.DLL ;Inp and Out Visual Basic Keyword replacements ;Copyright 1991 Crescent Software ;Written by Jay Munro ; .286 .Model Medium Public Inp,Out,Wep Extrn UnlockSegment:Proc ;use LibW.LIB from Win SDK Extrn LocalInit:Proc WinProlog Macro Push DS Pop AX Nop Inc BP Push BP Mov BP,SP Push DS Mov DS,AX EndM
;useless setup code
;adjust BP ;set up stack frame
12
WinEpilog Macro Dec BP Dec BP Mov SP,BP Pop DS Pop BP Dec BP EndM .Data Required_Data_Header DB 16 dup (?)
;as required by Windows for .ASM Dlls
INIT_TEXT SEGMENT BYTE PUBLIC 'CODE' Assume CS:INIT_TEXT LibEntry Proc Far WinProlog push push push
di ds cx
; handle of the module instance ; library data segment ; heap size
; if we have some heap then initialize it jcxz CallMain ; jump if no heap specified ; call the Windows function LocalInit() to set up the heap ; LocalInit((LPSTR)start, WORD cbHeap); xor Push Push Push Call Or Jz
ax,ax DS AX CX LocalInit ax,ax error
; did it do it ok ? ; quit if it failed
; invoke the asm routine to do any special initialization CallMain: Call Far Ptr LibMain Jmp short exit error: pop pop pop
; invoke the startup routine (result in AX) ; LibMain is responsible for stack clean up
cx ds di
exit: WinEpilog
13
Ret LibEntry EndP INIT_TEXT EndS .Code ; Libmain gets these parameters ; parmW hInstance ; parmW hDataSeg ; parmW cbHeapSize LibMain Proc Far WinProlog Push -1 Call UnlockSegment Mov AX,1 WinEpilog Ret 6 LibMain EndP
;handle [bp+14] ;word [bp+12] ;word [bp+10]
;windows prolog code ;unlock data segment (just in case) ;return a 1 to caller ;windows epilog code ;3 variables (6 bytes)
Wep Proc Far WinProlog Mov AX,1 WinEpilog Ret Wep EndP ;Declare Function Inp Lib "InpOut.DLL" (Port%) as Integer ;PortNumb% = &h378 ;PortValue% = Inp(PortNumb%) Inp Proc Far WinProlog ;standard prolog macro Mov DX,[BP+6] ;load DX with port to check out In AL,DX ;input a byte Xor AH,AH ;clear high byte for return in AX WinEpilog ;standard epilog macro Ret 2 Inp EndP ;Declare Sub Out Lib "InpOut.DLL" (Port%,Value%) ;PortNumb% = &h378 ;for example only, don't try this ;Value% = 65 ;Out PortNumb%,Value% Out Proc Far ;Warning errors can be ignored! WinProlog ;standard prolog macro Mov AL,[BP+6] ;get data value into AL (bytes only) Mov DX,[BP+8] ;get port value into DX Out DX,AL ;output the byte WinEpilog ;standard epilog macro Ret 4 ;return clearing 4 bytes off stack Out EndP End
14
Irodalom: Műszaki 1991 ComputerBooks
Dr Kónya László Abonyi Zsolt
PC- elektronika PC hardver kézikönyv
Jay Munro
Writting DLL's and Controls in Assembly language at the August 1991 Microsoft Developers Conference.
1995
DIGITÁLIS VOLTMÉRŐ A W-F LAB iterface meghajtó-programjainak leírását a DVM modullal kezdjük. Miután csatlakoztattuk az interface-t a számítógépünkhöz és tápfeszültség alá helyeztük (csatlakoztattuk a tápegységet a készülék hátoldalán található aljzatba ), győződjünk meg arról , hogy a működőképességet jelző LED világít a készülék előlapjának jobb felső sarkában. Ezt követően kattintsunk rá a W-F LAB programcsoportban található DVM ikonra. Miután a program elindult a képernyőn két digitális voltmérő grafikája jelenik meg 9. ábra. A működőképességről a legegyszerűbben úgy győződhetünk meg, hogy a DA out kimenetet összekötjük CH1 in bemenettel és leolvassuk a DVM1 modulon a feszültség értékét. Ha ez az érték 0.98 +/- 0.01 V akkor biztosak lehetünk benne, hogy a berendezés kifogástalanul működik. Hiba esetén a SETUP menüből a portot, vagy a CPU speed értéket változtathatjuk mindaddig amíg a rendszer el nem indul. A főprogram eszköztára ebben az esetben egy változtatható feszültségű tápegység, amelynek feszültsége a 8. ábrán látható szimbolikus potenciométerrel szabályozható.
8. ábra A beállított feszültség értéke (UDA) a kis ablakban olvasható le. Ezt a beállított feszültséget a DA out kimeneten csatolhatjuk ki az interface-ből. Az így előállított feszültséggenerátor kimeneti ellenállása 47 ohm, a terhelhetőségnél tehát ezt mindenképpen figyelembe kell venni.
15
9. ábra A két voltmérő egyébként a valódi voltmérőkéhez hasonló kezelőszerveket tartalmaz. A DVM1 modul bemenete a CH1 in míg a DVM2 -é aCH2 in. Ha egy mérési eredményt szeretnénk feljegyezni, akkor csak kattintsunk rá a jegyzet szimbólumot ábrázoló nyomógombra, és az éppen kijelzett érték feljegyződik a műszer alatt található noteszbe. Ha a készülék "csipog", az a kijelzett felkiáltójel előjelétől függően azt jelenti, hogy a bemeneten a feszültség az adott méréshatárhoz képest pozitív, vagy negatív irányban túllépte a még mérhető értéket Áramerősséget is mérhetünk a DVM1 modullal oly módon, hogy a mérendő áramot egy ismert ellenálláson folyatjuk keresztül, és a készülék az ellenállás konkrét értékének ismeretében (amit a mA gomb megnyomása után megjelenő TEXT BOXBA írhatunk be alapértelmezés szerint ez 100 ohm) kiszámítja a körben folyó áramot. A 10. ábrán egy példát láthatunk arra hogy a DVM segítségével, hogyan mérhetjük meg az OHM törvény felállításához szükséges mennyiségeket.
10. ábra
Az O+G MODUL A WFIZ készlet talán egyik leghatékonyabb tagja az O+G modul , amely egy hangfrekvenciás generátorral és egy kétcsatornás, indítható, tárolós üzemmóddal is rendelkező oszcilloszkóppal elvégezhető mérésekre ad lehetőséget. Miután hardver egységet a 12V-os
16
DC adapter csatlakoztatásával feszültség alá helyeztük, és ezt követően a számítógép printer portjához csatlakoztattuk a SZKOP.EXE program elindításával a berendezés üzemkész. A csatlakozás módja az első ábrának megfelelően DA out => A HF generátor kimenete. Ch1 in => az oszcilloszkóp első csatornája. Ch2in => az oszcilloszkóp második csatornája1. Ebben az üzemmódban a meghajtó-szoftver két A/D konvertert ( ADC 0831 ), egy méréshatárváltót (CD 4052), egy D/A átalakítót (ZN 428E) vezérel. Az A/D és a D/A konverterek 8 bitesek.Ez a felbontás még megfelelő, ha figyelembe vesszük, hogy a kijelzőként használt monitor is csak 640x480 képpontot tud megjeleníteni és a demonstrációs méréseknél az 1% nál jobb felbontás a gyakorlatban még bőven elégséges. Ha a mérések idejét csak az AD konverterek konverziós ideje korlátozza, akkor egy mérés ideje (~20 us). Ez az érték azonban csak 100 MHz -nél magasabb órafrekvenciájú számítógépeknél jöhet szóba, mert ennél alacsonyabb érték alatt már a számítógép jelenti az időkorlátot. Az egyes kezelőszervek funkciójának megértését a valódi műszerekhez való hasonlatosság, 11. ábra, valamint egy olyan üzenetsor segíti, amely akkor jelenik meg az eszközkészlet felső sorában, amikor az egér mutatója áthalad a kezelőszervet szimbolizáló virtuális beállító-szerv felett. A kezelőszervek a WINDOWS -ban szokásos módon, az egérrel való kattintással aktivizálhatóak.
11. ábra Végezetül a 12. ábrán látható egy egyszerű demonstrációs kísérlet kapcsolási vázlata és a konkrét bekötési útmutató. Ezen ábra alapján tetszőleges saját mérési összeállítás is megkonstruálható. Az összeállítás egy párhuzamos LC kör csillapodó rezgéseit mutatja be. Az összeállítás szerint a HF generátor kimenetén rövid időre megjelenik egy impulzus, ami feltölti a kondenzátort, majd ezt követően a következő gerjesztésig a rendszer magára marad. Erről az áramkör lényegi működésében szerepet nem játszó kapcsolódióda gondoskodik. Mivel az impulzust követően a generátor kimeneti feszültsége megközelítően 0 V, a dióda polaritása biztosítja, hogy a generátor a csillapodó rezgés során ne terhelje a rezgőkört. A
17
kapcsolásban olyan 800 1000 menetes nagyméretű tekercset használtunk fel, ami a legtöbb fizikaszertár standard tartozékát képezi, a hozzá tartozó mozgatható vasmaggal együtt.
12. ábra
A csillapodó rezgés frekvenciája
az
f =
1
képletből számítható. A vasmag 2Π L∗ C kihúzásával L értéke jelentősen megváltoztatható. Ez látható az 12. ábrának azon a részén, ahol az eredményként kapott görbék egy részlete látható a képernyőn.
Az Y1-Y2 üzemmód Egy másik nagyon hasznos üzemmód az Y1-Y2 üzemmód, ahol a harmadik "elektronsugár" a két a csatornán mért feszültség különbségét rajzolja a képernyőre. Ebben az üzemmódban kényelmesen tanulmányozható pl. A soros RC körben kialakult fáziskülönbség az Ur És Uc között. Ennek kivitelezési módját láthatjuk a 13. Ábrán.
18
13. ábra
Karakterisztika rajzoló Mivel a hardver lehetőséget biztosít fűrészfeszültség előállítására ezért kényelmesen készíthető olyan meghajtó-program is amelynek segítségével felvehető különféle félvezetők áram feszültség jelleggörbéje. A mérési összeállítás a 14. Ábrán látható. A D/A konverter egyenletesen növekvő feszültséget állít elő az idő függvényében. A példánkban használt félvezetőn (dióda) átfolyó áramot egy munkaellenálláson vezetjük keresztül és így az ellenálláson mért feszültségből meghatározható az áram értéke. A félvezetőn mért feszültség pedig leolvasható a két A/D konverteren mért feszültség különbségéből. E három adat segítségével felrajzolhatjuk a vizsgált eszköz I(V) karakterisztikáját. Egy ilyen példa látható a 15. Ábrán.
19
14. ábra
15. Ábra
Tranzisztorok karakterisztikája A dióda karakterisztikájához hasonlóan, felvehetjük a tranzisztorok Ice(Uce,Ibe) jelleggörbéit
20
is. A különbség csupán annyi, hogy különböző bázisáramok mellett rajzoljuk fel az Ic Uce függvényt a 16. ábrának megfelelően. A kapott eredményekből könnyen érthetővé válik a tranzisztor működése.
16. Ábra A W-Flab-bal elkészített mérés egy BC301 tranzisztorról felvett görbesereget mutat. Az ábrán látható zaj abból adódott, hogy a bázisra menő vezeték nem volt kellően leárnyékolva igy a bázisáramhoz külső zajok is hozzáadódtak szemléltetve az erősítőkben gyakran halható brumm jelenséget is. A felvétel a 17. Ábrán latható
17. Ábra Az IDŐMÉRŐ eszköz A rendszer következő tagja az időmérő modul. Bemenetként a DG -in bemenet használható. Erre a csatlakozóra köthetünk optocsatolókat, vagy bármilyen olyan érzékelőt, ami egy esemény bekövetkezte esetén - szabályos TTL szintű - 0-1, ill. 1-0 átmenetet állít elő. A 21
bemenet védett +/- 10 v feszültségig, ennél nagyobb feszültséggel lehetőleg ne kísérletezzünk. Legbiztonságosabb, ha az interface saját beépített tápfeszültségét használjuk az érzékelők tápellátására. Ebben az esetben biztos, hogy nem terheljük túl a bemenetet. Miután elindítottuk a meghajtó-programot kattintsunk rá a ”KALIBRÁCIÓ” feliratú nyomógombra. A rendszer ebben az esetben hitelesíti az időskálát az éppen használt számítógép típustól függetlenül. Az időbeállító, virtuális potenciométerek segítségével változtathatjuk meg, az események detektálására szánt időtartamot. Ez néhány tizedtől, néhány tíz másodpercig változtatható. Miután a beállított idő letelt, a felső ablakban megjelenik az érzékelő kimenetének változásai az idő függvényében. A skáláról az események között eltelt idő, közvetlenül is leolvasható, de a rendszer ezt automatikusan is megteszi. Minden változáshoz tartozó időpontot sorban egymást követően feljegyez az események felírat alatti ablakban. A rendszer így periodikus események estén a kiszámítja a periódusidőt, és az átlag frekvenciát, az ablakban látható értékekre. A rendszer max. 64 eseményt jegyez fel. A 18. ábrán egy olyan példaalkalmazás látható, amikor a hálózati váltófeszültség periódusidejét, és frekvenciáját határoztuk meg ily módon. A példában még érzékelőre sem volt szükség, hanem a DG-in bemenetre 6 V váltófeszültséget kapcsoltunk egy 2.2k áramkorlátozó ellenállást közbeiktatva. Az eseményszámlálás kezdete beállítható, attól függően, hogy az órát lefutó, felfutó, vagy bármilyen változás detektálásától indítjuk el. Manuál üzemmódot választva az időmérést, a kéz szimbólumot ábrázoló nyomógombra való kattintással indíthatjuk el. A rendszer az elektromágnes automatikus kikapcsolását is elvégzi, ha az indítás előtt bekapcsoltuk azt. Ilyen kísérletekben pl. vasgolyókat ejtegetve különböző magasságokból, az ejtési idők ismeretében megmérhetjük a g értékét, vagy felállíthatjuk az út idő törvényt egyenletes gyorsulás esetén.
18.ábra
A g- értékének meghatározása A g értékének meghatározására a következő egyszerű összefüggést használjuk fel : h=
g 2 2∗ h ∗t ⇒ g = 2 2 t
A méréshez a W-Flab időmérő meghajtó szoftverét töltsük be. Az indítási módot állítsuk manuál üzemmódba, mérési időnek állítsunk be kb. 0.8-1 másodpercet. Az indítás előtt mindig kapcsoljuk be az elektromágnest.
22
A mérés kivitelezéséhez szereljünk fel a 19. ábrának megfelelően egy elektromágnest, egy Bunsen állványra - ismert magasságban (kb. 1m). Az elektromágnes bekapcsolt állapotában képes megtartani egy kisebb vasból készült golyót. Az időmérő szoftvere úgy lett kialakítva, hogy az eseményfigyelő órát pontosan akkor indítja el, amikor az elektromágnes kikapcsol és elengedi a vasgolyót. A vasgolyó mindaddig szabadon esik, amíg el nem éri az asztalra helyezett egyszerű kapcsolószerkezetet, amelyik egy elektromos impulzussal jelzi, hogy a golyó megérkezett. Az impulzus keletkezésének idejét az eseményfigyelő rögzíti. A rugalmas ütközés miatt több impulzus is keletkezhet, de ezek közül a számolásnál mindig az elsőt vegyük figyelembe. A mérés pontosabbá tehető oly módon, hogy az ejtést két különböző magasságból végezzük el. Ebben az esetben kiküszöbölhető a mechanikus kapcsolószerkezet kapcsolási idejéből adódó kis időmérési hiba is. Ebben az esetben a következő összefüggést használjuk. g 2 g ∗ t 1 .... h2 = ∗ t 22 2 2 2 * (h1 − h2 ) g h1 − h2 = * t 12 − t 22 ⇒ g = 2 t 12 − t 22 h1 =
(
)
(
)
19.ábra
A hangsebesség meghatározása (levegőben) A mérés lényege, hogy egy hangszóró lengőtekercsére egy nagyon rövid (néhány ms) áramimpulzust adunk, ami rövid időre lengésbe hozza a hangszóró (8 ohm 0.25W) membránját. A membrán által keltett hanghullámot, a membrántól adott távolságban elhelyezett mikrofonnal érzékeljük. A W-Flab oszcilloszkópjának segítségével megmérjük a hangkeltés, és az érzékelés között eltelt időt. A távolság és az idő ismeretében, kiszámíthatjuk a hang terjedési sebességét. A mérési hibák kiküszöbölése érdekében, a mikrofont a hangforrástól két különböző távolságra helyezzük el, és mérjük az észlelések időkülönbségét. Ezzel a módszerrel kiküszöbölhetjük az elektronika fázistolásából eredő hibákat is.
23
20.ábra A hangszórót egy a 20. ábrának megfelelő módon elkészített meghajtó fokozaton keresztül kapcsoljuk a DA out kimenetre. A mikrofon kimenő jelét célszerű egy egyszerű kis erősítőfokozattal, megfelelő jelszintre felerősíteni - a használt mikrofon típusától függően. A beállítások és egy konkrét mérés eredményként kapott oszcillogram a 21. Ábrán látható.
21. Ábra
Az f(t) MODUL Gyakori feladat, hogy valamilyen elmozdulást szeretnénk ábrázolni az idő függvényében. Klasszikus megoldás erre a problémára, hogy lemérjük a helykoordinátákat bizonyos diszkrét pontokban (pl. Km-enként), majd amikor a megfigyelt objektum elhalad ezen pontok mellet akkor stopperóránkat megállítva meghatározzuk a megtett úthoz szükséges időt. Ezen adatok segítségével megrajzolhatunk egy közelítő út idő grafikont, úgy, hogy az ismert összetartozó út idő pont párokat összekötjük egy egyenessel. Kellően sűrű méréssorozat esetén, fáradtságos munkával egész jó közelítéseket kaphatunk. E folyamat automatizálásában segít az F(t) modul. Az idő mérését már a korábbiakból is ismert módon, a számítógép belső óráját kihasználva mérjük. A hely meghatározásához, egy kis trükkhöz folyamodunk. Ennek lényege, hogy a vizsgált objektumra, amely egy a szertárakban megtalálható elektromosan jól vezető sínen mozog egy az áramszedőkhöz hasonló vékony kis rézdrótot rögzítünk. A sin mellett PVC lefolyócsőből egy a sínnel azonos hosszúságú kádat alakítunk ki, oly módon
24
hogy a csőből kivágunk hossz irányban, egy kb. 2 cm -nyi csíkot. A csövet kb. 3/4 részig megtöltjük vízzel, majd a két végpontjára feszültséget kapcsolunk. Az összeállítás a 22 ábrán látható.
22. Ábra Az ábra alapján könnyen megérthetjük, hogy az így kialakított rendszer analóg egy nagyon hosszú toló-potenciométerrel. A szénréteget itt a víz helyettesíti. Ebből következik, hogy a Ch1 bemenetre jutó feszültség arányos a kocsi x irányú helykoordinátájával. Ily módon tehát kényelmesen és kvázi folytonosan mérhetünk helykoordinátákat. A meghajtó-program pedig gondoskodik arról, hogy felrajzolja az út - idő grafikont. Az egyes pontokhoz tartozó értékek pontosan leolvashatóak, az elektronikus vonalzó bekapcsolásával. A program, amelynek használatát mikrohelp is segíti, képes még az így felvett függvény simítására, vagy felrajzolhatja a mért görbe idő szerinti deriváltját is. A 23. Ábrán egy egyenletesen gyorsuló kocsi út idő diagramja látható.
Harmonikus rezgőmozgás A fentiekhez hasonló elvek alapján elkészíthetjük az f(t) modul segítségével a harmonikus rezgőmozgás út idő diagramját is. A különbség csupán annyi, hogy a képzeletbeli potenciométerünk most nem egy vízzel telt vályúban helyezkedi el, hanem egy főzőpohár alsó és felső részében alakítottunk ki két gyűrű alakú elektródét. A kísérlet összeállítása a 24.ábrán látható. Itt különösen jól használható a deriválásra beépített funkció a sebesség idő, és a gyorsulás idő grafikon felrajzolásához. 25
23.ábra
24. Ábra ÉRZÉKELŐK Mint azt már a bevezetőben is jeleztük, lehetőség kínálkozik arra, hogy különböző érzékelők felhasználásával, olyan mérő-átalakítókat is kapcsolhassunk az interfészünkhöz amelyekkel a nem elektromos mennyiségek is mérhetőek. A következőekben erre látunk néhány példát, könnyen beszerezhető olcsó alkatrészek felhasználásával. Beszerzési forrás RET Eektronik Trade Szeged Szent Miklós u.9/a http://www.ret.hu
26
Részletes adatok
Hőmérsékletérzékelő ajánlott típus (minőség/ár) Gyártó
KTY 10-6
Siemens AG Az információ forrása http://w2.siemens.de/semiconductor/products/38/388.htm Based on the spreading resistance principle, these linear and stable semiconductor sensors offer a low-cost alternative to Ni- or Pt-metal film sensors, and a technologically superior device to PTC Thermistors. The spreading resistance principle is the direct result of the increased phonon scatter of the current flowing through the semiconductor crystal as its thermal lattice energy increases. These sensors are basically temperature dependent resistors with a positive temperature coefficient of approximately 0.75%/deg.C. Two sensor families are offered, one with a basic resistance value at 25 deg.C, (R25), of 1000 Ohm, the other with a basic resistance value at 25 deg.C, (R25), of 2000 Ohm.
27
Copyright ©1998 Siemens Aktiengesellschaft Felhasználás a winfizben A következő ábrán egy egyszerű kapcsolás látható melynek segítségével hőmérsékletet mérhetünk. A mérési tartomány -20 oC-tól 120 oC-ig. Felbontóképesség 0.1 oC.
A mérés elve a következő. Az R3 ellenállásból és a KTY 10 hőmérsékletfüggő ellenállásból álló feszültségosztó a komparátorként üzemelő TL 061 típusú integrált áramkör neminvertáló bemenetére csatlakozik. A komparátor kimenete mindaddig magas szinten van, amíg a T1 kapcsolótranzisztorral korábban kisütött C1 kondenzátor, az R1 ellenálláson keresztül fel nem töltődik akkor feszültségre, mint a neminveráló lábon lévő feszültség. Ekkor a komparátor feszültsége alacsony szintre vált. A feltöltési idő arányos a hőmérséklettel. A mérési ciklus N=0 Be: Din=Inp(ADcim1) AND 32 If Din=32 then N=N+1 Goto Be T=K1*N -K2
28
K1 és K2 állandók értékét kalibrációval állapítjuk meg. Tegyünk az érzékelő helyére 1 K ellenállást. Ebben az esetben -41=K1*N1-K2. Ezt követően tegyünk az érzékelő helyére egy 3 K ellenállást. Ekkor igaz, hogy 91=K1*N2-K2. Ebből a két egyenletből meghatározhatjuk K1 és K2 értékeit. Majd ezek ismeretében mérhetünk. A fényintenzitás mérése Az ábrán látható egyszerű kis kapcsolás kimenő feszültsége arányos a fotodióda áramával ami a fényérzékeny felületre eső fény intenzitásával arányos.
(
U ki = R1 ∗ I phot − I s
)
Az integrált áramkör kimenőfeszültségét akár a DVM modullal akár az O+G modullal megmérhetjük.
Fejlesztési lehetőségek Amennyiben az AD konverter 8 bites felbontási lehetősége nem volna elégséges, akkor kicserélhetjük egy nagyobb felbontóképességű, hasonló elven működő konverterre. Ennek lábkiosztása is majdnem azonos az eredeti kapcsolásban használt ADC0831-es típuséval. Az eltérés csak annyi hogy az 1 és az 5 láb fel van cserélve. Egy kis barkácsolással ez a probléma könnyen áthidalható.
12 bites AD konverter típus:LTC1286 gyártó:LINEAR TECHNOLOGY Beszerzési forrás RET Eektronik Trade 12-Bit Resolution •8-Pin SOIC Plastic Package •Low Cost •Low Supply Current: 250µA Typ. •Auto Shutdown to 1nA Typ. •Guaranteed ±3/4LSB Max DNL •Single Supply 5V to 9V Operation •On-Chip Sample-and-Hold •60µs Conversion Time •Sampling Rates: 12.5 ksps (LTC1286) 11.1 ksps (LTC1298) •I/O Compatible with SPI, Microwire, etc. •Differential Inputs (LTC1286) •2-Channel MUX (LTC1298) •3V Versions Available: LTC1285/LTC1288 DESCRIPTION
29
The LTC1286/LTC1298 are micropower, 12-bit, successive approximation sampling A/D converters. They typically draw only 250mA of supply current when converting and automatically power down to a typical supply current of 1nA whenever they are not performing conversions. They are packaged in 8-pin SO packages and operate on 5V to 9V supplies. These 12-bit, switched-capacitor, successive approximation ADCs include sampleand-holds. The LTC1286 has a single differential analog input. The LTC1298 offers a software selectable 2-channel MUX. On-chip serial ports allow efficient data transfer to a wide range of microprocessors and microcontrollers over three wires. This, coupled with micropower consumption, makes remote location possible and facilitates transmitting data through isolation barriers. These circuits can be used in ratiometric applications or with an external reference. The high impedance analog inputs and the ability to operate with reduced spans (to 1.5V full scale) allow direct connection to sensors and transducers in many applications, eliminating the need for gain stages. APPLICATIONS •Battery-Operated Systems •Remote Data Acquisition •Battery Monitoring •Handheld Terminal Interface •Temperature Measurement •Isolated Data Acquisition
30