North Texas FLL Coaches' Clinics. Beginning Programming October 2014. Patrick R. Michaud pmichaud@pobox.com republicofpi.org



Similar documents
How To Turn On A Robot On A Computer On A Black Box On A Pc Or Macbook

EV3 Programming. Overview for FLL Coaches. A very big high five to Tony Ayad

How To Program An Nxt Mindstorms On A Computer Or Tablet Computer

Lego Robot Tutorials Touch Sensors

understanding sensors

CONTENTS. What is ROBOTC? Section I: The Basics

Quick Start Guide to computer control and robotics using LEGO MINDSTORMS for Schools

product. Please read this instruction before setup your VenomXTM.

Best Robotics Sample Program Quick Start

FLL Advanced Programming & Best Practices Workshop

The Basics of Robot Mazes Teacher Notes

TETRIX Add-On Extensions. Encoder Programming Guide (ROBOTC )

Creating a Gradebook in Excel

Tutorial for Programming the LEGO MINDSTORMS NXT

Advanced Programming with LEGO NXT MindStorms

The second goal is to provide a list of tips, tricks, and best known methods that have been discovered over the life span of the course.

Programming LEGO NXT Robots using NXC

Using Image J to Measure the Brightness of Stars (Written by Do H. Kim)

Introduction to programming moway

Objects in Alice: Positioning and Moving Them

INTRODUCTION TO SERIAL ARM

Copyright 2010 ALFANO S.A. All rights reserved.

DMX protocol. Robin MMX Blade - DMX protocol, version 1.1

LEGO Digital Designer 4.3 User Manual

2/26/2008. Sensors For Robotics. What is sensing? Why do robots need sensors? What is the angle of my arm? internal information

SE05: Getting Started with Cognex DataMan Bar Code Readers - Hands On Lab Werner Solution Expo April 8 & 9

How To Run A Factory I/O On A Microsoft Gpu 2.5 (Sdk) On A Computer Or Microsoft Powerbook 2.3 (Powerpoint) On An Android Computer Or Macbook 2 (Powerstation) On

Introduction WELCOME TO LEGO MINDSTORMS EDUCATION

Calibrating your monitor

2013 G Miller. 3 Axis Brushless Gimbal Controller Manual

Roulette-Tools PATTERN RECOGNITION TRAINING

Installing Remote Desktop Connection

Can Traffic Accidents be eliminated by Robots?

DMX protocol Reserved. Page 1. Mode/channel DMX Value. Type of control. Function

Tutorial 1. Introduction to robot

LCD MONITOR TOUCH DISPLAY DRIVER OPERATION MANUAL. for Mac. Version 1.0 PN-K322B/PN-K322BH/LL-S201A. Applicable models

LCD MONITOR TOUCH PANEL DRIVER 2 OPERATION MANUAL. for Mac. Version 1.0 PN-L703A/PN-70TA3/PN-L703B/PN-70TB3/PN-L603A/PN-60TA3/PN-L603B/PN-60TB3

Configuration Software User Instruction

CDVS-7000 Series Remote Software Users Guide

5. Tutorial. Starting FlashCut CNC

Additional Guides. TETRIX Getting Started Guide NXT Brick Guide

Building a Better Robot

REFERENCE GUIDE 1. INTRODUCTION

Introduction WELCOME TO LEGO MINDSTORMS EDUCATION

ACCESS CONTROL SYSTEMS USER MANUAL

Servo Motors (SensorDAQ only) Evaluation copy. Vernier Digital Control Unit (DCU) LabQuest or LabPro power supply

Classroom Activities for the Busy Teacher: EV3

REMOTE DESKTOP IN WINDOWS XP

Panasonic Primary Colors Matching Support Software. Version 5.01

mouse (or the option key on Macintosh) and move the mouse. You should see that you are able to zoom into and out of the scene.

PS3/PS2/PC 3IN1 Wired Racing Wheel. User Manual

Multi-Protocol decoder with Load regulation

Tutorial 13: Object Animation

