Fix Version/s: None
Sprint:TSSW Sprint - Jan 18 - Feb 1
Team:Telescope and Site
Update the hexapod code to reflect the modified circuit of limit switch recorded at H&R Limit Switches_v2.pptx. In the original design, the values of "input pin state" are Lo for pins 7, 8, 17, and 18 if the limit switch is not activated. However, they should be Hi now for the modified circuit, which is fault-safe. The codes of low-level controller and EUI should do the related modification. Otherwise, the system will always have the impression that the limit switch is triggered even though it is not, and block the system to enter the Enabled state to do the operation.
As a comparison, the following figures are the pin states read by Copley software.
M2 hexapod (modified circuit):
Camera hexapod (original circuit):
Felipe points out the following thing:
Now the drive is not sending a limit switch active signal but the software is getting a hi in the digital input 7, 8, 17 and 18, which is interpreted as a limit switch active by the software.
That's why I thought the drive was sending the same signal twice... it sends the raw digital input value and the interpretation by the drive.... both needs to be in agreement.
Note: This hardware modification will be applied to camera hexapod and rotator as well.
Note: When the interlock is triggered, the pings of 6 and 16 should be "Lo".
I updated the GUI and uploaded the rpm to Nexus. I still have the question why I need to swap the signal of limit switches in the application status. This is very confusing to me. Anyway, I built the executable and transferred to the management PC. This should be helpful for tomorrow's test.
Please help to review the PR:
Please ignore the first commit as the clang-format.
Overall this looks good. I had a few small suggestions on the C/C++ pull request. (I can't really review the LabVIEW pull request as I can't see the changes. I assume they are fine.)
I can get the status of limit switch correctly now. However, it looks like there is a wrong explanation of application status that I need to fix: