diff --git a/index.html b/index.html index 56db05c..07df473 100644 --- a/index.html +++ b/index.html @@ -4,7 +4,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + Gravity with Simscape Models @@ -269,12 +269,12 @@ for the JavaScript code in this tag.

Table of Contents

@@ -303,8 +303,15 @@ Then, the simulation will start at equilibrium, but all the elements will be &ld The three solutions are tested below.

-
-

1 Simulink

+
+

+All the files (data and Matlab scripts) are accessible here. +

+ +
+ +
+

1 Simulink

open 'gravity_test.slx'
@@ -312,7 +319,7 @@ The three solutions are tested below.
 
-
+

simscape_model.png

Figure 1: Simscape model used for the simulations

@@ -320,8 +327,8 @@ The three solutions are tested below.
-
-

2 Initial Simulation

+
+

2 Initial Simulation

g = -10; % [m/s^2]
@@ -337,8 +344,32 @@ F_act = 0; % Actuator force [N]
 
+
+
out_init = sim('gravity_test.slx')
 
-
+out_init.d.Name = 'Displacement'; +out_init.Fm.Name = 'Force Sensor'; +
+
+ +
+
figure;
+subplot(1,2,1)
+plot(out_init.d)
+title('');
+subplot(1,2,2)
+plot(out_init.Fm)
+title('');
+
+
+ +
+
<<plt-matlab>>
+
+
+ + +

sim_init.png

Figure 2: Initial Simulation (png, pdf)

@@ -346,8 +377,8 @@ F_act = 0; % Actuator force [N]
-
-

3 Change the equilibrium position

+
+

3 Change the equilibrium position

l0 = 0; % Initial wanted position [m]
@@ -358,8 +389,32 @@ F_act = 0; % Actuator force [N]
 
+
+
out = sim('gravity_test.slx');
 
-
+out.d.Name = 'Displacement'; +out.Fm.Name = 'Force Sensor'; +
+
+ +
+
figure;
+subplot(1,2,1)
+plot(out.d)
+title('');
+subplot(1,2,2)
+plot(out.Fm)
+title('');
+
+
+ +
+
<<plt-matlab>>
+
+
+ + +

sim_change_eq_position.png

Figure 3: Simulation after changing the equilibrium position of the joint (png, pdf)

@@ -367,8 +422,8 @@ F_act = 0; % Actuator force [N]
-
-

4 Add external force

+
+

4 Add external force

l0 = 0; % Initial wanted position [m]
@@ -379,16 +434,40 @@ F_act = 0; % Actuator force [N]
 
+
+
out = sim('gravity_test.slx');
 
-
+out.d.Name = 'Displacement'; +out.Fm.Name = 'Force Sensor'; +
+
+ +
+
figure;
+subplot(1,2,1)
+plot(out.d)
+title('');
+subplot(1,2,2)
+plot(out.Fm)
+title('');
+
+
+ +
+
<<plt-matlab>>
+
+
+ + +

sim_add_external_force.png

Figure 4: Simulater after adding an external force applied to the solid (png, pdf)

-
-

5 Change initial position

+
+

5 Change initial position

l0 = out_init.d.Data(end); % Initial wanted position [m]
@@ -399,26 +478,72 @@ F_act = 0; % Actuator force [N]
 
+
+
out = sim('gravity_test.slx');
 
-
+out.d.Name = 'Displacement'; +out.Fm.Name = 'Force Sensor'; +
+
+ +
+
figure;
+subplot(1,2,1)
+plot(out.d)
+title('');
+subplot(1,2,2)
+plot(out.Fm)
+title('');
+
+
+ +
+
<<plt-matlab>>
+
+
+ + +

sim_change_initial_position.png

Figure 5: Simulation after changing the initial position of the joint (png, pdf)

-
-

6 Conclusion

+
+

6 Conclusion

+Three techniques: +

+
    +
  • Change the equilibrium position +
      +
    • This does not change the equilibrium position of the system
    • +
  • +
  • Add external force +
      +
    • May not be physical
    • +
  • +
  • Change the initial position +
      +
    • The static position is not the same as the static position without gravity
    • +
    • Very easy to implement
    • +
  • +
+ +
+

Changing the equilibrium position of each joint seem the most practical solution.

+ +

Author: Dehaeze Thomas

-

Created: 2020-01-30 jeu. 15:07

+

Created: 2020-01-30 jeu. 15:24

diff --git a/index.org b/index.org index a6ab7b5..8415261 100644 --- a/index.org +++ b/index.org @@ -221,4 +221,15 @@ All the files (data and Matlab scripts) are accessible [[file:data/simscape_grav #+CAPTION: Simulation after changing the initial position of the joint ([[./figs/sim_change_initial_position.png][png]], [[./figs/sim_change_initial_position.pdf][pdf]]) [[file:figs/sim_change_initial_position.png]] * Conclusion -Changing the equilibrium position of each joint seem the most practical solution. +Three techniques: +- Change the equilibrium position + - This does not change the equilibrium position of the system +- Add external force + - May not be physical +- Change the initial position + - The static position is not the same as the static position without gravity + - Very easy to implement + +#+begin_important + Changing the equilibrium position of each joint seem the most practical solution. +#+end_important