In the last days, I’ve searched for new projects of gigantic robots. I really want one instead of a pet.
While I’ve looked at the giants in the field of robotics, I remembered the Guzzilla project. Guzilla was announced some time ago by the Japanese company Taguchi Industrial specialized in heavy machines. After nearly a year after launch and after a few exhibitions, nobody knows anything about the project.
Such a robot is useful in demolitions, natural disasters, and why not, in the arena to fight with other giants such MegaBots.
The robot is equipped with two arms that ends with an industrial shredder, on the one hand, and on the other hand an industrial cutter. It has a width of 7 meters, 3.2 meters width and a height of 3.5 meters. At all these features is added the impressive weight of 15 tons.
If you want to remember what I’m talking about above:
One month ago, I wrote a post with all the reasons that should make you use ROS to design and build robots. In this tutorial, I will show you the end-to-end process to have a fresh ROS environment on a Linux Ubuntu machine.
I know you can read this guide and get all the information to install ROS Indigo on a Linux machine without any problem. But this guide may be incomplete for someone who wants to install ROS on a virtual machine and setting up the creation of an ROS workspace.
In the first part, I’ll show you how to install and setup Linux Ubuntu under Oracle VM VirtualBox. This part is very useful if you’re using a Windows PC or Mac OS. If you already use a Linux Ubuntu machine, then you can jump directly to the second part of the tutorial.
In the second part of the tutorial, I’ll show you how to install ros-indigo-desktop-full on Linux Ubuntu.
In the third part, you’ll see how to install external packages needed to start working with ROS.
In the last part, I’ll show you how to check your ROS environment.
The sensor inputs are as important as the outputs. So, keeping the input voltage of the sensor at a constant level with a step-up/step-down voltage regulator is mandatory to have accurate measurements.
In another tutorial, I have shown you how to make accurate ADC readings with Arduino. In this post, I continue the series of articles about how to make accurate readings with sensors. Using a switching voltage regulator to keep a constant voltage level at the input of sensors is important for both digital and analog sensors.
A sensor is designed to return accurate measurements at a certain value of the voltage. Most of the sensors used in robotics are in the range of 3.3V and 5V. Of course, some sensors are exceptions. For example, the LIDAR-Lite v3 is designed to work with a power supply between 4.75 and 6V maximum.
For example, if the sensor requires a 5V constant power supply, it will return the most accurate readings at this value. So, we need to make all we can do to have a constant voltage at the input of the sensor. The power supply voltage value is indicated in the datasheet of every sensor.
HC-SR04 and a step-up/step-down voltage regulators
A voltage regulator is designed to provide a fixed voltage level regardless of its input.
There are several types of voltage regulators, but in this article, I will focus on the switching regulators. Read more →
Even one failure of a sensor can result in a disaster for your robot. In this post, I explored the method to make accurate ADC readings with Arduino to eliminate the failures of analog sensors used in robotics applications.
This method is applied to analog sensors such as temperature, light, etc. For accurate readings, you need to take into account the actual value of the power supply voltage.
Of course, I need a development board to test this method. Roboticists, electronicists, hobbyists, hackers, artists seem to have at least one point in common. It is called Arduino. So, to test the method, I used an Arduino UNO board. The same board that I used to build this self-driving robot.
How To Make Accurate ADC Readings with Arduino
Accurate ADC readings
Arduino UNO can be powered from a USB port, one or more batteries and from an AC-to-DC adapter. So far everything is simple. Very simple.
But, when you got the Arduino plugged into one of its compatible power supply sources, you supposedly have a constant voltage to feed the Arduino board. Wrong!
The voltage from the USB ports and batteries fluctuates. The voltage output from an AC-to-DC adapter is more stable. For example, the USB port sometimes outputs a voltage of 5.12V and sometimes 5.14V. Read more →
You have complete freedom to decide what components you use to assemble a robot. If choosing the ingredients of a robot looks more like a playground, the hard part comes when, in one way or another, all these elements have to communicate. But just making them communicate is not enough to make your robot move and make something useful. You have to control all the elements. You need a conductor to put the bits in the right place and hold the rhythm together. You need ROS.
In this post, I did a collection of more than 15 reasons why to use ROS. Below, I have explored from compatible tools to more insights such as its flexibility in controlling things.
Most of the robots in the world (including here the robots built at home by hobbyists) are running Linux. So, this is the line where the ROS’s engineers focused their efforts.
ROS is not actually an operating system. Its name – Robot Operating System – creates confusion and misleading the user. But strictly speaking, it is a collection of software libraries and tools used by the roboticists to develop applications.
And because is not an operating system, ROS is running on a true operating system. ROS uses the OS’s processes management system, user interface, file system and programming utilities. The most used operating system is Linux, followed by Mac OS X and somewhat recently there are some steps forward to make it Windows compatible. Read more →
When a group of engineers at Ericsson invented in 1994 the Bluetooth technology, probably no one could not have imagined the impact on connecting people and things. They don’t imagine that makes happy millions of makers. They don’t even know how happy the roboticists are. Anyone can use the technology to build a robot controlled at a touch of a button while nobody worries about wires.
Like many of you, I want to prototype things. Robots that make me happy. One of them is a remote controlled tank robot.
Let’s start to learn how to use the Bluetooth technology to control the speed and direction of a tank robot platform at a touch of a button.
Probably the best four books about Arduino and Bluetooth connections:
TS – 50 Mini Bluetooth Tank Robot Smart Car Kit + Arduino UNO + HC-06 Bluetooth Module
The key part of this project is the Bluetooth module. Since I use an Arduino UNO, I need a Bluetooth module Arduino compatible. A few months ago, I wrote an article about the Bluetooth modules Arduino compatible with a range of several meters.
Since I have to be in a proximity area to control the robot, a Bluetooth module with a range of 5 meters is enough. I don’t have large rooms in my apartment, so any of these wireless modules can reach this range.
For this project, I use an HC-06 Bluetooth module. This is a slave module that works perfectly with Arduino UNO.
Next, I have to focus on the mobile platform. Read more →
Servo motors are largely used in robotics for precise control. Anyone – well, almost anyone – has mobile devices with Bluetooth connection capabilities. In this tutorial, you will find how to wirelessly control a servo motor with an Arduino UNO and an Android device via a Bluetooth connection. In the end, you will be more connected, you will make things easier and control servo motors at the touch of a touchscreen.
You may be interested in the following related posts:
In this article, I will introduce you to Bluetooth connections with the HC-06 Bluetooth module, Arduino UNO, and the SG90 servo motor. Also, you need extra resources for this tutorial such as an Android smartphone with Bluetooth capabilities and an application to send commands from smartphone to the Bluetooth module.
In the first part of the tutorial, I will show you how to hook up the HC-06 Bluetooth module to the Arduino. In the second part, you can find the source code to enter in AT command mode of the HC-06 Bluetooth module. Here you’ll set the name of your device, password, and the baud rate of the HC-06 module. Finally, in the last part, you will see how to setup the Android application and how to program Arduino to turn the servo motor at the touch of a button.
Probably the best four books about Arduino and Bluetooth connections:
Connect the right pieces and make them communicate with each other. This is the plan of this project. If you already have all the below parts or a part of them, you are lucky. The whole project will cost you nothing, or a few dollars in case you will buy only the missing parts. Otherwise, you have to spend tens of dollars to buy the servo motor, the Bluetooth module, the development board and few other accessories. To have a clear view of the costs, in the right side of each part and accessory used in this project is a link to an online store. Here are the parts:
1 X Arduino UNO (Amazon) – the Bluetooth module is compatible with almost any Arduino model, but all the code and schematics in this tutorial are for UNO.
1 X HC-06 (Amazon) – this is a slave Bluetooth module very easy to use with Arduino using serial communication.
1 X SG90 Servo Motor (Amazon) – this is probably the most popular servo motor in the DIY community.
In this section, I will show you how to wire the Arduino UNO and the HC-06 Bluetooth module.
To use the HC-06 module, simply connect the VCC pin to the 3.3V output on the Arduino, the GND pin to any of Arduino GND pins, then connect the TX pin of the Bluetooth module to pin 10 of Arduino UNO and RX pin of Bluetooth to pin 11 of Arduino.
For servo motor, connect the brown wire to any of Arduino GND pins, the red wire from the SG90 servo to the 5V output of the Arduino, and the orange wire from the servo motor to digital pin 9 of Arduino.
How to setup the SG90 servo motor with Arduino UNO and the HC-06 Bluetooth module
The interest in snow plow robots has exploded over the last 5 years, largely thanks to the hobbyists in robotics area. In this inspirational post, I present the most important parts of a snow plow robot to make your work easier and lets you focus on what is more important: building the snow plow robot.
There’s a lot of variety out there in the snow plow robot designs. Some projects keep a very professional approach (like the open-source snow plow robot) while others have a more eccentric design (like this RC rotary snow plow). But what are the best ways to design a snow plow robot? What are the components and parts that make a snow plow more functional for users? Read on to find out.
1. Build A Strong and Modular Platform
The platform’s design is crucial for the success of any snow plow robot. You need to make sure that the mobile robot is able to clean your house’s sidewalk either through a resistant chassis and a traction system that not lose grip and spin around fruitlessly.
A durable structure
Most makers don’t have time, inclination and a dedicated space to weld a metallic chassis. Should be considered everything else that provides rigidity and simple enough to build it with simple tools.
A range of aluminum channels and profile connectors is the best option for building complex rigid structure suitable for a snow plow robot.
The aluminum rails, cubes and brackets, t-nuts and screws, enclosure
and accessories serve to provide a long-lasting platform for outdoor tasks.
In this project, the designer uses aluminum rails to build a chassis suitable for a lawn mower and a snow plow robot.
There are many motor drivers for heavy-duty robots that can drive the high-torque brushed DC motors of your robot. Though, not many of them come cheaply and with high performances. In this post, I’m covering DC motor drivers for brushed DC motors that can help you focus on what’s important: building robots.
The Dimension Engineering’s motor drivers have a good attraction to hobbyists who are building heavy-duty remote controlled robots. But not many hobbyists take all the advantages of these powerful motor drivers. Looking into any of the Dimension Engineering’s motor drivers, you can use them to control two DC motors via analog voltage, radio control, serial and packetized serial.
All of these motor drivers are overcurrent and thermal protection designed meaning you’ll never damage one of these with accidental stalls or by controlling two big motors. Also, there is a regenerative system which recharges the batteries of the robot whenever it receives a command to slow down or reverse the DC motors.
Any of these motor drivers are designed with a simple interface, just plug and play once you’ve set the switches as needed. Moreover, these require only a single pin for control.
The easier way is to use any microcontroller-compatible analog or digital sensor to send information to a Sabertooth motor driver. At the top of microcontrollers used to control them is Arduino. It is easy to understand why numerous hobbyists use the motor drivers with Arduino. You have great examples for inspiration, libraries, and Arduino code and instructions for a remote controlled robot.
The Dimension Engineering’s motor drivers – Sabertooth Dual 12A/25A/32A/60A – are suitable for mobile robots, electric vehicles, or scooters between 45Kg (100lbs) and 450 Kg (1000lbs). Read more →
The most powerful educational kits for learning robotics and electronics are the ones kids love to use.
Something magical happens when you give your little boy and girl one of these kits. They can create unique projects for personal learning at almost every age. The robotics and electronics applications become more immersed through the power of modular components and versatile platforms like these.
Explore twenty-one of the best kits able to create a-ha moments for smart kids.
Do you want your child to experience clean energy? This robot kit works on electrical energy generated by salt water. Give your children the chance to learn about clean energy while playing with robots. Read more →