Urban Tapestries - Feral Robots with Environmental Sensors

Platform selection for integration of mobile sensing with the UT system

Author: Dima Diall
Contact: ddiall <at> bigfoot <dot> com
Organization: Proboscis & Birkbeck College
Date: 30 October 2005
Version: 1.1

Abstract

This report provides a brief analysis of hardware platform solutions for a prototype being assembled to integrate mobile environmental sensing with the Urban Tapestries public authoring system. The main requirements are presented, as well as a detailed list of components that must be purchased develop the prototype for demonstration. This work directly relates to the on-going Feral Robot tasks of the Urban Tapestries research project.

Table of Contents

Overview and Requirements

In the context of the experimental Urban Tapestries public authoring framework, Proboscis in collaboration with Birkbeck College are developing a mobile sensor system "to map some of the known and visible pollution issues in and around London Fields. [This will be used] to explore the invisible pollution issues -- air quality, historic industrial pollution etc -- that may not be obvious" [1].

[1]Giles Lanes, Proboscis

Due to unforseen difficulties in the research & development process of the original Feral Robots, a change of approach was defined to enable demonstrating a proof of concept in a workshop being scheduled for December 2005. To complete an alternative, working prototype in a timely fashion a key simplification was decided...

The plan initially was to build a low-cost robot capable of roaming about autonomously in response to sensor input while relaying the collected data to the UT server. Currently, a simpler prototype is to be designed and assembled, with the same basic sensing and communication features except for the mobility aspect -- the device will be mounted on a small, remotely controlled vehicle.

The list below describes the main requirements for that the prototype's target platform must support:

  1. Small, embeddable computer with enough resources to run a minimal GNU/Linux operating system;
  2. A set of environmental sensors need are to be attached to the system via an analog/digital converter (a multi-channel ADC with at least 10-bit resolution and a few Hz of sampling rate);
  3. A GPS receiver to acquire the current geographic position and correlate it with the data sampled from the sensors;
  4. The collected data must be wirelessly transmitted to the UT server via TCP/IP networking.
  5. The entire system must be capable to run off batteries and mounted on a vehicle or robot [2].
[2]At this stage, the vehicle or robot will remotely controlled and carry a separate power source.

It must be noted that a couple of GPS receivers are available to the project. These are NMEA-compliant and support Bluetooth as the communication interface.

Regarding the wireless communication between the mobile sensor system and the UT server, either IEEE 802.11 (WiFi) or GSM/GPRS technologies can be applied. The former appears to be more practical considering the workshop's demonstration scenario -- a park in London Fields, nearby Space Studios buildings whose internet connection as well as the necessary mesh networking equipment are available for use.

Analysis of Platforms

This section presents an cursory overview of the hardware/software platforms analysed for use in this prototype described above.

PC/104 based systems

