Week
of ... |
Lab
/ Lecture |
Reference
Material
[white background indicates
required reading;
gray
background indicates optional reading] |
Jan. 9
|
Lecture:
Introduction, resistors and resistance
-
Course Introduction:
What's the purpose of PC/CP320? [PDF]
[
September 5, 2018
]
Course syllabus
[
December 14, 2021
]
- Active Learning Introduction
Proven teaching strategies
-
Overview of Physical Computing
[
September 8, 2017
]
- Learning on your own using Google and YouTube, etc.
-
Block Diagrams
[
February 13, 2019
]
Block Diagram Elements
[HTML]
[
November 9, 2017
]
Block Template
Signals for block diagrams library for Dia
Use this if you are installing Dia on your own computer.
draw.io online drawing app
Sample signals
-
Electrical terminology
[
September 8, 2016
]
-
Resistors and resistance
[
September 7, 2017
]
-
Variable Resistors (Trimmers)
[
January 4, 2018
]
Lecture:
Single board computers
including the
Raspberry Pi
-
Single board computer platforms
[
November 23, 2016
]
Arduino, Pi model B+
Pi model A, B, B+
Pi 2, model B+
Pi 3, Pi 2, model B+
Arduino,
Pi model B, BeagleBone
Raspberry Pi
models comparison
-
Linux shell command summary
Note: Linux is case-sensitive, and commands should be in
lower case.
- Raspberry Pi GPIO pins
Board and Broadcom numbering schemes
WEMOS GPIO pin guide
Note that numbering uses the Broadcom system.
How can you tell?
Orientation of GPIO pins
Correct cobbler orientation
GPIO
orientation
-
Access GPIO from Linux user space
Tip: To see the Pi internal temperature, type:
cat /sys/class/thermal/thermal_zone0/temp
Divide the result by 1000; e.g. 44250 corresponds to 44.25 Celsius.
-
Identifying resistor nominal values (ALC exercise)
When there isn't an integer middle value, choose the nearest integer
below the middle.
doc version
png version
Timer
(6 minutes)
-
Digital multimeters
[
November 7, 2018
]
- Using lab notebooks
New Information:
Lab Notebook summaries
[
May 12, 2017
]
Summary checklist
[
January 18, 2017
]
"summarization is among the top nine most effective teaching
strategies in the history of education"
- 5 minutes more??
Lecture:
Electrical circuits
-
Kirchhoff's laws
[
May 16, 2011
]
-
Kirchhoff's laws example
[
May 31, 2017
]
-
Voltage dividers
[
May 31, 2017
]
-
Application of voltage dividers - internal resistance
[
June 13, 2014
]
-
Determining battery internal resistance (ALC exercise)
Timer
(6 minutes)
-
Review:
Breadboards [PDF]
[
May 1, 2012
]
- Quiz during next lecture!
- Online Quiz:
Read over the learning objectives for this course.
Do quiz on MyLearningSpace between
7 a.m. Friday and 11:30 p.m. Sunday evening.
"Our central result is that higher exposure to the online instrument
robustly leads to higher student learning, all else being equal."
|
|
|
- Safety - Emergency Numbers
[
April 29, 2015
]
-
Lab A:
Resistors and
Ohmmeters
-
Lab B:
Lab Summary Writing Exercise
- Postlab Requirements:
Writing a lab summary
[
May 12, 2017
]
Summary checklist
[
January 18, 2017
]
-
After this week's lab, you know how
to use a digital multimeter
to measure resistance,
to read resistor colour codes,
and to identify specific Raspberry Pi GPIO pins.
-
Before next lecture: Watch this video!
Water analogy [screencast]
|
Resistance
[© 1995-2003 M. W. Davidson, Florida
State University]
Fixed Resistors
[
January 8, 2018
]
Measuring
Resistance [
May 12, 2017
]
Measuring
Continuity [
May 12, 2017
]
|
Resistor
colour coding chart
[PDF; NIC Components, May
2004]
Which
Way Does Current Really Flow?
Resistor colour codes: 4-
band, 5- band
[GIF; © 1996-2003 Electronix
Express]
Resistor colour code: 4, 5, 6
band
[JPG; T. May, University of
Colorado]
[PDF 50pp, © Wavetek Meterman,
2000]
Wavetek Meterman 33XR Operator's Manual
[PDF 17pp, © Amprobe,]
MAKE presents: The Resistor
Resistors
[from
PC200]
Resistor
colour code: 4, 5, 6 band
[JPG; T. May, University
of Colorado]
|
Jan. 16
|
Lecture:
Raspberry Pi GPIO pins
and
Python programming on the Raspberry Pi
- GPIO access in Python
Official RPi.GPIO Wiki examples
- GPIO access in Python
Raspberry Pi GPIO pins
Basic python example
Modified python example
Broadcom
numbering example
Another
board numbering example
-
Good Coding Style [
August 23, 2018
]
Why magic numbers are evil
Unnamed
numerical constants
Coding
without comments
Code Style Checklist [PDF]
[
January 18, 2017
]
-
Voltage, current and Ohm's law quiz
Timer
(6 minutes)
Applying some basic concepts of voltage, current, and power
Rationale for collaborative quizzes
"The students first completed a quiz individually. Once the quiz
was completed individually, the students completed the same quiz in
groups. Eighty percent of the score on the quiz was based on the
individual results, and 20% of the score on the quiz was based on the
group results. The performance on the quizzes was significantly higher
when students completed the quizzes in groups than when
they completed the quizzes individually. Results document that
completing the quizzes in groups enhances the understanding of the
material."
-
Resistive sensors
[
May 31, 2017
]
force-dependent resistor
photoresistor
thermistor
strain gauge
Lecture:
Maker Lab Introduction
-
Launchpad Science Maker Lab Introduction
Lecture:
Voltage considerations for
Raspberry Pi GPIO pins
and
exploration project
introduction
- Review of previous quiz
q1
Groups with 5 had 1 or 2 people who had it perfect individually!
Only 3 (out of 6) groups had anyone go down due to group mark.
To figure out group mark:
Since FINAL = 0.8 INDIVIDUAL + 0.2 GROUP
GROUP = (FINAL - 0.8 INDIVIDUAL) / 0.2
- good lab summary
Clear, useful, and just 1 page
- Logic family characteristics -
voltage [
May 23, 2018
]
Logic gate characteristics -
measuring voltage limits [
November 20, 2014
]
-
GPIO
Electrical specifications
-
Determining GPIO voltage limits (ALC exercise)
Timer
(6 minutes)
- Exploration Project Overview
[
May 24, 2018
]
Exploration project introduction
Remember Google, YouTube, etc.
Example of wrong/misleading "data"
Exploration Project checklist
-
Replace/get credit for a lab summary
Go to the Science Maker Space and do the introduction and I'll
count it in place of one lab summary.
-
Enclosure project overview
[PDF]
[
October 24, 2019
]
Enclosure Project checklist
[PDF]
[
October 23, 2019
]
- Quiz during next
lecture!
- Online Quiz:
Review proper electrical terminology.
Do quiz on MyLearningSpace between
7 a.m. Friday and 11:30 p.m. Sunday evening.
|
Electrical Circuits Review
[pdf 18pp; B. M. Fleischer] - sections B.1
and B.2.1
Operating point analysis in CircuitLab [video]
Internal resistance of a voltage source [screencast of PDF]
Voltage
Divider [© 2000, C.R. Nave,
Georgia State University]
Potentiometers [video]
Voltage dividers [video]
|
|
|
- Using Bench Power
-
Lab A-:
Raspberry Pi GPIO Introduction
[
January 9, 2019
]
Raspberry Pi kit
contents
Code Style Checklist [PDF]
[
January 18, 2017
]
Raspberry Pi Serial WiFi
supplement
[
June 6, 2018
]
Note: If you finish early, start on Lab B.
-
Lab B:
Voltage, Current, Ohms's
Law [
August 24, 2022
]
- Postlab Requirements:
Lab Summary
[
May 12, 2017
]
Summary checklist
[
January 18, 2017
]
-
After this week's lab, you know how
to use a digital multimeter
to measure voltage and current
and to use Python to access
Raspberry Pi GPIO pins.
|
Measuring
DC Voltage [
May 12, 2017
]
Measuring
DC Current [
May 12, 2017
]
Lab bench setup in N2082 [video]
Dual DC supplies [video]
|
Voltage
Circuit Simulator [java applet; G. Bothune,
UOregon]
MAKE presents: Ohm's Law
|
Jan. 23
|
Lecture:
Producing and measuring analog signals
- Active learning research result
Measuring
actual learning versus feeling of learning in response to being actively
engaged in the classroom
"Comparing passive lectures with active learning using a
randomized experimental approach and identical course materials, we find
that students in the active classroom learn more, but they feel like
they learn less. We show that this negative correlation is caused in
part by the increased cognitive effort required during active learning."
-
Note different postlab requirements this
week!
-
Oscilloscopes [
August 23, 2018
]
Triggering on an oscilloscope
-
Function generators
[
January 20, 2020
]
-
Simple DC circuits quiz
Simple application of Kirchhoff's laws
Timer
(6 minutes)
Lecture:
Diodes,
including Zener diodes and photodiodes
-
Reading data sheets
[
May 12, 2017
]
- Reading data sheets [
October 7, 2013
]
sample datasheet
(Fairchild)
sample datasheet (National
Semiconductor)
sample datasheet (International
Rectifier)
sample datasheet (Photonic
Detectors)
-
Diodes
[PDF]
[
September 9, 2015
]
Diode Measurement
[
May 1, 2014
]
-
Zener Diodes and Photodiodes
[PDF]
[
September 26, 2017
]
-
Selecting Zener/photodiode resistors (ALC
exercise)
1N525B Zener diode, ON
Semiconductor; determine resistor for 12V supply
Note recommended vs.
maximum current.
SFH 229 Photodiode, Osram
Semiconductors; determine resistor for 12V supply and 3.3V
swing with light
Save these results and you'll save time
in the lab!
Timer
(6 minutes)
-
Sketching AC signals [
April 19, 2011
]
Lecture:
Optical Isolation
and
more electrical considerations for GPIO pins
- Review of previous quiz
q2
One group with 10/10 had highest individual of 4/10.
One group with 10/10 had highest individual of 5/10.
To figure out group mark:
Since FINAL = 0.8 INDIVIDUAL + 0.2 GROUP
GROUP = (FINAL - 0.8 INDIVIDUAL) / 0.2
GROUP = 5X (FINAL - 0.8 INDIVIDUAL)
- Note postlab requirements
-
Optical Isolation
[PDF]
[
November 10, 2016
]
-
Optoisolator Calculations
[PDF]
[
October 1, 2018
]
-
Selecting LED/photodiode resistors for optoisolator(ALC
exercise)
PS2501 datasheet
determine resistors for 5v on input and
output at least 2.5V with a 3.3V supply
determine resistors for 3.3v on input and
output at least 4V with a 5V supply
Save these results and you'll save time
in the lab!
Timer
(10 minutes)
-
Optoisolator breadboard layout
[PDF]
[
November 16, 2017
]
- Lab notes (optoisolator)
scope output
circuit
triangle wave output
increased output
resistor value
- Quiz during next
lecture!
- Online Quiz:
Review Kirchhoff's laws and their application.
Do quiz on MyLearningSpace between
7 a.m. Friday and 11:30 p.m. Sunday evening.
|
Logic Gates
Measuring Strain with Strain
Gages [© 2016 National
Instruments Corporation]
Logic
Family Selection Guide
|
|
-
Lab A+:
Raspberry Pi Python
PWM
[
January 22, 2019
]
Code Style Checklist [PDF]
[
January 18, 2017
]
Raspberry Pi Serial WiFi
supplement
[
June 6, 2018
]
Note: If you finish early, start on Lab B.
-
Lab B:
Function Generators and
Oscilloscopes
[
January 14, 2019
]
Example:
Waveform sketch
[
January 18, 2017
]
Scope trace checklist
[
January 18, 2017
]
- Postlab Requirements:
Rewritten test program
[
May 12, 2017
]
for Lab A (see
code style checklist )
and
Waveform sketch
[
May 12, 2017
]
for Lab B
(see
scope trace checklist )
Here's a single
code/scope trace checklist
[
May 16, 2019
]
which covers both.
-
After this week's labs, you know how
to measure signals with an
oscilloscope and to
use the Raspberry Pi as a
simple function generator to make square waves of varying frequency
and duty cycle.
|
|
Overtones, harmonics, and additive synthesis [video]
DC and AC voltage measurements with an oscilloscope
Finding the origin on an oscilloscope in XY mode
Use of a function generator - Part I
Use of a function generator - Part II
MAKE presents: The Oscilloscope
Close-up pictures of signal
generators we have in the lab:
White case model (Instek
GFG-8217A)
Black case model (Wavetek
FG3C)
Grey case model (Wavetek
FG3B)
Old model (Wavetek 182A)
XYZ's of Signal Sources
[pdf 52pp; © 2005, Tektronix,
Inc.]
Philips oscilloscope (PM3207)
XYZ's of Oscilloscopes
[pdf 64pp; © 2001, Tektronix,
Inc.] The Cathode Ray
Oscilloscope [pdf 6pp, T.
Sturtevant]
TDS1000 and TDS2000 Series Digital Storage Oscilloscopes
[© Copyright Tektronix, Inc.]
TDS210
Series Digital Storage Oscilloscopes [© Copyright
Tektronix, Inc.]
ABCs of Probes [pdf 48pp; ©
2005, Tektronix, Inc.]
Oscilloscope
animation (Flash)
|
Jan. 31
|
Lecture:
Capacitors;
output transducers (actuators)
and how to control
them
using the
Raspberry Pi
- Logic gate characteristics -
current [
September 4, 2013
]
Logic gate characteristics -
measuring current limits [
September 4, 2013
]
datasheets for SN7400,
CD4011UB,
74HC00A
- The
Embroidered Computer
-
Capacitors [
October 9, 2015
]
-
Identifying Capacitor
Polarity
[
August 22, 2019
]
-
Oscilloscope
quiz
Basic functionality of the oscilloscope
Timer
(6 minutes)
-
Inductive
Output Transducers [PDF]
[
October 18, 2016
]
Lecture:
Conversions between analog and digital signals
and
the SPI interface on the Raspberry Pi
- Review of previous quiz
q3
Group with 4/10; both got higher individually!
Two groups that got 10/10 had all individual marks lower.
-
Analog and Digital Quantities
[PDF]
[
May 25, 2017
]
-
Analog to Digital and Digital to Analog Conversion
[PDF]
[
October 3, 2018
]
A/D converter demonstration [video]
-
Analog and Digital Grounds and Decoupling Capacitors
[PDF]
[
May 31, 2017
]
-
Serial Communication-SPI
[PDF]
[
October 3, 2018
]
-
Equating SPI GPIO pins and MAX522 pins (ALC exercise)
MAX522
SPI digital-to-analog converter
Supply requirements?
Save these results and you'll save time
in the lab!
Timer
(6 minutes)
-
Determining MAX522 command words (ALC exercise)
Note "No Operation" and "All DACs Active" commands.
What needs to be sent (in Hex) to:
- Shutdown DAC A
- Shutdown DAC B
- Load DAC A with a value of 2 (decimal)
- Load both DACs with a value of 32 (decimal)
- Shutdown both DACs
MAX522 SPI python example
Save these results and you'll save time
in the lab!
Timer
(6 minutes)
Lecture:
More
analog to digital conversion
and
the SPI interface on the Raspberry Pi
-
Note different postlab requirements this
week!
- Identify decoupling capacitors in circuits
circuit1
circuit2
circuit3
-
MCP3008
SPI analog-to-digital converter
-
Equating SPI GPIO pins and MCP3008 pins (ALC exercise)
Save these results and you'll save time
in the lab!
Timer
(6 minutes)
-
MCP3008 SPI python example
New
MCP3008 Communication explained
[PDF]
[
January 30, 2019
]
-
Determining MCP3008 command words
and data format
(ALC exercise)
MCP3008
SPI analog-to-digital converter
Supply requirements?
What change do you need to make to ADC code to have both
DAC and ADC connected at the same time?
Save these results and you'll save time
in the lab!
MCP3008 SPI python example
Timer
(6 minutes)
- New
DC motor with shaft encoder
[PDF]
[
November 1, 2018
]
-
Controlling Output Transducers
[PDF]
[
November 10, 2016
]
-
New:
H-Bridges and DC Motors
[PDF]
[
April 22, 2019
]
- Straw poll 1
- Quiz during next
lecture!
- Online Quiz:
Review oscilloscope operation.
Do quiz on MyLearningSpace between
7 a.m. Friday and 11:30 p.m. Sunday evening.
|
Diode Measurement [screencast of PDF]
MAKE presents: The Diode
Checking Diodes
[
May 12, 2017
]
Physics of a Diode [©2003 Marvin Casanova ]
Measuring
Capacitance [
May 12, 2017
]
How Capacitors
Work [© 1998 - 2003 HowStuffWorks, Inc.]
Charging
and Discharging A Capacitor [© 1995-2003 M. W. Davidson
and The Florida State University]
Identifying Capacitor
Polarity [screencast of PDF]
MAKE presents: The Capacitor
Tristate Buffers
Introduction to
Wired-OR Outputs and Open-Collector Circuits [© 2003 National Instruments
Corporation]
7401 datasheet [© 1995
National Semiconductor]
Design Fundamentals for
Phototransistor Circuits
[
April 30, 2015
]
[© 2002 Fairchild Semiconductor]
Stepper, servo, DC motor control [video]
How does a Stepper Motor work ? [video]
Induced EMF demo from MIT [video]
Induced EMF in a motor [video]
Relays and Optocouplers [video]
Small solenoid operation [video]
What is a solenoid valve? [video]
How do servos work? [video]
MOSFET tutorial [video]
MOSFETs and How to Use Them [video]
Transistor as a switch [video]
SSRs
Technical Information [PDF 8pp; © Copyright
Matsushita Electric Works, Ltd.]
Solid State Relays [PDF
5pp; Vishay, 2001]
|
|
-
Lab A:
Zener Diodes and
Photodiodes
[
November 15, 2017
]
Note: If you finish early, start on Lab B.
-
Lab B:
Optical
Isolators
[
January 30, 2020
]
PS2501 datasheet
Note: Don't take this circuit apart
after the lab; you'll be using it later.
- Postlab Requirements:
Show your calculations for the required resistors for the Zener
diode and for each optoisolator.
Diode calculation checklist
[
May 16, 2019
]
-
After this week's labs, you know how
to get inputs from the outside
world at any specified voltage into the Raspberry Pi and you know
how to provide outputs to the outside world at any specified voltage
from the Raspberry Pi .
|
HC-SR04
datasheet
Optoisolator simulation [video]
Analog
Optical Isolators VACTROLS® [©1998-2004.
PerkinElmer, Inc.]
|
Feb. 7
|
Lecture:
More logic gate I/O options
- Straw poll results
- Logic gate characteristics -
propagation delay [
November 16, 2016
]
- Logic gate characteristics: Open
collector and open drain outputs [
October 3, 2018
]
datasheet for SN7401
-
Zener diode
quiz
Choosing correct resistors
Timer
(6 minutes)
- Logic gate characteristics:
- Tri-state outputs [
June 1, 2017
]
Processor
internal architecture
"Standard" Processor internal architecture
Z80 system architecture (outside mpu)
Hyperphysics microprocessor page
-
GPIO Electrical Specifications
Note tri-state section
Lecture:
Static sensitive devices
-
Static discharge [
February 18, 2010
]
-
GPIO Electrical Specifications
Note diode section
Lecture:
Using operational amplifiers to modify
analog signals
- Review of previous quiz
q4
Only 1 person went down.
One 8/10 group had all 3 people go up.
Only group problem was drawing the circuit.
-
Operational
Amplifier Basics [PDF]
[
October 4, 2016
]
Rails of an operational amplifier [video]
Optoisolators allow changes in voltage for digital
signals; op amps allow changes in voltage for analog signals
-
Noting variation in naming conventions (ALC
exercise)
sample
1
sample
2
sample 3
Timer
(4 minutes)
-
Operational
Amplifier Circuits [PDF]
[
September 4, 2014
]
-
Analog computers [video]
-
Sketching amplifier output [PDF]
[
September 7, 2013
]
-
Sketching op amp circuit output (ALC exercise)
circuit 1
This is what you'll do
in a future quiz!
Timer
(6 minutes)
- Quiz during next
lecture!
- Online Quiz:
Review optoisolator operation.
Do quiz on MyLearningSpace between
7 a.m. Friday and 11:30 p.m. Sunday evening.
|
ADC and DAC Glossary
[HTML;
PDF]
[Dallas Semiconductor, 2000]
A/D converter simulation [video]
|
|
|
|
Sensors and Signal Conditioning
Overview [
May 12, 2017
]
Solenoid
Catalog [ © 1999,
2000 Magnetic Sensor Systems ]
Animations:
|
Feb. 13
|
Lecture:
Operational amplifiers,
Wheatstone bridges and their applications
for analog sensors and signals
-
Negative Feedback
in Operational Amplifiers [PDF]
[
July 29, 2013
]
-
Operational
Amplifier Dynamic Response [PDF]
[
October 9, 2015
]
-
Neat animations of op amp circuits
-
Output transducer
quiz
Considerations for controlling output transducers
Timer
(4 minutes)
-
Wheatstone bridge
circuits
[
October 18, 2016
]
-
Wheatstone bridge animation
-
Use of Differential
Amplifier Circuits [PDF]
[
February 8, 2019
]
-
Analog Sensors
[PDF]
[
October 19, 2018
]
Infrared
distance sensor - GP2Y0A21YK
Photodiode
- sfh229
Hall
sensor - 3503
Capacitive soil moisture sensor
Resistive soil moisture sensor
Pulse rate sensor
Pulse rate sensor (back)
sensor interfacing
Lecture:
Serial interfaces
which
various devices
use to communicate with the Raspberry Pi
- Look at completed learning objectives
- Serial communication (UART)
Serial Communication-UART
[PDF]
[
November 7, 2018
]
If using serial (i.e. UART) sensors, you need to turn off the serial
console and feed both signals through the appropriate optoisolators (to
and from the Pi).
Here's the
rpi-serial-console script.
To turn off the serial console:
sudo rpi-serial-console disable
To turn on the serial console:
sudo rpi-serial-console enable
- UART devices
GPS module,
RFID reader,
Bluetooth module
- I2C interface
Serial Communication-I2C
[PDF]
[
February 13, 2019
]
Devices come with a default address programmed in, but it
can usually be changed.
- I2C devices
digital compass (HMC6352),
colour sensor (ADJD-S371),
light intensity sensor (GY-30),
3-axis magnetometer (HMC5883L),
gyro (ITG-3200),
128x32 OLED display
-
Determining GPIO current limits (ALC exercise)
Find all of the rules governing current limits.
GPIO Electrical Specifications
Timer
(6 minutes)
-
More Good Coding Style [
October 3, 2018
]
Programming tips
- Straw poll 2
Lecture:
Single wire interfaces
- Review of previous quiz
q5
Only 1 person went down.
- Straw poll 2 results
(overall)
Straw poll 2 results
(breakdown)
- Single Wire Communication
Single Wire Interfaces
[PDF]
[
October 23, 2017
]
-
Identifying interfaces (ALC exercise)
Sample interfaces
Timer
(6 minutes)
- Three options for connecting to devices:
- Use existing Python libraries
- Use system commands from within Python
(if there aren't specific Python libraries)
- Bit-bang your own interface in Python
Bit banging
[PDF]
[
February 13, 2019
]
Bit banging
on Wikipedia
Raspberry Pi Interface with Parallax Serial RFID Reader
Bit-banged serial interface [to RFID reader]
Bit-banged SPI Interface to MCP3008
- Quiz during next lecture!
- Online Quiz:
Review op amp introduction
Do quiz on MyLearningSpace between
7 a.m. Friday and 11:30 p.m. Sunday evening
(at the end of Reading Week).
|
Analog computers [video]
Op amp tutorial [video]
Low pass filter operation [video]
Wheatstone Bridges: Introduction [©2003 eFunda; Engineering
Fundamentals]
Wheatstone Bridge Animation
[screencast of animation]
Measuring
Strain with Strain Gauges [©2005
National Instruments Corporation]
|
|
|
Four bus breadboards [video]
Op amps compared (including open collector) [video]
|
Feb. 20
|
Lecture:
More different devices and how they
interface with the Raspberry Pi
-
Success versus completion
(Winter 2019)
This ignores 45% of the grade (projects and online).
It ignores performance.
-
Row-Column Devices [PDF]
[
February 13, 2019
]
Wiki sections on "more than one channel" and "several channels"
Also note options for enabling pull-up or pull-down resistors.
- Row-Column with Both Outputs and Inputs
-
Operational Amplifier Circuit
quiz
Functionality of common op amp circuits
Timer
(6 minutes)
-
Matrix LCD Driver (MAX7219)
[PDF]
[
February 13, 2019
]
MAX7219 datasheet
MAX7219 8x8 LED matrix
MAX7219 8 digit 7 segment display
-
TM1638 datasheet
(LED/Keypad controller)
TM1638 key/display board
TM1637 datasheet
(LED/Keypad controller)
TM1637 display board (front)
TM1637 display board (back)
Lecture:
Project Explanation
and PWM devices
- Review of previous quiz
q6
Top 2 groups realized it was non-inverting.
Top 4 groups realized output would hit rails.
- Response-time sensors; shaft encoders and ultrasonic sensors
Pulse Width Modulation Communication
[PDF]
[
August 14, 2020
]
Note: On the Raspberry Pi 2, there are 4 possible PWM pins:
- BCM GPIO 18 (using PWM0, so same as GPIO 12)
- BCM GPIO 12 (using PWM0, so same as GPIO 32)
- BCM GPIO 13 (using PWM1, so same as GPIO 33)
- BCM GPIO 19 (using PWM1, so same as GPIO 35, and also is
SPI1_MISO,
so won't be available if SPI1 in use)
SR04 Ultrasonic range finders
pulse width measurement code
-
Project overview
Outline of all 3 projects
[PDF]
[
October 23, 2019
]
Note: DC motor needs 1 channel of shaft encoder connected to
indicate position.
DC motor being able to run in both directions and monitor both
channels for speed and direction can be a substitution project and the
second channel can replace the other input.
If the TM1638 board is used for input and output, it can replace
the second input for the integration project.
Outline of integration project
[PDF]
[
February 22, 2019
]
Integration project options
[PDF]
[
February 21, 2020
]
Outline of exploration project
[PDF]
[
October 24, 2019
]
Option: test (and document) my Fritzing board
Back of populated
board
Board overview
Outline of enclosure project
[PDF]
[
October 24, 2019
]
Integration Project checklist
[PDF]
[
January 3, 2019
]
One output can be a "monitoring voltage"
or an LED of varying brightness.
Exploration Project checklist
[PDF]
[
October 23, 2019
]
Enclosure Project checklist
[PDF]
[
October 23, 2019
]
If you're going to do the enclosure project, you have to
start ASAP.
-
Block Diagrams
[
February 13, 2019
]
Block Diagram Elements
[HTML]
[
November 9, 2017
]
Block Template
Create one of these for each device you use.
Signals for block diagrams library for Dia
Use this if you are installing Dia on your own computer.
draw.io online drawing app
Sample signals
-
Raspberry Pi Interface to 28BYJ-48 Stepper Motor
-
My examples and previous projects
-
Some output device options
LTP-1415AG Single colour 8x5 display
LTP-2558A Tri-colour 8x5 display
Alphanumeric 16 segment LED display
New!
Digital potentiometer
(front view)
(back view)
X9C103S datasheet
- MAX7219 Fritzing Board
-
LED Strings
[PDF]
[
January 3, 2019
]
WS2812B datasheet
Ring LED (front view)
Ring LED (back view)
APA102 datasheet
SK9822 datasheet
- I2C devices
digital compass (HMC6352),
colour sensor (ADJD-S371),
light intensity sensor (GY-30),
3-axis magnetometer (HMC5883L),
gyro (ITG-3200),
128x32 OLED display
- Some input options
capacitive hex keypad
TM1638 key/display board
Telephone keypad
-
Choosing project components
Device selection
Lecture:
Software and hardware issues with
physical computing
-
Interrupts and threading
[PDF]
[
October 30, 2017
]
Interrupts
on Wikipedia
Threading
on Wikipedia
Interrupts
on the Raspberry Pi with Python
-
Real Time Programming [
November 29, 2017
]
- Three options for connecting to devices:
- Use existing Python libraries
- Use system commands from within Python
(if there aren't Python libraries)
- Bit-bang your own interface in Python
-
Signal Conditioning
[PDF]
[
May 30, 2017
]
-
Internet of Things
[PDF]
[
March 6, 2019
]
"Hackers used 'internet of things' devices to cause
Friday's massive DDoS cyberattack" - AP, Oct 22, 2016
"'A window into your life': Why smart home devices might be
putting your privacy at risk" - CBC Sept. 28, 2018
"Google says it forgot to mention there's a mic
in its home alarm system Nest" - CBC Feb. 20, 2019
- Quiz during next
lecture!
- Online Quiz:
Review op amp circuits.
Do quiz on MyLearningSpace between
7 a.m. Friday and 11:30 p.m. Sunday evening.
|
Permanent magnet DC motor with shaft encoder
[video]
Normal servo operation - effect of pulse width
[video]
Continuous rotation servo - effect of pulse width
[video]
Servo Operation and
Calibration
LM7805
Voltage regulator
LM7805
Voltage regulator datasheet (includes TAB package)
|
Circuit
Integrity - Bypassing [© 2002 Williamson
Labs]
Circuit
Integrity - Decoupling [© 2001 Williamson
Labs]
How a smartphone knows up from down
|
|
|
|
|
|
READING WEEK
|
|
Feb. 20 |
READING WEEK - No lecture or labs
|
|
|
Mar. 7
|
Lecture:
Doing your own
physical computing with the
Raspberry Pi
- Second SPI channel (SPI1)
Enabling SPI1 on the Raspberry Pi B+/Zero/2/3
- Prototyping options for the Raspberry Pi
Prototyping options
[PDF]
[
October 19, 2018
]
-
Diode and capacitor quiz
Behaviour of diodes and capacitors in circuits
Timer
(6 minutes)
- AB
Electronics expansion hats
- Extending ports with
74HC595
and
74HC589A
shift registers
74HC595 using SPI
74HC595 with bit-banging
74HC589A using SPI
- Where to get Pi stuff:
Canada
USA
Ebay.ca
- makervault, universal-solder, and more
-
Sensors
Seeed studio
Grove sensors
DF Robot sensors
-
Fritzing
design software
Fritzing Example
[PDF]
[
October 24, 2018
]
- Design as a process
Practical design example
[PDF]
[
June 23, 2016
]
- Sensor and
actuator inventory [
November 30, 2017
]
If using serial (i.e. UART) sensors, you need to turn off the serial
console and feed both signals through the appropriate optoisolators (to
and from the Pi).
Here's the
rpi-serial-console script.
To turn off the serial console:
sudo rpi-serial-console disable
To turn on the serial console:
sudo rpi-serial-console enable
Lecture:
Advanced Raspberry Pi physical computing options
- No post-lab requirements this
week! (But if you hand one in it can make up for a
missed one.)
-
Results of previous quiz
q7
3/4 of groups had 1 individual all or mostly right.
2 of those groups had results reversed.
-
Course review
Has it all been covered?
-
Reviewing learning objectives (ALC exercise)
Timer (4 minutes)
-
Lab schedule
-
Project components - voltage regulators
We have 5V and 3.3V regulators in the lab.
-
Pigpio
libraries
These use a daemon process running in a separate thread to
bit-bang more ports.
- Java on Raspberry Pi
Pi4J Project
GPIO access in Java for the Raspberry Pi
-
Bluetooth
-
Near Field Communication (NFC) and RFID
PN532 module
-
Arduino
and the Wiring language
Arduberry
Arduino-compatible Raspberry Pi interface board
-
Firmata protocol
Firmata on Raspberry Pi
- Reading analog resistance values without an ADC
Using Resistive Sensors
(While this example talks about a potentiometer, the process works
for any resistive sensor.)
Lecture: Drones
- Drones!!
- Online Quiz:
Review analog output transducers and controlling power.
Do quiz on MyLearningSpace between
7 a.m. Friday and 11:30 p.m. Sunday evening.
|
|
|
-
Lab A:
Raspberry Pi
Stepper Motors
[
October 30, 2018
]
Note: If you finish early, start on Lab B.
-
Lab B:
Controlling
Power to a DC Motor
[
October 28, 2019
]
-
No postlab requirements; you can start on the project.
-
After this week's labs, you know
how to control
stepper
motors and servo motors with the Raspberry Pi and
how
to get analog voltages
from the outside
world into the Raspberry Pi.
|
|
TM1638 sample board [video]
|
March 7
|
No lectures; project schedule
Deliverable (Lab A): One of four devices
Deliverable (Lab B): Two of four devices
|
|
|
-
Lab A: Demonstrate 1 input or output device
Suggestion: Pick a motor, since you should have working code
from recently. Then you can choose a distance sensor to
start working on for Lab B.
Echo signal from ultrasonic distance sensor must go through optoisolator!
-
Lab B: Demonstrate previous device and 1 other.
Note: You can have different test programs for each device, but
they must both be physically connected at the same time.
Decide on 3rd device to use.
|
Component
Inventory
Project components - SR04 Ultrasonic range finders
GP2Y0A21YK
|
March 14
|
No lectures; project schedule
Deliverable (Lab A): Three of four devices
Deliverable (Lab B): All four devices
|
|
|
|
-
Lab A: Demonstrate previous devices and 1 other.
Note: You can have different test programs for each device, but
they must all be physically connected at the same time.
Decide on 4th device to use.
Remember one output can be a "monitoring voltage"
or an LED of varying brightness.
-
Lab B: Demonstrate all input and output devices
Note: You can have different test programs for each device, but
they must all be physically connected at the same time.
|
March 21
|
No lectures; project schedule
Deliverable (Lab B): Integration
Project demonstration and report
Integration Project checklist
[PDF]
[
January 3, 2019
]
Block Diagrams
[
February 13, 2019
]
Block Diagram Elements
[HTML]
[
November 9, 2017
]
Block Template
Signals for block diagrams library for Dia
(Use this if you are installing Dia on your own
computer.)
draw.io online drawing app
Sample signals
|
|
|
|
- Lab A: project work (Remember to include some form of
operator interaction.)
- Lab B: Demonstrate Integration project
|
March 28
|
On-line Course Evaluation March ??
until April ??
Deliverable (Lab A): Some functionality of exploration device
The goal is to do something that wasn't in an existing example, so
that your report adds to the knowledge base for people after you.
Deliverable (Lab B): Demonstrate Exploration project
Documentation and final video due April ??
Exploration Project checklist
[PDF]
[
October 23, 2019
]
|
|
|
|
On-line Course Evaluation March ??
until April ??
- Lab A: demonstrate basic functionality
(i.e. doing something)
- Lab B: Demonstrate Exploration project
|
|