Matlab script - placering af kran

Relaterede dokumenter
Vektorer og lineær regression

Vektorer og lineær regression. Peter Harremoës Niels Brock

Matematik A STX december 2016 vejl. løsning Gratis anvendelse - læs betingelser!

VUC Vestsjælland Syd, Slagelse Nr. 2 Institution: Projekt Vejanlæg. Matematik B-niveau Differentialregning

Hvis man ønsker mere udfordring, kan man springe de første 10 opgaver over. , og et punkt er givet ved: P (2, 1).

Retningslinjer for bedømmelsen. Georg Mohr-Konkurrencen runde

Matematik A, STX. Vejledende eksamensopgaver

Hvis man ønsker mere udfordring, kan man springe de første 10 opgaver over. 1, og et punkt er givet ved: (2, 1)

Afstande, skæringer og vinkler i rummet

VUC Vestsjælland Syd, Slagelse Nr. 1 Institution: Projekt Trigonometri

Afstande, skæringer og vinkler i rummet

Matematik A-niveau 22. maj 2015 Delprøve 2. Løst af Anders Jørgensen og Saeid Jafari

Trekants- beregning for hf

Opgave 1 - Lineær Funktioner. Opgave 2 - Funktioner. Opgave 3 - Tredjegradsligning

Vi begynder med at repetere noget af det tidligere gennemgåede som vi skal bruge.

Geometri, (E-opgaver 9d)

Produkter af vektorer i 2 dimensioner. Peter Harremoës Niels Brock

Projekt 1.4 Tagrendeproblemet en instruktiv øvelse i modellering med IT.

5: Trigonometri Den del af matematik, der beskæftiger sig med figurer og deres egenskaber, kaldes for geometri. Selve

Vinkelrette linjer. Frank Villa. 4. november 2014

Komplekse tal. Mikkel Stouby Petersen 27. februar 2013

Kalkulus 1 - Opgaver. Anne Ryelund, Anders Friis og Mads Friis. 20. januar 2015

Matematiske hjælpemidler. Koordinater. 2.1 De mange bredder.

Vejledende besvarelse på august 2009-sættet 2. december 2009

i x-aksens retning, så fås ). Forskriften for g fås altså ved i forskriften for f at udskifte alle forekomster af x med x x 0

Mircobit Kursus Lektion 4 (Du skal her vælge Lets Code Og herefter Block Editor.)

Kapitel 3 Lineære sammenhænge

ØVEHÆFTE FOR MATEMATIK C GEOMETRI

3D-grafik Karsten Juul

Potensfunktioner samt proportional og omvent proportional. for hf Karsten Juul

Højere Teknisk Eksamen maj Matematik A. Forberedelsesmateriale til 5 timers skriftlig prøve NY ORDNING. Undervisningsministeriet

Eksamensspørgsmål: Trekantberegning

Trigonometri. Store konstruktioner. Måling af højde

Kompendium i faget. Matematik. Tømrerafdelingen. 2. Hovedforløb. Y = ax 2 + bx + c. (x,y) Svendborg Erhvervsskole Tømrerafdelingen Niels Mark Aagaard

Arbejdet på kuglens massemidtpunkt, langs x-aksen, er lig med den resulterende kraft gange strækningen:

Additionsformlerne. Frank Villa. 19. august 2012

En sumformel eller to - om interferens

Retningslinjer for bedømmelsen. Georg Mohr-Konkurrencen runde

ØVEHÆFTE FOR MATEMATIK C GEOMETRI

Det er en af de hyppigst forekommende udregninger i den elementære talbehandling at beregne gennemsnit eller middeltal af en række tal.

Værktøjskasse til analytisk Geometri

I kapitlet arbejdes med følgende centrale matematiske objekter og begreber:

1 Geometri & trigonometri

Værktøjskasse til analytisk Geometri

Mike Vandal Auerbach. Geometri i planen. # b. # a. # a # b.

Kapitel 4. Trigonometri. Matematik C (må anvendes på Ørestad Gymnasium) Kapitel 4

Storcirkelsejlads. Nogle definitioner. Sejlads langs breddeparallel

MATEMATIK C. Videooversigt

Projekt 1.5: Tagrendeproblemet en modelleringsøvelse!

RENTES REGNING SIMULATION LANDMÅLING MÅLSCORE I HÅNDBO . K R I S T I A N S E N KUGLE G Y L D E N D A L

Løsninger til matematik C december 2015 Februar 2017

Affine transformationer/afbildninger

Matematik for stx C-niveau

MATEMATIK A-NIVEAU 2g

Matematik A. Studentereksamen

Matematik A. Højere handelseksamen. 1. Delprøve, uden hjælpemidler. Mandag den 16. august kl

