I want to pose a specific scenario-based question in the hopes of getting a variety of inputs (and in the process perhaps some “side info” of use to other teams).
In considering the two new motor controller options, I’m faced with something of a dilemma.
(1) My team has never used CAN bus, and probably will not anytime soon because of a lack of current programming experience.
(2) We are interested in dabbling with PID, but again - low experience.
(3) We will build two robots this year - and last year used 6 motor controllers on a rather simple bot. From seven years of participation and last year’s PDV - we ended up with one spare Jaguar…if we want to take advantage of the new controllers our stock is naturally obsolete.
Is there a worth-while value for us to spend the extra $240 or so for the Talon SRX over the Victor SP? $719.88 to buy 12 Victors, $959.88 to buy 12 Talons).
NOTE: we assume the actual need will be less - as there will likely be some controller in the KOP, some controller based PDV, or both - but the basic question remains.
First, I wouldn’t let programming experience keep you from using CAN - it really is just as easy as using PWM. Besides, if you end up using pneumatics, you’ll be using CAN for that! It really is rather simple, you just have to give it a go… and having Talons on hand will allow you do experiment with that.
For PID… it takes some time and effort, regardless of doing it through the Talon or through the RoboRIO. The choice of speed controller here isn’t nearly as important as spending the time to figure out how it works and how to tune it. For this, I recommend going with the RoboRIO approach, I personally think it’s a little easier to figure out whats going on as you tune it.
If you’re building two robots, why not use old controllers for the second one? Take them off an old robot, and have at it - the size difference may mean you team has to get creative in mounting things for the second robot, but there isn’t much reason to spend all that extra money just for the second robot - old Talon, Jags, or Victors will do the same job. Of course, if you want the extra controllers for backups at competition, that’s a whole other issue.
Also, while I think you probably know this, stating it clearly for others reading the thread: The new Talons, while supporting and working over CAN, can also be controlled over PWM.
Seems like the Victor would be your best choice. The extra bells and whistles on the Talon would likely go unused and by the time you are ready to use them there will be a Talon SRX 2.0. You can implement PID just fine with Victors in software. You could also purchase 1 or 2 Talons to go along with the group of Victors. Since they work with PWM input it’s a simple software update to switch between the two.
We always use pneumatics for something, but we have always used 12 volt solenoids with Spike relays. Can we no longer do that?
We’d really like the two robots to be as identical as possible - at least the control system. What we might try to do is create a control system module that we can switch out between the two. Then buy a few spares to be backups (as you mention).
This is probably the best idea. Get a few for future development, and/or to satisfy us if we get more ambitious than we thought.
Honestly, I think our team is going to do some CAN this year (our first year doing it too). Not only is it GREAT experience to have, it also isn’t too hard. I worked with a CAN shield for Arduino, and I can say that it was much simpler than I expected it to be. It is also less cluttery than running PWM to everywhere. Plus, offloading PIDs to a Talon can save some CPU resources, which is not much, but it also can run PIDs much much faster than the RoboRIO (20hz vs 1000hz) (correct me if I’m wrong, I actually want to know the correct numbers)
TO my understanding it is required that you use the new PCM to run your pneumatics. The PCM only communicates via CAN, so you will have to use it. Like others have said there, it isn’t a large undertaking to setup CAN, just make sure you understand all the differences.
While controlling the compressor through the PCM will almost certainly be required, no reason not to allow the solenoids to be controlled by a Spike. Of course those who really know aren’t talking. :] And no I don’t have any special knowledge
That, unfortunately, is a rules question, and none of us know yet for sure.
However, the new PCM is pretty awesome and easy to use. It completely controls the compressor for you, with no coding needed - you just plug it and the pressure switch into the PCM and you’re good to go. Additionally, you can control 8 solenoids (4 double solenoids) from each PCM, which would otherwise require 4 spike’s - 1 PCM is smaller and lighter than 4 spikes.
While it’s speculation at this point, I would assume that FIRST will require at least the compressor and pressure switch to be hooked up through the PCM.
I think your PID loop will generally be limited by how often you can update your motor controller. For PWM, that is every 5ms for newer ones, 10ms for some older ones. CAN may be used to do faster updates.
The calculations are small by comparison. Of course you may not need to run your loop even that fast. It depends on the inertia of your system, the torque or force of the actuator, the lag of the sensor, etc.
Anyway, my point is that the 20ms is not a technical limit of the cRIO or roboRIO, but may be the default of the library you are using.
While we haven’t been testing CAN motor controllers under the beta system, we have used it with the PDP and PCM. I think you should forget about past experiences with CAN. Under the new system, it is EASY. I’ve been able to trivially add/remove a 2nd PCM on CAN. There really is no comparison between these new components and the troubles we’ve had trying to use JAGs in prior years.
Other thoughts:
Even if you don’t use the PID on the Talon SRX, you get the simpler CANBUS wiring if you use it over CAN.
You can still control the Talon SRX over PWM and change to CAN next year.
We’ve used PID over PWM for several years and 20ms is a faster rate than we’ve needed to run our control loops at, so don’t worry about the differences in update rates.
From a robot inspector’s point of view I can not imagine FIRST allowing the compressor and pressure switch to be connected to anything but a PCM. No, that is not based on anything official just my gut feeling that they would rule that way to make inspection easier.
Has FIRST officially said either of these new speed controllers would be allowed in 2015? Last I heard they were evaluating both models to make sure they had acceptable performance and safety. That said, I don’t see how they will not be allowed given the 888’s and previous Talons are both discontinued. I’d rather not spend money on either model unless I know they would be allowed.
There has been no official word since the blog post about evaluating them. That said, I haven’t heard of any big issues with them, so I imagine they will both be legal.
Sorry, poor choice of wording. Replace the word ‘pneumatics’ with ‘compressor’. However, I don’t think I officially read that anywhere, it is only my hypothesis based on safety and past requirements.
I saw a post indicating PWM rates in this thread.
Is there an on-line source for documentation on the new talons?
The data I can find is from Vex
From looking at this data, what stands out to me is the peak and continuous current rating of the Talon compared to the Jaguar. This datasheet doesn’t reflect any of the CAN features
Is this true? The information I read stated that the PCM replaced the spike for the compressor - but I did not think it would replace the individual solenoid spikes. If this is the case, then I am totally sold on the idea…saving all the spike space PLUS $30 a spike is major. Someone please confirm!
We’re a beta team, and an Alpha team before that… We’ve been controlling solenoids from the PCM for over a year now! The PCM is designed to control either 12 or 24V solenoids through a selectable jumper… it serves a similar purpose as the old pneumatics breakout board/module for the cRIO when it comes to solenoids.
Here’s the full capabilities of the PCM
*It powers the Compressor
*You plug the 120 PSI Switch into it
*It controls 8 different solenoids. (Solenoids can be 12v or 24v, but must all be the same)
*You can have many PCMs on the robot
Most teams were already beyond using spikes to control their solenoids, they were doing it via to solenoid breakout on the cRio. Forcing teams to go back to spikes would have been a step backwards.