Go to Post I might be singing a different tune if I get a water jet for Christmas. :) - FrankJ [more]
Home
Go Back   Chief Delphi > Technical > Electrical > CAN
CD-Events   CD-Media   CD-Spy   FRC-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Reply
 
Thread Tools Rate Thread Display Modes
  #1   Spotlight this post!  
Unread 02-22-2012, 04:03 PM
Joe Ross's Avatar Unsung FIRST Hero
Joe Ross Joe Ross is offline
Registered User
FRC #0330 (Beachbots)
Team Role: Engineer
 
Join Date: Jun 2001
Rookie Year: 1997
Location: Los Angeles, CA
Posts: 7,717
Joe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond repute
CAN periodic status

Is anyone using the periodic status feature of the jaguars? It looks like it's in the LabVIEW library and BDC-COMM, but not in C++ or Java. I also didn't see it in the jaguar CAN documentation (although I may have missed it).

When I use it, I get the requested status, but I also get the following error reported to the driver's station
Quote:
>> ERROR <Code> -44086 occurred at Did not receive the appropriate number of bytes from the Jaguar.WPI_CANJaguar_GetStatus.vi:1<http://jaguar.wpi_canjaguar_getstatus.vi:1/>Periodic Tasks.vi>>Robot Main.vi <time>18:11:34 02/18/2012 FRC: JaguarCANDriver detected insufficient buffer size.
Diving into the WPI_CANJaguar_GetStatus, it appears that it is only sometimes is receiving the status, and when it doesn't it throws that error.

I set it up with a rate of 0.1 seconds and read it in a 100ms loop in periodic tasks (see attached pictures). Is anyone else using it?
Attached Thumbnails
Click image for larger version

Name:	periodic_status_begin.png
Views:	34
Size:	3.9 KB
ID:	12053  Click image for larger version

Name:	Read_status.png
Views:	28
Size:	33.8 KB
ID:	12054  

Last edited by Joe Ross : 02-22-2012 at 04:08 PM.
Reply With Quote
  #2   Spotlight this post!  
Unread 02-22-2012, 11:02 PM
rrossbach rrossbach is offline
Lead Geek
FRC #2607 (RoboVikings)
Team Role: Mentor
 
Join Date: Nov 2008
Rookie Year: 2008
Location: Warrington PA
Posts: 75
rrossbach is a splendid one to beholdrrossbach is a splendid one to beholdrrossbach is a splendid one to beholdrrossbach is a splendid one to beholdrrossbach is a splendid one to beholdrrossbach is a splendid one to beholdrrossbach is a splendid one to behold
Send a message via Yahoo to rrossbach Send a message via Skype™ to rrossbach
Re: CAN periodic status

Haven't tried using this in team code - didn't even realize it was available in the FRC firmware - but I just downloaded the most recent update of the RDK (8555, updated 2/1/2012) and it looks like the docs now include the periodic status CAN messages, at least for the non-FRC firmware.

- Ron
Team #2607 controls mentor
__________________

2014 MAR Bridgewater-Raritan District Innovation in Control Award
2014 MAR Bridgewater-Raritan District 6th seed and quarter-finalists (thanks 1676 and 1626)
2014 Virginia Regional Quality Award
2014 Virginia Regional 1st seed and winners (thanks 384 and 1610)
2014 MAR Hatboro-Horsham District Gracious Professionalism Award
2014 MAR Hatboro-Horsham District 3rd seed and semi-finalists (thanks 486 and 709)
Reply With Quote
  #3   Spotlight this post!  
Unread 02-23-2012, 10:28 AM
Phalanx's Avatar
Phalanx Phalanx is offline
Registered User
AKA: Michael Reffler
FRC #1089 (Mercury)
Team Role: Mentor
 
Join Date: Jun 2005
Rookie Year: 1999
Location: Hightstown, NJ
Posts: 370
Phalanx has a reputation beyond reputePhalanx has a reputation beyond reputePhalanx has a reputation beyond reputePhalanx has a reputation beyond reputePhalanx has a reputation beyond reputePhalanx has a reputation beyond reputePhalanx has a reputation beyond reputePhalanx has a reputation beyond reputePhalanx has a reputation beyond reputePhalanx has a reputation beyond reputePhalanx has a reputation beyond repute
Re: CAN periodic status

Interesting, I was just looking at doing exactly what you are doing last night. So I'm going to be following this thread.

