MIT’s Self-Assembling Robots

Calling it a low-tech solution to a high-tech challenge, MIT researchers have received a lot of attention recently for their modular system of self-assembling robot cubes. The video of the so-called M-Blocks in action, which MIT posted earlier this month on YouTube, has also become high profile. A recent tally has the video at nearly 1.5 million views and counting.

 

The text accompanying the video explains how the cubes are able to move around and climb over each other,  jump into the air, and roll across surfaces as they connect in a variety of configurations. And they do all this without any external moving parts. Instead, each M-Block contains a flywheel that can reach speeds of 20,000 rpm. When the flywheel brakes, it imparts angular momentum to the cube.  Precisely placed magnets on every face and edge of each M-Block enable any two cubes to attach to each other.

The simple design holds short- and long-term promise.  According  to an October 4 article by Larry Hardesty of the MIT News Office, it is hoped that the blocks can be miniaturized someday, perhaps to swarming microbots that can self-assemble with a purpose. Even at their current size, further development of the M-Blocks might lead to “armies of mobile cubes” that can help repair bridges and buildings in emergencies, raise scaffolding, reconfigure into heavy equipment or furniture as needed, or head in to environments hostile to humans to diagnose and repair problems, the article suggests.

While it may not rise to “cooperative group behavior,”  the ability of one cube to drag another and influence its alignment is impressive. What could 100 or more of these robots accomplish as MIT researchers continue to develop algorithms to control them?

A prototype of the new modular robot, with its flywheel exposed. (Photo: M. Scott Brauer)

A prototype of the new modular robot, with its interior and flywheel exposed.
(Photo: M. Scott Brauer)

Q&A: Jeremy Blum, Electrical Engineer, Entrepreneur, Author

Jeremy Blum

Jeremy Blum

Jeremy Blum, 23, has always been a self-proclaimed tinkerer. From Legos to 3-D printers, he has enjoyed learning about engineering both in and out of the classroom. A recent Cornell University College of Engineering graduate, Jeremy has written a book, started his own company, and traveled far to teach children about engineering and sustainable design. Jeremy, who lives in San Francisco, CA, is now working on Google’s Project Glass.—Nan Price, Associate Editor

NAN: When did you start working with electronics?

JEREMY: I’ve been tinkering, in some form or another, ever since I figured out how to use my opposable thumbs. Admittedly, it wasn’t electronics from the offset. As with most engineers, I started with Legos. I quickly progressed to woodworking and I constructed several pieces of furniture over the course of a few years. It was only around the start of my high school career that I realized the extent to which I could express my creativity with electronics and software. I thrust myself into the (expensive) hobby of computer building and even built an online community around it. I financed my hobby through my two companies, which offered computer repair services and video production services. After working exclusively with computer hardware for a few years, I began to dive deeper into analog circuits, robotics, microcontrollers, and more.

NAN: Tell us about some of your early, pre-college projects.

JEREMY: My most complex early project was the novel prosthetic hand I developed in high school. The project was a finalist in the prestigious Intel Science Talent Search. I also did a variety of robotics and custom-computer builds. The summer before starting college, my friends and I built a robot capable of playing “Guitar Hero” with nearly 100% accuracy. That was my first foray into circuit board design and parallel programming. My most ridiculous computer project was a mineral oil-cooled computer. We submerged an entire computer in a fish tank filled with mineral oil (it was actually a lot of baby oil, but they are basically the same thing).

DeepNote Guitar Hero Robot

DeepNote Guitar Hero Robot

Mineral Oil-Cooled Computer

Mineral Oil-Cooled Computer

NAN: You’re a recent Cornell University College of Engineering graduate. While you were there, you co-founded Cornell’s PopShop. Tell us about the workspace. Can you describe some PopShop projects?

Cornell University's PopShop

Cornell University’s PopShop

JEREMY: I recently received my Master’s degree in Electrical and Computer Engineering from Cornell University, where I previously received my BS in the same field. During my time at Cornell, my peers and I took it upon ourselves to completely retool the entrepreneurial climate at Cornell. The PopShop, a co-working space that we formed a few steps off Cornell’s main campus, was our primary means of doing this. We wanted to create a collaborative space where students could come to explore their own ideas, learn what other entrepreneurial students were working on, and get involved themselves.

