The text is available in The Ohio State University Bookstore. It has not been significantly changed since 1998, and so used or borrowed copies will typically be fine.Sample schedule (instructor’s ordering, pre-lab activities, and exams take precedence): Due to hardware and time constraints, Labs 8 and 9 are typically combined in the same week.
Contents |
SOURCE CODE: LaTeX has been used to generate the digital documents for this class below. The Mercurial repository at http://hg.tedpavlic.com/courses/osu/ece557/ archives the source code of these lab resources.
LICENSING AND REUSE: Unless otherwise expressly stated, all original material of whatever nature created by Theodore P. Pavlic and included in this website and any related pages, including its archives, is protected by copyright and licensed under a Creative Commons Attribution-Noncommercial 3.0 United States License ("CCPL"). Use of this website is expressly conditioned upon the user’s acceptance of the terms and provisions of the CCPL. Use of this site and any of the materials thereon constitutes acceptance of the CCPL by the user.
The book likes to do a lot of copying. There is no need to copy the whole file structure into v if you don’t want to. Additionally, those getfield calls are not necessary because Data is a simple field name. So an alternative is:load filename; % Loads file structure into filename v = filename; % Copies filename structure to v t = getfield(v.X(1), 'Data'); % Copies X time vector into t y1 = getfield(v.Y(1), 'Data'); % Copies Y(1) vector into y1 y2 = getfield(v.Y(2), 'Data'); % Copies Y(2) vector into y2 mean( y1( find( t >= 4 ) ) ) % Average of Y(1) for time after 4 s mean( y1( t >= 4 ) ) % Equivalent averaging statement
In fact, we can get rid of all copying and a few lines.load filename; % Loads file into filename t = filename.X(1).Data; % Copies X time vector into t y1 = filename.Y(1).Data; % Copies Y(1) vector into y1 y2 = filename.Y(2).Data; % Copies Y(2) vector into y2 mean( y1( t >= 4 ) ) % Average of Y(1) for time after 4 s
load filename; % Loads up filename mean( filename.Y(1).Data( filename.X(1).Data >= 4 ) ) % A mean shortcut
u(0) = A Gcompensator(∞)/(1+Gcompensator(∞) Gplant(∞)),and the steady-state error
ess = e(∞) = A/(1+Gcompensator(0) Gplant(0)).Remember that the final value theorem (i.e., the steady-state error formula) only holds if the time-domain limit exists (i.e., if all closed-loop poles are either on the left-hand side of the plane or are at s = 0). Also note that because we use a rate limiter on the step inputs in the lab, the initial u(0) observed in our experiments will be zero because the input looks more like a steeply sloped ramp than a step.
u(0) = A Gcompensator(∞)/(1+Gcompensator(∞) Gplant(∞)),and the steady-state error
ess = e(∞) = A/(1+Gcompensator(0) Gplant(0)).Remember that the final value theorem (i.e., the steady-state error formula) only holds if the time-domain limit exists (i.e., if all closed-loop poles are either on the left-hand side of the plane or are at s = 0). Also note that because we use a rate limiter on the step inputs in the lab, the initial u(0) observed in our experiments will be zero because the input looks more like a steeply sloped ramp than a step.
u(0) = A Gcompensator(∞)/(1+Gcompensator(∞) Gplant(∞)),and the steady-state error
ess = e(∞) = A/(1+Gcompensator(0) Gplant(0)).Remember that the final value theorem (i.e., the steady-state error formula) only holds if the time-domain limit exists (i.e., if all closed-loop poles are either on the left-hand side of the plane or are at s = 0). Also note that because we use a rate limiter on the step inputs in the lab, the initial u(0) observed in our experiments will be zero because the input looks more like a steeply sloped ramp than a step.
The results from this simulation should match your lab data much better than your pre-lab simulation. (note: nearly identical code is used in the PID.m script linked above)%% Fast book plant: plant_num = [1], plant_den = [0.0026 0.1081 0] %% Slow lab plant: plant_num = [1], plant_den = [0.0039 0.1081 0] % The plant plant = tf( plant_num, plant_den ); % The PI part of the PID controller PIcontroller = tf( [Kp Ki], [1 0] ); % The filtered derivative part of the controller (in lab, a = 200) Gdf = tf( [Kd 0], [1/a 1] ); % The plant modified by the filtered derivative plantGdf = plant/(1+Gdf*plant); % The "open loop" system now includes the differentiator sysdf = PIcontroller*plantGdf; % Generate a time vector with 1000 points from 0 to 0.5 seconds t = linspace(0,0.5,1000); % Calculate the expected output, error, and control signals y = step( sysdf/(1+sysdf), t ); e = step( 1/(1+sysdf), t ); u = step( PIcontroller/(1 + plant*(PIcontroller + Gdf)), t ); % note: filteredPIDcontroller = PIcontroller + Gdf
u(0) = A Gcompensator(∞)/(1+Gcompensator(∞) Gplant(∞)),and the steady-state error
ess = e(∞) = A/(1+Gcompensator(0) Gplant(0)).Remember that the final value theorem (i.e., the steady-state error formula) only holds if the time-domain limit exists (i.e., if all closed-loop poles are either on the left-hand side of the plane or are at s = 0). Also note that because we use a rate limiter on the step inputs in the lab, the initial u(0) observed in our experiments will be zero because the input looks more like a steeply sloped ramp than a step.
u(0) = A Gcompensator(∞)/(1+Gcompensator(∞) Gplant(∞)),and the steady-state error
ess = e(∞) = A/(1+Gcompensator(0) Gplant(0)).Remember that the final value theorem (i.e., the steady-state error formula) only holds if the time-domain limit exists (i.e., if all closed-loop poles are either on the left-hand side of the plane or are at s = 0). Also note that because we use a rate limiter on the step inputs in the lab, the initial u(0) observed in our experiments will be zero because the input looks more like a steeply sloped ramp than a step.
u(0) = A Gcompensator(∞)/(1+Gcompensator(∞) Gplant(∞)),and the steady-state error
ess = e(∞) = A/(1+Gcompensator(0) Gplant(0)).Remember that the final value theorem (i.e., the steady-state error formula) only holds if the time-domain limit exists (i.e., if all closed-loop poles are either on the left-hand side of the plane or are at s = 0). Also note that because we use a rate limiter on the step inputs in the lab, the initial u(0) observed in our experiments will be zero because the input looks more like a steeply sloped ramp than a step.
Engineers are not scientists in the traditional sense. Scientists generate knowledge about the natural world by observing natural phenomena (in fact, the word "science" comes from the Latin for "knowledge" or "knowing"). Engineers use that knowledge to generate new technologies that aid in human activities, but they are rarely concerned with generating new knowledge about the natural world. Instead, engineers generate knowledge about their own creations. While the subject matter is different, the method behind the generation of knowledge is identical. That is, engineers are "technoscientists"; they use the scientific method to generate knowledge about technology.
In the engineering laboratory, you should practice all of the steps of the scientific method. In particular,
These steps should influence everything you do in the lab and everything you write in your report.
- Define the question (e.g., "How does a certain filter respond to a generic input signal?")
- Gather information and resources (e.g., recall your operational amplifier theory and the physical characteristics of passive electronic devices)
- Form hypothesis (e.g., "The filter will act like an abstract linear time-invariant system with transfer function H(s).")
- Perform experiment and collect data (e.g., measure magnitude and phase response at several frequencies)
- Analyze data (e.g., plot the data)
- Interpret data and draw conclusions that serve as starting point for new hypothesis (e.g., compare measured and expected responses and draw the conclusion that the theoretical model matches the qualitative low-pass behavior of the system but matches poorly in the neighborhood of the corner frequency. Suggest that cable resistance or component tolerances may have changed the effective corner frequency. Suggest a new experiment that measures cable resistance and repeats trials over several components with tight tolerances)
- Publish results (e.g., submit your lab report)
- Retest (e.g., assume that others will read and respond to your published report by following your suggestions for future work)
A good section structure inspired by the scientific method is:Alternatively, the conclusions section could be called an "Analysis" section and a new "Conclusions" section could be added that summarizes the report. The section structure you choose should help reinforce the message you are communicating in your report; keep the steps of the scientific method in mind.
- Introduction – the purpose of the lab (i.e., define the questions that you are trying to answer during the experience)
- Procedure – what was done (i.e., describe the experimental method)
- Theoretical results – what was expected (e.g., your hypothesis would fit nicely here)
- Measured results – what was observed (i.e., present your data without drawing conclusions)
- Conclusions – explanation of measured results and suggestions for future work
- Interpret the data to show how it responds to the relevant questions of the experience – use the data to test your hypothesis.
- Suggest starting points for new hypotheses that explain the observed differences from the theoretical results – if possible, suggest new experiments to test these new hypotheses.
For the lab reports you submit to me, you do not need an abstract nor any appendices. All material should be in-line with the text of the document.
Regardless of your section choices, be sure to pay attention to the course policies on lab reports (e.g., include a cover page with table number, group member names, my name, section, etc.).
Reports should be written from the following point of view: the reader is knowledgeable on the subject of electronics but knows little of your project. You must, therefore, explain your project in the most organized, economical fashion possible. This is good practice as this will, most likely, be the point of view for your monthly/quarterly/yearly reports in industry. This neatness and readability of your report is a significant factor as well as the actual contents. You should try to explain to the reader how the different parts of this circuit work in a clear and organized fashion.
For myriad reasons, professional technical documents are rarely produced with popular programs like Microsoft Word. In areas that are highly influenced by mathematics (e.g., engineering), the free TeX typesetting system dominates. Many TeX (pronounced "tech") users prefer the LaTeX suite of macros to simplify common typesetting tasks.
TeX documents, like the source code for computer programs, start as text files that are later "compiled" into their final document form. A typical TeX workflow is
- Edit document source code in a standard or specialized text editor. For example, a text file called "mydocument.tex" could contain the LaTeX code:
\documentclass{article} \begin{document} \textbf{Hello world!} \end{document}- "Compile" source code to produce printable document. The "mydocument.tex" file would produce a "mydocument.pdf" that would contain the bold text:
Hello world!A good editor will typically provide a quick way (e.g., a "LaTeX" button on the graphical user interface) to compile your code.
If you want to compile your code manually, you can use PDFLaTeX with the commandpdflatex mydocument.texor you can use LaTeX with the commandslatex mydocument.texThe difference between these two methods has an impact on what type of figures you can include (i.e., EPS files versus PDF, GIF, JPG, or PNG files). See below for details.
dvips mydocument.dvi
ps2pdf mydocument.ps
- View printable document and repeat process to make changes (e.g., you could change the \textbf{Hello world!} line to be simply Hello world! to get rid of the bold).
Thus, many people feel that TeX typesetting is more like programming than it is like using standard word processing tools. So it’s not surprising that you’ll need a "compiler", editor, and viewer (note: the ECE computer labs are already equipped with everything you need to get started).
Then, in the main part of your document, you can choose whether to include your graphics as "floats" or not. Most figures in books are "floats." That is, they do not appear exactly where they are mentioned in the text. Instead, they "float" to a convenient place (e.g., the top of the next page). In lab reports, people sometimes prefer that their graphics do not float.\usepackage{caption} \usepackage{graphicx}
Alternatively, if you want the figure to be typeset EXACTLY where you place it within your source code, use lines like\begin{figure} \includegraphics[width=0.5\columnwidth]{my_graphics_file.png} \caption{A nice caption for my figure.} \label{fig:a_unique_fig_label} \end{figure}
That is, replace the figure environment with a center environment and replace the \caption line with a \captionof{figure} line.\begin{center} \includegraphics[width=0.5\columnwidth]{my_graphics_file.png} \captionof{figure}{A nice caption for my figure.} \label{fig:a_unique_fig_label} \end{center}
- Pre-lab assignments (individual): 30%
- Lab reports (group): 40%
- Lab clean-up (group): 10%
- Final exam (individual): 20%
Grades may be made available on Carmen.
- At the beginning of each lab, the Laboratory Preparation section from the book for that lab should be submitted for a grade.
- Most of the theoretical work for each lab is completed here, and so you should keep a copy of your results to assist you in class.
- Pre-lab reports should be completed INDIVIDUALLY by EACH STUDENT. Pre-lab submissions are NOT group assignments.
- The final exam will be given during the last day of regularly schedule class.
- It will have a purely theoretical section as well as a practical laboratory component.
- It will be completed individually, and so all students should be familiar with both the software and hardware used in the lab.
- Students are required to attend all labs.
- Students will work in groups of two.
- Disk space has been prepared at each bench for storing laboratory results. However, for their lab reports, students should save their results either over the ECE network or on some other portable storage device.
- See the lab report writing resources for more information about the contents of a good lab report.
- Each group will submit one lab report.
- On your cover page, include:
- the class identifier (i.e., "ECE 557")
- the section day and time (e.g., "Thursday 1:30")
- instructor name (e.g., "Instructor: Jane Engineer")
- names of all members of group (grades are given to these members)
- your bench number from label on each table
- Lab reports are due at the beginning of the next lab session and will be penalized 10% per day late.
- Lab reports must be typed and pages must be numbered.
- Tables and figures should be numbered and have descriptive captions. Because these items naturally float to the best location on the page, they should be referred to by their name and not be their relative position (e.g., refer to "Table 1" and not "the table below").
- Lab report grading (instructor policy takes precedence):
- Lab work (30%) – evidence of having successfully completed the lab tasks.
- Figures/Tables/Equations (20%) – the main technical details of the report
- Discussion (50%) – usually divided (depending on lab) into:
- Purpose – the purpose of the lab
- Procedures – how the lab was done
- Theoretical results – expected results (you should not re-do your laboratory preparation work on your lab report; instead, just use those results, but be sure to interpret them as expectations of experimental outcomes)
- Measurement results – actual results
- Conclusions – explanation of actual results
- Again, see the lab report writing resources for more information about the contents of a good lab report.
Students must attend all labs. If a lab needs to be missed, arrangements should be made with the instructor at least 24 hours prior to the lab so that the lab work can be made up. The instructor reserves the right to determine when make-up work is allowed. Students are responsible for all assignments, change of assignments, announcements, and other course-related materials.
Late lab reports will not be accepted unless prior (i.e., at least 24 hours in advance) arrangements have been made with the instructor.
While groups may work together outside of class when deciphering their results, all handed-in material must be unique. That is, each group should actually compose their lab reports separately.
Likewise, students may help each other outside of class when completing the pre-lab assignments, but the assignment submissions should reflect individual work and not any sort of collaboration.
Any written material turned in to me (lab reports, pre-labs, exams, etc.) falls under the purview of the University and the ECE Honor System rules. If a lab report does not represent a group’s understanding of the material or a pre-lab or exam does not represent an individual’s understanding of the material, I will consider it to be an honor code violation. In these cases, I must report the incident to the ECE department.
Students with disabilities that have been certified by the Office for Disability Services will be appropriately accommodated and should inform the instructor as soon as possible of their needs.The Office for Disability Services
150 Pomerene Hall
1760 Neil Avenue
Telephone: 614-292-3307, TDD: 614-292-0901
http://www.ods.osu.edu/
Course supervisor: Professor Stephen YurkovichCatalog Description:
Laboratory study of signal processing, control systems and their components, computer-controlled instrumentation, sampled data systems, analog and digital control.
Course Prerequisites or Concurring: 551
Courses that require 551 as prerequisite: 758
Prerequisites by Topic:
Laplace transforms, Z-transforms, stability, transfer functions, sampling, signals, systems.Course Objectives:
- Utilization of real-world plants for computer control (Criteria 3(a),(b),(k)).
- Introduction of concepts from sampled-data systems and digital control (Criteria 3(a),(e)).
- Implementation of design with accompanying analysis (Criteria 3(a),(c),(e),(k)).
- Promote (interdisciplinary) team efforts via working with lab partner(s) (Criteria 3(d),(g)).
- Improve written communication skills through laboratory and project reports (Criterion 3(g)).
- Use of a commercially available software package (Matlab) for computer-aided analysis and design (Criteria 3(c),(k)).
Class Meeting Pattern
- 1 48-minute class
- 1 3-hour lab
Other good control labs: ECE 757, ECE 758
Other good communications and signal processing (comm/SP) labs: ECE 508, ECE 609
Website and original documents Copyright © 2007–2010 by Theodore P. Pavlic Licensed under a CC-BY-NC 3.0 License |
|