Kravdokument type: Kontrollsystem for invertert pendel Fag: Dato: Versjon: 1.0 Gruppe nr: Bestiller: Rune Winther. Systemering2 Filformat:

Like dokumenter
Dato: Versjon: Designdokument type: Kontrollsystem for invertert pendel Fag: Bestiller: 1.0 Gruppe nr: 2 Filnavn: Systemering2 Filformat:

Dato: Versjon: Designdokument type: Kontrollsystem for invertert pendel Fag: Bestiller: 1.0 Gruppe nr: 2 Filnavn: Systemering2 Filformat:

Humanware. Trekker Breeze versjon

Team2 Requirements & Design Document Værsystem

Brukerveiledning for ArkN4

Universell Utforming-App Bruksanvisning. Innhold. Versjon 1.5,

Hurtigveiledning for «PLEXTALK Pocket» online spiller

BRUKERMANUAL WR100 1

Installasjonsdokument

Hurtigveiledning for «PLEXTALK Linio Pocket» online spiller

Konfigurasjon av inrx og Megalink

Håndbok for ML2000 Huskelister

Brukermanual for TrackGrabber

Installasjon av talemeldinger

Veileder. Digitalisering og stedfesting av innfallsporter i QGIS

VH Service Software. Dette dokumentet forteller deg i korte trekk hvilke funksjoner denne programvaren har, basert på følgende menyvalg:

Installasjonsveiledning Lenovo ThinkPad Edge. ADCom Data - Molde

Manual for innlegging av standard sideinnhold og nyheter via «backend»

Slå på eller av webdiskusjoner

WISEflow brukerveiledning for deltaker

Litt om dette dokumentet

Slik lager du et web-område bestående av flere sammenhengende websider i. Frontpage Laget av Magnus Nohr Høgskolen i Østfold

Primus Brukerveiledning for masseimport av bilder. Primus 5.6.5

Brukermanual for Biomest-programmet Versjon 1.77 mai 2008

SOFTWARE REQUIREMENT & DESIGN DOCUMENT

Nyheter i Office 2016 NYHETER, FUNKSJONER, FORKLARING

Oversikt over flervalgstester på Ifi

Communicate SymWriter: R1 Lage en tavle

Kommuneforlaget Avvikshåndtering Administratordokumentasjon Versjon Table of Contents

Brukermanual. Statens Vegvesen USR500085

Divar - Archive Player. Driftshåndbok

MONTERINGS- OG BRUKSANVISNING FOR GARASJEPORTÅPNER

Requirements & Design Document

Bytte til Access 2010

BDA Proff på prosjekt!

Sikkerhet i Pindena Påmeldingssystem

Kjenner du alle funksjonene på tastaturet?

Installerings og driftshåndbok

Humanware Companion.

Tak. Kapittel 4 - Tak... 3

IN1010 V18, Obligatorisk oppgave 5

Scan Secure GTS PAS

Byggeweb Prosjekt Brukerveiledning Arbeidsområdet

Hockey Scores. Brukermanual. Morgendagens resultattavle. brukervennlig og innovativ. Version Dokument #1001-N

Bruksanvisning for Diabetesdagboka

4. Dynamisk skjemaer (GUI)

NORSK Bruksanvisning SCHRÖDER POS400T

INNHOLDSFORTEGNELSE.

Operativsystemer og nettverk

Følg instruksjonene på Epson-nettstedet for nedlasting og installering.

Bytte til PowerPoint 2010

Test av USB IO-enhet. Regulering og HMI.

MLLeder. Ove Megalink. v.3.1

Velkommen til Brother's Keeper 6 for Windows!

VERSA. Brukermanual kortversjon

Opprette firma. Innhold

Bruk av kildeavskrifter som er merket med grønn kule

System Dokumentasjon. Team2. Høgskolen i Sørøst-Norge Fakultet for teknologi, naturvitenskap og maritime fag Institutt for elektro, IT og kybernetikk

Eye-Pal Solo. Brukerveiledning. ProVista AS Tromøyveien Arendal Tlf Faks

F-Secure Mobile Security for Windows Mobile

Innhold. Bruker manual BlueprintEasy PDF tagger. versjon: P a g e

Kapitel 1: Komme i gang...3

ENC ENKEL AKSE og KLIPPE LENGDE KONTROLLER for PLATESAKSER

Brødrene Dahls Assistent BDA

Presentasjon 2 Gruppe 2 Oppgave 2 Oppdragsgiver 2. Sammendrag 3. Dagens situasjon 3 ServiceNow 3 Coop 3. Mål og rammebetingelser 3 Mål 3 Teknologier 4

FAQ for Eee Pad TF201

Hurtigveiledning Exacqvision

Elhub - Milepæl 2 Uttrekk av grunndata til DAM

Wallbox Pulsar Bruker manual

Biorun v. 2.0 Bruksanvisning Programvare

Innhold. Bruker manual BlueprintEasy PDF tagger. versjon: P a g e

SIMPLIFYSCAN. Sharps intelligente skanning

PDA CAM BRUKSANVISNING

Administrering av SafariSøk

MUVI ATOM micro DV Produkt Innhold

Kjøre Wordpress på OSX

Instruksjonsbok DeLaval OF40

NorthIce videobriller

Brukermanual med troubleshooting guide HLS. mtrack Player. Rev Manual for mtrack Rev Page 1 of 12

Innhold. Bruker manual BlueprintEasy PDF tagger. versjon: P a g e

Huldt & Lillevik Ansattportal Ansattportal. Versjon

ISBITMASKIN INSTRUKSJONSBOK

Prevas Connector 4 Prevas WHM 4

UNIVA as, Tromøyveien 26, N-4841 Arendal, Norway Phone: , web:

Tips! OMRON ELECTRONICS NORWAY AS

