FBL2360 - Quad Encoder Counting while motor stopped

6 years 1 month ago - 6 years 1 month ago #29533112 by methods
Hello, thanks for reading.

EDIT: SOLVED -> Add 1nF cap from Encoder Inputs to Ground, Add 1kohm resistor to VCC


I have a TTL 1000 count Quadrature encoder
Wired into pins 21 and 22 on the DB25
Encoder is selected as Feedback for Motor 2

Encoder RPM matches Hall Effect RPM perfectly

Trapezoidal and Sinusoidal work open loop no problem
Sinusoidal (untuned) works Closed loop... but goes Krazy sometimes.
Set up for "Other" encoder and Hall + Encoder for control

I have measured and found the following to be an issue:

When Encoder A and B are different (0V, 5V..... or 5V, 0V) the counter works as expected.
When the motor stops in an overlap position (5V, 5V) the encoder just keeps counting

This is a single end TTL encoder.
I have them pulled up with 1K resistors
All settings are ok... my system works... but there is clearly a bug of some sort here.
My encoder feedback seems to be clean - i.e. it is not spitting out a pulsed signal
Motor is still and there is no noise - it is not a noise issue

Voltages are steady and strong.
Problem only occurs during overlap.

Let me know if you need to know anything else to comment or if you have a thread you can point me to with possible resolution.

thanks,
-methods

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

6 years 1 month ago #29533113 by methods
Answer my own question... MUST be a loose encoder wire.

RoboteQ does not count with the Encoder disconnected so it can not be a firmware bug.
A loose connection... you would think it would show up on a meter but too fast.
Requires a good scope to see it.

I will go test and report back.

thanks,
-methods

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

6 years 1 month ago #29533114 by methods
Resoldering the Encoder crimps did not do it... but I found what does.

Pulling Encoder Power and Ground
With Encoder outputs connected
Causes it to go nuts REAL FAST

Hrm... Power and Ground integrity?

-methods

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

6 years 1 month ago #29533115 by methods
Removed the 1K pullup resistors and it goes even more insane.

Hrm... not really liking the combination of this Encoder with the sensitive (1Mhz) RoboteQ input.
This needs some filtering.

A LPF tuned to 2x the fastest that the motor will run full out.
Or...
I Schmidt Trigger input?

Looks like it needs buffering or filtering to my eye

-methods

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

6 years 1 month ago #29533116 by methods
Better ground - no effect
Heavy Electrolytic VCC to ground - no effect

Ceramic cap signal to ground - stops the noise.
Now... lets see if it can still keep up.

(sorry for the play by play... but hopefully I can save a customer some time in the future. I am pretty sure these inputs need more filtering as they were not originally supported yes?)

-methods

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

6 years 1 month ago #29533117 by methods
No response after adding cap
Added pullups back in (1K) now I get clean readings up to 1/2 RPM
3RPM and up get filtered out.

Too high a value of Cap.
Had some 6.3V 47uF ceramic sitting in my parts dish

Next up - 4.7uF, then .47uF, then .1uF, then .01uF
(We are just walking through the filtering... yea we could calculate it... but this demonstrates it in action)

So far - no resistor in series. Save that for the analog signals (I never read an ADC without running a LPF - aliasing will destroy you...)
Like these caps are going to destroy my transitions!

Perhaps a buffer would be better?
Whatever - I have caps and a soldering iron and an hour...

-methods

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

6 years 1 month ago #29533118 by methods
Could only find 0.1uF in 0603
Tried to lead them... fail
Too brittle for hay-wiring

Finally found some 0.1uF in 0805
No noise what so ever on the lines
Runs up to 100RPM then starts to draw high current

Switching to Hall Only mode to test encoder stand alone
RPM for RPM for starters

Its looking like 0.01uF
Which... means a trip to the store unfortunately

Where is my quarter jar?

-methods

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

6 years 1 month ago #29533120 by methods
Drove to the store... spend $3 for 6 capacitors worth $0.002

1000pF
10,000pF
22,000pF

Went straight to the safest route (higher cutoff frequency)

1000pF gets to 200RPM with no pullups
**Pullups are required for this encoder even tho it displays TTL output.
*** Lost a channel A... not sure if it was due to over-current or an accidental short circuit. Likely a short circuit while soldering

Swapped Motors:

1000pF gets to MAX RPM rock solid with pullups
No jitter of any kind. Not even a hint.
Tracks the halls very close

SOLVED:
In order to run "Unknown Chinese TTL Quad Encoder 1000" into FLB2360
Add 1K pull up resistors
Add 1nF cap to ground
No jitter, no lag, no bad readings

Still waiting for an admin to point out that there is probably a code we can punch in to change the filtering on that input....

-methods
The following user(s) said Thank You: blake

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

6 years 1 month ago #29533122 by methods
Last Post:

Able to achieve rock solid performance
Steady 0.02 RPM with ultra high torque in Sinusoidal closed loop
Runs up into the hundreds of RPM and back very smooth.
No jumps, jitter, or irritations

Sweet....
I take back anything I said (a year or two back) about RoboteQ not being ready for prime time. The firmware updates they are putting out (along with a little old school analog filtering) make this controller a killer deal.

Normally I deal with Sevcon Gen 4 ... you want to talk about a tuning nightmare? Years in and I still cant tune a motor ;-/

-methods
The following user(s) said Thank You: blake

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

6 years 1 month ago #29533123 by blake
Hey Methods,

Great thread! All of your troubleshooting was not in vain. Had I gotten to this sooner I would have told you that there is no software filter on the encoder inputs, the controller is looking for clean quadrature signals. So I would have recommended filtering the input (as you have done) or tried methods to shield your signal wires against noise.

Anyway, glad you were able to get it working well. Can you share the datasheet or model of the encoder you've been working with?

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

Moderators: tonysantoni
Time to create page: 0.100 seconds