Embedded Systems
14.3K subscribers
1.09K photos
236 videos
1 file
749 links
News, articles, guides, analytics, projects and startups from the embedded industry.

Topics of the channel:
◽️ machine learning
◽️ internet of things
◽️ embedded software
◽️ advanced electronics
◽️ new engineering ideas

⤵️ Share and subscribe!
Download Telegram
👍2
🖥 PID controller implementation by using C++

Short article that gives plain and simple explanation on work of PID controller (widely used in control systems). Provides the C++ code with explanations, all the necessary formulas, etc.

More information...

#programming #PID #control #cpp #beginner
📟 Open source PID controller for ESP32

The goal of this project is to create super simple yet fully-feature PID controller running on the TTGO ESP32 microcontroller. The implementation is designed to be extremely flexible, allowing a user to quickly and easily get up and running their choice of input and output sensors/devices.

Features:
▫️ Interactive GUI Settings are fully configurable through GUI
▫️ Webserver - Remote access over Wi-Fi
▫️ Charts - See historical input and output values
▫️ Failsafe - Set default state on bad input
▫️ Redundant input - Use a second sensor to ensure valid input readings
▫️ Persistent Settings - Save settings to EEPROM
▫️ Dual PIDs - Agressive and conservative with configurable operating bands
▫️ Manual Override - Output can be set manually in the GUI
▫️ Windowed Output Mode - For mechanical relays
▫️ Advanced PID Info - View interal PID values - for tuning

More information...

#projects #control #esp32 #PID
This media is not supported in your browser
VIEW IN TELEGRAM
🤖 Arduino Based Self Balancing Bot

3D Printed Self-balancing robot which is powered by an Arduino nano board and has an MPU6050 to get the accelerometer and gyro readings to balance itself using the PID function.

More information...

#projects #robots #arduino #PID #control
📄 Comparing Optimal Control and Reinforcement Learning Using the Cart-Pole from OpenAI Gym

The idea of autonomous systems excites me and applying reinforcement learning to everything to achieve autonomy seems tempting. But it is not always that easy and using optimal control might sometimes be the better solution.

What I do want to demonstrate in this post are the similarities (and differences) on a high level of optimal control and reinforcement learning using a simple toy example, which is quite famous in both, the control engineering and reinforcement learning community — the Cart-Pole from OpenAI Gym.

I will start off briefly covering the Cart-Pole and then go into more detail about an optimal control approach to solving the task and its implementation using Python and end with a short discussion. So let’s go!

More information...

#articles #control #python
🎚 PD controller's visualization

A proportional-derivative (PD) controller can be used to make a simple system track some reference point. The suspension in a car is an analogue example: the spring and damper work together to hold the car at some desired height. The spring exerts a force proportional its deflection, while the damper opposes motion (the derivative of deflection).

A PD controller uses the same principles to create a virtual spring and damper between the measured and reference positions of a system.

The provided link shows good analogy between physical system and PD controller and helps to understand how PD controller works in reality.

More information...

#articles #control
This media is not supported in your browser
VIEW IN TELEGRAM
📟 PID Desktop Marble Balancer (Glo Rev 2)

The PID controller is one of the first things taught to engineering students and designers. Its simplicity and versatility make it easy to understand and implement.

This ball balancer uses the PID feedback loop to balance a marble perfectly on the center of a beam. Additionally, it contains interactive LEDs which gauge the relative position of the marble. It also utilizes one of the most well-known simple machines: the lever.

The device is driven by a prototype of Glo Rev 2, a new RGB LED strip controller. The new chip is Wi-Fi compatible, works with Amazon Echo/Google Home, and has plenty of I/O to add modifications.

More information...

#projects #pid #control
📟 Open Source motion controller for DIY drones

[Paweł Spychalski] has developed an open source work-alike motion controller that brings gesture flying to home-built quadcopters and airplanes.

Outside of the motion sensing gear, the ESP32-powered peripheral also has a thumb stick and a pair of push buttons nestled into its 3D printed frame. An OLED display provides some user feedback, and a holder for a 18650 cell is mounted to the back side.

More information:
Project's review
Github's page

#projects #control #3d_modeling #esp32
This media is not supported in your browser
VIEW IN TELEGRAM
💻 Controlling Raspberry Pi Using Matlab

This tutorial is about controlling your headless Raspberry Pi using Matlab. You may have to install Matlab to the latest version for support to newer Raspberry Pi board.

More information...

#projects #control #matlab #raspberry
📷 2 Axis controllable platform for ESP32-CAM for streaming video

In this project, we’ll attach the ESP32-CAM to a pan and tilt stand with two SG90 servo motors. With a pan and tilt camera stand, you can move the camera up, down, to the left, and the right— this is great for surveillance.

The ESP32-CAM hosts a web server that shows video streaming and buttons to control the servo motors to move the camera.

More information...

#projects #camera #esp32 #control #IoT
This media is not supported in your browser
VIEW IN TELEGRAM
🚀 How SpaceX lands Starship (optimal trajectory)

As part of a personal push to learn more about non-linear control, I have been playing around with a pretty powerful method known as trajectory optimization. Once the base code is set up, it’s fairly easy to go apply to various systems.

While waiting for Starship SN15 to launch (it was in fact scrubbed, sad), I decided to pull together an estimate for some of it’s dynamics and see if I could get my toy 2D simulation to perform that epic flip and land itself.

To my excitement, after some finessing, it worked quite well. But what really surprised me was when I played the output side by side with actual landing footage: it lined up very very well.

To me, this means one of two things: either I got incredibly lucky, or SpaceX is running a very similar optimization on their actual system. I think both are true.

More information...

#articles #control #software
🤖 An Introductory Robot Programming Tutorial

In this article, I’m going to show how to use a Python robot framework to develop control software, describe the control scheme I developed for my simulated robot, illustrate how it interacts with its environment and achieves its goals, and discuss some of the fundamental challenges of robotics programming that I encountered along the way.

In order to follow this tutorial on robotics programming for beginners, you should have a basic knowledge of two things:
▫️ Mathematics—we will use some trigonometric functions and vectors.
▫️ Python—since Python is among the more popular basic robot programming languages—we will make use of basic Python libraries and functions.

The snippets of code shown here are just a part of the entire simulator, which relies on classes and interfaces, so in order to read the code directly, you may need some experience in Python and object oriented programming.

More information...

#articles #robots #programming #python #control
🎛 Is There Life without the PLC? How to Build a Better Embedded Controller

While Programmable Logic Controllers (PLCs) are an industry norm, demands for data, memory, and processing power are intensifying. Soon enough, the PLCs may no longer be the go-to industrial computer.

By embedded control architecture, we mean a controller that is located inside the machine that will be controlled. Such an embedded controller is almost always a Printed Circuit Board (PCB), but in theory, it could be something else.

By PLC-based control architecture, we mean PLCs mounted in a box located outside of the machine somewhere, connected to the machine by cables.

Comparing the remote PLC-based approach to a local embedded approach the benefits are:
▫️ Simplification of machine installation and operation
▫️ Improved motion performance and sensor data
▫️ Smaller, simpler controller
▫️ Simplified machine assembly
▫️ Lower per-unit cost

More information...

#articles #control #design
🎬 Development of a Rocket with landing feature

Incredibly interesting video explaining the process of building of a rocket with ability of landing vertically (like SpaceX rockets). Would be extremely useful for control engineers as author talks a lot about data analysis. Moreover, the electronics and programming parts are also discussed in a video.

https://youtu.be/YixmPK26upk

#video #design #control