frc 2010 robot and dashboard projects

20
1

Upload: lacey-joyner

Post on 02-Jan-2016

58 views

Category:

Documents


4 download

DESCRIPTION

FRC 2010 Robot and Dashboard Projects. Doug Norman & Stephanie Brierty National Instruments January 8, 2010. What You Will Learn. How to create a Robot Project The architecture The important subVIs How to add your own code How to send data to the Dashboard - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: FRC 2010 Robot and Dashboard Projects

1

Page 2: FRC 2010 Robot and Dashboard Projects

2

FRC 2010 Robot and Dashboard Projects

Doug Norman & Stephanie BriertyNational Instruments

January 8, 2010

Page 3: FRC 2010 Robot and Dashboard Projects

3

What You Will Learn

• How to create a Robot Project The architecture The important subVIs How to add your own code How to send data to the Dashboard

• How to create a Dashboard Project How to display data sent from the Robot

• Want to learn from the master? www.frcmastery.com

Page 4: FRC 2010 Robot and Dashboard Projects

4

Start from the Getting Started Window

• View>>Getting Started Window…

Project Wizards

Page 5: FRC 2010 Robot and Dashboard Projects

5

FRC Robot Project Wizard

• Project name• Project folder• cRIO IP Address

Team number• Click Finish

Page 6: FRC 2010 Robot and Dashboard Projects

6

Robot Project

• Project will be saved and open• Expand Team Code folder

Notice subVIs to edit• Open Robot Main.vi• Build Specifications

Where you build your exe to run on the robot

Page 7: FRC 2010 Robot and Dashboard Projects

7

Robot Main.vi

• Begin.vi• Autonomous Iterative.vi• Teleop.vi• Build Dashboard Data.vi

Page 8: FRC 2010 Robot and Dashboard Projects

8

Robot Main.vi

• Vision Processing.vi• Periodic Tasks.vi• Start Communication.vi• Disabled.vi• Finish.vi

Page 9: FRC 2010 Robot and Dashboard Projects

9

Begin.vi• This is where you initialize everything• Choose Autonomous Independent or Iterative

• Open VIs followed by RefNum Registry Set VIs

Page 10: FRC 2010 Robot and Dashboard Projects

10

Autonomous Independent.vi

• Open from the project or from Begin.vi diagram (double-click)

• Enable code by changing Boolean constant to T

• Edit code in the True case

Page 11: FRC 2010 Robot and Dashboard Projects

11

Autonomous Iterative.vi

• Does nothing if you chose Independent in Begin.vi• Otherwise its code runs iteratively like Teleop.vi• Should you use Autonomous Independent or

Iterative? Want a For Loop or While Loop? Use Independent

Page 12: FRC 2010 Robot and Dashboard Projects

12

Teleop.vi

• Main code for driving robot• Read joysticks, sensors, etc.• Drive motors, actuators, etc.• This is the VI you are most likely to edit

Page 13: FRC 2010 Robot and Dashboard Projects

13

Build Dashboard Data.vi

• Currently sends back analog, digital, relays, PWM, and solenoid data

• You could add to this data• You could remove it all and start from scratch• Notice this uses Set Low Priority Dashboard Data.vi

Page 14: FRC 2010 Robot and Dashboard Projects

14

Editing the Robot Code

• Suppose we want to add a gyro for direction• In Begin.vi we need to add:

Open VI Set Gain VI RefNum Registry Set VI

• In Teleop.vi we need to add: RefNum Registry Get VI Get Angle VI

Page 15: FRC 2010 Robot and Dashboard Projects

15

Sending Robot Data to the Dashboard• We could edit Build DashBoard Data VI

Add our new data to the Dashboard Data cluster Edit Dashboard Main VI (in Dashboard project) Uses the Set Low Priority Dashboard Data VI

• Suppose we have important Teleop data Use the Set High Priority Dashboard Data VI Send gyro data directly from Teleop VI

Page 16: FRC 2010 Robot and Dashboard Projects

16

FRC Dashboard Project Wizard

• Project name• Project folder• Click Finish

Page 17: FRC 2010 Robot and Dashboard Projects

17

Dashboard Project

• Project will be saved and open• Expand Helper VIs

Notice Receive DS Packet VI

• Open Dashboard Main.vi• Build Specifications

Where you build your exe if you want to replace DS Dashboard

Page 18: FRC 2010 Robot and Dashboard Projects

18

Editing the Dashboard Code

• If you edited Build DashBoard Data VI on robot Use the Low Priority User Data string from Receive DS

Packet VI on Dashboard Main VI

• If you used Set High Priority Dashboard Data VI on the robot (our Teleop VI example) Use the High Priority User Data string from Receive DS

Packet VI on Dashboard Main VI

• Either way use Unflatten From String primitive

Page 19: FRC 2010 Robot and Dashboard Projects

19

Editing the Dashboard Code

• Receive DS Packet VI is part of Dashboard project• Functions>>Numeric>>Data Manipulation

Flatten To String Unflatten From String

High Priority User Data

Page 20: FRC 2010 Robot and Dashboard Projects

20

Conclusion• Easily create and edit a Robot Project for robot code• Quickly customize a Dashboard Project• Pass live data from Robot to Dashboard• More resources:

frcmastery.com ni.com/first

Questions?