• No results found

Konstruktion av Industriellt Vibrationsmätningssystem med signalbehandling baserad på Digitala Vågfilter av Lattice-struktur

N/A
N/A
Protected

Academic year: 2021

Share "Konstruktion av Industriellt Vibrationsmätningssystem med signalbehandling baserad på Digitala Vågfilter av Lattice-struktur"

Copied!
85
0
0

Loading.... (view fulltext now)

Full text

(1)

Institutionen f¨or systemteknik

Department of Electrical Engineering

Examensarbete

Konstruktion av Industriellt

Vibrationsm¨

atningssystem med

signalbehandling baserad p˚

a Digitala

agfilter av Lattice-struktur

Examensarbete utf¨ort i Elektronik

vid Tekniska h¨ogskolan vid Link¨opings universitet av

Simon Tegelid och Jonas ˚Astr¨om LiTH-ISY-EX-ET--10/0377--SE

Link¨oping 2010-06-21

Department of Electrical Engineering Link¨opings tekniska h¨ogskola

Link¨opings universitet Link¨opings universitet

(2)

Vibrationsm¨

atningssystem med

signalbehandling baserad p˚

a Digitala

agfilter av Lattice-struktur

Examensarbete utf¨ort i Elektronik

vid Tekniska h¨ogskolan vid Link¨opings universitet av

Simon Tegelid och Jonas ˚Astr¨om LiTH-ISY-EX-ET--10/0377--SE

Link¨oping, 2010-06-21

Handledare: Mattias From, Syncore Technologies AB Examinator: Per L¨owenborg, ISY, Link¨opings universitet

(3)

Division of Electronic Systems Department of Electrical Engineering Link¨opings universitet

SE-581 83 Link¨oping, Sweden

2010-06-21 Spr˚ak Language  Svenska/Swedish  Engelska/English  ⊠ Rapporttyp Report category  Licentiatavhandling  Examensarbete  C-uppsats  D-uppsats  ¨Ovrig rapport  ⊠

URL f¨or elektronisk version

http://urn.kb.se/resolve?urn=urn:nbn:se:liu:diva-57477 ISBN — ISRN

LiTH-ISY-EX-ET--10/0377--SE

Serietitel och serienummer Title of series, numbering

Titel Title

Konstruktion av Industriellt Vibrationsm¨atningssystem med signalbehandling ba-serad p˚a Digitala V˚agfilter av Lattice-struktur

Construction of Industrial Vibration Measurement System with signal-processing based on Lattice Wave Digital filter structures

F¨orfattare Author

Simon Tegelid och Jonas ˚Astr¨om

Sammanfattning Abstract

In this bachelor thesis a complete prototype of an industrial vibration mea-surement platform has been developed. By measuring a number of variables such as acceleration, temperature and speed conclusions can be drawn on machinery health. The aim is to evaluate hardware and software solutions for a possible future product.

Based on a requirement specification a proper hardware design has be de-veloped. The hardware consists of a four-layer PCB with an ARM Cortex-M3 microcontroller and about 250 other components. The PCB was designed, as-sembled, tested and finally housed in a box. Measures have been taken to protect the prototype against external disturbances such as inappropriate supply voltages and transients on the input stages.

Software has been written for the microcontroller to perform the various me-asurements required by the prototype. These include RMS, integration and fil-tering. Special attention was paid to the latter by implementing filters based on lattice wave digital structures. This structure results in a very efficient implemen-tation. Consideration is taken to be able to generate arbitrary filters independent of the characteristics and design method. To save time the microcontroller imple-ments all the algorithms without any floating point numbers.

Furthermore, both hardware and software are adapted for future industrial use. The finished prototype supports a number of communication interfaces in which Modbus (RS-485) and current loop communication can be mentioned.

The final result is a very good performing platform with strong future poten-tial.

The work was commissioned by the consulting firm Syncore Technologies AB at their office in Mj¨ardevi, Link¨oping. The project has, in total, taken 10 weeks and occurred during spring 2010.

Nyckelord

(4)

Abstract

In this bachelor thesis a complete prototype of an industrial vibration measurement platform has been developed. By measuring a number of variables such as acceleration, temperature and speed conclusions can be drawn on machinery health. The aim is to evaluate hardware and software solutions for a possible future product.

Based on a requirement specification a proper hardware design has be developed. The hard-ware consists of a four-layer PCB with an ARM Cortex-M3 microcontroller and about 250 other components. The PCB was designed, assembled, tested and finally housed in a box. Measures have been taken to protect the prototype against external disturbances such as inappropriate supply voltages and transients on the input stages.

Software has been written for the microcontroller to perform the various measurements required by the prototype. These include RMS, integration and filtering. Special attention was paid to the latter by implementing filters based on lattice wave digital structures. This structure results in a very efficient implementation. Consideration is taken to be able to generate arbitrary filters independent of the characteristics and design method. To save time the microcontroller implements all the algorithms without any floating point numbers.

Furthermore, both hardware and software are adapted for future industrial use. The fi-nished prototype supports a number of communication interfaces in which Modbus (RS-485) and current loop communication can be mentioned.

The final result is a very good performing platform with strong future potential.

The work was commissioned by the consulting firm Syncore Technologies AB at their office in Mj¨ardevi, Link¨oping. The project has, in total, taken 10 weeks and occurred during spring 2010.

(5)

Sammanfattning

I detta examensarbete har en komplett prototyp f¨or en industriell vibrationsm¨atningsplattform tagits fram. Genom att m¨ata ett antal storheter s˚asom acceleration, temperatur och varvtal kan slutsatser om maskiners h¨alsa dras. Syftet att utv¨ardera h˚ardvaru- och mjukvarul¨osningar f¨or en eventuell framtida produkt.

Utifr˚an en kravspecifikation har passande h˚ardvara konstruerats. H˚ardvaran best˚ar av ett fyra-lagers m¨onsterkort bestyckat med en ARM Cortex-M3-mikrokontroller och cirka 250 andra komponenter. Kortet har ritats, monterats, testats och till slut inhysts i en l˚ada. Vikt har lagts vid att skydda prototypen mot yttre st¨orningar s˚asom d˚alig matningssp¨anning och transienter p˚a ing˚angsstegen.

Mjukvara har skrivits f¨or mikrokontrollern f¨or att utf¨ora de olika m¨atningarna som kr¨avs av prototypen. Dessa innefattar bland annat RMS, integrering och filtrering. Speciell vikt har lagts vid den sistn¨amnda genom att implementera digitala v˚agfilter baserade p˚a lattice-strukturer. Denna struktur resulterar i en mycket effektiv implementation. Vikt har ¨aven lagts vid att kunna generera godtyckliga filter oberoende av karakteristik och designmetod. F¨or att spara tid i mikrokontrollern implementeras samtliga algoritmer helt utan flyttal.

Vidare har b˚ade mjukvara och h˚ardvara anpassats f¨or framtida industriell anv¨andning. Den f¨ardiga prototypen st¨odjer ett antal olika kommunikationss¨att d¨ar Modbus (RS-485) och str¨omslingekommunikation kan n¨amnas.

Det slutgiltiga resultatet ¨ar en mycket v¨alfungerande utvecklingsplattform med stor framtida potential.

Arbetet har utf¨orts p˚a uppdrag av konsultbolaget Syncore Technologies AB vid deras kontor i Mj¨ardevi, Link¨oping. Projektet har totalt tagit 10 veckor och har skett under v˚aren 2010.

(6)

orord

Vi vill inleda detta dokument genom att tacka alla de som p˚a n˚agot s¨att bidragit till projek-tet. Personalen p˚a Syncore Technologies har givit oss mycket v¨ardefull hj¨alp, speciellt g¨allande utveckling av sj¨alva h˚ardvaran. Prof. Lars Wanhammar vid Link¨opings universitet har bidra-git med v¨ardefull teori om de algoritmer som implementerats. Frekventa, och mycket givande, pratstunder har skett p˚a hans kontor under examensarbetets g˚ang.

Vidare vill vi ¨aven tacka v˚ar examinator Tekn. Dr. Per L¨owenborg samt v˚ar opponent, tillika klasskamrat, Mari Siewers.

Link¨oping - Maj 2010

Fr˚an ett kvavt kontor i Mj¨ardevi, under en h¨og av kaffekoppar

Simon Tegelid och Jonas ˚Astr¨om Ingenj¨orsprogrammet i Elektronik Link¨opings universitet

(7)

Figurer

1.1 Oversikt av h˚¨ ardvaran. . . 2

2.1 Digitalt v˚agfilter av lattice-typ, av l¨angd N. . . 10

2.2 Exempel p˚a ett lattice-filter. . . 11

2.3 Konstruktionsmetodik f¨or de digitala v˚agfiltren baserade p˚a lattice-strukturer. . 12

2.4 De fyra approximationerna. . . 14

2.5 Inverterande integrator. . . 16

2.6 DC-kontrollerad inverterande integrator. . . 16

2.7 Onskad m¨atkedja f¨or vibration. . . 20¨

3.1 Fl¨odesschema av ing˚angssteget f¨or accelerometergivaren. . . 22

3.2 Ett enkelt h¨ogpassfilter. . . 22

3.3 Ett generellt Sallen Key-filter. . . 22

3.4 En summerande operationsf¨orst¨arkarkoppling. . . 23

3.5 Fl¨odesschema av ing˚angssteget f¨or temperaturm¨atningen. . . 24

3.6 En Wheatstone-brygga. . . 24

3.7 En instrumentf¨orst¨arkarkoppling. . . 25

3.8 Ett enkelt l˚agpassfilter. . . 25

3.9 Kopplingsschema str¨omslingeing˚angen. . . 26

3.10 Principiellt schema ¨over en rel¨akanal. . . 27

3.11 Fl¨odesschema f¨or n¨atdelen. . . 28

3.12 Kopplingsschema f¨or de tre switchstegen. . . 29

3.13 Graf f¨or utsp¨anningen, med respektive utan utg˚angsfiltret. . . 30

3.14 Utg˚angsfiltret f¨or switchregulatorerna. . . 30

3.15 Spr¨angskiss ¨over kretskortets lager. . . 31

3.16 3D-modell ¨over kretskortet. . . 32

3.17 Kortet tillsammans med l˚adan. . . 33

3.18 Spr¨angskiss av kortet och l˚adan. . . 34

4.1 Interpolering med hj¨alp av lookup-tabell. . . 37

4.2 Interpolerings- och avrundningsfelet beroende av temperaturen. . . 38

4.3 Avrundningsfel i varvtalsr¨aknaren. . . 39

4.4 Illustration av mjukvaruschemal¨aggning och prioriteringar. . . 40

4.5 Q3-representerat tal med fyra bitars ordl¨angd. . . 41

