Вы находитесь на странице: 1из 12

Slide 1

UGV System Design


A Practical Approach
Slide 2

10/7/2013
Project Scope
• Movement Method
• Payload
• Operating Conditions
• Control Method
• Sensors / Autonomy

Super Droid Robots .com


2

Before you begin selecting or designing anything the overall scope of the project needs to be as firmly stated.

The first step is to define the widget and it’s purpose. This is comprised of the parameters on this slide. How the
robot is supposed to move, target weight, whether it will operate indoors or exposed to environments, does it
need to be waterproof? Intrinsically safe? How is the robot supposed to be controlled? Simple RC, tethered,
COFDM or autonomous? If autonomy is needed, what kind of sensors are we going to look at?

Once the base robot and specifications are defined you can start to branch out and brainstorm features, all of the
nice widgets that would be useful.

Then you take your massive features list and break it down into must-haves, would-like-to-haves, and nice-to-
haves. This will help you prioritize the features list and pair it down until your looking at a target budget and
complexity that’s acceptable.
Slide 3

10/7/2013
Motor and Wheel Selection

• Primary Considerations: Payload, Speed and


Terrain
• Key motor ratings
 Torque
 RPMs

Super Droid Robots .com


3

Once you have your project completely defined and a preliminary features list set, we need to start actually
designing the robot. The very first thing that needs to be designed are the motors. The motors will the primary
limiting factor for the size, weight, batteries and power distribution of the overall project. The sizing of the motors
will be dependent on the payload of the robot and the type of terrain that it will travel on.

One caveat that we typically see is that people will flock to the motors with the highest RPMs first. Having motors
that can go 200 RPMs is fantastic… if your robot is under two pounds. When you start looking at building bigger
and heavier duty robots, those fantastic 200 RPM motors no longer have the torque necessary to make the robot
move. Torque and speed are inversely proportional so as you move up in your speed you lose torque.

This is why the very first parameter of the motors you need to look at are their available torque. Always be sure to
move up a torque level when designing your robot. You will always end up adding components down the line that
make the robot heavier and you don’t want to have to go back and redesign your chassis if your motor size doesn’t
support the required torque of your final build.

Once you have an idea of where you stand torque-wise you then pick the final robot by the desired speed, and
again, you may feel comfortable with some X-torque value but it’s always better to oversize your torque rating and
undersize your RPMs. A fast motor is only useful if it’s strong enough to move your widget.
Slide 4

10/7/2013
Insight: Motor Mixing
FB = Front / Back FB 255
LR = Left / Right LR 0
k1 1

Left Motor = k1 x (FB + LR)

Super Droid Robots .com


Right Motor = k1 x (FB - LR)

LM 255
RM 255

Standard motor mixing is pretty straightforward. If you’re implementing a COTS solution for your motor controller
it will most likely be irrelevant since most modern motor controllers can do this work for you. If you’re planning on
implementing your own H Bridge then you will need this to scale your PWM signals.

For a basic motor mixing algorithm a simple addition or subtraction of your forward-and-back and left-and-right
signals is required. You’ll notice in the formula on the slide that there’s a k1 scaling factor. This is needed
depending on how you’re taking this calculated data and implementing it. Most modern motor controllers accept a
serial command describing direction and a byte or word of data describing a power level. If you’re rolling your own
H-Bridge you will need to scale and shift this data so that your center point is 127 with a min of 0 and a max of 255.
The hardware PWM pins on most microcontrollers take this range and output the desired duty cycle.

Side note: Always be sure that your data is bounded and when outputting a PWM signal to an H-Bridge you will
never want to go to zero or hit 100% as it can short out your power MOSFETs, it’s always wise to bound it slightly
before your maximum.
Slide 5

10/7/2013
Insight: Vectoring Motor Mixing

Super Droid Robots .com


5

Omnidirectional movement is where things get fun. At the base level, your algorithm is a sum of force vectors
where the magnitude and direction of the resultant is your speed and direction of travel.

Vectoring movement is achieved by using two different types of wheels, Omni in figure 2 and Mecanum in figure 3.
The common thread between these two types of wheels are the rollers that line their edges. These rollers are
designed to provide as low friction as possible for movement perpendicular to your standard motor movement.

With Omni-directional wheels, they must be mounted in the same fashion as in figure 1 where the wheels
themselves are evenly spaced and oriented tangential to a defined circle.

What Mecanum wheels provide us are 45 degree angled rollers along the edge. This allows us to mount the wheels
like a standard four wheeled robot. They still need to be equally spaced but it significantly simplifies how we
mount our motors.
Slide 6

