1.1 Embedded and Robotics
Embedded systems and robotics are the most interrelated terms in this cutting-edge technological era. The revolution of smartphone, smart real-time operating system (RTOS), and system-on-chip technology provides a new dimension to the embedded hardware. In the past, the embedded system was a bit complicated to manage and a huge chunk of assembly-level code was to be written to program the whole system. But as things keep changing quite drastically, nowadays embedded systems act as a platform in the development of software/firmware, thus reducing the development time. The architecture of the system also keeps changing day by day so as to increase processing power and to decrease energy consumption. The enhancement of the RTOS-like Android gives another new dimension to embedded systems. On the contrary, robotics has evolved to higher-dimensional applications. In earlier years, robots were only used in industrial and scientific research, but today robotics has reached a new dimension, thanks to open-source hard-ware; starting from military to medical applications or maybe for entertainment or as a hobby, the concept of robotics has been widely spread. Robotics experts claim that by 2022 they will produce a robotic maid that will cost less than $100,000.
1.2 Fundamental Goal of Embedded Systems
The growth of embedded systems depends on innovative engineers with exposure to robotic technology. Loosely defined, an embedded system, which is a computer system that is intended to be a general-purpose computer, is a programmable device that drives some specific set to the system. It might be connected with one or more number of sensors and actuators. The main task of the embedded system is to acquire data from the sensor. The system should be smart enough to process and analyze the data using its own computing device (i.e., essentially a minimum level of artificial intelligence). Finally, it should take some decisions so that a task can be performed in a precise manner. In this context, it can be said that the work might be physical or it may be the control signal that has been imposed on any other device. Basically, this system must provide an output that performs a job in a highly accurate way. Let us take an example of an automated washing machine system. Obviously, it performs the washing based on the clothes that have been fed to it. When there are fewer clothes and an instruction of turbo clean mode is given, the machine checks the water level and the amount of clothes. Then it decides upon the speed of the motor in revolutions per minute and the time required to spin the motor so that it can clean the clothes completely. The main target of the system is fixed in such a way that the system performs in a precise manner to achieve the target.
1.3 Fundamental Goal of Robotics
In recent years, the significance of the robotics domain has increased a lot. Robotics contributes novel benefits in various disciplines and applications. Although robotics and embedded systems are quite interrelated, robots are a concept through which the world can be changed dramatically. The fundamental objective of the development of robotics is to minimize human effort as well as to perform a precise job that can overcome human error. Robots are defined as artificial beasts that can perform huge work within a very short duration of time. A robot is intended to be used for the service of the society; the abuse of a robotic system might create a huge catastrophic situation. Recently, the robotic system of a car manufacturing company in Germany crushed an operator to death due to malfunction. To avoid such a situation, proper education on robot handling is necessary; proper safety measures are to be ensured at all places where robots are widely used. Furthermore, robotics research is a never-ending process. A lot of work using robotics is in progress in the military, space, and medical domains, and more applications are expected for smart robotics system in the near future.
1.4 Main Focus
This book mainly focuses on the approaches and various methods to assist in the implementation of physical devices and gadgets via properly utilizing open-source embedded hardware as well as software tools. The primary objective of this book is to provide knowledge about the systems and their interaction in a very rapid manner. College or research students can easily build and cultivate their knowledge via open-source tools mentioned in the book as they are highly emphasized on an application level rather than on a theory level. In addition, this book focuses on the main functional area of the open-source system and its interaction with different components. Finally, as one of its most prime objectives, this book aims to provide guidance in implementing device-based embedded systems.
1.5 Motivation
The main motivation of this book is the implementation of embedded systems while learning. The interactive feature is mostly emphasized and is the primary feature of this book. Various projects have been discussed here, which completely provide hands-on experience of learning. The revolution of open-source hardware is another key motivation of this book. All the software and hardware tools used in this book are mostly open source in nature. The promotion of open-source software and hardware technology is one of the key objectives of this project.
1.6 How to Use This Book
This book serves as a guide and reference for open-source projects. No theory-based approach has been made in this book as effective learning can be achieved only via real-world implementation. Most of the components used in this book are available in local stores. The components for making an unmanned aerial vehicle are rarely available in the market, but if the reader wants to develop one, the available resources and components can be found in the web link mentioned in the book.
This book has been organized in the following way. Chapter 2 describes the fundamentals of embedded systems, Chapter 3 provides the knowledge about the “building blocks” of robotics, and Chapters 3 and 4 give a brief description of aerial robotics. Chapter 5 is all about open-source hardware platforms. Chapter 6 provides the knowledge on open-source software and its features. In Chapters 7 through 13, some of the most interesting hands-on projects starting from amateur to professional levels are provided.