4.6 Fl¨odesschema i Modbus-stacken. . . 44

4.7 Adaptertyper beroende p˚a ber¨aknat γ. . . 45

4.8 J¨amf¨orelse av LWDF-filter med olika talrepresentation. . . 46

4.9 Avrundningsfel i kvadratrotsalgoritmen. . . 48

(8)

Tabeller

1.1 Krav f¨or h˚ardvara. . . 2

1.2 Krav f¨or mjukvara. . . 3

2.1 JTAG-signaler. . . 7

2.2 Signaler i SPI-bussen. . . 8

2.3 Filterspecifikationer. . . 13

2.4 Formler f¨or frekvenstransformation. . . 13

2.5 Formler f¨or reverserad frekvenstransformation. . . 15

2.6 Notation f¨or integratorpolplaceringen. . . 17

2.7 Konstanter f¨or PT-100-givare. . . 19

2.8 Noder i m¨atkedjan. . . 20

3.1 Kretskortets lager. . . 32

4.1 Beskrivning av avbrottsrutiner. . . 40

(9)

Inneh˚

all

1 Introduktion 1 1.1 Bakgrund . . . 1 1.2 F¨oretaget . . . 1 1.3 M˚al och Syfte . . . 1 1.4 Projektets uppl¨agg . . . 1 1.5 Kravspecifikation . . . 2 1.6 Disposition . . . 3 1.7 Programvaror . . . 3 2 Teori 6 2.1 Kommunikation . . . 6 2.2 Digitala filter . . . 8

2.3 Tidsdiskret integrering med DC-undertryckning . . . 15

2.4 Sampling och konvertering . . . 18

2.5 Temperaturm¨atning . . . 18

2.6 Vibrationsm¨atning . . . 19

3 H˚ardvara 21 3.1 Mikrokontroller . . . 21

3.2 Ing˚angssteg till accelerometergivare . . . 21

3.3 Ing˚angssteg till temperaturgivare . . . 24

3.4 Str¨omslingeing˚ang . . . 26 3.5 Str¨omslingeutg˚ang . . . 26 3.6 Rel¨adrivarutg˚ang . . . 27 3.7 RS-485-gr¨anssnitt . . . 27 3.8 N¨atdel . . . 27 3.9 Realisering . . . 29 4 Mjukvara 35 4.1 H˚ardvarugr¨anssnitt . . . 35 4.2 Schemal¨aggning av rutiner . . . 40

4.3 Signalbehandling och kommunikation . . . 41

4.4 Filtergenerator . . . 48

5 Slutsats och Diskussion 49 5.1 H˚ardvara . . . 49

5.2 Mjukvara . . . 50

5.3 Verifiering . . . 52

(10)

Exempel 1 . . . . Exempel 2 . . . . B Bilder C Testresultat D Kretsschema E PCB-layout F Tekniska Specifikationer G Komponentlista H Kostnader I M¨atv¨arden J Kodbilaga

(11)

Introduktion

I detta kapitel introduceras l¨asaren till examensarbetet. Bakgrund, syfte och krav g˚as igenom. Vidare f¨orklaras vilka olika faser projektet kommer att best˚a samt vilka mjukvaror som anv¨ands.

1.1

Bakgrund

Inom industrin ¨ar det ofta av intresse att m¨ata vibration. Syftet kan till exempel vara att unders¨oka om en motor har ett d˚aligt lager eller om ett roterande objekt ¨ar obalanserat. Genom att kontinuerligt m¨ata och ¨overvaka dessa vibrationer kan man dra slutsatser om systemets h¨alsa. En korrekt analys kan inneb¨ara att problem uppt¨acks l˚angt innan det n¨amnv¨art p˚averkat den faktiska prestandan hos systemet. P˚a detta s¨att kan maskiner repareras i tid, on¨odiga stillest˚and undvikas och pengar s˚aledes sparas.

1.2

oretaget

Arbetet utf¨ors hos Syncore Technologies AB som ¨ar ett tekniskt konsultf¨oretag baserad i Mj¨ardevi Science Park, Link¨oping. F¨oretaget startade 2000 har f¨or n¨arvarande 14 personer an-st¨allda. Verksamheten fokuseras kring komplexa inbyggda system och tr˚adl¨osa l¨osningar. Bland de st¨orre kunderna kan Toyota-BT, FOI samt SAAB Microwave n¨amnas.

1.3

al och Syfte

M˚alet med detta examensarbete ¨ar att utveckla och konstruera en komplett prototyp f¨or en vibrationsm¨atningsplattform ˚at Syncore Technologies AB.

Syftet ¨ar att utv¨ardera b˚ade h˚ard- och mjukvarul¨osningar f¨or en eventuell framtida produkt. Arbetets fokus ligger p˚a att implementera signalbehandlingsalgoritmer digitalt f¨or att p˚a s˚a s¨att kunna reducera behovet av h˚ardvarukomponenter. Vikt kommer ¨aven att l¨aggas vid att g¨ora ett s˚a dynamiskt system som m¨ojligt, som l¨att kan anpassas efter potentiella kunders behov.

1.4

Projektets uppl¨

agg

¨

Aven d˚a det praktiska arbetet till stor del best˚ar av att driva ett projekt, fr˚an b¨orjan till slut, kommer rapportens fokus ej att ligga h¨ar. Ingen formell projektmodell har anv¨ants utan ist¨allet har arbetet baserats kring en enklare aktivitetslista och frekventa m¨oten.

(12)

1. F¨orunders¨okning - Kravspecifikation, anv¨andarscenarion och marknadsunders¨okning. 2. H˚ardvarukonstruktion - Komponentval, schemaritning, PCB-ritning och produktion. 3. Mjukvaruimplementation - Algoritmval, kodning och effektivisering.

4. Testning och utv¨ardering - Resultat, utv¨ardering, m˚aluppfyllnad, framtida m¨ojligheter och dokumentation.

Projektets totala tid ¨ar 10 veckor, vilket inkluderar samtliga faser. Allt arbete kommer att utf¨oras vid Syncores kontor.

1.5

Kravspecifikation

I samarbete med Syncore har en informell kravspecifikation utarbetats. Denna ¨ar t¨ankt att ligga till grund f¨or projektets olika delar. Kraven kan delas upp i h˚ardvara och mjukvara. I tabell 1.1 och 1.2 listas dessa krav och i figur 1.1 ˚ask˚adligg¨ors de relaterande till h˚ardvaran.

Figur 1.1: ¨Oversikt av h˚ardvaran.

1.5.1 H˚ardvara

I tabell 1.1 listas de krav som satts p˚a h˚ardvaran. Nummer Krav

1. M¨ata acceleration i tv˚a kanaler. Samplingsfrekvens 31250 Hz. 2. M¨ata temperatur med extern prob.

3. M¨ata varvtal med hj¨alp av tachometer.

4. Vara industriellt anpassad. B˚ade elektriskt och formm¨assigt. 5. Kommunicera via RS-485.

6. Kommunicera via str¨omslinga. 7. Styra ett antal rel¨aer.

Tabell 1.1: Krav f¨or h˚ardvara.

1.5.2 Mjukvara

(13)

Nummer Krav

1. Signalbehandla data i real-tid.

2. Filtrera signalen p˚a ett dynamiskt s¨att.

3. Integrera signalen i tv˚a steg, till hastighet och amplitud. 4. R¨akna RMS (Effektivv¨arde) p˚a samtliga storheter. 5. Larma f¨or olika villkor.

6. Kommunicera resultatet via ett antal gr¨anssnitt. Tabell 1.2: Krav f¨or mjukvara.

1.6

Disposition

Rapporten syftar till att beskriva projektet p˚a ett s˚a detaljerat s¨att som m¨ojligt. F¨oljande kapitel ˚aterfinns:

1. Introduktion

I detta kapitel beskrivs bakgrunden och syftet med projektet. En kort kravspecifikation p˚avisas och de olika programvaror som anv¨ands genom projektet listas.

2. Teori

H¨ar presenteras den grundl¨aggande teorin som projektets olika delar bygger p˚a. Ett antal kom-munikationsstandarder, s˚av¨al som filter- och vibrationsteori behandlas grundligt. Avsnitten i detta kapitel ¨ar t¨ankt att direkt kunna relateras till avsnitten i de tv˚a kommande kapitlen.

3. H˚ardvara

H¨ar listas de olika h˚ardvarul¨osningar som implementerats f¨or att uppn˚a kravspecifikationen. Var-je delkoppling behandlas separat och relevant teori presenteras. Kapitlet avslutas med ett avsnitt som f¨orevisar ett antal h¨ansynstaganden g¨allande den faktiska konstruktionen av kretskortet.

4. Mjukvara

I detta kapitel introduceras de mjukvarul¨osningar som till¨ampats i projektet. Fr¨amst f¨orklaras h¨ar hur de olika algoritmerna realiserats i projektets mikrokontroller.

5. Slutsats och Diskussion

H¨ar diskuteras hur v¨al projektets m˚al uppn˚atts och vad som kunde g¨oras b¨attre. Vidare dis-kuteras hur prototypens framtid kan se ut och vilka funktioner som skulle kunna f¨orb¨attra den f¨ardiga produkten.

Appendix och Bilagor

D˚a projektet kan komma att kommersialiseras kommer samtliga kritiska detaljer att l¨amnas till bilagorna. Dessa bilagor kommer att utel¨amnas i den publicerade varianten av denna rapport. H¨ar kommer till exempel komplett kretsschema, PCB-layout, komponentlista samt kostnads-kalkyler att bifogas.

1.7

Programvaror

H¨ar beskrivs de programvaror som anv¨ants under arbetets g˚ang.

1.7.1 LATEX

LATEX, eller Lamport TeX ¨ar det typs¨attningssystem som anv¨ands f¨or att skriva denna rapport.

Det baserar sig p˚a enkla formateringskommandon som sedan kompileras till ett f¨ardigt doku-ment. Systemet l¨ampar sig s¨arskilt v¨al f¨or dokument av vetenskaplig karakt¨ar d¨ar matematiska formler och referenser anv¨ands flitigt. Det utvecklades i mitten av ˚attiotalet och har sedan dess

(14)

varit de facto-standard inom den akademiska v¨arlden.

I denna rapport anv¨ands ¨aven modifierade delar av en mall [11] utvecklad vid Institutionen f¨or Systemteknik vid Link¨opings universitet.

1.7.2 Altium Designer

Altium Limited ¨ar ett australiensiskt f¨oretag som utvecklar programvara f¨or elektronikutveck-lings¨andam˚al. Det har bland annat skapat programsviten Altium Designer, som ¨ar ett mycket kompetent verktyg f¨or att utf¨ora alla typer av elektronikdesign. I programmet finns m¨ojligheter f¨or s˚av¨al kretssimulering och FPGA-utveckling som schemaritning och PCB-caddning. Program-met har tidigare haft namn s˚asom DXP och Protel, men har sedan 2004 g˚att under namnet Altium Designer och ges numera ut i nya versioner varje halv˚ar.

