Tuesday, October 14, 2014

How to Build a Robot

Prototyping Pawly - Mechanical Design

From the Top

So you want to make a robot? It is going to involve a few significant constraints and will likely require multiple design iterations. Here we go!

Sketch it Out

A basic design for Pawly came out of Startup Weekend. It was a simple 4 wheeled skid steer vehicle that is about 30cm long and 30cm wide. Most robots are essentially boxes with wheels and the original Pawly was no exception. Having a mostly rectangular shape maximizes interior volume to mount components like computers, batteries and pet treats.

Some of the ideas that form the basis of the original design include:
  1. A four wheel vehicle fits with most people's conceptual design of how a mobile platform might work. People can associate it with a car.
  2. Skid steer or 'tank drive' turning can be implemented easily and also fits with most people's conceptual model of how a tank turns. It may not be ideal for indoor operation or future robot navigation due to wheel slippage during turning but this is outweighed by the benefits
  3. A rounded front provides a signifier of the front of the vehicle. It also provides a natural enclosure for a camera to tilt up and down while remaining protected from animals.
  4. Rounded wheels prevent the vehicle from becoming stuck on its side.
  5. A top-bottom symmetrical vehicle with wheel clearance on each side prevent the vehicle from becoming stuck upside down.
  6. External lighting strips signify there is a robot in house with an active camera being remotely controlled
The original Pawly from Startup weekend Toronto didn't look exactly like the computer model, mostly due to time and materials constraints.

Flesh it Out

The next step was to build an actual prototype to begin proving the concept that having a mobile robot through which you can interact with your pet at home will work and have market value. This time we had about 2 months until we were due to present at the Launch conference in San Francisco.

Here is what we were thinking about the next prototype
  • It should remain big enough not to be eaten by a dog
  • Should drive over most indoor surfaces
  • Should have a mounting surface to transport accessories
  • Should have a working camera and tilt mechanism
  • Should be manufacturable with a 3D printer and low cost off the shelf parts such as motors and batteries
  • Should have considerations for assembly, maintenance
  • Should have considerations for a design for high volume production in the future

With the sizing and payload requirements generally fixed, we could begin calculating the required motor power under various operating scenarios. We can do this by estimating rolling resistance on various surfaces and power and torque required for target inclines and accelerations and during turning. Fortunately, from our Engineering team's work at Clearpath Robotics on platforms such as the Husky UGV many of these parameters and models were readily available. More on these calculations in another post.

Driving much faster than 1 m/s through a remote camera would likely prove difficult for most users so that is where we set the target speed limit.

Just Move

The next step was determining the drive train configuration. We required that all 4 wheels be powered so our choices were 4 independent motors and motor controllers or 2 motors with power transmission between the wheels on each side. After comparing the power, torque and motor controller requirements under each scenario and doing a brief search of off the shelf motors that would meet those requirements and their costs, we decided to pursue a 2 motor configuration based on the premise that extra motors and controllers would significantly increase the cost. Given the requirement for low speed, high torque operation, DC gear-motors were our best bet as they are readily available from many Chinese suppliers at low cost. We found our first sets of gear motors on Ali-Express and Ebay.

Now we had to design a power transmission system to power both wheels. Some options included:

Internal Belt Drive System GT2 pulleys and belts would be readily available from 3D printer markets at low cost Would be difficult to assemble and maintain
External Belt Drive (Tank Treads) Pawly becomes a tank with treads Friction goes up and more power is required for driving and turning. We didn't want Pawly to be a tank.
Internal gear drive • Efficient mechanical power transfer
• Gears available from hobby world, also easy to rapid prototype.
• Large use of internal space
• Many moving parts and components required

Screws at Last

For the first prototype we chose the gear drive system based on the ease of prototyping. We ordered shafts, bearings, bushings, motors and wheel adapters from various vendors on Ali-Express and began 3D printing gears and other drive-train components shown below. M3 screws and nuts were used to set the gears on the drive shafts. This worked but required constant re-tightening and will likely not make up part of the final design. 2 bearings support each drive shaft between the yellow mounting brackets and the black vehicle wall providing a good deal of impact resistance.

