jorrit27
Artikelen: 0
Berichten: 9
Lid geworden op: zo 15 sep 2013, 17:30

virtueel model maken voor het perfecte inslagpunt van een kruisboog

Hallo allemaal,

Ik en een vriend van mij zijn bezig met een project over de kruisboog. We gaan zelf een kruisboog maken. Nu is onze hoofdvraag: ­Is het mogelijk om met een kruisboog en een bijbehorend model het precieze inslagpunt van de pijl te bepalen en te zorgen dat de pijl ook in dit punt terecht komt?

We willen dit model zelf maken. Wat we dus willen bereiken is dus een model te maken die de afwijking van de pijl berekent t.o.v. een gekozen doelwit. De afwijking ontstaat door de windkracht, de gekozen hoek van de boog is van belang enz. Is het mogelijk om dit in een model te verwerken, dus je voert bijvoorbeeld de windkracht in in je model en het model berekent vervolgens de afwijking van de pijl over een bepaald afstand t.o.v. een gekozen punt.

Hoe kunnen wij het beste beginnen en wat voor programma raden jullie aan? Excel?

Kom ajb met voorstellen en ideeën, het zou ons enorm helpen!

groetjes!
Gebruikersavatar
Leviathan
Artikelen: 0
Berichten: 123
Lid geworden op: do 17 jan 2008, 16:51

Re: virtueel model maken voor het perfecte inslagpunt van een kruisboog

Excel kan zeker. Een andere optie is Simulink van Matlab, dat is gemaakt voor het simuleren van systemen. (Zoals jouw kruisboog systeem).

Hoever is je kennis van Kinematica en Dynamica?
jorrit27
Artikelen: 0
Berichten: 9
Lid geworden op: zo 15 sep 2013, 17:30

Re: virtueel model maken voor het perfecte inslagpunt van een kruisboog

Bedankt voor uw antwoord, we zullen Simulink eens uitchecken. Kan je in Simulink ook berekeningen doen, dus dat je bijvoorbeeld de windkracht invoert en het programma dan de afwijking berekent?

Voor de rest zijn we zijn erg onervaren met programmeren, excel kennen we wel redelijk maar we moeten nog veel leren. We zitten in 6VWO en onze kennis over Kinematica en Dynamica zijn dus op 6e klas niveau, we kennen dus zeker een aantal formules.

Ik denk dat het lastigste is om ergens te beginnen met het maken van dit model, hebben jullie hier tips voor?

alvast bedankt!
Gebruikersavatar
Xenion
Artikelen: 0
Berichten: 2.609
Lid geworden op: za 21 jun 2008, 10:41

Re: virtueel model maken voor het perfecte inslagpunt van een kruisboog

Ik ken zelf Simulink niet goed. Ik weet dat het zeker geschikt is voor zulke modellen, maar het is ook mogelijk overkill voor een probleem van deze grootte.

Ik zou zelf een simpel scriptje schrijven dat de nodige berekeningen uitvoert en dan plot in een grafiek. Zelf ben ik een fan van MATLAB. Daarvan bestaat ook een gratis opensource kopie genaamd Octave, moest je het legaal willen vinden :) Python zou eventueel ook wel geschikt zijn als taal.

Betreft de methode:

Het idee is dat je alle krachten beschrijft die op de pijl werken. Dan weet je dat volgende de 2de wet van Newton geldt dat
\(F_{tot} = m\cdot a\)
.

Aangezien
\(a(t) = \frac{d^2 x(t)}{dt^2}\)
en we op zoek zijn naar x(t) en eventueel v(t) is dit een zogenaamde differentiaalvergelijking. Het is vaak nogal omslachtig om die analytisch uit te rekenen. Dat zal hier ook het geval zijn en daarom zal je een numerieke benadering van de oplossing moeten maken.

Als je ook de benadering maakt dat
\(a = \frac{\Delta{v}}{\Delta{t}}\)
en je kiest bijvoorbeeld
\(\Delta t = 0.01 s\)
, dan kan je de volgende oplossingsmethode volgen:

Als je x en v op tijdstip t = i+1 wil kennen dan kan je zeggen dat:
\(a(i+1) = F_{tot}(i+1)/m\)
\(v(i+1) = v(i) + a(i+1)\Delta t\)
\(x(i+1) = x(i) + v(i+1)\Delta t\)
(Ftot zal waarschijnlijk een functie zijn van x en v als je dingen als wrijving gaat meetellen.)

Je moet dus beginwaarden kiezen voor x en v op tijdstip t = 0 en dan start je een iteratie. Op elk nieuw tijdstip bereken je de nieuwe versnelling, die versnelling gebruik je om de snelheid te updaten en die nieuwe snelheid gebruik je dan in de update voor x.

