Productivity Series Motion Controllers PS-AMC2 Scaling Problems

Just received the controller and I am doing some simple tests. I have the controller connected to a STP-DRV-6575. Stepper drive is set up to 200 p/rev. This is connected to a rail with .25"/rev travel. I want the units in inches. So 800 pulses/ Inch. Correct?

 

So I enter into the AMC Setup>Hardware Config> PS-AMC>Axis2>Scaling & Encoder> Position Unit> Standard (inch) = 800 Pulses (800ppi). Do a simple move of 1" and the motor turns 40 turns.

I enter 80ppi for the 800 and do a move of 1". Motor turns 40 turns! The same!

 

This is the same as follows

10 ppi and 100 ppi with a 1" move gives me 5 turns

40 ppi and 400 ppi with a 1" move gives me 20 turns

80 ppi and 800 ppi with a 1" move gives me 40 turns

 

Some odd ppi number is around 99ppi

99 ppi with a 1" move gives 5000 rev! and 100PPI gives 5 revs. Seems to be an inflection point around 100ppi some where.

EDIT:

Using the High Speed Module Testing, 100 pulses/sec does give me 1 rev/sec.

 

Every time I changed the ppi I powered down the unit. Also the firmware is up to date.

 

Any ideas? I do have a call into AD Tech, waiting for return call tomorrow.

 

Brad

 


  • TomServo (Customer)

    I had a few minutes to burn and I ran your scaling examples on my AMC4 with the output not going to a motor but a step counter. I found running your examples that the expected output was what I expected.

     

    The following tests were run using a relative SMOV with the Target set to 1 inch, Velocity set to 5 in/sec, and the acce/ and decel set to 20K in/sec^2:

     

    When scaling is set to 800 ppi and a move outputted 800 pulses from the scaled AMC axis

    When scaling is set to 80 ppi and a move outputted 80 pulses from the scaled AMC axis

    When scaling is set to 100 ppi and a move outputted 100 pulses from the scaled AMC axis

    When scaling is set to 10 ppi and a move outputted 10 pulses from the scaled AMC axis

     

    I didn't test more than that...it working correctly for me. Remember, when using scaling, the values that go into the tags are in units, units/sec, units/sec^2 (assuming the time scale is a default seconds).

     

    Also, every time the PLC/AMC configuration is changed, the project needs to be downloaded (Stop Mode) or the old scaling factors will still be used by the system.

     

    Hope this helps.

    Expand Post
  • Broncosaurs (Customer)

    TomServo, thanks for doing this test. On the hardware PS-AMC setup use a "Float" for Position Data Type. I think you will then see this error.

     

    Thank you so much on taking a look at this.

     

    Brad

  • Broncosaurs (Customer)

    Some more info:

    Scaling > 800 Pulse/Inch

    Using FLOAT for Position Data type and Minimum Position Accuracy set to 0.1 or 0.01. The scaling is working this time. BUT speed can not be set below 1 inch/sec If a decimal is used for speed (ie 0.5"/sec) the move will not work.

     

    0.001 or 0.0001 messes up the scaling. Something is out of wack here.

     

    ARG

    Expand Post
  • Broncosaurs (Customer)

    If I do a velocity move i can have speeds below 1"/sec but just not using a Simple Move.

  • Broncosaurs (Customer)

    OK here is what I got

    If the Minimum Position Accuracy set to 0.1 or 0.01 the scaling (steps/inch) works fine BUT the speed during the simple move can not be slower then 1"/sec.

     

    If the Minimum Position Accuracy set to 0.001 or 0.0001 the scaling does not work but speed during a simple move can be set below 1.

  • TomServo (Customer)

    I ran an SMOV with both 0.1 and 0.01 scaling successfully at velocities below 1.0 in/sec ( see attached pic ). I set my distance to 3.0 to make the move long enough to achieve full velocity at 1.0 in/sec^2 ramps. I ran the move at 1.0, 0.1, and 0.01 in/sec with no problem.

     

    In the pic, fTarget, fVelocity, and fRamps(used for both accel and decel) were set in the SMOV. fCurrentPosition and fCurrentVelocity are the feedback tags in the configuration for the axis. you can see the running velocity at the screen shot is running 0.01 in/sec. The 3 tags above that are in my step monitor in steps/sec and you can see the AMC is putting out 8 steps/sec.

     

    Please note: that if you use integer tags for the feedback, any velocities below 1.0 will be shown at 0 in the dataview even though the output is occurring. I changed my feedback tags to float types.

    Expand Post
    • Dataview Float Scaling
  • Broncosaurs (Customer)

    Tom, thanks. Last night i got it to work with the 0.1 and 0.01. I have no idea what I changed to make work. I am very specific using floats where needed so I don't think this is it. Today i am going to start anew and see if I can narrow this down. I still can't get the 0.001 and 0.0001 to work. I am thinking it might be a rounding error when the scaling does not give the resolution needed to achieve the .0001.. Ill look further into this today.

  • TomServo (Customer)

    Yes, it really is likely due to the scaling and the resolution you are trying to run at. In the topic you said you have the 6575 set to 200 PPR and 0.25 "/rev is 800PPI equals 0.00125"/pulse. To get the high resolution and to get the required, change the 6575 to 20000 pulses/rev and change the scaling in the AMC to 80000 PPI (0.0000125 "/pulse) which should produce 8 pulses/sec on the output when the velocity is set to 0.0001. It is likely that you have it all figured out by now so have fun.

  • Broncosaurs (Customer)

    Tom, ya the "to much resolution" was causing most of my problems. My guess it is a rounding error in the AMC. As for not being able to use a speed less then 1. A reloading of the firmware seem to do the trick.

     

    Can you enlighten me on the Encoder Monitor in the AMC hard ware config? I am going to start a new thread on this feature.

     

    Thanks again Brad

    Expand Post