Nice Body

The body of Pawly was designed to be 3D printed in sections that would fit into a Makerbot or Tinkerines Ditto+ printer and then attached together with Hex-Cap screws. To access the inside, one of the top panels can be removed with 2 hex cap screws. This also doubles as an accessory mounting panel where prototype treat dispensers can be bolted to the surface. All the 3D printed parts required to make a Pawly are shown in the following picture. A Tinkerines Ditto + produced high quality prints that fit together nicely. All the holes were tapped for M3 and M4 screw hardware and the first set of working prototypes were assembled into their finished working states.

Going Places

In the next posts in our series on Prototyping Pawly we will talk about the electrical design of the prototype system and how commands from a smart phone can make the platform move using the Robot Operating System. We will also talk about what changes we've made to our current Pawly Prototype V3 from the V2 system shown above. The new version uses an entirely different drive-train and we will explain why.
It looks like the dogs are happy so far.

Wednesday, October 8, 2014

Pawly @ HackerNest

On July 14, 2014, Pawly demoed at the HackerNest Kitchener-Waterloo July Tech Social, which took place at Clearpath Robotics.

HackerNest is an international nonprofit originating in Toronto that helps build tech communities around the world by nurturing local tech ecosystems with social events.

Clearpath Robotics is a robotics company based in Kitchener that builds autonomous robots to be used around the world and for a variety of tasks including land, sea, air and lab.

Pawly was able to interact with some of the Clearpath robots during the Tech Social. One of these was a Willow Garage PR2 robot, which is a research and development robot sold primarily to universities. The features of the Willow Garage PR2 robot include omnidirectional wheels, and 2 arms with grippers while using 2 LIDAR lasers, stereo cameras and the Microsoft Kinect. And yes, Pawly and PR2 became best of friends.

The coolest part at the event was when Pawly’s Robotics Engineer, Robbie Edwards, was able to hack an X-box game-pad controller to control our very own Pawly. Guests enjoyed interacting with Pawly at the event by using the game-pad controller to control its movements. Mmm…. What are your thoughts… would Pawly be cooler to control via a game-pad controller or via your smartphone?

Thursday, October 2, 2014

Developers Kit

Hackers Delight

With the Pawly Dev Kit you get a programmable robot that allows you to focus on the problems you actually want to solve. The necessary plumbing has been expertly done, and now you can spend your valuable time on the fun stuff.


  • Connect to and control your Pawly remotely and securely without having to worry about difficult NAT, STUN servers, or UDP Hole Punching.
  • Low latency live video streaming and image capture--locally for image processing, or over the internet.
  • Versatile API for driving pawly around.
  • Share your work with other Pawly, Raspberry Pi, or ROS users.

Your Solutions

Do you want your robot to:

  • Respond to your voice? Use voice recognition capabilities to teach it tricks.
  • Greet your friends? Use the facial recognition package to offer them a drink.
  • Send you a picture when it detects motion? Use the motion guide to let you know when your dog wakes up.
  • Be controlled with a joystick?  Add a joystick dongle to open USB port and you can drive it around outside like a remote control car--no internet connection required!

Technical Specifications

Size 14 x 23 x 7 cm / 5.5 x 9 x 3 in
Weight 4.0 kg / 8.8 lb
Battery Run Time: 3h
Standby: 2 days
Wireless charger
WiFi Dongle 300Mbps, AP mode (hotspot) supported
Available Power 5V 1Ah
Extra Accessory Open USB Port
Extra Motor Open Servo Output
Local Video HDMI Output (Dev kit only)
SBC Raspberry Pi
OS Admin Linux root access (Dev kit only)
Control Software Robot Operating System
Camera Software MAL and picamera API’s
Driving Software Standard ROS and Pawly API’s

How To Get a Dev Kit

To get your Dev Kit just buy a Pawly from our Indiegogo campaign here and include “Make it a Dev Kit” in the comment. Some hardware assembly will be required--just the way you wanted it! :)