• No results found

Verifiering av accelerometer mätning i 16-bitars mikrokontroller

N/A
N/A
Protected

Academic year: 2022

Share "Verifiering av accelerometer mätning i 16-bitars mikrokontroller"

Copied!
75
0
0

Loading.... (view fulltext now)

Full text

(1)

INOM

EXAMENSARBETE DESIGN OCH PRODUKTFRAMTAGNING, AVANCERAD NIVÅ, 30 HP

STOCKHOLM SVERIGE 2019,

Verifiering av accelerometer

mätning i 16-bitars mikrokontroller

ANTON FORSS

(2)
(3)

Examensarbete TRITA-ITM-EX 2019:11

Verifiering av accelerometer mätning i 16-bitars mikrokontroller

Anton Forss

Godkänt

2019-01-23

Examinator

Martin Edin Grimheden

Handledare

Bengt Eriksson

Uppdragsgivare

Anton Forss

Kontaktperson

Anton Forss

Sammanfattning

Denna rapport är ett examensarbete vid institutionen för mekatronik vid KTH. I arbetet jämförs två metoder för utveckling och verifiering av en algoritm för accelerationsanalys i en

mikrokontroller (sedarmera förkortat µC). En µC av typ MSP430G2553 används som

målsystem. Målet med algoritmen är att µCn skall kunna särskilja rekylacceleration från andra accelerationer som slag och mekanismrörelse i ett vapen. I arbetet presenteras två metoder för utveckling och verifiering. Alternativ 1 använder endast målsystemet och dess mjukvaruverktyg.

Alternativ 2 använder målsystem och mjukvaruverktyg men också ett kombinationsinstrument med både oscilloskop-funktion och arbiträr-vågforms-generator. I rapporten undersöks också två olika accelerometrar samt två varianter av µC. Med hjälp av kombinationsinstrument kunde flertalet referensmätningar genomföras av vapnets acceleration vid rekyl.

Kombinationsinstrumentet användes också för att simulera accelerationer mot målsystemet.

Resultatet av arbetet är att verifiering och utveckling med kombinationsinstrument (alternativ 2)

är fördelaktigt ur flera synpunkter. Men att alternativ 1 också besitter flera fördelar. Den främsta

fördelen med alternativ 2 är att accelerationsdatat enkelt kunnat samlats in utan beroenden av

µCs prestanda eller programmeringsfel. Instrumentet underlättar flera andra delar i utveckling

som extern verifiering av programmets exekvering och möjligheten att reproducera tidigare

samlad accelerationsdata mot målsystem. Vilket gör kombinationsinstrumentet till ett behändigt

utvecklingssystem.

(4)

Verification of acceleration measurement in 16-bit microcontrollers

Anton Forss

Approved

2019-01-23

Examiner

Martin Edin Grimheden

Supervisor

Bengt Eriksson

Commissioner

Anton Forss

Contact person

Anton Forss

Abstract

This report is a final thesis report at the institution of Mechatronics at KTH (The Royal institute of Technology). In this report two methods for development and verification are compared for acceleration analysis in a weapon with a microcontroller (hence called µC). A µC of type MSP430G2553 is used as target system. The goal of the µC's program is to determine if an acceleration pattern is a recoil or not. In the report two methods are presented for verification and development. Alternative 1 is limited to using the target µC and software tools associated with it.

Alternative 2 is using the target µC and software tools but also and additional combination instrument which includes both oscilloscope and arbitrary waveform generator. The combination instrument was used to measure several recoil acceleration patterns. These reference measurements were used to simulate accelerometer for the target system. The conclusion is that alternative 2's use of the combination instrument is of great benefit in several perspectives.

Alternative 1's also has several benefits. Furthermore alternative 2 enables early identification of

the acceleration data without the limits of the µC as memory constraints and program defects. The

combination instrument is a useful tool for development, as it can be used as a small HIL-system.

(5)

Förord

Denna rapport hade inte varit möjlig utan de många människor som hjälpt till på vägen. Därför passar jag på att framföra stort tack till min handledare Bengt Eriksson vid institutionen för mekatronik på KTH. Även tack till examinator Mar- tin Edin Grimheden för hans arbete. Tack också till Christoffer Olsson som bidragit med vapen för testning. Antonio Fernandez, Bruno Bosco, Robin Lilja, Linus Sjövall och Jörgen Hansson som bidragit med sin expertis och kunskap i komponentval och mjukvaruutveckling. Tack till Per Arvidsson vid FMV för hans stöd i vapenteknik.

Tack till Analog Devices Sverige för donation av accelerometer. Tack till Michael Raun för stöd och korrekturläsning. Per Larsson skall också tackas för hjälp med fotografering. Mycket stort tack till Sven-Erik Thor för korrekturläsningen och slut- ligen ett riktigt stort tack till min fru Pernilla Thor som varit det stöd som gjort arbetet möjligt. Min dotter Signe bidrag skall ej häller glömmas bort, utan hennes tillkomst hade inget av detta blivit av.

(6)

1 Introduktion 1

1.1 Bakgrund . . . 1

1.2 Uppgift . . . 2

1.3 Mjukvarudesign . . . 2

1.4 Komponenter . . . 2

1.4.1 Sensor . . . 2

1.4.2 Microkontroller - µC . . . . 2

1.4.3 Exkluderade komponenter . . . 2

1.5 Verifiering . . . 3

1.6 Etik . . . 3

1.7 Rapport disposition . . . 3

2 Teoretisk bakgrund 5 2.1 Tidigare arbeten . . . 5

2.2 Sensorval . . . 5

2.3 Vapnets dynamik . . . 7

2.4 Realtids-mätningskrav . . . 11

2.5 Offline-mätningskrav . . . 13

3 Komponentval 15 3.1 µC . . . 15

3.1.1 Kostnad . . . 15

3.1.2 Energieffektivitet . . . 15

3.1.3 ADC . . . 16

3.1.4 Övriga egenskaper . . . 16

3.1.5 Diskussion . . . 16

3.2 Accelerometer . . . 16

3.2.1 Hårdvaru-specifikation . . . 17

3.2.2 Prov . . . 17

3.2.3 Diskussion . . . 18

4 Verifierings- och utvecklingsmetodik 19 4.1 Verifieringsmetod . . . 19

(7)

4.2 Alternativ 1, enskilt målsystem . . . 19

4.3 Alternativ 2, extern utrustning . . . 19

4.4 Metodutvärdering . . . 20

5 Datainsamling 21 5.1 Datainsamlingsmetodik . . . 21

5.2 Provade vapen . . . 21

6 Validering av verifieringsmetodik 27 6.1 HIL-system . . . 27

6.1.1 Alternativ 1 . . . 27

6.1.2 Alternativ 2 . . . 27

6.2 Verifiering, µC mätresultat . . . 28

6.2.1 Alternativ 1 . . . 28

6.2.2 Alternativ 2 . . . 32

6.3 Verifiering, programexekvering . . . 34

6.3.1 Alternativ 1 . . . 34

6.3.2 Alternativ 2 . . . 37

6.4 Verifiering, algoritm . . . 39

6.4.1 Alternativ 1 . . . 39

6.4.2 Alternativ 2 . . . 39

6.5 Diskussion . . . 40

7 Signalanalys 43 7.1 MATLAB-analys . . . 43

7.2 Diskussion mätdata . . . 50

7.3 Diskussion utvecklingsaspekter . . . 51

8 Lösningsförslag 53 8.1 Utvecklings och verifieringsmetod . . . 53

8.2 Algoritm . . . 53

8.3 Filter . . . 54

8.4 Kalibrering . . . 54

8.5 Funktion och arkitektur . . . 54

9 Framtida arbeten 55 9.1 Metod . . . 55

9.2 Algoritm och avancerade filter . . . 55

9.3 Komponenter . . . 56

Litteratur 57

A Accelerometerjämförelse, grafer 59

B Analog Discovery pinlista 62

(8)

2.1 Kinematisk människa-vapen-modell, låst mekanism . . . 9

2.2 Kinematisk människa-vapen-modell, automatisk mekanism . . . 10

2.3 Rekylvektorn uppdelad i x och y komponent . . . 10

2.4 Samples av sinus signal med 10 gånger frekvensen, sinus - 2Hz, sampling 20Hz . . . 14

3.1 ADXL193 och ADXL377 x-axel mätning på Chiappa Rhino i 1.12Mhz . 18 4.1 Digilents Analog Discovery . . . 20

5.1 Accelerometerenheten. . . 22

5.2 Schematiskbild över mätsystemet. . . 22

5.3 Mätsystemet i sin helhet. . . 23

5.4 Accelerometerenhet monterad på HK PTR-91, (Försvarsmaktens be- nämning: AK4). . . 23

