Standardisering av dragarinstallation

Relevanta dokument
Modbus över Ethernet. WAGO Contact SA TSS STR

Modbus. WAGO Contact SA TSS STR

SCADA. Supervisory Control And Data Acquisition. Fritt översatt: Övervakning, styrning och datainsamling

Styrteknik 7.5 hp distans: E-1000 och E-Designer

Programmerbar logik. Kapitel 4

Övervakning & Programspråk

Programmering av ett industrikap med GRAPH 7 / Programming of an industrial cutting machine in GRAPH 7

Quick start manual. Smart-House Rev 1.1

M7005 Fischer/Weisser mätstyrningsserver M9003 ersatt med Simens S Plc

OMRON. PLC till PLC kommunikation (CP1L-E) Ethernet. 22 april 2014 OMRON Corporation

Paneler - VCPXX.2. Programmeringsmanual för VCP-paneler. Revision 2

Quickstart manual. Rev SHTOOL Quickstart manual Smart-House

Safe Logic Compact. Konfigurering av Rexroth säkerhets PLC. Snabbguide Svenska

KOMMA IGÅNG GUIDE MODBUS Med WAGOs styrsystem

Sekvensstyrning Grafcet och IEC

Övervakning & Programspråk

Styrteknik : Funktioner och funktionsblock

KOM IGÅNG GUIDE e!cockpit Av Carsten Holm

WAGO IO System Service Seminar. Diagnostik

KURSPROGRAM. Automation

Industriella styrsystem, TSIU06. Föreläsning 2

ISAC. Tel. 08/

Övervakning & Programspråk

CoDeSys 2.3.x.x Svensk installationsguide

Snabbguide. Lägg till PLC i IndraWorks-projekt IndraLogic som Profibusmaster

Ladderprogrammering steg för steg

WAGO KNX komma igång guide

Locum AB. Anders Gidrup säkerhetschef Locum AB

Win95/98 Nätverks Kompendium. av DRIFTGRUPPEN

TOX-serien med CDC. Hur de används och programmeras. Ref: Ref:

Design Collaboration Suite

Telefrang Smoke Control System Installationsmanual för Midi- och MaxiSmoke Sida 1 av 12

FactoryCast HMI. Premium & Quantum PLC. MySQL Server och FactoryCast HMI databastjänst

BILAGA 1 ADVES MANUAL 1 (7)

Detta dokument beskriver enbart konfigurering av FX3U-ENET för att programmera/monitorera via Ethernet.

Hur man ändrar från statisk till automatisk tilldelning av IP i routern.

Ladda upp filer fra n PLC till PC

Styrteknik : Programmering med IEC Styrteknik

Installationsguide / Användarmanual

Instruktioner för Internetanslutning

Introduktion till syntesverktyget Altera Max+PlusII

Programmeringsmjukvara TwidoSuite Ett enklare sätt att programmera

Beskrivning av hur du ansluter en E-terminal från Beijer Electronics till HC900 via Ethernet så att denna kan visa och manipulera data i HC900.

Monitor Pro V7 SCADA. Kom-igång med kommunikation Unitelway TCP/IP

Styrsystem. SoMachine TM241 / 251. Kom-igång med SoMachine projekt. Skapad: Rev

PNSPO! Tips! Xpectia kommunikation till OMRON PLC via Seriellt. 14 mars 2012 OMRON Corporation

Instruktioner för uppdatering från Ethiris 5.x till 6.0

Ladderprogrammering steg för steg

El, Automation & Process

Högskolan Dalarna Sida 1 av 8 Elektroteknik Per Liljas

Instruktion till. PigWin PocketPigs. Del 1 - Installation

Ethernet kommunikation med hjälp av optionskortet OPT-CI

Styrsystem M580. Användare tips för Modicon M580. Skapad: Rev

Copyright 2001 Ulf Rääf och DataRäven Elektroteknik, All rights reserved.

Styrteknik: E-Designer och E-1000

Styrsystem. Quantum, M340 o Momentum. Kom-igång med konvertera Concept till Unity Rev

F4. programmeringsteknik och Matlab

Manual Sportident Onlinekontroll via GPRS

Alternativet är iwindows registret som ni hittar under regedit och Windows XP 32 bit.

Beijer Electronics AB 2000, MA00336A,

WinStudio - Uppstart. Drifttagning av operato rspanel med IndraWorks och WinStudio. IndraWorks 14. Version

Tentamen SSY 065, lördag 14/4, 08:30-12:30, M. Examinator: Martin Fabian, (772) 3716 Tider för lärarens närvaro: 09:30, 11:30

Manuell installation av SQL Server 2008 R2 Express för SSF Timing

Programmera Avant 5 med PC mjukvara

Smart Rogic Manual. Robostick Manual

Kompilering och exekvering. Föreläsning 1 Objektorienterad programmering DD1332. En kompilerbar och körbar java-kod. Kompilering och exekvering

The Intelligent Timer

Datorbaserad mätteknik

BIPAC-711C2 / 710C2. ADSL Modem / Router. Snabbstart Guide

KOMMA IGÅNG GUIDE DALI Med WAGOs styrsystem

Instruktioner för uppdatering från Ethiris 4.10 till 5.x

PNSPO! Använda NJ med NS System Memory. 14 mars 2012 OMRON Corporation

Quick start manual. Smart-House Rev 2.0

Inlämningsuppgift 11e Nätvärksskrivare

Innehåll i detta dokument

Sortering av cylindrar

Installationsanvisning För dig som har dynamisk IP-Adress

IEC Delstandard av IEC 61131, vilken totalt består av

1. Inkoppling till bredbandsnätet

Introduktion till E-block och Flowcode

Application Note SW

Momentbegränsare. Aktivering med hjälp av analoga signaler. Aktivering med hjälp av Extern CAN

