I’m wondering how I would go about telling the motors (CIM motors) to spin at a certain rpm? This rpm would be calculated based on where the robot is in relation to the baskets. I know the motors take inputs of -1 to 1, but that doesn’t really help me when I’m inputting rpm values.
You will need a sensor, such as an encoder, mounted onto your shooter wheel to determine how fast the shooter is currently spinning at. If you how fast the shooter is actually spinning, you can use this information to either increase or decrease the motor output value until the shooter is at your desired RPM.
I would suggest using the CAN functionality of the Jaguar speed controller. you can set the exact rpm of the motor and also have access to PID control.