Tout sur les protocoles et leur mise en œuvre avec Arduino
Initialement destiné aux véhicules routiers, le réseau CAN (« Controller Area Network ») et son successeur le réseau CAN FD (« Flexible Data ») ont vu leurs champs d’application s’élargir à de nouveaux domaines. L’industrie propose de nombreux modules microcontrôleurs dotés d’une interface CAN et/ou CAN FD. L’environnement de développement Arduino a démocratisé la programmation de ces modules et il existe des bibliothèques qui implémentent un pilote CAN et/ou un pilote CAN FD.
La première partie dresse un rapide historique des réseaux CAN et CAN FD et expose la problématique des lignes de transmission en abordant succinctement leur théorie et présentant des résultats de simulation Spice.
La deuxième partie est consacrée au réseau CAN, en détaillant successivement la fonction logique du réseau, les transcepteurs, les contrôleurs, la topologie la plus classique (le bus) et d’autres moins courantes, les répéteurs et les passerelles. Les aspects particuliers du protocole, tels que le bit stuffing, l’arbitrage, les trames d’erreur, la détection des erreurs sont exposés. La discussion de la fiabilité du protocole est illustrée par des exemples mettant en évidence ses faiblesses.
La troisième partie présente le protocole CAN FD, ses deux variantes CAN FD ISO et CAN FD non ISO, leurs fiabilités, leurs faiblesses, mises en évidence par des exemples. Différents transcepteurs et contrôleurs CAN FD sont décrits.
La quatrième partie est dédiée aux applications : comment utiliser les services d’un pilote, concevoir une messagerie, utiliser un analyseur logique. Deux exemples d’application terminent cette partie.
Ce livre s’adresse aux amateurs et aux ingénieurs non spécialistes pour comprendre les possibilités qu’offre un réseau CAN et comment on le met en œuvre. Un enseignant trouvera des informations pour approfondir ses connaissances et pour concevoir des travaux pratiques. Une connaissance des microcontrôleurs, de leur programmation, de l’électronique numérique aidera à la lecture des schémas. La connaissance du langage C++ et du langage de simulation électronique Spice facilitera la compréhension des programmes qui sont décrits dans le livre. Tous les codes source sont disponibles sur le dépôt GitHub de l’auteur.
Téléchargements
GitHub
Program, build, and master over 60 projects with Python
The Raspberry Pi 5 is the latest single-board computer from the Raspberry Pi Foundation. It can be used in many applications, such as in audio and video media centers, as a desktop computer, in industrial controllers, robotics, and in many domestic and commercial applications. In addition to the well-established features found in other Raspberry Pi computers, the Raspberry Pi 5 offers Wi-Fi and Bluetooth (classic and BLE), which makes it a perfect match for IoT as well as in remote and Internet-based control and monitoring applications. It is now possible to develop many real-time projects such as audio digital signal processing, real-time digital filtering, real-time digital control and monitoring, and many other real-time operations using this tiny powerhouse.
The book starts with an introduction to the Raspberry Pi 5 computer and covers the important topics of accessing the computer locally and remotely. Use of the console language commands as well as accessing and using the desktop GUI are described with working examples. The remaining parts of the book cover many Raspberry Pi 5-based hardware projects using components and devices such as
LEDs and buzzers
LCDs
Ultrasonic sensors
Temperature and atmospheric pressure sensors
The Sense HAT
Camera modules
Example projects are given using Wi-Fi and Bluetooth modules to send and receive data from smartphones and PCs, and sending real-time temperature and atmospheric pressure data to the cloud.
All projects given in the book have been fully tested for correct operation. Only basic programming and electronics experience are required to follow the projects. Brief descriptions, block diagrams, detailed circuit diagrams, and full Python program listings are given for all projects described.
Program, build, and master over 50 projects with MicroPython and the RP2040 microprocessor The Raspberry Pi Pico is a high-performance microcontroller module designed especially for physical computing. Microcontrollers differ from single-board computers, like the Raspberry Pi 4, in not having an operating system. The Raspberry Pi Pico can be programmed to run a single task very efficiently within real-time control and monitoring applications requiring speed. The ‘Pico’ as we call it, is based on the fast, efficient, and low-cost dual-core ARM Cortex-M0+ RP2040 microcontroller chip running at up to 133 MHz and sporting 264 KB of SRAM, and 2 MB of Flash memory. Besides its large memory, the Pico has even more attractive features including a vast number of GPIO pins, and popular interface modules like ADC, SPI, I²C, UART, and PWM. To cap it all, the chip offers fast and accurate timing modules, a hardware debug interface, and an internal temperature sensor. The Raspberry Pi Pico is easily programmed using popular high-level languages such as MicroPython and or C/C++. This book is an introduction to using the Raspberry Pi Pico microcontroller in conjunction with the MicroPython programming language. The Thonny development environment (IDE) is used in all the projects described. There are over 50 working and tested projects in the book, covering the following topics: Installing the MicroPython on Raspberry Pi Pico using a Raspberry Pi or a PC Timer interrupts and external interrupts Analogue-to-digital converter (ADC) projects Using the internal temperature sensor and external temperature sensor chips Datalogging projects PWM, UART, I²C, and SPI projects Using Wi-Fi and apps to communicate with smartphones Using Bluetooth and apps to communicate with smartphones Digital-to-analogue converter (DAC) projects All projects given in the book have been fully tested and are working. Only basic programming and electronics experience is required to follow the projects. Brief descriptions, block diagrams, detailed circuit diagrams, and full MicroPython program listings are given for all projects described. Readers can find the program listings on the Elektor web page created to support the book.
Dit 216 pagina's tellende e-book staat boordevol Arduino-ideeën, uitleg, tips, diagrammen, programma's, PCB layouts en meer. Genoeg voor dagen vol informatief, inspirerend en stimulerend leesplezier!
Opgemaakt als PDF bevat dit digitale document een inhoudsopgave inclusief links naar elk project, zo dat u gemakkelijk komt waar u wilt zijn. Dit biedt u de mogelijkheid om tussen projecten te wisselen en degene die u het meeste boeien snel en gemakkelijk te vinden.
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.
50+ Android Apps with Raspberry Pi, ESP32 and Arduino
This book is about developing apps for Android compatible mobile devices using the MIT App Inventor online development environment. MIT App Inventor projects can be in either standalone mode or use an external processor. In standalone mode, the developed application runs only on the mobile device (e.g. Android). In external processor-based applications, the mobile device communicates with an external microcontroller-based processor, such as Raspberry Pi, Arduino, ESP8266, ESP32, etc.
In this book, many tested and fully working projects are given both in standalone mode and using an external processor. Full design steps, block programs, circuit diagrams, QR codes and full program listings are given for all projects.
The projects developed in this book include:
Using the text-to-speech component
Intonating a received SMS message
Sending SMS messages
Making telephone calls using a contacts list
Using the GPS and Pin-pointing our location on a map
Speech recognition and speech translation to another language
Controlling multiple relays by speech commands
Projects for the Raspberry Pi, ESP32 and Arduino using Bluetooth and Wi-Fi
MIT APP Inventor and Node-RED projects for the Raspberry Pi
The book is unique in that it is currently the only book that teaches how to develop projects using Wi-Fi and Node-RED with MIT App Inventor. The book is aimed at students, hobbyists, and anyone interested in developing apps for mobile devices.
All projects presented in this book have been developed using the MIT App Inventor visual programming language. There is no need to write any text-based programs. All projects are compatible with Android-based mobile devices. Full program listings for all projects as well as detailed program descriptions are given in the book. Users should be able to use the projects as they are presented, modifying them to suit their own needs.
Projekte mit Arduino, ESPHome, Home Assistant und Raspberry Pi & Co
Dieses E-Book enthält verschiedene Projektbeispiele und beginnt mit einer Einführung in die Elektronik. Es erklärt unter anderem, wie man Home Assistant auf einem Raspberry Pi installiert, wie man Raumklimasensoren für Temperatur und Luftfeuchtigkeit nutzt, das MQTT-Protokoll sowie weitere Schnittstellen einsetzt und ESPHome verwendet, um Sensoren und Aktoren in Home Assistant zu integrieren. Zahlreiche Video-Tutorials ergänzen das Buch.
Grundlagen der Elektrotechnik
Das Buch beginnt mit einer Einführung in die Elektrotechnik. Ihr lernt die Grundlagen von Spannung, Strom, Widerständen, Dioden und Transistoren.
Arduino und Mikrocontroller
Ein kompletter Abschnitt widmet sich dem Arduino Uno. Ihr lernt den Aufbau kennen, schreibt erste Programme und erarbeitet praktische Beispiele.
Home Assistant und Automatisierung
Ihr erfahrt, wie Home Assistant auf einem Raspberry Pi eingerichtet wird, und lernt den Umgang mit Automatisierungen, Szenen und Geräten. Zusätzlich wird auf Zigbee, MQTT und ESP-NOW eingegangen – wichtige Technologien für die Heimautomation.
ESP8266, ESP32 und ESP32-CAM
Die beliebten ESP-Mikrocontroller werden ausführlich behandelt. Nach einer theoretischen Einführung folgen praktische Projekte, die euch zeigen, wie ihr das Beste aus diesen Geräten herausholen könnt.
Sensoren und Aktoren
Das Buch erklärt die Funktionsweise und Anwendung zahlreicher Sensoren wie Temperatur- und Luftfeuchtigkeitssensoren, Bewegungsmelder und RFID-Reader. Bei den Aktoren werden Schrittmotoren, e-ink Displays, Servo-Motoren und vieles mehr beleuchtet. Zu allen Geräten gibt es praxisnahe Anwendungsbeispiele.
ESPHome
Dieses Kapitel zeigt euch, wie ihr Sensoren und Aktoren ohne Programmieraufwand in Home Assistant integriert. Ihr werdet Schritt für Schritt durch die Einrichtung mit ESPHome geführt.
LEDs und Lichttechnik
In diesem Kapitel lernt ihr verschiedene LED-Typen und deren Einsatzmöglichkeiten kennen. Grundlagen der Lichttechnik werden ebenfalls erklärt.
Node-RED
Ein eigenes Kapitel ist Node-RED gewidmet. Ihr erlernt die Grundlagen dieses leistungsstarken Tools und werdet Schritt für Schritt durch die Einrichtung und Nutzung geführt.
Integrierte Schaltkreise (ICs)
In der Elektronik gibt es zahlreiche ICs, die uns das Leben erleichtern. Ihr lernt die wichtigsten kennen und wendet das Wissen in praktischen Projekten an.
Programmieren für Profis
Fortgeschrittene Themen wie die korrekte Verwendung von Tastern, der Einsatz von Interrupts und die Nutzung eines NTP-Servers für Zeit-Synchronisation werden in diesem Kapitel detailliert behandelt.
Downloads
GitHub
Bauen Sie Ihre perfekte Wetterstation oder forschen Sie zusammen mit der ganzen Welt an Umweltdaten. Mit vielen praktischen Projekten für Arduino, Raspberry Pi, NodeMCU, ESP32 und weiteren Developmentboards.
Wetterstationen erfreuen sich seit Jahrzehnten großer Beliebtheit. Ob in aktuellen oder längst eingestellten Elektronik-Magazinen – regelmäßig finden sich Beiträge zum Eigenbau einer Wetterstation. Im Laufe der Jahre wurden diese Systeme immer ausgefeilter und können heute nahtlos in das Smart Home integriert werden. Allerdings erfordert dies oft die Bindung an einen (teuren) Markenhersteller, der sämtliche Komponenten abdeckt.
Mit Ihrer eigenen Wetterstation können Sie jedoch mühelos mithalten – und sogar Messwerte erfassen, die kommerzielle Geräte nicht bieten. Dabei kommt der Spaß nicht zu kurz: Sie erweitern spielerisch Ihr Wissen über Elektronik, moderne Mikrocontroller-Developmentboards und Programmiersprachen. Schon für weniger als zehn Euro können Sie erste Umweltdaten erfassen und Ihr System Schritt für Schritt mit wachsendem Interesse weiter ausbauen.
Aus dem Inhalt:
Wind und Wetter auf der Spur
Wetterdisplay mit OpenWeatherMap und Vakuum-Fluoreszenzanzeige
Flüchtige organische Verbindungen in der Atemluft
Mit MQ-Sensoren arbeiten: Kohlenmonoxid messen – geruchlos aber extrem giftig
CO2-Ampel mit ThingSpeak-IoT-Anbindung
Ein Gießautomat für Ihre Pflanzen
Gutes Raumklima: Temperatur und Luftfeuchtigkeit sind wichtige Kriterien
Schickes Thermometer mit alter Röhrentechnik
Nostalgisches Wetterhäuschen für die ganze Familie
Luftdruck und Temperatur genau messen
Sonnenbrand-Warngerät
DIY-Sensor für die Sonnenscheindauer
Das Smartphone zeigt’s an: Nebel oder klare Sicht?
Erdbeben erkennen
Pegelstände von Gewässern und Behältern
pH-Wert von Gewässern bestimmen
Radioaktive Strahlung erkennen
Mit GPS wissen Sie weltweit, wo ihr Sensor ist
Logdateien mit Zeitstempel auf SD-Karten speichern
LoRaWAN, The Things Network und ThingSpeak
LoRaWAN-Gateway für TTN betreiben
Mega-Display mit Wettervorhersage
Develop innovative hardware-based projects in C
The Raspberry Pi has traditionally been programmed using Python. Although this is a very powerful language, many programmers may not be familiar with it. C on the other hand is perhaps the most commonly used programming language and all embedded microcontrollers can be programmed using it.
The C language is taught in most technical colleges and universities and almost all engineering students are familiar with using it with their projects. This book is about using the Raspberry Pi with C to develop a range of hardware-based projects. Two of the most popular C libraries, wiringPi and pigpio are used.
The book starts with an introduction to C and most students and newcomers will find this chapter invaluable. Many projects are provided in the book, including using Wi-Fi and Bluetooth to establish communication with smartphones.
Many sensor and hardware-based projects are included. Both wiringPi and pigpio libraries are used in all projects. Complete program listings are given with full explanations. All projects have been fully tested and work.
The following hardware-based projects are provided in the book:
Using sensors
Using LCDs
I²C and SPI buses
Serial communication
Multitasking
External and timer interrupts
Using Wi-Fi
Webservers
Communicating with smartphones
Using Bluetooth
Sending data to the cloud
Program listings of all Raspberry Pi projects developed in this book are available on the Elektor website. Readers can download and use these programs in their projects. Alternatively, they can customize them to suit their applications.
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.
Get Cracking with the Arduino Nano V3, Nano Every, and Nano 33 IoT
The seven chapters in this book serve as the first step for novices and microcontroller enthusiasts wishing to make a head start in Arduino programming. The first chapter introduces the Arduino platform, ecosystem, and existing varieties of Arduino Nano boards. It also teaches how to install various tools needed to get started with Arduino Programming. The second chapter kicks off with electronic circuit building and programming around your Arduino. The third chapter explores various buses and analog inputs. In the fourth chapter, you get acquainted with the concept of pulse width modulation (PWM) and working with unipolar stepper motors.
In the fifth chapter, you are sure to learn about creating beautiful graphics and basic but useful animation with the aid of an external display. The sixth chapter introduces the readers to the concept of I/O devices such as sensors and the piezo buzzer, exploring their methods of interfacing and programming with the Arduino Nano. The last chapter explores another member of Arduino Nano family, Arduino Nano 33 IoT with its highly interesting capabilities. This chapter employs and deepens many concepts learned from previous chapters to create interesting applications for the vast world of the Internet of Things.
The entire book follows a step-by-step approach to explain concepts and the operation of things. Each concept is invariably followed by a to-the-point circuit diagram and code examples. Next come detailed explanations of the syntax and the logic used. By closely following the concepts, you will become comfortable with circuit building, Arduino programming, the workings of the code examples, and the circuit diagrams presented. The book also has plenty of references to external resources wherever needed.
An archive file (.zip) comprising the software examples and Fritzing-style circuit diagrams discussed in the book may be downloaded free of charge below.