Different Hall values for identical motors

I have a genaeral question.
I am using to motors for my robot for the wheels. ( 36GP-BLDC3650 )
These motors have build in Hall rotary encoders that should give 6 pulses for each revolution.
But they also have a gearbox that reduce te rpms from the motor ( about 8000 ) to 58 on the axl.
I assume the rotary encode is on the motor.

The motors work and run both at very similar speed. Which is nice for a car.
Still I wanted to use the Hall sensor output and there came the suprise.
At a PWM of 90 I manually counted about 27 RPM. But the hall signal on the left one gave between 15660 and 15705 signals a second and the right one between 280 and 305 signals.

Does anyone have any idea how this is possible or is the right one just broken ? But still I don't understand. No signals I would understand. Or if some of the Hall sensors are broken and some not any division of 2, 3 or 6 of the high count. But I can not work out how this is possible.

The model with the nominal 58 RPM output is the 24V model with 139:1 gearbox.

At an output rate of "about 27 RPM" the motor should be turning 3753 RPM. One motor is giving about 4 pulses per motor revolution and the other is giving about 10 pulses per output shaft revolution. Neither matches the "6 per revolution". You may have to open up the motors to see if they are different inside.

When you run the motor at a different speed, does the pulse count change to match?

I tested at a higher speed with strange results.
The right motor roughly tripeled it's pulse count to around 930. This makes sens as the wheel spins faster.
BUT
The otherone the pulse count dropped a few hunders on average.
Before it was around 15600 now it averaged at 15230.

The strangest thing is that we have less pulses at more revolutions.
Also the change is not linear to the value.

You have noise from one of the motor pickups.

As the motor is a closed unit with the encoder and the driver inside it Is can not do much about that. Can it also be interference in the wiring between the motor and the Arduino?

Yep. especially if you're using breadboards.

I have build a prototype shield so it is possible. But the good news is that I can test the theorie bij switching the motor connectors

If it is the wiring the fault should stay in the same encoder in te test program. Even when it is physically a different motor

If they both start working you have a loose connection.

I tested by flipping the left and right connectors on the shield.
The result is that the test values also flipped.
This means that if it is noise it is not from the shield/breadboard because if it was the wiring the test values would stay the same.
So it is the connectors or somewhere in the motor or factory supplied wires.
And that sucks.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.