Tuesday, January 21, 2020

Milli (#2) - FrankenWorm (with Video!)

Milli is a bio-inspired Millipeded Robot and today's blog entry is titled:  FrankenWorm!

Rapid Prototyping
The best way to "learn quickly - fail quickly" is to using rapid prototyping techniques to test out ideas quickly and identify potential and real points of failure, design needs, and radical improvements.  Three-D printers are great for taking ideas and making them solid. An even faster way of rapid prototyping is "Frankenstein Prototyping", where the initial prototypes are built by using parts from other projects. In many cases, you just grab the part that is close to what you need and fasten it to the build.

Frankworm! Franken-prototyping the WildWorm Drive

Today, I am Frankenstein prototyping the WildWorm with 3D parts left over from previous projects. I wanted to quickly see if the rotating helix is going to be able to move the track treads of the WildWorm drive.

what is in the discarded print bin?

  • Motor frame - one of the chassis from the original Mojo
  • Battery holder - from an old RC car and RC Rover project
  • Motor holder - initial WildWeasle tests - holds a 'recycled' printer motor
  • Motor spindle adapter - from initial Centi tests
  • Helix Mount - Cam variation from the Mojo2 (he walks!) project
  • Horizontal Stabilizers - linkages from original Mojo project
  • Stabilizer linkage - v0 print of WildWorm track
...and this is why I don't throw away old 3D printed parts.

After finding the parts in the bin, I connected them all together to set up my initial tests. I just used quick fastening methods, tape, hot glue, twisted wire, and screws. It is meat only to learn what works, and what does not!  

Can you identify the parts in the picture??

WildWorm prototype test - Franken Prototype
Test Results
I ran the first tests with a weak battery pack, just under 5V DC. This was attached to a recycled printer motor that is rated 9-12V (I believe). I thought the motor had plenty of torque to rotate the helix without beating the assembly to pieces. -which was important at this stage.


The video shows the results of my initial testing.

First of learnings, yes this worm drive concept is feasible. The underpowered motor is just barely turning the helix, but the rotation is consistent enough to move the treads. The stabilizer will need to be tightened up to keep the tracks in a steady horizontal position. and the helix will need to be smooth, as well as the inside of the treads, in order to reduce the internal friction and sticking.

This test only proved that the motor with stabilizer will move the track in the correct motion. There are a lot of design learnings available, now I can iterate on these ideas and go for the next set of testing.

Sunday, January 12, 2020

Milli (#1) - A Bio-Inspired Millipede Robot

Next in line for bio-inspired robots is the Millipede.
(I know, I know, I am starting a new project without finishing the last ones. But, this one is interesting! ;)

Millipede design that I am looking at is the concept of having many many feet on the ground for the robot.  Similar to the Centi robot concept, I will use a mechanism to transfer the rotational motion of the motors to the feet in contact with the ground.

For this robot build, i am focusing on the work of David Zarrouk.  Zarrouk's SAW robot is a Single Actuator Wave-like robot.  The design uses a single motor that is spinning a helix twisted rod. The rod moves a linked set of treads in a way to create an advancing standing wave.


SAW robot from David Zarrouk

  This is best viewed in his video, from Zarrouk Labs:




For my build, I will start with the wave mechanism to provide the motion for the Millipede robot.  There is a published paper which describes the math put into Zarrouk's robots. I am using this as a starting point in my design. Using this as inspiration, I will first try to replicate his work, then extending on it. I will attempt to use this wave motion, as the driving actuator on the robot.  I am calling this my Worm-Drive, the WildWorm, for Milli the robot.

Initial Design:

The Track - The most complicated part of the worm drive is the tread design. The tread is conceptually the same as a crawling tank caterpillar tread. The only exception to a tank tread is that these treads will not be moved by cog wheels.
Each tread must have a pivot point so that it can be linked with the next tread. When linked together in must be very flexible. The joints must have low friction.  
Part of this design has the helix is spinning inside of it. The inside slot must have clear running path as the helix will actually slide along from side to side. But, as you will see it is not the helix that is moving, but the treads wrapped around the helix.


WildWorm Track design version 3

For this first set of designs, I am using nails to act at the connection axis.  They will be positioned between two pin holes. the inside hole is small and will hold fast to the nail. The outside has a larger radius so that the part rotates around the metal nail.

Finally I have extended a 'tread' to the track link, so that it can directly interact with the surface.


WildWorm 3D printed Tracks
v1 - top left
v2 - top right
v3 - bottom
It might be obvious, the track linkages will need to frictionless. It occurs to me that low friction will need to be designed into the treads. The next iteration of the design will perhaps use a metal washer between the tracks to reduce the friction. Lubricant will also be helpful. Ultimately, the series of track will need to be nearly fluid when shaken.

WildWorm - Helix and Tracks - 1st prototypes

The Helix - The helix is the part in the middle of the assembly that drives the mechanism. There are not a lot of details about the construction of the helix. I have started by using a wire from a coat hanger. I have wrapped the wire around a metal pipe and adjusted to create a consistent helix.  The helix should be smooth to reduce the friction of the track that slides around the helix. It may be possible to 3D print a helix, this would ensure the precision of the design and centering of the motor axis. However, a 3D printed helix may not have the strength needed to support the track linkages.

First Prototype

The first prototype assemblage of the WildWorm, has yielded a lot of insight. That is a nice way of saying, it did not go very smooth as I hoped. There will be a lot of tension between the helix and track. Perhaps this can be relieved by increasing the period of the helix. My first attempt was a 7.5 cm. I see that it should be much longer, maybe 10-12 cm.
WildWorm - 1st assembled prototype of the helix and track (5cm period)

Next steps will be to increase the length (period) of the helix. I will also design the motor housing, stabilizing arms, and a mount for the helix.  The helix will be easier to test, once I can mechanically stabilize (hold horizontal) the tracks.

[UPDATE] Extending the helix out to 10cm period, length of one full cycle, solves many issues. The track slide smoother, and there is significantly less binding.

Wednesday, January 8, 2020

Robot Roundup - End of 2019

This is not a end of the decade summary of robotic progress, although, in the last ten years robotics has seen very positive and dramatic growth!  

Perhaps, there is more of a thought of that robots are becoming more mainstream. The thoughts of having self driving cars (which are just big commercial robots) has become more of an inevitability. Just as the chances of seeing robotic characters in a Star Wars (or any space themed) movie.

To me, mainstream will be when you see robots actively working in daily life. Walking around London over the Christmas break, I did not see very many (any) robots, so there is still some time before they are truly mainstream.

In the meanwhile, here are some interesting developments I have personally noted:  (and I am not talking about drones now, they tend not to be autonomous, and in some cases can be somewhat evil.)

Inspection Robots:
Ah, the world of Inspection robotics, probably the most applicable use cases for today's robot technology.

Gecko Robotics - Recently raised $40M USD in series B round of investment.
Gecko Robotics - Pipe Inspection robot
Gecko is now in an expansion phase. They are growing in staff in the 100 person company, with a focus on inspection experts that can interpret the data.  Their business model is to lease out the robots assuming as a service. They currently have 60 robots, and are now looking to expand to 100.

Honeybee Robotics is another robotics company with inspection robots. They have been in business since 1983 and active in Space, Defence, Medical, and Oil/Gas industries. From the website, it seems that they have been very instrumental (pun?) in working with space exploration robotics, specifically the mars rovers. Most recently, the Phoenix drilling robot probe. For inspection robotics, they do not seem to have as much to offer, but you have the love the cute little (tiny) pipe crawling camera platforms.


Honeybee robotics magnetic Mecanum wheel technology

Honeybee Robotics camera pipe inspector
The pipe inspection robot is adorable, but I am not sure how well those wheels will be able to pull a cable load. The metal chassis does look very rugged. Inuktun Robotics - now part of Eddify is the maker of the Versitrax track system for inspection robotics. I have written about Inuktun in the past, as they have a very modular systems approach to their robotics.  Their track system is most impressive in shape and duty cycle.  (I am sure it has a nice price tag to go with it ;) the versitrax system was the inspiration for my design of the Wild Weasel.


Versatrax by Inuktun, now part of Eddify

Versitrax modular track by - Inuktun


GE Inspection Robotics - probably the market leader? I don't know for sure. But, I do know that GE is a top player in any industry the participate in. As a leader in power systems, they would have a strong need to provide inspection robotics for pipelines, boilers, crackers, etc.  The Inspection Robotics division is HQ in Zurich. They seemed to have acquired a number of robotics and software companies and are working to incorporate their technologies together. This is very typical of a large industrial player that can grow by acquiring innovative tech capabilities. (I am not knocking on the engineers that made these fine technologies!)
The Bike platform is one of their compact inspectors with strong magnetic wheels and mobilies technologies. It can drive/cross over a 90 degree corner!


GE Inspection Robotics - Bike Platform

Robot business opportunity, eh?  On a little more along the lines of small business, there are many small companies that will custom build inspection (and tactical) robots for you.  Here is one I recently found, that is located in the US state of North Carolina.
SuperDroid Robots  They specialize in their own custom built robots. Prices range from a few thousand USD to tens of thousands USD.  Check out their site, they have a lot of unique builds and many custom "fun" robots.


SuperDroid "RealCow Robotic System" - probably their most absurd robot (cowbot?)
I highly recommend checking out the site, everytime I go their, I find new robots that they have built. They are quickly becoming a favorite site, even as they have a tendency toward 'tactical'  ;)

speaking of tactical robots for warfighters...

DARPA's grand subterranean challenge - DARPAs grand challenge seems to be moving long.  They have recently completed stage 2 of the challenge.


DARPAs SubT Tunnel Challenge

Here is a great article by Popular Mechanics about the results of the DARPA Subterranean Challenge and the man-made Tunnel Circuit.  I think the impact of this will either be on the receiving end of lidar options, or it could spurn additional research in the Lidar/SLAM aspects of robotic development.  If you read the article, keep an eye out for the "robot with robots", this is one of my favorite themes for future robot explorations!

On the Software side of Robots
There have been a lot of improvements to software systems that will operate and control the robots of the future.  Many of these are open projects, that provide tools for 'the rest of us' to use in our hobbies and businesses.  Some of the most basic, are tools like the Robot Operating System (ROS) and simulators such as Gazebo. I would like to focus a little more on one aspect that will be required for Autonomous robots - Computer visions.  Specifially Computer vision that will be used for simultaneous localization and mapping (SLAM)

OpenCV is leading the way for computer vision with many libraries and easy to use.
openMVG uses multiple images and views to perform photogramy, or constructing the 3D space from graphical images.

With the strong focus by the industry on self driving cars there will be significant enhancements in lidar technology. This should lead to reduced cost for the sensors, and perhaps the processing being moved to a chip to provide direct sensor measurements to the robots SLAM routines.

Ambarella - Computer Vision on a chip, has a new robotics platform and partnership with Amazon. they started their business with video processing chips, but pivoted to providing CV on a chip. This is similar to the open source project of OpenCV (?).  At any rate, this is the types of innovations that will be coming in the next years. Many of the open AI type processing necessary for robotics will be moving to fast implementations on a chip.  (you can also think of this similar to GPUs being broken out from code to a chip).
they will need to work on their messaging a bit, their website states:  
Our intelligent video devices use face detection, analytics, and multi-object CNN classification to enhance security in businesses and homes, without the need for the cloud.
This might be contrary to the interest of their new partner, Amazon.  And a final note about Ambarella, as concerns over our society becoming more and more a surveillance state, this example from their advertising could be interpreted in poor taste:
Is surveillance becoming the new norm?


So, What (else) to Watch in 2020?

Will Amazon have any success in aligning their robotic offerings with these many disparate companies which do their own processing. 

As Boston Dynamics goes comercial, will there be a 'trough of disillusionment' (from the Gartner Hype Cycle) as it applies to robotic dog platforms?  It is a remote observation platform, that can walk in all weather and surfaces. but with remote observation and (limited?) manipulation. Or will we find new use cases that make it a viable, value added, platform.
Boston Dynamics - An Android and his Dog

As an obvious result of the Spot Mini, we have seen many new quadruped robots. All of these knock-offs (and I mean that in a good way) seem to have exact same capabilities and servo placements etc. It is my hope that we quickly move on from this and start to see some truly innovative approaches to robotics, after all they do not have to look like dogs or humans. They just need to be able to perform. This is evident in BDs third robot, Handle, that looks nothing like a human or dog. This robot is built entirely for function, it seems without any thought of form. If anything it looks like a very awkward bird, ok now I am doing the anima-morphing.

Boston Dynamics - Handle

Future?
So, What Would Elon Musk Do? (#WWEMD?)  How would you build your robot business?

Actually, I would not be surprised to hear that SpaceX is thinking about roving robotics. After all, the Falcon 9 is a robot ship (?).  But most of all Space exploration is going to require A LOT of new autonomous robots.

Sunday, December 15, 2019

Mojo3 - A Robotic Dog (#6) - Alternative leg design

A change in thought, a change in name.  Perhaps "A Compliant Quadruped Robotic Dog" is a little redundant and fabricated(?)  To start, "Quadruped Dog" is redundant, Dog implies four legs.  And with today's post, I am missing some compliancy, so let's just go by robot dog.  Perhaps even then, dog is a euphemism, afterall it is just a four legged robot.  ;)

The difficult part is the legs of course.  The first leg has compliancy, but it struggling to meet the additional design criteria of using 9g servo motors.  The engineering challenge of this exercise is to be able to lift the leg enough to move the leg forward, while at the same time absorbing some of the energy of the motion (inferred here as compliant).

While on holiday, away from my CAD, I was imaging what types of other motion that could be used.  For robots here are 5bar mechanisms, and strandbeest mechanisms, servos at the knees and legs (static motion, no compliance), as well as the 'fancy spot-mini' designs with simulated compliancy. Ultimately, there are only 2 degrees of freedom for the appropriate foot motion, so there seems to always be the need for 2 servos. It is just the question of where the servos will be positioned on the robot.

One solution is to assign all of the leg (forward, backward) motion to the hip - one degree of freedom. Then the function of lifting the foot is the sole responsibility of the second motion - the other degree of freedom. after mentally arranging the location of the motion and trying to avoid direct load of the weight of the robot on the servo, I settle on this option for the design.

In this design iteration, the for-leg/foot is directly connected to the top of the leg. There is a pivot point half-way through the for-leg. The foreleg is controlled by two linkages, this allows for the retraction and extension of the foreleg. Now the options for the servo can be either in one of the linkages or a force from the pivot between the linkages. The simpler will be on the linkage itself.

Mojo3 - Alternative leg designs
The question with this design is 'where to put the compliancy'? since the servo is directly connected to the linkages, this puts load on the servo (albeit less load). I think at this stage in the design, I will determine compliance later, mostly likely in the foot of the leg.

Using a the technique of "Frankenstein Prototyping" (a form of rapid prototyping), I mashed up parts left over from the last design as well as disassembling a leg of 'The Bug'.


Mojo3 - leg in down position
Here the leg is extended in the Down Position.  The engineering question will be how much load is placed on the servo in this position.  It would be very desirable to find a mechanism that will 'lock the leg' during the time the hip servo will be moving it backward in motion.


Mojo3 - leg in up position
In the retracted position in the foot is lifted up, allowing for the hip to move the leg forward to the starting position of the gait.

Next Steps:
Answer the engineering question of how the leg will hold the load of the robot.
This can be done by physical testing, by wiring up the servo to the microcontroller and test the motion. If that is successful, then it will be back to the CAD and draft up a new leg based on this concept.  

Sunday, December 1, 2019

Mojo3 - A Compliant Quadruped Robot Dog (#5) - First Servo Leg Tests

Mojo 3 - First Tests!

It is always exciting to start the testing in an iterative design/build phase.  I have made a few changes to the leg and SEA design. It was really important to allow for the servo to pull the actuator with as little friction as possible. two additional prints later, I have a working servo actuator.  However, the weak 9 gram servos will continue to be an issue, as well as how much 'hooke' to put into the spring. 

First:  the new movie!


first test - on the TNERA YouTube Channel

Design status - from the movie, you can see that the servo is functioning and pulling the actuator up.  This motion is critical to lifting/contracting the leg as the leg will be moving forward.  It must have enough clearance to avoid stumbling and the return swing. I would like to have 1cm or more of clearance.  However, from the video you can see that the design is only giving 5-6mm of contraction.  It it clear that the servo will need to have some more pull, or that the spring constant (see Hooke's Law) is weaker.


There will have to be a balance between two competing factors:

1) the servo must be strong enough to contract the SEA
2) the spring must be strong enough to absorb some of the weight of the robot

the competition in physics and mechanics:  a larger servo can pull the spring, but will create additional weight that will further contract the spring. To help/confuse this engineering issue is that the 'foot' spring will also be absorbing the weight of the robot. This may result in the SEA contracting - but not resulting in a lift due to the 'release' of the foot spring.

Tune in to see how we can resolve these design issues.  At this point in time, I am not beyond creating a completely new iteration on the SEA perhaps adding a new linkage.