Hexapod—a Linux-Powered Spider Robot
Building a Spider
Here are the required resources to build a spider:
Framework: six servo motors AX-12/RX-10/RX-28 from Robotis, 3D-printed casing.
Computing unit: one fit-PC2 motherboard based on Intel Atom Z530 from CompuLab.
Labor hours: 380.
Distribution: Ubuntu Linux 9.08.
Software used: GEdit, OpenCV and C++.
Scientific field: neural networks and adaptation methods.
AB: Can you estimate how much time (in hours) it took to construct the hexapod (put together the mechanical and electrical parts) and write the software itself?
MB: Ha ha. It is an enormous amount for sure. I worked on it for hours a day, weeks at a time. The original Q-Learning robot probably took 200 hours. Then I gave it a makeover, which took maybe 100 hours, and then the other projects took maybe 80 each.
AB: You said previously that the operating system beneath the cover is Ubuntu. What IDE did you use to write the robot's middleware—Qt, WxWidgets, ncurses or something else?
MB: I actually use only GEdit and purely in C++ using OpenCV libraries. The simulations I built were done purely using OpenCV, drawing individual lines at a time. I feel like I re-invent the wheel when I do this, but I sure learn a lot!
AB: Do you release schematics and auxiliary software of a robot under the GPL or under another license?
MB: I have been looking to release my kinematics code under a license, but I know nothing in this area. Maybe LJ readers could point me in the right direction?
AB: You're a senior student at the University of Arizona, and this project is to some degree your graduation work. Do you plan to continue its future development?
MB: I look forward to implementing more functionality into the hexapod as a graduate student at the University of Arizona. Currently, I am working on a miniature version. I do want to explore the link between vision and legged locomotion through the use of biologically inspired neural networks further.
AB: Where, in your opinion, can this “spider” be used and be useful for people?
MB: The hexapod could make a great search-and-rescue-style robot. In a natural disaster like an earthquake, it would be desirable to have a large number of robots searching autonomously for survivors in a building turned to rubble. The environment is treacherous though and could cause damage to the robot. Once damage is inflicted upon the hexapod, a purely inverse kinematic-based hexapod would be rendered useless. If, however, it could re-learn, the hexapod still could operate given its new configuration. Like I mentioned previously though, it is more of a tool to explore machine learning techniques and out of the research, hopefully discover faster algorithms. Hopefully, better algorithms can be used for consumer-based robotics to increase the standard.
AB: Do you plan to use the hexapod or your next prototype CrustCrawler in autonomous walking research?
MB: Sure. The learning mechanisms I've implemented are more scientific, and I certainly encourage everyone to explore science with robotics platforms, but it is not necessarily the goal for the CrustCrawler platform. I see that as a means of making it easy for anyone to get started in the field of hexapod robotics. If the different geometry is more conducive to what I want the hexapod to do, then I will, of course, use it. The hexapods are simply tools in my mind for research. I certainly want my hexapods to be able to roam around on their own and accomplish some task even if it is mundane. The nice thing about the CrustCrawler hexapod and my personal hexapod is that they can be easily interchanged, as they use motors that communicate using identical protocols. All I have to do is change a few geometric calibration settings and it will run just fine.
Anton Borisov has broad spheres of interests, ranging from clusters and embedded devices to artificial intelligence and programmatic puzzles. One thing that unites them all is Linux, his most favorite operating system.
Realizing the promise of Apache® Hadoop® requires the effective deployment of compute, memory, storage and networking to achieve optimal results. With its flexibility and multitude of options, it is easy to over or under provision the server infrastructure, resulting in poor performance and high TCO. Join us for an in depth, technical discussion with industry experts from leading Hadoop and server companies who will provide insights into the key considerations for designing and deploying an optimal Hadoop cluster.
Sponsored by AMD
If you already use virtualized infrastructure, you are well on your way to leveraging the power of the cloud. Virtualization offers the promise of limitless resources, but how do you manage that scalability when your DevOps team doesn’t scale? In today’s hypercompetitive markets, fast results can make a difference between leading the pack vs. obsolescence. Organizations need more benefits from cloud computing than just raw resources. They need agility, flexibility, convenience, ROI, and control.
Stackato private Platform-as-a-Service technology from ActiveState extends your private cloud infrastructure by creating a private PaaS to provide on-demand availability, flexibility, control, and ultimately, faster time-to-market for your enterprise.
Sponsored by ActiveState
| Non-Linux FOSS: libnotify, OS X Style | Jun 18, 2013 |
| Containers—Not Virtual Machines—Are the Future Cloud | Jun 17, 2013 |
| Lock-Free Multi-Producer Multi-Consumer Queue on Ring Buffer | Jun 12, 2013 |
| Weechat, Irssi's Little Brother | Jun 11, 2013 |
| One Tail Just Isn't Enough | Jun 07, 2013 |
| Introduction to MapReduce with Hadoop on Linux | Jun 05, 2013 |
- Containers—Not Virtual Machines—Are the Future Cloud
- Non-Linux FOSS: libnotify, OS X Style
- Lock-Free Multi-Producer Multi-Consumer Queue on Ring Buffer
- Linux Systems Administrator
- Validate an E-Mail Address with PHP, the Right Way
- Introduction to MapReduce with Hadoop on Linux
- RSS Feeds
- Weechat, Irssi's Little Brother
- New Products
- Tech Tip: Really Simple HTTP Server with Python





5 min 34 sec ago
10 min 34 sec ago
2 hours 20 min ago
2 hours 21 min ago
3 hours 6 min ago
3 hours 55 min ago
4 hours 19 min ago
5 hours 55 min ago
5 hours 57 min ago
7 hours 50 min ago