William,
Your simulation looks good. It is a nice approach. What you essentially did was construct a (stiff) spring between a position reference and your system. The torque on the system is proportional to the displacement. You set your spring constant to 0 when your timer value is reached. I suggest deleting the dummy body -- it is unnecessary -- you create an absolute position reference and tie it to the actual system with a spring (just as eleastogap puts a spring between the absolute reference and the actual system). Elastogap does not need the mass component and neither do you. (unless you were using it for something else?)
In my post the spring in elastogap is moved out of the way at time = 5.0. In your approach you set the spring constant to 0 at time = 5.0. Both approaches will work.
If you use your approach in more instances, I suggest you make a "dynamic spring" block out of your sensor, Torque, realExpression and Product blocks. You can even add the revolute joint and position blocks to make one block that takes a position input, a "trigger time" and has two flanges -- it becomes your new "EnforceMotion" or "EnforcePosition" block and you can reuse it in other situations.
For example the Elastogap solution I posted came out of a block I was using to model an object sitting on a surface subject to accelerations so it could leave the surface at any time. By adding a position reference to what was the "fixed" surface it became a "moving wall" for this application.
For your application, I agree that your approach makes more sense since you have no intention of allowing the object to leave the position constraint early under dynamic influences.
Nice work.
Regards,
Neil