SDC2130 Roboteq Encoder,Speed problem

5 years 6 months ago #29530330 by tako
Hello,
I am using SDC2130 connected to my Laptop with Roborun+. SDC2130 connects to 2 brushed motors with encoders mounting on each.

1: My encoder PPR is 4096 ( I rotated the encoder 1 round and see the counts on tab Run). When I put encoder as feedback, set PPR = 4096. In the tab Run, I slided motor 1 to the speed of 200 RPM. However, from my observation, it was not 200RPM speed. Its 800 RPM speed. (I counted the wheel revolution in 1 min then multiply by the gear ratio). But if I set encoder PPR=1024, the speed displayed in Run tab is the same as the actual speed.
2. I also observed that when the motor power is around 700, if I increase the motor power, the speed drops instead of increasing ( the rate of encoder counts also decreases). So it means that the 1000 motor power has same displayed speed as 600 motor power. However, the actual speed I observed increases. I think it misses counting some lines at high speed but do not know whether it comes from Encoder or from SDC2130. For the encoder, we already used in some projects at high speed and it works well. So maybe the problem is from the SDC2130 or the connection between encoder and SDC?
Can anyone help me to answer these problems?
Thank you.

Please Log in or Create an account to join the conversation.

5 years 6 months ago #29530335 by TechSupport
This depends on which mode you are in. The slider is a motor command 0 to +/-1000.

If you want to set to a specific speed, then use the closed loop speed mode, and send the serial command !S cc nn where cc is motor channel and nn is value rpm's.

You will need to fine tune your PID. Set the loop error error detection to disabled

P=0
I=2
D=0

Add more I gain as needed where the motor speed moves without overshooting and undershooting(oscillating). Then add small amounts of D gain as needed for the additional boost in command change. Add small P gain(decimal values) as needed to reach desired speed.
The following user(s) said Thank You: tako

Please Log in or Create an account to join the conversation.

5 years 6 months ago #29530337 by tako
Hello, thankyou for your answer but it seems not the problem I have now. I am using open loop mode so nothing involving PID settings. If I set in closed loop speed mode, when i slide to some certain speed ( where motor power is around 700) it auto increase the power to 1000 while speed decreases. I think this links to my 2nd question when motor power more than 700, encoder count lost and speed decreases. Motor tries to increase power to maintain the speed but the more power increases, the more encoder counts lost then power finally reaches 1000.

Please Log in or Create an account to join the conversation.

5 years 6 months ago #29530340 by TechSupport
The encoder shouldn't lose count. Perhaps check your wiring and make sure it is firmly connected.

In terms of the PPR, 1 pulse = 4 counts.

If the power increases, the speed should not decrease. Since this occurs in closed loop speed, it may have to do with the PID, or your speed and acceleration parameter. Make sure that you set your max speed to the desired max speed.

I forgot to ask about the type of encoder you are using.

Speed based applications will use incremental or digital encoders. If you have optical or absolute encoders, those are for speed.
The following user(s) said Thank You: tako

Please Log in or Create an account to join the conversation.

5 years 6 months ago #29530341 by tako
P/S: What I want is to observe the speed. In my first post, I slided the motor 1 to some certain motor power, which gives speed of 200 RPM which is displayed in the Run tab ( it is not my command value since I know that in the open loop, the command value will be the power value but I am not concerning about the motor power)

Please Log in or Create an account to join the conversation.

5 years 6 months ago #29530342 by TechSupport
In Open loop, the speed of the motor will go from 0 to full speed of motor at the +1000 and -1000 command.

The same holds true for closed loop speed, only the Max speed in your speed and acceleration determines the actual max speed the controller will allow your motor to go.

Does the speed jump around, or is it relatively stable?

Please Log in or Create an account to join the conversation.

5 years 6 months ago #29530343 by tako
So it is quite weird because if I put 4096 as PPR, the speed display in Run tab is not the same as the actual speed. If I put 1024 as PPR, it is the same.
It may not be wiring problem, because encoder works fine before motor power reaches about 700 then if I continue to increase the power, the speed decreases?
The Encoder I am using is incremental encoder HEDS-973X. Data sheet can be found here
www.avagotech.com/docs/AV02-1057EN

Thank you for your help

Please Log in or Create an account to join the conversation.

5 years 6 months ago #29530344 by tako
The speed displayed in Run tab is quite stable. just +- 10RPM at speed of 400RPM.

Please Log in or Create an account to join the conversation.

5 years 6 months ago #29530345 by TechSupport
We will look into this a little further.
The following user(s) said Thank You: tako

Please Log in or Create an account to join the conversation.

5 years 6 months ago - 5 years 6 months ago #29530346 by tako
Hello,
The 1st problem is ok now, my PPR is 1024 instead of 4096. 4096 is counts/rev :).
But the speed still decreases at high motor power.

Please Log in or Create an account to join the conversation.

Moderators: tonysantoni
Time to create page: 0.135 seconds