• No results found

Produktionsöversikt för system av skruvdragare genom analys av operationsdata

N/A
N/A
Protected

Academic year: 2021

Share "Produktionsöversikt för system av skruvdragare genom analys av operationsdata"

Copied!
56
0
0

Loading.... (view fulltext now)

Full text

(1)

Produktionsöversikt för system av skruvdragare genom analys av

operationsdata

Production overview for system of screwdrivers by analyzing operational data

Henrik Wallgren

(2)

I

Sammanfattning

Examensarbetet är utfört på Atlas Copco som tillverkar och säljer produkter inom ett flertal affärsområden. Affärsområdet för arbetet är industriteknik där Atlas Copco tillverkar och säljer olika industritekniska verktyg och lösningar. Det för arbetet viktiga området är skruvdragare med tillhörande hård- och mjukvara. Fokus har legat på den mjukvaruprodukt som samlar in operationsdata från åtdragning av skruv. Åtdragningarna görs med elektriska verktyg som är kopplade till kontrollenheter och många parametrar från åtdragningsoperationen skickas sedan till en databas för senare åtkomst. Att skruvåtdragningen är korrekt gjord vid första tillfället minskar behovet för kvalitetskontroller och när resultaten finns sparade i en databas kan det enkelt undersökas de felaktiga operationerna. Målet med arbetet har varit att utveckla en metod för att utvinna mer information från det system av verktyg som övervakas. Det är en av de viktigare aspekterna av Industrie 4.0 och Big Data. Specifikt har en metod för att undersöka om de tidsstämplar från operationerna som sparas, tillsammans med unik identifikation för varje produkt som tillverkas, kan användas för att ordna och gruppera kontrollenheter i en monteringslina för att kunna få en visuell översikt över monteringssystemet.

Metoden består av tre steg: datainhämtning, gruppering och sortering. Datainhämtningen hämtar information från databasen för ett antal produkter av samma produktvariant. För varje produkt som undersöks ordnas operationsresultatet i stigande tidsordning. Från databasen inhämtas tidsstämplar och kontrollenheternas ID. Utifrån att i ett histogram undersöka tiden mellan operationer hittas ett tidskriterium som avgör om två kontrollenheter befinner sig i samma arbetsstation under grupperingsstadiet. Antagandet är att om det är kort tid mellan två operationer utförda av olika kontrollenheter, hör kontrollenheterna till samma arbetsstation. Är tiden lång hör de inte till samma station. Sorteringen har två skeden: ett för att jämföra inom en produktvariant och ett för att jämföra olika varianter.

Metoden har undersökts mot experimentella data och enligt detta försök är det möjligt att använda sig av metoden för att uppnå målet av produktionsöversikt.

(3)

II

Abstract

The thesis was conducted at Atlas Copco, an industrial company producing and selling products within several business areas. For the thesis, the business area is industrial technique and more specifically electric screwdrivers with accompanying hard- and software. The goal with the thesis is to develop a method to test whether time stamps from screw tightening operations can be analyzed to get an overview of the system of tools. Atlas Copco offers a software product that collects the operational data from the tightening process. An important aspect of Industry 4.0 and Big Data is to extract useful information from the data that is collected from production, which this thesis is trying to do.

The methodology used was developed to read data from a database, more specifically the time stamps, identifications of control units for the tools and group the control units into workstations and sort them into a general composition of control units. This method has three parts: data collection, grouping and sorting. The data collection read data from the database where the production data is stored. For each product of a product variant, the tightening result is ordered in ascending time. The grouping stage looks at a histogram of time between tightenings. The theory is that if there is a short timespan between two operations performed by different control units, the two control units are in the same workstation. If the time is long, the units are not in the same station. From the histogram, a time criterion is found and the data is evaluated against that criterion. The sorting stage looks at the grouped workstations for each product within a product variant and sorts it into a production line and finally compares all evaluations for each product variant to create a final general production line with the correct units in the correct workstations and the stations in correct order.

The methodology was tested against experimental data and was found to work for that case.

(4)

III

Förord

(5)

IV

Innehållsförteckning

1. Introduktion ... 4 1.1. Problembeskrivning ... 6 1.2. Mål ... 6 1.3. Avgränsning ... 7 2. Litteraturstudie ... 8 2.1. Industrie 4.0 ... 8 2.1. Big Data ... 9 2.2. Embedded Systems ... 12 2.3. Cyber-Physical Systems ... 13

2.4. Industrial Internet of Things ... 16

3. Nulägesbeskrivning... 18

3.1. Översiktsmöjligheter i nuvarande system ... 18

4. Metod ... 19 4.1. Generell metod ... 19 4.2. Utformad metod ... 23 4.2.1. Datainhämtning ... 23 4.2.2. Gruppering ... 24 4.2.3. Sortering ... 27 5. Resultat ... 32 5.1. Experimentella data ... 32 5.2. Frågeställningar ... 36

6. Slutsatser och diskussion ... 38

Referenser och litteraturförteckning ... 41

Figurförteckning ... 42

Bilagor ... 43

Bilaga A: Histogram över tidsspann mellan åtdragningar för det experimentella fallet ... 43

Bilaga B: Programfil för konsolapplikation ... 44

Bilaga C: Klassfil för modellering av arbetsstation ... 52

(6)

4

1. Introduktion

Examensarbetet har utförts hos Atlas Copco som tillverkar och säljer produkter inom ett flertal affärsområden. Det specifika affärsområdet för arbetet är industriteknik där Atlas Copco utvecklar och säljer olika typer av industritekniska verktyg och lösningar. Elektriska skruvdragare med tillhörande kontrollenheter, mjukvara och övriga tillbehör för att underlätta och optimera monteringsprocessen är en av de viktigaste produkterna. Den största kundgruppen är fordonsindustrin vilket svarar för över hälften av det industritekniska affärsområdets intäkter.

De mer sofistikerade elektriska skruv- och mutterdragarsystemen består av två huvudkomponenter: verktyget och en kontrollenhet. Verktygen finns i utförande med både kabelkoppling och batteridrivning. Via kabeln tillförs verktyget med likström samt möjliggör kommunikation mellan verktyget och kontrollenheten. De batteridrivna verktygen tillförs likström via batteri och kommunicerar via Wi-Fi eller Bluetooth. Verktygen är utrustade med vinkel- och vridmomentsgivare som kontinuerligt övervakar värdet för de två parametrarna och kommunicerar dessa tillbaka till kontrollenheten. Kontrollenheterna kan kopplas till det industriella nätverket och till PLC-system i fabrik för t.ex. automatisk assignering av unik identifikation för en produkt. Kontrollenheten bidrar även med programmering av åtdragningsprocessen med flertalet strategier för att uppnå önskade parametrar i ett skruvförband.

(7)

5 åtdragningen då önskat moment är uppnått och det slutgiltiga momentet skickas direkt till kontrollenheten varifrån resultatet överförs till en databas.

Under åtdragning insamlas data relaterat till verktygets beteende och resultatet av själva åtdragningen. Exempel på data som insamlas är: moment och vinkel för åtdragningen, hur resultatet av åtdragningen relaterar till önskade parametrar, vilket verktyg som har utfört åtdragningen och när åtdragningen utfördes. Verktyget arbetar utifrån vissa parametrar som programmeras in i kontrollenheten. Det innehåller t.ex. önskat slutmoment för skruvförbandet, toleranser för slutmomentet osv.

