Course Control System  
View related threads: (in this forum | in all forums)

Tower Hobbies
Enter up to 4 keywords or Tower stock numbers
Logged in as Guest



Users viewing this topic: none
  Printable Version
       



All Forums >> RC Airplanes >> Pylon Universe - RC Pylon Racing >> General Racing Discussion >> Course Control System Page: [1] 2   next >   >>  

Login
Message << Older Topic   Newer Topic >>
Course Control System - 6/28/2003 4:29:54 AM   
PylonWorld



Posts: 1346
Joined: 12/29/2001
From: Monroe, NC, USA
Status: offline
I'm working on a .NET and DirectX based Course Control System and I've created some UML use case diagrams. If you are interested in taking a look at the diagrams, please email me.

The system is based on USB game pads connected to one or more computers. I've obtained sources for the output devices also.

In terms of automating the running of heats, I have a couple of issues:

1) Can an indicated cut be un-cut?

2) What happens if #3 judge indicates a cut after 10th lap is counted?

3) What ends a race?

As I currently understand some of the systems out there, 1) is possible on some systems. Should it be?

It would seem that 2) could happen frequently. If a lap counter/timer is using a stopwatch, how is this situation handled?

In an automated system, you don't have a discreet way of ending a race when all laps are not completed, as in when a plane or planes crash. Should a lap counter/timer have a way of indicating that the heat is over for their lane?

_____________________________

Don Stegall
RCPRO Chairman of the Board
       Post #: 1

Course Control System - 6/28/2003 4:31:46 AM   
PylonWorld



Posts: 1346
Joined: 12/29/2001
From: Monroe, NC, USA
Status: offline
As I have chronicled the building of the Smasher , I'm going to chronicle the building of this software system. The purpose is not to show off, but to get feedback on things like the gamepad interface, display and turn boards, etc.

Here is a too small to read use case for 3 pole racing. I'll be glad to email the full size one ... it's only a 30K or so GIF.

Attachments
Click to see fullsize image.
Click for fullsize


_____________________________

Don Stegall
RCPRO Chairman of the Board

(in reply to PylonWorld)
       Post #: 2

Course Control System - 6/28/2003 4:33:00 AM   
PylonWorld



Posts: 1346
Joined: 12/29/2001
From: Monroe, NC, USA
Status: offline
The system I'm building can interface to any existing system that uses switches or momentary switches.

I settled on USB game pads for input because they are cheap ($10-$15 each), they have a lot of inputs, and you can connect as many as you want via USB hubs ($7-$20). In reality the system can also use older joysticks, but not many people have the older SideWinders that could daisy-chain for multi-player input.

One thing common to most PC game pads is that they have triggers for the left index finger and the right index finger. Since the buttons are in close proximity to each other, I tried to work out a button scheme that would feel natural to the pylon judging tasks at hand.

Below are two images of "maxed out" lap counter configurations. If you have #1, #2, and #3 judges all inputing via the system, and not "called-in", there would be no need for the lap counters to have cut indication capability, and those buttons would be "un-mapped".

To count laps, the lane 1 lap counter would simply press the Trigger button. To indicate a cut, he would press and hold the Cut button, and press the Trigger button. To undo an erroneous cut, he would press and hold the Un-Cut button, and press the Trigger button.

Since I'm building the system so that the countdown clock can be displayed on a digital lap counting board (like the CAPS system uses for laps), the Start Countdown Clock is assigned to the Lane 1 counter who would use a visual clue from the race starter to start the clock.

These are only possible mappings. The system will be able to map any action to any event. But I need to identify the events that occur in a race that need to be presented to the system.

Attachments
Click to see fullsize image.
Click for fullsize


_____________________________

Don Stegall
RCPRO Chairman of the Board

(in reply to PylonWorld)
       Post #: 3

Course Control System - 6/28/2003 4:34:01 AM   
PylonWorld



Posts: 1346
Joined: 12/29/2001
From: Monroe, NC, USA
Status: offline
Here is a low end Microsoft Sidewinder with the Lane 1 counter mappings.

Attachments
Click to see fullsize image.
Click for fullsize


_____________________________

Don Stegall
RCPRO Chairman of the Board

(in reply to PylonWorld)
       Post #: 4

Course Control System - 6/28/2003 4:34:38 AM   
PylonWorld



Posts: 1346
Joined: 12/29/2001
From: Monroe, NC, USA
Status: offline
Here is a proposed mapping for the #2 and #3 judges.

Are there standards for the colors used for particular lanes?

Attachments
Click to see fullsize image.
Click for fullsize


_____________________________

Don Stegall
RCPRO Chairman of the Board

(in reply to PylonWorld)
       Post #: 5

Course Control System - 6/28/2003 4:35:24 AM   
PylonWorld



Posts: 1346
Joined: 12/29/2001
From: Monroe, NC, USA
Status: offline
If you have a Playstation (1 or 2), an X-Box, or a Dreamcast (amongst others) you can try out the button configurations illustrated above. Just pretend you are a Counter/Timer/Judge and see what works.