5.5 Picatinnyskena för pipmontage. . . 24

5.6 Accelerationsmätning på gevär av typ Carl Gustaf 1900 . . . 24

5.7 Gevärsatrapp, Massa med dämpning för provning av mätsystem . . . . 25

6.1 Test av Atmega16 med slag mot 5 kg vikt med hammare . . . 29

6.2 Exempel på ADC-sampling av PWM i blått, med mätpunkter i rött . . 30

6.3 Sampling av 1kHz PWM, med MSP430. ADC-sampling i 10kHz. PWM i blått och ADC-samples som röda ringar . . . 31

6.4 Uppmätt rekylacceleration med MSP430. Samples som röda ringar och interpolering i blått . . . 31

6.5 Sampling av 500Hz sinusvåg från AD med MSP430. ADC sampling i 10kHz. Mätpunkter i rött, med sinusvåg i blått . . . 32

6.6 Rekyl från Glock 19, referensmätning . . . 33

6.7 Sampling från MSP430 10kHz, rekyl från Glock 19. Samples som röda ringar och interpolering i blått . . . 33

6.8 Funktions diagram för programmet simpleDetect . . . 35

(9)

6.9 Plot av funktionsexekvering i simpleDetects. Värde 1 betyder att funk- tionen exekveras och värde 0 betyder att den inte exekveras. Tre stadier i programmet (normalläge, sparläge, och analysläge) avdelade med svar- ta horisontella linjer. Där det egentligen hade varit mer exekveringar av

f unc_adcSample() och func_detect() i mellan. . . 36

6.10 Graf från WaveForms, med func_adcSample() överst och func_detect() undertill. . . 37

6.11 Graf från WaveForms logik-ingångar. Slutet av en mätsession där func_detect() är i analysläge . . . 38

7.1 Acceleration vid slag mot Chiappa Rhino med hammare. . . 43

7.2 Acceleration vid avfyrning av Chiappa Rhino. . . 44

7.3 Acceleration vid avfyrning av Chiappa Rhino. . . 44

7.4 RE vid rekyl med .38 special ammunition i Chiappa Rhino . . . 45

7.5 RE övertid från acceleration vid slag med hammare mot Chiappa Rhino 46 7.6 Acceleration vid avfyrning av CZ Shadow. . . 46

7.7 Acceleration vid avfyrning av CZ Shadow. . . 46

7.8 Acceleration vid avfyrning av Glock 19. . . 47

7.9 Acceleration vid avfyrning av Glock 19. . . 47

7.10 Acceleration vid avfyrning av Glock 19, med mantelspärr. . . 47

7.11 Acceleration vid avfyrning av Ruger 10/22, stående skjutställning. . . . 48

7.12 Acceleration vid avfyrning av Ruger 10/22, stående skjutställning. . . . 48

7.13 Acceleration vid avfyrning av HK PTR91, sittande skjutställning. . . . 49

7.14 Acceleration vid avfyrning av HK PTR91, liggande skjutställning. . . . 49

7.15 Acceleration vid avfyrning av Carl Gustaf 1900, sittande skjutställning. 50 7.16 Acceleration vid avfyrning av Carl Gustaf 19900, stående skjutställning. 50 7.17 Acceleration vid hammarslag mot massa, 5kg. . . 51

7.18 Acceleration vid hammarslag mot massa, 5kg. . . 51

7.19 Acceleration vid hammarslag mot massa, 5kg. . . 52

A.1 ADXL193 och ADXL377 x-axel mätning på Chiappa Rhino, 1 . . . 59

A.2 ADXL193 och ADXL377 x-axel mätning på Chiappa Rhino, 2 . . . 59

A.3 ADXL193 och ADXL377 x-axel mätning på Chiappa Rhino, 3 . . . 60

A.4 ADXL193 och ADXL377 x-axel mätning på CZ shadow . . . 60

(10)

2.1 Mättid och motsvarande lagringsutrymme vid 10kHz sampling . . . 12

3.1 Accelerometer databladsjämförelse[13][19] . . . 17

5.1 Provade vapen . . . 22

6.1 Möjlig längsta tid för mätning, beroende av minnesallokering samt samp- lingsfrekvens, då 1 sample lagras i 2Byte . . . 29

6.2 Körtiderna under normalläge utan att tröskelvärdet överskridits . . . 36

6.3 Start tider under normalläge utan att tröskelvärdet överskridits . . . 36

6.4 Tiderna från figur 6.9 . . . 36

6.5 Exekveringstid och frekvens i normalläge mätt med alternativ2, från 4 prov. . . 37

6.6 Exekveringstid spar- och analysläge mätt med alternativ2, från 4 prov . 38 6.7 Jämförelse mellan alternativ 1 och 2. Värdena i tabellen är ett medel- värde av de uppmätta tiderna för varje läge . . . 38 7.1 RE min/max vid rekyl med olika vapen och falska rekyl accelerationer. 45

(11)

Förkortningar

AD Analog discovery, kombinationsinstrument.

ADC Analog to digital converter.

AK4 Automatkarbin 4.

AK5 Automatkarbin 5.

AR15 Armalite Rifle 15.

DA Digital to analog.

FIFO First in first out.

HK Heckler and Koch.

I/O Input/Output.

KAR Kvarvarande ammunitions räknare.

µC Mikrokontroller.

MIPS Miljoner instruktioner per sekund HIL Hardware in the loop.

HMI Human Machine Interface.

PWM Pulse width modulation.

RE Rekylenergi.

USART Universal synchronous and asynchronous receiver transmitter.

USB Universal Serial Bus.

(12)

g Tyngdacceleration, 9.82 m/s2.

Hz Hertz.

J Joule.

N Newton.

m Milli, 10−3.

V Volt.

µ Micro, 10−6.

(13)

Kapitel 1

Introduktion

I detta kapitel beskrivs arbetets bakgrund, mål, och omfattning. Samt definition av vilka delar som kommer att undersökas närmare samt vilka delar som inte kommer att diskuteras djupare.

1.1 Bakgrund

Det existerar idag mycket lite publik information kring de mekaniska förlopp som går under samlingsnamnet rekyl. Rekylen är den motsatta kraft som uppstår i va- pen som avfyrar en projektil. Trots att dess verkan är upplevd av många så finns inte mycket publicerad data som avspeglar förloppet i ett kvantifierbart medium.

Standardisering av uttryck saknas också.

Vid användning av handeldvapen[1] med magasinskapacitet uppstår ett problem för användaren. Det är under användning svårt att observera mängden kvarvarande ammunitionen i magasinet. Det kan tyckas trivialt men är en kritisk punkt i plane- randet av avfyrning tillika magasinsbyte. För att underlätta användarens handha- vande kan ett hjälpmedel monteras på handeldvapnet för att tillkännage magasinets kvarvarande ammunitionsmängd. Det existerar i dag ett fåtal sådana mekaniska lösningar som dock inte används i någon utbredd skala. Den enda elektroniska lös- ningen på marknaden är inte anpassad för operationer i utomhusmiljöer och går endast att montera på ett fåtal vapenmodeller. En universell lösning för flertalet handeldvapen som går att montera utan mekanisk bearbetning är därför eftersträ- vansvärt. Funktioner som kan adderas till en sådan lösning är också summering av det totala antalet avfyrade skott. En sådan summa ger användaren en indikering för serviceintervaller samt beräknat slitage på pipa och andra delar. En sådan pro- dukt kommer i detta arbete kallas för "Kvarvarande ammunitionsräknare", förkortat KAR. Arbetet kommer att bidra med information för utvecklingen av en KAR.

(14)

1.2 Uppgift

Huvudfrågan för detta examensarbete är att identifiera och diskutera vilken typ av system som krävs för att utveckla och verifiera den algoritm som behövs för att en KAR som skall fungera för flera typer av handeldvapen. Arbetet skall också identifiera lämpliga komponenter för en KAR.

1.3 Mjukvarudesign

Funktion och arkitektur hos mjukvara är en del av arbetet där målet är att formulera de kritiska delarna för en fungerande algoritm så som schemaläggning och inläsning av data. Begränsade resurser i form av minne och processorkraft kommer också att utredas. Dock kommer det endast att undersökas för en typ av µC och de alternativ som finns kommer inte att utredas.

1.4 Komponenter

Här beskrivs de komponenter som arbetet kommer att undersöka och på vilket sätt de skall undersökas.

1.4.1 Sensor

En sensor behövs för att detektera skottavgången. Valet av specifik komponent för den valda sensortypen skall undersökas teoretiskt för att maximera möjligheterna till noggranna mätningar.

1.4.2 Microkontroller - µC

