Need Help! Kflop/Kanalog to DMM Dyn4 connection types


Page 1 of 2 12 LastLast
Results 1 to 12 of 21

Thread: Kflop/Kanalog to DMM Dyn4 connection types

  1. #1
    *Registered User* Causeitso's Avatar
    Join Date
    Nov 2018
    Posts
    6
    Downloads
    0
    Uploads
    0

    Default Kflop/Kanalog to DMM Dyn4 connection types

    Hi, I'd appreciate it if someone could help me with the following:

    The DMM Dyn4 servo drives have three control modes: Position (Digital step-dir or differential input), Velocity (Analog voltage input) and Torque (Analog voltage input).

    Three connections are possible (while closing the feedback loop to Kanalog using Dyn4 differential encoder output):
    (a) Kflop/Kanalog: use Kflop step-dir output to Dyn4 step dir input (Position mode).
    (b) Kflop/Kanalog: use Kanalog output to Dyn4 analog input (Velocity mode).
    (c) Kflop/Kanalog: use Kanalog output to Dyn4 analog input (Torque mode).

    1- I know that (b) works and that it is not so hard to tune if the mechanical system is rigid enough but what about (a) and (c)? Do they work in practice? And how do they compare in ease of tuning, settling time and maximum speed?

    2- I would assume that in connection type (a) the encoder feedback to Kanalog from Dyn4 is not utilized in the control loop running inside Kflop. I would go as far as to say that in connection type (a) , there no need for a control loop to be running inside Kflop since the Dyn4 handles the complete position loop. In this case the encoder feedback to Kanalog would be for informative reasons only and is just directly relayed to Kmotion to be displayed on the DRO. Is this line of thinking correct or is it completely wrong?

    3- I’m afraid if I used the Dyn4 in position mode, the surface finish of the workpiece would suffer. My thinking is that position mode is not a continuous motion like velocity mode. Position mode is always waiting for a pulse to move a predetermined angle (according to electronic gearing) which makes me think that resulting tool path might not be as smooth and that the workpiece surface might be faceted even on a very small scale. Velocity mode however ensure a very smooth analog motion and contributes to better surface finishes. correct or completely incorrect?

    So far I was asking about closing the loop with single loop feedback. Going a step further, utilizing dual loop feedback. Apparently there are two types of dual loop feedback
    (a) Standard type with D in the inner loop (Dyn4 drive) and the P & I in the outer loop (Kflop).
    (b) Advanced type with P & D in the inner loop and only I or P & I in the outer one.

    From reading on the Internet (The very informative Galil white paper: http://www.galilmc.com/download/whit...rivetrains.pdf), it seems dual loop feedback type (b) can achieve faster settling time and higher bandwidth.

    4- Can I configure the servo control loop inside Kflop to effectively remove D and make it only P or PI controller? Can this be done by sitting the D coefficient to 0? What about the velocity feed forward? Should it or can it be disabled when using dual loop feedback?

    5- Is it correct to think the a Dyn4 if run in position mode then it is a PID controller and if run in velocity mode then it’s a PD controller and if run in torque mode then it’s an only P controller?

    Thank you.

    Similar Threads:
    Last edited by Causeitso; 12-10-2018 at 07:27 PM.


  2. #2
    Member
    Join Date
    May 2012
    Location
    canada
    Posts
    376
    Downloads
    0
    Uploads
    0

    Default Re: Kflop/Kanalog to DMM Dyn4 connection types

    I run a Dyn4 drive/motor on a rotary axis and I ended up using analog control in torque mode. In velocity mode, the DMM drive still has some control over things and it seems to mess up the tuning in kmotion. At least thats what i found anyway, torque mode worked much better for me. I would think that position mode would be fine as well, others on here are using that drive in step/dir and step/dir closed loop mode with good results. As long as you set your minimum increment small enough I dont think you will see any issues in surface finish.



  3. #3
    Member TomKerekes's Avatar
    Join Date
    May 2006
    Location
    USA
    Posts
    3058
    Downloads
    0
    Uploads
    0

    Default Re: Kflop/Kanalog to DMM Dyn4 connection types

    Hi Causeitso,

    Here are some thoughts:

    1- I know that (b) works and that it is not so hard to tune if the mechanical system is rigid enough but what about (a) and (c)? Do they work in practice? And how do they compare in ease of tuning, settling time and maximum speed?
    I think they should all theoretically give the same performance. Unless the drive has some particular quirks. Regarding tuning: It depends what you are most comfortable with. In Position mode the tuning will all be performed in the drive. In Torque mode mostly in the Controller. In Velocity mode some of both.

    2- I would assume that in connection type (a) the encoder feedback to Kanalog from Dyn4 is not utilized in the control loop running inside Kflop. I would go as far as to say that in connection type (a) , there no need for a control loop to be running inside Kflop since the Dyn4 handles the complete position loop. In this case the encoder feedback to Kanalog would be for informative reasons only and is just directly relayed to Kmotion to be displayed on the DRO. Is this line of thinking correct or is it completely wrong?
    Correct

    3- I’m afraid if I used the Dyn4 in position mode, the surface finish of the workpiece would suffer. My thinking is that position mode is not a continuous motion like velocity mode. Position mode is always waiting for a pulse to move a predetermined angle (according to electronic gearing) which makes me think that resulting tool path might not be as smooth and that the workpiece surface might be faceted even on a very small scale. Velocity mode however ensure a very smooth analog motion and contributes to better surface finishes. correct or completely incorrect?
    I don't think that is significant in practice.

    So far I was asking about closing the loop with single loop feedback. Going a step further, utilizing dual loop feedback. Apparently there are two types of dual loop feedback
    (a) Standard type with D in the inner loop (Dyn4 drive) and the P & I in the outer loop (Kflop).
    (b) Advanced type with P & D in the inner loop and only I or P & I in the outer one.
    I think it is actually better to have PID(+Filters+FeedForward) in both loops. Then tune each for best performance using all the parameters available.

    From reading on the Internet (The very informative Galil white paper: 404 Page Not Found | Galil), it seems dual loop feedback type (b) can achieve faster settling time and higher bandwidth.

    4- Can I configure the servo control loop inside Kflop to effectively remove D and make it only P or PI controller? Can this be done by sitting the D coefficient to 0?
    Yes

    What about the velocity feed forward? Should it or can it be disabled when using dual loop feedback?
    Yes, basically every term can always be eliminated by setting its gain to zero. No need to disable it. And zero is unlikely to be the optimal value.

    5- Is it correct to think the a Dyn4 if run in position mode then it is a PID controller and if run in velocity mode then it’s a PD controller and if run in torque mode then it’s an only P controller?
    It's not clear if you are asking specifically what is implemented and available inside the Dyn4. But in general no. What something is trying to achieve and what control strategy it uses is not necessarily directly related.

    HTH

    Regards
    TK http://dynomotion.com


  4. #4
    *Registered User* Causeitso's Avatar
    Join Date
    Nov 2018
    Posts
    6
    Downloads
    0
    Uploads
    0

    Default Re: Kflop/Kanalog to DMM Dyn4 connection types

    mmurray70, thank you. It's good to know that this combination works well in torque mode, I will definitely try it. Although a problem I think I might face while running the DYN4 in torque mode is not being able to utilize the full capability of the 16 bit encoder on the DMM motor. The problem arises because while the motor mounted encoder output is 16 bit (~64,000 pulse per rotation), DYN4 output is 13 bit (~8000 pulse per rotation), a significant decrease. So It's sure nice to be able to use the full capabilities of the motor encoder which I think can be achieved in either position or velocity modes.

    The reason I'm saying this is that I doubt the DYN4 is utilizing the motor mounted 16 bit encoder when in torque mode as it basically just controlling the current to the motor proportional to the input voltage; an operation that normally shouldn't require encoder feedback. Consequently, the encoder signal from the motor just gets relayed to DYN4 virtual encoder output which outputs a down-sampled version. Again I can be completely off the mark here and it might turn out that the DYN4 torque mode is cleverly using the 16 bit encoder in some way! Although I doubt it.



  5. #5
    *Registered User* Causeitso's Avatar
    Join Date
    Nov 2018
    Posts
    6
    Downloads
    0
    Uploads
    0

    Default Re: Kflop/Kanalog to DMM Dyn4 connection types

    Thank you Tom for the information.

    Quote Originally Posted by TomKerekes View Post
    I think it is actually better to have PID(+Filters+FeedForward) in both loops. Then tune each for best performance using all the parameters available.
    Sounds good and more general, although I can't imagine what role an integral "I" would play in a inner velocity loop! I'm not technical oriented but it is always good to understand things.

    Quote Originally Posted by TomKerekes View Post
    It's not clear if you are asking specifically what is implemented and available inside the Dyn4. But in general no. What something is trying to achieve and what control strategy it uses is not necessarily directly related.
    Yes, that's exactly what I was going for.



  6. #6
    Registered
    Join Date
    Jun 2004
    Location
    Scotland
    Posts
    335
    Downloads
    0
    Uploads
    0

    Default Re: Kflop/Kanalog to DMM Dyn4 connection types

    Quote Originally Posted by Causeitso View Post
    mmurray70, thank you. It's good to know that this combination works well in torque mode, I will definitely try it. Although a problem I think I might face while running the DYN4 in torque mode is not being able to utilize the full capability of the 16 bit encoder on the DMM motor. The problem arises because while the motor mounted encoder output is 16 bit (~64,000 pulse per rotation), DYN4 output is 13 bit (~8000 pulse per rotation), a significant decrease. So It's sure nice to be able to use the full capabilities of the motor encoder which I think can be achieved in either position or velocity modes.

    The reason I'm saying this is that I doubt the DYN4 is utilizing the motor mounted 16 bit encoder when in torque mode as it basically just controlling the current to the motor proportional to the input voltage; an operation that normally shouldn't require encoder feedback. Consequently, the encoder signal from the motor just gets relayed to DYN4 virtual encoder output which outputs a down-sampled version. Again I can be completely off the mark here and it might turn out that the DYN4 torque mode is cleverly using the 16 bit encoder in some way! Although I doubt it.
    I'll clarify this a bit for you.
    Although the motor has a 16bit encoder, it is an absolute position encoder only getting sampled periodically by the DYN4 drive. The DYN4 drive then takes that absolute position, compares it to the last read position, then dumps out a bunch of incremental pulses on the emulated encoder output depending on how much the position has changed, and the relacant pulse/rev setting. The emulated output doesn't have a bit depth as such, it's just emulating an incremental encoder. There will be inconsistency to the emulated encoder pulses, but you have to remember the electronics will be reacting far faster than the motor can change speed.

    The problem you face, is in the case of the KFlop, it updates it's servo loop every 90uS, whereas the drive will update at a different frequency. This leads to a bit of a synchronicity problem, whereby the KFlop is telling the drive every 90uS what it wants it to do, but it doesn't respond in a consistent manner, as the drive might only be updating every 100uS. So potentially the KFlop might command 50% speed, but due to the update loops being out of sync, the drive misses the first command, at the KFlops next update it sees the drive hasn't responded, so increases it's demand to 60%. At which point the drive responds, but due to missing the first command, the motor now overshoots, so at the next KFlop update, it sees the motor is now going too fast and drops demand to 40%, and the oscillation continues. The only way to overcome it is via damping, which then dulls responses.

    I suspect this is the problem mmurray experienced, as speed control still relies on the drive to control the motor speed. Switching to torque control eliminates that part of the drive control, gives a more direct control over the motor, but comes at the potential risk of becoming very unstable.
    On the flip side, I tried torque mode on the Kinco servos on my lathe, and couldn't get anywhere near as good a tune as I could in speed mode.



    Before getting too hung up on accuracy, consider how much accuracy you actually need. Just because you can use 8'000 pulses per revolution (can somebody clarify if that's actual pulses, or counts per rev?), doesn't mean you should. Even on a direct drive 5mm screw setup with 8'000 counts per rev (direct driving a screw like this with a 3000rpm servo is not a good idea!), a single pulse is 0.625 of a micron. Even with a following error of 10, that's still 6.25 microns (about 2.5 tenths in imperial) accuracy. Now if you've got some extremely sturdy zero-backlash machine, you might be able to use that accuracy, but if you're whizzing around a light weight router, or a mill with a couple thou backlash and ways that have seen better days, that theoretical accuracy isn't going to do you much good.

    FWIW, on my next retrofit, I'm planning on using CW/CCW to the servo drives letting them handle the motor tuning, then close the loop back to the KFlop with linear scales to improve accuracy. It does mean I'll lose direct control over the motor tuning, but I'll be able to monitor exact axis positions. I will probably wire up the drive encoder outputs to the KFlop for initial tuning, but once tuned switch to linear scales. I'd like to keep both, but the KFlop is limited to a combination of 12 step/dir, or encoder inputs, so a sacrifice has to be made somewhere if I want spindle feedback and an MPG.



  7. #7
    *Registered User* Causeitso's Avatar
    Join Date
    Nov 2018
    Posts
    6
    Downloads
    0
    Uploads
    0

    Default Re: Kflop/Kanalog to DMM Dyn4 connection types

    Thank you m_c for the interesting points you raised!

    Quote Originally Posted by m_c View Post
    I'll clarify this a bit for you.
    Although the motor has a 16bit encoder, it is an absolute position encoder only getting sampled periodically by the DYN4 drive. The DYN4 drive then takes that absolute position, compares it to the last read position, then dumps out a bunch of incremental pulses on the emulated encoder output depending on how much the position has changed, and the relacant pulse/rev setting. The emulated output doesn't have a bit depth as such, it's just emulating an incremental encoder. There will be inconsistency to the emulated encoder pulses, but you have to remember the electronics will be reacting far faster than the motor can change speed.
    Your reply here took me a lot of time and reading around to be able to actually get to understand . What you are basically saying is that the use of an absolute encoder relieves the servo drive from having to have circuitry running at the higher rates required to continuously sample an ordinary incremental encoder with the same resolution, but I don't know whether you are also implying that internally the DYN4 is not utilizing the full resolution of the 16 bit encoder!

    According to the DYN4 manual, by setting Electronic Gearing to maximum value, one step pulse will move the motor 1/65,536 of a full revolution which indicates that internally it does actually utilize the full resolution of the 16 bit encoder. An interesting question then would be, what is the output of the emulated encoder during this one step pulse?

    My speculation is there will be NO change on the emulated encoder output during this one step pulse due to the fact that the emulated encoder max pulse per revolution is 8,192. This implies that if an outside controller uses the DYN4 in torque mode and relies on the feed back from DYN4 emulated encoder, it will not be able to do such a 1/65,536 of a revolution move and will be limited to 1/8,192 of a revolution move.

    In my case I'm planning to use a direct driven 20mm screw. The theoretical linear resolutions will be 2.4um and 0.3um for the 8,192 ppr and 65,536 ppr encoders respectively. That's an appreciable difference! besides, I want to keep the linear positional resolution of the encoder well below the positional inaccuracies of the mechanical components (apparently this improves system performance). I'm planning on a more rigid system by direct driving the screw.

    This all comes back to the fact that I want to utilize the DYN4 in either position or speed mode to get the full benefit of the 16 bit encoder by keeping all or part of the servo loop running inside DYN4. But in torque mode I will have to run the servo loop completely outside the DYN4 and depend solely on the emulated encoder less resolution output which I don't prefer. To get what I paid for, you know!


    Quote Originally Posted by m_c View Post
    The problem you face, is in the case of the KFlop, it updates it's servo loop every 90uS, whereas the drive will update at a different frequency. This leads to a bit of a synchronicity problem, whereby the KFlop is telling the drive every 90uS what it wants it to do, but it doesn't respond in a consistent manner, as the drive might only be updating every 100uS. So potentially the KFlop might command 50% speed, but due to the update loops being out of sync, the drive misses the first command, at the KFlops next update it sees the drive hasn't responded, so increases it's demand to 60%. At which point the drive responds, but due to missing the first command, the motor now overshoots, so at the next KFlop update, it sees the motor is now going too fast and drops demand to 40%, and the oscillation continues. The only way to overcome it is via damping, which then dulls responses.
    Actually I didn't say I'm facing such problem but it's good to know. I didn't give it much thought before as I assumed that the DYN4 is running a servo loop at a much higher rate than the Kflop! There is no indication whatsoever in the DYN4 manual of the update rate of the servo loop. What do you suggest doing in this case? Reduce the Kflop servo update rate to be about 1 or 2 kHz instead of 11 kHz? Is there some way to synchronize the two?


    Quote Originally Posted by m_c View Post
    I suspect this is the problem mmurray experienced, as speed control still relies on the drive to control the motor speed. Switching to torque control eliminates that part of the drive control, gives a more direct control over the motor, but comes at the potential risk of becoming very unstable.
    On the flip side, I tried torque mode on the Kinco servos on my lathe, and couldn't get anywhere near as good a tune as I could in speed mode.
    I looked in the manual of some Kinco servo drives and also didn't find indication of the servo update rate.


    Quote Originally Posted by m_c View Post
    Before getting too hung up on accuracy, consider how much accuracy you actually need. Just because you can use 8'000 pulses per revolution (can somebody clarify if that's actual pulses, or counts per rev?), doesn't mean you should. Even on a direct drive 5mm screw setup with 8'000 counts per rev (direct driving a screw like this with a 3000rpm servo is not a good idea!), a single pulse is 0.625 of a micron. Even with a following error of 10, that's still 6.25 microns (about 2.5 tenths in imperial) accuracy. Now if you've got some extremely sturdy zero-backlash machine, you might be able to use that accuracy, but if you're whizzing around a light weight router, or a mill with a couple thou backlash and ways that have seen better days, that theoretical accuracy isn't going to do you much good.
    The DYN4 output is 8000 pulses per revolution according to the manual, not counts per revolution. As I said before, I'm planning to use a 20mm screw which effectively reduces my linear resolution by 4 compared to a 5mm screw. I completely understand that I don't need the resolution of a 16 bit encoder for positional accuracy in practice. A linear resolution of 0.3um is obviously ridiculous but I think there are other factors to utilizing a higher bit count encoder than only positional resolution.

    There is not much information out there on the subject of high bit count and high pulse per revolution encoders but it seems that the increased resolution aids the servo loop in some way which I think will translate to smoother movements while operating at lower speeds and better stability while operating at high speeds. In short I think there is a direct relationship between the encoder resolution and the relatively stable bandwidth in which the the system can operate.

    Quote Originally Posted by m_c View Post
    FWIW, on my next retrofit, I'm planning on using CW/CCW to the servo drives letting them handle the motor tuning, then close the loop back to the KFlop with linear scales to improve accuracy. It does mean I'll lose direct control over the motor tuning, but I'll be able to monitor exact axis positions. I will probably wire up the drive encoder outputs to the KFlop for initial tuning, but once tuned switch to linear scales. I'd like to keep both, but the KFlop is limited to a combination of 12 step/dir, or encoder inputs, so a sacrifice has to be made somewhere if I want spindle feedback and an MPG.
    I believe dual closed loop feedback using linear encoders are the way to go especially that it will allow accurate probing of dimensions turning the machine into an actual coordinate measuring machine. I doubt though that the initial tuning will still work after switching to the linear encoders. I think the system has to be tuned with linear scales operating.



  8. #8
    Registered
    Join Date
    Jun 2004
    Location
    Scotland
    Posts
    335
    Downloads
    0
    Uploads
    0

    Default Re: Kflop/Kanalog to DMM Dyn4 connection types

    I won't bother quoting, but try and cover the key points you raise.

    There are two benefits of absolute encoders. The first is noise resistance. As the drive periodically requests the position, if a request gets garbled for some reason, not only does the drive know there's a problem, provided the next request is successful, it will still know where the motor is. With an incremental encoder, if some of your pulses get lost/noise generates extra pulses, you've lost position, and there your axis starts to drift.
    The second is resolution. With any kind of signal, there are limitations on how fast you can drive that signal. With incremental encoders, the faster the motor goes, the faster your pulse stream, so you hit that limit. With an absolute encoder, the position request speed is the same regardless of how fast the motor is spinning, it's just you end up with bigger position changes between requests.

    Which leads us onto refresh rates. To find an absolute encoder drive refresh rate, you could connect an oscilloscope (or possibly a suitable digital analyser might be better..), and measure it.
    However, even on a drive using incremental encoders, they'll have a similar internal refresh rate, as typically anything using incremental encoders will have a dedicated encoder counter, which it's sole job is counting encoder pulses (a KFlop has 8, which you can see directly by viewing the Axis screen in KMotion). When the servo loop wants to know the motor position, it simply reads it from the encoder counter.
    The only difference between drives using absolute, and incremental encoders, is the absolute drive relies on the encoder to do the counting, whereas the incremental drive does the counting itself.

    I'd very much doubt any servo drive manufacturer will tell you that level of detail about their systems.


    And having had a scan through the DYN4 manual, I see their absolute encoders are magnetic type, so even though they might output 16bit position data, it's not going to be 16bit accurate. Don't confuse precision with accuracy. A magnetic sensor relies on interpolating magnetic field strengths to calculate position, so there is a margin of error. A quick search has thrown up this Heidenhain brochure that explains it - https://www.micromech.co.uk/uploads/...c_encoders.pdf

    If the drive is outputting 8000 pulses, then that might actually mean you get a count of 4 times that, so theoretically a count of 32000 per revolution. It's worth noting this is one of the areas where descriptions are blurry. For example a conventional 2000 line encoder, would output 2000 pulses per revolution on each A and B channel, which you multiply by 4 to get your count. However count and pulse are interchanged by some manufacturers.



    Regarding dual loop, the reason I'd connect to the drive encoders only for tuning, is to tune the step/dir output, and see how the drive is responding, not actually run in closed loop. Then close the loop in the KFlop using the linear scales.



  9. #9
    Member TomKerekes's Avatar
    Join Date
    May 2006
    Location
    USA
    Posts
    3058
    Downloads
    0
    Uploads
    0

    Default Re: Kflop/Kanalog to DMM Dyn4 connection types

    Hi m_c,

    The problem you face, is in the case of the KFlop, it updates it's servo loop every 90uS, whereas the drive will update at a different frequency. This leads to a bit of a synchronicity problem, whereby the KFlop is telling the drive every 90uS what it wants it to do, but it doesn't respond in a consistent manner, as the drive might only be updating every 100uS. So potentially the KFlop might command 50% speed, but due to the update loops being out of sync, the drive misses the first command, at the KFlops next update it sees the drive hasn't responded, so increases it's demand to 60%. At which point the drive responds, but due to missing the first command, the motor now overshoots, so at the next KFlop update, it sees the motor is now going too fast and drops demand to 40%, and the oscillation continues. The only way to overcome it is via damping, which then dulls responses.
    With all due respect I don't think this is as significant as you make it sound. I think that the sample rates are probably both high enough to be essentially continuous with respect to the response of the system.

    I once read a nice comparison of a good servo to an expert pilot who only makes small corrections, then waits to see how the airplane responds before making another correction. Or you could imagine driving a car and instantly commanding the steering wheel 1/2 rev and then checking back in 1 millisecond to make another change.

    Most servo systems are lucky if they have a bandwidth of 100Hz. This corresponds to a response time of like 1 / (2 pi 100Hz) = 1600us which is ~18 KFLOP sample times.

    And having had a scan through the DYN4 manual, I see their absolute encoders are magnetic type, so even though they might output 16bit position data, it's not going to be 16bit accurate. Don't confuse precision with accuracy. A magnetic sensor relies on interpolating magnetic field strengths to calculate position, so there is a margin of error. A quick search has thrown up this Heidenhain brochure that explains it - https://www.micromech.co.uk/uploads/...c_encoders.pdf
    I agree completely. I find there is no comparison between magnetic/capacitive encoders vs optical encoders. The first is usually deriving its measurement from magnets on something like 2000um pitch doing extreme interpolation. Where optical scales are based on something like 20um pitch doing like 100X less interpolation.



    Hi Causeitso,
    According to the DYN4 manual, by setting Electronic Gearing to maximum value, one step pulse will move the motor 1/65,536 of a full revolution which indicates that internally it does actually utilize the full resolution of the 16 bit encoder. An interesting question then would be, what is the output of the emulated encoder during this one step pulse?

    My speculation is there will be NO change on the emulated encoder output during this one step pulse due to the fact that the emulated encoder max pulse per revolution is 8,192. This implies that if an outside controller uses the DYN4 in torque mode and relies on the feed back from DYN4 emulated encoder, it will not be able to do such a 1/65,536 of a revolution move and will be limited to 1/8,192 of a revolution move.

    In my case I'm planning to use a direct driven 20mm screw. The theoretical linear resolutions will be 2.4um and 0.3um for the 8,192 ppr and 65,536 ppr encoders respectively. That's an appreciable difference! besides, I want to keep the linear positional resolution of the encoder well below the positional inaccuracies of the mechanical components (apparently this improves system performance). I'm planning on a more rigid system by direct driving the screw.

    This all comes back to the fact that I want to utilize the DYN4 in either position or speed mode to get the full benefit of the 16 bit encoder by keeping all or part of the servo loop running inside DYN4. But in torque mode I will have to run the servo loop completely outside the DYN4 and depend solely on the emulated encoder less resolution output which I don't prefer. To get what I paid for, you know!
    Because of other issues such as mechanical stiction, compliance, backlash, etc. and also because the "16-bit resolution" although true is not really useful due to noise, hysteresis, nonlinearity, etc. I think you are focused on something down in the noise - literally

    Actually I didn't say I'm facing such problem but it's good to know. I didn't give it much thought before as I assumed that the DYN4 is running a servo loop at a much higher rate than the Kflop! There is no indication whatsoever in the DYN4 manual of the update rate of the servo loop. What do you suggest doing in this case? Reduce the Kflop servo update rate to be about 1 or 2 kHz instead of 11 kHz? Is there some way to synchronize the two?
    As I tried to explain above. The servo will be tuned to make corrections more in the 100Hz range and below anyways due to mechanical issues, so there is no need to turn down the sample rate.

    In short I think there is a direct relationship between the encoder resolution and the relatively stable bandwidth in which the the system can operate.
    I don't agree. Although higher resolution is always beneficial there is a point of diminishing returns. The bandwidth that the system can operate is basically dependent on the worst component in the system which is normally something mechanical. Imagine you have a system with 1um resolution that has 100Hz bandwidth. Then you change it to 1nm resolution. Could you then have a 100KHz bandwidth? More likely there would be no detectable improvement.

    HTH

    Regards
    TK http://dynomotion.com


  10. #10
    Registered
    Join Date
    Jun 2004
    Location
    Scotland
    Posts
    335
    Downloads
    0
    Uploads
    0

    Default Re: Kflop/Kanalog to DMM Dyn4 connection types

    Quote Originally Posted by TomKerekes View Post
    Hi m_c,

    With all due respect I don't think this is as significant as you make it sound. I think that the sample rates are probably both high enough to be essentially continuous with respect to the response of the system.

    I once read a nice comparison of a good servo to an expert pilot who only makes small corrections, then waits to see how the airplane responds before making another correction. Or you could imagine driving a car and instantly commanding the steering wheel 1/2 rev and then checking back in 1 millisecond to make another change.

    Most servo systems are lucky if they have a bandwidth of 100Hz. This corresponds to a response time of like 1 / (2 pi 100Hz) = 1600us which is ~18 KFLOP sample times.
    It probably isn't that significant, but I do think it's still a concern in certain situations.
    I've just ran the figures for the Kinco drives I've used, and the analogue input filtering can be adjusted between ~5 and 636Hz (it's one of the few parameters where they list the units). However, there are other response/bandwidth settings that have far higher setting options, but although Kinco English manuals are pretty good, they don't have the best description of what all the settings do.

    And I've just found that the driver specifications list the sampling frequencies. Position modes samples at 1KHz, with Speed and Torque mode sampling the analogue input at 4KHz, speed mode sampling the motor speed at 4KHz, whereas torque mode sampling the motor current at 16KHz.
    It has got me wondering if slowing the driver sampling/response rate would actually give a better tune?



  11. #11
    Member TomKerekes's Avatar
    Join Date
    May 2006
    Location
    USA
    Posts
    3058
    Downloads
    0
    Uploads
    0

    Default Re: Kflop/Kanalog to DMM Dyn4 connection types

    Hi m_c,

    It has got me wondering if slowing the driver sampling/response rate would actually give a better tune?
    I don't see why you would think that. Time delay is the enemy to a servo system. Think of a drunk driver. Driver sampling and response rate I see as different things. Going back to the good pilot/airplane analogy, how quickly errors can be corrected is limited by the airplane's response time. If the pilot tries to make further commands before the airplane has responded to the previous the results will be bad. So the response rate has to be optimal for the airplane. Slowing down the driver sampling rate would be similar to adding a delay time to the airplane's response making it more difficult to control.

    I like to estimate the effect of sample rate by calculating the phase lag at the crossover frequency. For example for a system with a 100Hz crossover frequency and a sample rate of 4KHz the phase lag would be 100 / 4000 x 360 degrees = 9 degree loss of phase margin.

    Regards
    TK http://dynomotion.com


  12. #12
    Member
    Join Date
    Jan 2005
    Location
    USA
    Posts
    9309
    Downloads
    0
    Uploads
    0

    Default Re: Kflop/Kanalog to DMM Dyn4 connection types

    Quote Originally Posted by Causeitso View Post
    mmurray70, thank you. It's good to know that this combination works well in torque mode, I will definitely try it. Although a problem I think I might face while running the DYN4 in torque mode is not being able to utilize the full capability of the 16 bit encoder on the DMM motor. The problem arises because while the motor mounted encoder output is 16 bit (~64,000 pulse per rotation), DYN4 output is 13 bit (~8000 pulse per rotation), a significant decrease. So It's sure nice to be able to use the full capabilities of the motor encoder which I think can be achieved in either position or velocity modes.

    The reason I'm saying this is that I doubt the DYN4 is utilizing the motor mounted 16 bit encoder when in torque mode as it basically just controlling the current to the motor proportional to the input voltage; an operation that normally shouldn't require encoder feedback. Consequently, the encoder signal from the motor just gets relayed to DYN4 virtual encoder output which outputs a down-sampled version. Again I can be completely off the mark here and it might turn out that the DYN4 torque mode is cleverly using the 16 bit encoder in some way! Although I doubt it.
    One thing to clear up here is the Encoder 16 Bit is always 16 Bit no matter how you decide to control the drive, the 16 Bit encoder is in it's own world and it's loop is closed in the Drive, and is separate from any other ratios from electronic gearing

    It does not matter what method your input type you go with the smoothness should not change, if you are building a CNC machine you don't want to be using torque control for normal running of X Y Z axes

    Mactec54


Page 1 of 2 12 LastLast

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  


About CNCzone.com

    We are the largest and most active discussion forum for manufacturing industry. The site is 100% free to join and use, so join today!

Follow us on


Our Brands

Kflop/Kanalog to DMM Dyn4 connection types

Kflop/Kanalog to DMM Dyn4 connection types