Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon

Tech Guides - Robotics

3 Articles
article-image-how-to-choose-components-to-build-a-basic-robot
Prasad Ramesh
31 Dec 2018
10 min read
Save for later

How to choose components to build a basic robot 

Prasad Ramesh
31 Dec 2018
10 min read
This post will show you how to choose a robot chassis kit with wheels and motors, a motor controller, and some power for the robot, talking through the trade-offs and things to avoid. This article is an excerpt from a book written by Danny Staple titled Learn Robotics Programming. In this book, you will learn you'll gain experience of building a next-generation collaboration robot Choosing a robot chassis kit The chassis, like the controller, is a fundamental decision when making a robot. Although these can be self-made using 3D printing or toy hacking, the most simple place to start is with a robot chassis kit. These kits contain sets of parts to start off your robot build. A chassis can be changed, but it would mean rebuilding the robot. The internet has plenty of robot chassis kits around. Too many, so how do you choose one? Size Getting the size for a robot right matters too. Take a look at the following photos: Chassis 1 is 11 cm in and just about fits a controller in it, but is too tiny. This will make it hard to build your robot. Squeezing the controller, power, and all the sensors into this small space would need skill and experience beyond the scope of a first robot build. Chassis 2 is Armbot. This large robot is 33 cm by 30 cm, with an arm reach of another 300 mm. It needs eight AA batteries, big motors, and a big controller. These add to the expense and may cause issues around power handling for a new builder. It has lots of space, but issues around weight and rigidity. Armbot is one of my most expensive robots, excluding the cost of the arm! Chassis 3 in the preceding image will fit the Pi, batteries, and sensor, but without being large and bulky. It is around the right dimensions, being between 15-20 cm long and 10-15 cm wide. Those that have split levels might be great for this, but only one or two levels, as three or four will make a robot top heavy and may cause it to topple. This has enough space and is relatively easy to build. Wheel count Some robot chassis kits have elaborate movement methods, legs, tank tracks, and tri-star wheels, to name a few. While these are fun and I encourage experimenting with them, this is not the place to start at. So, I recommend a thoroughly sensible, if basic, wheels on motors version. There are kits with four-wheel drive and six-wheel drive. These can be quite powerful and will require larger motor controllers. They may also chew through batteries, and you are increasing the likelihood of overloading something. This also makes for trickier wiring, as seen in the following: Two-wheel drive is the simplest to wire in. It usually requires a third wheel for balance. This can be a castor wheel, roller ball, or just a Teflon sled for tiny robots. Two wheels are also the easiest to steer, avoiding some friction issues seen with robots using four or more wheels. Two wheels won't have the pulling power of four or six-wheel drive, but they are simple and will work. They are also less expensive: Wheels and motors A kit for a beginner should come with the wheels and the motors. The wheels should have simple non-pneumatic rubber tires. The most obvious style for inexpensive robots is shown in the following photo. There are many kits with these in them: The kit should also come with two motors, one for each wheel, and include the screws or parts to mount them onto the chassis. I recommend DC Gear motors, as the gearing will keep the speed usable while increasing the mechanical pushing power the robot has. Importantly, the motors should have the wires connected, like the first motor in the following photo: It is tricky to solder or attach these wires to the small tags on motors, and poorly attached ones do have a frustrating habit of coming off. The kits you will want to start with have these wires attached, as can be seen in the following: Another point to note is that where the motors are mounted, the kits should have some encoder wheels, and a slot to read them through. The encoder wheels are also known as odometry, tacho, or tachometer wheels. Simplicity You don't want to use a complex or hard-to-assemble kit for your first robot build. I've repeated this throughout with two-wheel drive, two motors with the wires soldered on and steering clear of large robots, or unusual and interesting locomotion systems, not because they are flawed, but because it's better to start simple. There is a limit to this, a robot kit that is a fully built and enclosed robot leaves little room for learning or experimentation and would actually require toy hacking skills to customize. Cost Related to simplicity is cost. Robot chassis kits can be brought from around $15, up to thousands of dollars. Larger and more complex robots tend to be far more costly. Here, I am aiming to keep to the less costly options or at least show where they are possible. Conclusion So, now you can choose a chassis kit, with two wheels and a castor, two motors with wires soldered on them, slots, and encoder wheels. These are not expensive, and widely available on popular internet shopping sites as "Smart Car Chassis," with terms like "2WD": The kit I'm working with looks like the preceding photo when assembled without the Raspberry Pi. Choosing a motor controller The next important part you'll need is a motor controller. Much like the motors, there are a number of trade-offs and considerations before buying one. Integration level Motor controllers can be as simple as motor power control driven from GPIO pins directly, such as the L298. This is the cheapest solution: a generic L298N motor controller can be connected to some of the IO pins on the Raspberry Pi. These are reasonably robust and have been easily available for a long time. They are flexible, but using parts like this will take up more space and need to be wired point to point, adding complexity to the build: Others are as complex as whole IO controller boards, many of which hide their own controller similar to an Arduino, along with motor control chips. Although the cheapest and most flexible ways are the most basic controllers, those with higher integration will reduce size, keep the pin usage count low (handy when you are connecting a lot to the robot), and may simplify your robot build. They often come integrated with a power supply too. Motor controllers can be bought as fully integrated Raspberry Pi hats, boards designed to fit exactly on top of a Raspberry Pi. These tend to have a high level of integration, as discussed before, but may come at the cost of flexibility, especially if you plan to use other accessories. Pin usage When buying a motor controller in Raspberry Pi hat form, pin usage is important. If we intend to use microphones (PCM/I2S), servo motors, and I2c and SPI devices with this robot, having boards that make use of these pins is less than ideal. Simply being plugged into pins doesn't mean they are all used, so only a subset of the pins is usually actually connected on a hat. To get an idea of how pins in different boards interact on the Raspberry Pi, take a look at https://pinout.xyz , which lets you select Raspberry Pi boards and see the pin configuration for them. Controllers that use the I2C or serial bus are great because they make efficient use of pins and that bus can be shared. At the time of writing, PiConZero, the Stepper Motor Hat, and ZeroBorg all use I2C pins. The Full Function Stepper Motor Hat is able to control DC motors and servo motors, is cheap, and is widely available. It also has the pins available straight through on the top and an I2C connector on the side. It's designed to work with other hats and allow more expansion. Size The choice of this depends on the chassis, specifically the size of the motors you have. In simple terms, the larger your chassis, the larger a controller you will need. The power handling capacity of a motor controller is specified in amps. For a robot like the The Robot Kit I'm Using image, around 1 to 1.5 amps per channel is good. The consequence of too low a rating can be disaster, resulting in a robot that barely moves, while the components cook themselves or violently go bang. Too large a controller has consequences for space, weight, and cost: The level of integration can also contribute to size. A tiny board that stacks on a Pi would take up less space than separate boards. Related to size is if the board keeps the camera port on the Raspberry Pi accessible. Soldering As you choose boards for a robot, you will note that some come as kits themselves, requiring parts to be soldered on. If you are already experienced with this, it may be an option. For experienced builders, this becomes a small cost in time depending on the complexity of the soldering. A small header is going to be a very quick and easy job, and a board that comes as a bag of components with a bare board will be a chunk of an evening. Here, I will recommend components that require the least soldering. Connectors Closely related to soldering are the connectors for the motors and batteries. I tend to prefer the screw type connectors. Other types may require matching motors or crimping skills: Conclusion Our robot is space constrained; for this reason, we will be looking at the Raspberry Pi hat type form factor. We are also looking to keep the number of pins it binds to really low. An I2C-based hat will let us do this. The Full Function Stepper Motor Hat (also known as the Full Function Robot Expansion Board) gets us access to all the Pi pins while being a powerful motor controller: It's available in most countries, has space for the ribbon for the camera, and controls servo motors. I recommend the 4tronix PiConZero hat, or assembling a stack of PiBorg hats. These may be harder to source outside of the UK. The reader will need to adapt the code, and consider a tiny shim to retain access to the GPIO pins if using a different board. In this article, we learned about selecting the parts needed to build a basic robot. We looked at the size, wheel, cost, and connectors for the robot chassis and a controller. To learn more about robotics and build your own robot check out this book Learn Robotics Programming. Real-time motion planning for robots made faster and efficient with RapidPlan processor Boston Dynamics adds military-grade mortor (parkour) skills to its popular humanoid Atlas Robot Sex robots, artificial intelligence, and ethics: How desire shapes and is shaped by algorithms
Read more
  • 0
  • 0
  • 6900

