Go to Post Freshman: "Why did it break?" Another Freshman: "Because we don't know what we're doing!" Veteran Student: "This is why we can't have nice things." - MechEng83 [more]
Home
Go Back   Chief Delphi > FIRST > General Forum
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Reply
 
Thread Tools Rating: Thread Rating: 4 votes, 5.00 average. Display Modes
  #1   Spotlight this post!  
Unread 08-11-2012, 08:49
Brandon Zalinsky's Avatar
Brandon Zalinsky Brandon Zalinsky is offline
Roaming GeorgiaFIRST MC
AKA: The Mecanum Man
FRC #1058 (PVC Pirates)
Team Role: Alumni
 
Join Date: Jan 2011
Rookie Year: 2008
Location: Clemson, SC
Posts: 456
Brandon Zalinsky has a brilliant futureBrandon Zalinsky has a brilliant futureBrandon Zalinsky has a brilliant futureBrandon Zalinsky has a brilliant futureBrandon Zalinsky has a brilliant futureBrandon Zalinsky has a brilliant futureBrandon Zalinsky has a brilliant futureBrandon Zalinsky has a brilliant futureBrandon Zalinsky has a brilliant futureBrandon Zalinsky has a brilliant futureBrandon Zalinsky has a brilliant future
Re: Can Jaguars

Quote:
Originally Posted by joelg236 View Post
What programming language are you using? In the WPIlib (Java or C++) libraries, a CANJaguar class exists just for that. I'm not sure about Labview.
I'm fairly sure it does. However, be careful with CAN. It's been incredibly unreliable for us.
__________________
This is our Robot. There are many like it, but this one is ours.
Measure twice, cut once, curse, buy more, and cut again.

2014- Excellence in Engineering (UNH), District Chairman's Award (NU), #8 Quarterfinalist (NECMP), Winner (Mainely Spirit)
2013- Semifinalists (Battlecry@WPI) Winner (Mainely Spirit)
2012- Regional Chairman's (GSR), Finalists as the #11 Alliance Captain (Battlecry@WPI)
2011-Xerox Creativity Award (GSR), Semifinalists (GSR) Innovation in Control (Virginia)
2010-Champion (GSR), Undefeated (Chesapeake), Coopertition Award (Chesapeake), Quarterfinalists (Galileo) 8th AC (IRI)
2008-Undefeated (GSR), Xerox Creativity Award (GSR)

Last edited by Brandon Zalinsky : 09-11-2012 at 08:11.
Reply With Quote
  #2   Spotlight this post!  
Unread 08-11-2012, 09:01
Cal578 Cal578 is offline
Passionate FIRST-er, CD donor
AKA: Gerry
FRC #0578 (Red Raider Robotics)
Team Role: Mentor
 
Join Date: Jan 2012
Rookie Year: 2008
Location: Rochester, NY
Posts: 256
Cal578 has a brilliant futureCal578 has a brilliant futureCal578 has a brilliant futureCal578 has a brilliant futureCal578 has a brilliant futureCal578 has a brilliant futureCal578 has a brilliant futureCal578 has a brilliant futureCal578 has a brilliant futureCal578 has a brilliant futureCal578 has a brilliant future
Re: Can Jaguars

Quote:
Originally Posted by Flak-Bait View Post
... However, be careful with CAN. It's been incredibly unreliable for us
Although I've worried a little about reliability, CAN has always worked very well for our team. PWM has proven more unreliable than CAN. My main concern with CAN is that it's a single point of failure: one module fails or gets disconnected, and the whole chain may be offline. So, we are very careful with the cables we make, we perform tension tests before and after installation, and we fasten the cables to something near each end. Making the software fault-tolerant is also important.

Good luck!
__________________
Cal
R3: Red Raider Robotics (FRC Team 578)
Fairport, NY, USA
www.FairportRobotics.org
2016 Finger Lakes Regional: Semifinalist on Alliance 7 (1128, 2010, 578)
2016 NYC Regional: Finalist on Alliance 3 (3419, 578, 3017), 4th seed team, Team Spirit Award
2015 Finger Lakes Regional: 8-3-0 in qualification, 7th seed, Quarterfinalist
2014 NY Tech Valley Regional: 8-4-0 in qualification, 13th seed, Semifinalist
2013 Finger Lakes Regional: 4-5-0 in qualification, 26th seed, Alliance 6, 1-2 in tournament
2012 Buckeye Regional: Gracious Professionalism Award, 7-3-0, 14th seed
2011 Finger Lakes Regional: Engineering Inspiration Award
Reply With Quote
  #3   Spotlight this post!  