Rev Oct Användarguide Smartsign 9

Svensk version. Inledning. Installation av Windows XP och Vista. LW056V2 Sweex trådlös LAN cardbus-adapter 54 Mbps

Instrument Link, en snabbguide

Installationsbeskrivning av PBI Profibus-DP kort

Innehåll Andreas Rosengren

Antares Användning och installation

10x Zoom Multiple Streams PoE PZ8111/21/11W/21W

JobOffice SQL databas på server

Telia Connect för Windows

Säkerhetsreläer Zander Aachen TALOS. Säkerhetssystemet med plug & play. Komponenter för automation. Nordela

Monitor Pro V7.x SCADA. Förstå och skapa symboler

Installera nedladdningsterminal

IndraDrive Open-loop. Styrning av asynkronmotor över Profibus. Version 1

TDIU01 - Programmering i C++, grundkurs

Instruktion för installation av etikettskrivare 2.31

MaxxECU MDash Android App

Lathund - Konfiguration av PLC och dator

Transkript:

TMT 2014:19 MALIN FOGELSTRÖM MAGNUS SVANBORG Examensarbete inom MASKINTEKNIK Robotik och Mekatronik Högskoleingenjör, 15 hp Södertälje, Sverige 2014

av Malin Fogelström Magnus Svanborg Examensarbete TMT 2014:19 KTH Industriell teknik och management Tillämpad maskinteknik Mariekällgatan 3, 151 81 Södertälje

Examensarbete TMT 2014:19 Malin Fogelström Magnus Svanborg Godkänt 2014-06-04 Examinator KTH Lars Johansson Uppdragsgivare Scania IT Handledare KTH Lars Johansson Företagskontakt/handledare Ann Mölleman Sammanfattning Scania är ett industriföretag som tillverkar lastbilar, bussar och motorer. På anläggningen i Södertälje finns ett antal monteringslinjer med många dragare. Denna rapport handlar om arbetet med att skriva en manual för hur Scania på ett standardiserat sätt kan koppla upp en ny dragare mot DIDRIK. DIDRIK är ett produktionsstyrnings och övervakningssystem med funktionalitet för bland annat taktning och datainsamling och som utgörs av PLC och SCADA teknologi i form av Siemens system; S7 och WinCC. Rapporten går igenom vad DIDRIK består av och hur kommunikation sker mellan dragare och PLC. Eftersom DIDRIK i S7 består av en mängd olika funktioner, funktionsblock och datablock har vi i detta projekt begränsat oss till dem som är relevanta för att få till stånd en fungerande kommunikation mellan ny dragare och DIDRIK. Den dragare som manualen är skriven för, är av märket Atlas Copco och heter Power Focus 4000 och använder sig av fältbussen ProfiNet för kommunikation med PLC. Rapporten innehåller också ett alternativt funktionsblock till kommunikationsblocket i DIDRIK som är skrivet i SCL istället för LAD och STL. Nyckelord PLC, dragare, DIDRIK, Siemens

Bachelor of Science Thesis TMT 2014:19 Standardisation of nutrunner installation Malin Fogelström Magnus Svanborg Approved 2014-06-04 Examiner KTH Lars Johansson Commissioner Scania IT Supervisor KTH Lars Johansson Contact person at company Ann Mölleman Abstract Scania is an industrial company which manufactures trucks, busses and engines. On site in Södertälje they have mounting lines with several nut runners. This thesis is about creating instructions for how Scania can connect new nut runners to DIDRIK in a standardized way. DIDRIK is a production control and supervisory system with functionality towards tacting and data acquisition through PLC and SCADA technology with Siemens systems S7 and WinCC. This thesis gives an idea about the basics of DIDRIK and how PLC and nut runner communicates. DIDRIK consists of a multitude of functions, function blocks and data blocks in S7 and consequently this project gives an understanding of which ones are relevant to connect a new nut runner to DIDRIK. The manual is written for the Atlas Copco nut runner Power Focus 4000 that uses ProfiNet to communicate with the PLC. The thesis also includes an alternative function block for the main communication block in DIDRIK and it is written in SCL instead of LAD and STL. Key-words PLC, nut runner, DIDRIK, Siemens

Issued by (department acronym name phone) Issue Malin Fogelström, Magnus Svanborg 1.2 Förord Denna rapport är ett examensarbete på 15 högskolepoäng för två högskoleingenjörsstudenter på KTH Södertälje inom Maskinteknik med inriktning robotik och mekatronik. Ett tack till Ann Mölleman, Mats Ané och Joakim Larsson för hjälp och stöd med arbetet. För att på bästa sätt kunna tillgodose sig rapporten är grundläggande kunskaper inom styrteknik att rekommendera.

Issued by (department acronym name phone) Issue Malin Fogelström, Magnus Svanborg 1.2 STD10000-1

Issued by (department acronym name phone) Issue Malin Fogelström, Magnus Svanborg 1.2 Innehållsförteckning 1 Inledning... 1 1.1 Bakgrund... 1 1.2 Problembeskrivning... 1 1.3 Målformulering... 1 1.4 Avgränsningar... 2 1.5 Lösningsmetod... 2 2 Förkortningar och förklaringar... 3 3 Teoretisk bakgrund för dragarinstallation... 5 3.1 DIDRIK... 5 3.1.1 Hårdvara... 5 3.1.2 Mjukvara... 5 3.2 PLC... 6 3.3 SCADA... 6 3.4 Siemens på Scania... 7 3.4.1 PLC:... 7 3.4.2 SCADA/HMI:... 7 3.5 SIMATIC STEP 7... 7 3.5.1 S7 Basic... 7 3.5.2 S7 Graph... 8 3.5.3 S7 SCL... 8 3.5.4 S7 PLCSIM... 8 3.6 WinCC... 8 3.7 Kommunikation... 9 3.7.1 Kommunikation på Scania... 9 3.7.2 ProfiBus... 10 3.7.3 ProfiNet... 10 3.8 Dragare... 10 4 Resultat... 13 4.1 Tillvägagångssätt för att skriva manualen... 13 4.2 Sammanfattning av manualen... 15 4.3 Programmering av nytt funktionsblock... 16 4.3.1 Tillvägagångssätt... 16 4.3.2 Funktion för positiv flank... 16 5 Slutsats... 17 6 Källförteckning... 19 Bilaga A... Bilaga B... STD10000-1

