Entankprosjektrapport

Størrelse: px
Begynne med side:

Download "Entankprosjektrapport"

Transkript

1 Høgskolen i Sør-Trøndelag Entankprosjektrapport Prosjektoppgave i Styresystemer 2AEL13H våren 2015 Gruppe 6 Emil Hatletveit Kristian Strøm Terje Magnus Sørensen Stian Berg Dyrnes Snorre Vongraven Andreas Haugen

2 ii

3 Forord TMS Alle studenter ved automasjonslinjen ved HiST gjennomfører i fjerde semester et større prosjekt i faget Styresystemer og Reguleringsteknikk. Prosjektet har som hensikt å gi studentene trening i samarbeid, rapportskriving og praktisk problemløsning, samt øke den faglige kompetansen hos alle involverte. I entankprosjektet har prosjektgruppa programmert et kontrollsystem for en tank, kontrollsystemet består av en PI-regulator med mulighet for en PD-regulator i foroverkobling. Det er designet et grafisk brukergrensesnitt for HMI i henhold til kravene. I tillegg er brukerpanelet på PLS-riggen programmert med en enkel visuell framvisning. Systemet er testet og demonstrert for veiledere uten problemer. Stian Berg Dyrnes SBD Emil Welde Hatletveit EWH Kristian Strøm KS Terje Magnus Sørensen TMS Snorre Vongraven - SV Andreas Haugen AH Dato iii

4 Sammendrag TMS Denne rapporten har som formål å dokumentere entankprosjektet, som er en del av prosjektoppgaven i faget styresystemer og reguleringsteknikk. Prosjektet gjennomføres i 4. semester på studieretningen automasjon på HiST. Vi skal i løpet av dette prosjektet regulere to forskjellige varianter av væsketanker, først med en tank, og deretter med to tanker. Disse tankene skal reguleres ved hjelp av to PLS-er. Begge disse PLS-ene er styrt av en tredje PLS, som også er programmert i Gx Works2. Det skal i tillegg lages et brukergrensesnitt både på PC og på brukerpanel. Hensikten med entankprosjektet var å nivåregulere en væsketank ved hjelp av PLS. Hvordan dette er gjort er delt opp i flere elementer: - Oppretting av tilordningsliste for å gi en ryddig programmering. - Programmering av master- og slave-pls-er. - Konstruksjon av Anti-aliasingfilter for fjerning av støy. - Operatørbord InTouch. - Oppsett av touchbasert operatørpanel ix-panel TA ix-panel på webserver. Vi har i tillegg oppdatert nettsiden som rapportene blir lagt ut på. I siste del av denne rapporten viser vi en foreløpig bruk av tid i forhold til planlagt. Entankprosjektet ble avsluttet med demonstrasjon. Nivåreguleringen i systemet ble funnet tilfredsstillende og brukergrensesnittet brukervennlig, gruppen kan nå fortsette med prosjektets neste del. iv

5 Innhold Forord TMS iii Sammendrag TMS iv 1 Innledning Oppgavetekst TMS Definisjoner TMS Prosjektmål TMS Prosessmål Resultatmål 4 2 Teknisk del Programstruktur PLS SBD Slave 1 PLS program EWH Sampling Alarmtilstander Styr utganger Slave 2 PLS program SBD Variabler Adressering Hent data fra master Samplingssteg Prosessverdi Data til regulering P-regulator P-forover PI-regulator D-regulator Anti-windup Grensesjekk Oppdater verdier Manuelt pådrag Pådrag Alarmtilstand slave Data til master Master PLS program EWH Initialisering 28 v

6 2.4.2 Hovedprogram Rykkfrie overganger Strømbrudd Simuleringsnotat TMS Reguleringsalternativer Forsøk med verdier på tankriggen Problemer med utstyret - KS Filter EWH Krav til filtrering Dimensjonering av filtrene Simulering i Matlab Simulering i Multisim Bestillingsskjema Resultat IX-panel TMS Kravspesifikasjoner Tags Valg av kontroller Utforming og design Bruksanvisning InTouch og OPC KS Problemstilling og utfordringer Resultat InTouch - Quick start guide KS Regulatoralgoritmer SV Forkortelser Diskretisering Enkel Proporsjonal regulator PI-regulator Wind-up kontroll Auto og manuell Foroverkopling Regulator og heltall Webserver 65 3 Prosjektstyring Tidsbruk TMS 73 vi

7 3.2 Prosjektstyring og kvalitetssikring SV Statusrapportering Standardiserte skjemaer Versjonskontroll Tester og sjekklister 74 4 Konklusjon SV 75 5 Litteratur TMS 76 6 Vedlegg 77 vii

8 1 Innledning 1.1 Oppgavetekst TMS I denne delen av prosjektet skal vi bruke nivåregulering for å få ønsket væskenivået i en tank. Dette skal gjøres via regulatorer som er bygd opp i en PLS. Du skal ha mulighet til å regulere nivået i tanken med P- eller PI-regulator. I tillegg til dette skal det være mulig å bruke foroverkopling fra forstyrrelsen i tank 2. Foroverkoplingen skal kunne brukes som P-, D- eller PD-regulator. Du skal bruke pådrag fra regulatoren til å styre ventilene på innløpet. Figur 1 Oversiktsbilde kobling mellom PLS-rig og tank-rig 1

9 1.2 Definisjoner TMS AD/DA-omformer: Analog-Digital Digital-Analog, Elektrisk krets som gjør om fra analog signal til binære verdier, og motsatt. HMI: Human Machine Interface. Grensesnittet som brukeren presenteres for når han/hun skal bruke en datamaskin for å utføre en oppgave. Brukergrensesnittet er bare en del av et dataprogram (InTouch). It's Learning: Nettportal tatt i bruk av HiST hvor man kan legge ut filer og faginformasjon. Matlab/Simulink: Program for programmering, brukt for modellering og simulering. GX Works2: Program for programmering av PLS. HiST: Høyskolen i Sør-Trøndelag. InTouch: Program for å konstruere brukergrensesnittet for operatør på PC. ix Panel TA100: Operatørpanel festet på PLS-rigg, med berøring og farge skjerm. PLS: Programmerbar Logisk Styring. En datamaskin med inn- og utganger som du kan koble deg på. Vi benytter to typer under prosjektet to FX1N og en Q00. Samplingstid: Tiden mellom hver gang AD-omformeren gir et signal binært signal, fra et analogt signal. Bit: Enhet for digital informasjon. Kan ha verdien 0 eller 1 (av/på), kan lagre en boolsk verdi. Kan behandles i grupper på 4 (kvartett K1), 8 (byte 1B), 16 (word/dataord) og 32 (double word). Boolsk variable: Variabel som kan ha to verdier 0 eller 1 (av/på). Bufferminne: Lagringssted for digital informasjon. I PLS-modulene er bufferminnet nummerert (D0), alle bufferminner inneholder 16 bit. I/O Input/Output: Innganger og utganger på datamaskiner. LD/ FBD Ladderdiagram/Funksjonsblokkdiagram: Grafiske programmeringsspråk for PLS. IL Instruksjonsliste: Tekst basert programmeringsspråk for PLS. Minne: Ligningssted for digital informasjon. For eksempel 1-bits minneceller (M0) og 16-bits dataregister (D0). POU: Program Organisation Unit, delprogram i GX Works2. Bygd opp av for eksempel Ladderdiagram. Tag: Digital merkelapp. Brukes for å linke dataregister, minneceller eller andre verdier for å gi bedre oversikt i programmeringen. 2

10 Anti-aliasingfilter: Elektronisk filter bygd opp av operasjonsforsterker, motstand og kondensator. Filteret er et lavpassfilter som vil ta bort høyfrekvent støy for å hindre nedfolding (uønskede lave frekvenser på målingene som skyldes sampling). Foroverkobling: En reguleringsmetode som legges til pådraget for raskere kompensering av forstyrrelser hvor du måler forstyrrelser (kan også kombineres med matematisk modell). Foroverkobling kombineres som regel med tilbakekoblingsregulator (PID). Eventuelle feil i foroverkoblingen vil da kompenseres av tilbakekoblingen. PI-regulator: Proporsjonal- og Integral-regulator. Elektronisk styreenhet som du programmerer med en matematisk algoritme med forskjellige operasjoner. For å regulere prosessen via pådraget. PD-regulator: Proporsjonal- og Derivat-regulator. Elektronisk styreenhet som du programmerer med en matematisk algoritme med forskjellige operasjoner. For å regulere prosessen via pådraget. 3

11 1.3 Prosjektmål TMS Prosessmål Gruppemedlemmene skal: Få økt kunnskap og erfaring innenfor prosjektplanlegging og prosjektstyring. Få bedre erfaring med gruppearbeid, og sammen sørge for at prosjektgruppens resultatmål blir oppnådd. Kunne skrive gode rapporter og presentere innholdet. Kunne anvende teorien fra de forskjellige delen av faget Styresystemer på et praktisk problem Resultatmål Prosjektgruppen skal: Utarbeide og programmere nivåregulering for tank 2 på en tank-rigg ved hjelp av PLSer. Utarbeide og programmere et brukergrensesnitt ved hjelp av InTouch program og et operatørpanelet av typen ix Panel TA100. Her skal prosessen kunne overvåkes og styres etter gitte operatørspesifikasjoner. Levere fullstendig dokumentasjon av alt utført arbeidet. Levere alle rapporter innen leverings frist. Sørge for at alle deltakerne er kjent med de forskjellige delene av prosjektet Kunne redegjøre for framgang av prosjektet til veileder ved prosjektmøter. 4

12 2 Teknisk del 2.1 Programstruktur PLS SBD Programmene våre består av flere delprogram, POU-er, som alle gjør en enkelt oppgave. Alle oppgaver som skal gjøres i et program skal ha en egen POU, og det skal ikke skje flere urelaterte ting i en POU. Dette er for at programmene skal være strukturert og at det skal være lett å finne frem til og fikse eventuelle feil i programmet. En annen fordel med å benytte POU, er at programblokker da enkelt kan flyttes mellom andre programmer. Dette gjør at flere kan arbeide med samme program på forskjellige pc-er og enkelt overføre sine POU-er til et felles program. Man kan også flytte på en POU inne i et program, noe som gjør det lett å sette en rekkefølge programblokkene skal arbeide i. Struktur og POU oversikt i riktig rekkefølge for master: Figur 2 Informasjonsflyt og POU rekkefølge for master 5

13 Struktur og POU oversikt i riktig rekkefølge for slave 1: Figur 3 Informasjonsflyt og POU rekkefølge for slave 1 Struktur og POU oversikt i riktig rekkefølge for slave 2: Figur 4 Informasjonsflyt og POU rekkefølge for slave 2 6

14 2.2 Slave 1 PLS program EWH Angående kommunikasjonen med master PLS-en og AD/DA omformingen, er dette grundig beskrevet i miniprosjektrapporten. Derfor vil jeg ikke gå noe nærmere inn på dette her, men heller henvise tilbake til miniprosjektet, da det gjøres på nøyaktig samme måte i dette programmet. I figuren under ser vi den globale variabellista, og den viser hvilke navn som er brukt i PLSprogrammet, og til hvilke dataord og minneceller disse er tilknyttet. Figur 5 Global variabelliste 7

15 2.2.1 Sampling Når det gjelder samplingstid i programmet, så hentes den verdien fra InTouch-programmet på PC-en, via master-pls-en. Denne samplingstiden blir så tatt i bruk i en timer, som pulserer på en minnecelle vi har kalt Sample. Denne minnecellen vil på denne måten gå høy, og sample i takt med det som er skrevet inn av operatøren på PC-en. Vi har løst dette på samme måte i både slave 1 og slave 2. Dette ser slik ut i slave-programmet (se figur under). Figur 6 Viser hvordan samplingen blir gjort 8

16 2.2.2 Alarmtilstander Kravene i oppgaveteksten er at en alarmlampe skal blinke med en frekvens på 1 gang i sekundet når en avviksalarm er aktivert, dvs. når forskjellen mellom referansen og det målte nivået overstiger 25 % av tankens totale volum. Alarmen skal på samme måte blinke med en frekvens på 3 ganger i sekunder når en kritisk alarm er registrert. En kritisk alarm innebærer enten en alarm for kritisk høyt nivå (over 90 %) eller kritisk lavt nivå (under 10 %). Det skal også være en forsinkelse på alarmene, slik at en alarmtilstand kan være oppfylt i inntil 5 sekunder før alarmen skal gå. Dette er til for å gjøre anlegget mindre sårbart for falske alarmer, spesielt under en innreguleringsprosess. Dersom alarmen blir kvittert fra enten HMI-programmet på PC-en, eller på IX-panelet på riggen, skal lampen slukke. Hvis alarmen blir kvittert ut uten at alarmtilstanden er borte, skal alarmlampen lyse med fast lys. Dette lyset skal slukke når alarmtilstanden forsvinner. Når nivåmåleren på tanken måler noen gitte verdier blir tre forskjellige bitverdier satt høy i slave 2 PLS-en (se avsnitt om slave 2). Det innebefatter en bit for høyt nivå (nivå over 90 %), en bit for lavt nivå (under 10 %), og en bit for høyt avvik (avviket mellom referanse og målt nivå overstiger 25 % av tankens totale volum). Disse tre bit-verdiene blir sendt til slave 1 via master-pls-en, og er det som aktiverer alarmlampen. I programmet i slave 1 (se figur 7 under), ser vi at det også er minnecelle som heter feilkvittering. Denne minnecellen blir satt høy når alarmen blir kvittert. Dette er for å sikre at lampen fortsatt skal lyse når en alarmtilstand er kvittert, men fortsatt er aktiv. Vi ser også at denne feilkvitteringen har sin egen holdekobling. Her ser vi så at vi har tre minneceller i PLS-en som heter husk_høy_alarm, husk_lav_alarm, og husk_avviksalarm. Disse minnecellene blir satt ved alarmsignal fra riggen, og resatt av alarmkvittering. 9

17 Figur 7 Alarm tilstander 10

18 I figuren under ser vi at det er lagt inn to forskjellige timere, som skal sørge for at alarmlampa blinker med forskjellig frekvens ved de forskjellige alarmene. Dette er også beskrevet i kommentarene i PLSprogrammet. Figur 8 viser timer for alarmlampen Figur 9 viser når det skal være lys på alarmlampen 11

19 2.2.3 Styr utganger I denne programbiten skjer den faktiske endringen på PLS-ens utganger. Her blir signalene fra Intouch-programmet/IX-panelet, og fra utregningene i PLS-programmet omsatt i digitale verdier på utgangene. Her ser vi også at det er lagt inn en invertert kontakt på utgangen for pumpen, som gjør at den slår seg av om alarmen for høyt nivå i PLS-en blir aktivert. Figur 10 Viser hvordan utgangene i PLS-en styres og hva de styrer Nederst i programmet ser vi at vi også har en programbit for tilbakemelding fra utgangene. Dette fungerer slik at når en utgang er satt høy, blir det gitt signal tilbake til master-pls-en. Da det ikke er anledning til å skru på riggen, og det ikke finnes noen annen mulighet for tilbakemelding fra komponentene, er nok dette den eneste gode løsningen. Risikoen er selvsagt at vi ikke vet om for eksempel pumpa faktisk går, men kun at utgangen på PLS-en er aktivert. Dette må allikevel sies å være bedre enn ingen tilbakemelding overhodet. 12

20 2.3 Slave 2 PLS program SBD Variabler For at programmeringen skal effektiviseres og være mer oversiktlig er det viktig at alle dataord og minneceller som skal brukes tilordnes en egen variabel, med et navn som er forklarende og intuitivt. Alle variablene deklareres i den globale variabellista. Her kan vi tilordne et godt variabelnavn som er lett å huske å bruke senere i programmet, til alle brukte dataord og minneceller. Figur 11 Global variabel liste fra GX Works Adressering Slaven må også få en adresse på profibus-nettverket for å kunne kommunisere med master. Denne adresseringen gjøres på samme måte som i miniprosjektet. Dette er slave 2, og den skal ha adresse 2 på nettverket. Viser til figur 32 i miniprosjektrapporten Hent data fra master For at en operatør skal kunne styre parameterne i slaven, må den kommunisere med master. Her hentes verdier for minneceller, Kp, Ti, Referanse, Nominelt pådrag, filtertid, manuelt pådrag samplingstid, flow, Kp for foroverkobligen og Td for foroverkoblingen. Dette gjøres via profibusmodulen hvor hvert 16-bits dataord hentes fra et gitt bufferminne på profibus, på samme måte som i miniprosjekt figur

21 2.3.4 Samplingssteg Ettersom vi har en digital regulator skal data kun samles inn med en viss samplingstid. Denne samplingstiden blir satt av en operatør, og ei minnecelle skal gå høy en gang hver samplingstid, positiv puls. Dette kan løses ved å bruke en timer som skal telle opp og gå høy etter samplingstiden har gått, og deretter koble ut seg selv i neste scan. Denne timeren skal også sette en variabel for å sample. Figur 12 Viser sampling i slave Prosessverdi Prosessverdien, nivået i tanken, måles via en nivåmåler som sender ut et signal mellom 4-20mA og som er koblet til analog inngang 0. Her omformes dette analoge signalet til et 8-bits digitalt signal som legges i den globale variabelen «Prosessverdi». Det er dette signalet i bruker videre til all utregning or pådrag fra regulatoren. Vi skal samle inn data en gang hver samplingstid. Figur 13 Viser prosessverdi for regulatoren 14

22 2.3.6 Data til regulering Før regulatoren kan kjøres må det gjøres noen beregninger på de verdiene som skal reguleres. I dette systemet har vi to prosesser som regulatoren skal ta hensyn til. Den første prosessen er nivået i tanken (prosessverdi) som skal reguleres med P- eller PI-regulator. Det skal her reguleres med hensyn på avviket (e) fra referansen. Operatøren skal ha valget mellom å kjøre regulatoren i direkte eller reversert modus. Direkte modus gir: e = prosessverdi referanse og reversert modus gir: e = referanse prosessverdi. Figur 14 Viser hvordan avviket mellom prosessverdi og referanse gjøres Den andre prosessen vi skal regulere med hensyn på er utløpet fra tanken (flow), og denne skal reguleres med P-, D- eller PD-regulator i foroverkoblingen fra utløpet. Det skal her reguleres med hensyn på forstyrrelsen, som er endringen i flowen. Forstyrrelsen blir da forskjellen på den aktuelle flowen og forrige flow, Forstyrrelse = aktuell flow forrige flow. Figur 15 Viser endring i utstrømming 15

23 2.3.7 P-regulator En P-regulator fungerer ved å multiplisere forsterkningen med avviket, og deretter addere inn et nominelt pådrag. Denne typen regulator har den enkleste algoritmen av regulatorene vi bruker i dette prosjektet. Viser til kapittel for algoritme for P-regulator. Denne realiserer vi ved å lage en funksjonsblokk for P-regulator. I denne funksjonsblokken benyttes lokale variabler hvor verdien er avhengig av inputen. For å ikke få problemer dersom utregningene skulle resultere i for store tall underveis i koden, gjøres alt om til 32-bits ord inne i koden. Figur 16 P-regulator Denne programblokken kan nå implementeres i resten av programmet der det er ønskelig. Man må da kalle på denne funksjonsblokken som en lokal variabel der den skal implementeres, og deretter sette input-verdier den skal benytte, og bestemme hvor output verdiene skal skrives til. Figur 17 P-regulator funksjonsblokk 16

24 Det er forskjellige kriterier for hvordan dette nominelle pådraget skal stilles inn. Dersom regulatoren går fra PI til P, skal d nominelle pådraget bli satt lik forrige pådrag fra PI-regulatoren. Dersom Regulatoren går fra manuell til P, skal det nominelle pådraget bli satt til et manuelle pådraget. Det nominelle pådraget skal kobles ut dersom P-delen i foroverkoblingen er aktiv. Dette er for at programmet skal fungere rykkfritt i overgangen mellom de forskjellige modusene. Alt dette gjøres i en egen programbit i PLS-en. Figur 18 Rykkfri overgang i P-regulator 17

25 2.3.8 P-forover Programblokken for P-forover er nesten identisk med programblokken for P-regulator, men den mangler nominelt pådrag, og den skal regulere med hensyn på forstyrrelsen istedenfor avviket. Vi kunne derfor ha brukt den samme programblokken i foroverkoblingen med andre input variabler, men ettersom variabelnavn og lignende da kunne vær misvisende, bestemte vi oss for å lage en egen programblokk for denne. Figur 19 P-foroverregulator Denne blir kalt på som en lokal variabel der den skal brukes på samme måte som P-regulator, og settes deretter inn med de input- og output-parameterne vi ønsker. Figur 20 P-foroverregulator funksjonsblokk 18

26 2.3.9 PI-regulator PI-regulatoren har en litt mer kompleks oppbygning enn P-regulatoren. Viser her til kapittel for algoritmen til en PI-regulator. Denne blir også realisert ved å lage ei funksjonsblokk, men denne trenger en del flere input-variabler og inneholder flere regneoperasjoner. Input variablene skrives også her til 32-bits dataord på samme måte som i P-regulator. Resultatet av en divisjon eller multiplikasjon av to 32-bits dataord, skrives til et 64-bits dataord. Ettersom PLSen ikke inneholder noen kommando or 64-bits dataord, må dette legges til ei liste (array) av 32-bits dataord med to indekser. Indeks 0 (array[0]) inneholder da det aktuelle tallet, mens array[1] inneholder fortegnet. Dersom tallet skal benyttes videre må det derfor spesifiseres at indeks 0 skal benyttes. Figur 21 Hvordan sette Kp og Ti med mulighet for desimaltall 19

27 En del av algoritmen skal kun utføres en gang. Vi legger derfor med et hopp (conditional jump) i koden som er avhengig av verdien fra en teller. Denne telleren telles opp så lenge programmet kjøres, og skal gå høy når den har telt opp til 1. Figur 22 Hopp for å hindre at uønskede deler av programmet kjøres Resten av koden for PI-regulatoren er stort sett å følge regulatoralgoritmene for PI-regulator. Til slutt utføres en grensesjekk på det 32-bits dataordet for pådrag, før et skrives ut til det 16-bits dataordet for pådrag. Dette er output variabelen fra denne funksjonsblokken. Figur 23 Viser utganger for PI-regulator sin funksjonsblokk 20

28 Denne funksjonsblokken deklareres i programmet på samme måte som for P-regulator, og parameterne settes. Det legges også med en kode som skal sette forrige pådrag lik det aktuelle pådraget for P-regulator dersom det endres fra P til PI. Dette er for å sikre en rykkfri overgang P- og PI-regulator. Figur 24 Kode for rykkfri overgang fra P til PI og Inn/utganger PI-funksjonsblokk 21

29 D-regulator D-regulatoren bygd opp på samme måte som PI-regulatoren med 32-bits dataord istedenfor 16-bits, og at multiplikasjon og divisjon av 32-bits dataord skrives til en array. Alle utregningene benytter de samme metodene som de andre regulatorene, men med en annen algoritme. Les kapittel for algoritmen for en D-regulator i foroverkobling. Det som er nytt i denne regulatoren er at grensene for pådraget ut settes mellom -255 og 255. Dette er fordi derivatoren skal holdes utenfor antiwindup kontrollen i regulatoren, som er en kontroll av grensene til pådraget. Grunnen til at D-regulatoren skal holdes utenfor dette er at den skal ha muligheten til å se endringer i forstyrrelsen, og derfor motvirke pådraget fra P- eller PI-regulatoren med eller uten P-del i foroverkoblingen. Figur 25 setter grenser for D-delen i regulatoren Denne funksjonsblokken implementeres i programmet på samme måte som alle de andre regulatorene, men det setter her en sjekk på om P-delen i foroverkoblingen er aktiv. Dersom denne ikke er aktiv, skal Kp i algoritmen for D-regulator settes lik 1. I vårt program er alt multiplisert med 10 for å få med en ekstra desimal, og det divideres på 10 inne i funksjonsblokken etter utregningen. Kp fra foroverkoblingen settes derfor til 10 dersom P-delen er koblet ut. Figur 26 Funksjonsblokk for D-regulator 22

30 Anti-windup Anti-windup fungerer som en grensesjekk på pådraget, og skal utføres dersom D-delen i foroverkoblingen er aktiv. Dette er for at D-delen skal kunne motvirke endringer i forstyrrelsen som ikke er merkbart på tanknivået. D-delen kan fort bli ubetydelig dersom anti-windupen ikke er tilstede. Figur 27 Oppbygning av regulator Et eksempel på denne anti-windupen er dersom vi har valgt PI-regulator med PD i foroverkoblingen. Pådraget fra PI-regulatoren og P fra foroverkoblingen skal da adderes og grensesjekkes før D-delen adderes inn. Dette gjøres med et par enkle regneoperasjoner dersom enkelte boolske krav er oppfylt. Figur 28 Eksempel på anti-windup 23

31 Grensesjekk Grensene for pådraget må sjekkes før et sendes til DA-omormeren. Dette gjøres på samme måte som i anti-windupen, bortsett fra at dette skal gjøres for det totale pådraget, uansett hvilken regulatortype som er valgt. Figur 29 Grensesjekk 24

32 Oppdater verdier Ettersom regulatorprogrammet også benytter de forrige verdiene for enkelte tilfeller, må disse oppdateres når neste data skal hentes fra omformeren. Dette gjøres enkelt med noen MOV-blokker. Disse flytter verdier fra et dataord til et annet når samplingsvariabelen er aktiv. Figur 30 Hvordan nåverdi og siste verdi lagres og oppdateres Manuelt pådrag Regulatoren skal også kunne kjøres i manuell modus, hvor brukeren selv skal kunne sette pådraget. Dette manuelle pådraget hentes fra master og legges i variabelen Um så lenge manuell modus er aktiv, og skrives til det aktuelle pådraget u[1]. For å sikre en rykkfri overgang mellom automatisk og manuell modus, må det manuelle pådraget oppdateres så lenge programmet kjøres i automatisk modus. For å sikre en rykkfri overgang tilbake til automatisk modus, må avviket settes lik 0 så lenge manuell modus er valgt. Dette gjøres ved at referansen settes lik den aktuelle prosessverdien. Figur 31 Viser hvordan mulighet for manuelt pådrag er programmert. 25

33 Pådrag Pådraget skal sendes til omformeren, og det digitale signalet som ligger mellom skal sendes ut som et strømsignal med 4-20mA. Dette gjøres på nesten samme måte som i miniprosjektet, men forskjellen er at dataordet u[1] hvor det aktuelle pådraget ligger skal sendes til omformeren. Figur 32 Sending av pådrag til omformeren Alarmtilstand slave 2 Slave 1 skal gi alarm ved enkelte tilfeller, se kapittel 2.2.2, som skal hentes fra slave 2 dersom alarmtilstanden varer i mer enn 5 sekunder. Det sjekkes for kritisk alarm ved at prosessverdien sammenlignes med det kritisk lave og det kritisk høye nivået vi har definert på forhånd. Dersom prosessverdien er innenfor et av de definerte kritiske tilfellene i mer enn 5 sekunder, skal en variabel for høy eller lav alarm gå høy. Samtidig sjekkes det om avviket er innenfor det intervallet vi har satt som akseptabelt avvik. Dersom avviket er utenfor dette intervallet i mer enn 5 sekunder vil alarmen for høyt avvik gå. Disse alarmtilstandene settes til minnecellene M60 til M62, og skal sendes tilbake til master. Figur 33 Alarmtilstander 26

34 Data til master Det siste som skal gjøres i programmet er å sende data tilbake til master. Det som er aktuelt å sende er pådrag, nivåmåling, avvik, alarmtilstander og eventuelle endringer som har blitt gjort i slave 2 på referanse, nominelt pådrag og manuelt pådrag. Figur 34 Dataoverføring mellom slave 2 og master 27

35 2.4 Master PLS program EWH Initialisering Når det gjelder initaliseringsdelen i masterprogrammet, vil jeg henvise tilbake til miniprosjektrapporten (Kapittel 2.5.1). Der er initialiseringsprosessen tydelig forklart med både bilde og tekst. Initialiseringen er nøyaktig lik i dette programmet Hovedprogram I master-pls-en er det skrevet et hovedprogram som har som hovedoppgave å videreformidle data mellom slave 1, slave 2, og til operatøren gjennom InTouch/ ix-panel. Dette gjøres ved hjelp av flowmålingen hentes fra slave 1, og legges i D121 i master-pls-en. Den blir så sendt til slave 2 via dataordet D209. Videre ser vi at bit-verdiene for alarmtilstandene blir sendt fra slave 2 til slave 1 via minnecellene. Alt dette ser vi i figuren under. Figur 35 Videre formidling mellom slave 2 og slave 1 28

36 Ettersom tilstander på en del minneceller skal sendes mellom master og slavene, skrives disse minnecellene over til dataord. 16 minneceller kan da legges til et 16-bits dataord, og disse dataordene sendes til slavene via profibus. Tilsvarende skal minneceller hentes tilbake fra dataordene som slavene skriver til. Figur 36 omgjøring av verdier for sending mellom slave 1 master slave 2 29

37 2.4.3 Rykkfrie overganger I denne delen av programmet sikrer vi at verdier som endres i slave 2 skal oppdateres i master ved riktig tidspunkt. Eksempelvis skal referanseverdien oppdateres dersom manuell modus er aktiv, og manuelt pådrag skal oppdateres dersom regulatoren er satt i automatisk modus. Dette er for å sikre en rykkfri overgang mellom manuell og automatisk modus. Det nominelle pådraget skal oppdateres dersom regulatoren er satt i PI eller manuell modus, eller dersom P-delen i foroverkoblingen er aktiv. Figur 37 rykkfrieoverganger masterdel 30

38 2.4.4 Strømbrudd For å sikre at regulatoren skal fortsette å regulere etter et eventuelt strømbrudd, må alle parameterne lagres understrømbruddet. I Q-PLSen er batterimatede minneceller av typen L, og batterimatede dataord er av typen R. De vanlige minnecellene og dataordene er M og D. De batterimatede minnecellene og dataordene husker verdiene sine under strømstans. Vi har derfor valgt å skrive alle våre verdier over til batterimatede dataord og minneceller så lenge programmet kjører, bortsett fra i første scan. I første scan henter vi disse verdiene tilbake. Vi bruker her verdien BMOV, som flytter det spesifiserte antallet dataord fra det angitte dataordet. For eksempel vil BMOV D R100, flytte dataordene D100, D101,, D115 over til R100, R101,, R115. Speisalminnecellen SM402 er aktiv i kun første scan. Figur 38 sikkerhet ved strømbrudd 31

39 2.5 Simuleringsnotat TMS Som en del av entankprosjektet ble det laget et simuleringsnotat. I notatet er det forsøkt å lage matematiske modeller av prosessen, simulere og finne regulator innstillinger. Simuleringsnotatet kan finnes i sin helhet i vedleggs biten av rapporten. Regulatorinnstillingene ble funnet med utgangspunkt i kravene til innsvingningsforløpet: Ved stabilt nivå og referanse stilt til 60 % (uten stasjonært avvik) skal prosessen ved et sprang i utløpet fra 100 % til 33 % åpent (fra tre til en åpen magnetventil) ha et innsvingningsforløp som tilsvarer minimum areal. Raskest mulig innsvingningstid til nivået holder seg innenfor ± 2 % av måleområdet. Det dynamiske avviket skal være minst mulig Reguleringsalternativer Med utgangspunkt i kravene til innstillingsforløp kom vi fram til disse forslagene til innsvingingsforløp. I alle figurene har vi brukt K p = 7.9 og T i = 4,67. I foroverkoblingene er det brukt P-forsterking = 1, og Derivatortid = PI-regulator uten foroverkopling. Sprang i utløpet 1-3 ventiler ved t=80sek Prosessverdi Referanse Høyde i tanken [cm] Tid [sek] Figur 39 Sprang i utløpet PI-reg 32

40 PI-regulator med P-foroverkopling. Sprang i utløpet 1-3 ventiler ved t=80sek Prosessverdi Referanse Høyde i tanken [cm] Tid [sek] Figur 40 Sprang i utløpet med PI-reg med P-forover PI-regulator med D-foroverkopling. Sprang i utløpet 1-3 ventiler ved t=80sek Prosessverdi Referanse Høyde i tanken [cm] Tid [sek] Figur 41 Sprang i utløpet med PI-reg med D-forover PI-regulator med PD-foroverkopling. Sprang i utløpet 1-3 ventiler ved t=80sek Prosessverdi Referanse Høyde i tanken [cm] Tid [sek] Figur 42 Sprang i utløpet med PI-reg med PD-forover

41 2.5.2 Forsøk med verdier på tankriggen Ved forsøk på den reelle tanken fikk vi følgende forløp med PI regulator og PD foroverkobling. K p = 7.9, T i = 4.67, K pff = 0.4, T dff = 1.3 Figur 43 Test av regulatorinnstillinger på den reelle tanken, visers i InTouch Figur 44 Test av regulatorinnstillinger på simulinkmodellen, Sprang i forstyrrelsen i rød ring Som vi ser av de to figurene stemte verdiene veldig bra med den reelle tanken. Vi syntes innsvingningen ble meget tilfredsstillende. Den forskjellen vi fikk på innsvingingene er at tanken gir noe mindre svingninger enn den matematiske modellen. Ved sprang i utløpet ble det nesten ikke svingninger i det hele tatt. Noe som kommer av at ventilen i prosessen er meget rask. 34

42 2.6 Problemer med utstyret - KS Allerede før tanken ble tilkoblet ble det fort åpenbart at vår rigg ikke var helt som de andre. Det første vi måtte ta stilling til var at gjennomstrømningsmåleren som skulle brukes i forbindelse med foroverkoblinga måler utløpet i tank 2. Dette er lite hensiktsmessig siden denne tanken er utstyrt med en lynrask pneumatisk ventil og vil dra mye mindre nytte av foroverkobling enn den andre tanken som har en treg motordrevet ventil. Etter rådføring med veileder ble det likevel besluttet at vi skulle bruke utstyret som det var, og ikke bry oss så mye om dette. Etter at tilkoblingen var gjort fortsatte problemene. Vi oppdaget alarmlampa og vannpumpa alltid var aktivert, og at kabelen som går mellom riggene ble god og varm. Vi feilsøkte litt på egen hånd og fant en potensialforskjell på 24v mellom ramma på riggen og 0v på strømforsyninga. På dette tidspunktet fant vi ut at vi skulle rekvirere noen av de som var ansvarlige for utstyret til å se på saken. Lab. ass. Daniel i samråd med veileder Sigurd monterte et eksternt relé på utgangen på slave1-plsen med et par ledninger direkte opp til lampa, og et par andre ledninger direkte til releet som står mellom frekvensomformeren og vannpumpa. Se vedlegg 7 for en grov skisse av koblingene som ble gjort. Nå kunne vi endelig begynne å jobbe med oppgaven. Det ble under videre arbeid observert at magnetventilene på utgangene ikke er tett. Ved full tank ble det så mye som 3 l/min i utløpet med lukkede ventiler. 35

43 Det viste seg også at når tanknivået kjøres så lavt (eller høyt) at alarmlampa utløses, og tilbake igjen mens lampa fortsatt blinker, blir reguleringen helt utilregnelig. Se figur 41. Figur 45 Viser støy på nivåmåler og pådraget Med en god blanding av kvalifisert gjetting og flaks ble det foreslått å undersøke reléet som nettopp hadde blitt montert i forbindelse med denne lampa. Her viser det seg at det mangler en diode for å dempe spenningstransienten som oppstår når en induktans, i dette tilfellet reléspolen, mister spenning. Se figur 42 for forklaring av prinsipp. Figur 46 Diode egenskap Med dette på plass fungerer riggen endelig tilfredsstillende! Figur 47 - Sprang med diode 36

44 2.7 Filter EWH Krav til filtrering Det skal i prosjektet benyttes to antialiasingfiltre. Disse skal brukes på strømsløyfen for målt nivå, og på strømsløyfen for målt utløp. Hele hensikten med disse filtrene er at de skal fjerne uønsket støy i målesløyfene, slik at vi får bedre og penere måle-verdier. Det stilles krav i oppgaveteksten om at det ene filteret skal være av andre orden, og det andre av valgfri orden. Vi har valgt å lage begge filtrene identisk, og av andre orden. Dette ivaretar kravene i oppgaveteksten, samtidig som det gir oss kun en utregning av knekkfrekvens, og dimensjonering av komponenter. Filtrene skal lages med brikka LM358, som inneholder to operasjonsforsterkere. Disse må bestilles av veileder/labingeniør, sammen med resten av komponentene vi trenger. Verdien på disse komponentene må først regnes ut, før vi kan sende inn bestillingsskjemaet. I tillegg må det bestilles koblingskort, ledninger og bananplugger, samt to stk. 250Ω motstander, som skal brukes for å kunne regulere om strømmen i målesløyfa(4-20ma) til en spenning mellom 1-5 V. Grunnen til dette er at vi skal ha et spenningsbasert filter, som trenger en spenning i dette området for å fungere Dimensjonering av filtrene Når vi ikke kjenner støyen, må vi sørge for tilstrekkelig demping ved halve samplingsfrekvensen. Ideelt sett burde all tenkelig støy dempes til 1 LSB(Least significant bit) ved halve 2 samplingsfrekvensen, men det krever enten en alt for lav knekkfrekvens, eller en urealistisk høy filterorden. Her må det gjøres et kompromiss, slik at dempingen ved halve samplingsfrekvensen ikke blir så bra som vi kunne ønsket. I utregningen på neste side har vi brukt en praktisk dempning ved halve samplingsfrekvensen på 20 db, lest ut i fra tabellen på side 43 i boka Sanntidsdatateknikk av Per Hveem. Samplingsfrekvens = ω s = 2π ( 1 h ) h = Samplingstid = 0.1 ω 0 = ω k = knekkfrekvensen 37

45 ω s 2 = 2π 2h = π rad = 31.4 h s ω 0 = ( u 1 h støy etter filter ω s ) u støy 2 ( u støy etter filter u støy ) = ønsket demping = 20dB = 0.1 ω 0 = (0.1) rad s rad = s = 9.92 rad s Går ut fra at begge kondensatorene er 1µF for enkelhets skyld: α = ω 0 cos 45 = 9.92 rad s rad cos 45 = 7.01 s R 1 = 1 1 = 2αC ( = 71.3 kω ) R 2 = 2α 1 2 = C ( = 142 kω ) ω 0 Det mest nærliggende her blir motstandsverdier på 68KΩ og 150KΩ, når kondensatorverdien er 1µF. Det er disse verdiene vi må føre opp på bestillingsskjemaet. Overføringsfunksjonen for filteret blir følgende: 2 ω 0 S α S + ω = S 2 2 ω + 2αS = 0 ω + 1 S 2 = S S S

46 2.7.3 Simulering i Matlab Figur 48 Viser overføringsfunskjonen og komandoen for å tegne bodediagrammet Her får vi skrevet ut et bode-diagram av overføringsfunksjonen. Figur 49 Viser bodediagrammet til overføringsfunksjonen Her ser vi at vi har fått en forventet karakteristikk for både magnitude og forsterkning for et andreordens lavpassfilter. 39

47 2.7.4 Simulering i Multisim Her har vi koblingsskjemaet i til filtrene i multisim. Figur 50 Koblingsskjema for filter Her er et bilde av passområdet til filteret. Figur 51 bodediagram for filteret 40

48 Figur 52 Viser hvordan filteret er testet Her vises innsignalet med blå kurve og utsignalet med rød kurve. Frekvensen på innsignalet er 20 Hz, og vi ser at ingenting av dette støyet slipper igjennom på utsignalet. Vi har også lagd en DC-spenningsendring på innsignalet fra 1V til 5V og tilbake til 1V. Dette vises tydelig på grafen under. Figur 53 Testresultat for filteret fra multisim 41

49 2.7.5 Bestillingsskjema - 2 stk. operasjonsforsterkerbrikker, type LM358-2 stk. motstander med motstandsverdi på 68 KΩ - 2 stk. motstander med motstandsverdi på 150 KΩ - 4 stk. kondensatorer med kapasitansverdi på 1µF - 2 stk. 250Ω motstander - 2 stk. kretskort med langsgående ledebaner - 2 stk. sokler til operasjonsforsterkerbrikkene - 8 stk. bananplugger - 1,5 meter ledning Figur 54 koblingsskjema filter 42

50 2.7.6 Resultat Når vi koblet på det første filteret på nivåmålesløyfen, fikk vi umiddelbart en stor og merkbar forbedring på måleverdiene. Dette ser vi i grafen på figuren under. Figur 55 Viser hvordan filteret forbedrer måleresultatet Her ser vi nivåmålingen med rød farge, og flow målingen med blå farge. Referansen vises i grønt. Den røde grafen før «spikeren», viser nivåmålingen uten filter. Etter at filteret ble koblet inn ser vi et lite innsvingningsforløp, før det blir en tydelig forbedring i den tilsynelatende stabiliteten i målingen. Her fungerer filteret perfekt! 43

51 Figur 56 Ferdig filter Når det gjelder tilkoblingen av filteret på målesløyfen på utløpet, fungerte ikke koblingene på riggen. Grunnen til at vi har truffet denne konklusjonen, er at når vi kobler til filteret, får vi ingen signal fra flow måleren, noe som indikerer brudd i sløyfa. Denne problematikken knytter seg til strømforsyningen på PLS-riggen, og forårsaker at filteret ikke fungerer som det skal. Samtidig skal det sies at det er svært lite støy på denne målingen, og at vi derfor neppe ville merket noen forbedring ved tilkobling av filteret uansett. 44

52 2.8 IX-panel TMS Kravspesifikasjoner Oppgaven ga noen spesifikke krav til hva som måtte være med på panelet. Kravene er vist i tabell 1. Variable Skrives Leses Referanse til tank X X Manuelt pådrag til tank X X Omstilling fra manuelt pådrag til automatisk X X nivåregulering for tank Pådrag for tank X Nivå tank X Melding om alarmer fra tank X Kvittering av alarmer fra tank X Start/stopp pumpe X Tabell 1 - Tabell som viser ønskede skrive- og leserrettigheter for operatørpanelet X Vi har valgt å legge til noe ekstra informasjon, i tabell 2 kan du se hva vi har lagt til ekstra. Variable Skrives Leses Flow-måler X Utventiler X X Tabell 2 - Tilleggs info for IX-panelet Det er også slik at det skal være mulig å styre panelet fra webserveren. 45

53 2.8.2 Tags De verdiene vi ønsker å sette og lese hos PLS-ene må legges inn som tags i ix Developer. Dette gir tag listen vist i figur 53. Vi skriver direkte adressen på det minnet vi ønsker å lese/skrive til PLS-en. Hvilke minner vi kan benytte ser vi i tilordningslisen som er vist på figur 17. Det var også nødvendig å skalere verdiene for å få rett enhet. Vi har for eksempel ganget referansen med 0.39 for å gjøre om fra bit til prosent. Bit-verdien 255 gir referanse på 100. Figur 57 Tagliste I tag listen ser man også adressen og datatypen som er brukt i Master PLS-en (Melsec Q00). Dette ser du under «Contollers». Under «Tag» feltet ser man navnet på taggen internt i programmet og datatypen det skal behandles som. Når vi nå har satt opp de objektene vi ønsker å benytte på panelet må vi knytte de opp mot tiltenkte funksjoner. Vi gjør dette ved å velge hvilken tag objektet skal knyttes til og funksjonen til tagen. 46

54 2.8.3 Valg av kontroller Panelet vi bruker kan kommunisere med flere kontrollere samtidig, men vi kommunisere kun med Master-PLS over Ethernet. Innstilligene for kontrolleren skal være satt til «MC Protocol», vi må også fortelle panelet hvor den finner PLS-en. Du må sette IP adressen og porten som PLS-en bruker. Se figur 18. Figur 58 Viser kontroller med IP-adresse og port. 47

55 2.8.4 Utforming og design Når vi har laget utformingen av panelet er det lagt vekt på en oversiktlig utforming, hvor alle symboler skal være store. Det er kun prioritert å legge ved informasjon om flow-målingen og mulighet for å endre status på utventilene i tillegg til det som er spesifisert i oppgaveteksten. Figur 59 IX panel For å vise om pumpe, ventiler og regulatorventil er i arbeid endrer de farge. Under arbeid er de grønn og ute av arbeid grå. Det er også gjort slik at referanse, tanknivå og pådrag blir gitt i prosent. Valget mellom manuell og auto på pådraget er gjort slik at den som er i bruk blir mørk. Samt at teksten i pådragsboksen endrer seg mellom «Man. Pådrag» og «Pådrag». Vi har sørget for å være konsekvent med fargebruk og symbolbruk, derfor har vi blant annet brukt like symboler i både InTouch og på IX panelet. Vi har benyttet rødt som farge for feil, grønn for under kjøring og grått for ikke i bruk. 48

56 2.8.5 Bruksanvisning Figur 60 Bruksanvisning IX panel. 1. Viser visuelt nivået i tanken. 2. Viser om pumpen er på eller av, trekanten blir grønn ved drift og grå ellers. 3. Viser om du har pådrag fra regulatorventilen. Grønn i drift og grå ellers. 4. Viser om ventilen er på eller av. Grønn i drift og grå ellers. 5. Viser hvor stor væskestrøm du har ut av tanken, gitt i l/min. 6. Viser om du har alarm, rød ved alarm og grå når det ikke er alarmtilstand. 7. Lyser rødt om alarmen er kvitert og det fortsatt er alarmtilstand. 8. Innmatingsfelt for referansen i tanken, du kan sette inn en verdi mellom 0 og Viser nivået i tanken. 10. Man. pådrag/pådrag, ved innstilling manuell viser knappen Man. pådrag da har du mulighet til å justere pådraget mellom 0 og 100. Når du er stilt inn på auto viser dette hvor stort pådrag reguleringsventilen gir. 11. Du kan her velge om du ønsker automatisk eller manuelt pådrag. Den varianten du velger blir mørk. 12. Kvitterer ut alarm, vil fjerne alarm blinking så lenge du er ute av alarmtilstand, ved kvittering i fortsatt alarmtilstand vil det fortsatt lyse. 13. Åpner utgangsventiler, du har tre slike knapper som er henvist til hvilken ventil som åpnes. 14. Kan starte å stoppe pumpen til tanken. 49