Visualiseringen och testningen av produktionssystem blir allt mer en digital process. Att på ett enkelt och koncist vis kunna, med hjälp av en modell, förmedla informationen som skapas och flödar i ett system kan underlätta arbetet med att förbättra och optimera systemet. Det data som insamlas visualiseras för tillfället i ett tabellformat och det finns detaljerad information om varje individuell åtdragning. Det som saknas är att kunna se hur alla monteringsstationer är relaterade till varandra och hur detta påverkar hela monteringssystemet. Att kunna se visuellt hur produkter flödar mellan stationer och hur Atlas Copcos verktyg arbetar inom den stationen gör det enklare att få en visuell representation av var problem har uppstått under monteringsprocessen. Atlas Copco har tidigare erbjudit en digital produkt för att ha översikt över produktionssystemet där användaren kunnat lägga in en ritning över lokalen och manuellt placera ut kontrollenheter i programvaran på korrekt plats. Det gav en överblick över systemet och det gick att genomföra ändringar i produktionen från en central plats genom det lokala nätverket. Denna programvara var inte sammankopplad med den programvara som lagrar och visar samtliga resultat från systemet och det krävde manuell konfiguration för att få den korrekta layouten och översikten. Den produkten erbjuds inte längre men flertalet kunder har uttryckt att det är någonting som saknas i produktutbudet vilket är en bidragande faktor för arbetets utformning. Den huvudsakliga nyttan med arbetet är att försöka skapa nya värdeflöden genom att omvandla delar av operationsdata som finns lagrad från produktionen till värdefull information.

(8)

6 utvärderar data i de steg som definierats. Resultat och diskussion kring resultatet har dokumenterats för att rådgöra kring frågeställningar och mål.

1.1. Problembeskrivning

Examensarbetets huvudsakliga syfte är att utreda huruvida datainsamlingen som görs i samband med åtdragning av skruv med Atlas Copcos verktyg i fordonsindustrin är tillräcklig för att kunna, utan konfigurering av slutanvändaren, gruppera verktygskontroller till arbetsstationer. Detta är för att kunna visualisera ett produktionssystem och ha en realtidsöverblick av hur alla verktyg och kontrollenheter arbetar. Mer specifikt undersöks huruvida det går att avgöra operationsordning och gruppera tillhörande kontrollenheter till arbetsstationer utifrån de tidsstämplarna som finns för varje resultat. Arbetet ämnar att utifrån analysen av detta avgöra i vilka situationer det är möjligt att använda detta, och om det inte är en rimlig metod för detta ändamål föreslå andra infallsvinklar för att lösa problemet.

Frågeställningar:

1. Går det att utifrån resultatdata från åtdragningsprocessen, mer precist tidstämplar för resultatet, fastställa ordningen av kontrollenheter i ett monteringssystem av Atlas Copcos elektriska verktyg och kontrollenheter?

2. Går det att utifrån resultatdata från åtdragningsprocessen gruppera kontrollenheter i arbetsstationer?

3. Vilka begränsningar och möjligheter finns med att ordna och gruppera kontrollenheter utifrån åtdragningsdata?

1.2. Mål

(9)

7

1.3. Avgränsning

Inom det industritekniska affärsområdet är fordonsindustrin den största kundgruppen. De antaganden som har gjorts har därför gjorts utifrån förutsättningar inom fordonsmontering. Data som finns tillgänglig att använda för undersökningen i examensarbetet kommer från fordonsindustrin. Om resultatet av arbetet kan användas i företagets produktutbud kan den utvecklade metoden anpassas efter de behov som finns i andra industrier. Kunddata som undersöks i arbetet kommer från en taktad motormontering. Därför antas resultatet gälla för just taktade monteringssystem. Dessutom görs en avgränsning mot att resultatet appliceras på enskilda linor i monteringssystemet återigen på grund av att tillgängliga data kommer från en enskild monteringslina. Arbetet är grundläggande inom detta område och kan därför utökas med framtida projekt eller examensarbeten för att gälla för större system än enskilda linor. Arbetets syfte är inte att utveckla en färdig applikation som direkt kan användas i produktutbudet, utan strävar efter att undersöka en möjlig underliggande metodik för en applikation inom produktionsöversikt och visualisering.

(10)

8

2. Litteraturstudie

En litteraturstudie för att beskriva begreppen som möjliggör de förslag som framkommer i rapporten har genomförts. För att få en överblick över de ämnen som är relevanta för problemställningen har en tankekarta över ämnen som kan tänkas ingå i studien tagits fram.

2.1. Industrie 4.0

Industrie 4.0 är ett begrepp som ännu inte är helt definierat. Begreppet syftar på att industrier är på väg mot den fjärde industriella revolutionen (Hermann et al., 2016). De tidigare revolutionerna har utspelats från 1800-talet fram till slutet av 1900-talet. ”Den industriella revolutionen” syftar oftast på den första industriella revolutionen under 1800-talet där ångmaskinen och industrialisering är de viktigaste faktorerna. Den möjliggjorde den urbanisering som har lett till dagens moderna samhälle genom att öka antalet arbetstillfällen i städerna när fabriker byggdes. Den andra industriella revolutionen omfattar enligt Atkeson och Kehoe (2001) den andra halvan av 1800-talet. Under den tiden uppkom en mängd nya teknologier som t.ex. elektriciteten (Atkeson and Kehoe, 2001). Dock dröjde det innan flera av dessa teknologier började användas i fabriker. Flera historiker argumenterar för att fördröjningen beror på att fabrikerna var redan fullt fungerande med ångkraft och andra gamla

(11)

9 teknologier vilket gjorde att det krävdes stora ombyggnationer för att ta in de nya teknologierna (Atkeson and Kehoe, 2001). Den tredje revolutionen omfattar digitalisering och automatisering (Lasi et al., 2014).

Introduktionen av Internet och förbättring av datornätverk i början av 2000-talet har medfört en mängd fördelar för samhället. Internet, i samarbete med ökad digitalisering inom industrier och insamlingen och användandet av stora mängder data från olika processer, verkar kunna utgöra ett nytt paradigmskifte inom industrier på flera nivåer av värdekedjorna. Att införa internetteknologi, dvs. nätverksfunktioner, i verktyg/maskiner samt produkter i tillverkning skapas ”smarta objekt” som är kapabla att samarbeta med varandra och sin omgivning. Detta samarbete leder till en högre grad av automatisering och i samband med modulära, flexibla och effektiva produktionssystem ger bättre möjligheter för produktindividualisering men med de ekonomiska fördelarna med klassisk masstillverkning.

De koncept inom Industrie 4.0 som är relevanta för arbetet är: Big Data, Cyber-Physical Systems och Industrial Internet of Things. Dessa ämnen är viktiga för att förstå bakgrunden till arbetet och för att förstå målet med arbetet. De kommande delkapitlen beskriver dessa områden och ger en förklaring över kopplingen till Atlas Copcos produkter och hur ämnena är viktiga för att uppnå examensarbetets mål.

Industrie 4.0 som stort begrepp är viktigt för arbetet då det är ett försök att förstå framtidens produktionssystem. Atlas Copcos verktyg uppfyller flertalet aspekter inom Industrie 4.0 men målet med arbetet är ett försök att utnyttja vissa aspekter och ta produkterna ännu mer in i framtidens produktionssystem.

2.1. Big Data

Big Data som begrepp nämns första gången under 1990-talet men har sedan 2010 växt till ett vedertaget begrepp(Gandomi and Haider, 2015). Den explosionsartade tillväxten av satsningar på Big Data är mycket tack vare av att några av världens största IT-företag, t.ex. IBM, har gjort stora satsningar inom området (Gandomi and Haider, 2015).

(12)

10 tekniken har avancerat till en nivå där en stor mängd produkter konstant genererar data av olika slag. Det kan ses i t.ex. tillväxten av smarta telefoner. De är konstant uppkopplade mot internet och användare genererar mycket data genom att skriva på bloggar, forum och sociala medier (Gandomi and Haider, 2015). Men även inom industrin har mängden data som genereras ökat. Detta beror till stor del på att utvecklingen av sensorer har kommit till en punkt där det är billigt att införskaffa och installera sensorer för att övervaka olika processer (CPS architecture).

En följd av den stora datamängden är att mycket data som lagras inte kommer till någon användning. Ett viktigt koncept inom Big Data är därför att extrahera användbar information ur den stora massan (av data) som konstant strömmar in (Gandomi and Haider, 2015). Det kan göras i realtid eller jobba mot historiska data för att hitta mönster i olika analyser för att ta korrekta beslut som förbättrar de system eller processer som data kommer ifrån (Gandomi and Haider, 2015).Det kan sägas, att när massiva mängder rådata samlas in har data en låg värdedensitet (Gandomi and Haider, 2015). Med detta menas att data i sig har ett väldigt litet värde i förhållande till den plats den upptar (Gandomi and Haider, 2015). Värde uppstår om en informationsextraktion kan göras ur den stora mängden som kan användas för stöd vid beslutsfattning. En viktig aspekt av informationsextraktion inom Big Data är att skapa nya värdeflöden genom nya affärsmodeller som utnyttjar det data som finns. Data är då inte bara något som hjälper till vid beslut eller kan optimera processer, utan också ett sätt att skapa nya sätt att göra affärer på genom att data genererar värde (McKinsey, 2015).