The PopShop is open to all Cornell students. I frequently hosted events there designed to get more students inspired about pursuing their own ideas. Common occurrences included peer office hours, hack-a-thons, speed networking sessions, 3-D printing workshops, and guest talks from seasoned venture capitalists.

Student startups that work (or have worked) out of the PopShop co-working space include clothing companies, financing companies, hardware startups, and more. Some specific companies include Rosie, SPLAT, LibeTech (mine), SUNN (also mine), Bora Wear, Yorango, Party Headphones, and CoVenture.

NAN: Give us a little background information about Cornell University Sustainable Design (CUSD). Why did you start the group? What types of CUSD projects were you involved with?

CUSD11JEREMY: When I first arrived at Cornell my freshman year, I knew right away that I wanted to join a research lab, and that I wanted to join a project team (knowing that I learn best in hands-on environments instead of in the classroom). I joined the Cornell Solar Decathlon Team, a very large group of mostly engineers and architects who were building a solar-powered home to enter in the biannual solar decathlon competition orchestrated by the Department of Energy.

By the end of my freshman year, I was the youngest team leader in the organization.  After competing in the 2009 decathlon, I took over as chief director of the team and worked with my peers to re-form the organization into Cornell University Sustainable Design (CUSD), with the goal of building a more interdisciplinary team, with far-reaching impacts.

CUSD3

Under my leadership, CUSD built a passive schoolhouse in South Africa (which has received numerous international awards), constructed a sustainable community in Nicaragua, has been the only student group tasked with consulting on sustainable design constraints for Cornell’s new Tech Campus in New York City, partnered with nonprofits to build affordable homes in upstate New York, has taught workshops in museums and school, contributed to the design of new sustainable buildings on Cornell’s Ithaca campus, and led a cross-country bus tour to teach engineering and sustainability concepts at K–12 schools across America. The group is now comprised of students from more than 25 different majors with dozens of advisors and several simultaneous projects. The new team leaders are making it better every day. My current startup, SUNN, spun out of an EPA grant that CUSD won.

CUSD7NAN: You spent two years working at MakerBot Industries, where you designed electronics for a 3-D printer and a 3-D scanner. Any highlights from working on those projects?

JEREMY: I had a tremendous opportunity to learn and grow while at MakerBot. When I joined, I was one of about two dozen total employees. Though I switched back and forth between consulting and full-time/part-time roles while class was in session, by the time I stopped working with MakerBot (in January 2013), the company had grown to more than 200 people. It was very exciting to be a part of that.

I designed all of the electronics for the original MakerBot Replicator. This constituted a complete redesign from the previous electronics that had been used on the second generation MakerBot 3-D printer. The knowledge I gained from doing this (e.g., PCB design, part sourcing, DFM, etc.) drastically outweighed much of what I had learned in school up to that point. I can’t say much about the 3-D scanner (the MakerBot Digitizer), as it has been announced, but not released (yet).

The last project I worked on before leaving MakerBot was designing the first working prototype of the Digitizer electronics and firmware. These components comprised the demo that was unveiled at SXSW this past April. This was a great opportunity to apply lessons learned from working on the Replicator electronics and find ways in which my personal design process and testing techniques could be improved. I frequently use my MakerBot printers to produce custom mechanical enclosures that complement the open-source electronics projects I’ve released.

NAN: Tell us about your company, Blum Idea Labs. What types of projects are you working on?

JEREMY: Blum Idea Labs is the entity I use to brand all my content and consulting services. I primarily use it as an outlet to facilitate working with educational organizations. For example, the St. Louis Hacker Scouts, the African TAHMO Sensor Workshop, and several other international organizations use a “Blum Idea Labs Arduino curriculum.” Most of my open-source projects, including my tutorials, are licensed via Blum Idea Labs. You can find all of them on my blog (www.jeremyblum.com/blog). I occasionally offer private design consulting through Blum Idea Labs, though I obviously can’t discuss work I do for clients.