57 2.9 InTouch og OPC KS Problemstilling og utfordringer Oppgaven lyder på at det skal lages ett eller flere skjermbilder som skal styre og overvåke prosessen. Styresystemet skal ha skjermbilder for å vise/skrive følgende: prosessbilde der det blant annet skal fremkomme informasjon om pumpens tilstand, nivå i tankene, pådrag og alarmtilstander lesing/logging av alarmer kvittering av alarmer mot PLS sanntidstrender i prosessen over den siste tiden historiske trender et vindu der operatøren må logge seg inn med eget passord Ut over dette gir oppgaveteksten mer eller mindre frie tøyler når det gjelder utforming av grensesnittet. Erfaringer fra miniprosjektet tyder på at det ikke går an å sende desimaltall mellom PC og PLS, her må det gjøres noe smart. En annen erfaring fra miniprosjektet var at InTouch rett og slett er så stort og avansert at muligheten for å rote seg bort i alle mulighetene er absolutt tilstede. Det var i tillegg spesifisert ett sett med rettigheter som skulle implementeres i programmet, se figur. Figur 61 Krav til InTouch brukergrensesnitt 50

58 2.9.2 Resultat Det skulle altså være mulig å kontrollere anlegget med en Windows-pc, og brukergrensesnittet som vises på skjermen ble laget i et program som heter Wonderware InTouch. Med over 25 år i bransjen er dette et solid produkt som av mange regnes for å være «Rolls Royce» av denne typen designverktøy. Kommunikasjon mellom PLS og PC skjer via en teknologi som heter OPC (Object Linking and Embedding for Process Control). Dette er en åpen standard, som er svært fleksibel og utbredt i industrien, på tvers av produsenter og produkter. Se figur 58 for en illustrasjon av generell OPC struktur, og figur 59 for en litt mer detaljert fremstilling av dataflyt i vårt anlegg. Figur 62 (opcdatahub.com) Figur 63 Tenkt informasjonsflyt for OPS server Beijer OPC server kommuniserer altså med InTouch via OPC Link, som alle tre er programmer som er installert på samme pc. Kommunikasjon med master PLS skjer over Ethernet via en innebygd klient i selve OPC server. Flere detaljer rundt dette kan leses i miniprosjektrapporten. 51

59 Det første som ble gjort var å lage et excel-ark med et system på dataord og minneceller, så alle kunne jobbe samtidlig med minst mulig misforståelser. Se vedlegg 8. For enkelhets skyld heter dataord og minneceller det samme i OPC server, som i PLS. Figur 64 Tags i OPC server Grensesnittet mellom menneske og maskin ble laget etter «det enkle er ofte det beste»-prinsippet, med kun ett skjermbilde som viser og betjener alle nødvendige parametere uten forstyrrende og unødvendige ekstrafunksjoner. For enkelte verdier finnes det ekstravindu som kan vise flere detaljer. For å gjøre det enda mer lettfattet vil knapper til funksjoner som ikke er i bruk forsvinne, som f.eks. inntasting av referanse når du har satt regulatoren i manuell modus. Figur 65 InTouch brukergrensesnitt 52

60 De tre brukerprofilene Operatør1, Operatør2 og Operatør3 har henholdsvis en «access level» (brukernivå) på 1000, 2000 og Disse verdiene brukes til å bestemme hvilke funksjoner som er synlige og tilgjengelige. Hvis du prøver å betjene en verdi du ikke har rettigheter til vil en feilmelding dukke opp på skjermen. Problemet med skriving av desimaltall løses ved at verdien som operatøren skriver inn blir ganget med 10 før den sendes til pls, der den deles på 10 igjen for å få tilbake det opprinnelige tallet. I intouch ser dette slik ut: Figur 66 Begrensing av Kp På samme måte regnes verdier som fra A/D kommer som om til prosent slik: Figur 67 Begrensing av referanse 53

61 En av de få funksjonene som er tatt med på eget initiativ er varsling når en enhet på profibussen ikke er tilgjengelig. Status på profibusslaver leses fra et eget bufferminne i profibusmodulen på master PLS. Figur 68 Hvordan status for profibusslaver leses fra eget bufferminne i master PLS-en Vi har bare to enheter tilkoblet på denne bussen, og følgelig er det mer enn nok å legge hver bit fra bare det første dataordet i hver sin minnecelle. Figur 69 Feilmelding på profibus test 54

62 2.9.3 InTouch - Quick start guide KS Ved oppstart av programmet blir du møtt av et innloggingsvindu, trykk «Logg inn» Figur 70 Innloggingsvindu Skriv inn brukernavn og passord, og trykk «Fortsett» Figur 71 Viser hvilken operatør du er logget inn som, og ber det om å bekrefte ved å trykke fortsett For å bytte bruker benyttes «Innlogget som:» knappen helt til venstre i menylinja. Avloggingsknappen er plassert rett til høyre. Figur 72 Viser hvordan du logger ut når du er innlogget som en operatør 55

63 Til venstre vises en representasjon av anlegget med alle aktive komponenter. Utløpsventiler og pumpe aktiveres når de betjenes med venstre museknapp, og blir da grønn. Innløpsventil «fylles» med grønnfarge nedenfra og opp for å illustrere grad av åpning. Tanknivå vises som en søyle der blåfarge representerer nivå. Med aktivert regulator viser en lilla strek hvor referansen er satt. Hvis kommunikasjon (over profibus mellom master og slave-pls) forsvinner vil det utstyret som nå er utilgjengelig begynne å blinke. Dette vil forsvinne av seg selv når feilen er utbedret. Ved å trykke nettverk» i menyen øverst får du mer informasjon om hvor problemet ligger. Figur 73 Visuell visning av hele prosessen i InTouch 56

64 I midten finnes felt for innmating og avlesing av verdier. Noen av disse forsvinner når de ikke er i bruk, og i tillegg gjelder visse restriksjoner på hvem som kan se og betjene de forskjellige knappene. Knapper er synlig med følgende innstillinger og rettigheter: Figur 74 viser hvilke knapper som er synlig for den enkelte operatør Og knapper kan betjenes med følgende rettigheter: Figur 75 viser hvilke verdier den enkelte operatør har tillatelse til å endre 57

65 Til høyre finnes to sanntidskurver. Den øverste viser referanse, pådrag og nivå angitt i prosent, og den nederste viser væskestrøm ut av tanken angitt i antall liter per minutt. Figur 76 Viser santidskurvene vi får ut i InTouch For å se loggede kurver trykker du «historiske grafer» i menyen. 58 Figur 77 Mulighet for historisk graf

66 Nederst på skjermen vises alle alarmer som enten er aktiv og ukvittert (rød), aktiv og kvittert (sort), eller gammel og ukvittert (blå). Figur 78 liste med de siste alarmene og deres tilstand Så lenge en alarm er aktiv vises det også helt til høyre i menyen, med merknaden Figur 79 alarmlampe ved feil Og når alle tilstander har gått tilbake innenfor sine grenser vises følgende merknad Figur 80 alarmlampe ved ingen feil For å se en komplett liste over gamle alarmer, og hvem som var på vakt da alarmen gikk, trykk «Alarmlogg» i menyen for å få dette vinduet: Figur 81 Fullstendig alarm liste 59

67 2.10 Regulatoralgoritmer SV Forkortelser u: Pådraget ut ifra regulatoren u 0 : Nominelt pådrag* u k : Gjeldende pådrag u k 1 : Forrige pådrag k p : Proporsjonalforsterkingen e: Avviket mellom referansen r, og prosessverdien y h: Samplingstiden: Tiden mellom hver gang regulatoren leser og sender verdier T i : Integraltiden T d : Derivasjonstid V: Forstyrrelse** N: Filtertid * Det nominelle pådraget er som oftest satt til 50% av maks pådrag for de fleste regulatorer. Dette pådraget er der for å holde prosessverdien i det normale arbeidsområdet. Ved bruka av proporsjonal foroverkobling brukes ikke nominelt pådrag. ** I vårt tilfelle har vi en forstyrrelse i form av tankens utløpsventiler Diskretisering Når vi skal regulere en prosess med en digital regulator, i vårt tilfelle et system av PLSer, dukker det ganske raskt opp problemer. Vi må få en datamaskin som ikke jobber kontinuerlig og analogt, til å regne på et kontinuerlig analogt signal. For så å sende et analogt signal tilbake. For å realisere dette systemet diskretiser vi den analoge delen, og lar regulatoren jobbe med «punkter» av informasjon fra prosessen. Når vi jobber med dynamiske systemer slik som tankriggen vår, overfører vi som oftest differensialligningene fra tidsplanet over til Laplace-planet(S-planet). Det vil si at vi ser på prosessen med henhold på frekvens heller en tid. Ved diskretisering tar vi dette et skritt videre og overfører til Z-planet. Sammenhengen mellom S og Z er e hs = Z 1. Da ser vi at en tidsforsinkelse i S-planet, på et samplingssteg(h), blir det samme som et «forrige punkt» i Z-planet. Videre skal vi se på hvordan regulatoralgoritmene blir seende ut. Dette blir da de matematiske funksjonene vi må programmere inn i PLSene vi jobber med, slik at de selv regulerer nivået i tanken basert på hvilke verdier de får. 60

68 Enkel Proporsjonal regulator En enkel proporsjonal regulator tar bare hensyn til avviket mellom prosessverdi y og ønsket prosessverdi(referanse) r. Den multipliserer avviket med en Kp verdi som operatøren selv må bestemme. Vi vil aldri kunne få en stasjonær prosessverdi lik referansen bare med en proporsjonal regulator. Tidsplan: u = k p e + u 0 Z-plan: u k = k p e k + u PI-regulator En Proporsjonal Integral regulator bruker, i tillegg til proporsjonal forsterkning, arealet mellom referansen og prosessverdien til å regne ut pådraget. Vi får dermed ikke noe stasjonært avvik. Tidsplan: u = k p (e + 1 T i e dt) S-plan: u (s) = k p (e (s) + 1 T i 1 S ) Her må vi bruke bakover-differanse når vi diskretiserer, det vil si at vi bruker differansen mellom forrige og nåværende prosessverdi til utregning av nytt pådrag. Z-plan: u k = k p (e k + 1 T i s 1 z 1 h 1 1 z 1 h e k ) (1 z 1 ) u k (1 z 1 ) = k p (e k (1 z 1 ) + h T i e k ) (u k z 1 = u k 1 ) u k = u k 1 + k p ((1 + h T i ) e k e k 1 ) 61

69 Wind-up kontroll For å sørge for at integratoren ikke går mot uendelig hvis avviket blir for stort må vi ha noe som kalles wind-up kontroll. Den fungerer slik at hvis integratoren overstiger en verdi som vi har satt, skal regulatoren gå over til kun å være P-regulator. Da kan vi få problemer med store sprang i pådraget. Dette er ikke ønskelig, og vi må programmere slik at vi får «rykkfrie overganger». Ved overgang fra PI til P-regulator setter vi u 0 = u k 1 Vi setter altså det nominelle pådraget til å være forrige pådrag da regulatoren var PIregulator For overgangen fra P til PI-regulator setter vi u k 1 = u kp Det forrige pådraget settes lik pådraget regulatoren hadde som P-regulator. Gjennom disse små tiltakene i regulatorprogrammet sørger vi for at pådraget, og følgelig prosessverdien holder seg jevnt, selv når vi veksler mellom forskjellige regulatortyper Auto og manuell Det skal være mulig å sette regulatoren i manuell. Da skal operatøren selv bestemme pådraget til systemet. I motsetning til auto hvor regulatoren regner ut et pådrag basert på algoritmene vi har gitt den. Vi må da igjen sørge for at vi ikke får for store hopp i pådraget i det vi veksler mellom de to. Ved overgang fra P regulator og over til manuell setter vi enkelt og greit det nye pådraget lik pådraget vi hadde sist som P-regulator. Når vi skal gå den andre veien setter vi det nominelle pådraget lik pådraget som ble brukt i manuell drift. Mellom PI og manuell gjelder: PI til MAN: MAN til PI: u m = u k 1 u k 1 = u m I begge tilfeller setter vi også referansen like prosessverdien for å sikre 0 avvik etter bytte. 62

70 Foroverkopling Hensikten med en foroverkobling er å motvirke en forstyrrelse. Ideelt skal pådraget fra foroverkoblingen utligne forstyrrelsen, og hindre at prosessverdien endres ved sprang i nevnt forstyrrelse. Vi skal i prosjektet ha mulighet til å bruke proporsjon, derivasjon eller begge til foroverkobling. Dette vil føre til en svært rask innsvingning ved sprang i utløpsventilene. P-foroverkobling: D-foroverkobling: PD-foroverkobling: u pff = k pff V u dff = T d N u pdff = T f u dk 1 + T f K pff (V k V k 1 ) h + T f Ved ren D-foroverkobling settes Kp=1 i ligningen over. D delen i foroverkoblingen bør holdes utenfor wind-up kontrollen. 63

71 Regulator og heltall I PLS-programmet er det krevende å jobbe med desimaler. Desimalene og heltallet ender i forskjellige dataregistre, og vanskeligjør jobben med å lage en godt fungerende regulator. For å forenkle jobben multipliserer vi alle verdiene vi skal regne på med en faktor, slik at vi bare regner med heltall. For eksempel vil verdien til Kp gjerne gå fra 0.1 til 100 sett fra operatørens side, men i regulatoren ganger vi verdien med 10, slik at Kp sett fra regulatoren går fra 1 til Vi må da følgelig dele svaret vi får med 10 igjen, før vi sender pådraget ut til prosessen. For å klare denne jobben må vi bruke doble dataregistre. Hvis ikke vil vi raskt kunne overgå de 16 bit et dataregister har til rådighet. 64

72 2.11 Fjernstyring av panelet AH Aktivering av fjernstyring I oppgaveteksten er det et krav at operatørpanelet skal settes opp som web-server med fjernstyring av tankriggen via internett. For å få til dette må vi benytte oss av en innebygd VNC-funksjon i ix panelet. VNC står for Virutal Network Computing. Denne funksjonen gjør det mulig å dele «skrivebordet» på panelet med en annen pc. VNC en bruker en Remote Frame Buffer protocol (RFB), som overfører hva som skjer med tastaturet og musa fra pc-en til operatørpanelet. Da vil det være mulig å fjernstyre panelet via en ekstern pc tilkoblet gjennom internett. For å aktivere VNC-funksjonen må man huke av «Enable Remote Access Server» i ix Developer. Figur 82 Aktivering av Remote Access Server Samtidig som man velger å aktivere «Remote Access Server» må det velges to forskjellige porter som har anledning til å koble seg til VNC en. Videre er det viktig at disse portene blir gjort tilgjengelig utenfor det lokalet nettverket. Det må benyttes «Port Forwarding» i routeren. Denne delen er forklart under punkt «Oppsett av Router DI-624» senere i rapporten. 65

73 Vi har lagt inn passord for fjernstyring, slik at ikke hvem som helst kan styre prosessen. Det er bare mulighet for å ha en pc tilkoblet panelet omgangen. Vi har linket webvieweren til prosjektets hjemmeside. Da er det mulighet for fjernstyring gjennom nettsiden. Ved hjelp av pc-musen og/eller tastaturet er det mulig å endre på de forskjellige parameterne. Slik ser panelet ut på nettsiden. Figur 83 Slik ser ix-panelet ut på nettsiden HTML-kode for å linke ix Panelet til nettsiden: <section> <h1>web server</h1><br> <iframe src=" height="680" width="850"></iframe> </section> Iframe kommandoen gjør at det dukker opp en rute som er linket direkte til ix Panelet. Vi oppdaget et problem når vi skulle få ix-panelet til å dukke opp i nettleseren. Fordi vi har en eldre versjon av ix Developer ville ikke brukergrensesnittet vises med den nyeste versjonen av Java. Løsningen var å bruke en eldre versjon av Java. Med Java 7 fungerte det, panelet ble vist i nettleser. 66

74 Oppsett av Router D-Link DI-624 Ethernett kommunikasjon skjer gjennom en trådløs router som sitter i styreskapet. Routeren må konfigureres slik at fjernstyringen skal fungere. Aller først er det viktig å gi noen av komponentene en statsisk IP-adresse. Dette gjøres fordi andre enheter tilkoblet samme nettverk ikke kan bli tildelt denne IP-adressen. ix-panelet, Master-PLS en og pc-ene vi har tilkoblet blir gitt en statisk IP-adresse. Figur 84 Komponenter med statisk IP-adresse 67

75 Routeren er tilkoblet skolens nettverk, den blir da tildelt en IP-adresse som er routerens IP-adresse ut til internett. Det er denne IP-adressen man vil kalle på hvis man ønsker å koble seg til routeren eller utstyr som er tilkoblet via internett. Denne IP-adressen er av typen WAN-IP. WAN står for «Wide Area Network». Alt utstyr som er koblet til routeren er av typen LAN (Local Area Network). Figur 85 Router WAN-IP 68

76 Port-forwarding For å kunne koble seg til lokalt utstyr via internett, må man først koblet seg til nettverket med IPadressen , routerens IP-adresse ut til internett. Videre må man konfigurere porter slik at man blir videresendt til riktig lokal IP-adresse, altså de forskjellige enhetene tilkoblet routeren. På bildet nedenfor kan man se hvilke porter vi har valgt for videresending. Figur 86 Port-forwarding 69

77 Hvis man skriver :5800 i en nettleser, blir man videresendt til :5800 på det lokalet nettverket. Da vil ix-panelet dukket opp, fordi det er port 5800 som er linket til panelet. Det er lagt inn port-forwarding for både ix-panelet (Port: 5800) og webserveren (Port: 800). Nedenfor kan man se hvordan tilkobling fungerer mellom internett og ix-panelet. Figur 87 Tilkobling fra internett til ix-panel 70

78 2.12 Webserver SV For å kunne fjernstyre tankriggen via internett har vi flere muligheter. En av disse er å sette opp noe som Beijer Electronics kaller for en web-server. Dette fungerer slik at vi lager en html-kodet nettside som henter og sender verdier til og fra panelet, og lagrer denne på ixpanelet. Panelet fungerer da som en server og med de rette kodene kan vi da se og kommunisere med denne nettsiden fra en hvilken som helst datamaskin som er koblet til internett Port-forwarding ix-panelet er koblet opp mot en ruter på et LAN nettverk. For å nå tak i panelet fra «utsiden» av dette lokale nettverket må vi gå inn på ruteren og fortelle hva vi skal kommunisere med når vi skriver en IP-adresse. I web-server oppsettet satte vi port 80 til nettsiden. Vi gikk så inn i ruteren og gjorde port 80 på ix-panelet «synlig» for skolens nettverk. Ved å nå taste inn riktig IP-adresse var det nå mulig å se websiden som var plassert på ix-panelet. Se mer om dette i avsnitt Javascript I figur 84 kan du se et utdrag av koden som ble brukt til å vise, og skriver verdier til og fra ixpanelet. Figur 88 Javascript Her var det viktig å bruke samme variabelnavn som brukes i ix-panelet for at kommunikasjonen skulle fungere. 71

79 På internettsiden vår har vi laget en ramme som viser nettsiden til ix-panelet. I figur 84 kan du ser hvordan dette ble seende ut. Figur 89 Web-server Web serveren er satt opp som en tabell. I første kolonne har vi satt navnet til den parameteren det gjelder. I neste kolonne får vi vite status til den aktuelle parameteren, dette blir oppdatert hvert 2.sekund. Det er ikke nødvendigvis opplagt, men i statuser som bare viser 0 og 1, betyr verdien 0 at parameteren er deaktivert, og 1 at den er aktivert. For å kunne skrive til en parameter, hvor det er mulig, må man taste inn ønsket verdi i tilsvarende rad i 3 kolonne, for så å trykke på «send» knappen i 4. og siste kolonne. Hvis man sender verdien 1 til parameteren «Manuelt pådrag» går regulatorprogrammet over i manuell drift. Det vil da ikke skje noe om man sender verdier til referanse. Det samme gjelder i motstående tilfelle. Hvis regulatoren ikke står i manuell (viser verdien 0), vil ikke Pådrag kunne endres av operatør. For å kvittere ut alarmtilstand må man trykke inn verdien 1, og trykke på «kvitter(1)». Man får ikke tilgang til web-serveren før man logger inn med det brukernavnet og passordet som ble oppgitt i oppgaveteksten. 72

80 3 Prosjektstyring 3.1 Tidsbruk TMS Vi har brukt noe mindre tid enn planlagt på dette stadiet i prosjektet, grunnen til dette må være at det er vanskelig å planlegge hvor mye tid som trengs til enkeltdelene av prosjektet. Samt at vi har vært effektive og arbeidet bare for å få flere timer. Spesielt lagingen av filteret har gått mye raskere enn antatt. Ukenummer Utført arbeid Planlagte timer (Tirsdag) 1607 Tabell 3 Arbeidsdagbok Figur 42 viser grafisk hvordan vi ligger an i mengde arbeid Arbeidsmengde Planlagt tidsbruk Tid brukt Figur 90 Grafisk framvisning av timer brukt i forhold til timer planlagt 73

81 3.2 Prosjektstyring og kvalitetssikring SV Prosjektet skal til enhver tid ha en leder. Lederen byttes hver uke, og ved prosjektets slutt skal hver enkelt gruppedeltaker ha fått prøvd seg i jobben. Lederen er ansvarlig for møteinnkalling, saksliste og gjennomføring av det ukentlige møtet. Han vil også være ansvarlig for prosjektets framgang, og tidsfrister Statusrapportering Møteleder skal vær uke fremlegge en statusrapport, som skal gjennomgås på prosjektmøtet. Møteinnkallelser, møtereferat og annen relevant dokumentasjon lastes opp til felles dropbox-mappe Standardiserte skjemaer Gruppen skal bruke standardiserte skjemaer for møteinnkalling, møtereferat, og arbeidspakkeskjema. Disse ligger tilgjengelig på It s Learning under faget «TELE2008-A 15V Styresystemer og reguleringsteknikk» Versjonskontroll Dokumenter og filer som blir produsert i forbindelse med prosjektet blir lagret i en felles Dropbox-mappe. Filene skal ha beskrivende navn, og inneholde versjonsnummer eller dato Tester og sjekklister Programmer og sjekklister skal sammenlignes mot mål og spesifikasjoner nevnt i forprosjektrapporten. Eventuelle avvik skal dokumenteres og rettes. 74

82 4 Konklusjon SV I denne rapporten har vi dokumentert alt arbeidet vi har utført i entank-delen av prosjektet i faget «styresystemer og reguleringsteknikk» våren Rapporten beskriver hvordan vi har gått fram for å løse oppgaven i henhold til de kravene som var satt i oppgaveteksten, samt enkle bruksanvisninger for bruk av brukergrensesnittene vi har utarbeidet. Oppgaven besto av å programmere tre PLS-er slik at de regulerer nivået i en væsketank. For å kunne overvåke og styre prosessen måtte vi utarbeide brukergrensesnitt på stasjonær pc og ix-operatørpanel. Samt mulighet for fjernstyring av ix-panelet via internett. Parallelt med entank-oppgaven har vi utarbeidet en matematisk modell av tanken og regulatoren. Ved hjelp av den har vi simulert prosessen og kommet fram til regulatorinnstillinger til videre bruk på den reelle regulatoren. Det viste seg at dette ble svært nyttig da innstillingene stemte bra. Notatet fra simuleringene ligger i sin helhet under vedlegg. Vi har også konstruert to 2.ordens filter til nivåmåler og utløpsmåler. Dette fungerte godt og vi fikk et tilfredsstillende resultat med merkbart mindre støy på nivåmålesløyfa, mens på flow-måleren fungerte ikke strømtilførselen til filteret riktig. Dette medførte at vi ikke brukte filter på flow-målingen. Vi fikk uansett en fin måling på utløpet, så det er tvilsomt om vi ville merket noen vesentlig forskjell med filteret montert. Gruppen har hele tiden klart å opprettholde en god driv i arbeidet og hele oppgaven har blitt løst uten større uforutsette problemer. Vi sitter nå igjen med noe vi selv mener er et meget godt resultat. 75

