Motor Control Systems – Bode Plot & Stability

by on January 26, 2017

Set point feedback controller

What is a control system? A control system alters the future state of its system to a more desirable outcome. We often work with feedback control systems (also called closed-loop control), where the result of the command is fed back into the control system. In particular we are looking for the error between the command […]

Machine Learning Methods

by on January 3, 2017

Decision tree

There are many terms that are thrown around about machine learning. But what do they all mean? and what are the differences? Lets start with machine learning. Machine learning “gives computers the ability to learn without being explicitly programmed” (Arthur Samuel, 1959). Machine learning is a large and complex field with many algorithms that mostly […]

Perception in Smoke, Dust or Fog

by on December 21, 2016

Robot Operating in Smoke Fog Dust

I recently had the fortune to attend a talk titled Multi-Modal Data for Perception in Smoke-Filled Underground Mines by Joe Bartels. It was an interesting talk about pushing sensor technology into difficult environments that can have smoke, dust or fog . The following are notes that I took during the talk, as always I add […]

How to Mount an External Removable Hard Drive on a Robot

by on December 7, 2016

fstab options for mounting drive

We often want to add an external hard drive to our robots in order to have a dedicated drive for data collection. Having the dedicated drive lets the primary drive remain uncluttered, have less wear-and-tear, split logging between drives for performance, and potentially be a larger spinning disk (as opposed to an expensive SSD). It […]

Bearings, Bushings & The Engineering Commons

by on December 2, 2016

bearings-homepage

I listen to several podcasts, including The Amp Hour, Embedded, and the Engineering Commons. A recent (depends when you read this) Engineering Commons podcast was all about bearings. I have been wanting to write a bearings post for a while so I am using their podcast (with permission) as a basis for writing this post. […]

Ford Self Driving Car

by on October 14, 2016

Ford self driving car

Today I had the chance to see a Ford Fusion self driving car. With all of the recent news it is easy to forget that Google and Uber are not the only players in this game. Most large auto manufacturers have a self driving car program, including Ford. Ford is already testing their self driving […]

Tether’s: Should Your Robot Have One?

by on September 20, 2016

tether

