Go to Post And now I'll just take a moment and say that you've all gone completely insane. That is all. - galewind [more]
Home
Go Back   Chief Delphi > Technical > Electrical > CAN
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Reply
Thread Tools Rate Thread Display Modes
  #76   Spotlight this post!  
Unread 26-03-2011, 08:04
JasonStern JasonStern is offline
Mentor
FRC #1123 (AIM Robotics)
Team Role: Mentor
 
Join Date: Jan 2003
Rookie Year: 2003
Location: Arlington, VA
Posts: 65
JasonStern is on a distinguished road
Re: Unexplained intermittent CAN / 2CAN Jaguar problems at GSR

Sadly to say, update 29 did not fix the can timeout issues for us at the dc regional. We have switched to pwm instead for the remainder of our matches.

Thanks to everyone who is trying to resolve these issues!

-Jason
__________________
Que será será

Last edited by JasonStern : 26-03-2011 at 08:11.
Reply With Quote
  #77   Spotlight this post!  
Unread 27-03-2011, 18:52
drakesword drakesword is offline
Registered User
AKA: Bryant
FRC #0346 (Robohawks)
Team Role: Mentor
 
Join Date: Jan 2006
Rookie Year: 2004
Location: USA
Posts: 200
drakesword is on a distinguished road
Re: Unexplained intermittent CAN / 2CAN Jaguar problems at GSR

346 had issues at DC as well. During a couple of matches the speed of the robot would unexpectedly drop or the robot would begin shuddering (not a high speed shudder that a PID issue would show but a slow 1 second on 1 second off type issue). Finally in one of our last matches the second half of the can bus did nothing.

What is the upper limit of temperature before the jags begin to shutdown?

We did some test with our robot and we are still coming up inconclusive.

First we ran the robot and got no errors.
Then we unplugged a jag while running and still had no errors.
Then we unplugged a terminator without errors.
Unplugged any jag-jag wire and the entire bus stopped (not just beyond the lost connection)
Finally we unplugged encoders and still had no error.

We were running v29.

During the build season we were using the older image and ran the chassis for over 30 minutes without problems (except the one time we blew a grey jag by going full forward to full reverse too fast)
Reply With Quote
  #78   Spotlight this post!  
Unread 27-03-2011, 19:23
Dad1279 Dad1279 is offline
Registered User
FRC #1279 (Cold Fusion)
Team Role: Mentor
 
Join Date: Jan 2005
Rookie Year: 2004
Location: NJ
Posts: 511
Dad1279 has much to be proud ofDad1279 has much to be proud ofDad1279 has much to be proud ofDad1279 has much to be proud ofDad1279 has much to be proud ofDad1279 has much to be proud ofDad1279 has much to be proud ofDad1279 has much to be proud ofDad1279 has much to be proud of
Re: Unexplained intermittent CAN / 2CAN Jaguar problems at GSR

I'm sorry to hear that there were still issues with CAN at DC.

After our two matches at NY with 'NO COMM' issues, we thoroughly tested and could not come up with any ideas but to switch to PWM for DC.

We had no issues running PWM at DC.
Reply With Quote
  #79   Spotlight this post!  
Unread 27-03-2011, 21:33
Phalanx's Avatar
Phalanx Phalanx is offline
Formerly Team 1089 (Mercury)
AKA: Michael Reffler
FRC #5431 (Titan Robotics)
Team Role: Mentor
 
Join Date: Jun 2005
Rookie Year: 1999
Location: Lewisville, TX (previously NJ)
Posts: 384
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: Unexplained intermittent CAN / 2CAN Jaguar problems at GSR

We ran all of the DC Regional with CAN Jaguars in voltage control mode.
We had no encoders, pots, or limit switches in use on the JAGs.
We programmed in Labview, with Update 29.

We used encoders and limit switches attached to the digital side car.

We ran all of DC Regional, 9 Qualifiers(We missed one due to mechanical repairs), 2 Quarter Finals, and 2 Semi Finals matches. We had ZERO CAN issues.

I think it's time to investigate all of the following to attempt to find a commonality for failure.

1) Correct/Proper wiring both CAN and Power.
2) Ground isolation of components.
3) CAN Interface used, Serial or 2CAN
4) Type of JAGS used, Black, Grey, Both
5) The programming language used
6) The control mode(s) used.
7) encoders, pots, limit switches are being used.

