350 likes | 550 Views
ENGR 100 - Robotics Project. Presentation Outline. I. Background Information II. Design Project III. Engineering (Programming and Gears) IV. Programming the RCX. Presentation Outline. I. Background Information II. Design Project III. Engineering (Programming and Gears)
E N D
ENGR 100 - Robotics Project Wei-chih Wang, Engr. Section A
Presentation Outline I. Background Information II. Design Project III. Engineering (Programming and Gears) IV. Programming the RCX Wei-chih Wang, Engr. Section A
Presentation Outline I. Background Information II. Design Project III. Engineering (Programming and Gears) IV. Programming the RCX Wei-chih Wang, Engr. Section A
Who Builds Robots? • EE - designs “the brain”, sensors, actuators & wiring. • ME - designs body, gearing, actuators • CSE - writes software • CHEM E - designs (or selects) power supply. • MAT’L SCI - materials All engineers listed above work together to design/build robots. Wei-chih Wang, Engr. Section A
Design Challenges for Mobile Robots • Position - How does robot know where it is (or has been)? • Power supply - How does it avoid running over cord? • Navigation - How does it navigate around obstacles? • Object Recognition - How does it recognize money, toys, even cats? Wei-chih Wang, Engr. Section A
Presentation Outline I. Background Information II. Design Project III. Engineering (Programming and Gears) IV. Programming the RCX Wei-chih Wang, Engr. Section A
Project Objectives The goals of this project are for students to: • Build a programmable robot. • Learn how robotics involves a multitude of skills and knowledge from many subject areas. • Experience the design process. • Be introduced to basic computer programming. • Get excited about Science and Technology. Wei-chih Wang, Engr. Section A
The objective of this project is to build a computer controlled robot that can safely deliver an stuff animal through an obstacle course in the shortest amount of time. To simulate real world situations, the robot must be able to climb a small ramp, cross a street without getting hit by a car, turn corners, fight off aggressive animals, climb stairs and free itself from a sandpit. Problem Definition Wei-chih Wang, Engr. Section A
10 pts 25 pts 10 pts 10 pts 10 pts 10 pts 10 pts 10 pts 10 pts Defender Zone 50 Pts 50 pts 10 pts 60 pts Obstacle Course Layout
The RCX can store 3 different programs: Program 1 - Robotic Wheelchair (do first!) Program 2 - Car Program 3 - Unfriendly Robot (be creative!) Programming Tasks Wei-chih Wang, Engr. Section A
10 pts 25 pts 10 pts 10 pts 10 pts 10 pts 10 pts 10 pts 10 pts Defender Zone 50 Pts 50 pts 10 pts 60 pts 25 points are awarded to team that programs the robot to stop at the crosswalk when the “message # 1” signal is received from the master controller and it proceeds after receiving the “message # 2”. 25 points are awarded to team that programs the robot to stop and back away from the crosswalk when “message # 1” is received from the master controller. 50 points are awarded to team that either fight off the unfriendly robot or stop the robotic wheelchair from moving forward. 10 points each are awarded to team that go over a 3” ramp, ¼” steps or sand pit Wei-chih Wang, Engr. Section A
Design Approaches • "Top-down" design • the process of starting with the goal of the project and then developing a solution. • "Bottom-up" design • the process of first learning about the available materials and then determining what can be done with them. Wei-chih Wang, Engr. Section A
ENGR 100 - Robotics Project Deliverables • HW • Simple Pathfinder Test • Design Specification • Final Report • pathfinder program (20%) • Design Specification (10%) • Final Robot - Score (30%) • Group Final Report (40%) • Extra Credit (10%) Wei-chih Wang, Engr. Section A
Robotics Project Schedule *Final Report & Reflection Paper due Fri. June 8. Wei-chih Wang, Engr. Section A
Homework Assignments • Final Report Please follow the format in the handout Wei-chih Wang, Engr. Section A
Homework Assignments • Simple Pathfinder Go forward for 2.5 second (set the power at 7). Go backwards for 3 seconds (set the power at 1) - Can your robot move? Maneuver a 30 o turn. Avoid obstacles to the left, right, and between the two tactile sensors as the robot moves forward. Halt for 5 s when the light intensity reaches 50%. Stop after receiving Message 1 and move forward after receiving Message 2 from the Master Controller. Wei-chih Wang, Engr. Section A
Homework Assignments • Design Specification Print out copies of the 3 programs (wheelchair, car, and unfriendly). With a pen, label what each command does and why. Someone reading these programs would be able to understand your programming logic (similar to pseudo code). The purpose of this assignment is to make sure your team understands computer programming. Wei-chih Wang, Engr. Section A
Presentation Outline I. Background Information II. Design Project III. Engineering (Programming and Gears) IV. Programming the RCX Wei-chih Wang, Engr. Section A
Robot Basics - Gears • Speed • Power (climb over obstacles) • Turns Tips - Try different size gear combinations, different types of gears (worm), and different motor placement (rear wheel drive or 4 wheel drive). Wei-chih Wang, Engr. Section A
4 wheel drive Wei-chih Wang, Engr. Section A
Robot Basics - Programming No matter what language you use, there are 3 basic techniques for organizing the commands used in programming: • Selection • Repetition (Loops) • Conditional Wei-chih Wang, Engr. Section A
Selection • Selection statements are defined as a list of commands that are executed in order. • For example: Set Forward Direction Go forward for 3 s Stop Wei-chih Wang, Engr. Section A
Repetition • Repetition statements allow for a series of commands to be repeated for a set number times. • For example: Repeat 3 times Set forward direction Move forward for 3 s Stop End Repeat Wei-chih Wang, Engr. Section A
Conditional • Conditional statements allow for two (or more) different sets of commands to be executed depending on the conditions at the time. • For example, if certain conditions are true, one set of actions will be taken, and if any (or all) are false, than another set of commands will be executed. Wei-chih Wang, Engr. Section A
Example of Conditional Statements • For example - • If the light is <50% Set Direction Forward Move Forward for 3 s Stop • Else If light is >= 50% Stop • End Wei-chih Wang, Engr. Section A
Features of RCX software • Multi-threaded language Means that the main program can be executing at the same times as a subprogram. Can cause unexpected results! • Variables limited to 1 or 0 (or counter) Consider programming in Not Quite C language if you have previous programming experience, if need more values for variables. Wei-chih Wang, Engr. Section A
Presentation Outline I. Background Information II. Design Project III. Engineering (Programming and Gears) IV. Programming the RCX Wei-chih Wang, Engr. Section A
Programming the RCX Stack puzzle pieces to make programs. Then download them to the RCX. Wei-chih Wang, Engr. Section A
Saving the Program Select button to download Select program number (1-5) Wei-chih Wang, Engr. Section A
Saving the Program Wei-chih Wang, Engr. Section A
Programming the RCX Tells robot how to move: on, off, direction, wait, other. Tells robot how to respond to touch and light. Changes the way parts of your program run (repeat, conditional) Allows you to create your own “subroutines.” See handout for more information! Wei-chih Wang, Engr. Section A
To download Firmware, click on “Getting Started” and then “Set Up Options” Wei-chih Wang, Engr. Section A
RCX Command Center - NQC Wei-chih Wang, Engr. Section A
To do List: • Take kit home and install on computer. • View training video and/or challenges. • Check out the related web sites. • Build a Simple Pathfinder (pg 12 - 17). • Program the robot. Wei-chih Wang, Engr. Section A