The PC/104 Consortium (http://www.pc104.org/) defined and published an established specification for embedded applications leveraging the familiar PC architecture (ranging from Intel 80386 processors to Pentium III), but in a much smaller form factor (3.6"x3.8"). After a short survey of solutions in this area, it became apparent (at least from the three vendors contacted [3]) that a PC/104 solution addressing all the requirements listed above would be rather complex in terms of hardware, involving stacking together different modules for each of the required features: processor board (w/ memory and storage), PCMCIA or CompactFlash Wi-Fi interface, possibly Bluetooth or an extra board for GPS (which has other, non-required features), an analog input board, a power supply and a battery (quite sizeable for a runtime of a few hours).

The equipment analysed seemed quite rugged and geared for industrial applications, hence unit prices are not negligible, and some of the vendors only offer hardware support although they claim their products support Linux. The number of extra components adds up and easily drives the total cost way over £600, and does not help with size and weight of the system (probably over 2 kg, with battery and enclosure). Also, without (probably expensive) integration work from the supplier/vendor, and considering the timeframe available, this option seems somewhat risky and costly.

[3]Arcom (http://www.arcom.co.uk/), Diamond Point International Electronics (http://dpie.co.uk/) and Miles Industrial Electronics (http://milesie.co.uk/).

EmbeddedX86 and EmbeddedARM

Technologic Systems (http://embeddedx86.com/ or http://embeddedarm.com/) offers very Linux-friendly platforms, both PC-compatible x86 and ARM-based systems. They ship the products with a custom distribution with out-of-the-box support for all components and maintain a Debian release, all with technical support (which includes structured documentation, good enough to get started). Their systems feature a PC/104 expansion bus, optional ADC (with an easy programming interface), built-in Ethernet (x86 also has a WiFi option via PCMCIA), serial ports (ARM also has USB), etc.

The ARM option is better suited for battery operation (less than half of x86's power consumption) and is cheaper ($150 USD vs. around $300 depending on the x86 model). Although, both WiFi and Bluetooth could be added via USB (with more or less work chasing and compiling drivers), these systems are still somewhat bulky (comparable to PC/104) and the metal enclosures do not look very light. If Bluetooth is not added, an extra GPS receiver (USB for convenience) would be required (up to $140) [4]. A development kit with software, manuals, cables, etc is also in order (cost: $180).

[4]For instance: http://www.sparkfun.com/shop/index.php?shop=1&cat=63

Gumstix

Gumstix (http://www.gumstix.com/) provides a range of embeddable computers powered by XScale processor (successor of ARM) with exceptional levels of performance and low power consumption in boards the size of a stick of gum (80x20 mm) -- and they are quite affordable too. On-board Bluetooth is optional, and there add-ons for WiFi (via CompactFlash) and ADC, too. In terms of software, there is out-of-the-box GNU/Linux support for all included components, as well as cross development environment.

Regarding the ADC to hook up the sensors there are two optional expansion boards:

  • Robostix: this add-on for robotic applications features an Atmega128 microcontroller that has an 8-channel, 10-bit ADC. Basically, this microcontroller would have to be connected to the main board via a serial and separatelly programmed to communicate with the application running on the Linux host.
  • Audiostix: this is essentially a digital audio interface with a 4-channel, 16-bit ADC. At this point it is unclear what kind of interface is exposed by the drivers (if any)...

An important aspect about Gumstix is also support -- there is a thriving user community, a rich and an updated wiki with technical information, and a active and responsive mailing. All in all, this platform apparently is able to meet all the requirements and the the price tag for whole package would be around $300 USD (assuming the usage of the existing Bluetooth GPS receivers). This platform looks really well suited for our purposes from a cost, size and weight point of view; however, packaging would have to be custom made.

Conclusions and Recommendations

As it is apparent from the analysis above, the two latter platforms are useable to develop the prototype of mobile sensor in question. That said, overall Gumstix appears to offer more advantages than drawbacks in this particular application.

Appendix - Component List

This section lists all the hardware components deemed necessary to start developing the mobile sensor prototype, using the Gumstix platform. Some non-critical components are also listed and should be considered for purchase (now or later), depending on the available budget, as these may turn out to be needed to work around unforseen shortcommings of the core hardware configuration.

Caution!

Prices are $USD and do not include shipping costs!

Items marked with '*' in the table are optional. Below are links to the relevant Gumstix online store pages:

No. Item Name Price Description / Features Web link
1 connex 400xm-bt $189.00 XScale 16MB 400MHz Bluetooth platforms
2 netCF $65.00 Ethernet + CompactFlash slot expansion
3 CF WiFi card ~$70.00 CompactFlash WiFi 802.11b see below
4 robostix (w/ headers) $49.00 ATmega128 MCU w/ ADC expansion
5* audiostix $40.00 Extra ADC (just in case :-) expansion
6 tweener $20.00 Helper board + console port expansion
7 null-modem cable $12.00 Cable for serial console accessories
8 wall adapter 5.0v $10.00 Power supply for development accessories
8 battery pack (x12) $17.80 2500 mAh NiMH batteries (AA) sparkfun1
9 battery holder $1.95 4xAA battery holder (square) sparkfun2
10* battery charger $19.95 8-Bay AA NiMH/NiCad charger sparkfun3
11 programmer (robostix) $14.90 AVR-PG1B w/cable - ATmega128 sparkfun4

Note

The 'connex 400xm-bt' is ideal to develop the prototype as it has 16MB of flash memory, but if it is out-of-stock (these Bluetooth models seem to be very popular!), we can replace it with 'connex 400-bt' model (which only has 4MB of flash).

Note

If 'netCF' happens to be out-of-stock, a 'cfstix' can be bought in its place for $25.00 (same web page)... The 'netCF' board has the advantage of having an ethernet interface, which may come in handy during development and testing.

WiFi Interface

The CompactFlash add-on boards ('netCF' and 'cfstix') do not include a WiFi interface, only a socket to connect it... Unfortunately, the only CompactFlash WiFi interface "officially" supported -- Netgear MA701 -- was discontinued. Nevertheless, it should still be possible to find it through www.ebay.com or froogle.google.com, e.g.:

Gumstix customers also reported success with Belkin F5D6060 and AmbiCom WL1100-CF.

Caution!

The only WiFi 802.11 cards that can be used with gumstix are in CompactFlash form factor (typically seen in PDA); not PCMCIA, USB, etc.

Enclosure and Mounting

The only cases carried by the Gumstix online store are for a standard configuration they sell and will this set-up will not fit there... At this point it is still unclear how this should or will be addressed, but Polulu (http://www.pololu.com) can a laser-cut acrylic enclosure if provided with a CAD file.

Also to consider later is the attachment of the sensor kit to the ADC, as well as how to locate the Bluetooth GPS receiver in relation to the rest of the system intereference may occur in the wireless communication. Finally, the whole package must be mounted on the target vehicle/robot.

Remotely controlled vehicle

The choice of vehicle will really depend on the type of terrain in the park, etc... For consideration there is this radio controlled, 24cm-long cargo truck, sold at $4.99 [sic!]: http://www.softwareandstuff.com/CES10234.html