|
- <?xml version="1.0" encoding="UTF-8"?>
- <Document>
- <Model version="4.8" build="4.8.2.10124">
- <Sidops><![CDATA[model 128 184
- description '<Information>
- <Description>
- <Version>4.8</Version>
- <IsMainModel>0</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>C:\users\wouter\My Documents\studie\ma\mahd\implementation\SCARA\05_stepper\stepper_103H5208_controller.emx</LibraryPath>
- <TimeStamp>2020-7-22 15:25:39</TimeStamp>
- </Description>
- </Information>';
- type Mainmodel
- end;
- implementation bg
- submodels
- C 976 392
- description '<Information>
- <Description>
- <Version>4.2</Version>
- <IsMainModel>1</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>Bond Graph\C.emx</LibraryPath>
- <TimeStamp>2011-11-29 15:58:35</TimeStamp>
- </Description>
- </Information>';
- type C
- ports
- power in p;
- signal out state;
- restrictions
- causality preferred out p;
- end;
- icon bg bottom
- figures
- text 'C' 976 392 color 0 18 bold;
- end;
- implementation eq
- parameters
- real c = 0.00001;
- equations
- state = int(p.f);
- p.e = state / c;
- implementation_end;
- I2 1024 272
- description '<Information>
- <Description>
- <Version>4.2</Version>
- <IsMainModel>1</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>Bond Graph\I.emx</LibraryPath>
- <TimeStamp>2011-11-29 15:55:55</TimeStamp>
- </Description>
- </Information>';
- type I
- ports
- power in p;
- signal out state;
- restrictions
- causality preferred in p;
- end;
- icon bg bottom
- figures
- text 'I' 1024 272 color 0 18 bold;
- end;
- implementation eq
- parameters
- real i = 8e-5 {kg.m2};
- equations
- state = int(p.e);
- p.f = state / i;
- implementation_end;
- OneJunction 1024 336
- description '<Information>
- <Description>
- <Version>4.2</Version>
- <IsMainModel>1</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
- <TimeStamp>2011-11-29 16:17:51</TimeStamp>
- </Description>
- </Information>';
- knot OneJunction
- ports
- rotation knot duplicatable none p [1];
- signal knot out flow [1];
- restrictions
- causality constraint one_out p;
- end;
- icon bg
- figures
- text '1' 1024 336 color 0 18 bold;
- end;
- implementation eq
- equations
- sum (direct (p.e)) = 0;
- equal (collect (p.f));
- flow = first (p.f);
- implementation_end;
- OneJunction1 936 392
- description '<Information>
- <Description>
- <Version>4.2</Version>
- <IsMainModel>1</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
- <TimeStamp>2011-11-29 16:17:51</TimeStamp>
- </Description>
- </Information>';
- knot OneJunction
- ports
- rotation knot duplicatable none p [1];
- signal knot out flow [1];
- restrictions
- causality constraint one_out p;
- end;
- icon bg
- figures
- text '1' 936 392 color 0 18 bold;
- end;
- implementation eq
- equations
- sum (direct (p.e)) = 0;
- equal (collect (p.f));
- flow = first (p.f);
- implementation_end;
- R 896 392
- description '<Information>
- <Description>
- <Version>4.2</Version>
- <IsMainModel>1</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>Bond Graph\R.emx</LibraryPath>
- <TimeStamp>2011-11-29 16:35:37</TimeStamp>
- </Description>
- </Information>';
- type R
- ports
- power in p;
- end;
- icon bg bottom
- figures
- text 'R' 896 392 color 0 18 bold;
- end;
- implementation eq
- parameters
- real r = 100;
- equations
- p.e = r * p.f;
- implementation_end;
- Square 432 336
- description '<Description>
- <Version>4.0</Version>
- <IsMainModel>1</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>Signal\Sources\WaveGenerator-Square.emx</LibraryPath>
- <TimeStamp>2009-3-5 16:05:33</TimeStamp>
- </Description>';
- type 'WaveGenerator-Square'
- ports
- signal out output;
- end;
- icon bg bottom
- figures
- rectangle 416.1 320 447.9 352 color 0 fill 15132390;
- line 420.1 323.9 419.9 350.2 color 0 fill 0;
- line 417.9 348.1 443.9 348.1 color 0 fill 0;
- line 420.1 348.1 424 348.1 424 336 color 16711680 fill 0;
- line 432 336 424 336 432 336 color 16711680 fill 0;
- line 432 348.1 432 336 432 348.1 color 16711680 fill 0;
- line 440 336 440 348.1 440 336 color 16711680 fill 0;
- line 443.9 336.1 439.7 336.1 color 16711680 fill 0;
- line 432 348.1 440 348.1 color 16711680 fill 0;
- end;
- implementation eq
- parameters
- real amplitude = 50; // amplitude of the wave
- real omega = 2 {rad/s}; // angular frequency of the wave
- variables
- real hidden s, half;
- boolean hidden change;
- equations
- "calculate at least 2 points per period
- (just after the change in sign)"
- half = pi / omega;
- change = frequencyevent (half, 1e-14);
-
- "calculate the square wave"
- s = sign (sin (omega * time));
- output = if( s == 0 ) then
- amplitude
- else
- (amplitude / 2) * (s + 1)
- end;
- implementation_end;
- stepper_control 584 336
- description '<Information>
- <Description>
- <Version>4.8</Version>
- <IsMainModel>1</IsMainModel>
- <LibraryPath>Motor\stepper_control.emx</LibraryPath>
- <TimeStamp>2020-7-22 15:25:26</TimeStamp>
- </Description>
- </Information>';
- type Submodel
- ports
- signal in setpoint {rad} ;
- signal out output {rad} ;
- end;
- implementation bg
- submodels
- Acceleration_int 648 336
- description '<Information>
- <Description>
- <Version>4.3</Version>
- <IsMainModel>1</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>Signal\Block Diagram\Integrate.emx</LibraryPath>
- <TimeStamp>2013-3-8 14:47:42</TimeStamp>
- </Description>
- </Information>';
- type Integrate
- ports
- signal in input;
- signal out output;
- end;
- icon bg bottom
- figures
- rectangle 632 320 664 352 color 0 fill 15132390;
- text '∫' 648 336.3 color 16711680 'Lucida Sans' 21 italic;
- end;
- implementation eq
- parameters
- real initial = 0; // initial value
- equations
- output = int (input, initial);
- implementation_end;
- Acceleration_limit 568 336
- description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>Signal\Block Diagram Non-Linear\SignalLimiter-Limit.emx</LibraryPath>
- <TimeStamp>2007-9-26 12:47:40</TimeStamp>
- </Description>';
- type 'SignalLimiter-Limit'
- ports
- signal in input;
- signal out output;
- end;
- icon bg bottom
- figures
- group
- rectangle 552 320 584 352 color 0 fill 15132390;
- line 567.9 324.5 567.9 349 color 0 fill 15132390;
- line 555 336.2 580.7 336.2 color 0 fill 15132390;
- spline 561.9 343.1 573.9 329.4 color 16711680 fill 15132390 width 2;
- spline 573.3 330.2 581.9 329.8 color 16711680 fill 15132390 width 2;
- spline 555 343.6 561.9 343.1 color 16711680 fill 15132390 width 2;
- end;
- end;
- implementation eq
- parameters
- real maximum = 200;
- real minimum = -200;
- equations
- output = limit (input, minimum, maximum);
- implementation_end;
- plug setpoint 136 336;
- plug output 791 336;
- PlusMinus1 240 336
- description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>Signal\Block Diagram\PlusMinus.emx</LibraryPath>
- <TimeStamp>2007-9-27 10:15:13</TimeStamp>
- </Description>';
- knot PlusMinus
- ports
- signal knot duplicatable in plus [1];
- signal knot duplicatable in minus [1];
- signal knot out output [1];
- end;
- icon bg ellipse
- figures
- ellipse 232 328 248 344 color 0 fill 16777215;
- end;
- implementation eq
- equations
- output = sum (collect (plus)) - sum (collect (minus));
- implementation_end;
- PlusMinus2 432 336
- description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>Signal\Block Diagram\PlusMinus.emx</LibraryPath>
- <TimeStamp>2007-9-27 10:15:13</TimeStamp>
- </Description>';
- knot PlusMinus
- ports
- signal knot duplicatable in plus [1];
- signal knot duplicatable in minus [1];
- signal knot out output [1];
- end;
- icon bg ellipse
- figures
- ellipse 424 328 440 344 color 0 fill 16777215;
- end;
- implementation eq
- equations
- output = sum (collect (plus)) - sum (collect (minus));
- implementation_end;
- Position_control 296 336
- description '<Description>
- <Version>4.0</Version>
- <IsMainModel>1</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>Signal\Control\PID Control\Continuous\PD.emx</LibraryPath>
- <TimeStamp>2008-1-17 10:49:7</TimeStamp>
- </Description>';
- type PD
- ports
- signal in error;
- signal out output;
- end;
- icon bg bottom
- figures
- rectangle 280 320 312 352 color 0 fill 15132390;
- text 'PD' 296.5 336.1 color 16711680 18 bold;
- end;
- implementation eq
- parameters
- real kp = 4 {}; // Proportional gain
- real tauD = 100 {s}; // Derivative time constant: tauD > 0
- real beta = 0.4 {}; // Tameness constant: 0 < beta << 1
- real maximum = 25;
- variables
- real state, rate;
- equations
- rate = (kp * error - output) / (beta * tauD);
- state = int (rate);
- output = state + kp * error / beta;
- implementation_end;
- Splitter3 688 336
- description '<Description><Version>4.0</Version>
- <LibraryPath>Signal\Block Diagram\Splitter.emx</LibraryPath>
- <TimeStamp>2008-01-17 11:28:29</TimeStamp>
- <IsMainModel>1</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- </Description>';
- knot Splitter
- ports
- signal knot duplicatable out output [1];
- signal knot in input [1];
- end;
- icon bg ellipse
- figures
- ellipse 684.8 332.8 691.2 339.2 color -1 fill 0;
- ellipse 683.7 331.7 692.3 340.3 color -1;
- terminals
- input 688 336 fixed;
- end;
- implementation eq
- equations
- collect (output) = input;
- implementation_end;
- Splitter4 752 336
- description '<Description><Version>4.0</Version>
- <LibraryPath>Signal\Block Diagram\Splitter.emx</LibraryPath>
- <TimeStamp>2008-01-17 11:28:29</TimeStamp>
- <IsMainModel>1</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- </Description>';
- knot Splitter
- ports
- signal knot duplicatable out output [1];
- signal knot in input [1];
- end;
- icon bg ellipse
- figures
- ellipse 748.8 332.8 755.2 339.2 color -1 fill 0;
- ellipse 747.7 331.7 756.3 340.3 color -1;
- terminals
- input 752 336 fixed;
- end;
- implementation eq
- equations
- collect (output) = input;
- implementation_end;
- Velocity_control 480 336
- description '<Description>
- <Version>4.0</Version>
- <IsMainModel>1</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>Signal\Control\PID Control\Continuous\PD.emx</LibraryPath>
- <TimeStamp>2008-1-17 10:49:7</TimeStamp>
- </Description>';
- type PD
- ports
- signal in error;
- signal out output;
- end;
- icon bg bottom
- figures
- rectangle 464 320 496 352 color 0 fill 15132390;
- text 'PD' 480.5 336.1 color 16711680 18 bold;
- end;
- implementation eq
- parameters
- real kp = 12 {}; // Proportional gain
- real tauD = 10 {s}; // Derivative time constant: tauD > 0
- real beta = 0.4 {}; // Tameness constant: 0 < beta << 1
- real maximum = 100;
- variables
- real state, rate;
- equations
- rate = (kp * error - output) / (beta * tauD);
- state = int (rate);
- output = state + kp * error / beta;
- implementation_end;
- Velocity_int 720 336
- description '<Information>
- <Description>
- <Version>4.3</Version>
- <IsMainModel>1</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>Signal\Block Diagram\Integrate.emx</LibraryPath>
- <TimeStamp>2013-3-8 14:47:42</TimeStamp>
- </Description>
- </Information>';
- type Integrate
- ports
- signal in input;
- signal out output;
- end;
- icon bg bottom
- figures
- rectangle 704 320 736 352 color 0 fill 15132390;
- text '∫' 720 336.3 color 16711680 'Lucida Sans' 21 italic;
- end;
- implementation eq
- parameters
- real initial = 0; // initial value
- equations
- output = int (input, initial);
- implementation_end;
- Velocity_limit 376 336
- description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>Signal\Block Diagram Non-Linear\SignalLimiter-Limit.emx</LibraryPath>
- <TimeStamp>2007-9-26 12:47:40</TimeStamp>
- </Description>';
- type 'SignalLimiter-Limit'
- ports
- signal in input;
- signal out output;
- end;
- icon bg bottom
- figures
- group
- rectangle 360 320 392 352 color 0 fill 15132390;
- line 375.9 324.5 375.9 349 color 0 fill 15132390;
- line 363 336.2 388.7 336.2 color 0 fill 15132390;
- spline 369.9 343.1 381.9 329.4 color 16711680 fill 15132390 width 2;
- spline 381.3 330.2 389.9 329.8 color 16711680 fill 15132390 width 2;
- spline 363 343.6 369.9 343.1 color 16711680 fill 15132390 width 2;
- end;
- end;
- implementation eq
- parameters
- real maximum = 25;
- real minimum = -25;
- equations
- output = limit (input, minimum, maximum);
- implementation_end;
- end;
- connections
- Acceleration_int\output -> Splitter3\input;
- Acceleration_limit\output -> Acceleration_int\input;
- PlusMinus1\output -> Position_control\error;
- PlusMinus2\output -> Velocity_control\error;
- Position_control\output -> Velocity_limit\input;
- setpoint -> PlusMinus1\plus;
- Splitter3\output -> PlusMinus2\minus 688 288 432 288;
- Splitter3\output -> Velocity_int\input;
- Splitter4\output -> output;
- Splitter4\output -> PlusMinus1\minus 752 400 240 400;
- Velocity_control\output -> Acceleration_limit\input;
- Velocity_int\output -> Splitter4\input;
- Velocity_limit\output -> PlusMinus2\plus;
- end;
- implementation_end;
- stepper_model 768 336
- description '<Information>
- <Description>
- <Version>4.8</Version>
- <IsMainModel>1</IsMainModel>
- <LibraryPath>Motor\stepper_model.emx</LibraryPath>
- <TimeStamp>2020-7-22 15:25:37</TimeStamp>
- </Description>
- <Attributes>
- <GlobalRelations>parameters
- real I_phase = 3.4 {mH};
- real R_phase = 2.9 {ohm};
- real u_max = 3.4 {V};
- real RotorInertia = 5.6e-6 {kg.m2};
- real StepperMass = 0.29 {kg};
- real angle_step = 1.8 {deg};
- real n_phase = 2 {none};
- real fluxLinkage = 0.0022 {Wb};
- real detentTorque = 0.01 {N.m};
- variables
- real omega;
- real p; // rotor division
- initialequations
- p = 2 * pi / (2 * n_phase * angle_step);
- omega = 200;</GlobalRelations>
- </Attributes>
- </Information>';
- type Submodel
- ports
- signal in angle;
- rotation out p;
- end;
- implementation bg
- submodels
- I 560 104
- description '<Information>
- <Description>
- <Version>4.2</Version>
- <IsMainModel>1</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>Bond Graph\I.emx</LibraryPath>
- <TimeStamp>2011-11-29 15:55:55</TimeStamp>
- </Description>
- </Information>';
- type I
- ports
- power in p;
- signal out state;
- restrictions
- causality preferred in p;
- end;
- icon bg bottom
- figures
- text 'I' 560 104 color 0 18 bold;
- end;
- implementation eq
- parameters
- real global I_phase;
- equations
- state = int(p.e);
- p.f = state / I_phase;
- implementation_end;
- I1 608 328
- description '<Information>
- <Description>
- <Version>4.2</Version>
- <IsMainModel>1</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>Bond Graph\I.emx</LibraryPath>
- <TimeStamp>2011-11-29 15:55:55</TimeStamp>
- </Description>
- </Information>';
- type I
- ports
- power in p;
- signal out state;
- restrictions
- causality preferred in p;
- end;
- icon bg bottom
- figures
- text 'I' 608 328 color 0 18 bold;
- end;
- implementation eq
- parameters
- real global I_phase;
- equations
- state = int(p.e);
- p.f = state / I_phase;
- implementation_end;
- I2 752 160
- description '<Information>
- <Description>
- <Version>4.2</Version>
- <IsMainModel>1</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>Bond Graph\I.emx</LibraryPath>
- <TimeStamp>2011-11-29 15:55:55</TimeStamp>
- </Description>
- </Information>';
- type I
- ports
- power in p;
- signal out state;
- restrictions
- causality preferred in p;
- end;
- icon bg bottom
- figures
- text 'I' 752 160 color 0 18 bold;
- end;
- implementation eq
- parameters
- real i = 8e-5 {kg.m2};
- real global RotorInertia;
- equations
- state = int(p.e);
- p.f = state / (RotorInertia);
- implementation_end;
- MGY_a 656 160
- description '<Information>
- <Description>
- <Version>4.2</Version>
- <IsMainModel>1</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>Bond Graph\MGY.emx</LibraryPath>
- <TimeStamp>2011-11-29 16:03:53</TimeStamp>
- </Description>
- </Information>';
- type MGY
- ports
- power in p1;
- power out p2;
- signal in r;
- restrictions
- causality constraint equal p1 p2;
- end;
- icon bg bottom
- figures
- text 'MGY' 656 160 color 0 18 bold;
- end;
- implementation eq
- equations
- p1.e = r * p2.f;
- p2.e = r * p1.f;
- implementation_end;
- MGY_b 656 272
- description '<Information>
- <Description>
- <Version>4.2</Version>
- <IsMainModel>1</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>Bond Graph\MGY.emx</LibraryPath>
- <TimeStamp>2011-11-29 16:03:53</TimeStamp>
- </Description>
- </Information>';
- type MGY
- ports
- power in p1;
- power out p2;
- signal in r;
- restrictions
- causality constraint equal p1 p2;
- end;
- icon bg bottom
- figures
- text 'MGY' 656 272 color 0 18 bold;
- end;
- implementation eq
- equations
- p1.e = r * p2.f;
- p2.e = r * p1.f;
- implementation_end;
- MSe_a 512 160
- description '<Information>
- <Description>
- <Version>4.2</Version>
- <IsMainModel>1</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>Bond Graph\MSe.emx</LibraryPath>
- <TimeStamp>2011-11-29 16:12:33</TimeStamp>
- </Description>
- </Information>';
- type MSe
- ports
- electric out p;
- signal in effort;
- restrictions
- causality fixed out p;
- end;
- icon bg bottom
- figures
- text 'MSe' 512 160 color 0 18 bold;
- end;
- implementation eq
- variables
- real flow;
- equations
- p.e = effort;
- flow = p.f;
- implementation_end;
- MSe_b 512 272
- description '<Information>
- <Description>
- <Version>4.2</Version>
- <IsMainModel>1</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>Bond Graph\MSe.emx</LibraryPath>
- <TimeStamp>2011-11-29 16:12:33</TimeStamp>
- </Description>
- </Information>';
- type MSe
- ports
- electric out p;
- signal in effort;
- restrictions
- causality fixed out p;
- end;
- icon bg bottom
- figures
- text 'MSe' 512 272 color 0 18 bold;
- end;
- implementation eq
- variables
- real flow;
- equations
- p.e = effort;
- flow = p.f;
- implementation_end;
- plug angle 200 216;
- plug p 1472 216;
- OneJunction1 840 216
- description '<Information>
- <Description>
- <Version>4.2</Version>
- <IsMainModel>1</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
- <TimeStamp>2011-11-29 16:17:51</TimeStamp>
- </Description>
- </Information>';
- knot OneJunction
- ports
- rotation knot duplicatable none p [1];
- signal knot out flow [1];
- restrictions
- causality constraint one_out p;
- end;
- icon bg
- figures
- text '1' 840 216 color 0 18 bold;
- end;
- implementation eq
- equations
- sum (direct (p.e)) = 0;
- equal (collect (p.f));
- flow = first (p.f);
- implementation_end;
- OneJunction2 584 160
- description '<Information>
- <Description>
- <Version>4.2</Version>
- <IsMainModel>1</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
- <TimeStamp>2011-11-29 16:17:51</TimeStamp>
- </Description>
- </Information>';
- knot OneJunction
- ports
- electric knot duplicatable none p [1];
- signal knot out flow [1];
- restrictions
- causality constraint one_out p;
- end;
- icon bg
- figures
- text '1' 584 160 color 0 18 bold;
- end;
- implementation eq
- equations
- sum (direct (p.e)) = 0;
- equal (collect (p.f));
- flow = first (p.f);
- implementation_end;
- OneJunction3 584 272
- description '<Information>
- <Description>
- <Version>4.2</Version>
- <IsMainModel>1</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
- <TimeStamp>2011-11-29 16:17:51</TimeStamp>
- </Description>
- </Information>';
- knot OneJunction
- ports
- electric knot duplicatable none p [1];
- signal knot out flow [1];
- restrictions
- causality constraint one_out p;
- end;
- icon bg
- figures
- text '1' 584 272 color 0 18 bold;
- end;
- implementation eq
- equations
- sum (direct (p.e)) = 0;
- equal (collect (p.f));
- flow = first (p.f);
- implementation_end;
- OneJunction4 752 216
- description '<Information>
- <Description>
- <Version>4.2</Version>
- <IsMainModel>1</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
- <TimeStamp>2011-11-29 16:17:51</TimeStamp>
- </Description>
- </Information>';
- knot OneJunction
- ports
- rotation knot duplicatable none p [1];
- signal knot out flow [1];
- restrictions
- causality constraint one_out p;
- end;
- icon bg
- figures
- text '1' 752 216 color 0 18 bold;
- end;
- implementation eq
- equations
- sum (direct (p.e)) = 0;
- equal (collect (p.f));
- flow = first (p.f);
- implementation_end;
- phase_control 512 216
- description '<Description><Version>4.0</Version>
- <LibraryPath>Template\Submodel-Equation.emx</LibraryPath>
- <IsMainModel>1</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- <TimeStamp>2007-11-1 22:32:1</TimeStamp>
- <AllowLibraryUpdate>False</AllowLibraryUpdate>
- </Description>';
- type Submodel
- ports
- signal in angle;
- signal out a;
- signal out b;
- end;
- icon bg
- figures
- rectangle 472 200 552 232 color 0 fill 15132390;
- text 'name' 512 216 color 0 'Clear Sans' 16;
- end;
- implementation eq
- parameters
- real global u_max {V};
- real global angle_step;
- real max_a {m/s2};
- variables
- real current_angle;
- real c,s;
- real global p;
- boolean hidden eventa, eventb;
- equations
- a = u_max * (cos (p*angle));
- eventa = event(a);
- b = u_max * -(sin (p*angle));
- eventb = event(b);
- current_angle = angle;
-
-
-
- implementation_end;
- R 608 104
- description '<Information>
- <Description>
- <Version>4.2</Version>
- <IsMainModel>1</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>Bond Graph\R.emx</LibraryPath>
- <TimeStamp>2011-11-29 16:35:37</TimeStamp>
- </Description>
- </Information>';
- type R
- ports
- power in p;
- end;
- icon bg bottom
- figures
- text 'R' 608 104 color 0 18 bold;
- end;
- implementation eq
- parameters
- real global R_phase;
- equations
- p.e = R_phase * p.f;
- implementation_end;
- R1 560 328
- description '<Information>
- <Description>
- <Version>4.2</Version>
- <IsMainModel>1</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>Bond Graph\R.emx</LibraryPath>
- <TimeStamp>2011-11-29 16:35:37</TimeStamp>
- </Description>
- </Information>';
- type R
- ports
- power in p;
- end;
- icon bg bottom
- figures
- text 'R' 560 328 color 0 18 bold;
- end;
- implementation eq
- parameters
- real global R_phase;
- equations
- p.e = R_phase * p.f;
- implementation_end;
- R2 824 264
- description '<Information>
- <Description>
- <Version>4.2</Version>
- <IsMainModel>1</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>Bond Graph\R.emx</LibraryPath>
- <TimeStamp>2011-11-29 16:35:37</TimeStamp>
- </Description>
- </Information>';
- type R
- ports
- power in p;
- end;
- icon bg bottom
- figures
- text 'R' 824 264 color 0 18 bold;
- end;
- implementation eq
- parameters
- real r = 1.0e-3;
- equations
- p.e = r * p.f;
- implementation_end;
- RotorAngle 656 216
- description '<Description><Version>4.0</Version>
- <LibraryPath>Template\Submodel-Equation.emx</LibraryPath>
- <IsMainModel>1</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- <TimeStamp>2007-11-1 22:32:1</TimeStamp>
- <AllowLibraryUpdate>False</AllowLibraryUpdate>
- </Description>';
- type Submodel
- ports
- signal out output_b;
- signal out output_a;
- signal in omega {rad/s} ;
- signal out output_d;
- end;
- icon bg
- figures
- rectangle 616 200 696 232 color 0 fill 15132390;
- text 'name' 656 216 color 0 'Clear Sans' 16;
- end;
- implementation eq
- parameters
- real global fluxLinkage;
- real global detentTorque;
- variables
- real global p;
- real angle {rad};
- equations
- angle = int(omega);
- output_a = -p * fluxLinkage * sin(p * angle);
- output_b = p * fluxLinkage * sin(p * angle - pi / 2);
- output_d = detentTorque * sin(2 * p * angle);
- implementation_end;
- Se 752 272
- description '<Information>
- <Description>
- <Version>4.2</Version>
- <IsMainModel>1</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>Bond Graph\MSe.emx</LibraryPath>
- <TimeStamp>2011-11-29 16:12:33</TimeStamp>
- </Description>
- </Information>';
- type MSe
- ports
- power out p;
- signal in effort;
- restrictions
- causality fixed out p;
- end;
- icon bg bottom
- figures
- text 'MSe' 752 272 color 0 18 bold;
- end;
- implementation eq
-
- variables
- real flow;
- equations
- p.e = effort;
- flow = p.f;
- implementation_end;
- end;
- connections
- angle -> phase_control\angle;
- I2\p <= OneJunction4\p;
- MGY_a\p2 => OneJunction4\p;
- MGY_b\p2 => OneJunction4\p;
- MSe_b\p => OneJunction3\p;
- OneJunction1\p => p;
- OneJunction2\p <= MSe_a\p;
- OneJunction2\p => I\p;
- OneJunction2\p => MGY_a\p1;
- OneJunction2\p => R\p;
- OneJunction3\p => I1\p;
- OneJunction3\p => MGY_b\p1;
- OneJunction3\p => R1\p;
- OneJunction4\flow -> RotorAngle\omega;
- OneJunction4\p => OneJunction1\p;
- OneJunction4\p => R2\p;
- phase_control\a -> MSe_a\effort;
- phase_control\b -> MSe_b\effort;
- RotorAngle\output_a -> MGY_a\r;
- RotorAngle\output_b -> MGY_b\r;
- RotorAngle\output_d -> Se\effort;
- Se\p => OneJunction4\p;
- end;
- implementation_end;
- ZeroJunction1 936 336
- description '<Information>
- <Description>
- <Version>4.2</Version>
- <IsMainModel>1</IsMainModel>
- <KeepParameterValues>False</KeepParameterValues>
- <LibraryPath>Bond Graph\ZeroJunction.emx</LibraryPath>
- <TimeStamp>2011-11-29 16:45:16</TimeStamp>
- </Description>
- </Information>';
- knot ZeroJunction
- ports
- rotation knot duplicatable none p [1];
- signal knot out effort [1];
- restrictions
- causality constraint one_in p;
- end;
- icon bg
- figures
- text '0' 936 336 color 0 18 bold;
- end;
- implementation eq
- equations
- sum (direct (p.f)) = 0;
- equal (collect (p.e));
- effort = first (p.e);
- implementation_end;
- end;
- connections
- C\p <= OneJunction1\p;
- OneJunction\p => I2\p;
- OneJunction1\p => R\p;
- OneJunction1\p => ZeroJunction1\p;
- Square\output -> stepper_control\setpoint;
- stepper_control\output -> stepper_model\angle;
- stepper_model\p => ZeroJunction1\p;
- ZeroJunction1\p => OneJunction\p;
- end;
- implementation_end;
- ]]>
- </Sidops>
- </Model>
- <Experiments>
- <DefaultExperiment><![CDATA[Experiment 1]]>
- </DefaultExperiment>
- <Experiment>
- <Name>Experiment 1</Name>
- <CreatedBy></CreatedBy>
- <Info></Info>
- <ExpData>
- <VersionNumber>4.8</VersionNumber>
- <ModelProperties>
- </ModelProperties>
- <Variables>
- <Constants>
- </Constants>
- <Parameters>
- <Variable>
- <Name>stepper_model\phase_control\max_a</Name>
- <Unit>m/s2</Unit>
- <Value>0</Value>
- </Variable>
- </Parameters>
- <Initials>
- <Variable>
- <Name>C\state_initial</Name>
- <Value>0</Value>
- </Variable>
- <Variable>
- <Name>I2\state_initial</Name>
- <Value>0</Value>
- </Variable>
- <Variable>
- <Name>stepper_control\Position_control\state_initial</Name>
- <Value>0</Value>
- </Variable>
- <Variable>
- <Name>stepper_control\Velocity_control\state_initial</Name>
- <Value>0</Value>
- </Variable>
- <Variable>
- <Name>stepper_model\I1\state_initial</Name>
- <Value>0</Value>
- </Variable>
- <Variable>
- <Name>stepper_model\I2\state_initial</Name>
- <Value>0</Value>
- </Variable>
- <Variable>
- <Name>stepper_model\I\state_initial</Name>
- <Value>0</Value>
- </Variable>
- <Variable>
- <Name>stepper_model\RotorAngle\angle_initial</Name>
- <Unit>rad</Unit>
- <Value>0</Value>
- </Variable>
- </Initials>
- </Variables>
- <PlotSpecs>
- <VarNames>
- <VarName>time</VarName>
- <VarName>stepper_model\I2\p.e</VarName>
- <VarName>stepper_model\I2\p.f</VarName>
- <VarName>stepper_model\RotorAngle\angle</VarName>
- <VarName>stepper_model\MSe_a\effort</VarName>
- <VarName>stepper_model\MSe_b\effort</VarName>
- <VarName>stepper_model\Submodel2\a</VarName>
- <VarName>stepper_model\Submodel2\b</VarName>
- <VarName>stepper_control\Integrate\input</VarName>
- <VarName>stepper_control\Integrate\output</VarName>
- <VarName>stepper_control\Integrate1\output</VarName>
- <VarName>Square\output</VarName>
- <VarName>stepper_control\PD\error</VarName>
- <VarName>stepper_control\PD1\error</VarName>
- </VarNames>
- <Plots>
- <Plot>
- <PlotType>GraphPlot</PlotType>
- <BasePlot>
- <PlotId>1</PlotId>
- <UseWindowsBGColor>false</UseWindowsBGColor>
- <BGColor>16777215</BGColor>
- <PlotIsVisible>true</PlotIsVisible>
- </BasePlot>
- <Grid>
- <DrawGrid>true</DrawGrid>
- <GridColor>15780518</GridColor>
- <GridBorderLineColor>12624260</GridBorderLineColor>
- <GridZeroLineColor>0</GridZeroLineColor>
- <XTicks>10</XTicks>
- <YTicks>10</YTicks>
- <ZTicks>10</ZTicks>
- <Use3DLook>false</Use3DLook>
- </Grid>
- <PlotBGColor>16777215</PlotBGColor>
- <ShowPlotTitle>true</ShowPlotTitle>
- <TitlePosition>1</TitlePosition>
- <PlotTitle>model</PlotTitle>
- <ShowXValues>true</ShowXValues>
- <Fonts>
- <TitleFont>
- <Name>Arial</Name>
- <Height>12</Height>
- <PitchFamily>34</PitchFamily>
- <Weight>400</Weight>
- <Italic>0</Italic>
- <UnderLine>0</UnderLine>
- <StrikeOut>0</StrikeOut>
- <Color>0</Color>
- </TitleFont>
- <LabelFont>
- <Name>Arial</Name>
- <Height>12</Height>
- <PitchFamily>34</PitchFamily>
- <Weight>400</Weight>
- <Italic>0</Italic>
- <UnderLine>0</UnderLine>
- <StrikeOut>0</StrikeOut>
- <Color>0</Color>
- </LabelFont>
- <ValuesFont>
- <Name>Arial</Name>
- <Height>10</Height>
- <PitchFamily>34</PitchFamily>
- <Weight>400</Weight>
- <Italic>0</Italic>
- <UnderLine>0</UnderLine>
- <StrikeOut>0</StrikeOut>
- <Color>0</Color>
- </ValuesFont>
- <LegendFont>
- <Name>Arial</Name>
- <Height>12</Height>
- <PitchFamily>34</PitchFamily>
- <Weight>400</Weight>
- <Italic>0</Italic>
- <UnderLine>0</UnderLine>
- <StrikeOut>0</StrikeOut>
- <Color>0</Color>
- </LegendFont>
- </Fonts>
- <SharedXAxis>true</SharedXAxis>
- <SharedYAxis>false</SharedYAxis>
- <SharedZAxis>false</SharedZAxis>
- <XAxes>
- <Axis>
- <Minimum>0.0</Minimum>
- <Maximum>2.0</Maximum>
- <Linear>true</Linear>
- <Scaling>3</Scaling>
- <Label>time</Label>
- </Axis>
- </XAxes>
- <YAxes>
- <Axis>
- <Minimum>-0.025</Minimum>
- <Maximum>0.025</Maximum>
- <Linear>true</Linear>
- <Scaling>2</Scaling>
- <Label>I2\p.e</Label>
- </Axis>
- <Axis>
- <Minimum>-25.0</Minimum>
- <Maximum>25.0</Maximum>
- <Linear>true</Linear>
- <Scaling>2</Scaling>
- <Label>I2\p.f</Label>
- </Axis>
- </YAxes>
- <ZAxes>
- </ZAxes>
- <Curves>
- <Curve>
- <LineColor>3355111</LineColor>
- <LineStyle>1</LineStyle>
- <TickColor>3355111</TickColor>
- <TickStyle>0</TickStyle>
- <CurveVisible>true</CurveVisible>
- <PixelThresshold>1</PixelThresshold>
- <LineThickness>1</LineThickness>
- <LineOrder>1</LineOrder>
- <ShowYValues>true</ShowYValues>
- <XCurveData>
- <ShowUnit>true</ShowUnit>
- <VarName>time</VarName>
- </XCurveData>
- <YCurveData>
- <ShowUnit>true</ShowUnit>
- <VarName>stepper_model\I2\p.e</VarName>
- </YCurveData>
- </Curve>
- <Curve>
- <LineColor>6076255</LineColor>
- <LineStyle>1</LineStyle>
- <TickColor>6076255</TickColor>
- <TickStyle>0</TickStyle>
- <CurveVisible>true</CurveVisible>
- <PixelThresshold>1</PixelThresshold>
- <LineThickness>1</LineThickness>
- <LineOrder>1</LineOrder>
- <ShowYValues>true</ShowYValues>
- <XCurveData>
- <ShowUnit>true</ShowUnit>
- <VarName>time</VarName>
- </XCurveData>
- <YCurveData>
- <ShowUnit>true</ShowUnit>
- <VarName>stepper_model\I2\p.f</VarName>
- </YCurveData>
- </Curve>
- </Curves>
- <Legenda>
- <ShowLegenda>true</ShowLegenda>
- <BorderPenColor>0</BorderPenColor>
- <BackgroundColor>16777215</BackgroundColor>
- </Legenda>
- </Plot>
- <Plot>
- <PlotType>GraphPlot</PlotType>
- <BasePlot>
- <PlotId>2</PlotId>
- <UseWindowsBGColor>false</UseWindowsBGColor>
- <BGColor>16777215</BGColor>
- <PlotIsVisible>true</PlotIsVisible>
- </BasePlot>
- <Grid>
- <DrawGrid>true</DrawGrid>
- <GridColor>15780518</GridColor>
- <GridBorderLineColor>12624260</GridBorderLineColor>
- <GridZeroLineColor>0</GridZeroLineColor>
- <XTicks>10</XTicks>
- <YTicks>10</YTicks>
- <ZTicks>10</ZTicks>
- <Use3DLook>false</Use3DLook>
- </Grid>
- <PlotBGColor>16777215</PlotBGColor>
- <ShowPlotTitle>true</ShowPlotTitle>
- <TitlePosition>1</TitlePosition>
- <PlotTitle>model(2)</PlotTitle>
- <ShowXValues>true</ShowXValues>
- <Fonts>
- <TitleFont>
- <Name>Arial</Name>
- <Height>12</Height>
- <PitchFamily>34</PitchFamily>
- <Weight>400</Weight>
- <Italic>0</Italic>
- <UnderLine>0</UnderLine>
- <StrikeOut>0</StrikeOut>
- <Color>0</Color>
- </TitleFont>
- <LabelFont>
- <Name>Arial</Name>
- <Height>12</Height>
- <PitchFamily>34</PitchFamily>
- <Weight>400</Weight>
- <Italic>0</Italic>
- <UnderLine>0</UnderLine>
- <StrikeOut>0</StrikeOut>
- <Color>0</Color>
- </LabelFont>
- <ValuesFont>
- <Name>Arial</Name>
- <Height>10</Height>
- <PitchFamily>34</PitchFamily>
- <Weight>400</Weight>
- <Italic>0</Italic>
- <UnderLine>0</UnderLine>
- <StrikeOut>0</StrikeOut>
- <Color>0</Color>
- </ValuesFont>
- <LegendFont>
- <Name>Arial</Name>
- <Height>12</Height>
- <PitchFamily>34</PitchFamily>
- <Weight>400</Weight>
- <Italic>0</Italic>
- <UnderLine>0</UnderLine>
- <StrikeOut>0</StrikeOut>
- <Color>0</Color>
- </LegendFont>
- </Fonts>
- <SharedXAxis>true</SharedXAxis>
- <SharedYAxis>true</SharedYAxis>
- <SharedZAxis>false</SharedZAxis>
- <XAxes>
- <Axis>
- <Minimum>0.0</Minimum>
- <Maximum>2.0</Maximum>
- <Linear>true</Linear>
- <Scaling>3</Scaling>
- <Label>time</Label>
- </Axis>
- </XAxes>
- <YAxes>
- <Axis>
- <Minimum>-30.0</Minimum>
- <Maximum>70.0</Maximum>
- <Linear>true</Linear>
- <Scaling>2</Scaling>
- <Label>angle</Label>
- </Axis>
- <Axis>
- <Minimum>-1.5</Minimum>
- <Maximum>3.5</Maximum>
- <Linear>true</Linear>
- <Scaling>2</Scaling>
- <Label>output</Label>
- </Axis>
- </YAxes>
- <ZAxes>
- </ZAxes>
- <Curves>
- <Curve>
- <LineColor>3355111</LineColor>
- <LineStyle>1</LineStyle>
- <TickColor>3355111</TickColor>
- <TickStyle>0</TickStyle>
- <CurveVisible>true</CurveVisible>
- <PixelThresshold>1</PixelThresshold>
- <LineThickness>1</LineThickness>
- <LineOrder>1</LineOrder>
- <ShowYValues>true</ShowYValues>
- <XCurveData>
- <ShowUnit>true</ShowUnit>
- <VarName>time</VarName>
- </XCurveData>
- <YCurveData>
- <ShowUnit>true</ShowUnit>
- <VarName>stepper_model\RotorAngle\angle</VarName>
- </YCurveData>
- </Curve>
- <Curve>
- <LineColor>6076255</LineColor>
- <LineStyle>1</LineStyle>
- <TickColor>6076255</TickColor>
- <TickStyle>0</TickStyle>
- <CurveVisible>true</CurveVisible>
- <PixelThresshold>1</PixelThresshold>
- <LineThickness>1</LineThickness>
- <LineOrder>1</LineOrder>
- <ShowYValues>true</ShowYValues>
- <XCurveData>
- <ShowUnit>true</ShowUnit>
- <VarName>time</VarName>
- </XCurveData>
- <YCurveData>
- <ShowUnit>true</ShowUnit>
- <VarName>Square\output</VarName>
- </YCurveData>
- </Curve>
- </Curves>
- <Legenda>
- <ShowLegenda>true</ShowLegenda>
- <BorderPenColor>0</BorderPenColor>
- <BackgroundColor>16777215</BackgroundColor>
- </Legenda>
- </Plot>
- <Plot>
- <PlotType>GraphPlot</PlotType>
- <BasePlot>
- <PlotId>3</PlotId>
- <UseWindowsBGColor>false</UseWindowsBGColor>
- <BGColor>16777215</BGColor>
- <PlotIsVisible>true</PlotIsVisible>
- </BasePlot>
- <Grid>
- <DrawGrid>true</DrawGrid>
- <GridColor>15780518</GridColor>
- <GridBorderLineColor>12624260</GridBorderLineColor>
- <GridZeroLineColor>0</GridZeroLineColor>
- <XTicks>10</XTicks>
- <YTicks>10</YTicks>
- <ZTicks>10</ZTicks>
- <Use3DLook>false</Use3DLook>
- </Grid>
- <PlotBGColor>16777215</PlotBGColor>
- <ShowPlotTitle>true</ShowPlotTitle>
- <TitlePosition>1</TitlePosition>
- <PlotTitle>model(1)</PlotTitle>
- <ShowXValues>true</ShowXValues>
- <Fonts>
- <TitleFont>
- <Name>Arial</Name>
- <Height>12</Height>
- <PitchFamily>34</PitchFamily>
- <Weight>400</Weight>
- <Italic>0</Italic>
- <UnderLine>0</UnderLine>
- <StrikeOut>0</StrikeOut>
- <Color>0</Color>
- </TitleFont>
- <LabelFont>
- <Name>Arial</Name>
- <Height>12</Height>
- <PitchFamily>34</PitchFamily>
- <Weight>400</Weight>
- <Italic>0</Italic>
- <UnderLine>0</UnderLine>
- <StrikeOut>0</StrikeOut>
- <Color>0</Color>
- </LabelFont>
- <ValuesFont>
- <Name>Arial</Name>
- <Height>10</Height>
- <PitchFamily>34</PitchFamily>
- <Weight>400</Weight>
- <Italic>0</Italic>
- <UnderLine>0</UnderLine>
- <StrikeOut>0</StrikeOut>
- <Color>0</Color>
- </ValuesFont>
- <LegendFont>
- <Name>Arial</Name>
- <Height>12</Height>
- <PitchFamily>34</PitchFamily>
- <Weight>400</Weight>
- <Italic>0</Italic>
- <UnderLine>0</UnderLine>
- <StrikeOut>0</StrikeOut>
- <Color>0</Color>
- </LegendFont>
- </Fonts>
- <SharedXAxis>true</SharedXAxis>
- <SharedYAxis>true</SharedYAxis>
- <SharedZAxis>false</SharedZAxis>
- <XAxes>
- <Axis>
- <Minimum>0.0</Minimum>
- <Maximum>2.0</Maximum>
- <Linear>true</Linear>
- <Scaling>3</Scaling>
- <Label>time</Label>
- </Axis>
- </XAxes>
- <YAxes>
- <Axis>
- <Minimum>-250.0</Minimum>
- <Maximum>250.0</Maximum>
- <Linear>true</Linear>
- <Scaling>1</Scaling>
- <Label>a</Label>
- </Axis>
- <Axis>
- <Minimum>-400.0</Minimum>
- <Maximum>600.0</Maximum>
- <Linear>true</Linear>
- <Scaling>1</Scaling>
- <Label>v</Label>
- </Axis>
- <Axis>
- <Minimum>-400.0</Minimum>
- <Maximum>600.0</Maximum>
- <Linear>true</Linear>
- <Scaling>1</Scaling>
- <Label>x</Label>
- </Axis>
- <Axis>
- <Minimum>-400.0</Minimum>
- <Maximum>600.0</Maximum>
- <Linear>true</Linear>
- <Scaling>1</Scaling>
- <Label>error v</Label>
- </Axis>
- <Axis>
- <Minimum>-400.0</Minimum>
- <Maximum>600.0</Maximum>
- <Linear>true</Linear>
- <Scaling>1</Scaling>
- <Label>error x</Label>
- </Axis>
- </YAxes>
- <ZAxes>
- </ZAxes>
- <Curves>
- <Curve>
- <LineColor>3355111</LineColor>
- <LineStyle>1</LineStyle>
- <TickColor>3355111</TickColor>
- <TickStyle>0</TickStyle>
- <CurveVisible>true</CurveVisible>
- <PixelThresshold>1</PixelThresshold>
- <LineThickness>1</LineThickness>
- <LineOrder>1</LineOrder>
- <ShowYValues>true</ShowYValues>
- <XCurveData>
- <ShowUnit>true</ShowUnit>
- <VarName>time</VarName>
- </XCurveData>
- <YCurveData>
- <ShowUnit>true</ShowUnit>
- <VarName>stepper_control\Integrate\input</VarName>
- </YCurveData>
- </Curve>
- <Curve>
- <LineColor>6076255</LineColor>
- <LineStyle>1</LineStyle>
- <TickColor>6076255</TickColor>
- <TickStyle>0</TickStyle>
- <CurveVisible>true</CurveVisible>
- <PixelThresshold>1</PixelThresshold>
- <LineThickness>1</LineThickness>
- <LineOrder>1</LineOrder>
- <ShowYValues>true</ShowYValues>
- <XCurveData>
- <ShowUnit>true</ShowUnit>
- <VarName>time</VarName>
- </XCurveData>
- <YCurveData>
- <ShowUnit>true</ShowUnit>
- <VarName>stepper_control\Integrate\output</VarName>
- </YCurveData>
- </Curve>
- <Curve>
- <LineColor>12553035</LineColor>
- <LineStyle>1</LineStyle>
- <TickColor>12553035</TickColor>
- <TickStyle>0</TickStyle>
- <CurveVisible>true</CurveVisible>
- <PixelThresshold>1</PixelThresshold>
- <LineThickness>1</LineThickness>
- <LineOrder>1</LineOrder>
- <ShowYValues>true</ShowYValues>
- <XCurveData>
- <ShowUnit>true</ShowUnit>
- <VarName>time</VarName>
- </XCurveData>
- <YCurveData>
- <ShowUnit>true</ShowUnit>
- <VarName>stepper_control\Integrate1\output</VarName>
- </YCurveData>
- </Curve>
- <Curve>
- <LineColor>15086320</LineColor>
- <LineStyle>1</LineStyle>
- <TickColor>15086320</TickColor>
- <TickStyle>0</TickStyle>
- <CurveVisible>true</CurveVisible>
- <PixelThresshold>1</PixelThresshold>
- <LineThickness>1</LineThickness>
- <LineOrder>1</LineOrder>
- <ShowYValues>true</ShowYValues>
- <XCurveData>
- <ShowUnit>true</ShowUnit>
- <VarName>time</VarName>
- </XCurveData>
- <YCurveData>
- <ShowUnit>true</ShowUnit>
- <VarName>stepper_control\PD\error</VarName>
- </YCurveData>
- </Curve>
- <Curve>
- <LineColor>15790150</LineColor>
- <LineStyle>1</LineStyle>
- <TickColor>15790150</TickColor>
- <TickStyle>0</TickStyle>
- <CurveVisible>true</CurveVisible>
- <PixelThresshold>1</PixelThresshold>
- <LineThickness>1</LineThickness>
- <LineOrder>1</LineOrder>
- <ShowYValues>true</ShowYValues>
- <XCurveData>
- <ShowUnit>true</ShowUnit>
- <VarName>time</VarName>
- </XCurveData>
- <YCurveData>
- <ShowUnit>true</ShowUnit>
- <VarName>stepper_control\PD1\error</VarName>
- </YCurveData>
- </Curve>
- </Curves>
- <Legenda>
- <ShowLegenda>true</ShowLegenda>
- <BorderPenColor>0</BorderPenColor>
- <BackgroundColor>16777215</BackgroundColor>
- </Legenda>
- </Plot>
- <Plot>
- <PlotType>GraphPlot</PlotType>
- <BasePlot>
- <PlotId>4</PlotId>
- <UseWindowsBGColor>false</UseWindowsBGColor>
- <BGColor>16777215</BGColor>
- <PlotIsVisible>true</PlotIsVisible>
- </BasePlot>
- <Grid>
- <DrawGrid>true</DrawGrid>
- <GridColor>15780518</GridColor>
- <GridBorderLineColor>12624260</GridBorderLineColor>
- <GridZeroLineColor>0</GridZeroLineColor>
- <XTicks>10</XTicks>
- <YTicks>10</YTicks>
- <ZTicks>10</ZTicks>
- <Use3DLook>false</Use3DLook>
- </Grid>
- <PlotBGColor>16777215</PlotBGColor>
- <ShowPlotTitle>true</ShowPlotTitle>
- <TitlePosition>1</TitlePosition>
- <PlotTitle>Window 2</PlotTitle>
- <ShowXValues>true</ShowXValues>
- <Fonts>
- <TitleFont>
- <Name>Arial</Name>
- <Height>12</Height>
- <PitchFamily>34</PitchFamily>
- <Weight>400</Weight>
- <Italic>0</Italic>
- <UnderLine>0</UnderLine>
- <StrikeOut>0</StrikeOut>
- <Color>0</Color>
- </TitleFont>
- <LabelFont>
- <Name>Arial</Name>
- <Height>12</Height>
- <PitchFamily>34</PitchFamily>
- <Weight>400</Weight>
- <Italic>0</Italic>
- <UnderLine>0</UnderLine>
- <StrikeOut>0</StrikeOut>
- <Color>0</Color>
- </LabelFont>
- <ValuesFont>
- <Name>Arial</Name>
- <Height>10</Height>
- <PitchFamily>34</PitchFamily>
- <Weight>400</Weight>
- <Italic>0</Italic>
- <UnderLine>0</UnderLine>
- <StrikeOut>0</StrikeOut>
- <Color>0</Color>
- </ValuesFont>
- <LegendFont>
- <Name>Arial</Name>
- <Height>12</Height>
- <PitchFamily>34</PitchFamily>
- <Weight>400</Weight>
- <Italic>0</Italic>
- <UnderLine>0</UnderLine>
- <StrikeOut>0</StrikeOut>
- <Color>0</Color>
- </LegendFont>
- </Fonts>
- <SharedXAxis>true</SharedXAxis>
- <SharedYAxis>true</SharedYAxis>
- <SharedZAxis>false</SharedZAxis>
- <XAxes>
- <Axis>
- <Minimum>0.0</Minimum>
- <Maximum>2.0</Maximum>
- <Linear>true</Linear>
- <Scaling>3</Scaling>
- <Label>time</Label>
- </Axis>
- </XAxes>
- <YAxes>
- <Axis>
- <Minimum>-5.0</Minimum>
- <Maximum>5.0</Maximum>
- <Linear>true</Linear>
- <Scaling>2</Scaling>
- <Label>a</Label>
- </Axis>
- <Axis>
- <Minimum>-5.0</Minimum>
- <Maximum>5.0</Maximum>
- <Linear>true</Linear>
- <Scaling>2</Scaling>
- <Label>effort a</Label>
- </Axis>
- <Axis>
- <Minimum>-5.0</Minimum>
- <Maximum>5.0</Maximum>
- <Linear>true</Linear>
- <Scaling>2</Scaling>
- <Label>effort b</Label>
- </Axis>
- <Axis>
- <Minimum>-5.0</Minimum>
- <Maximum>5.0</Maximum>
- <Linear>true</Linear>
- <Scaling>2</Scaling>
- <Label>b</Label>
- </Axis>
- </YAxes>
- <ZAxes>
- </ZAxes>
- <Curves>
- <Curve>
- <LineColor>3355111</LineColor>
- <LineStyle>1</LineStyle>
- <TickColor>3355111</TickColor>
- <TickStyle>0</TickStyle>
- <CurveVisible>true</CurveVisible>
- <PixelThresshold>1</PixelThresshold>
- <LineThickness>1</LineThickness>
- <LineOrder>1</LineOrder>
- <ShowYValues>true</ShowYValues>
- <XCurveData>
- <ShowUnit>true</ShowUnit>
- <VarName>time</VarName>
- </XCurveData>
- <YCurveData>
- <ShowUnit>true</ShowUnit>
- <VarName>stepper_model\Submodel2\a</VarName>
- </YCurveData>
- </Curve>
- <Curve>
- <LineColor>6076255</LineColor>
- <LineStyle>1</LineStyle>
- <TickColor>6076255</TickColor>
- <TickStyle>0</TickStyle>
- <CurveVisible>true</CurveVisible>
- <PixelThresshold>1</PixelThresshold>
- <LineThickness>1</LineThickness>
- <LineOrder>1</LineOrder>
- <ShowYValues>true</ShowYValues>
- <XCurveData>
- <ShowUnit>true</ShowUnit>
- <VarName>time</VarName>
- </XCurveData>
- <YCurveData>
- <ShowUnit>true</ShowUnit>
- <VarName>stepper_model\MSe_a\effort</VarName>
- </YCurveData>
- </Curve>
- <Curve>
- <LineColor>12553035</LineColor>
- <LineStyle>1</LineStyle>
- <TickColor>12553035</TickColor>
- <TickStyle>0</TickStyle>
- <CurveVisible>true</CurveVisible>
- <PixelThresshold>1</PixelThresshold>
- <LineThickness>1</LineThickness>
- <LineOrder>1</LineOrder>
- <ShowYValues>true</ShowYValues>
- <XCurveData>
- <ShowUnit>true</ShowUnit>
- <VarName>time</VarName>
- </XCurveData>
- <YCurveData>
- <ShowUnit>true</ShowUnit>
- <VarName>stepper_model\MSe_b\effort</VarName>
- </YCurveData>
- </Curve>
- <Curve>
- <LineColor>15086320</LineColor>
- <LineStyle>1</LineStyle>
- <TickColor>15086320</TickColor>
- <TickStyle>0</TickStyle>
- <CurveVisible>true</CurveVisible>
- <PixelThresshold>1</PixelThresshold>
- <LineThickness>1</LineThickness>
- <LineOrder>1</LineOrder>
- <ShowYValues>true</ShowYValues>
- <XCurveData>
- <ShowUnit>true</ShowUnit>
- <VarName>time</VarName>
- </XCurveData>
- <YCurveData>
- <ShowUnit>true</ShowUnit>
- <VarName>stepper_model\Submodel2\b</VarName>
- </YCurveData>
- </Curve>
- </Curves>
- <Legenda>
- <ShowLegenda>true</ShowLegenda>
- <BorderPenColor>0</BorderPenColor>
- <BackgroundColor>16777215</BackgroundColor>
- </Legenda>
- </Plot>
- </Plots>
- <PlotPanels>
- <PlotPanel>
- <PlotPanelId>1</PlotPanelId>
- <PlotPanelVisible>true</PlotPanelVisible>
- <Name>Window 1</Name>
- <Tiling>0</Tiling>
- <PlotIds>
- <PlotId>1</PlotId>
- <PlotId>2</PlotId>
- <PlotId>3</PlotId>
- </PlotIds>
- <ToggleState>Base</ToggleState>
- </PlotPanel>
- <PlotPanel>
- <PlotPanelId>2</PlotPanelId>
- <PlotPanelVisible>false</PlotPanelVisible>
- <Name>Window 2</Name>
- <Tiling>2</Tiling>
- <PlotIds>
- <PlotId>4</PlotId>
- </PlotIds>
- <ToggleState>Base</ToggleState>
- </PlotPanel>
- </PlotPanels>
- <WindowRectangles virtualDesktopWidth="5760" virtualDesktopHeight="1080">
- <WindowRectangle monitor="1" left="-1920" top="0" right="0" bottom="1080" plotpanelid="1">
- 0.0260417 0.025 0.908854 0.872222
- </WindowRectangle>
- <WindowRectangle monitor="2" left="1920" top="0" right="3840" bottom="1080" plotpanelid="2">
- 0.172917 0.158333 0.841667 0.919444
- </WindowRectangle>
- </WindowRectangles>
- </PlotSpecs>
- <RunSpecs>
- <SimulatorSettings>
- <StartTime>0.0</StartTime>
- <FinishTime>2.0</FinishTime>
- <AllowPassFinishTime>false</AllowPassFinishTime>
- <Warp>false</Warp>
- <FPGonio>false</FPGonio>
- <UseOutputAfterEach>false</UseOutputAfterEach>
- <OutputAfterEach>0.1</OutputAfterEach>
- <EventEpsilon>1.0e-6</EventEpsilon>
- <AlgebraicTolerance>1.0e-7</AlgebraicTolerance>
- <SteadyStateAnalysis>false</SteadyStateAnalysis>
- <UpdateHoldInstructions>true</UpdateHoldInstructions>
- </SimulatorSettings>
- <IntegrationMethods>
- <IntegrationMethod>
- <Name>Euler</Name>
- <StepSize>0.01</StepSize>
- <AutoStepSize>false</AutoStepSize>
- </IntegrationMethod>
- <IntegrationMethod>
- <Name>BackwardEuler</Name>
- <AbsoluteTolerance>1.0e-5</AbsoluteTolerance>
- <RelativeTolerance>1.0e-5</RelativeTolerance>
- <AlgebraicAbsoluteTolerance>1.0e-5</AlgebraicAbsoluteTolerance>
- <AlgebraicRelativeTolerance>1.0e-5</AlgebraicRelativeTolerance>
- <StepSize>0.01</StepSize>
- <Alpha>1.0</Alpha>
- </IntegrationMethod>
- <IntegrationMethod>
- <Name>AdamsBashforth</Name>
- <StepSize>0.01</StepSize>
- <AutoStepSize>false</AutoStepSize>
- </IntegrationMethod>
- <IntegrationMethod>
- <Name>RungeKutta2</Name>
- <StepSize>0.01</StepSize>
- <AutoStepSize>false</AutoStepSize>
- </IntegrationMethod>
- <IntegrationMethod>
- <Name>RungeKutta4</Name>
- <StepSize>1.0e-4</StepSize>
- <AutoStepSize>false</AutoStepSize>
- </IntegrationMethod>
- <IntegrationMethod>
- <Name>RungeKutta8</Name>
- <UseInitialStepSize>false</UseInitialStepSize>
- <InitialStepSize>0.0</InitialStepSize>
- <UseMaximumStepSize>false</UseMaximumStepSize>
- <MaximumStepSize>0.0</MaximumStepSize>
- <AbsoluteTolerance>1.0e-6</AbsoluteTolerance>
- <RelativeTolerance>1.0e-6</RelativeTolerance>
- <SafetyFactor>0.9</SafetyFactor>
- <Factor1>0.33</Factor1>
- <Factor2>6.0</Factor2>
- <Beta>0.0</Beta>
- <UseMaxNrSteps>false</UseMaxNrSteps>
- <MaxNrSteps>100000</MaxNrSteps>
- <UseStiffDetection>false</UseStiffDetection>
- <MaxNrStiffnessSteps>1000</MaxNrStiffnessSteps>
- </IntegrationMethod>
- <IntegrationMethod>
- <Name>RungeKuttaFehlberg</Name>
- <UseInitialStepSize>false</UseInitialStepSize>
- <InitialStepSize>0.0</InitialStepSize>
- <UseMaximumStepSize>false</UseMaximumStepSize>
- <MaximumStepSize>0.0</MaximumStepSize>
- <AbsoluteTolerance>1.0e-6</AbsoluteTolerance>
- <RelativeTolerance>1.0e-6</RelativeTolerance>
- </IntegrationMethod>
- <IntegrationMethod>
- <Name>VodeAdams</Name>
- <UseInitialStepSize>false</UseInitialStepSize>
- <InitialStepSize>0.0</InitialStepSize>
- <UseMaximumStepSize>false</UseMaximumStepSize>
- <MaximumStepSize>0.0</MaximumStepSize>
- <AbsoluteTolerance>1.0e-6</AbsoluteTolerance>
- <RelativeTolerance>1.0e-6</RelativeTolerance>
- <VodeUseBDF>false</VodeUseBDF>
- <VodeUseNewton>true</VodeUseNewton>
- </IntegrationMethod>
- <IntegrationMethod>
- <Name>BDFMethod</Name>
- <AbsoluteTolerance>1.0e-5</AbsoluteTolerance>
- <RelativeTolerance>1.0e-5</RelativeTolerance>
- <AlgebraicAbsoluteTolerance>1.0e-5</AlgebraicAbsoluteTolerance>
- <AlgebraicRelativeTolerance>1.0e-5</AlgebraicRelativeTolerance>
- <UseInitialStepSize>false</UseInitialStepSize>
- <InitialStepSize>0.0</InitialStepSize>
- <UseMaximumStepSize>false</UseMaximumStepSize>
- <MaximumStepSize>0.0</MaximumStepSize>
- </IntegrationMethod>
- <IntegrationMethod>
- <Name>MeBDFiMethod</Name>
- <AbsoluteTolerance>1.0e-5</AbsoluteTolerance>
- <RelativeTolerance>1.0e-5</RelativeTolerance>
- <AlgebraicAbsoluteTolerance>1.0e-5</AlgebraicAbsoluteTolerance>
- <AlgebraicRelativeTolerance>1.0e-5</AlgebraicRelativeTolerance>
- <UseInitialStepSize>false</UseInitialStepSize>
- <InitialStepSize>0.0</InitialStepSize>
- <UseMaximumStepSize>false</UseMaximumStepSize>
- <MaximumStepSize>0.0</MaximumStepSize>
- </IntegrationMethod>
- <SelectedIntegrationMethod>8</SelectedIntegrationMethod>
- </IntegrationMethods>
- </RunSpecs>
- <MultipleRun>
- <NrSteps>20</NrSteps>
- <CopyFromStates>false</CopyFromStates>
- <JoinParameterVariation>false</JoinParameterVariation>
- <ClearAfterRun>true</ClearAfterRun>
- <RedrawAfterRun>false</RedrawAfterRun>
- <DrawDuringSimulation>false</DrawDuringSimulation>
- <ActionBeforeOptimization>1</ActionBeforeOptimization>
- <CompareValue>0.0</CompareValue>
- <UseCompareValue>false</UseCompareValue>
- <MultipleRunType>Optimization</MultipleRunType>
- <Minimize>true</Minimize>
- <OptimizationVariable>Submodel3\RotorAngle\angle</OptimizationVariable>
- <CompareVariable>Square\output</CompareVariable>
- <ResulVarUsage>UseIntegralAbsolute</ResulVarUsage>
- <Tolerance>0.001</Tolerance>
- <OptimizationMethod>BroydonFletcherGoldfarbShanno</OptimizationMethod>
- <MultipleRunVariables>
- <MultipleRunVariable>
- <Name>stepper_control\PD1\kp</Name>
- <Minimum>1.0</Minimum>
- <Maximum>50.0</Maximum>
- <SweepMethod>Linear</SweepMethod>
- <Distribution>Uniform</Distribution>
- <Mean>15.0</Mean>
- <Deviation>3.75</Deviation>
- <TolerancePercentage>1.0</TolerancePercentage>
- <Nominal>10.0</Nominal>
- </MultipleRunVariable>
- <MultipleRunVariable>
- <Name>stepper_control\PD1\tauD</Name>
- <Minimum>1.0</Minimum>
- <Maximum>50.0</Maximum>
- <SweepMethod>Linear</SweepMethod>
- <Distribution>Uniform</Distribution>
- <Mean>6.0</Mean>
- <Deviation>1.5</Deviation>
- <TolerancePercentage>1.0</TolerancePercentage>
- <Nominal>10.0</Nominal>
- </MultipleRunVariable>
- </MultipleRunVariables>
- </MultipleRun>
- <ExportData>
- <WriteAsText>true</WriteAsText>
- <ReadAsText>true</ReadAsText>
- <WriteHeader>true</WriteHeader>
- <ReadHeader>true</ReadHeader>
- <ReadFilename></ReadFilename>
- <WriteFilename></WriteFilename>
- <DoWrite>false</DoWrite>
- <ExportVariables>
- </ExportVariables>
- <ImportVariables>
- </ImportVariables>
- </ExportData>
- <BreakPoints>
- </BreakPoints>
- <AnimationPlayback>
- <PlaybackSpeed>1.0</PlaybackSpeed>
- </AnimationPlayback>
- </ExpData>
- </Experiment>
- </Experiments>
- </Document>
|