June 14, 2015
June 14, 2015
June 17, 2015
26.192.1 - 26.192.10
An Integrated Course in Programming for Laboratory and Process ControlThis paper describes an integrated course in programming techniques for controlling laboratoryexperiments and industrial processes. The course is intended to provide first-year engineeringtechnology students a broad overview of available programming technologies. To do this, twoprogramming tools were chosen—the C programming language and LabVIEW. The first half ofthe course is dedicated to C programming. Topics include a brief introduction to computers andprogramming, I/O, data types, expressions and assignments, relational operators, loops andbranching, functions, and arrays. This part of the course is taught in a computer laboratory sothat each student has an individual computer and experimental hardware setup. Every lectureincludes simple exercises (~ 5 minutes each) that are preformed by the students in real time asthe relevant topic is covered. Most lectures are followed by a laboratory exercise. Someexamples of the exercises include building a “traffic light” using a three-color LED, building asimple proximity warning system using an acoustic rangefinder and three-color LED, andcontrolling a servo motor. The laboratory exercises are based on the Arduino microcontrollerplatform. Code::Blocks is used as the development environment. The advantage of usingCode::Blocks is that it supports programming in both standard C and Arduino C, so that thestudents do not need to use a separate tool (e.g., Arduino IDE) to program the microcontroller.The LabVIEW part of the course is dedicated to enhancing students’ understanding ofmonitoring and control processes. Using LabVIEW, students are required to create virtualexperimental set-up as well as create monitoring and control interfaces with a physicalexperiment. In this integrated approach, they are using lab modules similar to those used in the Ccomponent of the course, so that they can evaluate and compare the two approaches, and are alsoable to use them both when needed. Laboratory activities include temperature monitoring andcontrol, sequential exercise such as gate opening and closing, state machine type of exercises andalso complex overarching exercises such as “lottery scheme play”. Besides the scholasticpurposes of these activities, students gain a tremendous hands-on experiences using real-lifeexamples.Students enter the course with little or no formal training in either C or LabVIEW. Expectedoutcomes include the ability of the students to explain and use basic I/O operations, data types,assignments, functions, and simple control statements to develop C and LabVIEW programs forindustrial and laboratory applications, and to use industry-standard development environments.Multiple forms of assessment are used to demonstrate success, including student surveys, courseexams, and homework.
ASEE holds the copyright on this document. It may be read by the public free of charge. Authors may archive their work on personal websites or in institutional repositories with the following citation: © 2015 American Society for Engineering Education. Other scholars may excerpt or quote from these materials with the same citation. When excerpting or quoting from Conference Proceedings, authors should, in addition to noting the ASEE copyright, list all the original authors and their institutions and name the host city of the conference. - Last updated April 1, 2015