I arbetet skall de µCs som utreds utvärderas utifrån deras egenskaper att fungera i en KAR. Egenskaper som anses viktiga för utvecklingen skall identifieras. Dessa egenskaper skall stå till grund för en teoretisk jämförelse mellan valda µC.

1.4.3 Exkluderade komponenter

Batteri Kraftkällan till en KAR är viktig men kommer inte att utredas närmare.

Det antas finnas en strömkälla som kommer att vara en eller flera celler. Det är en fördel om komponenterna har en märkspänning som motsvarar spännigen för en litiumjoncell (3.3V ). Det medför att endast en cell behövs för att driva produk- ten. Det är önskvärt att komponenterna besitter egenskaper som är till fördel för små batterier så som energieffektivitet och linjärt uppträdande vid vid varierande spänningar.

Human Machine Interface Human machine interface (förkortat HMI) kommer inte att diskuteras närmare, därmed utelämnas integrationsförslag för knappar samt

(15)

1.5. VERIFIERING

lösningar för att synliggöra resultatet av detekteringen. Dock kommer funktionen för HMI allokeras plats i KAR-programmets schemaläggning.

Mekanisk design Mekaniska aspekter, så som inkapsling och formgivning av en färdig produkt kommer inte att diskuteras eller utredas.

1.5 Verifiering

Huvuddelen av arbetet är att identifiera vilka metoder som kan användas för att utveckla och verifiera funktionen i en KAR. Där skall två metoder testas och un- dersökas och slutligen en rekommenderas.

1.6 Etik

Om en KAR används i militära sammanhang kommer användaren att förlita sig på att ammunitionstillgången som visas är korrekt. Om det inträffar en situation där användaren får fel information om ammunitionstillgången i vapnet kan det leda till användarens eldgivning oavsiktligt uteblir. Där med försätts användaren i en oönskad farlig situation. Därmed är det av yttersta vikt att en KAR ej återger felaktig information.

1.7 Rapport disposition

Rapporten kommer inledningsvis att diskutera den teoretiskabakgrunden i kapitel 2. Därefter undersöks komponentval i kapitel 3. Utvecklings och verifieringsmetodik beskrivs i 4 men genomförandet och utvärderingen av metoderna beskrivs i kapitel 6. Där imellan beskrivs datainsamlingen i kapitel 5. Data som samlats in beskrivs och diskuteras i kapitel 7. Slutligen presenteras ett lösningsförslag i kapitel 8 och förslag på framtida arbeten i kapitel 9

(16)
(17)

Kapitel 2

Teoretisk bakgrund

I detta kapitel beskrivs den teoretiska grunden som är känd sedan tidigare i ämnet.

Inledningsvis diskuteras sensorval och sedan vapnets dynamik för att sen övergå till de krav på rekylaccelerationsmätning som kan identifieras.

2.1 Tidigare arbeten

Sökningar efter tidigare forskning inom vapenrekyl har genererat ett sparsamt re- slutat. Det finns två tidigare arbeten som beskriver utveckling av skottdetektion [2, 3]. Båda arbeten fokuserar på detektions-algoritm och har inte fokuserat på mättek- nik. Båda arbetena saknar också ett detaljerad återgivning av rekylaccelerationen.

Resterande rekyl relaterad forskning har fokuserat på rekylens inverkan på männi- skokroppen och försöka till att kvantifiera den. Min slutsats är att det inom området skottdetektion inte existerar mycket tidigare arbeten att referera till men att det inte är helt outforskat.

2.2 Sensorval

En eller flera sensorer behövs för att identifiera skottavgång. Under skottets avgång omvandlas den lagrade energin i krutet till mekanisk energi i form av rörelse av projektil och vapnen. Krutets omvandling till gas ger också upphov till akustiska vibrationer i luften samt ljus i pipans mynning. Sensorer som med de kriterierna möjliggör detektion är:

• Tryck-/ljudsensor

• Mekanisk givare

• Ljussensor

• Accelerometer

Nedan följer en redogörelse för varje sensortyps funktion samt för- och nackdelar.

(18)

Tryck-/ljud-sensor En tryck-/ljud-sensor består av ett membran kopplat till en givare som detekterar membranets rörelser. När membranet rör sig återspeglar den tryckförändringar i luften. Det är dessa skillnader i luftens täthet som också kallas ljud. Vid skottavgång uppstår en tryckvåg från pipa med krutgasernas expansion.

Det leder till en tryckförändring från pipas mynning som rör sig som vågor genom luftmediet. Tryck-/ljud-sensor kan då användas för att detektera den uppkomna akustiska vibrationen. Nackdelen är att det kan vara svårt att differentiera mellan den akustiska vibrationen från det KAR-bestyckade vapnet och vapen som avfyras i dess närhet. Med flera tryck-/ljud-sensorer kan källan till den akustiska signa- len lokaliseras. En sådan lösning lider dock av en hög komplexitet samt att den mekaniska konstruktionen måste bli omfångsrik för att sensorerna skall mäta från olika punkter. Ytterligare utmaningar är hur membranet skall hållas rent och inte påverkas under produktens livscykel.

Mekanisk givare En mekanisk givare kortsluter eller särkopplar två poler när den aktiveras. Givaren kan ligga an mot en del på vapnet som rör sig vid skottavgång. På så sätt indikeras varje skott när polerna till givaren bryts. Givaren skulle till exempel kunna detektera slutstycket vid normalposition eller avtryckaren. Nackdelen är att varje handeldvapentyp behöver en unik mekanisk lösning för integreringen av en KAR. Det kan också innebära att att vapnet måste bearbetas mekaniskt för att givaren skall ligga an mot rätt vapendel. Risken för falskdetektion när mekanismen rör sig utan att skott avfyras är också överhängande.

Ljussensor En fotodiod kan användas för att detektera olika sorters ljus. När ljus kommer fram till fotodioden skapas en spänning. Med filter och linser kan fotodioden anpassas till applikationen. En ljus-sensor monterad i närheten av pipans mynning kan detektera den mynningsflamma som uppträder vid avfyrning. Nackdelen är att sensorn snabbt kommer att bli täckt med det stoft från avfyrningens kemiska omvandling och regelbundet måste rengöras för att sensorns funktion inte skall förhindras. Ett annat hinder är att användarens montering av sensorn kan påverkar mätresultet.

Accelerometer En accelerometer genererar en spänning som beror av acceleratio- nen som den utsätt för. Oftast används halva matningspänningen till accelerometern för att indikera 0g. Utspänningen varierar linjärt med accelerationen. Accelerometer kan användas för att detektera den accelerationen som uppkommer vid avfyrning.

Men med en sådan sensor måste en metod utvecklas för att förhindra falska positi- va utslag som kan uppkomma på grund av slag eller eller rörelse på vapnet som ej uppkommit som följd av rekyl.

Slutsats Valet av sensor blir accelerometer. En KAR med accelerometer kan mon- teras utan att inkräkta på vapnets mekaniska integritet och saknar många av de

(19)

2.3. VAPNETS DYNAMIK

nackdelar som de andra sensorer har, så som falsk detektering, skötsel eller om- fångsrik mekanisk konstruktion.

2.3 Vapnets dynamik

Rekylen beskrivs i [4] som den reaktiva kraft riktat mot skytten när vapnet avfyras.

Den reaktiva kraften är en konsekvens av den massa som lämnar vapnet i form av kula och krutgaser. Rekylen kan mätas i vapnets kraft [N] mot bakomvarande objekt, förflyttning [m], hastighet [m/s] eller acceleration [m/s2]. Den kraft som vapnet utövar på skytten kan mätas för att kvantifiera rekyl, vilket har genomförts i flera tidigare arbeten[5][6][4].

Den totala energin i rekylen, rekylenergi [J] (förkortat RE), kan teoretiskt defi- nieras från ekvationen för kinematisk energi:

KE= 1/2mv2 (2.1)

Applicerad på vapenrekyl:

RE= 1/2mvv2v (2.2)

Där mv är vapnets massa och vv är vapnets högsta hastighet efter att kulan har lämnat pipan. Vapnets rörelsemängd ger att:

mvvv = mkvk+ mgvg (2.3) vv = mkvk+ mgvg

mv (2.4)

där:

mk = kulans massa [kg].

vk = kulans hastighet, direkt efter den lämat pipans mynning [m/s].

mg = krutmassa [kg].

vg = krutgasers hastighet [m/s].

Sätts ekvation 2.4 in i ekvation 2.1 får vi följande:

RE= 1/2mv(mkvk+ mgvg)2

m2v (2.5)

RE= (mkvk+ mgvg)2

2mv (2.6)

där vg antas vara 1.75vk [5]

RE= ((mk+ 1.75mg)vk)2

2mv (2.7)