NAN: Tell us about the blog you write for element14.

JEREMY: I generally use my personal blog to write about projects that I’ve personally been working on.  However, when I want to talk about more general engineering topics (e.g., sustainability, engineering education, etc.), I post them on my element14 blog. I have a great working relationship with element14. It has sponsored the production of all my Arduino Tutorials and also provided complete parts kits for my book. We cross-promote each-other’s content in a mutually beneficial fashion that also ensures that the community gets better access to useful engineering content.

NAN: You recently wrote Exploring Arduino: Tools and Techniques for Engineering Wizardry. Do you consider this book introductory or is it written for the more experienced engineer?

JEREMY: As with all the video and written content that I produce on my website and on YouTube, I tried really hard to make this book useful and accessible to both engineering veterans and newbies. The book builds on itself and provides tons of optional excerpts that dive into greater technical detail for those who truly want to grasp the physics and programming concepts behind what I teach in the book. I’ve already had readers ranging from teenagers to senior citizens comment on the applicability of the book to their varying degrees of expertise. The Amazon reviews tell a similar story. I supplemented the book with a lot of free digital content including videos, part descriptions, and open-source code on the book website.

NAN: What can readers expect to learn from the book?

JEREMY: I wrote the book to serve as an engineering introduction and as an idea toolbox for those wanting to dive into concepts in electrical engineering, computer science, and human-computer interaction design. Though Exploring Arduino uses the Arduino as a platform to experiment with these concepts, readers can expect to come away from the book with new skills that can be applied to a variety of platforms, projects, and ideas. This is not a recipe book. The projects readers will undertake throughout the book are designed to teach important concepts in addition to traditional programming syntax and engineering theories.

NAN: I see you’ve spent some time introducing engineering concepts to children and teaching them about sustainable engineering and renewable energy. Tell us about those experiences. Any highlights?

JEREMY: The way I see it, there are two ways in which engineers can make the world a better place: they can design new products and technologies that solve global problems or they can teach others the skills they need to assist in the development of solutions to global problems. I try hard to do both, though the latter enables me to have a greater impact, because I am able to multiply my impact by the number of students I teach. I’ve taught workshops, written curriculums, produced videos, written books, and corresponded directly with thousands of students all around the world with the goal of transferring sufficient knowledge for these students to go out and make a difference.

Here are some highlights from my teaching work:

bluestamp

I taught BlueStamp Engineering, a summer program for high school students in NYC in the summer of 2012. I also guest-lectured at the program in 2011 and 2013.

I co-organized a cross-country bus tour where we taught sustainability concepts to school children across the country.

indiaI was invited to speak at Techkriti 2013 in Kanpur, India. I had the opportunity to meet many students from IIT Kanpur who already followed my videos and used my tutorials to build their own projects.

Blum Idea Labs partnered with the St. Louis Hacker Scouts to construct a curriculum for teaching electronics to the students. Though I wasn’t there in person, I did welcome them all to the program with a personalized video.

brooklyn_childrens_zoneThrough CUSD, I organized multiple visits to the Brooklyn Children’s Zone, where my team and I taught students about sustainable architecture and engineering.

Again with CUSD, we visited the Intrepid museum to teach sustainable energy concepts using potato batteries.

intrepid

NAN: Speaking of promoting engineering to children, what types of technologies do you think will be important in the near future?

JEREMY: I think technologies that make invention more widely accessible are going to be extremely important in the coming years. Cheaper tools, prototyping platforms such as the Arduino and the Raspberry Pi, 3-D printers, laser cutters, and open developer platforms (e.g., Android) are making it easier than ever for any person to become an inventor or an engineer.  Every year, I see younger and younger students learning to use these technologies, which makes me very optimistic about the things we’ll be able to do as a society.

3-D Printed Robotics Innovation: A Low-Cost Solution for Prosthetic Hands

