-
Notifications
You must be signed in to change notification settings - Fork 184
Universal PTO joint #1466
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Universal PTO joint #1466
Conversation
|
Hey @jniffene I fixed the sign of the
*Note that we manually calculate this using as total force - actuation force - constraint force. The actuation forces are as expected. The total force does not have an obvious value when observing qualitatively. The constraint force and yaw is not obvious either, so i can't tell if the issue with the yaw internal mechanics force is related to the total or constraint force values. Either way, I really can't figure out what is going on here that would result in this force output. All of the other joints have the expected force values. Maybe there is something in our pre-processing? I do not think we are missing any kind of rotational transformation. I tested this out by back-calculating the angular positions of the PTO if the constraint force was limited to yaw, but the results are non-sensical. So I don't think we're missing anything. TBD on what the problem here is |
|
@jniffene I looked into this problem further and don't have a solution yet. I don't think the discrepancies described above are any of our doing. The position, velocity, acceleration, have appropriate values for the universal PTO. I still see that forceConstraint has a very small non-zero value in pitch (~1e-6), and forceInternalMechanics has the same in yaw (~1e+0). Maybe this is due to how the multiple body system is solved numerically and it retains some very small discrepancies in those quantities? I have some matlab office hours on thursday this week that I will attend and bring this up |
|
I have a meeting with Mathworks next week to better understand this universal joint block. I will update more after that meeting. |
|
I discussed with the Simscape team today and they're helping me understand the behavior of the constraint torque and damping torque in the universal joint. |
|
Attaching a zip file of the test case for reference: |
|
@akeeste Do you think we need to include the Run from Simulink feature for this block? |
The WEC-Sim GUI was removed in #1474, so I removed it from here as well. We don't call our specific PTO/Constraint types in our documentation, except for this screenshot: https://wec-sim.github.io/WEC-Sim/main/user/code_structure.html#pto-blocks I can update that figure. |
|
The constraint force and internal mechanics forces here require special handling due to how they're output, but for this particular joint I think those are likely of lower importance for a user than having the joint that allows the correct motion. I suggest we merge this with that understanding so that the joint is available to use. It can be updated in the future. From Mathworks: |
|
Thank you @akeeste! |
|
@jniffene I believe in our last reviews this PR was otherwise ready to go aside from understanding the force output. Since we more information on that and can confirm that the block is working correctly, I will merge this PR. |
|
@akeeste we discussed this PR during our morning checkin, it's ready for a merge. |
This PR adds a universal joint to the PTO library. There are no changes to the other PTO library blocks.
This is required for a TEAMER award. The PTO hard stop and extension parameters were updated to allow for inputs of size [1 n] in this case where multiple joint DOFs have motion.