scalar m1=4 [ kg ]; scalar m2=2 [ kg ]; scalar alpha=45 [ deg ]; scalar l=1 [ m ]; scalar g=9.81 [ N / kg ]; point pointO1=point( 0 [ m ], 0 [ m ], 0 [ m ] ); point pointO2=point( -l*cos(alpha), l*sin(alpha), 0 [ m ] ); point pointA=point( l*cos(alpha), -l*sin(alpha), 0 [ m ] ); point pointB=point( -l*cos(alpha), -l*sin(alpha), 0 [ m ] ); point pointC=point( l*cos(alpha)/2, -l*sin(alpha)/2, 0 [ m ] ); point pointD=point( 0 [ m ], -l*sin(alpha), 0 [ m ] ); point pointE=point( -l*cos(alpha), 0 [ m ], 0 [ m ] ); line lineAO1=polyLine( list( pointA, pointO1 ) ); line lineAB=polyLine( list( pointA, pointA, pointB ) ); line lineBO2=polyLine( list( pointB, pointO2 ) ); body bodyInert=body( color = RGB( 229, 229, 229 ) ); set ground = bodyInert; body bodyInert < ( pointO1, pointO2 ); body bodyAO1=body( color = RGB( 51, 15, 253 ) ); body bodyAO1 < ( lineAO1, pointC, pointA ); body bodyAB=body( color = RGB( 255, 153, 102 ) ); body bodyAB < ( lineAB, pointD ); body bodyBO2=body( color = RGB( 32, 255, 44 ) ); body bodyBO2 < ( lineBO2, pointE, pointB ); MIP MIP1=massPoint( pointC, m1 ); body bodyAO1 < ( MIP1 ); MIP MIP2=massPoint( pointD, m2 ); body bodyAB < ( MIP2 ); joint joint1=rotational( bodyInert, bodyAO1, pointO1, projectZ ); joint joint2=rotational( bodyInert, bodyBO2, pointO2, projectZ ); joint joint3=rotational( bodyAO1, bodyAB, pointA, projectZ ); joint joint4=rotational( bodyBO2, bodyAB, pointB, projectZ ); joint joint5=user( bodyBO2, bodyInert, nodePoint( pointE, visible = hide: ), noX:, yesY:, yesZ:, yesFiX:, yesFiY:, yesFiZ: ); gravity gravity1=parallel( reverse( projectY ) ); sensor sensorF=jointForce( force:, bodyBO2, pointE, projectX, joint5 ); sensor sensorFTheor=(m1 + m2)*g/tg(alpha); sensor sensor_deltaF_rel=abs((sensorF-sensorFTheor)/sensorFTheor); /\/////////////////////////////////////////////////////////////////////////////////// /\ Единицы измерения; set units = SI;