Physics 306L (Junior Lab) Homepage

Instructor: Dr. Michael P. Hasselbeck  
Office: Physics & Astronomy Rm. 157   Phone: 277-0590  Email:
To see me in my office, please make an appointment (call or email preferred).

Class meets: Monday, 1:00 -- 4:50 pm;   ECE 311

Textbook: None.

Final exam: None.

LabView: You will need access to LabView. There are several options:

* Install on your computer; see me for details.

* Available in the computer pods in the ECE building.

* Installed on the computers in PandA Junior Lab (Rm 133). Arrange with me for access.

* You can buy a student copy of LabView for $20 at this link.

IMPORTANT: The lab computers at ECE and PandA run LabView 2015. If you do your assignments with a newer version of LabView, you must save it for version 2015 or it will not work in the labs.

Students are free to work alone or collaborate. Weekly LabView assignments are due before the start of class. Each student is required to have a working VI that can be evaluated by the instructor. Come to my office anytime before class on Monday to demonstrate and review your VI. We can also meet in Junior Lab (PandA 133) and use one of those computers. If you wish to have your assignment reviewed on Monday morning before class, you must reserve a 10 minute time slot. Because of time constraints, limited LabView guidance can be provided on Monday mornings. These sessions are intended for assignment review.

Sign up for a Monday morning review time using this link. Only one student per time slot.

LabView projects will be assigned weekly and are designed to become more sophisticated as your knowledge increases. There will be some classroom instruction, but it is believed that most people learn a new programming language best outside of a formal classroom setting. Just how this works will vary depending on individual learning styles. LabView is a very popular software package and there are a wide variety of resources available. National Instruments includes a step-by-step tutorial with LabView. They also have a series of short videos that introduce the software and explain how it works. A good place to start is here.

Assignment 1: Due 28 August. Implement the VI you were assigned in class.

Assignment 2: Due 11 September. Modify the VI from Assignment 1 to prevent execution with non-physical inputs (for example, negative mass). Put the code in a While Loop and stop execution only when valid inputs are present. Warn the user if the input(s) are invalid and run the loop again. You will need a case structure, the Wait function inside the loop, comparison(s), and possible compound Boolean logic to deal with different input errors. Different errors do not have to be handled uniquely, simply alert the user that there is a problem.

Assignment 3: Due 18 September. Modify Assignment 2 to use an Event Structure inside the While Loop. This will eliminate continuous polling of the input controls. There should be three separate event cases: i) the original calculation is run if there is a value change on any of the input controls; ii) stop the While Loop and VI with a control button located in it's own event window; iii) a timeout case if there is no user input after a period of time, eg. several seconds. If the Event Structure is implemented correctly, the Wait function is no longer necessary. It's a good idea to monitor the loop counter to verify that each event fires as designed. Unlike Assignment 2, the VI runs until the Stop button is pressed.

Assignment 4: Due 25 September. Use a FOR Loop and shift-register to solve the truncated Taylor series you were assigned. Compare this to the value calculated using LabView's built-in function.

Assignment 5: Due 2 October. Display two sine waves on a single graph. Generate the sine waves in a While Loop that updates at 10 Hz. With each iteration, the second wave should incrementally phase shift by a specified amount (degrees). Have controls for frequency, displayed number of periods, displayed points, phase shift, and offset between displayed waveforms. Make sure the time-axis shows the correct units. All controls should be active and adjustable while the program is running. A sample front panel is here. Hint: You may find it helpful to use a Waveform Graph and the Build Waveform function.

Assignment 6: Due 9 October. Click here.

Assignment 7: Due 16 October. Click here. The SubVI named is here. NOTE: This is a complicated assignment. The instructions must be followed carefully.

Assignment 8: Due 23 October. Click here. Download test audio files at the following links (these and more at

200 Hz Sine
1000 Hz Sine
5000 Hz Sine
Sine Wave Frequency Sweep
Sine Wave Frequency Warble
200 Hz Triangle
1000 Hz Triangle

More complex demo .wav files can be downloaded from
Demo 1
Demo 2

Assignment 9: Due 30 October. Click here.

Assignment 10: Due 6 November. Click here.

Assignment 11: Due 13 November. Click here.

Assignment 12: Due 20 November. Click here. Download here. A working VI is required to perform the lab on Nov 20.

Assignment 13: Due 27 November. Click here. You will modify the VI of Assignment 12. A working VI is required to perform the lab on Nov 27.

Assignment 14: Due 4 December. Click here. A working VI is required to perform the lab on Dec 4.

Electronics Labs: Students should work in teams of 2 at a workstation. Teams will change each week according to this chart. Find your name and lab number to identify your partner. Group collaboration while performing the lab work is encouraged. Everyone should keep a notebook. Some short report writing and analysis is required and should be emailed to the instructor prior to the next class meeting.

The weekly lab instructions follow (.pdf files):

Lab 1: DC circuits

Lab 2: AC circuits and oscilloscope

Lab 3: AC low-pass filters

Lab 4: Frequency response and resonance

Lab 5: Complex impedance, poles and zeroes

Lab 6: Diodes

Lab 7: Transistors

Lab 8: Op-Amps I

Lab 9: Op-Amps II

Lab 10: Oscillators

Lab 11: Relaxation oscillators

Lab 12: Circuit timing   The indicator light.ctl needed for the LabView simulation is here.

Lab 13: Control circuits

Lab 14: P-I controller

Lab 15: Lock-in detection

Grading: The labs and LabView assignments will be graded using the following subjective criteria:

* Excellent (E): Produced a working project with sufficient conceptual understanding. Did a writeup (if required).

* Satisfactory (S): Tried but couldn't make much work. Did the lab, but the writeup (if required) was not turned in before deadline.

* Unsatisfactory (U): Missed the lab or LabView assignment deadline. Sorry, no makeups.

The combination of lab work (25%), LabView assignments (25%), and quizzes (50%) will determine your overall score. The lowest scoring lab and LabView assignment will be dropped. The two lowest scoring quizzes will be dropped. Missed labs, assignments, and quizzes cannot be made-up and will count in the grading.

Quizzes: There will be a short quiz at the start of each class. The quiz will test concepts from the previous week. There will be no makeup quizzes. The best way to prepare for the weekly quiz is to do the LabView assignment and understand what you are building in the lab.

Lecture Slides: (.pdf files)

Lecture 1. The assignment generator VI is here

Lecture 2.

Lecture 3.

Lecture 4.

Lecture 5.

Lecture 6.

Lecture 7.     In 1999, PBS made a historical documentary on the invention of the transistor that can be viewed at this YouTube link.

Lecture 8.

Lecture 9.

Lecture 10.

Lecture 11.

Lecture 12.

Lecture 13.

Lecture 14.