D940/941TW Operating Voltage Range No Load Speed Range Peak Torque Range Maximum Current Draw Dimensions Weight
D945/946TW
D950/951TW
D980TW
4.8V ~ 7.4V
4.8V ~ 7.4V
4.8V ~ 7.4V
4.8V ~ 7.4V
0.11 ~ 0.07 Sec @ 60°
0.16 ~ 0.10 Sec @ 60°
0.23 ~ 0.14 Sec @ 60°
0.28 ~ 0.17 Sec @ 60°
10.0 ~ 16.5 kg-cm 139 ~ 229 oz-in
14.0 ~ 23.0 kg-cm 194 ~ 319 oz-in
21.0 ~ 35.0 kg-cm 292 ~ 486 oz-in
26.0 ~ 44.0 kg-cm 361 ~ 611 oz-in
3700 ~ 6200mA
4800 ~ 6200mA
40.0 x 20.0 x 38.0mm 1.57 x 0.79 x 1.50 in
43.8 x 22.4 x 40.0mm 1.72 x 0.88 x 1.57 in
68g / 2.40 oz
78.2g / 2.76 oz
Our D-Series servo line delivers ultimate reliability and unprecedented advanced engineering to all hobby enthusiasts and their favorite radio control projects. Powered by Hitec’s 32-bit MCU (Microcontroller Unit) and 12-bit ADC (Analog to Digital Converter) industrial science, these powerhouses dominate the servo arena. Their potent combination of wide voltage capabilities, high resolution, rapid response, and patented Smart Sense technology bring the most advanced servo capabilities to your workbench. Hitec RCD USA, Inc. | 12115 Paine Street | Poway, CA 92064 | (858) 748-6948 | www.hitecrcd.com |
Full Page.indd 2
4/3/2017 6:02:54 PM
Over 10 years' experience in serving worldwide robotics companies with quickturn PCB prototyping & mass production services allows us to print custom circuit boards precisely with superior quality & performance while keep your options open & your costs down.
Easiest online quoting & ordering system Free Design for Manufacturability Checking FR4 PCBs to Aluminum PCBs, Flex PCBs, etc. Custom electrical test including flying probe test, etc. Advanced capabilities including Gold fingers, Via in pad, etc. Flexible PCB Assembly & Components sourcing services
2/27/2017 8:08:58 PM
TOC - May 17_TOC SV Mar 15.qxd 4/4/2017 12:15 AM Page 4
05.2017 VOL. 15 NO. 5 Subscription Information SERVO Magazine — PO Box 15277 North Hollywood, CA 91615-9218 Call 877-525-2539 or go to www.servomagazine.com Subscribe • Gift • Renewal • Change of Info
Columns 08 Ask Mr. Roboto with Eric Ostendorff
Questions asked this time include: troubleshooting random re-boots with a Raspberry Pi; if motion sensors can be used as infrared receivers for remote uses; reviving the battery in an AIBO; and getting into telepresence robots.
60 Then and Now by Tom Carroll
Police, Security, Military, and Emergency Response Robots Various types of law enforcement and first responder robots are needed by the thousands in this day and age. Between natural and/or man-made disasters, plus having to deal with all kinds of hazardous situations, robots are finding their place to assist humans.
PAGE 60
The Combat Zone
24 26 28 30 33
Applying for BattleBots™ New Year’s Resolution — Part 3 Atrocious: The $200 Hobbyweight Kinetic Combat Art: Building for Beauty Why Visit Canada ...
Departments 22 Bots in Brief • • • •
License Plate for Drones? U is Beautiful Point-and-Click Control Liquid LEGOs
06 Mind/Iron
Smart Fabrics
07 Events Calendar 07 Showcase
20 21 52 65
New Products RoboLinks SERVO Webstore Advertiser’s Index
SERVO Magazine (ISSN 1546-0592/CDN Pub Agree#40702530) is published monthly for $26.95 per year by T & L Publications, Inc., 430 Princeland Court, Corona, CA 92879. PERIODICALS POSTAGE PAID AT CORONA, CA AND AT ADDITIONAL ENTRY MAILING OFFICES. POSTMASTER: Send address changes to SERVO Magazine, P.O. Box 15277, North Hollywood, CA 91615 or Station A, P.O. Box 54, Windsor ON N9A 6J5; [email protected]
4
SERVO 05.2017
TOC - May 17_TOC SV Mar 15.qxd 4/4/2017 12:15 AM Page 5
In This Issue ...
PAGE 12
PAGE 36
12 The Multi-Rotor Hobbyist
48 Serving Raspberry Pi
by John Leeman Photogrammetry with OpenDroneMap — Part 2 Last month, we got up and running with OpenDroneMap and its new web interface, WebODM. This month, we’re going to learn about referencing our photos to real life coordinates with ground control points, and collect some real data of our own to experiment with.
by William Henning We return to our series on building a robot utilizing a Raspberry Pi, and look at working around motor-to-motor variations in cheap gear motors.
36 Bridge Education and Business: Six Ways to Help Guarantee a Successful STEM Event by Jennifer Bannink If your school or community organization is looking to put together an inspiring STEM event, here are some tips to help in the process.
54 Animatronics for the Do-ItYourselfer by Steve Koci Setting Up Shop Whether it be a dedicated workshop or a converted closet, having a special work area is extremely important in your efforts to maximize your productivity. We will look at some basic requirements for a functional shop, as well as some items you should consider when stocking your shelves and toolbox. PAGE 48
38 Goliath 3: Critter Chaser by Dave Prochnow Keep your garden varmint-free with this modified Wi-Fi controlled model replica of a historic tank robot.
44 Manipulating Cards with the Magician by John Blankenship It seems most hobbyists develop programs that control wheel-based mobile robots. Here’s an opportunity to expand your coding skills by manipulating a robot arm to stack a deck of cards. SERVO 05.2017
5
Bergeron - Mind-Iron - May 17_Mind-Iron - Feb15.qxd 4/4/2017 12:17 AM Page 6
Mind / Iron by Bryan Bergeron, Editor ª
Smart Fabrics f you’re a fan of sci-fi, you know that clothes make the hero. Take the body suits worn by the Fantastic Four. Depending on the wearer, the fabric can stretch beyond anything made of rubber, tolerate flame, turn invisible, and withstand crushing blows. Even the more realistic body hugging costumes worn by the Star Trek crew never wrinkle, never stain, and protect the wearer from almost any ambient temperature. Although the suit and tie are not dead yet, there is progress in creating the fabrics worthy of super heroes, as well as ordinary folks. There are numerous advances being made by the academic community, such as the Drexel University smart fabric project (http://drexel.edu/now/archive/20 14/May/Belly-Band). On the commercial front, there are a dozen or so suppliers of everyday garments made of hi-tech fabrics. My latest discovery is Ministry of Supply (https://www.ministryof supply.com), started by MIT graduates with experience in fabrics used in space suits. Their 3D printed jackets and traditionally constructed shirts use a special phase change technology that absorbs heat when it’s hot and releases the heat when it’s cold. The idea is that in the summer months, an office worker can avoid the discomfort caused by drastic temperature changes associated with running between the air conditioned office and outside. The fabric is also elastic enough to allow for a form fitted but still comfortable shirt. I’m not a fan of their jackets or long-sleeve shirts for business wear, simply because they don’t offer tall or long sizes. I have, however, purchased a few shirts just to get my hands on the fabric. The thermal buffer provided by the fabric is only on the
I
6
SERVO 05.2017
order of a degree or two. Still, I’m experimenting with using the material (which is manufactured in China) as a thermal buffer for onboard robotic control circuitry, as well as sensors embedded in clothing. A couple degrees may not sound like a lot, but where thermal stability is a concern, two degrees can make a difference. A potential advantage of a phase change fabric over a fan or Peltier effect thermoelectric cooling device is weight and power savings. The phase-change fabric is lightweight and there are no batteries to worry about. In many ways, this type of fabric can be the perfect substrate for a smart garment — it never needs ironing or dry cleaning, comes clean in cold water, and it dries on a hanger in minutes. The only downsides to the fabric — at least in the form of finished garments from Ministry of Supply — are cost and fragility. The clothes remind me of the episode of the Jetsons in which George Jetson serves as the test subject for an “indestructible” jacket. The jacket withstands almost anything that can be thrown at it, from flame throwers to explosives. However, when Jane Jetson throws the jacket in the wash, it comes out ruined. It’s the same with phasechange fabric. It can’t withstand hot water, dry cleaning, bleach, or simple ironing. Even so, I’m happy with the fabric as the base for my smart clothes projects. If any of you are experimenting with smart fabrics, please consider sharing your experiences with other readers. SV
FOR THE ROBOT INNOVATOR
ERVO
Published Monthly By T & L Publications, Inc. 430 Princeland Ct., Corona, CA 92879-1300 (951) 371-8497 FAX (951) 371-3052 Webstore Only 1-800-783-4624 www.servomagazine.com Subscriptions Toll Free 1-877-525-2539 Outside US 1-818-487-4545 P.O. Box 15277, N. Hollywood, CA 91615 PUBLISHER Larry Lemieux [email protected] ASSOCIATE PUBLISHER/ ADVERTISING SALES Robin Lemieux [email protected] EDITOR Bryan Bergeron [email protected] VP of OPERATIONS Vern Graner [email protected] CONTRIBUTING EDITORS Tom Carroll Kevin Berry R. Steven Rainwater Eric Ostendorff Steve Koci John Leeman John Blankenship William Henning Dave Prochnow Jennifer Bannink Aaron Nielsen Pete Smith Mike Jeffries Brandon Young Paul Grata CIRCULATION DEPARTMENT [email protected] WEBSTORE MARKETING COVER GRAPHICS Brian Kirkpatrick [email protected] WEBSTORE MANAGER/ PRODUCTION Sean Lemieux [email protected] ADMINISTRATIVE STAFF Re Gandara Copyright 2017 by T & L Publications, Inc. All Rights Reserved All advertising is subject to publisher’s approval. We are not responsible for mistakes, misprints, or typographical errors. SERVO Magazine assumes no responsibility for the availability or condition of advertised items or for the honesty of the advertiser. The publisher makes no claims for the legality of any item advertised in SERVO. This is the sole responsibility of the advertiser. Advertisers and their agencies agree to indemnify and protect the publisher from any and all claims, action, or expense arising from advertising placed in SERVO. Please send all editorial correspondence, UPS, overnight mail, and artwork to: 430 Princeland Court, Corona, CA 92879.
Bergeron - Mind-Iron - May 17_Mind-Iron - Feb15.qxd 4/4/2017 12:17 AM Page 7
EVENTS MAY 5-6
7
19 RoboRave Albuquerque, NM Events include Fire Fighting, a-MAZE-ing, Robotovate, Jousting, Sumo, AlpineBot, Iq Innovative, and Lighter Than Air Vehicles. www.roborave.org
SPURT Technology Park Warnemunde Rostock, Germany Robots race on the SPURT track. http://spurt.uni-rostock.de
Swiss Eurobot Yverdon-les-Bains, La Marive, Switzerland University teams compete in an annual challenge. www.swisseurobot.ch
29
ICRA Robot Challenge Sands Expo and Convention Centre, Singapore Events include DJI RoboMasters Mobile Manipulator Challenge, Mobile Microrobotics Challenge, Soft Materials Robot Challenge, and the Humanitarian Robotics and Automation Challenge. www.icra2016.org
13
NATCAR UC Davis Campus, Davis, CA Autonomous robot car races. www.ece.ucdavis.edu/natcar
19-20
National SeaPerch Challenge Georgia Tech, Atlanta, GA Student-built ROVs compete in underwater challenges. www.seaperch.org
Ostendorff - Mr Roboto - May 17_MrRoboto - Sep 15.qxd 4/4/2017 12:20 AM Page 8
Ask Mr. Roboto
by Eric Ostendorff
Tap into the sum of all human knowledge and get your questions answered here! From software algorithms to material selection, Mr. Roboto strives to meet you where you are — and what more would you expect from a complex service droid?
Q
. I was inspired by William Henning’s series on building a Raspberry Pi robot and have created my own version. Unfortunately, I have run into a problem. Many times when the robot is moving, the Raspberry Pi (RPi) will simply shut down and then begin its boot-up sequence. I have removed the RPi unit from the bot for testing on my workbench and can’t replicate the issue. It only seems to happen when it is mounted in the bot. Can you give me an idea of how to begin to troubleshoot this? I am at a loss. John Beaupre Toledo, OH
A
. Great project! It sure sounds like a power or EMI problem if it only happens while your robot is moving. Are you using a single battery to power your RPi and motors? Servos and motors draw lots of current which can cause battery voltage to sag, and cause brownouts and resetting. You should already have some filter/ decoupling/bypass caps on your RPi board, but when in doubt add more. There is a need for both 0.1 µF and 10 µF caps in parallel as close as possible to your RPi power pins. Use a big strong battery and big thick wiring throughout. Small wires drop voltage proportional to the current flowing through them. Everything looks great on the bench with no load on the motors. However, running on the ground increases the load which increases the current draw, which drops the supply voltage and increases electrical noise and EMI/RFI. First, I’d add separate ground and B+
8
SERVO 05.2017
Our resident expert on all things robotic is merely an email away.
wires: one adequately-sized pair just for RPi power; and a bigger pair to supply power to your servos or motor controller board. Twist the high current motor leads together to help the magnetic fields of noisy currents to cancel each other out, and route them away from your RPi. If you are using DC motors (not servos), you can add 1-3 filter caps to the motor in a delta arrangement (Figure 1). If these mods don’t help, try a separate battery for your RPi. Here is William Henning’s direct reply on the matter: If he used the same battery for the motors and Pi, that is the likely cause (even if there are separate outputs on the same USB power bank). A low resistance good USB power cable for the Pi is a must. RoboPi draws power from the Pi as do
any servos powered from the Pi’s supply (see SVT2 and SVT3 jumpers). I suspect he is drawing a lot of power from the Pi’s 5V via RoboPi (sensors, LEDs, etc.) and/or a thin USB power cable. I use good power banks capable of 2.1A at 5.1V, plus separate 4x or 5x AA for the motors, and have no issues.
Q
. I have been building robots for a while now, but never a remote control one. I purchased RadioShack’s Make It: Robotics Starter Kits 1 and 2, plus some sensors that go with it (#2770406, #2770170, #2770172, and #2770173). It has six robots to build that are under the names: Demo, Home_Remote, IR_Remote, plus Line Following Robot, Walking Robot, and Infrared. The infrared robot works using a motion sensor. The home remote is any TV remote control (which doesn’t work), and the IR remote that came with the kits is the motion sensor (PIR) with a five foot range. It doesn’t work. Can a motion sensor be used as an infrared receiver for remote uses? Frank G.
A
. Great question! “Infrared” and “IR sensor” are widely-used terms and can be confusing. Infrared radiation is the part of the electromagnetic spectrum (Figure 2) Figure 2. having wavelengths between visible light and microwaves, i.e., the region from 0.75 µm to 1,000 µm. Infrared waves are invisible to human eyes. The sensor that came in your kit (#2770172; Figure 3) is a PIR sensor; it’s often
Ostendorff - Mr Roboto - May 17_MrRoboto - Sep 15.qxd 4/4/2017 12:20 AM Page 9
Your robotic problems solved here. To post comments on this article and find any associated files and/or downloads, go to www.servomagazine.com/index.php/magazine/issue/2017/05.
called a motion sensor and is commonly used in security floodlights. PIR means “passive IR” and it senses the heat energy given off by a warm body (people). In many cases, the sensor has multiple elements and is triggered via differential detection when a person moves from one zone to another. This “far infrared” energy emitted has longer wavelengths from 8-14 micrometers. In contrast, IR remote controls emit an active modulated signal in the “near infrared” range at the other end of the IR spectrum, with shorter wavelengths under one micrometer; 940 nm is a common peak wavelength for the LEDs used in IR remote controls; 850 nm IR LEDs are used in some night vision applications and have a slight red glow. Getting back to your question, your PIR sensor cannot be used to detect signals from an IR remote. The signals are wildly incompatible. There is an order of magnitude difference in the IR wavelengths used. PIR sensors have a very slow response time and need a relatively long period to stabilize after being switched on. They can only sense a general yes/no motion detected condition. In contrast, IR receivers (Figure 4) are fast nimble modules which decode digital codes riding on a (usually) 38 kHz carrier wave. They have lots of goodies inside: a detector, amplifier with AGC (automatic gain control), bandpass filter, and demodulator. There are many different types of IR receivers for various conditions: noisy, sunny, continuous signal, etc. A good all-around IR receiver is the Vishay TSOP4838 shown in Figure 4. They are widely available and inexpensive — only a dollar or two (or 10 for a buck on eBay). Universal TV remotes are similarly cheap, and in my opinion adding IR remote control to a project is a simple way to add magical interaction. I can’t recall a single robot or project I’ve built lately without IR
Figure 3.
Figure 5.
Figure 4.
capability. The world has gone mad for Wi-Fi and Bluetooth. These are great, but add complexity. It’s nice to just pick up a TV remote and control your robot. RadioShack/Make sells a remote control kit (#2770173) in a curious B2
bomber form factor (great ergonomics maybe?). My favorite TV-139F IR remote is just $2 on eBay. It’s a TVonly unit, and every button except one sends a readable Sony code as shown in Figure 5. I buy ‘em three at a time.
smallmachine BIGRESULTS
CNC Mill Starting at:
$4950
x
Design New Ideas
x
Prototype Without the Wait
x
Cut Real Metal
x
120VAC Plug in Anywhere
TORMACH.COM SERVO 05.2017
9
Ostendorff - Mr Roboto - May 17_MrRoboto - Sep 15.qxd 4/4/2017 12:20 AM Page 10
Q
. My dad gave me a Sony AIBO ERS210 robot dog that he received as a bonus at work many years ago. The unit seems mostly new, but I think the battery is shot. Is it possible to rebuild this battery pack? The places online that sell an AIBO battery seem to be very expensive! Callie Martinez Springfield, IL
A
Figure 6. Aibo battery.
Replacing the cells starts by CAREFULLY prying, breaking, or cutting the plastic case open (Dremel slitting saw or X-Acto® razor saw). DO NOT cut into or damage the old cells. That’s very hazardous for leakage and fire reasons! The case could be either snapped or glued together, so you’ll need to figure out the best way to disassemble it. The critical area to preserve is the battery connector. Don’t damage that in any way. Once it’s open, take several close-up photos of all the connections to aid in reassembly, and start swapping cells. Pay attention when soldering! Sometimes the solder joints need to be very flat for proper fit on reassembly. When reassembling, squeeze everything back together. Check for proper fit and avoid short circuits! Hold everything together with electrical tape initially and test-fit the battery in AIBO and see if it will charge. If you’re all good, reassemble the plastic case more permanently with electrical tape or CA glue. Homemade repairs like this are ALWAYS a bit risky, so be vigilant and use “forever” caution when charging and using the repaired battery.
. Agreed! Replacement batteries for obsolete devices are overpriced — often more than the cost of the entire used device. It appears that a refurbished battery may be your only option. If you go to www.batteryrefill.com /laptops/sony/aibo.phtml, they will refurb your battery for $70, or sell you one outright for $129; eBay listing #162377316342 is for a dead/will not charge ERA-201B1 battery for your ERS210 for $39 (!), but that’s like a “core” for Figure 7. Stingray. rebuilding. Pricey in my book, but AIBO is a classic robot and definitely worth maintaining. Personally, I’m handy and fearless and love a challenge, so I’d take a shot at repairing it (I have repaired countless iRobot Roomba NiMH batteries). Best case, this results in an ugly hacked battery pack which works (not that you see the battery in use). . I’ve been Worst case, it doesn’t work interested in and I’ve destroyed the core creating a value, so my only option telepresence robot that can then is to buy that $129 move around my house and battery. allow me to see/hear what’s Figure 8. Rovio. Got mad hacking skilz? happening there. Most Take a look at Figure 6 and ready-made telepresence over $5 each (https://www.amazon proceed at your own risk ONLY if you robots seem to be either toys or super .com /dp/B00N39M0US?psc=1). are very skilled with hand tools and expensive. There is an internal PCB (printed soldering. I’d like to roll my own, and I have circuit board) which may or may not The pack uses four Li-Ion 18500 a Parallax Stingray robot that seems to be damaged — another gamble. cells with solder tabs which will cost be a nice solid chassis to start with.
Q
10
SERVO 05.2017
Ostendorff - Mr Roboto - May 17_MrRoboto - Sep 15.qxd 4/4/2017 12:20 AM Page 11
Any ideas on what my next steps should be? Robert Gomez McAllen, TX
A
. HUGE PROJECT, wow! I’ll barely scratch the surface here. The Stingray (Figure 7) is a beautiful and capable chassis; it’s a pity that Parallax stopped selling it. The only problem IMO is that the gear motors are too fast in general, and WAY too fast for a telepresence robot. Any Wi-Fi video link will have nearly a second of lag, and you need to drive very slowly to avoid crashing. I found some much slower 70 RPM motors for my Stingray on eBay for $10, which should be your first step. See my video at https://www. youtube.com/watch?v=cAbjISH5W S4 and search eBay for item # 332053386842 or “DC Gear Motor 12V 70 RPM 37 mm High Torque 8 kg.cm.” You have so many choices for control and the video link. You can use a traditional RC control system with a wireless camera link. If you can live without sound, there are any number of $20 Wi-Fi drone cameras available to send video via Wi-Fi to a smartphone/tablet. (See my article on Wi-Fi cameras in the SERVO February 2016 issue.) Full two-way comms is a lot more work and a subject of a book, not a magazine article. I will close by mentioning Wowwee’s Rovio circa 2008 (Figure 8). Rovio was a full telepresence bot: Wi-Fi; two-way comms; Internet access; Northstar navigation; Mecanum omni-directional wheels; auto recharging dock; you name it. It was WAY ahead of its time and under-appreciated. It set the bar very high. You would do well to get one of those to study; they can be commonly found in mint condition on eBay for $100. Quite frankly, it will probably do everything you need. The main limitation is that software and firmware development
stopped somewhere around 2010-12. There’s 32-bit Windows 7 software available at www.wowweezone .com/kb/ faq.php?id=75 and https://sourceforge. net/projects/ rovio/files. It’s certainly worth your while to track one down, even if you have to dig up a 32-bit computer to run it on.
That’s a wrap for this month. Thanks for all your great questions. Keep ‘em coming to roboto@ servomagazine.com and let’s see what we can do. SV
FREE
PCB Layout Software & PCB Schematic Software
3 PCBs
41
$
3 PCBs
+ shipping
61
$
3 PCBs
81
$
+ shipping
+ shipping
2-layer MiniBoard
2-layer MiniBoardPro
4-layer MiniBoardPro
(Shipped in 1 business day)
(Shipped in 2 business days)
(Shipped in 3 business days)
1
DOWNLOAD our free CAD software
2
DESIGN your 2 or 4-layer PCB
3
CHECK your design with xCHECK DRC
4
SEND us your design with just a click
5
RECEIVE top quality boards in just days MADE IN THE USA
Now Offering
SMT STENCILS – Nano Coating available–
| www.expresspcb.com
SERVO 05.2017
11
Leeman - Multi-Rotor Hobbyist - May 17_Blank Rough SV.qxd 4/4/2017 12:22 AM Page 12
Photogrammetry with OpenDroneMap — Part 2
The Multi-Rotor Hobbyist
By John Leeman To post comments on this article and find any associated files and/or downloads, go to www.servomagazine.com/index.php/ magazine/issue/2017/05.
Last month, we got up and running with OpenDroneMap (ODM) and its new web interface, WebODM. This month, we’re going to learn about referencing our photos to real life coordinates with ground control points (GCPs) and collect some real data of our own to experiment with. Grab your cameras, drones, and laptops; it’s time to make some meshes and orthophotos!
Camera Selection
A genuine GoPro is several hundred dollars, but there are a number of knock-off products (which I call Faux Pros) When selecting a photogrammetry camera for your that are available for less than $100. While durable and drone, there are a number of factors to consider. There are affordable, these cameras have their disadvantages. For some physical constraints such as size and weight, but also starters, they have a very wide angle lens to capture a large some technological considerations such as GPS tagging, action scene. This lens introduces significant distortion, lens distortion, and sensor size. We’re going to quickly go making straight lines appear to be curved (Figure 1). As over some common concerns and a few cameras that seem you can imagine, when trying to reconstruct a to be popular amongst the community. dimensionally accurate representation of the world, this First of all, we’ve got to talk about the action cameras. warping causes problems! The GoPro is the quintessential action camera with high There are ways to correct for the distortion, but it is quality video, photos, and a rugged design. certainly not ideal. Another problem is the lack of geoThese cameras survive kayaking, mountain biking, and tagging in all but the most expensive action cameras. As we’ll see, having no GPS data in the photos causes the even falling out of an airplane. One video online shows a processing to become more difficult and time-consuming. GoPro that falls over 12,500 ft (3810 m) and still works fine Finally, there is the problem of the camera image sensor size. (https://youtu.be/aU-KvtA20v8)! The size of the sensor determines what size of details can be resolved in the image, as well as other image performance factors. One thing to always keep in mind is that two small objects viewed from far away may appear as one combined object; this minimum object separation can be described by the Rayleigh criterion, but is a bit beyond the scope of what we’re trying to do here. Next, “point-and-shoot” cameras have become a popular option. These cameras have larger sensors than a GoPro and lenses that provide much less distortion. These simple cameras run from a hundred dollars to several hundred depending on the capabilities, resolution, age, and features. The Ricoh GR and a number of Sony and Figure 1: The wide angle lens on most action cameras causes significant distortion of Canon cameras have been used for aerial the image. The gravel road and fence line cutting diagonally across the photo are surveying. straight lines. Notice how they bow significantly — especially towards the edges.
12
SERVO 05.2017
Leeman - Multi-Rotor Hobbyist - May 17_Blank Rough SV.qxd 4/4/2017 12:22 AM Page 13
Figure 2: The “Faux Pro” camera I found on sale for less than $100. It looks and operates very similar to the real GoPro products, but has fewer features and less battery life. Figure 3: This action camera came with a wide variety of mounting
options and a protective case. Assembling the different mounting The Canon PowerShot line has gained some popularity brackets was a bit of a puzzle. as they can be obtained rather inexpensively and such tight hardware-software integration. Some prefer to augmented with the Canon Hack Development Kit (CHDK) utilize the infrared remote trigger functionality of their to add many new features (http://chdk.wikia.com/wiki/ camera and create a system that can trigger the shutter; CHDK). You can even write and run Lua scripts on the others record video and extract still frames. camera! I would recommend looking for a camera with The simplest route is to set up an intervalometer, or integrated GPS or external GPS capability, interval shooting, timed shutter. With an intervalometer, the user sets a delay and the largest sensor you can find. (say two seconds) and once the camera is triggered, a Another popular category is the interchangeable lens photo will be taken at intervals set by the delay. Many cameras. Formerly, I would have limited the discussion to cameras have this functionality, or can be hacked with single lens reflex (SLR) cameras, but the prosumer market alternate firmware (like CHDK) to add it. has evolved to put some really nice technologies in the price range of hobbyists. Beginning with SLRs, we get into the range of many hundreds to a few thousand dollars for the newest For my first try at collecting aerial photogrammetry equipment. These cameras are sold as a body and lenses, data, I went with my inexpensive “GeekPro” knockoff generally purchased separately. SLRs use a mirror and prism camera (Figure 2). This unit takes stills and video, came set that lets the photographer see the image through the with a variety of accessories (Figure 3) and a case, and is lens of the camera optically, without the need to look at a app-enabled — all for less than $100! While the photos are screen that can be difficult to see in bright conditions. not impressive, it is perfect for a low-risk experiment. I have Due to all of the moving parts, SLRs are larger and an older (2007) Nikon D40x (Figure 4) that I’d like to try heavier than their point-and-shoot counterparts, but sometime, but I didn’t want to build a mount for it and risk generally have larger sensors and are much more feature damaging it until I knew what I was doing. rich. The newer mirrorless interchangeable lens cameras My first idea was to 3D print a bracket for the Faux Pro, (MILCs) are at a similar price point, but have a form factor more similar to that of a point-and-shoot. The Sony NEX5R/B is available used for a few hundred dollars and could make a good entry level camera. The Sony A7S has good reviews as well and is a full-frame sensor camera, but retails for around $2,200. Lastly, we have to briefly discuss triggering of the camera. Some fully integrated systems allow the flight controller to control the camera. This means that the operator can pre-program the exact positions at which to take a photo so that the dataset has the correct amount of overlap and no excess information that will slow down the processing of the images. Most of us will be dealing Figure 4: The Nikon D40x is an aging but high quality DSLR that can be with a more homemade system that doesn’t have augmented with GPS tagging of photos for a nice aerial photography setup.
Camera Installation
SERVO 05.2017
13
Leeman - Multi-Rotor Hobbyist - May 17_Blank Rough SV.qxd 4/4/2017 12:22 AM Page 14
Flying the Survey Now that the camera was mounted, it was time to fly the survey. I chose a small area containing two buildings and some field. I wanted to have a lot of open space to fly without being so worried about obstacles. Figure 5: Mounting the camera was as easy as zip Figure 6: An idealized “mowing the lawn” pattern After obtaining tying a mounting bracket to the base plate of the might look something like this, starting and ending permission to fly quad. The swivel attachment let me start the interval at the green dot. In reality, my manual flight path shooting sequence and quickly move the camera was a bit messier. over the area, I back into place. waited for a day but that seemed unnecessarily complex. I also have with low wind speeds and cloud cover so that there would experienced a fatigue failure of the camera mount I printed be minimal shadows. I made sure the camera was charged, a few months ago for the Fat Shark camera; I believe my mounted it, and started the flight. plastic was old and did not bond together very well. The Since I didn’t program a flight path, I was trying to solution ended up being very simple. I placed the camera in make sure I had enough coverage by “eye.” I followed the its protective case, attached it to a double-stick adapter that traditional pattern of “mowing the lawn”— much like is came with the kit, and used zip ties to secure it to the done with side scanning sonar when mapping the ocean bottom of my ELEV-8 quad (Figure 5). floor (Figure 6). In the end, I could have flown a much The next step was to set up the camera to shoot more aggressive pattern and mapped a larger area, but this automatically. I’ll leave this to you because each camera was fine with me for a first attempt. I systematically went seems to have a slightly different menu system. After a back and forth across the area at a roughly constant couple of minutes of searching through all of the menus, I altitude. In fact, I had to reduce my altitude at first because was able to find interval shooting and set it to two seconds. I was actually reaching the cloud base and the camera’s There are a few other settings that you should look for view was obscured! that I had to learn about the hard way. First, make sure the After landing, I rushed back to the house (and date and time stamp is turned off. My camera had it turned fireplace) to warm up and download the data. After on by default and it resulted in some fascinating deleting the photos of me placing the drone and retrieving reconstructions. Also, make sure that the camera resolution it after flight, I had about 360 acceptable images. That’s is turned up as high as possible and that the memory card about 1.7 GB of data; nothing now, but a huge challenge is properly formatted so all of the storage space can be just a few years ago. I’ve made the images available for you utilized. Remember that a 10 minute flight (600 seconds) to use in a GitHub repository (https://github.com/jr leeman/ServoPhotogrammetry May17), as well as in a will result in about 300 photos! ZIP file available at the article link. Finally, my camera had a beep that was supposed to simulate the shutter sound. I turned this off as it became excessively abrasive during bench testing. After everything was set up, I did a “dry run” by starting the camera and walking around the house with the drone. I Like last month, we will feed our images into ODM to then went back and checked the photos to make sure they produce a mesh and orthophoto. Copy the images from the were taking properly and didn’t have the time stamp, etc. “raw_images” folder of my data (or use your own) into the “images” folder of our ODM installation. Next, we can open An orthophoto is an aerial photograph that has been a command terminal, navigate to that folder, and run our geometrically corrected or 'ortho-rectified' such that the Docker image. If you need help getting the installation scale of the photograph is uniform and utilized in the same complete or spinning up Docker, be sure to check out last manner as a map. An orthophotograph can be used to month’s issue that goes into the process in detail. measure true distances of features within the photograph.
Processing Images with ODM
14
SERVO 05.2017
Leeman - Multi-Rotor Hobbyist - May 17_Blank Rough SV.qxd 4/4/2017 12:22 AM Page 15
Once you have a terminal in the main ODM folder, run this command to start the processing of the images: docker run -it —user root -v $(pwd)/images:/code/images -v $(pwd)/odm_orthophoto:/code/odm_orthophoto -v $(pwd)/odm_texturing:/code/odm_texturing —rm odm_image
If you are on an older machine or just can’t wait, I suggest selecting a subset of the images — about 150 works well. Processing the entire set took overnight on a relatively modern machine, but I didn’t mind waiting once the process was ironed out. While ODM is running, lots of messages will fly by, but you’ll notice that in this case the program terminates unsuccessfully. What’s the problem? Our Faux Pro doesn’t have any GPS information in the EXIF data of the photos, and we haven’t told the program where the photos are by providing any reference points. This means that the reconstruction has no way of knowing the proper zenith (up) direction, and fails when trying to generate the orthophoto. Luckily for us, the meshing process should be complete and we can start by looking at that result. To view the textured mesh results of our run, navigate to the odm_texturing directory in the main OpenDroneMap directory. Just like last month, using a program like MeshLab, open the odm_textured_model.obj file and explore. Depending on which photos you used, the reconstruction could be pretty good (Figure 7) or rather warped (Figure 8). Already we can see a lot of information about the farm. The biggest thing I noticed was the splotchy patches in the field — probably something that should be looked at. Already the advantages of technology like this for agriculture and industry are obvious. There certainly are some places that the reconstruction did not do as well; namely, the sides of buildings. That makes sense as the camera was pointed nearly straight down and at a relatively high altitude when compared to the height of the buildings. If you look near the intersection of the three gravel roads, you can see me flying the quad, but my height information was not well captured.
Figure 7: A well constrained textured mesh represents the mapping area pretty well. The top of one of the buildings did not render well, but the elevation changes are very close to actual measurements.
Without GPS data, we can constrain the location of the images with ground control points (GCPs). These are points visible in multiple photos whose location is very well known. By picking multiple ground control points that are visible in multiple photos, ODM can determine the zenith direction and geo-locate the images. The ideal GCP has a sharp feature that can be well located. Corners of buildings, painted markings on the street, even utility poles could be good “natural” GCPs. When making my first flights, I did not add any specific GCPs, so I had to find some suitable points. To create a geo-referenced image, ODM requires a minimum of five GCPs that are each visible in a minimum of three photos. In my experience, the minimum was never enough. I chose seven points — each visible in three photos. These points were easy to identify and in an area of the flight in which I knew there were many passes. To tell ODM about our newly discovered GCPs, we need to create a file containing the image coordinates and real world coordinates. To do that, we need to understand a few things about coordinate systems. All coordinate systems need to have a coordinate origin — where zero is for the system. While we commonly talk
Ground Control Points To get a true geo-referenced orthophoto, we need to provide some information to ODM about where the photos were taken. The easiest way would be with GPS, but as I mentioned, this inexpensive camera does not have that capability. Using a GPS, Pi Camera, and Raspberry Pi would be an interesting solution though. Using the OpenCV library, the camera could be instructed to only save images when needed to maintain the desired overlap, but that’s another project.
Figure 8: An early attempt using less data resulted in grossly flawed topography towards the edges of the map.
SERVO 05.2017
15
Leeman - Multi-Rotor Hobbyist - May 17_Blank Rough SV.qxd 4/4/2017 12:22 AM Page 16
Figure 9: Generally, we consider the origin of an image’s coordinate system to be at the upper left corner of the image, with the x axis values increasing to the right and y axis values increasing downward.
about the latitude and longitude of a point on the surface of the globe, not all latitudes and longitudes are equal. Where on the face of the planet a specific lat/long pair corresponds to is dependent on the datum — or reference system — used to locate it. Taking coordinates from someone and locating them with a different datum can result in errors of hundreds of meters! Why are there different datums then? The Earth is a very complex and bumpy shape; a datum that does an okay job of describing the whole Earth may do very poorly in certain locations. A datum made to work very well in a given region will likely do poorly covering the entire globe.
Figure 11: Zooming into the mapping area a bit closer, I picked a number of candidate ground control points (yellow stars). The corners of buildings seemed to work very well, as did features like the edges of road intersections.
16
SERVO 05.2017
Figure 10: Searching the town name gets us into the right region to search for the mapping area.
The common datums encountered in North America are NAD27/83 and WGS84. The North American Datum (NAD) has existed since 1927, but is actually based on survey points selected in 1901. More specifically, the datum is based on the location of the Meades Range Triangulation Station, located very near the center of the continent in Kansas. The datum was updated in 1983, introducing differences of near 100 m on the US west coast. The datum is still used by many government agencies, but the more advanced WGS84 datum is increasingly common. The World Geodetic System (WGS) datum was introduced in 1960, but the 1984 datum (with small updates in 2004) is now used in many applications. The WGS datum is based on the location of the center of the mass of the Earth and is believed to be accurate to less that 2 cm. (Stop and think about that for a second.) Finally, for local work that only takes place in a small region, the Universal Transverse Mercator (UTM) coordinate system is used instead of latitude and longitude. The UTM system is a simple Cartesian grid or x,y position of a feature in a certain zone. The Earth has been divided into 60 zones, each consisting of a six-degree band of longitude extending from 80° S to 84° N. The contiguous US spans zones 10-20 N. If you are really interested in the origin of datums and coordinate systems, there are plenty of resources online, but for now just know that it doesn’t really matter which datum or coordinate system you use as long as it is specified. For photographs, we can stick with the much simpler coordinate system of Cartesian coordinates. Generally, images are considered to have their origin at the upper left corner of the image (Figure 9), but it’s always a good idea to check depending on the specific piece of software you are using. It’s now time to create our GCP file. First, download and install Google Earth (https://www.google.com/ earth) and QGIS (www.qgis.org). Open up Google Earth and type in the location of your survey to get in the right area of the globe (Figure 10). Next, manually pan and zoom to find your specific area and start looking for good control points. I found several options (Figure 11), and
Leeman - Multi-Rotor Hobbyist - May 17_Blank Rough SV.qxd 4/4/2017 12:22 AM Page 17
Figure 12: In the preferences pane of Google Earth, set the Show Lat/Long setting to Universal Transverse Mercator and the Units of Measurement setting to Meters, Kilometers.
decided to keep trying different combinations/ number of points until I got a good solution. We need to get the coordinates of our GCPs. Google Earth uses the WGS84 datum, but you can switch the format of the displayed coordinates to be more convenient. Open the preferences pane of the application and select your desired coordinates in the “Show Lat/Long” area; you can also change to metric units so elevation will be shown in meters (Figure 12). I chose to work in the UTM coordinate system and know that I’m in UTM 15N. If you have lat/long points, a website such as the Montana State University geographic unit converter (www.rcn. montana.edu/Resources/Converter.aspx) can do a great job of helping out to get to whichever coordinate system you’d like (Figure 13). Now that Google Earth is showing us useful coordinates, move your mouse over each GCP and write down the coordinates from the bottom right of the window (Figure 14). As you zoom in, the program uses a pseudo perspective zoom technique. Hit the “r” key to rectify the view back to a nadir facing orientation. Next, locate at least three photos that show each GCP. Open QGIS and click the “Add Raster Layer” button in the left menu (see last month for detailed instructions). Select the photo you want to open and click OK on the next popup box. Now you can zoom around on the photo and find your control points. In the bottom of the window, you’ll see the coordinates of the mouse cursor (Figure 15). Write down the coordinates of each GCP to the nearest integer value. Ignore the negative sign on the y coordinate. Be sure to note which GCP and photo name goes with which coordinates.
Figure 13: If you need to convert between coordinate systems and datums, look no further than the Montana State University online calculator.
Figure 14: Place your cursor over the ground control point and note the coordinates in the lower right corner of the window. Repeat this process for each GCP.
Figure 15: Locate each GCP in multiple images using QGIS. Write down the coordinates shown in the lower tool bar, ignoring any sign on the numbers.
SERVO 05.2017
17
Leeman - Multi-Rotor Hobbyist - May 17_Blank Rough SV.qxd 4/4/2017 12:22 AM Page 18
Now that we have a big Excel sheet, notebook page, or other table of data, it’s time to get it into the correct format for ODM. Open your favorite text editor (simple text, not Word, etc.) and create a new file called gcp_list.txt. We will enter information in the following format: coordinate system description x1 y1 z1 pixelx1 pixely1 imagename1 x2 y2 z2 pixelx2 pixely2 imagename2 x3 y3 z3 pixelx3 pixely3 imagename3
In the case of my survey, the first line reads: “WGS84 UTM 15N” to describe that I’m using the WGS84 datum with the UTM coordinate system in zone 15N. For my first GCP, I know its coordinates are 367615.7, 4023957.8, 374.9 on the planet and 3144,1279 in image FDH0033.JPG, so the line looks like “367615.7 4023959.8 374.9 3144 1279 FHD0033.JPG” (space delimited). Repeat this process for each GCP and image set. A minimum of 15 lines (three images for each of five points) is required. Though this is a bit tedious, it really only takes a few minutes. To run the analysis using the GCP file, we just have to tell ODM that the file is there. Since we are running through Docker, there is a slight complication. ODM looks in the project home directory for the GCP file, but that is not mounted by Docker. A good work-around is to place the GCP file into the images directory and direct ODM to look there. Our ODM command string now becomes:
but searching the Internet and thinking some about it, there are a number of homemade alternatives. Markers could be made by taping an “X” on a poster board with electrical tape, painting on the back of cheap cookie sheets, sewing fabric together, or using black and white ceramic tiles. I like the idea of having squares of a fixed size (12”) in an alternating black and white pattern, but carrying ceramic tiles seems heavy. I think using squares of poster board or painting the pattern on thin plywood would be the most inexpensive and convenient alternative.
Lens Correction
Correcting for the distortion of the camera lens is not really necessary for most of the point-and-shoot cameras, but the action cameras have such a wide angle lens it may be needed for accurate results. The process of doing the math to correct the images is not straightforward, but luckily for us, the open source community has a number of tools available. GitHub user, wildintellect has cooked up a nice little Python script to undistort images from his GoPro Hero2 camera (https:// github.com/wildintellect/lenscorrection/blob/master/ undistort.py). The data for the camera lens correction comes from the Lensfun database (http://lensfun.source forge.net), which has corrections for many camera and lens combinations. To use wildintellect’s script, I needed to make a couple docker run -it —user root -v of small modifications. Your mileage may vary based on $(pwd)/images:/code/images -v your camera, but I ended up commenting out all of the $(pwd)/odm_orthophoto:/code/odm_orthophoto -v $(pwd)/odm_texturing:/code/odm_texturing —rm EXIF data modifications lines as a quick hack to get it to run odm_image —odm_georeferencing-useGcp — for my setup. odm_georeferencing-gcpFile Again, the modified script is /code/images/gcp_list.txt available in the repository and at the I admit that this process did not article link. work smoothly for me. I had to play Of course, the Lensfun with varying numbers of GCPs and database does not contain my Faux which GCPs I used. I believe this Pro model (in fact, the name of mostly had to do with the fact that these knockoffs seems to change the Faux Pro lens significantly almost weekly). I assumed that my distorts the images near the edges camera was comparable to the and ODM had a hard time Hero2 and just used its profile. reconciling this. I placed the lens correction repo In the end with seven GCPs, I folder on my desktop, opened a was able to get a decent terminal, navigated to the directory orthophoto from the raw images with my photos, then ran the (Figure 16). command python ~/Desktop/lens It would be helpful to lay down correction/undistort.py and let the markers that can be well located for script do its magic. the GCPs. The markers could even After the script finished be surveyed for a more accurate running, I was left with a folder Figure 16: The final orthophoto constructed by containing the original images, and geolocation. I’m sure there are ODM is a pretty good representation of the area. The roads have small offsets towards the edge of the images with _fix appended to companies that would love to sell my data coverage, but most of the important their names. Comparing the original you markers of one form or another, features were very well reconstructed.
18
SERVO 05.2017
Leeman - Multi-Rotor Hobbyist - May 17_Blank Rough SV.qxd 4/4/2017 12:22 AM Page 19
to the “fixed” images, it looks like the Hero2 lens profile didn’t do a bad job of correcting these images; maybe even over-corrected slightly (Figure 17).
Closing Thoughts What are you going to map now that you’ve built up the skills and toolchain to take aerial photos and turn them into textured meshes, point clouds, and orthophotos? Taking multiple flights over the same area throughout the year could provide an interesting view of the seasonal changes. Flying over a construction site (with permission) every week could make for a fascinating time-lapse style set of images showing progress to the eventual completion of the project. There are many opportunities — just remember to backup your data, get permission, and be patient as you learn new tools. If you aren’t ready to tackle data collection yourself, go download the data I took and have a look! Until next month, fly safely. SV
Figure 17: Images from the Faux Pro before (A) and after (B) the lens correction from the Hero2. The changes are most marked in the fence lines that are straight, but appear warped in the original photo.
Make your machine move MICRO LINEAR ACTUATORS · 10mm-300mm stroke · 25kg+ available force · 6v-12v power supply · 15g-100g net weight ACTUONIX . COM SERVO 05.2017
19
New Products - May 17_Mar15 - NewProd.qxd 4/4/2017 12:24 AM Page 20
NEW PRODUCTS 4” Omni Wheel
M
obilize your robot chassis with the new Actobotics 4” omni wheel available from ServoCity. Omni wheels can be used just like regular drive wheels, but they have the advantage of being able to roll freely perpendicular to the drive direction. The 10 rubber rollers around the circumference of the wheel provide excellent grip to excel in moving in the forward direction. Each roller is mounted on a stainless steel sleeve which rests on a stainless steel axle to allow the rollers to rotate freely and independently from one another. Multiple wheels can be mounted to one another by installing an 1/8” spacer between the wheels to provide adequate clearance between rollers. The wheels can be clocked so that the rollers are staggered evenly, which smooths out the circumference and increases load-bearing capabilities. The wheels have a 1/2” center hole, and numerous mounting options are provided, including the standard 0.77” and 1.50” hub patterns for using with other Actobotics parts. These wheels can reduce the amount of torque necessary to turn, while decreasing the turning radius of your chassis. Price is $9.99.
Ball Bearing Wheel Mount
T
his wheel adapter from ServoCity is intended to be used with their five-spoke pneumatic tire/wheel. This piece is machined to perfectly mate with the interior shape of the molded wheel so that the adapter and the wheel will turn as one. The adapter houses a 1/2" ID ball bearing so that the assembly can be slid onto a fixed shaft and then rotate freely on that shaft. The 1.5" Actobotics hub pattern is machined into the adapter so that a sprocket or gear can easily be attached to the outside of it to drive the wheel assembly. A single wheel adapter can be used, and the other side of the wheel can be supported by one of the stock bearings included with the pneumatic tire/wheel, or an adapter on each side can be utilized for a more symmetrical setup. ServoCity recommends running a 1/2" shaft spacer next to the bearing installed into the adapter in order to provide proper clearance between the bearing and the surface that it's running next to. Price is $15.99.
Tapped Wheel Mount
T
his wheel adapter available from ServoCity is also intended to be used with their five-spoke pneumatic tire/wheel. This piece is machined to perfectly mate with the interior shape of the molded wheel so that the adapter and the wheel will turn as one. The adapter has the large
20
SERVO 05.2017
1.5" hub pattern with 1/4" through-holes machined into the face so that ServoCity’s 1" HD clamping hub can be attached using 1/4-20 low-profile socket head screws. By installing a clamping hub onto the adapter, the wheel assembly can be secured onto a 1" shaft. This style adapter is commonly used in conjunction with an axle that is mounted in bearings so that the axle and wheel can rotate in unison. Price is $14.99. For further information, please contact:
ServoCity
www.servocity.com
New Products - May 17_Mar15 - NewProd.qxd 4/4/2017 12:24 AM Page 21
D-Series Servo Line
H
itec’s new D-Series servo line is powered by a 32-bit MCU (microcontroller unit) and 12-bit ADC (analog-todigital converter). This potent combination of wide voltage capabilities, high resolution, rapid response, and Smart Sense technology brings maximum performance to all radio control applications. The members of this particular D-Series group are all designed with extremely durable titanium gears; the D941TW, D946TW, and D951TW trio boast full metal cases. Features include: • High Response Circuitry • Wide Voltage Capabilities • 32-bit MCU Technology • Full Programmability • Smart Sense Technology for Servo Analytics • Hitec’s 25-Tooth Splines • Splash Proof Design
Pricing ranges from $147.99 to $169.99. For further information, please contact:
Hitec RCD
www.hitecrcd.com
VR Digital Design Solutions Tool
D
ESTACO has announced the launch of its new Accelerate® Vision Virtual Reality (VR) digital design solutions tool. Taking advantage of the latest advances in VR technology, the Accelerate Vision tool has been designed to work in the production of DESTACO’s Accelerate® Collection end effector components, which can be assembled into custom solutions for most pressroom stamping applications. As the speed of manufacturing continues to increase, the design process for these components must also be accelerated, while meeting strict demands regarding diemaking and tooling accuracy and precision. By utilizing the Accelerate Vision VR digital design tool at the beginning of the design process, DESTACO is able to precisely build an end effector based on customer-supplied models and also provide detailed information and data to die-makers. This enables the die-makers to streamline their design and review process. The result is tooling that is accurate with an overall improvement in product quality for the end user. The Accelerate Vision VR tool is part of DESTACO’s suite of Accelerate Digital Solutions, which also includes simulation and manufacturing components. These Digital
DESTACO
www.destaco.com
)
For the finest in robots, parts, and services, go to www.servomagazine. com and click on Robo-Links.
Solutions allow the use of robot-assisted production cells during manufacturing operations, with the robot possessing the capability to increase the precision in which parts are built without the need for samples or 2D drawings. Once the construction of the component is complete, it goes through a laser-validation process to confirm that all measurements are in compliance with the approved design. For pricing and further information, please contact:
SERVO 05.2017
21
Bots in Brief - May 17_Bots in Brief Mar15.qxd 4/4/2017 12:26 AM Page 22
bots
IN BRIEF
LICENSE PLATES FOR DRONES?
I
n late 2015, mandatory drone registration went into effect in the United States. Since then, anyone who wants to fly a drone (or model aircraft) weighing over 0.55 pounds (0.25 kilograms) must register with the US Federal Aviation Administration (FAA) to receive a unique identification number. This number needs to be placed on the drone, but there are no requirements for it to broadcast signals to allow for remote identification. That might change in the future. The FAA Extension, Safety, and Security Act of 2016 required the FAA administrator to “convene industry stakeholders to facilitate the development of consensus standards for remotely identifying operators and owners of unmanned aircraft systems and associated unmanned aircraft.” (Whew!) Recently, DJI — the world’s largest commercial drone manufacturer — announced a proposal outlining a general scheme for doing just that. The company’s ideas are more fully described in a whitepaper it issued in response to a recent call for papers on the topic by the Association for Unmanned Vehicle Systems International (AUVSI) — a trade group involved with “all things unmanned.” DJI’s proposal attempts to balance public interests in being able to identify who is using a drone in a particular place and time with the privacy interests of the drone’s owner or operator. As the company points out in its whitepaper, drone operators might want to maintain anonymity even if there were people around to witness their flights. DJI proposes that drones be required to broadcast an identifying code by radio. That code would not include the name and address of the owner, but authorities would be able to use it to look that information up in a non-public database — a kind of electronic license plates for drones. At the same time, it’s easy to understand why law enforcement or regulatory authorities would sometimes want to identify the owner or operator of a drone; say, if somebody felt the drone was invading their privacy or if a drone was being flown close to a nuclear power plant. “Many people have concerns [about drone flights] that could be ameliorated if somebody could talk to [the operator],” says Adam Lisberg, DJI’s spokesman for the US and Canada. That requirement would not apply to all drones, however. Ones at the small end of the spectrum would be exempt, just as they are from current FAA regulations to register drones and model aircraft that exceed 0.25 kg. DJI thinks that threshold is too low; a more reasonable value should apply to both the current registration requirement and to any future requirement to broadcast an ID number by radio.
22
SERVO 05.2017
Photo: DFSB DE via Flickr
U IS BEAUTIFUL
A
ndroidol U is a life-like female android developed by Osaka University professor, Hiroshi Ishiguro and collaborators. It recently debuted during a program on Niconico Live — a popular Japanese video sharing website and broadcasting platform. The android wizard himself appeared on stage alongside the robot, dressed in his trademark black jacket and pants. Sporting a bob cut, white blouse, yellow skirt, and blue tights, Androidol U is a fully autonomous conversational robot that has a more compact air servo system, better voice and body movement coordination, and softer body materials compared to previous androids.
Bots in Brief - May 17_Bots in Brief Mar15.qxd 4/4/2017 12:26 AM Page 23
bots
IN BRIEF POINT-AND-CLICK CONTROL
Professor Sonia Chernova, also implemented a middle ground “constrained positioning” method which intelligently limits ntil all robots everywhere the amount of degrees of are autonomous all the time, freedom that a user needs to humans are going to have to take position. Instead, the user needs over once in awhile. This is going to select only a grasp point, to happen more frequently as approach angle, and grasp depth. robots that are almost (but not If you put these approaches quite) fully autonomous get together, you get a spectrum of deployed in residential, options for teleoperated commercial, and industrial grasping, ranging from full six environments. When these DOF manual control to three robots get stuck on a task (and DOF constrained positioning they definitely will get stuck), a grasping, to single-click mostly human operator could hop in via automated grasping. telepresence to help them out. As the autonomy of these One problem, though, is that grasping approaches improves, right now this teleoperation the system makes increasing use Image: Georgia Tech RAIL Lab via YouTube process is awfully tedious. of scene information, although it’s For most grasping tasks, when a robot needs help, it not necessarily doing scene or object recognition. In other means that a human needs to manually position every single words, it needs basic depth data in order to help you out degree of freedom of the gripper while squinting at some with grasping, but it doesn’t need to understand what it’s low-resolution 3D point cloud. Georgia Tech researchers are looking at, making it easy to scale up and deploy to new working on making the process significantly less painful. Their environments without training. approach involves getting rid of all of that manual positioning These approaches also use only a mouse and keyboard, and using a friendly interactive interface that takes care of and are accessed through a friendly looking web interface everything with just one or two clicks. which helps users to get comfortable with the system. Between the full manual and point-and-click grasping Comfort is an important point because you want non-expert approaches available, the researchers from Georgia Tech’s users to be able to control robots without getting frustrated Robot Autonomy and Interactive Learning (RAIL) lab, led by at the task or the robot.
U
LIQUID LEGO
A
liquid-handling LEGO robot built at Stanford University hopes to foster interest in wet sciences (biology, chemistry, and medicine) for students. Using a LEGO MINDSTORMS EV3 robotics kit and a plastic syringe, students and DIYers can use the liquid-handling robot to automate lab assignments. The DIY robot measures and transfer liquids between flasks, test tubes, and experimental dishes. Some of the basic experiments
include: mixing colored liquids; comparing pH levels of liquids; measuring color intensities of liquids; and showing how liquids of different salt densities can be layered. There are automated pipetting systems already on the market, but they’re quite expensive. Ingmar Riedel-Kruse, an assistant professor of bioengineering who led the Stanford team, says this liquid-handling LEGO robot might even be useful for professional tasks.
SERVO 05.2017
23
Combat Zone - May 17_Combat Zone - Aug 15.qxd 4/4/2017 12:28 AM Page 24
To post comments on the articles included in this section and to find any associated files and/or downloads, go to www.servomagazine.com/index.php /magazine/issue/2017/05.
Featured This Month: 24 Applying for BattleBots by Mike Jeffries
26 New Year’s Resolution — Part 3 by Pete Smith
28 Atrocious: The $200 Hobbyweight — Part 1 by Brandon Young
30 Kinetic Combat Art: Building for Beauty
Applying for BattleBots f you’re taking the time to read this, then you’re likely interested in competing at BattleBots™. If the Season 2 application process is anything to go by, you’ll be competing with hundreds of teams for a spot in the bracket, and it absolutely is a competition. You’ve got to convince BattleBots and ABC that your team and your bot should be on the show instead of potentially hundreds of other applicants. It’s not an easy thing to do. With that in mind, here are a few suggestions for how to put yourself in the best position possible.
I
by Aaron Nielsen
33 Why Visit Canada ... by Paul Grata
24
SERVO 05.2017
Design Something Cool BattleBots is both a competition and a TV show. A dense metal box
● by Mike Jeffries
with a powerful spinning weapon may be a good way to win a fight, but you The design of Bombshell started out quite simple.
After several iterations, the final design was something more than a box on wheels.
Combat Zone - May 17_Combat Zone - Aug 15.qxd 4/4/2017 12:29 AM Page 25
may be one of 50 teams submitting what is essentially the same design. Find some way to make your entry stand out. Play with geometry; try some interesting or unexpected components; add some color. The selection committee is going to be reviewing hundreds of designs, so you want to have something that will stick in their minds.
with the robot when it comes time for team photos. Jeans and a T-shirt can work, but putting some effort into a cohesive botteam combination makes an impression.
The Competition Doesn’t Start When You Get to the Arena
We took an approach to Season 2 that viewed the In many ways, Nyx served as a proof of concept BattleBots competition as demonstrating that an effective highly modular robot was feasible. three major rounds. The first was the application process, where you’re Coming up with a showing that you’ve got wild concept for weapon the design skills and team operation or robot that can both pull off the locomotion is great. build and manage some However, if it’s really level of stage presence at something that’s the event. uncommon or outright The second is the unseen in combat build season, where building, some sort of you’re proving that you’re proof of concept for your capable of delivering on the promises you made in application will be round one. necessary. The event itself is The people on the round three, where it all selection committee don’t know you and don’t know comes together. If you managed to make it what you are or aren’t With the Chaos Corps and Bombshell the bot, the team looks through the second round capable of, so show them. like they belong together. with what you promised, “Yeah, it’s cool, but will it you now get the chance to get into work?” is only slightly better than not metal; it means that you should spend the box and put your robot to the making an impression at all when it a bit of time thinking about how to test. comes to your design. make the team look like they belong
Build a Proof of Concept for Risky Systems
Have a Cohesive Style Whether it’s the look of the bot fitting the style of the team or the look of the bot driving some team styling, it can only help to have the look of the bot and team align. This doesn’t mean you need to dress up as ‘50s sci-fi robots because you’re applying with a bot that’s covered in riveted unpainted
This shot was taken on July 5, 2015. Season 2 had not yet been announced.
SERVO 05.2017
25
Combat Zone - May 17_Combat Zone - Aug 15.qxd 4/4/2017 12:29 AM Page 26
Start Planning and Designing Now If you’ve got an idea, there’s no time like the present to do the planning and design work. The earlier you start on this side of things, the earlier you’ll find any issues and be able to resolve them. This isn’t the time to start buying parts or building, unless you’re planning to build the bot
no matter if your application is accepted or not. Everything that goes into the bot prior to buying parts or cutting metal can be done now, and will save you time during the build season.
That’s a Wrap You don’t have to do any of the above, but from what we’ve seen through experience, keeping the
above in mind while preparing your entry will put you in a better than average position when it comes to applying for Season 3. Best of luck and we hope to see you in the BattleBox! Don’t forget! Applications for Season 3 are already open at http://registration.battlebots.com, so if you’re serious about entering, go there and start filling out the forms. SV
New Year’s Resolution — Part 3 ● by Pete Smith n Parts 1 and 2 of this Figure 1. series, I outlined the AR400 reasons my 12 lb wedge. (Hobbyweight) combat bot, Isotelus Rex needed to lose weight, and then covered the design and build of that smaller lighter chassis. Here, in Part 3, I will Figure 3. describe the design and Watercut build of the new steel parts. wedge and how it fared at the Motorama 2017 event. The chassis and battery weighed 8 lbs and 3 oz, which freed up 2 lb and 13 oz for the new wedge. A little work in CAD showed me I could have a Figure 5. Machining 3/16” AR400 (a tough preFigure 4. Countersinking mounting the edge of hardened steel) thick holes. the wedge. wedge (Figure 1) with thick 6061 aluminum mounting blocks wedge mounting screws, so I (Figure 2) within that weight bought a carbide countersink allowance. bit; the lowest RPM setting on I generated dxf files of the wedge my big mill made this an easy and mounting block profiles, and had job (Figure 4). parts water cut (Figure 3). The larger It was also necessary to part is in 1/8” AR400 which I intend machine a 40 degree chamfer to bend to form a wedge more suited on the bottom edge of the for facing horizontal blades (if I can wedge so that it would sit flat find a big enough press!). against the floor when I wanted to countersink the installed on the bot. I set the
I
26
SERVO 05.2017
Figure 2. Mounting blocks.
Combat Zone - May 17_Combat Zone - Aug 15.qxd 4/4/2017 12:29 AM Page 27
Figure 6. Drilling mounting holes.
Figure 7. Machining down the blocks.
Figure 8. Test-fitting the wedge.
wedge in my angle vise and used a carbide end mill to carry out this task (Figure 5). Machining AR400 proved easier than I expected. However, it Figure 9. Wedge limiting block. is hard on tooling and you need a big slow mill to do it. The mounting block’s profile had been water cut with zero draft edges, but Figure 10. Ready I still needed to add for Motorama. the tapped mounting holes. First, I drilled the the front edge of the wedge and Figure 11. Damaged wedge. mounting hole curled a little bit of UHMW which pattern (Figure 6), high-sided the drive on one side. We then hand-tapped the 10-24 threads. travel when inverted (Figure 8 tapped out promptly! With 10 threads per block, this took again). Isotelus went on to have a quite a while! To prevent the latter problem, I winning record before going out to I then machined off a large added a couple of UHMW blocks another vertical disk when we got section of each block to create right (Figure 9) that stop the wedge hung up on a wall after a hit. and left hand mounts (Figure 7). swinging much below what is The new wedge stayed more or With that complete, I could do a test necessary to keep it in contact with less straight, and the bot is otherwise build-up of the wedge onto the bot the floor. The completed wedge on undamaged after some hard fights. (Figure 8). the bot can be seen in Figure 10. Unfortunately, it failed to get reliably This let me see what needed to The new wedge had its first test under the wedges on the vertical be done to limit its travel, so that it at Motorama 2017. So, how did it spinners. would lie flat against the ground if do? Well, better than at last year’s The new wedge only weighed 2 the bot was inverted, and not go so event, but we still haven’t found the lb/13 oz as mentioned earlier, so I far down and under that it could answer to the new generation of still have one pound left to play with. result in lifting the front wheels off vertical spinners. I will be experimenting a bit the ground. The wedge shrugged off the more with designs to try to gain a To stop the former, I machined a horizontal blade of “Susan,” but it completive edge before the next little off the front of the side rails so only took one hit from “Minor Threat event at Franklin Institute 2017. SV that these acted as the stop for the 3” to knock us out. wedge, but allowed just enough The hit took a neat chunk out of SERVO 05.2017
27
Combat Zone - May 17_Combat Zone - Aug 15.qxd 4/4/2017 12:29 AM Page 28
Atrocious: The $200 Hobbyweight — Part 1 ometimes, a challenge is all you need to inspire you to do Figure 1. Machine shop. something greater than what you may have previously thought possible. For me, this challenge came in the form of a Facebook post by fellow competitor, Kyle Singer. In lieu of the upcoming Motorama Robot Conflict event held in Harrisburg, PA back on President’s Day weekend by NERC, he challenged the builder’s community — especially those who hadn’t competed before in the 12 lb class — to build a robot in this class to bolster its numbers. In the past few events, the 12 lb Hobbyweight class had seen a decline in the number of competitors enrolled in it, while the 3 lb Beetleweight and 30 lb Featherweight/Sportsman classes had grown. To keep interest afloat, Kyle had an open challenge where anyone who could build a functioning Hobbyweight — armed or not — would receive reimbursement for their entry fee ($45) and increased notoriety. Figure 2. Ferocious Mk. IV. I saw this challenge and took it on as a leap of faith, but also as a clear opportunity to begin my overarching plan of steadily climbing up the order of weight classes. A lot of things had to go right for this to work. The first of these was a place to work and tools to properly machine materials. Until this past October, I was limited to only using a small bandsaw, a tabletop drill press, and a table grinder as my primary tools of manufacturing. For an Antweight robot, this was suitable since most materials Figure 3. Ferocious Mk. V. could be easily cut with these
● by Brandon Young
S
28
SERVO 05.2017
machines. Even for a Beetleweight — while more difficult — the parts were still within the range of machining for these tools. I knew that for a Hobbyweight — something 4x the mass of a Beetleweight and tens of times more powerful than one — it would require much stronger/thicker material, and with that comes much more powerful machines. The basic tools weren’t going to cut it. Fortunately, for me, I just started college at the University of Maryland. While this meant more schoolwork (as everything in life does), it also meant I had access to shops that were far more sophisticated, and had powerful tools such as mills, lathes, giant bandsaws, and others (Figure 1). The second factor that had to go right was a solid income. Until this point, I had to sell old parts from my other hobby of racing RC cars, as well as do jobs like landscaping for my uncle in the summer. While those gave sporadic bursts of income, they would quickly be consumed by the
Combat Zone - May 17_Combat Zone - Aug 15.qxd 4/4/2017 12:29 AM Page 29
endless number of things that needed to be replaced. For this to work, I would need a set flow of income so I could both build the robot and buy the spares because — and I can’t stress this enough — you need to bring spares for combat. As any veteran builder can attest to, you always need spares that you can quickly swap into the robot. So, to be realistic, this robot in its base form may be $200, but the overall cost could be up to $300 for spares. Fortunately for me, I was hired by Terrapin Works (https://terrapin works.umd.edu/) which is essentially the hub of manufacturing places at the University of Maryland where I have access to 3D printers, machine shops, etc. With solid income, a place to work on, and the tools to cut it, I was ready to go. To begin this process, I started to think of a design for this new robot. My Antweight robot, Ferocious Mk. IV (Figure 2) did well at Franklin Institute 2016, where it took second place in its division. From this design, I rebuilt Ferocious into its Mk. V version (Figure 3) as the first test of learning how to use a mill (I may write an article about its revision at another time). From its success, I decided to make this new 12 lb robot a near scale replica of Ferocious, but scaled up four times (Figure 4). Additionally, I decided to play off the name theme of Ferocious, combined with the fact this robot will be a rough first attempt at a class I was unfamiliar with. I decided to name it “Atrocious.” While still in the designing stage, I decided to ask around to fellow builders and get a better idea as to what a 12 lb robot would be like since I was unfamiliar with this class. Being able to ask other builders for guidance is a fundamental strength of the sport, and is what allows relatively newer builders like myself to a class to grow and continue the progress of developing.
Figure 4. CAD file for Atrocious.
Figure 5. Final CAD design.
After this research, I began the process of modifying and adding more depth to the design by introducing motors, electronics, and even a model of the chain in the Autodesk Inventor CAD assembly. (Figure 5). As the final design comes together (Figure 6), the process to assemble the first parts begins! Stay tuned to SERVO Magazine and look out for Part 2. SV
Wanna learn more about electronics to help you in your robot hobby? Check out the book selection at
store.nutsvolts.com SERVO 05.2017
29
Combat Zone - May 17_Combat Zone - Aug 15.qxd 4/4/2017 12:29 AM Page 30
Kinetic Combat Art: Building for Beauty hile I have a master’s degree in English literature from a respected institution that very much regrets that decision, I swear by the following: Samuel Taylor Coleridge never wrote poetry with lines as beautiful as Beta: the 250 pound hammer robot built by Jon Reid, which appeared in season 2 of BattleBots™. It is a masterwork of engineering and material science, and evidence that an individual with a well-equipped shop can create almost anything. I — by way of comparison — own a bandsaw, a cordless drill, and a degree in a field that With one ounce to spare, the world is my very suggests I struggle to calculate small oyster. a 20% tip, but I still coveted a Beta of my own. Specifically, I wanted one 1/250th the size, or just large enough to fight in the one pound (Antweight) class. Could it be done? I had to find out, and as a consequence, this article is going to focus on something of a peculiar method of designing and building a robot: one centered around aesthetics. As this bot was intended to be more of a homage than a competitive death machine (though the latter was certainly in the list of desirable traits), I was immediately faced with an You see 3/4 chair leg tips. I see rubber wheels at artistic quandary. What made a cost of fifty cents each. They just need a little Beta, Beta? trimming down on the bench grinder. I came up with three fundamentals that (to my way of 1. Pyramidal shape with the thinking) had to be incorporated into hammer pivot at the apex. my micro-machine version of the bot. 2. Kinked hammer with a In order of importance, they were: relatively long arm.
● by Aaron Nielsen
W
30
SERVO 05.2017
I do declare – would you mind waitin’ outside until I have my galvanized skirt on?
3. One-piece metal protective skirt. On the surface, addressing the shape problem should have been easy. However, one of the intrinsic challenges of building a hammer bot is a material science problem — the need for an extremely rigid chassis. Most of the time (courtesy of my lack of tooling), I build using soft plastic, aluminum, and enough globs of hot glue that it can be considered structural. This means my bots are floppy and prone to getting chewed up, but at least they don’t explode when my opponent (Joe Doom-Spinner) swoops in with some five-bazillion RPM
Combat Zone - May 17_Combat Zone - Aug 15.qxd 4/4/2017 12:29 AM Page 31
Let’s not dwell on how any five year old could put my scissor skills to shame.
These are the parts that make up the hammerhead, including the “biggest, scariest, most useless wood screw” featured prominently in the article.
stiff with only a couple of strategic cross supports. Step 2 was the kinked hammer. Technically speaking, this shape isn’t just an aesthetic decision but also lets Beta vertically caress things when it’s some ludicrous distance in the air, which apparently happens often due to the insane power of its weapon motor. I’m under no illusion my robot will ever see air time — unless Joe Doom-Spinner of a few paragraphs ago has something to do with it — but it’s one of Beta’s more recognizable features. So, in this case, I opted to replicate it in low-density polyethylene (LDPE — that soft plastic I mentioned earlier) for two reasons:
1. To make my homage bot look appropriately to scale, my hammer arm needed to be almost seven inches long. That’s a huge chunk of nonstructural material for a one pound robot, and plastic happens to be light. 2. Hammer bots have a bad track record versus robots with spinning weapons. Spinning weapons tend to rip the hammer aspect off, leaving said bot defenseless. (Offense-less? Definitely “less” either way.) This build’s victory chances are already in the slim to non-existent range, so this is my feeble attempt to maximize them by making my weapon difficult to amputate.
spinning weapon. That wouldn’t fly with the hammer, and the challenge is doubled when one realizes you can’t install a traditional top plate on a hammer bot for the same reason that it’s impossible to hold an umbrella and swing a sledgehammer overhead. Try it, and your umbrella (the “top armor” in this scenario) is going to have a bad time. The solution turned out to be the same material used to contain these bots in an arena: polycarbonate. In this case, the specific solution was 1/8th inch polycarbonate, which is fairly agreeable to both the bandsaw and the cordless drill. To further add to rigidity, I designed the vertical portions of the pyramid to slot into the base. Lacking a precise way to cut slots, I ended up freehanding them with a Dremel tool. Frankly, it looks a little like a deranged beaver chewed ovals into the base plate of my robot, but it’s nothing a robust blob of I measure my robot’s height in fluid ounces. This one is a structural hot glue won’t fix. 16 oz. Better still, it’s surprisingly
Using plastic also made building the hammerhead easy: two thicker pieces of LDPE and the biggest, scariest, most useless wood screw I could find in the garage. I drilled the largest pilot hole imaginable, torqued in the screw (sandwiching the hammer shaft between the two large pieces of LDPE), and sharpened it on a bench grinder. The result was surprisingly menacing for an adorable three ounce hammer. The third item on the list SERVO 05.2017
31
Combat Zone - May 17_Combat Zone - Aug 15.qxd 4/4/2017 12:29 AM Page 32
The hammer arm was actually made of two pieces of 1/4” LDPE that are bent together where they join with the hammerhead. The only reason for this is weird spacing issues surrounding the center channel of the robot.
of aesthetic must-haves was the metal protective skirt — an item I worried I might have to weave from gossamer and morning dew in order to make weight. However, I was spared from beseeching the Fairy Queen for help when the postage scale — arguably the altar and chief deity of small bot building — indicated I had weight enough for 1/16th inch galvanized steel. Before we move on, here’s some Q&A that will help make sense of this decision: Question: What advantages does galvanized steel offer a combat robot? Answer: It’s corrosion resistant. Question: Is that quality actually a useful trait in this context? Answer: Not in the slightest. Question: So, why did you use it? Answer: Because I found it in my garage in the vicinity of the biggest, scariest, most useless wood screw I mentioned earlier. I have no idea why I own either. While identifying material for the metal skirt may have been easy, if for no better reason than I am cheap and not terribly fussy, getting the skirt into a useful shape turned out to be the
32
SERVO 05.2017
Check out the light burst on that galvanized metal skirt and try to tell me this isn’t beautiful.
chief challenge of this build. In order to more fully emulate the source material, I determined the skirt was going to be made from one piece and have no screws in the front. This second point was to partially thwart spinner bots who would be liable to catch any screws with their spinny bits and put my creation into low orbit. However, doing so required both cutting and bending the metal at relatively precise angles. My initial attempts resulted in the left and right sides of the skirt being so high in the air that it looked like it had slammed a Red Bull and gotten metal wings out of the bargain. Frustrated and desperate, I turned to the robot builder’s secret weapons: computer-aided drafting (CAD) and CNC machines. I then remembered I majored in English and have access to neither of those things — let alone any clue how to utilize them — and turned to the robot builder's other secret weapons: scissors and poster board. In case anyone wants to replicate this (because it sort of worked), I cut the poster board into three strips for the three defended sides of my robot. I then commenced trimming the corners and taping them together until I had a shape that seemed like it would fold into the desired wedge shape.
Finally, I put this shape on my sheet of galvanized steel, traced the outline, and engaged the bandsaw, being mindful to end my cuts with the same number of fingers with which I started. I bent it into shape along the lines I had marked prior to cutting, and it ended up flush enough to the ground to be considered a legitimate defensive metal skirt. I fastened it to the frame with wood screws into some small 1/4 inch LDPE pieces made specifically for that purpose. With this done, voilà! I had a robot that looked sort of like a tiny ineffectual version of Beta. During all of this, electrical and mechanical components were far lower on my list of concerns while I dealt with making the bot look like the source material. As one can no doubt imagine, this did introduce some problems I had to address late in the build. Originally, I intended to use a small ~800 RPM gear motor from eBay to swing the hammer. Since the hammer arm was so light, my assumption was that I could get away with gearing the hammer up (at about 1:4) to increase the speed of the swing. Long story short, a tiny made-inChina motor is not up for swinging even a small amount of weight when that weight is positioned at the far end of a seven inch lever. Undeterred, I ended up
Combat Zone - May 17_Combat Zone - Aug 15.qxd 4/4/2017 12:29 AM Page 33
shoehorning a motor normally used to drive Beetleweights (a B16 600 RPM gear motor) and running it to the hammer at a better but still unreasonable 1:1 ratio. To test whether this setup would be feasible, I used a nine volt battery and clip leads to see if it would swing the hammer. It did; confirming that it will swing fine at 11.1 volts when I installed the tiny lithium polymer battery. The drive motors are the same ~800 RPM motors that were
inadequate for swinging the hammer. In that context, two of them propel the bot just fine, though it will certainly never be dubbed Torque-zilla. Because weight was at a premium, my speed control options were limited. To control the comparatively goliath weapon motor, I opted for a Beetleweight sized BotBitz 10 amp speed control, which should theoretically stand up to the rigors of being pushed to stall on almost every swing. For drive control, Endgame
Why Visit Canada ... ost combat robot builders have probably heard of FingerTech Robotics. They are the ones who’ve come out with Silver Sparks and Tiny ESCs (amongst others) which are staples of the combat scene. They’ve sponsored countless events and the owner, Kurtis Wanner has traveled to several events to compete with his personal bots. What you may not know, however, is that FingerTech is based in the middle of Canada (literally) and that the Canadians have a vibrant (and vicious) combat scene waiting for foreigners to invade. Last year, I had the (mis)fortune to be one such foreign invader. While I’ve known Kurtis for years, I’ve always put off his invites to visit what I thought would be the cold, frozen, barren tundra of Canada. To be perfectly honest, I didn’t think that Kilobots and their Canadian National Championship would be very competitive for a guy who’s been building on various scales for the past 15 years. (Did I also mention that I thought Canada was a cold, frozen, barren tundra full of sasquatch and Mounties riding moose?) This past September, I finally relented and decided it’d be a fun
Robotics recently unveiled a DESC (dual electronic speed control) capable of mixing two brushed motors; it was crazy cheap and about the size of a postage stamp, so in the bot it went. It drives. It swings. And most importantly, it looks like a miniature Beta, so I’m calling this personal challenge a success. It’s also proof (or so I like to think) that you don’t need a lot of tools or an engineering background to build a little piece of kinetic combat art. SV
● by Paul Grata
M
“Sploofs” as Kurtis calls them. Fluffy pillows is what I prefer. And you can’t beat that sky!
little adventure to visit this far-off land (I’m from South Florida). Plus, Kurtis promised a good time and a spot on his floor next to his fluffy Bernese mountain dogs, so I couldn’t possibly say no! I hopped on a flight and landed in perhaps the smallest airport I’ve ever been in, prepared to invade these frozen lands with a robot I literally built in a week’s time. The Canadians wouldn’t know what hit them! With my invasion force of one, I quickly discovered I was woefully
unprepared. Not only was Saskatoon not a frozen wasteland in September, but everyone was also not at all prepared to merely allow me to win simply “because they were Canadian.” Apparently, I was in for a real fight, against real robots, and an arena that was much nastier than I’d thought something created north of the border could ever be. My first shock was the lack of a frozen wasteland. While chilly for a southerner such as myself, the weather was amazingly perfect: lows SERVO 05.2017
33
Combat Zone - May 17_Combat Zone - Aug 15.qxd 4/4/2017 12:29 AM Page 34
The reason I was awarded the Golden Grinder Award. My bot is the one missing, well, everything …
The dropouts came into play many times.
maybe touching the 40s, and a very pleasant 60s during the day. Not a sasquatch in sight and certainly no need for that one snow jacket thing I own that never sees the light of day! The second shock was the competition itself. When Kurtis told me this was the National
34
SERVO 05.2017
Championship, I thought it meant simply that he was the only game in town and thus could call it whatever he wanted. I knew this was a foolish thought once I walked into the venue and realized the size of the host event (a comicon taking up their sizeable convention center), and saw the space
dedicated solely to their event. I’ve been to several events before, and while I admit this wasn’t the size of DragonCon, I was still impressed with the organization and thought put into the arena setup and pit layout. This was going to have a solid number of robots, a great audience experience, and a vicious arena to contend with. The final shock — because there’s always that third gasp — were the prizes. FingerTech was one of the sponsors of this event along with Robot Marketplace, Big Blue Saw, ServoCity, Pololu, SERVO Magazine, BotBitz, and Equals Zero, but the top prize for Beetles was a round trip flight donated by RoboGames to attend RoboGames. Now that is a prize worth fighting for! (Also worth noting was a prize for what I like to call “The Worse Robot Award.” In Canadian, that translates to “The Golden Grinder Award,” given to the robot that breaks the most often or most spectacularly.) I’ll admit that I didn’t take great care in building my robot for the competition. I normally run with a 150g robot and anything else I get built is a bonus. However, Kilobots was only running Ants (1 lbers) and Beetles (3 lbers). I decided my best course of action was to convert a retired 150g design into an Ant and have fun with it. How often do you get to travel to the middle of Canada and hang out with other roboteers, after all?
Combat Zone - May 17_Combat Zone - Aug 15.qxd 4/4/2017 12:29 AM Page 35
Plus, it was a really easy design which essentially consisted of fourwheel drive and a direct mounted drum. I didn’t have much of a chance to talk to the other builders prior to the competition starting, but once things were rolling I was able to mingle and found everyone to be incredibly nice. That shouldn’t have surprised me. However, the freedom with which they offered me help while also contributing to running the event and running their own robots did. It isn’t often that you find an event which has dedicated people taking care of every aspect of it (safety, announcing, brackets, arena maintenance, etc.) while also fighting their own robots! I mentioned before that the competition was vicious. This may be an understatement. The robots I encountered (and many more I didn’t fight) constituted by far some of the best competition I’ve seen at a single event. There were multiple roofers (my personal term for robots hitting the roof), as well as several ejections from the inner arena (the beauty of this particular arena was that two sides had knock-outs and each driver had the option of opening the door on their side; this didn’t stop some robots from flying over the barrier). The arena hazards — which consisted of sprockets with knockers welded to them — took out several other robots (and were subsequently taken out themselves), including my wheels and weapon on multiple occasions. It was like the last grasp of summer before the long cold winter settles in and all the competitors knew it. Everything was left in the arena and everyone went for broke. My robot somehow managed to squeak together a 4-2 record after losing my first match and wandering through the loser’s bracket. Along the way, I lost all my wheels and two weapon assemblies.
My 1 lb robot, thrown together in a week.
Given all the carnage and the fact Me graciously accepting the that I kept the little guy going, I was Golden Grinder Award. awarded the Golden Grinder Award, which is taken very seriously and is an immense honor to receive! I celebrated my victory at the traditional builder’s dinner over adult milkshakes and good food (including poutine, which was surprisingly good considering I still have no idea what it is), and amongst new friends eager for me to return to defend my grinder award. Apparently, my robot wasn’t challenging enough That big one will be mine this year! for them, so this September (17th-18th) I intend to Cup winners (*wink*). SV bring something considerably tougher to beat. My name on their Stanley Cup-esque trophy will look very nice amongst the former Kilobots SERVO 05.2017
35
Bannink - Tormach article - May 17_Blank Rough SV.qxd 4/4/2017 12:32 AM Page 36
Bridge Education and Business: Six Ways to Help Guarantee a Successful STEM Event
By Jennifer Bannink, Tormach Machinist and STEM Advocate
I love STEM (Science, Technology, Engineering, and Math) events. Students huddling around chemistry experiments, buzzing machines, and the buzzing of learning makes me giddy; all of these bright young minds are going to be our future, and, with our help, our legacy as STEM professionals. 36
SERVO 05.2017
T
he most recent event I got to check out was in Hudson, WI — my home prior to moving to Waunakee to work at Tormach. This is the first year they’ve let the boys come, since the event’s primary goal is to encourage girls to pursue STEM, but guys said they wanted to join in on the fun. Northern Wisconsin is unique in that the STEM community is incredibly united, providing a great example of what to do for success. If your school or community organization is looking to put together an inspiring event like this, here’s what you need to know ...
Connect with Everyone in Town What makes STEM events successful is including everyone in town: from the local building contractors to the DNR agent to a manufacturer. This way, students can see
Bannink - Tormach article - May 17_Blank Rough SV.qxd 4/4/2017 12:32 AM Page 37
To post comments on this article, go to www.servomagazine.com/index.php/magazine/issue/2017/05.
all the different STEM-related careers in their community and put faces to jobs they’ve heard about. When kids hear I’m a machinist while we’re watching some chips fly, their eyes get wide as they say ‘my dad’s a machinist’ because it suddenly clicks in their head exactly what their dad does at work. It also means they get to see the diverse workforce in their area.
Send Out Event Information Early — but Not Too Early I’ve shown up to an event with a couple days’ notice (luckily a babysitter was available), but I would have been more prepared with more time. Three months is perfect for me when it comes to preparing for a show, so I can get all the giveaways ready, a machine reserved for travel, and all the other travel arrangements made. If you give too much notice, it might get pushed aside, or the technology and information may become dated.
Reserve a Big Space with Lots of Power What makes STEM careers interesting is all the toys you get to play with — machines, microscopes, computers, and the list continues. These all require power, so make sure your facility has lots of power strips, space, and Internet available so you can properly show off all the cool things we do. Some people will bring spares, but we all end up sparring for that last socket.
Tell Businesses What to Be Prepared For Most times, presenters like myself get the general ‘come to the event’ email, but we’re not told much more. Make sure you tell us what type of space is available; if WiFi is available; what type and the age of the crowd you expect; if you’re doing swag bags so we can contribute; and all of those smaller event details. One way to do this is to share a potential packing list to the companies which could include: business cards, a TV to play video, pamphlets, an interactive activity, and some type of swag. One local business brought in animals for the students to meet. This was a great idea the kids loved!
hosting structure building competitions, and a veterinarian with some animal guests for students to meet. Another idea is to make meeting the presenters a game. Some schools do passports, where students have to go around to all the booths and get a stamp so they could be entered in a drawing. Another school made all the presenters baseball trading cards with their picture and career description on them. This is a great take-away for the kids, but it does require some planning and information from the presenters.
Make It Interactive
Invite the Parents
Kids sit in class all day, so this is a great opportunity to get them some hands-on experience with STEM. I always talk them through engraving on a machine so they can walk away with something like a book mark or keychain, and the pride of knowing it was something they made. Others have done similar things; I’ve seen a chemistry professor having students do experiments, engineers
Getting kids excited about a career in STEM is the first step, but parents foster that excitement and passion, so sharing it with them is equally important. One great example I’ve seen is an event partnered with local businesses and colleges, so if parents had questions about what STEM training programs looked like, they could ask the professors and instructors. SV SERVO 05.2017
37
Prochnow - Goliath critter chaser - May 17_Blank Rough SV.qxd 4/4/2017 12:33 AM Page 38
Goliath 3: Critter Chaser Keep your garden varmint-free with this modified Wi-Fi controlled model replica of a historic tank robot.
Prochnow - Goliath critter chaser - May 17_Blank Rough SV.qxd 4/4/2017 12:33 AM Page 39
By Dave Prochnow
To post comments on this article and find any associated files and/or downloads, go to www.servomagazine.com/index.php/magazine/issue/2017/05.
ong-time readers of SERVO Magazine know that the best robot historical information in the industry can be found in Tom Carroll’s monthly column, Then & Now. Each month is packed with little known facts and bits of robot trivia that help to enlighten you about the starts, stops, and sputters dotting the landscape that robots have traveled over the last 97 years of existence. And so it was in the March 2017 issue when a small blurb about a German tracked mine robot used during World War II caught my eye. Named Goliath, this five foot long tracked vehicle was controlled via a simple joystick. Coupling the operator to the Goliath was a three-strand wire control cable that enabled the mine to be driven forward and detonate its self-contained high explosive charge. AH-HA! That’s what I’ll use to keep those “wascally wabbits” out of my garden! No, I’m not going to detonate an explosive charge. Rather, I’m going to use a tracked robot to scare those varmints outta here. Granted, most of us have driven robot tanks around our yards performing various duties, but in the context of chasing animals away from your property, this is going to take a different kind of vehicle. First of all, this robot is going to have to be wirelessly controlled. Running a robot controlled via a wire cable around the yard is a surefire recipe for getting tangled up in some brush and making your motorized weapon more of a spectacle for entertaining your furry pests rather than chasing them away. Second of all, this robot tank is going to have to be fast-moving enough to make the invading animals feel threatened. Likewise, if push comes to shove, this tank must be rugged enough to take a bump or two, as well as deal out a little push/shove of its own when the chase turns physical. It could even turn confrontational — one of my prototypes was clobbered by a black rat snake that refused to yield any ground to my poor little helpless tank. It must’ve looked like a mouse or mole to that mean snake. Finally, our nimble tank can’t get bogged down with a battery-draining motor system. You could wind up as the embarrassment of the whole cabbage patch if — during the pursuit of your prey — the tank’s battery conks out. I can’t begin to count how many times my prototypes suffered from being “out of gas” trying to race a lazy raccoon around the yard. The raccoon always won. This is where the Goliath robot tank concept comes into play.
L
Enter Goliath 3 Returning again to Tom Carroll’s March column, we learned that the original Goliath weapons were manufactured in two variants: electric motor powered and gasoline engine powered. Presuming that these two models
Figure 1. Out with the old, in with the new 3D top hull.
could’ve been sequentially numbered (e.g., Goliath 1 and Goliath 2), that would make our current robot tank Goliath 3. As such, our new fangled model will have several exciting features: dual motors, battery power, and — most importantly — Wi-Fi control. Not just any Wi-Fi control, however. This Wi-Fi control acts as a node for serving a web page that can be used for controlling Goliath 3 from a browser. Finally, we’ll have to add a couple of 3D printed parts to our tank chassis. The resulting critter chasing tank will be a “near-scale” interpretation of the original Goliath tank mine robot. Well, wouldn’t a commercial motorized tank model kit work just as well? Actually, a kit is used as a “donor” for Goliath 3. Basically, only the lower hull, drive wheels, and treads will be retained from the kit tank. A new top hull will be created with a 3D printer as shown in Figure 1. This newly made top hull is where the near-scale interpretation of an original Goliath tank is derived. Plus, the added benefit from aping the look of the original tank is the increased inside capacity of the Goliath 3 for holding the gearbox, guiding electronics, and battery. You can download these 3D printer part files from this article’s link. While any 1/48th scale model tank kit should work for building a Goliath 3, I used an M60 A1 US Army tank model manufactured by Academy Plastic Model Company SERVO 05.2017
39
Prochnow - Goliath critter chaser - May 17_Blank Rough SV.qxd 4/4/2017 12:33 AM Page 40
with Wi-Fi leap to mind for use inside this robot tank, space and power are commodities that are at a premium. There are a couple of diminutive powerhouses that you can use for this project. The Arduino MKR1000 (Figure 4) and Intel Edison (Figure 5) both have Figure 3. The TB6612FNG a Wi-Fi firmware that dual-motor driver by can be easily SparkFun Electronics works great with Arduino projects. programmed and will safely fit inside a 1/48th scale tank model lower hull. NOTE: As this article was going to press, Figure 2. Model kits with a pre-built gearbox make robot building a snap. the Raspberry Pi Foundation had just released a new Raspberry Pi Zero W V. 1.1 with Wi-Fi that could be small enough for use in this project, too. (Model #1305 of the Mini Tank Series No. 5). This model While the Intel Edison is a well-known Internet of was last manufactured about 15 years ago and could be Things (IoT) power plant, the tiny Arduino MKR1000 is a hard to find. Try shopping at Scale Hobbyist, Squadron, and lesser known Arduino product that is equally capable of Tower Hobbies for a suitable kit. handling most IoT chores. One big separation between The benefit of using a motorized model tank kit is that these two IoT champs, however, is that the MKR1000 they include a prebuilt motor gearbox (see Figure 2). doesn’t require a separate “motherboard” or base board for Therefore, all you need to bring to this dance is your programming and interfacing with input/output (I/O) pins. preferred embedded microcontroller and battery pack. This requirement is a Adding the 3D printed mandatory extra that is parts will give your needed with the Edison. Goliath 3 enough interior The MKR1000 is built breathing room for upon an Atmel holding everything SmartConnect wireless securely in place as you ATSAMW25 System-ongo charging into battle — Chip (SoC) with a 32-bit bunny battle, that is. Cortex-M0+ SAMD21 and Wi-Fi, along with an onboard printed circuit Figure 4. The Arduino MKR1000 Wi-Fi board (PCB) antenna. An microcontroller. additional LiPo battery connector and onboard The parts list for battery charging circuit building Goliath 3 looks round out the feature set deceptively simple: of this compelling microcontroller, motor Arduino. driver (Figure 3), and There are two battery. Additionally, you important caveats to can throw in a couple of remember when using LEDs for making your the MKR1000. First and critter chaser more visible foremost, the MKR1000 is in low light situations. a 3.3V Arduino. Unlike While several Figure 5. The Intel Edison IoT microcontroller most of the other microcontrollers equipped computer.
Building a Better Goliath
40
SERVO 05.2017
Prochnow - Goliath critter chaser - May 17_Blank Rough SV.qxd 4/4/2017 12:33 AM Page 41
members of the Arduino product line, this microcontroller will require a bidirectional voltage level shifter for connecting to any of its I/O pins. Conversely, the VIN pin for the MKR1000 requires a 5V supply for powering the board. Keep this power differential in mind when designing your Goliath 3 circuit. The second point to remember is that the MKR1000 can be powered directly by a LiPo battery. The minimum current for this connecting battery, however, must be greater than 700 mAh. Furthermore, the maximum current for a usable LiPo battery is 1,400 mAh. This upper limit is due to the charging circuitry that is built into the MKR1000, which is only able to supply a preset charging current of 350 mAh for four hours; hence, 1,400 mAh. An observation about this LiPo battery interface on the MKR1000 is that it doesn’t connect to the line of LiPo batteries sold by SparkFun Electronics (SFE). While the Arduino does have a two-pin JST PH connector, this jack just doesn’t seem to want to play ball with my SFE batteries. This difficulty could be attributed to an early model MKR1000 with an oddball JST connector. Newer MKR1000 boards might be compatible.
The Secret Sauce Code No matter which microcontroller route you choose to follow, the real power will be found in the software that you program into your Goliath 3. The focal point of this programming prowess lies in the Wi-Fi code that is able to serve a credible user interface (UI) on a connected web browser. On the Intel Edison, the code of choice is JavaScript and the programming environment is the Intel XDK. Unlike the MKR1000, however, the Edison is the server of the web UI. Therefore, the code is very simple and straightforward (this is a code snippet): var http = require(‘http’); var port = 4242; var server = http.createServer(function(req, res) { res.writeHead(200); res.write(“ Goliath 3 ”); res.end(); }); socket.on(‘forward’, function() { motor = motor ? 0 : 1; motorPin.write(motor); });
Now with the MKR1000, the programming language is with the Arduino IDE (integrated development environment) and the microcontroller acts as a node on a Wi-Fi server (like your home network). The result might look the same on a web browser, but the method of serving the UI is different. Here is what the more complicated Arduino code snippet would look like: char ssid[] = NET_SSID; char pass[] = NET_PWD; int keyIndex = 0; char mdnsName[] = “Goliath3”; int status = WL_IDLE_STATUS; WiFiServer server(80); while ( status != WL_CONNECTED) { Serial.print(“Attempting to connect to WiFi network: “); Serial.println(ssid); status = WiFi.begin(ssid, pass); WiFiClient client = server.available(); if (c == ‘\n’ && currentLineIsBlank) { // send a standard http response // header client.println(“HTTP/1.1 200 OK”); client.println(“Content-Type: text/html”); client.println(“Connection: close”); // the connection will be closed // after completion of the response //client.println(“Refresh: 5”); // refresh the page automatically // every 5 sec client.println(); client.println(“”); client.println(“Goliath 3”); client.println(“