(13)

11 Den klassiska tillverkningen arbetar med förbättringar i den nedre och vänstra rutan i Figur 2. Det sker genom standardiserade samt kontinuerliga förbättringsmetoder. De övre rutorna beskriver att förebyggande arbeta för att undvika att problem uppstår. De två vänstra rutorna beskriver synliga/uppenbara problem och fel. De nedre rutorna beskriver att lösa problem som uppstår och de högra rutorna beskriver osynliga/icke uppenbara problem och fel. Utmaningen för organisationer i framtiden består av att hitta metoder för att förflytta sitt arbetssätt från den nedre vänstra rutan till den högra övre utan. Den högra övre rutan är den där Big Data har störst möjlighet då den beskriver ett arbetssätt som proaktivt hittar osynliga problem och löser dessa genom att utvinna värdeskapande information ur stora datamängder (Lee et al., 2013).

När det gäller stora datamängder måste nya sätt att lagra data appliceras. Det traditionella sättet att lagra t.ex. produktionsdata är i relationsdatabaser, som är ett sätt att lagra strukturerade data. Dock uppskattas endast ca fem procent av all genererad data som strukturerad vilket talar för vikten av att utveckla att metoder för att hantera ostrukturerade data (Gandomi and Haider, 2015).

I förhållande till målbilden för denna rapport är Big Data ett viktigt koncept då syftet är att utforska möjligheterna för nya affärsmodeller genom användning av de stora mängderna data som verktygen genererar. Att hitta dolda problem och hur problem påverkar hela systemet är något som kunder kan utnyttja för att förbättra sina system av verktyg från Atlas Copco.

(14)

12

2.2. Embedded Systems

Embedded systems (inbyggda system) är hårdvara med tillhörande inbyggd mjukvara, utvecklade för att utföra en specifik uppgift (Krief, 2013). Mjukvaran i ett inbyggt system ligger lagrad i minnet inuti produkten och är på det sättet skyddad från omgivningen. Det ger ett mer driftsäkert system än en persondator då det inbyggda systemet inte är gjort för att omprogrammeras av slutanvändaren (Heath, 2002). Dock kan ett flertal program lagras i systemet vilket gör att användaren kan specificera funktionen. Ett exempel på ett inbyggt system är en tvättmaskin. Den är utvecklad specifikt för att tvätta kläder och har inbyggd mjukvara som kontrollerar tvättningsprocessen. Användaren kan dock specificera vilket tvättprogram som ska köras, t.ex. 30 grader handtvätt (Heath, 2002).

Digitala logiska grindar användes i mitten av 1900-talet för logisk kontroll (Heath, 2002). För att tillverka en fungerande miniräknare med fyra funktioner krävdes det hundratals logiska grindar vilket ledde till utvecklingen av mikroprocessorn (Heath, 2002). Dessa var mindre än den stora mängden logiska grindar som krävdes tidigare men ett chip hade fortfarande en funktion. Detta var ett stort steg framåt men fortfarande inte önskvärt då smidigheten i produkten minskades då det fortfarande krävdes specifika processorer för specifika uppgifter (Heath, 2002). Det ledde till att den moderna mikroprocessorn utvecklades. Den bestod av ett enda chip och funktionaliteten berodde på programvaran som kördes på processorn, inte vilka chip som var installerade (Heath, 2002). Detta ledde till att funktionaliteten mycket lättare kunde ändras vilket ökade flexibiliteten i utvecklingsprocessen. Två produkter kunde utvecklas ur samma hårdvara då den egentliga funktionen låg i mjukvaran. Vidareutveckling av produkter underlättades då mer funktioner kunde läggas till den existerande mjukvaran för att göra effektivare system allteftersom mikroprocessorerna blev mer kraftfulla. Färre ingående delar i en produkt underlättade även underhåll och reparationer av produkter. Mikroprocessorer ökar även möjligheten för reglerteknisk kontroll (Heath, 2002). I t.ex. en bensinmotor kan återkoppling av motorns prestanda via en mikroprocessor öka prestandan på motorn genom att reglera bränslemängden och luftintaget (Heath, 2002).

(15)

13 i vårt dagliga liv. De finns i allt från persondatorer, mobiltelefoner och tv-apparater till bilar och vitvaror. Mikroprocessorn har revolutionerat det moderna samhället.

Dagens inbyggda system kan, och måste kunna, kommunicera med sin omgivning. Det har lett till att tre olika tekniska områden har slutits samman: elektronik, IT och nätverkskommunikationer. Detta innebär att produktutvecklingen av inbyggda system är mer tvärvetenskaplig än det var innan mikroprocessorns inträde i industrin (Krief, 2013). För Atlas Copcos skruvdragare har detta varit tydligt. Utvecklingen av skruvdragarna var länge mest fokuserad på elektromekanik men sedan den inbyggda tekniken har förbättrats har även Atlas Copcos skruvdragare och tillhörande system implementerat mer mjukvara. Utvecklare måste därför arbeta mer tvärfunktionellt och personer med olika kompetenser måste ingå i utvecklingslagen.

Inbyggda system är den digitala grunden till Atlas Copcos skruvdragarprodukter. De möjliggör smidigheten i de elektriska verktygen då verktygen kan ställas in för önskade situationer och de kan förmedla information om processen vidare.

2.3. Cyber-Physical Systems

(16)

14 hög grad av automatisering för produktionssystem bestående av CPS (Khaitan and McCalley, 2015).

En viktig aspekt av CPS är att den fysiska världen representeras i den digitala världen. Det finns modeller som beskriver och visualiserar systemen och de processer de utför (Hermann et al., 2016). Tredimensionella modeller ger en visuell överblick av systemet och sensorerna ger realtidsinformation om systemets prestanda. Detta gör att systemet kan övervakas för olika aspekter från annan plats än fabriksgolvet. Den decentraliserade och automatiserade kontrollen av system är en viktig del av Industrie 4.0. Den aspekten möjliggörs mycket av CPS. Det som sammankopplar Big Data och CPS är att stora mängder data genereras och insamlas från dessa system. Eftersom bearbetning av data till information är en av de viktigaste delarna av Big Data betyder det att CPS måste utvecklas för att utvinna viktig information om sig själv och de andra maskinerna i systemet för att kunna samordna dess arbete med omgivningen. Detta är viktigt för att uppnå de smarta system som är intelligenta, robusta och självanpassande (Lee, 2008).

(17)

15 Den första nivån består av att enkelt kunna koppla upp ett CPS, alltså att det är enkelt att starta upp systemet för produktion, det är utrustat med nödvändiga sensorer och mätverktyg och att det kan kommunicera med sin omgivning. Den andra nivån innefattar omvandling av data till information och att alla digitala verktyg som behövs finns för att kunna mäta t.ex. maskinens hälsa. Cybernivån handlar om de digitala modeller som visualiserar det fysiska systemet. Det innebär även flera digitala verktyg för att hitta mönster och jämföra information för sammankopplade CPS. Den fjärde nivån innebär att maskinerna kan samarbeta utifrån data som de delar med varandra samt att visualisera systemet och informationen i det till mänskliga användare på avstånd. Den femte, och sista nivån i strukturen handlar om de självgående faktorerna av ett CPS inom Industrie 4.0. Systemet kan ställa in sig själv och lägga om i produktionen utan mänsklig inblandning när t.ex. störningar uppstår i tillverkningsprocessen (Lee et al., 2015).

Är ett produktionssystem uppbyggt av samma sorts maskin är det lättare att uppnå de steg som tidigare nämnts. Ofta är produktionssystem en sammansättning av en mängd olika sorters maskiner och CPS. Därför måste de analyserande system som utvecklas för CPS inte bara kunna hantera stora mängder data, utan även olika sorters data (Theorin et al., 2016).