I projektet har programmet dels anv¨ands f¨or ritning av schema och konstruktion av sj¨alva kretskortet, men ¨aven f¨or viss simulering.

1.7.3 Matlab

P˚a 1970-talet lade f¨oretaget Mathworks grunden f¨or vad som numera ben¨amns som Matlab, eller ”Matrix Laboratory”. Matlab ¨ar ett numeriskt ber¨akningsverktyg som anv¨ands av hundra-tusentals ingenj¨orer och naturvetare v¨arlden ¨over. Programmet kan anv¨andas inom en rad olika discipliner d¨ar elektronikdesign inte ¨ar n˚agot undantag. Nyttan med Matlab finner man i dess m¨ojlighet att utf¨ora komplexa ber¨akningar och simuleringar, allt med hj¨alp av ett l¨attf¨orst˚aeligt programmeringsspr˚ak som kan liknas vid C/C++. Data kan ¨aven ˚ask˚adligg¨oras p˚a ett bra s¨att med hj¨alp av en stor m¨angd ritverktyg.

I projektet har vi anv¨ant verktyget f¨or att simulera och testimplementera mjukvarul¨osningar.

1.7.4 GNU Compiler Collection

GCC, GNU Compiler Collection, skrevs ursprungligen 1985 av Richard Stallman och var d˚a endast en kompilator f¨or kod skriven i C. GCC ¨ar licensierad under GNU General Public-licensen (GPL) och har sedan dess utvecklats till att kompilera ett flertal programspr˚ak till ett otal plattformar.

I det h¨ar projektet har GCC konfigurerats att kompilera C-kod till ARM-arkitekturen.

1.7.5 OpenOCD

OpenOCD, Open On-chip-debugger, ¨ar ett program skrivet av Dominic Rath som en del i dennes examensarbete vid University of Applied Sciences Augsburg [15]. OpenOCD utg¨or ett gr¨anssnitt mellan h˚ardvaran och debuggern genom JTAG. Programmet skapar, givet en specifikation om anv¨and JTAG-h˚ardvara samt m˚alprocessorn, en telnet- och en GDB-server vilket m¨ojligg¨or debugging och programmering av m˚alprocessorn.

1.7.6 GNU Debugger

GDB, GNU Debugger, skrevs ursprungligen 1986, liksom GCC, av Richard Stallman och ¨ar en debugger till de flesta av plattformarna som GCC st¨odjer. GDB ¨ar liksom GCC licensierat under GPL. GDB har i projektet anv¨ants f¨or att debugga ARM-processorn i realtid genom OpenOCD.

(15)

1.7.7 LTspice

Halvledar- och IC-kretstillverkaren Linear Technology f¨orser sina kunder med en simulator f¨or analoga kretsar. Programmet ¨ar gratis, bygger p˚a SPICE-motorn och ¨ar speciellt l¨ampligt f¨or att simulera deras egna integrerade kretsar d˚a ett stort antal av dessa finns f¨ordefinierade i programmet.

I projektet har vi anv¨ant LTspice f¨or att simulera och utv¨ardera olika alternativ innan konstruktion. Fr¨amst har programmet anv¨ands f¨or att designa n¨atdel och sensoring˚angar.

(16)

Teori

I detta kapitel ges teoretisk bakgrund och f¨orst˚aelse f¨or de metoder som examensarbetet grundar sig p˚a. Varje delsektion syftar till att beskriva varf¨or det aktuella ¨amnet ¨ar relevant, ge en kort matematisk bakgrund samt beskriva hur metoderna nyttjas i praktiken. Vidare ges en grundl¨aggande genomg˚ang f¨or hur vibrationsm¨atning sker i praktiken, vilka standarder som finns och hur dessa appliceras.

2.1

Kommunikation

I det h¨ar avsnittet f¨orklaras de olika kommunikationsgr¨anssnitt som ¨ar relevanta f¨or projektet.

2.1.1 EIA-485

Inom industrin ¨ar det ofta av intresse att skicka signaler ¨over l˚anga str¨ackor i milj¨oer d¨ar m˚anga st¨orningsk¨allor existerar. Ett effektivt s¨att att ˚astadkomma detta ¨ar att anv¨anda n˚agon typ av balanserat gr¨anssnitt, exempelvis EIA-485 (¨aven kallat RS-485).

Standarden EIA-485 specificerar den elektriska karakteristiken f¨or detta gr¨anssnitt. Data kommuniceras med hj¨alp av en tv˚a-tr˚adsbuss inneh˚allande V+ och V−. En signal skickas p˚a

V+ samtidigt som dess invers skickas p˚a V−. Dessa tv˚a signaler ska enligt standarden

befin-na sig mellan -7 till 12 V. Sigbefin-nalen avkodas sedan genom att subtrahera V− fr˚an V+. Detta

˚astadkoms i mottagar¨anden med hj¨alp av en differential-f¨orst¨arkare. P˚a detta s¨att minimeras tillf¨ort brus eftersom dessa st¨orningar sannolikt p˚averkat b˚ada kablarna, samtidigt som nytto-signalen bibeh˚alls. En tredje jordniv˚a inkluderas ofta i bussen f¨or att undvika jordpotentialer mellan enheterna, n˚agot som annars kan orsaka att den differentiella signalen hamnar utanf¨or det specificerade -7..12 V-spannet.

Standarden till˚ater ¨overf¨oringshastigheter p˚a upp till 10 Mbps vid 50 meter bussl¨angd och 200 kbps vid distanser upp till 1200 meter. Upp till 32 enheter (noder) kan kopplas i en

point-to-point-konfiguration. Detta maximum ¨ar relaterat till den definierade inimpedansen p˚a 12 kΩ p˚a mottagarenheterna. F¨or att undvika reflektioner i systemet termineras alla noder med en resistans motsvarande ¨overf¨oringskabelns, vanligtvis 120 Ω. Gr¨assnittet kan ¨aven anv¨andas i

full-duplex genom att helt enkelt dubblera bussen. EIA-485 varken definierar eller rekommenderar

n˚agot protokoll utan l¨amnar detta beslut till konstrukt¨oren. Ett flertal protokoll existerar som anv¨ander EIA-485 som fysiskt lager, d¨aribland Modbus.

(17)

2.1.2 Str¨omslinga

Ett annat vanligt s¨att att kommunicera inom industrin ¨ar med hj¨alp av s˚a kallade str¨omslingor. Principen bygger p˚a att en k¨alla h˚aller en konstant str¨om mot en yttre enhet och kan p˚a s˚a s¨att kommunicera genom att p˚a ett kontrollerat s¨att variera str¨ommen. Liksom RS-485 ¨ar denna me-tod ok¨anslig mot st¨orningar eftersom k¨allan h˚aller en konstant str¨om oberoende av till exempel resistansf¨or¨andringar i kabeln. Vanligtvis anv¨ands optokopplare f¨or att isolera signalv¨agen mel-lan olika enheter. N˚agon egentlig standard existerar inte men vanligtvis representeras signalen av en str¨om mellan 4 och 20 mA.

2.1.3 JTAG

”Joint Test Action Group”, eller JTAG ¨ar ett digitalt gr¨anssnitt som vanligtvis anv¨ands f¨or att

fels¨oka och programmera integrerade kretsar. Det ¨ar vida anv¨ant i moderna inbyggda system och har sedan dess skapade standardiserats i IEEE 1149.1. M˚anga utvecklingsmilj¨oer byggs idag med stor fokus kring JTAG-gr¨anssnittet, d˚a det bland annat erbjuder fels¨okning i form av programstegning och infogande av brytpunkter.

Gr¨anssnittet ¨ar synkront, seriellt och anv¨ander sig av 4-5 tr˚adar beroende p˚a konfiguration. I tabell 2.1 visas de ing˚aende signalerna.

F¨orkortning Funktion TDI Test Data In TDO Test Data Out

TCK Test Clock

TMS Test Mode Select TRST Test Reset (valbar)

Tabell 2.1: JTAG-signaler.

Kommunikationen konfigureras genom att ettst¨alla TMS och klocka TCK. P˚a detta s¨att manipuleras en tillst˚andsmaskin som skiftar mellan ett antal olika l¨agen. Data kan sedan klockas in och ut via TDI respektive TDO. Inneh˚allet ¨ar d˚a beroende av det aktuella l¨aget. Genom att seriekoppla TDI/TDO-signalerna kan man komma ˚at flera enheter via samma JTAG-port. Denna typ av koppling brukar ben¨amnas som ”daisy-chain”.

2.1.4 Modbus

Modbus ¨ar ett kommunikationsprotokoll som skapats av Modicon 1979 f¨or anv¨andning med deras PLC:er. Det har senare blivit en de facto-standard inom industrin av en rad olika anled-ningar, d¨aribland att det ¨ar ¨oppet och relativt enkelt att implementera och anv¨anda. Modbus anv¨ands ofta i n¨atverk med en kontrollenhet ansluten till flera datainsamlingsenheter.

Protokollet finns i olika versioner anpassat f¨or olika typer av fysiska lager, d¨aribland serie-kommunikation och Ethernet. De flesta Modbus-enheter kommunicerar dock med EIA-485-n¨at som fysiskt lager. Oavsett vilket fysiskt lager som anv¨ands finns det dessutom flera versioner av Modbus f¨or att beskriva hur data paketeras. Modbus RTU ¨ar ett bin¨art protokoll som anv¨ands f¨or att skicka data s˚a kompakt som m¨ojligt. Modbus ASCII kodar tecknen som skickas enligt ASCII-standarden och tar d¨arf¨or upp st¨orre plats ¨an det bin¨ara protokollet. I ett Modbus-n¨at till˚ats bara en master att finnas ˚at g˚angen men en eller flera slavar. Slavarna skickar bara data p˚a beg¨aran av mastern och slavar kommunicerar aldrig direkt med varandra. Slavarna ben¨amns ¨aven Modbus-server och Mastern ben¨amns ibland Modbus-klient. Termerna kommer

(18)

att anv¨andas omv¨axlande i rapporten.

Det finns tv˚a specifikationer som reglerar hur seriell Modbus ska kommuniceras, en speci-fikation som beskriver applikationslagret och en som beskriver datal¨ank-lagret. Modbus i ap-plikationslagret har en rad funktioner definierade publikt av Modbus Organization och ut¨over det till˚ats anv¨andaren att specificera egna funktioner efter behov. De publika funktionerna ¨ar v¨aldefinierade och de ¨ar unika, vilket g¨or att produkter fr˚an olika tillverkare kan kommunicera med varandra genom dessa funktioner. Modbus i datal¨ank-lagret paketerar datan fr˚an applika-tionslagret med en adress samt en kontrollsumma f¨or att verifiera att datan ¨overf¨orts korrekt. I avsnitt 4.3.2 beskrivs protokollet n¨armare.

