TEACHING INTRODUCTORY PROGRAMMING, PROBLEM SOLVING AND INFORMATION TECHNOLOGY WITH ROBOTS AT WEST POINT

Size: px
Start display at page:

Download "TEACHING INTRODUCTORY PROGRAMMING, PROBLEM SOLVING AND INFORMATION TECHNOLOGY WITH ROBOTS AT WEST POINT"

Transcription

1 TEACHING INTRODUCTORY PROGRAMMING, PROBLEM SOLVING AND INFORMATION TECHNOLOGY WITH ROBOTS AT WEST POINT Jerry Schumacher 1, Don Welch 2, David Raymond 3 Abstract As part of an ongoing initiative to continually revise and improve its introductory computer science courses, the Electrical Engineering and Computer Science Department at the United States Military Academy has added the use of LEGO Mindstorm robots as part of the active-learning environment used to teach Information Technology IT and programming basics. It is critical for the Army and the Nation that its future leaders understand and are capable of taking advantage of IT. All cadets at the United States Military Academy at West Point are required to take a course on IT and problem solving using computer programming. This course is an important first, and sometimes only, opportunity to expose undergraduate students to technology and concepts that will be a part of their daily lives and future careers. The LEGO Mindstorm robots are used in the introductory computer science course to teach fundamental computer programming concepts and introduce the concepts of autonomous vehicles, embedded computer systems and computer simulation. The positive short-term impact on the students taking the course has been substantial and while the long-term impact has yet to be measured, it also has the potential to be substantial. Members of the faculty at West Point developed a computer simulation of the robot environment as well as a Java programming language translator for the LEGO programmable brick, called the RCX. These two tools are combined into a unique programming and teaching environment that we named Jago. Jago enables the robots and robot simulator to be used to teach fundamental programming concepts visually, which some students can more easily grasp and all are clearly excited to use. Based on these results we have incorporated Jago into the core IT course taught at West Point. Index Terms Active learning, autonomous vehicle, Java programming, simulation, robot INTRODUCTION The United States Military Academy is focused on educating graduates to defend the interests of the country. While the last 50 years have seen a direct threat to the United States itself in the form of nuclear weapons, the probability of such an attack is currently very small. In recent years there has been a growth in probability of attack on the United States itself. Principle among those threats is cyberattack. In addition, the world is undergoing a revolution in military affairs. The influence of IT on the battlefield is profound. The military officer without a good grasp of IT may find himself as out of place on the 21 st century battlefield as the Polish horse cavalry found itself in the opening days of World War II. West Point must produce leaders capable of exploiting advances in IT to insure America s defense. All first year cadets at the United States Military Academy are required to take a semester course on Information Technology, a large portion of which is devoted to problem solving using computer programming. For most, this is the only IT course they will ever take. The purpose of the course is twofold: 1) to teach and apply a problem solving methodology using the programming primitives 2) teach them how to learn about new IT and its uses. We believe that it is important for all graduates to understand the programming primitives: selection, iteration and sequence. It is not only important because students will have to apply algorithm concepts using many different tools (like Excel and MathCad) throughout their lives, but because it s hard to fully understand IT without a basic understanding of what makes IT different from other technology. The course is called Introduction to Computing and has two versions: the basic version, CS105 and the advanced version, CS155. Students are placed in CS155 based on their background with computer science and programming as well as an advanced placement test given before their freshmen semester starts. These courses have been undergoing revision over the last two years [1] to improve not only the quality of the instruction but their applicability to cadet and officer needs. The programming language has 1 Jerry Schumacher, United States Military Academy, Department of Electrical Engineering and Computer Science, West Point, New York jerry.s@computer.org 2 Don Welch, United States Military Academy, Department of Electrical Engineering and Computer Science, West Point, New York dd2354@exmail.usma.edu 3 Dave Raymond, United States Military Academy, Department of Electrical Engineering and Computer Science, West Point, New York dd5372@exmail.usma.edu F1B-2

2 been updated to Java and increased emphasis has been placed on active learning, hands-on exercises, and using technology and Java packages. This course, as most courses at West Point, places heavy emphasis on active learning. Because this is not designed to serve as the first course for engineers and comp uter scientists, our approach to programming is different from the traditional approach. We emphasize the algorithmic primitives at the expense of the programming language features that facilitate the construction of useful programs. We also try to tie the IT concepts of the course into the programming lessons to reinforce the understanding of IT [1]. Java was added as the programming language for problem solving because of the ease with which it lends itself to simple GUI programs which are familiar to most freshmen. The use of prewritten Java classes with GUI interfaces integrated into student programs makes it easier to draw the analogy between the commercial programs the students use and the ones they create during class as well as the more complex homework programs. The reasoning for integrating LEGO robots into the course is similar. Students who are predisposed to computer science and engineering usually have more aptitude for understanding the abstract structure of an algorithm. For students that will be majoring in the humanities and social sciences, these concepts are difficult to visualize even with the use of graphical user interfaces (GUI). We have discovered that using robots, students can understand algorithms through the motion of a robot because it is easier to visualize. In addition, using robots in our environment brings two peripheral advantages to the algorithmic concept. The first is the introduction of autonomous vehicles and embedded code. Up to this point most of our students did not consider embedded code. In reality, even the next version of the infantry rifle will have thousands of lines of code embedded inside. Exposure to embedded code is part of the IT curriculum. Most of our students arrive at West Point not understanding the difference between a remotely controlled device and a truly autonomous device. This is another IT learning objective with which students get handson experience. Finally, simulation is a critical military technology. Simulation for many reasons is taking a large role in all aspects of the military from system development, through training and decision support. Working with a simulation and the actual robot gives them an important exposure to this technology. The course is designed to integrate algorithms into IT education. We teach the algorithmic primitives of sequence, selection and iteration using HTML and Java. Students can better visualize these primitives by watching the movement of a robot as opposed to interacting with a program executing on a general-purpose computer. We developed a Java-like interface to the Lego Mindstorms RCX that allows us to teach programming through both the Java GUI and Lego robots. We use a simulator to reinforce IT concepts and to reduce the logistical burden associated with giving students robots kits with over 750 pieces. We call the environment which includes the language, simulator, development environment and interface to the RCX Jago. JAGO ENVIRONMENT Lego Mindstorms Description The LEGO Mindstorm kits are sold in computer superstores, toy stores and discount stores for under $200 a kit and extra parts are available on-line. The kit includes the RCX brick (which, at its heart, is a Hitachi H8/300L processor), motors, touch and light sensors as well as an IR attachment for your PC to download to the RCX brick. While the LEGO programming environment is ingenious in its design for children ages 12 and up it does not provide enough flexibility to teach undergraduate students. As a result, the authors created a new environment called Jago, which enables programming in Java as well as enabling a simulation of the robot. Jago Programming Language Jago is a subset of Java with a number of pre-defined methods that make programming the robot less tedious. The Jago programming environment allows programs written in a subset of Java to be run in a virtual environment or be converted to Not Quite C (NQC) and compiled for execution by the Lego Mindstorms RCX. This environment allows students to create and test their robot control programs without access to a Lego Robot in a virtual world created by the simulator after which they may conduct final testing and evaluation of their work on a Lego Robot in the physical world. A Jago program is a sub-class of the Task Class, which is provided in the Jago environment. The Task Class contains the code that interfaces with the RCX as well as robot primitives that take the tediousness out of programming the robot. The result is that the students employ the algorithmic primitives in the form of the Java control structures (if statements, for loops, while loops) that include calculations and method calls to run the robot. Language Translation To run Jago programs on the Lego robot, we must first convert them to a language that can be compiled into a form that can be downloaded to the RCX. The language we use is Not Quite C (NQC) developed by Dave Baum [2]. We wrote a language translator that would convert code from our Jago language to NQC. The NQC program is then compiled using the NQC compiler and downloaded to the RCX (figure 1). F1B-3