Installasjonsveiledning av Faktura Z

F-Secure Anti-Virus for Mac 2015

Elsmart Brukerveiledning Nettmelding for Installatører

Bytte til OneNote 2010

Innhold. NOX Light. 1. Reset hull 2. Micro SD Kort plass 3. Mikrofon 4. USB inngang 5. På/Av Record Button 6. Nox Light kamera

1. Installasjon og lydtilpasning

GSM Mini. Sikom AS og Android: Oversikt: Kompatibilitet: Installasjon: Kostnader: Konfigurasjon og bruk:...

BRUKERMANUAL. App for Beha smartovn

Bruk av GPS i overvåkingsarbeidet

Brukerhåndbok RUBY. Bojo as. Akersbakken 12, 0172 OSLO. Utgave 0311

Hvordan komme i gang med MUSITs applikasjoner

Eksport /Import person

Dato oppdatert: DISPENSER

D2-IC0842a Automatisk oppsamling av vinterdriftstdata i ELRAPP

Transkript:

dokument type: Kontrollsystem for invertert pendel Fag: Systemering2 Filformat: Versjon: 1.0 Gruppe nr: 2 Filnavn: Dato: 20.02.2002 Bestiller: Rune Winther Word 2000 dokument1.doc Gruppemedlemmer: Navn: Signatur: Dato: Christian Raspotnig Anders Bakken Petter Larsen Eva Sandved Therese Røsholdt

Innholdsfortegnelse: 1 Innledning side: 3 1.1 Systemets brukere side: 3 1.2 Beskrivelse av systemet side: 3 1.3 Forandringer fra siste versjon side: 3 2 Systemets arkitektur side: 3 3 Ordliste, definisjoner og forkortelser side: 4 3.1 Ordliste side: 4 3.2 Definisjoner side: 5 3.2.1 Parametere side: 5 3.2.2 Tilstander side: 6 3.2.3 Stimuli side: 7 3.3 Forkortelser side: 8 4 side: 9 4.1 Systemkrav side: 9 4.2 Grensesnittkrav side: 25 5 Sporingstabeller side: 29 6 Datamodeller side: 30 6.1 Tilstandsmodell side: 31 6.2 Dataflytmodell side: 32 7 Rutiner for endring av krav side: 33 8 Endringslogg side: 33 9 Vedlegg side: 33 Vedlegg 1 Oversikt over krav side: 34 2

1 Innledning 1.1 Systemets brukere Systemets brukere er hovedfagsstudenter og ansatte innenfor Informatikk og Automatisering ved Høgskolen i Østfold. 1.2 Beskrivelse av systemet Systemet skal være en læringsmodell for å kjøre kritiske sanntidssystemer, og består av en vogn på skinner som skal balansere en invertert pendel. Input kommer fra sensorer som leser av posisjonene på vogn og pendel. Systemet prosesserer input og styrer vognen på dette grunnlaget. Systemet skal ha mulighet for manipulering av input/output for å simulere kritiske situasjoner. Systemet skal ha et grensesnitt som gir en grafisk presentasjon av modellens bevegelser. 1.3 Forandringer fra siste versjon Ingen, dette er første versjon av dokumentet 2 Systemets arkitektur Sensor til pendel -Gir oss vinkelen til pendel Sensor til vogn -Gir oss vognposisjon, cm fra en av kantene Vogn Input - Vanlig gang i systemet er å ta imot input fra sensorer og sende ut styringssignal til vognen - Andre funksjoner til systemet Styringssignal Aktuatorer - DC-motor, den vil være koblet til en servo forsterker o o o Lagre input Vise input Manipulere input Servoforsterker, egen strømforsterker 3

3 Ordliste, definisjoner og forkortelser 3.1 Ordliste Avslutte en kjøring Defaultverdier Kjøredata Kjøreparametere Kjøreverdier Kjøring Kontrollérbar pendel Nødstoppkommando Pendelsystemet Plassere vogn Posisjonsdata Sluttkommando Startkommando Styreverdi Systemet Utgangspunkt Bringer pendelsystemet fra tilstand balanse til tilstand pendel ned Verdier som blir brukt for alle brukerparametere, bortsett fra balansepunkt, hvis brukeren ikke har valgt sine egne verdier Består av kjøreverdier, alle kjøringens balansepunkter og kjøringens posisjonsdata De parameterne som må settes for å konfigurere en kjøring. Består av alle definerte parametere, bortsett fra balansepunkt. Kan settes av brukeren eller det kan benyttes defaultverdier Brukerens valgte verdier og/eller defaultverdier for alle kjøreparametere, bortsett fra balansepunkt. Angir kjøringens konfigurasjon Perioden fra bruker gir startkommando, via sjekk av pendelsystemet, kjøring av vognen til startpunktet, oppsving, balansering, flytting og evt. manipulering, til pendelen er nede og vognen er tilbake på startpunktet Se 2.2.3 Stimuli, Pendel kontrollérbar Kommando gitt av brukeren for å stoppe vognen umiddelbart Består av pendel, vogn, sensorer og skinner Med å plassere vognen menes at vognens midtpunkt skal være på det angitte punktet, f.eks startpunkt Input som består av vognens og pendelens posisjon Kommando gitt av brukeren for å avslutte en kjøring Kommando gitt av brukeren for å starte en kjøring Output for å styre vognen Består av PC med installert PV og pendelsystem Den siden av skinnen som motoren sitter på 4