2.1.5 SPI

SPI, eller Serial Peripheral Bus, ¨ar en seriellt, synkront kommunikationsgr¨anssnitt som ut-vecklats av Motorola. Enheter kommunicerar i en master/slave-konfiguration med hj¨alp en fyratr˚adsbuss. I tabell 2.2 visas de ing˚aende signalerna. Riktningen ¨ar relativ master -enheten.

Namn Funktion Riktning

MISO Master Input, Slave Output Utg˚ang MOSI Master Output, Slave Input Utg˚ang SCLK Serial Clock Ing˚ang

SS Slave Select Utg˚ang (aktivt l˚ag) Tabell 2.2: Signaler i SPI-bussen.

Funktionen ¨ar enkel: En master v¨aljer en enhet genom att jorda dess SS -ing˚ang. Data klockas (SCLK ) sedan in i enheten via MOSI, och ut via MISO. Ett stort antal enheter kan kopplas in p˚a bussen, men de m˚aste dock ha olika SS -ing˚angar s˚a att de kan skiljas ˚at. P˚a grund av gr¨anssnittets enkelhet kan h¨oga hastigheter uppn˚as, upp till 70 Mbps.

Endast tre parametrar beh¨ovs f¨or att bedriva kommunikation via SPI, n¨amligen klockfre-kvens, fas och polaritet. De tv˚a sistn¨amnda ben¨amns ofta som CPHA, respektive CPOL och kan anta bin¨ara v¨arden. CPHA best¨ammer huruvida data ska l¨asas p˚a fallande eller stigande klockflank medan CPOL best¨ammer systemets polaritet, det vill s¨aga vad som tolkas som logisk etta eller nolla. Tillsammans skapar dessa tv˚a parametrar totalt fyra olika l¨agen.

SPI definieras inte i n˚agon standard, men anv¨ands mycket ofta f¨or intern kommunikation i elektroniska system. Exempel p˚a anv¨andning ¨ar till exempel n¨ar en mikroprocessor ska kommu-nicera med yttre enheter, s˚asom A/D-omvandlare eller minnen. N˚agot direkt protokoll definieras inte i SPI, vilket medf¨or att ingen vet om informationen egentligen kommer fram. Det ¨ar ist¨allet upp till anv¨andaren att implementera felkontroll och ¨ovriga finesser efter behov.

2.2

Digitala filter

I och med att dagens inbyggda system f¨orlitar sig mer p˚a processorkraft ¨an p˚a diskreta kom-ponenter ¨ar det ett naturligt steg att ¨aven f¨orl¨agga filtreringen till den digitala dom¨anen. Rent tekniskt inneb¨ar detta ett antal f¨ordelar s˚asom flexibilitet, brusundertryckning och robusthet, men ¨aven faktorer s˚asom kostnadseffektivitet och fysiska begr¨ansningar gynnas.

2.2.1 Bakgrund

Digitala filter, och LTI-system i allm¨anhet, karakteriseras med hj¨alp av dess differensekvation och dess ing˚aende koefficienter. Denna ekvation f¨orklarar ur systemets utsekvens, y(n), p˚averkas

(19)

av dess insekvens, x(n). Den generella differensekvationen betecknas: y(n) = N X k=1 bky(n − k) + N X k=0 akx(n − k) (2.1)

D¨ar N s¨ags vara filtrets ordning och ak, bk filtrets koefficienter f¨or in- respektive utsekvens.

Genom att ist¨allet karakterisera filtret i Z-dom¨anen f˚as dess ¨overf¨oringsfunktion: H(z) = Y (z) X(z) = PN k=0akz−k 1 −PN k=1bkz−k (2.2) Det finns tv˚a huvudtyper av digitala filter, rekursiva och icke-rekursiva. Dessa brukar vanli-gen ben¨amnas som IIR- (Infinite-length Impulse Response) respektive FIR-filter (Finite-length

Impulse Response). Praktiskt sett kan skillnaden f¨orklaras s˚asom att IIR-filter anv¨ander gamla v¨arden av b˚ade utsekvensen och insekvens for att ber¨akna det nya resultatet, medan FIR-filter f¨orlitar sig helt p˚a v¨arden fr˚an insekvensen. Matematiskt kan dessa beskrivas genom att, f¨or FIR-fallet, s¨atta bk = 0 i ekvation (2.1) eller (2.2). Egenskapen att FIR-filter inte anv¨ander

tidigare ber¨aknade v¨arden g¨or att FIR-filter ¨ar garanterat stabila, d¨arav Finite-length

Impul-se ResponImpul-se. IIR-filter tenderar att vara k¨ansliga f¨or koefficientvariationer, men kr¨aver ist¨allet

generellt en l¨agre ordning ¨an FIR-filter f¨or att simulera samma referensfilter [8].

Ett or¨akneligt antal s¨att existerar f¨or att realisera, implementera och effektivisera dessa tv˚a typer av filter. Den mer generella teorin ligger dock utanf¨or denna rapports omf˚ang.

2.2.2 Digitala v˚agfilter

En speciell typ av digitala IIR-filter ¨ar s˚a kallade digitala v˚agfilter eller WDF:s (Wave Digital

Filters). Denna typ av filter baseras p˚a ett idealt analogt referensfilter och kan p˚a detta s¨att beh˚alla dess goda egenskaper in i den digitala dom¨anen. Bland dessa egenskaper kan fr¨amst stabilitet och ok¨anslighet mot koefficientvariationer n¨amnas.

Alfred Fettweis utvecklade som konsult ˚at Siemens det fundamentala begreppet digitala

v˚agor [1] vilket, enligt Fettweis, ¨ar en n¨odv¨andig ber¨akningsgrund f¨or att kunna simulera

pas-siviteten hos analoga referensfilter [14]. Han menade att Ohms lag uppfylls ¨ogonblickligen i varje tidsinstans i den analoga dom¨anen, men att man i den digitala dom¨anen m˚aste kunna utf¨ora ber¨akningarna sekventiellt. Genom att uttrycka referensfiltret med en linj¨arkombination av sp¨anning och str¨om, v˚agor, kan man s¨aga att man har en inkommande v˚ag och en reflekterad v˚ag. Man f˚ar allts˚a en sekvens av v˚agor, vilket ¨ar ber¨akningsbart i den digitala dom¨anen. 2.2.2.1 Digitala v˚agfilter baserade p˚a analoga lattice-filter

Lattice-filter ¨ar en speciell filterstruktur som realiserar den ¨onskade funktionen genom att fasf¨orskjuta tv˚a signaler och sedan addera eller subtrahera dessa. Fasf¨orskjutningen sker med hj¨alp av allpass-l¨ankar.

Analoga lattice-filter ¨ar extremt k¨ansliga i sp¨arrbandet f¨or komponentvariationer och ¨ar i praktiken oanv¨andbara. Dessa filter utg¨or emellertid bra referensfilter f¨or digitala v˚agfilter d¨ar komponentv¨ardena ¨ar bin¨art representerade tal. En f¨ordel med den h¨ar typen av referensfilter ¨

ar dess symmetriska struktur vilket m¨ojligg¨or en generell digital implementation d¨ar endast filtrets l¨angd varierar. Andra f¨ordelar ¨ar att det digitala filtret f˚ar v¨aldigt liten k¨anslighet f¨or koefficientvariationer i passbandet och antalet multiplikationer endast ¨ar lika med filtrets ordning [8].

(20)

I den digitala dom¨anen realiseras latticestrukturen enligt

H(z) = 0.5(H0(z) ± H1(z)) (2.3)

d¨ar H0(z) och H1(z) konstrueras av ett antal allpassl¨ankar och d¨ar tecknet p˚a H1(z) beh¨over

skifta tecken beroende av filtertyp. H1(z) ska vara positiv f¨or l˚agpass- och bandsp¨arr-strukturer,

och negativ f¨or de tv˚a resterande. Om man v¨aljer motsatt utg˚ang f˚as det komplement¨ara filt-ret. Detta filter ¨ar energikomplement¨art (enligt Feldkellers ekvation) och kommer s˚aledes att realisera motsatt funktion mot det ¨onskade filtret.

I figur 2.1 visas en komplett lattice-struktur d¨ar de tv˚a grenarna representerar de tv˚a all-pass¨overf¨oringsfunktionerna och d¨ar varje adaptor realiserar en allpassl¨ank. I figuren visas ett filter av en udda ordning N. Det kan visas att l˚agpass- och h¨ogpassfilter alltid m˚aste vara av udda ordning [2]. Till f¨oljd av detta f˚as att bandpass- och bandsp¨arrfilter alltid f˚ar en j¨amn ordning d˚a man baserar bandsp¨arr- eller bandpassfiltret p˚a ett l˚agpassfilter av udda ordning som sedan transformeras till ett bandpass- eller bandsp¨arrfilter och det resulterande filtret f˚ar en, j¨amf¨ort med l˚agpassfiltret, dubblerad ordning.

Figur 2.1: Digitalt v˚agfilter av lattice-typ, av l¨angd N.

I figur 2.2 visas ett exempel p˚a ett filter som realiserats med lattice-strukturen. I figur 2.2a visas fasf¨orskjutningen i de tv˚a allpassgrenarna (H0(z) och H1(z)). Som syns i figuren ¨ar

dessa i ofas under passbandet och i fas under sp¨arrbandet. I figur 2.2b visas den resulterande magnituden H(z). Filtret ¨ar av Cauer-typ och av ordning 10.

Genom att identifiera adaptorkoefficienterna f¨or respektive allpassl¨ank, utifr˚an polerna f¨or H(z), kan godtyckliga filter ˚aterskapas. Allpassl¨ankarnas ¨overf¨oringsfunktion kan visas vara

(21)

0 5 10 15 −1000 −800 −600 −400 −200 0 Frequency (kHz) Phase (degrees) Phase Response

(a) Fasf¨orskjutning i de tv˚a allpassgrenarna.

0 5 10 15 −70 −60 −50 −40 −30 −20 −10 0 Frequency (kHz) Magnitude (dB) Magnitude Response (dB)

(b) Den resulterande beloppsfunktionen f¨or filtret.

Figur 2.2: Exempel p˚a ett lattice-filter.

