Thread: FRC FPGA usage
View Single Post
  #5   Spotlight this post!  
Unread 06-10-2011, 08:32
Greg McKaskle Greg McKaskle is offline
Registered User
FRC #2468 (Team NI & Appreciate)
 
Join Date: Apr 2008
Rookie Year: 2008
Location: Austin, TX
Posts: 4,752
Greg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond repute
Re: FRC FPGA usage

Can the FPGA can be opened?
Yes, technically it can.

Why is it closed in the first place?
It implements the safety override, putting the robot outputs into a safe state ...
1. whenever the FTA chooses
2. whenever the drivers or coach or anyone else punches the estop button
3. in those situations when the team code is not updating outputs -- watchdog
3. when the RT communication stops receiving driver station communications

--------------

Rephrasing the topic slightly to focus on better control options.
What mechanisms would you want enhanced control over?
What sensors will provide the rapid measurements?
What actuators will provide rapid response?
What timing numbers are we talking about? -- milliseconds, microseconds, nanoseconds, or what?

I rephrased the question because plenty of RT computers don't have FPGAs. They have a realtime OS that allocates the CPU carefully using enhanced scheduling features such as priorities. The cRIO has those features AND and FPGA.

The default code really doesn't use these mechanisms by default because they are a bit more complex, but once a team has the basics under their belt, the next thing to do is to measure the performance, identify issues, and IF the problem is code latency or jitter, you reach for the RT features of the language/OS. If the problem is slop in your chain or gear train, better code timing may not be the best approach.

If there are other things you want to use the FPGA for, what are they?

Greg McKaskle
Reply With Quote