För att exempelvis beräkna RE för ammuntionstyp .38 special av märket Fiocci (modell nummer: F I710396) kan följande värden användas:

(20)

mk = 0.01024 [kg], vk = 275 [m/s], mg = 0.0032 [kg],

mv = 2 [kg] (Approximerad vapenvikt),

RE= ((0.01024 + 1.75 · 0.0032) · 275)2

2 · 2 (2.8)

Vilket ger:

RE= 4.74J (2.9)

I [7] specificeras RE för andra vapentyper (konverterat från [ft − lb] till [J], där 1[ft − lb] = 1.3558[J]):

Mauser 7.92x57mm RE = 12.88 [J]

M16A2 (AR-15) 5.56x45mm RE = 2.25 [J]

Springfield gevär 30-06 RE = 10.45 [J]

RE ger dock lite inblick i den acceleration som uppträder med rekylen. Acceleratio- nen är en funktion av tiden och varierar under förloppet. Med samma ekvation för kinetisk energi kan relation till accelerationen härledas:

RE= 1/2mvv2v (2.10)

Och med integralen av accelerationen enligt följande där av är vapnets acceleration och Favf yrning den kraft som vapnet påverkas på grund av skottets av gång:

Favf yrning = av· mv (2.11)

˙vv = av (2.12)

vv=Z tn

t0

avdt (2.13)

Vilket ger:

RE = mv(Rtt0navdt)2

2 (2.14)

För att förstå det accelerationsmönster som uppträder är en kinematisk modellering av handeldvapent till nytta. Det har tidigare genomförts i [8] där hänsyn tas till skyttens del i en människa-vapen-modell. Då utgångspunkten är att många olika handledvapen skall vara mål för algoritmen, har två typer av modeller identifierats som kan representera många av de vapentyper som existerar.

(21)

2.3. VAPNETS DYNAMIK

Användare, ma

ky dy

mv dext

kext kx

dx

Favf yrning

Figur 2.1. Kinematisk människa-vapen-modell, låst mekanism

Låst mekanism En låst mekanism innebär att användaren manuellt låser fast patronen i pipans patronläge. Därför måste användaren också öppna mekanismen efter varje avfyrning för att ladda om vapnet. Det medför att inga rörliga delar med- verkar till det kinematiska förloppet vid en rekyl. Till dessa varianter av vapen hör reptergevär, revolvrar och hagelgevär av bocktyp. Modellen visas i figur 2.1. Enligt föregående resonemang så spelar mekanismen ingen roll i accelerationsförloppet för ett vapen med låst mekanism.

Automatisk mekanism Ett handeldvapen med en automatisk mekanism är kon- struerad för att strax efter drivmedlets antändning föra ut hylsan ur patronläget och sedan föra in en ny patron. De finns av flera varianter, men kan i stort sepa- reras i två typer: gasomladdade och rekylomladdade. Gasomladdade vapen har en låsningsmekanism som öppnas med tryck från krutgaserna i pipan. Gaserna leds tillbaka från pipan och aktuerar mekanismen som låser upp slutstycket. Gastrycket medverkar sedan till att föra tillbaka mekanismen och ladda om vapnet. Det re- kylomladdade vapnet fungerar genom att gaserna verkar direkt mot slutstycket och trycker ut hylsan ur patronläget. Kraften är tillräcklig för att föra tillbaka meka- nismen och genomföra omladdningen. I båda varianterna finns en fjäder för att föra tillbaka mekanismen till utgångläge. Gasomladdade mekanismer hittas i huvudsak i semiautomatisk gevär medan rekylomladdade mekanismer i huvudsak hittas i pi- stoler och k-pistar. Den kinematiska modellen visas i figur 2.2.

Det finns flera geometriska aspekter som modellen inte avspeglar. Pipans placering och användargränssnitt som axelstöd och handtag avgör i vilket avseende ett rota- tionsmoment förekommer till följd av den horisontala kraften Favf yrning. Favf yrning

består av Fk samt Fg. Där Fk utgör den reaktiva kraften när kulan passerar ut ur pipan och Fg den kraft reaktiva kraften när krutgaserna passerar ut ur pipan. Vap- nets mekanism påverkar också rotationsmomentet då mekanismens massa kan vara förskjuten mot användargränsitten, och dess kraft Fanvändare. Fanvändare är kraften av skyttens kropp och armar som håller i vapnet. Skytten kan tillämpa flertalet

(22)

Användare, ma

ky dy

mv mme

dext

kext

dmek, kmek

kx

dx

Fmekanism

Favf yrning

Figur 2.2. Kinematisk människa-vapen-modell, automatisk mekanism

skjutställningar som påverkar Fanvändare. Med andra ord kan fjäder-dämpar-paret som representerar användarens extremiteter variera medan fjäder-dämpar-paret som motsvar mekanismen i vapnet är konstanta. Från [6] vet vi att kraften Favf yrning

kan varieras med ammunitionsvarianter samt att samma ammunition i olika vapen ger olika Favf yrning. Den kraft som är okänd är Fmekanism, kraften som mekanis- men utsätts för. Men det kan antas bero av Favf yrning. Beroendet därimellan är dock okänt. Känt är att mekanismens upplåsning för gas- och rekylomladdade va- pen kan vara fördröjd. Den resulterade kraften på vapnet kallas i detta arbete för rekylkraften, ~Frekyl.

Rekylkraften, ~Frekyl är en kraft-vektor i 3 dimensioner, men i detta arbete kom- mer endast 2 dimensioner att undersökas (på grund av kombinationsinstrumentets kanal begränsning). Det är krafterna i x-led (horisontellt) samt y-led (vertikalt).

Krafterna visas i figur 2.3. Vilket kommer benämnas: F xrekyl samt F yrekyl. Från F xrekyl och F yrekyl kan den uppmäta accelerationen härledas enligt ekvation 2.15 och ekvation 2.15.

Figur 2.3. Rekylvektorn uppdelad i x och y komponent

(23)

2.4. REALTIDS-MÄTNINGSKRAV

F xrekyl = ax−rekyl· mv (2.15)

F yrekyl = ay−rekyl· mv (2.16)

2.4 Realtids-mätningskrav

I denna del identifieras de krav för en mätning av rekylförloppet i realtid. Det vill säga av en µC i en färdig produkt.

Samplingsfrekvens Från tidigare publicerad rapport [2] framkommer att en re- kyls kraft mot skyttens axel pågår under 0.8ms. Kraften är endast positiv och avtar i samma hastighet som den uppkom. Från det kan det antas att frekvens på signalen är (0.8 · 10−3)−1 = 1.25kHz. Dock kommer samma rapport fram till att rekylför- loppet för en Armalite Rifle 15 (AR15) ej kan mätas tillräckligt noggrant med en accelerometer med en samplingshastighet av 3.2kHz. Från [3] kan utläsas att de snabbaste tiderna mellan början på rekylen och toppen (stigtiden) i rekylförloppet för en pistol är kortare än 0.1ms. Bandbredden för signalen kan då beräknas med hjälp av följande beräkning [9], bandbredd · stigtid ∼= 0.34. Med stigtiden insatt blir bandbredden 0.34/0.0001 = 3.4kHz. Även i [3] nämns att en samplingsfrekvens av 3.2kHz missar delar av rekylförloppet. För att kunna rekonstruera den analoga sig- nalen krävs en samplingsfrekvens av minst 4 − 6 gånger bandbredden [10]. Därmed torde en samplingsfrekvens på minst 3.4 · 4kHz = 13.6kHz vara tillräckligt för att korrekt mäta rekylförloppet i pistoler.

Minnesåtgång För att lagra ett rekylförlopp i µCn behövs allokering av RAM- minnet. RAM-minnets allokering beror av samplingsfrekven, förlopptid, och ord- längd för ett sample. I [8] kan utläsas att tryckkurvan i pipan på ett hagelgevär till följd av krutets förbränning varar under 30ms. Då all kraft inte uppkommer enbart från kulans rörelse i pipan utan också mekanismens rörelse samt krutgaser- nas förflyttning ur pipan kan förloppet vara längre för den vapentypen. Från [3]

kan det utläsas att en pistols rekylförlopp tar 50ms och i [2] framgår det att en AR15 rekylförlopp pågår under cirka 0.18s. Om varje mätning sparas med 16bi- tars (2Byte) upplösning, vid en samplingsfrekvens av 10kHz sparas 10 värden per ms. Detta ger att en mätning under 50ms kräver 10samples · 50ms · 2byte = 1000byte = 1kByte. För att mäta upp hela rekylförloppet för en AR15 krävs där- med 10samples · 180ms · 2byte = 3600byte = 3.6kByte. Då 3.6kByte kan motsvara mer än hela RAM-minnet för en 16-bitars µC måste en algortimlösning ta hänsyn till att inte hela informationen kan sparas. Om rekylförloppet skulle visa sig vara kortare behövs lagringsutrymme per rekylförloppslängd enligt tabell 2.1.