3.2 Definisjoner 3.2.1 Parametere Avlesningsfrekvens Balanseintervall Balansepunkt Filnavn Lagringsfrekvens Lagringssted Lovlig område Skinnelengde Startpunkt Styrefrekvens Tidsfrist Tidsramme Angir hvor ofte posisjonsdata skal avleses av PV Angir hvor stort slingringsmonn vognen har på skinnen når den balanserer pendelen Det punktet på skinnen som balanseintervallet forholder seg til Navnet på filen hvor kjøredata skal lagres Angir hvor ofte posisjonsdata skal lagres Angir hvor kjøredata skal lagres Det området på skinnen som vognen har lov til å bevege seg innenfor under en kjøring Lengden på skinnen i pendelsystemet Et punkt på skinnen hvor vognen skal plasseres når den starter å svinge opp pendelen Angir hvor ofte vognen skal styres Angir hvor lang tid en kjøring har til rådighet for å få pendelen kontrollérbar Angir hvor lenge kjøringen skal pågå 5

3.2.2 Tilstander Avslutt Balanse Behandle data Flytt Kjør PV Klar Null Nødstopp Parameter Pendel ned Pendel opp Sjekk Slå av Start Validering I denne tilstanden går vognen tilbake til startpunktet. Brukeren kan nå slå av PV I denne tilstanden beveger vognen seg for å holde pendelen i balanse innenfor balanseintervallet. Lagrer evt. posisjonsdata og styreverdi I denne tilstanden får brukeren muligheten til å se på lagrede kjøredata, slette lagrede kjøredata, skrive ut graf(er) og eksportere kjøredata I denne tilstanden flyttes vognen til et nytt balansepunkt med pendelen kontrollérbar. Lagrer nytt balansepunkt. Lagrer evt. posisjonsdata og styreverdi I denne tilstanden er PV slått på og brukeren kan velge å kjøre pendelsystemet, behandle lagrede kjøredata eller slå av PV I denne tilstanden lagres de valgte bruker- og defaultverdiene I denne tilstanden står vognen på utgangspunktet, strømmen til pendelsystemet er slått av og PV er stanset I denne tilstanden foretas en umiddelbar stopp av vognen I denne tilstanden velger brukeren sine egne kjøreverdier eller defaultverdier I denne tilstanden tas pendelen kontrollert ned og vognen stoppes. Lagrer evt. posisjonsdata og styreverdi I denne tilstanden starter pendelen å svinge. Systemet vil forsøke å få pendelen kontrollérbar så lenge tidsfristen ikke er gått ut. Lagrer evt. posisjonsdata og styreverdi I denne tilstanden sjekkes pendelsystemet for feil. Brukeren får beskjed hvis det er oppstått feil I denne tilstanden går vognen til utgangspunktet og stopper der, før PV lukkes I denne tilstanden går vognen til startpunktet og stanser der. I denne tilstanden sjekkes det om brukerverdiene er kjørbare 6

3.2.3 Stimuli Avbryter Gir nytt balansepunkt Gir nødstoppkommando Gir sluttkommado Gir startkommando Kjøreverdier ikke OK Kjøreverdier OK Pendel kontrollérbar Pendelsystem ikke OK Pendelsystem OK Sender kjøreverdier til validering Slår av PV Slår på PV Strøm slått av Tidsfrist utgått Tidsramme utgått Velger avslutt behandle data Velger behandle data Velger kjør pendelsystem Velger ny kjøring nye kjøreverdier Velger ny kjøring samme kjøreverdier Vogn på balansepunkt Brukeren ombestemmer seg, vil ikke foreta en kjøring likevel Brukeren bestemmer nytt balansepunkt som vognen skal forholde seg til Brukeren aktiverer nødstoppkommando Brukeren aktiverer sluttkommando Brukeren aktiverer startkommando Valgte kjøreverdier har blitt validert, men ikke godkjent av PV. Går tilbake til parametertilstanden, slik at brukeren kan sette nye kjørerverdier Valgte kjøreverdier har blitt validert og godkjent av PV Pendelen er kontrollérbar når den er i en slik posisjon/har en slik hastighet at systemet kan klare å få den i balanse PV har oppdaget en feil under sjekk av pendelsystemet. Går tilbake til kjør PV tilstand PV har godkjent sjekk av pendelsystemet Brukeren sender kjøreverdiene til validering Brukeren slår av PV Brukeren slår på PV Vognen står stille på utgangspunktet, strømmen til pendelsystemet er slått av Pendelen er ikke blitt kontrollérbar innenfor tidsfristen Tidsrammen for en kjøring har gått ut Brukeren velger å avslutte behandlingen av lagrede kjøredata Brukeren velger å behandle lagrede kjøredata Brukeren har slått på strømmen til pendelsystemet og velger så å foreta en kjøring Brukeren ønsker å starte en ny kjøring hvor han velger nye kjøreverdier Brukeren velger å starte en ny kjøring med samme kjøreverdier som forrige kjøring Vognen er blitt flyttet til balansepunktet 7

Vogn på startpunkt Vogn står stille Vogn utenfor lovlig område Vognen står stille på startpunktet og systemet er klart for å svinge opp pendelen Pendelen er nede og vognen står stille på skinnen Vognen har beveget seg utenfor det lovlige området 3.3 Forkortelser GUI PV Graphical User Interface / Grafisk brukergrensesnitt Programvare for systemet 8

4 4.1 Systemkrav Dette er krav som sier noe om hva systemet har som oppgave, og hvordan systemet skal oppføre seg. S-1 PV kjøres på PC For å gjøre det enkelt å starte PV Relasjon: Tilstander Annet 2.3 Forkortelser S-2 Når PV startes skal brukeren gis valg mellom å kjøre pendelsystemet, behandle data eller slå av PV For at brukeren skal kunne foreta ulike valg Relasjon: Tilstander Kjør PV S-42, S-46. S-47, S-48 Annet 3.1 Ordliste. 3.3 Forkortelser S-3 Brukeren skal kunne konfigurere alle kjøreparametere For at brukeren skal kunne variere kjøringene Relasjon: Tilstander Parameter S-11, S-13 Annet 3.1 Ordliste. 9