All of the game pads have a left thumb D-pad, but I thought it might be too confusing in the heat of a heat.

Please let me know your thoughts. I'm not looking for praise (or undue criticism). I'm looking for opinions, ideas, and collaboration.

One thing I should mention is that I have found RS-232 servo controller boards, as well as RS-232 controlled relay boards. Some of the relay boards have opto-isolated inputs, so many possibilities exist for configurations.

RS-232 cables can easily be run 300+ feet, so the number of computers that can be utilized by the system I'm working on is variable from 1-7. It depends on how wireless you want to go.

_____________________________

Don Stegall
RCPRO Chairman of the Board

(in reply to PylonWorld)
       Post #: 6

Course Control System - 7/8/2003 9:28:32 PM   
PylonWorld



Posts: 1346
Joined: 12/29/2001
From: Monroe, NC, USA
Status: offline
Here is my current emulation of the SpeedWorld lap counter lights.

Can someone tell me how close I am ... I haven't seen a picture yet?

Attachments
Click to see fullsize image.
Click for fullsize


_____________________________

Don Stegall
RCPRO Chairman of the Board

(in reply to PylonWorld)
       Post #: 7

Course Control System - 7/9/2003 3:35:02 AM   
bl10


 

Posts: 303
Joined: 12/29/2001
From: Chatsworth, CA,
Status: offline
Don:
I think what you are doing with the pylon system design is great and needs to be done at some level. I do, however, wonder if the people you are designing it for will number one appreciate it and number two spend the money to build their own. I speak from some experience here as I went through all that a couple of years ago when we built the Valley Flyers system. The max amount the club would allocate for the system was $500.00. When it was up and running we had spent about $1,500.00 (maybe more). The amount exceeding $500.00 was covered by a couple of us out of personal funds. We also had about $2000.00 (retail) worth of hardware donated and probably 300 donated man hours. Three or four of us did the whole thing and if it hadn’t been for the generous donation of specialized expertise as well as money we would never have started it much less finished it. It seems to me when you use a computer network (traditional with PCs?) the cost is going to be high. My concern here is that your going to pump a lot of personal resources into this and are going to find in the end it falls on def ears and empty check books. You might want to speak to Jerry Small about it as he and some friends build a darn good wireless system using RC gear with electronic cut lights, turn lights and lap counters that all fit in a small trailer. I believe the reception the system got is one reason he’s a little sour on 40 size racing.


Just Trying to Help

Barry

(in reply to PylonWorld)
       Post #: 8

Course Control System - 7/9/2003 4:21:25 AM   
PylonWorld



Posts: 1346
Joined: 12/29/2001
From: Monroe, NC, USA
Status: offline
Thanks for the warning Barry.

I'm mainly designing it for my own use on my field. My wife and I each have new laptops, plus we have an older one, all with 802.11b. And I have a Pocket PC with an 802.11b adapter. I've got 2 old Sidewinders with gameport interfaces and 4 USB gamepads. All I need is some lights (and deep discharge batteries).

I'm doing this project as much as resumeware as anything else. Most of the projects I've worked on are proprietary and I can't show them off to potential clients or employers. So I'm doing the engineering work on this project just like I would do for a "real" project. That's why I'm asking for comments and suggestions. I'm using you guys as "Subject Matter Experts".

I've already got Web Forms and Mobile Web Forms down for .NET and I'm going to take the tests for MCAD soon. But to get the MCSD, you have to know .NET Windows Forms as well, and they are significantly different from Web Forms. I have already gotten a Pocket PC Forms app written that can do all of the internet types of communication, plus it makes calls on XML Web Services. It's pretty cool to program in C# for Pocket PC.

I got a little tired of working on the planes, and when I saw it was going to be difficult to get the Smasher ready in time for the NATS, along with the grief I was getting, I dropped back to my favorite hobby: programming. Shhhh ... don't tell anybody I love programming more than planes.

So feel free to make comments on the project, and I'll even share the code and docs.

< Message edited by PylonWorld -- Jul 9 2003 12:06AM >


_____________________________

Don Stegall
RCPRO Chairman of the Board

(in reply to PylonWorld)
       Post #: 9

Course Control System - 7/9/2003 11:49:33 PM   
PylonWorld



Posts: 1346
Joined: 12/29/2001
From: Monroe, NC, USA
Status: offline
When I went searching for the reflective displays like the ones used on the CAPS system at the NATS, I found that you could get the digits in yellow and white. I also found out that you can get an RS-232 board that controls up to eight of the displays.

One issue with the CAPS light system is current draw when the cut lights are on. Since these displays don't draw any current except when the number if being changed (and very little even then), I came up with what I thought might be an ideal display board.

The controller board is $220 and the displays range in price (each) from $75 to $200, so this results in a pricey display. I may not ever get to implement it in the real world, but here is my virtual implementation.

