• No results found

Positionering med hjälp av Accesspunkter i ett slutet WiFi-nätverk

N/A
N/A
Protected

Academic year: 2021

Share "Positionering med hjälp av Accesspunkter i ett slutet WiFi-nätverk"

Copied!
36
0
0

Loading.... (view fulltext now)

Full text

(1)

Positionering med hjälp av Accesspunkter i ett slutet WiFi-nätverk

En delstudie för Sjöfartshögskolan i Kalmar

Författare: Alexander Hörsne Malmborg, John

Sjöingenjörsprogrammet

Självständigt arbete

(2)

Linnéuniversitetet

Kalmar Sjöfartshögskola

Utbildningsprogram: Sjöingenjörsprogrammet Arbetets omfattning: Examensarbete 15hp

Titel: Positionering med hjälp av accesspunkter i ett slutet WiFi-nätverk

Författare: Alexander Hörsne Malmborg, John Brolin Handledare: Tobias Hedin

Examinator: Joakim Heimdahl

Abstrakt

Artificiell intelligens syftar på en maskins förmåga att fatta egna beslut. Maskinen skall sedan utföra en handling baserat på beslutet, allt detta utan människans inblandning.

Positionsnoggrannheten för fartyg är något som på senare tid ställs allt högre krav på, inte minst i offshoreindustrin. Med hjälp av ett Dynamic Positioning system kan högre noggrannhet uppnås.

I detta projekt undersöks vilket system som är lämpligast att använda för ett positioneringssystem för en modell av skolfartyget Calmare Nyckel. Projektet utvärderar positionering med hjälp av fyra accesspunkter jämnt fördelat över två nätverk. Projektet belyser en rad olika tekniker baserade på datasignaler som sedan moduleras av en hårdvaruenhet. Då projektet är av så kallat low-cost resulterade valet i en ESP32 och WiFi som teknik.

Laborationer påvisade ett väl fungerande system. Uppmätt noggrannhet var dock inte tillräcklig för att använda rakt av i det fortsatta projektet.

Nyckelord

Positionering, programmering, low-cost, WiFi, ESP32, Artificiell intelligens

(3)

Linnaeus University

Kalmar Maritime Academy

Education Program: Marine Engineering Scope of the Project: Bachelor thesis, 15hp

Title: Positioning using WiFi access points within a closed wireless network

Author: Alexander Hörsne Malmborg, John Brolin Supervisor: Tobias Hedin

Examiner: Joakim Heimdahl

Abstract

Artificial intelligence is a machines ability to make its own decisions. The machine is then supposed to take action based on the decision, this without the involvement of a human.

The positional accuracy for ships is something that has become increasingly more demanding, especially in the offshore industry. With the aid of a Dynamic positioning system, a great accuracy can be achieved.

This undertaking investigates which system that will be most suited to use for a positioning system aimed for a model of the ship, Calmare Nyckel. The project evaluates positioning with the aid of four access points evenly distributed over two networks. The project illustrates a number of different techniques based on data signals, which are then modulated by a hardware unit. Because of the low-cost aim, this resulted in the usage of ESP32 and WiFi as the systems of choice.

Laborations in the undertaking proved a well working system. Measured accuracy, however, was not sufficient to use directly in the continued project.

Keywords

Positioning, programming, low-cost, WiFi, ESP32, Artificial intelligence

(4)

Tack

Ett väldigt stort tack vill vi rikta till vår handledare Tobias Hedin för hans hjälp med programmering, hans stöd, kvällar och helger samt uppmuntrande ord. Vi vill även tacka Anders Nordborg för hjälp med matematiska beräkningar.

(5)

Definitioner och förkortningar

Accesspunkt – Används för att utöka ett nätverks räckvidd AI – Artificiell Intelligens

APL – Arduino Programming Language

Arduino IDE – Arduino integrated development environment

Bandbredd - Skillnaden mellan den övre och den lägre avbrytande frekvensen Beacon – Engelska för sändare

Bluetooth – Trådlös dataöverföringsmetod

Bärsignal – Stabilisering av datasignal när den färdas i luften dBm – En elektrisk signalstyrka

EDR – Enhanced data rate

Gateway – En nätverksnod som kopplar ihop GPIO – General purpose input output

GPS – Global positioning system HS – High Speed

IP adress – Internet protocol, en adress om används på Internet IPS – Indoor Positioning System

Kanalbredd – Avstånd mellan kanaler i ett nätverk LAT – Latitud, breddgrad i Nord/Syd led

LE – Low Energy

LONG – Longitud, längdgrad I Ost/Väst led NFC – Near field communication

Pairing – Engelska för parläge, används för att ansluta enheter till varandra Pulsband – Används för att mäta pulsen hos en person

Radar – Utrustning och teknik som mäter avstånd med hjälp av radiovågor Radiospektrum – Indelas i flera frekvensområden eller frekvensband RFID - Radio-frequency identification

Router – Nätverksanslutning som används till att ansluta flera datornätverk RSSI - Received Signal Strength

RX – Receive diod på Arduino utvecklingskort SMS – Short message service

(6)

Triggar – Startsignal för en process

TX – Transmit diod på Arduino utvecklingskort UWB – Ultra wideband

Våglängd – Avståndet mellan repeterande delar i ett vågmönster WiFi – Trådlös överföringsteknik

WLAN – Wireless local area network

(7)

Innehållsförteckning

1 Inledning ... 1

1.1 Bakgrund ... 1

1.2 Uppdragsstudie ... 1

1.3 Syfte ... 2

1.4 Frågeställning ... 2

1.5 Avgränsningar ... 2

2 Teoretiskt och tekniskt ramverk ... 3

2.1 Dynamic Positioning ... 3

2.2 Global Positioning System ... 3

2.3 Indoor Positioning System ... 5

2.4 Tekniker tillgängliga på konsumentmarknaden ... 5

2.4.1 WiFi ... 5

2.4.2 Bluetooth ... 8

2.4.3 RFID ... 10

2.4.4 RSSI och Mesh-nätverkspositionering ... 12

2.4.5 Ultra Wideband ... 12

2.5 Arduino ... 12

2.5.1 Hårdvaran ... 13

2.5.2 Arduino med WiFi ... 14

2.6 ESP32 ... 14

3 Metod ... 16

3.1 Val av system och komponenter ... 16

3.2 Programmering ... 17

3.3 Praktisk prövning ... 17

3.4 Mätvärdesbehandling ... 18

4 Resultat ... 19

5 Diskussion ... 21

6 Slutsats ... 22 Referenser

(8)

Bilageförteckning

Bilaga 1 Programkod för mätenhet

Bilaga 2 Projektdirektiv från Tobias Hedin

Figurförteckning

Figur 1. ... 1

Figur 2. ... 4

Figur 3. ... 4

Figur 4. ... 4

Figur 5. ... 6

Figur 6. ... 7

Figur 7. ... 7

Figur 8. ... 7

Figur 9. ... 11

Figur 10. ... 13

Figur 11. ... 16

Figur 12. ... 19

Figur 13. ... 20

Figur 14. ... 20

(9)

1 Inledning

1.1 Bakgrund

Inom Sjöfarten talas det om autonoma fartyg, d.v.s. obemannade fartyg som tar sig från punkt a till punkt b med hjälp av Artificiell Intelligens (AI). För att AI skall fungera till att föra fram ett fartyg behövs mängder av inputs till systemet,

exempelvis positionsangivelse, väderförhållanden m.m. Sjöfartshögskolan vill starta ett projekt inom ovan nämnda område, som löper över en längre tid. Projektet kommer behöva delas in i delprojekt och till en början genomförs undersökningar i en kontrollerad miljö. I denna kontrollerade miljö kommer inte Global Positioning System (GPS)-signaler från satelliter att kunna användas för positionering då signaler inte når fram på grund av hinder i form av byggnader. Detta gör att ett eget positioneringssystem måste utvecklas för att komma vidare i projektet. Utvecklandet av det lokala positioneringssystemet är det första delprojektet.