S-4 PV skal inneholde defaultverdier for alle kjøreparametere For at brukeren ikke skal behøve å sette egne kjøreverdier Relasjon: Tilstander Parameter S-5, S-6, S-7, S-8, S-9, S-12, S-14, S-15, S-17 Annet 3.1 Ordliste. 3.3 Forkortelser S-5 Defaultverdi for skinnelengde skal være 2 meter Relasjon: Tilstander Annet Foreslått av Rune Winther ønsker å få plass til systemet på sitt kontor 3.1 Ordliste. 3.2.1 Parametere Rune Winther S-6 Defaultverdi for lovlig område skal være skinnelengde minus vognens lengde, fordelt likt på hver side av skinnens midtpunkt For at vognen ikke skal kunne gå utenfor skinnen, og for å utnytte skinnens lengde maksimalt Relasjon: Tilstander S-5 Annet 3.1 Ordliste. 3.2.1 Parametere 10

S-7 Defaultverdi for avlesnings-, styre- og lagringsfrekvens skal være?? ganger pr sek For at systemet skal få posisjonsdata og styreverdier tilstrekkelig ofte til å kunne klare å balansere pendelen. Lagringsfrekvensen skal være den samme som avlesnings-/styrefrekvensen for å kunne ta vare på alle posisjonsdata og styreverdier Relasjon: Tilstander Annet 3.1 Ordliste. 3.2.1 Parametere S-8 Defaultverdi for startpunkt skal være midt i det lovlige området Et naturlig startpunkt Relasjon: Tilstander Annet 3.1 Ordliste. 3.2.1 Parametere S-9 Defaultverdi for balanseintervallet skal være 20 cm Relasjon: Tilstander Annet Foreslått av Bestemt av Rune Winther 3.1 Ordliste. 3.2.1 Parametere Rune Winther 11

S-10 Balanseintervallet skal fordele seg likt på hver side av balansepunktet Det er naturlig at lengden er den samme på begge sider av balansepunktet Relasjon: Tilstander S-9 Annet 3.2.1 Parametere Foreslått av Rune Winther S-11 Tidsfristen skal angis i minutter Fordi det ikke vil være naturlig å sette tidsfristen til over en time Relasjon: Tilstander Annet 3.2.1 Parametere S-12 Defaultverdi for tidsfristen skal være 3 minutter Dette for at det ikke skal ta for lang tid før systemet gir opp å få pendelen kontrollérbar Relasjon: Tilstander S-11 Annet 3.1 Ordliste. 3.2.1 Parametere 12

S-13 Tidsrammen skal angis i timer og minutter Dette for å gi brukeren mulighet til å variere lengden på kjøringene Relasjon: Tilstander Annet 3.2.1 Parametere S-14 Defaultverdi for tidsrammen skal være 0 timer, 15 minutter Ønsket av Rune Winther Relasjon: Tilstander S-13 Annet 3.1 Ordliste. 3.2.1 Parametere S-15 Defaultverdi for lagringssted skal være mappe med kjøringens startdato Dette for lett å kunne finne tilbake til lagrede kjøredata, og for å ha en organisert struktur Relasjon: Tilstander Annet 3.1 Ordliste. 3.2.1 Parametere 13

S-16 Mapper med kjøringenes startdatoer skal lagres i en predefinert mappe, kalt pendel, i parent working directory PV skal ikke inneholde avanserte filfunksjoner Relasjon: Tilstander Annet 3.1 Ordliste S-17 Defaultverdi for filnavn skal være kjøringens startklokkeslett, og filen legges i mappen med kjøringens startdato For lett å kunne finne tilbake til lagrede kjøredata, og for å ha en organisert struktur Relasjon: Tilstander S-15 Annet 3.1 Ordliste. 3.2.1 Parametere S-18 PV skal på brukerens kommando sjekke om de valgte kjøreverdiene er kjørbare (Denne må spesifiseres og deles opp) For at systemet ikke skal kjøre hvis kjøreverdiene vil forårsake problemer og/eller skade Relasjon: Tilstander Validering S-3, S-5, S-6, S-7, S-8, S-9, S-12, S-14, S-15, S-17 Annet 3.1 Ordliste. 3.2.3 Stimuli. 3.3 Forkortelser 14

S-19 Hvis kjøreverdiene ikke er kjørbare skal brukeren måtte sette dem på nytt Pendelsystemet må ikke kjøres med kjøreverdier som kan forårsake problemer og/eller skade Relasjon: Tilstander Validering, parameter S-3, S-5, S-6, S-7, S-8, S-9, S-12, S-14, S-15, S-17, S-18 Annet 3.1 Ordliste. 3.2.3 Stimuli S-20 Hvis kjøreverdiene ikke er kjørbare skal brukeren gis beskjed om hvilke kjøreverdier som må gjøres om For å gjøre det enklere for brukeren Relasjon: Tilstander S-3, S-5, S-6, S-7, S-8, S-9, S-12, S-14, S-15, S-17, S-18, S-19 Annet 3.1 Ordliste. S-21 Hvis kjøreverdiene er kjørbare skal brukeren gis valg om enten å starte en kjøring eller å avbryte Pendelsystemet må ikke kjøres med kjøreverdier som kan forårsake problemer og/eller skade Relasjon: Tilstander Klar S-18 Annet 3.1 Ordliste. 3.2.3 Stimuli 15