Hap(z) = −α1 z + 1 z − α1 (2.4) Hap(z) = −α1 z2− α2(1 − α1)z + 1 z2− α 2(1 − α1)z − α1 (2.5) f¨or f¨orsta respektive andra ordningens adaptor. Det kan ¨aven visas, genom identifiering, att f¨orsta ordningens adaptor realiserar den reella polen p1 genom att v¨alja adaptorkoefficienten

enligt

α1 = p1 (2.6)

Likas˚a kan det visas att andra ordningens adaptor realiserar det komplexa polparet p1 och p2

genom att v¨alja adaptorkoefficienterna enligt

α1= − |p|2, α2= 2Re{p}

1 − α1

= 2Re{p}

1 + |p|2 (2.7)

2.2.3 Praktisk konstruktionsmetodik

Vid praktisk konstruktion av digitala v˚agfilter baserade p˚a lattice-strukturer kr¨avs ett antal steg. M˚alet ¨ar att g˚a fr˚an filterspecifikationer till lattice-adaptorkoefficienter. I figur 2.3 visas denna konstruktionsmetodik.

Samma resultat kan uppn˚as p˚a m˚anga olika s¨att. V˚ar metodik baserar sig p˚a att konstruera ett analogt referensfilter, som sedan transformeras till dess digitala motsvarighet. P˚a detta s¨att kan man anv¨anda befintlig och bepr¨ovad filterteori, men m˚aste ist¨allet utf¨ora ett antal frekvens-och dom¨antransformationer. Bland andra metoder kan Gaszis n¨amnas. Han har utvecklat ett antal ekvationer f¨or att direkt ber¨akna adaptorkoefficienter utifr˚an filterspecifikationer [2].

Varje steg inneh˚aller ett antal komplexa ber¨akningar och det ¨ar d¨arf¨or av vikt att automa-tisera detta konstruktionsfl¨ode. Nedan beskrivs endast kortfattat vad som sker i varje steg, f¨or kompletta formler h¨anvisas l¨asaren till f¨oreslagna k¨allor.

I Bilaga A ges ett antal exempel p˚a filter som konstruerats med denna metodik. 2.2.3.1 Specifikationer

Filterkonstruktionens utg˚angspunkt ¨ar de ¨onskade specifikationerna f¨or filtret som ska genereras. Dessa specifikationerna sammanfattas i tabell 2.3.

(22)

Figur 2.3: Konstruktionsmetodik f¨or de digitala v˚agfiltren baserade p˚a lattice-strukturer.

Bland parametrarna kan approximation kr¨ava en n¨armare f¨orklaring. Detta best¨ammer hur filtret ska realiseras, det vill s¨aga hur nollst¨allen och poler ska placeras f¨or att uppn˚a r¨att funk-tion. Teorin skiljer sig f¨or dessa olika typer, men generellt kan s¨agas att man till˚ater rippel i sp¨arrbandet och/eller passbandet, och kan p˚a detta s¨att s¨anka ordningen och d¨armed komplex-iteten p˚a filtret. Butterworth och Cauer kan h¨ar s¨agas vara extremfallen d¨ar det f¨orstn¨amnda har rippel varken i passband eller sp¨arrband, och det sistn¨amnda har rippel i b˚ada. Chebys-hev I och II ¨ar kompromissen mellan extremfallen d¨ar det f¨orsta endast ripplar i passbandet, och det sista endast i sp¨arrbandet. Butterworth ger den h¨ogsta ordningen, f¨oljd av Chebyshev I/II, f¨oljd av Cauer som ger den l¨agsta. Praktiskt sett kan man ofta till˚ata ett visst rippel och detta s¨att reducera komplexiteten i implementationen. I figur 2.4 visas dessa fyra filter-approximationer tillsammans med ordningen (N ) f¨or varje. Samtliga filter ¨ar konstruerade efter samma specifikationer och det ¨ar s˚aledes endast approximationen som skiljer dem ˚at.

2.2.3.2 Dom¨antransform

D˚a v˚art syfte ¨ar att arbeta fram ett digitalt filter fr˚an en analog referens m˚aste specifikationerna transformeras till den analoga dom¨anen. Detta kan s¨agas vara en mappning fr˚an Z-plan till S-plan. Flera m¨ojligheter finns f¨or att ˚astadkomma detta, men i praktiken anv¨ands oftast bilinj¨ar

transform. Denna definieras som

s = 2 T

z − 1

z + 1 (2.8)

N¨ar denna transform ska till¨ampas kan det visas att specifikationerna ska transformeras enligt ωac= 2 T tan  ωdcT 2  (2.9) d¨ar T betecknar inversen av samplingsfrekvensen och

(23)

Namn F¨orklaring

Karakteristik L˚agpass, h¨ogpass, bandpass, bandsp¨arr. Approximation Butterworth, Chebyshev I/II, Cauer. Amin D¨ampningen i sp¨arrbandet (dB).

Amax Till˚atet rippel i passbandet (dB).

FC1 F¨orsta brytfrekvens (Hz).

FS1 F¨orsta sp¨arrfrekvens (Hz).

FC2 Andra brytfrekvens. Endast f¨or bandpass/bandsp¨arr.

FS2 Andra sp¨arrfrekvens. Endast f¨or bandpass/bandsp¨arr.

FS Samplingsfrekvens (Hz).

Tabell 2.3: Filterspecifikationer.

Ref L˚agpass H¨ogpass Bandsp¨arr Bandpass WcRef Wac1 Wac1 Wac2− Wac1 W

2 i Wac2−Wac1 WsRef Was1 W 2 i

Was1 Was2− Was1

W2 i

Was2−Was1

Wi2 - Wac12 Wac1Wac2 Wac1Wac2

Tabell 2.4: Formler f¨or frekvenstransformation.

Denna metod (2.9) ¨ar ¨aven k¨and som pre-warping och m˚aste utf¨oras p˚a samtliga bryt- och sp¨arrfrekvenser, f¨or att f˚a dess analoga motsvarigheter. Detta genererar Wac1, Was1, Wac2 och

Was2.

2.2.3.3 Frekvenstransform

Oberoende om vi vill skapa ett l˚agpass-, h¨ogpass-, bandpass- eller bandsp¨arrfilter kommer all-tid konstruktionen att utg˚a fr˚an ett referensfilter av l˚agpasstyp. P˚a detta s¨att kan man alltid anv¨anda samma formler f¨or att generera de olika filtertyperna. F¨or att ˚astadkomma detta m˚aste specifikationerna transformeras, fr˚an h¨ogpass/bandpass/bandsp¨arr till l˚agpass. Syftet ¨ar allts˚a att utifr˚an de analoga specifikationerna f¨or ett godtyckligt filter skapa endast en brytfrekvens (WcRef) och en sp¨arrfrekvens (WsRef). I tabell 2.4 visas formler f¨or detta.

I transformationen anv¨ands ocks˚a en transformationskonstant, Wi2. Formlerna bygger p˚a v¨alk¨anda transformationer [8] men det b¨or n¨amnas att denna konstant inte generellt kan v¨aljas enligt dessa [19]. Det visar sig att vissa kombinationer av filterspecifikationerna kommer att generera ett BP/BS-filter med till synes reella poler. Detta ¨ar av vikt att undvika i denna kon-struktionsmetodik eftersom den generella lattice-strukturen inte ¨ar t¨ankt att kunna realisera reella poler i BP/BS-fallet. Problemet kan l¨osas genom att i dessa fall helt enkelt v¨alja trans-formationskonstanten h¨ogre. Vidare unders¨okning av detta ligger utanf¨or detta examensarbetes r¨ackvidd och kommer d¨arf¨or inte att behandlas mera h¨ar.

Metodiken att g˚a via ett l˚agpassreferensfilter kommer alltid att generera ett symmetriskt (Wac1Wac2= Was1Was2) BP/BS-filter. Det ¨ar viktigt att i detta stadie kontrollera denna

sym-metri och anpassa bryt/sp¨arr-frekvenserna om kriteriet ej uppfylls. Annars ¨ar det m¨ojligt att det slutgiltiga filtret ej uppfyller den t¨ankta specifikationen.

(24)

0 2 4 6 8 10 12 14 16 −70 −60 −50 −40 −30 −20 −10 0 Frequency (kHz) Magnitude (dB) (a) Butterworth, N=19. 0 2 4 6 8 10 12 14 16 −70 −60 −50 −40 −30 −20 −10 0 Frequency (kHz) Magnitude (dB) (b) Chebyshev I, N=9. 0 2 4 6 8 10 12 14 16 −70 −60 −50 −40 −30 −20 −10 0 Frequency (kHz) Magnitude (dB) (c) Chebyshev II, N=9. 0 2 4 6 8 10 12 14 16 −70 −60 −50 −40 −30 −20 −10 0 Frequency (kHz) Magnitude (dB) (d) Cauer, N=7.

Figur 2.4: De fyra approximationerna.

2.2.3.4 Referensfilter

Vi har nu specifikationer f¨or ett analogt l˚agpass-referensfilter och ¨ar d¨armed redo att r¨akna fram poler och nollst¨allen f¨or detta. Som n¨amns ovan kommer dessa formler skilja sig beroende av vilken approximation som anv¨ands. Formlerna blir ¨aven mer (Cauer) eller mindre (Butterworth) komplexa beroende av vilken approximation som anv¨ands. Denna punkt kan ¨aven delas upp i tv˚a steg: F¨orst m˚aste ordningen p˚a det nya filtret best¨ammas varp˚a de normaliserade poler-na/nollst¨allena best¨ams. Det sista steget kan dock ist¨allet utf¨oras via f¨ardiga tabeller. Formler g˚as inte igenom h¨ar, den intresserade l¨asaren h¨anvisas till [7].

2.2.3.5 Polsortering

F¨or att r¨att poler ska hamna i r¨att gren i lattice-strukturen beh¨over polerna sorteras. Ett generellt s¨att att g¨ora detta ¨ar att sortera polerna efter stigande vinkel i S-planet. Eftersom det nu handlar om ett l˚agpassreferensfilter kan detta likst¨allas med att sortera polerna efter stigande realdel. D¨ar den f¨orsta, reella polen, ska komma f¨orst [7].

2.2.3.6 Reverserad frekvenstransform

Om vi tidigare valt att implementera n˚agot annat ¨an ett l˚agpassfilter m˚aste de normaliserade referens-polerna och nollst¨allena nu transformeras tillbaka till ett filter med r¨att karakteristik. I bandpass- och bandsp¨arrfallet kommer detta inneb¨ara en f¨ordubbling av filtrets ordning eftersom varje l˚agpassreferenspol/nollst¨alle kommer att skapa tv˚a stycken nya. I detta fall ¨ar det mycket viktigt att h˚alla koll p˚a vilken lattice-gren l˚agpassreferenspolen befinner sig i, och se till att de nya skapade polerna hamnar i samma. Om detta inte sk¨ots r¨att kommer lattice-grenarnas