Some people swear that all tethers are bad. Some people recommend attaching a tether to robots in order to provide power (to save the mass and volume of the batteries), for reliable fast communications, transfer of pressure or fluid, to track a robots position, or as a safety harness (in case the robot needs to […]

Computer Vision, Context, & The Need for AI

by on September 12, 2016

confusing person for self driving car

In life as well as in computer vision, context is critical. Scroll through this post slowly and don’t cheat. What do you see in the image below? Now what do you see in this next picture? Keep Scrolling How about this picture, can you now identify the images above? How did you identify the car? […]

Book Review: The Car Hacker’s Handbook by Craig Smith

by on September 8, 2016

Car hackers handbook

The Car Hacker’s Handbook A Guide for the Penetration Tester is a really interesting book about how to interface with cars to read from onboard systems, spoof devices, and control the vehicle on your own. One of the reasons I really like this book is that it is easily the best book I have ever […]

Sensors Driving the Uber Self Driving Car

by on August 30, 2016

Uber Self Driving Cars Top View

I have had a bunch of questions from friends about how the Uber self driving car works. The simple answer is that I don’t know. I have no relation to, or inside knowledge of what Uber is doing. However I can look at the outside of the vehicle and try to guess what sensors I […]

chrony with GPS for Time Synchronization – Kicks NTP’s A$$

by on August 18, 2016

time syncing

Time synchronization is something that affects many robots. As robots have more computers and more sensors keeping everything in sync becomes increasingly important. Trying to look through log files where all of the times are skewed is not fun and makes processing difficult. Merging sensor data together with GPS can also be disastrous if the […]

Drive Selection – Wheels, tracks and more

by on July 25, 2016

Marsokhod 6x6 is completely articulated in pitch, roll and yaw.

In the past we have looked at wheel design and the kinematics of skid steer and mecanum wheels. In this post we will take a quick look at different types of mobility types (ie. wheels, tracks, and how to connect them) for drive selection. I know the items in this list are not direct comparisons. […]

Roboticists EDC (Every Day Carry)

by on July 6, 2016

EDC Robot testing tools

Recently I have been doing a lot of field work and have seen a lot of people looking for random things or asking people if they had those items. In many of those cases I had the items they needed. This is not because I am great or anything, this is from building up my […]

Drive Kinematics: Skid Steer & Mecanum (ROS Twist included)

by on June 22, 2016

drive kinematics

Hi all I am often in need of the basic kinematic motion equations for skid steer vehicles. I have also recently been working with mecanum wheeled vehicles. The skid steer equations are fairly simple and easy to find, however I will include it in different versions and include a ROS approach. The mecanum wheel equations […]

Design Thinking for Robotics and Life

by on June 13, 2016

design_thinking_steps

Hi all Recently I went to a seminar about design thinking. Design thinking is an approach to solving a problem from any domain. During the seminar people used design thinking to analyze how to automate password recovery, lead a finance team, build an activities team, and others. I used this as an exercise to look […]

Book Review: Peer Reviews in Software by Karl Wiegers

by on May 31, 2016

peer review in software

I have been part of many software teams where we desired to do code reviews. In most of those cases the code reviews did not take place, or were pointless and a waste of time. So the question is; how do you effectively conduct peer reviews in order to improve the quality of your systems. […]

Antenna Separation: How Close Can You Go?

by on May 16, 2016

antenna on car

Hi When building a new robot the mechanical engineers always ask me how close can the different antennas be to each other. It is not uncommon to try squeezing 5+ antennas on a single robot (GPS, GPS2 for heading, RTK, joystick, e-stop, communications, etc..). So what is the proper response? The real answer is that […]

Adaptive RRT – ARRT (with code)

by on March 28, 2016

Adaptive RRT

Hi all Back in 2010 I was taking an AI class where we learned about Rapidly Exploring Random Trees for motion planning. For my final project I developed an adaptive version of the RRT that I named ARRT. I decided to post it here to share with others. The post below is based from the […]

Book Review: Mastering ROS for Robotics Programming by Lentin Joseph

by on March 17, 2016

mastering ROS for robotics programming

Mastering ROS for Robotics Programming is a good book that will help you learn ROS and take advantage of some of the powerful nodes (programs) that are out there. The book covers both a 7 DOF robot arm and a differential drive robot throughout the different chapters. That should really help you out no matter […]

USB device configuration: Alternative to udev

by on December 16, 2015

USB Port

Hi all Every time I need to add multiple USB devices to a computer I get nervous and dread the architecture. The problem is when a computer boots it automatically brings up USB devices in whatever order it sees fit (think crazy race conditions). So if you have a motor controller, a camera, and a […]

Robotics for Kids (and Adults) – Getting Started and How to Progress

by on December 9, 2015

SIK_Shadow_Chasis Sparkfun

I get many questions from people about how I think kids and adults should get started in robotics, how they should progress, and what they should buy, to learn about robotics. Here is my quick response: I think level 1 is for people older than 12-13. Level 2 is for people older than 15, and […]

Fuse Locations, Protection, Shunt Regulation, & Motors

by on July 31, 2015

shunt regulator

Hi all I wanted to write a quick post today about where to place fuses and how to protect your robot. When you design a system it is often tempting to place a fuse on every component. This idea is fine for most batteries, sensors, and computers. However this can really cause destruction when you […]

Book Review: Practical Field Robotics by Robert Sturges

by on July 7, 2015

practical field robotics

Practical Field Robotics: A Systems Approach by Robert H. Sturges, Jr. from Virginia Tech is an interesting book about how to design a field robot from a high level systems approach, and how to build a robotic lawnmower. This book has 2 primary sections. The first part of the book looks at 3 different example […]

Convert Linux into an Embedded System

by on June 4, 2015

pc104 computer

Hi all Running Linux on your embedded system can be great for giving you a stable base, lots of tools, and you can often solve problems with a quick google search. I define embedded as any custom-built computer system, not only tiny devices. In many cases you can develop on the computer itself for ease […]

Robots taking our jobs, Are you prepared?

by on May 21, 2015

Kambeitz

Hi all Continuing on with posts from the recent RoboUniverse show in New York, I want to talk about Robots, Jobs, and Education. On the last day one of the primary talks was from Dennis Kambeitz at EZ-Robot. The topic was Preparing our workforce for a robotic world. I am going to try to hit […]

RoboUniverse New York 2015 – Initial Reaction

by on May 13, 2015

robo universe sponsors

Hi all I attended the last day (5/13/2015) of the RoboUniverse conference and exhibit in New York City. It was a good experience and I got to hear some interesting talks. I am usually deeply involved in the technical aspects of robotics, so it was interesting hearing about some of the other aspects. This was […]

Book Review: Implementation of Robot Systems by Mike Wilson

by on April 24, 2015

implementation robotic systems

Hi all Today I am reviewing Implementation of Robot Systems by Mike Wilson. This is a book about how to integrate robots into the manufacturing process. In this book Mike Wilson takes you through the process of deploying and developing your robotic systems since “All successful projects require a methodical approach to project planning.” By […]

Software Development Principles

by on April 6, 2015

Fix Bad Code

Hi all I have often thought about what the proper software methodology should be for the various robots that I build. My thoughts have evolved over time as I have seen these tool work. I do not have any formal software engineering training, however these are things that I have seen, heard, read, etc.. that […]

RoboUniverse New York – May 11-13, 2015

by on March 30, 2015

Robo Universe

Hi all Click here to see initial reactions after the event! RoboUniverse 2015 is happening May 11-13 in New York. I plan on being there and would love to meet up with others who are there. Please let me know if you plan on attending. I am waiting to see the full exhibitor list as […]

Lubrication: Dry vs Wet – Oil vs Grease

by on March 25, 2015

grease gun

One thing that is often looked is lubrication (lube). Changing your lubrication and selecting the proper type can dramatically modify the performance of your system. This change of lubrication was one of the primary reasons MSL was delayed from launching to Mars. Improper lubrication can cause your mechanical parts to wear out and fail. It […]