So for us, I can say with 99.99999% certainty that for our machine...
1) CAN Wiring is correct with proper termination 100ohm.
2) All components are ground isolated from the frame and electrical wiring has no shorts or ground faults.
3) We used 2CAN on PORT 2 of the CRIO.
4) We used all BLACK JAGS.
5) We Programmed with Labview.
6) Used Voltage Mode only.
7) No Encoders, POTS, Limit Switches attached to the JAGS.
__________________
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
  #80   Spotlight this post!  
Unread 27-03-2011, 23:51
heydowns's Avatar
heydowns heydowns is offline
Registered User
AKA: Jeff Downs
FRC #1511 (Rolling Thunder)
Team Role: Mentor
 
Join Date: Jan 2006
Rookie Year: 2005
Location: Ra-Cha-Cha
Posts: 142
heydowns has a reputation beyond reputeheydowns has a reputation beyond reputeheydowns has a reputation beyond reputeheydowns has a reputation beyond reputeheydowns has a reputation beyond reputeheydowns has a reputation beyond reputeheydowns has a reputation beyond reputeheydowns has a reputation beyond reputeheydowns has a reputation beyond reputeheydowns has a reputation beyond reputeheydowns has a reputation beyond repute
Re: Unexplained intermittent CAN / 2CAN Jaguar problems at GSR

v29 solved the problems we were seeing with our CAN-connected Jaguars. We no longer get random failures of the entire bus to work on robot startup as described in my earlier post.
We ran with v28 until Thursday lunch this past week and saw the boot-time failure twice during that morning.
After Thursday lunch when we put v29 on, the CAN chain (7 Jags) worked without issue for the remainder of the competition.

Quote:
Originally Posted by drakesword View Post
346 had issues at DC as well. During a couple of matches the speed of the robot would unexpectedly drop or the robot would begin shuddering (not a high speed shudder that a PID issue would show but a slow 1 second on 1 second off type issue). Finally in one of our last matches the second half of the can bus did nothing.
Sorry to hear you had problems, same for 1123 We were at DC too - wish I'd have know I would have come taken a look at your setup and try to offer some suggestions.


The CAN driver (at least for C++ maybe the others I have not looked) blocks while waiting for CAN replies to commands that are sent. If you have a Jag that is disconnected, failing, powered off, or has a poor bus connection the driver will block for a "long" time waiting for that response, thus stalling your overall code execution. This might or might not account for the slow on/off issues you describe. Of course that doesn't explain the root cause.

We've actually modified our copy of the CAN driver to shut down a device that's failing communications (repeatedly) rather than continuing to bog down the entire system in order to mitigate this.

One thing I've seen helping teams with CAN issues is that termination resistors connected in the manner described in the Jaguar documentation (that is, crimping them directly into the RJ connector on the appropriate pins) is a potential source of intermittent bus errors, particularly during match play when vibration and collisions are occurring a lot. Instead of making the cable in this fashion I recommend crimping in a short length of wire and soldering the resistor to that.
Again, not necessarily the problem your team is encountering but something worth trying/checking along with double-checking all your other bus cabling.

Also, on a very general note, as I read back on this thread it is really apparent that a number of different issues are being referenced here (symptoms may seem similar but they are caused by different things). For those just coming to this thread please keep that in mind and if you post your experiences please be as specific as possible.
Reply With Quote
  #81   Spotlight this post!  
Unread 28-03-2011, 08:25
taichichuan's Avatar
taichichuan taichichuan is offline
Software Mentor
AKA: Mike Anderson
FRC #0116 (Epsilon Delta)
Team Role: Mentor
 
Join Date: Feb 2010
Rookie Year: 2010
Location: Herndon, VA
Posts: 328
taichichuan has much to be proud oftaichichuan has much to be proud oftaichichuan has much to be proud oftaichichuan has much to be proud oftaichichuan has much to be proud oftaichichuan has much to be proud oftaichichuan has much to be proud oftaichichuan has much to be proud oftaichichuan has much to be proud oftaichichuan has much to be proud of
Send a message via AIM to taichichuan
Post Re: Unexplained intermittent CAN / 2CAN Jaguar problems at GSR

Hi Gang!

Team 116 used CAN at the DC regionals as well with V29 and saw the exact same type of stuttering behavior as many of the other teams:

1) Correct/Proper wiring both CAN and Power.

This is our 2nd year with CAN. I check the cables with my automated cable tester and all checked good. Termination using the 2CAN on one end and 100 Ohm terminator at the other.

2) Ground isolation of components.

Our Jags are on standoffs and are isolated from the robot chassis ground.

3) CAN Interface used, Serial or 2CAN

We were using the 2CAN with firmware 2.5 (3/13/11). This worked well at the Bayou regional except for one time with the CAN connect problem from V28.

