History of Abe Howell's Robotics 1 Challenge
Abe Howell's Robotics was started back in 2003. Prior to that the founder and owner, Abe Howell, was making low-cost robots for use in various educational environments.
Figure 1. Simple remote controlled CD-Robot.
Above in fig 1 you can see CD-Robot, which is a remote controlled robot made almost entirely of CDs. A simple wireless 2-channel relay board is used to control 2-modified hobby servos. A group of middle school students actually assembled these robots as part of a summer program.
Figure 2. Original CD-Robot.
The Original CD-Robot is shown above in Fig 2. The body of the robot is almost entirely built from used CDs and 3M's Dual-Lock™ tape. A handheld computer provides the intelligence for this robot. This robot was used in a middle school math course to reinforce concepts and theories related to 2D Coordinate mathematics.
Figure 3. CDbot Robot shown with Lynxmotion IRPD sensors.
Fig. 3 shows the first robot kit sold by Abe Howell's Robotics. The "brains" of this robot are supplied by an OOPIC-I controller board.
In Fig 5 we see that the CDbot was able to leverage many off-the-shelf controllers.
From Fig 6 we see that CDbot could also utilize Bluetooth wireless and RFID hardware in order to locate passive 125 kHz tags.
Figure 7. Swarm of 25 CDbots.
The CDbots were low-cost at ~$100 and therefore large swarm robotics (Fig. 7) became more economically viable.
The ABE board was designed around the low-cost PIC16F877A, an 8-bit microcontroller by Microchip®. The idea was to create a low-cost robot board that would be able to read various sensors, control attached motors and communicate with higher-level devices using the built-in UART. We also wanted to build-in the ability to read and write passive RFID tags, so that the robot could interact with the environment in a unique way. ABEbot was fully open-source meaning that end-users could freely download the software source code along with PCB design files and mechanical design files and modify as needed.
The production ABEbots ended up looking like the robot shown above in Fig 9. These robots could read and write passive 125 kHz RFID tags along with reading (5) Sharp® GP2D12 IR sensors, (2) cadmium sulfide light sensors and one battery voltage detection circuit. Wireless communication with a high-level device such as a laptop, desktop or handheld computer was achieved by using Bluetooth.
In order to create a suitable robot swarm, you must first develop the appropriate hardware so that they can communicate with one another. In order to achieve this we developed a ZigBee wirless PCB that is shown in Fig. 10 above.
In order to be able to support new technology we designed a new controller board for a new robot, Open-Robot. We carried forward any of the technology that made sense, but added features such as a 10 MHz crystal that allowed the new PIC18F4520 to be run at 40 MHz. We also added the In-Circuit Programming/Debug (ICD) connector and a high-efficiency +5 volt regulator.
Figure 12. Open-Robot shown with prototype wireless add-on PCB and MatchPort b/g WiFi module and SRV1 camera board
We also had to develop a wireless add-on PCB that supported the new MatchPort b/g WiFi module and previously used Xbee® ZigBee™ module. This board also needed to support stacking the SRV1 Camera board made by Surveyor Corporation.
Early in 2011, Abe Howell started development on a new Open-Robot that would be based upon the 32-Bit UNO32™ development board. This board is based on Microchip's new 32-bit microcontroller series and also leverages the well-known Arduino™ stackable board layout. The first board spin did not have the +3.3 volt high-efficiency voltage regulator and only supported (2)-Sharp® GP2Y0D810Z0F IR sensors.
The first wireless PCB spin was targeting the Xbee® WiFi module, but testing revealed that these modules did not easily connect to a WiFi enabled device unless a 2nd Xbee® module was used.
We finally settled on the RN-XV WiFi module from Roving Networks because of both cost and functionality. The RN-XV can be purchased for ~$35 and supports Infrastructure and AdHoc TCP/IP connections. We added the option of using a high-efficiency +3.3 volt regulator for those who are not using it with Open-Robot. A set of jumpers allow the end-user to connect with either UART2 or UART1. The jumper allows the end-user to boot the RN-XV module in AdHoc mode and thereby configure across a wireless connection without using a special and expensive development board. The UNO32™ development board can be programmed using the Multi-Platform IDE (MPIDE) and a USB cable.
The first batch of 32-bit was released in 2012. In this document we have seen the very first robots that were created by Abe Howell's Robotics and now approximately 10 years later we are releasing our latest and greatest 32-bit robot and plan to continue to develop additional add-on boards related to RFID and even a low-cost SPI Camera board with external SRAM memory for storing image data. In order for the just-shown robots to function the end-user must have the ability to develop their own unique software. Abe Howell's Robotics has supported this by offering various pieces of specially developed software, source-code, GUIs, class libraries, examples and code snippets.
For Howell's code snippets and examples click here.
NCPS CDbot Programming GUI
One of the first pieces of unique software was created for the CDbot, so that end-users could easily create programs, compile and then upload to their robot. This specially developed software wrapped around the OOPIC compiler and allowed entry-level users the ability to create a program using buttons, scroll-bars and drop-down menus.
Open-Robot Code Engine
The Open-Robot Code Engine software was created using Microsoft's® Visual C#. The Code Engine provided a quick and easy way for end-users to create fairly complex programs for their Open-Robot, but without needing advanced C# programming knowledge. After compiling, the actual source code was displayed to the end-user, so that they could peak under the hood and begin to understand how their code was being created.
Open-Robot Manual Control GUI
The Open-Robot Manual Control GUI provided an easy-to-use interface for exploring Open-Robot's capabilities. This GUI wraps around the freely available C# Class library that encapsulates the robot's functionality along with the low-level TCP/IP communication code. A serial version of both the GUI and class library was created for use with the Xbee® ZigBee™ version.
In continuing with our long history of software support we have created a C# class library and corresponding example GUI, so that end-users can learn how to create their own unique applications.
We also created a library for use with the MPIDE, so that end-users can quickly and easily create their own UNO32™ applications.
Abe Howell's Robotics has created many other software applications for specific educational and research applications, but these were not part of the previous discussion. We hope that you will find our robotic products useful in your quest to conquer the vastly wonderful world of robotics!