1.2 Uppdragsstudie

Detta arbete är en delstudie i ett större projekt för Sjöfartshögskolan. Uppdraget går ut på att undersöka om det med konsumentprodukter kan skapas ett system som kan nyttjas för positionering i den inledande delen av projektet. Projektet i sin helhet har som mål att en modell av skolfartyget Calmare Nyckel skall byggas, modellen skall placeras i utomhusbassängen i byggnad Magna, se Figur 1. Modellen skall med hjälp av ett positioneringssystem, kunna positionera sig och utföra enklare manövrar i denna bassäng. Positionering skall anges i antingen x- resp. y-koordinater eller Latitud resp. Longitud, och skall ha en noggrannhet omkring ±10 cm.

Figur 1. Modell på bassängen där det är tänkt att modellen av Calmare Nyckel skall segla av Brolin, J.

(2021).

(10)

1.3 Syfte

Syftet med denna studie är att undersöka noggrannheten för en positioneringsprincip där data från två skilda positioneringssystem, uppbyggda av produkter från

konsumentmarknaden, används tillsammans för beräkning av position.

1.4 Frågeställning

• Vilken typ av teknisk utrustning är lämpligast att använda till ändamålet baserat på tidigare studier?

• Vilken typ av teknisk utrustning är rimligast att använda till ändamålet sett till komplexitet och den tidsbegränsning som finns i ett självständigt arbete i grundutbildningen?

• Hur påverkas noggrannheten i positioneringssystem av att använda data av medelvärden från två oberoende WiFi-nätverk?

1.5 Avgränsningar

• Ingen hänsyn tages till eventuell skillnad i höjdled för mottagare och sändare.

(11)

2 Teoretiskt och tekniskt ramverk

Detta stycke beskriver förekommande positioneringssystem, samt ett urval av komponenter på konsumentmarknaden. Hur olika elektroniska enheter

kommunicerar mellan varandra. Kortfattat om hur datainformation överförs. Lite om mikrochip och vad de olika enheterna har för syfte i systemet.

2.1 Dynamic Positioning

För att få en högre noggrannhet och en stabil positionering av fartyg finns tekniken Dynamic Positioning (DP). Till detta nyttjas flera olika system med syftet att uppnå en högre noggrannhet, som denna studie också syftade till. Om ett större fartyg kränger från sida till sida skulle detta kunna påverka positioneringen om endast GPS används och mottagaren sitter på en hög punkt. Därav används bland annat sensorer för vind, rörelse och gyrokompasser för att motverka fartygets rörelser. Insamlad data moduleras sedan i en dator innehållandes en matematisk modell av fartyget.

Med denna information kan fartyget sedan justera sin position med hjälp av egna trustrar, roderutslag och propellrar. DP nyttjas främst av fartyg där höga krav på exakt positionering krävs. Några exempel på sådana är ankarhanterare (AHTS), Platform Supply Vessel (PSV) och flytande oljeriggar. Detta för att minimera risken för kollision mellan dessa och riskera stor miljöpåverkan och/-eller stora

ekonomiska kostnader (The nautical institute, u.å).

2.2 Global Positioning System

GPS är ett system framtaget av den amerikanska militären. Idag används de av en stor del konsumenter och kan även hittas i smartphones. Systemet består av 24 st (år 1999) aktiva satelliter placerade i banor runt jorden på ca 20 000 km höjd där de sänder ut signaler. Satelliterna skickar ut bärsignaler L1 (1572,42MHz) och L2 (1227,60 MHz) som sedan moduleras till information för att bestämma mottagarens position. Genom att kommunicera med flera satelliter så kan mottagaren beräkna den exakta positionen. Satelliterna sänder ut två skilda koder, P-kod och C/A-kod.

P-koden är mer exakt och utnyttjar båda bärsignalerna medan C/A-koden använder enbart bärsignal L1. P-koden är krypterad vilket gör att C/A-koden är den enda som är tillgänglig för allmänheten. För att övervaka GPS satelliterna finns fem

markbundna stationer utsatta efter ekvatorn. Dessa skickar information till satelliterna och korrigerar avvikelse från banan (Lindh, 1999).

För att förklara principen hur positionering med GPS-system fungerar, bryts modellen för mottagarens position ner från en sfärisk figur till en två dimensionell Figur. Satellit ett benämns som A och sfären motsvarar en cirkel på kartan i Figur 2.

Med den informationen kan mottagaren veta att den befinner sig någonstans i cirkeln.

(12)

Figur 2. Modell av en sfär i två dimensioner. Bild från Kjell & Company (2018b).

Mottagaren får sedan lyssna på satellit två som benämns B i Figur 3. Då mottagaren innehar information från två satelliter kan mottagaren utesluta positionen till någon av de två punkter där cirklarna skär.

Figur 3. Modell av två cirklar som överlappar varandra och får två skärningspunkter. Illustrerar de två positioner satelliterna vet att mottagaren kan befinna sig på med informationen som tidigare nämnts.

Bild från Kjell & Company (2018b).

Då mottagaren har positionerna för dessa två punkter kan den ta in signaler från fler satelliter för att beräkna avståndet och sedan utesluta en av de punkterna.

För att beräkna en position utifrån två dimensioner räcker tre satelliter, se Figur 4.

För att få till en tredje dimension krävs ytterligare satelliter.

Figur 4. En modell som visar hur tre cirklar möts, bokstäverna illustrerar sändarnas position. Vardera Sändare vet att mottagaren befinner sig på någon av deras skärpunkter när de pratar i par. Med tre sändare kan de beräkna exakta position på mottagaren som i detta fall befinner sig i mitten. Bild från Kjell & Company (2018b).

(13)

Kommunikationen mellan GPS-sändare och GPS-mottagare är enkelriktad. Ett kommunikationssätt som ej blir överbelastad oavsett antal brukare, jämfört med mobilnät som belastar kommunikationshastigheten beroende på antal brukare vid samma tidpunkt (FAS Military Analysis Network 1998).

2.3 Indoor Positioning System

Indoor Positioning System (IPS) är ett system utvecklat för användning inomhus.

Ett sådant system är inte beroende av att GPS-signaler når fram genom väggar och tak. Det är ett system för att positionera enheter samt spåra människor och enheter med andra nätverk än satellitsignaler. Grundprincipen är att ett mindre nätverk som extrapolerar platsrelaterade data. Tekniken använder sig av referensnoder som är fastmonterade på kända platser och kommunicerar med varandra samt mobila enheter via radiosignaler. Det finns fem olika huvudgrupper för de olika principerna (Induo, 2020, 25 februari).

1. Time of arrival (TOA) 2. Angle of arrival (AOA) 3. Arrival time delay (TDOA) 4. Received Signal Strength (RSSI)

5. Hybridsystem (blandning av olika fysiska principrelaterade mätvärden)

2.4 Tekniker tillgängliga på konsumentmarknaden

2.4.1 WiFi

WiFi är en trådlös uppkoppling för både mobila och stationära enheter. Det trådlösa nätverket nyttjar radiovågor på 2,4 GHz eller 5 GHz-bandet. Då dessa har olika för och nackdelar, exempelvis för 2,4 GHz gör signalens utformning att den bättre tar sig igenom väggar men tenderar vara mer störkänslig av hushållselektronik. På samma sätt har 5 GHz svårare att ta sig igenom hinder baserat på sin kortare våglängd, men är mindre störkänslig och kan förmedla större mängder data