(18)

16 För Atlas Copcos verktyg uppfylls en del av aspekterna för ett CPS anpassat till Industrie 4.0. De kan påverka sin omgivning, de kan kommunicera och de samlar in stora mängder åtdragningsdata. Analys av den insamlade datan för att kunna dra slutsatser om verktygens, kontrollenheternas och monteringssystemets prestanda är nästa steg för att fullt utnyttja de principer som är viktiga för CPS och Industrie 4.0. Den viktigaste aspekten är att grunden för att kunna göra dessa saker finns men att det saknas vissa steg för att fullt utnyttja de fördelar som med CPS och Industrie 4.0 innefattar.

2.4. Industrial Internet of Things

Industrial Internet of Thing (IIoT) är ett sätt att öka kunskapen inom ett företags områden och operationer genom att öka användandet och integrationen av sensorer, mjukvara, beräkningar och lagring av data i molnet med mera (Gilchrist, 2016). Det är att transformera ett företags processer genom att använda sig av återkoppling från avancerad analys av stora datamängder vilket skapar effektivitetsförbättringar och ökar produktivitet (Gilchrist, 2016). Det leder i det långa loppet till ökade vinster genom förbättrade operationer inom företaget (Gilchrist, 2016). De tekniker som möjliggör detta finns redan i liknande former i Maskin till Maskin-kopplingar (M2M) men IIoT görs i en betydligt större skala. Det är nära kopplat till Big Data vilket möjliggör analysen av data inom en molnmiljö (Gilchrist, 2016). En viktig aspekt av IIoT är att det krävs små investeringar i teknologin bakom för att skapa stora förbättringar (Gilchrist, 2016).

(19)
(20)

18

3. Nulägesbeskrivning

Den mjukvaruprodukt som samlar in åtdragningsresultat är i dagsläget endast utvecklad för resultatinsamling och åtkomst till resultatinformationen vid ett senare tillfälle. Syftet med produkten är att öka spårbarheten i monteringsprocesser samt att produkter uppnår Built-In-Quality (BIQ) (Petersson et al., 2010). BIQ är ett viktigt begrepp inom Lean då det innebär att produktionsprocessen utförs korrekt på en gång. Det minskar behovet för kontroller av produkterna i efterhand vilket sparar mycket tid (Petersson et al., 2010). Att kunna utnyttja data som finns är som ovan nämnt ett viktigt koncept inom Big Data och därför finns en önskan om att utveckla en applikation för att få översikt i ett produktionssystem utifrån data som genereras av systemet. En viktig aspekt är att trots att det insamlas en stor mängd data i systemet är det inte tillräckligt med värdeskapande information som utvinns. Det är en av de viktigaste aspekterna inom Industrie 4.0 och Big Data vilket gör att det finns stora möjligheter att utöka det nuvarande systemets värdeskapande kapacitet. Systemet tillför mycket till Atlas Copcos kunder men för att fortsätta utvecklas och att fortsätta vara slagkraftiga på marknaden i framtiden krävs det att nya sätt att skapa värde för kunderna utvecklas.

3.1. Översiktsmöjligheter i nuvarande system

(21)

19

4. Metod

4.1. Generell metod

En litteraturstudie för att visa de koncept som är viktiga för bakgrunden till detta examensarbete har utförts. För att kunna använda data från databasen har en undersökning gjorts för att förstå vilken information som insamlas från verktygen och monteringssystemet. De viktiga tabellerna och kolumnerna för arbetet har identifierats från denna undersökning. För att hämta information från databasen har de korrekta SQL-frågorna tagits fram. Efter denna grundläggande undersökning av litteratur och viktiga koncept för arbetet påbörjades konceptutvecklingen av en metod för att kunna gruppera kontrollenheter i arbetsstationer för olika produktvarianter och att slutligen sammanslå och sortera dessa till en generell sammansättning av arbetsstationer i korrekt ordning.

För att utveckla metoden behövs att en kravspecifikation för metoden definieras. Genom definitionen och målet för examensarbetet kunde specifikationen bestämmas. Metoden skall undersöka huruvida det går att sortera kontrollenheter i ett monteringssystem i korrekt ordning för varje produktvariant och gruppera dessa till arbetsstationer. Slutligen ska skapa en generell sammansättning av arbetsstationer som gäller för samtliga produktvarianter som monteras i ett system med hjälp av de tidsstämplar från åtdragningar som lagras i en databas. Detta har gjorts stegvis genom att skriva en konsolapplikation i Visual C#. En konsolapplikation är ett datorprogram som använder sig av ett textbaserat gränssnitt, i det här fallet av Windows kommandotolk. Programmeringsspråket valdes pga. mjukvaruutvecklingen för den mjukvara som samlar in operationsdata görs i Visual C# samt att den databasmotor som hanterar insamlade data är väl integrerat med språket.

(22)

20 UnitID ResultDateTime 15 2016-06-03 21:35:19.000 15 2016-06-03 21:35:19.000 15 2016-06-03 21:35:19.000 15 2016-06-03 21:35:19.000 14 2016-06-03 21:35:17.000 14 2016-06-03 21:35:17.000 14 2016-06-03 21:35:17.000 14 2016-06-03 21:35:17.000 14 2016-06-03 21:35:17.000 14 2016-06-03 21:35:17.000 14 2016-06-03 21:35:17.000 14 2016-06-03 21:35:17.000 14 2016-06-03 21:35:17.000 14 2016-06-03 21:35:17.000 14 2016-06-03 21:35:17.000 14 2016-06-03 21:35:17.000 14 2016-06-03 21:35:17.000 14 2016-06-03 21:35:17.000 14 2016-06-03 21:35:17.000 14 2016-06-03 21:35:17.000

Figur 4: Tabell med UnitID och ResultDateTime från Result-tabellen i databasen

Det kan tydligt ses i Figur 4 att vissa resultat är skapade av samma UnitID på exakt samma klockslag. Dessa resultat kommer från de fixturerade verktygen. Dessa verktyg kontrolleras av liknande kontrollenheter som de handhållna men har utökad funktionalitet för att kontrollera verktyget tillsammans med de aktuatorer de är fixerade på. Resultatet initieras då programcykeln för åtdragningarna påbörjas vilket gör att resultatet visas som simultana resultat.

(23)

21 möjliga grad. Systemet monterar en godtycklig produkt bestående av tre produktvarianter. Anledning till att tre varianter tillverkas är för att efterlikna verkligheten och för att testa olika situationer som kan uppstå i ett verkligt system. Systemet består av tio stycken arbetsstationer med varierande uppsättning kontrollenheter. Systemets uppbyggnad med vilka kontrollenheter som ingår i varje arbetsstation kan ses i Figur 5 nedan.

Det enda som är intressant är att se ordningsföljden för arbetsstationerna och vilka

kontrollenheter som ingår i varje station vilket används som verifikation för metoden. Kontrollenheternas UnitID är endast en betäckning för kontrollenheten och siffran är inte kopplad till den ordning de är placerade i. De olika produktvarianterna har olika operationsplaner. Planen för produktvariant Typ A visas i nedanstående Figur 6.

(24)

22 Figuren visar i vilken ordning av kontrollenheter som Typ A genomgår operationer av i varje arbetsstation. Varje siffra beskriver alltså en operation utförd av en specifik kontrollenhet och de utförs från vänster till höger i tabellen.

Figur 7 visar på de skillnader i operationer som Typ B genomgår jämfört med Typ A. De skillnader som finns ligger i arbetsstation nummer fem och nummer nio. Där har det valts att utföras andra monteringsoperationer än skruvåtdragning.

(25)

23 Slutligen kan vi se operationsplanen för Typ C i Figur 8. Skillnaderna mot Typ A och Typ B är att det inte görs några andra monteringsoperationer än skruvåtdragning men i arbetsstation nummer fem utförs de av UnitID 20 istället för UnitID 9 som i Typ A. Dessutom är det ett färre antal operationer i arbetsstation nummer sju där operationerna gjorda av UnitID 13 för Typ A och Typ B utgår för Typ C.

