View Single Post
  #14   Spotlight this post!  
Unread 14-03-2011, 09:24
boomergeek's Avatar
boomergeek boomergeek is offline
Registered User
AKA: Mr. D (Dick DiPasquale)
FRC #0241 (Pinkerton Robotics)
Team Role: Mentor
 
Join Date: Feb 2009
Rookie Year: 2009
Location: Derry, NH
Posts: 191
boomergeek has a brilliant futureboomergeek has a brilliant futureboomergeek has a brilliant futureboomergeek has a brilliant futureboomergeek has a brilliant futureboomergeek has a brilliant futureboomergeek has a brilliant futureboomergeek has a brilliant futureboomergeek has a brilliant futureboomergeek has a brilliant futureboomergeek has a brilliant future
Re: 706 had the curse of all curses

Quote:
Originally Posted by petet4 View Post
A little more detail on the cRio issue. I'm the software mentor for team 706 and in the process of trying to debug the intermittent cRio mini resets, which I now understand as a 2nd watchdog within the cRio. We created a new project and created a telop loop consisting of 2 lines. Where shftin is a solenoid output. When telemode was enabled within a couple of minutes the solenoid LED would intermittently turn off for about .25sec.

void OperatorControl(void)
{

while (IsOperatorControl())
{
shiftin.Set(true);
Wait (0.01);
}
}

There was no predicable rate it would go out. Sometimes it would run for minutes with no issues and sometimes it would go out several times with 10-20 seconds.

One thing that would make things better is to use a different classmate but the problem never went away. The first classmate which showed the problem most often was running 23 processes and about 0.85% network usage and ~25% CPU usage. The 2nd classmate when worked better had 47 processes running with about the same network and CPU usage as the first.

The software on the classmate was uninstalled and re-installed which did make any difference. The were many other things tried. When we get robot back I plan to analyze the network traffic between the cRio and the driver station to get to the root cause of this issue.

-pete

Is it possible that you have a mix of 2010 or earlier code and some 2011 code?
The user WatchDog by default in 2011 code is NOT enabled. MotorSafety class is used instead. Refer to the WPI Robotics Library
User’s Guide.

If your initiialization was from 2010 and enabled watchdogs, then it should be "fed" periodically in your OperatorControl loop.
Look at an example from 2010:
http://code.google.com/p/chopshop-16...6495b511d cce


"WPI Robotics Library User’s Guide":
Note: The user watchdog timer is being replaced with the MotorSafety interface. MotorSafety is the preferred way to provide safe operation of motors on your robot. By default,
the user watchdog is disabled (changed from 2010) and the MotorSafety timeouts are enabled by default on the RobotDrive object and not enabled by default on Victors and Jaguars.
Reply With Quote