83 5 Litteratur TMS Vi bruke følgende verker under entankprosjektet. Arnfinn Hofstad «PLS-teknikk; Mitsubishi Melsec FX0(S) og FX2N; GX Works2» Per Hveem «Sanntidsdatateknikk; Digitale regulatorer, Forelesningsnotater» Per Hveem, Kåre Bjørvik «Reguleringsteknikk» Kåre Bjørvik «Dynamiske systemer» Prosjektperm lagt ut offentlig på It's Learning. Sebord,Edgar,Mellichamp og Doyle «Process Dynamics and Control» InTouch HMI 9.5 Fundamentals of Aplication Development Course. 76

84 6 Vedlegg 1. Figurliste 2. Arbeidspakkeskjema 3. Master PLS-program 4. Slave 1 PLS-program 5. Slave 2 PLS-program 6. Simuleringsnotat 7. Sjekkliste ved test av entank 8. Feilretting på riggen koblingsskjema 9. Tilordningsliste 77

85 Figurliste Figur 1 Oversiktsbilde kobling mellom PLS-rig og tank-rig... 1 Figur 2 Informasjonsflyt og POU rekkefølge for master... 5 Figur 3 Informasjonsflyt og POU rekkefølge for slave Figur 4 Informasjonsflyt og POU rekkefølge for slave Figur 5 Global variabelliste... 7 Figur 6 Viser hvordan samplingen blir gjort... 8 Figur 7 Alarm tilstander Figur 8 viser timer for alarmlampen Figur 9 viser når det skal være lys på alarmlampen Figur 10 Viser hvordan utgangene i PLS-en styres og hva de styrer Figur 11 Global variabel liste fra GX Works Figur 12 Viser sampling i slave Figur 13 Viser prosessverdi for regulatoren Figur 14 Viser hvordan avviket mellom prosessverdi og referanse gjøres Figur 15 Viser endring i utstrømming Figur 16 P-regulator Figur 17 P-regulator funksjonsblokk Figur 18 Rykkfri overgang i P-regulator Figur 19 P-foroverregulator Figur 20 P-foroverregulator funksjonsblokk Figur 21 Hvordan sette Kp og Ti med mulighet for desimaltall Figur 22 Hopp for å hindre at uønskede deler av programmet kjøres Figur 23 Viser utganger for PI-regulator sin funksjonsblokk Figur 24 Kode for rykkfri overgang fra P til PI og Inn/utganger PI-funksjonsblokk Figur 25 setter grenser for D-delen i regulatoren Figur 26 Funksjonsblokk for D-regulator Figur 27 Oppbygning av regulator Figur 28 Eksempel på anti-windup Figur 29 Grensesjekk Figur 30 Hvordan nåverdi og siste verdi lagres og oppdateres Figur 31 Viser hvordan mulighet for manuelt pådrag er programmert Figur 32 Sending av pådrag til omformeren Figur 33 Alarmtilstander Figur 34 Dataoverføring mellom slave 2 og master Figur 35 Videre formidling mellom slave 2 og slave Figur 36 omgjøring av verdier for sending mellom slave 1 master slave Figur 37 rykkfrieoverganger masterdel Figur 38 sikkerhet ved strømbrudd Figur 39 Sprang i utløpet PI-reg Figur 40 Sprang i utløpet med PI-reg med P-forover Figur 41 Sprang i utløpet med PI-reg med D-forover Figur 42 Sprang i utløpet med PI-reg med PD-forover Figur 43 Test av regulatorinnstillinger på den reelle tanken, visers i InTouch Figur 44 Test av regulatorinnstillinger på simulinkmodellen, Sprang i forstyrrelsen i rød ring Figur 45 Viser støy på nivåmåler og pådraget Figur 46 Diode egenskap

86 Figur 47 - Sprang med diode Figur 48 Viser overføringsfunskjonen og komandoen for å tegne bodediagrammet Figur 49 Viser bodediagrammet til overføringsfunksjonen Figur 50 Koblingsskjema for filter Figur 51 bodediagram for filteret Figur 52 Viser hvordan filteret er testet Figur 53 Testresultat for filteret fra multisim Figur 54 koblingsskjema filter Figur 55 Viser hvordan filteret forbedrer måleresultatet Figur 56 Ferdig filter Figur 57 Tagliste Figur 58 Viser kontroller med IP-adresse og port Figur 59 IX panel Figur 60 Bruksanvisning IX panel Figur 61 Krav til InTouch brukergrensesnitt Figur 62 (opcdatahub.com) Figur 63 Tenkt informasjonsflyt for OPS server Figur 64 Tags i OPC server Figur 65 InTouch brukergrensesnitt Figur 66 Begrensing av Kp Figur 67 Begrensing av referanse Figur 68 Hvordan status for profibusslaver leses fra eget bufferminne i master PLS-en Figur 69 Feilmelding på profibus test Figur 70 Innloggingsvindu Figur 71 Viser hvilken operatør du er logget inn som, og ber det om å bekrefte ved å trykke fortsett Figur 72 Viser hvordan du logger ut når du er innlogget som en operatør Figur 73 Visuell visning av hele prosessen i InTouch Figur 74 viser hvilke knapper som er synlig for den enkelte operatør Figur 75 viser hvilke verdier den enkelte operatør har tillatelse til å endre Figur 76 Viser santidskurvene vi får ut i InTouch Figur 77 Mulighet for historisk graf Figur 78 liste med de siste alarmene og deres tilstand Figur 79 alarmlampe ved feil Figur 80 alarmlampe ved ingen feil Figur 81 Fullstendig alarm liste Figur 82 Aktivering av Remote Access Server Figur 83 Slik ser ix-panelet ut på nettsiden Figur 84 Komponenter med statisk IP-adresse Figur 85 Router WAN-IP Figur 86 Port-forwarding Figur 87 Tilkobling fra internett til ix-panel Figur 88 Javascript Figur 89 Web-server Figur 90 Grafisk framvisning av timer brukt i forhold til timer planlagt

87

88 HØGSKOL I SØR- TRØNDELAG Avdeling for teknologi Studieprogram for elektro- og datateknikk 7004 TRONDHEIM Fag: Styresystemer og reguleringsteknikk Dato: Prosjekt: Entankprosjekt Aktivitet: Filter Aktivitet nr: 06 Startdato: Sluttdato: Avhengighet: Foregående aktiviteter: Miniprosjekt Etterfølgende aktiviteter: Testing og samkjøring Mål: -Bygge antialiasingfilter for målt nivå i tank -Bygge antialisingfilter for målt utløp fra tank Arbeidsbeskrivelse: -Beregne komponentverdier til filtrene -Måle frekvensområde for støy -Montering av filter -Skrive god dokumentasjon for arbeidet som har blitt gjort Timeverk: 50 timer Fordeling: Kristian Strøm: 25 timer Stian B. Dyrnes: 25 timer Kostnader: Skolen dekker komponentkostnader. Ressurser: Gruppens arbeidstimer Risiko: Det kan være problemer med målingene som resulterer i filtrene ikke stemmer, og gruppen må begynne forfra igjen. Faglig ansvarlig: Kristian Strøm, krisstro@student.hist.no tlf: Prosjektmedarbeidere: Stian B. Dyrnes, sbdyrnes@gmail.com tlf:

89 HØGSKOL I SØR- TRØNDELAG Avdeling for teknologi Studieprogram for elektro- og datateknikk 7004 TRONDHEIM Fag: Styresystemer og reguleringsteknikk Dato: Prosjekt: Entankprosjekt Aktivitet: Modellering og simulering Aktivitet nr: 07 Startdato: Sluttdato: Avhengighet: Foregående aktiviteter: Miniprosjekt Etterfølgende aktiviteter: Testing og samkjøring Mål: -Lage en enkel matematisk modell for nivåregulering av tanken -Få en god å nøyaktig regulering på tanken som oppfyller kravspesifikasjonene Arbeidsbeskrivelse: -Regne ut en enkel matematisk modell som gir en nøyaktig beskrivelse av tanken -Gjøre gode simuleringer og analysere resultatet i matlab -Komme frem til regulatorinnstillinger som oppfyller kravspesifikasjonene -Lage god dokumentasjon på arbeidet de har gjort Timeverk: 50 timer Fordeling: Emil W. Hatletveit: 25 timer Terje M. Sørensen: 25 timer Kostnader: Det er ingen kostnader ved dette prosjektet. Ressurser: Gruppens arbeidstimer Risiko: Det kan oppstå uforutsette problemer med modelleringen som resulterer i at tidsplanen ikke overholdes. Faglig ansvarlig: Terje M. Sørensen, terjemagnusbs@gmail.com tlf: Prosjektmedarbeidere: Emil W. Hatletveit, Emilw@student.hist.no tlf:

90 HØGSKOL I SØR- TRØNDELAG Avdeling for teknologi Studieprogram for elektro- og datateknikk 7004 TRONDHEIM Fag: Styresystemer og reguleringsteknikk Dato: Prosjekt: Entankprosjekt Aktivitet: Programmering Aktivitet nr: 08 Startdato: Sluttdato: Avhengighet: Foregående aktiviteter: Miniprosjekt Etterfølgende aktiviteter: Testing, feilsøking og samkjøring Mål: -Komme frem til et velfungerende PLS-program for å styre tankriggen -Oppnå et velfungerende program for regulatorstyring Arbeidsbeskrivelse: -Skrive et PLS-program som regulerer tanken -Skrive et program slik at brukerpanelet kan styre tankriggen og regulatorinnstillinger -Lage god dokumentasjon for programmet Timeverk: 360 timer Fordeling: Kristian Strøm: 60 timer Stian B. Dyrnes: 60 timer Snorre Vongraven: 60 timer Emil W. Hatletveit: 60 timer Andreas Haugen: 60 timer Terje M. Sørensen: 60 timer Kostnader: Det er ingen kostnader ved dette prosjektet. Ressurser: Gruppens arbeidstimer Risiko: Det er et stort program og mye kode som skal skrives, så det kan fort oppstå problemer i koden dersom det er dårlig kommunikasjon mellom deltagerne. Faglig ansvarlig: Andreas Haugen, andrhaug@student.hist.no tlf: Prosjektmedarbeidere: Kristian Strøm, krisstro@student.hist.no tlf: Stian B. Dyrnes, sbdyrnes@gmail.com tlf: Snorre Vongraven, snorrevongraven@gmail.com tlf: Terje M. Sørensen, terjemagnusbs@gmail.com tlf: Emil W. Hatletveit, Emilw@student.hist.no tlf:

91 HØGSKOL I SØR- TRØNDELAG Avdeling for teknologi Studieprogram for elektro- og datateknikk 7004 TRONDHEIM Fag: Styresystemer og reguleringsteknikk Dato: Prosjekt: Entankprosjekt Aktivitet: Testing, feilsøking og samkjøring Aktivitet nr: 09 Startdato: Sluttdato: Avhengighet: Foregående aktiviteter: Filter Modellering og simulering Programmering Etterfølgende aktiviteter: Bonusoppgave Totankprosjekt Mål: -Få samkjørt alle deloppgaver -Fremstille et komplett resultat som tilfredstiller prosjektkravene -Få rettet opp evnetuelle feil Arbeidsbeskrivelse: -Sette sammen filter på måleelementet -Få PLS-programmet til å regulere med de regulatorinnstillingene vi har funnet -Koble opp slik at brukerpanelet kan styre tankriggen Timeverk: 300 timer Fordeling: Kristian Strøm: 50 timer Stian B. Dyrnes: 50 timer Snorre Vongraven: 50 timer Emil W. Hatletveit: 50 timer Andreas Haugen: 50 timer Terje M. Sørensen: 50 timer Kostnader: Det er ingen kostnader ved dette prosjektet. Ressurser: Gruppens arbeidstimer Risiko: Det er mange småting som kan ha gått galt under prosjektet, og som ikke har kommet frem før alt skal samkjøres. Faglig ansvarlig: Stian B. Dyrnes, sbdyrnes@gmail.com tlf: Prosjektmedarbeidere: Kristian Strøm, krisstro@student.hist.no tlf: Andreas Haugen, andrhaug@student.hist.no tlf: Snorre Vongraven, snorrevongraven@gmail.com tlf: Terje M. Sørensen, terjemagnusbs@gmail.com tlf: Emil W. Hatletveit, Emilw@student.hist.no tlf:

92

93 IL Data Name : Init (* Exchange PLC data with Profibus DP *) (* Module Type PB92D - Mode E *) LD X1B (* write communication READY signal *) AND X1D (* write Module READY *) BMOV_M D100, K16, DP_ARRAY[0] (* DP slave with FDL 1 *) BMOV_M D200, K16, DP_ARRAY[16] (* DP slave with FDL 2 *) TO_M DP_ARRAY[0], K0, K960, K32 (* Write output data to master *) OUT_M Y00(* Exchange start request signal *) AND X00 (* Data exchange done *) FROM_M K0, K0, K32, DP_ARRAY[0] (* Read input data from master *) BMOV_M DP_ARRAY[0], K16, D120 (* DP slave with FDL 1 *) BMOV_M DP_ARRAY[16], K16, D220 (* DP slave with FDL 2 *) 1

94 Structured Ladder/FBD Data Name : MAIN_PRG_LD 1 FROM 0 n1 d K1M K1 n2 n3 Feilmeldinger på profibus D121 s MOV d D209 Videreformidling av flow fra slave1 til M60 M61 M62 M5 M6 M7 Videreformidling av kritisk høy alarm fra slave 2 til Videreformidling av kritisk lav alarm fra slave 2 til Videreformidling av avviksalarm fra slave 2 til slave 2 K4M0 s MOV d D100 Videreformidling av boolske verdier fra master til slave 1 D120 s MOV d K4M20 Videreformidling av boolske verdier fra slave 1 til master K4M40 s MOV d D200 Videreformidling av boolske verdier fra master til slave 2 D220 s MOV d K4M60 Videreformidling av boolske verdier fra slave 2 til master Legger samme samplingstid i slave 1 og slave 2 Samplingsti d slave 2 D203 s MOV d D101 Samplingsti d slave 1 2

95 Structured Ladder/FBD Data Name : Rykkfri 1 M40 M43 M41 Oppdaterer verdier som kan endres i slave 2 Alltid aktiv D225 Henter data fra bufferminne Legger pådrag fra PI til det nominelle pådraget når PI er valgt. Denne må endres tilbake s MOV d D205 Legger data over til det satte nominelle M43 D224 s MOV d D204 Videreformidling av referanse fra slave 2 ved valg av manuelt pådrag i regulator M43 D226 s MOV d D206 Videreformidling av manuelt pådrag fra slave 2 når automatisk regulering er valgt 3

96 Structured Ladder/FBD Data Name : Strømbrudd 1 Programmet kjør er Flytter data til de batterimatede dataordene så lenge programmet kjører, men ikke i første scan. Dette lagrer verdiene i tilfelle det skulle Denne er lav i førse scan, men Flytter 16 dataord fra og med D100, over til 16 R-serien er batterimatede dataord, som husker verdien ved Flytter 16 dataord fra og med D200, over til 16 Flytter 16 minneceller fra og med M0, over til 16 minneceller fra L-serien er batterimatede minneceller, som husker verdien ved strømbrudd Flytter 16 minneceller fra og med M40, over til 16 minneceller fra SM402 BMOV BMOV MOV D s n d R100 D s n d R200 K4M0 s d K4L0 K4M40 s MOV d Flytter 16 minneceller fra og med M40, over til 16 minneceller fra MOV d K4L40 2 Oppstart Henter data fra de batterimatede dataordene i første scan, men ikke ellers. Dette henter de forrige verdiene programmet hadde før eventuelt Denne er høy i førse scan, men Flytter 16 dataord fra og med R100, over til 16 Flytter 16 dataord fra og med R200, over til 16 Flytter 16 minneceller fra og med L0, over til 16 minneceller fra Flytter 16 minneceller fra og med L40, over til 16 minneceller fra SM402 BMOV BMOV MOV R s n d D100 R s n d D200 K4L0 s d K4M0K4L40 s MOV d Flytter 16 minneceller fra og med L40, over til 16 minneceller fra MOV d K4M40 4

97

98 Structured Ladder/FBD Data Name : Alarm 1 Setter slik at alarmtilstander huskes helt til de kvitteres ut. Disse skal ikke huskes dersom de er feilaktig kvittert ut HøyAlarm Feilkvittering husk_høy_alarm S LavAlarm Feilkvittering husk_lav_alarm S AvviksAlarm Feilkvittering husk_avviksalarm S 2 Setter variabel for feilkvittering dersom alarmen kvitteres men det fremdeles er HøyAlarm LavAlarm AvviksAlarm OR Alarmkvittering Feilkvittering HøyAlarm LavAlarm AvviksAlarm OR Feilkvittering Denne variabelen holdes høy så lenge det er 3 4 Alarmkvittering Resetter tidligere alarmtilstander dersom de kvitteres ut husk_høy_alarm R husk_lav_alarm R husk_avviksalarm R Er høy 0.2 sekunder og lav i 0.2 sekunder dersom det har vært alarm for høyt eller lavt nivå som ikke er kvittert ut OR TS1 OUT_T husk_høy_alarm husk_lav_alarm TC0 2 TCoil TValue TC1 4 OUT_T TCoil TValue 5 Er høy i 0.5 sekunder og lav i 0.5 sekunder dersom det har gått alarm for høyt avvik som ikke er kvittert ut, eller om det ikke ligger inn en alarm for høyt eller lav nivå samtidig husk_avviksalarm husk_høy_alarm husk_lav_alarm TS3 OUT_T TC2 5 TCoil TValue TC3 10 OUT_T TCoil TValue 6 Alarmlampa skal lyse konstant dersom alarmtilstanden er feilkvittert Feilkvittering Alarmlampe Alarmlampa skal lyse i 0.2 sekunder av og på dersom det har gått alarm for høyt eller lavt nivå TS0 Alarmlampa skal lyse i 0.5 sekunder av og på dersom det har gått alarm for høyt avvik TS2 1

99 Structured Ladder/FBD Data Name : Kommunikasjon_master 1 Sett slave 1 adre sse Setter adressen til slave 1. Dette må gjøres når programmet startes opp. M8002 er 1 i første scan. M8002 Data som skal skrives Modulnr (1 = Profibus) Bufferminne på Profibus Antall 16-bit ord s n1 n2 n3 TO 2 Hent data fra ma ster Modulnr (1 = Profibus) Bufferminne på Antall 16-bit ord profibus --> dataregister FROM n1 n2 n3 d Minneceller_fra_master Minneceller_fra_master dataregister --> minneceller s MOV d Modulnr (1 = Profibus) Bufferminne på Antall 16-bit ord FROM n1 n2 n3 d Samplingstid dataregister --> minneceller MOV d K4M0 2

100 Structured Ladder/FBD Data Name : Kommunikasjon_master 3 Skriv data tilmast er minneceller --> dataregister dataregister --> profibus K4M20 s MOV d Minneceller_til_master Data som skal skrives Modulnr (1 = Profibus) Bufferminne på Profibus Antall 16-bit ord Minneceller_til_master s n1 n2 n3 TO Data som skal skrives Modulnr (1 = Profibus) Bufferminne på Profibus Antall 16-bit ord Flowmåling s n1 n2 n3 TO 3

101 Structured Ladder/FBD Data Name : Omformer 1 Analog til digital Leser analoge innganger 4-20mA og legger data i D2. I dette tilfellet er utganger og innganger koblet Setter hvilken analog kanal som skal leses Kommando for start av AD omforming Sample Analog kanal som skal leses 1 Modulnr. AD/DA omformer 0 Bufferminne på omformer 17 Antall 16 bit 1 s n1 n2 n3 TO Start AD omforming Modulnr. AD/DA Bufferminne på omformer Antall 16 bit s n1 n2 n3 TO >>00 Modulnr. AD/DA Bufferminne på omformer Antall 16 bit Sender omformet signal til oppgitt dataregister >>00 Modulnr. AD/DA Bufferminne på omformer FROM 0 n1 d Flowmåling Dataregister 0 n2 1 n3 4

102 Structured Ladder/FBD Data Name : Samplingssteg 1 2 Timer MOV M s d Samplingstid TS5 Gir en positiv puls ved hver samplingstid TC5 Samplingstid OUT_T TCoil TValue 3 Aktiver sampling Den globale variabelen for å sample går høy ved hver TS5 Sample 5

103 Structured Ladder/FBD Data Name : Styr_utganger 1 Sett uganger Alarmlampe Denne utgangen er koblet til Y5 Denne utgangen er koblet til pumpa. Skal kobles ut når det er for Pumpe HøyAlarm Y13 Magnetventil1 Magnetventil2 Magnetventil3 Y10 Y11 Y12 Disse utgangene er koblet til de 3 magnetventilene som styrer utløp Y5 Tilb_alarmlampe Y13 Y10 Y11 Tilb_pumpe Tilb_magnetventil1 Tilb_magnetventil2 Dette er en tilbakekobling fra alle utgangene som benyttes for å se om de har gått aktive Y12 Tilb_magnetventil3 6

104

105 Structured Ladder/FBD Data Name : Adressering_Slaver 1 Sett slave 2 adre sse Setter adressen til slave 2. Dette må gjøres når programmet startes opp. M8002 er 1 i første scan. M8002 Adressen til slaven Modulnr. Bufferminne Antall 16 bit s n1 n2 n3 TO 1

106 Structured Ladder/FBD Data Name : AnalogTilDigital 1 Nivå i tank Leser analoge innganger 4-20mA hver gang variabelen sample går høy, og legger data i prosessverdi. Detter er den samplingstiden vi har satt for vår regulator. Gir en puls og aktiverer omformingen hver samplingspunkt Sample 0 Kommando for kanal 0 0 Modulnr. AD/DA 17 Bufferminne på omformer 1 Antall 16 bit Kommando for å velge kanal 0 s n1 n2 n3 TO Kommando for start AD Modulnr. AD/DA Bufferminne på omformer Antall 16 bit Kommando for start av AD omforming s n1 n2 n3 TO Modulnr. AD/DA Bufferminne på omformer Antall 16 bit Sender omformet signal til oppgitt dataregister FROM n1 n2 n3 Sender omformet signal til oppgitt dataregister n1 n2 n3 FROM d Prosessverdi[1] Dataregister 2

107 Structured Ladder/FBD Data Name : Avvik 1 Regner ut det aktuelle avviket mellom refeanse og prosessverdi dersom reversert modus er valgt. Dette brukes videre til reguleringen uavhengig av regulatortype. Revers Referanse Prosessverdi[1] SUB_E _IN1 _IN2 e[1] Aktuelt avvik 2 Regner ut det aktuelle avviket mellom refeanse og prosessverdi dersom direkte modus er valgt. Dette brukes videre til reguleringen uavhengig av regulatortype. Revers Prosessverdi[1] Referanse SUB_E _IN1 _IN2 e[1] Aktuelt avvik 3