(Marketing Team 2020). Eftersom WiFi blivit vanligare då tekniken är lättillgänglig samt säkrare ersätter den idag mycket av det trådbundna systemet som kräver en nätverkskabel. The Institute of Electrical and Electronics Engineers (IEEE) skapade I slutet av 90-talet en standard för trådlösa nätverk som gavs namnet 802.11. Med vidareutvecklingen på denna standard finns den nu i flera olika utföranden, dessa är bland annat Wireless 1 (802.11b), Wireless 3 (802.11g), Wireless 4 (802.11n), Wireless 5 (802.11ac) och Wireless 6 (802.11ax). Alla nuvarande WiFi-enheter bygger idag på någon av dessa standarder, några exempel på sådana enheter är routrar och accesspunkter (Kjell & Company 2018c).

Den stora skillnaden på dessa olika standarder är mängden data som kan överföras, Wireless 1 (WiFi 1) har stöd för hastigheter upp till 11MB/s, detta skiljer sig väldigt mycket jämfört med en senare versionsstandard som är Wireless 5 (WiFi 5) där kan hastigheter uppåt 433 MB/s nås på 2,4 GHz bandet (1300 Mb/s på 5 GHz). För WiFi 6 kan hastigheter uppåt 11 GB/s nås på båda frekvensbanden. I Figur 5 syns den teoretiska max hastigheten för de olika WiFi-standarderna. Fördelen att dessa

(14)

fungera. Hastigheten blir dock inte högre än den minsta gemensamma hastigheten (Kjell & Company 2018c).

Figur 5. Hastighet per dataström för de olika WiFi-teknikerna, där skillnaden mellan de olika är frekvens och maximal dataöverföring, som synes så har WiFi 6 (802.11ax) betydligt högre överföringshastighet jämfört med de övriga. Bild från Kjell & Company (2018c).

En accesspunkt (AP) är en sändare som används för att skapa ett lokalt trådlöst nätverk (WLAN). Vanligtvis ligger AP på samma nätverk som en router och sänder ut WiFi-signalen. Den stora skillnaden mellan AP och routern är att en AP enbart förmedlar information och kommunikation medan en router har fler funktioner så som Dynamic Host Confuguration Protocol (DHCP) och viss användarhantering (Linksys, u.å).

Den standard som idag är vanligast är Wireless N (WiFi 4), routrar och tillbehör som tillämpar denna standard kan ha flera antenner, detta då de oftast arbetar med parallella dataströmmar. Detta innebär att den skickar fler signaler för att på detta sätt nå högre hastigheter. Denna teknik benäms Multiple Input Multiple Output (Mimo) eller Single User Mimo (Su-mimo) (Kjell & Company 2018c).

För att Su-mimo tekniken skall fungera så krävs två eller tre antenner, routern delar då upp datan som skall skickas över de olika antennerna för att på detta sätt nå en högre överföringshastighet. Produkter som använder Wireless N kan som högst skicka tre dataströmmar samtidigt. Varje dataström kan teoretiskt överföra 150 MB/s detta innebär att den teoretiskt största hastigheten för denna standard blir 450 MB/s då dessa adderas till varandra vilket åskådliggörs i Figur 6 (Kjell & Company 2018c).

(15)

Figur 6. Bildligt beskrivet skickade data för en router med tre antenner och en dator, 3 antenner á 150 MB/s var, ger en teoretisk hastighet på 450 MB/s. Bild från Kjell & Company (2018c).

Som tidigare nämnts så arbetar nätverken på antingen 2.4 GHz eller 5 GHz-bandet, där 2.4 GHz är den standardiserade frekvensen, frekvensbandet sträcker sig från 2400Mhz till 2483Mhz alltså ett område om 83Mhz. Detta frekvensband är idag mycket trafikerat vilket medför att det är känsligt för störningar. Dessa störningar kan komma från mikrovågsugnar, Bluetooth-enheter (se kapitel 2.4.2) och annan trådlös överföring, då dessa enheter också arbetar på detta frekvensband. Skulle den trådlösa överföringen störas av ovan nämnda ting kommer datapaketen behöva skickas om vilket medför lägre överföringshastighet (Kjell & Company 2019).

Även närliggande trådlösa nätverk tenderar att störa ut varandra och i de flesta routrar finns den teoretiska möjligheten för nyttjandet av 13 olika kanaler alla med olika frekvenser. Problemet med detta är dock att kanalerna överlappar varandra då dessa har ett frekvensomfång på 20MHz. Det är endast kanal 1, 5, 9 och 13 som har detta omfång av 20Mhz inklusive separation, vilket innebär att det i praktiken endast finns 4st kanaler, detta beskrivs i Figur 7. Alla andra kanaler överlappar varandra vilket innebär störningar. Idag är det dock framförallt kanal 1, 6 och 11 som används då dessa har blivit branschstandard, vilket innebär att istället för 4 kanaler finns bara möjlighet till 3 kanaler då dessa blivit som nämnt ovan, standard, enligt Kjell & Company (2018c).

Figur 7. Bildligt beskrivet separationen mellan de 4 kanalerna 1, 5, 9 och 13. Bild från Kjell &

Company (2019).

Figur 8. Branschstandarden på WiFi kanaler idag, här synes separationen mellan kanal 1, 6 och 11.

Bild från Kjell & Company (2019).

2.4.1.1 Frekvensbanden

(16)

till sitt förfogande för att kunna prestera på max vid denna bandbredd. Denna funktion bör sättas i auto för att låta routern eller accesspunkten själv välja vilken kanalbredd den skall sända på och smalna av sin kanalbredd, om den upptäcker att det finns närliggande trådlösa nätverk. Annars riskerar den att bli störd eller störa andra intilliggande nätverk. Nackdelen med att gå ner till 20MHz är dock att hastigheten blir påverkad negativt.

Med flera accesspunkter i ett och samma hus bör dock 20MHz användas enligt Kjell

& Company (2019). Detta då de tenderar att fungera bäst, den maximala hastigheten kommer att sänkas men prestandan för hela det trådlösa nätverket blir bättre.

Anledningen till att det är på detta vis är för att med 40MHz finns det endast 2 kanaler att välja på. Orsaken till detta är skillnaden i teori och verklighet, belyses kanal 1 (2412MHz) och kanal 13 (2472MHz), alltså ett frekvensomfång av 60 MHz.

Fördelas detta frekvensomfång över 2 kanaler så återstår endast 30 MHz. I verkligheten är kanalerna endast 4.6 MHz breda och varje kanal upptar minst 20 MHz. Detta innebär att dessa kanaler kommer överlappa varandra, använder sig istället accesspunkten av 20MHz kanalbredd så finns det enligt Figur 8, 3 kanaler (1, 6 och 11) vilket gör nätverket mer störningssäkrat då var och en av kanalerna får 25 MHz kanalbredd (Kjell & Company 2019).

5GHz-bandet har ett större frekvensområde och därmed fler kanalvalmöjligheter.

Frekvensområdet för 5Ghz-bandet sträcker sig från 5170 till 5725MHz. Alla

frekvenser i området kan dock inte användas för trådlös kommunikation, då vissa av frekvenserna redan är upptagna för annan kommunikation. I 5GHz bandet går det bra att använda sig av 40MHz breda kanaler, till och med 80MHz kanalbredd kan användas utan större problem. En annan fördel med denna frekvens är att det inte störs av närliggande hemelektronik som 2.4GHz gör. Detta innebär att hastigheterna på 5GHz-bandet blir betydligt högre dock med en begränsad räckvidd.

De vanligaste kanalerna som används på 5GHz-bandet är kanal 36 (5180MHz), 40 (5200MHz), 44 (5220MHz) och 48 (5240MHz). Användes 40MHz breda kanaler så kommer systemet att nyttja 2 kanaler exempelvis 36 och 40 och således vid