This screen shot shows lane 1 with 5 laps, lane 2 with 5 laps and 1 cut, lane 3 with 6 laps, and lane 4 with 7 laps and a cut-out. Should the lap count for lane 4 go blank with the cut-out?

In case you're interested in the reflective displays, you can find them at: [URL=http://www.bodet.com/urlref/01a8cata/urlext/asp/produit/prod/244/rub/7/produit.htm]Bodet - Display Systems[/URL]

Attachments
Click to see fullsize image.
Click for fullsize


_____________________________

Don Stegall
RCPRO Chairman of the Board

(in reply to PylonWorld)
       Post #: 10

Course Control System - 7/10/2003 11:07:43 AM   
DrewTelford


 

Posts: 45
Joined: 1/6/2002
From: San Diego, CA,
Status: offline
Don,

Neat looking display. I suppose you would use the zero to show ten laps completed? (If there is only one digit for counting laps.)

It would be more expensive, but a thought I have when looking at it would be to have two rows of the yellow cut digits, the top row would show what pylon number the first cut comes from, and the second row would show the pylon number the second cut comes from. This would eliminate the need for the pilot/caller team to go to the starter to ask where the cuts were, which seems to take quite a bit of time at some races. Perhaps this could be done by using the segments as indicators of pylon position, with the top horizontal being the first cut at pylon 1, the middle horizontal being a second cut at pylon 1, the top left segment a cut at pylon 2, the bottom left segment a second cut at pylon 2, and same for the right segments for pylon 3 cuts.

Having this recorded automatically into the computer for post-race analysis would be great also, as at the end of the day each racer can go see the statistics and find out how to improve their flying! Just my 2 cents worth,

gftl,

Drew

(in reply to PylonWorld)
       Post #: 11

Course Control System - 7/10/2003 6:38:37 PM   
PylonWorld



Posts: 1346
Joined: 12/29/2001
From: Monroe, NC, USA
Status: offline
Drew,

Thanks for the input.

On the displays, you can control the segments individually, so you could do what you are talking about. Adding a third row of displays would require another controller board, so that option would be expensive.

In terms of the lap numbers, right now I have "blank" for lap 0, "0" for lap 10, and "1" for lap 11.

Originally, I was going to light the top segment for a cut at turn 1, the bottom left segment for turn 2, and the bottom right segment for turn 3.

And you hit the nail on the head about post heat/race statistics. The main computer (or only) for the course control system will be busy during a race, but if a second computer is used for Race Management System (RMS), the statistics will be available from the RMS via wireless. So people can bring their laptops or PDA's with 802.11b (or Bluetooth) and get race info on demand.

I'll create a new Lap Display board based on the PylonWorld display with a shot at what you mentioned. And I'll post a screenshot.

Right now I'm testing the code with a little test program that makes it very easy to test the displays. So you don't have to have a bunch of gamepads. I'm going to create a section on PylonWorld so that people can download the .NET framework and the current code.

_____________________________

Don Stegall
RCPRO Chairman of the Board

(in reply to PylonWorld)
       Post #: 12

Course Control System - 7/10/2003 6:49:20 PM   
PylonWorld



Posts: 1346
Joined: 12/29/2001
From: Monroe, NC, USA
Status: offline
Drew,

I just realized that there will be significant work involved with indicating cut position. I didn't design the Display board interface abstraction with cut position in mind. So I'm going to have to do a bit of work on that.

And the font I used does not have control over the segments like the real displays do, so I'm going to have to create a User Control before I can do the positional indications.

It'll be a few days to a week before I have this done. But it does need to be done, because it points out a flaw in my generic interface description which currently is:

namespace CourseControlSystem
{
public interface ILapDisplay
{
int NumLanes { get; }
int MaxLapDisplayNumber { get; }
int MaxCuts { get; }

bool HasCutLights { get; }
bool HasTopRowDigits { get; }
bool HasBottomRowDigits { get; }
bool HasLapColumnLights { get; }
bool HasCountDownClock { get; }
bool HasHeatDisplay { get; }

int CountDownClock { get; set; }
int CurrentHeat { get; set; }
int NextHeat { get; set; }

int GetCuts( int Lane );
void SetCuts( int Lane, int Count );
void ClearCuts();

int GetLaps( int Lane );
void SetLaps( int Lane, int Count );
void ClearLaps();

void ClearAll();

} // interface ILapDisplay

}

_____________________________

Don Stegall
RCPRO Chairman of the Board

(in reply to PylonWorld)
       Post #: 13

Course Control System - 7/11/2003 11:02:54 AM   
DrewTelford


 

Posts: 45
Joined: 1/6/2002
From: San Diego, CA,
Status: offline
Good work Don, I know it's quite a big addition but it would make a big beneficial impact to the conduct of a contest if it can be done!

I've got the .NET version of Studio, so maybe I can take a look and help you out with the code and testing - it's what I do for a living also, although I seem to spend more and more time beating on other developers rather than doing it all myself anymore!

dt

(in reply to PylonWorld)