108 Structured Ladder/FBD Data Name : D-regulator 1 Aktiv når foroverkoblingen kun kjører som P_FF Dersom P-del er koblet ut skap KpFF settes til 1. Ettersom vi har multiplisert med 10 for å få med flere desimaler må KpFF her settes til 10 dersom foroverkoblingen kun skal MOV 10 s d KpFF 2 KpFF TdFF filtertid Samplingstid Forstyrrelse[1] Forstyrrelse[0] udff[0] D_reg1 D-reg Forsterkning Derivasjonstid filterkonstant Sampling Aktuell_forstyrrelse Forrige_forstyrrelse forrige_pådrag Pådrag udff[1] Egenlagd regulatorblokk. Gjør utregninger for pådrag i en D-regulator med de parametrene som er satt. 4

109 Structured Ladder/FBD Data Name : DataFraMaster 1 Minneceller Henter verdien på 15 minneceller fra bufferminne 0 på FROM M n1 d K4M n2 n3 2 RegulatorNivå Henter data til nivåregulering fra de forskjellige bufferminnene på profibus som sendes fra master. Dette skjer så lenge programmet M8000 FROM FROM FROM FROM >>00 1 n1 d Kp 1 n1 d Ti 1 n1 d Samplingstid 1 n1 d Referanse 1 n2 2 n2 3 n2 4 n2 1 n3 1 n3 1 n3 1 n3 >>00 FROM FROM Referanse 1 n1 d Nominell 1 n1 d Um 5 n2 6 n2 1 n3 1 n3 3 Foroverkobling Henter data til regulering av forstyrrelsen fra master M n1 n2 n3 FROM d KpFF n1 n2 n3 FROM d TdFF n1 n2 n3 FROM d Flow[1] n1 n2 n3 FROM d FROM d filtertid 5

110 Structured Ladder/FBD Data Name : DataTilMaster 1 Nivå Alle data fra nivåreguleringen som master skal hente. Disse sendes så lenge Alltid aktiv TO TO M8000 >>00 Prosessverdi[1] s u[1] s e[1] Prosessverdi skal Aktuelt pådrag skal Aktuelt avvik skal 1 n1 1 n1 1 Modulnr. Profibus Modulnr. Profibus Modulnr. Profibus 1 n2 2 n2 3 Bufferminne Bufferminne Bufferminne 1 n3 1 n3 1 Antall 16-bits dataord Antall 16-bits dataord Antall 16-bits dataord >>00 e[1] s n1 n2 n3 TO 2 Alarm 3 PådragPI Alltid aktiv Minneceller skal Modulnr. Profibus Bufferminne Antall 16-bits dataord Parametere som kan endres i programmet, og som skal oppdateres i master sendes her Minneceller som forteller om alarmtilstander skal sendes. Disse sendes så lenge M8000 K4M s n1 n2 n3 TO Alltid aktiv TO TO M8000 >>00 Referanse s Nominell s Referanse skal sendes Nominelt pådrag skal Manuelt pådrag skal 1 n1 1 n1 Modulnr. Profibus Modulnr. Profibus Modulnr. Profibus 4 n2 5 n2 Bufferminne Bufferminne Bufferminne 1 n3 1 n3 Antall 16-bits dataord Antall 16-bits dataord Antall 16-bits dataord >>00 Manuelt pådrag skal Modulnr. Profibus Bufferminne Antall 16-bits dataord Um s n1 n2 n3 TO 6

111 Structured Ladder/FBD Data Name : DigitalTilAnalog 1 Pådrag nivå Omformer digital data til analog utgang Setter signal som skal omformes.her er Kommando for valg av kanal 0 Alltid aktiv M8000 Digitalsignal til omforming u[1] Modulnr. AD/DA 0 Bufferminne på omformer 16 Antall 16 bit 1 s n1 n2 n3 TO Velger kanal på omformer 0 Modulnr. AD/DA omformer Bufferminne omformer Antall 16 bit s n1 n2 n3 TO >>00 Start DA omforming Modulnr. AD/DA omformer Bufferminne omformer Antall 16 bit Kommando for å starte DA omforming >>00 Start DA omforming Modulnr. AD/DA omformer Bufferminne omformer s n1 n2 n3 TO 7

112 Structured Ladder/FBD Data Name : Grenser 1 Nedre grense Setter nedre grense for pådrag til 0. Dette skal skje hele tiden Alltid aktiv M8000 LD< MOV u[1] s1 0 s d u[1] 0 s2 2 Øvre grense Setter øve grense for pådrag til 255. Dette skal skje hele tiden Alltid aktiv M8000 LD> MOV u[1] 255 s1 s2 255 s d u[1] 8

113 Structured Ladder/FBD Data Name : Manuell 1 Avvik=0 Aktiv når manuell MAN Prosessverdi[1] Setter refeansen lik prosessverdien. Dette sikrer at avviket blir 0. Dette sikrer rykkfri overgang tilbake til auto. s MOV d Referanse 2 PI_til_MAN Sikrer rykkfri overgang fra PI-regulator til manuell regulator Manuell modus valgt MAN Aktiv dersom PI Aktiv dersom regulatoren er satt som PI, og manuell modus er av Setter det manuelle pådraget lik forrige pådrag for PI for å sikre rykkfri overgang AND MOV PI u[0] s d Um Forige pådrag fra Manuelt pådrag 3 P_til_MAN Manuell modus valgt MAN PI Aktiv dersom PI ikke var valgt, altså Aktiv dersom regulatoren er satt som P og manuell modus er av AND u[1] Aktuelt pådrag fra P Setter det manuelle pådraget lik det aktuelle pådraget for P for å sikre rykkfri s MOV d Um Manuelt pådrag 4 Setter nedre grense for manuelt pådrag til 0. Dette skal skje hele tiden Alltid aktiv M8000 LD< MOV Um s1 0 s d Um 0 s2 5 Setter øve grense for manuelt pådrag til 255. Dette skal skje hele tiden Alltid aktiv M8000 LD> MOV Um 255 s1 s2 255 s d Um 9

114 Structured Ladder/FBD Data Name : NominellPådrag 1 EndringerPI Aktiv når PI er Forrige pårag for Setter det nominelle pådraget lik forrige pådrag for PI. Sikrer rykkfri overgang fra PI til P PI u[0] s MOV d Nominell Nominelt 2 EndringerMAN Sikrer rykkfri overgang fra manuell til automatisk modus Aktiv når MAN er Manuelt pådrag MAN Um s MOV d Nominell Nominelt 3 EndringerPff Aktiv når foroverkobling med P-del er valgt Setter det nominelle pådraget lik 0 nårp-delen i foroverkoblingen er aktiv MOV P_FF 0 s d Nominell Nominelt 10

115 Structured Ladder/FBD Data Name : OppdaterVerdier 1 Oppdaterer verdier fra Gir en puls hvert Oppdaterer forrige verdi av det totale Oppdaterer forrige verdi av avvik. Oppdaterer forrige verdi av forstyrrelse MOV MOV MOV Sample u[1] s d u[0]e[1] s d e[0] Flow[1] s d Flow[0] Forstyrrelse[1] Aktuelt pådrag Forrige pådrag Aktuelt avvik Forrige avvik Aktuell Utstrømning Forrige Utstrømning Aktuell forstyrrelse >>00 >>00 s MOV d Forstyrrelse[0] Prosessverdi[1] Forrige forstyrrelse Aktuell prosessverd s MOV d Prosessverdi[0] Forrige prosessverd 2 Oppdaterer verdier fra de forskjellige Gir en puls hvert Oppdaterer forrige verdi av pådrag fra Oppdaterer forrige verdi av pådrag fra Oppdaterer forrige verdi av pådrag fra P-reg fra foroverkobling MOV MOV MOV Sample u_p[1] s d u_p[0] u_pi[1] s d u_pi[0]upff[1] s d upff[0] udff[1] Aktuelt P-reg pådrag Forrige P-reg pådrag Aktuelt PI-reg pådrag Forrige PI-reg pådrag Aktuelt P-reg pådrag fra Forrige P-reg pådrag fra Aktuelt D-reg pådrag fra Oppdaterer forrige verdi av pådrag fra D-reg fra foroverkobling s MOV Oppdaterer forrige verdi av pådrag fra D-reg fra foroverkobling s MOV d udff[0] Forrige D-reg pådrag fra 11

116 Structured Ladder/FBD Data Name : P-forover 1 KpFF Forstyrrelse[1] Egenlagd regulatorblokk for regulering av forstyrrelse Preg_forover_1 P-reg_forover Forsterkning Pådrag Vk upff[1] 12

117 Structured Ladder/FBD Data Name : P-regulator 1 Kp e[1] Nominell Egenlagd funksjonsblokk for utregning av pådrag i P-regulator. Bruker de Forsterkning Avvik u0 P_reg1 P-reg Pådrag u_p[1] 13

118 Structured Ladder/FBD Data Name : PI-regulator 1 Sikrer en rykkfri overgang fra P til PI. 2 PI Samplingstid Ti Kp e[1] e[0] u[0] Gir en puls ved endring til PI PLS d u_p[1] Forrige pådrag settes lik det aktuell pådraget for P-reg s MOV d Egenlagd regulatorblokk for PI-regulering. Sender inn variablene, og henter ut det aktuelle pådraget. PI_reg1 PI-reg Ts Integrasjonstid Forsterkning Avvik ForrigeAvvik ForrigePaadrag Pådrag u[0] u_pi[1] 14

119 Structured Ladder/FBD Data Name : PådragManuell 1 Setter pådraget lik det manuelle Aktiv når manuell modus er valgt Manuelt pådrag MAN Um s MOV d u[1] Aktuelt 15

120 Structured Ladder/FBD Data Name : PådragRegulator 1 P-reg Aktiv dersom P-reg er valgt Aktiv dersom ingen PI P_FF D_FF u_p[1] s Legger pådraget fra P-reg som MOV d u[1] Aktiv dersom P-foroverkobling P_FF u_p[1] upff[1] D_FF ADD Adderer pådrag fra P-reg og P-forover Aktiv dersom D-foroverkobling D_FF u_p[1] udff[1] Aktiv dersom P_FF P_FF ADD Adderer pådrag fra P-reg og D-forover upp upff[1] D_FF ADD Adderer summen av pådragene fra P-reg og P-forover etter aniwindup, Setter pådrag u[1] lik summen av pådrag fra P-reg og s MOV d u[1] Setter pådrag u[1] lik summen av pådrag fra P-reg og s MOV d u[1] Setter pådrag u[1] lik summen av pådrag fra P-reg og s MOV d u[1] 16

121 Structured Ladder/FBD Data Name : PådragRegulator 2 PI-reg Aktiv dersom P-reg er valgt Aktiv dersom ingen PI P_FF D_FF u_pi[1] Legger pådraget fra PI-reg som s MOV d u[1] Aktiv dersom P-foroverkobling P_FF u_pi[1] upff[1] D_FF ADD Adderer pådrag fra PI-reg og P-forover Setter pådrag u[1] lik summen av pådrag fra PI-reg og s MOV d u[1] Aktiv dersom D-foroverkobling D_FF P_FF u_pi[1] udff[1] Aktiv dersom upip udff[1] P_FF ADD Adderer pådrag fra PI-reg og D-forover D_FF ADD Adderer summen av pådragene fra PI-reg og P-forover etter aniwindup, s Setter pådrag u[1] lik summen av pådrag fra P-reg og s MOV d u[1] Setter pådrag u[1] lik summen av pådrag fra PI-reg og MOV d u[1] 17

122 Structured Ladder/FBD Data Name : Samplingssteg 1 Nedre grense Setter en nedre grense for samplingstid til 1 = 0.1 sekund. Dette skjer så lenge programmet kjører LD< MOV M8000 Samplingstid s1 1 s d Samplingstid 1 s2 2 Timer TS0 Gir en positiv puls ved hver samplingstid TC0 Samplingstid OUT_T TCoil TValue 3 Aktiver sampling Den globale variabelen for å sample går høy ved hvert samplingssteg TS0 Sample 18

123 Structured Ladder/FBD Data Name : AntiWindup 1 P-reg D-forover 2 P-reg PD-forover 3 PI-reg D-forover Denne programblokken fungerer som anti windup før Denne programblokken fungerer som anti windup før Sjekker om pådrag fra Aktiv dersom P-reg med D-forover Setter nedre grense or P-reg lik 0 dersom det er valgt D-forover LD< PI P_FF D_FF MOV u_p[1] s1 0 s d u_p[1] 0 s2 Sjekker om pådrag fra Aktiv dersom P-reg med D-forover Setter pådrag fra P-reg lik 255 dersom det er valgt D-forover LD> PI P_FF D_FF MOV u_p[1] s1 255 s d u_p[1] 255 s2 Sjekker om pådrag upp<0 Aktiv dersom det er P-reg med PI P_FF D_FF u_p[1] upff[1] Adderer pådrag fra P-reg og ADD Aktiv dersom det er P-reg med Legger summen av pådragene til variabelen upp dersom vi har valgt s MOV d upp Setter nedre grense for upp lik 0 dersom det er valgt P-reg LD< PI P_FF D_FF MOV upp s1 0 s d upp 0 s2 Sjekker om pådrag fra Aktiv dersom det er P-reg med Setter øvre grense for upp lik 255 dersom det er valgt P-reg med LD> PI P_FF D_FF MOV upp s1 255 s d upp 255 s2 Sjekker om pådrag u_pi<0 Aktiv dersom det er PI-reg med D-forover Setter nedre grense for u_pi lik 0 dersom det er valgt D-forover LD< PI P_FF D_FF MOV u_pi[1] s1 0 s d u_pi[1] 0 s2 Sjekker om pådrag u_pi>255 Aktiv dersom det er PI-reg med D-forover Setter øvre grense for u_pi lik 255 dersom det er valgt D-forover LD> PI P_FF D_FF MOV u_pi[1] 255 s1 s2 255 s d u_pi[1] 19

124 Structured Ladder/FBD Data Name : AntiWindup 4 PI-reg PD-forove r Aktiv dersom det er PI-reg med PI D_FF P_FF Sjekker om pådrag upip<0 u_pi[1] upff[1] Adderer pådrag fra PI-reg og ADD Aktiv dersom det er PI-reg med PD-forover Legger summen av pådragene til variabelen upip dersom vi har valgt s MOV d Setter nedre grense for upp lik 0 dersom det er valgt PI-reg LD< PI P_FF D_FF MOV upip s1 0 s d upip 0 s2 Sjekker om pådrag u_pi>255 Aktiv dersom det er PI-reg med PD-forover Setter øvre grense for upip lik 255 dersom det er valgt PI-reg LD> PI P_FF D_FF MOV upip 255 s1 s2 255 s d upip upip 20

125 Structured Ladder/FBD Data Name : Alarmtilstand 1 Prosessverdi[1] 25 s1 s2 LD< KritiskLav Sjekker om prosessverdien er under 10% Prosessverdi[1] 225 s1 s2 LD> KritiskHøy Sjekker om prosessverdien er over 90% LD< e[1] -63 s1 s2 OR e[1] 63 s1 s2 LD> HøytAvvik Sjekker om avviket er over 25% 2 KritiskLav KritiskHøy OR TC1 50 OUT_T TCoil TValue Sjekker om tilstandene holder seg i mer enn 5 sekunder. Timeren går høy dersom dette er tilfelle. 3 HøytAvvik TC2 50 OUT_T TCoil TValue Sjekker om tilstanden holder seg i mer enn 5 sekunder. Timeren går høy dersom dette er tilfelle. 4 KritiskHøy TS1 HøyAlarm KritiskLav TS1 LavAlarm HøytAvvik TS2 AvviksAlarm Setter alarmer avhengig av tilstand, dersom disse har ligget inne i mer enn 5 sekunder 21

126 Structured Ladder/FBD Data Name : autotune1 1 2 auto HoppA p CJ e[1] u[0] prosessverdi[1] prosessverdi[0] autotune_1 autotune Avvik ForrigePådrag Nivå ForrigeNivå KpForslag TiForslag Pådrag ForslagKp ForslagTi u[1] 3 HoppA: 22

127 Structured Ladder/FBD Data Name : Forstyrrelse 1 Aktuell utstrømning Forrige utstrømning Flow[1] Flow[0] Regner ut forstyrrelsen. Endringen i utstrømningen SUB Forstyrrelse[1] Forstyrrelse, V 23

128 FB/FUN Program Data Name : D-reg Function Block 1 Flytter alle input-dataene til doble dataord. 16-bits ord til Derivasjonstid _INT INT_TO_DINT Derivasjonstid32 filterkonstant Sampling Aktuell_forstyrrelse Forrige_forstyrrelse forrige_pådrag Forsterkning _INT INT_TO_DINT _INT INT_TO_DINT _INT INT_TO_DINT _INT INT_TO_DINT _INT INT_TO_DINT _INT INT_TO_DINT filterkonstant32 Sampling32 Aktuell_forstyrrelse32 Forrige_forstyrrelse32 forrigepådrag32 Forsterkning32 2 Hindrer at filterkonstanten blir satt 3 4 LD= DMOV M8000 filterkonstant s1 1 s d filterkonstant32 0 s2 M8000 Derivasjonstid32 filterkonstant32 Dividerer derivasjonstiden på s1 s2 DDIV d Regner ut endringen i TfFF Multipliserer Kp med endring i forstyrrelse, DSUB DMUL M8000 V[1] Aktuell_forstyrrelse32 s1 d s1 d TdKpDdeltaV KpDeltaV[0] Forrige_forstyrrelse32 s2 Forsterkning32 s2 Derivasjonstid32 V[0] Multipliserer derivasjonstiden med endring i s1 s2 DMUL d derivasjonstiden med Dette gjøres fordi både Td og Kp er multiplisert med 10 DMUL d StorTdKpDdeltaV StorTdKpDdeltaV[0] 10 s1 s2 DDIV d TdKpDdeltaV 5 Adderer produktet av filtertid Multipliserer og forrige pådrag, med derivatorens filtertid produktet av derivasjonstid med forrige pådrag. og endring i forstyrelse. Dividerer summen av Td*DeltaV+Tf*u[0] på summen av h+tf DMUL DADD DDIV M8000 TfFF[0] s1 d TfU_1 TdKpDdeltaV[0] s1 d s1 d Pådrag32 forrigepådrag32 s2 TfU_1[0] s2 s2 Pådraget blir (Tf*u[0] + Td*(V[1] - V[0])) / (h+tf) DADD M8000 Sampling32 TfFF[0] s1 s2 d Adderer samplingstid med iltertiden. h+tf 24

129 FB/FUN Program Data Name : D-reg Function Block Pådraget blir (Tf*u[0] + Td*(V[1] - V[0])) / (h+tf) 6 Flytter pådragsverdien fra et 32-bits ord til et 16-bits ord Pådrag32[0] _DINT DINT_TO_INT Pådrag 7 Setter nedre grense for pådrag til Dette skal skje hele tiden Alltid aktiv M8000 LD< MOV Pådrag s1-255 s d Pådrag -255 s2 8 Setter øve grense for pådrag til 255. Dette skal skje hele tiden Alltid aktiv M8000 LD> MOV Pådrag 255 s1 s2 255 s d Pådrag 25

130 FB/FUN Program Data Name : P-reg Function Block 1 Flytter alle input-dataene til doble dataord. 16-bits ord til 32-bits ord Forsterkning _INT INT_TO_DINT Forsterkning32 Avvik _INT INT_TO_DINT Avvik32 u0 _INT INT_TO_DINT u032 2 Multipiserer avviket med forsterkningen og legger det til ekp. e*kp Dividerer ekp med 10 for å fjerne desimaler og legger dette til ekp2 ekp2=ekp/10 Adderer ekp2 med nominelt pådrag ekp2+u032 Gjør pådraget om fra 32-bit til 16-bits M8000 Avvik32 Forsterkning32 s1 s2 DMUL d ekp ekp[0] 10 s1 s2 DDIV d ekp2 ekp2[0] u032 s1 s2 DADD d _DINT DINT_TO_INT Pådrag 26

131 FB/FUN Program Data Name : P-reg_forover Function Block 1 Flytter alle input-dataene til doble dataord. 16-bits ord til Forsterkning _INT INT_TO_DINT Forsterkning32 Vk _INT INT_TO_DINT Vk32 2 Multipliserer forstyrrelse med forsterkning Vk*Kp=VkKp Dividerer DvKp med 10 for å fjerne desimaler DvKp/10=Pådrag DMUL DDIV M8000 Vk32 Forsterkning32 s1 s2 d VkKp VkKp[0] 10 s1 s2 d Pådrag32 Pådraget er lik Kp*(V[1]-V[0]) 3 Pådrag32[0] Gjør pådraget om fra 32-bit til 16-bits _DINT DINT_TO_INT Pådrag 27

132 FB/FUN Program Data Name : PI-reg Function Block 1 Forsterkning Flytter alle input-dataordene til doble dataord. 16-bit til _INT INT_TO_DINT forsterkning32 Integrasjonstid Avvik ForrigeAvvik Ts ForrigePaadrag _INT INT_TO_DINT _INT INT_TO_DINT _INT INT_TO_DINT _INT INT_TO_DINT _INT INT_TO_DINT integrasjonstid32 avvik32 forrigeavvik32 Ts32 forrigepaadrag32 2 Dividerer Ti på h, og legger resultatet til Tih. Dette er en endring av regulatoralgoritmen som skulle vært h/ti, men ettersom Ti>h ville dette gitt 0 når vi regner me heltall. integrasjonstid32 Ts32 s1 s2 DDIV d Tih 3 Multipliserer avvik og forsterkning e*kp og legger produktet forsterkning32 avvik32 s1 s2 DMUL d ekp Multipliserer Tih med 10, og legger resultatet i UtvidetTih. Dette gjøres får å få med flere DMUL 10 s1 d UtvidetTih Tih[0] s2 4 Hopper over følgene kode når CS0 går høy. Denne går høy etter programmet har kjørt en gang, fordi. Dette gjøres for at heltallsdivisjonen ikke skal bli 0 før det stasjonære avviket er 0 CS0 Hopp2 p CJ 5 ekp[0] UtvidetTih[0] Dividerer ekp på UtvidetTih, ekp/(10*tih) og legger resultatet i s1 s2 DDIV d Uik 28

133 FB/FUN Program Data Name : PI-reg Function Block 6 ekp[0] UtvidetTih[0] Gjør operasjonen modulo mellom ekp og UtvidetTih. Denne operasjonen henter resten fra heltallsdivisjonen i MOD _IN1 _IN2 RestUik 7 Hopp2: Markerer slutten på hoppet, koden som hoppes over skal kun kjøres en gang. M8000 CC0 1 Teller opp så lenge programmet kjører. Telleren går høy etter å ha telt opp til OUT_C CCoil CValue 8 M8000 RestUik Flytter det doble dataordet fra RestUik til ForrigeRest. s DMOV d ForrigeRest 9 Adderer forrige rest Dividerer summen av forrige rest og ekp på UtvidetTih ForrigeRest ekp[0] s1 s2 DADD d UtvidetTih[0] s1 s2 DDIV d Uik 10 Kjører modulooperasjonen ForrigeRest ekp[0] Adderer forrige rest s1 s2 DADD d UtvidetTih[0] på summen av forrige rest og ekp med UtvidetTih. Denne legger resten av MOD _IN1 _IN2 RestUik 11 Dividerer KpDe på 10. Subtraherer avvik på forrige avvik. Dette gir endringen i Multipliserer endringen i avvik med forsterkningen Kp*(e[1]-e[0]) og legger resultatet i Dette er fordi vi multiplisere med 10 tiligere, og vi ønsker nå å fjerne en desimal. Svaret legges nå til MindreKpDe DSUB DMUL DDIV >>00 avvik32 s1 d s1 d KpDe KpDe[0] s1 d MindreKpDe MindreKpDe[0] forrigeavvik32 s2 forsterkning32 s2 10 s2 Adderer Uik med forrige pådrag og legger resultatet i Uik[0] forrigepaadrag32 s1 s2 DADD d UikU0 29

