Modular Electronics Learning project

Copyright © 2016 - 2019, Tony R. Kuphaldt

The Modular Electronics Learning (ModEL) project represents the culmination of nearly two decades of professional instruction in the field of industrial electricity and electronics. It is substantially different from earlier publications such as Lessons In Electric Circuits in multiple ways.

First, the tutorials seek to explain as much as possible about electric and electronic circuits from first principles such as physical Conservation Laws. Second, each complete module contains multiple tutorials approaching the topic from different perspectives and levels of complexity (e.g. Introduction, Case Tutorial, Simplified Tutorial, Full Tutorial). The Tutorial chapters strive to apply fundamental concepts and problem-solving strategies at every opportunity so that readers emerge with a strong conceptual foundation. Third, some modules additionally contain Historical References and/or Animations chapters providing further exposition and context. Fourth, each modules contains question sets, projects, and experiments in order to be a comprehensive learning tool. These application questions specifically address qualitative, quantitative, and diagnostic modes of thought in order to encourage well-rounded development of the reader's understanding. Finally, these modules showcase the use of computer-based simulation tools, especially SPICE and C++ programming, as an aid to exploration of circuits and their underlying principles.

Similar to the Socratic Electronics project, these learning modules are expressly designed to be used within an instructional modality that is both ``inverted'' (students learning independently through reading prior to meeting with the instructor) and ``Socratic'' (the instructor challenging students to reason through all concepts and problems via dialogue). Appendices contained in each and every module outline problem-solving strategies and the instructional philosophy informing the design and application of the modules.


These documents and all related files are copyrighted works, but licensed under the Creative Commons Attribution 4.0 International Public License. A copy of this license is found in the last Appendix of every learning module. Alternatively, you may visit http://creativecommons.org/licenses/by/4.0/ or send a letter to Creative Commons: 171 Second Street, Suite 300, San Francisco, California, 94105, USA. The terms and conditions of this license allow for free copying, distribution, and/or modification of all licensed works by the general public.


Modules

Start at the top, and work your way down.

Modules in the same row may be completed in any order. Ideally, you should complete each whole row before proceeding down to the next row.

Any module titles appearing in italic font are either incomplete (if hyperlinked) or are not yet created (if inaccessible).


Mathematics Fundamentals

Manipulating Algebraic Equations Trigonometry Digital Numeration
Boolean Algebra Complex Numbers Probability
Fundamental Concepts of Calculus Numerical Differentiation Numerical Integration

Electrical Fundamentals

Voltage, Current, Resistance, and Basic Circuit Concepts Sources and Loads, Voltmeters and Ammeters
Components and Symbols Electrical Diagrams
Conductors and Electrical Connections Electrical Switches
Ohm's and Joule's Laws, Resistor Ratings, and Electrical Safety Diagnostic Fundamentals
Series Circuits and Voltage Dividers Parallel Circuits and Current Dividers
Kirchhoff's Voltage Law Kirchhoff's Current Law
Series-Parallel Circuits Qualitative Circuit Analysis
Analog Multimeters Digital Multimeters
Overcurrent Protection Elementary Circuit Design
SPICE Modeling of Resistor Circuits Bridge Circuits

Network Analysis

Ideal and Real Sources Maximum Power Transfer Theorem
Superposition Theorem Thevenin's and Norton's Theorems
Millman's Theorem Loop and Mesh Analysis
SPICE Modeling of DC Networks

Magnetic and Electric Fields

Electric and Magnetic Fields Capacitance and Inductance
Capacitors and Capacitive Circuits Inductors and Inductive Circuits
Electromechanical Relays 555 Timer Circuits
DC Generators DC Motors
SPICE Modeling of Inductive and Capacitive Circuits

Sensors and Actuators

Sensors Overview Actuators Overview
Potentiometric Sensors Amperometric Sensors
Rheometric Sensors Electromechanical Meters
Signal grounding Data Acquisition
Electromagnetic Actuators Heating and Lighting Elements

AC Fundamentals

AC Quantities and Measurements Phasor Mathematics
Oscilloscopes AC meters
Phasors and AC Circuit Measurements Phasor Diagrams
Resistance, Reactance, and Impedance Efficiency and Power Factor
Series AC Circuits Parallel AC Circuits
Series-Parallel AC Circuits Series/Parallel AC Equivalents
Resonance Parasitic effects
Mutual inductance Transformers
Harmonics Signal Coupling and Noise
Elementary Filter Circuits AC Power Instruments
Polyphase AC Polyphase Transformer Circuits
Transmission Lines Advanced Filter Circuits
The S Variable Transfer Functions
SPICE Modeling of AC Circuits Spectrum Analyzers

Electric Power Systems

Electrical Power Grids Single-Line Electrical Diagrams
Electrical Hazards Principles of Overcurrent Protection
AC Generators AC Motors
Circuit Breakers and Disconnects Power Transformers
AC Induction Motor Starters Variable Frequency AC Motor Drives
AC Power Regulation Overvoltage Protection
Instrument Transformers Principles of Protective Relaying
Symmetrical Components AC Motor Protection
Overcurrent Protection Relays Directional Overcurrent Protection Relays
Reclosing Protection Relays Overcurrent Protection Coordination
Differential Generator, Line, and Bus Protection Relays Differential Transformer Protection Relays
Distance Line Protection Relays Traveling-Wave Line Protection Relays
Auxiliary Protective Relays Protective Relay Testing
SPICE Modeling of Power Circuits

Semiconductor Fundamentals

Conductors, Insulators, and Semiconductors Semiconducting Electronic Devices
PN Junctions and Diodes Rectifier Circuits
Bipolar Junction Transistors Field-Effect Transistors
Thyristors Special Transistors
Optoelectronic Devices Special Diodes
Thermal Management Power Supply Protection
SPICE Modeling of Semiconductor Components

Vacuum Device Fundamentals

Thermionic Emission Vacuum Rectifiers
Triode Tubes Multi-Grid Tubes
Thyratron Tubes RF Tubes
SPICE Modeling of Vacuum Components

Switching Circuits

Diode Switching Circuits Clipper and Clamper Circuits
Transistor Switching Circuits Thyristor Switching Circuits
Comparators Basic Principles of Digital
Phase-Angle Power Control Pulse-Width Modulation Power Control
DC-AC Inverters DC-DC Converters
Relay Ladder Logic Semiconductor Logic Gates
Digital Numeration Digital Codes
Error Detection and Correction Digital Diagnostic Tools
Combinational Logic Latching Logic
Boolean Algebra Karnaugh Mapping
Shift Registers Counters
Encoders and decoders Multiplexers and demultiplexers
Digital Computing Circuits Finite State Machines
Digital-Analog Conversion Digital-Signal Integrity
SPICE Modeling of Switching Circuits

Amplification

Linear Voltage Regulators Linear Current Regulators
Single-Stage BJT Amplifiers Single-Stage FET Amplifiers
Differential Pair Amplifiers Multiple-Stage Amplifiers
Amplifier performance Feedback
Audio Amplifiers RF Amplifiers
Operational Amplifiers Operational Amplifier Limitations
Precision Rectifier Circuits Analog Computing Circuits
Oscillators Active Filters
SPICE Modeling of Amplifier Circuits

Communication

Signal Modulation and Demodulation Serial Communication
Radio Communication Optical Communication
EIA/TIA-232, 422, and 485 Serial Networks Ethernet Networks
UDP and TCP Web-based systems
Modbus Networks HART Networks

Programmable Systems

Digital Memory Programmable Logic Arrays
Introduction to Microprocessors Introduction to Microcontrollers
Introduction to Assembly Language Programming Introduction to C/C++ Programming
PIC 16F84A Microcontrollers PIC 16F18346 Microcontrollers
Introduction to PLCs

Software applications

SPICE version 2G6 is a legacy, ``freeware'' program used to analyze DC and AC circuits. Using SPICE is similar to writing a computer program. The first step is to create a plain-text file containing instructions for SPICE to follow, and then you invoke the SPICE program to process that plain-text file. SPICE then generates readable output with an analysis of the circuit, either in plain-text form of in a format suitable to graphic display using other software applications. While this may seem primitive in comparison to ``WYSIWYG'' style circuit analysis programs where you draw a picture of the circuit to be analyzed, using SPICE to analyze simple circuits is far from complicated, and becoming familiar with writing SPICE code is an excellent introduction to text-based computer programming, which any serious student of electronics needs to learn anyway.

Here is SPICE2G6 compiled for Microsoft Windows XP, to be run in the command-line window (cmd). This is a precompiled set of executables and dynamically-linked libraries: spice-2g6-winxp.zip

Here is SPICE2G6 for the Linux operating system. After unpacking this ``tar'' source code archive file, you will need to compile it to create an executable: spice2g6.tar


A more modern version of SPICE is NGSPICE, the particular version hosted here is version 26. This is a derivative project based on SPICE version 3, copyright (1996) by the Regents of the University of California under a modified BSD license. A user's manual complete with all copyright notices and licenses is avaiable here: Ngspice version 26 manual (PDF)

Here is NGSPICE version 26 compiled for Microsoft Windows. It comes with an interactive terminal and graphic display. Simply extract all files contained in the ``zip'' archive: ngspice-26_140112.zip. Instructions for using the interactive mode are found in the manual. NGSPICE also supports legacy ``batch'' mode operation as well, where you invoke NGSPICE at the command prompt (cmd) and receive text output.