Issued by (department acronym name phone) Issue Malin Fogelström, Magnus Svanborg 1.2 Figurförteckning Figur 3-1. Graphics Designer i WinCC.... 9 Figur 3-2. En Atlas Copco Power Focus 4000 med en dragare.... 11 Figur 4-1. Kommunikationskarta för dragare och DIDRIK.... 14 STD10000-1

Malin Fogelström, Magnus Svanborg 1.2 1(20) 1 Inledning 1.1 Bakgrund Scania har produktion i flera länder runt om i världen och de olika anläggningarna arbetar gemensamt med att ständigt förbättra, effektivisera och standardisera produktionen. På anläggningen i Södertälje finns det bland annat monteringslinjer som innehåller många dragare och andra verktyg. Dragare används för att dra åt detaljer med exempelvis rätt moment och vinkel. Dessa ansluts till DIDRIK för att kunna styras och kontrolleras från ett och samma ställe. DIDRIK är Scanias egna produktionsstyrnings- och övervakningssystem som utgörs av PLC och SCADA (Supervisory control and data acquisition, för att underlätta kommunikation mellan maskiner och människa). För att standardisera, genom att skapa manualer för hur man ska koppla upp en ny dragare på monteringslinje mot DIDRIK, startades detta projekt. 1.2 Problembeskrivning Följande frågor behöver undersökas för att kunna uppnå målen: Hur kopplar Scania upp en dragare mot DIDRIK (fysiskt)? Hur ska dragaren konfigureras för att kunna kommunicera med DIDRIK? Hur sker kommunikationen mellan dragare och DIDRIK (mjukvarumässigt)? Hur ska PLC och interface (HMI) programmeras för att få önskad funktion? Hur ska ovanstående punkter sammanställas och dokumenteras för att skapa ett standardiserat arbetssätt för inkoppling av nya dragare? 1.3 Målformulering Målen att uppnå i detta projekt är att: Koppla upp dragare mot DIDRIK och konfigurera PLC för att få en fungerande kommunikation för Atlas Copco-och Desoutter-dragarna. Skapa och programmera ett fungerande funktionsblock i PLC för kommunikation mellan dragare och DIDRIK.

Malin Fogelström, Magnus Svanborg 1.2 2(20) Programmera och integrera nya dragare i DIDRIK i SCADA-programmet WinCC. Dokumentera egenskaper och funktioner för de olika dragarna och utifrån ovanstående mål skapa en manual för varje dragare som är enkel att följa för programmerare, på både svenska och engelska. 1.4 Avgränsningar För att hålla arbetet inom rimliga ramar fastställdes dessa avgränsningar: Endast programmera och dokumentera Siemens PLC för de angivna dragarna. Endast ta reda på hur dragarna konfigureras för kommunikation med DIDRIK, inte konfigurera eller programmera dragarna (vridmoment etc.). Endast hantera interface och programmera funktionsblock, inte behandla DIDRIK ingående. 1.5 Lösningsmetod Målen uppnås genom att: Få en utbildning i DIDRIK. Gå en utbildning för dragare. Använda en ingenjörsstation för att laborera med PLC och dragare och programmera PLC och WinCC för att få fungerande kommunikation. Söka information via Internet, biblioteksdatabaser och interna källor på Scania. Tala med experter inom respektive område (PLC/WinCC/dragare) på Scania. STD10000-1

Malin Fogelström, Magnus Svanborg 1.2 3(20) 2 Förkortningar och förklaringar DB Data Block Block som kopplas till FB för att lagra de statiska parametrarna från FB DIDRIK Scanias egna system baserat på PLC och SCADA DynaMate AB Dotterbolag till Scania, utför bl.a. produktions- och fastighetsunderhåll Ethernet En kommunikationsstandard för LAN FB Function Block Funktion med statiska minnen FBD Function Block Diagram Grafiskt språk som använder logiska funktionsblock FC Function Funktion utan statiska minnen HMI Human-Machine Interface Gränssnitt mellan operatör och maskin, en del av SCADA I/O In- och utgångar IRT Isochronous Real-Time Isokron Realtid (snabbare och högre determinism än realtid) LAD Ladder logic Grafiskt språk som liknar ett elektriskt schema OB Organization Block Huvudblock för kontroll av andra block PB ProfiBus Fältbuss PLC Programmable Logic Controller Modulbaserat, programmerbart styrsystem innehållande CPU, minne och in- och utgångar PN ProfiNet Fältbuss med ethernet RT Real-Time Realtid S7 Simatic Step 7 Siemens programvara för PLCprogrammering SCADA Supervisory control and data acquisition Ett system för övervakning, styrning och hantering av information från andra system SCL Structured Control Language Högnivåspråk som liknar PASCAL SFC Sequential Function Chart Grafiskt språk för sekvensprogrammering STL Statement List Textbaserad logik WinCC Siemens HMI-programvara STD10000-1

Malin Fogelström, Magnus Svanborg 1.2 4(20) STD10000-1

