Flexible Joint Model

Source Notebook

Model of a torque-driven flexible joint

Examples

Basic Examples (3) 

Retrieve the model:

In[1]:=
ResourceData[\!\(\*
TagBox["\"\<Flexible Joint Model\>\"",
#& ,
BoxID -> "ResourceTag-Flexible Joint Model-Input",
AutoDelete->True]\)]
Out[1]=

The icon:

In[2]:=
ResourceData[\!\(\*
TagBox["\"\<Flexible Joint Model\>\"",
#& ,
BoxID -> "ResourceTag-Flexible Joint Model-Input",
AutoDelete->True]\), "Icon"]
Out[2]=

The annotation:

In[3]:=
ResourceData[\!\(\*
TagBox["\"\<Flexible Joint Model\>\"",
#& ,
BoxID -> "ResourceTag-Flexible Joint Model-Input",
AutoDelete->True]\), "Annotation"]
Out[3]=

Available content elements:

In[4]:=
\!\(\*
TagBox[
RowBox[{"ResourceObject", "[", "\"\<Flexible Joint Model\>\"", "]"}],
#& ,
BoxID -> "ResourceTag-Flexible Joint Model-Input",
AutoDelete->True]\)["ContentElements"]
Out[4]=

The available model types:

In[5]:=
ResourceData[\!\(\*
TagBox["\"\<Flexible Joint Model\>\"",
#& ,
BoxID -> "ResourceTag-Flexible Joint Model-Input",
AutoDelete->True]\), "AvailableModelTypes"]
Out[5]=

The operating point:

In[6]:=
ResourceData[\!\(\*
TagBox["\"\<Flexible Joint Model\>\"",
#& ,
BoxID -> "ResourceTag-Flexible Joint Model-Input",
AutoDelete->True]\), "OperatingPoint"]
Out[6]=

The parameters:

In[7]:=
ResourceData[\!\(\*
TagBox["\"\<Flexible Joint Model\>\"",
#& ,
BoxID -> "ResourceTag-Flexible Joint Model-Input",
AutoDelete->True]\), "Parameters"]
Out[7]=

The numerical model:

In[8]:=
assm = ResourceData[\!\(\*
TagBox["\"\<Flexible Joint Model\>\"",
#& ,
BoxID -> "ResourceTag-Flexible Joint Model-Input",
AutoDelete->True]\)] /. ResourceData[\!\(\*
TagBox["\"\<Flexible Joint Model\>\"",
#& ,
BoxID -> "ResourceTag-Flexible Joint Model-Input",
AutoDelete->True]\), "Parameters"]
Out[8]=

Its angular position is unregulated to a disturbance in its position:

In[9]:=
OutputResponse[{assm, {0.2}}, 0, {t, 0, 15}];
Plot[%, {t, 0, 15}, PlotRange -> All]
Out[10]=

Its response is oscillatory because it has poles very close to the imaginary axis:

In[11]:=
ComplexListPlot[TransferFunctionPoles[ResourceData[\!\(\*
TagBox["\"\<Flexible Joint Model\>\"",
#& ,
BoxID -> "ResourceTag-Flexible Joint Model-Input",
AutoDelete->True]\), "TransferFunctionModel"] /. ResourceData[\!\(\*
TagBox["\"\<Flexible Joint Model\>\"",
#& ,
BoxID -> "ResourceTag-Flexible Joint Model-Input",
AutoDelete->True]\), "Parameters"]][[1, 1]], Sequence[
 AspectRatio -> 1, PlotMarkers -> Style["*", Large, 
GrayLevel[0]], Frame -> True, Axes -> {False, True}, PlotRange -> {{-0.01, 0.01}, {-20, 20}}]]
Out[11]=

Suba Thomas, "Flexible Joint Model" from the Wolfram Data Repository (2025)  

Data Resource History

Source Metadata

Publisher Information