Designspecifikation Autonom spaning med quadcopter

Storlek: px
Starta visningen från sidan:

Download "Designspecifikation Autonom spaning med quadcopter"

Transkript

1 Designspecifikation Autonom spaning med quadcopter Version 1.0 Projektgrupp: Datum: Status Granskad MP Godkänd Christian A. Naesseth Designspecifikation

2 Projektidentitet E-post: Hemsida: Beställare: Kund: Kursansvarig: Christian A. Naesseth, ISY, Linköping University Tel.: , E-post: Maria Andersson, FOI E-post: Daniel Axehill, Linköpings universitet Tel.: , E-post: Clas Veibäck, Linköpings universitet Tel.: , E-post: Gruppmedlemmar Namn Ansvar Telefon E-post Magnus Blomberg Designasnvarig magbl113 Tobias Hammarling Testansvarig tobha614 Teodor Johnsson teojo382 Emil Klinga Projektledare emikl364 Oliver Larsson olila044 Anton Niglis antni601 Martin Pettersson Dokumentansvarig marpe238 Per Öberg perob757

3 Dokumenthistorik Version Datum Utförda ändringar Utförda av Granskad Komplettering av kommentarer MP,OL MP från BP Andra utkast efter kommentarer MP från handledare Första utkast Designspecifikation

4 Innehåll 1 Inledning Parter Projektets bakgrund Syfte och mål Kortsiktigt mål Långsiktigt mål Användning Definitioner Översikt av systemet Styrmoder Koordinatsystem Huvudbuss Övergripande design Gränssnitt GUI/HMI Program och språk Övergripande design Layout för uppdragsplanering Uppdragstyper Layout för uppdragsföljning Kartor Google Maps API Gmaps FX Bildbehandling Inledning Övergripande design Språk och bibliotek Terminologi Måldetekteringsmoduler Målbildsmatchning Färgmatchning Bakgrundssubraktion Stödfunktioner Kalibrering Bildkvalitetsbestämning Målföljning Målföljning med multipla mål Uppdragsplanering Inledning Övergripande design Program och språk

5 6.4 Terminologi Modulbeskrivning Förbehandling Polygrid Kostnadsmatris TSP-algoritm Interpolering Tidsberäkning Uppdragsföljning Språk och program Regulatorstrukur Referensväljare Signalbehandling Språk och program Kalmanfilter Kommunikation Inledning Övergripande Design Språk och program Termonologi Server-sidan Klient-sidan Tillstånds-data Referens/styr-signaler Videoström Avkodning Räckvidd Plattform Förändringar Säkerhetåtgärder 39 Designspecifikation

6 Autonom spaning med quadcopter 1 1 Inledning Detta är en designspecifikation i projektet Autonom spaning med quadcopter. Projektet görs i samband med kursen TSRT10 - Reglerteknisk projektkurs på ISY, Instutitionen för systemteknik, på Linköpings universitet. Dokumentet presenterar de tillvägagångsätten som är ämnade att användas för att lösa de uppgifter som följer av kraven i kravspecifikationen [3]. 1.1 Parter De delaktiga parterna i projektet är som följande: Kund: Maria Andersson, FOI Beställare: Christian A. Naesseth, ISY Handledare: Clas Veibäck, ISY Examinator: Daniel Axehill, ISY Projektgrupp: 1.2 Projektets bakgrund Intresset för autonoma och obemannade farkoster (UAV:er) har på senare tid vuxit enormt. Möjligheterna som lockar är att kunna utföra speciella typer av uppdrag som är för farliga, eller av annan anledning, olämpliga för människor. Den kanske vanligaste typen av uppdrag är spaning. UAV:n är då utrustad med olika sensorer för att samla in data för den specifika tillämpningen. Detta skulle till exempel kunna vara övervakning av kritisk infrastruktur eller överblicksbilder vid nödsituationer. Farkosten skulle i dessa fall vara ett välkommet inslag för att minska mänskliga fel och målet är att den fungerar så väl att den frigör operatören till att göra annat. 1.3 Syfte och mål Syftet med projektet är att tillämpa inhämtade kunskaper för att skapa en produkt på ett tillvägagångsätt liknande hur arbetet sker i arbetslivet. Projektet ska användas för att ge projektets medlemmar en chans att lära sig mer om hur projektarbete går till samtidigt som kunden får en produkt som har reella användningsområden. Projektets mål kan delas upp i kortsiktiga och långsiktiga mål Kortsiktigt mål Det kortsiktiga målet med detta projekt är att utveckla en demonstrator för enklare högnivåautonomi. Plattformen ska vara baserad på en quadcopter med tillgång till GPSoch strömmad videodata i realtid. Projektet består i att utveckla och implementera funktionalitet, baserat på en quadcopterplattform, för: Att planera ett autonomt uppdrag där plattformen söker av ett område runt en given koordinat efter mål. Designspecifikation

7 Autonom spaning med quadcopter 2 Att planera ett autonomt uppdrag där plattformen övervakar och detekterar mål längs en given sträcka eller i ett givet område. Att utföra planerade uppdrag. Att detektera mål i sensordata som levereras från plattformen då den utför ett uppdrag. Att i mån av behov utföra enkel målfölning av detekterat mål Långsiktigt mål Det långsiktiga målet med projektet är att skapa en bas för en FOI-demonstrator som kan användas för att visa på möjligheterna och nyttan med olika typer av autonom UAVfunktionalitet. Plattformen och den struktur som byggs upp kan även användas för att utveckla och testa nya typer av autonoma funktioner, algoritmer för måldetektion och alogritmer för målföljning eller flera samverkande plattformar. 1.4 Användning Slutprodukten kommer att användas för att demonstrera användningsområden inom autonom spaning med en UAV i form av en quadcopter. Tanken är att FOI efter projektets avslutande ska kunna använda produkten som demostrator samt som en bas för vidareutveckling. Med anledning av detta kommer mjukvaran skrivas så att detta blir så enkelt som möjligt. 1.5 Definitioner I dokumentationen av projektet kommer flertalet områdesspecifika begrepp att användas. Dessa är punktade nedan med tillhörande beskrivning. Plattform: Trajektoria: Standardmål: Täckningsgrad: GUI/HMI: GPS: Med plattform avses quadcoptern sammanlänkad med GPS och videokamera som en enhet. Den kurva som plattformen har som mål att följa vid autonom styrning. Enkla geometrier som bildbehandlingsmodulen klarar av att känna igen. Andelen av en yta som blivit avsökt. Grafiskt användargränssnitt. (eng. Graphical User Interface, Human Machine Interface) Globalt positionssystem Designspecifikation

8 Autonom spaning med quadcopter 3 2 Översikt av systemet Den färdiga produkten ska möjliggöra för en quadcopter att utföra enklare spaningsuppdrag autonomt. I denna kedja ingår uppdragsplanering, uppdragsföljning, reglering samt bildbehandling för måldetektion. Produkten kan i grova drag delas upp i komponenter enligt figur 1. Varje block i schemat har en specifik uppgift där tanken är att varje modul ska kunna utvecklas och fungera separat. Pilarna i figuren representerar beroenden och kommunikationsvägar. I tabell 1 visas en kort förklaring till modulernas ansvarsområden. Figur 1: Övergripande flödesschema för systemets generella upplägg 2.1 Styrmoder Systemet kommer ha två olika styrmoder för plattformen. Den första är full autonom flygning. Autonom flygning kräver tillgång till GPS-signal för att initieras och är således menad för utomhusflygning endast. Vid autonom flygning används uppdragsföljningsmodulen för styrning av plattformen och uppdragsplanering för att generera referenssignal. Den andra moden är manuell styrning, menad för flygning inomhus och eventuella tester utomhus. Manuell styrning ska kunna initieras när som helst under både flygning inomhus och utomhus och görs genom GUI. När manuell styrning initieras förbikopplas uppdragsplanering- och uppdragsföljningsmodulen, styrsignaler erhålls då istället av en joystick. Plattformen kommer därför inte ha någon autonom förmåga vid inomhusflygning. Designspecifikation

9 Autonom spaning med quadcopter 4 Modul Huvudbuss Kommunikation Signalbehandling Bildbehandling Bildavkodare Uppdragsplanering Uppdragsföljning GUI Kartor Lagring Ansvarsområde Kommunikationslager mellan alla systemets moduler. Sköter kommunikation mellan plattformen och huvudbussen. Möjliggör skattning av fysikaliska tillstånd. Använder insamlad videoström för att lokalisera mål. Ser till att bildbehandlingen har rätt datatyp. Tillhandahåller referenssignaler till uppdragsföljningsmodulen. Beräknar styrsignaler till plattformen från givna referenssignaler. Interaktiv planering och utförande av spaningsuppdrag. Tillgodoser GUI med översiktskartor för planering. Möjliggör persistens av data, t.ex. planerade uppdrag, kartor och konfiguration. Tabell 1: Systemets olika moduler och ansvarsområden. 2.2 Koordinatsystem I dokumentet kommer tre olika koordinatsystem att användas för att kunna beskriva alla olika tillstånd och uppkomna situationer. De fyra olika koordinatsystemen är WGS-84, N-frame, B-frame och T-frame vilka går att betrakta i figur 2 och är definierade enligt följande. WGS-84 är koordinatsystemet som används för att beskriva position med GPS koordinater och är definierad efter jordens geometri. WGS-84 är utskrivet som X gps, Y gps där X = longitud, Y = latitud och H = altitud. Navigation frame (N-frame), är ett lokalt koordinatsystem på plattformen som inte följer plattformens rörelser. Det är utifrån denna som yawvinkeln är definierad. N-axeln pekar alltid mot norr, E-axeln mot öster och D-axeln nedåt. Navigation frame är utskrivet som N, E, D. Tracking frame (T-frame), är ett lokalt koordinatsystem med samma riktningar som Navigation frame men med origo fixt i plattformens startpunkt. Body frame (B-frame), är även det ett lokalt koordinatsystem på plattformen. Detta koordinatsystem följer plattformens rörelser och vinklar och är definierad efter plattformens geometri. Koordinatsystemet har x-,y och z-axlarna pekandes rakt fram, åt höger och rakt ner (dessa kallas även roll- tipp- och giraxel), genomgående i rapporten kommer dock de engelska beteckningarna användas (roll, pitch och yaw). Bodyframe är utskrivet som x, y och z. Designspecifikation

10 Autonom spaning med quadcopter 5 Figur 2: Övergripande figur som visar hur de tre olika koordinatsystemen hänger ihop. GPS koordinater är definerade på sfären (föreställande jordklotet), bilden till höger visar en 2-dimensionell bild över hur N-frame och E-frame ligger i varandra men kan ha olika riktningar då D-axeln och z-axeln ligger i varandra. Designspecifikation

11 Autonom spaning med quadcopter 6 3 Huvudbuss Huvudbussen är kärnan för hela systemet och är den första modul som initieras när mjukvaran startas och hålls vid liv under hela den tiden programmet är igång. Modulen är initialt ansvarig för att starta alla systemets övriga komponenter och fungerar sedan som ett kommunikationslager mellan dessa. Flödet för huvudbussens aktiviteter kan ses i figur 3. Figur 3: Flödesschema för huvudbussens två uppgifter. Initiera moduler och tillgodose moduler med svar på de frågor de har. 3.1 Övergripande design Huvudbussen kommer i implementationen vara ett enda objekt vars yttersta och enda ansvar är att skicka vidare data mellan systemets olika komponenter. Med denna struktur uppnås en hög grad av modularitet då modulerna inte har någon som helst vetskap om varandra. Alla frågor en komponent har till det övriga systemet sker via huvudbussen och denna ser då till att svara på ett korrekt sätt. Bussen kommer av denna anledning behöva implementera ett gränssnitt för att alla möjliga kommunikationsvägar ska vara entydigt definierade. Huvudbussen ska vara ett trådsäkert objekt då flera moduler (som körs i separata trådar) kan försöka skriva/läsa samma variabel. 3.2 Gränssnitt För att veta hur huvudbussen ska svara på olika frågor kommer denna vara tvungen att implementera ett gränssnitt (eng. interface). Antag scenariot beskrivet i figur 4 och antag för enkelhetens skull att GUI bara behöver veta aktuell hastighet för plattformen och frågar därför huvudbussen om denna information. Huvudbussen returnerar då värdet på sin egen medlemsvariabel. Värdet som huvudbussen har tillgång till ska hållas uppdaterad av kommunikationsmodulen. Hur dessa värden sätts är definierade i ett gränssnitt. Designspecifikation