Gibbardholding DextrusUK-based inventor and robotist Joel Gibbard used a 3-D printer to design and build a prosthetic robotic hand. He founded the Open Hand Project with the goal of making the prosthetic hands available for amputees.

 

 NAN: Give us some background. Where do you live? Where did you go to school? What did you study?

 JOEL: I was born in Bristol, UK, and grew up in that area. Bristol is a fantastic place for robotics in the UK, so I couldn’t have had a better place to start from. There’s a lot to engage children here, like the highly popular @Bristol science museum. I studied for a degree in Robotics at the University of Plymouth, which encourages a very practical approach to engineering. Right from the first year we were working with electronics, robotics, and writing code.

 NAN: When did you first start working with robotics?

 JOEL: The first robots I ever made were using the Lego MINDSTORMS NXT robotics kits. I was very lucky because these were just starting to come out when I was about 6 or 7 years old. I think from ages three to 15 every single birthday or Christmas present was a new Lego set. To this day, I still think Lego is the best tool for rapid prototyping in the early stages of an idea.

 NAN: Tell us about your first design/some of your early projects. Do you have any photos or diagrams?

 JOEL: The earliest project I remember working on with my father was a full-scale model of the space shuttle complete with robotic arm and fully motorized launch pad. When on the launch pad it was almost my height. I think my father took having kids as an opportunity to get back into making things. We also made a Saturn 5 rocket, Sydney Harbour Bridge and Concorde. One of my first robots was a Lego Technic creation. It had tracks, a double-barreled gun on one arm, a pincer on the other, and a submarine on the back, just in case. I think I was about eight years old when I made it.

 NAN: You originally developed the Dextrus robotic hand while you were at the University of Plymouth. Why did you design the system? How has its development progressed since the original concept?

Gibbarddesignprocess

Joel keeps an ongoing design sketchbook.

JOEL: I have a sketchbook of around 10 to 20 inventions that are options for the next thing I want to make. This grows faster than it shrinks. One day I was thinking about what to make next and the thought occurred to me that if I were to lose my hand, I wouldn’t be able to make anything. So it made the most sense to design a hand to have just in case. Once I have that, heaven forbid I need to; I could use it to then make a better hand, and so forth, until I have a robot hand that is as good as a human hand. It sounds ridiculous, but that was enough motivation for me to make the first one.

GibbardEarlyDextrus

This is an early version of the Dextrus hand.

After posting the project on YouTube, I received comments from people asking to have the designs to make their own, which wasn’t really possible, since it was such a one-off prototype. But I thought it was a good idea. Why not make an open-source hand? After that, I looked more into prostheses and discovered that this is really necessary and people want it.

 NAN: The Dextrus incorporates 3-D printed parts. How does the 3-D printing factor in your design? Does it make each hand customizable?

 JOEL: 3-D printing is essential to the design. Many of the parts have cavities inside them, which wouldn’t be possible to make using injection molding. One would have to make the parts in two halves then glue them together, which creates weak points. With 3-D printing, each part is one solid piece with cavities for the tendons to slide through.

Customization is a great area to explore in the future. It’s quite easy to modify things like the length and shape of the fingers while maintaining the functionality of the hand. In the not-too-distant future, I could envisage an amputee 3-D scanning their remaining hand and sending the scan to me. I could then reverse it and match their Dextrus hand (approximately) to the dimensions of their other hand.

Gibbard3DprintedDextrushand