article-image-automation-and-robots-trick-or-treat
Savia Lobo
31 Oct 2018
3 min read
Save for later

Automation and Robots - Trick or Treat?

Savia Lobo
31 Oct 2018
3 min read
Advancements in AI are on a path of reinventing the way organizations work. Last year, we wrote about RPA, which made front-end manual jobs redundant. This year, we have actual robots on the field. Last month, iRobot, the intelligent robot making company revealed its latest robot, Roomba i7+, that maps and stores your house and also empties the trash automatically. Last week, Google announced its plans to launch a ‘Cloud Robotics platform’ for developers in 2019, which will encourage efficient robotic automation in highly dynamic environments. Earlier this month, Amazon announced that it is opening a chain of 3,000 cashier-less stores across the US by 2021. And most recently, Walmart also announced that it is going to launch a cashierless store next year. The terms ‘Automation’ and ‘Robotics’ sometimes have a crossover, as Robots can be used to automate physical tasks while many types of automation have nothing to do with physical robots. The emergence of AI robots will reduce the need for a huge human workforce, boost the productivity of organizations and reduce their time to market. For example, customer service and other front-end jobs can function 24*7*365 without an uninterrupted service. Within industrial automation, robots can automate time-consuming physical processes. Collaborative robots will carry out a task in the same way a human would, albeit more efficiently! The positives aside, AI there is a danger of it getting out of control as machines can go rogue without humans in the loop. That is why members of European Parliament (MEPs) passed a resolution recently on banning autonomous weapon systems. They emphasized that weapons like these, without proper human control over selecting and attacking targets are a disaster waiting to happen. At the more mundane end of the social spectrum, the dangers of automation are still very real. Robots are expected to significantly replace a lot of human labor. For instance, as per the World Economic Forum survey, in 5 years, machines will do half of our job tasks of today as 1 in 2 employees would need reskilling/upskilling. Another study by renowned economist Andy Haldane, The Bank of England’s chief economist says 15 million jobs in Britain at stake with Artificial Intelligence robots set to replace humans at workforce. As of now, having AI for organizations is a treat due to the different advantages they provide over humans. Although it will replace jobs, people can upskill their knowledge to continue thriving in the automation augmented future. Four interesting Amazon patents in 2018 that use machine learning, AR, and robotics How Rolls Royce is applying AI and robotics for smart engine maintenance Home Assistant: an open source Python home automation hub to rule all things smart
Read more
  • 0
  • 0
  • 2860

