Engineering H192 - Computer Programming Course Organization Lecture 1 Winter Quarter Gateway Engineering Education Coalition Lect 1 P. 1 Engineering H192 - Computer Programming Topics For Today • • • • • • • • • This Year and This Quarter Meet the Instructional Team Meet Each Other ENG H192 Course Organization Review the ENG H192 Course Syllabus "Hands-On" Activities for ENG H192 Design Project for ENG H192 What Is a Computer? What Are Computers Used For? Winter Quarter Gateway Engineering Education Coalition Lect 1 P. 2 Engineering H192 - Computer Programming This Year and This Quarter • A Purpose – Fundamentals of Engineering for later courses • Another Purpose – Provide a set of skills for later courses AND for co-op / internships • Skills? – Au – Sketching, CAD, Reading Drawings, How Things Work, Teamwork, Engineering Design – Wi – Programming in C/C++/MATLAB, Data Acquisition and Analysis, Teamwork, Engr Design – Sp – Putting It All Together, Drawing, CAD, Programming, Project Planning, Mgmt, Documentation, Engr Design & Build, TEAMWORK, Competition Winter Quarter Gateway Engineering Education Coalition Lect 1 P. 3 Engineering H192 - Computer Programming Introductions • Instructor: Rick Freuler Coordinator, Fundamentals of Engineering for Honors Program Senior Researcher, Aerospace Engineering and Aviation Associate Director, Aero-Astro Research Laboratory • Office: 244H Hitchcock Hall Lovely little closet inside Hitchcock 244 at north end of 2nd floor • E-mail: Freuler.1@osu.edu • Office ph: 614.688.0499 (VM) • Home ph: 614.436.2202 (before 9pm) Winter Quarter Gateway Engineering Education Coalition Lect 1 P. 4 Engineering H192 - Computer Programming Introductions Teaching Assistants @ 1:30: • In the classroom – Ted Pavlic – Pavlic.3@osu.edu Joe Ryan – Ryan.311@osu.edu • In the "hands-on" lab – Aaron Lambert* – Lambert.139@osu.edu David Hawn – Hawn.4@osu.edu * Lab GTA/Presenter Winter Quarter Gateway Engineering Education Coalition Lect 1 P. 5 Engineering H192 - Computer Programming Introductions Teaching Assistants @ 3:30: • In the classroom – Lori Engelhardt – Engelhardt.18@osu.edu Zak Schank – Schank.1@osu.edu • In the "hands-on" lab – James Copus* – Copus.2@osu.edu Eric Schmidt – Schmidt.298@osu.edu * Lab GTA/Presenter Winter Quarter Gateway Engineering Education Coalition Lect 1 P. 6 Engineering H192 - Computer Programming Self Introductions • Introduce yourself to the person beside you. Tell her or him your name, hometown, and most favorite or fun experience of your winter break. • Introduce the person beside you to the persons across the table, including hometown and favorites. Winter Quarter Gateway Engineering Education Coalition Lect 1 P. 7 Engineering H192 - Computer Programming ENG H192 Course Syllabus • Course Meeting Times and Places: – Lecture/Discussion in Room 206/346 – Mondays, Tuesdays, and Thursdays/Wednesdays – Hands-on Lab in Room 208 – Most (but not all) Wednesdays/Thursdays • Instructional Team Roles Winter Quarter Gateway Engineering Education Coalition Lect 1 P. 8 Engineering H192 - Computer Programming ENG H192 Course Objectives • THIS COURSE IS DESIGNED TO HELP YOU: • • • • • • Understand engineering Appreciate various disciplines Experience the design process Learn and practice fundamental skills Learn graphics and computer applications Develop study, teamwork, and communication skills Winter Quarter Gateway Engineering Education Coalition Lect 1 P. 9 Engineering H192 - Computer Programming ENG H192 Course Objectives • THIS COURSE WILL ENABLE YOU TO: • Solve engineering problems • Develop computer algorithms • Acquire working knowledge of C, Unix, programming, MATLAB, editing • Experience some “hands-on” engineering lab activities Winter Quarter Gateway Engineering Education Coalition Lect 1 P. 10 Engineering H192 - Computer Programming “Hands-On” Activities • Learn some data acquisition system fundamentals • Measure and analyze rocket engine performance • Collect data with a simple real-time data acquisition system • Ride a bicycle and learn more about stress and strain Winter Quarter Gateway Engineering Education Coalition Lect 1 P. 11 Engineering H192 - Computer Programming “Hands-On” Activities • Learn some basic digital logic circuit concepts • Dissect a common appliance and eat some ice cream • Program a microprocessor to control a "realworld" device • Build and analyze a simple analog power supply Winter Quarter Gateway Engineering Education Coalition Lect 1 P. 12 Engineering H192 - Computer Programming Design Project A small design/build experience is included as a part of ENG H192. It will: • Be a software-based project • Utilize the Handy Board controller (which is used to control the robots in ENG H193) • Involve sensors and real-time programming • Require good software documentation Winter Quarter Gateway Engineering Education Coalition Lect 1 P. 13 Engineering H192 - Computer Programming Evaluation / Course Grades COURSE GRADES TO BE BASED ON: • • • • • • • DAILY ASSIGNMENTS (26 @ 1.0%) MIDTERM EXAMS (2 @ 11%) LAB REPORTS (7 @ 2.5%) QUIZZES (6 @ 2%) JOURNAL ENTRIES (10 @ 0.3%) DESIGN PROJECT (1 @ 5.5%) FINAL EXAM (1 @ 14%) Winter Quarter Gateway Engineering Education Coalition 26.0% 22.0% 17.5% 12.0% 3.0% 5.5% 14.0% Lect 1 P. 14 Engineering H192 - Computer Programming Materials And Supplies ENG H192 "COURSE PACKET" WINTER 2003 EDITION • "Class Notes - Region One Unix Manual" • "Lecture Notes - ENG H192" • "Daily Assignments - ENG H192” Winter Quarter Gateway Engineering Education Coalition Lect 1 P. 15 Engineering H192 - Computer Programming Materials And Supplies • Required Text - "C How To Program", by Deitel & Deitel, 3rd Ed. • Required Text – “MATLAB – An Introduction with Applications”, by Gilat • Access Required Text - "The New Way Things Work", by Macauley • Floppy Disks (3.5” HD) or 100mb Zip Disk • 3-ring Notebook Winter Quarter Gateway Engineering Education Coalition Lect 1 P. 16 Engineering H192 - Computer Programming Materials And Supplies And from Autumn quarter you will need and find helpful: • Access Required Text - "Tools and Tactics of Design", by Dominick • Access Required Text – “A Guide to Writing as an Engineer", by Beer Winter Quarter Gateway Engineering Education Coalition Lect 1 P. 17 Engineering H192 - Computer Programming What You Will Learn • • • • • • • • Engineering problem solving C programming language Language standards Programming conventions Unix tools Computer applications MATLAB computational package Laboratory report format Winter Quarter Gateway Engineering Education Coalition Lect 1 P. 18 Engineering H192 - Computer Programming What Is A Computer ? • A system or device capable of performing computations and making logical decisions at speeds in excess of billions per second. • Computers process data under the control of sets of instructions called computer programs--those who write the programs are computer programmers. • The various devices comprise the hardware. • The collection of programs is the software. • What is firmware? Winter Quarter Gateway Engineering Education Coalition Lect 1 P. 19 Engineering H192 - Computer Programming Hitchcock Hall Computer Systems Password Req’d 2nd Password Req’d SGI Server PC Servers Rm 324/42 NETWORK Rm 346 Labs Rm 206 Winter Quarter Second Floor Gateway Engineering Education Coalition Rm 224 Lect 1 P. 20 Engineering H192 - Computer Programming Simplified Computer Organization Computer can be divided into six logical units: • • • • • Input unit -- the "receiving" section Output unit -- the "shipping" department Memory unit -- like a stockroom in a store Arithmetic & logic unit -- like "manufacturing" Central processing unit -- "management" – Note: The ALU is often considered part of the CPU • Secondary storage -- high capacity warehouse Winter Quarter Gateway Engineering Education Coalition Lect 1 P. 21 Engineering H192 - Computer Programming Engineers Use Computers For • • • • • • DATA ACQUISITION DEVICE CONTROL COMMUNICATION GAMES EXPERT SYSTEMS PROCESS CONTROL Winter Quarter • • • • • • • DATA ANALYSIS COMPUTATIONS SIMULATION RECORD KEEPING AUTOMATION GRAPHICS ROBOTICS Gateway Engineering Education Coalition Lect 1 P. 22 Engineering H192 - Computer Programming Some Uses For Computer Chips • ENGINES • WATCHES • ANTI-LOCK BRAKE SYSTEMS • FAX MACHINES • ELEVATORS • CAMERAS • GASOLINE PUMPS • THERMOSTATS • MOBILE PHONES Winter Quarter • • • • • • • • • BURGLAR ALARMS TREADMILLS GREETING CARDS CALCULATORS ANSWERING MACHINES ATMs PERSONAL COMPUTERS MICROWAVES GAMES Gateway Engineering Education Coalition Lect 1 P. 23 Engineering H192 - Computer Programming Languages And Applications GENERAL SPECIAL APPLICATIONS BASIC PASCAL COBOL FORTRAN C/C++ LABVIEW LISP MATHCAD MATLAB MATHEMATICA MAPLE EXCEL WORD CADKEY POWERPOINT AXUM LABVIEW Winter Quarter Gateway Engineering Education Coalition Lect 1 P. 24 Engineering H192 - Computer Programming Finding A Solution To Problems • The solution to a problem involves executing a series of actions in a specific order. • The procedure for solving a problem expressed in terms of: 1. The actions to be executed, and 2. The order in which they are to be executed Is called an algorithm. Winter Quarter Gateway Engineering Education Coalition Lect 1 P. 25 Engineering H192 - Computer Programming Control Structures CONTROL STRUCTURES FOR THE ORDER OF EXECUTION ARE: • • • • SEQUENCE SELECTION REPETITION ABSTRACTION Winter Quarter Gateway Engineering Education Coalition Lect 1 P. 26 Engineering H192 - Computer Programming Part Of The “Art” Of Programming “The most important thing in life is showing up.” Woody Allen “The most important thing in computer programming is SYNTAX.” Mike Miller “Programming is NOT a spectator sport. To become good you must practice - practice - practice.” Rick Freuler Winter Quarter Gateway Engineering Education Coalition Lect 1 P. 27