Programming Robots using Java

Slides:



Advertisements
Similar presentations
Robofest 2005 Introduction to Programming RIS 2.0 RCX Code.
Advertisements

Introduction to LEGO RCX robotics and Robot Sumo
LabView Basics.
In this presentation you will:
Robot Soccer Challenge
Vex Robotics Introduction to Sensors. introduction to sensors Sensors assist robots in seeing and feeling the physical world through which they travel.
Using LeJOS LMICSE Workshop June , 2005 Alma College.
Programming with Lejos Part 1. What is lejos? Cut-down version of Java for the RCX platform Includes: –Lejos API –JVM API includes functionality needed.
LEGO Mindstorms Hitachi H8-based RCX brick B.A. Juliano, R.S. Renner, F. Jauregui January 2004 California State University, Chico Intelligent Systems Laboratory.
1 ©2006 INSciTE Lab Two Task: Make the program from Lab One (Move forward 5 rotations and turn right 90 degrees) into a MyBlock.
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.
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.
Lego Mindstorms NXT 2.0 : Prepared By Afaf mejbel AL-Ajmi. Hanan bahjat salah. Noura Al-asmar..Ohood motlag owaimer.
Loops and Switches. 1. What kind of blocks are these? 2. Name two kinds of controls that can be specified to determine how long a loop repeats. 3. Give.
Robots and Computer Science Dr. Dakai Zhu Department of Computer Science, UTSA
Introduction to the Basic Parts of LEGO’s NXT Robotics
The George Washington University Electrical & Computer Engineering Department ECE 002 Dr. S. Ahmadi Class 2.
Liang, Introduction to Java Programming, Sixth Edition, (c) 2007 Pearson Education, Inc. All rights reserved Programming Languages Machine.
EV3 Workshop Oct 3, 2015 Instructor: Chris Cartwright
The George Washington University Department of ECE ECE 1010 Intro: Electrical & Computer Engineering –Introducing KIPR Link/Interface and Set-up –Continuation.
National Taiwan University Department of Computer Science and Information Engineering National Taiwan University Department of Computer Science and Information.
Sentry System Multiple Sensors
The George Washington University Department of ECE ECE Intro: Electrical & Computer Engineering Dr. S. Ahmadi Class 4.
Minds and Computers 2.1 The RCX l Hitachi H8/3297 series processor l 3 inputs/sensors (1, 2, 3) l 3 outputs/motors (A, B, C) l 32k RAM/ 16k ROM ä 12 kB.
The George Washington University Electrical & Computer Engineering Department ECE 002 Dr. S. Ahmadi Class3/Lab 2.
Oregon Robotics Tournament and Outreach Program RCX Basics.
Lesson 1: Motors and Sound Programming Solutions.
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.
MEH108 - Intro. To Engineering Applications KOU Electronics and Communications Engineering.
MEH108 - Intro. To Engineering Applications KOU Electronics and Communications Engineering.
ROBOTICS Jason Bell Brad Carlson
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.
Programming Design ROBOTC Software. Behavior-Based Programming A behavior is anything your robot does –Turning on a single motor or servo Three main types.
Overview: This lesson explores the NXT as a computer. It is intended to follow the "Introduction to Computers" lesson. Objectives: Students will be able.
The George Washington University Department of ECE ECE Intro: Electrical & Computer Engineering Dr. S. Ahmadi Class 4.
How Do You Make a Program Wait?
Programming Design ROBOTC Software Principles Of Engineering
Introduction to LEGO Mindstorms EV3 What is in the box?
NXT Mindstorms Kit Programming
Exploring Computer Science Lesson 6-5
Methods of Computer Input and Output
Deriving Consistency from LEGOs
Chapter 1 Introduction to Computers, Programs, and Java
Mindstorms EV3 Programming
By Sanjay and Arvind Seshan
Mindstorms EV3 Programming
MOBILE DEVICE OPERATING SYSTEM
Introducing KIPR Link/Interface and Set-up
Robot Soccer Challenge
Programming Design ROBOTC Software Computer Integrated Manufacturing
Mindstorms EV3 Programming
Loops and Switches Pre-Quiz
Module F: Presentation Understanding Robot Fundamentals
Robot Programming Computer Literacy S2.
Exploring Computer Science Lesson 6-5
Forward Until Touch Robot goes forward until it hits a wall.
Chapter 1 Introduction to Computers, Programs, and Java
The George Washington University Department of ECE ECE Intro: Electrical & Computer Engineering Dr. S. Ahmadi Class 5.
Programming Design ROBOTC Software Principles Of Engineering
Loops and Switches How Do You Make Loops and Switches? lesson > TeachEngineering.org Center for Computational Neurobiology, University of Missouri.
Team Project: A Surveillant Robot System
Compiled from various Internet sources Presented by Mr. Hatfield
LEGO Education - Mindstorms EV3 - Computer/control center – The Brick
Programming Design ROBOTC Software Principles of Engineering
Oregon Robotics Tournament and Outreach Program
Programming Robots using Java
Getting started with LEGO EV3 Mindstorms software
LEGO Mindstorms Robot and Java
LEGO MINDSTORMS NXT PROGRAMMING
AN INEXPENSIVE ROBOTIC KIT FOR CHILDREN EDUCATION
Presentation transcript:

Programming Robots using Java Community Partners Program Penn State Harrisburg December 10, 2008 Jane S. Kochanov

Welcome School of Business Administration B.S. in Information Systems College of Information Sciences and Technology B.S. in Information Sciences and Technology B.S. in Security and Risk Analysis

Information Technology Grad’s Business analysis consultant Business systems delivery specialist Certification and accreditation consultant Geospatial analyst GIS specialist Information systems engineer Information technology manager IT specialist IT threat and vulnerability manager Risk services consultant Security architecture analyst Software technology analyst Submarine warfare officer Systems integration associate Strategic architect Technology analyst Technology integration associate

http://marsrovers. jpl. nasa. gov/mission/spacecraft_surface_rover http://marsrovers.jpl.nasa.gov/mission/spacecraft_surface_rover.html

Roomba Intelligent Floorvac Robotic Vacuum Roomba 4100 Intelligent Floorvac Robotic Vacuum - Red. Dirt detection and infra-red cliff sensors. Auto adjusts to any floor surface 2-hour continuous cleaning Virtual wall for confining to designated area Rechargeable APS battery, 7-hour charger Measures 13 by 4 inches www.totalvac.com

Virtual Guard Dog It sports a digital camera, infrared sensors and videophone capability so absent homeowners can be notified of intruders. 280,000 yen ($2,600) contraption by Japanese robot maker Tmsuk Co. Ltd. and Sanyo Electric Co. Ltd. http://www.cnn.com/2005/TECH/ptech/06/02/roborior.ap/

Hospital Courier TUG 50 pounds Ferries linens, X-rays, drugs, food Made by Pittsburgh-based Aethon Uses wireless radios to call elevators or open automatic doors http://www.aethon.com

ASIMO Advanced Step in Innovative Mobility Humanoid Robot built by Honda Introduced in November 2000 ASIMO video

Java as a Platform Sun Microsystem has different Java sizes (virtual machines sizes) for devices with different capabilities Java 2 Enterprise Edition (J2EE) for big machines Java 2 Standard Edition (J2SE) Java 2 Micro Edition (J2ME) designed for use with memory-constrained devices Mobile phones, pagers, PDA’s JavaCard which is 4KB

LEGO Mindstorms Robot Robot Kit includes: RCX (Robotics Command Explorer) 2 Motors 2 touch sensors 1 light sensor USB infrared transmitter tower A “gazillion” lego parts to build a robot

LEGO Mindstorms Robot RCX runs on 6 AA batteries When batteries are low, battery icon with an “X” across it will appear in the display 3 gray ports labeled 1, 2, 3 Sensor ports 3 black ports labeled A, B, C Motor ports

LEGO Mindstorms Robot 4 buttons On-Off Run to execute and stop a loaded program Prgm to scroll through the loaded programs May load up to 5 programs at one time View allows you to view information on a sensor or motor

LEGO Mindstorms Robot Display Window A little person standing or running Indicates that a program is loaded or running respectively To the right of the little person, a number indicating which of 5 programs will be active when the Run program is pressed To the left of the little person, the Software Watch Shows program being downloaded. It counts units of 100 bytes, so a 3 Kb program counts up to ~ 30 Shows the voltage level of the battery

LEGO Java Operating System Provides a Java package to control the RCX: josx.platform.rcx.* Provides Java classes for working with the RCX features: Motors Sensors Display Sound Buttons IR tower

LEGO Java Operating System TextLCD class: Uses the display to show text messages. This class uses a great deal of memory. The letters are approximations since the display was originally intended for numbers. print (“text”) - prints the text on the LCD. Only the first five letters are displayed.

LEGO Java Operating System Motor class: Used to control the RCX output ports which control the motors. The class contains 3 static Motor instances, A, B, and C, which correspond to the 3 output ports. setPower(int) - sets the current power level of the motor from 0 to 7. backward( ) - moves the motor backwards. forward( ) - moves the motor forwards. stop( ) - stops the motor. reverseDirection( ) - no matter which way the motor is turning, it makes it turn the other way.

LEGO Java Operating System Sound class: The robot is able to play sounds for different tasks you might want to program playTone(int Frequency, int Duration) - - plays a tone in the range 1 - 20000 Hz given by Frequency. The tone is played for Duration: to play 1 second, use 100. It is truncated at 256, meaning that 2.56 seconds is the maximum duration possible.

LEGO Java Operating System systemSound(true/false, int Code ) – plays one of the predefined tones. Code Sound Short beep 1 Double beep 2 Descending arpeggio 3 Ascending arpeggio 4 Long low beep; error sound 5 Quick ascending arpeggio

LEGO Java Operating System Button class: Encapsules 3 RCX buttons View, Prgm, Run. You may call a static instance of each button using VIEW, PRGM, and RUN. waitForPressAndRelease( ) throws InterrupedException - wait until the button is released

Let’s Try Create a simple program together that: Displays a word to the LCD Start one motor Start the other motor Play a descending arpeggio before the motors start Run until the RUN button is pressed