PØ/SRJ 00, 03 KG, 05 KG, 05 CCG, 07 TL, 09 TT, 10KRS, 14RM TTK4175 Instrumenteringssystemer Laboratorieoppgave Nivåregulering med Fieldbus Foundation Oppgavetekst NORGES TEKNISK-NATURVITENSKAPELIGE UNIVERSITET INSTITUTT FOR TEKNISK KYBERNETIKK THE NORWEGIAN UNIVERSITY OF SCIENCE AND TECHNOLOGY DIVISION OF ENGINEERING CYBERNETICS TRONDHEIM Versjon 9 1
Innledning Lokalisering: Forsøkshall i D-blokka Feltbuss erstatter analog signaloverføring med signalstandarden 4-20mA som fortsatt benyttes i prosessindustrien. Feltbuss defineres som lokale nettverk (LAN) for prosess- og fabrikkautomatisering - med digital signalutveksling mellom instrumenter ute i fabrikken, derfor betegnelsene Fieldbus (feltbuss) og overordnede systemer. Store kostnadsbesparelser og tekniske fordeler er de viktigste årsakene til en stor interesse fra industribedrifter verden over. Årsakene til dette er blant annet: Reduserte kablingskostnader da flere signaler kan overføres på samme kabel Forbedrede test- og kalibreringsrutiner Reduserte dokumentasjonskostnader Feltbussteknologien vil trolig erstatte nesten alle distribuerte styresystemer (DCS) og programmerbare logiske styringer (PLS) som i stor grad brukes i prosesstyring nå. Det nye begrepet er Field Control Systems (FCS). Under fellesbegrepet feltbuss finnes ulike løsninger; enkle sensorbusser for av/på utstyr som magnetventiler og endebrytere, busser som distribuerer regulering og styringsfunksjoner helt ut i feltinstrumentene samt utstyrsbusser som overfører store mengder informasjon på høyere nivå. Blant de mest kjente finnes busser som Interbus-S, Fieldbus Foundation, Profibus, LonWorks, AS-I og Devicenet. På tross av et intenst arbeide for utarbeidelse av internasjonale standarder innenfor dette feltet, er det fremdeles flere ikke-kompatible protokollalternativer på markedet enn kompatible. Feltbussen som denne oppgaven kjøres på følger ikke internasjonale standarder som innebærer at alle komponenter må kjøpes fra bestemte leverandører. Det foregår imidlertid standardiseringsarbeid på europeisk plan i Cenelec - EN 50170 og på globalt plan i International Electrotechnical Commitee - IEC 61158. Grunnen til at det er interessant å se nærmere på Fieldbus Foundation er mulighetene teknologien gir til å legge kontrollerlogikk og prosessregulering ut i feltinstrumentene. Da kan størrelsen på det sentrale styresystemet reduseres kraftig. Dessuten vil det kunne føre til store innsparinger i form av reduserte kabelgater, koblingsrom, datarom og ventilasjonsanlegg. 2
Oppgaver Laboratorieoppgaven består i å konfigurere feltbussen ved hjelp av Syscon Del 1: Konfigurering av feltbussen ved hjelp av Syscon Syscon er et program som på en enkel måte gir muligheter for å kople instrumenter som er kompatible med Fieldbus Foundation til et nettverk, samt konfigurere disse instrumentene slik at de kommuniserer på en fornuftig måte med hverandre. Denne delen av oppgaven går ut på å konfigurere det utstyret vi har slik at kommunikasjonen mellom de ulike enhetene fungerer som den skal. a) Forberedelser Gjør dere kjent med den fysiske oppkoplingen av utstyret. Sjekk før dere starter hvordan PC og måleinstrumenter er koplet fysisk til feltbussnettverket. Ser dette ut til å stemme? Hvordan er PC koplet til feltbussen? b) Kommunikasjon Logg på PC med brukernavn/passord i WIN-NTNU-NO domenet. Prosessen som skal reguleres består av en tank hvor vanntilførselen kan reguleres ved hjelp av en pneumatisk styrt ventil. Denne reguleres av en 4-20mA strømsløyfe. Settpunket til strømsløyfa gis av en FI302 enhet (feltbuss til strømsløyfe omformer). I tanken sitter en trykktransmitter med navn LD302 som brukes til nivåmåling. Utløpet justeres med en manuell ventil. For å få kontakt med feltbussen brukes en Ethernet/Fieldbus Foundation bro (DF51) med tilhørende kraftforsyning (DF50). Konfigurasjon av nettet gjøres med programmet Syscon. Variablene som flyter på feltbussnettverket kan også koples til et hvilket som helst program ved bruk av en OPC-server (OLE for Prosess Control). Nettet er i stand til å forsyne nettverket og enhetene med strøm inntil en viss grense. Som tommelfingerregel er det plass til ca. 32 enheter i et nett. Men i ex-omgivelser, hvor en ikke vil ha for mye effekt tilført, kan ikke så mange enheter være koplet på nettet. Energien kommer fra kraftforsyningen (PS302) med terminator (PSI302) i ene enden av nettverket. Nettverket må termineres i begge ender for å hindre refleksjoner på kabelen. Sjekk at det er gjort. Du kan sjekke dette ved å verifisere at det er en terminator (svart plastkloss) er koplet til i ene enden, og at BT på kraftforsyningen er koplet til OUT +. 3
Hvis dette er riktig koblet skulle det tilsi at nettet nå har strøm, men at det fremdeles ikke er koplet til noen enheter. Sjekk at broen er koblet til PC en via en nettverkskabel. Oppsettet blir da seende omtrent ut slik: Figur 1: System skisse Konfigurering kan angripes fra to hoved vinkler: (1) først logikk, deretter fysisk oppsett, eller (2) først fysisk oppsett og deretter logikk. Dere skal i denne oppgaven benytte metodikk (2). c) Start opp programmet Syscon Gå til Start>All Programs>System302>Studio302. Når programmet er åpnet velger dere ikonet SysCon, som er det syvende ikonet fra høyre. Lag en ny konfigurasjon ved å gå til menyen File>New>Area. Velg et passende navn. Gå til Start>Documents og opprett et nytt prosjekt med navnet Gruppe nn, hvor nn er nummeret på lab gruppen. Lagre prosjektet i denne mappen, File>Save as... d) Legge nettverk og initialisere kommunikasjon Det første dere må gjøre er legge til feltbuss nettverket. Høyreklikk på Fieldbus Networks (se figur 2) og lag en ny feltbuss ved å velge New Fieldbus. Angi en valgfri tag for den nye feltbussen og velg Type: H1. Figur 2: Ny feltbuss 4
Deretter må dere konfigurere og initialisere nettverket slik at systemet får en oversikt over enheter tilkoblet ethernettet. Høyreklikk på Fieldbus Networks og velg Communication Settings. I dialogvinduet velger dere: Server Id: Smar.DFIOLEServer.0 Server Context: All. Node Name: Tag navnet dere ga nettverket og trykk OK Det neste steget er å initalisere kommunikasjonen. Dette gjøres ved å trykke på den grønne knappen det står ON på. Knappen ligger på verktøymenyen. En dialogbox kommer opp. Når boksen forsvinner vil dere se at det nye nettverket har et kryss på seg. Dette innebærer at initialiseringen ikke var vellykket. Dette er naturlig siden broen mellom ethernettet og feltbussnettverket ikke er definert. Årsaken til at vi intialiserer kommunikasjonen så tidlig er at systemet vil få en liste over tilgjengelige broer. Denne informasjonen trenger vi i neste steg når vi legger til broen (DFI302/DF51) mellom ethernet og foundation fieldbus. e) Legge til ny ethernet/fieldbus bro Dobbeltklikk de nye feltbussnettverket (noden under Fieldbus Networks), slik at du får opp et nytt vindu. Init communication vil komme opp, trykk Abort. Plasser vinduene slik at du kan bruke dem begge (Windows>Tile). Høyreklikk på nettverksnoden i det nye vinduet. Velg New Bridge, manufakturer Smar og device type DF51 (samlebetegnelse). Device Rev.: 07 og la haken for Follow the Latest DD and CF Revisjons være avhuket. Angi et valgfritt tagnavn for broen og Upstream Port: 1. Trykk så OK. Høyreklikk på den nye broen og velg Commision... Legg merke til forskjellene under Device Configuration og Physical Device. Noter verdien for Device Rev, DD Rev og CF Rev under Physical Device. Dette er de faktiske revisjonene som er installert som firmware i den fysiske enheten. Trykk OK. Ved spørsmål om å laste ned konfigureringen til enheten, velg No. Vi gjør dette senere. Dere vil nå se at initialisering av kommunikasjonen gjennomføres på nytt. Hvis det røde krysset er borte har dere kontakt med nettverket. Gratulerer! Høyreklikk på broen og velg Exchange. Her er det mulighet for å endre revisjonene som dere noterte over. Fjern haken for Follow the Latest DD and CF Revisions og fyll inn de noterte revisjonene. Trykk OK. Et vindu kommer opp med varsler om endringer i forhold til den fysiske enheten. Trykk det gule «lynet» i menyen for å godta varslene. Forutsatt at kommunikasjon med broen er opprettet og at hardware fungerer som den skal, kan dere nå få oversikt over hvilke feltbussenheter som er tilkoblet. Høyreklikk på feltbuss nettverket i vinduet med samme navn som tag en til nettverket. Velg Livelist. Hvis alt går bra vil en liste 5
med tre enheter komme opp (kan trenge litt tid). Hvis den er tom kan dere prøve å initialiserere kommunikasjonen på nytt (slå av og på den grønne knappen). Høyreklikk og velg Attributes... for de to siste enhetene og noter ned også deres Device Rev, DD Rev og CF Rev. f) Legge til de to siste enhetene De to siste enhetene er FI302 (Fieldbus to Current Converter) som styrer ventilen LD302 (Pressure transmitter) som måler nivået i tanken (DP-prinsipp) Disse koples til ved å høyreklikk på feltbussen og velger New device. Leverandør er SMAR og enhetenes type er gitt i listen over. Velg relevante tags. Når vinduet for din nye enhet åpnes, kan du allerede nå legge inn de riktige revisjonene ved å fjerne haken for Follow the Latest DD and CF Revisions. Alternativt kan dette gjøres etterpå under Exchange lik metoden som ble brukt for broen. Når de to enhetene er lagt til må dere tilknytte enhetene til de fysiske enhetene på nettet. Høyreklikk på enheten og velg Commission. I vinduet som kommer opp er det mulig at det ikke er innført data for noen fysisk enhet. Trykk på ikonet med de tre punktumene... og velg riktig enhet fra listen som kommer opp. Physical Device blir nå fylt ut med riktig enhet, trykk så OK. Det røde krysset på enheten skal nå forsvinne og vi har opprettet kontakt med den fysiske enheten. Gjenta prosessen for den andre enheten. Hvis dere har valgt riktig device id til riktig enhet vil de røde kryssene nå være borte. Dette er nødvendig før dere går videre. 6
g) Legge til funksjonsblokker til feltenhetene Hver feltbussenhet kan tilordnes forskjellige funksjonsblokker som enheten har ansvar for å prosessere. FI302 og LD302 trenger begge en transduser og ressurs blokk. Disse følger automatisk med når dere legger til funksjonsblokkene. Spørsmål Hva er en transduser blokk og hvilken funksjon har den (se relevant manual)? Hva er en ressurs blokk og hvilken funksjon har den (se relevant manual)? I tillegg til de obligatoriske blokkene transduser- og ressursblokk trengs det tre funksjonsblokker for å implementere reguleringssløyfen: Analog input - funksjonsblokk for måling av nivået Analog output - funksjonsblokk for styring av ventilen PID - funksjonsblokk for regulering av nivået i tanken. Denne skal legges til i del 2. Dere må selv finne AI og AO blokkene og legge disse til FI302 og LD302 enhetene. Hint: Se i funksjonsmanualen og bestem hvilke inngangs- og utgangsblokker som skal knyttes til hver enkelt enhet (AI og AO). Tilordne disse blokkene til de respektive enhetene under FB VFD ved å høyreklikk FB VFD>New block ) h) Sette funksjonsblokk parameter For hver av funksjonsblokkene dere legger til er det parametere som må settes. På grunn av det enorme antall parametere som finnes, er det nedenfor laget en liste over hvilke parametere som alle må settes for at de ulike funksjonsblokker skal virke. Forklaringer av disse, samt alle de andre parameterne finnes i manualene som er lagt ut på nettet (start med Function Blocks Manual). Det forutsettes at gruppa slår opp for å finne betydningen av de parameterne i listen under. MODE_BLK (alle blokker) XD_SCALE, OUT_SCALE og PV_SCALE L_TYPE (AI) CHANNEL og TERMINAL_NUMBER Parameterne setter dere ved å høyreklikk på den respektive blokken dere vil konfigurere og velger Offline Characterization. Parameterne finner dere i vinduet som dukker opp. Hint: Default parameter vises automatisk, dette er kun et subset av alle parameterne. Hvis dere ikke finner parameteret dere ser etter, må dere velge knappen All 7
Verdien til hvert av parameterene er gitt i tabellen under. Tabell 1: Parameter Analog input (LD302) Transducer (TRDLD-1) Resource (RB-1) AI Analog output (FI302) Transducer (TRDFI-1) Resource (RB-1) AO MODE_BLK.TARGET=Auto MODE_BLK.TARGET=Auto MODE_BLK.TARGET=Auto CHANNEL=1 L_TYPE=Indirect XD_SCALE.EU_100=690 XD_SCALE.EU_0=240 XD_SCALE.UNITS_INDEX=mmH2O(4 C) mmh2o star for mm vannsøyle. EU_0 og EU_100 er funnet eksperimentalt. OUT_SCALE.EU_100=100 OUT_SCALE.EU_0=0 OUT_SCALE.UNITS_INDEX=% MODE_BLK.TARGET=Auto TERMINAL_NUMBER=1 MODE_BLK.TARGET=Auto MODE_BLK.TARGET=Cas CHANNEL=1 PV_SCALE.EU_100=100 PV_SCALE.EU_0=0 PV_SCALE.UNITS_INDEX=% XD_SCALE.EU_100=20 XD_SCALE.EU_0=4 XD_SCALE.UNITS_INDEX=mA Når dere er ferdig med å konfigurere parameterne lukker dere vinduet og gjentar prosedyren for alle blokker. Nå er dere ferdige med konfigurasjonen av hardware. 8
Del 2: Test av hardware, konfigurering og test av logikk Neste steg er å teste hardware, konfigurering og test av kontrollogikken. Dette krever en del forståelse av de forskjellige blokkene i fieldbus foundation standarden. De viktigste momentene er gitt i oppgaveteksten, men dere må selv prøve å finne resten ut i fra dokumentasjonen på laboppgavens hjemmeside. Function Blocks Manual er et godt startpunkt. a) Nedlasting og test av hardware Nå er hardware konfigurasjonen i utgangspunktet kommet så langt at det er på tide å sjekke om den virker. Sjekk at luften er koplet til ventilen (på veggen bak FF laben) og at vannet er skrudd på (veggen til høyre for FF laben). Oppdatering av OPC serveren, tags og nedlasting av konfigurasjon til feltbussenhetene er her nødvendig for at nettet skal kunne kjenne til konfigurasjonen og at SysCon skal kunne kjøre konfigurasjonen online fra nettet. Anbefalt fremgangsmetode er: 1. Last ned ny konfigurasjon (høyreklikk på feltbussen i feltbuss vinduet og velg Download) 2. Oppdater OPC databasen (hvis dette ikke gjøres vil dere ikke få opp noen verdier i On Line Characterization). Dette gjøres ved å høyreklikk på rot noden som har samme navn som prosjektet og velge Consolidate OPC Database. Velg Update This. 3. Eksporter Tags. Dette gjøres ved å høyreklikk på rot noden som har samme navn som prosjektet og velg Export Tags. Legg filen TagInfo.ini i den samme katalogen som prosjektet dere opprettet. (Hvis ikke dere husket å lagre prosjektet i Start>Documents, finnes default mappe her C:\Program Files (x86)\smar\configuration Workplace\Client\Cwfiles\System302. 4. Les av / endre online parameter for ventilen. Gjøres ved å høyreklikk på AO og velg On Line Characterization. Dere er nå klar for å teste ventilen. Kjør ventilen ved å stille pådraget manuelt (hint AO.SP.value). Vær klar over at det er endel parameter som ikke lar seg sette når blokken står i Cas. Da må dere svitsje MODE_BLK.TARGET til Out Of Service (OOS), endre ønskede parametere, og så endre MODE_BLK.TARGET tilbake til Cas. Fungerer dette som det skal? Les deretter inn nivåmålingen manuelt (AI.PV). Er denne pålitelig? Hvis dette ikke fungerer som det skal, juster aktuelle parametere i henhold til manual. I utgangspunktet skal de parameter som er satt for AI.XD_SCALE gi greie verdier (0 i måleglasset på tanken gir ca. 0 i PV, 100 i måleglasset gir ca. 100 i PV). Juster AI.XD_SCALE hvis dette er nødvendig. Dersom pådraget settes riktig og måleverdien er fornuftig, er det på tide å kople til regulatoren. 9
Dette kan gjøres manuelt i konfigurasjon, eller ved at funksjonsblokkene koples sammen ved hjelp av grafiske framstillinger (i Control stategy vinduet). I denne oppgaven skal dette gjøres ved bruk av den siste metoden. b) Konfigurasjon av logikk (regulatoren) Dere må ta stilling til hvor (i hvilken enhet) reguleringen skal utføres. Det er ikke selvsagt at dette skal være i DFI302 enheten. Det kan godt være at en av de andre enhetene også har regulatorfunksjon innebygget. Dette må dere selv finne ut, og deretter velge feltenhet som skal utføre reguleringen. AI, AO og ressurs- og transduserblokkene er allerede lagt til. I tillegg må dere altså legge til og konfigurere PID blokken (plassering er opp til dere) med følgende parameter fra Tabell 2: PID parameters. Tabell 2: PID parameter PID (velg den enkleste utgaven) MODE_BLK.TARGET=Auto PV_SCALE.EU_100=100 PV_SCALE.EU_0=0 PV_SCALE.UNITS_INDEX=% OUT_SCALE.EU_100=100 OUT_SCALE.EU_0=0 OUT_SCALE.UNITS_INDEX=% BYPASS=Off SHED_OPT=NormalShed_NormalReturn GAIN=velges av dere RESET=velges av dere RATE=velges av dere Følgende designprosedyre anbefales (kan avvikes i rekkefølge men alle elementer må være med) 1. Legg til en ny Prosess Cell under Application 2. Dobbelklikk din nye Process Cell og legg til en ny Control Module under det nye prosessavsnittet (høyreklikk). 3. Legg til de funksjonsblokkene som kontrollsløyfen krever 4. Lag en kontrollstrategi for kontrollmodulen (koble sammen funksjonsblokkene på en logisk måte slik at en regulering av nivået er mulig) Høyreklikk på Control Module og velg Strategy. (Se hint) 5. Last ned ny konfigurasjon (høyreklikk på feltbussen i feltbussvinduet og velg Download) 6. Oppdater OPC databasen (hvis dette ikke gjøres vil dere ikke få opp noen verdier i On Line Characterization). Dette gjøres ved å høyreklikk på rot noden som har samme navn som prosjektet og velge Consolidate OPC Database. 10
Hint: 7. Eksporter Tags. Dette gjøres ved å høyreklikk på rot noden som har samme navn som prosjektet og velge Export Tags. Velg ja for å overskrive filen TagInfo.ini som ligger i prosjektkatalogen. 8. Les av / endre online parameter. Gjøres ved å høyreklikk på den blokken dere ønsker å lese online data fra / skrive til, velg On Line Characterization. Nivået i tanken skal reguleres ved hjelp av en PID-regulator. Finn ut av manualen hvordan denne virker (se kretsskjema i manual) og installer denne hvor det er nødvendig. Kontrollstrategien implementeres ved å trekke linjer fra: o AI.OUT til PID.IN o PID.OUT til AO.CAS-IN o AO.BKCal_OUT til PID.BKCAL_IN Bruk Link-ikonet på Toolbaren (blir synlig når Control strategy vinduet er åpnet og valg i fokus). Hvis du klikker med de forskjellige museknappene på enhetene i strategivinduet får du forskjellig informasjon opp. Når strategien er ferdig implementert er det tid for test av logikken. c) Test av logikk og grovtuning av regulatoren Hvis alt er konfigurert riktig skal tanken nå fylles med vann opp til referansepunktet (start med et referansepunkt PID.SP rundt 50 prosent), og man skal høre at ventilen åpnes/lukkes. Juster forsterkning og integraltid slik at du har en tilfredsstillende regulering av nivået. Prøv å finne gode parametere for regulatoren. Det er nok at PID-regulatoren fungerer, samt at systemet er stabilt. (Tips til tuning av regulator kan være Ziegler-Nichols metode) Når regulatoren fungerer greit settes PID.MODE.BLK.TARGET=OOS, vanntilførsel slås av samt at avløpsventilen åpnes helt slik at alt vann renner ut. Steng også lufttilførselen til ventilen. Gratulerer! Dere har nå gjennomført FF laben! 11
Del 3 Evaluering Vi ønsker en tilbakemelding på laboratorieoppgaven. Vennligst svar på følgende spørsmål i slutten av besvarelsen. a) Vurdering av oppgaveteksten Teoridel: For lite, for mye, for dårlig forklart? Arbeidsforskrift: For detaljert, annen rekkefølge? Trykkfeil: Fant dere noen? b) Helhetsvurdering Hva har dere lært? Noe dere savnet? Fungerte utstyret tilfredsstillende? Hvor lang tid brukte dere? Godkjenning og etterarbeid For å få lab oppgaven godkjent kreves rapport med svar på spørsmålene. Relevante skjermbilder som viser de forskjellige konfigurasjonene tas med. 12