How Generative AI Will Impact Robotics

Generative AI is expected to have a major impact on the field of robotics, transforming the way robots are designed, developed, and deployed.

What is Generative AI?

Generative AI works by learning from a lot of examples. For example, if you want a generative AI to create pictures of cats, you would show it a lot of pictures of cats. The generative AI would then learn what cats look like and how to draw them.

Once the generative AI has learned from a lot of examples, it can start to create new things.

For example, it could draw a picture of a cat that you’ve never seen before. Or it could write a story about a cat who goes on an adventure.

1-group-of-cats

Generative AI is still under development, but it’s already being used to create all sorts of amazing things. For example, it’s being used to create new drugs and medical treatments, to design new products, and to create new forms of art and entertainment.

How Generative AI Will Impact Robotics

Here are some specific ways in which generative AI is likely to change robotics:

Robot Design

2-robot-design-hand-prosthesis

Generative AI can be used to design new and innovative robots, optimized for specific tasks and environments. For example, generative AI can be used to design robots with lightweight, energy-efficient bodies, or robots that can move and manipulate objects in complex and unstructured environments.

Robot Control

3-robot-control-mobile-unstructured

Generative AI can be used to develop new control algorithms for robots, enabling them to learn new behaviors and adapt to changing conditions more effectively. For example, generative AI can be used to develop robots that can learn to perform new tasks by watching humans, or robots that can plan and navigate their way through unknown environments.

Robot Training

4-robot-training

Generative AI can be used to create realistic simulations of real-world environments, which can be used to train robots before they are deployed in the real world. This can help reduce the risk of damage to robots and their surroundings, and can also help robots learn faster and more efficiently.

Human-Robot Interaction

5-human-robot-interaction

Generative AI can be used to develop robots that can interact with humans more naturally and effectively. For example, generative AI can be used to develop robots that can understand and respond to human language, or robots that can generate realistic facial expressions and body language.

Examples of Generative AI in Industry Today

6-examples-of-generative-ai

Here are some specific examples of how generative AI is already being used in robotics today:

These are just a few examples of the many ways in which generative AI is being used to revolutionize the field of robotics. As generative AI technology continues to develop, we can expect to see even more innovative and exciting applications for robots in the years to come.

Keep building!

How ChatGPT Will Impact Robotics

What is ChatGPT?

ChatGPT is a large language model chatbot developed by OpenAI. It is a powerful tool that can be used for a variety of tasks. You can use it to generate text, translate languages, write different types of content, write code, and answer your questions.

1-what-is-chatgpt

Imagine a big computer with a lot of books, blog articles, form posts, academic articles, and written Internet content inside of it. ChatGPT is like a robot friend who can read all of that content and answer your questions. It can also generate new stories, poems, songs, and even code.

To use ChatGPT, you just need to talk to it like you would a friend. You can ask it questions about anything, and it will try its best to answer them. You can also give it instructions, and it will try to follow them.

For example, you could say to ChatGPT, “Tell me a story about a dragon.” And ChatGPT would tell you a story about a dragon. Or you could say, “Write me a poem about a cat.” And ChatGPT would write you a poem about a cat.

ChatGPT is still under development, but it is already amazingly good at generating human-like text. It can be a lot of fun to talk to ChatGPT, and it can also be a helpful tool for learning and creativity.

How Will ChatGPT Change the Way We Interact With and Design Robots?

Natural Language Programming

2-nlp

ChatGPT can be used to program robots in a natural language format. This would make it possible for people to interact with robots without having to learn complex programming languages. This would make robotics more accessible to a wider range of people, including non-technical users.

Adaptive Robots

ChatGPT can help robots to adapt to their environment and learn from their experiences. This would make robots more intelligent and capable of handling complex tasks. For example, ChatGPT could be used to train a robot to perform a new task by simply giving it a natural language description of the task.

Collaborative Robots

3-collaborative-robots

ChatGPT can be used to enable robots to collaborate with each other and with humans. This would make it possible to create teams of robots that can work together to solve complex problems. For example, ChatGPT could be used to detail the actions of a team of robots that are working together to build a house.

How Will ChatGPT Impact Business?

ChatGPT could lead to a wide range of new and innovative applications for robots in a variety of industries.

Here are some specific potential use cases:

Manufacturing

4-manufacturing

ChatGPT could be used to program robots to perform complex manufacturing tasks, such as assembling products or inspecting parts for defects. This could help to improve the efficiency and quality of manufacturing processes.

Logistics

5-logistics

ChatGPT could be used to program robots to pick and pack items in warehouses or deliver packages to customers. This could help to improve the efficiency and accuracy of logistics operations.

Healthcare

6-healthcare

ChatGPT could be used to program robots to assist with patient care tasks, such as administering medication or transporting patients. This could help to free up nurses and doctors to focus on more complex tasks.

ChatGPT could be used to develop medical robots that can interact with patients in a more humane and empathetic way.

Education

7-education

ChatGPT could be used to create educational robots that can teach students about a variety of subjects. This could make learning more engaging and effective for students.

ChatGPT could be used to develop educational robots that can tailor their lessons to the individual needs of each student.

Customer Service

8-customer-service

ChatGPT could be used to power customer service robots that can understand and respond to complex customer inquiries in a natural and helpful way.

Examples of Robots Using ChatGPT Today

Here are a couple of specific examples of robots using ChatGPT today:

Levatas Spot Robot

9-levatas-robot

Levatas has developed a way to control Boston Dynamics Spot robots using ChatGPT voice commands. This allows operators to control the robots more naturally and hands-free, and to perform tasks that are difficult to program using traditional methods.

AMECA Humanoid Robot

10-ameca-robot

