Uploaded image for project: 'Data Management'
  1. Data Management
  2. DM-28434

Update the Hexapod Code to Reflect the Modified Circuit of Limit Switch

    XMLWordPrintable

    Details

      Description

      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".

        Attachments

        1. appStatusRetract.png
          appStatusRetract.png
          29 kB
        2. Axis_A.jpg
          Axis_A.jpg
          162 kB
        3. CamHexDr1_axis_A.jpg
          CamHexDr1_axis_A.jpg
          167 kB
        4. driveStatus.png
          driveStatus.png
          127 kB
        5. H&R Limit Switches_v2.pptx
          13.57 MB
        6. reflectUpdatedInputPinStates.png
          reflectUpdatedInputPinStates.png
          431 kB
        7. reversedOrder1.png
          reversedOrder1.png
          18 kB
        8. reversedOrder2.png
          reversedOrder2.png
          18 kB

          Issue Links

            Activity

            Hide
            ttsai Te-Wei Tsai added a comment -

            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:

            Show
            ttsai Te-Wei Tsai added a comment - 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:
            Hide
            ttsai Te-Wei Tsai added a comment -

            Fixed the inconsistency of panels for the limit switches:

            Show
            ttsai Te-Wei Tsai added a comment - Fixed the inconsistency of panels for the limit switches:
            Hide
            ttsai Te-Wei Tsai added a comment - - edited

            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.

            Show
            ttsai Te-Wei Tsai added a comment - - edited 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.
            Hide
            ttsai Te-Wei Tsai added a comment - - edited

            Please help to review the PR:
            1. https://github.com/lsst-ts/ts_hexapod_controller/pull/7
            2. https://github.com/lsst-ts/ts_hexapod_gui/pull/3

            Please ignore the first commit as the clang-format.

            Thanks!

            Show
            ttsai Te-Wei Tsai added a comment - - edited Please help to review the PR: 1. https://github.com/lsst-ts/ts_hexapod_controller/pull/7 2. https://github.com/lsst-ts/ts_hexapod_gui/pull/3 Please ignore the first commit as the clang-format. Thanks!
            Hide
            rowen Russell Owen added a comment -

            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.)

            Show
            rowen Russell Owen added a comment - 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.)

              People

              Assignee:
              ttsai Te-Wei Tsai
              Reporter:
              ttsai Te-Wei Tsai
              Reviewers:
              Russell Owen
              Watchers:
              Bo Xin [X] (Inactive), Felipe Daruich, Russell Owen, Te-Wei Tsai
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:
                Start date:
                End date:

                  Jenkins

                  No builds found.