Motion Scope Improvements

Motion Scope Improvement Suggestions

The scope is a really useful tool. I can think of some ways that it could be improved though.

  1. Traces
    1. Add more “standard” traces.
      1. Currently, actual/target pos/vel/acc already exist. Those are great.
        1. (Adding custom ones gets tedious very quickly, especially if you change network topology or have to do it on several machines.)
      2. “Standard” EtherCAT things would be great to see.
        1. Status Word (states)
          1. Not ready to switch on
          2. Switch on disabled
          3. Ready to switch on
          4. Switched on
          5. Operation enabled
          6. Quick stop active
          7. Fault reaction active
          8. Fault
        2. Control Word (commands)
          1. Shutdown
          2. Disable Voltage
          3. Disable Operation
          4. Enable Operation
          5. Fault Reset
      3. Any PDO datum that would show up in RapidSetup would be cool to see as a standard trace in the scope.
      4. Add a user buffer by index.
      5. Axis/MultiAxis enable state
      6. Create some way for a RapidCode client to create its own “standard” traces that would be available in the scope. This way, if I was using some firmware memory in a specific way, I could make that available (to me) as a trace that survived network topology changes.
    2. Make a more robust way to export the configuration (without the data) that could be imported on another machine.
    3. Allow more than 31 traces.
      1. (This was the thing that finally forced me to work around the scope.)
  2. Visualization
    1. Auto scale is kind of cool, but if there are very many traces, it becomes difficult to compare magnitudes.
      1. (I didn’t spend a lot of time trying to do this. I just found it unhelpful that I can’t trust the rendered magnitude on the graph between two or more series.)
    2. It would be great if there were a way to examine multiple traces at once.
      1. Right now, there’s not a nice way to “shift” a graph up or down so that I can look at, say, the commanded velocity of two different axes or commanded position and velocity of a single axis.
      2. I can imagine being able to shift a series up or down or having the plots broken up into multiple graphs that share the x-axis.
      3. There’s not a way to “hide” a series for which you have data (to declutter the visualization).
    3. It would be cool if there were a nice way to format the y-axis values. I frequently see vaules with floating-point approximation noise at the end (e.g. “84277.900000000008731”).
    4. Printing
      1. I would expect just the visualition or that and whatever plotting parameters exist.
        1. The current “printout” looks like a screenshot of the scope window, including window controls and some of the pixels behind the outside of the window (if Windows Aero—whatever Windows’ semi-transparent shadow is called—is enabled).
    5. Documentation
      1. It’s possible that some of the things I’d like to be able to do with the scope are possible, but the options in the GUI are
        not intuitive (to me), and I can’t find very helpful documentation.
  3. Usability
    1. Allow exporting (and importing?) data as CSV or something more portable that the custom .pan format.
      1. Exporting from the app right now does use something like TAB format, but I haven’t gotten importing to work reliably. (e.g. I exported and then imported the same file and got “X-axis data not in ascending order.”)
    2. Add more trigger conditions.
      1. Axis enable/disable.
      2. Allow some sort of numerical comparison with the value at an address. (Right now, there’s only EQ and “changed.”)
      3. Allow using any “standard” or user-defined trace (by name) rather than having to copy in the underlying firmware address.
    3. Rather than have a hard limit on the number of samples you can save, add a mode that streams the data directly to a file.
      1. This will allow much longer runs without affecting running processes.
    4. Have some means of configuring the scope programmatically, whether that’s creating a human-readable text file or providing some sort of automation API.

Notes: These are not all of equal value (to me). I organized them by topic.

1 Like

Hello Todd,

Thank you for taking the time to put together this well organized list of suggestions! We are currently in the planning phase of an overhaul of the scope feature. These suggestions will be very useful in our planning of the project.

Please note there is the ability to export and import as a tab delimited .txt file. under the Pane tab in Motion Scope.

Then if you want to open it in Excel you can go to Data->Import from Text/CSV and choose TAB as the delimiter.

It is likely the future Rapid Scope feature will have coma delimited .csv exports/imports for better ease of use.