användande av 80MHz så nyttjas 4 kanaler. Detta är något positivt för 5GHz-bandet då räckvidden är lägre kan grannar använda samman kanaler på respektive

accesspunkt/router utan att riskera störa ut varandra.

Det finns betydligt fler kanaler på 5GHz-bandet vid nyttjande av avancerade accesspunkter, dessa sträcker sig från kanal 52–140 men ställer samtidigt höga krav på den hårdvara som används. Ett av kraven är dynamiskt frekvensval vilket innebär att exempelvis militärens radar kan få accesspunkten att byta kanal för att inte störa ut radarsignalen.

Kanalbredden för 5GHz-bandet fungerar precis som för 2.4GHz, ju bredare kanaler desto större datamängd kan överföras (Kjell & Company 2019).

2.4.2 Bluetooth

1994 lanserades Bluetooth tekniken på konsumentmarknaden. Sedan dess har den förenklat eller i alla fall reducerat behovet av kablar, detta för allt ifrån hörlurar till datormöss och tangentbord. Tekniken togs fram av det svenska företaget Ericsson under namnet Blåtand (Eng. Bluetooth) som syftar på den danska kungen Harald

(17)

mobila enheter. Idag utvecklas och marknadsförs tekniken via många företag genom intressegruppen Bluetooth SIG (Bluetooth, 2021).

Nyligen lanserade Apple ett spårnings verktyg (AirTag). Exempelvis kan detta verktyg liknande en tagg fästas på en nyckelring eller i en handväska. Produkten använder Bluetooth och lagrar den senaste positionen som sedan kan presenteras i kartan som finns i applikationen Hitta på en Apple produkt. Om taggen finns inom telefonens Bluetoothräckhåll kan en söksignal skickas ut och Airtagen börjar ljuda för att lättare spåra den. Om taggen är utom Bluetoothräckhåll så kommunicerar den med andra närliggande Apple enheter för att sedan kunna skicka platsen till den rättes ägare. Detta sker anonymt och privat (Apple, 2021).

Bluetooth är en trådlös överföringsteknik som grundar sig i en eller flera enheter där den ena agerar värdenhet. Denna värdenhet kan ha en eller flera klienter under sig.

Hur dessa enheter interagerar med varandra bestäms av dess profil. Dessa profiler bestämmer hur enheten skall verka inom den stora Bluetooth-standarden. Alla Bluetooth-enheter behöver inte kunna nyttja allt det tekniken innefattar, till exempel måste en datormus inte kunna hantera ljud som skickas från en enhet som ett trådlöst Bluetooth-headset måste kunna. Enheterna får således en egen

profiluppsättning baserat på vad det har för uppgift. Bluetooth-enheter delas in i 3 olika klasser baserad på räckvidden för enheten. Dessa klasser går från I-III där klass I innebär en räckvidd på omkring 100 meter medan klass III har en räckvidd på 1 meter. Den vanligaste klassen för konsumentteknik är dock klass II som har en räckvidd runt 10 meter.

Sammankopplandet av Bluetooth-enheter sker med synkningsrutin men exakt hur det fungerar skiljer sig mellan enheterna. Grundprincipen brukar dock vara att klienten t.ex. hörlurar sätts i (Eng. pairing mode) sammankopplingsläge och värdenheten exempelvis en mobiltelefon eller dator sätts i sökläge och därmed kan upptäcka enheter i sin närhet.

Sedan tekniken först utvecklades har mycket hänt, både själva Bluetooth-kärnan samt profilerna har ständigt utvecklats. När uttrycket Bluetooth-version används så syftas det på vilken Bluetooth-kärna en enhet använder sig av, fördelen med

Bluetooth-tekniken är dock att den är bakåtkompatibel. Detta innebär att en gammal enhet kan sammankopplas med en ny (Stirparo, Loeschner & Cattani, 2012).

2.4.2.1 Bluetooth versioner

Bluetooth 2.0 och 2.1 + EDR, är tidiga versioner, dessa är dock helt

bakåtkompatibla med de allra första Bluetooth-versionerna som knappt används idag. Denna version möjliggjorde sammankoppling via Near field communication (NFC) som idag används mycket för t.ex. pendlarkort på bussen och för upplåsning av hotellrumsdörrar. Den sänkte även strömåtgången, tillägget EDR står för

Enhanced data rate, detta medför en teoretisk överföringshastighet på omkring 3Mb/s.

Bluetooth 3.0 + HS medför förbättrad säkerhet och ytterligare minskad strömåtgång, tillägget HS som står för High speed medförde en överföringshastighet på upp till

(18)

Bluetooth 4.0 (+HS) i och med denna version infördes Bluetooth LE (Low Energy), denna version är en sammanslagning av LE och HS tekniken, en enhet kan stödja båda dessa eller en av dem.

Bluetooth 5 är när detta arbete skrivs den senaste versionen. Även denna version är helt bakåtkompatibel med alla äldre versioner. Bluetooth 5 inför två nya profiler för LE-tekniken där den ena profilen dubblerar överföringshastigheten jämfört med version 4.2 och den andra ger en räckvidd som når upp till fyra gånger gentemot tidigare. För Bluetooth 5 och senare gäller alltså inte tidigare nämnda räckvidder.

Det går dock inte att använda båda dessa profiler samtidigt, detta erbjuds trots att enheterna drar mindre ström än tidigare.

Bluetooth LE står som nämnt tidigare för Low Energy och är framtaget för att kunna använda Bluetoothteknik som är väldigt energisnål. Tanken med denna teknik är att den skall nyttjas i alla strömsnåla sensorer. LE används idag i smartklockor för att visa SMS, visa kartor för GPS samt dataöverföring av kroppspulsövervakning, när en värdenhet ansluts till denna klient så får användaren möjlighet att läsa av den sensorbaserade informationen i t.ex. en smartphone. Bluetooth LE och Classic Bluetooth är dock inte kompatibla med varandra vilket innebär att värdenheten måste stödja LE-tekniken för att kunna ansluta till en sådan enhet (Stirparo, Loeschner & Cattani, 2012).

2.4.3 RFID

Radio-frequency identification (RFID) är ett samlingsnamn för en mängd olika trådlösa tekniker som kommunicerar mellan tagg och läsare. Tekniken har allt mer etablerat sig i vårt samhälle. Allt ifrån betalning av småsummor i matbutiken till att ta sig in till gymmet, hemmet eller jobbet. Tekniken använder radiovågor för att kommunicera med andra enheter, som är den mest lågfrekventa formen av elektromagnetisk strålning (Sempler.K, 2005, 12 december).

Ett elektromagnetiskt fält är som det låter, lika delar av elektriskt samt magnetiskt fält. Energin som transporteras med de elektromagnetiska vågorna kallas för elektromagnetisk energi. Det som skiljer mellan de olika RFID-teknikerna är vilken frekvens som används inom radiospektrumet. De fyra grundläggande principerna för kommunikationen är en datasignal innehållande information, en bärsignal som bär signalen, en enhet som kodar om datasignal till bärsignal och en antenn som skickar och tar emot signalen som visas i Figur 9. I detta fall är bärsignalen radiovågor varav namnet (Chipster u.å.).

(19)

Figur 9. Modell hur på RFID kommunicerar. Datasignalen slås ihop med en signal som helt saknar information. Anledningen till att använda en bärsignal är för att få en stabilare signal genom luften, då RFID använder sig av låga frekvenser störs de lätt. Bild från Chipster (u.å.).

2.4.3.1 Aktiv RFID

