Mastering PCB design with real-world projects
This book builts on KiCad Like a Pro – Fundamentals and Projects and aims to help you practice your new KiCad skills by challenging you in a series of real-world projects. The projects are supported by a comprehensive set of recipes with detailed instructions on how to achieve a variety of simple and complex tasks. Design the PCBs for a solar power supply, an LED matrix array, an Arduino-powered datalogger, and a custom ESP32 board. Understand the finer details of the interactive router, how to manage KiCad project teams with Git, how to use an autorouter on 2 and 4-layer PCBs, and much more.
KiCad 8 is a modern, cross-platform application suite built around schematic and design editors. This stable and mature PCB tool is a perfect fit for electronic engineers and makers. With KiCad 8, you can create PCBs of any complexity and size without the constraints associated with the commercial packages.
Here are the most significant improvements and features in KiCad 8, both over and under the hood:
Modern user interface, completely redesigned from earlier versions
Improved and customizable electrical and design rule checkers
Theme editor allowing you to fully customize the look of KiCad on your screen
Ability to import projects from Eagle, CADSTART, and more
An improved and tightly integrated SPICE circuit simulator
Autorouting with the Freerouting plugin
Filters define which elements of a layout are selectable
Enhanced interactive router helps you draw single tracks and differential pairs with precision
New or enhanced tools to draw tracks, measure distances, tune track lengths, etc.
Enhanced tool for creating filled zones
A customizable coordinate system facilitates data exchange with other CAD applications
Realistic ray-tracing capable 3D viewer
Differential pair routing
Rich repositories of symbol, footprint, and 3D shape libraries
Python scripting API for programmatic customization and extensions
Improved footprint wizard for fast custom footprints
ModbusRTU and ModbusTCP examples with the Arduino Uno and ESP8266
Introduction to PLC programming with OpenPLC, the first fully open source Programmable Logic Controller on the Raspberry Pi, and Modbus examples with Arduino Uno and ESP8266
PLC programming is very common in industry and home automation. This book describes how the Raspberry Pi 4 can be used as a Programmable Logic Controller. Before taking you into the programming, the author starts with the software installation on the Raspberry Pi and the PLC editor on the PC, followed by a description of the hardware.
You'll then find interesting examples in the different programming languages complying with the IEC 61131-3 standard. This manual also explains in detail how to use the PLC editor and how to load and execute the programs on the Raspberry Pi. All IEC languages are explained with examples, starting with LD (Ladder Diagram) over ST (Structured Control Language) to SFC (Special Function Chart). All examples can be downloaded from the author's website.
Networking gets thorough attention too. The Arduino Uno and the ESP8266 are programmed as ModbusRTU or ModbusTCP modules to get access to external peripherals, reading sensors and switching electrical loads. I/O circuits complying with the 24 V industry standard may also be of interest for the reader.
The book ends with an overview of commands for ST and LD. After reading the book, the reader will be able to create his own controllers with the Raspberry Pi.
An Introduction to Circuit Simulation
LTspice, developed by Analog Devices, is a powerful, fast, and free SPICE simulator, schematic capture, and waveform viewer with a large database of components supported by SPICE models from all over the world. Drawing a schematic in LTspice is easy and fast. Thanks to its powerful graphing features, you can visualize the voltages and currents in a circuit, and also the power consumption of its components and much more.
This book is about learning to design and simulate electronic circuits using LTspice. Among others, the following topics are treated:
DC and AC circuits
Signal diodes and Zener diodes
Transistor circuits including oscillators
Thyristor/SCR, diac, and triac circuits
Operational amplifier circuits including oscillators
The 555 timer IC
Filters
Voltage regulators
Optocouplers
Waveform generation
Digital logic simulation including the 74HC family
SPICE modeling LTspice is a powerful electronic circuit simulation tool with many features and possibilities. Covering them all in detail is not possible in a book of this size. Therefore, this book presents the most common topics like DC and AC circuit analysis, parameter sweeping, transfer functions, oscillators, graphing, etc. Although this book is an introduction to LTspice, it covers most topics of interest to people engaged in electronic circuit simulation.
The book is aimed at electronic/electrical engineers, students, teachers, and hobbyists. Many tested simulation examples are given in the book. Readers do not need to have any computer programming skills, but it will help if they are familiar with basic electronic circuit design and operation principles. Readers who want to dive deeper can find many detailed tutorials, articles, videos, design files, and SPICE circuit models on the Internet.
All the simulation examples used in the book are available as files at the webpage of this book. Readers can use these example circuits for learning or modify them for their own applications.
For Speed, Area, Power, and Reliability
This book teaches the fundamentals of FPGA operation, covering basic CMOS transistor theory to designing digital FPGA chips using LUTs, flip-flops, and embedded memories. Ideal for electrical engineers aiming to design large digital chips using FPGA technology.
Discover:
The inner workings of FPGA architecture and functionality.
Hardware Description Languages (HDL) like Verilog and VHDL.
The EDA tool flow for converting HDL source into a functional FPGA chip design.
Insider tips for reliable, low power, and high performance FPGA designs.
Example designs include:
Computer-to-FPGA UART serial communication.
An open-source Sump3 logic analyzer implementation.
A fully functional graphics controller.
What you need:
Digilent BASYS3 or similar FPGA eval board with an AMD/Xilinx FPGA.
Vivado EDA tool suite (available for download from AMD website free of charge).
Project source files available from author’s GitHub site.
The Arduino Uno is an open-source microcontroller development system encompassing hardware, an Integrated Development Environment (IDE), and a vast number of libraries. It is supported by an enormous community of programmers, electronic engineers, enthusiasts, and academics. The libraries in particular really smooth Arduino programming and reduce programming time. What’s more, the libraries greatly facilitate testing your programs since most come fully tested and working.
The Raspberry Pi 4 can be used in many applications such as audio and video media devices. It also works in industrial controllers, robotics, games, and in many domestic and commercial applications. The Raspberry Pi 4 also offers Wi-Fi and Bluetooth capability which makes it great for remote and Internet-based control and monitoring applications.
This book is about using both the Raspberry Pi 4 and the Arduino Uno in PID-based automatic control applications. The book starts with basic theory of the control systems and feedback control. Working and tested projects are given for controlling real-life systems using PID controllers. The open-loop step time response, tuning the PID parameters, and the closed-loop time response of the developed systems are discussed together with the block diagrams, circuit diagrams, PID controller algorithms, and the full program listings for both the Raspberry Pi and the Arduino Uno.
The projects given in the book aim to teach the theory and applications of PID controllers and can be modified easily as desired for other applications. The projects given for the Raspberry Pi 4 should work with all other models of Raspberry Pi family.
The book covers the following topics:
Open-loop and closed-loop control systems
Analog and digital sensors
Transfer functions and continuous-time systems
First-order and second-order system time responses
Discrete-time digital systems
Continuous-time PID controllers
Discrete-time PID controllers
ON-OFF temperature control with Raspberry Pi and Arduino Uno
PID-based temperature control with Raspberry Pi and Arduino Uno
PID-based DC motor control with Raspberry Pi and Arduino Uno
PID-based water level control with Raspberry Pi and Arduino Uno
PID-based LED-LDR brightness control with Raspberry Pi and Arduino Uno
Practical Guide to Modular RF Design
Build Your Own Software-Defined Radio combines RF circuitry with hardware programming and PC-based signal processing. The e-book presents a modular approach to building a complete SDR system using RF Bricks – from the mechanical framework and RF modules to measurement tools, PC software, and FPGA implementations. Practical explanations guide readers through real signal paths, construction steps, and measurement routines, linking hardware and software into a flexible SDR platform.
Key topics include:
Mechanical setup: RF Brick template, chassis, and 19-inch module carrier
Bridges: USB isolator, I²C level shifter, I²C power switch, and practical examples
Signal-chain design with RF Bricks: antennas, band filters, NanoVNA work, preamplifiers, PLLs, demodulators, direct-conversion chains, multiband options, and narrowband bricks
RF measurement Bricks: single- and dual-tone sources, NPR methods, noise generators, notch filters, broadband amplifiers, and impedance bridges
Useful accessories: ATU-100 tuner, X-Phase QRM eliminator, and firmware notes
PC host software: SoapyAudio adjustments, GQRX, SDR++, and added functionality
GnuRadio elements: control blocks, SSB demodulation, GUI components, messaging, and filter handling
FPGA-based SDR: VHDL, toolchains, ADC/DAC blocks, oversampling, and a complete SSB/CW signal chain
With its modular structure and detailed working examples, this e-book offers a practical path to building and extending modern SDR systems.
Downloads
Software
Projects Using Arduino IDE and the LVGL Graphics Library
The ESP32 is probably one of the most popular microcontrollers used by many people, including students, hobbyists, and professional engineers. Its low cost, coupled with rich features makes it a popular device to use in many projects. Recently, a board called the ESP32 Cheap Yellow Display (CYD for short) is available from its manufacturers. The board includes a standard ESP32 microcontroller together with a 320x240 pixel TFT display. Additionally, the board provides several connectors for interfaces such as GPIO, serial port (TX/RX), power and Ground. The inclusion of a TFT display is a real advantage as it enables users to design complex graphics-based projects without resorting to an external LCD or graphics displays.
The book describes the basic hardware of the ESP32 CYD board and provides details of its on-board connectors. Many basic, simple, and intermediate-level projects are given in the book based on the ESP32 CYD, using the highly popular Arduino IDE 2.0 integrated development environment. The use of both the basic graphics functions and the use of the popular LVGL graphics library are discussed in the book and projects are given that use both types of approaches.
All the projects given in the book have been tested and are working. The block diagram, circuit diagram, and the complete program listings and program descriptions of all the projects are given with explanations. Readers can use the LVGL graphics library to design highly popular eye-catching full-color graphics projects using widgets such as buttons, labels, calendars, keypads, keyboards, message boxes, spinboxes, sliders, charts, tables, menus, bars, switches, drop-down lists, animations, and many more widgets.
ModbusRTU and ModbusTCP examples with the Arduino Uno and ESP8266
Introduction to PLC programming with OpenPLC, the first fully open source Programmable Logic Controller on the Raspberry Pi, and Modbus examples with Arduino Uno and ESP8266
PLC programming is very common in industry and home automation. This book describes how the Raspberry Pi 4 can be used as a Programmable Logic Controller. Before taking you into the programming, the author starts with the software installation on the Raspberry Pi and the PLC editor on the PC, followed by a description of the hardware.
You'll then find interesting examples in the different programming languages complying with the IEC 61131-3 standard. This manual also explains in detail how to use the PLC editor and how to load and execute the programs on the Raspberry Pi. All IEC languages are explained with examples, starting with LD (Ladder Diagram) over ST (Structured Control Language) to SFC (Special Function Chart). All examples can be downloaded from the author's website.
Networking gets thorough attention too. The Arduino Uno and the ESP8266 are programmed as ModbusRTU or ModbusTCP modules to get access to external peripherals, reading sensors and switching electrical loads. I/O circuits complying with the 24 V industry standard may also be of interest for the reader.
The book ends with an overview of commands for ST and LD. After reading the book, the reader will be able to create his own controllers with the Raspberry Pi.
Der Arduino Uno ist ein Open-Source-Mikrocontroller-Entwicklungssystem, das Hardware, eine integrierte Entwicklungsumgebung (IDE) und eine Vielzahl von Bibliotheken umfasst. Es wird von einer riesigen Gemeinschaft von Programmierern, Elektronikern, Enthusiasten und Akademikern unterstützt. Insbesondere die Bibliotheken erleichtern die Programmierarbeit und reduzieren die Entwicklungszeiten, da sie das Erstellen von Programmen erheblich erleichtern.
Der Raspberry Pi 4 kann in vielen Projekten wie Audio- und Videoanwendungen, aber auch in Industriesteuerungen, Robotik, Spielen usw. eingesetzt werden. Dazu bietet er auch WiFi- und Bluetooth-Fähigkeiten, wodurch er sich zudem hervorragend für internetbasierte Steuerungs- und Überwachungsanwendungen eignet.
In diesem Buch werden sowohl der Raspberry Pi 4 als auch der Arduino Uno in PID-basierten automatischen Steuerungsanwendungen eingesetzt. Nach einer grundlegenden Theorie der Regelsysteme werden funktionierende und getestete Projekte zur Steuerung realer Systeme mit PID-Reglern vorgestellt. Die Open-Loop-Eigenschaften, die Abstimmung der PID-Parameter und das Closed-Loop-Zeitverhalten der Systeme werden zusammen mit Blockdiagrammen, Schaltplänen und PID-Regelalgorithmen ausführlich diskutiert.
Vollständige Programme für den Raspberry Pi und den Arduino Uno runden die im Buch vorgestellten Projekte ab. Die Regelsysteme können problemlos auch auf andere Projekte angewendet werden und die für den Raspberry Pi 4 angegebenen Programme sollten auch mit anderen Modellen der Raspberry Pi-Familie reibungslos funktionieren.
Das Buch behandelt folgende Themen:
Steuer- und Regelsysteme
Analoge und digitale Sensoren
Übertragungsfunktionen und zeitkontinuierliche Systeme
Systemantwortfunktionen erster und zweiter Ordnung
Zeitdiskrete digitale Systeme
Zeitkontinuierliche PID-Regler
Zeitdiskrete PID-Regler
Zweipunkt-Temperaturregelung mit Raspberry Pi und Arduino Uno
PID-basierte Temperaturregelung mit Raspberry Pi und Arduino Uno
Motorsteuerung mit Raspberry Pi und Arduino Uno
Wasserstandsregelung mit Raspberry Pi und Arduino Uno
PID-basierte LED-Helligkeitsregelung mit Raspberry Pi und Arduino Uno
EAGLE – the “Easily Applicable Graphical Layout Editor“ is a professional-grade CAD (computer aided design) software package for the design and drafting of electronic schematics as well as the design and fabrication of printed circuit boards (PCBs).
This Advanced User Guide provides the experienced EAGLE user with insight into using some of the more advanced features of EAGLE software. It is not a guide to teach the reader the basic concepts of EAGLE, nor does it discuss the ‘how to’ of the EAGLE interface and the simpler operations and commands of the software. That is the purpose of the author’s previous title EAGLE V6 Getting Started Guide also published by Elektor.
This eBook is intended as an enduring document covering the more advanced modules, commands, and functions which make up EAGLE. It is hoped that this eBook will provide a quick, succinct reference to assist with more complex applications and uses of EAGLE – an ‘EAGLE User’s Companion’, if you like.
Complementing the EAGLE Advanced User Guide, the EAGLE User Language manual is included in this eBook in unabridged form, reproduced with permission of CadSoft GmbH.
At the time of writing, the material in this eBook covers version 7 of the EAGLE software suite.
Open-Source-Code mit Arduino IDE und PlatformIO
Autonomes Fahren: GPS, Accelerometer, Gyroskop
PS3-Controller
Mikrocontroller wie der Arduino und Einplatinenrechner wie der Raspberry Pi haben sich zu beliebten Komponenten entwickelt. Dritter im Bunde ist der ESP32 der Firma Espressif. Mikrocontroller dieser Baureihe zeichnen sich durch eine Vielzahl implementierter Funktionen aus, die bei einem Arduino konventioneller Prägung mit einem Atmel-AVR-Mikrocontroller erst mit weiterer Hardware möglich sind. Prominentes Beispiel sind hier die WiFi- und Bluetooth-Funktionalitäten. Gegenüber einem Raspberry Pi zeichnen sie sich durch einen deutlich geringeren Preis aus.
Allgemeine Informationen für die Realisierung eines Roboterauto-Projekts mit dem ESP32 sind leicht zu finden. Dabei handelt es sich aber oft nur um Ausführungen zu einem Teilaspekt, ohne inhaltliche oder funktionale Abstimmung. So ist nicht nur die Beschaffung der benötigten Informationen mühselig und zeitaufwändig, sie kann auch außerordentlich fehlerträchtig sein.
Ansatzpunkt dieses Buches ist, diese Lücke zu schließen. Es geht auf verschiedene Möglichkeiten eines Chassis ein, vermittelt nötige Kenntnisse und führt schrittweise von einer einfachen Motorsteuerung zu einem komplexen sensor- und sprachgesteuerten Roboterauto. Hacks rund um GPS und eine PlayStation 3 runden die Sache ab.
Inhalt
Bei der Reihenfolge der Kapitel wurde versucht – beginnend bei der Darstellung von grundlegenden Informationen – über die Lösung einfacher Aufgaben zu etwas anspruchsvolleren Techniken zu führen.
Der Mikrocontroller ESP32
Die Software erstellen
Die Stromversorgung
Rund um die Hardware
Das Chassis
Der Gleichstrommotor
Kabellose Steuerung über WiFi
Mit Sensoren Hindernisse erkennen
Eine eigene Roboterauto-App
Servo und Lichtsensor
GPS
Accelerometer / Gyroskop
PS3-Controller
Roboterauto-App
Hinweis zur Software
Die Dateien haben das Suffix (.cpp). Grund ist die Entwicklung mit PlatformIO. Mit Copy & Paste sollten sie auch in der Arduino-IDE verwendet werden können.