Go to Post P.S. No matter what happens a build season, you will always have memories. - Briansmithtown [more]
Home
Go Back   Chief Delphi > ChiefDelphi.com Website > Extra Discussion
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
 
 
Thread Tools Rating: Thread Rating: 4 votes, 5.00 average. Display Modes
Prev Previous Post   Next Post Next
  #20   Spotlight this post!  
Unread 26-01-2013, 21:39
Mr. Lim Mr. Lim is offline
Registered User
AKA: Mr. Lim
no team
Team Role: Leadership
 
Join Date: Jan 2004
Rookie Year: 1998
Location: Toronto, Ontario
Posts: 1,125
Mr. Lim has a reputation beyond reputeMr. Lim has a reputation beyond reputeMr. Lim has a reputation beyond reputeMr. Lim has a reputation beyond reputeMr. Lim has a reputation beyond reputeMr. Lim has a reputation beyond reputeMr. Lim has a reputation beyond reputeMr. Lim has a reputation beyond reputeMr. Lim has a reputation beyond reputeMr. Lim has a reputation beyond reputeMr. Lim has a reputation beyond repute
Re: pic: Team 610 - 2013 Electronics Board

Quote:
Originally Posted by Andrew Schreiber View Post
Im interested in the CAN Error Recovery stuff. Could you elaborate?
We coded our robot in Java using the Command-based template.

Within each subsystem that used a Jaguar, we ensured that whenever we caught a CANTimeOutException, we called a subsystem-specific recovery method to re-initialize and verify the configurations of all Jags within that subsystem.

This ended up being a bit tricky for some sub-systems, as we switched Jaguar configurations depending on the task we were doing. i.e. the drivetrain could be in VBus, Position, or Speed mode at different times in the match. We had to keep track of these states, and restore them gracefully.

We had to handle the deadlock condition as well, because sometimes the error recovery would cause more CANTimeoutExceptions if the affected Jag wasn't ready to be re-initialized. Gracefully handling this condition without stopping your entire CAN communications bus was a bit tricky.

At worst we only wanted a single sub-system to "pause" just long enough to gracefully re-initialize the Jaguars after an exception. All the other sub-systems had to keep going as if nothing happened.
__________________
In life, what you give, you keep. What you fail to give, you lose forever...
Reply With Quote
 


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 00:27.

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