4) Type of JAGS used, Black, Grey, Both

Mixture of both black and grey jags. All jags at Firmware V92.

5) The programming language used

C/C++

6) The control mode(s) used.

Voltage mode (we were trying to use position mode for autonomous but ran out of time)

7) encoders, pots, limit switches are being used.

No encoders, pots or limit switches were being used.


I spoke to Brad Miller at DC and described the problem and we were actually able to see a little of the problem in the pits with him standing there. He suggested changing the motor safety timeout, which we did. However, in the heat of eliminations, I don't recall if we saw the stuttering post change.
__________________

HTH,

Mike
Reply With Quote
  #82   Spotlight this post!  
Unread 28-03-2011, 12:44
drakesword drakesword is offline
Registered User
AKA: Bryant
FRC #0346 (Robohawks)
Team Role: Mentor
 
Join Date: Jan 2006
Rookie Year: 2004
Location: USA
Posts: 200
drakesword is on a distinguished road
Re: Unexplained intermittent CAN / 2CAN Jaguar problems at GSR

1) Correct/Proper wiring both CAN and Power.
Going to rewire most of the can-related components at VCU. We were using 6 conductor wire. Going to switch to two. 120 ohm terminator soldered to wire not crimped.

2) Ground isolation of components.
Again as above. possible ground loop through our can wires

3) CAN Interface used, Serial or 2CAN
Serial

4) Type of JAGS used, Black, Grey, Both
Black (5)

5) The programming language used
Java.

6) The control mode(s) used.
Speed and Position

7) encoders, pots, limit switches are being used.
Us-Digital(I think) encoders 200 pulses per revolution. Don't know what switches we use but we have 2 on our gripper.

To address potential blocking we will make individual threads to set output to each motor.
Reply With Quote
  #83   Spotlight this post!  
Unread 28-03-2011, 13:03
Phalanx's Avatar
Phalanx Phalanx is offline
Formerly Team 1089 (Mercury)
AKA: Michael Reffler
FRC #5431 (Titan Robotics)
Team Role: Mentor
 
Join Date: Jun 2005
Rookie Year: 1999
Location: Lewisville, TX (previously NJ)
Posts: 384
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: Unexplained intermittent CAN / 2CAN Jaguar problems at GSR

Quote:
Originally Posted by drakesword View Post
1) Correct/Proper wiring both CAN and Power.
Going to rewire most of the can-related components at VCU. We were using 6 conductor wire. Going to switch to two. 120 ohm terminator soldered to wire not crimped.
We used 6 conductor wire, but we used 100ohm resistor as a terminator instead of 120ohm. I have heard second and third hand reports that using 120ohm terminators create issues, so I would try that before rewiring the entire CAN bus.

In the "Getting Started Guide" on Page 29 for the Black Jags the section "Jaguar Communication Cables" states 100ohm. Also see Table 8-1. CAN Wiring Parameters on page 26. http://www.luminarymicro.com/jaguar
__________________
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
  #84   Spotlight this post!  
Unread 28-03-2011, 13:14
heydowns's Avatar
heydowns heydowns is offline
Registered User
AKA: Jeff Downs
FRC #1511 (Rolling Thunder)
Team Role: Mentor
 
Join Date: Jan 2006
Rookie Year: 2005
Location: Ra-Cha-Cha
Posts: 142
heydowns has a reputation beyond reputeheydowns has a reputation beyond reputeheydowns has a reputation beyond reputeheydowns has a reputation beyond reputeheydowns has a reputation beyond reputeheydowns has a reputation beyond reputeheydowns has a reputation beyond reputeheydowns has a reputation beyond reputeheydowns has a reputation beyond reputeheydowns has a reputation beyond reputeheydowns has a reputation beyond repute
Re: Unexplained intermittent CAN / 2CAN Jaguar problems at GSR

Quote:
Originally Posted by drakesword View Post
To address potential blocking we will make individual threads to set output to each motor.
Just a warning - the bus transactions are serialized via a monitor lock in the CANJaguar driver (at least on the C++ version, as well as in the last public source code I can easily get to of the Java version). Thus threading the transactions won't entirely alleviate any potential for blocking with respect to one another (that is, if one Jag thread were to block waiting for a bus response all other concurrently executing Jag threads will also block). Of course, it can offer the advantage of allowing the remainder of your code to execute while the Jag thread(s) are tied up.
Reply With Quote
  #85   Spotlight this post!  