Malin Fogelström, Magnus Svanborg 1.2 5(20) 3 Teoretisk bakgrund för dragarinstallation 3.1 DIDRIK DIDRIK är ett produktionsstyrnings- och övervakningssystem för integrering av produktionsutrustning med funktionalitet för bland annat taktning, kvalitetssäkring och datainsamling. [1] 3.1.1 Hårdvara DIDRIK är hårdvarumässigt uppbyggt av flera lager enligt följande: PLC sköter logiken och kommunikationen på verkstadsnivå. SCADA servers och klienter som hanterar skärmar och gränssnittet mot operatören. Externa DIDRIK-komponenter till exempel takttavlor och I/O-moduler. 3.1.2 Mjukvara Mjukvarumässigt består DIDRIK av: PLC Siemens S7 hanterar logik och regler. SCADA Siemens HMI-system WinCC förser operatör med nödvändig information och vissa val. Scania har valt att göra DIDRIK PLC-baserat eftersom PLC fungerar med realtid, har högre teknisk tillgänglighet, har längre livstid och god kunskap finns redan inom företaget. DIDRIK används för att få översikt över alla stationer i en monteringslinje. PLC:n skickar signaler till verktygen och tvärtom. Detta visas på skärmar i produktion genom WinCC som också ger möjligheten att styra verktygens tillgänglighet. STD10000-1

Malin Fogelström, Magnus Svanborg 1.2 6(20) 3.2 PLC En PLC är en dator med digitala och analoga in- och utsignaler. Istället för att ha ett stort reläskåp med många kablar för att styra en process, låter man en PLC ta hand om logiken. Många PLC:er är modulbaserade system där man bygger vidare med de moduler man behöver. En PLC behöver ett spänningsaggregat, en processor och för att hantera signaler, vilket är en PLC:s huvuduppgift, behövs en I/O-modul eller en kommunikationsmodul för fältbuss-kommunikation. De programmeras med hjälp av en vanlig PC eller ett handhållet programmeringsdon och det existerar många olika märken till exempel Mitsubishi, ABB, Rockwell och, det som Scania använder, Siemens. Läs mer om detta i kap. 3.4. Vid programbearbetning arbetar en PLC uppifrån och ner. Vid uppstart nollställs alla utgångsminnen och därefter upprepas programvarven i en evig slinga. I ett programvarv ingår: Inläsning av tillstånden hos ingångarna som sedan sparas i I/O-minnet. Exekvering av program där in- och utgångarna i I/O-minnet läses av och skrivs till varje gång de används. Överföring av tillstånden hos utgångarna i I/O-minnet till utgångsportarna. Inga utgångar ändrar alltså status under själva exekveringen, utan först när all logik är behandlad sätts utgångarna. Detta sker många gånger per sekund. [2,11] 3.3 SCADA SCADA står för Supervisory Control and Data Acquisition. Det är ett industriellt styr- och övervakningssystem som är till för att effektivisera en industri. Systemet används ofta på stora anläggningar för att få en lättare översikt av statusen på produktionen, men kan också användas i mindre verksamheter som till exempel butiker. SCADA består av en mjukvara, till exempel WinCC, som installeras på en PC. Programmet får sin information från extern hårdvara, exempelvis en PLC. PLC:n skickar interna data eller data från sensorer till SCADA-mjukvaran. Detta medför att man genom HMI:t kan övervaka, STD10000-1

Malin Fogelström, Magnus Svanborg 1.2 7(20) hantera och kontrollera utrustning och processer i anläggningen. På detta sätt slipper man gå runt och göra statuskontroller eller manuellt trycka på en knapp. Man kan se och styra processen direkt via datorn. [3] 3.4 Siemens på Scania Scania använder sig av Siemens automationssystem som kallas SIMATIC. Detta system inkluderar många olika produkter som utan svårighet kan användas tillsammans. Scania har gjort en sammanställning av vilka produkter de vill använda för att hålla ner antalet olika komponenter i fabrikerna och för att underlätta reservdelshantering. 3.4.1 PLC: Scania använder sig bland annat av S7-300 för små till medelstora projekt och S7-400 för större projekt. Alla PLC CPU:er ska vara av failsafe -typ. En fail-safe processor hanterar både program och säkerhetsprogram samtidigt, och uppfyller säkerhetskrav och standarder (läs om vilka säkerhetsstandarder som gäller på Siemens hemsida [12]). Scania strävar efter att använda de säkerhetsegenskaper som systemen erbjuder. 3.4.2 SCADA/HMI: Scania har valt Siemens WinCC till de system som kräver omfattande HMI och datainsamling. Ett skäl för detta är att WinCC och S7 arbetar väl tillsammans och kan skicka information till varandra. 3.5 SIMATIC STEP 7 Siemens PLC använder sig av ett programpaket som heter SIMATIC STEP 7. I paketet ingår olika mjukvaror: S7 Basic, S7 Graph, S7 SCL och S7 PLCSIM. [4] 3.5.1 S7 Basic S7 Basic har programvara för att hantera alla faser i ett automationsprojekt: konfigurera hårdvara, specificera kommunikationen, programmera, testa och starta upp, dokumentation/arkivering och drift/diagnostik-funktioner. Ett verktyg som finns är Hardware Configuration. All hårdvara som används i systemet måste läggas till och konfigureras där. Det finns många färdiga funktioner för att programmera PLC:n vilket gör det lätt att programmera lite komplexare funktioner. PLC:n kan hantera binär logik, STD10000-1