The 3-D printed Dextrus hand.

 NAN: There are three types of Dextrus robotic hands: The Dextrus, the Dextrus EMG, and the Dextrus Research. Can you describe the differences?

 JOEL: They have the same basic design and components. The Dextrus and Dextrus EMG are exactly the same, but the EMG comes with all of the extras that enable someone to use it as a myoelectric prosthesis. The Dextrus Research has a number of differences that result in a more robust (but more expensive and heavier) hand. It has steel ball bearings instead of nylon bushes and is printed with denser plastic. It also comes with everything you need to use it straight out of the box (e.g., a power supply).

 NAN: You founded the Open Hand Project as a result of your work on the Dextrus robotic hand. Describe the project and its purpose.

 JOEL: The aim of the Open Hand Project is to make advanced prosthetic hands more accessible to amputees. It has the potential to revolutionize the prosthetics industry by trivializing the cost of prosthetics (to insurance companies). I also hope that it will help to advance prosthetic hands. If the hardware is much less expensive, we can start to focus on the human robot interface. At the moment, it uses electromyographical signals, which sound advanced but are actually 50-year-old technology and don’t give complex functionality like individual finger movement. If the hardware is inexpensive, then money can instead be spent on operations to tap into the nervous system and then the hand can literally be a direct replacement for the human hand. You’ll think about moving your hand and the robotic hand will do exactly what you’re thinking. If done correctly, you’ll also be able to feel with it. We’re talking Luke Skywalker Star Wars tech. It exists now, but is not yet fully tested and proven.

 NAN: Prior to venturing out on your own, you were an Applications Engineer at National Instruments (NI). Although you are no longer working for the company, it is backing the Open Hand Project by providing test and measurement equipment. How did NI become involved in the project?

 JOEL: National Instruments has been great since I’ve left the company. I explained what I wanted to do, and it was fully supportive. To get the equipment, all I had to do was ask! It really does live up to its reputation of being one of the best places to work. I hope that I’ll be able to repay them with business in the future. If I’m successful, then I’ll be able to buy equipment for future projects.

 NAN: Why did you decide to use crowdfunding for this project?

 JOEL: I wanted to keep everything open source for this project. Investors don’t want to fund an open-source project. You have no leverage to make money and your ideas will be taken and used by other people (which is encouraged). For this reason, only people who are genuinely interested in the vision of the project will want to invest, and that’s just not something that will make a company money. Crowdfunding is perfect, because people appreciate how this can help people and they’re willing to contribute to that.

I believe that everyone should have access to public health care and that your level of care should not be dependent on the size of your wallet. Making prosthetics open source will be a step in the right direction, but this model does not have to be limited to prosthetics. Take the drugs industry for example. Drugs companies work off patents, they have to patent their drugs in order to make back the millions of dollars they spend developing them and end up charging $1,000 for a pill that costs them $0.01 to make in order to cover all of their costs. If the research was publicly funded and open source, the innovations in this industry would be dramatically accelerated and once drugs were developed, they could be sold more cheaply, if sale of the drugs was government regulated, the price could be controlled and the money could go back into funding more developments.

 NAN: What’s next for the Dextrus?

 JOEL: There are a few directions I’d like this project to go in. First and foremost is the development of low-cost robotic prostheses for adults. After this, I’d like to look into partial amputations and finger prostheses. I’d also like to try and miniaturize the hand so that children can use it as well. Before any of this can happen I’ll need to reach my crowdfunding goal on indiegogo!

 

CC279: Working with RobotBasic

In Circuit Cellar’s October issue, columnist Jeff Bachiochi introduces readers to RobotBasic, a free robot control programming language that you can use to control real or simulated robots, and provides a detailed explanation on how to use it.

Photo 1: This army of robots all use the RobotBASIC Robot Operating System (RROS). Note the large robot has an arm located just above the wheels that is controlled by a second RROS. It uses an on-board laptop running a RobotBASIC (RB) application. The small robots are all controlled via a Bluetooth link from an external PC running an RB application.

Photo 1: This army of robots all use the RobotBASIC Robot Operating System (RROS). Note the large robot has an arm located just above the wheels that is controlled by a second RROS. It uses an on-board laptop running a RobotBASIC (RB) application. The small robots are all controlled via a Bluetooth link from an external PC running an RB application.