3 FIGURE. 1 JAGO PROGRAM DEVELOPMENT Included below is a sample Jago program that causes the robot to go forward until it hits a wall then backup, turn right and go towards another wall, repeating this process four times. The annotations in the code should be sufficient to explain what each of the robot primitives does. // all Jago programs must extend the Task class public class DemoProgram extends Task int turntime = 120; // time req'd to pivot 90 deg. int backuptime = 100; // used to back off walls // method used to back away from wall before turning public void backup() onrev(out_a+out_c); // set both motors to reverse. pause(backuptime); } // method used to pivot robot right public void turnright() onrev(out_c); // set right motor to reverse. onfwd(out_a); // set left motor to forward pause(turntime); // wait for turn to complete // set both motors to forward } // flow of execution begins in the run method public void run() // make program aware of touch sensor setsensor(sensor_1, SENSOR_TOUCH); // loop 4 times for(int i = 0; i < 4; i++) //set both motors to forward while(sensorvalue(sensor_1)!= 1)} // while wall not hit backup(); turnright(); } // for } // run } // ExampleProgram Robot Simulator Over 500 students take this course each semester. The logistics of issuing and tracking and collecting robot kits for each team is daunting. Especially since each kit contains over 750 parts. Cadets also have very full schedules, minimizing the overhead associated with education is an important goal of the faculty at West Point. We found a way to both minimize the logistics and overhead and achieve a learning objective. We provide a simulator with the Jago environment. The students write their Jago programs and run them on the Jago simulator. This way they can design, code and test their programs in their rooms without spending hours assembling a Lego robot. Once they are confident in their algorithm design, then can bring their completed Jago program to the lab, cross-compile it to Not-Quite C, and download on the RCX to verify that their code runs the robot as well as it does their simulator. On the project due day, the students demonstrate their work on a robot in the classroom as part of a project presentation. PEDAGOGY FOR USING JAGO Common Scenario Provided as Part of the Assignment Embedded computer systems are pervasive in Army weapons systems. These systems will be a part of your daily life in the Army. Understanding how they operate (or fail to) is important in order to take advantage of the system's full potential. The Army is looking at robotic systems for a number of force multiplying systems. Your commander has provided you with a prototype robotic system that can maneuver across terrain with obstacles. Your task is to evaluate the system, write an algorithm to negotiate two F1B-4

4 types of obstacles, and successfully maneuver through a test track. If your algorithm works correctly, and within a specified time limit, the manufacturer will build the fielded system with an embedded version of your code. Good luck and make sure you test your program to ensure it works as advertised. You would not want the Army to buy a system that has a defect. algorithm you design must be able to negotiate any and all such configurations. The second type of duct construction the robot will have to negotiate will be one which has the two walls of the duct which are horizontal to each other and two perpendicular Specific Assignment The Army is developing miniature robots for urban warfare reconnaissance and possible weapons delivery, specifically for close quarters reconnaissance. The winning design will be used on a possible test mission for reconnaissance through an enemy bunker's air ducts just outside of Baghdad. Due to the sensitivity of the mission, tethered robots are not candidates for this mission. Autonomous robots are the least risky option. Due to known intruder detection systems within the bunker's air ducts the robot must negotiate the ductwork within a four-minute time span. The total length of ductwork that the robot must negotiate is 12 feet. The robot has to only negotiate to the end of the ductwork obstacles. A classified payload will be released at that point. Plans obtained from the European company that built the underground bunker in Iraq show the construction of the ductwork to be similar to a maze with two main types of obstacles. The first type of duct construction the robot will have to negotiate will be one which has the two walls of the duct which are horizontal to each other and a perpendicular wall attached to one of the duct side walls (figure A). Figure A The exact dimensions and locations of these obstacles cannot be determined from the plans obtained. The Figure B walls attached to either of the duct side walls (figure B). An opening between the two perpendicular walls will be no smaller than seven inches, which is large enough for the robot to fit through if it is centered on the opening and travels straight through. The exact dimension of the opening and the lengths of the perpendicular walls cannot be determined from the plans obtained. The algorithm you design must be able to negotiate any and all such configurations. A seam in the ductwork, that has a distinctive difference in color, separates these two types of obstacles. The light sensor built into the robot has the ability to detect this color difference. Your mission is to write a Jago program that can be downloaded into a standard Lego robot configuration that your instructor provides. This program will allow the robot to successfully negotiate a test maze that will replicate a possible scenario the robot might encounter in the Iraqi bunker in the shortest possible time. Keep in mind the longest time before payload release is 4 minutes. A simulator has been developed to test your algorithm before you download it into the robot and is available by following the attached instructions. While the simulator will help test and debug your algorithm it is not a perfect representation of the real world. In some cases, your algorithm may work in the simulator but once downloaded in the robot and tested in the maze the results may differ due to environmental effects such as walls that are not F1B-5