4.2. Utformad metod

Det finns tre sektioner av applikationen: datainhämtning, gruppering och sortering. De tre sektionerna beskrivs i detalj nedan och metoden den följer beskrivs med ett mindre exempel.

4.2.1. Datainhämtning

Datainhämtningen baseras i att data lagras i en relationsdatabas. Databasmotorn för databasen är Microsoft SQL Server. Visual C# är ett språk utvecklat av Microsoft och ingår i .Net-Framework. Detta gör att det finns inbyggda kommandon i språket för att kommunicera med relationsdatabaser med hjälp av SQL. Den specifika versionen av SQL är Transact SQL (T-SQL), vilket är anpassat för att arbeta mot Microsoft SQL Server. Då den utvecklade metoden jobbar med kontrollenheter och tidsstämplar är det viktigt att hämta rätt data från databasen.

Den första sorteringen av data sker i urvalet. Där väljs att titta på alla sparade åtdragningar för produkter av varje produktvariant. Dessa åtdragningar sorteras efter stigande tid och operationsordningen fås för varje produkt. Varje resultat lagras med en mängd information i flertalet tabeller i databasen. Tre stycken tabeller är av intresse för metoden: Result,

(26)

24 ResultIdentifier och ResultToResultIdentifier. I Result-tabellen finns information om varje åtdragning, t.ex. om åtdragningen var godkänd eller inte, vilken kontrollenhet som resultatet kommer från och den för metoden högst viktiga informationen om vilken tid åtdragningen har gjorts. ResultIdentifier innehåller en unik identifikation för varje produkt. Produktens ID kan t.ex. från att produkten är försedd med en streckkod som skannas för att lagra produkten i systemet. ResultToResultIdentifier är en tabell som kopplar samman varje resultat med ett produkt-ID för att visa vilka åtdragande operationer som har gjorts på varje produkt. De kolumner som är intressanta för metoden är UnitID, vilket indikerar vilken kontrollenhet som har rapporterat resultatet, och ResultDateTime vilket indikerar vilken tid verktyget har utfört åtdragningen. Först inhämtas vilka produkter som ska analyseras från ResultIdentifier-tabellen där de olika produktvarianterna separeras.

Vissa produkter måste sorteras ut för att inte snedvrida resultaten. Produkter med felaktigheter kan ha tagits åt sidan senare till en omarbetningsstation för att korrigeras vilket gör att den faktiska produktionsordningen inte kommer att bli korrekt. Därför väljs endast de produkter som inte har några felaktiga resultat. Vissa produkter har endast ett fåtal resultat registrerade av olika anledningar. Dessa kommer därför också att göra att utvärderingen ger ett felaktigt resultat. Därför hittas först vilket antal operationer som är standard för den produkten och endast produkter som uppfyller detta kriterium väljs ut för analys. Detta kan ses genom att titta på ett antal produkter och att göra ett histogram av antalet operationer på produkterna. De produkter som till antalet är flest för en mängd operationer väljs som de produkter som ska utvärderas. En tredje bestämd avgränsning är de senaste tillverkade produkterna som uppfyller de tidigare kraven väljs ut för att undvika att en tidigare sammansättning av monteringssystemet analyseras. Om en ändring har gjorts i monteringssystemet där kontrollenheter har flyttats p.g.a. t.ex. obalans i monteringsprocessen, kan de senare stegen i metoden utvärdera systemet felaktigt. Efter att alla dessa krav har utvärderats och de korrekta produkterna har valts ut för analys hämtas informationen från Result-tabellen där de intressanta kolumnerna är tidsstämpeln för operationen (ResultDateTime-kolumnen), och vilken kontrollenhet som har registrerat det resultatet (UnitID-kolumnen).

4.2.2. Gruppering

(27)

25 tidsspannet mellan varje operation. Antagandet som har gjorts är att ett kort tidsspann markerar att två operationer har utförts inom samma arbetsstation. Ett längre tidsspann markerar att en förflyttning till en ny arbetsstation har gjorts mellan de två operationerna. Det betyder att gränsen för om två kontrollenheter befinner sig inom samma arbetsstation kan finnas genom denna metod och ett gränsvärde kan sättas som ett kriterium. Det är enligt detta kriterium som kontrollenheterna sedan grupperas.

Det första som görs i metoden är att från resultatordningen sortera ut den ordning av kontrollenheter som produkten bearbetas med. Det är antaget att två dragningar från en kontrollenhet måste ha utförts i samma arbetsstation. Två på varandra följande operationer utvärderas därför enligt följande mönster:

 Är tiden mellan de två operationerna under det tidskriterium som tidigare bestämt och är det UnitID som utfört den senare av de två operationerna i jämförelsen tidigare registrerat?

a. Om tiden är kortare och det specifika UnitID för den senare operationern inte registrerad, läggs UnitIDet till i listan över UnitID för den arbetsstation som är aktiv.

b. Om tiden är kortare men UnitIDet redan finns registrerat, görs ingenting. c. Om tiden är längre än kriteriet och operationen inte är utfört av samma UnitID,

(28)

26 Stegen nämnda ovan fortgår tills de är utförda för de produkter som identifierats i tidigare steg av metoden.

Produkt 1

Produkt 2

Produkt 3 Produkt 4 Produkt 5 Produkt 6 Produkt 7

WS 1: UnitID: 1, 2 WS 1: UnitID: 1, 2 WS 1: UnitID: 1, 2 WS 1: UnitID: 1, 2 WS 1: UnitID: 1, 2 WS 1: UnitID: 1, 2 WS 1: UnitID: 1, 2 WS 2: UnitID: 3 WS 2: UnitID: 3 WS 2: UnitID: 3 WS 2: UnitID: 3 WS 2: UnitID: 3 WS 2: UnitID: 3 WS 2: UnitID: 3 WS 3: UnitID: 4, 5 WS 3: UnitID: 4, 5 WS 3: UnitID: 4 WS 3: UnitID: 4, 5 WS 3: UnitID: 4, 5 WS 3: UnitID: 4, 5 WS 3: UnitID: 4, 5 WS 4: UnitID: 6, 7, 8 WS 4: UnitID: 6, 7, 8 WS 4: UnitID: 5, 6, 7, 8 WS 4: UnitID: 6, 7, 8 WS 4: UnitID: 6, 7, 8 WS 4: UnitID: 6, 7 WS 4: UnitID: 6, 7, 8 WS 5: UnitID: 9 WS 5: UnitID: 9 WS 5: UnitID: 9 WS 5: UnitID: 9 WS 5: UnitID: 9 WS 5: UnitID: 8, 9 WS 5: UnitID: 9 WS 6: UnitID: 10 WS 6: UnitID: 10 WS 6: UnitID: 10, 11 WS 6: UnitID: 10, 11, 12 WS 6: UnitID: 10 WS 6: UnitID: 10, 11, 12 WS 6: UnitID: 10 WS 7: UnitID: 11, 12 WS 7: UnitID: 11, 12 WS 7: UnitID: 12 WS 7: UnitID: 11, 12 WS 7: UnitID: 11, 12

Figur 9: Gruppering för individuella produkter av en produktvariant

(29)

27 4.2.3. Sortering

Sorteringens uppgift är att utifrån det tidigare steget skapa en lista med arbetsstationer som är generell och visar ordningen på arbetsstationerna och alla kontrollenheter som ingår i varje station. Detta görs genom att först trycka samman alla de listor som skapades under grupperingen, dvs. att kontrollenheterna i varje arbetsstation med samma ID adderas. Det kan ses i Figur 10 nedan. Då tabellen i Figur 9 ovan adderas horisontellt kommer det att uppkomma en mängd dubbletter i den nya listan vilket gör att nästa steg är att radera dubblerade UnitID i varje arbetsstation.

