Oregon Robotics Tournament and Outreach Program III. NXT Advanced Robotics Techniques 2013 Opening doors to the worlds of science and technology for Oregon’s.

Slides:



Advertisements
Similar presentations
Intermediate Robotics Getting to the Next Level Guiding Question: How might I move the robot consistently, accurately, and predictably? –Review basics.
Advertisements

Robofest 2005 Introduction to Programming RIS 2.0 RCX Code.
Getting started with LEGO NXT Mindstorms software This is intended to be a short introduction to the LEGO Mindstorms software and programming the LEGO.
EV3 Workshop Curriculum Developed by Joe DeRose, Ph.D.
EducateNXT Enter the name “Sound Graphing” for your experiment. Real-time Data Logging Click the Switch to NXT Data Logging icon in the top-left corner.
LabView Basics.
Robot Construction Basics Les Turner Director of Technology, Northern Indiana ESC Head Coach, Bremen Botz!
NXT Basics: Technic Building and NXT-G Erin Cejka Riecker Center for Engineering Educational Outreach Tufts University.
ORTOP Workshop 3 - Robot Design
Navigating the BOE-BOT
Mingo County Shewey Science Academy: NXT Training.
NXTG Workshop for Bottle RoboSumo Lawrence Technological University.
EIGHTH GRADE ROBOTICS KITTATINNY REGIONAL HIGH SCHOOL MR. SHEA Introduction to Programming
LEGO Theory and Practice Mark Green School of Creative Media.
Introduction to NXT Software and Functionality Bot’oberfest October 15, 2007.
1 ©2006 INSciTE Lab Two Task: Make the program from Lab One (Move forward 5 rotations and turn right 90 degrees) into a MyBlock.
NXT Robotics Techniques Workshop “Opening doors to the worlds of science and technology for Oregon’s youth” 6/10/2010NXT Robotics Techniques -
The NXT is the brain of a MINDSTORMS® robot. It’s an intelligent, computer-controlled LEGO® brick that lets a MINDSTORMS robot come alive and perform.
Reviewing Common Blocks for St. Agnes Elementary School Teachers by Jenny Chang Feb. 26th, 2007 USC & University Neighborhood Outreach Robotics STEM program.
LEGO Mindstorms NXT Programming We will be using the Common Palette for our Robots This is how you download your program onto the brick Drag and drop a.
1 Oregon Robotics Tournament and Outreach Program Programming Techniques Workshop for Mindstorms  NXT 2012 Opening doors to the worlds of science and.
Have FUN!!! Demo the power of robotics to: –improve problem solving skills –utilize math skills –develop an “engineering mindset” –improve communication/teamwork.
GIRLS Robotic Camp. Let’s Begin Meet and Greet – Camp leaders introduce themselves – Students introduce themselves.
ORTOP WORKSHOP 3 ROBOT NAVIGATION & MISSIONS ORTOP WORKSHOP 3 ROBOT NAVIGATION & MISSIONS.
Droids Robotics Workshop
Intermediate Programming Lesson: Improving Robot Reliability in FLL
1 ORTOP Workshop 3 - robot Design Robot Design, Navigation & Missions.
Today’s Agenda 1.Scribbler Program Assignment 1.Project idea due next class 2.Program demonstration due Wednesday, June 3 2.Attendance & lab pair groupings.
ORTOP Workshop 3 Welcome Goal: Extend your knowledge of LEGO robotics – This workshop is very hands-on and will run 3 hours. You will be working in teams.
EV3 Workshop Oct 3, 2015 Instructor: Chris Cartwright
1 Oregon Robotics Tournament and Outreach Program I. Introductory Workshop for ORTOP’s FLL Program 2011 Opening doors to the worlds of science and technology.
ORTOP NXT Robotics Techniques Workshop 2009 “Opening doors to the worlds of science and technology for Oregon’s youth”
NXT Basics: Technic Building and NXT-G Erin Cejka Riecker Center for Engineering Educational Outreach Tufts University.
Introduction to Data & Advanced Programming Blocks ROBOTICS II Module 1 Done by: Eng Nooran Drak.
Lego MindStorm An Introduction to Blocks. Blocks Blocks are used to give instructions to your robot. There are many types of blocks You can use the blocks.
Castor Bot. Now, we will begin creating a robot Log onto your computer On your screen, click on the website labeled “castor bot” Your building instructions.
Minds and Computers 3.1 LEGO Mindstorms NXT l Atmel 32-bit ARM processor l 4 inputs/sensors (1, 2, 3, 4) l 3 outputs/motors (A, B, C) l 256 KB Flash Memory.
Title Slide Progress Report Name. Goal Goal Statement – ex. design/create/fabricate … - should be clear and short Needs/Problems – clear and short Space.
Find the Mindstorms Icon on the computer.. To start a new program click go.
Robotics NXT-G: variables, file Rotation sensor Lab: Use buttons to hit specific ball. Homework: Postings. Start planning mapping the room.
LEGO® MINDSTORMS® NXT Move Block.
EV3 Software EV3 Robot Workshop
1 ©2006 INSciTE Common Blocks. 2 ©2006 INSciTE Common Blocks Common blocks are full featured actions Like English statements Move Wait for an action Display.
ROBOTC Software EV3 Robot Workshop
BEGINNER FLL PROGRAMMING WORKSHOP BY DROIDS ROBOTICS & EV3LESSONS.
ROBOTC Software EV3 Robot Workshop Lawrence Technological University.
Deriving Consistency from LEGOs What we have learned in 6 years of FLL by Austin and Travis Schuh © 2005 Austin and Travis Schuh, all rights reserved.
Casne.ncl.ac.uk Taking care of the CrumbleBot Please do NOT stress the robot's motors 1.Do NOT push the robot 2.Do NOT hold the.
Mechanical Components and Programming Ken Youssefi Introduction to Engineering – E10 1.
DPS Secondary Science Institute 1 Agenda 8:30-8:45 Introduction and Overview 8:45-9:15 The Bumper Car 9:15-10:15 The Line Follower 10:15-10:30 Questions.
Lego Mindstorm Robots 9797 kit.  Students will learn how to identify how to detect a change in a condition.  Students will learn where and how to identify.
Basic Programming: Until Commands. The Problem with Wait States Motor Speed is affected by battery power. –If the battery is fully charged, the motors.
How Do You Make a Program Wait?
LEGO Robotics Workshop
Exploring Computer Science Lesson 6-5
ORTOP Workshop 3 Robot Navigation & Missions
Deriving Consistency from LEGOs
Understanding Communication with a Robot? Activity (60 minutes)
ORTOP NXT Robotics Techniques Workshop 2008
Robot Design gears lamp touch sensor right motor left motor
INTERMEDIATE PROGRAMMING LESSON
INTERMEDIATE PROGRAMMING LESSON
ORTOP NXT Robotics Techniques Workshop 2007
ORTOP Robotics Techniques
ORTOP NXT Robotics Techniques Workshop 2006
Exploring Computer Science Lesson 6-5
Navigating the transition to NXT
Creating a Simple Game in Scratch
Getting started with LEGO EV3 Mindstorms software
LEGO MINDSTORMS NXT PROGRAMMING
Presentation transcript:

Oregon Robotics Tournament and Outreach Program III. NXT Advanced Robotics Techniques 2013 Opening doors to the worlds of science and technology for Oregon’s youth

Instructor Contacts Roger Swanson Jim Ryan Ken Cone (503) Dale Jordan Terry Hamm (503)

ORTOP Project Administrator Cathy Swider (503)

Goals Audience: Rookie and experienced coaches and mentors Build confidence using more advanced navigation techniques Gain experience with 3 motor robot and missions You should have already attended NXT workshops I & II and/or coached a team in a tournament

Agenda Robot Design Building strong structures Gears Motors Navigation Going straight Turning accurately Sensors Light sensor and calibration Distance sensor Mission Planning & The Buoy Mission

Engineering Design Process Define the Problem Research the Problem Develop Possible Solutions Choose the Best Solution Create a Prototype Test and Evaluate Communicate Redesign

Building Strong Structures Parts are pinned together using pins & beams Here are three cross bracing examples Note: Pythagorean theorem Ref: Minnesota High Tech Kids teams/coaches-library 2 inch drop test

Gears Spur Gear (show example) Instructor holds beam Class person turns axles and feels torque on other axle Tactile feedback = learning about gears and torque Gear Ratio and Speed Turn the large gear one complete turn How may revolutions does the small gear turn? Is gear ratio the same as the ratio of gear teeth?