Malin Fogelström, Magnus Svanborg 1.2 8(20) timers/räknare, jämförande funktioner, omvandlingsfunktioner, shifta/rotera bitar, matematiska funktioner och programhantering (anrop till funktioner etc.). 3.5.2 S7 Graph S7 Graph används för programmering i SFC. Det är ett grafiskt programmeringsspråk som utgörs av steg och övergångsvillkor. Dessa kan finnas i alternativa grenar eller parallellt med varandra. 3.5.3 S7 SCL S7 SCL är en editor för SCL-programmering. SCL är ett textbaserat programmeringsspråk som liknar Pascal. 3.5.4 S7 PLCSIM S7 PLCSIM är ett verktyg för att kunna simulera och se status på I/O, på så sätt kan man testa sin kod direkt i datorn utan att behöva koppla upp den mot en riktig PLC. 3.6 WinCC WinCC är SCADA-mjukvara. Funktionerna i WinCC används tillsammans med S7 för att styra och kontrollera processer i en industri. Två av de viktigaste funktionerna i WinCC är Tag Management och Graphics Designer. I Graphics Designer skapar man bilder som används som interface. Se figur 3-1 för hur Graphics Designer ser ut. Den har till exempel en färgpalett och olika verktyg för att dra ut och göra olika former i bilden. Dessutom kan man dra ut olika knappar eller I/O-fält med mera. STD10000-1

Malin Fogelström, Magnus Svanborg 1.2 9(20) Figur 3-1. Graphics Designer i WinCC. I Tag Management skapas och hanteras systemets taggar. Taggarna består av olika sorters datatyper som till exempel binära taggar eller strings och integers. Taggarna kan infogas från S7 i form av data från antingen in-och utsignaler eller datablock och man kan dessutom göra val i WinCC som påverkar datan i S7. Dessa taggar kan kopplas till de knappar och I/O-fält som lagts in i Graphics Designer och kontrolleras på en mängd olika sätt. En knapp kan bland annat stänga ner Windows med ett vänsterklick på musen eller sätta en bit till 1 med ett högerklick. Med hjälp av Graphics Designer och Tag Management kan man till exempel visuellt bygga upp en station, koppla taggar från till exempel verktyg och visa deras status med olika färger eller skapa en operatörspanel så att operatören kan trycka på olika knappar vars taggar är kopplade mot verktyg eller likande för att få önskad funktion.[5] 3.7 Kommunikation 3.7.1 Kommunikation på Scania För att slippa dra många och långa kablar använder man fältbussar för kommunikation med PLC. Beroende på vilket gränssnitt som finns att tillgå i verktygen på linjen används olika typer av fältbuss men det vanligaste på Scania är ProfiNet (PN) som finns att läsa STD10000-1

Malin Fogelström, Magnus Svanborg 1.2 10(20) mer om i avsnitt 3.7.3. Scania strävar efter att bara använda PN då kommunikationenkan ske snabbare och integrering av nya verktyg är enklare. 3.7.2 ProfiBus ProfiBus (PB) är en universell fältbusskommunikationsstandard för automation. Det är till för att underlätta kommunikation mellan utrustning genom att ersätta långa kablar med att koppla flera noder till samma buss. Det gör att det blir lättare att installera ny utrustning utan att behöva dra flera kablar för signalöverföring. PB ger också ett standardiserat gränssnitt vilket gör att utrustning från olika tillverkare kan kopplas in och installeras på samma nätverk. Dessutom kan en ny enhet som ersätter en äldre enhet ta över den äldres roll för att på ett enklare sätt byta enhet utan att störa processerna. PB ger meddelanden om potentiella fel i nätet vilket ger reducerade underhållskostnader jämfört med andra bussar.[6,7] 3.7.3 ProfiNet ProfiNet (PN) är ethernetbaserad fältbusskommunikation. En fördel med PN är att det är mer flexibelt än PB. Man kan till exempel styra enheter trådlöst från en avlägsen plats på grund av Ethernet. Ethernet är den vanligaste standarden för LAN (lokala nätverk). En del av PN är att det täcker behovet av realtid i automation. Bussen kan kommunicera på tre olika sätt; TCP/IP och UDP, RT och IRT. TCP/IP är det protokoll som används för Ethernetnätverk. RT och IRT är snabbare än PB:s kommunikation och är därför bättre att använda för tidskritiska processer. TCP/IP används framförallt till HMI, RT till fabriksautomation och IRT till motion control (framförallt styrning av position och hastighet). [8,9,10] 3.8 Dragare STD10000-1 En dragare, i denna benämning, består av olika komponenter; en låda innehållande en PLC, kommunikationsgränssnitt, en bildskärm, en knappsats och utöver lådan, själva dragarverktyget. Den interna PLC:n, som programmeras av DynaMate, styr till exempel vridmoment och antal dragningar. DynaMate konfigurerar även kommunikationen. De ger dragaren en IP-adress och ett Device Name samt lägger in vilka bitar som ska

Malin Fogelström, Magnus Svanborg 1.2 11(20) användas för att kommunicera med PLC:n. Dessa bitar är standardiserade för alla liknande dragare. Till detta projekt finns en dragare av typen Atlas Copco Power Focus 4000 (se figur 3-2, detta är själva lådan och fr. o m nu kallad PF4000) att tillgå. Figur 3-2. En Atlas Copco Power Focus 4000 med en dragare. Själva dragarverktyget kan variera i modell och storlek, det påverkar inte detta projekt då endast lådan och gränssnittet är relevant. Även en Desoutter CVI II finns, men utan överensstämmande gränssnitt mot PLC:n vilket gör att den inte kan användas. PF4000 har gränssnitt för PN vilket gör den lättkopplad med ethernet-kabel och lättkonfigurerad med IP-adress och Device Name. STD10000-1

Malin Fogelström, Magnus Svanborg 1.2 12(20) STD10000-1

Malin Fogelström, Magnus Svanborg 1.2 13(20) 4 Resultat 4.1 Tillvägagångssätt för att skriva manualen För att kunna skriva en manual krävs att man förstår det som ska förklaras. Det gäller att sätta sig in i det relevanta och sålla ut det som inte behövs. DIDRIK är uppbyggt av många FC, FB, DB och så vidare. Därför är första steget att reda ut vilka block som är väsentliga. Med start i OB1 och med hjälp av symbolnamn går det att lista ut hur funktionerna hänger ihop. Det är som en liten skattjakt för att hitta var någonstans som olika bitar, bytes och andra datatyper används, och vad de påverkar för något. Eftersom hårdvarukonfigurationen även ska beskrivas behöver den också studeras i SIMATIC Manager. I figur 4-1 illustreras hur allting, som har med PF 4000-dragaren att göra, hänger ihop. Detta undersöktes också för Desoutter-dragaren. Funktionsblocket för kommunikationen var lite mer komplicerad än blocket för PF 4000, men eftersom den inte kunde kopplas upp, dokumenteras den inte. STD10000-1