Aktiv RFID är en positioneringsapplikation tillgänglig i två olika frekvensband, låg och hög. Ett aktivt RFID-system består av aktiva transpondrar. Personer samt föremål utrustad med en sådan tagg kan positioneras inom detta område. Systemet läser taggen med lågfrekventa signaler som sedan triggar en tillbakagående radiosignal med information så som plats och identifikation. Läsaren kan läsa av taggar inom ett avstånd på tiotals meter då den har en egen strömkälla oftast i form av ett batteri. Användningsområdet lämpar sig för att identifiera lagerstatus på olika varor samt positionering av dels fordon och personer eller när ett fordon passerar en tull (Sempler.K, 2005, 12 december).

2.4.3.2 Passiv RFID

En passiv RFID är en teknik som ej kräver en ackumulerad strömförsörjning, användningsområdet är vanligast som nyckeltaggar för att ta sig igenom dörrportar.

En kondensator laddas upp av induktion från läsaren för att sedan kunna

kommunicera, en ID-kod sänds sedan till läsaren. Beroende på modell så kan även mer komplex information användas, exempelvis information från ett integrerat minne (Sempler.K, 2005, 12 december).

2.4.3.3 Semipassiv RFID

En annan teknologi är en semipassiv RFID som är mer strömsnål än en aktiv RFID.

Den kan logga information över tid och sänder den vid förfrågan. Om en vara skall skickas, men måste hålla en viss temperatur så kan temperaturen loggas och presenteras senare för att säkerställa att varan har fraktats enligt specifikation

(20)

2.4.4 RSSI och Mesh-nätverkspositionering

Resived Signal Strength Indicator (RSSI) och Mesh-nätverkspositionering är ett nätverk med flera sammankopplade enheter. Informationen överförs mellan de olika enheterna till den når en slutlig gateway, informationen kan därefter laddas upp till en server. Systemen har användningsområden som exempelvis infrastruktur, men även ett inomhuspositionerings system har utvecklats med denna teknik enligt Induo (2020, 25 februari). Fasta beacons placeras ut med 25 meters avstånd över det önskade området. Dessa används som referenspunkter för att beräkna positionering av de mobila taggarna (Induo, 2020, 25 februari).

2.4.5 Ultra Wideband

Ultra Wideband (UWB) är en teknik som tidigare användes för radarbilder men används nu för att få extremt noggrann positionering enligt Induo (2020, 25 februari). Tekniken ger både hög bandbredd samt dataöverföring, dock med kort räckvidd. UWB är den mest exakta positioneringsapplikationen som finns på marknaden med en hastighet upp till 100Mbit/s i dataöverföring. Användning av UWB-pulsfrekvensen med Flight time Triangulation information möjliggör signalerna att gå igenom olika hinder.

Amerikanska militären tog fram denna högfrekventa spektrateknologi för att kunna kommunicera med andra enheter utan att störa andra sändningar (Induo, 2020, 25 februari).

2.5 Arduino

Intresset för programmering ökar hela tiden, detta syns inte minst på alla applikationer som dyker upp på de olika app-biblioteken för datorer och

smartphones. På hemsidan för Universitets- och högskolerådet (2021) finns det inte mindre än 167 utbildningar att söka inom ämnet. Programmeringen idag är inte begränsad till en skärm utan mycket av vanlig hemelektronik innehåller mjukvara baserad på programkod. Exempel på detta är timerfunktion på en mikrovågsugn, fjärrkontrollen till tv:n och robotdammsugaren som innehåller en relativt avancerad programkod, detta för att ta sig förbi hinder och hitta tillbaka till sin

laddningsstation. Arduino är ett väl lämpat verktyg för att de flesta skall kunna börja skriva programkod, detta oavsett om det är en nybörjare eller en erfaren användare (Kjell & Company 2017b).

Koden för dessa enheter körs på en så kallad mikrokontroller som i själva verket är en liten dator innehållandes processor, minne samt in och utgångar. Snabbheten på processorn, storleken på minnet och antalet in/utgångar varierar mellan de olika modellerna. Som nämnt tidigare så finns det i en mikrovågsugn en mjukvarutimer, denna timer åstadkoms med endast få rader kod och en enkel modell av

mikrokontroller medans för robotdammsugaren krävs betydligt fler rader samt en mer kraftfull mikrokontroller. Gemensamt för alla mikrokontrollers är

programmeringen, denna utförs oftast av en fysisk person som skriver koden för att sedan föra över den till mikrokontrollern. För att undgå detta använder sig Arduino av något som kallas utvecklingskort, vilket är ett chip med en redan monterad mikrokontroller och kringliggande elektronik för drivning av chipet. Detta ansluts oftast via USB där sedan koden överförs (Kjell & Company 2017b).

(21)

Programmet tillverkaren tagit fram som används för att skriva Arduino-kod heter Arduino IDE. Programmet finns tillgängligt för de vanligaste operativsystemen som finns för datorer, alltså Windows, Mac OS och Linux. Källkoden för programmet är öppen vilket innebär att alla kan inspektera samt förbättra den. Programmet är även gratis att ladda ned. Det finns även möjlighet att programmera Arduino-enheter med andra program, exempel på några är ArduBlock och Scratch. För att kunna skriva programkod används ett så kallat programmeringsspråk. För Arduino IDE är detta språk lätt att anamma, även som oerfaren programmerare enligt Kjell & Company (2017b). Språket kallas Arduino Programming Language (APL) och är baserat på två andra programmeringsspråk kallade C och C++. Dessa hör till de äldsta programmeringsspråken (Singh 2021).

Eftersom plattformen Arduino är öppen och även källkoden för utvecklingsmiljön är utgiven som öppen källkod kan vem som helst bygga korten. Då det är ett väldigt populärt verktyg för programmerare innebär detta att de alltid finns hjälp att få då det är så pass många som använder sig av plattformen. Många forum finns och det är många som delar med sig av sina skrivna koder (Kjell & Company 2017b).

2.5.1 Hårdvaran

Det populäraste utvecklingskortet heter Arduino UNO (Device plus, 2020), kortet tillverkas av flera olika företag men alla följer samma ritning. Arduino UNO kortet är utrustat med en USB-B kontakt via vilken koden överförs, kontakten används också till strömförsörjning av kortet och dess påkopplade utrustning. En

översiktsbild av kortet finns i Figur 10.

(22)

Längs med sidorna finns det lister för anslutning av tillbehör. Ena sidans kontaktlist är numrerad från 0 till 13, dessa portar är så kallade digitala GPIO portar som står för General purpose input output. Med dessa kan dioder styras samt registrera när exempelvis en brytare ansluten till kortet öppnas eller sluts. På andra sidan finns sex analoga ingångar, dessa används för inkoppling av analoga sensorer, exempelvis en trycksensor. Intill de analoga ingångarna finns stift för 5 volt matning och jord, de används för att spänningssätta utrustning som kopplas till utvecklingskortet.

Kortet är även utrustat med egna dioder. En ON-diod som visar att kortet är

spänningssatt, Transmit (TX) and Receive (RX) dioder som blinkar högfrekvent när data skickas och tas emot av kortet. Det finns även en lysdiod som kallas pin13, en diod som är kopplad parallellt med port 13 på de digitala portarna. Det finns dock många olika modeller av dessa utvecklingskort, ett annat är Arduino mega som är utrustad med snabbare processor samt betydligt fler portar än UNO modellen (Kjell

& Company, 2017a) (Arduino, 2021).

Under utvecklingsfaser eller i laborationssammanhang är det opraktiskt att koppla in komponenter direkt på utvecklingskortet. Istället brukar en kopplingsplatta

användas som i sin tur kopplas till kortet. Denna kopplingsplatta innebär snabba och smidiga skiften av komponenter då dessa endast trycks fast på plattan, även dessa kopplingsplattor finns i många olika utföranden. Används en kopplingsplatta kan många olika varianter av kretsar byggas. Användandet av en modul gör att det går ännu fortare att bygga ihop det. Modulen består av ett kretskort med komponenterna redan kopplade till sig vilket innebär att det med få steg kan kopplas till