The AMECA humanoid robot has been used to demonstrate the conversational capabilities of ChatGPT. The robot can answer questions in a comprehensive and informative way, and can even engage in small talk.

ChatGPT is still under development, but it has the potential to revolutionize the field of robotics. By making robots more intelligent, adaptable, and collaborative, ChatGPT could lead to a wide range of new and innovative applications for robots in a variety of industries.

Keep building!

How to Install ROS 2 Iron on Ubuntu Linux

In this blog post, I will show you how to install ROS 2 Iron (the latest distribution of ROS 2) on Ubuntu.

You Will Need

In order to complete this tutorial, you will need:

Prerequisites

It is helpful if you’ve completed this tutorial on Linux fundamentals, but it is not required.

Set the Locale

The official steps for installing ROS are at this link at ROS.org, but I will walk you through the process below so that you can see what each step should look like. 

We will install ROS 2 Iron via Debian Packages.

The first thing we are going to do is to set the locale. You can understand what locale means at this link.  

Click the 9 dots on the bottom-left portion of the screen and search for the “Terminal” application.

1-click-9-dots

Open it.

Type this command inside a terminal window.

locale

The locale command is used to display or change the locale settings on a Linux system. A locale is a set of environmental variables that define the language, country, and character encoding settings. These settings are used by system libraries and locale-aware applications to determine how to display text, dates, times, and other information.

1-set-locale

Now type the following command:

sudo apt update && sudo apt install locales

“sudo apt update” updates the package index list, which is a database of all the software packages available for your Linux distribution.

“sudo apt install locales” installs the locales package, which provides support for different languages and regions.

Now type:

sudo locale-gen en_US en_US.UTF-8

The command “sudo locale-gen en_US en_US.UTF-8” generates locale definition files for the specified locales. Locale definition files are used by the system to generate locale data, which is used by programs to determine how to format text, dates, times, and other information.

In this case, the command is generating locale definition files for the English (United States) locale and the English (United States) UTF-8 locale. The UTF-8 locale is a special locale that supports the UTF-8 character encoding, which is the standard encoding for most languages.

Now type:

sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8

The command above is updating the locale data for the English (United States) locale and the English (United States) UTF-8 locale. You typically need to run this command after you have changed the locale on your system. This will ensure that all of your programs are using the correct locale data.

Now type:

export LANG=en_US.UTF-8

Setting the LANG environment variable to en_US.UTF-8 will ensure that all of your programs are using the English (United States) UTF-8 locale. This is important for programs that need to display or process text in multiple languages.

Now we need to verify the settings by typing:

locale

Here is what you should see:

2-here-is-what-you-should-see-locale

Enable the Required Repositories

Let’s add the ROS 2 apt repository to our system. Open a terminal window, and type the following two commands:

sudo apt install software-properties-common
sudo add-apt-repository universe

The software-properties-common package provides a number of tools for managing software sources on Ubuntu and Debian systems. One of these tools is the add-apt-repository command, which is used to add new repositories to your system’s software sources.

The universe repository is a software repository that contains a wide variety of software packages, including many that are not included in the default Ubuntu and Debian repositories. Adding the universe repository to your system’s software sources will give you access to a wider selection of software to install.

Now we need to add the ROS 2 GPG key with apt.

The ROS 2 GPG key is a public key that is used to verify the authenticity of ROS 2 packages. It is used by the ROS 2 package manager (apt) to ensure that the packages you are installing are from a trusted source.

To add the ROS 2 GPG key, type these two commands:

sudo apt update && sudo apt install curl -y
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg

Add the repository to your sources list (copy and paste all of this below):

echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

Type the following command to install ROS 2 development tools.

sudo apt update && sudo apt install ros-dev-tools

The command sudo apt install ros-dev-tools installs the ROS development tools package on Ubuntu systems. This package contains a number of tools that are useful for developing ROS packages, including:

  • ament_cmake: A CMake-based build system for ROS packages.
  • ament_index: A tool for generating and managing ROS package indexes.
  • ament_lint: A tool for linting ROS packages.
  • ament_test: A tool for testing ROS packages.
  • ament_uncrustify: A tool for formatting ROS code according to the ROS coding style guide.

Now update the apt repository:

sudo apt update

Upgrade the packages on your system to make sure you have the newest versions.

sudo apt upgrade

Install ROS 2

Install ROS 2 Iron by opening a terminal window, and typing:

sudo apt install ros-iron-desktop

Some of the tools and resources included in the ROS Iron desktop package include:

  • The ROS desktop environment, which includes a number of tools for developing and using ROS, such as RViz2, and RQt.
  • A number of documentation resources, such as the ROS wiki and tutorials.

Set Up the Environment Variables

Add Iron to your bash file.

echo "source /opt/ros/iron/setup.bash" >> ~/.bashrc

You can verify it is added by typing:

gedit ~/.bashrc
3-gedit-bashrc

If you don’t have gedit installed, you can type:

sudo apt-get install gedit

Close the terminal window, and open a new one.

Type the following command to see what version of ROS you are using:

printenv ROS_DISTRO

Here is what you should see:

4-iron-ros-distro

You can also type:

env | grep ROS
5-env-grep-ros

Install some other useful packages:

sudo apt install -y python3-pip
pip3 install -U argcomplete
sudo apt-get install ros-$ROS_DISTRO-gazebo-ros-pkgs
sudo rosdep init
rosdep update

Test Your Installation

Open a terminal window, and type:

ros2 run demo_nodes_cpp talker
6-run-talker

Open another terminal window, and type:

ros2 run demo_nodes_py listener
7-run-listener

If your output looks like the images above, you have installed ROS 2 successfully. Yay!

That’s it! Keep building!