Funktioner. 3. del Karsten Juul

Anvendelse af matematik til konkrete beregninger

Tilhørende: Robert Nielsen, 8b. Geometribog. Indeholdende de vigtigste og mest basale begreber i den geometriske verden.

Afstandsformlen og Cirklens Ligning

Symbolsprog og Variabelsammenhænge

Funktioner. 1. del Karsten Juul

Dette miniprojekt omhandler en anvendelse af Lineær Algebra til computergrafik og planeters omløbsbaner.

Lektion 1. Tal. Ligninger og uligheder. Funktioner. Trigonometriske funktioner. Grænseværdi for en funktion. Kontinuerte funktioner.

EKSAMENSOPGAVELØSNINGER CALCULUS 2 (2005) JANUAR 2006 AARHUS UNIVERSITET.. Beregn den retningsafledede D u f(0, 0).

User s guide til cosinus og sinusrelationen

Bedste rette linje ved mindste kvadraters metode

Matematik A August 2016 Delprøve 1

Afstandsformlerne i Rummet

Analytisk plangeometri 1

Matematik projekt. Klasse: Sh-mab05. Fag: Matematik B. Projekt: Trigonometri

TREKANTER. Indledning. Typer af trekanter. Side 1 af 7. (Der har været tre kursister om at skrive denne projektrapport)

Undervisningsbeskrivelse

Løsninger til eksamensopgaver på A-niveau 2017

Analytisk geometri. Et simpelt eksempel på dette er en ret linje. Som bekendt kan en ret linje skrives på formen

Gratisprogrammet 27. september 2011

Vejledning i brug af Gym-pakken til Maple

Undersøgelser af trekanter

Undervisningsbeskrivelse

Løsning til øvelse 7.8, side 272: Københavns Politigård

Matematik A-niveau STX 24. maj 2016 Delprøve 2 VUC Vestsjælland Syd.

Vejledende løsning. Ib Michelsen. hfmac123

Beregninger Microsoft Excel 2010 Grundforløb Indhold

Vektorer og rumgeometri med. TI-Interactive!

Praktiske Maple Ting. - Hvis du skal indsætte kvadratroden, et integrale, lambda, osv. Så skriv eks. Sqrt, int, eller lambda, tryk escape og du kan

Løsninger til eksamensopgaver på A-niveau maj maj 2014: Delprøven UDEN hjælpemidler

Pythagoras Ensvinklede trekanter Trigonometri. Helle Fjord Morten Graae Kim Lorentzen Kristine Møller-Nielsen

Matematik A. Studentereksamen

Besvarelser til Calculus Ordinær eksamen - Forår - 6. Juni 2016

20 = 2x + 2y. V (x, y) = 5xy. V (x) = 50x 5x 2.

Matematikprojekt Belysning

Matematik c - eksamen

Besvarelser til Calculus og Lineær Algebra Globale Forretningssystemer Eksamen - 8. Juni 2015

Hvad er matematik? C, i-bog ISBN

Matematik A. 5 timers skriftlig prøve. Højere Teknisk Eksamen i Grønland maj 2009 GLT091-MAA. Undervisningsministeriet

Matematik A Terminsprøve Digital prøve med adgang til internettet Torsdag den 21. marts 2013 kl indd 1 20/03/12 07.

13 cm. Tværsnit af kernens ben: 30 mm 30 mm

Repetition til eksamen. fra Thisted Gymnasium

Transkript:

Matlab script - placering af kran 1 Til at beregne den ideelle placering af kranen hos MSK, er der gjort brug af et matlab script. Igennem dette kapitel vil opbygningen af dette script blive gennemgået. Bemærk at alle længdemål er opgivet i centimeter, og vinkler i radianer. Til at beskrive kranens rækkevide er der gjort brug af 3 længdemål, hvilket er R1, R2 og R3. Disse mål dækker over henholdsvis det første og andet led i kranen, samt den samlede rækkevide for denne. Herudover tages der højde for den minimale vinkel imellem de første og andet led i kranen. Denne vinkel, benævnt som Qmin, begrænser dermed hvor tæt på søjlen kranen er i stand til at nå. Til at illustrerer den ideelle placeringen af kranen, gives der point til kranen for hvert ønsket punkt kranen er i stand til at nå, når den er placeret i et givet punkt. Dette gøres ved at lægge en matrice over køkkenarealet, hvorefter pointene for hvert felt i matricen udregnes. For at gøre denne matrice, benævnt i scriptet med navnet v, overskuelig for læseren, dækker hvert felt i matricen over et areal på 1 [cm]. Dette skyldes at matricens felter kun kan benævnes med heltal, og af denne grund benyttes måleenheden centimeter, eftersom decimeter blev antaget til at være for unøjagtig. Størrelsen for det udregnede område hos MSK er givet ved x- og y-koordinaterne, benævnt med henholdsvis xmax og ymax i scriptet. Til at beskrive et punkts koordinater, vægtning samt vigtighed er der benyttet 5 variabler. P x(n.m) og P y(n.m) beskriver henholdsvis punktets x- og y-koordinat, hvorimod P y(n.m) beskriver hvor mange point kranen vil få i en given position, hvis den er i stand til at nå dette punkt. Bemærk at disse punkter benytter variablerne n og m, hvor n blot beskriver punktets nummer, hvilket kun beskriver hvilken rækkefølge scriptet checker punktet. Variablen m beskriver derimod punktets prioritet. Dette skyldes at nogle opgaver kan udføres ved forskellige positioner og af denne grund vil kranen blive tildelt point, omendt færre end for det ønskede punkt, hvis den er i stand til at nå sekundere punkter. Denne metode er brugt, frem for blot at tildele alle punkter en vis mængde point, eftersom kranen ikke vil være i stand til at gavne mere ved at kunne nå flere punkter ved en station, 1