10/7/2013
Insight: Vectoring Motor Mixing

Super Droid Robots .com


6

Breaking down the mixing algorithm for a three wheeled omni directional robot we need to separate out our
different movement schemes. Forward and back movement is achieved by braking motor A, moving motor B in the
negative direction and motor C in the positive direction.

To achieve a sidestepping movement to the right, motors B and C are positive and A is negative. I would like to
point something out on this movement, you will notice in my algorithm that the power of motors B and C are
reduced by about a third. This is because we have two motors on the bottom of the robot contributing equally to
the x-component of our resultant force vector but only one motor on the top. Because of this, motors B and C
need to be proportional reduced so that we can achieve and straight sidestepping movement.

A third axis of movement is always preferable when dealing with omni-directional robotics. This allows for a
correction factor to better orient the robot. Due in part to the nature of the wheels slippage is a very common
occurrence and orientation will need to occasionally corrected.

Once we have a sum of each movement component our resulting values are going to be way too large for our
motor controller so we will finish by scaling down our values based on the highest value we’ve calculated and
shifting the result to satisfy the requirements of our motor controller.
Slide 7

10/7/2013
Insight: Vectoring Motor Mixing

Super Droid Robots .com


7

Moving to Mecanum wheels we see that the same general algorithm applies. Thanks to the even number of
wheels are being able to orient the wheels in a traditional fashion our algorithm is simpler and we no longer need
to worry about scaling factors.

Forward and back and turning movements with Mecanum wheels follow the same motor mixing algorithm as a
standard four wheeled robot but where we diverge is when we need to side-step. The way sidestepping works is
that the wheels on the side of the direction of travel move towards each other and the trailing side moves away
from one another.

Following the same routine as with the three wheeled robot, each movement is summed individually and the
result is scaled based on the highest value calculated and then shifted to suit our motor controller.
Slide 8

10/7/2013
Battery Selection
• Battery Type
 Lead Acid
 LiFePO4 and Li-ion
 NiMH and NiCad

• Voltage Rating and Capacity


• Maximum Current Output

Super Droid Robots .com


 C rating

Now that we’ve decided on the motors and wheels we need to look at our battery requirements. With the
required voltage known and a general idea of our current requirements we can correctly size our batteries.

There are three major types to choose from: Lead Acid, Lithium Ion and Nickel Metal Hydride. Lead acid batteries
tend to be the cheapest but they tend to be rather large and heavy. This isn’t always a bad thing. Thanks to lighter
and stronger building components it can sometimes be desired for the robot to be a bit heavier so that we have
better traction.

As an alternative, Lithium based batteries have significantly improved. They can provide a much higher energy
density than lead acid in a smaller and lighter package. The major drawbacks to lithium batteries are that they tend
to have a limited maximum discharge rate and if the voltage of the battery drops too low, they will no longer be
able to charge. Most modern Lithium batteries solve this problem for us by having built in circuit protection to
prevent us from pulling too much current and depleting the battery too far.

For UGVs, NiMH based batteries are hard to beat. They pack a significant energy density combined with a very
high, and safe, maximum discharge rate. The main drawback to these are the price.

Most hobby robotics batteries are lithium based and are marketed with a C rating. The C rating is a multiplier that
can be applied to the battery’s capacity to show the maximum continuous current discharge of the battery. For
example a V 2,000 mAHr battery with a 10 C rating will give you a maximum 20 A discharge. The downside to these
is that they lack circuit protection which opens the gate to issues in killing the life of the battery and must be
monitored constantly to prevent the risk of catastrophic failure.
Slide 9

10/7/2013
Communication Systems

Frequency Price Range 2way Com Repeaters

900MHz /
Analog (RC) $$ |||| N N
2.4GHz

WiFi 2.4 GHz $ || Y Y

Super Droid Robots .com


Digital 2.4 / 5.8 GHz $$ |||| Y Y

COFDM 2.4 / 5.8 GHz $$$$$$ ||||||| Y Y

Your basic analog option is RC which uses pulse widths to signify your values. Analog communication is nice
because it’s a rather cheap option and gets good range and is quite resilient to line-of-sight issues. The big
drawback with RC is that it’s strictly one way communication and we lose the ability to add on repeaters so our
maximum range is limited by the one transmitter.

Moving to digital, our cheapest option is WiFi. You can get a generic router or bridge for about $45. Because it’s a
digital system you have the ability to set up a mesh network and have two way communication. The downsides to
using WiFi is that your range suffers, is less resilient to line-of-sight issues and it isn’t secure. All WiFi networks are
hackable.