Signalbehandlingstid Två alternativ existerar för signalbehandlingsexekvering:

A. Kontinuerlig mätning och utvärdering av efter varje samplat mätvärde i realtid.

B. Uppsamling av flera samples efter att ett tröskelvärde uppmäts, för att sedan

(24)

Mättid Lagringsutrymme 5ms 100 Byte

10ms 200 Byte 20ms 400 Byte 30ms 500 Byte

Tabell 2.1. Mättid och motsvarande lagringsutrymme vid 10kHz sampling

utvärdera hela den uppsamplad signalen.

Alternativ A innebär att µCn kontinuerligt samlar in data och mellan varje sampling genomför en behandling av en definierad datamängd där det senaste vär- det stoppas in i mätserien och det äldsta försvinner; ett så kallat moving window.

Utmaningen ligger i att säkerställa att databehandlingens tidsåtgång inte krockar med den analoga till digital (förkortat ADC) konverteringen. Då den önskade has- tigheten på samplingen är 13.6kHz (se tidigare i denna sektion) måste en analys genomföras efter varje mätning på 0.076µs eller mindre. Då är ej den tid som be- hövs för att genomföra ADC-konverteringen inräknad, om det inte går att göra en ADC-konvertering parallellt med ordinarie process. Nackdelen är att µCn kommer använda mer energi och inte kan gå in i ett lågkraftsläge.

Alternativ Binnebär att µCn startar en samplings serie när ett tröskelvärde har överskridits. När ett förutbestäm antal samples har sparats genomför analysen av mätserien. Fördelen är att ADC-konverteringen inte konkurrerar om processorns tid med analys-exekveringen samt att µCn kan vara i ett lågkraftsläge tills en tröskel- värdet passerats och mätningen aktiveras. Nackdelen är att ett en slag mot vapnet kan starta en samplings serie, och om sedan analysen av denna mätserie pågår när ett skott faktiskt avgår så missas den rekylen.

Ett helautomatisk vapen av typ AK5 kan skjuta 650skott/minut[11]. Vilket ger 650/60 ≈ 11Skott/s. Vid en helautomatisk avfyrning (då mekanismen fortsätter cykla utan uppehåll mellan avfyrningarna) kan det antas att varje rekylförlopp tar 1sekund/11skott/minut ≈ 91ms. Kontinuerlig eldgivning ger lite tid för beräkning mellan rekylförloppen. Exekvering av programmet kan dock genomföras ändå, ge- nom att inte hela rekylförloppet mäts utan endast samplas partiellt. För pistoler antas det att helautomatiska varianter inte är vanligt förekommande. Därmed är det användarens kapacitet till avfyrning som måste bedömmas för att avgöra vilken tid som finns tillgängligt för databehandling mellan varje rekylförlopp. För att hitta en bra estemering av det kan resultatet från skyttetävlignar i pistol användas där deltagarna skall avfyra minst 6 skott i följd mot lika många mål på minsta möjli- ga tid. Där hade vinnaren en tid på 3.34s på en av banorna[12]. Om vi antar att tävlaren använde 6-10 skott för att skjuta klart banan betyder det att tiden mellan varje skott blir mellan: 3.34s/6skott = 0.557s och 3.34s/10skott = 0.344s. Om vi

(25)

2.5. OFFLINE-MÄTNINGSKRAV

sedan hämtar tiden för rekylförloppet för pistol från [3], vilket är 50ms, så ger det µCn mellan 344ms − 50ms = 294ms och 557ms − 50ms = 507ms att genomföra databehandlingen.

ADC-upplösning Den analoga till digitala konverteringen kan genomföras i oli- ka graders mätnoggrannhet. ADCn kan ha en upplösning på 8,10,12 eller 16-bitars noggrannhet. I denna text skall lämplig upplösning identifieras. Antaget är att ADC- mätning skall genomföras med 1% noggrannhet av max amplituden på sigalen. Från [4] kan utläsas att en AR15 kan ha en maxacceleration mellan 2000m/s22500m/s2, omvandlat till g: 203g − 254g. Det ger att 1% av maxvärdet är 254/100 = 2.54g.

Från [6] kan utläsas att maximal rekylacceleration för ett hagelgevär är 77g vilket ger en minsta upplösning på 77/100 = 0.77g. Pistolers maximal rekylacceleration saknas i litteraturen. För att bedöma lämplig ADC-mätnoggrannheten genomförs följande beräkning enligt datablad för accelerometer ADXL377[13]. I beräkningen används ADXL377 som exempel. ADXL377 levererar en spänning som varierar med 6.5mV/g[13], vilket benämns accelerometer upplösning.

Till beräkningen används följande värden:

ADCresolution= ADC-upplösning.

Vref erens = Referensspänning för ADC.

Accresolution = Accelerometerns upplösning.

ADCresolution = 210−1 = 1023 (2.17)

Vref erens= 3.3V (2.18)

Accresolution= 6.5mV/g (2.19)

VminM easured= Vref erens/ADCresolution[V ] (2.20) (2.17), (2.18), och (2.19) i (2.20) : VminM easured = 3.3/1023 = 3.22mV (2.21) AminM easured = VminM easured/Accresolution[g] (2.22) (2.19) och (2.22) ger: AminM easured= 3.22mV/(6.5mV/g) = 0.49g (2.23)

Från ekvation 2.23 härleds att 10-bitars ADC ger en upplösning av 0.47g/bit. Sam- ma ekvation med 8-bitars ADC ger en upplösning på 1.98g/bit och en 12-bitars ADC ger 0.12g/bit upplösning. En 10-bitars ADC tillfredsställer kravet på 1% upplösning av maxaccelerationen.

2.5 Offline-mätningskrav

Då en algoritm skall utvecklas är det nödvändigt att samla in mätserier för att pro- va algoritmer i dator och HIL-system. HIL-systemet beskrivs utförligt i sektion 6.1.

(26)

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 -1

-0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8

Figur 2.4. Samples av sinus signal med 10 gånger frekvensen, sinus - 2Hz, sampling 20Hz

Samplingsfrekvensen [Hz] för mätserierna skall vara tillräcklig hög så att de kan rekonstrueras. Då det saknas tydlig data som kännager rekylförloppets frekvensin- nehåll för de olika vapentyper så måste en initial insamling också kunna användas för att bedöma bandbredden av rekylförloppen. Bedömt är att referensmätningar av rekylförloppet genomförs med en så hög upplösning i tid som är möjligt. Det möjliggör senare bedömningar av mätnoggrannhet och offline-test av densamma.

Tidigare har en samplingsfrekvens av 13.6kHz (se sektion 2.4) bedömts vara det minsta godtagbara samplingsfrekvesen för en realtidsmätning. Används den insam- lade digitala signalen för att generera en analog signal för HIL-testning, krävs att referensen har samplats i högre frekvens än den mätning som µCn skall genomföra.

Detta för att kunna rekonstruera den analoga signalen korrekt. Som visas i figur 2.5 där en 2Hz sinuskurva samplas med 20Hz är en samplingsfrekvens av 10 gånger signalfrekvensen för otydlig för att återanvändas i ett HIL-system. Det ger en tydlig bild av signalen men inte tydlig nog för att användas som referens. Därför föreslås i detta arbete en mäthastighet på 30 gånger signalens frekvens. Mätningen skulle då ske i en frekvens av minst 3.6kHz · 30 = 108kHz.

(27)

Kapitel 3

Komponentval

I denna del diskuteras valet av µC samt accelerometer.

3.1 µC

Detta avsnitt diskuterar vilken µC som är lämplig för en KAR.

3.1.1 Kostnad

En 16-bitars(heltal) µC är mer kostnadseffektiv än kraftigare motsvarighet. Som exempel används produkter från Texas Instruments där två olika produkter har valts. En 16-bitars µC i deras produktsortiment är MSP430G2553IPW20R (förkor- tat MSP430) som finns tillgänglig för köp av en kostand på 1.99 ¤[14]. En av de- ras 32-bitars µC är MSP432E401YTPDTR (förkortat MSP432) kostar 13,60¤[15].

Skillnaden blir totalt 11.61¤. Det kan dock finns mer kostnadseffektiva 32-bitars µC på marknaden.

3.1.2 Energieffektivitet