(25)

L˚agpass H¨ogpass Bandsp¨arr Bandpass s1 S1 W 2 i S1 W2 i 2S1+ r W2 i 4S2 1 − W 2 i S21 + q S2 1 4 − Wi2 s2 − − W 2 i 2S1− r W2 i 4S2 1 − W 2 i S21 − q S2 1 4 − Wi2

Tabell 2.5: Formler f¨or reverserad frekvenstransformation.

fasf¨orskjutning att bli felaktig och filtret d¨armed ej att realiseras p˚a ett korrekt s¨att.

I tabell 2.5 visas formler f¨or denna reverserade frekvenstransformation. S och s betecknar pol/nollst¨allet f¨or referensfiltret respektive det ¨onskade.

2.2.3.7 Reverserad dom¨antransform

Filtret ¨ar nu en f¨ardig analog motsvarighet av v˚art ¨onskade digitala filter. Genom att ¨an en g˚ang applicera bilinj¨ar transform, dom¨antransformeras filtret fr˚an S- till Z-dom¨anen. Detta g¨ors direkt genom att l¨osa ut z ur formel (2.8). Resultatet blir

z = 1 +

sT 2

1 −sT2

(2.11) Proceduren m˚aste upprepas f¨or varje pol i filtret.

2.2.3.8 Adaptorkoefficienter

F¨or att kunna realisera det digitala filtret med lattice-strukturen m˚aste koefficienterna f¨or adap-torerna r¨aknas fram. Generellt sett g¨ors detta direkt enligt (2.6) och (2.7). Vi har dock valt att anv¨anda skalade adaptorer vilket inneb¨ar att dessa koefficienter beh¨over r¨aknas om, beroende av dess v¨arde. Detta behandlas n¨armare i avsnitt 4.3.3.

2.3

Tidsdiskret integrering med DC-undertryckning

En vanligt f¨orekommande operation vid signalanalys ¨ar integrering av en signal. B˚ade i det analoga och det digitala fallet f¨orekommer ofta en ¨overlagrad, o¨onskad, DC-komponent som orsakar problem i den resulterande integralen. Hur detta kan hanteras diskuteras i det h¨ar avsnittet.

¨

Overf¨oringsfunktionen f¨or en analog integrering, 1/s kan ¨overf¨oras fr˚an s-planet till z-planet enligt f¨oljande ekvation:

Ha(s) = 1 s → H(z) = Ha  2 T z − 1 z + 1  = T 2 z + 1 z − 1 (2.12)

I s-planet har integratorn en pol i noll och ett nollst¨alle i o¨andligheten. I z-planet f˚ar ¨

overf¨oringsfunktionen en motsvarande pol i z = 1 och ett nollst¨alle i z = −1. ¨Overf¨oringsfunktionen i z-planet i (2.12) brukar skrivas som i (2.13) och kallas vanligen f¨or trapetsmetoden [3].

H(z) = 1 + z

−1

(26)

I b˚ade (2.13) och (2.12) finns en pol i z = 1 vilket resulterar i o¨andlig f¨orst¨arkning f¨or frekvenskomponenter i insignalen som ¨ar n¨ara eller lika med noll. Om insignalen har en DC-komponent kommer denna att f¨orst¨arkas till den grad att integratorn saturerar eller orsakar

overflow. Problemet ˚aterfinns ¨aven i det analoga fallet d¨ar en ˚aterkopplad operationsf¨orst¨arkare (figur 2.5) anv¨ands som integrator.

Figur 2.5: Inverterande integrator.

Kretsen i 2.5 har ¨overf¨oringsfunktionen

H(s) = − 1 sR1C

(2.14) och har s˚aledes en pol i s = 0. Finns en DC-komponent i Vin s˚a kommer Vout att saturera

till en av operationsf¨orst¨arkarens matningssp¨anningar. F¨or att begr¨ansa f¨orst¨arkningen vid l˚aga frekvenser kopplas ett motst˚and parallellt med C i kretsen, enligt figur 2.6.

Figur 2.6: DC-kontrollerad inverterande integrator.

Kretsen i figur 2.6 har ¨overf¨oringsfunktionen Ha(s) = −R2 k 1/sC R1 = − R2 R1 1 sR2C + 1 (2.15) Vid l˚aga frekvenser (n¨ar C kan betraktas som avbrott) begr¨ansas f¨orst¨arkningen till −R1/R2 ist¨allet f¨or att g˚a mot o¨andligheten. F¨or att simulera ¨overf¨oringsfunktionen i den digitala dom¨anen bilinj¨artransformeras uttrycket i (2.15) och man f˚ar

H(z) = Ha 2 T z − 1 z + 1  = −RR2 1 1  2 T z−1 z+1  R2C + 1 = −RR2 1 1 + z−1 (1 + 2R2C/T ) + (1 − 2R2C/T ) z−1 (2.16)

(27)

Ist¨allet f¨or att ber¨akna ¨overf¨oringsfunktionen utifr˚an en analog struktur kan man ber¨akna ¨

overf¨oringsfunktionen direkt i z-planet. Den resulterande ¨overf¨oringsfunktionen kommer att ha en reell pol placerad i 0 < z ≤ 1 (vilket man ¨aven ser vid identifiering i (2.16)).

¨

Overf¨oringsfunktionen kan generellt betecknas:

H(z) = z + 1

z − a (2.17)

Funktionen kommer att f¨orst¨arka l˚aga frekvenser mindre ¨an idealt. Hur a ska placeras kan j¨amf¨oras med en ideal integrator i z-planet (som i (2.13)) och hur mycket skillnad i d¨ampning som kan till˚atas vid en given vinkel. F¨oljande beteckningar anv¨ands i ber¨akningarna:

∆A Till˚aten d¨ampning i dB. ω Brytfrekvensen f¨or integratorn. T 1/Fs

Tabell 2.6: Notation f¨or integratorpolplaceringen.

Av (2.12) och (2.13) med z = ejωT ar man a uttryckt i ∆A:

∆A = 10log10 | ejωT+1 ejωT−1| |eejωTjωT+1−a| ! (2.18) ⇒ a = cos (ωT ) − v u u u t   10∆A/10 q (cos(ωT ) + 1)2+ sin (ωT )2 |eejωTjωT+1−1|   2 − sin (ωT )2 (2.19) F¨or att ber¨akna f¨orst¨arkningen vid ωT = 0 som erh˚alls av ett givet a f˚ar man av (2.17):

A0 = 10log10  2 1 − a  (2.20) 2.3.1 Exempel

Vi vill ha en maximal 0.1dB d¨ampning vid ωT = 0.01π. Av (2.19) f˚ar vi a ≈ 0.99901. Av (2.17) f˚ar vi d˚a ¨overf¨oringsfunktionen

H(z) = z + 1

z − 0.99901 (2.21)

Av (2.20) f˚ar vi f¨orst¨arkningen A0 = 33dB vid ωT = 0. Om vi l¨oser ut Y (z) ur (2.17) f˚ar vi

den ber¨akningsbara funktionen

H(z) = Y (z) X(z) = z + 1 z − a = 1 + z−1 1 − az−1 (2.22) ⇔ Y (z) = Y (z)az−1+ X(z) + X(z)z−1 (2.23) Om vi ska beh˚alla skalningen genom integratorn beh¨over en faktor G = T /2 (enligt (2.12)) l¨aggas till framf¨or ¨overf¨oringsfunktionen och vi f˚ar slutligen:

(28)

2.4

Sampling och konvertering

I det h¨ar avsnittet diskuteras teorin bakom de algoritmer och h˚ardvarul¨osningar r¨orande samp-ling och datakonvertering som senare kommer att implementeras i applikationen.

2.4.1 Sampling

Vid all form av digital signalbehandling kr¨avs att man f¨orst ¨overf¨or den verkliga signalen till en digital motsvarighet. Detta ˚astadkoms genom att med j¨amna mellanrum f˚anga signalens v¨arden (sampla) och p˚a detta s¨att transformera signalen, fr˚an tidskontinuerlig {x(t)} till tidsdiskret {x(n)}. Perioden mellan samples ben¨amns TS [s] och

fS =

1 TS

(2.25) betecknar samplingshastigheten [Hz].

F¨or att en signal ska kunna representeras p˚a ett entydigt s¨att m˚aste, enligt Shannon-Nyquists teorem, samplingshastigheten (fS) vara minst den dubbla h¨ogsta frekvensen (fmax) hos

signa-len. I praktiken inneb¨ar detta att signalen m˚aste bandbegr¨ansas p˚a l¨ampligt s¨att, innan den omvandlas. Detta ˚astadkoms till exempel med ett l˚agpassfilter, d¨ar filtrets ordning (och s˚aledes komplexitet) ¨ar direkt beroende av f¨orh˚allandet mellan fS och fmax.

Om det n¨amnda teoremet inte uppfylls (fS≤ 2fmax) kommer s˚a kallad vikning (aliasing) att

uppst˚a. Detta inneb¨ar att h¨ogre frekvenskomponenter viks ned (upprepas) i det l¨agre intressanta frekvensbandet. Rent praktiskt inneb¨ar detta att falska frekvenskomponenter kan uppst˚a och korrumpera nyttosignalen.

2.4.2 A/D-omvandling

N¨ar signalen samplas m˚aste dess amplitud sparas undan i varje diskret tidpunkt. Eftersom det handlar om digital representation kommer ¨aven amplituden att resultera i ett diskret v¨arde. P˚a grund av den ¨andliga ordl¨angden hos en digital processor kommer signalen att kvantiseras, och ett s˚a kallat kvantiseringsfel kommer att uppst˚a. Detta fel kommer att resultera i o¨onskat brus hos den samplade signalen. Det samplade v¨ardets precision beror av antalet bitar (uppl¨osningen) hos A/D-omvandlaren. En A/D med B bitars uppl¨osning kan representera en signal i 2Bniv˚aer. En signal med toppv¨arde Vpeak kommer s˚aledes att ha minsta steg (Vstep) enligt

Vstep=

Vpeak

2B− 1 (2.26)

Om kvantiseringsfelet antas vara normalf¨ordelat A/D-omvandlarens SNR (signal-to-noise

ratio) tecknas

SNRdB ≈ 6.02 · B + 1.761 (2.27)

Ett stort antal olika typer av A/D-omvandlare existerar idag. Alla med sina olika f¨or- och nackdelar d¨ar parametrar s˚asom pris, snabbhet, energif¨orbrukning och precision kan n¨amnas. En vanlig typ, och ¨aven den som anv¨ands i detta projekt, ¨ar den s˚a kallade ”Successive

Approx-imation Register ”. Denna typ fungerar genom att gradvis anta v¨ardet p˚a den aktuella signalen.