Animated Lighting Software Overview

User Guide. Logout button: will log you out of the session! The tablet tool automatically logs out after 30 minutes of idle time.

Royal Mail Despatch Manager Online Printer Installation Guide

Multi-Protocol decoder

SMART Board Interactive Whiteboard Setup with USB Cable

Petrel TIPS&TRICKS from SCM

NOVA MULTI-MONITORING SOFTWARE. Instruction Manual

STEP 7 MICRO/WIN TUTORIAL. Step-1: How to open Step 7 Micro/WIN

Datalogger Graph Software Help

1. Central Monitoring System Software

For keyboard and touchscreen BlackBerry devices User manual

KB COPY CENTRE. RM 2300 JCMB The King s Buildings West Mains Road Edinburgh EH9 3JZ. Telephone:

EasyC. Programming Tips

How to read this guide

Wrap Tracker 6TC. User Guide

Pocket Verifier Quick Start HTC Touch Diamond

Bluetooth + USB 16 Servo Controller [RKI-1005 & RKI-1205]

Introduction to Google SketchUp (Mac Version)

JVC Monitor Calibration 2 User's Guide

RGK60 RGK50 RGAM10 RGAM20 RGAM4 Generator set control units

These instructions were tested on OS X Earlier or later versions may have slight or major differences in how things work and appear.

MXL 990 Virtual Preamp Installation

Building Instructions: Maze Robot

SketchUp Instructions

Intro to Excel spreadsheets

1. Central Monitoring System Software

Acrobat PDF Forms - Part 2

X-Trade Brokers Dom Maklerski S.A. XTB Expert Builder. Tutorial. Michał Zabielski

Servo Info and Centering

Twelve. Figure 12.1: 3D Curved MPR Viewer Window

Parts List. Navigation

Seagate Manager. User Guide. For Use With Your FreeAgent TM Drive. Seagate Manager User Guide for Use With Your FreeAgent Drive 1

My EA Builder 1.1 User Guide

Frequently Asked Questions Overview:

Download Software 2.33 For Vigil civil I, II, 2 + & Military II, II+, II+c -

Your EdVenture into Robotics You re a Programmer

Transfer of Energy Forms of Energy: Multiple Transformations

Teacher Answer Key: Measured Turns Introduction to Mobile Robotics > Measured Turns Investigation

Six-servo Robot Arm. DAGU Hi-Tech Electronic Co., LTD Six-servo Robot Arm

