View Single Post
  #91   Spotlight this post!  
Unread 30-03-2010, 20:36
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,751
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: Programmers: I Have A Challenge For You

On the LV compilation topic, the LV source code is a dataflow graph of objects -- diagrams contain nodes connected by wires, with the occasional node containing other diagrams

The objects are visited over several passes in order to perform compilation tasks.
1. Data types are propagated after each edit.
2. Nodes are validated and syntax errors identified after each edit.
3. An algorithm performs what we call clumping -- coloring the graph based upon asynchronous operation.
4. Another algorithm improves inplaceness, reordering nodes to execute in an order which minimizes data copies.
5. Nodes allocate data storage.
6. Nodes emit code into clumps.

Clumps are blocks of memory that contain machine instructions in binary form. You can disassemble the instructions if you like and display them in text.

Of course the LV graph could be stored into a textual graph form, and internally, we experiment with such things as a save format. The compiler, however, does not operate on a sequential "tape" of characters.

On the robotic topic, instead of waiting for next years game and potentially interfering with the progress of the team, why not pretend that you just learned of this year's game. Start to automate the tasks given the current field and robot.

You state that the camera has lots of lag, but perhaps you should concoct a test to measure the lag. I did it last year, and it isn't that bad to the cRIO. If you test thoroughly, it isn't bad to the PC either. Anyway, try using different sensors and the camera to find the goal, find balls, find lines on the floor, find the edge of the field.

I'd consider it a huge step forward if robots in autonomous would detect the walls of the field and would do something other than barrel into them at high rates of speed.

If you have those elements, start trying to identify and track robots. Try to plan a path to the ball avoiding the robots...

This and all FRC games are built to challenge human drivers. There are more than enough challenges to keep SW people busy trying to navigate.

Greg McKaskle