S-22 Brukeren skal kunne velge om kjøredata skal lagres Det vil ikke alltid være aktuelt å lagre kjøringene Relasjon: Tilstander Parameter S-7, S-23 Annet 3.1 Ordliste S-23 Alle kjøredata skal kunne lagres Dette fordi man skal kunne hente frem informasjonen på et senere tidspunkt Relasjon: Tilstander Parameter S-7, S-24, G-6, G-8 Annet 3.1 Ordliste Foreslått av Rune Winther Analyseres S-24 Kjøredata skal lagres i ASCII format Relasjon: Tilstander Annet Foreslått av Dette fordi man skal kunne eksportere data til andre applikasjoner 3.1 Ordliste Rune Winther Analyseres 16

S-25 PV skal på startkommando utføre en sjekk av pendelsystemet For å sjekke pendelsystemet for feil og problemer Relasjon: Tilstander Klar, sjekk G-1 Annet 3.1 Ordliste. 3.2.3 Stimuli. 3.3 Forkortelser Foreslått av Rune Winther S-26 Hvis sjekk av pendelsystemet er OK skal vognen plasseres på startpunktet For å kunne starte oppsving av pendel Relasjon: Tilstander Sjekk, start S-25 Annet 3.1 Ordliste. 3.2.1 Parametere. 3.2.3 Stimuli S-27 Hvis sjekk av pendelsystemet ikke er OK skal vognen plasseres på utgangspunktet og brukeren gis beskjed om at pendelsystemet ikke er OK For å ikke kunne kjøre, og ha mulighet til å rette opp feil/problemer i pendelsystemet før kjøring Relasjon: Tilstander Sjekk, kjør PV S-25 Annet 3.1 Ordliste. 3.2.3 Stimuli 17

S-28 PV skal fra startpunktet kunne svinge opp pendelen fra loddrett ned posisjon til en slik posisjon at pendelen er kontrollérbar Dette for å slippe å sette opp pendelen manuelt Relasjon: Tilstander Pendel opp S-26 Annet 3.1 Ordliste. 3.2.1 Parametere. 3.2.3 Stimuli. 3.3 Forkortelser Foreslått av Rune Winther S-29 Hvis pendelen ikke er kontrollérbar innen tidsfristen, skal system gå til pendel ned Dette for at pendelsystemet ikke skal bruke for lang tid på å få pendelen kontrollérbar Relasjon: Tilstander Pendel opp, pendel ned S-12 Annet 3.1 Ordliste. 3.2.1 Parametere. 3.2.3 Stimuli Foreslått av Rune Winther S-30 Brukeren skal kunne endre balansepunktet mens pendelen balanseres Ønsket av Rune W Relasjon: Tilstander Balanse, flytt G-9 Annet 3.1 Ordliste. 3.2.1 Parametere. 3.2.3 Stimuli Foreslått av Rune Winther 18

S-31 Når balansepunktet endres skal vognen flyttes til det nye balansepunktet Ønsket funksjon Relasjon: Tilstander Flytt S-30, G-9 Annet 3.2.1 Parametere. 3.2.3 Stimuli S-32 PV skal kunne avlese posisjonsdata og sende styreverdier under en kjøring For å kunne kontrollere pendelen, lagre og vise posisjonsdata Relasjon: Tilstander Sjekk, start, pendel opp, flytt, balanse, pendel ned, avslutt, slå av, nødstopp S-7, G-2, G-3, G-4, G-5 Annet 3.1 Ordliste. 3.3 Forkortelser Foreslått av Rune Winther S-33 PV skal sørge for at vognen ikke kjører utenfor lovlig område bortsett fra når pendelsystemet sjekkes Dette for å unngå ulykker og skader Relasjon: Tilstander Sjekk, balanse S-6, S-25 Annet 3.1 Ordliste. 3.2.1 Parametere. 3.3 Forkortelser 19

S-34 Hvis vognen, mens den balanserer pendelen, kommer utenfor lovlig område, skal pendelsystemet gå til nødstopp Dette for å unngå ulykker og skader Relasjon: Tilstander Balanse, nødstopp S-6, S-33 Annet 3.1 Ordliste. 3.2.1 Parametere S-35 Når tidsrammen er utløpt går systemet til pendel ned For at kjøringen ikke skal fortsette Relasjon: Tilstander Balanse, pendel ned S-14 Annet 3.1 Ordliste. 3.2.1 Parametere. 3.2.3 Stimuli S-36 Systemet kan gå fra balanse til pendel ned ved bruk av sluttkommando Brukeren skal kunne avslutte en kjøring når som helst Relasjon: Tilstander Balanse, pendel ned G-7 Annet 3.1 Ordliste. 3.2.3 Stimuli 20

S-37 Når systemet er i pendel ned skal pendelen tas til loddrett ned posisjon på en kontrollert måte, og vognen stoppes For å unngå ødelagt utstyr og skader Relasjon: Tilstander Pendel ned Annet 3.1 Ordliste S-38 Nødstoppkommandoen skal kunne gis når som helst under en kjøring og fra slå av Brukeren skal kunne nødstoppe i alle tilstander hvor vognen beveger seg Relasjon: Tilstander Sjekk, start, pendel opp, flytt, balanse, pendel ned, avslutt, slå av G-10 Annet 3.1 Ordliste. 3.2.3 Stimuli S-39 Når systemet er i nødstopp kan man gå til avslutt ved bruk av sluttkommando For å kunne foreta en ny kjøring Relasjon: Tilstander Nødstopp, avslutt Annet 3.1 Ordliste. 3.2.3 Stimuli 21

S-40 I avslutt skal vognen plasseres på startpunktet For å gjøre pendelsystemet klar til ny kjøring Relasjon: Tilstander Avslutt S-3, S-8 Annet 3.2.1 Parametere S-41 Når systemet er i avslutt, skal PV spørre brukeren om samme kjøreverdier skal brukes på nytt, eller om brukeren vil forandre disse For å kunne foreta en ny kjøring med samme eller nye kjøreverdier Relasjon: Tilstander Avslutt S-3, S-4 Annet 3.1 Ordliste. 3.3 Forkortelser. 3.2.3 Stimuli S-42 Når brukeren slår av PV skal vognen plasseres på utgangspunktet For å unngå ødelagt utstyr og for ryddighet Relasjon: Tilstander Avslutt, Slå av Annet 3.1 Ordliste. 3.3 Forkortelser. 3.2.3 Stimuli 22

