After some non-robot delays (got to pay the bills), intellectual work resumes. Here is a top-level state machine for Nematon, showing the various modes of operation. Driving around occurs during “Surface” mode, while diving operations happen during “Dive” mode. “Remote” mode is intended for real-time control, akin to an RC car or airplane.
The Federal Communications Commission recently sent two letters indicating that the celebrations regarding Nematon I receiving an official ship station license were premature (the letters will be posted shortly). The license has been withdrawn until further data can be provided.
In response to the FCC’s requests for additional information, the enclosed report was prepared. It includes some of the Sketchup drawings mentioned in the last post, reference listings of the sources of various components, plus an extended (amateur) analysis of the regulatory status of watercraft like Nematon I.
Due to a documentation requirement (which will be explained in the next post), some detailed drawings of Nematon I had to be generated in a hurry.
Using Sketchup and its associated Engineering Toolbox, a pretty detailed drawing in 3D was created. A couple of images are shown below. Some work is underway to embed a 3D image in this site for viewing, but until that’s done, these will have to do.
Congratulations to the lads at Blue Robotics, who met their Kickstarter funding goal… twice over, with a little help from Poolbot. This means that 3 T100 thrusters, with electronic speed controllers (ESCs), will arrive here within 2-3 months.
With the thrusters being an integral part of the Mk III design, it’s time to consider the actual total costs of Poolbot’s makeover. Presenting the bill of materials (BOM)…
As seen below, the low-cost MIT SeaPerch design is now firmly in the rear-view mirror. Fortunately, many of these items were already on-hand. The costs of the larger PVC and sealing the solar panels against water are not shown.
A depth sensor has arrived: a Measurement Specialties 5541C, which should be good to 14 bar (at least 450 feet of depth). It’s quite simple, featuring 8 solder points, of which only 6 are needed for normal operation.
It uses the Serial Peripheral Interface, though not by name (the documentation merely mentions a “three-wire interface”). However, a little research shows that removing the device select wire from standard 4-wire SPI gives you the same connections as the sensor uses. Like the camera (next post), the sensor operates with a lower supply voltage than the Arduino, so level-shifting is needed.
This should be relatively easy. Here’s the hard part:
Mounting it to a PCB with some sort of 6-pin connector is going to be a major challenge.
Selecting batteries or even solidifying the electronics means figuring out the maximum dimensions of any given rectangular shape that will still fit within the tube. If only the diameter is limited, then a variety of rectangles may fit. Time to pull out some geometry…
Thanks to a particularly good website for batteries, a complete set of dimensions for a variety of batteries is available. The equation above can show whether a particular battery will fit in the tube or not, based on its width and length (assuming “depth” extends along the tube’s axis). Performing some calculations with the existing central tube, electronics and two batteries, some options emerge:
using an alternative 12 V battery, at 3.8 Ah, measuring 7.6″ x. 2.8″ x 1.85″
stacking the electronics within a 5″ x 2.25″ area gives 2.68″ of available height for both the electronics and ballast (not much, but usable)
Motor load measurements are still needed to confirm that 3.8 Ah is sufficient for propulsion. The Arduino Mega and Motor Shield fit within an area 5″ x 2.25″, but the connectors and DHT11 sensor need to be cleverly stacked on top. And 2.5 lbs of ballast needs to fit under the electronics within about 2.28″ of space, total.
It’s either this or recalculating displacement using a longer tube, plus actually building it.
The latest Poolbot program updates have enabled XBee transmission of arbitrary strings up to the 100 byte payload limit. In drydock, the Arduino is connected via USB to a PC, used as a “dumb terminal”; the Arduino is doing all the display work, and the XBees operate in a simple loop confirming that a communications link exists.
The next steps are to move all the serial link data processing from the Arduino Mega 2560 to a PC. The Arduino can then transmit compressed sensor data via XBee payloads, and let the PC locally decompress the payload and print the information in a human-readable format. Remote control of the motors becomes possible.
Pictures sometimes explain better than words, so here’s the design today, and what’s planned for the future.
Here is a close-up image of the Poolbot main control board, using the Arduino Mega 2560 R3. The Adafruit Motor/Stepper/Servo shield is mounted on top, while individual wires connect to the motors, batteries, and ComPod. The DFRobot “wings” from the Arduino Uno R3 came in handy for making these connections.
The motor batteries are not connected in this picture.
The small blue rectangle in the center is the DHT11 temperature/humidity sensor. This, plus a few capacitors, is mounted to a breadboard, and can indicate whether Poolbot overheats or encounters a severe-but-not-catastrophic leak.
Yes, that’s a rubber band on the right-hand side. It’s called a “prototype” for a reason.
As the current revisions to Poolbot have turned into exclusively software problems — the hardware engineer’s kryptonite — pause to consider the Poolbot design features. If all are included, Poolbot will be an extremely flexible platform for all sorts of long-range surface and sub-surface operations: mapping, inspection, support of divers… “the deep’s the limit.”
The list below shows both the implemented items (in black) and the unimplemented ones (in red), grouped by category. Features are listed only once, even if they could credibly be associated with more than one category.
A few notes:
RockBLOCK – the minds at FishPi found this, a small, inexpensive, Arduino-compatible module for SMS communications through the Iridium satellite network. It appears to carry its own GPS, so using it would enable removing the current GPS module.
AIS – the Automatic Identification System is a vessel-tracking network based on VHF, satellites, and GPS, to enable collision avoidance and traffic monitoring. A unique ID on each vessel enables reporting of vessel position, ports of call, type, and other useful information. Several sites show AIS information free of charge to the public, including MarineTraffic.com. Again, the integrated GPS means that the current Poolbot antenna can be removed.
These two toys will be the most expensive items, assuming that second-hand AIS units are still available (and programmable).
The 3-axis accelerometer has been purchased and tested with an Arduino Uno, but has not yet been integrated into Poolbot. The full report on how the GPS, XBee, Mega, temperature sensor, and motor control work together will have to wait until the next post.