En 32-bitars µC av typ MSP432 en förbrukning på 23mA[16] vid 16MHz klockfre- kvens, medan den 16-bitars µC av typ MSP430 har en förbrukning på 4mA[17] vid samma klockfrekvens. Båda µCer har ett lågenergiläge som kan aktiveras. Totalför- brukningen i detta läge beror på hur µCn är konfigurerade men som exempel har MSP430 en minsta förbrukning på 0.5µA[17] medan motsvarande lägsta förbruk- ning för MSP432 är 2.42mA[16]. För att exemplifiera energiförbrukningen kan det antas att strömförbrukningen till µCn står för 100% av den totala förbrukningen, Samt att µCn är i aktivt läge cirka 2 timmar per dygn. Det ger en total energi användning för MSP430 per dygn på: 22h·0.5µA+2h·4mA ≈ 8mAh/dygn. Medan dygnsförbrukningen för MSP432 blir 22h·2.42mA+2h·23mA ≈ 99mAh/dygn. An- vänds en litiumjoncell av typ LIR2450, med total energi 120mAh [18] och använder 80% av energiinnehållet kommer en KAR som drivs av MSP430 kunna användas i 0.8·120mAh/8mAh/dygn ≈ 12dygn medan en KAR som drivs av MSP432 kommer

(28)

kunna användas i 0.8·120mAh/99mAh/dygn ≈ 1dygn. Diskutabelt är µCns bidrag till energibudgeten. Troligtvis kan det finnas andra komponenter som förbrukar mer energi, som exempelvis en display för HMI.

3.1.3 ADC

En optimalt dimensionerad ADC är en förutsättning för att µCn skall kunna an- vändas i en KAR. Från databladen kan utläsas att att MSP430 har en ADC med upplösning på 10 bitar samt en maximal samplingsfrekvens av 200kHz[17]. MSP432 har i sin tur en ADC med 12 bitars upplösning och maximal samplingsfrekvens på 2MHz[16]. Som tidigare diskuterat är en ADC med 10 bitars upplösning tillräcklig för beräkningar i µC. En samplingsfrekvens över 10kHz är inte nödvändig för be- räkningar i µC enligt tidigare diskussion men för att samla data till offline-utredning kan det lämpa sig väl. Dock är frågan hur den datan skall samlas då minnet snabbt kommer att ta slut.

3.1.4 Övriga egenskaper

MSP432 har en överväldigande flora av nätverksegenskaper i form av CAN- och ethernetkommunikation. Det är lämpligt för att snabbt och stabilt föra över mät- data till en dator, för att inte få slut på RAM-minne. MSP432 har en kapacitet på 120MIPS vid full frekvens jämfört med MSP320s kapacitet på 16MIPS. MSP432 har också ett mycket större minne, med både SRAM(256kByte), EEPROM(6kByte) och FLASH (1024kByte) [16]. MSP430 har endast 512Byte RAM och 16kByte FLASH[17]. MSP432 har också ett bra ramverk att utveckla i då det är en ARM-µC, med många bra utvecklingsverktyg tillgängliga.

3.1.5 Diskussion

MSP432 är en välutrustad µC som kan användas för att driva en KAR. Dock är den ej optimerad för den typen av produkt. Med nätverksmöjligheten och relativt höga energiförbrukningen är den mer lämpad för inbyggda system med större energilager och flera funktioner, exempelvis i ett fordon. Då det finns gott om plats att rym- ma ett realtids-operativsystem och annan basmjukvara. MSP430 är också den väl lämpad för att driva en KAR, den har begränsad minnesarea men det kan kringgås med rätt typ av algoritm för acclerationsanalysen. Då MSP430 har en mycket lägre energiförbrukning och samtidigt ADC-prestandard som är mer än tillräcklig är den det optimala valet för en KAR av dessa två µCer.

3.2 Accelerometer

Fyra parametrar är viktiga för valet av accelerometer: 1. Vilken maxacceleration den tål. 2. Mätbara acceleration. 3. Bandbred på mätningen. 4. Inbyggda filter.

(29)

3.2. ACCELEROMETER

ADXL377 ADXL193 enhet

Max chock 10000 4000 g

Mät omfång ±200 ±250 g

Filter 0.5 − 1300 400 Hz

Strömförbrukning 0.3 1.5 mA

Antal axlar 3 1 st

Driftspänning 1.8 − 3.6 4.75 − 5.25 V Arbetstemperatur −40 − +85 −40 − +125 C

Känslighet 6.5 8 mV /g

Noll g Spänning 1.5 2.5 V

Brus 2.7 5 mg/

Hz

Tabell 3.1. Accelerometer databladsjämförelse[13][19]

,

Från dessa kriterier valdes två accelerometrar för vidare provning. De valda acce- lerometrarna är ADXL193[19] samt ADXL377[13] från Analog Devices.

3.2.1 Hårdvaru-specifikation

Relevanta egenskaper har summerats i tabell 3.1. Där framgår att ADXL193 kan mäta en större acceleration jämfört med ADXL377. Men det är ADXL193 enda fördel. Driftspänningen mellan 1.8 − 3.3V för ADXL377 är lämplig för produkter som drivs med en litiumjoncell. Båda accelerometrarna ger en ratiometriska utsignal och passar att drivas från ett batteri som varierar i spänning över tid. ADCn kan då använda batterispänningen som referens utan att omberäkning till följd av batteriets spänningsnivå behöver genomföras. Temperatur egenskaperna är likvärdiga, trots att ADXL193 klara högre temperatur så kommer den möjligheten inte utnyttjas.

Bandbredden kan konfigureras för ADXL377 men är bestämd för ADXL193. Från databladet[19] för ADXL193 framkommer det att det filter som finns inbyggt inte skall saturera ut-signalen för högfrekventa accelerationer.

3.2.2 Prov

En serie tester genomfördes för att utvärdera accelerometerna. Testerna genomför- des genom att montera accelerometrarna på en och samma montage och simultant mäta accelerometernas utsignaler i x-led. Därefter jämfördes resultaten i MATLAB- grafer. Där omvandlades storheterna från spänning [V ] till acceleration [g]. Han- deldvapen av modellerna Chiappa Rhino i kaliber .357 samt CZ Shadow i kaliber 9x19 användes vid experimenten. Bandbredden för ADXL377 valdes till maximala 1300Hz.

(30)

Tid [s] ×10-3

-4 -2 0 2 4 6 8

Acceleration [g]

-150 -100 -50 0 50 100 150

ADXL193 ADXL377

Figur 3.1. ADXL193 och ADXL377 x-axel mätning på Chiappa Rhino i 1.12Mhz

3.2.3 Diskussion

Resultatet visade att de båda accelerometern gav liknande signaler både i dynamik och amplitud, men att ADXL193:s Butterworthfilter ger ett sämre frekvenssvar i mätningarna, på motsvarande 0.1 − 0.3ms. Vidare noterades att ADXL377 visar lägre maxamplitud i flertalet av mätningarna. Den maximala skillnaden uppgick till 25% av maxamplituden. Från graferna framgår det tydligt att ADXL193 är filtrerat då acceleration är jämnare än motsvarande acceleration för ADXL377. I figur 3.1 visas ett prov som är representativt för den totala resultatet. Resterande fyra prov visas i appendix A. Efter genomförda experiment användes ADXL377 vid samtliga tester. Beslutet grundade sig i att ADXL377 antogs ge ett mindre filtrerat mätvärde med bättre frekvenssvar. Samt att det gav möjlighet att samla data från båda x-led och y-led parallellt utan att använda två accelerometrar (ADXL377 är en treaxlig accelerometer, dock så begränsas mätningen av att ADs oscilloskop endast har 2 kanaler). Dessutom är ADXL377 behändigt då den kan drivas direkt från en litiumjoncell, medan ADXL193 kräver en omvandlad spänning eller flera celler.

(31)

Kapitel 4

Verifierings- och utvecklingsmetodik

I denna del beskrivs de två alternativ för att utveckla och verifiera algoritmen för en KAR.

4.1 Verifieringsmetod

För att kunna utveckla en algoritm, mjukvaru samt arkitektur för en KAR krävs en utvecklings och verifieringsmetod. Två metoder kommer nedan att beskrivas. Dessa metoder kommer sedan att utvärderas och jämföras med varandra.

4.2 Alternativ 1, enskilt målsystem

Alternativ 1 innebär att endast målsystemet för KAR, det vill säga en µC kommer att användas. µC och dess tillhörande mjukvaruverktyg kommer att vara det enda verktyg som får användas för utveckling och verifiering.

4.3 Alternativ 2, extern utrustning

Alternativ 2 innebär att externt mätinstrument användas som komplement till mål- systemet och dess mjukvaruverktyg. Mätinstrumentet är ett kombinationsinstru- ment som inkluderar flera funktioner. Det är av modell Analog Discovery (förkortat AD) som tillverkas av Digilent. AD är ett bra val då den har två kanalers ADC som kan starta data insamling på trigger i upp till 100Msamples/s[20] i 14-bitars upplösning. Tillika har den två kanaler arbiträr-funktionsgenerator med vilket de samplade signalerna kan reproduceras i samma upplösning som de har samlats in.

