Go to Post "In PID, Integrals are like diamonds. They are forever!" - Sam390250 [more]
Home
Go Back   Chief Delphi > Technical > Programming
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
 
 
Thread Tools Rate Thread Display Modes
Prev Previous Post   Next Post Next
  #1   Spotlight this post!  
Unread 13-02-2010, 18:47
byteit101's Avatar
byteit101 byteit101 is offline
WPILib maintainer (WPI)
AKA: Patrick Plenefisch
no team (The Cat Attack (Formerly))
Team Role: Programmer
 
Join Date: Jan 2009
Rookie Year: 2009
Location: Worcester
Posts: 699
byteit101 is a glorious beacon of lightbyteit101 is a glorious beacon of lightbyteit101 is a glorious beacon of lightbyteit101 is a glorious beacon of lightbyteit101 is a glorious beacon of lightbyteit101 is a glorious beacon of light
ZomB: a C# Drag and Drop Dashboard

Team 451 would like to share our ZomB Dashboard (Yes, you read that right, zombie) that we have been working on, and get some feedback. We have used this successfully for a few response testing, like ultrasonic (it looks good on a graph)

Pre-build controls: AnalogMeter, DataGraph(inspired by taskmanager), DirectionMeter, DistanceMeter, SpikeControl, RoundSpeedMeter, TacoMeter(Yes, it even has cheese), MessageDisplay, VarValue, OnOffControl, ColorFind(Totally misleading name, still testing)

There are 2 parts, the dashboard, and the robot files.
Requirements: Visual Studio 2008, .Net 2.0
Note: we use C++, but you can do this in java and LabView also, look at the bottom of this post for the format

The robot side files are ZDashboard.h and cpp, copy them into your project and add at the top of the main file #include "ZDashboard.h"
in your code, create a ZDashboard object , and initialize it.
Code:
class RobotDemo:public SimpleRobot
{
   //...
   ZDashboard ZomB;
public:
   RobotDemo():
      /* ... */ ZomB()
   {
      //...
   }
//...
Whenever you want to send some data to the dashboard, use the Add function, and then Send it off with the Send function
Code:
//...
void OperatorControl()
{
   while(IsOperatorControl())
   {
      ZomB.Add("controlName","controlValue");
      ZomB.Add("grph2",stick.GetY());
      ZomB.Send();
      Wait(0.02);
   }
}
//...
Now, Launch Visual Studio 2008 (express edition also works), and Open the Dashboard Solution, and open Form1 of the DefaultDash Project. Click on the control you want to have update, in our test case, the graph. Find the BindToInput and change it to what you specified in the code. Run both the Dashboard and the Robot and have fun!

Some notes:
THIS IS BETA!!! I am still working on bugs, the least tested feature is the VarValue control and the var and AddDebugVariable functions. please report any bugs
the .Net controls features are in the .Cat group. most have Max, Min, and Value.
DataGraphs cannot have a Min less that 0
Taco is pure fun
To see what each control does, open the test project (run it), click on a control, and move the slider at the top (EDIT: direction and analog meter barely move). onoff and spike are click state change, the thing in the lower right corner is a drag and drop sample, not related
to create a new Dashboard, make a new project, Reference System451.Communications.Dashboard.dll (in dash/System451.Communication.Dashboard/bin/Release folder), build the project. the controls will appear at the top of the toolbox, they are drag and drop. add 1 dashboardDataHub control. in the constructor (or a start button) add this code
Code:
dashboardDataHub1.AddDashboardControl(YourControls);
dashboardDataHub1.AddDashboardControl(AnotherControl);
dashboardDataHub1.StartRecieving();
It is Ready!

the Format of the strings, which can be Printf'd from the Dashboard class is
@@@451:|controlname=value|name=value|:451@@@
Attached Thumbnails
Click image for larger version

Name:	ZomB.png
Views:	379
Size:	91.4 KB
ID:	8650  
Attached Files
File Type: zip ZDashboard.zip (3.84 MB, 152 views)
__________________
Bubble Wrap: programmers rewards
Watchdog.Kill();
printf("Watchdog is Dead, Celebrate!");
How to make a self aware robot: while (∞) cout<<(sqrt(-∞)/-0);
Previously FRC 451 (The Cat Attack)
Now part of the class of 2016 at WPI & helping on WPILib

Last edited by byteit101 : 13-02-2010 at 18:51.
 


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

Similar Threads
Thread Thread Starter Forum Replies Last Post
Drag and drop (labview) kamocat NI LabVIEW 7 28-10-2008 08:05
Labview Dashboard and updated IFI dashboard spec Joe Ross LabView and Data Acquisition 1 04-04-2006 02:04
White Paper Discuss: 2003 Drag-Drop Scoring Program (Flash, HTML version) *UPDATE* Suneet Extra Discussion 0 12-01-2006 16:50
Visual Basic - Drag and Drop Gope Programming 11 06-01-2003 09:42
Sensing current and/or voltage drop??? archiver 2001 3 23-06-2002 23:21


All times are GMT -5. The time now is 02:06.

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