![]() |
Measuring RPM
Was wondering if it would be possible to measure and set shooter wheel rpm with a vex versa encoder?
|
Re: Measuring RPM
Yes, it is possible. For measuring, you can divide encoder ticks/distance by time. For setting the speed, you can use a PID control loop to PID your motor speed based on feedback from your encoders.
|
Re: Measuring RPM
From the specs on their website: (http://www.vexrobotics.com/276-2156.html)
Quote:
|
Re: Measuring RPM
He may have been talking about the integrated vex versaplanetary stage with encoder from CTRE. I believe that can measure up to 15,000 rpm depending on the method you use (pwm or dio).
|
Re: Measuring RPM
Quote:
|
We are using a wheeled shooter this year, and I am thinking to have a repeatable shot the wheels need to spin at same rate every time so was thinking using the versa planetary encoder to read and set rpm on the wheels
|
Re: Measuring RPM
Quote:
To control the RPM, you can use a variety of methods. One method is Bang-Bang (what we used in 2012) and a whitepaper can be found here. Another option is to create a PID loop that runs on the roboRIO. Another option, at least in years past, was to feed the encoder values directly to a Jaguar, and the Jaguar would run the PID loop for you after you give it a set point. I am not sure what the equivalent motor controller of today is that can do that, however. |
Re: Measuring RPM
Another option would be for the speed to be controlled by a dial on the driver's station. You could play with the dial as needed, even during the match, if you are having issues.
Even if you do not decide to use this method in competition, it might be a good way to figure out what speed you want in the first place and then use a Bang-Bang controller or PID loop to control on-field. |
Re: Measuring RPM
Quote:
We did do something similar in 2012 though. After our camera tracked the target, and fed the shooter a setpoint value, we had 2 buttons on our joystick that would increase the RPM setpoint by 50, or decrease it by 50. |
Re: Measuring RPM
In the case that you are unable to create a speed control routine in code, you actually can do a reasonably good job just by accounting for the battery voltage.
The major contributor to speed fluctuations of your wheel will be battery voltage, assuming that your motor and mechanical system don't change. By simply multiplying the amount your drive your shooter wheels by the % of battery voltage you can actually do a reasonably good job of keeping the motor at the same speed. That said, if you use the "I" value in PiD, you can do a pretty good simple speed controller. |
Re: Measuring RPM
Quote:
Quote:
|
Re: Measuring RPM
In case you do decide to use the velocity Closed-loop in Talon SRX, checkout section 12.4 for a Java walk-through of Velocity-closed-loop.
http://www.ctr-electronics.com/talon...ical_resources Also source here... https://github.com/ozrien/FRC-Exampl...bot/Robot.java |
We are using srx speed controllers.
|
I should also include that we are using lab view
|
Re: Measuring RPM
Quote:
I am not versed with LabView, but I'm sure someone can help you with that. |
| All times are GMT -5. The time now is 16:00. |
Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi