{ "cells": [ { "cell_type": "markdown", "id": "9a9eab39-b6ba-4d0f-84e0-7c88c9d5a19c", "metadata": {}, "source": [ "# 11 Component of Robot: Control System\n", "November 13, 2024\n", "\n", "This article focuses on the control system of a robot. Previous article \"Component of Robot: Actuator\" describes about the actuation of a robotic system.\n", "\n", "***Control System***\n", "\n", "Control systems are essential components of robotic systems where they implement structure and algorithms to manage and guide robots to perform operations accurately, efficiently and autonomously. They coordinate the robot’s motion, manipulation and interaction with its environment. Control systems are of many types ranging from simple open-loop systems which follow predefined set of instructions without any feedback, to complex closed-loop systems which adapt based on real-time feedback from sensors.\n", "\n", "```{figure} _static/Control_System.jpg\n", ":alt: Robota11.1 robot design\n", ":width: 300px\n", "\n", "Control System (Source: Image by pch.vector on Freepik)" ] }, { "cell_type": "markdown", "id": "ab7307a9-6359-4a6e-b754-ca5c66c0974d", "metadata": {}, "source": [ "## 11.1 Open-Loop Control System\n", " \n", "Open-loop control systems, also known as non-feedback systems, are the simplest types of control systems for robotics. They follow a predefined sequence of commands and do not rely on real-time feedback about the robot’s current state or environmental conditions. These systems are often used for straightforward or repetitive tasks in predictable or controlled environments where accuracy or precision is not critical.\n", "\n", "### 11.1.1 Working Mechanism of Open-Loop Control System\n", " \n", "In open-loop control system, there are two primary stages involved.\n", "Input Stage: The controller receives the predefined sequential instructions or user input for the desired operation to be carried out.\n", "Output Stage: The controller then directs the actuators to move or function according to the instruction, without caring for the outcome or any external disturbances.\n", "As this system does not adjust based on the outcome it is named as “open-loop”.\n", "\n", "```{figure} _static/Open-Loop_Control_Schematics.png\n", ":alt: Robota11.2 robot design\n", ":width: 300px\n", " \n", "Open-Loop Control Schematics (Source: Image by Author)" ] }, { "cell_type": "markdown", "id": "f03946ed-839c-4f9b-84a2-9f8e43f27785", "metadata": {}, "source": [ "### 11.1.2 Advantages of Open-Loop Control System\n", " \n", "Open-loop systems are simple and straightforward to design and implement, and also have low cost, high speed as no feedback mechanism requiring complex processing, completely reliable in controlled and predictable environment.\n", "\n", "### 11.1.3 Disadvantages of Open-Loop Control System\n", " \n", "Open-loop systems are prone to poor accuracy and precision as they don’t have feedback system to detect the deviations from the desired outcome. They are highly sensitive to external disturbances and thus are very limited to use in repetitive tasks in controlled environment.\n", "\n", "### 11.1.4 Applications of Open-Loop Control System\n", " \n", "Open-loop control systems are used in simple repetitive tasks like conveyor belts, basic pick-and-place robots, simple actuation tasks like opening and closing of door by press button, manual washing machine with predefined inputs only, etc.\n", "\n", "```{figure} _static/Manual_washing_machine.jpg\n", ":alt: Robota11.3 robot design\n", ":width: 300px\n", " \n", "Manual Washing Machine, A Open-Loop Control Application (Source: Wikimedia Commons)" ] }, { "cell_type": "markdown", "id": "5d8ca7e6-3f8e-4ed7-80da-565b1358c69d", "metadata": {}, "source": [ "## 11.2 Closed-Loop Control System\n", " \n", "Closed-loop control systems, also known as feedback systems, monitor the robot’s actions continuously in real-time and modify them depending on the feedback from the sensors if there is any deviation or error from the desired outcome. These systems are used where adaptability, accuracy and precision are crucial like that of highly dynamic and unpredictable complex environments.\n", "\n", "### 11.2.1 Working Mechanism of Closed-Loop Control System\n", " \n", "The closed-loop control system works by continuously acquiring data feedbacks from the sensors about the current state of the robot and its environment. The measured feedback data is then fed into the controller and compared with the desired outcome. If there is any difference or error between the desired and actual output obtained from the feedback data, the controller modifies the instructions given to actuators to minimize the error and thus continuously tries to make the actual output closer to the desired output.\n", "The main stages involved in closed-loop system are described as below\n", "Input Stage: This is basically the desired output which is used as reference input to the system.\n", "Controller: This device calculates the adjustments or modifications required for minimizing the error.\n", "Actuators: These are the muscles of the robot to implement the commands of the controller and thus actually carry out the real-time motion or operation.\n", "Sensors: These are the measuring device for the robot’s condition or environment and send these data back to the controller for adjustments.\n", "Feedback Loop: It consists of the sensor path which continuously measure the real-time data and feed into the controller.\n", " \n", "```{figure} _static/Closed_Loop_Block_Schematics.png\n", ":alt: Robota11.4 robot design\n", ":width: 300px\n", " \n", "Closed-Loop Control Schematics (Source: Wikimedia Commons)" ] }, { "cell_type": "markdown", "id": "93b6286d-1f24-4714-ab97-0c87d47c7c4c", "metadata": {}, "source": [ "### 11.2.2 Types of Closed-Loop Control System\n", "\n", "Depending on the type of task and complexity of the environment as well as performance requirements, closed-loop control system may of different types as follows\n", "\n", "***Proportional-Integral-Derivative (PID) Control System***\n", " \n", "PID controllers are widely used closed-loop control systems in robotics. There are three components involved in detecting error and adjusting the control input. \n", "Let x(t) be the input and y(t) be the actual output of the system in study. So, the error term to be given as input to the PID control system is given by\n", " \n", "```{figure} _static/PID_schematics.png\n", ":alt: Robota11.5 robot design\n", ":width: 300px\n", " \n", "PID Control Schematics (Image by Author)" ] }, { "cell_type": "markdown", "id": "ae896efd-09f9-460e-9e64-6a8560b6493d", "metadata": {}, "source": [ "***Proportional (P):*** It gives a proportional response to the error and thus quick modifications are done. It is mathematically given as
\n", "```{math}\n", "P = K_p e(t)\n", "```\n", "\n", "***Integral (I):*** Rely on past error data for unbiased or accurate decisions. The mathematical form is given as
\n", "```{math}\n", "I = K_i \\int_{0}^{t} e(\\tau) \\, d\\tau\n", "```\n", "\n", "***Derivative (D):*** Error prediction based on rate of change thereby reducing overshoot and stabilizing response. And the mathematical form is
\n", "```{math}\n", "D = K_d \\frac{de(t)}{dt}\n", "```\n", "\n", "So, the controller output which will be the input for the system under study is calculated as
\n", "```{math}\n", "z(t) = P + I + D\n", "```\n", "```{math}\n", "z(t) = K_p e(t) + K_d \\frac{de(t)}{dt} + K_d \\frac{de(t)}{dt}\n", "```\n", "\n", "\n", "\n", " \n", "\n", "***Adaptive Control System***\n", " \n", "\n", "Adaptive control systems are used in highly unpredictable environments. Here the control system works in two stages- one is identification or estimation where the system collects real-time data using sensors and identifies any changes in parameters or dynamics of the system, and the other is adjustment where the system dynamically adjusts the control parameters to reduce errors based on the estimated parameters’ changes.\n", "\n", "```{figure} _static/Model_reference_adaptive_control.png\n", ":alt: Robota11.6 robot design\n", ":width: 300px\n", " \n", "A type of Adaptive Control Schematics (Source: Wikimedia Commons)" ] }, { "cell_type": "markdown", "id": "f1ce4a93-039c-43a2-8504-f9c7c0f1888f", "metadata": {}, "source": [ "***Model Predictive Control System***\n", " \n", "\n", "Model Predictive control system uses the current robot’s dynamics model to forecast the future states and control actions needed to be taken for over a time horizon for achieving the desired objective optimally. This system continuously updates its predictions and control actions by following a closed-loop feedback mechanism based on its current system dynamics model or states.\n", "\n", " \n", "\n", "***Artificial Intelligence and Machine Learning-Based Control System***\n", " \n", "\n", "Artificial Intelligence and Machine Learning-Based control systems are used in advanced robotics to make autonomous decisions. These systems operate through six stages. \n", "First, they collect data from sensors and others sources to capture environmental and performance data. Then this data is processed and useful insights are extracted. This historical data is then used for training the AI and ML models to detect patterns and optimal control actions are predicted and executed to achieve the desired output. The system also continuously collect data by feedback on real-time basis and thus refine the model and learn from new data.\n", " \n", "\n", "### 11.2.3 Advantages of Closed-Loop Control System\n", " \n", "\n", "Closed-Loop Control Systems are very useful for high accuracy, adaptability to changing environment, error correction, improved stability and robustness to unexpected external disturbances.\n", "\n", " \n", "\n", "### 11.2.4 Disadvantages of Closed-Loop Control System\n", " \n", "\n", "Closed-Loop Control System has also limitations like complexity due to challenging design for sensors, feedback loops and real-time processing, higher costs due to these components, computational load is high due to need for faster response and quicker decision making.\n", "\n", " \n", "\n", "### 11.2.5 Applications of Closed-Loop Control System\n", " \n", "\n", "Closed-Loop Control System are widely used in applications where precision, stability and adaptability are essential like that of robotic arms in manufacturing for welding, painting and assembly; autonomous vehicles where feedback is necessary to avoid real-time obstacle; servo motors positioning in CNC, 3D printers; temperature control systems for ovens, HVAC and refrigerators; surgical robots for safe and precise instrument motion.\n", "\n", " \n", "\n", "The next article will focus on all the other electrical and electronic components of the robot." ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.11.9" } }, "nbformat": 4, "nbformat_minor": 5 }