Chung for Robofest 05 1 Introduction to RoboLab CJ Chung Lawrence Technological University
Chung for Robofest 05 2 What Is RoboLab? A Graphical programming language For the RCX based on LabVIEW In 1997, LabView was used for Sojourner project By designing a flow chart with given icons the programmer can program the RCX
Chung for Robofest 05 3 Pros to Using RoboLab Easy to see control structure Visual interface is simple Exactly like LabVIEW Data gathering and visualization (investigator)
Chung for Robofest 05 4 Cons to Using RoboLab Spaghetti code Hard to wire icons… No edge triggering supported. See Line Counter program in this slide
Chung for Robofest 05 5 For More Information Legos Page National Instruments Page Tufts University ages/eng/downloads/compare.doc
Chung for Robofest 05 6 Before Getting Started Programming RCX Firmware Download: Administrator
Chung for Robofest 05 7 Investigator for data gathering and visualization
Chung for Robofest 05 8 Getting Started Programmer | double click Inventor Level 4
Chung for Robofest 05 9 RoboLab Class Mission 1: To drive using a Timer Go straight for 2.5 seconds and stop
Chung for Robofest 05 10
Chung for Robofest Save the file!
Chung for Robofest 05 12
Chung for Robofest Just click Broken arrow
Chung for Robofest Modifiers
Chung for Robofest Context Help Just point an icon in question
Chung for Robofest To replace an icon Use right click and replace (for Macs, use the Apple key)
Chung for Robofest Windows| Show Tools Palette The space bar The tab key
Chung for Robofest Tips How to insert icons? How delete icons? Cover the tower and RCX when downloading, if more than one robot in a room! Use Meaningful file names Add Comments using A: edit text
Chung for Robofest RoboLab Mission 2: Bumper Car Goes straight and stops when the bumper is hit or Turn motors A and B; turn off motors A and B, when a touch sensor is pressed
Chung for Robofest 05 20
Chung for Robofest What is wrong?
Chung for Robofest RoboLab Mission 3: Board Edge Detection Robot must stop when it detects the edge of the white board Testing Light Sensors Use Black View Button to read data from the light sensor
Chung for Robofest Darker than 40 Brighter than 50
Chung for Robofest RoboLab Mission 4: Making Turns Go straight for 2.5 seconds and turn right 90 degrees and go straight for 2 seconds and stop Is it easy to make 90 degree turns? Mark the stop location and rerun Does it stop at the same point? Why not? How do we make our robots go straight? Very important for many missions
Chung for Robofest Tips: Making Right Turns stop Method 1: Left motorRight motor Method 2: Left motorRight motor
Chung for Robofest 05 26
Chung for Robofest Using a Rotation Sensor in RoboLab Finding a good pair of motors using RoboLab Use Black View Button to read data from the rotation sensor
Chung for Robofest 05 28
Chung for Robofest RoboLab Control Structures Sequence Loop: Decision: Fork Subroutines: Multitasking:
Chung for Robofest Loop with a counter
Chung for Robofest Loop while touch sensor is released
Chung for Robofest Mission 5: Detect Light and Beep When the light sensor detects a bright light source, beep Repeat until a touch sensor is pressed
Chung for Robofest A loop inside a loop?
Chung for Robofest Decision - Fork
Chung for Robofest Mission 6: Line Following (Zigzag method) Do forever until touch sensor is pressed: If it sees black, turn right If it sees white, turn left Which side of the line does this follow?
Chung for Robofest How to follow a line using one Light Sensor? - Zigzag methods
Chung for Robofest 05 37
Chung for Robofest Subroutine – a set of commands Create Subroutine No. n: Run subroutine n: nn
Chung for Robofest Subroutine Example
Chung for Robofest Mission 7: Line Following Until the edge of the board Do forever until light sensor detects the edge of the board: If it sees black, turn right If it sees white, turn left
Chung for Robofest RCX Communications - Send
Chung for Robofest RCX Communications - Receive
Chung for Robofest Containers to store values Loop while container value is less than…
Chung for Robofest Mission 8: Line Counter Go forward Count each line as the robot crosses it When the robot detects the 4th line, stop. Uses a Container to count number of lines
Chung for Robofest Line Counter Solution Using RoverBot Style Gearing Wait for Dark If no time to skip black line, a line can be counted more than once. Wait for Dark Cf. RCX code, Wait Until, provides Edge Triggering
Chung for Robofest Sensor Stacking Stack touch sensor on top of light sensor Both Sensors must be thought of as light sensors. Pressing the touch sensor will always read 100. When the touch sensor is not pressed the value for the light sensor will be read.
Chung for Robofest Mission 9: Line following until stacked touch sensor is pressed
Chung for Robofest Multitasking
Chung for Robofest How to upload to different program slots Select the slot number by pressing the gray Pgm button on the RCX Click the (run) button