2.5

Temperaturm¨

atning

F¨or att p˚a ett exakt s¨att m¨ata temperatur i omgivningen kan man anv¨anda en PT-100 -givare. Detta ¨ar en v¨alk¨and typ av resistansgivare som ofta anv¨ands inom industrin. Namnet kommer

(29)

fr˚an det faktum att givaren har en resistans p˚a 100 Ω vid 0◦ C. Givaren brukar anv¨andas vid m¨atomr˚aden p˚a -200◦ till 600◦ C. Dessa typer av givare fungerar genom att utnyttja det k¨anda sambandet mellan ett materials temperatur, och dess resistans. I de flesta fall ¨ar materialet i dessa givare platina.

Givarens resistans kan bland annat beskrivas med den s˚a kallade Callendar-Van Dusen-formeln:

R(t) = R0(1 + A × t + Bt2+ (t − 100) × C × t3) , −200◦C < t ≤ 0◦C (2.28)

R(t) = R0(1 + A × t + Bt2) , 0◦C < t < 661◦C (2.29)

d¨ar f¨oljande konstanter ing˚ar:

Konstant V¨arde

A 3.9083 × 10−3 ◦C−1 B −5.775 × 10−7 ◦C−2 C −4.183 × 10−12 ◦C−4

R0 100 Ω

Tabell 2.7: Konstanter f¨or PT-100-givare.

2.6

Vibrationsm¨

atning

Som n¨amns i introduktionskapitlet ¨ar det i m˚anga till¨ampningar av stor vikt att kunna bed¨oma en maskins vibrationer. En korrekt bed¨omning kan till exempel visa om maskinen m˚aste repa-reras eller helt bytas ut.

2.6.1 Storheter

Flera olika m¨atningar kan g¨oras f¨or att best¨amma storleken p˚a en vibration. M¨atinstrument brukar generellt utg˚a fr˚an storheten acceleration [m/s2] men ofta kan slutsatser ¨aven dras av hastighet [m/s] och amplitud [m]. De tv˚a sistn¨amnda storheterna f˚as enkelt genom att integrera den uppm¨atta accelerationen. D˚a signalerna praktiskt sett inneh˚aller ett antal frekvenskompo-nenter ¨ar det oftast av intresse att m¨ata effektivv¨arde ¨aven k¨ant som RMS (Root Mean Square).

¨

Aven varvtal ¨ar av intresse att m¨ata d˚a man ibland kan beh¨ova relatera ett m¨atv¨arde till maskinens faktiska hastighet.

2.6.2 Standardm¨atningar

Ett antal standardfilter existerar f¨or att kunna f˚a ett bed¨omningsbart v¨arde p˚a en maskins vibrationer. P˚a detta s¨att kan man best¨amma att ett visst v¨arde av denna typ kan relateras till en viss slutsats om maskinens h¨alsa.

Bland dessa filter kan tv˚a n¨amnas s¨arskilt:

I standarden ISO-2372 definieras ett enkelt bandpassfilter med brytfrekvenser vid 10 och 1000 Hz [4]. Genom att m¨ata RMS p˚a hastigheten inom detta frekvensomr˚ade f˚as ett v¨arde som p˚a svenska kallas ISO-v¨arde (eng: severity). Denna m¨atningar ¨ar fr¨amst t¨ankt f¨or bed¨omning av lager och ska ske i tre olika riktningar: Uppifr˚an, horisontellt och axiellt. Vidare best¨ammer standarden ett antal olika maskinklasser och olika niv˚aer f¨or v¨arden inom dessa.

F¨or m¨atning av lagerkondition anv¨ands ofta ett h¨ogpassfilter som appliceras p˚a acceleratio-nen. Det ¨ar ett filter av tredje ordningen med en brytfrekvens p˚a 600 Hz [5].

(30)

2.6.3 M¨atkedja

De tidigare n¨amnda standardm¨atningarna tillsammans med integreringar sammanfattas i figur 2.7. I tabell 2.8 f¨orklaras de ing˚aende noderna.

Figur 2.7: ¨Onskad m¨atkedja f¨or vibration.

Nod Storhet

A Acceleration - ing˚ang.

B H¨ogpass-filtrerat effektivv¨arde av accelerationen. C Effektivv¨arde av accelerationen.

D Effektivv¨arde av amplituden. E ISO-v¨arde av hastigheten. F Effektivv¨arde av hastigheten.

(31)

ardvara

I det h¨ar kapitlet beskrivs de h˚ardvarul¨osningar som konstruerats f¨or applikationen. B˚ade val av f¨ardiga kretsar, st¨orningsskydd f¨or dessa samt design av filter och ing˚angssteg beskrivs h¨ar. Vi-dare beskrivs ¨aven realiseringen av sj¨alva kretskortet. P˚a grund av konkurrenssk¨al har vissa de-taljer h¨ar utel¨amnats, och redovisas ist¨allet i bilagorna. Fullst¨andigt kopplingsschema ˚aterfinns i Bilaga D och komplett komponentlista i Bilaga G.

3.1

Mikrokontroller

F¨or att bem¨ota realtidskraven som den digitala signalbehandlingen st¨aller p˚a mikroprocessorn anv¨ands i applikationen en ARM-baserad Cortex M3. ARM-arkitekturen ¨ar idag den i s¨arklass vanligaste bland processorer i inbyggda system [10]. Arkitekturen innefattar en enkel instruk-tionsupps¨attning f¨or att m¨ojligg¨ora effektiv exekvering av programkod. ARM-arkitekturen ¨ar licensierbar vilket m¨ojligg¨or f¨or h˚ardvarutillverkare att tillverka processorer baserade p˚a ARM-arkitekturen med ett eget urval av periferienheter.

Till den h¨ar applikationen har en processor baserad p˚a arkitekturen ARMv7-M anv¨ands, vilken i skrivande stund tillh¨or den senaste arkitekturversionen. Processorn har en upps¨attning periferienheter som l¨ampar sig f¨or applikationens krav, d¨aribland 12-bits DAC och ADC, RTC, USART, DMA-kontroller och SPI.

Sj¨alva mikrokontrollern kr¨aver v¨aldigt f˚a yttre komponenter. Bland dessa kan dock tv˚a kristalloscillatorer n¨amnas, en f¨or sj¨alva mikrokontrollern (8 MHz) och en f¨or realtidsklockan (32,768 kHz). Mikrokontrollern inneh˚aller en PLL (Phase-locked Loop) som ser till att klock-frekvensen ¨okas till den ¨onskade. I v˚art fall 72 MHz. F¨or att realtidsklockan ska beh˚alla sitt v¨arde vid str¨omavbrott anv¨ands en backupkondensator som bibeh˚aller sp¨anningsmatning till kristallen och RTC-enheten i processorn d˚a huvudstr¨ommen ¨ar bruten.

Till mikrokontrollern finns ¨aven en JTAG- samt en SPI-kontakt. JTAG:en anv¨ands f¨or att programmera och fels¨oka modulen via PC. SPI-kontakten ¨ar t¨ankt att anv¨andas f¨or framtida utbyggnad av systemet och diskuteras inte n¨armare i den h¨ar rapporten.

3.2

Ing˚

angssteg till accelerometergivare

Givaren som anv¨ands f¨or att m¨ata accelerationen, och i slut¨andan vibration, ¨ar av piezoelektrisk (PZT) typ. Den matas via en konstantstr¨omk¨alla p˚a cirka 2 mA. Fr˚an givaren f˚as en signal med DC-offset och en ¨overlagrad AC-sp¨anning, d¨ar den sistn¨amnda varierar med accelerationen, enligt 100 mV/G. Denna signal passerar sedan genom ett ing˚angssteg enligt figur 3.1.

(32)

temperaturkompense-Figur 3.1: Fl¨odesschema av ing˚angssteget f¨or accelerometergivaren.

rande konfiguration enligt en referenskoppling i dess datablad [18]. Retursignalen buffras med en operationsf¨orst¨arkare innan den h¨ogpassfiltreras f¨or att ta bort DC-niv˚an. Filtret ¨ar en enkel RC-l¨ank (Figur 3.2) vars brytfrekvens best¨ams enligt

fc= 1

2πRC [Hz] (3.1)

Denna brytfrekvens har satts till cirka 4 Hz f¨or att ta bort DC-niv˚an, men samtidigt beh˚alla viktiga, l˚aga frekvenser i signalen.

Figur 3.2: Ett enkelt h¨ogpassfilter.

Efter h¨ogpassfiltret passerar signalen genom ett tv˚apoligt anti-vikningsfilter som realiseras med en Sallen Key-struktur. Denna struktur kr¨aver f˚a komponenter men ¨ar samtidigt mycket dynamisk och kan anv¨andas f¨or att implementera ett antal olika tv˚apoliga filter genom att variera fyra impedanser. I figur 3.3 visas den generella strukturen.

(33)

¨

Overf¨oringsfunktionen kan beskrivas enligt H(s) = Vout

Vin

= Z3Z4

Z1Z2+ Z4(Z1+ Z2) + Z3Z4

(3.2) F¨or att realisera den ¨onskade l˚agpasstrukturen s¨atts

Z1= R1, Z2 = R2, Z3 = 1 sC2 , and Z4= 1 sC1 (3.3) vilket ger ett filter med brytfrekvens vid

fc=

1 2π√R1R2C1C2

(3.4) Komponenterna har valts s˚a att fc = 15 kHz, vilket ser till att nyttosignalen p˚a maximal

12.5 kHz passerar, men ej d¨ampas f¨or mycket.

F¨or att anpassa signalen till A/D-omvandlaren beh¨over den delas ned samt h¨ojas upp kring en DC-niv˚a. Enligt specifikationerna kan signalen variera ±2 V (±20 G). Som A/D-referens anv¨ands en precisionssp¨anningsk¨alla p˚a 2048 mV. Den inkommande signalen beh¨over allts˚a delas med tv˚a och h¨ojas upp till halva referenssp¨anningen (1024 mV). Allt detta g¨ors med en operationsf¨orst¨arkare kopplad i en summerande konfiguration. I figur 3.4 visas denna koppling.

Figur 3.4: En summerande operationsf¨orst¨arkarkoppling.

Kretsens funktion kan beskrivas som Vout = −R3  Vref R1 +Vsig R2  (3.5) Genom att s¨atta 2R1 = 2R2 = R3 kommer b˚ade sj¨alva signalen och A/D-referensen att

halveras innan de summeras. D˚a detta steg ¨ar inverterande anv¨ands ¨annu ett inverterande steg, utan f¨orst¨arkning, f¨or att v¨anda tillbaka signalen.