Unread 28-03-2011, 15:34
techhelpbb's Avatar
techhelpbb techhelpbb is offline
Registered User
FRC #0011 (MORT - Team 11)
Team Role: Mentor
 
Join Date: Nov 2010
Rookie Year: 1997
Location: New Jersey
Posts: 1,620
techhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond repute
Re: Unexplained intermittent CAN / 2CAN Jaguar problems at GSR

Quote:
Originally Posted by drakesword View Post
1) Correct/Proper wiring both CAN and Power.
Going to rewire most of the can-related components at VCU. We were using 6 conductor wire. Going to switch to two. 120 ohm terminator soldered to wire not crimped.

2) Ground isolation of components.
Again as above. possible ground loop through our can wires

3) CAN Interface used, Serial or 2CAN
Serial

4) Type of JAGS used, Black, Grey, Both
Black (5)

5) The programming language used
Java.

6) The control mode(s) used.
Speed and Position

7) encoders, pots, limit switches are being used.
Us-Digital(I think) encoders 200 pulses per revolution. Don't know what switches we use but we have 2 on our gripper.

To address potential blocking we will make individual threads to set output to each motor.
Our team's usage was similar:

1) Correct/Proper wiring both CAN and Power.

I wish we had load tested our robot's wiring, but it appears that no one ever tested the wire with a static resistive load...it's on our agenda for future builds. As such I can't be sure there wasn't a bad wire or crimp somewhere...however...please be aware that since last week our robot has seen competition in Palmetto and from what I understand no wiring issue presented with the robot configured to do only %VBUS over the CAN. Course that doesn't mean there isn't still an issue in that wiring somehwere...just not any major show stopping issues.

We tested our practice robot (same build as the production robot in the crate) for many hours at our test field and of all those hours we had less than 4 total lock ups that could not be cleared by any means other than a complete power down. That is statistically small...but troubling enough that the team is traveling with PWM cables and code to bypass any issues related to using them.

2) Ground isolation of components.

Our robot is using telephone wire between the Jaguars. All the wires on the interface follow that bus from the input at the serial port on the cRIO to the output where the terminator is. Hugh had suggested this as a possible ground loop, but we had to stop messing around with this for the moment and so we never broke this connection. Also that cable is not twisted in anyway, but it is unshielded, stranded 26AWG.

Our Jaguars are bolted to plexiglass, so they aren't connected to the frame ground.

As a result of the shear amount of work involved with the encoders and the drive train using the Jaguars, we entirely stopped using the encoders. When we had them connected, we used the encoder splitter we designed from the other topic and that provides complete isolation between the encoders and the Jaguars so there was no option of a ground loop from that source. When we did use this splitter our target set points for the Jaguar PID loops were velocity...and we did tune the loops successfully. However, in this configuration the number of time outs was greater than if we just ran %VBUS without the encoders. So it was either scrap CAN or scrap the encoders given the time constraints.

We still use some potentiometers on our arm that are connected to the Jaguars. We read those values back through the CAN, then hand them back to the Jaguars conditioned for %VBUS. This change was made by the students to make the arm motion more fluid. It also eliminated any further need for the Jaguar PID loop functions. The potentiometers should not be a source of a ground loop.

3) CAN Interface used, Serial or 2CAN
Serial

4) Type of JAGS used, Black, Grey, Both
Black (7)

5) The programming language used
Java and we use threading...doesn't help us when the CAN decides it won't stop blocking as we have it now. Never tried to avoid the blocking...it may be possible.

6) The control mode(s) used.
Velocity and position.

Velocity was working, position was always jerky...so we ended up using neither.

7) encoders, pots, limit switches are being used.

On the gear boxes but not used: U.S. Digital Encoders 360 count x 2
No limit switches
2 multi-turn industrial sensor grade potentiometers on the shoulder and wrist.

Last edited by techhelpbb : 28-03-2011 at 17:22.
Reply With Quote
  #86   Spotlight this post!  
Unread 28-03-2011, 15:37
drakesword drakesword is offline
Registered User
AKA: Bryant
FRC #0346 (Robohawks)
Team Role: Mentor
 
Join Date: Jan 2006
Rookie Year: 2004
Location: USA
Posts: 200
drakesword is on a distinguished road
Re: Unexplained intermittent CAN / 2CAN Jaguar problems at GSR

Quote:
Originally Posted by heydowns View Post
Of course, it can offer the advantage of allowing the remainder of your code to execute while the Jag thread(s) are tied up.
Thats the effect I was after

@Phalanx

According to some other threads the ground wire between jags can cause ground loop interference eg. the ground of one jag may be higher then the ground of another jag
Reply With Quote
  #87   Spotlight this post!  