article-image-roubleshooting-flying-drones-safely
Vijin Boricha
17 May 2018
5 min read
Save for later

Tips and tricks for troubleshooting and flying drones safely

Vijin Boricha
17 May 2018
5 min read
Your drone may have some problems when you fly it regularly or if you have just started piloting a drone. This can be because of maintenance or accidents. So, we need to troubleshoot and fly our drone safely. In this article, we will look at a few common troubleshooting drone tips. This is an excerpt from Building Smart Drones with ESP8266 and Arduino written by Syed Omar Faruk Towaha.  1. My drone tries to flip or flip when I turn it on This problem may occur for several reasons. Check if you calibrated your ESCs. Are your propellers balanced? Have you configured the radio properly? Are your ArduPilot's sensors working properly? Have you checked all the wire connection? Have you calibrated the drone frame? Have you added the wrong propellers to the wrong motors (for example, clockwise propellers to anticlockwise motors)? I hope you can solve the problem now. 2. My motors spin but the drone does not fly or take off This happens because the motors are not giving enough thrust to take off the drone. From the parameter list of the Mission Planner, change THR_MAX . Make sure it is in between 800 and 1000. If THR_MAX is 800 and still the drone does not take off, change the parameter to above 800 and try flying again. 3. My drone moves in any direction The drone moves in any direction even though the stick of the transmitter is cantered. To solve the problem, you must match the RC channel's 1 and 2 values to the PWM values displayed on the Mission Planner. If they are not the same, this error will happen. To match them, open your Mission Planner, connect it via telemetry, go to the Advanced Parameter List, and change HS1_TRIM and HS2_TRIM. With the roll and pitch stick cantered, the RC1 channel and RC2 channel should be the same as the values you wrote for the HS1_TRIM and HS2_TRIM parameters. If the values are different, then calibrate your radio. The HS1 trim value must match the live stick cantered roll value, and the HS2 trim value must match the pitch stick cantered value. You must not use the radio trim for yaw. Make sure the center of gravity of the copter is dead center. 4. When I pitch or roll, the drone yaws This can happen for several reasons. For the brushless AC motors, you need to swap any two of the three wires connected to the ESC. This will change the motor spinning direction. For the brushless DC motors, you need to check if the propellers are mounted properly because the brushless DC motors do not move in the wrong directions unless the connection is faulty. Also, check that the drone's booms are not twisted. Calibrating the compass and magnetometer will also help if there is no hardware problem. 5. It faces GPS lost communication This happens because of a bad GPS signal. You can do one thing before launching the drone. You need to find a spot where the GPS signal is strong so that it can be set to return to home or return to launch if the radio communication is lost. Before flying the drone, you may disarm the drone for a couple of minutes in a strong GPS signal. 6. It shows radio system failed To solve this issue, we can use the radio amplifier. Using the radio amplifier can increase the signal strength. You can have radio failure when there is a minor block in between the drone and the receiver. 7. My drone's battery life is too short When a drone is not used, we should keep the battery stored at room temperature with low humidity. High temperature and moisture will cause the battery to damage the chemical elements inside the battery cells. This will result in a shorter battery life. For the LiPo battery, I would suggest using a balance charger. 8. Diagnosing drone problems using logs For our ArduPilot, we used telemetry to communicate the drone to our Mission Planner. So, after the flight, we can analyze the telemetry logs. The telemetry logs are known as tlogs. There is Sik radio telemetry, Bluetooth telemetry, XBee, and so on. Before going any further, let's see where we can find the data files and how we can download them: In the home screen, you will find the telemetry logs below the Flight Data panel. From there you can choose the graph type after loading the log. When you load the logs, you will be redirected to a folder where the tlogs are situated. Click any of them to load. You can sort them by time so that you can be sure which data or log you need to analyze. You can also export your tlog data to a KML file for further analysis. You can also see the 3D data of the flight path from the tlog files: Open the Mission Planner's flight data screen. Click on the Telemetry Log tab and click on the button marked Tlog>KML or Graph. A new window will appear. Click on the Create KML + GPX button. A .kmz and .kml file will be created where the .tlog files are saved. In Google Earth, just drag and drop the .kmz file and you will see the 3D flight path. You can see the graphs of the tlog files by clicking Graph Log on the screen after the Togl>KMs or Graph button has been clicked. From there you need to select the flight tlog and a Graph this screen will appear. Check the necessary data from the screen and you will see the graphs. We have learned to diagnose drone issues through logs and have also learned to analyze graphs depending on data and troubleshooting flight problem. Get to know more about radio control calibration problems and before/after flight safety from this book Building Smart Drones with ESP8266 and Arduino. Drones: Everything you ever wanted to know!    
Read more
  • 0
  • 0
  • 2399
Unlock access to the largest independent learning library in Tech for FREE!
Get unlimited access to 7500+ expert-authored eBooks and video courses covering every tech area you can think of.
Renews at $19.99/month. Cancel anytime