Deze vergelijkingen moet je opschrijven en oplossen voor elke dimensie (afgeledge weg en hoogte in een vereenvoudigde situatie, maar als je zijwind ofzo wilt meerekenen dan heb je nog een extra dimensie nodig).

Deze oplossingsmethode heet de 'achterwaardse methode van Euler'. Ik raad deze meestal aan omdat die gemakkelijk te begrijpen is, maar er zijn betere/nauwkeurigere methoden zoals bijvoorbeeld die van Runge-***. Die laatste is minder intuïtief, maar niet echt moeilijker om te implementeren.
Gebruikersavatar
Leviathan
Artikelen: 0
Berichten: 123
Lid geworden op: do 17 jan 2008, 16:51

Re: virtueel model maken voor het perfecte inslagpunt van een kruisboog

Ik had eens een vraag gesteld hier over iets met Simulink

Hier staan ook een baar screenshots van het programma in, kan je een idee krijgen wat het inhoudt:

http://sciencetalk.nl/forum/index.php/topic/137722-dv-van-een-geregelde-oven/

Ik heb zelf het idee dat dit makkelijker is dan "programmeren/scripten" in Matlab.
jorrit27
Artikelen: 0
Berichten: 9
Lid geworden op: zo 15 sep 2013, 17:30

Re: virtueel model maken voor het perfecte inslagpunt van een kruisboog

Xenion schreef: di 17 sep 2013, 15:50
Ik ken zelf Simulink niet goed. Ik weet dat het zeker geschikt is voor zulke modellen, maar het is ook mogelijk overkill voor een probleem van deze grootte.

Ik zou zelf een simpel scriptje schrijven dat de nodige berekeningen uitvoert en dan plot in een grafiek. Zelf ben ik een fan van MATLAB. Daarvan bestaat ook een gratis opensource kopie genaamd Octava, moest je het legaal willen vinden :) Python zou eventueel ook wel geschikt zijn als taal.

Betreft de methode:

Het idee is dat je alle krachten beschrijft die op de pijl werken. Dan weet je dat volgende de 2de wet van Newton geldt dat
\(F_{tot} = m\cdot a\)
.

Aangezien
\(a(t) = \frac{d^2 x(t)}{dt^2}\)
en we op zoek zijn naar x(t) en eventueel v(t) is dit een zogenaamde differentiaalvergelijking. Het is vaak nogal omslachtig om die analytisch uit te rekenen. Dat zal hier ook het geval zijn en daarom zal je een numerieke benadering van de oplossing moeten maken.

Als je ook de benadering maakt dat
\(a = \frac{\Delta{v}}{\Delta{t}}\)
en je kiest bijvoorbeeld
\(\Delta t = 0.01 s\)
, dan kan je de volgende oplossingsmethode volgen:

Als je x en v op tijdstip t = i+1 wil kennen dan kan je zeggen dat:
\(a(i+1) = F_{tot}(i+1)/m\)
\(v(i+1) = v(i) + a(i+1)\Delta t\)
\(x(i+1) = x(i) + v(i+1)\Delta t\)
(Ftot zal waarschijnlijk een functie zijn van x en v als je dingen als wrijving gaat meetellen.)

Je moet dus beginwaarden kiezen voor x en v op tijdstip t = 0 en dan start je een iteratie. Op elk nieuw tijdstip bereken je de nieuwe versnelling, die versnelling gebruik je om de snelheid te updaten en die nieuwe snelheid gebruik je dan in de update voor x.

Deze vergelijkingen moet je opschrijven en oplossen voor elke dimensie (afgeledge weg en hoogte in een vereenvoudigde situatie, maar als je zijwind ofzo wilt meerekenen dan heb je nog een extra dimensie nodig).

Deze oplossingsmethode heet de 'achterwaardse methode van Euler'. Ik raad deze meestal aan omdat die gemakkelijk te begrijpen is, maar er zijn betere/nauwkeurigere methoden zoals bijvoorbeeld die van Runge-***ta. Die laatste is minder intuïtief, maar niet echt moeilijker om te implementeren.
Aller eerst sorry voor mijn late antwoord! Had het de laatste tijd erg druk en was niet echt bezig met het project, maar nu ga ik weer mijn volle aandacht eraan geven.

Oke, ik gebruik het liefst Excel, ik ken het programma redelijk. Is Octavia ook van matlab, want kan het niet echt vinden. Is Octavia misschien een beetje hetzelfde als PowerSim? Hier heb ik ooit op school mee gewerkt en kan misschien ook gebruikt worden.