To improve range, reliability and security we’ve been working with a company called Ktron wireless to develop a
more secure option that has comparable, or better, range to RC without having to shell out the money for a
COFDM system. The final price comes to about $500 per module, which is significantly less than the COFDM option
and we have the ability to setup ad-hoc mesh networks to control our robots for miles. In a simple non-repeater
network we’ve tested our robots to a solid half mile with line-of-sight.

COFDM radios are military grade and are priced as such. You won’t find these for anything less than $10,000 -
25,000. They give you superior range, security, and reliability.

I will point out that when working with ground vehicles, selecting and setting up radios is significantly different
than when working with UAVs. With UAVs, the higher the frequency is typically better since you are more likely to
have line of sight. When working with UGVs, lower frequencies are better because they are more resilient to
obstacles so when configuring your digital system you get the best and most reliable signal if they are configured
to use the 2.4GHz systems over the 5.8s.
Slide 10

10/7/2013
Sensors Integration and Autonomy
• Rotary and Linear Encoders
• Gyroscopes, accelerometers and compasses
• LiDAR
• Sonic and IR

Super Droid Robots .com


10

There are many different methods in achieving autonomous movement. For sensor feedback I’ve listed a couple of
examples.

Encoders are great to give you a delta for how much something has moved. Your typical optical encoder can give
you an incredible amount of accuracy. They are typically rated by a CPR value which stands for counts per
revolution. Assuming a six inch wheel and a CPR of 1000, you can easily get accuracy to the tenth of an inch.
Encoders alone would be all you really would need in a perfect world. However, wheel slippage happens and we
can not guarantee that our measurements are accurate. This is where additional sensors come into play.

MEMs style sensors like gyroscopes, accelerometers and compasses tend to come in nice combined packages that
can back up what our encoders are telling us. Encoders can say that we moved and our additional sensors can
verify this.

Depending on your budget, LiDARs are always a good bet. They can provide amazing amounts of data of the
environment. However, handling that data isn’t always easy. You’ll need either a full on-board computer or an
FPGA solution to really handle it all and make good use out of it.

Sonic and IR sensors exist but they’re use in autonomy is mainly limited to object detection and avoidance. Each
have their distance ranges that they’re good at.

To combine all of the sensors listed into a single and useful sensor array we employ what it known as a Kalman
filter where a weight is applied to the accuracy of each time of sensor and an agreed upon average of your current
position is calculated. This gives us the most accurate location measurement as possible.
Slide 11

10/7/2013
Super Droid Robots .com
Case Study: Trekker2
11
New Robotics Development Platform

To give a little history, SuperDroid was born out of BattleBots and the first commercially available robot we sold
was the Trekker. It was a basic and simple microcontroller based robot to teach the finer points of robotics. We’re
currently working on a revision for the Trekker that we’re internally calling the Trekker2.

To define the scope of the project, we looked at the market. There’s numerous super low cost robots that can
drive around on your desk but lack the power to drive over a paperclip. On the other hand you have really nice
larger development platforms that can cost tens of thousands of dollars. This led us to aim for an inexpensive
platform that still has a little bit of power to it.

First we decided on the motors, wheels and movement schemes. To keep costs down we went with some smaller
motors but we were sure to size them big enough to be useful. To add that extra appeal we’re going with
mecanum wheels to bring another aspect in robotics development. Our chosen motors allowed us to properly spec
out a nice sized battery that provides us with the voltage and current we need for operation while giving us a nice
amount of battery life.

To make the control system as flexible as possible and as easy as possible for everyone to tinker with it, we’re
basing it on the Arduino platform. With the Arduino platform the intimidating bits in firmware are abstracted away
so the very beginners aren’t scared away but it doesn’t abstract too much so that you do learn a good deal about
how to write firmware and robotics in general. Also with the Arduino platform is that there is already a wide
codebase available to help people get started with their projects. To back up the control platform we’re also
providing a nice touch screen display to easily switch between your autonomous programs and to provide visual
feedback to the user.

To provide autonomy we’re making the chassis as flexible as possible with pre-defined mounting holes to attach
sonic sensors, IR sensors and servors to provide a LiDAR like sensor array. Thanks to the aluminum chassis we’ve
provided a strong support material to attach any number of additional sensors.
Slide 12

Features and Specs:

10/7/2013
• 12.25” x 17.25” base
• 4” Mecanum Wheels
• 12V 104RPM Motors
• Arduino Mega
• Maxbotics Sonar Sensors
• Wireless Router
• SDR Interface Program

Super Droid Robots .com


12

Вам также может понравиться