Table of Contents
- What is Robotics?
- Robotics at OSU
- Embedded Systems In Robotics
- Robots in Manufacturing
- Robots in Medicine
- Autonomous Robotics
- Robot Operating System (ROS)
- Swarm Robotics
- State Estimation
- Robotics Job Industry
- What are some Useful Resources to Learn More About Robotics?
What is Robotics?
Robotics is the use and study of working with robots. Robots are machines dedicated to completing specified tasks. Robotics is the intersection between engineering, science, and technology that produces machines able to replicate human interactions. This involves the design, construction, operation, and computer system. The computer system is for the robot’s control, sensory feedback, and information process.
The robotics revolution has begun and robots pervade every corner of modern life. They’ve changed fields ranging from business, engineering, communications to transportation, agriculture, medicine, and national defense.
Robotics has applications in human-robot interaction, collecting sensory data, manipulating objects (e.g. construction tasks), printing/3D printing, military, medicine, cooking, and manufacturing.
Robots in Manufacturing
In manufacturing, robots are categorized into one of five types: Cartesian, Cylindrical, SCARA, 6-axis, and Delta. Cartesian and cylindrical robots are very similar in that they both are based on the pick-and-place model. The main difference between them is that Cartesian robots use linear movements while Cylindrical robots use rotary movements. SCARA robots are more complete than the previous two because they include all X, Y, Z, and rotary movements. They are also the fastest, however, are more complicated to implement. The 6-axis arms are exactly what they sound like. They have six-axis of rotary motion and are therefore extremely dynamic. These robots are used to make complicated movements. Lastly, the Delta robots are the fastest, most precise, and most expensive. They are best used for pick and place applications.
Robotics in Medicine
A relatively new addition to both the medical and technology fields, the implementation of robots to assist human surgeons helps reduce risk during critical procedures. Initially the use of robots was regulated to assisting nurses and in rehabilitation tools. Currently robots are used for wide range of tasks across the medical field for procedures including but not limited to; hip replacements, prostatectomies and brain surgery. The use of robotics in surgery is very expensive and can be very risky, however over time, development and training techniques reduced the risks and made it more viable. More in depth information can be found here.
Robotics at OSU
Oregon State University is home to the Collaborative Robotics and Intelligent Systems Institute (CoRIS), an institute set up to harness the power of robotics and answer complex questions that will fuel the field for years to come. With more than 25 faculty and 180 graduate students conducting cutting-edge robotics research, OSU’s robotics program is considered to be one of the country’s best ventures into robotics.
Embedded Systems In Robotics
Almost every task a robot performs is governed by an embedded system. For example, when moving around a space, a robot needs a camera sensor to know its location, wheels or some other movement method, a place to store this data, and a processor or computer to process this information. This is just one embedded system within a robot; operating limbs, complex maneuvers, and other functions each require an additional embedded system. So, robots can be thought of as a system of embedded systems.
Embedded systems have become commonplace in our everyday lives being able to be found in almost every piece of electronics in modern-day. Such devices are but not limited to everyday appliances like washing machines and microwaves or any device that is capable of measuring, calculating, controlling, storing, or displaying information. Embedded systems are designed to be able to perform specific tasks with the embedded portion referring to the intelligence of a system being an integral part of some large system with physical/mechanical parts.
A field of robotics that has been about since the beginning. The definition of autonomy given by google is “The right or condition of self-government.” In other words, autonomous robotics is the study and design of robots that take data, or input from their surroundings and made decisions based on that data, to then influence its surroundings. How should those decisions be made? What are the best ways to make those decisions?
This is different from Classical Robotics, for in Classical Robotics the agents don’t have to react to their surrounding. Take an assembly line robot working in a Toyota factory assembling cars, more specifically welding sheet metal, Robots excel in tasks that are repetitive and don’t vary much at all. This Robot is designed in such a way that it and the assembly line will be in sync. If one or the other is off, the robot will not be able to change its behavior. The robot instead just keeps welding sheet metal wrong until some person later down the line relies on the mistakes. A more autonomous system could have detected this mistake and make an adjustment to compensate for the error.
There are lots of subjective meanings in the field of study, these definitions of autonomy change from paper to paper. Let us take for instance our factory line robot, it has a fail-safe so that if one of its motors is drawing too many amps it will shut down. This is a blurry line that is often up to the reader to determine if this is autonomy or not. However, the underlining aim of true autonomy is to have the autonomous agent do its job and do it correctly without the aid or supervision of a human.
Robot Operating System (ROS)
ROS is a flexible, open-source framework for writing robotic software that has become the de-facto standard in academia and industry and is mandated by a number of well-funded government programs. It provides the services you would expect from an operating system, including hardware abstraction, low-level device control, implementation of commonly-used functionality, message-passing between processes, and package management. It also provides tools and libraries for obtaining, building, writing, and running code across multiple computers.
In late 2013, Oregon State assumed stewardship of the Robot Operating System (ROS) software infrastructure. The OSU Open Source Lab is now the primary hosting site for ROS, supporting an estimated 100,000 users worldwide.
When robots are deployed in the world today, it is often a single, expensive agent that is able to perform more complex tasks and perceive and process more rich signals. Swarm robotics approaches these tasks and more with the mindset of creating a cohesive unit with less-expensive, less capable individuals that can work together. There does not exist a number of agents that are required for a group of robots to be a swarm; however, in the Collective Robotics Institute at Oregon State, 50 robots typically come up as a goal for swarming activities. Generally, the requirements of the swarm—agents, individual capabilities, and group organization—depend on the tasks that must be accomplished. For example, the typical flocking behavior that is seen in birds and schools of fish would be necessary for the collective movement to a target, maintaining a cohesive unit so as to get the swarm to a specified point without losing any entities. Other tasks, such as search and rescue, can be related to the foraging of ants or bees, where individuals leave a home base to search for resources, which can be analogous to lost people. Biological inspiration is common in the literature due to nature’s natural distributed movement and communication, which lends itself to scalability when more agents are needed to accomplish a goal. Swarm robotics is a vast topic with areas of interest spanning from communications and sensing to simultaneous localization and mapping (SLAM) and biology. Some good resources to start looking into the literature follow:
- Collective Animal Behavior by David Sumpter
- Honeybee Democracy by Thomas Seeley
- Swarm Intelligence by Marco Dorigo
One of the largest questions in robotics is how to figure out where the robot is in the world. There are multiple techniques that localize a robot in its environment. Some techniques include using the global positioning system (GPS), using visual-inertial odometry (VIO), and using dead reckoning.
But even with a large number of sensors available for gaining knowledge of the environment that the robot is in, sensors always contain noise and error. There are probabilistic techniques that attempt to predict the state of the robot with an environment. Here, the state of the robot may refer to different aspects of the robot, such as its position in space, its acceleration, its orientation, or any other condition that may be estimated based on sensors. The prevalent technique for state estimation is the Kalman filter, which is a Bayesian filter that consists of two steps: a prediction step and a correction step.
The basic Kalman Filter is the optimal filter for state estimation of linear systems, where the system may be expressed in the form: X=Ax+Bu where x is the state of the robot, A is the state transition matrix that moves the current state into the next timestep (for example, if the body has a velocity, then the next position will be the current position added to the velocity multiplied by the change in time), u is the inputs to the system, which may include forces from the environment or from the robot’s actuators, and B is the control-input model that translates the inputs to the state space of the robot.
There are other variants of the Kalman filter that allow for nonlinear system state estimation. The Extended Kalman filter is formulated in the same way, but with the state transition and obeservation models being the jacobian of the nonlinear models. The Unscented Kalman filter samples the input distribution, and observes how those points change when being passed through the state transition model. The particle filter also smaples the the input distribution, increases the number of samples to more accuarately track the system. The Wikipedia article on Kalman filters is a very rich resource for finding out more.
Robotics Job Industry
As of 2019, the robotics market is valued at USD 39.72 billion dollars. According to the Bureau of Labor Statistics (BLS), the robotics industry is projected to have a 9% job market growth from 2016 to 2026. This growth is occurring because industrial robots now have a shorter return on investment (ROI) period. The increasing adoption of robotics and more affordable sensor prices have contributed to this decreased ROI. This makes it a perfect time to join the robotics industry. Careers in the robotics industry include:
- Robotics Engineer: A robotic engineer’s responsibilities include developing the robot on paper, debugging the software system, and overseeing projects.
- Software Developer: The software developer writes and codes the schematic design.
- Technician: Robot Technicians repairs and maintains robots. They also build robotic parts.
- Sales Engineer: Sales Engineers know the product really well in order to sell and market them to the correct clients.
- Operators: Operators operate and oversee the robot.
What are some Useful Resources to Learn More About Robotics?
Resources to learn about anything are bountiful these days. With the internet at our fingertips, the sky is the limit. To learn specifically about robots, here are useful resources:
-Buy some books! Mr. Shuman suggested this one: Make: AVR Programming.
-The best way to learn is to do. Play with Legos and Arduinos; build things and break things!
-There are lots of online courses. The free MIT intro to robotics course is a great one.
-As previously mentioned…the internet.
-IEEE has great articles about news and research pertaining to robotics.
-Go to your classes.
Useful Books to learn more about Robotics
- The LEGO MINSTORMS EV3 Discovery Book -Laurens Valk
- Automation and Robotics -Dr Miltiadis A. Bobulous
- ROS Robotics By Example -Carol Fairchild, Dr. Thomas L. Harman
- Robot Building for Beginners -David Cook
- Robot Programmer’s Bonanza – John Blankenship, Samuel Mishal
- Home Robotics -Daniel Knox
Controls in Robotics
Robotics is likely the most ultimate realization of embedded systems development. The field of robotics uses principles from all our other special topics groups to create something that fulfills a need. But the defining characteristic that separates robotics from other embedded system development is movement. Robots are able to move through the use of sensors, high speed data processing, and clever programming in the form of a control loop. The most popular of which is the Propotrion- Integral-Derivative (PID) control loop. When researching PID loops, many may be intimidated because the first thing the image below.
That a lot of sums, integrals and derivatives. But by using the speed and capabilities of a uC, most of these equations come down to a few simple += statements that iterate at a pre-set interval. What is important is understanding the intuition behind a PID loop and its applications. This video does an excellent job at getting the basic concepts of a PID loop, and its part of a series! So if you wish to learn even more, the content is ready to go!
As robotics keeps advancing, so does the material we use. If we’re trying to create more human-like robots we need to use different kinds of materials to imitate muscles, joints, and different layers of material similar to our bodies. Of course, we also want to do this by maintaining a low cost. This is one of the challenges that robotics faces today with advancements but provides functionality to robots that past robotics lacked.