Malin Fogelström, Magnus Svanborg 1.2 14(20) Figur 4-1. Kommunikationskarta för dragare och DIDRIK. FC1100 (AnropAtlasDragare) är en funktion som anropas tidigt i OB1. Förutom att sköta felsignaler används funktionen för att anropa FB1100 (AtlasDragare). Detta funktionsblock anropas en gång för varje dragare som finns på monteringslinjen. Där sköts all kommunikation och logik mot dragaren och WinCC. Det FB1100 bland annat gör, är att hålla reda på om dragaren är invald eller förbikopplad ( bypass ) som operatören har som val i WinCC. STD10000-1

Malin Fogelström, Magnus Svanborg 1.2 15(20) Funktionsblocket håller reda på vilka signaler dragaren har skickat, om: Den arbetar Den är redo för att arbeta Dragningen är klar Någonting är fel Utifrån dessa skickar funktionsblocket signaler tillbaka till dragaren om arbetet ska avbrytas eller inaktiveras tills nästa körning. Några av dessa signaler sparas i det kopplade stationsdb:t för att användas i WinCC och visa status på skärm i produktionen Efter att ha undersökt hur DIDRIK fungerar i WinCC drogs slutsatsen att inget behöver göras där då det redan är allmänt programmerat. Det räcker alltså att alla taggar skapas från DB:en (vilket de gör automatiskt från S7) så ska det ha samma funktion och fungera som de andra dragarna. 4.2 Sammanfattning av manualen Den fullständiga manualen finns att läsa i bilaga A och här följer en kort sammanfattning av den. Hårdvarukonfiguration: Lägg till ny enhet på PN-bussen. Ange IP-adress och Device Name för den aktuella dragaren (erhålls från DynaMate). Lägg till I/O:s till enheten och ange symbolnamn för dem. Programmering: Kopiera ett stations- och dragar-db (StationXDragareX), klistra in och döp om. Lägga in nytt anrop till FB1100 i FC1100 och koppla det nygjorda DB:t. Anslut alla I/O till funktionsblocket. Lägg in felsignal längst ner i FC1100. STD10000-1

Malin Fogelström, Magnus Svanborg 1.2 16(20) 4.3 Programmering av nytt funktionsblock 4.3.1 Tillvägagångssätt Man kan använda ett redan befintligt funktionsblock för att kommunicera med dragaren men man kan även programmera ett eget. Ett önskemål från Scania var att skapa ett nytt funktionsblock, gärna i SCL. Det nya funktionsblocket finns att se i bilaga B. För att få samma funktion som det gamla blocket, som innehöll både LAD och STL, programmerades det nya blocket enligt det gamla men i annat språk, SCL. Rad för rad översattes koden men då inte samma funktioner finns i SCL som i LAD fick egna små funktioner göras. I övrigt har de vanliga ladder-nätverken ersatts med IF-satser och jämförelserna i STL motsvaras av CASE-satser. 4.3.2 Funktion för positiv flank För att upptäcka en positiv flank, används i LAD en bit-logiksfunktion (P). Den känner av om inkommande signal ändras från 0 1 och blir då 1 till nästa programvarv då insignalen antagligen (eftersom PLC:n loopar många gånger på en sekund) fortfarande är 1 vilket gör att minnet för (P) blir 0 igen. I SCL gjordes en motsvarande funktion med följande kod: EdgeDetected:= StatusJobDoneStatusOK AND NOT OldStatusJobDoneStatusOK; OldStatusJobDoneStatusOK := StatusJobDoneStatusOK; STD10000-1

Malin Fogelström, Magnus Svanborg 1.2 17(20) 5 Slutsats En manual på både svenska och engelska har skapats för Atlas Copco Power Focus 4000. Den svenska versionen finns i bilaga A och den engelska finns på Scania. Även ett nytt funktionsblock för kommunikation med dragaren finns, dock med samma funktionalitet som den gamla på grund av att inga förbättringar hittades. Denna kan hittas i bilaga B. Tanken från början var att flera olika sorters dragare skulle kopplas upp och få var sin manual. Det är inte lätt att få loss en dragare från monteringen och de ligger inte bara och skräpar eftersom de är ganska dyra vilket innebar att vid arbetets början fanns endast en Desoutter CVI II att tillgå. Kommunikationsproblem mellan PLC och dragare gjorde att Desouttern fick avfärdas och en Atlas Copco-dragare fick inväntas och användas. Efter att ha tittat på koden för båda dragarna insågs också att programmeringen var mer lätthanterlig för Atlas Copcos dragare. Dessutom har PF 4000 ProfiNet-gränssnitt medan Desouttern använder sig av ProfiBus. Av detta kan man se varför Scania föredrar att använda sig av framförallt Atlas Copco framför andra tillverkare, eftersom de till största del vill ha ProfiNet på sina anläggningar. Eftersom Atlas Copcos dragare är de vanligaste på Scania är det bra att iallafall den delen täcktes i detta projekt. STD10000-1

Malin Fogelström, Magnus Svanborg 1.2 18(20) STD10000-1

