As of late, there has been quite an interesting intersection between 3D printing and the Raspberry Pi, credit card-sized single-board computer. When the two are combined, the number of applicable uses for both forms of technology increase exponentially, providing somewhat of a dream-come-true to the DIY’ers out there.
We have seen laptops, Gameboys and all sorts of amazing electronics built in people’s garages and basements using primarily a Raspberry Pi board and a desktop 3D printer. What would have taken months of research and development, as well as expensive manufacturing equipment, can now be created in someone’s garage, or even living room, within a day or two’s time, and at an order or two of magnitude less expensive. This is incredibly powerful, as such opportunities are only going to continue to expand and become even more technologically advanced.
No sooner than we post a story about the Pi-Top 3D printed Raspberry Pi laptop, does a Switzerland-based gentleman named Paolo Negrini seemingly outdo this incredible project, with one of his own. Negrini has created a 3D printed, Raspberry Pi driven, self-balancing robot. The project, which he started thinking would take him only a few weekends, is now going on its 10th month, providing him with an invaluable learning experience, as well as lots of plans for the future.
Negrini was somewhat versed in a variety of areas, needing to have some knowledge of electronics, Arduino, Raspberry Pi, and 3D printing. Along the way, however, he learned a great deal, especially about CAD modeling for 3D printing.
“I always have been into doing things. When I was living with my parents in Italy I used to do woodwork, so in a sense 3D printing is the natural evolution,” Negrini explained to 3DPrint.com.
Within a few days he had learned to use Openscad, a CAD software, but not in the traditional sense. Instead of using a mouse to drag and drop shapes, Openscad relies or text based instruction, kind of like a programming language. This gave him the tools necessary to 3D model and later print the parts needed for his one-eyed robot, which we will touch on in a bit.
As for the electronics for this project Negrini relied on Raspberry Pi which acted as a server, providing the robot with wireless communication and real-time data transfer. He then used an Arduino Mega to read the information gathered by the sensors, as well as interface with the hardware itself. At the center of it all was a $30, 10 Degree of Freedom Inertial Measurement Unit (10DOF IMU). This unit, which Negrini excitedly pointed out had cost thousands of dollars a few years ago, included a magnetometer, gyroscope, 3-axis accelerometer, and a barometric pressure sensor. As for the motors, he went with the 350 rpm Pololu 30:1.
Once the electronics were situated, it was time for pretty much all of the other components of the robot to come together, which primarily was all 3D printable.
“With the exception of nuts, bolts and motor brackets the robot is fully 3D printed,” Negrini explained to us. “Not having a workshop I could not have done anything at all as this design requires the precision you can only obtain with bulky and expensive equipment. Perhaps most important, I was amazed by the unprecedented freedom: you can imagine anything and have it materialized a few hours after. I ran out of washers and decided it was faster to 3D print rather than going out and buy them.”
As you can see from the photos provided, the majority of this robot consists of 3D printed parts which Negrini designed himself and printed on his Ultimaker 3D printer. The most difficult part of this entire project, for the self-taught robotics designer, was programming it, as he had very little experience in the field. He opted to rely extensively on libraries and proven code, rather than trying his own hand at developing code to get the thing to move.
“It is fascinating how mathematics and software and hardware interact with the external world and how tiny changes in the code have a great repercussion on the robot’s ability to perceive the environment and operate,” Negrini wrote.
For those of you who were wondering, this is not the end of this project for Negrini. In fact he has extensive plans for future development as he explained to us in an email.
“The future plans are to do small improvement to the robot such as adding a 3D printed sensor module or a pan mechanism for the camera. More long term I want to 3D print a ballbot balancing on a ball instead of wheels (see here)”
You can stay tuned to any additional progress that Negrini makes on this incredible self-balancing robot, on his blog. Let us know your thoughts on his work in the 3D printed Rasberry PI robot forum thread on 3DPB.com. Check out the short video clips below showing the robot balancing itself on the two wheels.
You May Also Like
3D Printing a Teleprompter at Home, Powered by Raspberry Pi
Raspberry Pis are brilliant, an opinion with which I’m sure most of readers would agree. The number of things you can do with them is limitless, from running one as...
Ulendo Receives $250K NSF Grant for 3D Printing Calibration Software
One of the common challenges with fused filament 3D printers is vibration. Running printers at high speeds often leads to excessive vibrations, which can generate low-quality prints with surface defects,...
3D Printing for Preppers: Investment Casting with PolyCast Filament
While disaster has not yet befallen my humble family, there is no shortage of emergencies globally and the COVID-19 pandemic has demonstrated just how useful even desktop 3D printing can...
3D Printing News Briefs, January 6, 2021: LLNL, CADENAS & FreeCAD, Print ‘N Play
In this edition of 3D Printing News Briefs, we’re starting with research and moving on to software, and then ending with a fun story about a cool DIY print. LLNL...
View our broad assortment of in house and third party products.