S-43 For å gå til null må strømmen til pendelsystemet være slått av For at det ikke skal være strøm til pendelsystemet når PV er slått av Relasjon: Tilstander Nullv Annet 3.1 Ordliste. 3.2.3 Stimuli S-44 For at brukeren skal kunne velge å kjøre pendelsystemet må strømmen til pendelsystemet være slått på Fordi pendelsystemet ikke kan kjøre uten strøm Relasjon: Tilstander Annet 3.1 Ordliste. 3.2.3 Stimuli S-45 Det skal være mulig å manipulere posisjonsdata og styreverdier (dette presiseres senere) Relasjon: Tilstander Annet Foreslått av For å kunne simulere feil på systemet 3.1 Ordliste Rune Winther 23

S-46 PV skal kunne hente kjøredata For å kunne benytte informasjonen i ulike sammenhenger Relasjon: Tilstander Behandle data Annet 3.1 Ordliste. 3.3 Forkortelser. 3.2.3 Stimuli Foreslått av Rune Winther S-47 PV skal kunne slette kjøredata For at lagringsmediet skal holdes ryddig og ikke skal gå fullt Relasjon: Tilstander Behandle data Annet 3.1 Ordliste. 3.3 Forkortelser. 3.2.3 Stimuli S-48 Grafene skal kunne skrives ut på printer Dette for å kunne analysere data Relasjon: Tilstander Behandle data Annet 24

4.2 Grensesnittkrav Dette er krav som sier noe om hvordan grensesnittet til systemet skal se ut. G-1 Startkommando skal gis via en knapp på GUI For å gjøre det mulig å starte en kjøring Relasjon: Tilstander Klar Annet 3.1 Ordliste. 3.3 Forkortelser G-2 GUI en skal inkludere en graf som skal vise vognens posisjon i forhold til tid Det skal være en grafisk fremstilling av kjørehistorikken Relasjon: Tilstander Pendel opp, flytt, balanse, nødstopp, pendel ned, avslutt S-48, G-4, G-5, G-6, G7 Annet 3.3 Forkortelser Foreslått av Rune Winther Analyseres G-3 GUI en skal inkludere en graf som skal vise pendelens posisjon i forhold til tid Det skal være en grafisk fremstilling av kjørehistorikken Relasjon: Tilstander Pendel opp, flytt, balanse, nødstopp, pendel ned, avslutt S-48, G-4, G-5, G-6, G7 Annet 3.3 Forkortelser Foreslått av Rune Winther Analyseres 25

G-4 Grafene på GUI skal tegnes i sanntid For at brukeren skal få umiddelbar informasjon om vognen og pendelens posisjon Relasjon: Tilstander Pendel opp, flytt, balanse, nødstopp, pendel ned, avslutt Foreslått av Annet 3.3 Forkortelser Rune Winther G-5 Grafene skal vise det siste minuttet av kjøringen Det siste minuttet av kjøringen er mest interessant Relasjon: Tilstander Pendel opp, flytt, balanse, nødstopp, pendel ned, avslutt Annet 3.1 Ordliste Foreslått av Rune Winther Analyseres G-6 Grafene skal kunne vise posisjonsdata fra lagrede filer Dette for å kunne se tidligere kjøringer Relasjon: Tilstander Behandle data G-8 Annet 3.1 Ordliste. 3.3 Forkortelser Foreslått av Rune Winther Analyseres 26

G-7 Sluttkommando gis via en knapp på GUI For at brukeren skal ha mulighet til å stoppe en kjøring når han vil Relasjon: Tilstander Balanse, nødstopp Annet 3.1 Ordliste. 3.3 Forkortelser G-8 GUI en skal vise kjøreverdier både ved kjøring av pendelsystemet og visning av lagrede posisjonsdata For å få lett tilgang til informasjon Relasjon: Tilstander Pendel opp, flytt, balanse, nødstopp, pendel ned, avslutt, behandle data Annet 3.1 Ordliste. 3.3 Forkortelser G-9 Balansepunktet skal tegnes inn på graf i sanntid For å gi kontinuerlig informasjon om balansepunktet Relasjon: Tilstander Flytt, balanse Annet 3.3 Forkortelser 27

G-10 Nødstopp skal kunne aktiveres gjennom en knapp på GUI Brukeren skal kunne nødstoppe i alle tilstander hvor vognen beveger seg Relasjon: Tilstander Sjekk, start, pendel opp, flytt, balanse, pendel ned, avslutt, slå av Annet 3.1 Ordliste. 3.3 Forkortelser 28

5 Sporingstabeller Relatert til Relatert til S-1 S-48 S-2 S-42, S-46, S-47, S-48 S-3 S-11, S-13 S-4 S-5, S-6, S-7, S-8, S-9, S-12, G-1 S-14, S-15, S-17 S-5 G-2 S-48, G-4, G-5, G-6, G7 S-6 S-5 G-3 S-48, G-4, G-5, G-6, G7 S-7 G-4 S-8 G-5 S-9 G-6 S-10 S-9 G-7 S-11 G-8 G-8 S-12 S-11 G-9 S-13 G-10 S-14 S-13 S-15 S-16 S-17 S-15 S-18 S-3, S-5, S-6, S-7, S-8, S-9, S-12, S-14, S-15, S-17 S-19 S-3, S-5, S-6, S-7, S-8, S-9, S-12, S-14, S-15, S-17, S-18 S-20 S-3, S-5, S-6, S-7, S-8, S-9, S-12, S-14, S-15, S-17, S-18, S-19 S-21 S-18 S-22 S-7, S-23 S-23 S-7, S-24, G-6, G-8 S-24 S-25 G-1 S-26 S-25 S-27 S-25 S-28 S-26 S-29 S-12 S-30 G-9 S-31 S-30, G-9 S-32 S-7, G-2, G-3, G-4, G-5 S-33 S-6, S-25 S-34 S-6, S-33 S-35 S-14 S-36 G-7 S-37 S-38 G-10 S-39 S-40 S-3, S-8 S-41 S-3, S-4 S-42 S-43 S-44 S-45 S-46 S-47 29