utvecklingskortet.

2.5.2 Arduino med WiFi

För att ansluta ett utvecklingskort av typen Arduino Uno till ett nätverk finns två olika tillvägagångssätt vilka är trådbundet och trådlöst. För att kunna ansluta ett utvecklingskort till ett trådlöst nätverk måste en så kallad WiFi modul användas, denna modul bygger på ett chip kallat ESP8266. Denna modul arbetar på 2.4GHz bandet och har stöd för hastigheter upp till 150 Mb/s, modulen ansluts till

utvecklingskortet via en adapter. Kortet kostar lite vilket lämpar sig väl för projektet och bygger på samma inputs och outputs som Arduino (Kjell & Company, 2018a).

2.6 ESP32

ESP32 är ett mikrostyrkort som är en vidareutveckling på ESP8266, detta kort är utöver WiFi även utrustat med Bluetooth för möjligheten att använda dessa båda tekniker. Den stora skillnaden mellan dessa enheter är att ESP32 är just ett

mikrostyrkort. ESP8266 är endast en tilläggsmodul till ett Arduino-utvecklingskort vilket betyder att det endast krävs en enhet vid användandet av ESP32. Även detta kort kostar lite och har en låg effektförbrukning. Kortet är tåligt och pålitligt vilket gör att det lämpar sig väl för flera användningsområden. En ytterligare förbättring mellan ESP8266 och ESP32 är att ESP32 även är utrustad med dubbla kärnor i processorn vilket medför snabbare data-processering.

Enligt Techexplorations.com (u.å.) går det utmärkt för en programmerare som är

(23)

mjukvaran ESP32 Arduino-core som används som ett tillägg till Arduino IDE.

Techexplorations.com skriver att dessa två mjukvaror interagerar väldigt bra med varandra, dock nämns även att ESP32 inte är att föredra som ny inom

programmering utan att då istället börja med Arduino (Lastminuteengineers.com, u.å) (Espressif systems, 2021).

(24)

3 Metod

Baserat på de litteraturstudier som framkommit av teorikapitlet valdes WiFi som den mest lämpade tekniken. Detta baserades på dess tillgänglighet av komponenter på konsumentmarknaden, samt lättillgängligheten av information för tekniken. När en undersökning var gjord var arbetsgången enligt nedan:

• Val av system och komponenter

• Programmering av mottagare

• Praktisk prövning

Principen för positioneringssystemet var två skilda nät som mätte upp x- resp. y- koordinater se Figur 11.

Figur 11. I studien testades att använda två positioneringssystem som arbetar mot varandra för sedan använda ett medelvärde av de två, bild av Brolin, J. (2021).

3.1 Val av system och komponenter

En litteraturstudie på olika tekniker inom området genomfördes. Denna information låg sedan till grund för valet av systemteknik samt vilka komponenter som skulle kunna vara lämpliga.

Systemtekniken som sedan användes var WiFi 802.11n (WiFi 4) med fyra AP, kanal 1, 5, 9 och 13 för att minimera störningar av det egna nätet. Valet av mottagare föll

(25)

3.2 Programmering

WiFi-signalerna uppmättes i decibel för elektrisk effekt, dBm. För att omvandla signalstyrkan till distans användes rätalinjens ekvation för logaritmiska värden, se Ekvation 1.

𝑑 = 10!!""#

$ #$% (1)

I denna ekvation beskriver RSSI WiFi-signalens styrka som tidigare är x i

rätalinjens ekvation, alltså en variabel. K blir en nämnare till variabeln och m blir -1 för att sedan kunna kalibrera ekvationen vid ett avstånd 1 meter ifrån WiFi-

sändaren. Endast två AP användes och för att förenkla beräkningarna för koordinaterna användes endast positiva resultat. Detta då koordinaterna i det bestämda utrymmet endast kunde vara positiva, de negativa koordinaterna var utanför området. Ekvation 2 visat cirkelns ekvation i allmän form.

(𝑥 − 𝑥&)'+ (𝑦 − 𝑦&)'= 𝑟' (2)

För varje nät fanns det två accesspunkter vilkas signalstyrka motsvarade en punkt på en cirkels radie, Ekvation 3 och 4.

(𝑥 − 𝑥()$)'+ (𝑦 − 𝑦()$)'= 𝑟()$' (3)

