From: Permondes Date: Fri, 16 Feb 2024 19:21:57 +0000 (+0100) Subject: Application: Mass in Tube; Helper Functions X-Git-Url: https://permondes.de/gitweb/Analog_Engine.git/commitdiff_plain/1820e06bd06c1df8c4cbfd882735c9f937cc0029?ds=inline Application: Mass in Tube; Helper Functions Application: Mass in Tube Helper-Functions, sine-cosine generation --- diff --git a/AESL/Anabrid-THAT.ENGINE b/AESL/Anabrid-THAT.ENGINE new file mode 100644 index 0000000..b599bcf --- /dev/null +++ b/AESL/Anabrid-THAT.ENGINE @@ -0,0 +1,12 @@ +# Anabrid THAT - Capabilities + +COEFFICIENT 8 +INTEGRATOR 5 +SUMMER 4 +INVERTER 4 +MULTIPLIER 2 +COMPARATOR 2 +CAPACITOR.100pF 3 +CAPACITOR.100nF 2 +DIODE 4 +Z-DIODE 2 diff --git a/AESL/TP1 06.18 Mass in Tube.AESL b/AESL/TP1 06.18 Mass in Tube.AESL new file mode 100644 index 0000000..e85e7c7 --- /dev/null +++ b/AESL/TP1 06.18 Mass in Tube.AESL @@ -0,0 +1,49 @@ +IDENTIFICATION DIVISION +PROGRAM-ID MassInTube +VERSION 20240214 +COMMENT A thin tube rotates at a constant angular velocity perpendicular to gravity +COMMENT A mass point moves frictionless in this tube. The differential equation gives the position of this mass point. +COMMENT r''=omega^2*r -g*sin(omega*t+phi0) + +ENVIRONMENT DIVISION +ENGINE Anabrid-THAT +TIMEBASE 1ms +REQUIRES COEFFICIENT 8, INTEGRATOR 4, INVERTER 1, MULTIPLIER 2 + +DATA DIVISION +OUTPUT OUTPUT.X x +OUTPUT OUTPUT.Y y +COEFFICIENT.1 ICw' +COEFFICIENT.2 ICw +COEFFICIENT.3 OMEGAC +COEFFICIENT.4 OMEGAS # same as OMEGAC +COEFFICIENT.5 G +COEFFICIENT.6 R0 # r(0) +COEFFICIENT.7 V0 # r'(0) +COEFFICIENT.8 OMEGA^2 # = OMEGAC*OMEGAS + +PROGRAM DIVISION +### Generating sin(omega*t+phi0) ### ++1 -> COEFFICIENT.ICw’ -> icw’ +-1 -> COEFFICIENT.ICw -> -icw +w’’, IC:icw’ -> INTEGRATOR -> -w’=-cos +-w' -> COEFFICIENT.OMEGAC -> -omega*w' +-omega*w', IC:-icw -> INTEGRATOR -> w=sin +w -> INVERTER -> -w=-sin +-w -> COEFFICIENT.OMEGAS -> -omega^2*w=w’’ + +### the actual problem ### +-sin -> COEFFICIENT.G -> -g*sin +-1 -> COEFFICIENT.R0 -> -r0 ++1 -> COEFFICIENT.V0 -> v0 +omega^2*r, -g*sin,IC:v0 -> INTEGRATOR -> -r' # input is r'' +-r',IC:-r0 -> INTEGRATOR -> r +r -> COEFFICIENT.OMEGA^2 -> omega^2*r + +### Converting r, phi to x,y coordinates for display ### +r, sin -> MULTIPLIER -> x +r, -cos -> MULTIPLIER -> y # y-axis shall go down according to gravity, thus negativ input + +OPERATION DIVISION +MODE REPEAT +OP-TIME 17,5ms diff --git a/Analog Engine Example Applications.odt b/Analog Engine Example Applications.odt index 94495ee..de6564b 100644 Binary files a/Analog Engine Example Applications.odt and b/Analog Engine Example Applications.odt differ diff --git a/Analog Engine Technical Topics.odt b/Analog Engine Technical Topics.odt index 769f23c..c151369 100644 Binary files a/Analog Engine Technical Topics.odt and b/Analog Engine Technical Topics.odt differ