Ik begrijp het principe van de 'achterwaardse methode van Euler', maar het lijkt mij erg lastig om deze toe te passen in bijvoorbeeld Excel, wat is de beste manier om te beginnen? Ik wil inderdaad ook de zijwind betrekken in het model, maar daar heb ik toch ook de Cw waarde van de pijl voor nodig, hoe kan ik deze betrekken in het model? Ik denk dat voor mij vooral het beginnen en de juiste start maken met het model lastig wordt, als ik het eenmaal snap met invoeren e.d. gaat het makkelijker hopelijk. Ik hoop dat ik jullie niet al te veel vermoei met mijn mischien wat 'amateuristische vragen' :P

alvast bedankt, en ik zal dit keer wel snel antwoorden!
Gebruikersavatar
Xenion
Artikelen: 0
Berichten: 2.609
Lid geworden op: za 21 jun 2008, 10:41

Re: virtueel model maken voor het perfecte inslagpunt van een kruisboog

Octave kan je hier vinden.

In Excel kan je de methode van Euler ook toepassen. Je maakt een kolom voor de verschillende variabelen die veranderen in de tijd: positie, snelheid en versnelling. Met de formules leg je dan de verbanden tussen die cellen vast en dan sleep je die kolommen naar beneden om je data te berekenen.

Betreft die Cw waarde. Het idee is dat je simpelweg de totale kracht berekent en daar haal je de ogenblikkelijke versnelling uit. Als je luchtweerstand meerekent, dan heb je inderdaad extra parameters nodig. Hoe je die bepaalt zou ik niet weten. Je kan die experimenteel proberen te bepalen of misschien kan je daar formules voor vinden.
jorrit27
Artikelen: 0
Berichten: 9
Lid geworden op: zo 15 sep 2013, 17:30

Re: virtueel model maken voor het perfecte inslagpunt van een kruisboog

bedankt voor jullie hulp. Ik ga ermee aan de slag en ik kijk in hoeverre het mij gaat lukken in Excel, als er iets is dat niet lukt zal ik het melden!
jorrit27
Artikelen: 0
Berichten: 9
Lid geworden op: zo 15 sep 2013, 17:30

Re: virtueel model maken voor het perfecte inslagpunt van een kruisboog

daar ben ik weer haha

een vraagje, ik heb dit model (excel bestand) Maar hoe kan ik het beste de wrijvingskracht erin verwerken? Iemand een tip hoe dat het beste te doen en wat ik moet linken?
model schot kruisboog
(26.5 KiB) 167 keer gedownload
Gebruikersavatar
Xenion
Artikelen: 0
Berichten: 2.609
Lid geworden op: za 21 jun 2008, 10:41

Re: virtueel model maken voor het perfecte inslagpunt van een kruisboog

Zie mijn vorige uitleg.

Het idee is dat je die formules volgt in plaats van de klassieke kogelbaan vergelijking. In plaats van enkel t,x en y zal je ook de snelheden en versnellingen volgens x en y moeten bijhouden.

Op elk tijdstip bereken je eerst de nieuwe versnelling op basis van de kracht die op het vorige tijdstip op de kogel werkte (zwaartekracht+wrijvingskracht in y, enkel wrijvingskracht in x). Met die nieuwe versnelling bereken je dan de update voor de snelheid en positie.
jorrit27
Artikelen: 0
Berichten: 9
Lid geworden op: zo 15 sep 2013, 17:30

Re: virtueel model maken voor het perfecte inslagpunt van een kruisboog

sorry ik had tentamenweken dus eigenlijk geen tijd om eraan te werken.. Ik zie al dat ik niet in de wieg gelegd ben voor programmeren, ik zou het heel fijn vinden als iemand een begin kan maken?
jorrit27
Artikelen: 0
Berichten: 9
Lid geworden op: zo 15 sep 2013, 17:30

Re: virtueel model maken voor het perfecte inslagpunt van een kruisboog

oke er is iets gelukt, ik heb nu iedere waarde voor Fw bij iedere v(t)

alleen deze Fw waarde moet ik dan van de x en y richting afhalen, maar de Fw is in Newton en de x en y in meter, dus die verschillende eenheden kan ik niet zomaar van elkaar aftrekken. Wat moet ik doen zodat dit wel kan?
Gebruikersavatar
Xenion
Artikelen: 0
Berichten: 2.609
Lid geworden op: za 21 jun 2008, 10:41

Re: virtueel model maken voor het perfecte inslagpunt van een kruisboog

Je moet de formules gebruiken waar ik je ondertussen al meerdere keren op gewezen heb.

Voor elke tijdstap i moet je het volgende doen:
  • bereken a(i) = F(i-1)/m
  • bereken v(i) = v(i-1) + a(i)*dt
  • bereken x(i) = x(i-1) + v(i)*dt

Terug naar “Informatica en programmeren”