First fare 2013 basic-labview

759 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
759
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
27
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

First fare 2013 basic-labview

  1. 1. Basic LabVIEW Kristina Landen FRC 2093 Bowtie Brigade knlanden@gmail.com
  2. 2. Who has heard of or used LabVIEW before today?
  3. 3. Who has ever programmed in another language before?
  4. 4. Has anyone ever programmed for FRC before?
  5. 5. Overview O What is LabVIEW? O Get familiar O Code 4 wheel tank drive by PWM O Add actuator, controlled by buttons O Global Variable benefits and usage
  6. 6. What is LabVIEW? O Visual – no endless lines of code O Easy to follow O .vi – Virtual Instrument
  7. 7. Getting Familiar with LabVIEW At this point, I will leave the presentation, and go into LabVIEW and explain things in there. The following slides are what I covered.
  8. 8. Getting Started O Open LabVIEW O On the “Getting Started” window, select “FRC cRIO Robot Project.” This will be what you use for all of your code involving the robot. O Name your project something memorable.
  9. 9. Project Explorer O Direct links to all of the .vi’s in your program This is where your team number will go so the code knows what it is talking to. Under “Team Code” is where you will find the majority of the .vi files you will need to program the robot.
  10. 10. Begin.vi O This is where all of the things you will be coding are initiated.
  11. 11. Finish.vi O This is where you terminate all of the things you setup in Begin.vi. O This is important because if not done, things on the robot don’t shut down properly and can cause code issues later on.
  12. 12. Teleop.vi O This is where you can write code to make the robot complete tasks, but is not always the best place to do so.
  13. 13. Teleop.vi Continued O You can put display messages to the Driver Station here which will display when Tele-operated mode is enabled. This message is the name of the project that I am working on.
  14. 14. Periodic Tasks.vi O This is where I do the majority of my programming O Sensor data gathered here can be utilized in Autonomous mode as well as in Teleoperated O You can control how often sensors are checked for data
  15. 15. This is where you will be putting code for driving and sensors. If you plan to use pneumatics, delete this Disable Structure and fill in the refnum name and set it up in Begin.vi and Finish.vi.
  16. 16. Where Do I Get .vi’s? O Right click – WPI Robotics Library O WPI Robotics Library has all of the FIRST related .vi’s needed for competition. You will have to use .vi’s from the “Programming” category to complete your code.
  17. 17. WPI Robotics Library
  18. 18. Examples O Where to find them O How to adapt them to fit your code
  19. 19. In Each Example There Is… O Initialization of ports and channels O Closing of ports and channels O The stuff that makes everything happen O Bonus blinking lights, pretty graphs, and other switches and dials
  20. 20. What We Have To Do… O Recognize which part is which O Figure out which part to put in our code O Decide which parts to omit O Replace inputs and outputs with Joysticks and Motor blocks
  21. 21. Global Variables O Robot Global Data.vi O Store all sensor values, joystick values, etc. O Can be used ANYWHERE in the code O Can save a lot of time O Instead of writing the code for buttons on a joystick each time you want to use one, use global variables written to in Periodic Tasks.vi
  22. 22. Let’s Program!!
  23. 23. By the end you will be able to… O Program a 4 wheel tank or arcade drive by PWM O Program another actuator motor using buttons O Pass the name of your program to the DriverStation
  24. 24. Programming Drive Motors: Begin Before To replace one block with another, select the block, right click, replace. To After replace a “Open 2 Motor” with an “Open 4 Motor”, Highlight the code for one continue and go “Robot joystick and copy it by Don’t forget to change the name too! Drive Palette, Open 4 holding control and Motor”. Add constants to dragging. Change the the open ports below the USB constant by clicking pre-existing ones by right it, and selecting USB 2. clicking the hub, create, constant.
  25. 25. Programming Drive Motors: Finish Copy the Joystick close from below and change the name.
  26. 26. Programming Drive Motors This is the basic program setup for a 2 Motor Drive chassis. However, it is setup to run two motors with one joystick.
  27. 27. Programming Drive Motors Copy the code for Joystick 1 up, rename it, then wire into the “Unbundle” block. (This is what the big red arrow on the last slide was pointing to)  Expand the “Unbundle” block.
  28. 28. Programming Drive Motors Tip: To expand a while loop, hold control, click, and drag where you want more space. Insert an “Unbundle” block from “Programming>Clust er, Class, and Variant>Unbundle” and wire the input to the pink pipe that runs through the while loop.
  29. 29. Programming Drive Motors “WPI Robotics LibraryRobot Drive- Joysticks and get the “Get” block. “Unbundle by Name” from ProgrammingCluster, Class, and Variant wired to “axis”
  30. 30. Programming Drive Motors Wire the pink pipe from the “Unbundle” to the Tank Drive in order to transfer the information from Begin to here. Get a “Tank Drive” block from WPI Robotics Library- Robot Drive- Tank Drive. Wire the outputs from the Y axis of the two Joysticks into the Right and Left motor ports.
  31. 31. Thank You For Listening!! Questions? knlanden@gmail.com 503-853-6704

×