Introducing KIPR Link/Interface and Set-up

Slides:



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

Getting started with LEGO NXT Mindstorms software This is intended to be a short introduction to the LEGO Mindstorms software and programming the LEGO.
Engineering Roles We will be forming groups of 3 students
Automation and Robotics
Handy Board. Why the Handy Board Designed to be the controller of small, mobil robots Has many features that make it ideal for robotics projects –Integrated.
The George Washington University Electrical & Computer Engineering Department ECE 002 Dr. S. Ahmadi Lab 1.
Photos and Sensor Instructions
Connecting VEX and ROBOTC
Efficient Path Determining Robot Jamie Greenberg Jason Torre.
Efficient Path Determining Robot RIT Computer Engineering Senior Design Project Jamie Greenberg Jason Torre October 26, 2004 A motorized robot will navigate.
Introduction to Arduino Prepared by R. Lamond.  “Arduino is an open-source electronics prototyping platform based on flexible, easy- to-use hardware.
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.
ECE 1020 FINAL PRESENTATION TA: Allen Guan and Sibel Ahmed Shehzad Mufti.
Program ultrasonic range sensor in autonomous mode
The George Washington University Electrical & Computer Engineering Department ECE 002 Dr. S. Ahmadi Class 1.
The George Washington University Electrical & Computer Engineering Department ECE 002 Dr. S. Ahmadi Class 2.
Lego Robot Construction Project. Adam, Roger, Lu, Riana, Paul.
Members (from left to right): Rachel Bevill, Brae Bower, Samantha Cherbonneau, Professor Ahmadi, Anthony Contreras.
The George Washington University Department of ECE ECE Intro: Electrical & Computer Engineering Dr. S. Ahmadi Class 3.
Introduction to Robo Pro
Forging new generations of engineers
Robot Building Lab: Introduction Lab 1 The Handy Board and Interactive-C (IC) es/robotlab/labs/lab1.ps.
7.2 V battery pack and charger Put the battery in the charger station at the end of the lab. period. Red light indicates charging. Ken Youssefi Introduction.
EV3 Workshop Oct 3, 2015 Instructor: Chris Cartwright
The George Washington University Department of ECE ECE Intro: Electrical & Computer Engineering –Intro to the Robotics –Introducing the IC –Discuss.
The George Washington University Department of ECE ECE 1010 Intro: Electrical & Computer Engineering –Introducing KIPR Link/Interface and Set-up –Continuation.
Jim Ng 15/1/2014 CENG4480 TUTORIAL 1. ABOUT ME Current MPhil Student supervised by Prof. Mak You can find me at Rm116 in SHB
The Handy Board Bryan Valentini General Robotics 2003.
Xtreme Robot Olympiad Programming Basics Dr. Peter Laz Associate Professor Department of Engineering University of Denver.
The George Washington University Department of ECE ECE Intro: Electrical & Computer Engineering Dr. S. Ahmadi Class 4.
Erin Halseth, Will Gottschalk, Briana Warschun, and Michaella Gaines
Engineering H193 - Team Project Gateway Engineering Education Coalition Lab 1P. 1Spring Quarter Introduction to Sensors Lab 1.
ECE Project 1 Overview. Project Description The aim of this project is to design a robot that moves along a given path, from the Start point, towards.
The George Washington University Department of ECE ECE Intro: Electrical & Computer Engineering Dr. S. Ahmadi Class 4/Lab3.
The George Washington University Electrical & Computer Engineering Department ECE 002 Dr. S. Ahmadi Class3/Lab 2.
ECE 002 Robots and Sensors Group 14. Objectives Research sensors and their usefulness to analyze data Research sensors and their usefulness to analyze.
Programming - Motion Intro to Robotics. Motors and Sensors Setup The first thing we need to do is tell ROBOTC that we have motors on our robot. Choose.
The George Washington University Electrical & Computer Engineering Department Dr. S. Ahmadi Class 3.
Automation and Robotics.  First you select the platform type so that you can use Natural Language PLTW.
1 The George Washington University Electrical & Computer Engineering Department ECE 1010 Intro To Electrical and Computer Engineering Dr. S. Ahmadi Class.
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.
MEH108 - Intro. To Engineering Applications KOU Electronics and Communications Engineering.
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.
Connect VEX and ROBOTC Electrical Engineer Responsibilities © 2011 Project Lead The Way, Inc.Automation and Robotics VEX.
ROBOTC for VEX Online Professional Development. Homework Questions Thoughts? Questions?
Basic Programming: Until Commands. The Problem with Wait States Motor Speed is affected by battery power. –If the battery is fully charged, the motors.
ROBOTC for CORTEX Teacher Training © 2011 Project Lead The Way, Inc. Automation and Robotics VEX.
The George Washington University Department of ECE ECE Intro: Electrical & Computer Engineering Dr. S. Ahmadi Class 4.
NXT Mindstorms Kit Programming
The George Washington University Department of ECE ECE Intro: Electrical & Computer Engineering Intro to the Robotics Introducing the IC Discuss.
ROBOTC for VEX Online Professional Development
Electrical Engineer Responsibilities
Automation and Robotics
Programming Concepts (Part B) ENGR 10 Introduction to Engineering
fischertechnik® RoboPro Software for Gateway To Technology® RoboPro
Automation and Robotics
Module F: Presentation Understanding Robot Fundamentals
TECH 1 BAMS Technology Education
The George Washington University Department of ECE ECE Intro: Electrical & Computer Engineering Dr. S. Ahmadi Class 5.
The George Washington University Department of ECE ECE Intro: Electrical & Computer Engineering Dr. S. Ahmadi Class 4.
The George Washington University Electrical & Computer Engineering Department ECE 1020 Dr. S. Ahmadi Lab 1.
The George Washington University Department of ECE ECE Intro: Electrical & Computer Engineering Dr. S. Ahmadi Class 4.
Compiled from various Internet sources Presented by Mr. Hatfield
Programming Concepts (Part B) ENGR 10 Introduction to Engineering
Oregon Robotics Tournament and Outreach Program
Getting started with LEGO EV3 Mindstorms software
LEGO Mindstorms Robot and Java
Downloading to the NXT requires the correct hardware setup
Presentation transcript:

The George Washington University Department of ECE ECE 1010 Intro: Electrical & Computer Engineering Introducing KIPR Link/Interface and Set-up Continuation of Programming Skills Connecting KIPR Link Making sure connections are fine Introduction to analog sensors Dr. S. Ahmadi Week 2

Outline PART I PART II Project Description Programming Exercises Connecting KIPR Link Hands-on Programming Starting IC Program (Downloading Firmware) Running Programs PART II Introduction to Analog Sensors Project Description

PART I: KIPR Link

Hardware Components KIPR Link AC Adapter USB Cable Micro-USB Plug (Interface to motors & sensors) AC Adapter (Charges the KIPR Link) USB Cable (Connects the KIPR Link to the computer) Micro-USB Plug (Connects to the back of the KIPR Link) USB Plug (Connects to USB port on the computer)

KIPR Link Layout

Connecting the KIPR Link Connect the KIPR Link to the PC using the USB cable. Start “KISS IDE” on the PC.

Go to Start  All Programs  KISS Platform 5.2.2  KISS IDE 5.2.2

Overview of Interaction Window Compile and download program to KIPR Link Run code

Connecting to the KIPR Link Select the COM port to which your KIPR Link is connected to and click OK.

BASIC HANDYBOARD HOOKUP PROCEDURE Connect KIPR Link to computer. Turn KIPR Link on. Open the KISS IDE software. Make sure the computer is talking to the controller. After connecting KIPR Link, compile and run the “Hello, World!” program. If you see “Hello, World!” printed on the KIPR Link’s display, your connections are correct.