Unread 08-11-2012, 09:47
FrankJ's Avatar
FrankJ FrankJ is offline
Robot Mentor
FRC #2974 (WALT)
Team Role: Mentor
 
Join Date: Feb 2011
Rookie Year: 2009
Location: Marietta GA
Posts: 1,923
FrankJ has a reputation beyond reputeFrankJ has a reputation beyond reputeFrankJ has a reputation beyond reputeFrankJ has a reputation beyond reputeFrankJ has a reputation beyond reputeFrankJ has a reputation beyond reputeFrankJ has a reputation beyond reputeFrankJ has a reputation beyond reputeFrankJ has a reputation beyond reputeFrankJ has a reputation beyond reputeFrankJ has a reputation beyond repute
Re: Can Jaguars

The referenced how tos are good. So here is a list of hidden gotchas in CAN. Avoid them, follow the how tos & it works well. Other feel free to add to the list.

Bad wiring- make sure your cable connections are good. This includes crimps in the plug & the female connector on the Jag. Do not have strain on the connectors, but don't let the wiring flop loose either.

Use terminating resistors. I not sure this is really needed in the short cable runs, but why tempt fate. Besides the first on the list of troubleshooting is to check the wiring.

Avoid running can comm cables parallel to power wires, especially motors.

Do not flood the canbus with commands. You can fill the bus up and have data drops. Make sure the programmers understand what the Jag really needs.

Do not send commands to non existing Jags. The comm driver does not like that.

Last edited by FrankJ : 08-11-2012 at 09:50.
Reply With Quote
  #4   Spotlight this post!  
Unread 08-11-2012, 10:06
apalrd's Avatar
apalrd apalrd is offline
More Torque!
AKA: Andrew Palardy (Most people call me Palardy)
VRC #3333
Team Role: College Student
 
Join Date: Mar 2009
Rookie Year: 2009
Location: Auburn Hills, MI
Posts: 1,347
apalrd has a reputation beyond reputeapalrd has a reputation beyond reputeapalrd has a reputation beyond reputeapalrd has a reputation beyond reputeapalrd has a reputation beyond reputeapalrd has a reputation beyond reputeapalrd has a reputation beyond reputeapalrd has a reputation beyond reputeapalrd has a reputation beyond reputeapalrd has a reputation beyond reputeapalrd has a reputation beyond repute
Re: Can Jaguars

Quote:
Originally Posted by FrankJ View Post
Use terminating resistors. I not sure this is really needed in the short cable runs, but why tempt fate. Besides the first on the list of troubleshooting is to check the wiring.
I've never seen a short CAN bus (the shortest I ever ran was ~3' with two nodes) work without a terminating resistor. I have seen short CAN busses work with only one 120ohm resistor somewhere on the bus instead of the spec'd one at each end, and I've also seen long busses with 1 60ohm resistor instead of 2 120ohm resistors.

I've also seen long busses with a 120ohm near one end and no other terminating resistor do really strange things with reflections (we had a node that was actually wired inverted and was reading the reflections instead of the actual message... that was weird)

Bottom line: You need both resistors for reliable performance. On a short enough bus, you can get away with just one.
__________________
Kettering University - Computer Engineering
Kettering Motorsports
Williams International - Commercial Engines - Controls and Accessories
FRC 33 - The Killer Bees - 2009-2012 Student, 2013-2014 Advisor
VEX IQ 3333 - The Bumble Bees - 2014+ Mentor

"Sometimes, the elegant implementation is a function. Not a method. Not a class. Not a framework. Just a function." ~ John Carmack

Last edited by apalrd : 08-11-2012 at 11:27. Reason: Fixed terminating braket on quote
Reply With Quote
  #5   Spotlight this post!  
Unread 08-11-2012, 10:50
FrankJ's Avatar
FrankJ FrankJ is offline
Robot Mentor
FRC #2974 (WALT)
Team Role: Mentor
 
Join Date: Feb 2011
Rookie Year: 2009
Location: Marietta GA
Posts: 1,923
FrankJ has a reputation beyond reputeFrankJ has a reputation beyond reputeFrankJ has a reputation beyond reputeFrankJ has a reputation beyond reputeFrankJ has a reputation beyond reputeFrankJ has a reputation beyond reputeFrankJ has a reputation beyond reputeFrankJ has a reputation beyond reputeFrankJ has a reputation beyond reputeFrankJ has a reputation beyond reputeFrankJ has a reputation beyond repute
Re: Can Jaguars

I guess you do need at least one resistor to make the voltage drop. A good point. Having one on each end is for reflections you do not see on short runs as you said. Also as you said, it is always best just to follow the spec which requires terminating resistors on the ends. I have borrowed a termination resistor off one end the canbus & did not see a difference. I would not try this in a competition.

People also get away with using star topologies, which in not in the specification. It has the advantage of not depending on the through jag connection although it makes for a lot more wire terminations & raises a question on where the resistors should be. Having not tried this, I do not have an opinion on how well it works.
Reply With Quote
  #6   Spotlight this post!  
Unread 08-11-2012, 11:06
Ether's Avatar
Ether Ether is offline
systems engineer (retired)
no team
 
Join Date: Nov 2009
Rookie Year: 1969
Location: US
Posts: 8,071
Ether has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond repute
Re: Can Jaguars

Quote:
Originally Posted by FrankJ View Post
People also get away with using star topologies, which in not in the specification. It has the advantage of not depending on the through jag connection although it makes for a lot more wire terminations & raises a question on where the resistors should be. Having not tried this, I do not have an opinion on how well it works.
further reading:

http://www.can-cia.org/fileadmin/cia...icc/9/saha.pdf

http://srv.uib.es/ref/838.pdf


Reply With Quote
  #7   Spotlight this post!  
Unread 08-11-2012, 11:08
jee7s jee7s is offline
Texan FIRSTer, ex-frc2789, ex-frc41
AKA: Jeffrey Erickson
FRC #6357
 
Join Date: Nov 2007
Rookie Year: 1997
Location: Dripping Springs, TX
Posts: 315
jee7s has a reputation beyond reputejee7s has a reputation beyond reputejee7s has a reputation beyond reputejee7s has a reputation beyond reputejee7s has a reputation beyond reputejee7s has a reputation beyond reputejee7s has a reputation beyond reputejee7s has a reputation beyond reputejee7s has a reputation beyond reputejee7s has a reputation beyond reputejee7s has a reputation beyond repute
Re: Can Jaguars

Quote:
Originally Posted by FrankJ View Post

Use terminating resistors. I not sure this is really needed in the short cable runs, but why tempt fate. Besides the first on the list of troubleshooting is to check the wiring.
Termination resistors are required for any cable length per the CAN standard. The spec is for 120 Ohm at each end, either as a single resistor or as a 2x 60 Ohm split termination with midpoint bias and/or noise filtering. Since the bus length on a typical FRC robot isn't long enough to cause a significant noise problem, the FRC documentation uses the simple single resistor option. But, if you had a 100 meter long CAN bus, then those noise considerations come into play.

CAN uses differential signaling, and those termination resistors provide the proper load (60 Ohm DC) for the drivers as well as an impedance match (120 Ohm at each end of a nominal 120 Ohm transmission line) to limit reflections on the bus. While a short cable length might not need the termination from a reflection perspective, the drivers still need a proper load regardless of the length.