A thought comes to mind, but, it be better to hear from the WPI/Labview folks on this as they should have more intimate knowledge.

My thought is you are asking for a Periodic Status every 100ms (.1) and you are checking that status every 100ms which makes perfect sense. However, I'm wondering if you're getting "caught" between status message updates. I'd try setting it to .09 and checking every 100ms.
__________________
Don't just ask the experts, become one!
Leadership is not about ability. It's about responsibility!
Diagonally Parked in a Parallel Universe. It's okay we do Quantum Physics


Reply With Quote
  #4   Spotlight this post!  
Unread 02-23-2012, 10:45 AM
Joe Ross's Avatar Unsung FIRST Hero
Joe Ross Joe Ross is offline
Registered User
FRC #0330 (Beachbots)
Team Role: Engineer
 
Join Date: Jun 2001
Rookie Year: 1997
Location: Los Angeles, CA
Posts: 7,717
Joe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond repute
Re: CAN periodic status

Quote:
Originally Posted by rrossbach View Post
Haven't tried using this in team code - didn't even realize it was available in the FRC firmware - but I just downloaded the most recent update of the RDK (8555, updated 2/1/2012) and it looks like the docs now include the periodic status CAN messages, at least for the non-FRC firmware.
Thanks, I last downloaded the RDK a few days before the latest update.

Quote:
Originally Posted by Phalanx View Post
My thought is you are asking for a Periodic Status every 100ms (.1) and you are checking that status every 100ms which makes perfect sense. However, I'm wondering if you're getting "caught" between status message updates. I'd try setting it to .09 and checking every 100ms.
I had the same thought, but haven't had a chance to try it yet. When I probed the status, it appeared that it was missing around half of the messages, but it's really hard to tell with a rate of 10hz.

Last edited by Joe Ross : 02-23-2012 at 10:52 AM.
Reply With Quote
  #5   Spotlight this post!  
Unread 02-23-2012, 11:52 AM
jhersh jhersh is offline
National Instruments
AKA: Joe Hershberger
FRC #2468 (Appreciate)
Team Role: Mentor
 
Join Date: May 2008
Rookie Year: 1997
Location: Austin, TX
Posts: 891
jhersh has a reputation beyond reputejhersh has a reputation beyond reputejhersh has a reputation beyond reputejhersh has a reputation beyond reputejhersh has a reputation beyond reputejhersh has a reputation beyond reputejhersh has a reputation beyond reputejhersh has a reputation beyond reputejhersh has a reputation beyond reputejhersh has a reputation beyond reputejhersh has a reputation beyond repute
Re: CAN periodic status

The design was to cache previous values so that if you read more quickly than the updates are coming in, you just get the most recent values. It sounds like there is a bug. You should not be getting those errors. I'll look into it for next year if you'll create a tracker.

Thanks
-Joe
Reply With Quote
  #6   Spotlight this post!  
Unread 02-23-2012, 12:04 PM
Joe Ross's Avatar Unsung FIRST Hero
Joe Ross Joe Ross is offline
Registered User
FRC #0330 (Beachbots)
Team Role: Engineer
 
Join Date: Jun 2001
Rookie Year: 1997
Location: Los Angeles, CA
Posts: 7,717
Joe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond repute
Re: CAN periodic status

Quote:
Originally Posted by jhersh View Post
The design was to cache previous values so that if you read more quickly than the updates are coming in, you just get the most recent values. It sounds like there is a bug. You should not be getting those errors. I'll look into it for next year if you'll create a tracker.
I do see the most recent values cached, however, I also get the error reported. Since reporting errors are expensive, I ended up running the error wire to a clear errors VI.
Reply With Quote
  #7   Spotlight this post!  
Unread 03-01-2012, 02:23 PM
mjcoss mjcoss is offline
Registered User
FRC #0303
 
Join Date: Jan 2009
Location: Bridgewater,NJ
Posts: 69
mjcoss is a jewel in the roughmjcoss is a jewel in the roughmjcoss is a jewel in the roughmjcoss is a jewel in the rough
Re: CAN periodic status

Since we use C++, I didn't even know that there was such a feature. I've added checks to each of the various classes that use the CAN bus and Jaguars to query the Jaguars for reset, and faults after are update operation on the Jaguars. At least this way, I can determine if something has gone wrong..assuming the Jaguars are replying

It's a bit of traffic on the bus but I see no alternatives, other than getting rid of the Jaguars
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 01:27 AM.

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


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