Mobile Agents. Uwe Lämmel. Hochschule Wismar Wismar University of Technology, Business, and Design Business School. Mobile Agents LEGO RCX -1 -
|
|
- David Richards
- 6 years ago
- Views:
Transcription
1 Mobile Agents Hochschule Wismar Wismar University of Technology, Business, and Design Business School
2 Contents RCX-LEGO-Robot: The Hardware The LEGO Programming Environment Not Quite C and the Command Center Examples Agents and Robots Delphi and the RCX Java and the RCX -2 -
3 RCX The Hardware LEGO MINDSTORMS bit Hitachi H8 microprocessor 16K internal ROM 32K static RAM, 6K "user memory" only Firmware: bytecode interpreter -3 -
4 RCX - Components 3 input ports (sensors) light-, touch, temperature-, rotation- 3 output ports (motors) Infra red interface User interface: LCD display, 4 buttons On/Off, Prgm, Run, View Power supply: 6 x R6 : 6 x 1,5V = 9V sound (programmable) -4 -
5 The LEGO Programming Environment RIS - Robotic Invention System graphical programming environment simple statements O.K. for children -5 -
6 Not Quite C and the Command Centre RXC Command Center Mark Overmars, Dep. of Comp. Sc., Univ. Uetrecht Version 3.01, October 1999 NQC programming environment Direct control of the RCX Monitoring the RCX Bricx Command Center John Binder Enhanced Version of the RcxCC -6 -
7 NQC - Not Quite C Drive in a square #define Tahead 150 #define Tturn 198 #define Nrepeat 4 #define ML #define MR #define MM OUT_A OUT_C ML+MR task main() { repeat (Nrepeat) { SetPower(MM,4); OnFor(MM,Tahead); SetPower(ML,2); On(MR); Wait(Tturn); }// repeat Off(MM); }//main -7 -
8 Sensors in NQC SetSensor(SENSOR_1, SENSOR_TOUCH); // Defines sensor 1 as a touch sensor Sensor configuration Type Values ClearSensor() SENSOR_TOUCH touch 0 - not pressed / 1 - pressed no SENSOR_LIGHT light from 0 (dark) to 100 (bright) no SENSOR_ROTATION rotation 16 for one rotation yes SENSOR_CELSIUS temperature Celsius *10 no SENSOR_FAHRENHEIT temperature Fahrenheit * 10 no SENSOR_PULSE touch number of touches yes SENSOR_EDGE touch number of state transitions yes -8 -
9 task, function, subroutines Tasks - up to 10 tasks - a program must have a task main - activate a task : start name; - stop a task : stop name; Attention: task sensor_task( ) {... } start sensor_task; stop sensor_task; -9 -
10 task, function, subroutines Subroutines - up to 8 subroutines may be defined - Do not call a subroutine from different tasks! - If called from different tasks then we can not define local variables. - real subroutine, one code section only. - no parameters -10 -
11 task, function, subroutines Functions - "inline function" - not a real subroutine: each call to a function results in another copy of the code being included - Parameters possible: int by value const int by value only constants int& by reference only variables const int& by reference argument can not be changed -11 -
12 task, function, subroutines Makros text substitution definition of constant values grouping statements possible #define turn {Off(MM);OnFwd(MR); \ Wait(80); Off(MM);} - no parameters -12 -
13 Examples Go on a Line Obstacle detection by sending messages Thinking in Rules Where I am? Going on a squared world Synchronisation of Tasks Light Sensor and Fuzzy Variables -13 -
14 Go On a Line # define DARK 45 task main(){ SetSensor(SENSOR_2,SENSOR_LIGHT); while(true){ OnFwd(OUT_A+OUT_C); if (SENSOR_2<DARK){// dark-> turn to light Off(OUT_C); }; //if if (SENSOR_2>DARK){// bright -> turn to dark Off(OUT_A); }//if }//while }//main -14 -
15 Obstacle detection by sending messages #define Turn_left #define Turn_right {OnRev(ML);Wait(T_Turn);OnFwd(ML);} {OnRev(MR);Wait(T_Turn);OnFwd(MR);} task send_signal() { while(true){ SendMessage(SIGNAL); Wait(T_Signal);} } //send_signal task check_signal(){ while(true) { lastlevel = SENSOR_1; if(sensor_1 < lastlevel - RECEIVE) if (Random(2)==0) Turn_left; else Turn_right; }//if }//while }//check_signal -15 -
16 Values of the light sensor blue: 30 cm away from wall red: 15 cm away from wall Light sensor receives the sent messages -16 -
17 Thinking in Rules //-- Rule based programming task rulebase() { while (true) { if(ls<dark) // on a line - go ahead {stop search; state=0; OnFwd(MM);} if(tl==1 TR==1) // obstacle - turn back {stop search; back; state=0;} if(ls>dark && state==0) // off line-search {state=1; start search;} if(timer(0)>t_prog_max) // time over {Off(MM); StopAllTasks();} }//while }// rulebase -17 -
18 Where I am? Going on a squared world fixed start position see the lines sending coordinates correct direction -18 -
19 In a Squared World task mainloop() { while (true) { state=3; getnewcoordinates(); // while goal position not reached do while(ypos!=ydest XPos!=XDest) { setdirection(); turn(); horizontalline(); }//while goal not reeached goalreached(); }//while(true) }//mainloop -19 -
20 Squared World - Detecting a Line do{ //while until (state==1 state==2); // horizontal line if (state==1) {// right eye looks at the line i=0; // try to see the line with the other eye: while(sl<grey&&i<ncorrsteps) { OnFor(ML,T_corr); i++; } } // here the same for left eye looking at the line if (i==ncorrsteps){ // line not found go back and try again if (state==1) OnRev(ML); else OnRev(MR); Wait(T_turnback); OnRev(MM); Wait(T_back); state=0; } } while (i==ncorrsteps); // while line not found -20 -
21 Synchronisation of Tasks no synchronisation: every task controls the motors in parallel stopping tasks: only one task at a time controls the output a task starts always from the very beginning Using semaphores: motor control is synchronised suspension of task is programmed -21 -
22 No Synchronisation task main() { SetSensor(TS,SENSOR_TOUCH); start check_sensors; while (true) { OnFwd(MM); Wait(Tgo); // go a line OnRev(OUT_C); Wait(Tturn); }//while }//main // turn a right-angle task check_sensors() { while (true) { if (TS == 1) { // obstacle touched OnRev(MM); Wait(Tback);// going back OnFwd(OUT_A); Wait(Tturn);// turning OnFwd(OUT_C); }//if }//while }//check_sensors // Go ahead again -22 -
23 Stopping Tasks task move_square() { while (true) { OnFwd(MM); Wait(Tgo); // go a line OnRev(OUT_C); Wait(Tturn); }//while }//main // turn right-angle task check_sensors() { while (true) { if (TS == 1) { // obstacle touched stop move_square; OnRev(MM); Wait(Tback);// going back OnFwd(OUT_A); Wait(Tturn);// turning OnFwd(OUT_C); // Go ahead again start move_square; }//if }//while }//check_sensors -23 -
24 Semaphore task move_square() { while (true) { until (sem==0); sem=1; OnFwd(MM); sem=0; Wait(Tgo); until (sem==0); sem=1; OnRev(OUT_C); sem=0; Wait(Tturn); // turn }//while }//main // wait for access // go a line // wait for access task check_sensors() { while (true) { if (TS == 1) { // obstacle touched until (sem==0); sem=1; // wait for motor access OnRev(MM); Wait(Tback); // going back OnFwd(OUT_A); Wait(Tturn); sem=0; }//if }//while }//check_sensors // turn -24 -
25 Light Sensor and Fuzzy Variables Fuzzy-values for different grounds 1,00 0,80 0,60 0,40 0,20 white area green line black line black area 0,
26 What is a Robot? Illustrated oxford Dictionary, Oxford, 1998: a machine with a human appearance or function like a human a machine capable of carrying out a complex series of action automatically a person who works mechanically and efficiently but insensitively -26 -
27 A robot A brain controls actions and responds to sensor signals. A body holds all the parts together. Actuators allow the robot to move. Sensors give information about the environment. A power source. Mobile robots: tethered autonomous -27 -
28 Delphi and LEGO-OCX LEGO MINDSTORMS Software Developer Kit Spirit.OCX install Spirit.OCX into Delphi Use a TSpiritCtrl object in an application: myrobot : TSpiritCtrl; -28 -
29 Drive in a Square using Delphi-OCX procedure TLEGOMAIN.DownLoadProgButtonClick(Sender: TObject);... begin myrobot.selectprgm(prog2); myrobot.beginoftask(mytask); myrobot.setpower('motor0motor2',con,4); myrobot.setfwd('motor0motor2'); myrobot.loop(con,4); myrobot.on_('motor0motor2'); myrobot.wait(con,tahead); myrobot.off('motor0motor2'); myrobot.on_('motor0'); myrobot.wait(con,tturn); myrobot.endloop(); myrobot.endoftask; end; -29 -
30 import josx.platform.rcx.*; public class Distance { public static boolean go=true; public static void main(string[ ] args){... SendSignal sender = new SendSignal(); Watcher see sender.start(); see.start(); }//main }//Distance = new Watcher(); lejos Program class SendSignal extends Thread { static final byte[ ] message = {-1}; public SendSignal(int millisec) {... } public void run() { while (Distance.go) { Serial.sendPacket(message, 0, 1);... }//while }//run }//SendSignal -30 -
31 lejos-api: class summary -31 -
32 lejos Java for the RCX Java-based operating system (~16k) programs: > lejosfirmdl // download the lejos-firmware > lejosc // Java-Compiler, uses jdk > lejos // download a program into the RCX needs: JDK Java Communcations API Include lejos path into PATH variable SET RCXTTY=COM1-32 -
33 lejos extension of TinyVM TinyVM Object oriented language (Java) Preemptive threads (tasks) Arrays, including multi-dimensional ones Recursion Synchronization Exceptions lejos A Windows version Floating point operations (doubles truncated to 32 bits) String constants Casting of longs to ints and vice versa Marks references in the stack (garbage collection possible) Multi-program downloading java.lang.math sin, cos, tan, atan,
Programming robots with NQC
Programming robots with NQC Eric Martin School of Computer Science and Engineering University of New South Wales Sydney, Australia ENGG1000 (2007) Programming robots with NQC CSE, UNSW 1 / 75 Acknowledgments
More informationSchool of Computer Science and Engineering The Uno cial Guide to Lego Mindstorms Robots
Acknowledgments Programming robots with NQC This presentation borrows material from two sources: A tutorial on NQC by Mark Overmars, entitled Programming Lego Robots using NQC, Eric Martin which is available
More informationProgramming Lego Robots using NQC
Programming Lego Robots using NQC William J. Taffe November 2002 Modified from the tutorial originally written by Mark Overmars (Version 3.03, Oct 2, 1999) Preface The Lego MindStorms kits are wonderful
More informationProgramming Lego Robots using NQC
Programming Lego Robots using NQC (Version 3.04, Feb 14, 2002) by Mark Overmars (revisions by John Hansen) Department of Computer Science Utrecht University P.O. Box 80.089, 3508 TB Utrecht the Netherlands
More informationComputers in Engineering Lab #2 Maze Treasure Searching
Computers in Engineering Lab #2 Maze Treasure Searching Objective The objective of this lab project is to program the robot to tracking the maze. The goal is to pick up all the silver treasure in the maze.
More informationRobotic Behaviors What makes a robot a robot? It is the ability of the robot to independently accomplish complex tasks. Being able to independently
Robotic Behaviors What makes a robot a robot? It is the ability of the robot to independently accomplish complex tasks. Being able to independently do things is commonly thought of as a sign of intelligence.
More informationHands-on Lab. Lego Programming BricxCC Basics
Hands-on Lab Lego Programming BricxCC Basics This lab reviews the installation of BricxCC and introduces a C-like programming environment (called NXC) for the Lego NXT system. Specific concepts include:
More informationSSP ROBOT DESIGN A. DEAN 11/29/05 LAB: ROBOT OBJECTS IN LEJOS
SSP 100.9 ROBOT DESIGN A. DEAN 11/29/05 LAB: ROBOT OBJECTS IN LEJOS As we saw in class last Tuesday (well, as at least a few of us saw the rest should check the web for the slides), everything in Java
More informationXS: Lisp on Lego MindStorms
XS: Lisp on Lego MindStorms Taiichi Yuasa Graduate School of Informatics, Kyoto University Kyoto 606-8501, Japan yuasa@kuis.kyoto-u.ac.jp ABSTRACT We present a Lisp system XS which is designed to control
More informationNon-Portable C-Language for Microcontroller Applications
Session 3547 Non-Portable C-Language for Microcontroller Applications Stephanie Goldberg Department of Technology Buffalo State College Abstract A previous goal of the microprocessor/microcontroller class
More informationFun with Java Technology on Lego Mindstorms
Speaker logo centered below photo Fun with Java Technology on Lego Mindstorms Roger Glassey University of California, Berkeley Andy Shaw Sun Microsystems LEGO, the LEGO logo, MINDSTORMS, the Brick and
More informationPROGRAMMING ROBOTS AN ABSTRACT VIEW
ROBOTICS AND AUTONOMOUS SYSTEMS Simon Parsons Department of Computer Science University of Liverpool LECTURE 3 comp329-2013-parsons-lect03 2/50 Today Before the labs start on Monday, we will look a bit
More informationwhat is an algorithm? analysis of algorithms classic algorithm example: search
event-driven programming algorithms event-driven programming conditional execution robots and agents resources: cc3.12/cis1.0 computing: nature, power and limits robotics applications fall 2007 lecture
More informationUnified Computers & Programming Installation Instructions for Windows
Unified Computers & Programming Installation Instructions for Windows IMPORTANT INSTALLATION NOTE: The USB IR Tower has been known to cause Windows computers to crash if plugged in for prolonged periods.
More informationMaSH Environment nxt. Contents
MaSH Environment nxt Andrew Rock School of Information and Communication Technology Griffith University Nathan, Queensland, 4111, Australia a.rock@griffith.edu.au January 2, 2016 Contents 1 Purpose 3 2
More informationGeneration of NXC code for control programs
Generation of NXC code for control programs Thao Dang VERIMAG, CNRS (France) NXC Overview The NXT has a bytecode interpreter (provided by LEGO), which can be used to execute programs. The NXC compiler
More informationINTRODUCTION TO ARTIFICIAL INTELLIGENCE
DATA15001 INTRODUCTION TO ARTIFICIAL INTELLIGENCE THE FINAL EPISODE (11): ROBOTICS TODAY S MENU 1. "GRAND CHALLENGE" 2. LEGO MIND- STORMS 3. ROBO WORKSHOPS ROBOTICS AS A "GRAND CHALLENGE" OF AI actuators:
More informationFinal Report. [Establish User Requirements] User must be able to press the run button on the robot, as well as use the NQC software.
Team 3 David Letteer Greg Broadwell Kathryn della Porta BE 1200 Basic Engineering Final Report Final Report [Clarify Objectives] Design, build, and program a robot that will acknowledge the presence of
More informationRCX Tutorial. Commands Sensor Watchers Stack Controllers My Commands
RCX Tutorial Commands Sensor Watchers Stack Controllers My Commands The following is a list of commands available to you for programming the robot (See advanced below) On Turns motors (connected to ports
More informationROBOLAB Tutorial MAE 1170, Fall 2009
ROBOLAB Tutorial MAE 1170, Fall 2009 (I) Starting Out We will be using ROBOLAB 2.5, a GUI-based programming system, to program robots built using the Lego Mindstorms Kit. The brain of the robot is a microprocessor
More informationWhy robotics in Education? DEI The University of Padova
Why robotics in Education? DEI The University of Padova Why robotics in Education? A Picture Is Worth A Thousand Words Why robotics in Education? Emotional engagement Interaction with physical devices
More informationBaggage Sorting Facility
02224 Modelling and Analysis of Real-Time Systems Spring 2018 1 Overview Mandatory Assignment 1 Baggage Sorting Facility This assignment deals with a baggage sorting facility such as the ones found in
More informationRelationship of class to object
Relationship of class to object Writing and programming Writing a program is similar to many other kinds of writing. The purpose of any kind of writing is to take your thoughts and let other people see
More informationPart A: Monitoring the Touch Sensor and Ultrasonic Sensor
LEGO MINDSTORMS NXT Lab 2 This lab introduces the touch sensor and ultrasonic sensor which are part of the Lego Mindstorms NXT kit. The ultrasonic sensor will be inspected to gain an understanding of its
More informationWe are IntechOpen, the world s leading publisher of Open Access books Built by scientists, for scientists. International authors and editors
We are IntechOpen, the world s leading publisher of Open Access books Built by scientists, for scientists 3,500 108,000 1.7 M Open access books available International authors and editors Downloads Our
More informationPatterns, frameworks & Lejos: part 1: Behavior control
Patterns, frameworks & Lejos: part 1: Behavior control How robots are like insects Insects are highly successful in the world, managing to perform the necessary functions of life despite the fact that
More informationINDEX. A SIMPLE JAVA PROGRAM Class Declaration The Main Line. The Line Contains Three Keywords The Output Line
A SIMPLE JAVA PROGRAM Class Declaration The Main Line INDEX The Line Contains Three Keywords The Output Line COMMENTS Single Line Comment Multiline Comment Documentation Comment TYPE CASTING Implicit Type
More informationRoboStamp Basic Software (A tutorial by Technotutorz)
RoboStamp Basic Software (A tutorial by ) The Robostamp robotic kit is one of the robots used as standard in the workshops. Two versions can be built up: the izebot and the RoboTank. The Robostamp can
More informationToday. Robotics and Autonomous Systems. The scenario (again) Basic control loop
Today Robotics and Autonomous Systems Lecture 3 Programming robots Richard Williams Department of Computer Science University of Liverpool Before the labs start on Monday, we will look a bit at programming
More informationInstructions For Constructing A Braitenberg Vehicle 2 Robot From LEGO Mindstorms Components
Instructions For Constructing A Braitenberg Vehicle 2 Robot From LEGO Mindstorms Components Michael R.W. Dawson, Biological Computation Project, University of Alberta, Edmonton, Alberta September, 2003
More informationTic-Tac-LEGO: An Investigation into Coordinated Robotic Control
Tic-Tac-LEGO: An Investigation into Coordinated Robotic Control Ruben Vuittonet and Jeff Gray Department of Computer and Information Sciences University of Alabama at Birmingham Birmingham, AL 35294 USA
More informationTinyVM: User's Guide
TinyVM (Java for Lego RCX) - User's Guide Page 1 of 3 TinyVM: User's Guide The information in this guide may only apply to the latest version of TinyVM Unix Edition. For the Cross-Platform Edition, please
More informationTeam Project: A Surveillant Robot System
Team Project: A Surveillant Robot System Status Report : 04/05/2005 Little Red Team Chankyu Park (Michael) Seonah Lee (Sarah) Qingyuan Shi (Lisa) Chengzhou Li JunMei Li Kai Lin Agenda Problems Team meeting
More informationLego Robots and Software Design. CITS1220 Software Engineering
Lego Robots and Software Design CITS1220 Software Engineering Lecture Overview 1. Designing NXT Robots 2. NXT Hardware 3. Sensors and Actuator API 4. The Behaviour Interface 2 Software Design is a problem-solving
More informationCMP 108: Programming for Non-Majors
CMP 108: Programming for Non-Majors Lecture Notes 9 February 2007 Prof. Katherine St. John Lehman College & the Graduate Center City Universtity of New York Katherine St. John City University of New York
More informationNQC Programmer's Guide
Version 2.5 a4 by Dave Baum Contents 1 Introduction... 1 2 The NQC Language... 2 2.1 Lexical Rules... 2 2.1.1 Comments... 2 2.1.2 Whitespace... 3 2.1.3 Numerical Constants... 3 2.1.4 Identifiers and Keywords...
More informationRobotics and Autonomous Systems
Robotics and Autonomous Systems Lecture 13: Navigation in LeJOS Richard Williams Department of Computer Science University of Liverpool 1 / 40 Today From navigation to motion control. 2 / 40 Navigation
More informationAn Introduction to the Lego Mindstorms
Abstract An Introduction to the Lego Mindstorms Daniel Cliburn Assistant Professor Mathematics and Computer Science Hanover College Box 890 Hanover, IN 47243 (812) 866 7286 cliburn@hanover.edu http://www2.hanover.edu/cliburn
More informationIntro to Programming the Lego Robots
Intro to Programming the Lego Robots Hello Byng Roboticists! I'm writing this introductory guide will teach you the basic commands to control your Lego NXT Robots. Keep in mind there are many more commands
More informationMS4SSA Robotics Module:
Robotics Module: Programming and Sensors Kim Hollan Why Program a Robot? Building a robot teaches many valuable skills; however, the learning doesn t stop there Programming also teaches valuable life skills
More informationAgreement. Objectives. General Guidelines for Labs. Reading Assignment
1 CMPSC 111 Introduction to Computer Science I Fall 2016 Janyl Jumadinova Lab 9 for Section 1 17 November 2016 Due: 1 December, by 2:30 pm This is a team-based assignment. You have to work in teams of
More informationWorkshop Swarm robotics Reactive control of LEGO robots with MDL2e. Thomas Schamm
Workshop Swarm robotics Reactive control of LEGO robots with MDL2e Thomas Schamm 23.05.2006 A look on the structure of the presentation Project SIMON Behaviour based robot control LEGO robot pros and cons
More informationProject from Real-Time Systems Lego Mindstorms EV3
Project from Real-Time Systems March 13, 2017 Lego Mindstorms manufactured by LEGO, http://mindstorms.lego.com extension of LEGO Technic line history: RCX, 1998 NXT, 2006; NXT 2.0, 2009 EV3, 2013 why LEGO?
More informationLEGO Mindstorm EV3 Robots
LEGO Mindstorm EV3 Robots Jian-Jia Chen Informatik 12 TU Dortmund Germany LEGO Mindstorm EV3 Robot - 2 - LEGO Mindstorm EV3 Components - 3 - LEGO Mindstorm EV3 Components motor 4 input ports (1, 2, 3,
More informationROBOLAB Reference Guide
ROBOLAB Reference Guide Version 1.2 2 Preface: Getting Help with ROBOLAB ROBOLAB is a growing application for which users can receive support in many different ways. Embedded in ROBOLAB are context help
More informationAn Undergraduate Course in Robotics & Machine Intelligence
An Undergraduate Course in Robotics & Machine Intelligence B.A. Juliano & R.S. Renner Institute for Research in Intelligent Systems California State University, Chico 400 West First Street Chico, CA 95929
More informationNot Quite C Compiler version 1.0 b1
Not Quite C Compiler version 1.0 b1 Introduction NQC is a simple language for programming the LEGO RCX. The preprocessor and control structures of NQC are very similar to C. NQC is not a general purpose
More informationEEL 5666C FALL Robot Name: DogBot. Author: Valerie Serluco. Date: December 08, Instructor(s): Dr. Arroyo. Dr. Schwartz. TA(s): Andrew Gray
EEL 5666C FALL 2015 Robot Name: DogBot Author: Valerie Serluco Date: December 08, 2015 Instructor(s): Dr. Arroyo Dr. Schwartz TA(s): Andrew Gray Jacob Easterling INTRODUCTION ABSTRACT One of the fun things
More informationCOMP 250 Winter 2011 Reading: Java background January 5, 2011
Almost all of you have taken COMP 202 or equivalent, so I am assuming that you are familiar with the basic techniques and definitions of Java covered in that course. Those of you who have not taken a COMP
More informationUsing lejos communication for games
Using lejos communication for games Timo Paukku Dinnesen (timo@daimi.au.dk) University of Aarhus Aabogade 34, 8200 Aarhus N, Denmark June 3, 2005 1 Contents 1 Introduction 3 2 Game communication 3 3 The
More informationTechnical Aspects of Multimodal System Dept. Informatics, Faculty of Mathematics, Informatics and Natural Sciences University of Hamburg
Praktikum: 3 Telebot: first try Lecturers Houxiang Zhang Manfred Grove TAMS, Department t of Informatics, Germany @Tams/hzhang Institute TAMS Technical Aspects of Multimodal Systems http://tams-www.informatik.uni-hamburg.de/hzhang
More informationIntroduction to Lab 2
Introduction to Lab 2 Programming in RTOS using LEGO Mindstorms Martin Stigge 9. November 2009 Martin Stigge Lab 2: LEGO 9. November 2009 1 / 20 Lab 2:
More informationPraktikum: 2. Content of today s lecture. Content of today s lecture. Houxiang Zhang Manfred Grove
18.272 Praktikum: 2 Lego Mindstorms experience, Germany @Lego Institute TAMS s http://tams-www.informatik.uni-hamburg.de/hzhang 1 Institute TAMS s http://tams-www.informatik.uni-hamburg.de/hzhang 2 Content
More informationHands-on Lab. Lego Programming BricxCC Basics
Hands-on Lab Lego Programming BricxCC Basics This lab reviews the installation of BricxCC and introduces a C-like programming environment (called NXC) for the Lego NXT system. Specific concepts include:
More information1. What is the name of the control unit in Robotics? a. R2D2 b. MSN c. Pilot d. XJ7 e. RCX
Quiz Name: Robotics Pilot/ Inventor Quiz Teacher: Mr. Famighetti Class: Robotics Instructions: Choose the best answer. Work with the members of your team only! 1. What is the name of the control unit in
More informationControlling LEGO R EV3 robots with Prolog
Controlling LEGO R EV3 robots with Prolog Sibylle Schwarz, Mario Wenzel Hochschule für Technik, Wirtschaft und Kultur Leipzig Fakultät für Informatik, Mathematik und Naturwissenschaften {sibylle.schwarz,mario.wenzel}@htwk-leipzig.de
More informationNavigation and path execution NAVIGATION IN LEJOS ROBOTICS AND AUTONOMOUS SYSTEMS. Today. Digging into the detail of how you do the last two.
ROBOTICS AND AUTONOMOUS SYSTEMS Simon Parsons Department of Computer Science University of Liverpool LECTURE 13 comp329-2013-parsons-lect13 2/43 Today From navigation to motion control. NAVIGATION IN LEJOS
More informationPrototype Prolog API for Mindstorms NXT
Prototype Prolog API for Mindstorms NXT Grzegorz J. Nalepa 1 Institute of Automatics, AGH University of Science and Technology, Al. Mickiewicza 30, 30-059 Kraków, Poland gjn@agh.edu.pl Abstract. The paper
More informationCOMP 250: Java Programming I. Carlos G. Oliver, Jérôme Waldispühl January 17-18, 2018 Slides adapted from M. Blanchette
COMP 250: Java Programming I Carlos G. Oliver, Jérôme Waldispühl January 17-18, 2018 Slides adapted from M. Blanchette Variables and types [Downey Ch 2] Variable: temporary storage location in memory.
More informationUnit 03 Tutorial 3: Sensors: Touch Sensor Brighton H.S Engineering By: Matthew Jourden
Unit 03 Tutorial 3: Sensors: Touch Sensor Brighton H.S Engineering By: Matthew Jourden Robots have a variety of sensors that help the machine sense the world around it. We will be looking at four different
More informationUSB. Bluetooth. Display. IO connectors. Sound. Main CPU Atmel ARM7 JTAG. IO Processor Atmel AVR JTAG. Introduction to the Lego NXT
Introduction to the Lego NXT What is Lego Mindstorm? Andreas Sandberg A kit containing: A Lego NXT computer 3 motors Touch sensor Light sensor Sound sensor Ultrasonic range
More informationMcGill University School of Computer Science COMP-202A Introduction to Computing 1
McGill University School of Computer Science COMP-202A Introduction to Computing 1 Midterm Exam Thursday, October 26, 2006, 18:00-20:00 (6:00 8:00 PM) Instructors: Mathieu Petitpas, Shah Asaduzzaman, Sherif
More informationFundamentals of Programming Data Types & Methods
Fundamentals of Programming Data Types & Methods By Budditha Hettige Overview Summary (Previous Lesson) Java Data types Default values Variables Input data from keyboard Display results Methods Operators
More informationLEGO P-brick Script Code Language
LEGO P-brick Script Code Language 2000 LEGO Company Page 1 of 20 Table of contents 1 LEGO P-brick Script code specification...3 1.1 Program structures... 3 1.2 Macros... 6 1.3 Control structures... 7 1.4
More informationPace University. Fundamental Concepts of CS121 1
Pace University Fundamental Concepts of CS121 1 Dr. Lixin Tao http://csis.pace.edu/~lixin Computer Science Department Pace University October 12, 2005 This document complements my tutorial Introduction
More informationRIS version 2.0 Software Training Lab
RIS version 2.0 Software Training Lab Version 0.9 September 6, 2002 By Joel Stone www.hightechkids.org About the Author This document was written by Joel Stone, an FLL coach who wanted to pass on his
More informationRobotics II. Module 1: Introduction to Data & Advanced Programming Blocks
Robotics II Module 1: Introduction to Data & Advanced Programming Blocks PREPARED BY Academic Services Unit December 2011 Applied Technology High Schools, 2011 Module 1: Introduction to Data & Advanced
More informationActivity Basic Inputs Programming - VEX Clawbot
Activity 3.1.3 Basic Inputs Programming - VEX Clawbot Introduction Inputs are devices which provide a processor with environmental information to make decisions. These devices have the capacity to sense
More informationRobotics Study Material School Level 1 Semester 2
Robotics Study Material School Level 1 Semester 2 Contents UNIT-3... 4 NXT-PROGRAMMING... 4 CHAPTER-1... 5 NXT- PROGRAMMING... 5 CHAPTER-2... 6 NXT-BRICK PROGRAMMING... 6 A. Multiple choice questions:...
More informationComputer Science AP 2017 Summer Assignment Mrs. McFarland
Computer Science AP 2017 Summer Assignment Mrs. McFarland Read Chapter 1 from the book Think Java: How to Think Like a Computer Scientist by Allen B. Downey. I have included Chapter 1 in this pdf. If you
More informationWIZ-PRO2 CURRICULUM HIGHLIGHTS
WIZ-PRO2 CURRICULUM HIGHLIGHTS STEM Learning and Advanced Robotics (ages 9-11) Develop more advanced programming skills, create programs using lines of code in Scratch, use more powerful robotics components
More informationRobot Practical Course
64-272 Robot Practical Course http://tams-www.informatik.uni-hamburg.de/ lectures/2013ss/praktikum/robot_practical_course/ Manfred Grove, Ben Adler University of Hamburg Faculty of Mathematics, Informatics
More informationLEGO RCX Hitachi H8/3292
LEGO RCX Hitachi H8/3292 LISHA/UFSC Fauze Valério Polpeta Prof. Dr. Antônio Augusto Fröhlich {fauze guto}@lisha.ufsc.br http://www.lisha.ufsc.br/~{fauze guto} March 2003 March 2003 http://www.lisha.ufsc.br
More informationIntroduction to Robotics using Lego Mindstorms EV3
Introduction to Robotics using Lego Mindstorms EV3 Facebook.com/roboticsgateway @roboticsgateway Robotics using EV3 Are we ready to go Roboticists? Does each group have at least one laptop? Do you have
More informationCOMP6700/2140 JDK Tools
COMP6700/2140 JDK Tools Alexei B Khorev and Joshua Milthorpe Research School of Computer Science, ANU February 2017 Alexei B Khorev and Joshua Milthorpe (RSCS, ANU) COMP6700/2140 JDK Tools February 2017
More informationCSCI 111 Midterm 1, version A Exam Fall Solutions 09.00am 09.50am, Tuesday, October 13, 2015
QUEENS COLLEGE Department of Computer Science CSCI 111 Midterm 1, version A Exam Fall 2015 10.13.15 Solutions 09.00am 09.50am, Tuesday, October 13, 2015 Problem 1 Write a complete C++ program that does
More informationlab A.3: introduction to RoboLab vocabulary materials cc30.03 Brooklyn College, CUNY c 2006 Name: RoboLab communication tower canvas icon
cc30.03 Brooklyn College, CUNY c 2006 lab A.3: introduction to RoboLab Name: vocabulary RoboLab communication tower canvas icon drag-and-drop function palette tools palette program algorithm syntax error
More informationChapter. Focus of the Course. Object-Oriented Software Development. program design, implementation, and testing
Introduction 1 Chapter 5 TH EDITION Lewis & Loftus java Software Solutions Foundations of Program Design 2007 Pearson Addison-Wesley. All rights reserved Focus of the Course Object-Oriented Software Development
More informationLME Software Block Quick Reference 1. Common Palette
LME Software Block Quick Reference Common Palette Move Block Use this block to set your robot to go forwards or backwards in a straight line or to turn by following a curve. Define how far your robot will
More informationTHREADS AND MULTITASKING ROBOTS
ROBOTICS AND AUTONOMOUS SYSTEMS Simon Parsons Department of Computer Science University of Liverpool LECTURE 10 comp329-2013-parsons-lect10 2/37 Today Some more programming techniques that will be helpful
More informationROBOTICS AND AUTONOMOUS SYSTEMS
ROBOTICS AND AUTONOMOUS SYSTEMS Simon Parsons Department of Computer Science University of Liverpool LECTURE 10 THREADS AND MULTITASKING ROBOTS comp329-2013-parsons-lect10 2/37 Today Some more programming
More informationmi:node User Manual Element14 element14.com/minode 1 User Manual V3.1
mi:node User Manual Element14 element14.com/minode 1 Table of Contents 1) Introduction... 3 1.1 Overview... 3 1.2 Features... 3 1.3 Kit Contents... 3 2) Getting Started... 5 2.1 The Connector Board...
More informationIntroduction to Mechatronics
Introduction to Mechatronics Discover robots with the Lego Mindstorms Loïc Cuvillon, Bernard Bayle Ecole Nationale Supérieure de Physique de Strasbourg Strasbourg University March 30, 2012 Introduction
More informationIntroduction to Programming (Java) 2/12
Introduction to Programming (Java) 2/12 Michal Krátký Department of Computer Science Technical University of Ostrava Introduction to Programming (Java) 2008/2009 c 2006 2008 Michal Krátký Introduction
More informationRobotics with Lego EV3 + MS Makecode. Andrea Sterbini
Robotics with Lego Andrea Sterbini sterbini@di.uniroma1.it Microsoft Makecode.com Many development systems supported (embedded/robotics/game) micro:bit Adafruit Minecraft Lego EV3 Cue Arcade Chibi chip
More informationAn overview of Java, Data types and variables
An overview of Java, Data types and variables Lecture 2 from (UNIT IV) Prepared by Mrs. K.M. Sanghavi 1 2 Hello World // HelloWorld.java: Hello World program import java.lang.*; class HelloWorld { public
More informationLecture 1: Overview of Java
Lecture 1: Overview of Java What is java? Developed by Sun Microsystems (James Gosling) A general-purpose object-oriented language Based on C/C++ Designed for easy Web/Internet applications Widespread
More informationBuilding Java Programs. Introduction to Programming and Simple Java Programs
Building Java Programs Introduction to Programming and Simple Java Programs 1 A simple Java program public class Hello { public static void main(string[] args) { System.out.println("Hello, world!"); code
More information17 Statement: assignment statement: assigning an expression value 18 Age next year 19 Type: String: conversion: from int 21 Age next year 22 The full
List of Slides 1 Title 2 Chapter 3: Types, variables and expressions 3 Chapter aims 4 Section 2: Example:Age next year 5 Aim 6 Design: hard coding 7 Age next year 8 Type 9 Type: int 10 Variable 11 Variable:
More informationObjectives. Problem Solving. Introduction. An overview of object-oriented concepts. Programming and programming languages An introduction to Java
Introduction Objectives An overview of object-oriented concepts. Programming and programming languages An introduction to Java 1-2 Problem Solving The purpose of writing a program is to solve a problem
More informationPart A: Monitoring the Rotational Sensors of the Motor
LEGO MINDSTORMS NXT Lab 1 This lab session is an introduction to the use of motors and rotational sensors for the Lego Mindstorm NXT. The first few parts of this exercise will introduce the use of the
More informationOpen and respond to this poll: PollEv.com/comp110. Calling Methods Mr. Roboto
Open and respond to this poll: PollEv.com/comp110 Lecture 1 Calling Methods Mr. Roboto Fall 2016 Special thanks to Dr. Andy van Dam, my grad school advisor, and Brown s CS15 course for this fantastic method
More informationThe Java Language The Java Language Reference (2 nd ed.) is the defining document for the Java language. Most beginning programming students expect
The Java Language The Java Language Reference (2 nd ed.) is the defining document for the Java language. Most beginning programming students expect such a document to be totally beyond them. That expectation
More informationArduino Uno. Power & Interface. Arduino Part 1. Introductory Medical Device Prototyping. Digital I/O Pins. Reset Button. USB Interface.
Introductory Medical Device Prototyping Arduino Part 1, http://saliterman.umn.edu/ Department of Biomedical Engineering, University of Minnesota Arduino Uno Power & Interface Reset Button USB Interface
More informationEV3 Programming Workshop for FLL Coaches
EV3 Programming Workshop for FLL Coaches Tony Ayad 2017 Outline This workshop is intended for FLL coaches who are interested in learning about Mindstorms EV3 programming language. Programming EV3 Controller
More informationCrash Course in Java. Why Java? Java notes for C++ programmers. Network Programming in Java is very different than in C/C++
Crash Course in Java Netprog: Java Intro 1 Why Java? Network Programming in Java is very different than in C/C++ much more language support error handling no pointers! (garbage collection) Threads are
More information3. Java - Language Constructs I
Educational Objectives 3. Java - Language Constructs I Names and Identifiers, Variables, Assignments, Constants, Datatypes, Operations, Evaluation of Expressions, Type Conversions You know the basic blocks
More informationintroduction to RoboCupJunior Rescue vocabulary materials
robotics.edu agents lab, Brooklyn College, CUNY c 2007 http://agents.sci.brooklyn.cuny.edu/robotics.edu introduction to RoboCupJunior Rescue Name: vocabulary task multi-tasking hardware conflicts obstacle
More informationIntroduction to Lab 2
Introduction to Lab 2 Programming in RTOS on LEGO Mindstorms Jakaria Abdullah 9 September 2015 Jakaria Abdullah Lab 2: LEGO 9 September 2015 1 / 21 Lab 2: Programming in RTOS using LEGO Mindstorms Lab
More informationGeneral Syntax. Operators. Variables. Arithmetic. Comparison. Assignment. Boolean. Types. Syntax int i; float j = 1.35; int k = (int) j;
General Syntax Statements are the basic building block of any C program. They can assign a value to a variable, or make a comparison, or make a function call. They must be terminated by a semicolon. Every
More information