Det möjliggör för ett komplett HIL-system för att testa µC algoritmer mot upp- mäta spänningar från accelerometern. AD har också flera logiska ingångar som kan användas för att kontrollera I/Os på målsystemet. Enheten visas i figur 4.1.

(32)

Figur 4.1. Digilents Analog Discovery

4.4 Metodutvärdering

Metoderna skall användas för att genomföra kritiska moment i utvecklingen av en KAR. Vilket är följande uppgifter:

Datainsamling Rekylaccelerationen på vapen mäts.

HIL-prov, algoritm Prova algoritm för detektion på µC.

HIL-prov, exekvering Verifiering programmets exekvering i µC.

Dock kommer ett avsteg att göras. Alternativ 1s datainsamling genomförs inte mot vapen. Utan mot alternativ 2s uppmätta rekyldata. Ytterligera en uppgift ingår i utveckling. Denna är signalanalys i MATLAB. Vilket är oberoende av utvecklings- metodik alternativen.

(33)

Kapitel 5

Datainsamling

I denna del beskrivs datainsamlingen med AD för arbetet.

5.1 Datainsamlingsmetodik

För att utforska den acceleration som rekylen ger upphov till konstrueras ett mon- tage för accelerometrarna, kallad accelerometerenhet. Montaget består av en me- tallplatta i stål med en ungefärlig tjocklek av 2mm. Plattan fästs med skruv på en Picatinnyskenaadapter. Picatinnyskena är ett standardiserat mekaniskt gräns- snitt[21] som finns på många vapentyper. Picatinnyskenaadpater är därför lämpligt för montage av en accelerometerenhet tillika KAR. På metallplattan fästs sedan ac- celerometrar med epoxy, som visas i figur 5.1. Accelerometerenheten kopplas till AD med kablage. Kablaget leder ut-signalen från accelerometern samt kraftförsörjning till accelerometern. AD kopplas med USB till en dator som med ADs medföljande mjukvara WaveForms spelar in signalen. Schematisk bild visas i figur 5.2. Mätsy- stemet i sin helhet visas i figur 5.3. För att samla in mätserier av accelerationen vid rekyl monteras accelerometerenheten på vapnet. Vid rekyl triggas en uppsamling av mätdata i AD. WaveForms möjliggör för konfiguration av trigger-nivå, pretrigger sampling, och längd på uppsamligen. Mätserien sparas sedan i csv-format. Accelero- meterenhetens montering på vapen av typ PTR-91 (Försvarsmaktens namn: AK4) visas i figur 5.4.

5.2 Provade vapen

Från tidigare sektion 2.3 har två typer av mekanismer som påverkar rekylförloppet identifierats. Därav fästes vikt vid att insamla mätdata från båda dessa varianter på tvåhandsvapen (gevär och automatkarbin) och enhandsvapen (pistol och revolver).

Vapen med picatinnyskena valdes primärt men också gevär med blottad pipa an- vändes genom att fästa en picatinnyskena på pipan med adapter. Adaptern visas i figur 5.5. Vapen för olika kalibrar valdes för att få ett bredare urval. Det som saknas i provmängden är två vapen av samma typ men i olika kalibrar samt hagelgevär

(34)

Figur 5.1. Accelerometerenheten.

Figur 5.2. Schematiskbild över mätsystemet.

Namn Vapentyp Mekanismtyp Accelerometer Kaliber

HK PTR-91 Automatkarbin Automatisk ADXL193 7.62x51mm

Carl Gustaf 1900 Gevär Låst ADXL377 6.5x55mm

Ruger 10/22 Gevär Automatisk ADXL377 .22lr

CZ Shadow Pistol Automatisk ADXL377/193 9x19mm

Chiappa Rhino 60DS Revolver Låst ADXL377/193 .38spl/.357

Glock 19 Pistol Automatisk ADXL377 9x19mm

Tabell 5.1. Provade vapen

som helt har utelämnats ur arbetet.

Totalt provades sex vapen. De vapen som användes för provning visas i tabell 5.1.

Accelerometerenheten monterades i vissa fall rättvänd och i andra fall upp och ner, men då har det identifierats och korrigerats i efterbehandlingen av datat. Minst fem mätserier har samplats på varje vapentyp och i vissa fall fler. Tillika har mätningar

(35)

5.2. PROVADE VAPEN

Figur 5.3. Mätsystemet i sin helhet.

Figur 5.4. Accelerometerenhet monterad på HK PTR-91, (Försvarsmaktens benäm- ning: AK4).

(36)

Figur 5.5. Picatinnyskena för pipmontage.

Tid [s]

0 0.005 0.01 0.015 0.02 0.025 0.03 0.035 0.04 0.045 0.05

Acceleration [g]

-200 -150 -100 -50 0 50 100 150

200 Carl Gustaf 1900 - 6.5x55

x-axel y-axel

Figur 5.6. Accelerationsmätning på gevär av typ Carl Gustaf 1900