Malin Fogelström, Magnus Svanborg 1.2 19(20) 6 Källförteckning [1]Ann Mölleman, 2012, Scania Lathund DIDRIK ML1 Hämtad: 2014-04-01 [2]Folke Larsson, 2014, Nationalencyklopedin http://www.ne.se.focus.lib.kth.se/programmerbart-styrsystem Hämtad: 2014-04-23. [3]Inductive Automation, 2013 [ONLINE] http://www.inductiveautomation.com/what-is-scada Hämtad: 2014-05-16 [4]Siemens, 2014, Siemens Automation, [ONLINE] http://www.automation.siemens.com/mcms/simatic-controllersoftware/en/step7/step7-professional/pages/default.aspx Hämtad : 2014-05-16 [5]Siemens, 2014, Siemens Automation, [ONLINE] http://www.automation.siemens.com/mcms/human-machineinterface/en/visualization-software/scada/wincc-options/pages/default.aspx Hämtad : 2014-05-16 [6]PROFIBUS, 2014, PROFIBUS [ONLINE] http://www.profibus.com/technology/profibus/ http://www.profibus.com/technology/profibus/overview/ http://www.profibus.com/technology/profibus/benefits/ Hämtad: 2014-04-24 [7]PROFIBUS, 2014, PROFIBUS [ONLINE] http://www.automation.siemens.com/mcms/automation/en/industrialcommunications/profinet/profibus/pages/profibus.aspx Hämtad: 2014-04-24 [8]Geoff Hodgkinson, 2004, PROFIBUS [ONLINE] http://www.profibus.se/pdf/profinetwhitepaper_se.pdf Hämtad:2014-04-09 [9]John Rinaldi, 2009, RTAAUTOMATION [ONLINE] http://www.rtaautomation.com/profinetio/ Hämtad: 2014-04-29 STD10000-1

Malin Fogelström, Magnus Svanborg 1.2 20(20) [10]Advanced Motion Control, 2014, A-M-C [ONLINE] http://www.a-m-c.com/university/mco.html Hämtad: 2014-04-29 [11]Lars Johansson, 2013, KTH PLC-Programmering Kursmaterial HE1014 [12] Siemens 2014 Siemens Automation [ONLINE] http://www.automation.siemens.com/mcms/programmable-logiccontroller/en/simatic-s7-controller/s7-400/cpu/failsafe-cpus/pages/default.aspx Hämtad: 2014-05-28 STD10000-1

Malin Fogelström, Magnus Svanborg 1.2 Bilaga A 1(12) Bilaga A ATLAS COPCO PF 4000 till DIDRIK 1. Öppna SIMATIC Manager och öppna DIDRIK-projektet. 2. Gå in i projektet för den nya dragaren. Hårdvarukonfiguration: 1. Öppna hårdvarukonfigurationen.

Malin Fogelström, Magnus Svanborg 1.2 Bilaga A 2(12) 2. För att lägga till enheten, gå in i Hardware Catalog under PROFINET IO Additional Field Devices General Anybus. 3. Dra ut ABS-PRT till PN-bussen. 4. För att konfigurera enheten, högerklicka på den och välj Object Properties.

Malin Fogelström, Magnus Svanborg 1.2 Bilaga A 3(12) 5. Se till att ha IP-adress och device name från underhållsavdelningen (DynaMate) för dragaren. 6. Ange Device name. 7. Tryck på Ethernet.

Malin Fogelström, Magnus Svanborg 1.2 Bilaga A 4(12) 8. Ange IP-adressen OK OK.

Malin Fogelström, Magnus Svanborg 1.2 Bilaga A 5(12) 9. Expandera ABS-PRT i Hardware Catalog. 10. Expandera Output modules och Input modules. 11. Markera enheten. 12. Dra en Output 002 bytes till listan i nedre delen av fönstret (förutsatt att enheten är markerad). 13. Dra två Input 002 bytes till listan i nedre delen av fönstret.

Malin Fogelström, Magnus Svanborg 1.2 Bilaga A 6(12) 14. Högerklicka på Output 002 bytes Edit Symbols. 15. I fältet Symbol skrivs Control_ Station _ Dragarnummer (dvs om stationen är 1 och dragarnumret är 1 står det Control_1_1 ). 16. Högerklicka på en av Input 002 bytes Edit Symbols. 17. I fältet Symbols skrivs Status_ Station _ Dragarnummer. 18. Spara och kompilera hårdvaran.

Malin Fogelström, Magnus Svanborg 1.2 Bilaga A 7(12) 19. Gå tillbaka till SIMATIC Manager och öppna Symbols (genom att expandera projektet till S7ProgSV- nummer och dubbelklicka på Symbols ). 20. Lägg till ett PIW som heter ErrorCode_ Station _ Dragarnummer och ge den samma adress som den återstående Input 002 bytes. 21. Spara symbols.

Malin Fogelström, Magnus Svanborg 1.2 Bilaga A 8(12) Programmering: 1. Öppna Blocks. 2. Kopiera ett stations- och dragar-db (till exempel Stn5Dragare1). 3. Klistra in DB:t och välj första lediga DB efter DB851.

Malin Fogelström, Magnus Svanborg 1.2 Bilaga A 9(12) 4. Gå in i symbol editor och lägg till DB:t och döp det till det stations- och dragarnummer den ska ha (till exempel Stn1Dragare1 för station 1, dragare 1). 5. Öppna FC1100 ( AnropAtlasDragare ). 6. Scrolla till stationen för dragaren. 7. Högerklicka på Network Insert new network.

Malin Fogelström, Magnus Svanborg 1.2 Bilaga A 10(12) 8. Lägg in FB1100 ( Atlas_Dragare ) i nätverket. 9. Anslut det nyskapade DB:t till funktionsblocket ( StnXDragareX ). 10. Anslut det taktdb med stationsnummer till TaktDB och stationsdb till StnDB (Till exempel Takt1DB och Stn1 ). 11. Anslut PN-numret (som står i hårdvarukonfigurationen) till PN_nr och dragarnumret till DragarNr.