Figuren visar på hur dessa steg har utförts på exemplet. Som Figur 10 även visar, finns några kontrollenheter i flera arbetsstationer, t.ex. kontrollenhet med UnitID 5 som finns i både arbetsstation WS 3 och WS 4. Metoden är utvecklad med antagandet att två kontrollenheter befinner sig i samma arbetsstation om tiden mellan två operationer är kortare än det kriterium som har identifierats i tidigare steg. Därför måste slutsatsen att om en kontrollenhet har sorterats in i en tidigare arbetsstation, kan den inte finnas i en senare. Exempelvis UnitID 5 bör rimligtvis återfinnas endast i arbetsstation WS 3 eftersom den någon gång under sorteringen har sorterats in i den arbetsstationen. Sorteringsalgoritmen är därför utformad att från den sista arbetsstationen undersöka om ett UnitID finns i en tidigare arbetsstation och plocka bort det utifall det finns tidigare i listan.

(30)

28 Denna metod kan ses i Figur 11. När det har gjorts för hela listan kommer en slutgiltig version av sammansättningen för monteringslinan att ha grupperats och sorterats vilket kan ses i Figur 12 nedan.

Workstations

WS 1:

1,2

WS 2:

3

WS 3:

4,5

WS 4:

6,7,8

WS 5:

9

WS 6:

10,11,12

(31)

29 Denna sorteringsmetod måste genomföras för individuella produktvarianter. Om metoden används på alla produkter utan att göra en separation av varianter kommer inte en korrekt bild av monteringssystemet att produceras. Exempelvis ser grupperingen för produktvariant Typ A Figur 12 och variant Typ B följer nedanstående arbetsstationsordning efter sortering.

Workstations

WS 1:

1,2

WS 2:

4,5

WS 3:

6,7,8

WS 4:

9

WS 5:

10,11,12

Figur 13: Exempel på sorterad sammansättning för en annan produktvariant

Typ B genomgår inte en dragaroperation från UnitID 3 som i det tidigare exemplet för Typ A har sorterats till arbetsstation WS 2. Om samma sorteringsmetod utförs för att jämföra de sorterade arbetsstationerna för de två produktvarianterna kommer det att leda till att station WS 2 och WS 3 för Typ A sammanslås i det horisontella steget. När sedan nästa steg utförs där UnitIDs plockas bort om de finns tidigare i listan, kommer den generella sammansättningen ha UnitID 3, 4 och 5 i samma arbetsstation vilket vi vet inte stämmer då de är separerade för Typ A. För att undvika detta har ytterligare ett steg i metoden utvecklats för att jämföra och skapa en generell ordning av korrekt grupperade arbetsstationer.

(32)

30 sätt. Med detta exempel är det endast avsaknaden av en operation i typ B som är skillnaden och därför blir den generella sammansättningen samma som för typ A. Om vi däremot utökar exemplet med en produktvariant Typ C där ett nytt UnitID används i en arbetsstation blir skillnaden större.

Workstations

WS 1:

1,2

WS 2:

3

WS 3:

4,5

WS 4:

6,7,8

WS 5:

13

WS 6:

10,11,12

Figur 14: Exempel på en tredje sorterad sammansättning

Figur 14 visar den sorterade sammansättningen för produkttyp C. Där visas att i arbetsstation nummer fem har ett resultat rapporterats av UnitID 13 istället för UnitID 9. Den undersökning som genomförs då visar på att UnitID inte finns i listan som jämförelsen görs mot. Då används kringliggande arbetsstationer för att avgöra placeringen på detta UnitID. I exemplet har arbetsstation WS 4 och WS 6 sammansättningen UnitID 6, 7, 8 respektive UnitID 10, 11, 12. Därefter letas dessa upp i jämförelselistan och UnitID läggs till den korrekta arbetsstationen och jämförelselistan uppdateras. När detta är utfört för samtliga produktvarianter som undersöks är utvärdering klar.

(33)
(34)

32

5. Resultat

5.1. Experimentella data

(35)

33 Utvärderingen gjordes stegvis för de tre produkttyperna i det experimentella systemet. I Figur 15 visas den utförda grupperingen för produktvariant A.

Figuren är tagen från kommandotolken i Windows där applikationens textgränssnitt körs. I figuren ses att den gruppering som är gjord överensstämmer med konfigurationen av monteringssystemet som visas i Figur 5 och att grupperingen överensstämmer med operationsplanen för produktvarianten A.

(36)

34 Figur 16 visar grupperingen för produktvariant B. Grupperingen är korrekt enligt systemets konfiguration och applikationen fungerar som väntat. Även operationsplanen för produktvariant B uppfylls utifrån grupperingen.

(37)

35 Figur 17 föreställer utvärderingen av produktvariant C och Figur 18 översiktsbilden efter metodens sista steg. Även i det tredje fallet grupperas kontrollenheterna korrekt i förhållande till konfiguration och operationsplan. Systemöversikten, vilken är sammansatt utifrån de tidigare grupperingarna av varje produktvariant, överensstämmer med Figur 4 över systemets konfiguration. Det finns tio arbetsstationer vilket stämmer med konfigurationen. Kontrollenheterna är placerade i korrekt arbetsstation enligt systemets uppbyggnad och kan därför sägas gälla för det generella fallet för detta system där operationsplanerna skiljer sig på olika sätt mellan de olika produktvarianterna. Testet har utförts i olika ordningar för det sista systemet där först Typ C har jämförts mot Typ B och sist Typ A mot den tidigare jämförelsen. Alla möjliga kombinationer av ordningen har testats och resultatet har blivit detsamma varje gång, dvs. korrekt utvärdering.

(38)

36

5.2. Frågeställningar

1. Går det att utifrån resultatdata från åtdragningsprocessen fastställa ordningen av kontrollenheter i ett monteringssystem, bestående av Atlas Copcos verktyg och kontrollenheter?

För det experimentella fallet går svaret att verifiera med hjälp av de figurer ovan som beskriver systemet och de figurer som är tagna från att applikationen körs mot datan. Det är inte möjligt för det verkliga fallet som beskrivet ovan. Baserat på det experimentella fallet kan slutsatsen dras, att om ett produktionssystem med Atlas Copcos verktyg beter sig som det experimentella produktionssystem som beskrivits i rapporten, är det möjligt att hitta ett tidskriterium för att gruppera kontrollenheterna i arbetsstationer. För det experimentella fallet jämförs grupperingarna för varje produkttyp på ett korrekt sätt och en bild över ett system som har samma sammansättning som det beskrivna systemet i Figur 4 ges som resultat av metoden. För det verkliga fallet kan endast med säkerhet sägas att det går att visa på operationsordningen för varje individuell produkt men det går inte att med säkerhet säga att övriga aspekter av metoden är giltiga för det verkliga fallet.

Svar: Om ett produktionssystem är uppbyggt och beter sig på det sätt som det experimentella fallet i rapporten, fungerar den utvecklade metoden. Arbetets metod visar då på att i vissa fall är det möjligt att skapa en generell sammansättning av kontrollenheter i specifika arbetsstationer i korrekt ordning. Det går dock inte att säga den exakta geografiska placeringen för kontrollenheterna. Det visar dock i vilken ordning som en produkt befinner sig i tillräcklig närhet för att arbete ska kunna utföras på produkten av en viss kontrollenhet.

2. Går det att utifrån resultatdata från åtdragningsprocessen gruppera kontrollenheter i arbetsstationer?

(39)

37

3. Vilka begränsningar och möjligheter finns med att ordna och gruppera kontrollenheter utifrån åtdragningsdata?

(40)

38

6. Slutsatser och diskussion

Resultatet är i dagsläget inte tillräckligt för att definitivt säga att metoden kommer fungera i ett verkligt och generellt scenario. Att jobba med data på det här sättet introducerar risk för att systemet är felaktigt representerat. Det finns många variabler och situationer i ett verkligt produktionssystem som inte existerar i det experimentfall som presenterats i denna rapport. Metoden har utvecklats utifrån experimentella data som har skapats samt den kunddata som fanns att tillgå. Därför är det svårt att säga exakt huruvida den utvecklade metoden kommer att fungera i det generella fallet. Eftersom kunden dessutom inte bidragit med något material kan det inte verifieras att metoden utvärderar det verkliga systemet på korrekt sätt. Om det hade funnits information om kundens system, t.ex. en layout med kontrollenheterna markerade eller information om operationsordning för de olika produkterna hade det kunnat verifieras och resultatet hade varit mer pålitligt för det generella fallet.