(𝑥 − 𝑥()')'+ (𝑦 − 𝑦()')'= 𝑟()'' (4)

Vid utbrytning av x och y användes Ekvationerna 5 och 6 som tar i beaktning de förenklingar som kunde göras då koordinaterna för accesspunkterna var givna.

𝑥 = ,𝑟()$' − 𝑦' (5)

𝑦 =*%&'' #*'+%&(' #+' (6)

För att filtrera bort falska signaländringar användes först ett medelvärde av resp.

näts x- och y-värden. Sedan togs ett medelvärde av dessa som sedan skulle presenteras som x- resp. y-koordinat för mottagaren.

3.3 Praktisk prövning

De praktiska proverna utfördes i skolans laborationssal för el-laborationer. Detta för att det relativt enkelt går att få till en tom yta som skall innefatta större delen av den slutgiltiga placeringen för systemet. De fyra accesspunkterna placerades ut i var sitt

(26)

nyttjas av det tänkta området för fartygsmodellen då vattendjup, stensättningar och beväxning begränsar detta.

Mätvärden loggades under 15 minuter, både enskilt för varje nätverk och de beräknade medelvärdena för x- resp. y-koordinaterna.

3.4 Mätvärdesbehandling

För att kunna jämföra principen med att använda två nät mot ett måste mätresultaten kvantifieras (Lindskog, 2006). Detta kan göra genom att ta fram standardavvikelsen för resp. nät och totalen från mätprincipen med två nät.

Enligt Rung och von Heijne (2018) beskriver Ekvation 7 hur standardavvikelsen beräknas:

𝜎 = .)$*(0#$(+$#+̅)' (7)

Där:

𝜎 är standardavvikelsen

xk är mätfelet, i detta fall det enskilda kvadrerade avståndsfelet ,𝛥𝑥'+ 𝛥𝑦' 𝑥̅ är medelvärdet av alla kvadrerade avståndsfel

n = antalet mätvärden

k = visat numret på första observationen

(27)

4 Resultat

Baserat på studieundersökningen så är GPS absolut det bästa systemet, men då bassängen är placerad där den är så kommer detta inte fungera.

Den mest rimliga tekniken att använda till ändamålet är accesspunkter och ett ESP32 mikrochip eftersom arbetet hade ett low-cost perspektiv.

Vid det praktiska provet samlades mätvärden in och beräknades enligt Ekvation 7.

Nät 1 hade en standardavvikelse på 0,16 meter, nät 2 på 0,20 meter och

kombinationen med nät 1 och 2 gav en standardavvikelse av det sanna värdet på 0,11 meter. Värdet beskriver nätets mätnoggrannhet även över andra positioner.

Figur 12. Resultat från mätningen med båda nätverken som visar de olika uppmätta koordinaterna för punkterna med koordinat (3,1; 2,4). Standardavvikelse på 0,11meter.

0 0,5 1 1,5 2 2,5 3 3,5 4 4,5 5

0 1 2 3 4 5

Total (3,1; 2,4)

(28)

Figur 13. Resultaten från mätningen med nätverk 1 som visar de olika uppmätta koordinaterna för punkterna med koordinat (3,1; 2,4). Standardavvikelse på 0,15meter.

Figur 14. Resultaten från mätningen med nätverk 2 som visar de olika uppmätta koordinaterna för punkterna med koordinat (3,1; 2,4). Standardavvikelse på 0,20meter.

(29)

5 Diskussion

En standardavvikelse på 0,11 meter är nära målet. Förhållande till modellen och bassängens yta så är det aningen för högt. Med ett kombinerat system av UWB och WiFi eller Bluetooth så kanske ytterligare noggrannhet kan uppnås. Att använda ett kombinerat system kan bidra till en högre noggrannhet. Anledningen till att vi tror det blev svårt med WiFi är att signalstyrkan varierade och som ett resultat av detta så varierade även mätvärdet ganska kraftigt, en del olika filter gjorde det möjligt att ändå kunna presentera ett rimligt resultat.

Mottagaren (ESP32) kräver även en elektrisk matning, detta har inte projektet belyst. För att uppnå detta kan en ackumulator installeras ombord på modellen. För att ladda ackumulatorn skulle en solcellspanel kunna placeras ombord. Detta bör inte vara något större problem då bassängen är placerad utomhus och bassängen belyses viss tid under dagen. Skulle inte detta fungera, kanske möjligheten att använda sig av speglar för att dirigera solstrålarna ner till fartygsmodellen kan vara en lösning.

(30)

6 Slutsats

Att använda två system på beskrivet sätt ökade noggrannheten men för ändamålet är det fortfarande för stor avvikelse mellan beräknade värden och verkligheten.

(31)

Referenser

Apple. (2021). Apple introduces AirTag. Hämtad 2021-04-23 från https://www.apple.com/newsroom/2021/04/apple-introduces-airtag/

Arduino. (2021). ARDUINO UNO REV3. Hämtad 2021-04-23 från https://store.arduino.cc/arduino-uno-rev3

Beal, V. (2001, 2 maj). WiFi Definition and Meaning. Hämtad 2021-04-19 från https://www.webopedia.com/definitions/wifi/ (Ej använd i texten)

Bluetooth. (2021). The story behind how Bluetooth got its name Hämtad 2021-04-22 från https://www.bluetooth.com/about-us/bluetooth-origin/

Chipster. (u.å.). Allt om RFID Hämtad 2021-03-18 från https://chipster.nu/guider/allt-om-rfid

Device Plus. (2020). Arduino: The Popular Microcontroller Board! Its History and to How to Use It. Hämtad 2021-04-29 från

https://www.deviceplus.com/arduino/arduino-the-popular-microcontroller-board-its- history-and-to-how-to-use-it/

FAS Military Analysis Network. (1998). Navigation for Weapons Hämtad 2021-04- 28 Från https://fas.org/man/dod-101/navy/docs/es310/GPS/GPS.htm

Handley, R. (2021 13april). RFID JOURNAL. Contribute a Guest Article to RFID Journal. Tillgänglig: https://www.rfidjournal.com/contribute-a-guest-article-to-rfid- journals-audience

Induo. (2020, 25 februari). INOMHUSOPTIMERING DÄR GPS-EN INTE NÅR [Blogginlägg]. Hämtad 2021-03-12 från

https://www.induo.com/b/inomhuspositionering-ips/

Kjell & Company. (2017a). Arduino-hårdvara? Hämtad 2021-03-18 från https://www.kjell.com/se/kunskap/hur-funkar-det/arduino/introduktion/arduino- hardvara

Kjell & Company. (2017b). Vad är Arduino och Genuino? Hämtad 2021-03-17 från https://www.kjell.com/se/kunskap/hur-funkar-det/arduino/introduktion/vad-ar- arduino-och-genuino

Kjell & Company. (2018a). Anslut Arduino till wifi. Hämtad 2021-03-23 från https://www.kjell.com/se/kunskap/hur-funkar-det/arduino/arduino-projekt/anslut- arduino-till-wifi?fbclid=IwAR0AeXTDRxxXe7yd7qb-2_k0Yt2zAK-

F8IkYGzvvzztu78CJFLGvqbxPoTo

(32)

Kjell & Company. (2018c). Wifi – Trådlöst nätverk. Hämtad 2021-03-02 från https://www.kjell.com/se/kunskap/hur-funkar-det/internet/lokala-natverk/wifi--- tradlost-natverk

Kjell & Company. (2019). Kanalplanering. Hämtad 2021-03-02 från https://www.kjell.com/se/kunskap/hur-funkar-det/internet/lokala- natverk/kanalplanering

Lindh, T. (Red.). (1999). Navigation 3 Navigation med teletekniska hjälpmedel.

Stockholm: Försvarsmakten.

Lindskog, J. (2006). Mätvärdesbehandling. Lund: Studentlitteratur.

Linksys. (u.å.). What is an Access Point and How is it Different from a Range Extender? Hämtad 2021-04-22 från https://www.linksys.com/us/r/resource- center/what-is-a-wifi-access-point/

Marketing Team. (2020, 29 september). 5GHz vs 2.4GHz – What is the best WiFi frequency? Hämtad 2021-04-19 från https://www.tanaza.com/blog/5ghz-vs-2-4ghz/

RANDOM NERD TOUTORIALS. (u.å.). ESP32 Useful Wi-Fi Library Functions (Arduino IDE) Hämtad 2021-03-23 från

https://randomnerdtutorials.com/esp32-useful-wi-fi-functions-arduino/

Rung, A., von Heijne, E. (2018). Matematik numerus 2C. Stockholm: Liber.

Sempler, K. (2005, 14 december). NyTeknik. Så funkar rfid-taggarna. Tillgänglig:

https://www.nyteknik.se/popularteknik/sa-funkar-rfid-taggarna-6370691

Singh, V. (2021, 7 januari). Difference Between C and C++ [Blogginlägg]. Hämtad 2021-04-20 från https://hackr.io/blog/difference-between-c-and-cplusplus

Stirparo, P., Loeschner, J., & Cattani, M. (2012). Bluetooth technology: security features, vulnerabilities and attacks. Digital Citizen Security. doi:

10.13140/RG.2.2.23401.49760

The Nautical Institute. (u.å.). Dynamic positioning. Hämtad 2021-05-01 från https://www.nautinst.org/resource-library/technical-library/dynamic-

positioning.html

(33)

Bilaga 1

Den kod som användes för programmering.

#include <WiFi.h>

#include <math.h>

float sensBx1 = 8.8; // Avstånd mellan AP nät 1

float sensBx2 = 8.8; // Avstånd mellan AP nät 2

float sensAy1 = 4.7; // Avstånd mellan Näten i Y-led

float xNet1; // X-koordinat för nät 1

float yNet1; // Y-koordinat för nät 1

float xNet2; // X-koordinat för nät 2

float yNet2; // Y-koordinat för nät 2

float avarageRSSI[5][4]; // Matrismed 2 dimensioner för lagrins av medelvärde // av RSSI-värden

float avRSSI1; // Medelvärde RSSI SSID 1

float avRSSI2; // Medelvärde RSSI SSID 2

float avRSSI3; // Medelvärde RSSI SSID 3

float avRSSI4; // Medelvärde RSSI SSID 4

float avRSSI5; // Medelvärde RSSI båda nätens X

float avRSSI6; // Medelvärde RSSI båda nätens Y

/* Funktion för att beräkna avstånd för nät 1 */

void fCalcNet1() {

yNet1 = (pow(avRSSI2,2)-pow(avRSSI1,2)- // Beräkning av Y-koordinat med hjälp av cirkelns

pow(sensBx1,2))/(sensBx1*2); // ekvation

xNet1 = sqrt(pow(avRSSI1,2)-pow(xNet1,2)); // Beräkning av X-koordinat med hjälp av cirkelns // ekvation

if (yNet1 < 0) { // Kontroll så endast positiv Y-position används

yNet1 = yNet1 * -1; // Om Y-värdet är negativt byts tecken till positivt }

if (xNet1 < 0) { // Kontroll så endast positiv X-position används

xNet1 = xNet1 * -1; // Om X-värdet är negativt byts tecken till positivt }

}

/* Funktion för att beräkna avstånd för nät 2 */

void fCalcNet2() {

yNet2 = (pow(avRSSI4,2)-pow(avRSSI3,2)- // Beräkning av X-koordinat med hjälp av cirkelns

(sensBx2,2))/(sensBx2*2); // ekvation

xNet2 = sqrt(pow(avRSSI3,2)-pow(xNet2,2)); // Beräkning av Y-koordinat med hjälp av cirkelns //ekvation

if (yNet2 < 0) { // Kontroll så endast positiv Y-position används

yNet2 = yNet2 * -1; // Om Y-värdet är negativt byts tecken till positivt }

if (xNet2 < 0) { // Kontroll så endast positiv X-position används

xNet2 = xNet2 * -1; // Om X-värdet är negativt byts tecken till positivt }

}

void setup() {

Serial.begin(115200); // Starta seriel kommunikation för loggning

WiFi.mode(WIFI_STA); // Starta WiFi i Staion mode

(34)

int nNetworkCount = WiFi.scanNetworks(); // Avläsning av antal nätverk som kan upptäckas

for(int nNetwork = 0; nNetwork < // Loop som körs lika många ggr som antalet funna

nNetworkCount; nNetwork++){ //nätverk

String scSSID = WiFi.SSID(nNetwork); // SSID för det nummer på nätverk som bearbetas i // loopen

if (scSSID == "Kaj-Fi1"){ // Kontroll SSID motsvarar "Kaj-Fi1"

double dDst1 = // Beräkning av avståndet med räta linjens

pow(10, -(double)WiFi.RSSI(nNetwork)/27-1); // ekvation

for (int x=3; x > 0 ; x--){ // Loop för att flytta alla lagrade värden i matrisen ett avarageRSSI[0][x] = avarageRSSI[0][x-1]; // steg

}

avarageRSSI[0][0] = dDst1; // Det senaste värdet lagras i matrisen avRSSI1 = (avarageRSSI[0][0]+avarageRSSI[0][1]+ // Medelvärde av värden i matrisen beräknas avarageRSSI[0][2]+avarageRSSI[0][3])/4; //

}

else if (scSSID == "Kaj-Fi2"){ // Kontroll SSID motsvarar "Kaj-Fi2"

double dDst2 = pow(10, - // Beräkning av avståndet med räta linjens (double)WiFi.RSSI(nNetwork)/28-1); // ekvation

for (int x=3; x > 0 ; x--){ // Loop för att flytta alla lagrade värden i matrisen ett avarageRSSI[1][x] = avarageRSSI[1][x-1]; // steg

}

avarageRSSI[1][0] = dDst2; // Det senaste värdet lagras i matrisen avRSSI2 = (avarageRSSI[1][0]+avarageRSSI[1][1]+ // Medelvärde av värden i matrisen avarageRSSI[1][2]+avarageRSSI[1][3])/4; //

}

fCalcNet1(); // Starta beräkning av koordinater för Nät 1

if (scSSID == "Kaj-Fi3"){ // Kontroll SSID motsvarar "Kaj-Fi3"

double dDst3 = pow(10, - // Beräkning av avståndet med räta linjens

(double)WiFi.RSSI(nNetwork)/28-1); // ekvation

for (int x=3; x > 0 ; x--){ // Loop för att flytta alla lagrade värden i matrisen ett avarageRSSI[2][x] = avarageRSSI[2][x-1]; // steg

}

avarageRSSI[2][0] = dDst3; // Det senaste värdet lagras i matrisen avRSSI3 = (avarageRSSI[2][0]+avarageRSSI[2][1]+ // Medelvärde av värden i matrisen avarageRSSI[2][2]+avarageRSSI[2][3])/4; //

}

else if (scSSID == "Kaj-Fi4"){ // Kontroll SSID motsvarar "Kaj-Fi3"

double dDst4 = pow(10, -

(double)WiFi.RSSI(nNetwork)/27-1); // Beräkning av avståndet med räta linjens ekvation for (int x=3; x > 0 ; x--){ // Loop för att flytta alla lagrade värden i matrisen ett avarageRSSI[3][x] = avarageRSSI[3][x-1]; // steg

}

avarageRSSI[3][0] = dDst4; // Det senaste värdet lagras i matrisen avRSSI4 = (avarageRSSI[3][0]+avarageRSSI[3][1]+ // Medelvärde av värden i matrisen avarageRSSI[3][2]+avarageRSSI[3][3])/4; //

} }

fCalcNet2(); // Starta beräkning av koordinater för Nät 1

double xTot = ((sensBx1-xNet1)+xNet2)/2; // Beräkna medelvärdet av de två nätens X-koordinater for (int x=3; x > 0 ; x--){ // Loop för att flytta alla lagrade värden i matrisen ett avarageRSSI[4][x] = avarageRSSI[4][x-1]; // steg

(35)

avarageRSSI[4][0] = xTot; // Det senaste värdet lagras i matrisen avRSSI5 = (avarageRSSI[4][0]+avarageRSSI[4][1]+ // Medelvärde av värden i matrisen avarageRSSI[4][2]+avarageRSSI[4][3])/4; //

double yTot = ((sensAy1-yNet1)+yNet2)/2; // Beräkna medelvärdet av de två nätens Y-koordinater for (int x=3; x > 0 ; x--){ // Loop för att flytta alla lagrade värden i matrisen ett avarageRSSI[5][x] = avarageRSSI[5][x-1]; // steg

}

avarageRSSI[5][0] = yTot; // Det senaste värdet lagras i matrisen avRSSI6 = (avarageRSSI[5][0]+avarageRSSI[5][1]+ // Medelvärde av värden i matrisen avarageRSSI[5][2]+avarageRSSI[5][3])/4; //

/* Endast för loggning */

Serial.print("KF1: "); Serial.print(avRSSI1);

Serial.print(", KF2: "); Serial.print(avRSSI2);

Serial.print(", X1:"); Serial.print(xNet1);

Serial.print(", Y1:"); Serial.print(yNet1);

Serial.print(" | ");

Serial.print(" KF3: "); Serial.print(avRSSI3);

Serial.print(", KF4: "); Serial.print(avRSSI4);

Serial.print(", X2: "); Serial.print(xNet2);

Serial.print(", Y2: "); Serial.print(yNet2);

Serial.print(" | ");

Serial.print(" X: "); Serial.print(avRSSI6);

Serial.print(", Y: "); Serial.println(avRSSI5);

}

(36)

Bilaga 2

Projektdirektiv från Tobias Hedin

References

Related documents

I skollagen står det att alla elever har rätt att utvecklas så långt som möjligt utifrån sina egna förutsättningar och att detta även ska gälla elever som lätt uppnår

Sammanfattningsvis har jag kommit fram till ett antal slutsatser. Attityden till att använda digitala verktyg i skrivundervisningen verkar generellt vara positiv.

Detta tros vara till följd av de krav som finns på Försvarsmakten att både växa som organisation samtidigt som de vill uppnå en numerär jämställd organisation, där både män

När studien utfördes definierades fem grupper av slöseri för att få en övergripande uppfattning om inom vilka områden slöseriet finns (markerade i rött i figur

Resultatet i studien visar att alla deltagande pedagoger anser att Widgit Go och surfplatta bidrar till ökad kommunikation och ökat samspel hos eleverna och en stor fördel är att

Resultaten visar att metoden där vegetationskartor samt andra skikt i GIS används för att identifiera möjliga lokaler för kalktallskogar fungerar men att det inte går att

Då vår enkätundersökning visade att många användare inte ens vet hur de skiljer mellan ett öppet och ett krypterat nätverk (se bild 8) valde vi att även undersöka

Lisa betonar vikten av att läraren själv får bestämma hur arbetet med digitala verktyg ska organiseras i sitt klassrum, då man genom olika sätt att arbeta ändå strävar mot