2 KAPITEL 1. MATLAB SCRIPT - PLACERING AF KRAN udover det ønskede. Denne metode giver dermed flest point til den position, hvor kranen er i stand til at gavne flest forskellige stationer frem for at kunne nå ethvert punkt ved en enkelt station. Udover ønskede punkter, er der også punkter der skal undgås hos MSK. Disse punkter er søjler, hvilket forhindre kranens bevægelser. Disse er benævnt med 4 forskellige variabler. Ox(i) og Oy(i) beskriver henholdsvis forhindringens x- og y-koordinat. Or(i) beskriver derimod forhindringens radius. Igen beskriver i blot i hvilken rækkefølge scriptet skal checke om forhindringerne stå i vejen for kranen. Til at beregne hvor mange point et givent felt i matricen er i stand til at opnå, gøres der brug af en række løkker. De to første løkker i dette script checker først hver eneste x-koordinat og den anden løkke checker dermed hvert eneste y-koordinat for hvert x- koordinat. Bemærk at der for x-koordinat løkken er tilført udregningen vist i formel 1.1. Hvad denne formel gør, er at den først sletter alle viste resultater, hvorefter den viser procentvis hvor langt scriptet er nået i udregningerne. Dette er gjort, eftersom scriptet er meget tidskrævende og dermed vise at scriptet stadig beregner frem for blot at være gået i stå. Denne beregning er derfor også lagt ud i den forreste lykke, for at minimere antallet af gange den udføres, eftersom det reelt set er en unødig beregning der kun er til for at hjælpe brugeren. clc x/nmax (1.1) Herefter er der to løkker for variablerne n og m. Formålet for disse er at checke hvert eneste punkt, både første-, andet- og tredjeprioritets koordinaterne. Bemærk at der før m løkken gøres brug af formel 1.2. Dette benyttes i m løkken, ved at checke om denne variabel er 0 før der regnes videre på prioriteringerne. Hvad dette gør er, at checke om et højere prioriteret koordinatsæt for punktet er opnået, i hvilket tilfælde de lavere prioriterede koordinatsæt ignoreres og dermed sænker antallet af beregninger der skal udføres. mmax = 0 (1.2) I starten af løkken for m checkes der ligeledes om hvorvidt et punkt giver point at opnå. Dette er igen for at sænke antallet af beregninger eftersom alle punkter tjekkes for første, andet og tredje prioriteter, hvor flere af punkterne kun består af et første prioritet. Herefter checkes der om et punkt ligger inden for kranens rækkevidde, og punkter der ligger uden for denne ignoreres. Til at udregne hvordan kranen er i stand til at opnå et punkt, måles først afstanden imellem kranens placering, punkt C på Fig: 1.1, og det ønskede punkt, punkt P på Fig: 1.1. Ud fra de nu 3 kendte længer R1, R2 og CP kan vinklerne Q1 og Q3 udregnes ud fra cosinusrelationen, vist i formel 1.3.

