![]() |
Using a star configuation for Jaguars on CAN
This last season, we had a ton of problem with the CAN bus ... in particular with intermittent RJ10 connectors. We had best results with the Tyco connectors Luminary recommends but still there would be times when the whole robot would go down just because one CAN connector wasn't making contact quite to its liking. Unplug and re-insert the connector and it was happy again.
I know the CAN bus is really designed to be a bus with 100 ohm terminators at each end. For the length of bus most robots have, I'm wondering if it might be possible to come up with a star configuration instead. This would involve a a central hub which then distributes the signals to all the Jaguars, You wouldn't daisy chain the Jaguars in this case so the failure of one wouldn't bring the whole robot down. Has anyone tried such a thing or have opinions about the chances of getting it to work? Perhaps someone would like to sell it as a product? |
Re: Using a star configuation for Jaguars on CAN
It should be possible, but part of what makes CAN better than PWM is the fact you can daisy chain, which simplifies wiring. I think really what is needed is a more robust connector on the Jaguars. Cars use daisy chain CAN, but don't have comm issues because they don't use RJ-11 style connectors. DB-9 would be very robust but is overkill on size/weight.
I'm not sure whether it's simply an issue with the RJ-11 connectors on the Jaguars themselves or the fact we're making our own cables, but few people seem to have an issue with the modular jack RJ-45 connectors on the cRIO and radio, as long as they're using premade cables. Maybe a good RJ-45 connector on the Jaguar instead of the RJ-11? |
Re: Using a star configuation for Jaguars on CAN
We went so far as to buy the best RJ10 crimpers we could and buying a RJ10-45 cable tester. We tested each cable before putting it on the robot wiggling around the wire while we were doing it. We still had problems.
You make a good point about the RJ45 connectors not seeming to fail though there are always the unexplained loss of coms on the field so who knows. Maybe they are dropping in and out too? I love the way the daisy chain cleans up the control board, I just don't like having, in our case, 18 flaky connectors in that chain any one of which can bring down the whole robot. |
Re: Using a star configuation for Jaguars on CAN
I've tried in the past, with varying degrees of success. There was a major push internally a few years back to launch FRC-CAN as a star network, but in the end it was determined to not be worth the trouble, in both the $$ sense and the confusion sense.
That is not to say that it is impossible, and I'd love to see your implementation. One that showed promise was a passive star. 60 Ohm termination in the center, no termination on the end points, and equal length arms. The difficulty here is making sure that all devices are the same distance from each other (electrical length wise). I never got this to be quite good enough to launch to 2000 teams, but it might be do-able for the N teams with good enough mentors to compensate. Another option is an active star. A CAN-hub has one PHY per branch, and a CPLD to act as a fancy OR-gate. Expensive! Lastly, you could do a 'vampire tap' system. This is a trunk with lines hanging off of it. The maximum length of each tap is determined by the speed of the bus. I don't really like this option. |
Re: Using a star configuation for Jaguars on CAN
How important was it to have equal length arms? If that's vital that would be a deal killer for us since all that wire hanging around would start to look ugly real fast.
An active star module that allowed every jaguar to remain at it's default address of 0 would be very cool. You'd determine which address it had by the jack it was plugged into on the star module, just like PWM. The active module would handle translating the address from the cRio and rebroadcasting the signal to each device with the proper address. The advantage is then if a Jaguar fails, you just slap in a new one. I know that's just a fantasy, though. |
Re: Using a star configuation for Jaguars on CAN
Quote:
1) Radio reset button getting hit (black button on the front of the old radios). This could happen simply from the mass of the button if the shock was large enough (e.g. going over a bump hard, even kicking could do it if the axis of the shock was in line with the button). 2) cRIO or radio power disconnect. The radio power connection was friction fit. The cRIO power connector uses non-locking screws that like to back out under vibration. 3) Driver station ethernet disconnect (less common). The FMS this year had really good reporting on radio issues: e.g. it showed whether the disconnect was on the robot or driver station side. We used CAN this year to 7 Jaguars. We only had two issues with CAN disconnecting: in one, going over the bump hard, some of our pneumatic brass came loose and fell onto one of the RJ11 tabs, neatly disconnecting the cable. We also had one unexplained failure which we believe was a cable working its way loose. Another common failure on the CAN bus we saw on our practice base but not on our main robot was the terminator resistor leads shorting: the way they have you make the terminator seems to be vulnerable to the leads being too long and vulnerable to touching each other (as the pins are adjacent). |
Re: Using a star configuation for Jaguars on CAN
Quote:
If you get epoxy down into the connector, the leads won't be able to move and the epoxy is non-conductive so they will never short each other out. It also protects against metal fatigue breaking the leads from frequent insertion / removal because they can't move. |
Re: Using a star configuation for Jaguars on CAN
Quote:
Since I changed jobs I don't have access to the RF / SI simulators. Perhaps one of our forum members could rig something up? Quote:
microcontroller + FPGA per board CAN transceiver+ Connector + terminators per leg Not something I can justify for the KoP. Also, it takes a bit of work to make sure you don't get the bus latched into a dominant bit. Lastly, propagation delay is a concern. |
Re: Using a star configuation for Jaguars on CAN
It seems like a star configuration would negate the advantages of using CAN over PWM. Just a thought.
|
Re: Using a star configuation for Jaguars on CAN
Quote:
|
Re: Using a star configuation for Jaguars on CAN
In our case we needed to use CAN for current and voltage sensing throughout our robot. For example, our front ball magnet would capture a ball and then stall by design with the current held at a constant value so as not to smoke the motor. It could also sense if it had a ball by looking at the voltage being delivered to the motors.
Our kicker would vary it's kicking power by monitoring the current going to the winch as it's being cocked. We'd love to use the daisy chain configuration if it were reliable. We might give it another whirl next season but be ready to fall back to PWM for speed controllers that don't need all the fancy features. |
Re: Using a star configuation for Jaguars on CAN
Quote:
We used a potentiometer for our kicker. The kicker motor is actually on a Spike, and Spikes don't have current sensors. We had no jaguars at all (all Victors and Spikes), so CAN wasn't a question we asked. (the answer would have been NO unless we needed the current sensors). |
Re: Using a star configuation for Jaguars on CAN
Quote:
The original design (in software) of our kicker only used an encoder and a reed switch. This software was buggy, sometimes it would not know when to return and continue applying power after it reached the hard stop. (I blame the encoder... :] ) Needing a quick fix, the current sensing feature of the kicking jag was used to terminate the kick if it was stalled (meaning it either reached the hard stop, or got stuck on something else :ahh:) . This fix worked well enough that no more modifications were needed for the rest of the season. And like Dale, our magnet uses the current to detect a ball. (This is used mostly for auto) It stops it if the ball gets too far in, but isn't needed as much to prevent blowing the motor. (Its a CIM) The use of current sensing was an after thought, but because we had the capability, it was very useful. |
Re: Using a star configuation for Jaguars on CAN
Quote:
I'm not sure about untwisted pair phone cable, but for Ethernet there are two types of wire you can buy - stranded and solid core. In this case it is absolutely vital that one buys the correct plug for the wire type used. Patch cables (the ones used for repeated connections between two devices) are twisted pair cables and allow more bending cycles (with a slight reduction in performance electrically). Solid core cable is what you run in the wall for static use. Again, the correct plug type is absolutely necessary. Now you mentioned you used RJ-10 connectors. I need you to clarify something for me. Is your connector a 6 position 4 conductor connector (RJ-11) or a 4 position, 4 conductor connector? Since the receptacles themselves are 6 position 4 conductor receptacles, I would personally use nothing less than a 6P4C connector. We used 6P6C (RJ-12) for everything because it will work in any connection between devices that one could possibly need (also, the 6P6C cable we bought was easier to strip than the 6P4C). The 4P4C connector is a flimsy connector that is most commonly used for connecting the handset of a phone to its base unit (for any of you that still have analog wired phones with the curly wires). I do not believe we had any issues with the physical CAN bus itself last year (not that we didn't have troubles with the differences between the PWM style and CAN style, design-wise). So in summary: If you decide to use the CAN bus again next year, I would use at least a 6P4C connector for connections between Jags. The 6P6C setup may make the cables more robust because there are 50% more wires connected mechanically. Also, be sure to use standard phone cable (which I believe is stranded). We bought a fairly inexpensive crimper - about $20 bucks - and it seemed to do the trick. We did not test our cables with a tester either. Good luck and I hope my ramblings help someone. - Bryce |
Re: Using a star configuation for Jaguars on CAN
I was wrong in my previous post about RJ10s. We used the 4 pin RJ11s because that's what Luminary said to use (except for the RS-232 connection which we didn't use with the 2CAN.) It meant you didn't have to worry about the two unused pins. It might be, though, that the 6 pin RJ12 creates a more solid mechanical connection. That's a good idea and would be something for us to try next pre-season.
We used stranded four conductor cable with connectors made for stranded. The problem didn't seem to be in the cables themselves but in their tenancy to loose connection inside the Jaguar. The RJ12s might help with that. |
| All times are GMT -5. The time now is 20:50. |
Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi