1
Müon-tomográf adatgyûjtõ berendezésének fejlesztése
MELEGH Hunor Gergely Budapesti M?szaki és Gazdaságtudományi Egyetem M.Sc. Villamosmérnöki szak REGARD csoport
Konzulensek:
HAMAR Gerg? atal kutató MTA KFKI Részecske és Magzikai Kutatóintézet
Budapest, 2012. június 24.
Tartalomjegyzék
1. Rendszerterv
4
1.1.
A tomográf földelési kialakítása
. . . . . . . . . . . . . . . . . . . . .
4
1.2.
Táp rendszer
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
1.3.
Trigger rendszer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
1.4.
Részletek bemutatása . . . . . . . . . . . . . . . . . . . . . . . . . . .
7
1.4.1.
Tápfeszültség reteszelés . . . . . . . . . . . . . . . . . . . . . .
7
1.4.2.
Kapcsolóüzemû táp . . . . . . . . . . . . . . . . . . . . . . . .
8
1.4.3.
Analóg tápfeszültség szûrése . . . . . . . . . . . . . . . . . . .
8
1.4.4.
Analóg csatornák védelme és szûrése
. . . . . . . . . . . . . .
9
1.4.5.
Nagyfeszültség áram-monitor
. . . . . . . . . . . . . . . . . .
10
1.4.6.
Trigger rendszer idõzítései
. . . . . . . . . . . . . . . . . . . .
10
2. Mikrokontroller kiválasztása
12
2.1.
Microchip PIC32xxx széria . . . . . . . . . . . . . . . . . . . . . . . .
12
2.2.
PIC32MX340F512H
. . . . . . . . . . . . . . . . . . . . . . . . . . .
12
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13
2.2.1.
Tokozás
2.2.2.
Perifériák
3. Nagyfeszültség modul
16
4. Szenzorok kiválasztása
18
4.1.
Hõmérséklet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
18
4.1.1.
Cél integrált áramkör . . . . . . . . . . . . . . . . . . . . . . .
18
4.1.2.
Rezisztív tulajdonságon alapuló megoldás
. . . . . . . . . . .
19
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
20
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
21
4.2.
Páratartalom
4.3.
Nyomás
5. Hardver felélesztése 5.1.
23
Elõkészítés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
23
3
TARTALOMJEGYZÉK
5.2.
Alkatrészek beültetése
. . . . . . . . . . . . . . . . . . . . . . . . . .
24
5.3.
Hardver egységek felélesztése . . . . . . . . . . . . . . . . . . . . . . .
25
6. Szoftverterv 6.1.
27
A szoftveres funkciókkal szemben támasztott követelmények
. . . . .
27
6.1.1.
Állapotgépen alapuló szoftver-modell . . . . . . . . . . . . . .
27
6.1.2.
A detektor adatait kezelõ rutinok
. . . . . . . . . . . . . . . .
28
6.1.3.
SD kártya kezelés . . . . . . . . . . . . . . . . . . . . . . . . .
31
6.2.
Idõzítések
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
32
6.3.
Muszaki jellemzok . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
34
6.3.1.
Általános paraméterek
. . . . . . . . . . . . . . . . . . . . . .
34
6.3.2.
Tesztmérések és mérési tapasztalatok . . . . . . . . . . . . . .
34
6.4.
Mellékletek 6.4.1.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Általános hibajegyzék
. . . . . . . . . . . . . . . . . . . . . .
38 43
1. fejezet
Rendszerterv
1.1.
A tomográf földelési kialakítása
A müon-tomográf adatgy?jt? berendezésének elvi kialakítását az 1.1. ábra mutatja. A rendszer négy modulra bontható. Az els? egység a detektor m?ködéséhez szükséges nagyfeszültséget állítja el?. A második részegység az adatgy?jtést megvalósító kártya, melyhez kiegészít?ként mintegy harmadik modulként egy kezel?felület csatlakozik. A legfontosabb egység maga a detektorrendszer, mely a töltött részecskék áthaladásának érzékelésére lett kifejlesztve. Mivel a detektor a kV-os tartományban üzemel, a galvanikus elválasztást érintésvédelmi szempontból biztosítani kellett. Az ennek megfelel?en kialakított elrendezésben az egyes funkcionális blokkok térben is jól elkülönülnek.
1.2.
Táp rendszer
A kártyán kialakított tápellátást az 1.2. ábra szemlélteti. Az alkalmazott PIC32xxx család összes tagja kizárólag 3.3V tápfeszültség mellett üzemel. A detektor oldali rövidtávú tárolók 74hct165 8 bites shift regiszterek, melyeknek az 5V-os megtáplálása szintén az adatgyüjtõ feladata. A nyomásmérõ szenzort kizárólag 5V-os analóg tápfeszültségrõl lehet üzemeltetni. A többi egységnek elegendõ a mikrokontrollerhez illeszkedõ 3.3V-os analóg tápforrás. A kialakítás során fõ szempont, hogy a nagy helyigényû alkatrészek számát minimalizáljuk (kapcsolóüzemû tápegység induktivitása, kapacitása, stb). Biztonsági szempontból az akkumulátor csatlakoztatási pontja után egy regenerálódó ún. multifuse biztosíték került elhelyezésre. Ennek feladata az esetleges rövid idejû rövidzárak
4
FEJEZET 1.
5
RENDSZERTERV
DETECTOR
HV+ GND
HV-
CLK Data
D5V DGND
Trigger Threshold
SE
High-Voltage
Threshold Trimmer
Trigger System
High-Voltage Power Power
H5V+
HA5V HD5V
Current Voltage
FLoad
Temp. PIC32xxx
Power Power-System
Button 1,2
Sensor Bus
Humidity Pressure
DGNDD5V SPI
EventINT Ready/
Programmer Interface
I2C LCD Button
LCD Display
SD Card
1.1. ábra. Rendszermodell
által okozható meghibásodás ill. az üzemszerû áramtúlterhelés megakadályozása. Amennyiben az akkumulátor feszültsége egy alsó korlát alá süllyed, az adatgyüjtés leállítását követõen az egység egy kapcsoló tranzisztoron keresztül lekapcsolható. A berendezést megtápláló feszültség kb. 7..14V között változhat. Teljesen feltöltött akkumulátor esetén így a digitális 5V elõállításához viszonlag nagy, 9V-os tartományt kell a tápfeszültség egységnek áthidalnia. A jó hatásfok érdekében célszerû kapcsolóüzemû stabilizátort alkalmazni. Az így elõállított digitális jelszintbõl a kis analóg terhelés miatt nem szükséges külön stabilizálást alkalmazni az analóg feszültség megvalósítsához. Elegendõ lehet a digitális vonalat egy LC szûrõvel megszûrni. A digitális és analóg oldalon is az D5V és A5V jelekbõl már egyszerû Low Drop stabilizátorokkal a digitális és analóg 3.3V-os tápok egyszerûen elõállíthatóak. A földelési viszonyok kialakításának fontos szerepe van. Az analóg és digitális jelföldek egyetlen pontban találkoznak, mely a kapcsolóüzemû stabilizátor kimeneti szûrõ kondenzátorának egyik kivezetése. Az áramkör további részein az analóg és digitális eszközök referencia szintjei szeparáltak. Annak érdekében, hogy a késöbbi nyomtatott áramkör huzalozásánál ez a feltétel biztosítva legyen, egy elválasztó alkatrész került elhelyezésre.
FEJEZET 1.
6
RENDSZERTERV
Az akkumulátor mindenkori feszültség szintje monitorozásra kerül. Az ehhez szükséges feszültségosztó a kapcsoló tranzisztor után kerül elhelyezésre.
Power System topology
A5V Battery Monitor
R2
Inductor R1
Multifuse
A3V3
LDO 3V3
D3V3
AGND
Power On/Off 7..+14V
LDO 3V3
P-Fet +
Step/Down DC/DC Converter
D5V + 0 ohm GND
GND AGND
Switch
1.2. ábra. Táp rendszer topológiája
1.3.
Trigger rendszer
Egy-egy esemény bekövetkezésének - azaz egy részecske áthaladásának érzékelése - ill. az ehhez kapcsolódó adatgyüjtõ mûvelet elindítása az 1.3. ábrán látható ún. Trigger rendszer feladata. Ehhez a detektortól érkezõ 4db triggervonalat kell felhasználni, melyek meghajtását
HEF4069
Schmitt-triggeres inverterek végzik. A vonalak
fogadását követõen egy kombinációs hálózat az impulzusok egyidejûségét kiértékeli. Amennyiben a négy kamra közül a felsõ- és alsó párból legalább egy-egy detektor jelzett, az esemény által generált bitmintát ki kell olvasni. A logikai hálozat kimenetén keletkezõ start impulzus további felhasználásra kerül. Megfelelõ idõtartalmú késleltetést követõen egy rögzített hosszúságú impulzus tölti fel a detektorban található shiftregisztereket. A késleltetésre a detektor mûködési elve miatt van szükség. Egy triggerimpulzust követõen csak az adatok teljes elvétele után történhet újabb feltöltés. Az ehhez szükséges reteszelõ logikát egy visszacsatolt
SR tároló
valósítja
meg. Amennyben a trigger fokozatot megelõzõen valamilyen meghibásodás történik, a mikrokontrollernek képesnek kell lennie bizonyos idõtartamot meghaladó események kimaradását érzékelni és az kiolvasást megkezdeni. Ezért egy ún.
FLoad
jellel
a triggerkörbe való beavatkozást biztosítottuk. Hibamentes mûködés esetén a mikrokontroller a keletkezett adatokat elveszi és a reteszelõ logikát feloldja egy jelen keresztül.
Ready
FEJEZET 1.
7
RENDSZERTERV
Trigger System topology
Event Interrupt Trigger4 Or Trigger3 AND Trigger2
Lock Signal
Delay ~1000ns
Signal form.
Serial Enable
Or Trigger1
Ready FLoad
1.3. ábra. Trigger rendszer elvi vázlata
1.4.
Részletek bemutatása
A leírás terjedelme korlátot szab a megtereveztt áramkörök részletes bemutásának, ezért a teljesség igénye nélkül néhány részletrajzot az alábbi alfejezetben szeretnék kiemelni.
1.4.1.
Tápfeszültség reteszelés
Az akkumulátoros üzemmódból fakadóan a bemeneti feszültség széles tartományban változhat. Mivel egy adott szint alatti tartomány nem használható a rendszer üzemeltetésére, az egységeket áramtalanítani kell, ezzel megakadályozva a "szivárgó" fogyasztást. Erre a célra a stabilizátorok elõtt elhelyezett tranzisztor szolgál. A reteszelõ logika egy komparátorokból felépített kapcsolás, mely a küszöbszint alatt záró irányba vezérli a tranzisztort. A küszöbszint egy zener-dióda, valamint egy ellenállás sorba iktatásával hangolható. A beállított érték a
Uk = Uz + Iz ∗ R2
(1.1)
képletbõl számítható. A bemenetre vonatkoztatva a mûködés alsó határa a
Ube = Uk ∗ kifejezés alapján meghatározható.
R3 + R5 R5
(1.2)
FEJEZET 1.
8
RENDSZERTERV
1.4. ábra. Tápfeszültség reteszelés
1.4.2.
Kapcsolóüzemû táp
A kapcsolóüzemû tápegység elvi vázlata az 1.3. ábrán látható. Az eszköz kimeneti feszültségét a visszacsatolásban található feszültségosztó szabályozza. Az energia tárolást az induktivitás, valamint a kimeneti szûrõ kondenzátor valósítja meg. A belsõ oszcillátor mûködési frekvenciáját a C7 kondenzátorral lehet beállítani. A csúcsáram védelem az R7 ellenálláson esõ feszültséget használja vezérlõ jelként. A méretezésre a gyártó által közzétet szabályok alapján egy Matlab scriptet készítettem, mely a kimeneti kondenzátor ill. kapacitás min. értékére tesz javaslatot. A gyakorlati alkalmazás során a kapott eredményeknél némileg túltervezve nagyobb értékû elemeket helyeztem el a kapcsolási rajzokon.
1.4.3.
Analóg tápfeszültség szûrése
A passzív LC-szûrõ alaptag átviteli függvénye komplex impedanciák alapján:
W (s) =
1 sC
sL +
1 sC
1 = = 1 + s2 CL
1 CL 1 CL
+ s2
=
1 CL
(s +
√ j )(s CL
−
√j ) CL
(1.3)
Jól látszik, hogy a szakasz viselkedést tiszta képzetes komplex konjugált póluspár írja le. A frekvencia tartományban a törésponti frekvenciát követõen az átvitel 40dB/dec meredekséggel csökken. A törésponti frekvenciát az
r w=|
1 | LC
(1.4)
kifejezés adja. Ezen a frekvencián a feszültség átvitelnek erõs kiemelése van.
FEJEZET 1.
9
RENDSZERTERV
1.5. ábra. Kapcsolóüzemû tápegység
1.4.4.
Analóg csatornák védelme és szûrése
Az analóg csatonákra kerülõ jeleknek illeszkedniük kell a mintavételi tétel által szabott korláthoz, mely szerint a jel spektrumában megjelenõ legnagyobb frekvenciás komponens frekvenciája nem lehet nagyobb, mint a mintavételi frekvencia fele, azaz
fjel <
fs . 2
(1.5)
A mikrokontrollerek analóg bemenetei kiemelten érzékenyek a tápfeszültséget meghaladó túlfeszültségekre, ezért védõdiódák kerültek elhelyezésre az analóg jelkörökben, ezzel megakadályozva a bemenetek, illetve a mintavételi tartó meghibásodását. Túlfeszültség esetén a diódákon folyó áramot korlátozni kell, így az RC szûrõben lévõ ellenállás kettõs szerepet kapott.
1.6. ábra. ANx csatorna védelem
FEJEZET 1.
1.4.5.
RENDSZERTERV
10
Nagyfeszültség áram-monitor
A detektort elõfeszítõ nagyfeszültség rendszer tényleges adatait a kísérletek során rögzíteni kell. az 1.3. ábrán a nagyfeszültségû oldalon elhelyezett, a detektor által felvett áram mérésére szolgáló kapcsolá látható. A referenca jelet elõállító erõsítõ a mérõerõsítõt a közös módusú jeltartomány szempontjából elhangolja, így a mérõellenálláson megjelenõ feszültségjel mérhetõvé válik. A mérõerõsítõ erõsítése a visszacsatolásban elhelyezett ellenállások értékével beállítható.
1.7. ábra. Nagyfeszültségû rendszer árammérõ ága (a részegység a mikrokontrollertõl galvanikusan elválasztott)
1.4.6.
Trigger rendszer idõzítései
A trigger rendszer feladata a berérkezõ impulzus jelek egyidejûségének kiértékelése, valamint a detektor tárolóinak a beíráshoz szükséges vezérlõ jel elõállítása. A zikai mûködésbõl fakadóan a késleltetések biztosítása végett jelformáló egységeket kellet a jelútba elhelyezni. Egy ilyen elemi blokk rajza az 1.8. ábrán látható. Az idõzítéseket az
Rsc
és
Csc
elemek értékével lehet hangolni.
FEJEZET 1.
RENDSZERTERV
1.8. ábra. Monostabil multivibrátorral megvalósított jelformáló áramkör
11
2. fejezet
Mikrokontroller kiválasztása
2.1.
Microchip PIC32xxx széria
Az egység vezérlését végzõ mikrokontroller kiválasztásának tekintetében a REGARD csoport szabad kezet adott. Az egyetlen megkötés, hogy a rendelkezésünkre álló Microchip PIC32xxx fejlesztõ rendszerrel kompatibilis legyen. Így a továbbfejlesztés lehetõsége megmarad. Bár a feladat jellege nem követeli meg a 32 bites architektúra választását, semmilyen kizáró okot nem látok annak alkalmazásával szemben. A Microchip által forgalmazott 32 bites mikrokontroller család széles választéka található a piacon, többségük könnyedén be is szerezhetõ. Jelentõs elõnyük, hogy a más gyártók hasonló kategóriás termékeiknél olcsóbbak. A kiválasztott típust a gyártó PIC32MX340F512H szériaszám alatt tartja nyilván. Ez kategóriájának egyik második "leggyengébb" tagja. Sem USB interfész, sem integrált Ethernet meghajtó nincs benne. Ezek a feladat szempontjából inkább terhelést, mint elõnyt jelentenének. Mivel a kontroller feladata az adatok ideiglenes tárolása, ezért a döntésem 8 kByte, 16 kbyte, 32 kbyte kategóriák közül - a 32 kbyte méretû RAM memória mellett tettem le. Vélemény szerint ez a típus teljes mértékben megfelel a felállított követelményeknek mind a memória méret mind pedig a perifériak tekintetében.
2.2.
2.2.1.
PIC32MX340F512H
Tokozás
Sok esetben elõfordul, hogy a legprecízebb tervezés ellenére is az áramkörök nyomtatott huzalozású lemezre ültetése okozza a legnagyobb fejtörést. Sokszor a
12
FEJEZET 2.
MIKROKONTROLLER KIVÁLASZTÁSA
13
méret korlátoz, de elõfordulnak olyan esetek is, amikor a tervhez nem illeszkedõ lábkiosztás miatt csak többrétegû NYHL felhasználásával sikerül a zikai eszközt létrehozni. Ennek nem megvalósítási, mint inkább költség vonzata van. Ezért fontos tájékozódni az adott eszköz elérhetõ tokozási változatai után. A PIC32MX sorozat tagjai 64 ill. 100 lábú tokozásban kaphatóak, melyek típusai rendre TQFP64 ill. TQFP100. A feladatot mélyebben tanulmányozva indokolatlannak tartottam a nagyobb tokozás választását, ezért a TQFP64 mellett döntöttem. Mivel a prototípusok összeszerelése "házilag" történik, ezért nagy elõny, hogy a 64 lábú tokozás még a kevésbé szakavatott technikusok számára is a kezelhetõ kategóriába tartozik.
2.2.2.
Perifériák
A kiválasztott kontroller az összes szükséges perifériával rendelkezik. A teljesség igénye nélkül a legfontosabb pontokat szeretném kiemelni.
SPI.
Az elsõdleges digitális bitminta kiolvasása egy elkülönített SPI buszon ke-
resztül történik. Mivel az SPI szabvány tulajdonképpen shiftregisztereket deniál, az tökéletesen illeszkedik a detektor oldalon található regiszter lánchoz. A feladat célszerûen kiadja, hogy SPI csatornát kell használni. A hosszútávú adattárolás SD kártyán történik. A multimédia kártyák általában - többek között - kezelhetõek SPI protokol használatával. Mivel a kiválasztott kontroller két független SPI csatornával rendelkezik, így lehetõség adódik mindkettõ kihasználására. Ugyanakkor érdemes megjegyezni, hogy egyetlen csatorna is elegendõ lenne.
I2C.
Az intelligens szenzorok egy része támogatja az I2C protokol használatát.
A kontrollerhez két független csatornán keresztül illeszthetõek a külsõ egységek. Mivel a periféria a kivezetésen osztozik az UART interfésszel, ezért a két csatorna egyszerre nem használható. Az I2C protokol alapból 7 bites címeket deniál, így egyetlen buszra is felfûzhetõek a feladat szempontjából releváns egységek.
UART.
A laboratóriumban történõ "felélesztés" során kiemelkedõ szükség van
egy jegyzõkönyvezésre használt adatátviteli vonalra, melyen keresztül egy asztali számítógépnek továbbíthatóak a mért adatok. Az egyszerû, de erre a célra rendkívül jól használható UART kommunikáció szintén megvalósítható a kiválasztott típussal.
FEJEZET 2.
MIKROKONTROLLER KIVÁLASZTÁSA
14
Mivel az eszköz normál üzemmódban a külvilágtól teljesen elszigetelt, ezért ethernet és hasonló kategóriás adatátviteli módok alkalmazása indokolatlan volna.
AD átalakító.
Az analóg vonalak mérési eredmények tárolását az analóg digitális
átalakítást követõen a kontroller kezeli. A konverzióhoz a chip-en belül elhelyezésre került egy Successive Approximáció típusú átalakító, mely max. 16 csatronán tud mintavételezni idõmultiplexelt módon. A felbontás 10 bit, ami a feladatban megjelenõ nem értékkritikus mennyiségek esetén elegendõ bitmélységet nyújt. Fontos megjegyezni, hogy bár a digitális kivezetések 5V toleránsak, azokra a pinekre, melyeken analóg csatonák is helyet kaptak, ez nem vonatkozik.
Megszakítás rendszer.
A detektor müködése semeényorientált vezérlésû. A tri-
gger rendszer feladata az érvényes adatokról értesíteni a mikrokontrollert a lehetõ legrövidebb idõ alatt. Ezt tipikusan megszakítás alapú interakció. A PIC32xxx család tagja összesen 5 külsö megszakítás vonallal rendelkeznek. Az események közötti relatív idõkülönbség mérését célszer
Input Capture
funkció használatával megvaló-
sítani. Az ehhez szükséges vonalak a megszakítás bemenetekkel közösek.
Timer.
A kiválasztott kontroller 4db 16 bites Timer-rel rendelkezik, melyek kö-
zül 2-2 kaszkádosítása révén akár 32 bites egységek is kialakíthatóak. A idõbeni "részecskehozam sûrûség" az események közötti relatív idõtartam mérése alapján meghatározható.
I/O kiosztás.
A választott 64 lábú tokozás esetén a perifériák átlapolódását
a 2.1. ábra szemlélteti. Bár a kontroller megtáplálása 3.3V-tal történik, a digitális kivezetések mind 5V toleránsak. Így az 5V-ról üzemelõ digitális egységek közvetlenül illeszthetõek.
FEJEZET 2.
MIKROKONTROLLER KIVÁLASZTÁSA
2.1. ábra. PIC32MX340F512H TQFP64 pin-diagram
15
3. fejezet
Nagyfeszültség modul
A tomográfban kialakuló elektromos tér kialakításáért a 3.1. ábrán látható nagyfeszültségmodul a felelõs. A kártya fõ alkotó eleme egy AHV TC-30 típusú blokk, mely maximálisan 1W teljesítményt képes leadni 12V bemeneti feszültség és 3000V kimeneti feszültségszint mellett. Az eszköz be- és kimenete galvanikusan elválasztott.
Vref
A5V
DC DC Converter
+ -
5V + -
Isolation: 5kV
-
in+
Current Monitor
Amp
Imeas.
H5V
1873V
Amp
Umeas. High Voltage Module 1124V
min. Bias Current
+HV
H5V + -
+
in+
1.87V 0..12V
+
in-
HGND
in-
-
Voltage Monitor
HGND -HV
AGND
A5V
DC DC Converter
H5V
Isolation: 5kV
3.1. ábra. Nagyfeszültség modul elvi felépítése
A cellák kialakításában három feszültségszint játszik szerepet. Az anód/katód1/katód2 csökkenõ sorrendben elõfeszített elektródák egymáshoz viszonyított potenciál kü-
16
FEJEZET 3.
NAGYFESZÜLTSÉG MODUL
17
lönbségét az elõállított nagyfeszültség rögzített osztásával érjük el. A kutatás szempontjából lényeges információ a tényleges anód/katód feszültség, hiszen a kialakuló elektronlavina mértékét jelentõsen befolyásolja. Ezért egy mérõellenálláson keresztül mérni kell a tényleges feszültségszintet. A galvanikus leválasztást biztosító mérõerõsítõk
Bias-árama
uA nagyságrendbe esik), mely a körben kialakuló
viszonylag nagy (
áramok szempontjából jelentõs terhelést jelent. Ezért a nagy bemeneti ellenállást
MOS-FET
bemenetû erõsítõkkel biztosítani kellett. Az elektródák által felvett szi-
várgási áram a
nA
tartományba esik. Ekkora áram csak minimális feszültségesést
okoz a körben található ellenállásokon, így az áram méréséhez használt mérõellenálláson kialakuló feszültségesés méréséhez a leválasztó erõsítõt a közös módusú mérési tartománya szempontjából egy referencia feszültséggel célszerû elhangolni. A kimeneten megjelenõ maximálisan 3000V feszültség érintésvédelmi problémákat vet fel. A galvanikus elválasztást egy jól deniált áramköri szinten kell megvalósítani. Célszerûen a trigger rendszer a nagyfeszültségû oldalon kerül elhelyezésre, mivel a galvanikus elválasztást biztosító áramköri elemek késleltetései az idõzítési paraméterek nagyságrendjébe esnek. A kombinációs hálózat által elõállított, nem idõkritikus logikai jelek egy-egy optocsatolón kapcsolódnak a feldolgozást végzõ kontrollerhez.
4. fejezet
Szenzorok kiválasztása
4.1.
Hõmérséklet
Követelmények:
Mérés pontossága: 1-2◦ C Mérési tartomány: -5..80◦ C A hõmérséklet mérésére két gyakran használt megoldás javasolható. Az egyik egy speciális cél integrált áramkör használata, a másik valamilyen hõmérséklettel arányosan változó rezisztív tulajdonság mérése.
4.1.1.
Cél integrált áramkör
Digitális jelátvitel A követelménybõl adódik, hogy
0◦ C
alatt mûködõ áramkörre van szükség. A
gyártók által ilyen célra kínált chip-ek tipikus mérési ill. mûködési tartománya
−40.. + 125◦ C. Ez a végpontra vonatkoztatva 165◦ C végkitérést jelent. Mivel a mért érték pontosságának
+ − 1◦ C 8
hosszúság szükséges (2
felbontással kell elõállni, ezért minimális
= 256 − 128..127
8
bites szó-
kettes komplemensben ábrázolva elõjellel
együtt). Természetesen ebben az esetben a kisebb szóhosszhoz nagyobb linearitás és kisebb hibakarakterisztikájú eszköz szükséges. Amennyiben egyik eszköz sem elégíti ki ezen követelményeket, a kvantálás nomításával további választási lehetõségek adódnak. Az alábbi táblázatban általam vizsgált könnyen beszerezhetõ termékek összehasonlítása látható:
18
FEJEZET 4.
19
SZENZOROK KIVÁLASZTÁSA
Type
Maxim DS1821+
NS LM75cim3*/5
Microchip Tc74
AD7414ARTZ
Op. temp
◦ -55..+125 C
◦ -55..+125 C
◦ -40..+125 C
-40..+125C
Resolution
8 bit
9 bit
8 bit
10 bit
Accuracy
◦ +-1 C
◦ +-2 C
◦ +-3 C
◦ +-1.5 C
Package
TO92/3
SOP8
SOT23
SOT23-5/6
Output
1-wire
I2C addressable
I2C x address
I2C x address
Supply
2.7..5.5V
3.3..5V
2.7..5.5V
2.7..5.5V
Price
2271 Ft
390 - 536Ft
356 - 300 Ft
784 Ft
Store
farnell
hestore,farnell,ret
farnell, chipcad
farnell
A felsorolt pontosság/ár/funkciók alapján az NS LM74cim3/5 megfelelõ választásnak bizonyul.
Analóg jelátvitel Analóg jelátvitel esetén az integrált áramkör kimenetén a hõmérséklettel korreláló tipikusan feszültség/áram mérhetõ. Ezen analóg jel feldolgozását a szenzortól elkülönített AD konverter végzi.
Type
NS LM335AZ
NS LM60
Mic. MCP9700
AD TMP05ARTZ
Op. temp
◦ -40..+100 C
◦ -40..+125 C
◦ -40..+125 C
-40..+150C
Resolution
10 mv/K
174mV-1205mV
0.2V-1.8V
9.5kHz-6kHz
◦ +-1 C
Accuracy
+-1 C
+-3 C
◦ +-2 C
Package
TO92
SOT23
SOT23
SOT23-5
Output
Voltage
Voltage
Voltage
Frequency
Supply
1mA
3.3..10V
2.3..5.5V
3..5.5V
Price
431 Ft
336 Ft
101- 67 Ft
679 Ft
Store
farnell
farnell
farnell, chipcad
farnell
4.1.2.
◦
◦
Rezisztív tulajdonságon alapuló megoldás
A rezisztív tulajdonságon alapuló eljárás lényege, hogy valamilyen nagy hõmérsékleti tényezõvel rendelkezõ anyag állandó áramú mérõkörben való felhasználásával
FEJEZET 4.
SZENZOROK KIVÁLASZTÁSA
20
a rajta esõ feszültség arányos lesz a mérendõ hõmérséklettel. A legelterjedtebb ilyen
◦ anyag a platina, melynek hõmérsékleti tényezõje 0.00385 1/ C. A 100ohm alapellenállással rendelkezõ mérõellenállást PT100-zal jelölik. Type
PT100
Op. temp
◦ -50..+500 C
Resolution
3850ppm/K
Accuracy
-
Package
2-Wire
Output
Voltage
Supply
max. 1mA
Price
300 Ft
Store
Hestore
4.1. ábra. PT100 alapkapcsolás
A mérés fontos része, az állandó mérõáramú kör kialakítása. Az ehhez szükséges mûveleti erõsítõ (ST LM358D-SMD) járulékos költséget jelent. Ilyen esetben számolnunk kell az erõsítõ "bemeneti oset - hõmérséklet" függésével. A platina ellenálláson megjelenõ feszültséget egy nagy bemeneti ellenállású mérõerõsítõvel (INA126U ) erõsítjük az AD konverter tartományába. A két erõsítõ elhelyezése a nyomtatott áramkörön valamivel nagyobb helyet foglal, mint egyetlen intelligens szenzor.
4.2.
Páratartalom
Követelmények:
Mérés pontossága: 3-5%
FEJEZET 4.
SZENZOROK KIVÁLASZTÁSA
21
Mérési tartomány: 0..100% A páratartalom mérése legtöbbször kapacitív alapon történik. A rendszer felépítésénél két irányvonal adódik. Vagy egy érzékeny szenzorlapka elektromos paraméterének (kapacitás) megváltozását használjuk fel a méréshez, vagy egy integrált áramkör által a páratartalommal arányos már feszültség jellé konvertált paramétert mérjük. Az ilyen céleszközök ára meglehetõsen drága, így az elõtérbe egyetlen típus került.
4.3.
Type
Honeywell HIH-5031
Op. temp
◦ -40..+85 C
Op. humidity
0-100%
Resolution
0.5..2.5V
Accuracy
3-7%
Package
spec.
Output
Voltage
Supply
2.7..5.5V
Price
2300 Ft
Store
farnell
Nyomás
Követelmények:
Mérés pontossága: 3-5% Mérési tartomány: 86,996 kPa..108,57 kPa (abszolút rekordok) Mivel atmoszférikus nyomás mérésérõl van szó, a mérendõ tartomány néhány
kPa
széles. A beszerezhetõ eszközök közül csak kevés olyan található, amely megfelelõ érzékenységgel rendelkezik ezen a tartományon.
FEJEZET 4.
22
SZENZOROK KIVÁLASZTÁSA
Type
FS MPXA4115AC6U
FS MPXH6115AC6U
Sensonor SP50-BT
Op. temp
◦ -40..+125 C
◦ -40..+125 C
◦ -40..+125 C
Resolution
15..115kPa
15..115kPa
80..120kPa
Accuracy
45.9mV/kPa
45.9mV/kPa
128uV/VkPa
Package
CASE 482A-01
1317A SSOP
SOIC14
Output
Voltage
Voltage
Voltage
Supply
5V
5V
5V
Price
- Ft
3453 Ft
4136 Ft
Store
-
farnell,ret
farnell
Bár a paraméterek alapján a Sensonor gyártmánya megfelelõ választásnak tûnhet, sajnos a gyengén dokumentáltság a háttérbe szorította.S
5. fejezet
Hardver felélesztése
5.1.
Elõkészítés
Az elõzõ féléves munka eredményeként a nyomtatott huzalozású lemezek az 5.1. ábrán látható formában elkészültek. Így a féléves munkám ezek összeszerelésével kezdõdött. A gyártáshoz szükséges fontosabb paraméterek a 6.4. mellékletben megtalálhatóak.
5.1. ábra. B: Processzor kártya, K: Nagyfeszültség egység, J: HMI modul, KL: SD kártya kiegészítõ
Az alkatrészek beültetése elõtt összevetettem az elkészült kártyák rajzolatát a tervekben szereplõ mintázattal hibás bekötés és/vagy gyártási hibák után kutatva.
23
FEJEZET 5.
HARDVER FELÉLESZTÉSE
24
Az óvatosság eredményre vezetett, hiszen sikerült is egy nem kritikus gyártási hibát detektálnom. Bár elsõ ránézésre szinte teljesen illeszkedik a rajzolat egy valódi huzalvezetéshez, az 5.2. ábrán látható mikroszkópos felvételen látszik, hogy nem szándékos kötésrõl van szó.
5.2. ábra. Gyártási hiba
5.2.
Alkatrészek beültetése
Az öt darab nyomtatott huzalozású lemezen (Processzor kártya, nagyfeszültség modul, HMI egység, SD kártya tartó és a kiegészítõ szenzor kártyák) összesen több, mint 300 db alkatrész került kézzel beültetésre. Az idõigényes, de prototípus eszközök esetén elengedhetetlen beüzemelést az összeszereléssel párhuzamosan végeztem. Elsõ lépésben a táprendszert ültettem be. A tápellátás hierarchikus felépítésû. A különbözõ feszültség szintekhez egy-egy visszajelzõ led tartozik, ezzel megkönnyítve a tápellátás ellenõrzését. A sematikus rajzon a tápcsatlakozó polaritása fordított, így a megszokottól eltérõ hozzávezetõ kábelt kell alkalmazni. Mivel speciális eszközrõl van szó, így ez a mûködés szempontjából nem okoz gondot, ugyanakkor fokozott gyelmet igényel. Második lépésként - a táprendszert követõen - az eszköz vezérlését és a szoftver futtatását végzõ PIC32MX340F512H jelzésû mikrokontroller ültettem be. Ellenõriztem a forraszkötések minõségét, majd a programozó csatlakozón keresztül feltöltöttem egy tesztprogramot a vezérlõre. A program egy egyszerû LED-villogtatás
FEJEZET 5.
HARDVER FELÉLESZTÉSE
25
funkciót valósított meg. Ezzel validáltam a kontroller elérhetõségét és annak alapvetõ mûködését is. A perifériák tesztelésére fokozatosan került sor. A mikrokontroller felélesztését után elkezdtem a HMI modul összeszerelését. Elõször az SD kártya foglalatára ültettem be az alkatrészeket, mely szorosan illeszkedik a kijelzõt tartó kártyához. Ennek zikai méretei kissé módosítanom kellett, azonban a tervezés során ilyen mértékû változtatásokra megfelelõ ráhagyással terveztem. Az SD kártya foglalatának beültetése után az LCD kijelzõ és a nyomógombok felszerelése következett. Egy egyszerû kódrészlettel ellenõriztem ezen funkció áramköri viselkedését. Miután a mikrokontroller képes volt az SD kártyára sikeres írási és olvasási mûveleteket végezni, a trigger-körben található komponenseket is elhelyeztem a nyomtatott áramkörön. Elõször az elkülönített (optocsatolókkal galvanikusan leválasztott) egység mûködését ellenõriztem egy külsõ impulzus generátor segítségével. A vizsgálat eredményeként egy tervezési hibát lokalizáltam, ami a sematikus rajzon egy nem összetartozó elnevezési formátumból adódott (READY/ - R/E/A/D/Y). Miután az áramkörön a hibát kijavítottam, az egység megfelelõen mûködött. Ezután felszereltem a processzor felé galvanikus leválasztást biztosító (jelútban) optocsatolókat is. Ebben az állapotban az eszköz már az alapvetõ adatgyûjtõ funkciókra készen állt. Következõ lépésként a nagyfeszültség modul összeszerelését végeztem el. Elõször a különálló tápáramkör került beültetésre, melynek mûködését ellenõriztem. Az AHV TC30-as különálló nagyfeszültség generátort a kimeneti osztó áramkörének beforrasztása után helyeztem el a kártyán, így lehetõségem adódott az osztott kimeneti feszültség monitorozására is. A bemeneti kapcsoló tranzisztor hibás rajzolata miatt egy másik alkatrész került elhelyezésre. Bár a leválasztó erõsítõket beforrasztottam a helyükre, funkciójuk az elsõ mérések során nem lettek kihasználva. Végül az analóg szûrõket, illetve a kiegészítõ adatokat szolgáltató szenzorokat is elhelyeztem mind a processzor kártyán, mind a kiegészítõ áramkörökön is.
5.3.
Hardver egységek felélesztése
A nyomtatott áramkörök összeszerelésével párhuzamosan az egyes részegységek felélesztését is elvégeztem. A mikrokontroller üzembe helyezése után az 5.1. táblázatban megjelölt méréssorozatot hajtottam végre. A mérések során felmerült gyártási hibákat, forrasztási pontatlanságokat, hibás alkatrészeket és a tervtõl való eltéréseket feljegyeztem és a szükséges módosításokat
FEJEZET 5.
HARDVER FELÉLESZTÉSE
26
5.1. táblázat. A zikai vonalak bemérésének ütemezése Munkafázis
Munka leírás
1.fázis
Egyszerû port I/O rutin: egy LED villogtatása timer interrupt használatával
2.fázis
0.5Hz
frekvencián.
Az SD kártyának az SPI buszon keresztül "master" üzemmódban egy bájtsorozat elküldése.
3.fázis
Az LCD kijelzõ párhuzamos vonalainak billegtetése, majd parancsszavak elküldése a beültetett kijelzõnek (pl. Command: Turn-On).
4.fázis
Külsõ interrupt funkció lekezelésének ellenõrzése (gombnyomás esetén).
5.fázis
A detektor oldali SPI busz CLK, DataIN, SS/ vonalak ellenõrzése processzor oldalon és a leválasztott detektor oldalon egyaránt.
6.fázis
Input Capture funkció zikai rétegének lekezelése külsõ impulzus generátorral.
7.fázis
Trigger rendszer idõzítéseinek mérése oszcilloszkóppal.
8.fázis
Trigger rendszer reteszelésének kimérése.
9.fázis
Nagyfeszültség egység tápellátásának kimérése.
10.fázis
Nagyfeszültség osztásarányának megmérése.
11.fázis
Analóg szenzorok értékeinek kimérése.
elvégeztem. A fõbb eltérések a 6.4.1 fejezetben olvashatók. Végeredményként egy összeszerelt, adatgyûjtésre alkalmas rendszer került a fejlesztés következõ fázisába. Következõ lépés a szoftverterv elkészítése és lekódolása volt.
6. fejezet
Szoftverterv
A mikrokontrolleren alapuló eszközök rugalmasan és egyszerûen illeszthetõek speciális funkciókat megvalósító eszközökhöz, ill. alkalmasak lehetnek a feladat bonyolultságának függvényében azok vezérlõ egységként történõ alkalmazására is. Jelen esetben a feladat egy jól specikált, dedikált alkalmazás, melynek komplexitása alapján egy PIC32 mikrovezérlõ kiválóan alkalmas a felmerülõ feladatok irányítására. A vezérlõn futó kód a Microchip cég által kiadott MPLAB környezetben fejleszthetõ a kiegészített C nyelv eszközeivel.
6.1.
A szoftveres funkciókkal szemben támasztott követelmények
A szoftveres funkciókkal szemben támasztott alapvetõ követelményeket a 6.1. táblázatba foglalom össze. A fenti követelmények alapján egy állapotgépen alapuló szoftvermodell felállítása mellett döntöttem, mely megfelelõ hatékonyság mellett teszi lehetõvé a szeparálható funkciók egyesével történõ fejlesztését, ezzel megkönnyítve az átlátható kódolást, a továbbfejlesztés és funkcióbõvítések alkalmazásának lehetõségét.
6.1.1.
Állapotgépen alapuló szoftver-modell
Az állapotgépen alapuló szoftveres megoldások széles körben elterjedtek a beágyazott funkciók tervezése területén. Az egyszerû kezelhetõség és átláthatóság miatt a hatékony és gyors fejlesztõi módszerek közé sorolható. Amennyiben a feladat funkciói lehetõvé teszik az egyes funkciók szeparálását, célszerû állapot-modell alapján megvalósítani a programtervet.
27
FEJEZET 6.
SZOFTVERTERV
28
6.1. táblázat. Szoftver követelmények Funkciószám
Funkció leírás
1.funkció
A perifériák inicializálása, beleértve a kijelzõ, nagyfeszültség modulokat is.
2.funkció
Események között eltelt idõ mérése.
3.funkció
A detektor adatainak puerelése belsõ memóriában.
4.funkció
Szenzorok adatainak puerelése belsõ memóriában.
5.funkció
Az SD kártya lerendszerének kezelése.
6.funkció
A mért adatok archiválása a SD kártyán.
7.funkció
A külsõ nyomógombok jeleinek lekezelése.
8.funkció
Menü-rendszer alkalmazásának biztosítása a felhasználó számára.
9.funkció
Nagyfeszültség áramkörének ki- és bekapcsolása.
10.funkció
Esemény kimaradás felismerése és a szükséges lépések automatikus elvégzése.
Mivel az alkalmazásunk lehetõvé teszi a processzek elhatárolását, egy állapotgépen alapuló szoftver modell felállítása mellett döntöttem. Minden egyes részfeladathoz egy állapotot rendeltem. A program struktúra vázlatát a 6.1. ábra mutatja.
A fõbb állapotokat a 6.2. táblázat foglalja össze. Az állapotok közötti átmeneteket két típusba sorolhatjuk azok kiváltó oka alapján: külsõ megszakítás jel hatására váltunk funkciót (pl. esemény bekövetkezése), vagy belsõ folyamat eredménye alapján (pl. szekvencia vége). Az eseményvezérelt szoftverek jól deniálható átmenetekkel rendelkeznek. A külsõ megszakítások alapján történõ funkció váltások között a feladatok prioritását azok fontossága alapján határoztam meg. Így a legmagasabb prioritással az események kiolvasását végzõ processz rendelkezik.
6.1.2.
A detektor adatait kezelõ rutinok
A detektor adatait egy belsõ adatstruktúra tárolja, melyet a 6.3. táblázat ír le. Az eseményekhez rendelt adatokat lapokba szervezve, egyenként száz esemény kerül puerelésre az archiválási mûvelet elõtt. Összesen két lap kapott helyet a memóriában. Amennyiben egy részecske teljesíti a trigger feltételeket, az adatok ideiglenesen
FEJEZET 6.
29
SZOFTVERTERV
6.1. ábra. Állapotgépen alapuló szoftver-modell
az
1.
sorszámmal rendelkezõ puerbe tárolódnak. Amennyiben ez a tárterület meg-
telik, a két puer szerepet cserél, az
1. sorszámú tartalmát a mentést végzõ processz
kiírja az SD kártyára, míg a további eseményekhez rendelt adatok a
2.
sorszámú
tárolóba kerülnek. A lapcsere ciklikusan ismétlõdik. A bitminta kiolvasása a detektor oldali adattárolókból a következõ szekvencia szerint történik.
Megszakítás kezelõ.
Amennyiben egy esemény teljesíti a trigger feltételeket és
a rendszer adatgyûjtés szempontjából (lásd késõbb) érvényes állapotban van, egy megszakítás generálódik. A megszakítást lekezelõ rutin érvényre jutását követõen a
capture
perifériát kikapcsolja, a következõ érvénye tárterületre menti az aktuális
adatokat.
GetDetectorData().
Elõször hozzárendeli az aktuális azonosítót, majd normál
olvasás esetén (külsõ trigger jel) a mért idõkülönbséget, mesterséges esemény esetén a számolt idõértéket menti. Ezután a digitális bitmintát kiolvassa a külsõ shift regiszterekbõl. A kiolvasott adatokat továbbítjuk az UART modulon keresztül. Ezután rendre az analóg adatok kompenzált értékei is tárolásra kerülnek. Végül növeljük az
FEJEZET 6.
30
SZOFTVERTERV
6.2. táblázat. Állapotokhoz rendelt funkciók Megnevezés
Funkció leírás
Init state
A tápfeszültség megjelenése után felkongurálja a processzort, a perifériákat, valamint az SD kártya lerendszererét.
Idle state
A rendszer várakozik a felhasználói parancsokra.
Measure state
Az események bekövetkezése engedélyezett, a rendszer adatgyûjtést végez.
Save state
A megtelt puer tartalmát a szoftver az SD kártyán archiválja. Amennyiben a második puer nem telt meg, az adatgyûjtés a mentés közben engedélyezett. Amennyiben mindkét puer betelt, az adatgyûjtés felfüggesztõdik a mentési mûvelet idejére.
Error state
Amennyiben a szoftver hibát észlel, a rendszer ebbe az állapotba kerül.
Detect state
A külsõ eseményre keletkezõ megszakítást lekezelõ rutin. Feladata a detektor oldali adatok kiolvasása.
Menu
A felhasználó számára kezelõi felületet nyújt. A rendszer külsõ gomb megnyomására kerül ide. A felhasználói utasítások az állapotátmenetet eredményezhetnek.
6.3. táblázat. Az összetartozó adatszegmenseket tároló struktúra
Id
unsigned int
32 bit
Timestamp
unsigned int
32 bit
Data[]
usigned short
16 bit
eseményeket indexelõ számlálókat. A függvény végül visszatér.
Megszakítás kezelõ. mória területrõl, és
Amennyiben az új üres tárterület kimutat az érvényes me-
M EASU RE
területeket. Azonban ha
SAV E
üzemmód van érvényben, megcseréljük a puer
üzemmód alatt történt az adatkiolvasás, egy ag
beállításával jelezzük a mentést végzõ processznek, hogy a lapozást a mentés lezárta után végezze el. Végül engedélyezzük a
capture
funkciót,
M EASU RE
esetén
engedélyezzük az újabb megszakítás bekövetkezését és feloldjuk a trigger vonalak
FEJEZET 6.
31
SZOFTVERTERV
blokkolását végzõ retesz áramkört is.
6.1.3.
SD kártya kezelés
A SD kártya kezeléséhez a gyártó függvénykönyvtár formájában nyújt segítséget a fejlesztõk számára. Esetünkben a Microchip által kiadott ún. MDDFileSystem szoftverkomponensek kerültek integrálásra. A csomag egy FAT lerendszert implementál, melynek C nyelvû függvényei szabadon elérhetõek. A le alapú mûveletek többségéhez lekezelõ rutinok tartoznak. A függvények jól használhatóak, ugyanakkor bizonyos hiányosságok elõfordulnak (fsfwrite() függvény nem támogatja a oat típusú változók kezelését). Az MDDFileSystem beépített függvényeinek segítségével kerültek megvalósításra az adatok archiválását végzõ szoftver elemek. A mentést végzõ rutin a következõ lépésekbõl épül fel.
SAVE state.
Amennyiben a detektor oldali adatok kiolvasását követõen az aktu-
ális puer terület megtelt, a rendszer
WriteDatatoSDCard().
SAV E
állapotba kerül.
Amennyiben az SD kártya inicializálása sikeres volt,
megkezdõdik az adatmentési szekvencia, egyébként a függvény
error
állapottal tér
vissza. Következõ lépésként ellenõrizzük az eddig aktuális munka-le méretét. Az eredménynek megfelelõen egy új munka-le nyitása válhat szükségessé. Amennyiben a munka-le megnyitása sikeres volt, az adatokat sor folytonosan kiírjuk az elõzõ adatokhoz hozzáfûzve (speciális esetben minden mérési sorozat elsõ tárolásakor egy fejléc is elhelyezésre kerül). Végül lezárjuk a le-t és az SD kártya engedélyezõ jelét inaktiváljuk. A függvény visszatér.
SAVE state.
Ha a
W riteDatatoSDCard
függvény sikeresen tér vissza és közben
nem érkezett parancs a felhasználótól a mérés leállítására, a rendszer a korábbi állapotától függõen
M EASU RE
vagy
SAV E
állapotba kerül (lásd detektor adatait
kezelõ rutin szerint) a puer telítõdését jelzõ ag alapján. Hiba esetén
ERROR
állapotba kerül.
A FAT16 lerendszer 2Gbyte szabad tárterület megcímzését támogatja, ugyanakkor korlátozás ad az egy könyvtáron belül megnyitott bejegyzésekre. Ez a limit 512 könyvtári bejegyzés. A mérések során az optimális le-méretet 20 000 eseményre állapítottuk meg. Így a tárterület kb. 6 300 000 esemény tárolására alkalmas. Ez a
FEJEZET 6.
SZOFTVERTERV
32
mennyiség a mélység függvényében 1 hét - több hónap idõtartamot fedhet le, így bár a FAT16 rendszer nem a legkorszerûbb megoldás, a feladat által támasztott követelmények teljesítésére teljesen alkalmas. Az adattárolás formája a 6.2. ábrán látható.
6.2. ábra. Adattárolás formája
6.2.
Idõzítések
A szoftveres ütemezés egyes részfeladatai idõzítéshez kötöttek. A mikrokontrollerek által felkínált beépített számláló egységek különbözõ funkciókkal támogatják az idõmérés és/vagy idõzítési feladatok megoldását. Az általunk használt mikrokontroller összesen 5 db 16 bit szóhosszúságú beépített számlálóval rendelkezik. Ezekbõl a 2/3 és 4/5 sorszámúak kaszkádosítással 32 bites üzemmódot is támogatnak. A feladat szempontjából a 6.4. táblázatban leírt egységek lettek felhasználva. Az események között eltelt relatív idõkülönbséget a Timer23 számláló méri. A beállított felbontás a külsõ órajel periódus idejének 512-szeres. Mivel az eszköz 80MHz frekvenciával jár (a belsõ busz csak 40MHz-en üzemel), egy inkremens a digitális idõértékben 6.4us-nak felel meg. Ezzel a felbontással a 32 bites számláló a feladat szempontjából megfelelõen nagy idõintervallumot képes megmérni.
FEJEZET 6.
SZOFTVERTERV
33
6.4. táblázat. Beépített számláló modulok használata Timer1
Periodic
16 bit
LCD háttérvilágításnak kikapcsolása.
Timer23
Capture
32 bit
Az események közötti relatív idõ mérésére szolgál.
Timer4
Periodic
16 bit
Amennyiben egy deniált idõn belül nem keletkezik újabb esemény, a rendszer egy automatikus kiolvasási szekvenciával reagál.
Timer5
NC
16 bit
Nincs felhasználva.
FEJEZET 6.
6.3.
34
SZOFTVERTERV
Muszaki jellemzok
6.3.1.
Általános paraméterek
Ez a fejezet csupán nagyságrendileg tükrözi a lényeges paraméterek értékét. Mivel prototípus alkalmazásról van szó, mind a fogyasztás mind az idõzítések megváltoztatása az optimalizálás fontos eszköze lehet.
Fogyasztás.
A teljes tomográai rendszer - beleértve az adatgyûjtõ kártyát, a
nagyfeszültség egységet, a kijelzõt, az SD kártyát és a detektor oldali elektronikákat - maximum
380mA
áramot fogyaszt
12V
mellett. Ez azt jelenti, hogy a fogyasztás
(nominális értéke egy akkumulátornak)
< 5W , ami teljesíti a prototípussal szemben
támasztott követelményeket. Érdemes megjegyezni, hogy egy x10 m-es hozzávezetõ kábelen így mindössze
Idõzítés.
0.6V
feszültségesés jön létre.
A detektor adatainak kiolvasása
fordítódik a tényleges adatmentésre és
0.8ms idõt vesz igénybe, melybõl 0.05ms
0.7ms a soros kommunikáción keresztüli adat-
továbbításra a számítógép felé (80byte/115200bit/s). Az hõmérõk adatainak lekérdezése
0.05ms
I 2C
buszon keresztül a
ideig tart (3 hõmérõ, 200kHz frekvencia).
Az SD kártyára történõ mentés kb. 2s ideig tart. Ez fontos paraméter, melynek csökkentése elsõdleges cél lehet. Meggyeléseim alapján a le-ba történõ írás az SD kártya tartalmának növekedésével egyre több idõt vesz igénybe. Ennek megoldása jelen esetben nem volt célom.
Méretek.
A detektorok között elhelyezett adatgyûjtõ és nagyfeszültség rendszer
kb. 1 liter térfogatot foglal. A kártyák zikai méretei a 6.6. táblázatban vannak összefoglalva.
Tipikus környezeti paraméterek. páratartalom és
10 C
processzor kártyán
6.3.2.
◦
A mérések során a külsõ szenzorok
körüli értékeket mutattak, a detektorok körül
40%
és
25◦ C
50%
és
100%
15◦ C ,a
értékeket mértünk.
Tesztmérések és mérési tapasztalatok
Az adatgyûjtõ berendezés hardver és szoftver komponenseinek helyes mûködését elõször laboratóriumi környezetben teszteltük. A felmerülõ szoftveres kiegészítések
FEJEZET 6.
SZOFTVERTERV
35
megírása után, a célul kitûzött alkalmazási környezethez hasonlóan egy mesterségesen kialakított aknarendszerben végeztünk méréseket, ahol mind a hõmérséklet, mind a páratartalom szempontjából már "életszerûbb" körülmények uralkodtak. A mérési adatok itt már referencia adatként is szolgáltak. Végül az elsõ méréseket egy feltárás alatt álló barlangrendszerben megkezdtük, ahol több hetes méréssorozatot indítottunk. A a 6.3. és a 6.4. ábrákon a beüzemelés körülményei láthatóak. A rendszer jelenleg túl van a 30 napos folyamatos üzemen, a tesztelés fázisában az elvártnak megfelelõen mûködik.
6.3. ábra. Tesztmérés végzése valós környezetben. Balra: Oláh László, jobbra: Melegh Hunor Gergely
FEJEZET 6.
SZOFTVERTERV
6.4. ábra. A tomográf elhelyezésének körülményei
36
Irodalomjegyzék
[1] Gergõ Hamar, dr. Dezsõ Varga:
Thick-GEM Based Trigger Detector develop-
ment, IEEE NSS Conference Record, December 2008 [2] Hamar Gergõ, dr. Varga Dezsõ:
Vastag-GEM alapú trigger detektor az LHC
ALICE kísérletében, MNT Nukleon 2. 47, 2009 [3] Oláh László:
Föld alatti üregek vizsgálata kozmikus részecskék segítségével, B.Sc.
szakdolgozat, ELTE Fizika szak, 2010 [4] Kiss Gábor:
Sokszálas proporcionális kamrák fejlesztése részecskezikai detek-
torokhoz, B.Sc. szakdolgozat, ELTE Fizika szak, 2010
37
38
IRODALOMJEGYZÉK
6.4.
Mellékletek
6.5. táblázat. Gyártási paraméterek Megnevezés
Érték
Gerber típusa:
rs274x (inches 2:5)
Rétegek száma:
2 (top, bottom)
Vezetõ-vezetõ távolság:
0.254mm (+TQFP64 0.2mm)
Vezetõ-forrszem távolság:
0.254mm
Földkitöltés szigetelõköz:
0.5mm
Legkisebb furatátmérõ:
0.3mm
Hordozó:
FR4 üvegszövet-epoxi 1.5mm
Rézvastagság:
35um
Forrasztásgátló lakk:
top és bottom rétegen egyaránt
Ónozás:
Galvánón
Szita rétegek száma:
0
Technológiai keret eltávolítása:
Kontúrmarás, kitördelhetõ kivitel
6.6. táblázat. Rendelt darabszám Név
Méret
Darabszám
uDatv1.0.2
141.63x89.53mm
1db
HighVoltage
116.84x71.12mm
1db
HMI.uDatv1.0.1
119.40x56.92mm
1db
SD.card
29.88x39.03mm
1db
Sensor
27.50x21.53mm
3db
IRODALOMJEGYZÉK
39
6.5. ábra. Processzor kártyán elhelyezett csatlakozók elhelyezése és megnevezései
6.6. ábra. HV kártyán elhelyezett csatlakozók elhelyezése és megnevezései
40
IRODALOMJEGYZÉK
6.7. táblázat. HMI csatlakozó Pin
Megnevezés
Megjegyzés
1
MOSI
SD kártya bemeneti adatvonal
2
SCK
SD kártya órajel
3
CD
SD kártya Card Detect jel
4
WP
SD kártya Write Protect jel
5
SS/
SD kártya Slave Select jel
6
MISO
SD kártya kimeneti adatjele
7
LCD-D7
LCD kijelzõ MSB adatvonal
8
LCD-D6
LCD kijelzõ adatvonal
9
LCD-D5
LCD kijelzõ adatvonal
10
LCD-D4
LCD kijelzõ adatvonal
11
LCD-ON/OFF
LCD kijelzõ logika tápkapcsolója
12
LCD-Light
LCD kijelzõ háttérvilágytás kapcsolója
13
R/S
14
R/W
LCD kijelzõ Read- Write/ vonal
15
E
LCD kijelzõ érvényes adat vezérlõ
16
U-TX
UART TX jele
17
U-RX
UART RX jele
18
U-RTS
UART Request to Send jele
19
U-CTS
UART
20
SDA
I2C vonal adatvezetéke
21
SCL
I2C vonal órajele
22
Button2
Második nyomógomb (aktív magas szint)
23
Button1
Elsõ nyomógomb (aktív magas szint)
24
DGND
Digitális föld
25
D5V
Digitális 5V tápellátás
26
NC
Nincs bekötve
41
IRODALOMJEGYZÉK
6.8. táblázat. uDAT-HV Pin
Megnevezés
Megjegyzés
1
A5V
Analóg 5V tápellátás
2
Current Monitor
Nagyfeszültség áram-monitor csatornája
3
NC
Nincs bekötve
4
Voltage Monitor
Nagyfeszültség feszültség-monitor csatornája
5
NC
Nincs bekötve
6
High Voltage On/OFF
Nagyfeszültség ki/be kapcsolója
7
NC
Nincs bekötve
8
HV Trimmer U/D
Nagyfeszültség digitális szabályozó vonala
9
AGND
Analóg földvezeték
10
HV Trimmer CS
Nagyfeszültség digitális szabályozó kiválasztása
6.9. táblázat. HV-Power
Pin
Megnevezés
Megjegyzés
1-3-5
Board Input Voltage
Szabályozatlan bemeneti feszültség (Névleges 12V)
2-4-6
AGND
Analóg földvezeték
6.10. táblázat. Szenzor BUS Pin
Megnevezés
Megjegyzés
1
A3V3
Analóg 3.3V tápvezeték
2
A5V
Analóg 5V tápvezeték
3
D5V
Digitális 5V tápvezeték
4
DGND
Digitális föld
5
DGND
Digitális föld
6
A-RB5
Mikrokontroller RB5 adatvonala
7
A-RB9
Mikrokontroller RB9 adatvonala
8
A-RB15
Mikrokontroller RB15 adatvonala
9
SCL
I2C busz órajel
10
SDA
I2C busz adat
11-12-13
AGND
Analóg földvezeték
14-15
DGND
Digitális földvezeték
42
IRODALOMJEGYZÉK
6.11. táblázat. Detector connector Pin
Megnevezés
Megjegyzés
1-3-7-11-19
DGND
Digitális földvezeték
2-4-6-8-10
DGND
Digitális földvezeték
12-14-16-18-20
DGND
Digitális földvezeték
5
Detector Data
Detektor adatvonala
9
Detector SCK
Detektor órajele
13
Detector SE
Detektor beírójele
15
HD5V
Detektor 5V digitális tápfeszültsége
17
Threshold
Detektor küszöbszint vonala
6.12. táblázat. JTAG Pin
Megnevezés
Megjegyzés
1
TDO
JTAG Adat kiolvasó
2
TDI
JTAGAdat beíró
3
TCK
JTAG Órajel
4
TMS
JTAG
5
MCLR/
Reset
6
NC
Nincs bekötve
7
PGEC
ICSP órajel
8
PGED
ICSP adatvezeték
9
DGND
Digitális földvezeték
10
DGND
Digitális földvezeték
6.13. táblázat. ICSP debugger Pin
Megnevezés
Megjegyzés
1
MCLR/
ICSP Reset
2
D3V3
Digitális 3.3V
3
DGND
Digitális földvezeték
4
PGED
ICSP adat vezeték
5
PGEC
ICSP órajel vezeték
6
NC
Nincs bekötve
IRODALOMJEGYZÉK
6.4.1.
43
Általános hibajegyzék
•
A furatátmérõk kész furatok.
•
TQFP64 pinek között nincs forrasztásgátló lakk.
•
Gyakran a 10uF footprintje kicsi.
•
LED2 és LED3 között gyártási hiba.
•
Tápcsatlakozó polaritása felcserélve.
•
U10 optocsatoló READY/ és R/E/A/D/Y miatt nincs bekötve.
•
SE/ impulzus hossz trimmer 1k helyett 5k.
•
FDV301 NMOS footprint rossz -> BS170 NFET beültetve.
•
SR-latch '1'=Enable és 1kohm, 2.2nF tiltás.
•
Trigger 1us késleltetéshez 5k ->10k.
•
Nagyfeszültség induláskor tápot lehúzza ->10R sorbakötve,
•
Nagyfeszültség mérõellenállása 17k -> leválasztó erõsítõ 10.oldal 0-300mV karakterisztika!!
•
ForcedEnable elvi hiba a monostabil mûködésében.