Resultatet av de ovanst˚aende ing˚angsstegen ¨ar en signal med borttagen DC-niv˚a, viknings-filtrerad som varierar med ±1 V kring 1024 mV. Denna ¨ar nu l¨ampligt anpassad f¨or att A/D-omvandlare. Tv˚a exakta kopior finns av detta ing˚angssteg, d˚a systemet har tv˚a kanaler f¨or accelerationsm¨atning.

Som A/D-omvandlare f¨or accelerometerstegen anv¨ands en extern krets fr˚an Texas Instru-ment vid namn ADS8329. Denna ¨ar tv˚akanalig, 16-bitars och har en maximal sampelfrekvens p˚a 500 kHz. Omvandlaren kommunicerar med mikrokontrollern via ett SPI-interface.

(34)

3.3

Ing˚

angssteg till temperaturgivare

Som beskrivs i avsnitt 2.5 anv¨ands en temperaturgivare av typ PT-100. Som ett gr¨anssnitt mellan sj¨alva givaren och en A/D-omvandlare kan man anv¨anda en Wheatstone-brygga och en

instrumentf¨orst¨arkare. I figur 3.5 visas denna kopplingskedja.

Figur 3.5: Fl¨odesschema av ing˚angssteget f¨or temperaturm¨atningen.

B˚ade bryggkopplingen och instrumentf¨orst¨arkaren beh¨over konfigureras f¨or det aktuella m¨atomr˚adet och f¨or A/D-omvandlarens referenssp¨anning.

Wheatstone-bryggan (Figur 3.6) st¨alls in genom att s¨atta de tre motst˚anden till den resi-stans som givaren har vid den l¨agsta temperaturen man vill m¨ata. P˚a detta s¨att kommer den differentiella sp¨anningen i bryggan att var noll vid den l¨agsta temperaturen, f¨or att sedan ¨oka vid ¨okning i temperatur.

Figur 3.6: En Wheatstone-brygga.

Om de tre resistanserna i bryggan s¨atts till R blir funktionen mellan den differentiella sp¨anningen och givarens resistans

Vdif f = Vtemp− Vref = VDD(

Rtemp

Rtemp+ R− 0.5)

(3.6) d¨ar VDD ¨ar bryggans matningssp¨anning och Rtemp ¨ar givarens resistans.

F¨or att utf¨ora den differentiella m¨atningen p˚a ett effektivt s¨att anv¨ands en instrumentf¨orst¨arkare. Denna koppling visas i figur 3.7.

F¨or att bruka s˚a mycket som m¨ojligt av A/D-omvandlarens spann vill man f¨orst¨arka den differentiella signalen s˚a att sp¨anningen maximalt blir A/D-omvandlarens referens (VA/D).

(35)

Figur 3.7: En instrumentf¨orst¨arkarkoppling.

f¨or m¨atningen gentemot h¨ogsta m¨ojliga temperatur (Tmax). Genom att s¨atta Tmax l˚agt kommer

en h¨ogre noggrannhet uppn˚as, men h¨ogre temperaturer ej kunna m¨atas ¨overhuvudtaget. Genom att s¨atta VDD = VA/D f˚as

Adif f =

1

Rtemp(Tmax)

R+Rtemp(Tmax)− 0.5

(3.7) d¨ar Rtemp(Tmax) ¨ar givarens resistans vid den maximalt ¨onskade temperaturen.

N¨ar Adif f ¨ar k¨and s¨atts sedan motst˚anden i f¨orst¨arkaren enligt

Adif f = 1 +

2R Rg

(3.8) Efter f¨orst¨arkningen passerar signalen genom ett anti-vikningsfilter realiserat med en enkel RC-l¨ank (Figur 3.8).

Figur 3.8: Ett enkelt l˚agpassfilter.

Filtrets brytfrekvens best¨ams enligt fc=

1

2πRC [Hz] (3.9)

Denna frekvens har satts till cirka 2 kHz.

Efter dessa steg ¨ar signalen l¨ampligt anpassad och redo att kopplas till mikrokontrollerns interna 12-bitars A/D.

Det ska redan h¨ar n¨amnas att denna koppling ej fungerar precis som det var t¨ankt. Mer om detta i avsnitt 5.1.1.1.

(36)

3.4

Str¨

omslingeing˚

ang

Ett enkelt str¨omslingeing˚angssteg har konstruerats f¨or att andra enheter, till exempel sensorer, ska kunna kommunicera data till modulen. Detta ing˚angssteg matar ¨aven sj¨alva slingan med +24V. Detta g¨or det m¨ojligt f¨or en yttre enhet att bli str¨omf¨ors¨orjd via slingan, och samtidigt skicka data till modulen. Sj¨alva ing˚angssteget visas i figur 3.9.

Figur 3.9: Kopplingsschema str¨omslingeing˚angen.

Dess funktion ¨ar mycket enkel. Modulen str¨omf¨ors¨orjer slingan via Iout och kommer att

f˚a tillbaka en str¨om genom Iin. Denna str¨om, som ¨ar 4-20 mA, flyter genom motst˚andet R

vilket kommer att ˚astadkomma en proportionell sp¨anning p˚a operationsf¨orst¨arkarens positiva ing˚ang. R b¨or s¨attas i enlighet med den h¨ogsta instr¨ommen (Imax) samt A/D-omvandlarens

referensv¨arde (VA/D). Detta kan ber¨aknas enligt

R = VA/D Imax

(3.10)

3.5

Str¨

omslingeutg˚

ang

Det finns ett otal m¨ojligheter att konstruera en str¨omslinges¨andare med diskreta komponenter. Texas Instruments har sedan n˚agra ˚ar tillbaka tillverkat en s¨andare, XTR115, som inte kos-tar mer ¨an en diskret l¨osning. Kretsen har, f¨orutom en str¨omslinges¨andare, ¨aven en inbyggd sp¨anningsregulator p˚a +5V och en sp¨anningsreferens p˚a +2,5 V. Dessa tv˚a kan driva en mindre sensorkrets vilket g¨or s¨andarnoden helt fri fr˚an egen str¨omf¨ors¨orjning. I den h¨ar applikationen kommer dock inte sp¨anningsreferensen eller sp¨anningsregulatorn att anv¨andas, men kretsens pris ¨ar konkurrenskraftigt ¨aven om bara str¨omslinges¨andaren anv¨ands.

F¨or att skydda kretsen fr˚an sp¨anningsspikar och omv¨and polaritet p˚a str¨omslingan placeras en likriktarbrygga parallellt med en +39V zenerdiod p˚a str¨omslingan. XTR115 ¨ar specificerad att klara maximalt +40V p˚a str¨omslingan, zenerdioden ser till att denna specifikation uppfylls. Kretsen genererar en str¨om till str¨omslingan, IO, baserat p˚a hur stor str¨om som g˚ar in p˚a

IIN enligt IO = RVININ100 d¨ar RIN ¨ar ett motst˚and i serie med IIN. Den analoga sp¨anningen

fr˚an mikrokontrollerns D/A-omvandlare varierar mellan 0 och +3,3V, RIN v¨aljs enligt IO = VIN

RIN100 ⇒

3,3

(37)

3.6

Rel¨

adrivarutg˚

ang

F¨or att m¨ojligg¨ora att externa rel¨aer dras vid larmsituationer eller motsvarande finns en koppling f¨or att driva tv˚a stycken s˚adana. F¨or att p˚a ett enkelt s¨att realisera detta anv¨ands kretsen

ULN2003 som ¨ar en darlington-drivararray. Kretsens funktion ¨ar mycket enkel och kr¨aver endast

ett externt pull-down-motst˚and. En digital utg˚ang fr˚an mikrokontrollern kopplas direkt till en kanal p˚a kretsen. Vid p˚aslag kommer sedan darlingtondrivaren att dra utg˚angen ner mot jord. Eftersom rel¨aspolens andra pol ¨ar kopplad till 24V kommer denna sp¨anning d˚a att l¨agga sig ¨

over rel¨aet. I figur 3.10 visas en principskiss av denna koppling, d¨ar b˚ade transistorn och dioden ing˚ar i sj¨alva ULN2003-kapseln.

Figur 3.10: Principiellt schema ¨over en rel¨akanal.

Vissa ˚atg¨arder har ¨aven tagits f¨or att isolera rel¨aernas matningssp¨anning fr˚an det ¨ovriga kortets. Detta i form av en diod och en liten kondensator. Det visar sig dock att dessa ˚atg¨arder ej var tillr¨ackliga, vilket beskrivs n¨armare i avsnitt 5.1.1.2.

3.7

RS-485-gr¨

anssnitt

Maxim IC tillverkar en krets med namn MAX3430 som ¨ar en niv˚akonverterare fr˚an TTL-niv˚a till EIA-485-niv˚a. Kretsen har seriella in- och utg˚angar och tv˚a extra ing˚angar d¨ar s¨andar- eller mottagarl¨age v¨aljs. Kretsen skiftar mellan h¨ogimpediv till 54Ω i utresistans n¨ar man ¨andrar mellan mottagare och s¨andare. MAX3430 ¨ar anpassad f¨or +3,3V-logik och kr¨aver endast en enkel +3,3V-matning. Kretsen ¨ar tolerant f¨or ± 80V p˚a RS-485-bussen och har dessutom en ESD-tolerans p˚a 15kV. Kretsen ¨ar slew rate-begr¨ansad till 250 kbps f¨or att ¨oka EMI-t˚aligheten. Dessa egenskaper g¨or kretsen till ett robust alternativ i en industriell milj¨o. Om applikationen monteras i en av de tv˚a ¨andarna p˚a RS-485-bussen finns en bygel som kopplar in ett shunt-motst˚and p˚a 120Ω f¨or att terminera bussen.

3.8

atdel

Modulens n¨atdel har till uppgift att producera ett antal olika sp¨anningar men ¨aven att skydda mot yttre och inre st¨orningar. I figur 3.11 visas ett fl¨odesschema f¨or denna n¨atdel.

References

Related documents

Till exempel fick jag inte med n˚ agot Ljus- och Optikland i f¨ orsta f¨ ors¨ oket, och pilen mot Kosmologi, som ligger utanf¨ or den h¨ ar kartan, borde peka mer upp˚ at,

Det kan n o g vara lämp- ligt att inleda en ny metod med en uppgift, som kan behandlas även med förut bekanta metoder; dessutom bör givet en fjärde- grads funktion uppritas för

[Tips: Faktorisera polyno-

Endast definitioner och trigonometriska r¨ aknelagar f˚ ar anv¨ andas utan att de f¨ orst bevisas. Sida 2

[r]

En kalibrering av kapacitansm¨ataren skulle kunna avsl¨oja om vi skall skylla p˚a m¨ataren eller

Komplex analys I, hemuppgifter till vecka

[r]