3 Figur 1.1: Vinkler og længder til udregning af kranens konfiguration ( l 2 v c = arccos a + lb 2 ) l2 c 2 l a l b (1.3) Ud fra disse udregninger, checkes vinklen Q3 for at sikre at denne ikke er mindre end hvad der er muligt for kranen. Denne mindste vinkel er, som tidligere nævnt, givet med konstanten Qmin. Der benyttes den absolutte værdi af begge vinkler, for at sikre begge vinkler regnes positivt med uret. Eftersom kranen er toledet, er den i stand til at opnå det ønskede punkt ved hjælp af to forskellige konfigurationer. Til at udregne disse, er det nødvendigt at kende kranens orientering i forhold til det globale koordinatsystem. Til dette benyttes en enhedsvektor der ligger vandret i det globale koordinatsystem. Det er dermed muligt at udregne vinklen imellem denne vektor, og vektoren CP. Bemærk at formlen der benyttes til at udregne denne vinkel, formel 1.4, kun er i stand til at udregne cosinus værdien, og er dermed ikke i stand til at skelne imellem om vinklen går med og imod uret. v = arccos ( ) A B A B (1.4) Af denne grund gøres der brug af sign funktionen til at checke hvilken retning vektoren CP peger. Eftersom den anden vektor altid ligger vandret med det globale koordinatsystem betyder dette at en negativ y-koordinat for vektoren CP vil betyde at vinklen er med uret, hvorimod en positiv er med uret. Bemærk at sign funktionen giver resultatet 0, hvis y-koordinatet også er 0. Af denne grund checkes der om dette er sandt, i hvilket tilfælde sign funktionen ikke vil blive benyttet da formlen ellers vil være ude af stand til at skelne imellem 0 og 180. Ved at kende vinklerne imellem ledende i kranen, samt kranens orientering i det globale koordinatsystem, kan de to mulige endepunkter for det første led, A og B, udregnes, se Fig: 1.1. Bemærk at alle vektorene er tredimensionelle, men har ingen udstrækning i z-aksen. Dette har først betydning senere i scriptet hvor der skal udregnes afstande imellem vektorer, men er ellers uden betydning.

4 KAPITEL 1. MATLAB SCRIPT - PLACERING AF KRAN Før løkken der checker forhindringerne i køkkenet, gøres der brug af formlerne 1.5 og 1.6. Hvad disse variabler benyttes til, er indikere om det er muligt at opnå det ønskede punkt, P, ved at gå igennem henholdsvis punkt A eller B. Af denne grund nulstilles variablerne LimitA og LimitB før forhindringerne checkes for hvert enkelt punkt. LimitA = 0 LimitB = 0 (1.5) (1.6) I løkken for variablen i opstilles først vektorer imellem forhindringen O og punkterne C,A,B og P. Herefter udregnes afstanden imellem forhindringen og alle leddene i kranen, ved hjælp af formel 1.7, der udregner den korteste afstand imellem et punkt og en linje. AB AC d C,AB = AB AB AC sin(θ) = AB = AC sin(θ) (1.7) Bemærk at formlen af denne grund ikke er tilstrækkeligt, eftersom den kun er i stand til at udregne afstanden til centerlinjen af leddene i kranen, og ikke selve leddet, se Fig: 1.2 Af denne grund gøres der brug af Pythagoras til at udregne hvor tæt på kranen punktet reelt set er. Ud fra afstanden imellem endepunkterne for det enkelte led i kranen samt forhindringen, kan disse opdeles i to retvinklede trekanter ved hjælp af den vinkelrette afstand, fundet i formel 1.7. Bemærk at hvis forhindringen, illustreret på Fig: 1.3, ligger imellem endepunkterne af kranen, vil længden af vektorene AD og BD være lig med længden for vektoren AB. Er forhindringen derimod uden for disse punkter, vil den samlede længde dermed blive AB + 2 BD eller AB + 2 AD, for situationen illustreret på Fig: 1.3. Herefter checkes begge led for kranen, i begge situationer, om forhindringen blokere denne. Dette gøres ved først at checke om den vinkelrette afstand imellem forhindringen, se formel 1.7, og leddets centerlinje er mindre end forhindringens radius. Hvis dette er tilfældet checkes herefter om længden, udregnet ved hjælp af Pythagoras, er mindre end leddets samlede længde plus den dobbelte radius af forhindringen, illustreret Figur 1.2: Illustration af begrænsningerne for udregningen af afstande

5 (a) Forhindring inden for kranens led. (b) Forhindring uden for kranens led. Figur 1.3: Illustration af udregninger med Pythagoras. på Fig: 1.3. Er begge sande, betyder det at forhindringen står i vejen for leddet, og LimitA eller LimitB, afhængig af hvilken konfiguration der blokeres, sættes til at være lig 1. Endeligt checkes om LimitA + LimitB er mindre end to, i hvilket tilfælde kranen er i stand til at opnå det ønskede punkt ved hjælp af minimum en konfiguration. Kranens position tildeles derfor pointene, P z, for det givne punkt og sætter mmax til at være lig 1 således at scriptet ikke checker lavere prioriteringer af samme punkt. Når scriptet er færdigt med at tildele hver position for kranen point, alt efter hvor mange ønskede punkter den er i stand til at nå fra en given position, laves et conturplot for at visualiser pointfordelingen og dermed den optimale placering af kranen.