6 Datamodeller 6.1 Tilstandsmodell Notasjon: Navn på stimuli som forårsaker at systemet går fra en tilstand til en annen. Hvis stimuli kommer fra bruker starter navnet med et verb (se 3.2.3 Stimuli) Navn på tilstand Kort beskrivelse av hva systemet gjør i denne tilstanden (se 2.2.2 Tilstander) KLAR - Lagrer kjøreverdier - Gir bruker valg mellom å foreta en kjøring eller å avbryte Gir startkommando Indikerer mulige veier fra en tilstand til en annen Gang fra tilstand til tilstand uten feilsituasjoner av noe slag Gang ved feiltilstander Gang ved nødsituasjoner 30

KLAR - Lagrer kjøreverdier - Gir bruker valg mellom å foreta en kjøring eller å avbryte Avbryter KJØR PV VALIDERING - Sjekker om kjøreverdiene er kjørbare - Kjører programvare - Bruker gis valg mellom å kjøre pendelsystemet, behandle data eller slå av PV Kjøreverdier OK Sender kjøreverdier til evaluering PARAMETER - Bruker gis valg mellom å sette egne kjøreverdier eller å benytte defaultverdier Velger kjør pendelsystem Gir startkommando Kjøreverdier ikke OK Velger behandle data Slår av PV Slår på PV SJEKK - Sjekker pendelsystem for feil - Gir bruker beskjed hvis feil - Leser av posisjonsdata og sender styreverdi Pendelsystem ikke OK BEHANDLE DATA - Bruker gis valg mellom å se på lagrede kjøredata, slette kjøredata, skrive ut graf, eksportere kjøredata eller avslutte behandle data NULL Velger avslutt behandle data Pendelsystem OK Gir nødstoppkommando Strøm slått av Gir nødstoppkommando START - Plasserer vogn på startpunkt - Leser av posisjonsdata og sender styreverdi NØDSTOPP - Stopper vogn - Leser av og evt. lagrer posisjonsdata SLÅ AV FLYTT - Flytter vogn til nytt balansepunkt - Lagrer nytt balansepunkt - Leser av og evt. lagrer posisjonsdata - Sender styreverdi Velger ny kjøring samme kjøreverdier Velger ny kjøring nye kjøreverdier Gir nødstoppkommando Gir nødstoppkommando - Plasserer vogn på utgangspunkt - Leser av posisjonsdata og sender styreverdi - Sjekker om strøm til pendelsystem er på Gir sluttkommando Vogn på startpunkt Slår av PV Gir nødstoppkommando Pendel kontrollérbar kontrollérbar Vogn på balansepunkt Gir nytt balansepunkt -Vogn utenfor lovlig område -Gir nødstoppkommando PENDEL OPP - Starter å svinge pendel - Avgjør om pendel er kontrollérbar - Leser av og evt. lagrer posisjonsdata - Sender styreverdi BALANSE - Beveger vogn innenfor balanseintervall med pendel i balanse - Leser av og evt. lagrer posisjonsdata - Sender styreverdi - Posisjonsdata eller styreverdi kan bli manipulert utenfra Gir nødstoppkommando PENDEL NED - Tar pendel kontrollert ned - Stopper vogn - Leser av og evt. lagrer posisjonsdata - Sender styreverdi Gir nødstoppkommando AVSLUTT Tidsfrist utgått -Tidsramme utgått -Gir sluttkommando - Plasserer vogn på startpunkt - Leser av og evt. lagrer posisjonsdata - Sender styreverdi Vogn står stille

6.2 Dataflytmodell Notasjon: Terminator: Bruker av systemet Input output: I forbindelse med pilen er det en tekst som beskriver hva inputen/outputen består av. Transformasjon: Også kalt metode. Her behandles dataene fra input og sendes videre som output til en annen metode eller til bruker. Et typisk trekk for en metode er at de kan bestå av flere metoder, spesielt gjelder dette hvis metoden behandler mer enn en dataopplysning (parameter) fra input, har input fra, eller output til, flere steder (andre metoder eller terminatorer). Databaser: Dette kan være interne databaser i selve systemet eller eksterne databaser, i dette tilfelle en database på internett. 32

Dataflytmodell for invertert pendel. Startstatus: Programvare slått på, strøm til pendelsystem slått på. Brukeren har valgt å foreta en kjøring av pendelsystemet og lagring av denne. Bruker Kjøreverdier og startkommando Ikke godkjente kjøreverdier - balansepunkt - Nødstoppkommando Manipulasjonsverdier Valider parametere - Sluttkommando Lagrings medium Godkjente kjøreverdier Posisjonsdata og balansepunkt Foreta kjøring Styreverdi Manipulerte posisjonsdata Manipuler posisjonsdata eller styreverdi Rå posisjonsdata Rå styreverdi Omform posisjonsdata og styreverdier Manipulert styreverdi Omformede posisjonsdata I/O kort Fra pendelsystem Til pendelsystem 33