Ett problem med att de experimentella data är genererad i Excel är att det inte är skapat för att simulera ett system av den typen som Atlas Copcos verktygssystem är. Det är svårt att simulera stopp av olika slag och data blir därför lätt för nominellt. Att skapa denna data i ett dedikerat simuleringsverktyg hade hjälpt att skapa en bättre bild för metodens egenskaper att skapa en bild av hur systemet ser ut. Tidsramen för arbetet tillät inte att detta genomfördes. Ett annat alternativ hade varit att använda sig av den testutrustning som Atlas Copco har för att få en bättre bild av ett verkligt monteringssystem.

(41)

39 Att använda sig av tidsstämplar för att skapa en visuell bild över systemet som övervakas är en bra idé eftersom det är något som redan finns i systemet. Det skapar färre saker att underhålla i en applikation och är något som är en del av grunden för applikationens uppgift. Att introducera nya metoder och kopplingar i mjukvaran mot systemet skulle kunna ge en mer korrekt bild över monteringssystemets uppbyggnad. Men det skapar ytterligare funktioner som ska underhållas och uppdateras i takt med att resten av applikationen växer. Det finns dock risker med att använda sig av tidsstämplarna. Om fel uppstår i verktygen eller kontrollenheterna som gör att tiden i dessa inte överensstämmer med databasmotorns interna tid kommer tiderna i Result-tabellen att visas felaktigt vilket gör att det inte går att förlita sig på tiden som en rimlig kandidat för att åstadkomma den önskade funktionen. Om kontrollenheter flyttas i monteringssystemet och metoden inte har hunnit ta detta i beaktande kommer systemet att felaktigt representeras under den tid som detta inte uppdateras. Det kräver ytterligare hjälpdata för att kunna utföra detta vilket ökar data i systemet, t.ex. en tabell eller kolumn för när senaste ändringen av monteringssystemet är gjord för att se hur uppdaterad den visuella representationen är.

Något som inte är undersökt är hur väl denna lösning integreras med den existerande mjukvaruprodukten för datainsamling. Är applikationen inte kompatibel med denna metod är metoden värdelös. Då jag inte har en programmeringsbakgrund, utan har fått lära mig det mesta under arbetets gång är den konsolapplikation som använts förmodligen inte den mest effektiva. Det finns därför mycket att arbeta med inom effektivisering av metoden med bättre programmeringsmetoder för att se till att metoden är stabil och effektiv.

Ytterligare en aspekt är på hur många olika typer av monteringssystem och situationer som denna metod går att tillämpa. Arbetet har gjorts utifrån taktade monteringssystem, vilket också många verkliga system är. Det går dock inte att säga exakt hur metoden fungerar i övriga fall där systemet inte är taktat. Ett exempel där nuvarande utformning av metoden inte kommer fungera är om tiden mellan varje åtdragning är längre än tiden mellan att arbete avslutas och påbörjas i åtföljande arbetsstationer. De tidsgränser som sätts måste då utvärderas från en annan infallsvinkel, där slutanvändaren behöver konfigurera mer själv, än vad som är gjort i detta arbete. Det är betydligt svårare att utläsa det endast från historiska data där informationen som vill hittas med metoden saknas.

(42)

40 representationen av arbetsstationerna ska se ut. Då CPS och Industrie 4.0 innefattar självgående system där människans roll är att ta beslut gäller det att skapa applikationer som hjälper beslutsfattande. Att visuellt representera information och data är ett mycket effektivt sätt för människor att ta in den informationen. Det måste vara tydligt hur systemet ser och hur det presterar. Att skapa en tredimensionell representation av systemet där produkter och verktyg rör sig enligt sina verkliga motparter i realtid är i det långa loppet något som underlättar analys av system och vissa sorters problem.

(43)

41

Referenser och litteraturförteckning

Atkeson, A., Kehoe, P.J., 2001. The transition to a new economy after the second industrial revolution. National Bureau of Economic Research.

Gandomi, A., Haider, M., 2015. Beyond the hype: Big data concepts, methods, and analytics. Int. J. Inf. Manag. 35, 137–144. doi:10.1016/j.ijinfomgt.2014.10.007

Gilchrist, A., 2016. Industry 4.0 - The Industrial Internet of Things. Apress, Berkeley, CA. Heath, S., 2002. Embedded systems design. Newnes.

Hermann, M., Pentek, T., Otto, B., 2016. Design Principles for Industrie 4.0 Scenarios. IEEE, pp. 3928–3937. doi:10.1109/HICSS.2016.488

Khaitan, S.K., McCalley, J.D., 2015. Design Techniques and Applications of Cyberphysical Systems: A Survey. IEEE Syst. J. 9, 350–365. doi:10.1109/JSYST.2014.2322503

Krief, F., 2013. Communicating embedded systems: networks applications. John Wiley & Sons.

Lasi, H., Fettke, P., Kemper, H.-G., Feld, T., Hoffmann, M., 2014. Industry 4.0. Bus. Inf. Syst. Eng. 6, 239–242. doi:10.1007/s12599-014-0334-4

Lee, E.A., 2008. Cyber Physical Systems: Design Challenges. IEEE, pp. 363–369. doi:10.1109/ISORC.2008.25

Lee, J., Bagheri, B., Kao, H.-A., 2015. A Cyber-Physical Systems architecture for Industry 4.0-based manufacturing systems. Manuf. Lett. 3, 18–23. doi:10.1016/j.mfglet.2014.12.001 Lee, J., Lapira, E., Bagheri, B., Kao, H., 2013. Recent advances and trends in predictive manufacturing systems in big data environment. Manuf. Lett. 1, 38–41.

doi:10.1016/j.mfglet.2013.09.005

McKinsey, D., 2015. Industry 4.0: How to navigate digitization of the manufacturing sector. Petersson, P., Johansson, O., Broman, M., Blücher, D., Alsterman, H., 2010. Lean - Turn Deviations into Success!, 1st ed.

Suh, S.C., Tanik, U.J., Carbone, J.N., Eroglu, A. (Eds.), 2014. Applied Cyber-Physical Systems. Springer New York, New York, NY.

(44)

42

Figurförteckning

Figur 1: Tankekarta över litteraturstudie ... 8

Figur 2: Utmaning för Big Data inom tillverkande industri (Lee et al., 2013) ... 11

Figur 3: Femnivåstruktur för CPS (Lee et al., 2015) ... 15

Figur 4: Tabell med UnitID och ResultDateTime från Result-tabellen i databasen ... 20

Figur 5: Överblick med ingående kontrollenheter i korresponderande arbetsstation för det experimentella fallet ... 21

Figur 6: Operationsplan för Typ A ... 22

Figur 7: Operationsplan för Typ B ... 22

Figur 8: Operationsplan för Typ C ... 23

Figur 9: Gruppering för individuella produkter av en produktvariant ... 26

Figur 10: Borttagning av dubbletter ... 27

Figur 11: Uppsökning av UnitID tidigare i listan och borttagning då det hittas ... 28

Figur 12: Grupperad och sorterad sammansättning av kontrollenheter för en produktvariant 28 Figur 13: Exempel på sorterad sammansättning för en annan produktvariant ... 29

Figur 14: Exempel på en tredje sorterad sammansättning ... 30

Figur 15: Gruppering och sortering utförd för produktvariant Typ A ... 33

Figur 16: Gruppering och sortering utförd på produktvariant Typ B ... 34

Figur 17: Gruppering och sortering för produktvariant Typ C ... 35

(45)

43

Bilagor

(46)

44 Bilaga B: Programfil för konsolapplikation

using System;

using System.Collections.Generic;

using System.Data.SqlClient;

using System.IO;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace TimeStampThesisApplication

