You could set the "useAxisFlange" option to "true" and provide it with an angle source.
model KeepVertical
Modelica.Mechanics.MultiBody.Parts.Body body(r_0.start = {0.0, 2, 0.0}) annotation(Placement(visible = true, transformation(origin = {90, -40}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
inner Modelica.Mechanics.MultiBody.World world annotation(Placement(visible = true, transformation(origin = {-120, -40}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
Modelica.Mechanics.MultiBody.Joints.Revolute revolute1(useAxisFlange = true) annotation(Placement(visible = true, transformation(origin = {0, -40}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
Modelica.Mechanics.Rotational.Sources.Position position1 annotation(Placement(visible = true, transformation(origin = {-20, -0}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
Modelica.Blocks.Sources.Constant const annotation(Placement(visible = true, transformation(origin = {-80, -0}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
Modelica.Mechanics.MultiBody.Parts.FixedTranslation fixedTranslation1(r = {0.0, 1, 0.0}) annotation(Placement(visible = true, transformation(origin = {-50, -40}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
Modelica.Mechanics.MultiBody.Parts.FixedTranslation fixedTranslation2(r = {0.0, 1, 0.0}) annotation(Placement(visible = true, transformation(origin = {50, -40}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
Modelica.Mechanics.MultiBody.Joints.Revolute revolute2(useAxisFlange = false, phi.start = 0.0174532925199433) annotation(Placement(visible = true, transformation(origin = {-82.531, -40}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
equation
connect(position1.flange, revolute1.axis) annotation(Line(visible = true, origin = {-3.333, -10}, points = {{-6.667, 10}, {3.333, 10}, {3.333, -20}}));
connect(const.y, position1.phi_ref) annotation(Line(visible = true, origin = {-50.5, -0}, points = {{-18.5, -0}, {18.5, 0}}, color = {0, 0, 127}));
connect(fixedTranslation1.frame_b, revolute1.frame_a) annotation(Line(visible = true, origin = {-25, -40}, points = {{-15, 0}, {15, 0}}, color = {95, 95, 95}, thickness = 0.5));
connect(revolute1.frame_b, fixedTranslation2.frame_a) annotation(Line(visible = true, origin = {25, -40}, points = {{-15, 0}, {15, 0}}, color = {95, 95, 95}, thickness = 0.5));
connect(fixedTranslation2.frame_b, body.frame_a) annotation(Line(visible = true, origin = {70, -40}, points = {{-10, 0}, {10, 0}}, color = {95, 95, 95}, thickness = 0.5));
connect(world.frame_b, revolute2.frame_a) annotation(Line(visible = true, origin = {-101.265, -40}, points = {{-8.735, 0}, {8.735, 0}}, color = {95, 95, 95}, thickness = 0.5));
connect(revolute2.frame_b, fixedTranslation1.frame_a) annotation(Line(visible = true, origin = {-66.265, -40}, points = {{-6.265, 0}, {6.265, 0}}, color = {95, 95, 95}, thickness = 0.5));
annotation(uses(Modelica(version = "4.0.0")), Diagram(coordinateSystem(extent = {{-150, -100}, {138.043, 100}}, preserveAspectRatio = true, initialScale = 0.1, grid = {10, 10})));
end KeepVertical;