Gears Gears & Pulleys Worm Gears (show example) One way transfer of power Crown & Bevel Gears Turn 90 degrees Spur Gears Change direction & change torque Note gears used on workshop robot fork lift

Robot Design Three motor base Level, square Screen location Attachments Soda can pusher Fork

Navigation Often times the robot does not go where you want it to go on a consistent basis. Why might that be? In this segment we’ll explore basic robot move and turn accuracy

Navigation Let’s do a simple “Going Straight” lab test to understand how the robot moves: Tape down 2 pieces of paper on the table, 2 feet apart Draw a starting line on one paper Create a simple program to move 2 feet then stop Run speeds at 20, 50, 90 Use a “soda can pusher” or similar attachment on the front of the robot Run test 5-10 times Mark a dot where front “can pusher” arm stops Begin test now

Navigation Going Straight test: Run test 5-10 times, record results Draw box around landing points What does the box tell us? Goal: To understand how the robot moves – its accuracies and inaccuracies We can then compensate for inaccuracies with other techniques Examples: use a wide fork for the buoy mission, or a wide soda can pusher

Navigation Theory - The S curve inaccuracy: A Move block rotates both wheels to the programmed position using built-in rotation sensors as feedback If one wheel slows down, the other wheel slows down, causing the robot to move in a lazy S curve Did you observe this in your going straight lab tests?

Navigation Compensation for navigational errors – “reset to zero” Use mechanical means Angled corners (back into a corner) Wall follower (wheel) Back against a wall Use sensors Light & touch to “reset to zero” and re-establish the exact robot location

Navigation Variables that affect going straight: Starting box position Speed Battery charge Tire size Motor friction, gear backlash (Google these terms) NXT software tries to keep both wheels moving at same rate What is distinct about the last two variables?

Navigation Turning Accuracy Let’s review two types of turns Spin Turn Position Move block slider all the way to the LEFT or RIGHT A spin turn uses 2 wheels, one forward, one backward - robot “spins” around center point between the wheels

Navigation One Wheel Turn Use Move block, turn one motor off One wheel moves, one is stationary – robot turns around the stationary wheel Which turn is more accurate? Where could we use the spin turn?

Navigation Extra Credit Program a move-turn sequence Use “spin” turns and “one-wheel” turns Place a pencil mark where robot stops Run program 5-10 times and collect data Variables Left-right error Turn angle error Any more variables?

Navigation Review: Use navigation and “reset to zero” to know where robot is at all times Understand variables and how they influence robot movement. We learned left-right moves are less accurate than front-back moves. Long dead reckoning moves are ok, if robot/attachments can compensate for move inaccuracies, e.g. Width of can pusher, width of buoy pickup fork Backing into wall or corner to re-align robot Go for simple & sufficient solution

Sensors Now that we know how to move and turn with some precision, lets take a look at sensors Sensors we can use in FLL: Touch, light, rotation, distance Teams sometimes give up on sensors because they seem complex and don’t seem to work in a predictable manner Most teams feel comfortable with the built-in rotation sensors in the motors to determine the number of rotations/degrees In this segment we’ll explore the light sensor in more detail to help us navigate on the playing field

