Forum Replies Created
-
AuthorPosts
-
r0m1Blocked
Hello,
First, absolutely sorry for this late response, I had to take care of others programming stuffs these last few weeks.
I tried to implement a velocity controller on an actuator to shape control a deformable object. To do so, I use the Broyden algorithm to numerically estimate the inverse Jacobian of the deformation of the object with regards to the actuator displacements. You can find the scripts and meshes here: https://filesender.renater.fr/?s=download&token=cb2c0a34-50f0-ffb2-4cfb-bf4a98133bf3
The control of the actuator is performed using the LinearVelocityConstraint (https://github.com/sofa-framework/sofa/blob/0f41388d84b6990d0edf240000f8ffa69bf3d735/modules/SofaBoundaryCondition/LinearVelocityConstraint.h) and that is where it does not work. Indeed, the MechanicalObject on which the LinearVelocityConstraint should be applied does not move. Could you explain me the following things:
– What does the attribute “coordinates” means ? It is described as “the coordinates on which to applay velocities” but what is the difference with the attribute “indices” for instance ?
– I tried to use the LinearVelocityConstraint in the example examples/Components/constraint/LinearMovementConstraint.scn replacing the LinearMovementConstraint. In this case, the LinearVelocityConstraint took a 6D vector (3 translations, 3 rotations) while when I am trying to use it with a FastTetrahedronFEMForceField it just expects a 3D-vector (3 translations). What is the “normal” behavior ?
Regards,
Romainr0m1BlockedOk it would be really nice to get in touch with the people developing this plugin to get some advises or to begin a collaboration !
For the moment I found these articles
https://hal.inria.fr/hal-01500912/file/RAL2017.pdf [COEVOET, E. et al, 2017]
http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=6631138 [DURIEZ, C. 2013]
which seem to be an interesting starting point for what I want to do.Regards,
Romain
r0m1BlockedHello,
First thanks for your answer ! I am going to look through the DEFROST team work and the article you mentioned.
Meanwhile, could you tell me if there are any inverse tools in Sofa or should I made my own ?
Best regards,
Romain
r0m1BlockedIt is the same the only force value which is present is the one due to gravity.
I also checked the “externalForce” vector of fixed mechanical object: there is a value different from 0 before the contact happens, which is even bigger than the value when the collision occurs. Can it be because the fixed object is attached to a fixed base with an AttachConstraint ?
r0m1BlockedHello Hugo,
Thanks for your help, but unfortunately it did not work.
The moving object is moved thanks to a LinearForceField. When we try to get the ‘force’ vector of the MechanicalObject of the moving object, we get the value we fixed inside the LinearForceField. The ‘force’ vector of the MechanicalObject does not change even when the contact happens. -
AuthorPosts