Here is NGSPICE version 26 for the Linux operating system. After unpacking the source code archive file, you will need to compile it to create an executable: ngspice-26.tar.


Here is a simple terminal-based program called TROUBLESHOOT useful for practicing circuit troubleshooting. After unpacking the source code archive file, you will need to compile it to create an executable: tshoot_1v4.tar. This program runs well under Cygwin for Microsoft Windows operating systems, and natively under Apple OS X and Linux.


Sample courses

The following courses are designed to fit in a sequence of four semesters, each semester being 15 weeks in length. Total semester-credit count is less than 60 credits, allowing room for general education and/or elective courses. Theory courses are calculated on the basis of 1 contact hour per week, per semester-credit. Experiment courses are calculated on the basis of 3 contact hours per week, per semester-credit. Project courses are calculated on the basis of 2 contact hours per week, per semester-credit.

Template, Theory course:
EET 000 T (4 cr)
Template, Experiments course:
EET 000 E (4 cr)
Template, Projects course:
EET 000 P (4 cr)
1st Yr, 1st Sem, Theory:
EET 111 (4 cr)
1st Yr, 1st Sem, Experiments:
EET 112 (4 cr)
1st Yr, 1st Sem, Projects:
EET 113 (4 cr)
1st Yr, 1st Sem, mathematics:
MATH XXX (3 cr)
1st Yr, 2nd Sem, Theory:
EET 121 (4 cr)
1st Yr, 2nd Sem, Experiments:
EET 122 (4 cr)
1st Yr, 2nd Sem, Projects:
EET 123 (4 cr)
1st Yr, 2nd Sem, communications:
COMM XXX (3 cr)
2nd Yr, 3rd Sem, Theory:
EET 231 (4 cr)
2nd Yr, 3rd Sem, Experiments:
EET 232 (4 cr)
2nd Yr, 3rd Sem, Projects:
EET 233 (4 cr)
2nd Yr, 3rd Sem, elective:
XXXX XXX (3 cr)
2nd Yr, 4th Sem, Theory:
EET 241 (4 cr)
2nd Yr, 4th Sem, Experiments:
EET 242 (4 cr)
2nd Yr, 4th Sem, Projects:
EET 243 (4 cr)
2nd Yr, 4th Sem, elective:
XXXX XXX (3 cr)

Live courses

The following courses based on ModEL learning modules are designed for use at Lewis-Clark State College in Lewiston, Idaho. These are based on legacy (pre-2020) course numbers and titles, modified both for inverted instruction as well as revised topic coverage based on student and program needs.

Basic DC Circuit Theory
IETTI-101 (4 cr)
Semester 1 Theory
Introduction to Microcomputers
IETTI-103 (4 cr)
Semester 1 Experiments
Digital Electronics
IETTI-102 (4 cr)
Semester 1 Projects
Advanced Electrical Principles
IETTI-104 (4 cr)
Semester 2 Theory
AC Circuit Analysis
IETTI-112 (3 cr)
Semester 2 Experiments
Solid State Devices
IETTI-105 (4 cr)
Semester 2 Projects
Advanced Electronics I
IETTI-222 (4 cr)
Semester 3 Theory
C Computer Programming
IETTI-221 (4 cr)
Semester 3 Experiments
Advanced Digital Design
IETTI-220 (4 cr)
Semester 3 Projects
Advanced Electronics II
IETTI-223 (4 cr)
Semester 4 Theory
Intro to Programmable Devices
IETTI-225 (4 cr)
Semester 4 Experiments
Embedded Systems
IETTI-106 (4 cr)
Semester 4 Projects

Source files

This is the ``archive'' file for the Modular Electronics Learning project, in ``tar'' format which is a popular archival format on Unix-based operating systems: model.tar

Download this file to your computer, place it in a directory suitable for storing all the source files of this project, and then run the following command to extract all the individual files from this archive:

tar xvf model.tar

Every single file that is part of this project is covered by the Creative Commons ``Attribution'' license, which gives you freedom to pick specific files and incorporate them into your own project(s) if desired. All you must do is attribute original authorship of these files to myself.


An alternative to downloading this (very large!) archive file is to simply download individual source files for specific learning modules. Most of the files for this project are hosted in one directory, which means, for example, all you need to do to download the source LaTeX code for the text and formatting of the Series-Parallel Circuits learning module (mod_seriesparallel) is to replace the URL in your web browser ending in mod_seriesparallel.pdf with mod_seriesparallel.latex.


Section title index

A plain-text file listing all the sections in every Module may be viewed or downloaded here: List of Section Titles

This list may be helpful in searching for a particular topic among all the Modules hosted on this site.