Light Sensor Variables Let’s look at Light Sensor-to-mat distance & record some data: Mount Light Sensor on the robot about 1/8” from the mat Record Black, Green, & White values using the NXT View function Move the Light Sensor to 3/8” from the mat, record values How does the distance affect Light Sensor values? As the robot moves, it bounces. Which distance do you think would work best, and why? BlackGreenWhite 1/8” from mat 3/8” from mat

Light Sensor Variables Now let’s record some more data: Use your hands to cover the Light Sensor to simulate a dark room Record Black, Green, & White values What does this tell us about Light Sensor performance in various room lighting conditions? BlackGreenWhite Light Sensor uncovered Light Sensor covered

Uncalibrated Light Sensor Values Data from 7 light sensors - uncalibrated, room light on What trigger point would we use to stop on black? On green or black?

Calibrated Light Sensor Values Calibration: A process to compensate for varying lighting conditions Data from two light sensors – uncalibrated (left), calibrated (right) With calibrated values: Values are spread apart Lightest values are “close to” 100 Darkest values are “close to” 0 Light Sensor 1 Light Sensor 2

Calibrating Light Sensors Using the internal calibration program Connect NXT brick to your computer On the upper left corner, click “Tools” and “Calibrate Sensors” To Calibrate, do the following: Select the light sensor and the port the sensor is connected to. Then click the Calibrate button. This will download a small program to the NXT and run it automatically. On the NXT’s screen you will see text that reads “Min Value:”. Point the light sensor towards a material or spot that represents what the light sensor should measure as dark. Press the orange Enter button on the NXT. Next you will see text that reads “Max Value:”. Point the light sensor towards a material or spot that represents the brightest location the sensor will encounter during the program. Press the orange Enter button again. Calibration is complete. Caution: After Calibration, read light sensor values from the Light Sensor program block to determine trigger points. Do not use NXT View function, as View gives incorrect values for calibrated light sensors.

Light Sensor Trigger Point Typically set the Trigger Point half way between the two light intensities you want to recognize White = 63 Black = 34 Trigger point (programmed) = (( white – black) / 2) + black Trigger point example: ((63-34) / 2) + 34 = 49

Summary of Light Sensor Variables Light sensor readings vary depending on: Distance of sensor from the mat Ambient light in the room The particular light sensor you are using Whether the robot’s light sensors have been calibrated or not

Value of Calibrating Light Sensors Spreads lightest and darkest values far apart If distinguishing between only two light intensities, will help adjust for differing ambient lighting Cannot use NXT View function to read light values to determine trigger points Can you write a program that will read the light sensor values from the robot?

Sensors -- Distance Homework assignment: Add a “Wait for Distance” block Program robot to stop 4 inches from a wall Shape and texture of target object can impact performance This completes the four sensors: Rotation, Touch, Light, and Distance Questions on Sensors?

The Buoy Mission s One last programming exercise to bring several things together: Use a Mission Planning Sheet to plan moves, turns, and attachments for your attack on the mission Use three motors and multiple sensors Program your robot and win the points

Engineering Problem: Move the buoy from its current position, Place it in the box at the end of the mission board, Park the robot on the blue finish line The box has a fence in front, so to score points you must lift the buoy over the fence and into the box. (Extra credit points for detecting the fence using the distance sensor.) First, write a mission plan (moves, turns & attachments), then write a program to execute your plan. Experiment with a calibrated light sensor The Buoy Mission

Mission Planning Sheet Mission(s):______________________________________ Maximum Score: _________ Program Name: __________________Memory size: ____ Time to run: _____________ Plan Overview: ___________________________________________________________ _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________ Starting Position:__________________________________________________________ _______________________________________________________________________ _ Sensors Used (Port): __________(___), __________(___), __________(___) __________(___), __________(___), __________(___) Navigation Details:________________________________________________________ _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________

Buoy Mission s End here Place buoy here Start here

Contact Us Web site: Phone: (503)