Fig. 1 IR2110 High Voltage H-Bridge Driver
Click image for larger view.
Student-Hobbyist Electronics Projects Tutorials
Related to above: Arduino Controlled IR2110 Based H-Bridge HV Motor Control.
Introduction - The purpose of these pages is to introduce the student and hobbyist to electronics projects.
I've been a part-time adjunct professor at a local community college teaching electricity and electronics.
Today I do this for the shear love of electronics.
I have 45 years experience in electronics, from vacuum tubes to modern solid state and industrial controls. I tend to teach from a general science viewpoint.
This site has been up for about 16 years and covers a number of subjects broadly how to use the Arduino microcontroller and semiconductor components such as transistors, MOSFETs Zener diodes, op-amps, etc.
These are presented as information only - you assume all risk. Most voltages are under 24-volts. Read this safety warning.
See my You Tube Videos page lists the over 206 videos on My YouTube Channel.
Covers MOSFET and bipolar transistor switches and H-bridge circuits, triacs, SCRs other AC switching devices, photo and opto-coupler devices, power supplies, Hall Effect sensors, etc.
Understanding the following bipolar transistors, MOSFETs, IGBTs is the basis of most of my projects.
- H-Bridge and Bipolar-MOSFET Transistor Circuits
- H-Bridge Motor Control with Power MOSFETS Updated
- Basic Transistor Driver Circuits
- N-Channel Power MOSFET Switching Tutorial
- P-Channel Power MOSFET Switch Tutorial
- Build a Transistor H-Bridge Motor Control
- More Power MOSFET H-Bridge Circuit Examples
- High Voltage MOSFET Switching Circuits
- Bipolar transistors:
- Opto-Isolated Transistor Drivers for Micro-Controllers
- ULN2003A Darlington Transistor Array with Circuit Examples
- Tutorial Using TIP120 and TIP125 Power Darlington Transistors
- Driving 2N3055-MJ2955 Power Transistors with Darlington Transistors
- Understanding Bipolar Transistor Switches
- All NPN Transistor H-Bridge Motor Control
- Design 10-Amp 2N3055 Based Power Switch
- Common Collector Opto-Isolated Bipolar Transistor Switches
- Compare 2N3055 MJE10005 Transistor Power Switches
- MOSFET-Transistor Drivers with TC4420 and TC4429, IGBTs, etc.
- Introduction TC4420-TC4429 MOSFET Drivers
- Use TC4420 MOSFET Driver for Simple H-Bridge Circuit
- TC4420 MOSFET Driver Various Circuits
- TC4420 MOSFET Driver Replacement Circuits
- Test Power MOSFET Transistors, IGBTs Results
- Insulated Gate Bipolar Transistor IGBT Circuits
- Issues on Connecting MOSFETs in Parallel
- Opto-Isolated Transistor Drivers
- Optical Isolation of H-Bridge Motor Controls
Typical of the projects is Fig.1 a high voltage H-Bridge DC motor controller. All of the components used in that project are also covered in separate tutorials.
The Arduino code can be used on multiple H-bridge circuits. It has adjustable speed control and rotation direction control. With the growth of electric vehicles these circuits will be seen more often.
- Connecting Transformers in Series-Parallel
- IGBT Based High Voltage H-Bridge DC Motor Control
- Build Autotransformer-Variac AC and DC Power Supply
- Arduino Controlled Power Constant Current Source
- Arduino Controlled IR2110 Based H-Bridge HV Motor Control
- H-Bridge Motor Control with Power MOSFETS Updated
- N-Channel Power MOSFET Switching Tutorial
Hall Sensors
A Hall sensor in its most basic form is an analog integrated circuit. It consists of a Hall plate that outputs a "transverse" voltage based on the intensity of a magnetic field - polarity is dependant on magnetic polarity.
It also consists of a high gain differential amplifier because the generated voltage is small. The output voltage is analog usually centered around half the power supply voltage.
The addition of a Schmitt trigger with a properly set hysteresis will create a Hall switch or Hall latch. They often have an open collector output transistor.
The Schmitt triggers used here are based on an analog comparator. These can be built from operational amplifiers (op-amps) such as the LM358 or LM741.
Or one can use the LM311 comparator or LM339 quad comparator. The have open collector outputs unlike the LM311/LM741 op-amps.
A comparator "compares" two analog voltages and turns on-off based on their voltage levels.
Often considered "digital" at this point we have in reality a one-bit analog-to-digital converter.
New video 6/8/2022 Basics of Hall Effect Analog Sensors & Switches
- Hall Effect Magnetic Switches and Sensors
- Hall Sensor Circuits, Theory, Operation Updated 2022
- How Hall Effect Sensors Detect Ferrous Metals
- Exploring Omni Hall Effect Sensors with the TI DRV5032
- LM311 Comparator Projects Using Hall Sensors
- Comparator Circuits:
- Comparator Theory Circuits Tutorial
- Comparator Hysteresis and Schmitt Triggers
- Voltage Comparator Information And Circuits
- Looking at Window Comparator Circuits
- Analog Battery Charger Uses Comparators
The TL431A, The LM317, and LM334 are power and inexpensive current regulators. They are used for lighting LEDs, battery chargers, etc.
The LM317 and related parts are used in low-voltage DC power supplies.
- Constant Current Circuits with LM317, LM334, etc.
- Experiments with TL431 Shunt Regulator
- TL431 Precision Current Regulator Circuits
- TL431 Based Current Limiter Constant Current Source Circuits
- TL431 Shunt Regulator Circuits
- Constant Current Circuits with the LM334
- LM334 CCS Circuits with Thermistors, Photocells
- LM317 High Power Constant Current Source Circuit
- LM317 Constant Current Source Circuits
- LM317 Adjustable Voltage Source Current Boost
- LM317 Constant Current Source for Lighting LEDs
- 3 Amp LM741 Op-Amp Constant Current Source
Power Supplies
- Build Autotransformer-Variac AC and DC Power Supply
- Connecting Transformers in Series-Parallel
- Build an Adjustable 0-34 volt power supply with the LM317
- AC Power Supply Rectification
- Basic Power Transformers
- Transistor-Zener Diode Regulator Circuits
- Tips for the LM78XX Series Voltage Regulators
- Bi-Polar Power Supplies
- Connecting Series-Parallel Batteries
- LM2575 Simple Switching Voltage Regulators
- Battery Charger related:
- Solar Panel Charge Controller Using Arduino
- Solar Panel Charge Controller Using PICAXE
- Solar Panel Battery Charge Controller Using Arduino
- Solar Panel Battery Charge Controller Switching Circuit
Opto-Coupler SCR and Triac Circuits
SCRs and Triacs are used to control AC and DC power systems. With a microcontroller such as Arduino using a zero-crossing can control AC power to control light levels, AC motor speed, and resistive heating elements..
- Basic Triacs and SCRs
- Solid State AC Relays with Triacs
- Diac Waveform Generator, Trigger Circuits
- SIDAC Operation and Trigger Circuits
- Light Activated Silicon Controlled Rectifier (LASCR)
- Light Activated SCR Based Optocouplers Circuit Examples
- Comparing Photo Triac, Photo SCR Opto-Couplers
- Silicon Controlled Rectifier Review and Circuits
- Silicon Controlled Rectifiers Connected as Power Triacs
- Simple Triac-SCR Test Lab for You Tube
- AC Zero Crossing Detectors for Arduino
- Zero-Crossing Detectors Circuits
- Hardware Interrupts Demo and Tutorial for Arduino
- In Depth Look at AC Power Control with Arduino
- Arduino AC Power Control Using Interrupts
- LM555-NE555 One-Shot Multivibrator AC Power Control
- Zero-Crossing Detectors Circuits and Applications
- Photo Detector Devices:
- LM334 CCS Circuits with Thermistors, Photocells
- Photodiode Circuits Operation and Uses
- Photodiode Op-Amp Circuits Tutorial
- Photo Voltaic Tutorial MOSFET Output Solid State Relays
- YouTube:
- Photodiodes and How they Work
- Photodiode Op-Amp Circuits
- Using Photovoltaic MOSFET Drivers
- Digital Circuits:
- Simple Schmitt Trigger SN74HC14 Square Wave Generator
- Introduction to RC Differentiator Circuits and Uses
- SN74HC14 Square Wave Generator uses SN7476 JK Flip-Flop
- Three Output Digital Pulse Generator
- Astable CD4047 Geiger Counter Power Supply
- CD4047 Monostable Multivibrator Circuit
- Basic TTL Tri-State Buffer Circuit Examples
- Tutorial NOR Gate SR Latch Circuits
- Tutorial NAND Gate SR Latch Circuit
- Tutorial OR-NOR Circuits Monostable Multivibrator
- Tutorial of XOR and XNOR Logic Gates
- LM555-NE555 One-Shot Multivibrator AC Power Control
- Tri-State H-Bridge using CD4093B CMOS Circuit
- Simplified CMOS-MOSFET H-Bridge Circuit
Other Circuits
- LM2575 Simple Switching Voltage Regulators
- Simple 2 Transistor LED Flasher Circuit
- Generating High Voltage with an Inductor
- Coils for Highly Selective Crystal Radio
- Build a 12AV6 Vacuum Tube AM Radio
- Push-Pull Output Stage LM386 Audio Amplifier
- KIM-1 My First Computer
- Basic Magnetics and Analog Volt and Amp Meters (pdf)
- Basic DC and Ohms Law (pdf)
- Basic Light Emitting Diodes (pdf)
- Connecting PCF8574P GPIO Expander to Raspberry Pi
- Tri-State H-Bridge using CD4093B CMOS Circuit
- Simplified CMOS-MOSFET H-Bridge Circuit
- Programming PCF8574P 8-bit I-O Expander with PICAXE, Arduino
- Interfacing Microcontrollers to CMOS and MOSFET Circuits
- DS1307 RTC with a CD4040 as a Precision Time Base
- CD4040 12-stage Binary Counter with DS1307 RTC Time Base
- Simple DIAC Based Relaxation Oscillator Pulse Generator
- Connecting Transformers in Series-Parallel
- Arduino Controlled IR2110 Based H-Bridge HV Motor Control
- IGBT Based High Voltage H-Bridge DC Motor Control
- Build Autotransformer-Variac AC and DC Power Supply
- Understanding Unijunction Transistors Theory Operation
- Unijunction Transistor SCR Photo Flash Control Circuit
- Arduino Measures Current from Constant Current Source
- Constant Current Source Theory Testing
- Review Ohm's Law for Trouble-Shooting CCS Circuits
- Arduino Power Magnetic Driver Board for Stepper Motors
- Arduino Controlled Power Constant Current Source
- Theory and Operation of Capacitors
Related video to above:
- SIDAC Controlled Flashtube and Pulse Circuits
- High Voltage IGBT H-Bridge Circuit
- Constant Current Source Multimeter Trouble Shooting
- Ohm's Law Review for Constant Current Source
- Arduino Unipolar Stepper Motor Driver Board with Arduino Code
- Arduino Controlled Constant Current Source
New, updated for August 2021:
- Load Lamp Safely Allows Safer Electronic Testing
- How to use SIDACs and Their Operation
- Build Autotransformer-Variac AC and DC Power Supply
- Warning About Electrical Shock and How to Prevent It
- YouTube
- SIDAC Controlled Flashtube and Pulse Circuits
- Build Autotransformer-Variac AC and DC Power Supply
Fig. 1
Arduino Micro-controller Projects
Arduino Microcontroller Projects presents a number of tested projects and examples for Arduino. The emphasis is hardware control which suggest one has an electronics background. It's also helpful to have a background in digital logic and binary code. The projects will explain this as needed.
What differs here is I avoid the use of Arduino only code and code libraries in order to port the basic code to Python or Microchip PIC C.
See Arduino Projects Hobby Projects Tutorials.
- Arduino IR2110 Based H-Bridge HV Motor Control
- Arduino Measures Constant Current Source
- Arduino Controlled Constant Current Source
- Magnetic Driver Board for Stepper Motors
- Arduino
- Arduino DC-AC Power Inverter
- Arduino PWM to Analog Conversion
- Arduino Analog Digital Conversion Voltmeter
- Rotary Encoder Using Arduino Hardware Interrupts
- Better Arduino Rotary Encoder Sensor
- 3-Wire MAX6675 Thermocouple ADC Arduino Interface
- Arduino Stepper Motor Drive Coil Winder
- TB6600 Stepper Motor Driver with Arduino
- Considerations for Using Stepper Motors
- Connecting the Arduino to a L298N H-Bridge
- L298N Motor Controller Theory and Projects
- TA8050 H-Bridge Motor Controller
- PCA9555 32-Bit GPIO Expander with Arduino
- PCA9555 GPIO Arduino, 4X4 Keypad
- PCA9555 GPIO Arduino Using Interrupts
- PCA9555 GPIO, Arduino, LCD Display
- Arduino TMP37 Temperature Sensor I2C Display
- Arduino TMP37 Temperature Sensor Tutorial
- Arduino uses ADS1115 with TMP37 to Measure Temperature
- Arduino IF Statement Code Examples
- Arduino LCD Display, 74164 Shift Register
- Programming ADS1115 4-Channel I2C ADC with Arduino
- Arduino with MCP4725 12-bit DAC Demo
- Digispark ATtiny85 with MCP23016 GPIO Expander
- Safely Build Program a H-Bridge
- Build H-Bridge Motor Control Without Fireworks
- MOSFET H-Bridge for Arduino 2
- Arduino Port Registers Revisited
- Pulse-Width Modulation Tutorial
- Arduino and MM5451 LED Display Driver
- Arduino and the 74HC595 Serial Shift Register
- Arduino IF Statement Code Examples
- Arduino Solid State Relay Motor Enable Control
- Arduino XOR Blinks LED
- Arduino Projects Revisited Revised
- Programming ADS1115 4-Channel I2C ADC with Arduino
- Arduino uses ADS1115 with TMP37 to Measure Temperature
- Connect Arduino to I2C Liquid Crystal Display
- Arduino Reads Temperature Sensor Displays Temperature on LCD Display
- Arduino with MCP4725 12-bit Digital-to-Analog Converter Demo
- Videos
- Arduino with ADS1115 4-Channel 16-bit Analog-to-Digital Converter
- Arduino with MCP4725 12-Bit DAC
Fig. 3 Raspberry Pi connected to external SSD.
Raspberry Pi and Linux
Raspberry Pi is an ARM processor based mini Linux computer clone. It has addressable hardware IO for connecting external circuitry. These projects are in Python a high level interpreted language finding many modern applications.
At this time there are four models with the Model 4 being the most powerful.
The Linux desktops I use is Openbox-LXDE or Openbox. The above image is my version of a hacked LXDE desktop.
Note Openbox is not a full desktop but a window manager. Other pieces of software must be added for a full system.
I design these for speed and function. I remove slow and bloated programs.
- Software and setup:
- Raspberry Pi Openbox Desktop 2019
- Setting up Openbox for Raspberry Pi
- Add Solid State Hard Drive to Raspberry Pi
These are mostly sensors connected through the I2C protocol. While digital themselves, they can measure analog sensors.
- Interface I2C LCD to Raspberry Pi in C
- ADS1115 4-Channel ADC Uses I2C with Raspberry Pi
- MCP4725 12-Bit DAC Interface to Raspberry Pi
- Raspberry Pi with PCF8591 Analog To Digital Control in C
- Raspberry Pi PCF8591 AD-DA Sensor Python Interface
More software for Raspberry Pi:
- Add WBAR Launch Dock to Raspberry Pi
- Add MPG123 Terminal Music Player to Raspberry Pi, Linux
- Basics of Alsamixer Audio Control for Linux
- Using FEH Wallpaper Setter Under Linux
- Scrot Lite Weight Screen Shot Software for Linux
- Using Light Weight Beaver Text Editor
- Install Viewnior Image Viewer for Linux
- Zmixer ALSA Sound Control Tutorial
- Tutorial Xinitrc Desktop Manager Control for Linux
- Setup Raspberry Pi Using JWM Window Manager
- Using the powerful Rox-Filer system in Linux
- Use FEH under Linux for a Wallpaper Setter
- How to create Symbolic links in Linux
- Raspberry Pi USB Audio Connection
- WiringPi for Raspberry Pi and MAX6675 thermal-couple sensor
- WiringPi Blink an LED Demo
- WiringPi and Pulse-Width-Modulation with Raspberry Pi
- Raspberry Pi and a MM5451 LED Display Driver
- Raspberry Pi MM5451 LED Display Driver YouTube
- Raspberry Pi RTC with MAX7219 Display Driver
- Raspberry Pi Python RTC with MAX7219 Display Driver YouTube
- Raspberry Pi 8-Digit LED MAX7219 Display Driver
- Raspberry Pi and the 74HC595 Serial Shift Register
- Programming Raspberry Pi 74HC595 Serial Shift Register YouTube
- Raspberry Pi and Arduino
- Connect Serial LCD to Raspberry Pi
- Serial Read from Arduino to Raspberry Pi
- Arduino Raspberry Pi Interface with LCD Display
- Connecting Raspberry Pi to Arduino with I2C Interface
- Connecting Raspberry Pi to Arduino with I2C Interface
Connecting PC Printer Port to External Electronics
- Exploring Digital Computer Electronics
- Hardware
- Hardware Review Connecting PC Parallel Ports
- Operation TB6600 Stepper Controller with PC Parallel Port
- Build or Buy Parallel Port Breakout Board?
- Build Serial HD44780 LCD Display Connect to Parallel Port
- Motherboards
- Presario 1999 CM1001 Gaming Computer Salvage
- Live Test 2002 VIA EPIA-800 Mini ITX Motherboard
- Salvage, Test 2012 AAEON EMB-B75A Industrial Motherboard
Below are listed a series of projects using pyparallel and electronics. We will use a common PC printer port to learn basic python and electronics interfacing. Starting with routines I wrote to aid students I'd advise walking through this in sequence. Have fun and send comments and/or corrections to lewis@bvu.net.
Connecting a PC Printer Port to Electronics with Python is closely related to Raspberry Pi. It too is a nearly identical Linux system but differs in being designed to use a hardware printer port as I-O to connect electronics projects. The projects here too are in Python and with modifications will work on Raspberry Pi and vise-versa.
It differs in I never bothered to setup the I2C interface found in Raspberry Pi instead interfaced an Arduino to better handle low-level electronics.
Now a available for download a custom live Linux distribution to use a PC printer port for electronics control - without installing or altering the PC in any way.
See Live Linux Distro for Using Printer Port with Electronics
- Introduction to Python Bitwise Operations
- Python Bitwise Operations by Example
- Using the PC Printer Port series:
- Programming the PC Printer Port in Python
- Additional Commands for Py-Parallel
- Controlling Data Bits on the PC Parallel Port
- Connecting Switches to the PC Printer Port with Python
- Reading an Analog Voltage Through the PC Printer Port Part 1
- Reading an Analog Voltage Through the PC Printer Port Part 2
- Controlling a Serial LCD Display on a PC Printer Port with Python
- Serial ADC and LCD Display with PC Printer Port with Python
- Controlling MAX7219 LED Display with PC Printer Port with Python
- MAX7219 8-Digit LED Display and Serial ADC in Python
- Project pages:
- Part 1: Read Arduino with PC Printer Port
- Part 2: Better way to Read Arduino Through the PC Printer Port
- Part 3: Read-Write an Arduino Through a PC Printer Port
- Part 4: Control LCD Display and Arduino from the PC Printer Port
Printer Port Projects Main Page
Videos:
Connect Electronics to PC printer Port with Python
Setup PC Printer Port with Python-Linux
Use PC Printer Port to Read Analog Voltage
Read-Write Arduino ADC PWN with Printer Port
Printer Port to Serial LCD Display
Connect Arduino to PC Printer Port for advanced control
Linux Videos
Live Linux Distro for Using Printer Port with Electronics
Using the powerful Rox-Filer system in Linux
Use FEH under Linux for a Wallpaper Setter
How to create Symbolic links in Linux
Microchip PIC Projects PIC18F2550, PIC16F628A, PIC12F683
Microchip PIC18F2550 projects are based on the BOLT system board but can be used without it. Centered on the PIC18F2550 is programmed in C like Arduino and the programs are often interchangeable. I present a lot of code examples.
Also included in that section is assembly language projects for the PIC PIC16F628A and PIC12F683. While cheap and versatile controllers there's a steep learning curve in using assembly.
Introduction to PIC12F683 Programming
- Main Pages for PIC:
- PIC18F2550 Main Page
- PIC16F628A Main Page
- Programming PIC16F84A-PIC16F628A Interrupts by Example
- PIC16F84A-PIC16F628A Pull Up Resistors with Interrupts
- Programming PIC16F84A-PIC16f628a Timers by Example
- Programming PIC16F84A-PIC16F628A TMR0 Interrupts
- Programming PIC16F84A Software Delay Routines by Example
- Microchip PIC16F84A H-Bridge Motor Control
- Microchip PIC16F628A Basic H-Bridge Motor Control
- PIC12F683 Microcontroller Circuits YouTube
- PIC12F683 Microcontroller and Circuits
- Introducing the BOLT PIC18F2550 Microcontroller Board
- PIC18F2550 BOLT with Serial LCD Display
- Using the MAX7219 with the 18F2550 Programs:
- MAX7219 Display Driver and a PIC Micro Controller
- MAX7219 Display Controller in the Non-Decode Mode with PIC
- Programming:
- Working with Pulse-Width Modulation and the PIC Microcontroller
- Using TMR0 and Interrupts on the PIC18F2550
- YouTube Videos:
- My YouTube Channel
- MAX7219 display controller with 8X8 LED Matrix
- Programming the MAX7219 and 7-Segment Display
- Connecting PIC18F2550 to Parallel LCD Display
- Connecting PIC18F2550 to Serial LCD Displays
- Assembly language projects using PIC16F628:
- Exploring the Microchip PIC in Assembly
- Using a Microchip PIC with TLC548 Serial ADC
- Controlling PIC Pulse Width Modulation with a Serial ADC
- Using TMR0 on a PIC with Interrupts
- External Clock Crystal with PIC16F628 TMR1 Generates Interrupt
- PIC Using Rotary Encoder to Operate Stepper Motor
- PIC16F628 Pulse Width Modulation Controls Brightness of LED
- Another way to Turn On-Off PWM in a PIC
- TLC548 Serial ADC Spec. Sheet
PICAXE Microcontroller Projects
Finally we come to the PICAXE Microcontroller in this case a medium range PICAXE-18M2. While built hardware wise on a Mircochip PIC controller it has an easy to learn built in proprietary basic. It's designed for students rather more than serious applications.
The PICAXE series of micro-controllers rank as the easiest and most cost effective way to use Microchip processors. I wanted an easier and less expensive way to introduce my students to the "PIC" micro-controller. Here I hope to get those starting out past poorly written literature and lack of simple working code examples.
- PICAXE Operates H-Bridge Motor Controller
- PICAXE Micorcontroller Controls Motor Speed - Direction
- PICAXE Projects
- Video: DC Motor Control with PICAXE
- Connecting the PICAXE to a H-Bridge DC Motor Control
- Exploring the PICAXE Micro-Controller
- PICAXE and a Dallas DS18B20 1-Wire Digital Thermometer
- Connecting the Dallas DS18B20 1-Wire Digital Thermometer to the PICAXE
- Understanding Micro-Controller Input/Output Ports
- Using the 74HC165 Shift Register with the PICAXE Micro-Controller
- Connecting the 74HC595 Shift Register to PICAXE Micro-controller
- Using 7-Segment Displays with the PICAXE Micro-Controller
- Potentiometers and Analog-to-Digital Conversion with the PICAXE
- PWM Motor Speed Control and the PICAXE Micro-Controller
- Connecting the PICAXE to the Ds1307 Real Time Clock
- Connecting the PICAXE to an External EEPROM (24LC08)
- Connecting a Servo to a PICAXE
- Connecting the TLC548 ADC to the PICAXE
- Connecting the AD5220 Digital Potentiometer to the PICAXE
- Solar Panel Charge Controller Using PICAXE Microcontroller
- Off Site:
- Web Master
- Tri-Cities VA-TN
- General Science
- Hobby Electronics
- US Constitution
- Christianity 101
- Religious Themes
Web site Copyright Lewis Loflin, All rights reserved.
If using this material on another site, please provide a link back to my site.