134 FB/FUN Program Data Name : PI-reg Function Block Adderer resultatet av de tiligere utregningene og legger dette til det 32-bits dataordet >>00 MindreKpDe[0] UikU0 s1 s2 DADD d Pådrag32 Pådrag= u[0] + Uik + (Kp*10*(e[1] - e[0])/10 12 Sjekker om Pådrag32 er Setter Pådrag32 lik 0 dersom LDD< DMOV Pådrag32 s1 0 s d Pådrag32 0 s2 Sjekker om Pådrag32 er over Setter Pådrag32 lik 255 dersom sammenligningen 13 LDD> DMOV Pådrag32 s1 255 s d Pådrag s2 Skriver det doble dataordet Pådrag32 til det 16-bits dataordet Pådrag som sendes ut av regulatoren Pådrag32 _DINT DINT_TO_INT Pådrag 30

135 FB/FUN Program Data Name : autotune Function Block 1 M8000 Avvik 0 Sjekker om avviket blir 0. Dette markerer starten på en ny s1 s2 LD< PLS d Markerer ny halvperiode NyPeriode 2 OppdaterTid Oppdaterer forrige Oppdaterer nåværende MOV MOV MOV NyPeriode >>00 Periodetid[1] s d Periodetid[0] Tid s d Periodetid[1] Bunn_Nivå[1] s d Bunn_Nivå[0] Aktuell Forrige Teller periodetide Aktuell periodeti >>00 Bunn_Nivå[0] Topp_Nivå[1] s MOV d Topp_Nivå[0] 3 ResetVerdier NyPeriode Reseter timeren som teller Reseter teller 1 Reseter teller 2 RST d RST RST Tid d CC1 d CC2 4 Sjekker om nivået er over referansen Denne er aktiv så lenge programmet ikke er klar til å Setter pådraget til 0 dersom avviket er mindre enn 0, altså at nivået ligger over referansen LD< StartRegning MOV Avvik s1 0 s d Pådrag 0 s2 Teller hvert 0.1 sekund, noe som vil gi Nivå ForrigeNivå s1 s2 LD< Sjekker om nivået er synkende AND M8012 StartRegning PLS d CS1 ForrigeNivå s INC d MOV d Legger forrige nivå som toppnivå dersom nivået er synkende Tid Topp_Nivå[1]CC1 1 Denne telleren teller opp når forrige nivå bli lagt som toppnivå, slik at denne ikke blir overskrevet før neste OUT_C CCoil CValue 31

136 FB/FUN Program Data Name : autotune Function Block 5 Sjekker om nivået er over referansen Denne er aktiv så lenge programmet ikke er klar til å Setter pådraget til maks dersom avviket er større enn 0, altså at nivået ligger under referansen Nivå ForrigeNivå LD> StartRegning MOV Avvik s1 255 s d Pådrag 0 s2 s1 s2 LD< Sjekker om nivået er stigende eller synkende AND M8012 StartRegning PLS d CS2 ForrigeNivå Teller hvert 0.1 sekund, noe som vil gi s INC d MOV d Legger forrige Nivå som toppnivå dersom nivået er synkende Tid Bunn_Nivå[1]CC2 1 Denne telleren teller opp når forrige nivå bli lagt som toppnivå, slik at denne ikke blir overskrevet før neste OUT_C CCoil CValue 6 SammenlignPeri ode Aktuell periodetid Forrige M8000 Topp_Nivå[1] Topp_Nivå[0] Sammenligner forrige og nåværende topp og bunn. Dersom disse er like har vi funnet kritisk forsterkning, og vi kan regne ut parametrene. Sjekker også at disse er 0, ettersom det vil si at s1 s2 LD= Går høy dersom forrige og nåværende topp og M8000 Bunn_Nivå[1] Bunn_Nivå[0] M8000 Bunn_Nivå[1] 0 s1 s2 LD= LD<> s1 s2 AND StartRegning M8000 Topp_Nivå[1] 0 LD<> s1 s2 M8000 Periodetid[1] Periodetid[0] s1 s2 LD= 7 Bunn_Nivå[1] _INT INT_TO_DINT Bunn32 Topp_Nivå[1] _INT INT_TO_DINT Topp32 8 StartRegning DSUB DDIV DMUL >>00 Topp32 s1 d Konstant s1 d Kk Kk[0] s1 d Kp_1000 Kp_1000[0] Bunn32 s2 s2 45 s

137 FB/FUN Program Data Name : autotune Function Block >>00 Kp_1000[0] 1000 s1 s2 DDIV d Kp32 9 Periodetid[1] _INT INT_TO_DINT Tk 10 DMUL DDIV StartRegning Tk s1 d Ti_100 Ti_100[0] s1 d Ti32 85 s2 100 s2 11 Ti32[0] Kp32[0] _DINT DINT_TO_INT _DINT DINT_TO_INT ForslagTi ForslagKp 33

138 Label Data Name : Global1 Global Label Setting Class Label Name Data Type Constant Device Address Comment Remark Relation with System Label System Label Name Attribute 1 VAR_GLOBAL u Word[Signed](0..1) D230 %MW0.230 Pådrag 2 VAR_GLOBAL e Word[Signed](0..1) D240 %MW0.240 Avvik 3 VAR_GLOBAL Kp Word[Signed] D202 %MW0.202 Forsterkning 4 VAR_GLOBAL Ti Word[Signed] D204 %MW0.204 Integraltid 5 VAR_GLOBAL Referanse Word[Signed] D206 %MW0.206 Referanse 6 VAR_GLOBAL Prosessverdi Word[Signed](0..1) D208 %MW0.208 Prosessverdi 7 VAR_GLOBAL Nominell Word[Signed] D210 %MW0.210 Nominelt Pådrag 8 VAR_GLOBAL Samplingstid Word[Signed] D212 %MW0.212 Samplingstid 9 VAR_GLOBAL filtertid Word[Signed] D214 %MW0.214 filtertid 10 VAR_GLOBAL Um Word[Signed] D216 %MW0.216 Manuelt pådrag VAR_GLOBAL PI Bit M40 %MX0.40 1=PI 0=P 14 VAR_GLOBAL P_FF Bit M41 %MX0.41 1=foroverkobl. med P-reg 15 VAR_GLOBAL D_FF Bit M42 %MX0.42 1=foroverkobl. med D-reg 16 VAR_GLOBAL MAN Bit M43 %MX0.43 1=Manuell modus, 0=Automatisk modus 17 VAR_GLOBAL Revers Bit M44 %MX VAR_GLOBAL auto Bit M100 %MX VAR_GLOBAL KpFF Word[Signed] D218 %MW0.218 Forsterkning på forstyrrelse 22 VAR_GLOBAL TdFF Word[Signed] D220 %MW0.220 Derivasjonstid VAR_GLOBAL Flow Word[Signed](0..1) D222 %MW0.222 Utstrømning 26 VAR_GLOBAL Forstyrrelse Word[Signed](0..1) D224 %MW0.224 Forstyrrelse, V 27 VAR_GLOBAL Sample Bit M16 %MX0.16 Sample når denne er høy VAR_GLOBAL u_p Word[Signed](0..1) D300 %MW0.300 Pådrag P-reg 31 VAR_GLOBAL u_pi Word[Signed](0..1) D302 %MW0.302 Pådrag PI-reg 32 VAR_GLOBAL upff Word[Signed](0..1) D304 %MW0.304 Pådrag foroverkobling P-reg 33 VAR_GLOBAL udff Word[Signed](0..1) D306 %MW0.306 Pådrag foroverkobling D-reg 34 VAR_GLOBAL upp Word[Signed] D308 %MW0.308 Sum pådrag P-reg og P-del forover 35 VAR_GLOBAL upip Word[Signed] D310 %MW0.310 Sum pådrag PI-reg og P-del forover VAR_GLOBAL KritiskHøy Bit M101 %MX0.101 Prosessverdien er kritisk høy, over 90% 39 VAR_GLOBAL KritiskLav Bit M102 %MX0.102 Prosessverdien er kritisk lav, under 10% 40 VAR_GLOBAL HøytAvvik Bit M103 %MX0.103 Avviket er for stort, 25% avvik 41 VAR_GLOBAL HøyAlarm Bit M60 %MX0.60 Aktiv når alarmen for høyt nivå går 42 VAR_GLOBAL LavAlarm Bit M61 %MX0.61 Aktiv når alarmen for lavt nivå går 43 VAR_GLOBAL AvviksAlarm Bit M62 %MX0.62 Aktiv når alarmen for stort avvik går VAR_GLOBAL ForslagKp Word[Signed] D320 %MW0.320 Forslag til Kp fra autotuning 46 VAR_GLOBAL ForslagTi Word[Signed] D322 %MW0.322 Forslag til Ti fra autotuning 34

139 Label Data Name : Adressering_Slaver Local Label Setting Class Label Name Data Type Constant Device Address Comment 35

140 Label Data Name : AnalogTilDigital Local Label Setting Class Label Name Data Type Constant Device Address Comment 36

141 Label Data Name : Avvik Local Label Setting Class Label Name Data Type Constant Device Address Comment 37

142 Label Data Name : D-regulator Local Label Setting Class Label Name Data Type Constant Device Address Comment 1 VAR D_reg1 D-reg 38

143 Label Data Name : DataFraMaster Local Label Setting Class Label Name Data Type Constant Device Address Comment 39

144 Label Data Name : DataTilMaster Local Label Setting Class Label Name Data Type Constant Device Address Comment 40

145 Label Data Name : DigitalTilAnalog Local Label Setting Class Label Name Data Type Constant Device Address Comment 41

146 Label Data Name : Grenser Local Label Setting Class Label Name Data Type Constant Device Address Comment 42

147 Label Data Name : Manuell Local Label Setting Class Label Name Data Type Constant Device Address Comment 43

148 Label Data Name : NominellPådrag Local Label Setting Class Label Name Data Type Constant Device Address Comment 44

149 Label Data Name : OppdaterVerdier Local Label Setting Class Label Name Data Type Constant Device Address Comment 45

150 Label Data Name : P-forover Local Label Setting Class Label Name Data Type Constant Device Address Comment 1 VAR Preg_forover_1 P-reg_forover 46

151 Label Data Name : P-regulator Local Label Setting Class Label Name Data Type Constant Device Address Comment 1 VAR P_reg1 P-reg 47

152 Label Data Name : PI-regulator Local Label Setting Class Label Name Data Type Constant Device Address Comment 1 VAR PI_reg1 PI-reg 48

153 Label Data Name : PådragManuell Local Label Setting Class Label Name Data Type Constant Device Address Comment 49

154 Label Data Name : PådragRegulator Local Label Setting Class Label Name Data Type Constant Device Address Comment 50

155 Label Data Name : Samplingssteg Local Label Setting Class Label Name Data Type Constant Device Address Comment 51

156 Label Data Name : AntiWindup Local Label Setting Class Label Name Data Type Constant Device Address Comment 52

157 Label Data Name : Alarmtilstand Local Label Setting Class Label Name Data Type Constant Device Address Comment 53

158 Label Data Name : autotune1 Local Label Setting Class Label Name Data Type Constant Device Address Comment 1 VAR autotune_1 autotune 54

159 Label Data Name : Forstyrrelse Local Label Setting Class Label Name Data Type Constant Device Address Comment 55

160 Label Data Name : D-reg Function/FB Label Setting Class Label Name Data Type Constant Comment 1 VAR_INPUT Forsterkning Word[Signed] 2 VAR_INPUT Derivasjonstid Word[Signed] 3 VAR_INPUT filterkonstant Word[Signed] 4 VAR_INPUT Sampling Word[Signed] 5 VAR_INPUT Aktuell_forstyrrelse Word[Signed] 6 VAR_INPUT Forrige_forstyrrelse Word[Signed] 7 VAR_INPUT forrige_pådrag Word[Signed] 8 VAR Forsterkning32 Double Word[Signed] 9 VAR Derivasjonstid32 Double Word[Signed] 10 VAR filterkonstant32 Double Word[Signed] 11 VAR Sampling32 Double Word[Signed] 12 VAR Aktuell_forstyrrelse32 Double Word[Signed] 13 VAR Forrige_forstyrrelse32 Double Word[Signed] 14 VAR forrigepådrag32 Double Word[Signed] 15 VAR Pådrag32 Double Word[Signed](0..1) 16 VAR TfFF Double Word[Signed](0..1) 17 VAR KpDeltaV Double Word[Signed](0..1) 18 VAR StorTdKpDdeltaV Double Word[Signed](0..1) 19 VAR TdKpDdeltaV Double Word[Signed](0..1) 20 VAR TfU_1 Double Word[Signed](0..1) 21 VAR_OUTPUT Pådrag Word[Signed] 56

161 Label Data Name : P-reg Function/FB Label Setting Class Label Name Data Type Constant Comment 1 VAR_INPUT Forsterkning Word[Signed] 2 VAR_INPUT Avvik Word[Signed] 3 VAR_INPUT u0 Word[Signed] 4 VAR Forsterkning32 Double Word[Signed] 5 VAR Avvik32 Double Word[Signed] 6 VAR u032 Double Word[Signed] 7 VAR ekp Double Word[Signed](0..1) 8 VAR ekp2 Double Word[Signed](0..1) 9 VAR_OUTPUT Pådrag Word[Signed] 57

162 Label Data Name : P-reg_forover Function/FB Label Setting Class Label Name Data Type Constant Comment 1 VAR_INPUT Forsterkning Word[Signed] 2 VAR_INPUT Vk Word[Signed] 3 VAR Forsterkning32 Double Word[Signed] 4 VAR Vk32 Double Word[Signed] 5 VAR VkKp Double Word[Signed](0..1) 6 VAR Pådrag32 Double Word[Signed](0..1) 7 VAR_OUTPUT Pådrag Word[Signed] 58

163 Label Data Name : PI-reg Function/FB Label Setting Class Label Name Data Type Constant Comment 1 VAR_INPUT Ts Word[Signed] Samplingstid 2 VAR_INPUT Integrasjonstid Word[Signed] 3 VAR_INPUT Forsterkning Word[Signed] 4 VAR_INPUT Avvik Word[Signed] 5 VAR_INPUT ForrigeAvvik Word[Signed] 6 VAR_INPUT ForrigePaadrag Word[Signed] 7 VAR RestUik Double Word[Signed] 8 VAR Tih Double Word[Signed](0..1) 9 VAR ForrigeRest Double Word[Signed] 10 VAR Uik Double Word[Signed](0..1) 11 VAR Ts32 Double Word[Signed] 12 VAR integrasjonstid32 Double Word[Signed] 13 VAR forsterkning32 Double Word[Signed] 14 VAR avvik32 Double Word[Signed] 15 VAR forrigeavvik32 Double Word[Signed] 16 VAR forrigepaadrag32 Double Word[Signed] 17 VAR ekp Double Word[Signed](0..1) 18 VAR UtvidetTih Double Word[Signed](0..1) 19 VAR KpDe Double Word[Signed](0..1) 20 VAR MindreKpDe Double Word[Signed](0..1) 21 VAR UikU0 Double Word[Signed] 22 VAR Pådrag32 Double Word[Signed] 23 VAR test1 Double Word[Signed] 24 VAR test2 Double Word[Signed] 25 VAR_OUTPUT Pådrag Word[Signed] 59

164 Label Data Name : autotune Function/FB Label Setting Class Label Name Data Type Constant Comment 1 VAR_INPUT Avvik Word[Signed] 2 VAR_INPUT ForrigePådrag Word[Signed] 3 VAR_INPUT Nivå Word[Signed] 4 VAR_INPUT ForrigeNivå Word[Signed] 5 VAR Tid Word[Signed] 6 VAR Topp_Nivå Word[Signed](0..1) 7 VAR Bunn_Nivå Word[Signed](0..1) 8 VAR NyPeriode Bit 9 VAR StartRegning Bit 10 VAR_CONSTANT Konstant Double Word[Signed] VAR Bunn32 Double Word[Signed] 12 VAR Topp32 Double Word[Signed] 13 VAR Kk Double Word[Signed](0..1) 14 VAR Kp_1000 Double Word[Signed](0..1) 15 VAR Kp32 Double Word[Signed](0..1) 16 VAR Periodetid Word[Signed](0..1) 17 VAR Tk Double Word[Signed] 18 VAR Ti_100 Double Word[Signed](0..1) 19 VAR Ti32 Double Word[Signed](0..1) 20 VAR_OUTPUT KpForslag Word[Signed] 21 VAR_OUTPUT TiForslag Word[Signed] 22 VAR_OUTPUT Pådrag Word[Signed] 60

165

166 Høgskolen i Sør-Trøndelag Simuleringsnotat Prosjektoppgave i Styresystemer 2AEL13H våren 2015 Gruppe 6 Emil Hatletveit Kristian Strøm Terje Magnus Sørensen Stian Berg Dyrnes Snorre Vongraven Andreas Haugen

167 Sammendrag-TMS Simuleringsnotatet viser våre simuleringer og modelleringer av prosessen til prosjektet. Dette er gjennomført for å lette arbeidet med å finne regulatorinnstillinger for PLS regulatoren. Det er gitt et krav om innsvingingsforløp av typen minimum areal. Prosessen er bygd opp av en pumpe på innløpet, en tank og tre magnetventiler. Innløpstrømmen er bestemt av innløpsventilen som skal reguleres. Utløpet har tre magnetventiler som er festet parallelt (bestemmer utløpet). Regulatoren som blir benyttet er av typen PI, det skal i tillegg være mulighet for foroverkopling av typene P/D/PD. Foroverkoblingen måler dirkete på flowmåleren, og vil bidra til at tidsforsinkelsen i nivåmåleren blir mindre synlig. Ut i fra tidligere erfaringer med bruk at modellerte verdier på virkelige tanker har vi ikke så store forhåpninger om at innstillingene fungerer optimalt på tank-riggen. For å finne innstillinger, har vi gjennomført logging av forskjellige senarioer på tanken, bant annet tømming og fylling. Det ble utfra disse loggingene laget en modell i Simulink og Matlab. ii

168 Innhold Sammendrag-TMS ii 1 Innledning TMS 4 2 Krav til regulering TMS 6 3 Krav regulator - TMS 6 4 Plotting av sprangrespons - TMS 7 5 Målinger, utregninger og modellering Fylling av tanken-sv Utløpsventiler-SV Tank-SV Innløpsventil-SV Signalgiver-AH Omformer-AH Måleelement-AH Regulator med foroverkobling og anti-windup-sv Foroverkobling-SV 18 6 Reguleringsstrategi TMS 19 7 Frekvensanalyse-AH 20 8 Reguleringsalternativer-AH 23 9 Forsøk med verdier på tankriggen Konklusjon TMS Litteraturliste - TMS 27 iii

169 1 Innledning TMS Entankprosjektet er nivåregulering av en sylindrisk tank. Prosessen har en pumpe som går med fast turtall, der pådraget reguleres av en pneumatisk ventil som er montert på toppen av tanken. Nivået måles med en trykkmåler. Det er disse to komponentene som trengs for å regulere nivået i tanken til å holde seg stabilt rundt 60%. Reguleringen blir testet med forskjellige sprang i utløpet. Innløpsventil tank Flowmåler Figur 1 - tankrigg Innløpsventilen blir styrt av et strømsignal fra PLS en. Signalet ligger mellom 4-20 ma. Det er en veldig rask ventil når den er på, men du har ganske stor tidsforsinkelse ved oppstartsfasen. Tanken er sylindrisk med en høyde på 64 cm og har en radius på 5,5cm. Volumet er omtrent 5,7 liter. Vi har valgt å la full tank være på 61cm og tom tank på 5cm, for å gjøre både avlesning og regulering enklere. Dette hindre overløp og forstyrrelser på nivåmåling. Nivåmåleren er en trykkmåler som er i bunn av tanken. Denne sender ut et signal fra 4-20 ma, noe som representerer % nivå i tanken. Verdien sendes til PLS-en hvor verdien 4

170 blir representert fra 0 255, som bruker denne avlesningen til å regulere innløpet for å stabilisere nivået. Nivåmåleren sender 20 ma ved en vannstand på 61cm og 4mA ved nivået 5cm. Utløpet består av tre magnetventiler. Det er disse som utgjør forstyrrelsen som det skal simuleres. Det skal kjøres et sprang fra 1-3 åpne ventiler og motsatt. I figur 2 kan man se de tre ventilene montert på riggen. Dette er hurtige ventiler som går fra lukket til fullt åpen på veldig kort tid. Det blir derfor en lav tidsforsinkelse i selve spranget Figur 2 - utstrømmingsventiler 5

171 2 Krav til regulering TMS Ved referanse på 60 % og stabilt nivå (ikke stasjonært avvik) skal et sprang i utløpet fra 100 % til 33 % (fra tre til en åpen magnetventil) ha et innsvingingsforløp som tilsvarer minimum areal. Minimum areal tilsvarer 4-6 halvperioder innsvingingstid. - Det skal være raskest mulig innsvingingstid til et nivå som holder seg innenfor ±2 % av målområdet. - Ønsker minst mulig dynamisk avvik. 3 Krav regulator - TMS Krav: - Skal fungere som både P- og PI-regulator - Overganger mellom moduser og regulatortype skal være rykkfrie. - Skal ha mulighet for foroverkobling av P/D/PD-type Parametere du kan stille inn: - Proporsjonal forsterkning (Kp) - Integrasjonstid (Ti) - Referanse - Samplingstid - Parametere i foroverkoblingen o Kp o Td o N 6

172 4 Plotting av sprangrespons - TMS Vi ønsket å logge forskjellige verdier for å lage en overføringsfunksjon til simulinkmodellen. Dette gjorde vi ved hjelp av InTouch, som et verktøy for å lage HMI-grensesnitt. Dette ble gjort ved at vi laget et real-time vindu som vi hentet verdiene fra både nivåmåleren og flowmåleren, dette ga oss en graf som vist i figur 3. Figur 3 eksempel på logging av verdier i InTouch 7

173 5 Målinger, utregninger og modellering Figur 4 Modellering av tankriggen i simulink For å kunne simulere tankriggen på en tilfredsstillende måte måtte vi utføre målinger på prosessen, og bruke de målte verdiene til å utarbeide en matematisk modell. I de kommende sidene skal vi ta for oss disse målingene, og hvordan vi utarbeidet en akseptabelt nøyaktig modell rundt de. For å effektivisere arbeidet noe har vi tatt utgangspunkt i en tidligere modell utarbeidet av Anderas Haugen og Snorre Vongraven. 8

174 5.1 Fylling av tanken-sv Figur 5 Fylling av tank uten utløp Her har vi laget et sprang i pådraget fra 0 til 255(maks), uten noe utløp for å finne tiden det tar å fylle tanken. Fra pådraget(gul linje) til prosessverdien(rød linje) kan det se ut som prosessen har en tidsforsinkelse på 5 sekunder. 0.5 sekunder av dette ligger i systemet, de resterende er tiden det tar å fylle tanken opp til et nivå som trykkmåleren faktisk registrerer. Derfor kan vi se bort fra det meste av forsinkelsen, da vi aldri skal regulere så lavt i tanken. Vi ser også at oppfyllingen ikke er helt lineær. Dette kommer av at ventilen bruker i overkant av 5 sekunder på å åpne seg helt opp. Tanken bruker sekunder på å bli fylt opp til 61 cm. Den blå linjen er flow-måleren, siden det ikke var noen åpne ventiler er de utslagene vi ser bare forstyrrelser. 9

175 5.2 Utløpsventiler-SV På tankriggen er det tre identiske utgangsventiler. For å finne ut av de forskjellige ventilkonstantene satte vi et fast pådrag på innløpsventilen for å få et stasjonært nivå i tanken. For å få resultater som gjenspeiler reguleringen best justerte vi pådraget slik at høyden ble i nærheten av arbeidspunktet. Når tanken har blitt stasjonær leser vi av flowmåleren, og bruker utstrømningen til å regne ut ventilkonstanten. Vi oppdaget underveis at det som i utgangspunktet er tre helt identiske ventiler har forskjellig utstrømning. I samråd med veiledere konkluderte vi med at dette bare kan skyldes plasseringen til ventilene på riggen. Ventil nummer to og tre ligger i parallell etter ventil nummer en, og har dermed lengre vei til utløpet, og følgelig mer friksjon. Vi valgte derfor å simulere med 1, 2 eller 3 åpne ventiler. Vi får da mindre valgfrihet når det gjelder utløp, da ventilene som brukes er satt. 1 ventil åpen tilsvarer da ventil nr 1, 2 ventiler tilsvarer ventil nr 1 og 2 åpen, og 3 ventiler tilsvarer alle 3 ventilene åpen. For 1 ventil åpen får vi følgende utregning: 6,10 l m 60s 1000 = cm3 s Cv = qv h Cv1 = cm3 s 31,5cm Cv1 = 18,12 cm2.5 s 10

176 Utregning for alle ventilkonstantene. Tabell 1 Utregninger av utløp ved 1,2 og 3 åpne ventiler Nivå i tank (cm) Flow (cm^3/s) Ventil konstant 1 Ventil åpen 31,5 101,7 18,12 2 Ventiler åpen 31, ,6 3 Ventiler åpen 31,5 115,8 20,63 11

177 5.3 Tank-SV Tanken vi bruker er en sylinder med nyttehøyde på 56 cm, og radius 5,5 cm. Dette gir et volum på 5,32 Liter. Den dynamiske ligningen for systemet blir dv dh = πr2 h (q inn q ut ), q ut = Cv h dv = πr 2 dh = 1 (qinn Cv h) πr2 Figur 6 Skjermdump av væsketank-blokken i Simulink 12

178 5.4 Innløpsventil-SV Tankriggens pneumatiske innløpsventil styres av et strømsignal på 4mA til 20mA. Den pneumatiske ventilen bruker ca 1 sekund på å starte opp i fra vi endrer pådraget, og litt over 5 sekunder fra 0 til 100% åpning. Bak ventilen står det et konstant vanntrykk matet fra en vannpumpe. For å finne overføringsfunksjonen til ventilen ville vi finne ut hvor mye som vann som går igjennom ventilen ved maks pådrag. Dette gjorde vi ved å dele tankens målbare volum på tiden det tar å fylle tanken. Ved gjentatte målinger kom vi fram til at den bruker sekunder på å nå 100%, og vi får 5.32 l da et innløp på = 0.37 l s s Dette vil selvfølgelig ikke være helt nøyaktig da noe av tiden blir brukt på å åpne ventilen helt opp. Vi fikk inntrykk av at ventilen var opp mot 100% åpen før vannstanden hadde kommet opp til 0 nivå, og velger derfor å se bort ifra dette. For å gjøre omregningen fra pådraget i ma til innløp i cm^3 må vi gange med I tillegg til dette må vi bruke en førsteordens overføringsfunksjon slik at ventilen bruker i overkant av 5 sekunder på å nå 100% åpning. Figur 7 Skjermdump av regulatorventil-blokken 13

179 5.5 Signalgiver-AH Signalgiveren konverterer referansen som er i centimeter til milliampere. h = 0 56cm, I = 4 20mA Forholdet mellom centimeter og ampere blir da = 2 7 Når ventilen er helt åpen (20mA) blir nivået i tanken 56cm. Figur 8 Signalgiver blokk 14

Forprosjektrapport. Prosjektoppgave i Styresystemer 2AEL13H våren 2015

Forprosjektrapport. Prosjektoppgave i Styresystemer 2AEL13H våren 2015 Høgskolen i Sør-Trøndelag Forprosjektrapport Prosjektoppgave i Styresystemer 2AEL13H våren 2015 Gruppe 6 Emil Hatletveit Kristian Strøm Terje Magnus Sørensen Stian Berg Dyrnes Snorre Vongraven Andreas

Detaljer

PLS PC-øving nr. 3 Global Label og Local Label, flagg og CJ

PLS PC-øving nr. 3 Global Label og Local Label, flagg og CJ PLS PC-øving nr. 3 Global Label og Local Label, flagg og CJ Utgave: 1.02 Utarbeidet av: AH Dato: 10.10.12 Revidert av: AH Dato: 270114 Tema i oppgaven Oppgaven går ut på å lære seg å ta i bruk listene

Detaljer

SIMULERINGSNOTAT. Prosjekt i emnet «Styresystemer og reguleringsteknikk» Gruppe 01. Laget av Torbjørn Morken Øyvind Eklo

SIMULERINGSNOTAT. Prosjekt i emnet «Styresystemer og reguleringsteknikk» Gruppe 01. Laget av Torbjørn Morken Øyvind Eklo SIMULERINGSNOTAT Prosjekt i emnet «Styresystemer og reguleringsteknikk» Gruppe 01 Laget av Torbjørn Morken Øyvind Eklo Høgskolen i Sør-Trøndelag 2015 Sammendrag Simulering av nivåregulering av tank ved

Detaljer

TOTANK RAPPORT. Gruppe 1 og 2

TOTANK RAPPORT. Gruppe 1 og 2 TOTANK RAPPORT Gruppe 1 og 2 Høgskolen i Sør-Trøndelag 2015 Sammendrag Totank-prosjektet og bonusoppgaven er deler av ett større prosjekt i faget «Reguleringsteknikk og styresystemer» for 2EA. Totank-prosjektet

Detaljer

Rapport Entank. Prosjekt i emnet «Styresystemer og reguleringsteknikk» Gruppe 01. Høgskolen i Sør-Trøndelag

Rapport Entank. Prosjekt i emnet «Styresystemer og reguleringsteknikk» Gruppe 01. Høgskolen i Sør-Trøndelag Rapport Entank Prosjekt i emnet «Styresystemer og reguleringsteknikk» Gruppe 01 Høgskolen i Sør-Trøndelag 2015 Sammendrag (Skrevet av TM) Entank-prosjektet er en del av et større prosjekt som går i vårsemesteret

Detaljer

ENTANK 2EA GRUPPE 3 28.04.2015

ENTANK 2EA GRUPPE 3 28.04.2015 ENTANK 2015 2EA GRUPPE 3 28.04.2015 Forord [EAH] Entankrapporten er en del av et stort prosjektarbeid som vi fikk tildelt våren 2015 i faget Styresystemer og reguleringsteknikk. Prosjektgruppen består

Detaljer

Bruksanvisning Unitronics Vision

Bruksanvisning Unitronics Vision Bruksanvisning Unitronics Vision Ole Einar Moe Innhold 1 Oppsett... 1 1.1 PLS... 1 1.2 Datamaskin... 2 1.3 Kommunikasjon... 2 2 Planlegging... 6 2.1 Digitale Inn/Ut ganger... 6 2.2 Analoge Inn/Ut ganger...

Detaljer

48 Praktisk reguleringsteknikk

48 Praktisk reguleringsteknikk 48 Praktisk reguleringsteknikk Figur 2.18: Simulering av nivåreguleringssystemet for flistanken. Regulatoren er en PI-regulator. (Resten av frontpanelet for simulatoren er som vist i figur 2.14.) Kompenseringsegenskaper:

Detaljer

Totankprosjektrapport

Totankprosjektrapport Høgskolen i Sør-Trøndelag Totankprosjektrapport Prosjektoppgave i Styresystemer 2AEL13H våren 2015 Gruppe 5 & 6 Emil Hatletveit Kristian Strøm Terje Magnus Sørensen Stian Berg Dyrnes Snorre Vongraven Andreas

Detaljer

HMI standarddokument

HMI standarddokument HMI standarddokument Revisjonsnummer: 1 Siste revisjonsdato: 20. november 2009 Adresse: Pb 203, 3901 Porsgrunn, telefon 35 02 62 00, www.hit.no/tf Bachelorutdanning - Masterutdanning Ph.D. utdanning Innholdsfortegnelse

Detaljer

Høgskolen i Østfold Avdeling for informasjonsteknologi. Programmering av PLS-styrt Modellandsby ved hjelp av Phoenix Profinet / PCWorX

Høgskolen i Østfold Avdeling for informasjonsteknologi. Programmering av PLS-styrt Modellandsby ved hjelp av Phoenix Profinet / PCWorX Høgskolen i Østfold Avdeling for informasjonsteknologi Industriell IT ITD30005 Lab 1 (Gruppeoppgave) Programmering av PLS-styrt Modellandsby ved hjelp av Phoenix Profinet / PCWorX Remmen 03.sept 2015 Revidert:

Detaljer

Forprosjektrapport Prosjektoppgave i faget Styresystemer 2EA våren 2015

Forprosjektrapport Prosjektoppgave i faget Styresystemer 2EA våren 2015 rapport Prosjektoppgave i faget Styresystemer 2EA våren 2015 Gruppe 5 Prosjektoppgave, forprosjekt Prosjekt Styresystemer & Reguleringsteknikk Gruppe 5 (AR) Oppgavens tittel: Prosjektoppgave i faget Styresystemer

Detaljer

HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi LØSNINGSFORSLAG EDT208T-A. Programmerbare logiske styringer

HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi LØSNINGSFORSLAG EDT208T-A. Programmerbare logiske styringer HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi LØSNINGSFORSLAG Eksamensdato: 14.desember 2012 Varighet/eksamenstid: 09.00-12.00 Emnekode: Emnenavn: Klasse: EDT208T-A Programmerbare logiske styringer

Detaljer

KYBERNETIKKLABORATORIET. FAG: Kybernetikk DATO: 01.13 OPPG. NR.: R134 TEMPERATURREGULERING

KYBERNETIKKLABORATORIET. FAG: Kybernetikk DATO: 01.13 OPPG. NR.: R134 TEMPERATURREGULERING KYBERNETIKKLABORATORIET FAG: Kybernetikk DATO: 01.13 OPPG. NR.: R134 TEMPERATURREGULERING Denne øvelsen inneholder følgende momenter: a) En prosess, styring av luft - temperatur, skal undersøkes, og en

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi LØSNINGSFORSLAG Eksamensdato: 13.desember 2013 Varighet/eksamenstid: 09.00-12.00 Emnekode: Emnenavn: Klasse: EDT208T-A Programmerbare logiske styringer