5 completely perpendicular to each other and differing traction on the floor of the maze. Your algorithm should account for these differences. RESULTS Six two-person groups were given the project and not only did all of them come up with solution that met the minimum requirements, they all excelled in the overall project. The students that completed the robot project expressed a better appreciation for the design process, which is exactly what we are trying to teach in CS105. One student commented that his group... spent a lot of time trying to come up with an efficient algorithm. Once we thought through the algorithm, writing the code was easy. This is exactly what we are trying to achieve in CS105. We would like the students to leave the course with an understanding of how to use a computer to solve problems. The Java programming language is just another tool in each student s arsenal, and we don t want syntax to get in the way of problem solving. The Java code below is one cadet group s solution to the project described above. /* Program Legobot This program gives instructions to an autonomous lego robot in order for the robot to negotiate a maze. Programmed by: David T. Reyes '03, CO A-2 Casey Woo '03, CO A-2 for: CS 155 Section 02 I MAJ David Raymond public class Legobot extends Task /******************************** Global Data Members ******************************** int halfturn = 130; //time for a 90 deg. turn int fullturn = 250; //time for a 180 deg. turn /******************************** Public Methods void leftturn() void turn180() void righttest() void mainloop() void run() ******************************** /* Method: leftturn Purpose: public void leftturn() This method performs a left turn then moves fwd (North). Once leftturn is complete program control is returned to its calling method (turn180). onrev(out_a+out_c); onfwd(out_c); pause(halfturn); off(out_a+out_c); }//leftturn /* Method: turn180 Purpose: This method instructs the robot to make a 180 degree turn and then move forward (East) to the opposite end of the maze. Ater the robot hits the opposite wall it calls the leftturn() method. After leftturn() is complete and control is returned to turn180(), turn180 performs a break and returns control to its calling method righttest(). public void turn180() onrev(out_a+out_c); onfwd(out_a); pause(fullturn); off(out_a+out_c); //if the robot hits a wall at this point we //can assume that it has reached the //opposite wall so it can turn and continue //to check for gaps while(true) if (sensorvalue(sensor_1) == 1) leftturn(); break; //return to righttest }//if }//while }//turn180 /* Method: righttest() Purpose: After the robot hits its first wall and righttest begins, righttest performs a series of turns to find a gap in the wall. If the robot hits another wall before completing the righttest() method it assumes that it has reached the far end of the wall and calls the turn180() method. If not, the robot continues until it finds a gap and proceeds to the next obstacle. At the completion of each complete righttest or if loop in righttest() this method performs a break that returns control to its calling method, mainloop, which starts the process over again. public void righttest() F1B-6

6 onrev(out_a+out_c); pause(80); onfwd(out_c); pause(halfturn); pause(70); while(true) //if the robot hits a wall after this //turn we can assume that it has reached //the end of the wall and turn around to //check the other side if (sensorvalue(sensor_1) == 1) turn180(); }//if else onfwd(out_a); pause(halfturn); }//else break; //return to mainloop }//while }//righttest /* Method: mainloop Purpose: Determines if the robot hits a wall while going forward (North). If the robot does hit a wall it reacts by calling the righttest() method. public void mainloop() while(true) if (sensorvalue(sensor_1) == 1) righttest(); }//if }//while }//mainloop /* Method: run Purpose: Sets sensor, starts robot, and calls mainloop method public void run() setsensor(sensor_1, SENSOR_TOUCH); mainloop(); } // run } // Legobot FUTURE WORK Future improvements planned are a more visually accurate simulator with the added feature of being able to add new obstacles, backgrounds and active objects. Additionally, a direct compilation and download to the RCX brick from Java without the additional language translation step is planned. With these improvements and the successful integration of a final robot maze project into the advanced, CS155 course, the next step has been to integrate the use of the robots and simulator into the basic CS105 course final project as well as into smaller homework assignments and fundamental programming concept demonstrations such as ones on selection and iteration. Discussions with other departments such as Civil and Mechanical Engineering and Math are in the preliminary stage to take advantage of the basic knowledge the cadets have of the robots and the environment developed. Another proposed addition to the course would be to have 3d and 4th year students in an Electrical Engineering sensor building course build sensors for the robots which would be used in the CS105 and CS155 course homeworks and final projects. The views expressed herein are those of the author and do not purport to reflect the position of the United States Military Academy, the Department of the Army, or the Department of Defense. REFERENCES [1] MAJ David R. Raymond and LTC Donald J. Welch. Integrating Information Technology and Programming in a Freshman Computer Science Course. In the Proceedings of the 2000 Frontiers In Education Conference, Kansas City, MO, Oct., [2] Baum, D., Definitive Guide to LEGO Mindstorms, Apress, NY F1B-7

INTEGRATING INFORMATION TECHNOLOGY AND PROGRAMMING IN A FRESHMEN COMPUTER SCIENCE COURSE

INTEGRATING INFORMATION TECHNOLOGY AND PROGRAMMING IN A FRESHMEN COMPUTER SCIENCE COURSE INTEGRATING INFORMATION TECHNOLOGY AND PROGRAMMING IN A FRESHMEN COMPUTER SCIENCE COURSE MAJ David R. Raymond 1 and LTC Donald J. Welch Jr. 2 Abstract All 1,100 first-year students at the United States

More information

Programming LEGO NXT Robots using NXC

Programming LEGO NXT Robots using NXC Programming LEGO NXT Robots using NXC This text programming language derived from C language is bended together with IDE BricxCC on standard firmware LEGO Mindstorms. This can be very convenient for those,

More information

Rethinking the First Year Programming Course

Rethinking the First Year Programming Course Rethinking the First Year Programming Course William David Lubitz Assistant Professor, School of Engineering, University of Guelph wlubitz@uoguelph.ca Abstract The use of microcontrollers in beginning

More information

How To Teach Robotics In An Engineering Course

How To Teach Robotics In An Engineering Course PROPOSAL for Innovative Instructional Technology Faculty Grant Development of Academic Course to be Offered On- and Off-Campus Via the New Technology Applications must be received by 1 November 2004 I.

More information

A DELIBERATE INTEGRATION OF INFORMATION TECHNOLOGY INTO THE CLASSROOM

A DELIBERATE INTEGRATION OF INFORMATION TECHNOLOGY INTO THE CLASSROOM A DELIBERATE INTEGRATION OF INFORMATION TECHNOLOGY INTO THE CLASSROOM Duane Fairfax, Kevin Huggins, Bryan Goda This paper was completed and submitted in partial fulfillment of the Master Teacher Program,

More information

Experiences with the LEGO Mindstorms TM throughout the Undergraduate Computer Science Curriculum

Experiences with the LEGO Mindstorms TM throughout the Undergraduate Computer Science Curriculum Experiences with the LEGO Mindstorms TM throughout the Undergraduate Computer Science Curriculum Abstract - The LEGO Mindstorms Robotics Invention Systems are contemporary learning tools that have been

More information

TEACHING INTRODUCTORY COMPUTER GRAPHICS WITH THE PROCESSING LANGUAGE

TEACHING INTRODUCTORY COMPUTER GRAPHICS WITH THE PROCESSING LANGUAGE TEACHING INTRODUCTORY COMPUTER GRAPHICS WITH THE PROCESSING LANGUAGE Dino Schweitzer, Jeff Boleng, Paul Graham United States Air Force Academy, CO 80840 dino.schweitzer@usafa.edu ABSTRACT Different approaches

More information

Developing the Capabilities of Blind and Visually Impaired Youth to Build and Program Robots

Developing the Capabilities of Blind and Visually Impaired Youth to Build and Program Robots Developing the Capabilities of Blind and Visually Impaired Youth to Build and Program Robots Rayshun Dorsey 1, Chung Hyuk Park 2, Ayanna M. Howard 2 1 WizKidz Science and Technology Centers, Atlanta, GA

More information

EASTERN SCHOOL DISTRICT

EASTERN SCHOOL DISTRICT EASTERN SCHOOL DISTRICT Course Descriptor Summary (Interim September 2005) 1. Subject Area: Technology Education 2. Course: Computer Technology 3200 3. Program Description/Guiding Principles: TABLE OF

More information

CONTENTS. What is ROBOTC? Section I: The Basics

CONTENTS. What is ROBOTC? Section I: The Basics BEGINNERS CONTENTS What is ROBOTC? Section I: The Basics Getting started Configuring Motors Write Drive Code Download a Program to the Cortex Write an Autonomous Section II: Using Sensors Sensor Setup

More information

Integration of Mathematical Concepts in the Computer Science, Information Technology and Management Information Science Curriculum

Integration of Mathematical Concepts in the Computer Science, Information Technology and Management Information Science Curriculum Integration of Mathematical Concepts in the Computer Science, Information Technology and Management Information Science Curriculum Donald Heier, Kathryn Lemm, Mary Reed, Erik Sand Department of Computer

More information

Using ipads in Undergraduate Mathematics

Using ipads in Undergraduate Mathematics Using ipads in Undergraduate Mathematics Eric J. Thornburg This paper was completed and submitted in partial fulfillment of the Master Teacher Program, a 2-year faculty professional development program

More information

Programming Lego Robots using NQC

Programming 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 information

understanding sensors

understanding sensors The LEGO MINDSTORMS NXT 2.0 robotics kit includes three types of sensors: Ultrasonic, Touch, and Color. You can use these sensors to build a robot that makes sounds when it sees you or to build a vehicle

More information

2. Select the hardware that you will use as well as the programming language that will be appropriate with the students that you teach.

2. Select the hardware that you will use as well as the programming language that will be appropriate with the students that you teach. Steps to starting a LEGO robotics program Congratulations on your decision to start a robotics program! Whether you are a teacher, parent, coach, or an afterschool club leader, you ll find lots of support

More information

Robotics & Automation

Robotics & Automation Robotics & Automation Levels: Grades 10-12 Units of Credit: 1.0 CIP Code: 21.0117 Core Code: 38-01-00-00-130 Prerequisite: None Skill Test: 612 COURSE DESCRIPTION Robotics & Automation is a lab-based,

More information

The NXT Generation. A complete learning solution

The NXT Generation. A complete learning solution The NXT Generation A complete learning solution The NXT Generation LEGO MINDSTORMS Education is the latest in educational robotics, enabling students to discover ICT, science, D&T and maths concepts in

More information

UNDERGRADUATE COMPUTER SCIENCE EDUCATION: A NEW CURRICULUM PHILOSOPHY & OVERVIEW

UNDERGRADUATE COMPUTER SCIENCE EDUCATION: A NEW CURRICULUM PHILOSOPHY & OVERVIEW UNDERGRADUATE COMPUTER SCIENCE EDUCATION: A NEW CURRICULUM PHILOSOPHY & OVERVIEW John C. Knight, Jane C. Prey, & Wm. A. Wulf Department of Computer Science University of Virginia Charlottesville, VA 22903

More information

The Basics of Robot Mazes Teacher Notes

The Basics of Robot Mazes Teacher Notes The Basics of Robot Mazes Teacher Notes Why do robots solve Mazes? A maze is a simple environment with simple rules. Solving it is a task that beginners can do successfully while learning the essentials

More information

West Windsor-Plainsboro Regional School District Computer Programming Grade 8

West Windsor-Plainsboro Regional School District Computer Programming Grade 8 West Windsor-Plainsboro Regional School District Computer Programming Grade 8 Unit 1: Programming Content Area: Technology Course & Grade Level: Computer Programming, Grade 8 Summary and Rationale The

More information

Exploring Computer Science A Freshman Orientation and Exploratory Course

Exploring Computer Science A Freshman Orientation and Exploratory Course Exploring Computer Science A Freshman Orientation and Exploratory Course Stephen U. Egarievwe and Vivian J. Fielder Center for Internet Based Education and Research Department of Mathematics and Computer

More information

A Design Paradigm in Undergraduate Electrical Engineering Curriculum

A Design Paradigm in Undergraduate Electrical Engineering Curriculum A Design Paradigm in Undergraduate Electrical Engineering Curriculum Habib Rahman Saint Louis University Department of Electrical and Computer Engineering McDonnell Douglas Hall, 3450 Lindell Boulevard

More information

STUDENT S TIME MANAGEMENT AT THE UNDERGRADUATE LEVEL Timothy W. Johnson

STUDENT S TIME MANAGEMENT AT THE UNDERGRADUATE LEVEL Timothy W. Johnson STUDENT S TIME MANAGEMENT AT THE UNDERGRADUATE LEVEL Timothy W. Johnson This paper was completed and submitted in partial fulfillment of the Master Teacher Program, a 2-year faculty professional development

More information

AC 2009-1549: ACTIVE-LEARNING EXPERIENCES ON MEDICAL DEVICES FOR MANUFACTURING AND NEW PRODUCT DEVELOPMENT

AC 2009-1549: ACTIVE-LEARNING EXPERIENCES ON MEDICAL DEVICES FOR MANUFACTURING AND NEW PRODUCT DEVELOPMENT AC 2009-1549: ACTIVE-LEARNING EXPERIENCES ON MEDICAL DEVICES FOR MANUFACTURING AND NEW PRODUCT DEVELOPMENT Susana Lai-Yuen, University of South Florida Susana K. Lai-Yuen is an Assistant Professor of Industrial

More information

Mobile Robotics I: Lab 2 Dead Reckoning: Autonomous Locomotion Using Odometry

Mobile Robotics I: Lab 2 Dead Reckoning: Autonomous Locomotion Using Odometry Mobile Robotics I: Lab 2 Dead Reckoning: Autonomous Locomotion Using Odometry CEENBoT Mobile Robotics Platform Laboratory Series CEENBoT v2.21 '324 Platform The Peter Kiewit Institute of Information Science

More information

A LOOK BACK: UNDERGRADUATE COMPUTER SCIENCE EDUCATION: A NEW CURRICULUM PHILOSOPHY & OVERVIEW

A LOOK BACK: UNDERGRADUATE COMPUTER SCIENCE EDUCATION: A NEW CURRICULUM PHILOSOPHY & OVERVIEW A LOOK BACK: UNDERGRADUATE COMPUTER SCIENCE EDUCATION: A NEW CURRICULUM PHILOSOPHY & OVERVIEW John C. Knight, Jane C. Prey, & Wm. A. Wulf Department of Computer Science University of Virginia ABSTRACT

More information

Military Science (http://catalog.creighton.edu/undergraduate/arts-sciences/military-science/ military-science-minor)

Military Science (http://catalog.creighton.edu/undergraduate/arts-sciences/military-science/ military-science-minor) 2014-2015 Creighton University Catalog 1 Military Science Chair: Jared Sutton Department Office: Military Science Building, Room 110 The Army Reserve Officers' Training Corps (ROTC), Blackwolves Battalion

More information

North Texas FLL Coaches' Clinics. Beginning Programming October 2014. Patrick R. Michaud pmichaud@pobox.com republicofpi.org

North Texas FLL Coaches' Clinics. Beginning Programming October 2014. Patrick R. Michaud pmichaud@pobox.com republicofpi.org North Texas FLL Coaches' Clinics Beginning Programming October 2014 Patrick R. Michaud pmichaud@pobox.com republicofpi.org Goals Learn basics of Mindstorms programming Be able to accomplish some missions

More information

CCA CYBER SECURITY TRACK

CCA CYBER SECURITY TRACK CCA CYBER SECURITY TRACK 2013-2014 CCA Advanced Cyber Security Track A detailed description of the advanced cyber security track. Courses to be offered in the CCA Advanced Cyber Security Track 2013-2014

More information

CURRICULUM VITAE EDUCATION:

CURRICULUM VITAE EDUCATION: CURRICULUM VITAE Jose Antonio Lozano Computer Science and Software Development / Game and Simulation Programming Program Chair 1902 N. Loop 499 Harlingen, TX 78550 Computer Sciences Building Office Phone:

More information

A Client-Server Interactive Tool for Integrated Artificial Intelligence Curriculum

A Client-Server Interactive Tool for Integrated Artificial Intelligence Curriculum A Client-Server Interactive Tool for Integrated Artificial Intelligence Curriculum Diane J. Cook and Lawrence B. Holder Department of Computer Science and Engineering Box 19015 University of Texas at Arlington

More information

Using Web-based Tools to Enhance Student Learning and Practice in Data Structures Course

Using Web-based Tools to Enhance Student Learning and Practice in Data Structures Course Using Web-based Tools to Enhance Student Learning and Practice in Data Structures Course 1. Introduction Chao Chen January 2014 The purpose of this project is to enhance student learning and practice in

More information

WISER 14. By the Robosses (Nila, Ishaa, Parvathi, Shivadharshne) National Public School, Bangalore, India And Vishnu Ram

WISER 14. By the Robosses (Nila, Ishaa, Parvathi, Shivadharshne) National Public School, Bangalore, India And Vishnu Ram WISER 14 By the Robosses (Nila, Ishaa, Parvathi, Shivadharshne) National Public School, Bangalore, India And Vishnu Ram Problem Statement What if a child could program a Robot? What if a programmer s imagination

More information

Building Instructions: Maze Robot

Building Instructions: Maze Robot Building Instructions: Maze Robot Basic Design from: Building Robots with Lego Mindstorms Modifications by: David Wang Diagrams and Instructions by: David Wang Diagrams and Instructions generated by: MLCad,

More information

2/26/2008. Sensors For Robotics. What is sensing? Why do robots need sensors? What is the angle of my arm? internal information

2/26/2008. Sensors For Robotics. What is sensing? Why do robots need sensors? What is the angle of my arm? internal information Sensors For Robotics What makes a machine a robot? Sensing Planning Acting information about the environment action on the environment where is the truck? What is sensing? Sensing is converting a quantity

More information

2a. Select the type of VEX classroom bundle that best suits your educational goals and students needs:

2a. Select the type of VEX classroom bundle that best suits your educational goals and students needs: Steps to starting a VEX robotics program Congratulations on your decision to start a VEX robotics program! Whether you are a teacher, parent, coach, or an afterschool club leader, you ll find lots of support

More information

LEARNING MOBILE ROBOTICS USING LEGO MINDSTORMS

LEARNING MOBILE ROBOTICS USING LEGO MINDSTORMS LEARNING MOBILE ROBOTICS USING LEGO MINDSTORMS Paulo Leitão, José Gonçalves, José Barbosa Polytechnic Institute of Bragança, Department of Electrical Engineering, Quinta Santa Apolónia, Apartado 1134,P-5301-857

More information

C.I. La chaîne d information LES CAPTEURS. Page 1 sur 5

C.I. La chaîne d information LES CAPTEURS. Page 1 sur 5 LES CAPTEURS C.I. La chaîne d information The Touch Sensor gives your robot a sense of touch. The Touch Sensor detects when it is being pressed by something and when it is released again. Suggestions for

More information

The Systems Approach to Problem Solving

The Systems Approach to Problem Solving The Systems Approach to Problem Solving I. Introduction This course introduces the methodology systems engineers use to solve problems. You will learn about many concepts and tools that systems engineers

More information

2014 New Jersey Core Curriculum Content Standards - Technology

2014 New Jersey Core Curriculum Content Standards - Technology 2014 New Jersey Core Curriculum Content Standards - Technology Content Area Standard Strand Grade Level bands Technology 8.2 Technology Education, Engineering, Design, and Computational Thinking - Programming:

More information

Usability Study of the Department of Defense Joint Analysis System

Usability Study of the Department of Defense Joint Analysis System Usability Study of the Department of Defense Joint Analysis System Doug Bardin, Estelle Hong, Daniel O Loughlin and Zachary Maodus Abstract The Department of Defense (DoD) uses modeling and simulation

More information

DESIGNING WEB LABS FOR TEACHING SECURITY CONCEPTS ABSTRACT

DESIGNING WEB LABS FOR TEACHING SECURITY CONCEPTS ABSTRACT DESIGNING WEB LABS FOR TEACHING SECURITY CONCEPTS ABSTRACT Security education is critical in today s cyber threat environment. Many schools have investigated different approaches to teaching fundamental

More information

The BSN Hardware and Software Platform: Enabling Easy Development of Body Sensor Network Applications

The BSN Hardware and Software Platform: Enabling Easy Development of Body Sensor Network Applications The BSN Hardware and Software Platform: Enabling Easy Development of Body Sensor Network Applications Joshua Ellul jellul@imperial.ac.uk Overview Brief introduction to Body Sensor Networks BSN Hardware

More information

Introducing Software Engineering to the Freshman Student

Introducing Software Engineering to the Freshman Student Introducing Software Engineering to the Freshman Student Yi Liu, Wei Wang and Onyeka Ezenwoye Department of Electrical Engineering and Computer Science South Dakota State University Brookings, SD 57007

More information

A Project Based Approach for Teaching System Analysis, Design, and Implementation Courses

A Project Based Approach for Teaching System Analysis, Design, and Implementation Courses A Project Based Approach for Teaching System Analysis, Design, and Implementation Courses Nabil A. Yousif 1 and Masoud Naghedolfeizi 2 Abstract-In curricula of Computer Information Systems at Fort Valley

More information

Build Better Robots Faster. Radim ŠTEFAN

Build Better Robots Faster. Radim ŠTEFAN Build Better Robots Faster Radim ŠTEFAN What is Virtual Instrumentation? Speed Development with Graphical Programming LabVIEW C* LabVIEW C * * does not include code to generate UI High-Level Design Tools

More information

TRACKING DRIVER EYE MOVEMENTS AT PERMISSIVE LEFT-TURNS

TRACKING DRIVER EYE MOVEMENTS AT PERMISSIVE LEFT-TURNS TRACKING DRIVER EYE MOVEMENTS AT PERMISSIVE LEFT-TURNS Michael A. Knodler Jr. Department of Civil & Environmental Engineering University of Massachusetts Amherst Amherst, Massachusetts, USA E-mail: mknodler@ecs.umass.edu

More information

AC 2008-1581: A COURSE SEQUENCE FOR INTEGRATING PROBLEM SOLVING AND CRITICAL THINKING IN A HYBRID OUTCOME-BASED IS/IT CURRICULUM

AC 2008-1581: A COURSE SEQUENCE FOR INTEGRATING PROBLEM SOLVING AND CRITICAL THINKING IN A HYBRID OUTCOME-BASED IS/IT CURRICULUM AC 2008-1581: A COURSE SEQUENCE FOR INTEGRATING PROBLEM SOLVING AND CRITICAL THINKING IN A HYBRID OUTCOME-BASED IS/IT CURRICULUM Azzedine Lansari, Zayed University Azzedine Lansari received a Ph.D. from

More information

Final Report. LEGO Robot Vehicle Afterschool Workshops: Transportation Engineering Problem Solving (K-12 Workforce Development, NCSU)

Final Report. LEGO Robot Vehicle Afterschool Workshops: Transportation Engineering Problem Solving (K-12 Workforce Development, NCSU) 2014 Final Report LEGO Robot Vehicle Afterschool Workshops: Transportation Engineering Problem Solving (K-12 Workforce Development, NCSU) James B. Martin, PE, MCE, PI North Carolina State University Nancy

More information

NXT Robot Challenge. Introduction. Educational Goals. References

NXT Robot Challenge. Introduction. Educational Goals. References NXT Robot Challenge Introduction NXT Mindstorms robot kits are self contained building tools that allows students to explore various aspects of engineering relatively quickly, easily and without any supplemental

More information

Lego Robot Tutorials Touch Sensors

Lego Robot Tutorials Touch Sensors Lego Robot Tutorials Touch Sensors Bumper Cars with a Touch Sensor With a touch sensor and some robot programming, you can make your robot search its way around the room. It can back up and turn around

More information

Controlling a Mobile Robot with a Personal Digital Assistant

Controlling a Mobile Robot with a Personal Digital Assistant Session 2620 Controlling a Mobile Robot with a Personal Digital Assistant Robert L. Avanzato Penn State Abington Abstract Penn State Abington has been exploring the application of personal digital assistant

More information

Multi-core Curriculum Development at Georgia Tech: Experience and Future Steps

Multi-core Curriculum Development at Georgia Tech: Experience and Future Steps Multi-core Curriculum Development at Georgia Tech: Experience and Future Steps Ada Gavrilovska, Hsien-Hsin-Lee, Karsten Schwan, Sudha Yalamanchili, Matt Wolf CERCS Georgia Institute of Technology Background

More information

LEHMAN COLLEGE OF THE CITY UNIVERSITY OF NEW YORK DEPARTMENT OF MATHEMATICS AND COMPUTER SCIENCE CURRICULUM CHANGE

LEHMAN COLLEGE OF THE CITY UNIVERSITY OF NEW YORK DEPARTMENT OF MATHEMATICS AND COMPUTER SCIENCE CURRICULUM CHANGE LEHMAN COLLEGE OF THE CITY UNIVERSITY OF NEW YORK DEPARTMENT OF MATHEMATICS AND COMPUTER SCIENCE CURRICULUM CHANGE 1. Type of Change: Course Description and Credit Change. 2. Course Description: From:

More information

information technology

information technology information technology Start Here. More than 65,000 futures have started at Kirkwood... Yours can be one of them! Get a great start here in an information technology-related field, then go straight into

More information

School of Engineering Consent Agenda December 10, 2014 School of Engineering Graduate Studies Committee

School of Engineering Consent Agenda December 10, 2014 School of Engineering Graduate Studies Committee School of Engineering Consent Agenda December 10, 2014 School of Engineering Graduate Studies Committee Extended Summary of Online K-12 Engineering Education (OKEE) Program This document includes the Executive

More information

Computer Science & Engineering Department. Robert McCartney Director of Undergraduate Computing Education ITE 239 860-486-5232 robert@engr.uconn.

Computer Science & Engineering Department. Robert McCartney Director of Undergraduate Computing Education ITE 239 860-486-5232 robert@engr.uconn. Computer Science & Engineering Department Robert McCartney Director of Undergraduate Computing Education ITE 239 860-486-5232 robert@engr.uconn.edu The Tower and the Glass Balls Given a tower of N floors,

More information

A BRIEF INTRODUCTION TO COMPUTER PROGRAMMING Scratch, LEGO MINDSTORMS, and Visual Basic. July 24, 2015

A BRIEF INTRODUCTION TO COMPUTER PROGRAMMING Scratch, LEGO MINDSTORMS, and Visual Basic. July 24, 2015 A BRIEF INTRODUCTION TO COMPUTER PROGRAMMING Scratch, LEGO MINDSTORMS, and Visual Basic July 24, 2015 ABSTRACT This project was created to provide a better understanding of computer programs and their

More information

YOSEMITE REGIONAL OCCUPATIONAL PROGRAM COURSE OUTLINE. COURSE TITLE: Robotics Engineering I ROP S1 Robotics Engineering I ROP S2

YOSEMITE REGIONAL OCCUPATIONAL PROGRAM COURSE OUTLINE. COURSE TITLE: Robotics Engineering I ROP S1 Robotics Engineering I ROP S2 YOSEMITE REGIONAL OCCUPATIONAL PROGRAM COURSE OUTLINE COURSE TITLE: Robotics Engineering I ROP S1 Robotics Engineering I ROP S2 COURSE NUMBER: ROP71501 ROP71502 RECOMMENDED GRADE LEVEL: 11-12 ABILITY LEVEL:

More information

EXPERIENCES BUILDING A COLLEGE VIDEO GAME DESIGN COURSE

EXPERIENCES BUILDING A COLLEGE VIDEO GAME DESIGN COURSE EXPERIENCES BUILDING A COLLEGE VIDEO GAME DESIGN COURSE Paul E. Dickson Hampshire College School of Cognitive Science 893 West St. Amherst, MA 01002, USA (413) 559-5861 pdickson@hampshire.edu ABSTRACT

More information

River Dell Regional School District. Computer Programming with Python Curriculum

River Dell Regional School District. Computer Programming with Python Curriculum River Dell Regional School District Computer Programming with Python Curriculum 2015 Mr. Patrick Fletcher Superintendent River Dell Regional Schools Ms. Lorraine Brooks Principal River Dell High School

More information

Computer and Information Science

Computer and Information Science Computer and Information Science www.odessa.edu/dept/computer Faculty: Katrieva Jones- Munroe, chair The computer information systems curriculum provides students with practical, job- related computer

More information

Pine Hill Public Schools Curriculum

Pine Hill Public Schools Curriculum Pine Hill Public Schools Curriculum Content Area: Course Title/ Grade Level: Electives Robotics Unit 1: Safety and Classroom Procedures Duration: 1 Week Unit 2: Intro to Robotics Duration: 3 Weeks Unit

More information

How To Play Botball

How To Play Botball Using Robots to Teach 6-12 Grade Students to Program Steve Goodgame Executive Director KISS Institute for Practical Robotics 1-405-579-4609 www.kipr.org www.botball.org 1 Aerial Robot Contest What is a

More information

Encourage students interest in computer science, game design, engineering and art with ProjectFUN!

Encourage students interest in computer science, game design, engineering and art with ProjectFUN! 2014 Encourage students interest in computer science, game design, engineering and art with ProjectFUN! Letter from the President Dear Parents and Students, Welcome to the 19th year of DigiPen s ProjectFUN

More information

CLASS U - MILITARY SCIENCE

CLASS U - MILITARY SCIENCE LIBRARY OF CONGRESS CLASSIFICATION OUTLINE CLASS U - MILITARY SCIENCE For military history, see D-F (Click each subclass for details) Subclass U Subclass UA Subclass UB Subclass UC Subclass UD Subclass

More information

JavaOne4Kids. Saturday, October 24, 2015. Agenda and Session Descriptions. Copyright 2014, Oracle and/or its affiliates. All rights reserved.

JavaOne4Kids. Saturday, October 24, 2015. Agenda and Session Descriptions. Copyright 2014, Oracle and/or its affiliates. All rights reserved. JavaOne4Kids Saturday, October 24, 2015 Agenda and Session Descriptions Agenda SATURDAY OCT 24 8:00 AM Registration Check in/ Breakfast snack 9:00 AM- 9:35 AM Opening Comments 9:45 AM- 11:45 AM Rm301 Rm302

More information

CyberNEXS Global Services

CyberNEXS Global Services CyberNEXS Global Services CYBERSECURITY A cyber training, exercising, competition and certification product for maximizing the cyber skills of your workforce The Cyber Network EXercise System CyberNEXS

More information

Improving learning outcomes for first year introductory programming students

Improving learning outcomes for first year introductory programming students Improving learning outcomes for first year introductory programming students Sven Venema School of Information and Communication Technology, Griffith University, Brisbane, Australia Abstract Andrew Rock

More information

TEACHING PROJECT COURSES IN LARGE SCALE USING INDUSTRY LIKE METHODS EXPERIENCES AFTER TEN YEARS

TEACHING PROJECT COURSES IN LARGE SCALE USING INDUSTRY LIKE METHODS EXPERIENCES AFTER TEN YEARS TEACHING PROJECT COURSES IN LARGE SCALE USING INDUSTRY LIKE METHODS EXPERIENCES AFTER TEN YEARS Tomas Svensson, Svante Gunnarsson Linköping University, Sweden ABSTRACT A Design-Build-Test (DBT) project

More information

A Business Intelligence Training Document Using the Walton College Enterprise Systems Platform and Teradata University Network Tools Abstract

A Business Intelligence Training Document Using the Walton College Enterprise Systems Platform and Teradata University Network Tools Abstract A Business Intelligence Training Document Using the Walton College Enterprise Systems Platform and Teradata University Network Tools Jeffrey M. Stewart College of Business University of Cincinnati stewajw@mail.uc.edu

More information

The Terrain and Tactics of If You Survive

The Terrain and Tactics of If You Survive The Terrain and Tactics of If You Survive Mechelle Rouchon Course: History 498 Instructor: Dr. Harry Laver Assignment: Analysis First Lieutenant George Wilson served in the U.S. Army during the last, but

More information

Education Through Video Games

Education Through Video Games Education Through Video Games Nicholas Pennola This paper was completed and submitted in partial fulfillment of the Master Teacher Program, a 2-year faculty professional development program conducted by

More information

LEVERAGING HARDWARE DESCRIPTION LANUGAGES AND SPIRAL LEARNING IN AN INTRODUCTORY COMPUTER ARCHITECTURE COURSE

LEVERAGING HARDWARE DESCRIPTION LANUGAGES AND SPIRAL LEARNING IN AN INTRODUCTORY COMPUTER ARCHITECTURE COURSE LEVERAGING HARDWARE DESCRIPTION LANUGAGES AND SPIRAL LEARNING IN AN INTRODUCTORY COMPUTER ARCHITECTURE COURSE John H. Robinson and Ganesh R. Baliga Computer Science Department Rowan University, Glassboro,

More information

AP Computer Science A - Syllabus Overview of AP Computer Science A Computer Facilities

AP Computer Science A - Syllabus Overview of AP Computer Science A Computer Facilities AP Computer Science A - Syllabus Overview of AP Computer Science A Computer Facilities The classroom is set up like a traditional classroom on the left side of the room. This is where I will conduct my

More information

SECURITY ACROSS THE CURRICULUM: USING COMPUTER SECURITY TO TEACH COMPUTER SCIENCE PRINCIPLES

SECURITY ACROSS THE CURRICULUM: USING COMPUTER SECURITY TO TEACH COMPUTER SCIENCE PRINCIPLES SECURITY ACROSS THE CURRICULUM: USING COMPUTER SECURITY TO TEACH COMPUTER SCIENCE PRINCIPLES Major Gregory White, Ph.D. Captain Gregory Nordstrom (ret.) 2354 Fairchild Dr., Suite 6K41 HQ USAFA/DFCS USAF

More information

ROBOTC Software Inspection Guide with Additional Help Documentation

ROBOTC Software Inspection Guide with Additional Help Documentation VEX ROBOTICS COMPETITION ROBOTC Software Inspection Guide with Additional Help Documentation VEX Cortex Software Inspection Steps: 1. Cortex Firmware Inspection using ROBOTC 2. Testing Cortex Robots using

More information

The Fibonacci Sequence

The Fibonacci Sequence The Fibonacci Sequence Subject Area(s) Associated Unit Associated Lesson Activity Title Header Algebra, Problem Solving, Science & Technology Fibonacci s Robots Grade Level 7 (6-8) Activity Dependency

More information

New Modular Tactical Vest improves Marines combat effectiveness

New Modular Tactical Vest improves Marines combat effectiveness MTV New Modular Tactical Vest improves Marines combat effectiveness Dedra Jones, Corporate Communications, USMC, June 2009 Rather than waiting for the next generation of body armor in the years to come,

More information

Frances: A Tool For Understanding Code Generation

Frances: A Tool For Understanding Code Generation Frances: A Tool For Understanding Code Generation Tyler Sondag Dept. of Computer Science Iowa State University 226 Atanasoff Hall Ames, IA 50014 sondag@cs.iastate.edu Kian L. Pokorny Division of Computing

More information

ADVANCED SCHOOL OF SYSTEMS AND DATA STUDIES (ASSDAS) PROGRAM: CTech in Computer Science

ADVANCED SCHOOL OF SYSTEMS AND DATA STUDIES (ASSDAS) PROGRAM: CTech in Computer Science ADVANCED SCHOOL OF SYSTEMS AND DATA STUDIES (ASSDAS) PROGRAM: CTech in Computer Science Program Schedule CTech Computer Science Credits CS101 Computer Science I 3 MATH100 Foundations of Mathematics and

More information

A Concrete Introduction. to the Abstract Concepts. of Integers and Algebra using Algebra Tiles

A Concrete Introduction. to the Abstract Concepts. of Integers and Algebra using Algebra Tiles A Concrete Introduction to the Abstract Concepts of Integers and Algebra using Algebra Tiles Table of Contents Introduction... 1 page Integers 1: Introduction to Integers... 3 2: Working with Algebra Tiles...

More information

Session T1D Assessing Course Outcomes for a Freshman Engineering Computer Programming Course

Session T1D Assessing Course Outcomes for a Freshman Engineering Computer Programming Course Assessing Course Outcomes for a Freshman Engineering Computer Programming Course Robert Rabb, Monika Bubacz, Jason Howison, and Kevin Skenes The Citadel, rrabb@citadel.edu, mbubacz@citadel.edu, jhowison@citadel.edu,

More information

The Darwin Game 2.0 Programming Guide

The Darwin Game 2.0 Programming Guide The Darwin Game 2.0 Programming Guide In The Darwin Game creatures compete to control maps and race through mazes. You play by programming your own species of creature in Java, which then acts autonomously

More information

ENGINEERING AND TECHNOLOGY EDUCATION DEPARTMENT

ENGINEERING AND TECHNOLOGY EDUCATION DEPARTMENT ENGINEERING AND TECHNOLOGY EDUCATION DEPARTMENT Advanced Manufacturing I 5608 TEH600, TEH601 Grades 10-12 Dual credit through Ivy Tech Recommended Prerequisite: Introduction to Advanced Manufacturing and

More information

CURRICULUM VITAE Herbert L. Dershem

CURRICULUM VITAE Herbert L. Dershem CURRICULUM VITAE Visiting Professor of Computer Science United States Air Force Academy USAF Academy, CO 80840 Phone: (719) 472-3590 Education: B.S. University of Dayton, 1965 M.S. (Computer Science) Purdue

More information

Chapter 13: Program Development and Programming Languages

Chapter 13: Program Development and Programming Languages Understanding Computers Today and Tomorrow 12 th Edition Chapter 13: Program Development and Programming Languages Learning Objectives Understand the differences between structured programming, object-oriented

More information

ROBOTICS AND AUTONOMOUS SYSTEMS

ROBOTICS AND AUTONOMOUS SYSTEMS ROBOTICS AND AUTONOMOUS SYSTEMS Simon Parsons Department of Computer Science University of Liverpool LECTURE 3 PROGRAMMING ROBOTS comp329-2013-parsons-lect03 2/50 Today Before the labs start on Monday,

More information

EasyC. Programming Tips

EasyC. Programming Tips EasyC Programming Tips PART 1: EASYC PROGRAMMING ENVIRONMENT The EasyC package is an integrated development environment for creating C Programs and loading them to run on the Vex Control System. Its Opening

More information

Analysis of Micromouse Maze Solving Algorithms

Analysis of Micromouse Maze Solving Algorithms 1 Analysis of Micromouse Maze Solving Algorithms David M. Willardson ECE 557: Learning from Data, Spring 2001 Abstract This project involves a simulation of a mouse that is to find its way through a maze.

More information

Using Karel with Eclipse

Using Karel with Eclipse Mehran Sahami Handout #6 CS 106A September 23, 2015 Using Karel with Eclipse Based on a handout by Eric Roberts Once you have downloaded a copy of Eclipse as described in Handout #5, your next task is

More information

BUILD VERSUS BUY. Understanding the Total Cost of Embedded Design. www.ni.com/buildvsbuy

BUILD VERSUS BUY. Understanding the Total Cost of Embedded Design. www.ni.com/buildvsbuy BUILD VERSUS BUY Understanding the Total Cost of Embedded Design Table of Contents I. Introduction II. The Build Approach: Custom Design a. Hardware Design b. Software Design c. Manufacturing d. System

More information

Robotics for distance learning: a case study from a UK masters programme

Robotics for distance learning: a case study from a UK masters programme Robotics for distance learning: a case study from a UK masters programme Jenny Carter De Montfort University The Gateway Leicester LE1 9BH jennyc@dmu.ac.uk http://www.cse.dmu.ac.uk/msccir/ Simon Coupland

More information

Itawamba Community College Program Review Career-Technical and Health Science Programs

Itawamba Community College Program Review Career-Technical and Health Science Programs Itawamba Community College Program Review Career-Technical and Health Science Programs I. Program Information 1. Name of Program Computer Networking Technology 2. Submission Date of Program Review 6/21/2012

More information

Embedded Software development Process and Tools: Lesson-3 Host and Target Machines

Embedded Software development Process and Tools: Lesson-3 Host and Target Machines Embedded Software development Process and Tools: Lesson-3 Host and Target Machines 1 1. Host-Target Based Development Approach 2 Host-Target System Development Approach During development process, a host

More information

The second goal is to provide a list of tips, tricks, and best known methods that have been discovered over the life span of the course.

The second goal is to provide a list of tips, tricks, and best known methods that have been discovered over the life span of the course. ECE1882 LEGO NXT Brick Programming Guide Introduction This document was written with two goals in mind. The first is to orient a new user to the graphical programming language used in the MindSpring NXT

More information

CS Matters in Maryland CS Principles Course

CS Matters in Maryland CS Principles Course CS Matters in Maryland CS Principles Course Curriculum Overview Project Goals Computer Science (CS) Matters in Maryland is an NSF supported effort to increase the availability and quality of high school

More information

COMPUTER SCIENCE/ COMPUTER NETWORKING AND TECHNOLOGIES (COSC)

COMPUTER SCIENCE/ COMPUTER NETWORKING AND TECHNOLOGIES (COSC) COMPUTER SCIENCE/ COMPUTER NETWORKING AND TECHNOLOGIES (COSC) Computer Science (COSC) courses are offered by the School of Information Arts and Technologies within the Yale Gordon College of Liberal Arts.

More information

Department of Computer Science

Department of Computer Science 82 Advanced Biochemistry Lab II. (2-8) The second of two laboratory courses providing instruction in the modern techniques of biochemistry. Experiments are performed on the isolation, manipulation and

More information