12 Autonom spaning med quadcopter 7 Figur 4: Flödet då en modul behöver ställa en fråga till en annan modul. I detta fall skulle huvudbussen behöva implementera ett gränssnitt MainBusInterface enligt kodutsnitt 1. Dessa gränssnitt definierar fullständigt kommunikationen mellan de två komponenterna så att det inte råder något tvivel om hur detta ska gå till. Förutom att detta ger moduläritet och tydlig dokumentation om vilka frågor som kan ställas ger det också en extra kontroll då modulerna kompileras. Skulle en modul inte uppfylla ett gränssnitt går koden inte att kompilera och kompilatorn talar om vad som inte är uppfyllt. Kodutsnitt 1: Exempel på ett gränssnitt. public interface MainBusInterface { double getcurrentplattformspeed (); void setcurrentplattformspeed ( double speed ); //... } class MainBus implements MainBusInterface { public void setcurrentplattformspeed ( double speed ){ this. currentplatformspeed = speed ; } public double getcurrentplattformspeed (){ return this. currentplatformspeed ; } //... } class Communication { private void updatespeed (){ this. mainbus. setcurrentspeed (55.0) ; } } På detta sätt kommer gränssnitt behöva skapas för samtliga moduler. Ett gränssnitt implementeras av modulerna själva och ett implementeras av huvudbussen. En fullständig lista över de gränssnitt som behöver skapas kan ses i tabell 2. Gränssnittets namn MainBussInterface GUIInterface StorageInterface CommunicationInterface ImageProcessingInterface SignalProcessingInterface MissionPlannerInterface MissionControlInterface Tabell 2: Alla nödvändiga gränssnitt. Förutom dessa kommer alla moduler även tvingas implementera ett mer generellt gränssnitt ModuleInterface. Detta ska tvinga alla moduler att ha gemensamma metoder för att Designspecifikation

13 Autonom spaning med quadcopter 8 hantera mer generella uppgifter som att starta och stoppa modulen. Detta ger huvudbussen möjlighet att hantera samtliga moduler utan att själv behöva veta exakt hur detta sker i varje enskild modul. Ett sådant gränssnitt kan ses i kodutsnitt 2. Kodutsnitt 2: Ett generellt gränssnitt för alla moduler. public interface ModuleInterface { void initialize (); void destroy (); //... } Varje modul kommer använda en egen tråd för att dessa ska köras parallellt. Modulerna kommer frekvent att skriva och läsa från huvudbussen och med denna anledning behöver huvudbussen göras trådsäker. Detta är en enkel uppgift i Java då primitiva datatyper är trådsäkra automatiskt och övriga typer görs trådsäkra genom att använda ett kodblock enligt kodutsnitt 3. Blocket fungerar som en vakt som bara låter en tråd i taget använda den kod som omsluts. Om flera trådar vill använda samma del samtidigt kommer en åtkommstkö automatiskt att upprättas. Kodutsnitt 3: Trådsäkerhet i Java. synchronized { // Thread safe code goes here... } Designspecifikation

14 Autonom spaning med quadcopter 9 4 GUI/HMI Modulen GUI/HMI är den modul som ansvarar för att visa slutanvändaren ett gränssnitt för att planera och följa uppdrag. 4.1 Program och språk För att snabbt och enkelt kunna bygga grafiska gränssnitt behövs någon form av grafikbibliotek. Sådana bibliotek finns till alla de stora språken (C++/Java/Python mm) men valet föll på Java FX. Detta bibliotek tillsammans med tillägget Screen Builder gör det mycket enkelt att bygga GUI:s med standardkomponenter som flikar, knappar, dialogrutor. Resultatet från byggandet är en XML-fil som med två rader kod kan importeras till en Java-applikation. 4.2 Övergripande design GUI:t har två huvudsakliga uppgifter, uppdragsplanering och uppdragsföljning. Slutanvändaren är bara intresserad att nå en av dessa delar i taget. Av denna anledning är det naturligt att dela in programmet i just dessa två delar. I användargränssnittet sker detta genom att ha två flikar (se figur 5) så att bara en av dessa kan visas i taget. Figur 5: Användargränssnittets huvudsakliga uppdelning. Denna uppdelning resulterar i två programklasser som representerar flikarna. Vardera klass är ansvariga för sin flik och all användarinteraktion med denna. Interaktion kan t.e.x vara klickande eller skrivandet av ny text i en textruta. Då interaktion med kartor utgör en så stor del av programmet bröts logiken för detta ut till två separata klasser. En lista över de fyra huvudklasserna för det grafiska användargränssnittet kan ses i tabell 3. Programklass PlanningController ExecuteMissonController PlanningMap MissionMap Ansvar Interaktion med planerings-fliken Interaktion med utförande-fliken Interaktion med planeringskartan Interaktion med karta under uppdrag Tabell 3: Användargränssnittets huvudsakliga programklasser. 4.3 Layout för uppdragsplanering Under fliken uppdragsplanering finns alla nödvändiga funktioner för att planera uppdrag. En skiss över flikens upplägg kan ses i figur 6. Under planeringen av ett uppdrag ska användaren ha möjlighet att specificera ett namn för uppdraget, vilken typ av uppdrag det handlar om samt från en lista med standardmål kunna välja ett objekt som plattformen ska leta efter. Här finns även alternativ för vilken höjd uppdraget ska utföras på. Designspecifikation

15 Autonom spaning med quadcopter 10 Figur 6: Schematisk skiss över användargränssnittet för uppdragsplaneraren. När den grundläggande informationen om uppdraget finns ska användaren via översiktskartan specificera relevanta GPS-koordinater för uppdraget. Exakt vilka typer av koordinater beror på vilken typ av uppdrag som valts (se avsnitt 4.3.1). Gemensamt för alla uppdrag är dock att förbjuda områden ska kunna specificeras. Detta görs genom att koordinater placeras ut som utgör en godtycklig polygons gränser. Under processen då koordinater placeras ut kan användaren när som helst välja ta bort koordinater från kartan som blivit fel. När detta är färdigt kan uppdraget i sin helhet sparas. När detta sker kommer ett objekt som representerar uppdraget skickas till huvudbussen för lagring. Flödet för denna process kan ses i figur 7. Figur 7: Signalflöde vid sparande av ett uppdrag Uppdragstyper Under planeringen ska användaren kunna specificera tre olika typer av uppdrag definierade enligt tabell 4. Indatan kan även kompletteras med koordinater för förbjudna områden. Uppdragstyp Avsökning runt punkt Avsökning längs bana Avsökning inom område Nödvändig indata En GPS-koordinat och sökradie. Lista med GPS-koordinater som definierar en bana. Lista med GPS-koordinater som definierar områdets gränser. Tabell 4: Användargränssnittets huvudsakliga programklasser. Designspecifikation

16 Autonom spaning med quadcopter Layout för uppdragsföljning När ett uppdrag har skapats och användaren bestämmer sig för att utföra detta används fliken uppdragsföljning. Här väljs ett tidigare sparat uppdrag i en rullista. Uppdraget presenteras på översiktskartan. För att starta uppdraget trycker användaren på knappen Starta uppdrag. Under uppdraget ska gränssnittet visa nödvändiga notifikationer, WIFI-status, GPSstatus, återstående tid, sträcka, videoström och plattformens position på en karta. När som helst under uppdraget ska användaren kunna trycka på Avsluta uppdrag. Figur 8: Schematisk skiss över användargränssnittet för uppdragsföljningen. 4.5 Kartor Översiktskartorna används vid planering och vid uppdragsföljning utgör en stor del av användargränssnittet. Användaren ska enkelt kunna scrolla runt på kartan, zooma, placera ut eller ta bort koordinater under planeringen och under utförandet även kunna följa plattformen på kartan då den flyger. För att underlätta detta arbete användes existerande bibliotek för att lägga grunden för denna funktionalitet. Ett mycket populärt API för detta är Google Maps Google Maps API Google Maps är ett mycket välbeprövat bibliotek som ges ut av Google. Dessa kartor har från början en hel uppsjö av funktionalitet som alldeles utmärkt passar projektets behov. Kartorna tar hand om klick -händelser för att placera ut markörer, ger möjlighet att växla mellan olika typer av kartor samt gör det mycket enkelt att utöka befintlig funktionalitet. Google Maps är dock skrivet i Javascript och är ursprungligen avsedd för att visas i webbläsaren. Då kartorna ska in-bäddas i en Java-applikation krävs någon form av kompatibilitetslager. Då Google maps använder Googles servrar kräver detta att kartorna laddas över internet. Kartorna kan dock sparas i en cache vilket gör dem tillgängliga offline. Designspecifikation

17 Autonom spaning med quadcopter Gmaps FX Gmapsfx är ett open source -bibliotek som fungerar som en översättare mellan Java och Javascript för Google Maps API. Biblioteket gör det möjligt att interagera med kartorna med ren Java-kod (Java FX) istället för att behöva skriva Javascript. Tyvärr är Gmapsfx fortfarande i sin linda och stödjer bara en bråkdel av API:t men detta verkar inte vara något problem då all funktion som krävs i projektet är inkluderad. En schematisk bild över signalflödena för kartmodulen visas i figur 9. Figur 9: Signalflöden för kartmodulen. Designspecifikation

18 Autonom spaning med quadcopter 13 5 Bildbehandling I detta kapitel beskrivs bildbehandlingsmodulens uppgifter och algoritmer för att utföra dessa. 5.1 Inledning Bildbehandlingsmodulen ska sköta det datorseende som krävs för att utföra uppdrag. Bildbehandlingsmodulens uppgift är att ur en bildström kunna detektera och följa specifika föremål. Syftet med denna del är att ge en övergripande insikt i hur bildbehandlingsalgoritmerna kommer att implementeras. Någon pseudokod presenteras ej utan funktionernas principiella utförande är i fokus. Detektering ska kunna ske med tre olika algoritmer. Färgmatchning kommer att användas för att detektera objekt med en specifik färg och beskrivs i avsnitt 5.6. Objekt ska kunna urskiljas genom jämförelse med en mall. Detta görs med målbildsmatchning som bygger på att jämföra intressepunkter från bildströmmen med intressepunkter i en mall-bild. Denna metod beskrivs i avsnitt Den tredje metoden som kommer att användas är bakgrundssubtraktion och används för att detektera föremål som rör sig. Genom att jämföra med tidigare tillstånd kan man på så sätt bedöma vad som är bakgrund och vad som har rört sig. Metoden beskrivs i avsnitt 5.7. Efter detektering ska målföljning utföras, denna algoritm är beskriven i avsnitt Bildbehandlingsmodulen ska även kunna kalibereras och bestämma bildkvalitet (hur mycket rörelseoskärpa det är). Dessa algoritmer är beskrivna i avsnitt respektive Grundläggande terminologi och bildbehandlingstermer som är bra att känna till beskrivs i avsnitt Övergripande design För varje bildruta, från videoströmmen, som ska behandlas används designen beskriven i figur 10. Beroenden framgår av kopplingarna. För att exempelvis målbildsmatchning ska kunna köras behöver förbehandling och extrahering av intressepunkter köras. Designspecifikation

19 Autonom spaning med quadcopter 14 Figur 10: Flödesschema för bildbehandling Under förbehandlingen kan exempelvis bildkvalitet skattas. De tre beskrivna detektionsmetoderna förklaras utförligare under respektive rubrik. De tre detektionsmodulerna har samma struktur på utsignalen varför målföljningen kan hantera de olika modulernas resultat. Utsignalen från modulerna innehåller bland annat position på detekterat mål och målets storlek. De måldetektioner som görs i de tre måldetekteringsmodulerna kan visualiseras utan att använda målföljningsmodulen. 5.3 Språk och bibliotek Bildbehandlingsmodulen utvecklas i Java med IDE:t Eclipse, detta kan dock komma att ändras om det framkommer att ett annat språk passar projektets helhet bättre. Bildbehandlingsbiblioteket OpenCV används för att utföra grundläggande bildbehandlingsoperationer för datorseende. 5.4 Terminologi Nedan beskrivs några grundläggande koncept som kommer att användas i bildbehandlingsalgoritmerna. Designspecifikation

20 Autonom spaning med quadcopter 15 Intressepunkter och Deskriptorer: Intressepunkt är en position i bildrymden. Till varje intressepunkt hör en så kallad deskriptor (feature på engelska). En deskriptor håller information om intressepunktens omgivning. Exempel på sådan information är ett histogram över färgvärdena på pixlar inom en radie kring intressepunkten. Deskriptorn kan också innehålla en sannolikhet för att intressepunkten ligger på en kant i bilden. Överensstämmelse: Ett mått på hur väl intressepunkters deskriptorer överensstämmer med det sökta intressepunkter hos objektets deskriptorer. SIFT: SIFT är en metod för att extrahera skal- och rotationsinvarianta intressepunkter. Morfning: Morfning innebär att pixelvärden i bilden ändras beroende på närliggande pixlar. Objekt kan expanderas och på så vis kan glapp fås bort. Objekt kan även kontraheras. Dessa metoder kallas erosion och dilation och är de enklaste morfologiska operationerna, men det finns fler. De olika operationerna används för att tydliggöra hur objektet ser ut. 5.5 Måldetekteringsmoduler Nedan beskrivs de detekteringsalgoritmer som kommer att användas i projektet Målbildsmatchning Målbilder analyseras för att beskriva intressepunkters omgivning i målbilden. Bilder från videoströmmen analyseras på liknande sätt. Intressepunkternas omgivning i de nya bilderna jämförs med målbildernas intressepunkter. Mängden liknelser i intressepunkter kan antas öka då ett mål, beskrivet av en målbild, finns i videoströmmen. In: Förbehandlad bild Ut: Måldata Figur 11: Flödesschema för målbildsmatchning Designspecifikation

21 Autonom spaning med quadcopter 16 Intressepunkter: Intressepunkter och deskriptorer för dessa tas fram i det initiala steget. Deskriptorerna kan tas fram med exempelvis SIFT. Överensstämmelse mot målbilder: Deskriptorerna jämförs med deskriptorer för målbilder och samband mellan dessa beräknas. Färdig: Om en tillräckligt stor andel matchningar finns i en målbild kan resultatet anses färdigt och en målbildsmatchning är klar. RANSAC: Om behov finns kan resultatet förbättras i RANSAC-steget. En slumpmässig mängd av överensstämmelser väljs. En transformering skapas från nuvarande intressepunkter till dess motsvarighet i målbilden. Mängden överensstämmelser som väl uppfyller transformeringen beräknas. Detta görs till dess att mängden överensstämmelser är tillräckligt stor. I slutsteget kan transformeringen beräknas med hjälp av alla överensstämmande intressepunkter för att förbättra resultatet. Transformeringen kan senare användas för att exempelvis markera ut en ram runt objektet alternativt en förutbestämd detalj i objektet. Målföljning: Informationen skickas vidare till målföljningsmodulen. 5.6 Färgmatchning Färgmatchning används för att detektera bilddata med en viss färg. Detta kan vara lämpligt om ett objekt med någon väldigt specifik färg ska detekteras mot en bakgrund med annan färg. T.ex röd boll mot grönt gräs i ett enkelt fall. Algoritmen för färgmatchning synliggörs i figur 12. In: Förbehandlad bild Ut: Måldata Designspecifikation

22 Autonom spaning med quadcopter 17 Figur 12: En schematisk bild över hur färgmatchningen kommer att ske. RGB till HSV: I algorithmens första steg förs färgskalan över till en mer lättbehandlad skala HSV, som står för (Hue-Saturation-Value) och är en cylindrisk representation av färgskalan. Tröskling av kanaler: I nästa steg trösklas HSV-kanalerna, vilket gör att enbart den önskade färgen tas fram. Trösklingen som görs beror på vilken färg som ska extraheras. Tröskelvärden för färger på de objekt som ska detekteras måste tas reda på. Morfning: Pixelvärden måste sedan morfas på rätt sätt för att få bort eventuella luckor och göra objektet mer igenkännligt. Formmatchning: En enkel formmatchning görs för att utesluta objekt som är väldigt olika till form. Avgränsande lådor: Varje objekt i rörelse representeras sedan av ett fyrkantigt område i bilden, en så kallad avgränsande låda. Varje avgränsande låda tilldelas också ett id. Målföljning: Extraherad information skickas vidare till målföljningsmodul. Designspecifikation

23 Autonom spaning med quadcopter Bakgrundssubraktion Denna metod används för att detektera och kunna följa objekt som befinner sig i rörelse. Metoden är illustrerad i flödesschemat nedan. Nedan följer också en beskrivning av varje delsteg i flödesschemat. In: Förbehandlad bild Ut: Måldata Figur 13: Flödesschema för Bakgrundssubtraktion Intressepunkter: I första steget extraheras intressepunkter med tillhörande deskriptorer ur den inkommande bilden. Överensstämmelse mot föregående bild: Sedan jämförs den nuvarande bildens deskriptorer med föregående bildens deskriptorer. Ur jämförelsen beräknas vilken intressepunkt i nuvarande bild som stämmer bäst överens med en intressepunkt i föregående bild. Transformation: Genom att undersöka hur intressepunkterna förflyttat sig kan man beräkna hur mycket kameran förflyttat sig. Kameraförflyttningen beskrivs här av Designspecifikation

24 Autonom spaning med quadcopter 19 en transformationsmatris. Med hjälp av transformationsmatrisen kan en del av den föregående bilden transformeras in i den nuvarande bildens koordinatsystem. (a) Bildtransformation (b) Bildtransformation Figur 14: Bildtransformation i två steg Bakgrundssubtraktion: En pixelvis subtraktion utförs mellan nuvarande bild och den transformerade föregående bilden. Subtraktionen kan endast genomföras på de område där bilderna överlappar. Om bilderna innehåller ett objekt i rörelse kommer objektet synas som en differans mellan bilderna. Morfning: Morfologiska operationer utförs på resultatet för att särskilja närliggande sammanhängande områden och förbättra deras utseende. Avgränsande lådor: Varje objekt i rörelse representeras sedan av ett fyrkantigt område i bilden, en så kallad avgränsande låda. Varje avgränsande låda tilldelas också ett id. 5.8 Stödfunktioner Nedan beskrivs de stödfunktioner som ska implementeras Kalibrering För kunna transformera positioner i 2D bildkoordinater till en 3D position behöver man ta fram en kameramatris. Vid kamerakalibreringen bestämmer man en kameramatris, vilken innehåller specifika parametrar för kamerahårdvaran. OpenCV erbjuder en kalibreringsfunktion som modulen kommer kunna använda sig utav Bildkvalitetsbestämning Innan detekteringsalgoritmerna används ska bildens kvalitet bestämmas i form av i fallet om hur mycket rörelseoskärpa det är i bilden. Detta görs genom att kolla kanter i bilden och hur breda de är. Algoritmen beskrivs av figur 15. Till gråskala: Bildkanalerna transformeras till gråskala. Sobelfilter: Ett sobelfilter används för att ta fram kanter i bilden Designspecifikation

25 Autonom spaning med quadcopter 20 Figur 15: Flödesschema för bestämning av bildkvalitet Hitta kantbredd: Lokala maximum i horisontellt och vertikalt led tas fram. Genom att gå igenom bilden kolonnvis respektive radvis. Skarpa kanter kommer ge höga lokala maximum och oskarpa kanter kommer ge breda låga lokala minimum. Medelvärde: Medelvärde på lokala maxima i horisontellt led respektive vertikalt led tas var för sig. På så vis fås ett mätvärde på estimerad skarphet i de olika leden. Beslut: Beslut fattas om huruvida bildkvaliteten är tillräckligt bra för att detekteringsalgoritmer ska kunna användas. Vad som är lämpligt trösklingsvärde testas fram Målföljning Målföljningsmodulen syftar till att förbättra följning och detektion av mål som befinner sig i bild under längre tid. Modulen har data över vilka mål som fanns i föregående bild. Nya detektioner matchas mot tidigare och mål kan därför följas över tid. Ett filter är applicerat på målens tillstånd och möjliggör därför en bättre skattning. Ett linjärt Kalmanfilter kan implementeras och lösa de grundläggande kraven. Till varje objekt finns information om position och hastighet i världskoordinater och bildkoordinater. Varje objekt har även ytterligare information om exempelvis färg, om detektionen är gjord med hjälp av färgmatchning. Koordinaterna beskrivs lokalt i T- frame. Designspecifikation

26 Autonom spaning med quadcopter 21 Figur 16: En schematisk bild över hur målföljningen kommer att ske. Tidsuppdatering av tillstånd: Under tidsuppdateringen uppdateras varje måls tillstånd enligt dess rörelsemodell. Jämföra objekt med tidigare tillstånd: Detekterade objekt jämförs med tidigare objekt och en koppling mellan tidigare och nya objekt bestäms. Mätuppdatering av tillstånd: De positionsmätningar som kan kopplas till ett objekt utgör mätningar för mätuppdateringssteget. Deras skattade nya 2D-bildposition korrigeras med hjälp av kameraförflyttningen som är beräknad i tidigare steg. Under mätuppdateringen uppdateras tillståndet för objekten med avseende på de nya mätningarna. De tre stegen visas grafiskt i Figur 17. (a) Tidssuppdatering från föregående tillstånd. (b) Mathching med detekterade objekt. Figur 17: Målföljning i tre steg (c) Bestäm och uppdatera tillstånd Målföljning med multipla mål Ett problem som uppstår med målföljning är att multipla mål kan överlappa varandra. Detta är endast ett problem då målen detekteras av samma modul eller då målen blir svåra att urskilja. Då multipla mål inte behöver hanteras enligt krav i kravspecifikationen löses möjliga problem endast i mån av tid. Designspecifikation

27 Autonom spaning med quadcopter 22 6 Uppdragsplanering 6.1 Inledning Uppdragsplaneringsmodulens uppgift är att bestämma plattformens trajektoria vid avsökning av en yta eller längs en förutbestämd sträcka. Trajektorian beräknas av en algoritm som har tillgång till ett antal givna GPS-punkter, vilka bildar ett område alternativt en sträcka. Utsignal från uppdragsplaneringsmodulen är referensdata i form av koordinater som beskriver den beräknade trajektorian. Modulen är menad att köras innan uppdraget initieras och generera referensdata som sedan används under hela uppdraget. I mån av tid kommer uppdragsplaneringen konstrueras sådan att den inte endast ska köras innan initiering av uppdrag, utan även ha möjlighet att korrigera för eventuella nytillkomna situationer. Som exempelvis att områden har missats och behöver eftersökas i slutet av uppdraget. 6.2 Övergripande design Uppdragsplaneringsmodulen kommer att ta emot objektorienterad data som beskriver vilken typ av uppdrag som ska planeras samt de kriterier som råder. Med kriterier avses de koordinater som definierar område/färdväg samt förbjudana områden. Denna information sorteras sedan för att därefter skickas till respektive funktion. Den slutförda processen resulterar i en fullständig trajektoria. I figur 18 definieras informationsflödet genom modulen. Beroenden framgår av kopplingarna. Designspecifikation

28 Autonom spaning med quadcopter 23 Figur 18: Flödesschema för uppdragsplaneringsmodulen. Under förbehandlingen sorteras datan ut och läggs i olika strukturer så att den på ett effektivt och enkelt sätt kan användas av funktionerna som beskrivs utförligare nedan. Således kan indatan vara av varierande karraktär men utdatan kommer alltid att vara en trajektoria beståendes av koordinater. 6.3 Program och språk Mjukvaran kommer att vara skriven i Java för enkel kommunikation med det övriga systemet. En av funktionerna kommer däremot att vara skriven i C-kod då detta är ett externt program som löser problem av typen TSP (se sektionen Terminologi). 6.4 Terminologi Vid utvecklandet av planeringsalgoritmen har en hel del teori från optimeringsläran implementerats. För att enklast beskriva dessa delar kommer därför de termer som är specifika för detta fackområde att användas. Utförligare beskrivningar av dessa kan återfinnas nedan. Designspecifikation

29 Autonom spaning med quadcopter 24 TSP: Ordet är en förkortning av Traveling salesman problem som är ett välkänt problem inom optimeringsläran. Det kan beskrivas som problematiken med att hitta den kortaste vägen genom ett givet antal städer med olika positioner. Ett problem vars komplexitet följer fakultetes funktion och därmed blir väldigt svårlöst för ett stort antal noder. LKH Lin-Kernighan heuristic, detta är i dagsläget den algoritm som löst det största handelsresandeproblemet någonsin av alla befintliga algoritmer, närmare bestämt en instans på noder [2]. 6.5 Modulbeskrivning Det finns många sätt att angripa areatäckningsproblem, den gemensamma nämnaren är att resultatet nästan alltid blir en kompromiss mellan beräkningkomplexitet och optimalitet. Via grundliga förstudier hittades LKH som ska ha en unik lösnings-heuristik som gör den väldigt snabb. Enligt specifikationerna bör den därför inte ha några problem med att lösa de aktuella problemen vars nodantal aldrig kommer överstiga cirka 2000 noder eftersom den möjliga avsökningsarealen begränsas av WIFI-anslutningens räckvidd (förutsatt att kameran har ett omfång på minst 4m 2 ). Problemet kommer därav ställas upp som ett handelsresandeproblem där noder fördelas ut över täckningsarean. Hur väl trajektorian utformas begränsas därför till kostnadsmatrisen som indirekt blir problemformuleringen, eftersom LKH utlovar en optimal lösning utifrån hur problemet formulerats. Fördelarna med detta blir även att de flesta kriterierna som förbjudna områden, områdesgränser och en strävan om trajektoriamönster kan implementeras som straff direkt i konstnadsmatrisen. Implementationen delas upp på olika funktioner som ansvarar för att lösa separata delar av huvuduppgiften att ta fram en trajektoria. Linjesökning Vid linjesökning används enbart ett begränsat antal av de funktionerna som finns tillgängliga i modulen. Informationen skickas direkt till interpoleringen, se flödesschema i figur 18. Areatäckning i figur 18. Vid areatäckning används samtliga funktioner i en ordning enligt flödesschemat Förbehandling Eftersom modulen har som uppgift att lösa olika typer av problem måste inobjektet tolkas så att rätt funktioner kan anropas. Vid areatäckning delas även informationen upp i modulspecifika strukturer, där koordinater för förbjudna områden och områdeskoordinaterna läggs var för sig. Insignal Utsignal Uppdragstyp Områdeskoordinater alt. linjekoordinater Förbjudna områden, koordinater Funktionsanrop Områdesgränser (Koordinater) Tabell 5: Signalflöde för förbehandlingen Designspecifikation

30 Autonom spaning med quadcopter Polygrid Funktionen tar emot koordinater som definierar det/de områden som ska sökas av. Utifrån dessa bestäms en övre respektive undre områdesgräns för latituden och longituden. Dessa bildar ett rektangulärt område där noder placeras ut efter ett förutbestämt antal per areaenhet, enligt tidigare resonemang kring WIFI-länkens räckvidd och kamerans täckningsgrad bör detta vara runt 0.25 noder/m 2. I ett nästa steg skapas en eller flera polygoner beroende på hur många områden som ska sökas av. Därefter tas alla noder som ligger utanför dessa bort. Sedan subtraheras även de noder som ligger i ett förbjudet område ifrån lösningen. Resultatet är en lång array innehållandes områdeskoordinater, dvs noder. Insignal Utsignal Mönstertyp Områdesgränser (Koordinater) Noder (i en array) Tabell 6: Signalflöde för polygrid Kostnadsmatris Denna funktion sköter all problemspecifiering då trajektorian formas utifrån de kostnaderna som är definierade här. I ett första steg skapas en grundmatris utifrån avstånden mellan noderna. Avståndet beräknas som en energi för att eliminera problemet med negativa avstånd till följd av numeriska koordinater (ekvation 2). LAT = C = lat 1... lat n..... lat 1... lat n LON = lon 1... lon n..... lon 1... lon n lat = 1,..., n lon = 1,..., n n = Antal noder (1) (LAT LAT T ) 2 + (LON LON T ) 2 (2) I ett andra steg studeras trajektoriamönstret med tre olika alternativ. Antingen med en strävan efter att flyga lattitudinellt, longitudinellt eller korsvis. Detta implementeras genom att minska straffet för de nodpar som ligger på samma latitud, longitud eller korsvis. För att snabba upp algoritmen undersöks enbart noder i anslutning till varandra samt att enbart den övre triangeln behandlas, eftersom denna kan speglas då kostnadsmatrisen är symmetrisk. Slutligen kollas områdesgränser. Här studeras en eventuell skärning mellan nodpar och förbjudna områden alternativt yttre gränser, detta illustreras i figur 19. En sådan skärning straffas additativt så att vägen mellan två områden ska få likvärdigt straff. I annat fall skulle algoritmen alltid sträva efter att sluta så nära ett annat område som möjligt även om detta i meningen av antalet svängar inte skulle vara optimalt. Designspecifikation

31 Autonom spaning med quadcopter 26 Figur 19: Området i grått är sökområdet, nodpar inom detta är sammanbundna med gröna linjer. Det vita området i mitten är ett förbjudet område och alla nodpar som korsar detta har målats med röda linjer för att illustera att dessa ska straffas. Insignal Utsignal Noder Områdesgränser (Koordinater) Kostnadsmatris Tabell 7: Signalflöde för kostnadsmatris TSP-algoritm För lösning av TSP-problemet kommer som tidigare nämnt en extern funktion att användas (LKH) [2]. Denna är en algoritm skriven i C-kod som kommer att anropas ifrån Javaprogrammet. Utobjektet är den sökta trajektorian. Insignal Utsignal Kostnadsmatris Trajektoria (obehandlad) Tabell 8: Signalflöde för LKH Interpolering Denna funktion har två huvuduppgifter, dels att jämna ut kurvor så att trajektorian inte innehåller några skarpa kanter samt att interpolera fram ett lämpligt antal punkter som stämmer överens med systemets uppdateringsfrekvens. Skarpa kanter tvingar plattformen till hastiga rörelser som kan generera stora vinkelutslag vilket i sin tur kan utlösa Large Designspecifikation

32 Autonom spaning med quadcopter 27 Angle Alarm, en skyddsåtgärd som stänger av quadcoptern vid för stora vinklar. Därför är detta något som bör undvikas i bästa möjliga mån. Uppgiften kommer att lösas med kubiska spline-funktioner som binds samman med knota-knot ändvillkor. Detta innebär att tredjederivatan ska vara samma vid varje nod, dvs. förändringshastigheten för kurvan blir densamma och därmed kommer trajektorian både få mjuka kurvor och kunna interpoleras med valfri samplingsfrekvens [1]. Funktionen som ska beskriva trajektorian, S(t) kan delas upp i två subfunktioner beroende på om de omgivande koordinaterna ligger i linje med varandra eller om trajektorian svänger i enlighet med ekvation 3. { kx + m, koord. i linje S(t) = a 0 x 3 + a 1 x 2 (3) + a 2 x + a 3, kurvor Insignal Utsignal Trajektoria (obehandlad) Trajektoria Tabell 9: Signalflöde för interpoleringen Eftersom noderna är utplacerade så att hela området täcks under förutsättning att varje nod passeras minst en gång kommer interpolationen inte att påverka täckningsgraden. Detta eftersom funktionen S(t) är uppdelad på intervall mellan varje nodpar i trajektorian. Intervallens olika funktioner är därav baserade på knot-a-knot -ändvillkoren och nodernas position, varpå deras existens i den slutgiltiga trajektorian kan garanteras. Designspecifikation

33 Autonom spaning med quadcopter Tidsberäkning I tidsberäkningen utvärderar modulen hur lång tid uppdraget kan förväntas ta, detta är för att säkerställa att uppdraget är genomförbart med den batterikapacitet som plattformen har. Tiden för uppdragen blir en relativt vag skattning som baserar sig på trajektorians distans och den hastigheten som plattformen uppskattas kunna hålla beroende på dess utformning. Då Uppdragsutförandet förväntas ta längre tid för en väldigt kurvig trajektoria kommer den förväntade hastigheten att anta olika magnituder beroende på trajektorians gradient. Tre stycken olika hastigheter kommer att användas där den första är för raksträckor, den andra för svaga kurvor och den tredje för skarpa kurvor, se ekvation 4 där T är tröskelvärden. Därefter kan tiden integreras fram enligt ekvation 5. Den beräknade tiden syftar enbart till att ge en uppfattning om hur vida det är möjligt att genomföra det planerade uppdraget, beslutet lämnas således åt operatören. v 1, om S(t) T 1 v(t) = v 2, om T 1 S(t) T 2 (4) v 3, om S(t) T 2 t = s 0 s dt (5) v(t) Insignal Utsignal Trajektoria Tidsskattning Tabell 10: Signalflöde för tidsskattning Designspecifikation

34 Autonom spaning med quadcopter 29 7 Uppdragsföljning Uppdragsföljningsmodulen har som uppgift att läsa av referensdata, beräkna styrsignaler och skicka tillbaka dessa till huvudbussen. Informationen mellan huvudbussen och modulen specificerar ej vilket uppdrag som utförs utan består endast av referensdata. Modulen har därför ingen vetskap om vilken typ av uppdrag som utförs utan beräknar endast styrsignaler från den indata som erhålls. Därav består uppdragsföljningsmodulen enbart av en reglerkrets med insignaler i form av referensdata och tillstånd, och utsignal i form av styrsignaler. Alla signaler som uppdragsföljningen kommer arbeta med finns specificerade i tabell 11. Regulatorstrukturen kommer bestå av flertalet P-regulatorer kopplade på sådant sätt att önskade egenskaper uppnås. Eftersom reglering av position med hjälp utav hastigheter av naturen är integrerande räcker enbart P-regulatorer för uppgiften. För att regulatorsystemet ska få rätt referenssignaler och alla koordinater ska bli bekräftat avsökta kommer en förbehandling av referensdatat att implementeras, kallad waypointmanager. Insignal Utsignal Tillstånd Position, [X gps, Y gps ] Hastighet, [ẋ, ẏ] Euler vinklar, [φ,θ] Höjd, [h] Yaw, [ψ] Referensdata Referensposition, [X gps,ref, Y gps,ref ] Referenshöjd, [h ref ] Referensyaw, [ψ ref ] Styrsignaler Pitch, [θ ref ] Roll, [φ ref ] Yawrate, [ ψ ref ] Vertikal hastighet, [ḣ] Styrsignaler (för debugging) Position, [X gps,u, Y gps,u ] Hastighet, [ẋ ref, ẏ ref ] Tabell 11: Signalflöde Uppdragsföljningsmodulen 7.1 Språk och program Modulen kommer att skrivas i Java. Detta är dock något som kan komma att ändras beroende på hur det övriga systemet utformas då modulen i sig inte är låst till något specifikt språk. 7.2 Regulatorstrukur Regulatorkretsen kommer bestå av sju stycken P-regulatorer vilka till viss del kommer ligga i serie och till viss del parallellt. Regulatorerna består av: höjd-, positions-, hastighets-, Designspecifikation

35 Autonom spaning med quadcopter 30 pitchvinkel-, rollvinkel- och yawreglering. Kretsen är uppbyggd sådan att utsignal från positionsreglering är en hastighet och således också insignal till hastighetsreglering, utsignal från hastighetsreglering är en roll- och pitchvinkel som i sin tur är insignal till rolloch pitchvinkelreglering, dessa regulatorer ligger alltså i serie. Parallellt med dessa ligger höjd- och yawvinkelreglering. En översiktsbild av regulatorstrukturen går att beskåda i figur 20. I positionsregleringen kommer en enkel funktion att omvandla hastigheter i N-frame koordinatsystemet till plattformens eget koordinatsystem, B-frame. Omvandlingen kommer ske enligt ekvation (6) [ẋ ] [ ] [Ṅ ] cos(ψ) sin(ψ) = ẏ sin(ψ) cos(ψ) Ė (6) Figur 20: Regulatorskretsen uppdelad i alla delblock för att åskådliggöra regulatorstrukturen. 7.3 Referensväljare Referenssignaler i position, höjdled och yawvinkel kommer genomgå en viss förbehandling innan de används av regulatorerna. Förbehandling är menad att se till att rätt data går vidare till regulatorsystemet och alla referenskoordinater kommer bli nådda. Ett exempel på hur referensväljaren kommer arbeta finns presenterad i figur 21. Designspecifikation

Systemskiss Autonom spaning med quadcopter

Systemskiss Autonom spaning med quadcopter Systemskiss Autonom spaning med quadcopter Version 1.0 Projektgrupp: Datum: 2014-09-25 Status Granskad TH, OL, AN, MP 2014-09-25 Godkänd Christian A. Naesseth 2014-09-25 Systemskiss 2014-09-25 @gmail.com

Läs mer

Testprotokoll Autonom spaning med quadcopter

Testprotokoll Autonom spaning med quadcopter Testprotokoll Autonom spaning med quadcopter Version 1.0 Projektgrupp: Datum: 2014-12-03 Status Granskad Tobias Hammarling 2014-12-03 Godkänd Christian A. Naesseth 2014-12-03 Projektidentitet E-post: Hemsida:

Läs mer

Testprotokoll Autonom målföljning med quadcopter

Testprotokoll Autonom målföljning med quadcopter Version 1.0 Robo Ptarmigan 3 december 2015 Status Granskad HC 2015-11-29 Godkänd Projektidentitet Gruppmail: Hemsida: Beställare: Kund: Kursansvarig: Projektledare: Handledare: karlo343@student.liu.se

Läs mer

Testplan Autonom målföljning med quadcopter

Testplan Autonom målföljning med quadcopter Version 1.0 Robo Ptarmigan 3 december 2015 Status Granskad AF, GN, HC 2015-11-05 Godkänd Projektidentitet Gruppmail: Hemsida: Beställare: Kund: Kursansvarig: Projektledare: Handledare: karlo343@student.liu.se

Läs mer

Systemskiss Autonom målföljning med quadcopter

Systemskiss Autonom målföljning med quadcopter Version 1.1 Robo Ptarmigan 30 november 2015 Status Granskad GN, KL 2015-09-25 Godkänd Projektidentitet Gruppmail: Hemsida: Beställare: Kund: Kursansvarig: Projektledare: Handledare: karlo343@student.liu.se

Läs mer

Projektplan Autonom spaning med quadcopter

Projektplan Autonom spaning med quadcopter Projektplan Autonom spaning med quadcopter Version 1.1 Projektgrupp: Datum: 2014-09-25 Status Granskad EK, TJ 2014-09-25 Godkänd Christian A. Naesseth 2014-09-25 Projektplan 2014-09-25 @gmail.com Projektidentitet

Läs mer

Testplan Autonom spaning med quadcopter

Testplan Autonom spaning med quadcopter Testplan Autonom spaning med quadcopter Version 1.2 Projektgrupp: Datum: 2014-12-03 Status Granskad TH 2014-10-19 Godkänd Christian A. Naesseth 2014-10-14 Projektidentitet E-post: Hemsida: Beställare:

Läs mer

Teknisk Rapport Autonom spaning med quadcopter

Teknisk Rapport Autonom spaning med quadcopter Teknisk Rapport Autonom spaning med quadcopter Version 0.4 Projektgrupp: Datum: 2014-12-10 Status Granskad Godkänd Teknisk Rapport 2014-12-10 @gmail.com Projektidentitet E-post: Hemsida: Beställare: Kund:

Läs mer

Användarhandledning Autonom spaning med quadcopter

Användarhandledning Autonom spaning med quadcopter Användarhandledning Autonom spaning med quadcopter Version 1.1 Projektgrupp: Datum: 2014-12-03 Status Granskad Emil Klinga 141203 Godkänd Christian A. Naesseth 141203 Projektidentitet E-post: Hemsida:

Läs mer

Kravspecifikation Autonom målföljning med quadcopter

Kravspecifikation Autonom målföljning med quadcopter Version.2 Robo Ptarmigan 30 november 205 Status Granskad KL, CC 205--8 Godkänd Projektidentitet Gruppmail: Hemsida: Beställare: Kund: Kursansvarig: Projektledare: Handledare: karlo343@student.liu.se http://www.isy.liu.se/edu/projekt/tsrt0/205/quadcopter/

Läs mer

Testprotokoll Följning av djur Kolmården djurpark

Testprotokoll Följning av djur Kolmården djurpark Version 1.0 Projektgrupp: Tar-Get 2017-12-15 Status Granskad JS 2017-12-12 Godkänd Beställare 2017-12-12 PROJEKTIDENTITET 2017/HT, Linköpings Universitet, ISY Gruppdeltagare Namn Ansvar Telefon E-post

Läs mer

Testplan Autonom truck

Testplan Autonom truck Testplan Autonom truck Version 1.1 Redaktör: Joar Manhed Datum: 20 november 2018 Status Granskad Kim Byström 2018-11-20 Godkänd Andreas Bergström 2018-10-12 Projektidentitet Grupp E-post: Hemsida: Beställare:

Läs mer

Kravspecifikation. LiTH Segmentering av MR-bilder med ITK Anders Eklund Version 1.0. Status

Kravspecifikation. LiTH Segmentering av MR-bilder med ITK Anders Eklund Version 1.0. Status 2006-02-02 Kravspecifikation Version.0 Status Granskad Godkänd Bilder och grafik projektkurs, CDIO MCIV LIPs 2006-02-02 PROJEKTIDENTITET MCIV 2006 VT Linköpings Tekniska Högskola, CVL Namn Ansvar Telefon

Läs mer

LiTH. WalkCAM 2007/05/15. Testplan. Mitun Dey Version 1.0. Status. Granskad. Godkänd. Reglerteknisk projektkurs WalkCAM LIPs

LiTH. WalkCAM 2007/05/15. Testplan. Mitun Dey Version 1.0. Status. Granskad. Godkänd. Reglerteknisk projektkurs WalkCAM LIPs Testplan Mitun Dey Version 1.0 Status Granskad Godkänd 1 PROJEKTIDENTITET Reglerteknisk projektkurs, WalkCAM, 2007/VT Linköpings tekniska högskola, ISY Namn Ansvar Telefon E-post Henrik Johansson Projektledare

Läs mer

Projektplan Autonom målföljning med quadcopter

Projektplan Autonom målföljning med quadcopter Version 1.1 Robo Ptarmigan 3 november 215 Status Granskad AF,CC 215-9-25 Godkänd Projektidentitet Gruppmail: Hemsida: Beställare: Kund: Kursansvarig: Projektledare: Handledare: karlo343@student.liu.se

Läs mer

Systemskiss. LiTH AMASE Accurate Multipoint Acquisition from Stereovision Equipment. Jon Månsson Version 1.0

Systemskiss. LiTH AMASE Accurate Multipoint Acquisition from Stereovision Equipment. Jon Månsson Version 1.0 2006-02-15 Systemskiss Jon Månsson Version 1.0 Granskad Godkänd TSBB51 LIPs John Wood johha697@student.liu.se 1 PROJEKTIDENTITET VT2006, Linköpings tekniska högskola, ISY Namn Ansvar Telefon E-post Mikael

Läs mer

Systemskiss. LiTH Autonom bandvagn med stereokamera 2010-09-24. Gustav Hanning Version 1.0. Status. TSRT10 8Yare LIPs. Granskad

Systemskiss. LiTH Autonom bandvagn med stereokamera 2010-09-24. Gustav Hanning Version 1.0. Status. TSRT10 8Yare LIPs. Granskad Gustav Hanning Version 1.0 Status Granskad Godkänd Jonas Callmer 2010-09-24 1 PROJEKTIDENTITET 2010/HT, 8Yare Linköpings tekniska högskola, institutionen för systemteknik (ISY) Namn Ansvar Telefon E-post

Läs mer

Testplan. Flygande Autonomt Spaningsplan. Version 1.0. Dokumentansvarig: Henrik Abrahamsson Datum: 14 mars Status.

Testplan. Flygande Autonomt Spaningsplan. Version 1.0. Dokumentansvarig: Henrik Abrahamsson Datum: 14 mars Status. Flygande Autonomt Spaningsplan Version 1.0 Dokumentansvarig: Henrik Abrahamsson Datum: 14 mars 2008 Status Granskad Godkänd Projektidentitet Hemsida: Kund: http://www.isy.liu.se/edu/projekt/tsrt71/2008/flygproj2008/

Läs mer

Testprotokoll. Redaktör: Sofie Dam Version 0.1. Status. Planering och sensorfusion för autonom truck Granskad Dokumentansvarig - Godkänd

Testprotokoll. Redaktör: Sofie Dam Version 0.1. Status. Planering och sensorfusion för autonom truck Granskad Dokumentansvarig - Godkänd Redaktör: Sofie Dam Version 0.1 Status Granskad Dokumentansvarig - Godkänd 1 GruppTruck Projektidentitet 2017/HT, GruppTruck Tekniska högskolan vid Linköpings universitet, ISY Gruppdeltagare Namn Ansvar

Läs mer

Användarhandledning Följning av djur Kolmården djurpark

Användarhandledning Följning av djur Kolmården djurpark Version 1.0 Projektgrupp: Tar-Get 2017-12-08 Status Granskad JH, JE 2017-12-07 Godkänd Beställare 2017-12-07 PROJEKTIDENTITET 2017/HT, Linköpings Universitet, ISY Gruppdeltagare Namn Ansvar Telefon E-post

Läs mer

Systemskiss. Joachim Lundh TSRT10 - SEGWAY 6 december 2010 Version 1.0. Status:

Systemskiss. Joachim Lundh TSRT10 - SEGWAY 6 december 2010 Version 1.0. Status: Systemskiss Joachim Lundh TSRT10 - SEGWAY 6 december 2010 Version 1.0 Status: Granskad Alla 6 december 2010 Godkänd Markus (DOK) 6 december 2010 PROJEKTIDENTITET Segway, HT 2010 Tekniska högskolan vid

Läs mer

Systemskiss. Självetablerande sensornätverk med 3G och GPS. Version 0.2. Christian Östman Datum: 15 maj 2008

Systemskiss. Självetablerande sensornätverk med 3G och GPS. Version 0.2. Christian Östman Datum: 15 maj 2008 Systemskiss Självetablerande sensornätverk med 3G och GPS Version 0.2 Christian Östman Datum: 15 maj 2008 Status Granskad Johan Lundström 2008-02-08 Godkänd Projektidentitet Gruppens e-post: Hemsida: Beställare:

Läs mer

LIPs Fredrik Ljungberg ChrKr Projektdirektiv18_ROV.doc CKr

LIPs Fredrik Ljungberg ChrKr Projektdirektiv18_ROV.doc CKr Fredrik Ljungberg 2018-08-28 Sida 1 Projektnamn Beställare Projektledare Projektbeslut Projekttid Rapportering Parter Projektets bakgrund och Remotely Operated Underwater Vehicle Fredrik Ljungberg, ISY

Läs mer

Projektplan. LiTH Segmentering av MR-bilder med ITK Anders Eklund. Version 1.0. Status. Bilder och grafik projektkurs, CDIO MCIV LIPs

Projektplan. LiTH Segmentering av MR-bilder med ITK Anders Eklund. Version 1.0. Status. Bilder och grafik projektkurs, CDIO MCIV LIPs Segmentering av MR-bilder med ITK 2006-02-02 Projektplan Version 1.0 Status Granskad Godkänd Bilder och grafik projektkurs, CDIO MCIV LIPs 1 PROJEKTIDENTITET MCIV 2006 VT Linköpings Tekniska Högskola,

Läs mer

HARALD Testprotokoll

HARALD Testprotokoll HARALD Testprotokoll Version 0.2 Redaktör: Patrik Sköld Datum: 9 maj 2006 Status Granskad Johan Sjöberg 2006-05-09 Godkänd - yyyy-mm-dd Projektidentitet Gruppens e-post: Beställare: Kund: Kursansvarig:

Läs mer

Systemskiss Minröjningsbandvagn

Systemskiss Minröjningsbandvagn Systemskiss Minröjningsbandvagn Version 1.0 Utgivare: Emmeline Kemperyd Datum: 19 september 2013 Status Granskad Anton Pettersson 2013-09-19 Godkänd Projektidentitet Gruppens e-post: Hemsida: Beställare:

Läs mer

LiTH, Reglerteknik Saab Dynamics. Testplan Collision avoidance för autonomt fordon Version 1.0

LiTH, Reglerteknik Saab Dynamics. Testplan Collision avoidance för autonomt fordon Version 1.0 LiTH, Reglerteknik Saab Dynamics Testplan Collision avoidance för autonomt fordon Version 1.0 Torbjörn Lindström 3 maj 2005 Granskad Godkänd Collision avoidance för autonomt fordon i Sammanfattning Testplan

Läs mer

Systemskiss. LiTH Kamerabaserat Positioneringssystem för Hamnkranar Mikael Ögren Version 1.0. Status

Systemskiss. LiTH Kamerabaserat Positioneringssystem för Hamnkranar Mikael Ögren Version 1.0. Status Mikael Ögren Version 1.0 Granskad Status Godkänd 1 PROJEKTIDENTITET 09/HT, CaPS Linköpings tekniska högskola, ISY Namn Ansvar Telefon E-post Mohsen Alami designansvarig(des) 073-7704709 mohal385@student.liu.se

Läs mer

Projektdirektiv Christian Andersson Naesseth Sida 1

Projektdirektiv Christian Andersson Naesseth Sida 1 Christian Andersson Naesseth 2018-08-30 Sida 1 Projektnamn Beställare Projektledare Projektbeslut Projekttid Rapportering Drönarprojekt Visionen Christian Andersson Naesseth, ISY Studenter Gustaf Hendeby

Läs mer

Projektdirektiv Oskar Ljungqvist Sida 1. Kund/Examinator: Daniel Axehill, Reglerteknik/LiU

Projektdirektiv Oskar Ljungqvist Sida 1. Kund/Examinator: Daniel Axehill, Reglerteknik/LiU 2018-08-30 Sida 1 Projektnamn Beställare Projektledare Projektbeslut Projekttid Rapportering, ISY Student, ISY Läsperiod 1-2, HT 2018. Projektet klart senast vid projektkonferensen. Löpande rapportering:

Läs mer

Teknisk rapport Följning av djur Kolmården djurpark

Teknisk rapport Följning av djur Kolmården djurpark Version 1.0 Projektgrupp: Tar-Get 2017-12-18 Status Granskad GM, JH 2017-12-18 Godkänd Beställare 2017-12-18 PROJEKTIDENTITET 2017/HT, Linköpings Universitet, ISY Gruppdeltagare Namn Ansvar Telefon E-post

Läs mer

Ansiktsigenkänning med MATLAB

Ansiktsigenkänning med MATLAB Ansiktsigenkänning med MATLAB Avancerad bildbehandling Christoffer Dahl, Johannes Dahlgren, Semone Kallin Clarke, Michaela Ulvhammar 12/2/2012 Sammanfattning Uppgiften som gavs var att skapa ett system

Läs mer

LiTH. WalkCAM 2007/05/15. Testrapport. Mitun Dey Version 1.0. Status. Granskad. Godkänd. Reglerteknisk projektkurs WalkCAM LIPs

LiTH. WalkCAM 2007/05/15. Testrapport. Mitun Dey Version 1.0. Status. Granskad. Godkänd. Reglerteknisk projektkurs WalkCAM LIPs Testrapport Mitun Dey Version 1.0 Status Granskad Godkänd 1 PROJEKTIDENTITET Reglerteknisk projektkurs, WalkCAM, 2007/VT Linköpings tekniska högskola, ISY Namn Ansvar Telefon E-post Henrik Johansson Projektledare

Läs mer

LiTH Golfspelande industrirobot Designspecifikation. Designansvarig: Mikaela Waller Version 1.0. Status. Granskad Martin

LiTH Golfspelande industrirobot Designspecifikation. Designansvarig: Mikaela Waller Version 1.0. Status. Granskad Martin Golfspelande industrirobot 2004-02-25 Designspecifikation Designansvarig: Mikaela Waller Version 1.0 Status Granskad Martin 2004-02-24 Godkänd Martin 2004-02-24 Dokumentansvarig: Elin Eklund i Golfspelande

Läs mer

Testplan. Redaktör: Sofie Dam Version 0.1. Status. Planering och sensorfusion för autonom truck Granskad Dokumentansvarig - Godkänd

Testplan. Redaktör: Sofie Dam Version 0.1. Status. Planering och sensorfusion för autonom truck Granskad Dokumentansvarig - Godkänd Redaktör: Sofie Dam Version 0.1 Status Granskad Dokumentansvarig - Godkänd 1 GruppTruck Projektidentitet 2017/HT, GruppTruck Tekniska högskolan vid Linköpings universitet, ISY Gruppdeltagare Namn Ansvar

Läs mer

LIPs Daniel Axehill ChrKr Projektdirektiv_Saab_v3 CKr

LIPs Daniel Axehill ChrKr Projektdirektiv_Saab_v3 CKr Daniel Axehill 2006-01-19 Sida 1 Projektnamn Beställare Daniel Axehill, ISY Projektledare Student Projektbeslut Torbjörn Crona, Daniel Axehill Projekttid Läsperiod 3-4, vårterminen 2006. Projektet klart

Läs mer

LiTH Autonom styrning av mobil robot 2007-02-15. Projektplan. Martin Elfstadius & Fredrik Danielsson. Version 1.0

LiTH Autonom styrning av mobil robot 2007-02-15. Projektplan. Martin Elfstadius & Fredrik Danielsson. Version 1.0 Projektplan Martin Elfstadius & Fredrik Danielsson Version 1.0 Status Granskad Godkänd 1 PROJEKTIDENTITET Autonom styrning av mobil robot Vårterminen 2007 Linköpings Tekniska Högskola, ISY Namn Ansvar

Läs mer

HARALD. Systemskiss. Version 0.3 Redaktör: Patrik Johansson Datum: 20 februari 2006. Status

HARALD. Systemskiss. Version 0.3 Redaktör: Patrik Johansson Datum: 20 februari 2006. Status HARALD Systemskiss Version 0.3 Redaktör: Patrik Johansson Datum: 20 februari 2006 Status Granskad Johan Sjöberg 2006-02-10 Godkänd - yyyy-mm-dd Projektidentitet Gruppens e-post: Beställare: Kund: Kursansvarig:

Läs mer

LIPs Martin Lindfors ChrKr Projdir2017_sbd.doc CKr

LIPs Martin Lindfors ChrKr Projdir2017_sbd.doc CKr Martin Lindfors 2017-08-22 Sida 1 Projektnamn Beställare Projektledare Projektbeslut Projekttid Rapportering Minröjningssystem Martin Lindfors, ISY Student Torbjörn Crona och Martin Lindfors Läsperiod

Läs mer

Systemskiss. LiTH. Autopositioneringssystem för utlagda undervattenssensorer Erik Andersson Version 1.0. Status

Systemskiss. LiTH. Autopositioneringssystem för utlagda undervattenssensorer Erik Andersson Version 1.0. Status Autopositioneringssystem för utlagda undervattenssensorer 2007-02-05 LiTH Systemskiss Erik Andersson Version 1.0 Status Granskad Godkänd DOK Henrik Ohlsson Systemskiss10.pdf 1 Autopositioneringssystem

Läs mer

Testplan Erik Jakobsson Version 1.1

Testplan Erik Jakobsson Version 1.1 Erik Jakobsson Version 1.1 Granskad Status Godkänd 1 PROJEKTIDENTITET 09/HT, Linköpings tekniska högskola, ISY Namn Ansvar Telefon E-post Mohsen Alami designansvarig (DES) 073-7704709 mohal385@student.liu.se

Läs mer

Programutvecklingsprojekt Projektgrupp Elvin. Detailed Design Document

Programutvecklingsprojekt Projektgrupp Elvin. Detailed Design Document Programutvecklingsprojekt 2003-04-24 Projektgrupp Elvin Detailed Design Document Björn Engdahl Fredrik Dahlström Mats Eriksson Staffan Friberg Thomas Glod Tom Eriksson engdahl@kth.se fd@kth.se d94-mae@nada.kth.se

Läs mer

Fyra i rad Javaprojekt inom TDDC32

Fyra i rad Javaprojekt inom TDDC32 Fyra i rad Javaprojekt inom TDDC32 Analys och design-dokument Version 2.0 Datum 2008-05-19 Dokumentnummer 20080303 Sammanfattning Detta är analys och design-dokumentet för programmet Fyra i rad. Fyra i

Läs mer

Användarhandledning. Redaktör: Patrik Molin Version 1.0. Mobile Scout. Status. LiTH Granskad Godkänd. TSRT71 Patrik Molin

Användarhandledning. Redaktör: Patrik Molin Version 1.0. Mobile Scout. Status. LiTH Granskad Godkänd. TSRT71 Patrik Molin Användarhandledning Redaktör: Version 1.0 Granskad Godkänd Status Sida 1 PROJEKTIDENTITET 2009/VT, Linköpings Tekniska Högskola, ISY Gruppdeltagare Namn Ansvar Telefon E-post Martin Larsson Projektledare

Läs mer

Manual till Båstadkartans grundläggande funktioner

Manual till Båstadkartans grundläggande funktioner Manual till Båstadkartans grundläggande funktioner Webbfönstret När du klickar på kartlänken öppnas Båstadkartan i eget fönster eller egen flik, beroende på inställningen i din webbläsare. Bilden nedan

Läs mer

Testspecifikation. Henrik Hagelin TSRT10 - SEGWAY 6 december 2010 Version 1.0. Status:

Testspecifikation. Henrik Hagelin TSRT10 - SEGWAY 6 december 2010 Version 1.0. Status: Testspecifikation Henrik Hagelin TSRT10 - SEGWAY 6 december 2010 Version 1.0 Status: Granskad Alla 6 december 2010 Godkänd DOK, PL 6 december 2010 PROJEKTIDENTITET Segway, HT 2010 Tekniska högskolan vid

Läs mer

Vektorkartor för mobila terminaler

Vektorkartor för mobila terminaler Vektorkartor för mobila terminaler Magnus Janlert 3 juni 2004 Introduktion Externt examensarbete, utfört VT2003 Visualiseringscentrum, c:a tio anställda, en del av Lantmäteriet Handledare: Jerry Eriksson

Läs mer

Axalon Process Navigator SP Användarhandledning

Axalon Process Navigator SP Användarhandledning Axalon Process Navigator SP Användarhandledning Axalon Process Navigator SP 2013, senast reviderad: den 11 juni 2014 Innehåll Innehåll... 2 Om denna användarhandledning... 3 Syfte... 3 Vem är denna handledning

Läs mer

Rapportering som krävs utöver LIPS-dokumenten: poster föredrag där projektets genomförande och resultat beskrivs hemsida som beskriver projektet

Rapportering som krävs utöver LIPS-dokumenten: poster föredrag där projektets genomförande och resultat beskrivs hemsida som beskriver projektet Sida 1 Projektnamn Utveckling och implementering av regulator för styrning av gimbalmonterade sensorer i UAV:er Beställare Jon Kronander (ISY - Reglerteknik) Projektledare Student Projektbeslut Morgan

Läs mer

Kravspecifikation. Vidareutveckling av Optimal Styrning av Radiostyrd Racerbil. Version 1.1 Joel Lejonklou 26 november 2012

Kravspecifikation. Vidareutveckling av Optimal Styrning av Radiostyrd Racerbil. Version 1.1 Joel Lejonklou 26 november 2012 Kravspecifikation Vidareutveckling av Optimal Styrning av Radiostyrd Racerbil Version. Joel Lejonklou 26 november 202 Status Granskad Simon Eiderbrant 26 November 202 Godkänd Kurskod: TSRT0 E-post: joele569@student.liu.se

Läs mer

LiTH Autonom styrning av mobil robot 2007-03-26 Testplan Version 1.0 TSRT71-Reglertekniskt projektkurs Anders Lindgren L IPs

LiTH Autonom styrning av mobil robot 2007-03-26 Testplan Version 1.0 TSRT71-Reglertekniskt projektkurs Anders Lindgren L IPs Testplan Version 1.0 Status Granskad Godkänd TSRT71-Reglertekniskt projektkurs LIPs PROJEKTIDENTITET Autonom styrning av mobil robot Vårterminen 2007 Linköpings Tekniska Högskola, ISY Namn Ansvar Telefon

Läs mer

Designspecifikation Autonom målföljning med quadcopter

Designspecifikation Autonom målföljning med quadcopter Version 1.0 Robo Ptarmigan 30 november 2015 Status Granskad NE,HC 2015-10-13 Godkänd Projektidentitet Gruppmail: Hemsida: Beställare: Kund: Kursansvarig: Projektledare: Handledare: karlo343@student.liu.se

Läs mer

Teknisk dokumentation. Autonom målföljning med quadcopter

Teknisk dokumentation. Autonom målföljning med quadcopter Teknisk Dokumentation Version 1.0 Robo Ptarmigan 14 december 2015 Status Granskad KL,AF,CC,AB 2015-12-10 Godkänd Projektidentitet Gruppmail: Hemsida: Beställare: Kund: Kursansvarig: Projektledare: Handledare:

Läs mer

Objektorienterad programmering

Objektorienterad programmering Objektorienterad programmering Emil Ahlqvist (c10eat@cs.umu.se) Didrik Püschel (dv11dpl@cs.umu.se) Johan Hammarström (c08jhm@cs.umu.se) Hannes Frimmel Moström (c10hml@cs.umu.se) 1 1. Introduktion 1.1 Objektorienterad

Läs mer

Undersökande arbetssätt i matematik 1 och 2

Undersökande arbetssätt i matematik 1 och 2 Matematik Gymnasieskola Modul: Matematikundervisning med digitala verktyg Del 6: Undersökande arbetssätt med matematisk programvara Undersökande arbetssätt i matematik 1 och 2 I texten Undersökande arbetssätt

Läs mer

Kravspecifikation. Självetablerande sensornätverk med 3G och GPS. Version 1.0. Christian Östman Datum: 12 maj 2008

Kravspecifikation. Självetablerande sensornätverk med 3G och GPS. Version 1.0. Christian Östman Datum: 12 maj 2008 Kravspecifikation Självetablerande sensornätverk med 3G och GPS Version.0 Christian Östman Datum: 2 maj 2008 Status Granskad Christian 2008-02-08 Godkänd Kurskod: TSRT7 Ansvarigs e-post: chros822@student.liu.se

Läs mer

Användarmanual Autonom målföljning med quadcopter

Användarmanual Autonom målföljning med quadcopter Användarmanual Version 1.0 Robo Ptarmigan 3 december 2015 Status Granskad GN, CC 2015-11-30 Godkänd Christian A. Naesseth 2015-11-30 Projektidentitet Gruppmail: Hemsida: Beställare: Kund: Kursansvarig:

Läs mer

Kravspecifikation Fredrik Berntsson Version 1.1

Kravspecifikation Fredrik Berntsson Version 1.1 Kravspecifikation Fredrik Berntsson Version 1.1 Status Granskad FB 2016-02-01 Godkänd FB 2015-02-01 Dokumenthistorik Version Datum Utförda ändringar Utförda av Granskad 1.0 2015-02-01 Första versionen

Läs mer

Kravspecifikation Fredrik Berntsson Version 1.3

Kravspecifikation Fredrik Berntsson Version 1.3 Kravspecifikation Fredrik Berntsson Version 1.3 Status Granskad FB 2017-01-27 Godkänd FB 2017-01-27 Dokumenthistorik Version Datum Utförda ändringar Utförda av Granskad 1.0 2014-01-15 Första versionen

Läs mer

Kort introduktion till POV-Ray, del 1

Kort introduktion till POV-Ray, del 1 Kort introduktion till POV-Ray, del 1 Kjell Y Svensson, 2004-02-02,2007-03-13 Denna serie av artiklar ger en grundläggande introduktion och förhoppningsvis en förståelse för hur man skapar realistiska

Läs mer

Classes och Interfaces, Objects och References, Initialization

Classes och Interfaces, Objects och References, Initialization Classes och Interfaces, Objects och References, Initialization Objekt-orienterad programmering och design (DIT953) Niklas Broberg/Johannes Åman Pohjola, 2018 Abstract class En abstract class är en class

Läs mer

Designspecifikation. LiTH Autonom styrning av mobil robot 2007-05-22. Martin Elfstadius. Version 1.0. Status. TSRT71 Reglerteknisk projektkurs

Designspecifikation. LiTH Autonom styrning av mobil robot 2007-05-22. Martin Elfstadius. Version 1.0. Status. TSRT71 Reglerteknisk projektkurs Designspecifikation Version 1.0 Granskad Godkänd Status PROJEKTIDENTITET Autonom strning av mobil robot Vårterminen 2007 Linköpings Tekniska Högskola, ISY Namn Ansvar Telefon E-post (ME) Projektledare/Designansvarig

Läs mer

Systemskiss Optimal Styrning av Autonom Racerbil

Systemskiss Optimal Styrning av Autonom Racerbil No Oscillations Corporation Systemskiss Optimal Styrning av Autonom Racerbil Version 1.0 Författare: Mikael Rosell Datum: 29 november 2013 Status Granskad Projektgruppen 2013-09-18 Godkänd Projektidentitet

Läs mer

JavaRats. Kravspecifikation. Version 1.1. Gustav Skoglund gussk258@student.liu.se. Marcus Widblom marwi026@student.liu.se. Senast ändrad: 13 / 05 / 08

JavaRats. Kravspecifikation. Version 1.1. Gustav Skoglund gussk258@student.liu.se. Marcus Widblom marwi026@student.liu.se. Senast ändrad: 13 / 05 / 08 JavaRats Kravspecifikation Version 1.1 Gustav Skoglund gussk258@student.liu.se Marcus Widblom marwi026@student.liu.se Senast ändrad: 13 / 05 / 08 Sammanfattning Kravspecifikationen för JavaRats har skrivit

Läs mer

Manual HSB Webb brf 2004 03 23

Manual HSB Webb brf 2004 03 23 TERMINOLOGI I Polopoly används ett antal grundläggande begrepp för publicering och hantering av information, eller innehåll som det också benämns. Nedan följer en kort genomgång av denna grundläggande

Läs mer

Testplan. Vidareutveckling av Optimal Styrning av Radiostyrd Racerbil. Version 1.1 Fredrik Karlsson 26 november Granskad JL, FK 26 november 2012

Testplan. Vidareutveckling av Optimal Styrning av Radiostyrd Racerbil. Version 1.1 Fredrik Karlsson 26 november Granskad JL, FK 26 november 2012 Testplan Vidareutveckling av Optimal Styrning av Radiostyrd Racerbil Version. Fredrik Karlsson 26 november 202 Status Granskad JL, FK 26 november 202 Godkänd Kurskod: TSRT0 E-post: freca476@student.liu.se

Läs mer

Specifikation av kandidatexjobb

Specifikation av kandidatexjobb Specifikation av kandidatexjobb 3D-rekonstruktion av Rubiks kub André Gräsman Rasmus Göransson grasman@kth.se rasmusgo@kth.se 890430-3214 850908-8517 Introduktion Vi vill göra en förstudie om 3D rekonstruktion.

Läs mer

Tor Sterner-Johansson Thomas Johansson Daniel Henriksson

Tor Sterner-Johansson Thomas Johansson Daniel Henriksson Lab 4: Anti Tower Defence Oskar Mothander Alan Mendez Larsson dit06omr dit06mln Lärare: Handledare: Johan Eliasson Johan Granberg Tor Sterner-Johansson Thomas Johansson Daniel Henriksson Innehåll 1. Problemspecifikation...

Läs mer

Datatyper. Programmering. Att definiera datatyper i Java. Laddade partiklar. (x,y) (Rx,Ry) hh.se/db2004

Datatyper. Programmering. Att definiera datatyper i Java. Laddade partiklar. (x,y) (Rx,Ry) hh.se/db2004 Programmering hh.se/db2004 Föreläsning 11: Objektorienterad programmering - att definiera datatyper Verónica Gaspes www2.hh.se/staff/vero www2.hh.se/staff/vero/programmering Datatyper Hittills Vi har lärt

Läs mer

Efterstudie. Redaktör: Jenny Palmberg Version 1.0. Status. LiTH Fordonssimulator. Granskad Godkänd. TSRT71 Jenny Palmberg

Efterstudie. Redaktör: Jenny Palmberg Version 1.0. Status. LiTH Fordonssimulator. Granskad Godkänd. TSRT71 Jenny Palmberg Efterstudie Redaktör: Version 1.0 Granskad Godkänd Status Sida 1 PROJEKTIDENTITET Grupp 1, 2006/VT, Linköpings Tekniska Högskola, ISY Gruppdeltagare Namn Ansvar Telefon E-post Simon Danielsson Kvalitetsansvarig

Läs mer

Fler uppgifter på andragradsfunktioner

Fler uppgifter på andragradsfunktioner Fler uppgifter på andragradsfunktioner 1 I grafen nedan visas tre andragradsfunktioner. Bestäm a,b och c för p(x) = ax 2 + bx + c genom att läsa av lämpliga punkter i grafen. 10 5 1 3 5 Figur 1: 2 Vi har

Läs mer

Objektorientering: Lagring, räckvidd och livstid

Objektorientering: Lagring, räckvidd och livstid TDDD78, TDDE30, 729A85 jonas.kvarnstrom@liu.se 2019 Objektorientering: Lagring, räckvidd och livstid Tre sorters variabler, två sorters metoder Räckvidd och livstid 2 Variabler (lokala och medlemsvariabler)

Läs mer

3.0. Tips och Trix Sida 1 av 18

3.0. Tips och Trix Sida 1 av 18 3.0 https://beta.scratch.mit.edu/ Tips och Trix 2018-08-31 Sida 1 av 18 Innehåll Starta nytt program 3 Scenens koordinatsystem 3 Centrumpunkt / rotationspunkt 4 Sprajtens inställningar 5 Placering i Z-led

Läs mer

Programmering = modellering

Programmering = modellering Programmering = modellering Ett datorprogram är en modell av en verklig eller tänkt värld. Ofta är det komplexa system som skall modelleras I objektorienterad programmering består denna värld av ett antal

Läs mer

Programmering B med Visual C++ 2008

Programmering B med Visual C++ 2008 Programmering B med Visual C++ 2008 Innehållsförteckning 1 Repetition och lite nytt...5 I detta kapitel... 5 Programexekvering... 5 Loop... 5 Källkod... 6 Verktyg... 6 Säkerhetskopiera... 6 Öppna, kompilera,

Läs mer

Laboration 4: Digitala bilder

Laboration 4: Digitala bilder Objektorienterad programmering, Z : Digitala bilder Syfte I denna laboration skall vi återigen behandla transformering av data, denna gång avseende digitala bilder. Syftet med laborationen är att få förståelse

Läs mer

Användarhandledning. Redaktör: Jenny Palmberg Version 1.0. Status. LiTH Fordonssimulator. Granskad Godkänd. TSRT71 Jenny Palmberg

Användarhandledning. Redaktör: Jenny Palmberg Version 1.0. Status. LiTH Fordonssimulator. Granskad Godkänd. TSRT71 Jenny Palmberg Användarhandledning Redaktör: Version 1.0 Granskad Godkänd Status Sida 1 PROJEKTIDENTITET Grupp 1, 2006/VT, Linköpings Tekniska Högskola, ISY Gruppdeltagare Namn Ansvar Telefon E-post Simon Danielsson

Läs mer

Testprotokoll. LiTH Segmentering av MR-bilder med ITK Anders Eklund Version 1.0. Status

Testprotokoll. LiTH Segmentering av MR-bilder med ITK Anders Eklund Version 1.0. Status Segmentering av MR-bilder med ITK 2006-05-02 Testprotokoll Version 1.0 Status ranskad odkänd Bilder och grafik projektkurs, CDIO MCIV LIPs 1 Segmentering av MR-bilder med ITK 2006-05-02 PROJEKTIDENTITET

Läs mer

HARALD. Version 0.2 Redaktör: Patrik Johansson Datum: 8 maj 2006. Status. Granskad - yyyy-mm-dd Godkänd - yyyy-mm-dd

HARALD. Version 0.2 Redaktör: Patrik Johansson Datum: 8 maj 2006. Status. Granskad - yyyy-mm-dd Godkänd - yyyy-mm-dd HARALD Användarhandledning Version 0.2 Redaktör: Patrik Johansson Datum: 8 maj 2006 Status Granskad - yyyy-mm-dd Godkänd - yyyy-mm-dd Projektidentitet Gruppens e-post: Hemsida: Beställare: Kund: Kursansvarig:

Läs mer

Testplan. Status. David Sandberg, Tobias Lundqvist, Rasmus Dewoon, Marcus Wirebrand Version 1.2. Granskad Godkänd

Testplan. Status. David Sandberg, Tobias Lundqvist, Rasmus Dewoon, Marcus Wirebrand Version 1.2. Granskad Godkänd Testplan David Sandberg, Tobias Lundqvist, Rasmus Dewoon, Marcus Wirebrand Version 1.2 Status Granskad Godkänd Projektidentitet Grupp 2, 2010/HT Linköpings Tekniska Högskola, ISY Namn Ansvar Telefon E-mail

Läs mer

Uppdrag för LEGO projektet Hitta en vattensamling på Mars

Uppdrag för LEGO projektet Hitta en vattensamling på Mars LEGO projekt Projektets mål är att ni gruppvis skall öva på att genomföra ett projekt. Vi använder programmet LabVIEW för att ni redan nu skall bli bekant med dess grunder till hjälp i kommande kurser.

Läs mer

Static vs Dynamic binding Polymorfism. Objekt-orienterad programmering och design Alex Gerdes, 2016

Static vs Dynamic binding Polymorfism. Objekt-orienterad programmering och design Alex Gerdes, 2016 Static vs Dynamic binding Polymorfism Objekt-orienterad programmering och design Alex Gerdes, 2016 Diagnostiskt prov Shape + overlaps(shape): int return 1; Shape shape = new Shape(); Polygon tripoly =

Läs mer

Föreläsning 8 - del 2: Objektorienterad programmering - avancerat

Föreläsning 8 - del 2: Objektorienterad programmering - avancerat Föreläsning 8 - del 2: Objektorienterad programmering - avancerat Johan Falkenjack johan.falkenjack@liu.se Linköpings universitet Sweden December 4, 2013 1 Innehåll Arv och andra viktiga begrepp Abstrakta

Läs mer

Högskoleprovet Kvantitativ del

Högskoleprovet Kvantitativ del Högskoleprovet Kvantitativ del Här följer anvisningar till de kvantitativa delproven XYZ, KVA, NOG och DTK. Provhäftet innehåller 40 uppgifter och den totala provtiden är 55 minuter. XYZ Matematisk problemlösning

Läs mer

Systemskiss. Vidareutveckling Optimal Styrning av Radiostyrd Racerbil. Version 1.0 Simon Eiderbrant. Granskad Erik Olsson 20 September 2012

Systemskiss. Vidareutveckling Optimal Styrning av Radiostyrd Racerbil. Version 1.0 Simon Eiderbrant. Granskad Erik Olsson 20 September 2012 Systemskiss Vidareutveckling Optimal Styrning av Radiostyrd Racerbil Version 1.0 Simon Eiderbrant Status Granskad Erik Olsson 20 September 2012 Godkänd Projektidentitet Grupp-e-post: Hemsida: Beställare:

Läs mer

Nätverksprogrammering, EDA095

Nätverksprogrammering, EDA095 Nätverksprogrammering, EDA095 Projekt: Chess game, 2013-05-21 Handledare: Roger Henriksson Axel Hildingsson, a.hildingson@gmail.com Hoang Huyuh Truong, artiq90@yahoo.se Lisa Lindberg, rys07lli@student.lu.se

Läs mer

Konstruktion av en radiostyrd legobil. Digitala projekt av Arbon Vata Leonardo Vukmanovic Amid Bhatia

Konstruktion av en radiostyrd legobil. Digitala projekt av Arbon Vata Leonardo Vukmanovic Amid Bhatia Konstruktion av en radiostyrd legobil Digitala projekt av Arbon Vata Leonardo Vukmanovic Amid Bhatia 1 1.Innehållsförtäckning Rapport Radiostyrd LEGO bil...1 1. Innehållsförtäckning...2 2.0 Inledning...3

Läs mer

Tentamen för kursen Objektorienterad programvaruutveckling GU (DIT010)

Tentamen för kursen Objektorienterad programvaruutveckling GU (DIT010) Tentamen för kursen Objektorienterad programvaruutveckling GU (DIT010) Tid: Onsdagen 15 december 2004, 8:30 till 13:30 Plats: M Ansvarig lärare: Katarina Blom, tel 772 10 60. Läraren besöker tentamen kl

Läs mer

ALEPH ver. 16 Introduktion

ALEPH ver. 16 Introduktion Fujitsu, Westmansgatan 47, 582 16 Linköping INNEHÅLLSFÖRTECKNING 1. SKRIVBORDET... 1 2. FLYTTA RUNT M.M.... 2 3. LOGGA IN... 3 4. VAL AV DATABAS... 4 5. STORLEK PÅ RUTORNA... 5 6. NAVIGATIONSRUTA NAVIGATIONSTRÄD...

Läs mer

OBJEKTORIENTERAD PROGRAMVARUUTVECKLING. Övningstentamen 2

OBJEKTORIENTERAD PROGRAMVARUUTVECKLING. Övningstentamen 2 Institutionen för Data- och informationsteknik JSk TENTAMEN OBJEKTORIENTERAD PROGRAMVARUUTVECKLING Övningstentamen 2 TID: 4 timmar Ansvarig: Betygsgränser: Hjälpmedel: Jan Skansholm Sammanlagt maximalt

Läs mer

Att prova på en enkel Applet och att lära sig olika sätt att hämta data från tangentbordet. Du får även prova på att skapa din första riktiga klass.

Att prova på en enkel Applet och att lära sig olika sätt att hämta data från tangentbordet. Du får även prova på att skapa din första riktiga klass. Datateknik A, Syfte: Att prova på en enkel Applet och att lära sig olika sätt att hämta data från tangentbordet. Du får även prova på att skapa din första riktiga klass. Att läsa: Lektion 2 Uppgifter:

Läs mer

Tentamen i Objektorienterad modellering och design Helsingborg

Tentamen i Objektorienterad modellering och design Helsingborg Lunds Tekniska Högskola Datavetenskap Emelie Engström Tentamen EDAF25 2016 10-26, 08:00 13:00 Tentamen i Objektorienterad modellering och design Helsingborg Tentamen består av en teoridel om totalt 5 poäng

Läs mer

LiTH Segmentering av MR-bilder med ITK Efterstudie MCIV. Anders Eklund. Status

LiTH Segmentering av MR-bilder med ITK Efterstudie MCIV. Anders Eklund. Status Segmentering av MR-bilder med ITK 2006-05-15 Efterstudie MCIV Status Granskad Godkänd Bilder och grafik projektkurs, CDIO MCIV LIPs 1 Segmentering av MR-bilder med ITK 2006-05-15 PROJEKTIDENTITET MCIV

Läs mer

Före Kravspecifikationen

Före Kravspecifikationen projektidé BP0 förstudie BP1 förberedelse BP2 Kravspecifikationen Beskriver VAD som ska utföras i projektet? projektdirektiv beslutspunkter specifikationer planer kunddokument rapporter protokoll M beställarens

Läs mer

Systemskiss. Michael Andersson Version 1.0: 2012-09-24. Status. Platooning 2012-09-24. Granskad DOK, PL 2012-09-19 Godkänd Erik Frisk 2012-09-24

Systemskiss. Michael Andersson Version 1.0: 2012-09-24. Status. Platooning 2012-09-24. Granskad DOK, PL 2012-09-19 Godkänd Erik Frisk 2012-09-24 2012-09-24 Systemskiss Michael Andersson Version 1.0: 2012-09-24 Status Granskad DOK, PL 2012-09-19 Godkänd Erik Frisk 2012-09-24 Systemskiss i 2012-09-24 Projektidentitet, TSRT10, HT2012, Tekniska högskolan

Läs mer

Kravspecifikation. Oskar Törnqvist Version 1.0. Status. Granskad. Godkänd

Kravspecifikation. Oskar Törnqvist Version 1.0. Status. Granskad. Godkänd Kravspecifikation Version.0 Status Granskad Godkänd Autonom styrning av mobil robot 2007-02-5 PROJEKTIDENTITET Autonom styrning av mobil robot Vårterminen 2007 Linköpings Tekniska Högskola, ISY Namn Ansvar

Läs mer

Systemskiss. Redaktör: Anders Toverland Version 1.0. Status. LiTH Fordonssimulator. Granskad Godkänd. TSRT71 Anders Toverland

Systemskiss. Redaktör: Anders Toverland Version 1.0. Status. LiTH Fordonssimulator. Granskad Godkänd. TSRT71 Anders Toverland Systemskiss Redaktör: Version 1.0 Granskad Godkänd Status Sida 1 PROJEKTIDENTITET Grupp 1, 2005/VT, Linköpings Tekniska Högskola, ISY Gruppdeltagare Namn Ansvar Telefon E-post Anders Wikström Kvalitetsansvarig

Läs mer

Histogram över kanter i bilder

Histogram över kanter i bilder Histogram över kanter i bilder Metod Både den svartvita kanstdetekteringen och detekteringen av färgkanter följer samma metod. Först görs en sobelfiltrering i både vertikal och horisontell led. De pixlar

Läs mer