Detaljer

Utførelse av programmer, metoder og synlighet av variabler i JSP

Utførelse av programmer, metoder og synlighet av variabler i JSP Utførelse av programmer, metoder og synlighet av variabler i JSP Av Alf Inge Wang 1. Utførelse av programmer Et dataprogram består oftest av en rekke programlinjer som gir instruksjoner til datamaskinen

Detaljer

HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi Studieprogram for elektro- og datateknikk 7004 TRONDHEIM

HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi Studieprogram for elektro- og datateknikk 7004 TRONDHEIM Vedlegg 1 av 38 Vedlegg 2 av 38 Prosjekt: Miniprosjekt Aktivitet: Opprette kommunikasjon, nettverk Aktivitet nr: 01 Startdato: 04.03.2015 Sluttdato: 24.03.2015 Ingen Etterfølgende aktiviteter: Lage testprogram

Detaljer

Program for elektro- og datateknikk

Program for elektro- og datateknikk D:\Per\Fag\Regtek\Oppgavebok\2a Tank 4 øvinger\04_tank4_1_2014_v3.wpd Program for elektro- og datateknikk Fag TELE2001 Reguleringsteknikk Tank 4 øving 1. Utarbeidet: PHv Revidert sist: PHv, aug 2014 Målsetting:

Detaljer

EC-Styring med "Magelis" berøringsskjerm. 1. Oppstart og initialisering av maskin... 2

EC-Styring med Magelis berøringsskjerm. 1. Oppstart og initialisering av maskin... 2 Innhold 1. Oppstart og initialisering av maskin... 2 2. Drift av maskinen... 3 2.1 Beskrivelse av hovedmeny...3 2.2 Endre program...4 2.3 Opprette et program - eksempel på programmering av en profil...5

Detaljer

HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi

HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi Kandidatnr: Eksamensdato: 13.desember 2013 Varighet/eksamenstid: 09.00-12.00 Emnekode: Emnenavn: Klasse: EDT208T-A Programmerbare logiske styringer 3EK

Detaljer

Soloball. Steg 1: En roterende katt. Sjekkliste. Test prosjektet. Introduksjon. Vi begynner med å se på hvordan vi kan få kattefiguren til å rotere.

Soloball. Steg 1: En roterende katt. Sjekkliste. Test prosjektet. Introduksjon. Vi begynner med å se på hvordan vi kan få kattefiguren til å rotere. Soloball Introduksjon Scratch Introduksjon Vi skal nå lære hvordan vi kan lage et enkelt ballspill med Scratch. I soloball skal du styre katten som kontrollerer ballen, slik at ballen ikke går i nettet.

Detaljer

HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi

HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi Kandidatnr: Eksamensdato: 14.desember 2012 Varighet/eksamenstid: 09.00-12.00 Emnekode: Emnenavn: Klasse: EDT208T-A Programmerbare logiske styringer 3EK

Detaljer

Kanter, kanter, mange mangekanter

Kanter, kanter, mange mangekanter Kanter, kanter, mange mangekanter Nybegynner Processing PDF Introduksjon: Her skal vi se på litt mer avansert opptegning og bevegelse. Vi skal ta utgangspunkt i oppgaven om den sprettende ballen, men bytte

Detaljer

Program for elektro- og datateknikk

Program for elektro- og datateknikk Program for elektro- og datateknikk Fag TELE2001 Reguleringsteknikk Tank 4 øving 1. Utarbeidet: PHv Revidert sist Fredrik Dessen 2015-08-25 Målsetting: I denne oppgaven skal du bli kjent med Simuleringsprogrammet

Detaljer

Zelio Soft grunnkurs. Zelio Logic reléerstatter programmering

Zelio Soft grunnkurs. Zelio Logic reléerstatter programmering Zelio Soft grunnkurs Zelio Logic reléerstatter programmering Zelio Soft programvare for programmering av Zelio Logic reléerstatter Grunnkurset forutsetter at Zelio Soft er installert på PC Skjermbilder

Detaljer

Espen Seljemo, Torry Eriksen, Vidar Wensel og Magnus Bendiksen

Espen Seljemo, Torry Eriksen, Vidar Wensel og Magnus Bendiksen Espen Seljemo, Torry Eriksen, Vidar Wensel og Magnus Bendiksen 1.0 Problemstilling... 3 1.1 Utstyr... 3 2.0 Valg av metoder... 3 3.0 Resultat...4 3.1 PL-7 Pro... 4 3.2 InTouch... 4 4.0 Problem... 5 4.1

Detaljer

Enkel veiledning for: GSM key3+

Enkel veiledning for: GSM key3+ Enkel veiledning for: GSM key3+ 1 Innhold Kort beskrivelse på oppstart:... 3 Tilkobling på GSM Key 3+... 4 1. Offline programmering vis SMS.... 6 2. Administrator: (Må legges inn)... 7 3. Enhetsinformasjon:...

Detaljer

Test av USB IO-enhet. Regulering og HMI.

Test av USB IO-enhet. Regulering og HMI. Høgskolen i Østfold Avdeling for informasjonsteknologi Lab Industriell IT Fag ITD 30005 Industriell IT Laboppgave 3. Gruppe-oppgave Test av USB IO-enhet. Regulering og HMI. Skal gjennomføres i løpet av

Detaljer

ENC - 100. ENKEL AKSE og KLIPPE LENGDE KONTROLLER for PLATESAKSER

ENC - 100. ENKEL AKSE og KLIPPE LENGDE KONTROLLER for PLATESAKSER ENC - 100 ENKEL AKSE og KLIPPE LENGDE KONTROLLER for PLATESAKSER 1. GENERELLE SPESIFIKASJONER Membran tastatur med lang levetid. Klart og lett lesbart display. Viser hver av de 6 sifrene for aktuell og

Detaljer

MINIPROSJEKTRAPPORT PROSJEKT I STYRESYSTEMER GRUPPE 1

MINIPROSJEKTRAPPORT PROSJEKT I STYRESYSTEMER GRUPPE 1 MINIPROSJEKTRAPPORT PROSJEKT I STYRESYSTEMER GRUPPE 1 Høgskolen i Sør-Trøndelag 2015 Sammendrag (Skrevet av ØE, AA og EB) Miniprosjektet er et delprosjekt, hvor målet er å etablere kommunikasjon på PLS-riggen

Detaljer

Slik skal du tune dine PID-regulatorer

Slik skal du tune dine PID-regulatorer Slik skal du tune dine PID-regulatorer Ivar J. Halvorsen SINTEF, Reguleringsteknikk PROST temadag Tirsdag 22. januar 2002 Granfos Konferansesenter, Oslo 1 Innhold Hva er regulering og tuning Enkle regler

Detaljer

DataGuard. Installasjonsguide. Internett. Thomson Speedtouch 585i v7

DataGuard. Installasjonsguide. Internett. Thomson Speedtouch 585i v7 DataGuard Internett Thomson Speedtouch 585i v7 Installasjonsguide Oppkobling med analog telefon 1.Ta ledningen til telefonapparatet som går inn i veggkontakten ut og flytt den over til splitter boksen.

Detaljer

ASU-4. 4.1 Monitor inng.: 0= frakoblet, 1= kontakt, 2= temperatur, 3= kont. + temp. 3.

ASU-4. 4.1 Monitor inng.: 0= frakoblet, 1= kontakt, 2= temperatur, 3= kont. + temp. 3. ASU-4 Kode Beskrivelse Fabrikk Bruker innst. innstillinger ASU-4 1.00 Alarmsentral id.: (21 = ASU-4) 21 21 1.01 Software versjon nummer 2.08 2.08 1.13 Tidsforsinkelse på sirene ved alarm kontakt 10 sekund...

Detaljer

MIK 200 Anvendt signalbehandling, 2012. Lab. 5, brytere, lysdioder og logikk.

MIK 200 Anvendt signalbehandling, 2012. Lab. 5, brytere, lysdioder og logikk. Stavanger, 25. januar 2012 Det teknisknaturvitenskapelige fakultet MIK 200 Anvendt signalbehandling, 2012. Lab. 5, brytere, lysdioder og logikk. Vi skal i denne øvinga se litt på brytere, lysdioder og

Detaljer

DRIFTSOVERVÅKNING OG DRIFTSTYRING AV PUMPESTASJONER AVLØP.

DRIFTSOVERVÅKNING OG DRIFTSTYRING AV PUMPESTASJONER AVLØP. 04 Avløps \04 Avløps\05 \Kravspesifika Side 1 av 6 DRIFTSOVERVÅKNING OG DRIFTSTYRING AV PUMPESTASJONER AVLØP. DEFINISJON/AVGRENSNING: Hvis ikke annet er beskrevet i anbudsbeskrivelsen skal følgende kravspesifikasjon

Detaljer

PLS PC-øving nr. 2 Trening i programmering

PLS PC-øving nr. 2 Trening i programmering PLS PC-øving nr. 2 Trening i programmering Utgave: 1.02 Utarbeidet av: AH Dato: 03.10.12 Revidert av: AH Dato:020914 Tema i oppgaven Del 1 Med utgangspunkt i små programbiter i ladderdiagram, LD, skal

Detaljer

Manusnett - brukerveiledning for forfatter

Manusnett - brukerveiledning for forfatter Manusnett - brukerveiledning for forfatter Innholdsfortegnelse Innholdsfortegnelse...1 Innledning...2 Innlogging...3 Sende inn et nytt manus...5 Behandle vurderte manus...11 Rettelser i Word...15 Endring

Detaljer

2-Port transmisjons målinger for Anritsu RF og mikrobølge håndholdte instrumenter

2-Port transmisjons målinger for Anritsu RF og mikrobølge håndholdte instrumenter Anritsu brukertips : 2-Port transmisjons målinger for Anritsu RF og mikrobølge håndholdte instrumenter Opsjon 21: Dette brukertips dokumentet beskriver bruk av opsjon 21, med navn Transmission Measurement

Detaljer

MONTERINGSANVISNING TERMLIFT

MONTERINGSANVISNING TERMLIFT MONTERINGSANVISNING TERMLIFT MONTERINGSANVISNING Før du setter i gang. For montering, bruk og vedlikehold av denne motoren pakken på en sikker måte, er det flere forutsetninger som må tas. For sikkerheten

Detaljer

Du har sikkert allerede startet noen programmer ved å trykke på kontrollknappen. VINDUER = WINDOWS