How To Use Mview On A Powerline 2.2 (Powerline) On A Pc Or Macbook 2 (Powerplst) On An Iphone Or Ipa 2 (Aldo) On Your Iphon 2 (

HOUR 9. Formatting Worksheets to Look Great

SMS Alarm Messenger. Setup Software Guide. SMSPro_Setup. Revision [Version 2.2]

Introduction to SketchUp

Fish Grader User Manual

Motion Activated Camera User Manual

CREATE A 3D MOVIE IN DIRECTOR

Transcription:

North Texas FLL Coaches' Clinics Beginning Programming October 2014 Patrick R. Michaud pmichaud@pobox.com republicofpi.org

Goals Learn basics of Mindstorms programming Be able to accomplish some missions Provide tips that have helped our team Point out traps that cause frustration

Topics EV3 programming environment Programming basics Motor blocks moving forward and backward Detecting lines, borders, colors Port view and view mode Turning basics Turns using gyro sensor Simple My Blocks

EV3 Programming Environment Project Zoom Open programs Start Block Download Palletes Action Flow Sensor Data Advanced My Blocks Control Port View Download and run Program Blocks

Programming basics A program is a sequence of actions to perform Start Move forward 3 Play sound Move backward 3 Each action is represented by a block Icons indicate the type and values of block Robot does exactly what you tell it to do and only what you tell it to do Programmer determines what actions to perform

Motor blocks moving the robot Motor Ports Move Tank Block On for Rotations Power Left Power Right Rotations Brake at end Motor ports: which motors to turn Power left/right: how fast to turn each motor Rotations: how far to turn each motor Brake at end: whether to apply brakes when done

Motor blocks Motor commands Types of moves Move tank left/right motor speeds Move steering turn direction / sharpness Large motor (one) motor speed

Wait blocks Program executes blocks in sequence Wait blocks makes program wait for something to happen before continuing to next block Wait for seconds Wait for sensor to read a certain value Wait for sensor to change Example: Start motors on wait 3 sec motors off

Wait block options

Touch and color sensors Touch sensor detects pressure Color sensor can detect selected colors Sensor should be 0.5 to 2.0 cm from color to be detected

Moving to a border, line, or color Move until touch sensor pressed Start motors on wait for motors off touch press Move until black, green, or red detected Start motors on wait for motors off black, green or red

Use port view to see sensor changes Software view: Motor A Motor B -16 degrees 28 degrees Touch 1 not pressed Motor C 51 degrees Gyro 2 Color sensor 3-158 degrees 4 (yellow) EV3 view:

Turning basics types of turns Point turn Pivot turn Wide turn Wheels move in opposite directions One wheel moves, other wheel brakes One wheel moves slower than other we use this, most consistent

Fundamentals of turns The robot turns when driving wheels move at different speeds The robot turns towards the slower wheel The greater the difference in speeds, the tighter the turn

Fundamentals of turns Quiz: If a wheel turns 90 degrees, does the robot turn 90 degrees? Answer: No There is a formula to convert wheel turn angles to robot turn angles (advanced programming) But many teams just use trial and error Or, use a gyro sensor

Gyro sensor Gyro sensor detects rotation about an axis Can measure rotation rate or rotation angle Sensor has bias and drift sometimes shows movement even when still

Reducing gyro drift The following block sequence recalibrates the gyro sensor to eliminate drift: Measure Angle and Rate Wait 0.5 sec Gyro sensor Compare Angle equal to 0 Perform this once at beginning of program Requires 2-3 seconds to complete Gyro must be stationary while calibrating Trap: Gyro reset block doesn't recalibrate gyro!

Turns using gyro sensor Once gyro reads correctly, turning an angle is: turn on one motor wait for gyro to change 60 Gyro Change Angle turn off motors # of degrees to change Gyro sensor is not precise Robot may turn slightly more or less than 60

Simple My Blocks - turning A program to move, turn, then move: move fwd 3 rot turn robot 60 to left move fwd 1.5 rot Adding three blocks for every turn will get tedious We can create custom blocks called My Blocks

Creating a My Block Start by drag-selecting the blocks to be used Select My Block Builder from the Tools menu

Creating a My Block Give the My Block a name Click the + to add a parameter Click Parameter Setup Name parameter Power Give it a default of 50

Creating a My Block Click + again to create another Parameter Name it degrees Default value 0 You can change the parameter icons to be more meaningful Click Finish

Creating a My Block A new program is created for the My Block The grey block on the left has our parameter inputs for power and degrees We have to wire them to the appropriate blocks

Creating a My Block Drag a wire from the Power parameter to the C motor power input Drag a wire from the Degrees parameter to the degrees input of the wait block

Creating a My Block We now have a My Block for turns Our original program has the three-block sequence replaced with our turn block move fwd 3 rot turn robot 60 to left move fwd 1.5 rot Our turn block appears in the My Blocks palette

My Blocks Easier to read and build program Suggestions: Create a My Block for each mission Combine mission My Blocks into trip My Blocks Create standard My Blocks for Moving forward and backward, turning Stopping Motorized attachments Initialization

Stop stop stop Trap: Be sure the robot comes to a full stop between moves When Move blocks complete, they brake the motors Inertia carries the robot further, so the motors have to back up a bit This takes a little time If your program immediately goes to next action, robot will be inconsistent

Create a stop My Block Add a short wait after every movement A simple stop My Block: Can use this whenever you want to be sure the robot is stopped:

Thank you! Questions? Patrick R. Michaud pmichaud@pobox.com republicofpi.org Join the NorthTexasFLL group!