How to give vibration from under the foot? can anybody guide me. i'm very new n my due date is very near due to the MCO .Please

1 Like

Hi Rizal ,

Please see e.g. this tutorial for activity envelope def
https://anyscript.org/tutorials/A_Getting_started_modeling/lesson4.html

Best regards
Søren

Hello, I have been studying vibration recently. I tried to modify the SeatedHuman Demo by adding AnyKinEqFourierDriver function on the seatseg.and studying the force of muscles under the vibration along the Y axis. Now I modify the constraint and drive in the environment file,
The previous constraints were as follows:
AnyFolder Jnt = {
AnyKinLinear SeatGlobalLinMeasure = {
AnyRefNode &SegNode = ..Seg.Seat.SeatAdjNode;
AnyRefNode &GroundNode = ..GlobalRef.GroundNode;
};

AnyKinRotational SeatGlobalRotMeasure = {
  AnyRefNode &SegNode = ..Seg.Seat.SeatAdjNode;
  AnyRefNode &GroundNode = ..GlobalRef.GroundNode;
  Type = RotVector;
  AngVelOnOff = On;
};        

AnyKinEq SeatGlobalConst = {
  AnyKinLinear &LinMeasure = .SeatGlobalLinMeasure;
  AnyKinRotational &RotMeasure = .SeatGlobalRotMeasure;
  MeasureOrganizer = {0, 2, 3, 4};
};        

The previous driver file is shown below:
AnyKinEqSimpleDriver SeatGlobalDrv = {
AnyKinLinear &LinMeasure = ..Jnt.SeatGlobalLinMeasure;
AnyKinRotational &RotMeasure = ..Jnt.SeatGlobalRotMeasure;
MeasureOrganizer = {1,5};
DriverPos = {-.DrvPos.SeatGlobalLinYPos,(-90+.DrvPos.SeatGlobalZRot)pi/180};
DriverVel = {-.DrvVel.SeatGlobalLinYVel,.DrvVel.SeatGlobalZRotVel
pi/180};
Reaction.Type = {On,On};
};
The modified driver and constraint files are shown below:
AnyFolder Jnt = {
AnyPrismaticJoint Ground_Segment_Joint =
{

AnyRefFrame &groundfoot =  ..Seg.Seat.SeatAdjNode;

Axis=y;

AnyRefFrame &segment1_node =     Main.Model.EnvironmentModel.GlobalRef1;

};
AnyKinEqFourierDriver Vibration =
{
Type = Sin;
Freq = 2; //Do not use too high freq
A = {{0, 0.1 }};
B = {{0, 0}};

AnyKinMeasure &humanmode = Main.Model.EnvironmentModel.Jnt.Ground_Segment_Joint;
};

and perform inverse kinematics to meet the constraint conditions,
but the model became very strange.How do I define this driver and constraint? THANK YOU for YOUR support

In addition I want to show you graphically is that the model that I'm talking about has become a very strange problem, the model has become this after performing the InverseDynamics

Hi Zhong,

You are creating a prismatic joint which will align the y axis of the two reference frames in the joint.

From your picture I think the node on the seat has its y axis along the seat plane and not normal to it.

Please try to visualize the reference nodes you are adding the joint on, to ensure it is correct to align the y axis.

Very often it can be necessary to rotate a node before it is being used in a joint.

This can be done using the ARel property of the node.

In this case you could add a new node inside the node, rotate it and use in the joint so e.g.


AnyRefFrame &groundfoot =  .Seg.Seat.SeatAdjNode;

groundfoot ={  //open the reference and add a node in it
AnyRefNode RotNode ={
ARel =RotMat(0.5*pi,z);  //rotate 90 deg around z as example.
};

};

AnyPrismaticJoint Ground_Segment_Joint =
{

AnyRefFrame &groundfoot =  ..Seg.Seat.SeatAdjNode.RotNode ;  //use the rotated node.
  


Axis=y;

AnyRefFrame &segment1_node =     Main.Model.EnvironmentModel.GlobalRef1;
};

instead of adding a node you can also simply rotate the node itself, but by doing it in this way we are sure that the something else referring to the same node is not changed.

Best regards
Søren

This topic was automatically closed 125 days after the last reply. New replies are no longer allowed.