“About five years ago, John Blankenship and Samuel Mishal coauthored Robot Programmer’s Bonanza, a book explaining the freely available RobotBASIC IDE they offer. RobotBASIC (RB) is a powerful language that enables you to use standard BASIC syntax (or a modified C-style syntax ( i.e., ++, +=, !=, and &&) to quickly write a program to control and simulate a robot with many types of sensors,” Bachiochi says. “This is a great tool to teach programming.”

RB, with more than 800 commands and functions, can also be a tool for non-robotic applications such as tackling tough engineering problems or creating animated simulations, Bachiochi says.

It’s likely that anyone who starts out simulating with RobotBasic will eventually want to control real robot hardware.

“There is no need to worry,” Bachiochi says. “RB was written to make use of a PC’s I/O. The parallel port is a good source for digital I/O and the serial port is well suited for external communication. The same commands used for robot movement in the simulator can alternatively be sent to a serial port establishing a sort of serial robot command protocol. But, tethered robots aren’t so cool, and many robots are too small to tote around a PC as their “great and powerful Oz.”

“Luckily, much has changed since RB’s original concepts were put into practice,” he adds. “We all know what has happened to these PC ports. They’ve fallen under the USB’s mighty power. RB doesn’t care whether it is talking with a serial port or a USB virtual serial port. USB offers inexpensive Bluetooth dongles and can create wireless serial communication to external devices.”

Bachiochi also discusses the RobotBASIC Robot Operating System (RROS), created to support RB’s serial robot command protocol. The module is available from RB’s website.

“The RROS is a preprogrammed module that can receive communication from RB, interpret commands, and directly interface to hardware,” Bachiochi says. “The module is a Pololu Baby Orangutan robot controller, consisting of an Atmel ATmega328P microcontroller and a Pololu TB6612 dual motor driver carrier in a DIP24 form factor. You can use the module (which comes preprogrammed with the RROS) to build robots like those shown in Photo 1.”

Bachiochi’s look at RB and RROS is a two-part series. In Part 2, appearing in Circuit Cellar’s November issue, Bachiochi will explain how to translate between RROS and the iRobot Create Open Interface.

So, if you want explore a programming language that can take you from simulated to real-world robotics control, check out the October and November issues.

 

CC278: Evolving Neural Networks in Robotics

ccpostrobotAre you curious about how an evolving neural network helps a robot learn about itself and its environment?

CCKRAWECPOST

A neural network with two inputs, one output, and three hidden neurons.

In the September issue of Circuit Cellar, Walter O. Krawec begins a two-part series that describes an ENN he uses in robot development experiments, explains how short-term memory (STM) evaluates a network’s conditions and how to add data to STM, and discusses how an ENN uses a robot’s minimalistic “instincts” and “reflexes” to guide a robot’s evolution.

Krawec, who has been building robots since 1999, is a research assistant and PhD student in Computer Science at the Stevens Institute of Technology in Hoboken, N.J. The work presented in his two-part series is based on a paper published in the proceedings of the 13th International Artificial Life Conference in 2012.

The overall goal of the Krawec’s experiments in developmental robotics is to enable a robot to learn on its own without human intervention. “An ENN is used to accomplish this,” he says.  “This network will be capable of growing and learning in real time as the robot operates.”

In his series, Krawec presents an architecture he says “enables a robot to ‘grow’ from a naive individual with no knowledge of itself (i.e., no notion of what its sensors are reporting or what its outputs actually do) to one that can operate in an environment.”

“This architecture will consist of an evolving neural network (ENN), a short-term memory (STM), and simple instincts and reflexes.

“Despite a minimal set of instincts, which provide penalties and rewards for certain actions (e.g., crashing into a wall, the robots described in this article sometimes develop complicated and unexpected behaviors. Such behaviors range from following walls (despite the robots’ binary proximity sensors) to games of ‘follow the leader.’…

“This article explores basic artificial neural network (ANN) concepts and outlines the ENN I’m using in this project. This is a neural network that, over time, learns not only by adjusting synaptic weights but also by growing new neurons and new connections (generally resulting in a recurrent neural network). Finally, I’ll discuss the STM system and how it is used to evaluate a network’s fitness.”

The second article in Krawec’s series appears in Circuit Cellar’s October issue.

“In Part 2, I’ll examine the reflex and instinct system, which feeds reward information to an ENN and the ‘decision path’ system, which rewards or penalizes chains of actions,” Krawec says. “Finally, I’ll discuss experiments conducted to demonstrate this architecture in a simulated environment. In particular, I’ll describe some interesting behaviors that robots have developed in trial runs.”

For more, check out Krawec’s articles on “Experiments in Developmental Robotics” in the September and October issues. You will also find information and videos about his work with robots on his website.