Sample Beeping Program /* Program to beep 20 times continuously. */ int main() { int count=0; while(count<=20) beep(); count=count+1; // Incrementing counter } return 0; Extra: Wait half a second between beeps.

Motor control commands DC motor control commands fd(n); Rotate motor ‘n’ forward bk(n); Rotate motor ‘n’ backwards. motor(n, s); move motor ‘n’ at speed ‘s’ ‘s’ range: -100 ~ +100 ‘s’>0 forward ‘s’<0 reverse off(n); turn off motor ‘n’ ao(); turn off all motors

Motor Exercise Procedure Attach the two motors to the connector wires. Next, attach the wire plugs to KIPR Link ports. Turn the KIPR Link on. Open KISS IDE software. Make sure the computer is talking to the controller. Turn on motor 1 using the motor(n,x) command. Make motor 1 alternate between a forward and backward direction. You can change the speed of your motors. For example motor(1,100) means motor 1 is turning at 100 or full speed.

Motor Control: Exercise #1 Exercise #1: Motor speed control write IC program to run one motor in three different speeds. Turn motor #1 on drive in slow speed for 3 seconds drive in medium speed for 5 seconds drive in high speed for 3 seconds Stop motor

Sample Motor Program (Exercise #2) int main() { printf("Press START to test motors\n"); while(a_button() == 0); //wait until button A is pressed fd(1); // Motor in port 1 go forward msleep(2000.0); // Sleep for 2 seconds. bk(1); // Motor in port 1 go backward msleep(2000.0); off(1); // Turn motor in port 1 off fd(3); // Motor in port 3 go forward msleep(2000.0); bk(3); // Motor in port 3 go backward msleep(2000.0); off(3); return 0; }

Charging The KIPR Link Charging the KIPR Link takes about 1.5 hours, after which it can be left in the power indefinitely. Note: Students will be responsible for charging their groups KIPR Link.

SUMMARY of Main Functions from Week 2 fd(int n); Rotate motor ‘n’ forward bk(int n); Rotate motor ‘n’ backwards. motor(int n, int s); move motor ‘n’ at speed ‘s’ ‘s’ range: -100 ~ +100 ‘s’ > 0 – motor moves forward ‘s’ < 0 – motor reverses/moves backward off(int n); turn off motor ‘n’ ao(); turn off all motors msleep(int x); // Delays execution of next statement for ‘x’ msecs beep(); // Causes the handy-board to beep

PART II: INTRO TO SENSORS

Analog Sensors Outputs a range of integer values. Range depends on the signal being sensed. The analog ports are ports 0 – 7. Actual ports that should be used will depend on the sensor being used. The three main analog sensors that we will be using are the Light Sensor, the Optical Rangefinder Sensor and the Infrared Sensor. In today’s project, only the Optical Rangefinder will be utilized.

Analog Sensor 1: Light Sensor The light sensor included in the kit, can “sense” lightness and darkness. Connect to analog ports 0-7 Access with function analog10(port#) Analog values range from 0 - 1023. A low value indicates bright light or close proximity to a light source A high value indicates dark light or far proximity from a light source Enlarged Light Sensor

Analog Sensor 2: IR Reflectance Sensor “Top Hat” The IR sensor included in the kit, can also “sense” lightness and darkness like the light sensor Connect to analog ports 0-7 Access with function analog10(port#) Low values indicate bright light, light color, or close proximity High values indicate low light, dark color, or distance of several inches Sensor has a reflectance range of about 3 inches Enlarged IR Sensor

Analog Ports

Light Sensor Sample Code /* Program that measures the reads from the light sensor and displays its output values continuously. */ int main() { int color=0; printf(“Light Sensor Sample Program \n"); while(a_button()==0); // Press Start Button while(1) // Continue infinitely msleep(500); color = analog10(0); // Read “lower deck” analog port 0 printf(“Color is %d \n”, color); // if near 0 – WHITE // if near 1023 - BLACK } return 0;

Project 1 Overview

Project Description The aim of this project is to design a robot that moves along a given path, from the Start point, towards the Finish line. The thick black line acts as the guide for the robot to follow. As an optional element to the project, after reaching the finish line, the robot should turn around, and go back along the path it came to the starting point. Robot will be judged on smoothness of journey, and robot design. It is the students’ responsibility to make sure that the Handy Board is fully charged Each group will have one chance to demonstrate their project to the judges. Therefore, fully test your project before demonstration.

Project #1 - Route 2m 2m Finish Start 2m 2m