Unread 28-03-2011, 16:06
techhelpbb's Avatar
techhelpbb techhelpbb is offline
Registered User
FRC #0011 (MORT - Team 11)
Team Role: Mentor
 
Join Date: Nov 2010
Rookie Year: 1997
Location: New Jersey
Posts: 1,620
techhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond repute
Re: Unexplained intermittent CAN / 2CAN Jaguar problems at GSR

Just to clear up my post above...

Even with our Jaguars using %VBUS with CAN and only the potentiometers connected to the Jaguars as sensors...

We still get time out errors in addition to the occasional lock up.

The more wear and tear we put on our batteries the worse the problem gets.

Using the PID loops in the Jaguars seems to make the problems worse for us (to the point of dysfunction in some cases).

Due to the competition schedule, and now our additional appearance in St. Louis, we'll probably not want to tinker too much with the practice or production robot until it can't impact on performance at competition.

As soon as we can, I'd like to revisit this issue...even if we have to slap together another frame.
Our team has a spare new cRIO and I have a new Jaguar and some CIM motors.

Last edited by techhelpbb : 28-03-2011 at 16:12.
Reply With Quote
  #88   Spotlight this post!  
Unread 28-03-2011, 16:20
kamocat's Avatar
kamocat kamocat is offline
Test Engineer
AKA: Marshal Horn
FRC #3213 (Thunder Tech)
Team Role: Mentor
 
Join Date: May 2008
Rookie Year: 2008
Location: Tacoma
Posts: 894
kamocat is just really nicekamocat is just really nicekamocat is just really nicekamocat is just really nicekamocat is just really nice
Send a message via AIM to kamocat Send a message via MSN to kamocat
Re: Unexplained intermittent CAN / 2CAN Jaguar problems at GSR

I wonder if we could be seeing the effects of process starving on the Jaguar?

CAN and RS232 communications are low priority tasks in the processor.
__________________
-- Marshal Horn
Reply With Quote
  #89   Spotlight this post!  
Unread 28-03-2011, 16:43
taichichuan's Avatar
taichichuan taichichuan is offline
Software Mentor
AKA: Mike Anderson
FRC #0116 (Epsilon Delta)
Team Role: Mentor
 
Join Date: Feb 2010
Rookie Year: 2010
Location: Herndon, VA
Posts: 328
taichichuan has much to be proud oftaichichuan has much to be proud oftaichichuan has much to be proud oftaichichuan has much to be proud oftaichichuan has much to be proud oftaichichuan has much to be proud oftaichichuan has much to be proud oftaichichuan has much to be proud oftaichichuan has much to be proud oftaichichuan has much to be proud of
Send a message via AIM to taichichuan
Re: Unexplained intermittent CAN / 2CAN Jaguar problems at GSR

Quote:
Originally Posted by kamocat View Post
I wonder if we could be seeing the effects of process starving on the Jaguar?

CAN and RS232 communications are low priority tasks in the processor.
That might explain the serial CAN problems, but we saw them with the 2CAN via Ethernet as well. I think serial CAN tops out at something like 2K pps but the 2CAN jumps that to more like 8K pps from what I understand. At least it's comforting to know that it's not just a 2CAN problem.

Mike
Reply With Quote
  #90   Spotlight this post!  
Unread 28-03-2011, 20:05
JasonStern JasonStern is offline
Mentor
FRC #1123 (AIM Robotics)
Team Role: Mentor
 
Join Date: Jan 2003
Rookie Year: 2003
Location: Arlington, VA
Posts: 65
JasonStern is on a distinguished road
Re: Unexplained intermittent CAN / 2CAN Jaguar problems at GSR

1) Correct/Proper wiring both CAN and Power.
We verified all wiring. In addition, the termination resistor was soldered onto short wires and not crimped directly to the plug.

2) Ground isolation of components.
All components were mounted to Plexiglas and the frame was verified as electrically isolated by the DC inspection team.

3) CAN Interface used, Serial or 2CAN
2CAN*

4) Type of JAGS used, Black, Grey, Both
Both

5) The programming language used
Java

6) The control mode(s) used.
Speed, %VBUS

7) encoders, pots, limit switches are being used.
US Digital E3 quadrature encoders with 1024 CPR and 1/2" bore for the black jaguars; nothing for the grey.

*We can cause the jaguars to freeze in both %VBUS and Speed mode using the BD-COMM utility and quickly changing values. This is true even if we remove all other jaguars from the bus.

-Jason
__________________
Que será será
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 08:44.

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