The implication here is that you want a bus with the termination resistors at either end, and the shortest possible stub lengths (distance from the bus wire to the transceiver chip...which is some short distance on the Jaguar circuit board that you don't have to worry about). So, don't try to mitigate the single point of failure...if you don't have all of the jaguars in 'series' then all of the transmission line math breaks down and you'll have bus failures.

For more gory technical details here's a TI application note that goes into the bus operation and termination particulars:

http://www.ti.com/lit/an/slla270/slla270.pdf

And here are Scott McMahon's videos on how to wire a Jaguar from TI (scroll to the bottom of the page):
http://www.ti.com.cn/mcu/cn/docs/mcu...ntentId=100442

Don't ask me why it's on TI's china site, but those are definitely Scott's videos.
__________________

2013 Alamo Regional Woodie Flowers Finalist Award Winner
2012 Texas Robot Roundup Volunteer of the Year
Texas Robot Roundup Planning Committee, 2012-present
FRC 6357 Mentor, 2016-
FRC 2789 Mentor, 2009-2016 -- 2 Golds, 2 Silvers, 8 Regional Elimination Appearances

FRC 41 Mentor 2007-2009
FLL Mentor 2006
FRC 619 Mentor 2002
FRC 41 Student 1998-2000
Reply With Quote
  #8   Spotlight this post!  
Unread 08-11-2012, 13:44
slijin's Avatar
slijin slijin is offline
Pockets
AKA: Samuel Lijin
FRC #0694 (StuyPulse)
Team Role: Mentor
 
Join Date: Jan 2010
Rookie Year: 2010
Location: New York City
Posts: 537
slijin is a splendid one to beholdslijin is a splendid one to beholdslijin is a splendid one to beholdslijin is a splendid one to beholdslijin is a splendid one to beholdslijin is a splendid one to beholdslijin is a splendid one to behold
Re: Can Jaguars

Quote:
Originally Posted by Cal578 View Post
My main concern with CAN is that it's a single point of failure: one module fails or gets disconnected, and the whole chain may be offline.
Although daisy-chaining obviously creates this impression, do note that the CAN ports on the Black Jags (I won't vouch for the Greys, having not touched them for multiple years now) are hardwired together, so if one Jag in the line fails, it does not necessarily shut the entire system down. If you're using serial-to-CAN, however, and the converting Jag dies, then your system will shut down.

I'd also like to point out that, as an expensive alternative (provided you have the funds), the 2CAN offers a much more sophisticated CAN interface than a serial-to-CAN can offer, and also provides better performance (if you don't plan to rely heavily on CAN during the season, you won't need its advantages - but it never hurts to know more!).

With reference to the star topology that Ether mentioned, here's a backbone setup that you can try out for yourself.

Good luck!
__________________

2010-12 CT Chairman's
2011 Galileo 5th seed
2010 NY Regional Winners
Reply With Quote
  #9   Spotlight this post!  
Unread 08-11-2012, 19:00
s1900ahon s1900ahon is offline
Registered User
AKA: Scott McMahon
FRC #2468 (Appreciate)
Team Role: Mentor
 
Join Date: May 2008
Rookie Year: 2008
Location: Austin, TX
Posts: 156
s1900ahon has a brilliant futures1900ahon has a brilliant futures1900ahon has a brilliant futures1900ahon has a brilliant futures1900ahon has a brilliant futures1900ahon has a brilliant futures1900ahon has a brilliant futures1900ahon has a brilliant futures1900ahon has a brilliant futures1900ahon has a brilliant futures1900ahon has a brilliant future
Re: Can Jaguars

Quote:
Originally Posted by slijin View Post
Although daisy-chaining obviously creates this impression, do note that the CAN ports on the Black Jags (I won't vouch for the Greys, having not touched them for multiple years now) are hardwired together, so if one Jag in the line fails, it does not necessarily shut the entire system down.
The wiring of CAN ports on grays is the same as on the blacks.
Reply With Quote
  #10   Spotlight this post!  
Unread 08-11-2012, 21:24
Cal578 Cal578 is offline
Passionate FIRST-er, CD donor
AKA: Gerry
FRC #0578 (Red Raider Robotics)
Team Role: Mentor
 
Join Date: Jan 2012
Rookie Year: 2008
Location: Rochester, NY
Posts: 256
Cal578 has a brilliant futureCal578 has a brilliant futureCal578 has a brilliant futureCal578 has a brilliant futureCal578 has a brilliant futureCal578 has a brilliant futureCal578 has a brilliant futureCal578 has a brilliant futureCal578 has a brilliant futureCal578 has a brilliant futureCal578 has a brilliant future
Re: Can Jaguars

I agree that one failed Jag in the middle of the line won't usually cause problems for downstream Jags. But I've seen and heard of problems with the wiring, such as a connector breaking or coming out, and then all of the downstream Jags are out, plus often the upstream ones as well. A short circuit will usually disable all the devices on the bus.

I mention these only as a concern, and something to guard against. As I posted earlier, we've been very careful with our wiring, and we've never had any problem using CAN.
__________________
Cal
R3: Red Raider Robotics (FRC Team 578)
Fairport, NY, USA
www.FairportRobotics.org
2016 Finger Lakes Regional: Semifinalist on Alliance 7 (1128, 2010, 578)
2016 NYC Regional: Finalist on Alliance 3 (3419, 578, 3017), 4th seed team, Team Spirit Award
2015 Finger Lakes Regional: 8-3-0 in qualification, 7th seed, Quarterfinalist
2014 NY Tech Valley Regional: 8-4-0 in qualification, 13th seed, Semifinalist
2013 Finger Lakes Regional: 4-5-0 in qualification, 26th seed, Alliance 6, 1-2 in tournament
2012 Buckeye Regional: Gracious Professionalism Award, 7-3-0, 14th seed
2011 Finger Lakes Regional: Engineering Inspiration Award
Reply With Quote
Reply


Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT -5. The time now is 16:17.

The Chief Delphi Forums are sponsored by Innovation First International, Inc.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi