This tutorial shows how to model a solid with a rotational axis
of symmetry using the Solid block `Revolution`

shape.
The solid considered is a circular dome with a quarter circle for
cross section. You model the dome geometry by specifying the cross-section
coordinates in the solid *xz* plane. The Solid block
then obtains the dome geometry by revolving the cross section specified
about the reference frame *z* axis.

In this tutorial, you:

Parameterize the cross-section coordinates in terms of relevant dimensions.

Specify the cross-section coordinates in the Solid block dialog box.

Generate the dome geometry in the Solid block visualization pane.

To represent the dome geometry, first identify its cross-section shape. This is the 2-D shape that Simscape™ Multibody™ revolves to obtain the 3-D dome. You can then specify the cross-section coordinates in the Solid block dialog box. These coordinates must satisfy certain restrictions. See Revolution and General Extrusion Shapes.

**Dome Cross Section**

The [0 0] cross-section coordinate identifies the reference frame origin for this solid. To place the solid reference frame at the dome base center, you specify the coordinates so that the [0 0] coordinate coincides with the base center. By parameterizing the cross-section coordinates in terms of the relevant dome dimensions, you can quickly change the dome dimensions without having to reenter the cross-section coordinates. The figure shows the parameterized cross-section coordinate points.

To define the dome cross-section, first define two angle arrays—one
in counterclockwise order, running from 0–90°; the other
in a clockwise order running from 90–0°. You can then
use the first array to define the outer cross-section coordinates,
and the second array to define the inner cross-section coordinates.
You do that using the MATLAB^{®} `cos`

and `sin`

functions.

At the MATLAB command prompt, enter

`smnew`

. A new Simscape Multibody model opens with some commonly used blocks. Delete all but the Solid block.In the Solid block dialog box, specify the following parameters. You later initialize the different MATLAB variables in a subsystem mask.

Parameter Select or Enter **Geometry**>**Shape**`Revolution`

**Geometry**>**Cross-Section**`CS`

, units of`cm`

**Inertia**>**Density**`Rho`

**Graphic**>**Visual Properties**>**Color**`RGB`

Select the Solid block and generate a subsystem, e.g., by pressing

**Ctrl+G**.

Select the Subsystem block and create a subsystem mask, e.g., by pressing

**Ctrl+M**.In the

**Parameters & Dialog**tab of the Mask Editor, drag four Edit boxes into the**Parameters**group and specify these parameters.Prompt Name `Base Radius`

`R`

`Wall Thickness`

`T`

`Density`

`Rho`

`Color`

`RGB`

In the

**Initialization**tab of the Mask Editor, define the cross-section coordinates and assign them to the MATLAB variable`CS`

:% Circular dome outer coordinates: Alpha = (0:0.01:pi/2)'; OuterCS = R*[cos(Alpha), sin(Alpha)]; % Circular dome inner coordinates: Beta = (pi/2:-0.01:0)'; InnerCS = (R-T)*[cos(Beta), sin(Beta)]; CS = [OuterCS; InnerCS];

In the Subsystem block dialog box, specify the numerical values of the solid properties. The table shows some values that you can enter.

Parameter Enter **Base Radius**`1`

**Wall Thickness**`0.1`

**Density**`2700`

**Color**`[0.85 0.45 0]`

You can now visualize the dome solid. To do this, look under
the Subsystem mask—e.g., by selecting the Subsystem block and
pressing **Ctrl+U**—and open the
Solid block dialog box. The solid visualization pane shows the solid
that you modeled.

Parameterizing the solid dimensions in terms of MATLAB variables enables you to modify the solid shape without having to redefine its cross-section coordinates. You can change the solid size and proportions simply by changing their values in the Subsystem block dialog box. The figure shows some examples.

Was this topic helpful?