FLL Workshop 1 Beginning FLL Programming. Patrick R. Michaud University of Texas at Dallas September 8, 2016

Similar documents
BEGINNER EV3 PROGRAMMING LESSON 1

Deriving Consistency from LEGOs

Chapter 12. Formula EV3: a racing robot

Index. sequencing, 21, 26 starting off, 22 using, 28 code sequence, 28 custom pallete, 28

Introduction to Elementary and Middle School Robotics. John Heffernan 8/17/2014

4.1 Flow Rate Verification and Adjustment

Mitsubishi. VFD Manuals

Motions and Forces Propeller

index Page numbers shown in italic indicate figures. Numbers & Symbols

LeafBox manual, v How to set the LeafBox?

VFD - Mitsubishi. VFD Manuals. Mitsubishi D700 VFD Installation. Mitsubishi FR-D700 VFD User Manual. Mitsubishi D700 Parallel Braking Resistors

StepSERVO Tuning Guide

RR Concepts. The StationMaster can control DC trains or DCC equipped trains set to linear mode.

CAM-PTZ-AUT Tracking Module for PTZ Camera Installation & User Manual

Section 55 Chapter 6

Idle Timer Controller - ITC515-A Ford Transit Contact InterMotive for additional vehicle applications

MAGPOWR Spyder-Plus-S1 Tension Control

index changing a variable s value, Chime My Block, clearing the screen. See Display block CoastBack program, 54 44

ITCEMS950 Idle Timer Controller - Engine Monitor Shutdown Isuzu NPR 6.0L Gasoline Engine

Customer Name: Serial Number: Y-Axis Stall

Standard Drives A & D SD Application Note

MiR Hook. Technical Documentation

The Fischertechnik ACEs (Robo Starter Model kit)

CLA-VAL e-drive-34. User Manual. Motorised Pilots. CLA-VAL Europe LIN072UE - 04/16

ROBOTICS BUILDING BLOCKS

Caution Notes. Features. Specifications. Installation. A3 3-axis Gyro & Stabilizer User Manual V1.0

IDL Dragonfly Manual

TCwin AND THE STC THROTTLE CONTROLLER... 3 INSTALLATION... 3 SOFTWARE INSTALLATION... 3 DEFINITION OF TERMS... 4 MAP EDITING KEYS... 4 DIAGNOSTICS...

[0. Title] Biased Weight Alignment Procedure for Bent Axle Alignment by Stan Pope, 4 August 2013

Setup, Assembly, & Adjustment

Idle Timer Controller - A-ITC520-A Ford E Series Ford F250 - F Ford F250 - F550 (*B-ITC520-A) F650/F750

Attention! 1 Accessories. 2-1 Installation description ❹ ❺. Please proceed as follows

For the most current information, visit the Roadranger web site at

Instruction of connection and programming of the VECTOR controller

ECT Display Driver Installation for AP2 Module

Idle Timer Controller - ITC Freightliner MT45 Contact InterMotive for additional vehicle applications

PowerJet Sequential Injection INDEX. 1 Introduction 1.1 Features of the Software. 2- Software installation

Experimental Procedure

RATE CONTROLLED TORQUE WRENCH TESTER

Pleo Booklet: Instructor

Parker AC10 Frequency Inverter (to 22kW) Easy Start Guide

Controller Ground (dual black 12awg) should be connected to chassis ground as close as possible to the battery.

Flymentor 3D. User Manual SHENZHEN KDS MODEL TECHNOLOGIES CO.,LTD

Matrix Pro GS. Setup Guide. For use with software version 3.0x. TeeJet Aabybro Mølhavevej 2 DK 9440 Aabybro Danmark

DG s Guide to Programming AEM EMS Electronic Boost Control V 2.01

AKD Controlled Stop and Holding Brake Timing Jimmy Coleman, Rev. B, 5/1/2017

Using the NIST Tables for Accumulator Sizing James P. McAdams, PE

Instruction of connection and programming of the OSCAR-N controller

TPMS Adapter Instruction Manual. (Tire Pressure Monitoring System)

Abrites Diagnostics for Peugeot/ Citroën User Manual abrites.com