genomförts på vapnen när rekyl ej har förekommit. De mätningarna har genomförts när vapnet har laddats med magasin, tryckt på avtryckaren utan ammunition samt utsatts för yttre påverkan i form av slag eller fall. Även mätningar på en gevärsatrapp i form av en 5kg vikt (visas i figur 5.7 med dämpat underlag har genomförts. En av mätningarna visas i figur 5.6. Vidare diskuteras det insamlade mätdata i sektion 7.2.

(37)

5.2. PROVADE VAPEN

Figur 5.7. Gevärsatrapp, Massa med dämpning för provning av mätsystem

(38)
(39)

Kapitel 6

Validering av verifieringsmetodik

I denna del beskrivs och diskuteras hur de två metoderna används för utveckling och verifiering.

6.1 HIL-system

HIL står för "hardware in the loop". Ett HIL-system skall möjliggöra en simulerad omvärld för programmet. På så sätt kan utvecklaren genomföra snabbare utveck- lingsiterationer och verifiera undersöka programmets funktion.

6.1.1 Alternativ 1

HIL-systemet för alternativ 1 (se sektion 4.2) består av en dator samt målsystem (µC). Men också målsystemets tillhörande utvecklingsmiljö samt en enhet för kom- munikation mellan datorn och µC. Kommunikationsenheten konverterar mellan kommunikationsprotokollet USART och USB, och är inbyggd i utvecklingskortet till µCn. I HIL-systemet ingår också en accelerometer som är kopplad till ADC- ingången på µCn. För målsystem av typ MSP430 används tillhörande mjukvaru- verktyg CodeComposerStudio v.8 (sedermera kallad CCStudio). Det möjliggör att på målsystemet skriva över variabler samt läsa ut densamma. Målsystemet måste kopplas till vapnet för att kunna mäta den verkliga rekylen. Men i detta arbete har det valts bort och istället kopplats mot AD. För att utveckla detektions algoritm kan provningen förläggas på en skjutbana eller så kan värden från referensmätnignar skrivas direkt till minnet i µCn.

6.1.2 Alternativ 2

HIL-systemet för alternativ 2 (se sektion 4.3) består av ett kombinationsinstru- ment av typ Analog Discovery som är kopplad till datorn med USB. AD styrs med tillhörande mjukvara WaveForms från datorn. AD är kopplat till målsystemets ADC-ingång och kan på den ingången skicka ut en spänning med digital till analog (förkortad DA) omvandlare. AD kan på så sätt simulera accelerometer. AD logiska

(40)

ingångar kopplas till en eller flera I/O-utgångar på målsystemet, på så sätt kan I/O utgången användas för att tillkännage var i programmet målsystemet befinner sig under körning. Den totala I/O listan för AD hittas under appendix B

6.2 Verifiering, µC mätresultat

I denna del beskrivs de två alternativens metoder för att verifiera att µC rekylmät- ning är korrekt.

6.2.1 Alternativ 1

Initialt användes ett målsystem av typ Atmega16. µCn kopplades mot dator och till accelerometer. I en enkel while-loop utan exit loggades ADCns värde och efter varje värde skickades resultatet till datorn via USART. Omgående upptäcktes att denna typ av mätning inte kunde detektera acceleration i den tidsupplösning som krävdes för att fånga ett hammar slag på en 5kg massa (figur 5.7). Den bakomlig- gande orsaken var att kommunikationen med datorn över USART tog upp tiden.

Då konstruerades ett lagrings system av typ First in first out"(sedemera förkortat FIFO) i programmet. I FIFOn lagrades varje ADC värde kontinuerlig där värdena skrivs över med nya. När ADCn samplat ett värde som överskrider en förutbestämd accelerations nivå (denna nivå kallas hädanefter för tröskelvärde) så sparades yt- terligare ett antal värden och sedan skickades hela innehållet i FIFOn till datorn.

På så sätt kunde ett bestämt antal värden innan och efter tröskelvärdet lagras. En sådan mätning finns i figur 6.1. Flera test genomfördes för att utreda maxhastighet på samplingsfrekvensen. Metoden var osäker i hur lång tid det tog mellan varje mät- ning och att det fanns lite tid kvar för resterande kodexekvering. Därför övergavs Atmega16 som målsystem. Ett annat lämpligt målsystem identifierades, vilket var MSP430 (se sektion 3.1).

För MSP430 konstruerades en mjukvara som vid ett uppmätt ADC-tröskelvärde lagrade de följande ADC-värdena. Varje mätpunkt lagrades med 16bitars (2Byte) upplösning. Då MSP430 har ett RAM-minne på 512Byte kan maximalt 512/2 = 256samples lagras i följd. Maxvärdet för 2Byte är dock 216 − 1 = 65535, då ADCn endast kan leverar ett mätning på 10 bitar 210−1 = 1023 är det lockande att använda 1byte per mätpunkt. Det medför att två bitars upplösning går förlorad och mätningen kommer endast att ske med 1.98g/bit. Detta ger två alternativ för mätningen där enkel-bytes lagringen ger möjlighet till att spara längre förlopp.

Det är ej troligt att 512Byte minne kommer att vara tillgängligt under normal körning av programmet. Därför görs ett antagande att 62,5% (eller 320Byte) av RAM kommer att vara tillgängligt för lagring av ADC mätpunkter. Tillika kom- mer lagringen att genomföras med en sekvens åt gånger. Sekvensens längd blir med 320Byte av RAM-minnet allokerat begränsad till 320/2 = 160samples. Vil- ket ger med en samplings hastighet på 15kHz ger möjlighet att fånga 20·101603Hz =

(41)

6.2. VERIFIERING, µC MÄTRESULTAT

Samples

0 1 2 3 4 5 6

acceleration [g]

-0.05 0 0.05 0.1 0.15 0.2 0.25

Hammer Test Acceleration

1 MHz 500 kHz

Figur 6.1. Test av Atmega16 med slag mot 5 kg vikt med hammare

Minne\Samplingsfrekvens 10kHz 20kHz 30kHz 50kHz 512Byte 25.6ms 12.8ms 8.5ms 5.12ms

400Byte 20ms 10ms 6.7ms 4ms

300Byte 15ms 7.5ms 5ms 3ms

200Byte 10ms 5ms 3.3ms 2ms

Tabell 6.1. Möjlig längsta tid för mätning, beroende av minnesallokering samt samp- lingsfrekvens, då 1 sample lagras i 2Byte

0.0107sekunder = 10.7ms långt förlopp. I tabell 6.1 visas fler alternativ för minnes allokering och samplingsfrekvens. Som visas i tabellen är det inga långa förlopp som kan sparas med en större precision. Med avseende på rekylförloppets längd som be- skrivits i [6], där det uppgår till 10 − 20ms så kan det vara svårt att fånga hela accelerationssignaturen. Från [2] så framgår det att förloppet kan vara så långt som 300ms för ett vapen av typ AR15 i kaliber 5.56. Vilket medför att inte hela signalen kan mätas eller att den mäts med en så låg samplingsfrekvens att överhängande risk för aliasing finns.

Programmet som genomför mätningen konstruerades enligt följande: En timer (en räknare vars värde ökar med varje klockcykel), som möjliggör korrekt samplings tidpunkt startar en interupt. Interupten startar ADC konverteringen och går se-

(42)

0 1 2 3 0

1 2 3 4

tid [ms]

Volt[V]

PWM

Figur 6.2. Exempel på ADC-sampling av PWM i blått, med mätpunkter i rött

dan tillbaka till huvudspåret. När ADC-mätningen är klar startas ännu en in- terupt och värdet undersöks. Vid ett tröskelvärde startas en lagring av värden tills minnet är fullt. När hela mätningen är klar kan mätvärdena utläsas med CCStu- dio. Mätningen sker i en från databladet teoretisk uträknad samplingsfrekvens av 10kHz. För att testa programmet användes en massa (figur 5.7) som accelerome- tern monterats på. Massan var placerats på en bädd av skumplast för att agera dämpning. Mot massan anbringades en hammare med kraftigt slag. Programmet genomförde då mätningen och resultatet kunde läsas ut och sparas med CCStudio.

För att undersöka om den teoretiska samplingsfrekvensen av 10kHz efterlevs kon- struerades en mjukvara för målsystemet som drev en pulsbreddsmodulerings-signal (sedermera förkortat PWM från engelskans puls width modulation") mellan mål- spänningen 3.3V och jord 0V . En PWM kan drivas utav MSP430 utan att CPUn används och stör därför inte exekvering av ADC-mätning. Om PWM-funktionen är tillförlitlig kan antalet samples vid fyrkantsvågens max och min värde använ- das för att verifiera samplingsfrekvensen. Programmet konstruerades med en PWM frekvens av 1kHz med 50% pulskvot. Om teorin är korrekt så skall ADCn mäta 5 värden vid 3.3V och lika många vid 0V . Exempel på det teoretiska resultatet visas i figur 6.2. Programmet kördes och de resulterade värdena exporteras ur målsystemet med CCStudio. Värdena importerades till MATLAB för att undersökas. I figur 6.3 visas grafen från MATLAB. I figuren är värden normerade mot 511. Därför mot- svarar 3.3V värdet 511 och 0V värdet −512. Resultatet visade att samplingen skett med den frekvensen ADC-mätningen varit inställd på.

Med programmets samplingsfrekvens verifierad kunde test genomföras för att samp- la rekyl-acceleration. AD kopplades till MSP430 i accelerometerns ställe. Detta istället för att accelerometern skulle ha fästs på ett vapen och skott avfyrats. DA- omvandlaren återgav en tidigare uppmätt spänning-serie från rekyl på vapen av typ Glock19. Samma program som tidigare användes, där ADC samplade i 10kHz och efter att ett tröskelvärde uppnåtts sparades 100 värden. Mätserien exporterades

(43)

6.2. VERIFIERING, µC MÄTRESULTAT

Samples

0 10 20 30 40 50 60 70 80 90 100

nAdc

-600 -400 -200 0 200 400

600 Verifering av ADC med PWM

Figur 6.3. Sampling av 1kHz PWM, med MSP430. ADC-sampling i 10kHz. PWM i blått och ADC-samples som röda ringar

Samples

0 10 20 30 40 50 60 70 80 90 100

nAdc

-400 -300 -200 -100 0 100 200 300

400 ADC sampling av referens signal

Figur 6.4. Uppmätt rekylacceleration med MSP430. Samples som röda ringar och interpolering i blått

från målsystemet med CCStudio. Mätserien importerades till MATLAB för att un- dersökas. Plot från MATLAB visas i figur 6.4. Värden i figuren är normerade mot 511 som motsvarar 0g.

Då alternativ 1 inte skall använda AD saknas här möjligheten att undersöka om den uppmätta seriens värden stämmer överens med referensspänningen från DA-

References

Related documents

Svar från Hagfors kommun till Socialdepartementet beträffande Socialstyrelsens författningsförslag Att göra anmälningar som gäller barn sökbara.

I rapporten presenterar Socialstyrelsen författningsförslag som innebär att uppgifter om anmälan som gäller barn som inte leder till utredning samt uppgifter om bedömning av

när någon som fyllt 18 år, men inte 21 år, aktualiseras hos socialnämnden, kan den längre gallringsfristen ge större möjlighet att fortfarande finna orosanmälningar avseende

Genomgången av de förslag som läggs fram i promemorian och de överväg- anden som görs där har skett med de utgångspunkter som Justitiekanslern, utifrån sitt uppdrag, främst har

Beslut i detta ärende har fattats av generaldirektör Lena Ag efter föredragning av avdelningschef Peter Vikström.

Å ena sidan ska socialtjänsten, vid en förhandsbedömning efter en orosanmälan eller en utredning enligt 11 Kap 1 § SoL till barns skydd, enligt Socialstyrelsens rekommendationer

Att socialtjänsten har all information som är möjlig om oro för barnet kan vara helt avgörande för att ett barn ska kunna få rätt hjälp i rätt tid.. Alltför många barn vi

författningsändringarna, som är nödvändiga att genomföra, för att hålla anmälningar som inte leder till utredning, avseende barn upp till och med 17 år, sökbara. Det är