Exercise 1: Install PC Software & NXT Firmware Install FTC Software 2010 CDs (LabVIEW + MINDSTORMS software + FTC Toolkit) Upgrade NXT firmware to 1.28 (LabVIEW >> Tools >> NXT Tools >> NXT Terminal >> Update Firmware)
LabVIEW: NXT & Tetrix Training & Exercises
Overview NXT Review NXT-G LabVIEW General Programming LabVIEW (NXT) LabVIEW (Tetrix) Resources Learn More NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
NXT Hardware Inputs (to NXT Brick) Outputs (from NXT Brick) Touch Sensor Motor Sound Sensor Sound Light Sensor Display Ultrasonic Sensor Lamp (Legacy) Rotation Sensor Write Bluetooth Messages NXT Buttons (Write Files) Temperature Sensor (Legacy) Read Bluetooth Messages (Read Files) NEW: IR Sensor What happens in between? Processing ….which is what I will talk about most of the time NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
NXT-G Environment Palettes Workspace Block Download Options Configuration Panel Help NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
LabVIEW Environment Constants (Inputs) VI (Block) Block Diagram Workspace Palettes Block Download Options Configuration Panel Help NXT Toolkit Palette (NXT : LabVIEW) Workspace : Block Diagram Configuration Panel : Block Diagram (constants) Palettes : Palettes Download Options : NXT Terminal Window Move Block : Move VI Help Window : Context Help Window Context Help Window NXT Terminal Window NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
General Programming Data Types Dataflow Loops Numeric Boolean String NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
Data Types: Numeric Whole Numbers (0,2,-10, …) Decimal Numbers (2.2, 12.3, -15.1, …) Which takes up more memory? Will be creating most controls and constants by right-clicking and creating; therefore, not going into great detail here. NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
Data Types: Boolean For Example: On/Off Yes/No True/False NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
Data Types: String Grouping of Characters NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
Data Types: Ring List of Predefined Items User Can Select NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
Dataflow Sequence Beam Sequence Flow In/Out NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
Loops Repeat Code NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
LabVIEW (NXT) Context Help Window User Documentation Constants Case Structures Variables Real Time User Interaction with Brick Program Download Options Debugging NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
Context Help Window Help >> Show Context Help Terminals Required Recommended Optional NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
User Documentation Labels (attached) Free Labels (unattached) Right-click >> Show >> Label Free Labels (unattached) Double click NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
Constants Configuration Panel Block Diagram NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
Case Structures Switch (NXT-G) Case Structure NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
Variables Variable (NXT-G) Local Variable NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
Exercise 2: (NXT) Motor Task: Move robot in a square using Move Motor and Timing VIs Open Feedback Example NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
Exercise 3: (NXT) Motor + Light Sensor Task: Move robot inside a square outlined by tape using Light Sensor Closed Feedback Example NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
Real Time User Interaction with Brick Front Panel Controls Indicators Plotting Data NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
Program Download Options NXT Terminal (Tools >> NXT Tools >> NXT Terminal) Compile and Download Compile, Download, and Run Debug Front Panel linked to running code Abort NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
Exercise 4: (NXT) Motor + Light Sensor + Front Panel Task: Alter Exercise 3: (NXT) Motor + Light Sensor Put light detection threshold value on Front Panel Put turn degrees on Front Panel NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
Debugging Debug (download option) Broken “Run” Arrow in LabVIEW Context Help NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
Demo 3: Direct Commands Task: Scan for all Available NXT Bricks User Selects One Brick to Connect Query Brick for All of Its Files Remotely Start One Program Remotely Stop the Program How do you interact with a program running on the Brick? (debug mode, direct commands) Sometimes we don’t want to be inside the code itself. We want to work with it. How to get data off of the NXT onto your computer? (debug mode won’t let you – you’re peeking at the code on the Brick) Wii-Mote control example (NI Week 08) NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
LabVIEW (Tetrix) New Hardware Items Tetrix VIs Additional Need-to-know NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
New Tetrix Hardware Items DC Motors Motor Controller Servos Servo Controller Touch Mux Compass NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
Tetrix VIs (formerly FTC) NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
FTC Tools
Additional Need-to-know NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
Exercise 5: 4 Tetrix Motors + 2 NXT Motors Task: Move Robot in a Square Open/Close Claws Every 5 seconds NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
Demo 4: ConstantSpeedGodz Task: Constant Speed Dead Zone Implementation Sound File Controller Station NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
Resources “If You Forget Everything Else” Help Examples Big Differences NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
“If You Forget Everything Else” When in doubt, Right-click. Constants = Inputs (on Block Diagram) Controls = Inputs (on Front Panel) Indicators = Outputs (on Front Panel) Palettes (Right-click on Block Diagram, Front Panel) Context Help (“?”, CTRL + H, Help >> Show Context Help) NXT Terminal (Tools >> NXT Tools >> NXT Terminal) NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
Help Right-click Context Help (“?”, CTRL + H, Help >> Show Context Help) LabVIEW Help (Help >> Search the LabVIEW Help… >> Search: “NXT”) PDF Manuals (C:\Program Files\National Instruments\LabVIEW 2009\manuals) NXT_Getting_Started NXT_Advanced_Programming_Guide FTC_Getting_Started LabVIEW for LEGO MINSTORMS NXT (by Michael Gasperi) www.ni.com/academic/mindstorms/ NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
Examples NXT Tetrix www.ni.com >> Search: “nxt example” C:\Program Files\National Instruments\LabVIEW 2009\examples\FTC Toolkit NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
Big Differences: NXT-G & LabVIEW Sequence Beam vs. Sequence Flow In/Out Front Panel Debug in Real Time (download option) Direct Commands Data Logging Arrays, Clusters Numeric, Boolean, String Manipulation Mathematical Processing … Questions? NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources
Learn More Tool Selection Window Arrays Clusters Write/Read to File Graphs Clusters Write/Read to File Flat Sequence Structure How to Remotely Control your NXT with LabVIEW Latching/Switching Booleans NXT-G LV Gen. Prog. LV NXT LV Tetrix NXT Review Resources