7 Rutiner for endring av krav Alle i gruppen er med på endringsmøter. Rutinene består av: Analysere endringen 1. Er endringen nødvendig? 2. Er endringen forståelig? 3. Vil den foreslåtte endringen løse problemet? 4. Hvilke innvirkninger får endringen på andre krav? 5. Lønner endringen seg med hensyn til tid og økonomi? La bestiller vurdere endringsforslaget Oppdatere kravskjema og sporingstabeller 8 Endringslogg 9 Vedlegg Vedlegg 1 Kortversjon av krav S-1 PV kjøres på PC S-2 Når PV startes skal brukeren gis valg mellom å kjøre pendelsystemet, behandle kjøredata eller slå av PV S-3 Brukeren skal kunne konfigurere alle kjøreparametere S-4 PV skal inneholde defaultverdier for alle kjøreparametere S-5 Defaultverdi for skinnelengde skal være 2 meter S-6 Defaultverdi for lovlig område skal være skinnelengde minus vognens lengde, fordelt likt på hver side av skinnens midtpunkt S-7 Defaultverdi for avlesnings-, styre- og lagringsfrekvens skal være?? ganger pr sek S-8 Defaultverdi for startpunkt skal være midt i det lovlige området S-9 Defaultverdi for balanseintervallet skal være 20 cm S-10 Balanseintervallet skal fordele seg likt på hver side av balansepunktet S-11 Tidsfrist skal angis i minutter S-12 Defaultverdi for tidsfrist skal være 3 minutter S-13 Tidsrammen skal angis i timer og minutter S-14 Defaultverdi for tidsrammen skal være 0 timer, 15 minutter S-15 Defaultverdi for lagringssted skal være mappe med kjøringens startdato S-16 Mapper med kjøringenes startdatoer skal lagres i en predefinert mappe, kalt 34

pendel, i parent working directory S-17 Defaultverdi for filnavn skal være kjøringens startklokkeslett, og filen legges i mappen med kjøringens startdato S-18 PV skal på brukerens kommando sjekke om de valgte kjøreverdiene er kjørbare S-19 Hvis kjøreverdiene ikke er kjørbare skal brukeren måtte sette dem på nytt S-20 Hvis kjøreverdiene ikke er kjørbare skal brukeren gis beskjed om hvilke kjøreverdier som må gjøres om S-21 Hvis kjøreverdiene er kjørbare skal brukeren gis valg om enten å starte en kjøring eller å avbryte S-22 Brukeren skal kunne velge om kjøredata skal lagres S-23 Alle kjøredata skal kunne lagres S-24 Kjøredata skal lagres i ASCII format S-25 PV skal på startkommando utføre en sjekk av pendelsystemet S-26 Hvis sjekk av pendelsystemet er OK skal vognen plasseres på startpunktet S-27 Hvis sjekk av pendelsystemet ikke er OK skal vognen plasseres på utgangspunktet og brukeren gis beskjed om at pendelsystemet ikke er OK S-28 PV skal fra startpunktet kunne svinge opp pendelen fra loddrett ned posisjon til en slik posisjon at pendelen er kontrollérbar S-29 Hvis pendelen ikke er kontrollérbar innen tidsfristen, skal system gå til tilstand pendel ned S-30 Brukeren skal kunne endre balansepunkt mens pendelen balanseres S-31 Når balansepunktet endres skal vognen flyttes til det nye balansepunktet S-32 PV skal kunne avlese posisjonsdata og sende styreverdier under en kjøring S-33 PV skal sørge for at vognen ikke kjører utenfor lovlig område bortsett fra når pendelsystemet sjekkes S-34 Hvis vognen, mens den balanserer pendelen, kommer utenfor lovlig område, skal pendelsystemet gå til nødstopp S-35 Når tidsrammen er utløpt går systemet til tilstand pendel ned S-36 Systemet kan gå fra balanse til pendel ned ved bruk av sluttkommando S-37 Når systemet er i tilstand pendel ned skal pendelen tas til loddrett ned posisjon på en kontrollert måte, og vognen stoppes S-38 Nødstoppkommandoen skal kunne gis når som helst under en kjøring og fra tilstand slå av 35

S-39 Når systemet er i tilstand nødstopp kan man gå til tilstand avslutt ved bruk av sluttkommando S-40 I tilstand avslutt skal vognen plasseres på startpunktet S-41 Når systemet er i tilstand avslutt, skal PV spørre brukeren om samme kjøreverdier skal brukes på nytt, eller om brukeren vil forandre disse S-42 Når brukeren slår av PV skal vognen plasseres på utgangspunktet S-43 For å gå til null må strømmen til pendelsystemet være slått av S-44 For at brukeren skal kunne velge å kjøre pendelsystemet må strømmen til pendelsystemet være slått på S-45 Det skal være mulig å manipulere posisjonsdata og styreverdier (dette presiseres senere) S-46 PV skal kunne hente kjøredata S-47 PV skal kunne slette kjøredata S-48 Grafene skal kunne skrives ut på printer G-1 Kjøringen skal startes via en knapp på GUI G-2 GUI en skal inkludere en graf som skal vise vognens posisjon i forhold til tid G-3 GUI en skal inkludere en graf som skal vise pendelens posisjon i forhold til tid G-4 Grafene på GUI skal tegnes i sanntid G-5 Grafene skal vise det siste minuttet av kjøringen G-6 Grafene skal kunne vise posisjonsdata fra lagrede filer G-7 Kjøringen skal kunne stoppes via en knapp på GUI G-8 GUI en skal vise kjøreverdier både ved kjøring av pendelsystemet og visning av lagrede posisjonsdata G-9 Balansepunktet skal tegnes inn på graf i sanntid G-10 Nødstopp skal kunne aktiveres gjennom en knapp på GUI 36