{

class Program {

static void Main(string[] args)

{

bool KeepRunning = true;

while (KeepRunning == true)

{

Console.WriteLine("\nChoose task:");

Console.WriteLine("1: Run production system analysis.");

Console.WriteLine("2: Exit Application.");

var val = Int32.Parse(Console.ReadLine());

switch (val)

{

case 1:

#region Locations and inputs

//Inputdata utläst från SQL Server Management Studio och inskrivet i textfiler

//string[] productTypeR = File.ReadAllLines(@"C:\Users\toohw\Desktop\TypeR.txt");

string[] productTypeA = File.ReadAllLines(@"C:\Users\toohw\Desktop\TypeA.txt");

string[] productTypeB = File.ReadAllLines(@"C:\Users\toohw\Desktop\TypeB.txt");

string[] productTypeC = File.ReadAllLines(@"C:\Users\toohw\Desktop\TypeC.txt");

List<string[]> variants = new List<string[]>();

variants.Add(productTypeB);

variants.Add(productTypeC);

variants.Add(productTypeA);

//variants.Add(productTypeR);

//Filer att skriva data till från applikationen

List<string> excelFiles = new List<string>();

string locationB = @"C:\Users\toohw\Desktop\ExperimentDelaysB.csv";

string locationC = @"C:\Users\toohw\Desktop\ExperimentDelaysC.csv";

string locationA = @"C:\Users\toohw\Desktop\ExperimentDelaysA.csv";

excelFiles.Add(locationB);

excelFiles.Add(locationC);

excelFiles.Add(locationA);

int excelCounter = 0;

#endregion

#region SQL Data collection

List<List<string>> controllers = new List<List<string>>();

List<Line> variantLines = new List<Line>();

foreach (string[] variant in variants)

{

//Start av inläsning från databas och spara den inlästa informationen i listor

Console.WriteLine("");

Console.WriteLine("---");

Console.WriteLine("Data Collection Started");

Console.WriteLine("---");

Console.WriteLine("");

foreach (string productID in variant)

{ var lista = new List<string>();

var lista2 = new List<string>();

//SQL-fråga mot databas

string query = "select UnitID, ResultDateTime from Result r\ninner join ResultToResultIdentifier rtri on r.ID = rtri.ResultID\ninner join ResultIdentifier ri on

rtri.ResultIdentifierID = ri.ID\nwhere ri.ID = " + productID + "\norder by r.ResultDateTime asc";

using(SqlConnection conn = new SqlConnection("Data Source = TOOLSE002185; Initial Catalog = ToolsNet_Experiment; Persist Security Info = True; User ID = sa; Password = ***********"))

(47)

45

var comm = new SqlCommand(query, conn);

conn.Open();

SqlDataReader reader = comm.ExecuteReader();

if (reader.HasRows)

{

while (reader.Read())

{

lista.Add(reader[0].ToString());

lista2.Add(reader[1].ToString());

}

}

conn.Close();

}

controllers.Add(lista);

controllers.Add(lista2);

}

#endregion

Console.WriteLine("\n---");

Console.WriteLine("Data Collection Completed");

Console.WriteLine("---\n");

#region Only timespans of x amount of products

//Skriver tidsspannen mellan dragningar i en csv-fil som kan öppnas i Excel för att hitta tidskriterium för stationsindelning.

var Delays = new List<List<TimeSpan>>();

for (int i = 0; i <= controllers.Count - 2; i += 2)

{

var tempDelays = new List<TimeSpan>();

var unit = controllers[i];

var timeStamps = controllers[i + 1];

for (int j = 0; j <= unit.Count - 2; j++)

{

TimeSpan delay = DateTime.Parse(timeStamps[j + 1])

-DateTime.Parse(timeStamps[j]);

if (delay.TotalSeconds != 0 && delay.TotalSeconds < 3600 && unit[j + 1] !=

unit[j])

{

tempDelays.Add(delay);

}

}

Delays.Add(tempDelays);

}

if (excelCounter == 0)

{

using(StreamWriter writer = new StreamWriter(locationB))

{

foreach (List<TimeSpan> Lista in Delays)

{

foreach (TimeSpan d in Lista)

{

writer.WriteLine(d.TotalSeconds + ",");

} } } } else if (excelCounter == 1) {

using(StreamWriter writer = new StreamWriter(locationC))

{

foreach (List<TimeSpan> Lista in Delays)

{

foreach (TimeSpan d in Lista)

{

writer.WriteLine(d.TotalSeconds + ",");

}

}

(48)

46

}

else if (excelCounter == 2)

{

using(StreamWriter writer = new StreamWriter(locationA))

{

foreach (List<TimeSpan> Lista in Delays)

{

foreach (TimeSpan d in Lista)

{

writer.WriteLine(d.TotalSeconds + ",");

}

}

}

}

excelCounter++;

Console.WriteLine("Review data in @C:\\Users\\toohw\\Desktop\\ExperimentDelays.csv in Excel.");

Console.WriteLine("When timelimit for workstations is found, press Enter to continue");

Console.ReadKey();

#endregion

#region Workstation grouping for each ProductID

//Skapar en list med objektstypen Line som representerar en produktionslina

var Lines = new List<Line>();

Console.Write("Input timelimit found from previous analysis: ");

//Användaren skriver in det tidskriterium som hittades i Excel, enhet sekunder.

var tL = Int32.Parse(Console.ReadLine());

var timeLimit = tL;

/* För varje element i listan controllers (som är en lista med listor med UnitID och ResultDateTime för varje resultat för alla

* utvärderade produkter av en produkttyp) görs nu en utvärdering utifrån det tidskriterium som användaren anger.

*/

//Hjälpvariabel för att ge varje objekt av typen Line ett unikt index

var lineCount = 1;

for (int j = 0; j <= controllers.Count - 2; j += 2)

{

//Variabeln line är ett nytt Line-objekt. lineCount skickas som argument för att ge Line-objektet unik ID

var line = new Line(lineCount);

//Hjälpvariabel för att ge varje objekt av typen Workstation unik ID

var wsCount = 1;

//Samma som för line ovan

var ws = new Workstation(wsCount);

//line.SetWorkstations är en funktion för klassen line som adderar ett Workstation-objekt till en lista över sådana objekt i Line-objektet

line.SetWorkstations(ws);

//Läser in UnitIDs från listan controllers

var a = controllers[j]; //UnitIDs

//Läser in ResultDateTimes från listan controllers

var timeStamp = controllers[j + 1]; //ResultDateTime

//Lägger till UnitID på första platsen i unit då den inte har något värde att jämföra mot

ws.AddUnitID(a[0]);

//Jämför varje tidsspann mellan åtdragningar och jämför mot redan tillagda UnitID och om tidskriteriet uppfylls

for (int i = 0; i <= a.Count - 2; i++)

{

//Skapar ett tidsspann från ResultDateTimes. TimeSpan och DateTime är inbyggda structs i C#.

TimeSpan delay = DateTime.Parse(timeStamp[i + 1])

-DateTime.Parse(timeStamp[i]);

References

Related documents

Man skulle kunna beskriva det som att den information Johan Norman förmedlar till de andra är ofullständig (om detta sker medvetet eller omedvetet kan inte jag ta ställning

Motiven bildar en hierarki och gäller: (1) Att mindre företag och tillverkande företag överhuvud taget är av intresse, (2) att denna kategori påverkas av den inre marknaden, (3)

I extrema fall med mycket fuktiga material som avdunstar vatten snabbt kan det innebära att ventilationen måste forceras för att inte få för höga fukttillskott

Men public service skiljer sig från de kommersiella kanalerna när det gäller tittarsiffror som en variabel för utbudet på så sätt att det inte behöver vara styrande

Erik Andersson, Brjann Ljotsson, Filip Smit, Björn Paxling, Erik Hedman, Nils Lindefors, Gerhard Andersson and Christian Ruck, Cost-effectiveness of internet-based

Att individualiserad musik eller sång påverkar kommunikationen under omvårdnadsarbetet mellan vårdare och personer med demens redogörs i flera studier (Götell m fl 2002; Götell m

När en myndighet inte tillför underlaget till det enskilda målet eller ärendet ska myndigheten se till att information kan lämnas om vilken eller vilka databaser eller andra

Nedan presenteras en tabell som skapats som en konkretisering av Isin &amp; Turners modeller. Målet är att synliggöra en koppling mellan modellerna utifrån de kärnfrågor vi