Design Like a Physicist
Physics 398DLP, Spring 2022
3 credit hours
Face-to-face (but masked!), Friday afternoons, 1 pm - 5 pm, in Loomis 276.
Note that we'll meet online, via Zoom, during the first week of the semester.
Dean Bashir has asked faculty to distribute to students the information linked here.
Required stuff
There are no required texts for Physics 398DLP. I will assemble starter "kits" of parts and tools for each of you, which you are to pick up from the table in the hall between Loomis 437 and Loomis 441 BEFORE the first (Zoom) class meeting.
You must come to each class (including the first) with
- • A laptop or other device that is capable of running the Arduino Integrated Developer's Environment (IDE) as well as the current version of Anaconda's Python IDE. Note that smartphones will be insufficient for your needs. The Mac OS and some version of Windows are probably best, but if you insist on using a Unix/Linux laptop, I'm going to assume that you are generally able to cope with the problems that might arise.
- • A charger for your laptop.
- • An adapter (if necessary) that will let your laptop read/write from/to an SD memory card.
- • Your box of parts and tools.
- • Adapters that will let you connect a pair of USB-A cables to your laptop.
- • A physical paper notebook in which you will perform calculations, etc. etc.
Attendance at the entire Friday class session, from 1pm to 4:50pm, is obligatory. Your grade will include your level of compliance with this requirement. In addition, Shubhang Goswami (the p398DLP TA) and I will meet with individual groups each week in Loomis 437 for about a half hour to discuss nitty-gritty technical issues and monitor your progress. We will schedule these to avoid conflicts with your other academic obligations. These meetings are also obligatory. Please have your devices and tools at hand whenever we meet.
Office hours are on-demand: let Shubhang and/or me know that you'd like to meet; try to give us a couple of hours advance notice.
In a departure from earler semesters of the course, there will be weekly homework assignments. In general, each week's assignment will be due at 5 pm on Thursday of the following week. For example, the week 1 assignment is due on Thursday of week 2. You are to email material of/from the completed assignment to the course TA. Assignments that are late by up to one week will receive at most 50% of full credit. We will not grade assignments that are more than one week late. For technicalk reasons involving Physics Dept. IT infrastructure, we are unable to use the usual gradebook software, so you'll have to ask us for a report of your records if you'd like to see what we have for you. I will post asignments to the course website as the semester unfolds.
Suggested projects
Syllabus and milestones
I will not distribute hardcopies of the course packet this term; you can (and should) download it here.. The detailed syllabus starts on p. 27 of the course packet. The list of milestones we'll expect you to hit begins on p. 24. I reproduce them below. Note that EVERYTHING I distribute is copyrighted, and you are to respect this.
Milestones
- • 1a. Modify the Arduino’s blink program so that it blinks the initials (of your English/American name) in Morse code. (Week 1, by end of Friday class)
- • 1b. Install and test a BME680. (Week 1, by end of Friday class)
- • 1c. On your breadboard, install the following devices (in addition to the BME680 and Arduino): LCD (including 10kΩ trimpot), keypad, and microSD breakout. (Week 2, by beginning of Friday class)
- • 1d. Formulate a project plan and division of project responsibilities. (Week 2, by midweek group conference with course staff)
- • 2a. Install, set, and read back a DS3231 real time clock. (Week 2, by end of Friday class)
- • 2b. Install and read back a GPS module. Use it to set the DS3231 real time clock. (Week 2, by end of Friday class)
- • 2c. Write a short text file to your SD card. Copy the file to your laptop, then write a short Python program to read it and display its contents. (Week 2, by end of Friday class)
- • 2d. Finish installing all the parts on your breadboard required for your project’s data logger. (Week 3, by beginning of Friday class)
- • 2e. Register an Autodesk user account, then visit the TinkerCad website. (Week 3, by beginning of Friday class)
- • 3a. Write a single bare-bones program that read all your project circuit’s sensors and writes data to a microSD file. (Week 3, by end of Friday class)
- • 3b. Write a single bare-bones Python data analysis program that generates histograms and plots of environmental data read by your BME680. Calculate means and RMS widths for these quantities. (Week 3, by end of Friday class)
- • 3c. Log in to Autodesk and download EAGLE. (Week 4, by midweek group conference with course staff)
- • 4a. Finish writing a reasonably sophisticated DAQ and use it for a quick field test of your devices. (Week 4, by end of Friday class)
- • 4b. Analyze your field test data, generating the plots and calculations that you expect to appear in your ultimate report. (Week 4, by end of Friday class)
- • 4c. Install breakout boards on your PCB and test it. (Week 5, by midweek group conference with course staff)
- • 5a. Perform a longer set of field tests and run them through your analysis. (Week 5, by beginning of Friday class)
- • 5b. In consultation with course staff, refine your offline analysis. (Week 5, by end of Friday class)
- • 5c. Finish PCB and transition to using it for more field test data; verify that PCBs function as expected. (Week 5, by end of Friday class)
- • 5d. Use TinkerCad to design personalized covers for your PCB cases. (Week 5, by end of Friday class)
- • 5d. Use TinkerCad to design personalized covers for your PCB cases. (Week 5, by end of Friday class)
- • 6a. Take all the data that you think you’ll need for your project. (Week 6, by end of Friday class)
- • 6b. Verify that your data are valid: analyze them. (Week 6, by end of Friday class)
- • 7a. Analyze production data and discuss your conclusions with course staff. (Week 7, by end of Friday class)
- • 7b. Draft a modified run plan if appropriate, take more production data. (Week 8, by midweek group conference with course staff)
- • 8a. Develop a detailed data analysis including cross calibration techniques, and run all your data through it. (Week 8, by end of Friday class)
- • 8b. Write brief outline of a possible project report, discuss with course staff. (Week 8, by end of Friday class)
- • 9-10. Write and submit “nearly final” draft of project report. (Week 10, by start of Friday class)
- • 11-12. Rewrite and submit “final” project report. (Week 12, by start of Friday class)
- • 13-14a. Prepare PowerPoint project presentation. (Week 14, by start of Friday class)
- • 13-14b. Prepare and submit final project report. (Week 14, by start of Friday class)