I calibrated it to the X axis of my port 3 joystick and in my code, if the Joystick is pushed to the left ( p3_x < 20) then I set the PWM03 to 115 and if the joystick is pushed to the right (p3_x > 240) then I set the PWM03 to 140. Then I set the PWM11 to = the joystick value (PWM11 = P3_x) so that I could watch this in the dashboard viewer…
The joystick value ( as seen on PWM11 in the dashboard viewer) when pushed all the way left reads 0 and all the way to the right reads 255 as it should.
The problem is that the motor only rotates when the joystick is pushed to the right (when p3_x = 255)
I removed the M+ & M- from the victor and used the battery to verify that the motor will spin both directions so I know the wiring is correct. Also I double checked to make sure that the control lines were set correctly (black wire to black wire)
Is there something wrong with my victor? I calibrated it and it appears that the values are correct for the joystick and that my code is working… Why won’t it move in the reverse direction when the PWN is set to zero???
What else can I check or how can I verify if it is a victor problem?
When pushed to the right, and pwm03 = 140, the resulting positive speed is 140-127 = 13 and in the other direction 127-115 = -12. Depending upon the motor, that might not result in enough voltage to get the motor to overcome friction and allow it to start moving.
You could easily confirm this with a volt meter and watch the resulting voltage applied to the motor when either direction was commanded.
Do you have additional logic that detects that the joystick is within a deadband region and sets the PWM value to 127?
Assuming that you calibrated the speed controller with a stopped PWM value of 127, and set the min/max speeds somewhat near their normal full scale values, then it is probably working as expected… however, if you calibrated with your much smaller values, the speed controller might not have accepted that small of a change as valid values.
I am assuming that the speed controller was calibrated with a stopped PWM value of 127 but I am not sure how to tell other than now when the joystick is centered it reads 127 and it is 0 at one end and 255 at the other… was that done correctly?
In my code, I set the pwm to 127 before testing the joystick value and the dashboard viewer shows the joystick value to be 127 at center, 0 at its leftmost position and 255 at its right most position.
I am using one of the smaller motors that came in the kit and in the forward position (140) it moves more than fast enough…
What voltage level should I see on the motor input in either direction (AC or DC)?
Correct me if I am wrong but because the victor output is a Pulse width, I should ba able to see this from value 0 to 255 with a scope set up in differential miode shouldn’t I?
Just an ujpdate on how I fixed the problem for anyone that cares…
As it turns out there were two problems…
The victor is bad- it cuts out (looses power) intermittently. When I originally wired the unit I connected the fans of each victor up to the the power going into each vitor and when the power to the victor dies, the fan stops… although, It could be a flakey fan that is shutting down the victor.
Onec I switched victors, I found PWM03 to be dead so I rewrote my code to route the output to PWM11 and this worked fine…