Du har sikkert allerede startet noen programmer ved å trykke på kontrollknappen. VINDUER = WINDOWS Operativsystemet Kort historie Utviklingen av datamaskiner og dataprogrammer går fort. Den som har sitt første møte med dataverdenen i dette kurset, vil kanskje allikevel ha hørt om DOS (Disk Operating

Detaljer

Miniprosjektrapport. Prosjektoppgave i Styresystemer 2AEL13H våren 2015

Miniprosjektrapport. Prosjektoppgave i Styresystemer 2AEL13H våren 2015 Høgskolen i Sør-Trøndelag Miniprosjektrapport Prosjektoppgave i Styresystemer 2AEL13H våren 2015 Gruppe 6 Emil Hatletveit Kristian Strøm Terje Magnus Sørensen Stian Berg Dyrnes Snorre Vongraven Andreas

Detaljer

Simuleringsnotat. Prosjekt i emnet «Styresystemer og reguleringsteknikk» Gruppe 6. av Stian Venseth og Kim Joar Øverås

Simuleringsnotat. Prosjekt i emnet «Styresystemer og reguleringsteknikk» Gruppe 6. av Stian Venseth og Kim Joar Øverås av Stian Venseth og Kim Joar Øverås Prosjekt i emnet «Styresystemer og reguleringsteknikk» Gruppe 6 Sammendrag I dette arbeidsnotatet vil det bli komme frem hvordan vi har jobbet med modellering og simulering

Detaljer

RUTEPLANLEGGINGSSYSTEM BRUKERVEILEDNING

RUTEPLANLEGGINGSSYSTEM BRUKERVEILEDNING RUTEPLANLEGGINGSSYSTEM BRUKERVEILEDNING Prosjekt 18 Jørgen Mobekk Sørensen Morten Evje Tor Andreas Baakind Anders Gabrielsen Side 1 1 FORORD Dette dokumentet er brukerveiledningen, og skal være en veiledning

Detaljer

Bruksanvisning - hovedpunkter Floalarm K 4

Bruksanvisning - hovedpunkter Floalarm K 4 Bruksanvisning - hovedpunkter Floalarm K 4 Elektrisk tilkobling Bruk 1,5 mm 2 kabel. Monter 2A sikring før inngang til alarmenheten Koble innganger Bruk to-leder kabel 0,25 eller 0,5 mm 2 kabel Koble utganger

Detaljer

AVDELING FOR INGENIØRUTDANNING EKSAMENSOPPGAVE

AVDELING FOR INGENIØRUTDANNING EKSAMENSOPPGAVE AVDELING FOR INGENIØRUTDANNING ESAMENSOPPGAVE Emne: Gruppe(r): Eksamensoppgaven består av: ybernetikk I 2E Antall sider (inkl. forsiden): Emnekode: SO 318E Dato: Antall oppgaver: 6 Faglig veileder: Veslemøy

Detaljer

Komme i gang med Skoleportalen

Komme i gang med Skoleportalen Generell brukerveiledning for Elevportalen Denne elevportalen er best egnet i nettleseren Internett Explorer. Dersom du opplever kompatibilitets-problemer kan det skyldes at du bruker en annen nettleser.

Detaljer

Informasjon om din trådløse forbindelse

Informasjon om din trådløse forbindelse Informasjon om din trådløse forbindelse Vi har rullet ut en ny type hjemmesentral, som har innebygget router- og trådløsfunksjonalitet. I den forbindelse ønsker vi å dele litt erfaringer med deg som kunde

Detaljer

Prosessgrensesnitt. Generell informasjon. Versjon: 2.2

Prosessgrensesnitt. Generell informasjon. Versjon: 2.2 Generell informasjon Versjon: 2.2 Innholdsfortegnelse Innholdsfortegnelse... 2 1.0 Innledning... 3 1.1 Ordliste... 3 1.2 Kontaktpunkt... 3 2.0 Grensesnitt for anlegg... 3 2.1 OPC... 3 2.2 OPC Server...

Detaljer

VANNTETT KOMPAKTKORTLESER

VANNTETT KOMPAKTKORTLESER VANNTETT KOMPAKTKORTLESER W3-A BRUKERMANUAL 1 PROGRAMMERING 1. Tast inn systemkoden, (* 888888 # ved levering). Lampe lyser gult når man er i programmerings modus. 2. Velg ønsket meny. 3. Utfør programmering

Detaljer

ADDISJON FRA A TIL Å

ADDISJON FRA A TIL Å ADDISJON FRA A TIL Å VEILEDER FOR FORELDRE MED BARN I 5. 7. KLASSE EMNER Side 1 Innledning til addisjon 2 2 Grunnleggende om addisjon 3 3 Ulike tenkemåter 4 4 Hjelpemidler i addisjoner 9 4.1 Bruk av tegninger

Detaljer

WinMed3. Release Notes Allmenn Våren 2013. Release Notes Allmenn Våren 2013 Versjon 3.93.1059 Side 1

WinMed3. Release Notes Allmenn Våren 2013. Release Notes Allmenn Våren 2013 Versjon 3.93.1059 Side 1 WinMed3 Release Notes Allmenn Våren 2013 Release Notes Allmenn Våren 2013 Versjon 3.93.1059 Side 1 Innholdsfortegnelse Om dokumentet... 3 E-resept... 4 eportal... 5 Forbedret registrering og innlogging...

Detaljer

Brukermanual for kommuneansvarlig og testleder

Brukermanual for kommuneansvarlig og testleder Brukermanual for kommuneansvarlig og testleder Jegerprøveeksamen www.jegerproveeksamen.no Innholdsfortegnelse Kommuneansvarlig... 3 Testleder... 3 Opprette testsenter og testledere... 3 Teknisk godkjenning

Detaljer

MAI 2016 ALTIBOX WIFI PLUSS INSTALLASJONS- OG BRUKERVEILEDNING

MAI 2016 ALTIBOX WIFI PLUSS INSTALLASJONS- OG BRUKERVEILEDNING MAI 2016 ALTIBOX WIFI PLUSS INSTALLASJONS- OG BRUKERVEILEDNING 1 altibox.no/wifipluss 3 3 2-3 mm Innhold i esken Nettverkskabel Den medfølgende nettverkskabelen kan benyttes når det er kort avstand mellom

Detaljer

Brukerveiledning Tilkobling internett

Brukerveiledning Tilkobling internett JULI 2012 Brukerveiledning Tilkobling internett ALT DU TRENGER Å VITE OM BRUKEN AV INTERNETT 1 1 2 3 4 5 6 KOBLING TIL HJEMMESENTRAL OPPSETT AV TRÅDLØS ROUTER OG BRANNMUR I HJEMMESENTRALEN OPPKOBLING AV

Detaljer

KYBERNETIKKLABORATORIET. FAG: Dynamiske systemer DATO: 09.13 OPPG.NR.: DS3 MOTOR GENERATOROPPGAVE I

KYBERNETIKKLABORATORIET. FAG: Dynamiske systemer DATO: 09.13 OPPG.NR.: DS3 MOTOR GENERATOROPPGAVE I KYBERNETIKKLABORATORIET FAG: Dynamiske systemer DATO: 09.13 OPPG.NR.: DS3 MOTOR GENERATOROPPGAVE I Et reguleringssystem består av en svitsjstyrt (PWM) motor-generatorenhet og en mikrokontroller (MCU) som

Detaljer

Brukerveiledning Tilkobling internett

Brukerveiledning Tilkobling internett JANUAR 2013 Brukerveiledning Tilkobling internett ALT DU TRENGER Å VITE OM BRUKEN AV INTERNETT 1 1 2 3 4 5 6 KOBLING TIL HJEMMESENTRAL OPPSETT AV TRÅDLØS ROUTER OG BRANNMUR I HJEMMESENTRALEN OPPKOBLING

Detaljer

Utførelse av programmer, funksjoner og synlighet av variabler (Matl.)

Utførelse av programmer, funksjoner og synlighet av variabler (Matl.) Utførelse av programmer, funksjoner og synlighet av variabler (Matl.) Av Jo Skjermo (basert på Alf Inge Wang sin versjon om JSP). 1. Utførelse av kode i kommando/kalkulatormodus Et dataprogram består oftest

Detaljer

Analog til digital omformer

Analog til digital omformer A/D-omformer Julian Tobias Venstad ED-0 Analog til digital omformer (Engelsk: Analog to Digital Converter, ADC) Forside En rask innføring. Innholdsfortegnelse Forside 1 Innholdsfortegnelse 2 1. Introduksjon

Detaljer

Tillegg til bruksanvisning på modell PR-D3. Gjelder DAB modulen på modell DPR 45 Hvordan bruke din digitale mottaker DAB 1. Trykk på knappen for Standby for å slå på din digitale mottaker. Dersom den digitale

Detaljer

LINDHOLT DATA Bruksanvisning GT I700 Igangsetting og bruk. Per Lindholt 10/04/2012

LINDHOLT DATA Bruksanvisning GT I700 Igangsetting og bruk. Per Lindholt 10/04/2012 LINDHOLT DATA Bruksanvisning GT I700 Igangsetting og bruk Per Lindholt 10/04/2012 Forklaring på detaljer Indikatorlampene: Den venstre lyser rødt når tilkoplet PC Den midtre blinker gult når trådløst LAN

Detaljer

HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi

HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi C:\Per\Fag\Regtek\Eksamen\Eksamen12\LX2012desEDT212Tv6.wpd HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi Eksamensdato Fag 17. desember 2012 LØSNINGSFORSLAG (Ikke kvalitetssikra!) EDT212T Reguleringsteknikk

Detaljer

Turny bladvender Brukerveiledning

Turny bladvender Brukerveiledning Turny bladvender Brukerveiledning Generelt om Turny elektronisk bladvender...2 Tilkobling av Turny...2 Installasjon...3 Montering av bok/tidsskrift...4 Bruk av Turny...4 Aktiviser vippefunksjonen...5 Mulige

Detaljer

Brukermanual for nettpublisering. frivilligsentral.no

Brukermanual for nettpublisering. frivilligsentral.no Brukermanual for nettpublisering frivilligsentral.no Innholdsfortegnelse Introduksjon 3 1 - Innlogging 4 1.1 - Logge inn 4 1.1 - Logge ut 4 2 - Grensesnitt 5 2.1 - Menyfelt 5 2.2-3 - Opprette, lagre og

Detaljer

Nyheter i Office 2016 NYHETER, FUNKSJONER, FORKLARING

Nyheter i Office 2016 NYHETER, FUNKSJONER, FORKLARING Nyheter i Office 2016 NYHETER, FUNKSJONER, FORKLARING 1 Word 1.1 Gjør ting raskt med Fortell meg det Du vil legge merke til en tekstboks på båndet i Word 2016 med teksten Fortell meg hva du vil gjøre.

Detaljer

Fag ITD 33506 Bildebehandling og mønstergjenkjenning. mandag 28. oktober til fredag 15. november 2013

Fag ITD 33506 Bildebehandling og mønstergjenkjenning. mandag 28. oktober til fredag 15. november 2013 Høgskolen i Østfold Avdeling for informasjonsteknologi Fag ITD33506 Bildebehandling og mønstergjenkjenning PROSJEKTOPPGAVE Halden, Remmen 02.10.2013 Fil : Skrevet ut av : sl 02.10.2013 09:27:00 Antall

Detaljer

Guide for tilkobling til HIKT s Citrix løsning

Guide for tilkobling til HIKT s Citrix løsning Guide for tilkobling til HIKT s Citrix løsning Innhold Guide for tilkobling til HIKT s Citrix løsning... 1 Sjekk om Citrix er installert... 1 Tilgang til applikasjon fra kontoret... 2 Tilgang til applikasjon

Detaljer

INF1411 Obligatorisk oppgave nr. 4

INF1411 Obligatorisk oppgave nr. 4 INF1411 Obligatorisk oppgave nr. 4 Fyll inn navn på alle som leverer sammen, 2 per gruppe (1 eller 3 i unntakstilfeller): 1 2 3 Informasjon og orientering I denne oppgaven skal du lære litt om responsen

Detaljer

BRUKER- VEILEDNING ICAS. Hestia 915 Ver.4.4

BRUKER- VEILEDNING ICAS. Hestia 915 Ver.4.4 BRUKER- VEILEDNING Hestia 915 Ver.4.4 Hestia er navnet på en Gresk gudinne som symboliserer fred og velvære. Hestia er også navnet på dette systemet som vi mener vil bringe deg fred og velvære. H-915 rev.4.4

Detaljer

Veileder for opplasting av AKTIV sporlogg til PC

Veileder for opplasting av AKTIV sporlogg til PC Veileder for opplasting av AKTIV sporlogg til PC Det finnes i dag flere forskjellige GPS merker på markedet. Til fritidsbruk, og spesielt i redningstjenesten er det Garmin som benyttes mest. Det finnes

Detaljer

Hvordan bruke Helsegris for produsenter Innhold:

Hvordan bruke Helsegris for produsenter Innhold: Hvordan bruke Helsegris for produsenter Innhold: 1. Logge seg inn i Helsegris som produsent 2. Godta vilkårene for å bruke Helsegris 3. Oppdatere kontaktinformasjonen 4. Kommer alltid til meny/forsiden

Detaljer

Brukermanual for RadioLink base

Brukermanual for RadioLink base Brukermanual for RadioLink base For din sikkerhet, vennligst ta vare på denne manualen RadioLink-base for trådløs kommunikasjon- 230V MODELL: PXB-BASEwAC El nummer 6230202 RadioLINK basen sender radiosignal

Detaljer

Shellscripting I. Innhold

Shellscripting I. Innhold Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag Shellscripting I Tor Halsan 19.08.2010 Lærestoffet er utviklet for faget LN199D Scripting av Servere Resymé: Leksjonen er første innføring

Detaljer

Avansert oppsett. I denne manualen finner du informasjon og veiledning for avansert oppsett av din Jensen AirLink ruter.

Avansert oppsett. I denne manualen finner du informasjon og veiledning for avansert oppsett av din Jensen AirLink ruter. Avansert oppsett I denne manualen finner du informasjon og veiledning for avansert oppsett av din Jensen AirLink ruter. Denne manualen gjelder for følgende rutermodeller: AirLink 9150 v1, v, v og v4 AirLink

Detaljer

Brukermanual. Revisjon manual 01 Programversjon E

Brukermanual. Revisjon manual 01 Programversjon E Brukermanual PLS type XV-152 Revisjon manual 01 Programversjon E Innhold Hovedmeny... 2 Innlogging... 2 Parameterliste (variabler)... 3 Endring av parameter:... 3 Kjølevariabler... 3 Vaskevariabler...

Detaljer

MONTERINGS- OG BRUKSANVISNING FOR GARASJEPORTÅPNER

MONTERINGS- OG BRUKSANVISNING FOR GARASJEPORTÅPNER MONTERINGS- OG BRUKSANVISNING FOR GARASJEPORTÅPNER Vennligst les denne manualen nøye før du installerer Innhold A. Deleliste.. 2 B. Funksjoner.. 3 C. Montering.. 4 D. Fjernkontroll og design.. 7 E. Programmering..

Detaljer

Forprosjekt. Oppgavens tittel: Motorstyring Dato: 24.01.05. Jon Digernes Institutt/studieretning: Program for elektro og datateknikk

Forprosjekt. Oppgavens tittel: Motorstyring Dato: 24.01.05. Jon Digernes Institutt/studieretning: Program for elektro og datateknikk HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi Program for elektro-og datateknikk 7004 TRONDHEIM Forprosjekt Oppgavens tittel: Motorstyring Dato: 24.01.05 Project title: Gruppedeltakere: Sverre Hamre

Detaljer

Brukerveiledning Tilkobling internett ALT DU TRENGER Å VITE OM BRUKEN AV INTERNETT

Brukerveiledning Tilkobling internett ALT DU TRENGER Å VITE OM BRUKEN AV INTERNETT Brukerveiledning Tilkobling internett ALT DU TRENGER Å VITE OM BRUKEN AV INTERNETT 1 2 3 4 5 6 7 KOBLING TIL HJEMMESENTRAL OPPSETT AV TRÅDLØS ROUTER OG BRANNMUR I HJEMMESENTRALEN OPPKOBLING AV PC TIL INTERNETT

Detaljer

Testrapport. Studentevalueringssystem

Testrapport. Studentevalueringssystem Testrapport Studentevalueringssystem 1 Forord 1.2 Forord Dette prosjektet er et hovedprosjekt i data ved Høgskolen i Oslo, avdeling for ingeniørutdanning, og gjennomføres i samarbeid med Ingeniøravdeling

Detaljer

Inst. for elektrofag og fornybar energi

Inst. for elektrofag og fornybar energi Inst. for elektrofag og fornybar energi Fag TELE2001 Reguleringsteknikk Løsningsforslag, Tank 4 øving 1 Utarbeidet av Erlend Melbye 2015-09-07 Revidert sist Fredrik Dessen 2015-09-07 1 Oppstart av Tank

Detaljer

Posisjonsystemet FRA A TIL Å

Posisjonsystemet FRA A TIL Å Posisjonsystemet FRA A TIL Å VEILEDER FOR FORELDRE MED BARN I 5. 7. KLASSE EMNER Side 1 Innledning til posisjonsystemet P - 2 2 Grunnleggende om posisjonsystemet P - 2 3 Titallsystemet P - 3 4 Posisjonsystemet

Detaljer

HØGSKOLEN I SØR TRØNDELAG AVDELING FOR TEKNOLOGI. Program for data- og elektroteknikk

HØGSKOLEN I SØR TRØNDELAG AVDELING FOR TEKNOLOGI. Program for data- og elektroteknikk Entankprosjekt i faget Styresystemer 2EA våren 2015 Gruppe 4: Magnus A. Iversen Kristian Reitan Sinre Honelan Jon Are Kolsta Filip Robøle Myhre TANKPROSJEKT for prosjektoppgave i faget Styresystemer 2EA

Detaljer

Dagens tema. Dagens tema hentes fra kapittel 3 i Computer Organisation and Architecture. Sekvensiell logikk. Flip-flop er. Tellere og registre

Dagens tema. Dagens tema hentes fra kapittel 3 i Computer Organisation and Architecture. Sekvensiell logikk. Flip-flop er. Tellere og registre Dagens tema Dagens tema hentes fra kapittel 3 i Computer Organisation and Architecture Sekvensiell logikk Flip-flop er Tellere og registre Design av sekvensielle kretser (Tilstandsdiagram) 1/19 Sekvensiell

Detaljer

Brukerveiledning for landsmøtesystemet Easymeet

Brukerveiledning for landsmøtesystemet Easymeet Brukerveiledning for landsmøtesystemet Easymeet NNN landsmøte 2013 7. - 11. april - Oslo kongressenter Det 24. ordinære landsmøte SYNLIG TRYGG STERK Brukerveiledning for Landsmøtesystemet Easymeet Innhold

Detaljer

Eivind, ED0 Ingeniørfaglig yrkesutøvelse og arbeidsmetoder Individuell fremføring

Eivind, ED0 Ingeniørfaglig yrkesutøvelse og arbeidsmetoder Individuell fremføring Innledning og bakgrunn Denne teksten har som hensikt å forklare operasjonsforsterkerens virkemåte og fortelle om dens muligheter. Starten går ut på å fortelle kort om en del av operasjonsforsterkerens

Detaljer

AirLink 2200 FAQ. Side 2 Side 2 Side 3 Side 4 Side 6 Side 7 Side 8 Side 10 Side 11 Side 12 Side 13 Side 13 Side 14 Side 15 Side 16 Side 18

AirLink 2200 FAQ. Side 2 Side 2 Side 3 Side 4 Side 6 Side 7 Side 8 Side 10 Side 11 Side 12 Side 13 Side 13 Side 14 Side 15 Side 16 Side 18 AirLink 2200 FAQ Side 2 Side 2 Side Side Side 6 Side 7 Side 8 Side 10 Side 11 Side 12 Side 1 Side 1 Side 1 Side 15 Side 16 Side 18 Hva er AL2200AC? Hva er dual-band? Hva er forskjellen på AP, Repeater

Detaljer

Laget av Atle Hybertsen Høst 2017

Laget av Atle Hybertsen Høst 2017 101 Innholdsfortegnelse 1- Laste ned programmet 2- Oppstart 3- Betydninger basic 4- Basic program og funksjoner 5- Forklaringer av ord og forkortelser 6- Analog inn og ut oppsett 7- Betydninger avansert

Detaljer

Elektriske data Nominell spenning AC/DC 24 V Nominell frekvens

Elektriske data Nominell spenning AC/DC 24 V Nominell frekvens Teknisk datablad NVKC24A-SZ-TPC Modulerende aktuator for 2-veis og 3-veis seteventiler Skyvekraft 1000 N Nominell spenning AC/DC 24 V Regulering: modulerende DC (0) V...10 V Nominelt slag 20 mm Gangtid

Detaljer

Inst. for elektrofag og fornybar energi

Inst. for elektrofag og fornybar energi Inst. for elektrofag og fornybar energi Utarbeidet: PHv Fag TELE2001 Reguleringsteknikk Revidert sist Fredrik Dessen Tank 4 øving 2 2015-09-21 I denne oppgaven skal du bli mer kjent med simuleringsprogrammet

Detaljer

Straffespark Introduksjon Scratch Lærerveiledning

Straffespark Introduksjon Scratch Lærerveiledning Straffespark Introduksjon Scratch Lærerveiledning Introduksjon Vi skal lage et enkelt fotballspill, hvor du skal prøve å score på så mange straffespark som mulig. Steg 1: Katten og fotballbanen Vi begynner

Detaljer

Forprosjektrapport. Gruppe 3 2EA 04.03.2015

Forprosjektrapport. Gruppe 3 2EA 04.03.2015 2015 Forprosjektrapport Gruppe 3 2EA 04.03.2015 Innhold 1 Sammendrag... 1 2 Innledning... 2 2.1 Forord... 2 2.2 Oppgaven... 3 2 Prosjektorganisering... 4 2.1 Oppdragsgiver... 4 2.2 Veileder fra HiST...

Detaljer

FLEXIT CS2000 112626N-02 2012-09. Hurtigguide CS2000 Automatikk

FLEXIT CS2000 112626N-02 2012-09. Hurtigguide CS2000 Automatikk FLEXIT CS2000 112626N-02 2012-09 Hurtigguide CS2000 Automatikk Innhold 1. HMI...3 2. Innstillinger...3 2.1. Innledning...3 2.2. Velg språk...3 2.3. Still inn tid/dato...3 2.4. Pålogging...3 3. Juster børverdier...4

Detaljer

Elektriske data Nominell spenning AC/DC 24 V Nominell frekvens

Elektriske data Nominell spenning AC/DC 24 V Nominell frekvens Teknisk datablad NVK24A-SZ-TPC Modulerende aktuator for 2-veis og 3-veis seteventiler Skyvekraft 1000 N Nominell spenning AC/DC 24 V Regulering: modulerende DC (0) V...10 V Nominelt slag 20 mm Levetid

Detaljer

RiskManager Avvikshåndtering Kurshefte for behandlere

RiskManager Avvikshåndtering Kurshefte for behandlere RiskManager Avvikshåndtering Kurshefte 1 BEHANDLE AVVIK... 4 1.1 Behandler mottar et nytt avvik...4 1.2 Egne notater i avviket...6 1.3 Godkjenn for behandling...7 1.4 Mulighet for overstyring/endring av

Detaljer

BRUKERVEILEDNING PROSTEMODUL FOR PROST OG PROSTESEKRETÆR OPPSETT AV PROSTIET

BRUKERVEILEDNING PROSTEMODUL FOR PROST OG PROSTESEKRETÆR OPPSETT AV PROSTIET 1 BRUKERVEILEDNING PROSTEMODUL Oppdatert 2. mai 2011 Innledning Denne veiledningen er laget til hjelp for prost/prostesekretær og evt. superbruker i prostiet. Les først veiledningen som er laget for prestene,

Detaljer

BlindShell bruksanvisning

BlindShell bruksanvisning Dato: 1.6.2015 BlindShell bruksanvisning BlindShell er en smarttelefon for blinde og svaksynte brukere. Enheten betjenes med enkle bevegelseskommandoer, talemeldinger leses opp ved hjelp av kunstig tale

Detaljer

HALVLEDER-DIODER Karakteristikker Målinger og simuleringer

HALVLEDER-DIODER Karakteristikker Målinger og simuleringer Kurs: FYS1210 Elektronikk med prosjektoppgaver Gruppe: Gruppe-dag: Oppgave: LABORATORIEØVELSE NR 3 Omhandler: HALVLEDER-DIODER Karakteristikker Målinger og simuleringer Revidert utgave, desember 2014 (T.

Detaljer

IP-telefoni Brukerveiledning

IP-telefoni Brukerveiledning IP-telefoni Brukerveiledning 1 2 Kobling IP-telefoni fra Altibox - ett av markedets mest moderne av analoge telefoner til hjemmesentralen 3 Telefonitjenester 2 1 IP-telefoni * fra Altibox - ett av markedets

Detaljer

Reguleringsutstyr. Kapittel 3. 3.1 Prosessregulatorer

Reguleringsutstyr. Kapittel 3. 3.1 Prosessregulatorer Kapittel 3 Reguleringsutstyr Dette underkapitlet gir en oversikt over forskjellig reguleringsutstyr i form av kommersielle regulatorer og (prosess)styringssystemer og liknende, det vil si det utstyret

Detaljer

Prosjektoppgave i faget Styresystemer 2EA våren 2015

Prosjektoppgave i faget Styresystemer 2EA våren 2015 Avdeling for teknologi Program for data- og elektroteknikk 7004 Trondheim Prosjektoppgave i faget Styresystemer 2EA våren 2015 TCP/IP Ethernet (skolens) Trådløst nettverk PC HMI PC2 PC3 Twisted pair SKAP

Detaljer