Welcome to VBar Express 5.3

The RCS-6V kit. Page of Contents. 1. This Book 1.1. Warning & safety What can I do with the RCS-kit? Tips 3

An ISO 9001:2008 Registered Company

Idle Timer Controller - A-ITC620-A Chevrolet Express/GMC Savana

LPG STARTBOX. Instruction Manual. Rempel Power Systems GmbH

GHD Global Help Desk. HOISTING commissioning with ATV71 03/2010

ArduCopter v2.9.1 for Traditional Helicopters (TradHeli)

OVERHEAD CRANE SAFETY:

Lesson 1 - Make The Car Move Points of this section

DRIVE CYCLES > JTEC > OBD-II Monitor Enabling Criteria RWD/4WD JTEC PCM Equipped Vehicles >

Certus Model 460 Turntable Manual. 25-Jun-2007

INDEX 1 Introduction 2- Software installation 3 Open the program 4 General - F2 5 Configuration - F3 6 - Calibration - F5 7 Model - F6 8 - Map - F7

CST F1 Pedals. Owner s Manual. (Adjustable Angle version)

Instruction Manual. SmarTire Dealer Programming Tool. PN: Revision Copyright 2006 SmarTire Systems Inc.

Disco 3 Clock Spring / Rotary Coupler replacement

VFD. Variable Frequency Drive

Experiment 6: Induction

CurveMaker DFS v2.0 Dyna FS Ignition Programming Software

ACS LED SIGNALLING UNIT LINEAR SENSOR CALIBRATION. AS-i module / multi-voltage modules version

PSC1-003 Programmable Signal Calibrator

Certus Model 450 Turntable Manual. 21- Dec- 2006

TAROT ZYX-S2 Three-axis Gyro User Manual

Radiant High Voltage. Displacement Measurement Fixture. Construction. Introduction. Figure 1

Smart Traffic Lights

Heat Engines Lab 12 SAFETY

Outboard Pilot Hydraulic Setup

When you finish the running, power off the receiver BEFORE turning off the transmitter.

Tube Bender. Machine Type - Tube Bender

APPLICATION NOTE

3/6/16 Tetrix first build robot instructions J. La Favre

WIRELESS BLOCKAGE MONITOR OPERATOR S MANUAL

TYRECONTROL «PT» A-188

SmarTire TPMS Maintenance Hand Tool. Revision User Manual

Issue 2.0 December EPAS Midi User Manual EPAS35

Huf Group. Your Preferred Partner for Tire Pressure Monitoring Systems. IntelliSens App

CS 420RC. Solid De-icer Controller Configuration and Set-up Manual

(If this step is missed, then OBD software is not going to work. So it's CRUCIAL that you follow below steps).

Quick user guide for the DM dispenser

Overview of operation modes

Throttle Quadrant Operating Manual English Version

Compound Gears Laboratory - Part 2

ECHO. User Manual. Model: PFBD77

Simscape Getting Started Guide. R2014a

QUICK INSTALLATION GUIDE

T P M S. Multi Wheel Bluetooth. Tire Pressure Monitoring System. User Manual. Model: External

QUICK START GUIDE 199R10546

Additions, Revisions, or Updates

Amateur Radio Station WFØGM Repairing a Yaesu G-1000DXA Rotor

Cirtix series Brushless Speed Controller manual For RS1/RS A/ Page - 1 -

APPLICATION NOTE Application Note for Torque Down Capper Application

Transcription:

FLL Workshop 1 Beginning FLL Programming Patrick R. Michaud pmichaud@pobox.com University of Texas at Dallas September 8, 2016

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 Palettes 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

Programming Tasks

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

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

Using the medium motor The medium motor has a different block Motor Port Medium Motor Block On for Degrees Power Degrees Brake at end Use On for Seconds when you want to go to a limit (avoid stalls) On for Seconds Seconds Arm travel angle unknown

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:

Loops To do something repeatedly (like steering), Flow control palette use a loop block Start Wait Loop Switch Loop Interrupt A basic loop block Loop What to do each time How long/often to repeat the loop

Programming Tasks

More about turning 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 Join the NorthTexasFLL group!