Malin Fogelström, Magnus Svanborg 1.2 Bilaga A 11(12) 12. Anslut Status_ Station _ Dragarnummer till Status 1 13. Anslut ErrorCode_ Station _ Dragarnummer till Error_Code. 14. Anslut Control_ Station _ Dragarnummer till Control.

Malin Fogelström, Magnus Svanborg 1.2 Bilaga A 12(12) 15. Scrolla längst ner i funktionen (FC1100). 16. Lägg till en ny felsignal genom att kopiera följande kod som finns i funktionen (alla siffror ska bytas ut så det spelar ingen roll vilken). 17. Klistra in och byt nummer på station, dragare och PN-adress. 18. Byt bitar från föregående funktion (om bitarna i föregående funktion är 60.0 och 60.1, byt till 60.2 och 60.3). 19. Spara.

Malin Fogelström, Magnus Svanborg 1.2 Bilaga B 1(3) Bilaga B FUNCTION_BLOCK FB1000 {S7_m_c := 'true'} TITLE = 'AtlasPF' NAME :'AtlasPF' FAMILY :'DIDRIK' VERSION :'1.0' AUTHOR : MFandMS VAR_INPUT DragarNr :INT; // Tool number StationsDB :BLOCK_DB; // DB for Station TaktDB :BLOCK_DB; // DB for tacting Status_1 :BYTE; // Status from tool ErrorCode :WORD; // Error code from tool END_VAR VAR_OUTPUT DragNrU :INT; // Tools number out Status :INT; // FbVer :STRING; Control :BYTE; // Control byte to tool END_VAR VAR_IN_OUT Val {S7_m_c := 'true'}: BYTE := 2#0; // from WinCC END_VAR VAR_TEMP Invald Bypass Res TempBool END_VAR :BOOL; :BOOL; :BOOL; :BOOL; VAR StatusToolReady :BOOL; StatusJobRunning :BOOL; StatusJobDoneStatusOK :BOOL; StatusAlarm :BOOL; StatusErrorCode :WORD; FlankDragningOK :BOOL; DragningOK :BOOL; ControlToolDisable :BOOL; ControlAbortJob :BOOL; EdgeDetected :BOOL; OldStatusJobDoneStatusOK :BOOL; END_VAR

Malin Fogelström, Magnus Svanborg 1.2 Bilaga B 2(3) BYtoBIT(By_in :=val // IN: BYTE,bit0 :=Invald // OUT: BOOL,bit1 :=ByPass // OUT: BOOL,bit2 :=Res // OUT: BOOL,bit3 :=Res // OUT: BOOL,bit4 :=Res // OUT: BOOL,bit5 :=Res // OUT: BOOL,bit6 :=Res // OUT: BOOL,bit7 :=Res // OUT: BOOL ); // VOID EdgeDetected:= StatusJobDoneStatusOK AND NOT OldStatusJobDoneStatusOK; // Positive Edge Detection for StatusJobDoneStatusOK from nutrunner OldStatusJobDoneStatusOK := StatusJobDoneStatusOK; IF EdgeDetected THEN DragningOK := true; END_IF; IF TaktDB.DX35.2 OR NOT Invald THEN DragningOK := false; END_IF; IF DragningOK AND Invald THEN ControlToolDisable := true; END_IF; IF TaktDB.DX35.2 AND Invald THEN ControlAbortJob := true; END_IF; BYtoBIT(By_in :=Status_1 // IN: BYTE,bit0 :=Res // OUT: BOOL,bit1 :=Res // OUT: BOOL,bit2 :=Res // OUT: BOOL,bit3 :=Res // OUT: BOOL,bit4 :=StatusAlarm // OUT: BOOL,bit5 :=StatusJobDoneStatusOK // OUT: BOOL,bit6 :=StatusJobRunning // OUT: BOOL,bit7 :=StatusToolReady // OUT: BOOL ); // VOID StatusErrorCode := ErrorCode; BITtoBy(Bit0 := TempBool // IN: BOOL,Bit1 := TempBool // IN: BOOL,Bit2 := TempBool // IN: BOOL,Bit3 := TempBool // IN: BOOL,Bit4 := TempBool // IN: BOOL,Bit5 := ControlAbortJob // IN: BOOL,Bit6 := ControlAbortJob // IN: BOOL,Bit7 := ControlToolDisable // IN: BOOL,Qby := Control // OUT: BYTE ); // VOID DragNrU := DragarNr; CASE DragarNr OF

Malin Fogelström, Magnus Svanborg 1.2 Bilaga B 3(3) 1: StationsDB.DX35.1 := Invald; IF DragningOK OR StationsDB.DX45.0 OR StationsDB.DX45.3 THEN StationsDB.DX35.2 := true; END_IF; StationsDB.DX35.4 := Bypass; 2: StationsDB.DX36.1 := Invald; IF DragningOK OR StationsDB.DX45.0 OR StationsDB.DX45.3 THEN StationsDB.DX36.2 := true; END_IF; StationsDB.DX36.4 := Bypass; 3: StationsDB.DX37.1 := Invald; IF DragningOK OR StationsDB.DX45.0 OR StationsDB.DX45.3 THEN StationsDB.DX37.2 := true; END_IF; StationsDB.DX37.4 := Bypass; 4: StationsDB.DX38.0 := Invald; IF DragningOK OR StationsDB.DX45.0 OR StationsDB.DX45.3 THEN StationsDB.DX38.1 := true; END_IF; StationsDB.DX38.3 := Bypass; 5: StationsDB.DX38.6 := Invald; IF DragningOK OR StationsDB.DX45.0 OR StationsDB.DX45.3 THEN StationsDB.DX38.7 := true; END_IF; StationsDB.DX39.1 := Bypass; END_CASE; ; END_FUNCTION_BLOCK