"Die ganze Welt programmieren"

Sun will vernetzte Sensorplattformen auf den Markt bringen, die sich in Java programmieren lassen. Damit werden ganz neue Anwendungen denkbar.

vorlesen Druckansicht 1 Kommentar lesen
Lesezeit: 6 Min.
Von
  • Kate Greene

Sun Microsystems hat ein Projekt angekĂĽndigt, mit dem die bislang recht komplizierte von Sensoren-Netzwerke auch von ganz normalen Entwicklern vorgenommen werden kann. Das Ziel ist eine Welt voller miteinander vernetzter, intelligenter Sensoren, in dem das Raumklima bis ins kleinste kontrolliert, Licht und Musik im Eigenheim automatisch angepasst oder die Alarmanlage per Internet fernĂĽberwacht werden kann.

Ab Mai wird Sun damit beginnen, seine Hardware zu verkaufen – Geräte von der Größe eines Kartenspiels, die beliebig konfigurierbar sein sollen und beispielsweise Temperatur, Licht und Bewegung erfassen. Ein Entwicklerkit mit drei Sun SPOTs soll 499 US-Dollar kosten.

Hinzu kommt ein eigenes Betriebssystem, das auf der Sun-Programmiersprache Java basiert, die bereits von Millionen Entwicklern verwendet wird. Das neue Sensoren-Entwicklerkit, genannt "Sun SPOT" (für "Small Programmable Object Technology"), soll zu innovativen Sensoren-Anwendungen führen und die Entwicklung passender Software beschleunigen, die sich derzeit noch recht schwer programmieren und auf Fehler untersuchen ("debuggen") lässt. Dies gilt als einer der Gründe, warum sich die Sensoren-Technik derzeit nur schleppend verbreitet.

Sensoren-Netzwerke bestehen aus einer Ansammlung einzelner Sensor-Knoten, die manchmal nur Millimeter groß sind. Sie enthalten kleine Prozessoren, Speichereinheiten und Funksender, mit denen sie Informationen übertragen und von anderen Sensoren in ihrer Umgebung erhalten können. Mit diesen Netzen soll es möglich werden, ganze Industriebetriebe zu überwachen und zu regulieren. Aber auch kleinere Anwendungsbereiche existieren, etwa die Temperaturregulierung zu Hause oder im Büro sowie die Verfolgung von Warensendungen.

In den letzten Jahren wurde in dem Bereich viel geforscht – bei Firmen wie Sun, Intel, Siemens oder an US-Universitäten wie Berkeley, Harvard und UCLA. Eine kleine Welle von Startup-Firmen wie Ember und Crossbow Techology hat sich gebildet, die Sensoren-Anwendung aus den unterschiedlichsten Bereichen (von der Automobildiagnostik bis zur Militärtechnik) verkaufen.

Trotz der vielen Aufmerksamkeit, die dem Sektor zuteil wurde, ist die heutige Sensor-Technik nach wie vor nicht besonders leicht zu handhaben. Die Geräte lassen sich nur schwer programmieren und debuggen, wie Roger Meike, Seniordirektor in den Sun-Labors, sagt. Die Arbeit an der Sensor-Technik blieb deshalb bislang vor allem Spezialisten überlassen.

Einer der Gründe war die Verwendung des Betriebssystems TinyOS, das in vielen der Geräte steckt. Es lässt sich nur in der Sprache C programmieren. Zudem sind die Anwendungen nicht besonders leicht anpassbar – wurde ein TinyOS-Programm für ein Sensoren-Netzwerk fertig gestellt, wird es ungern wieder angefasst, wie Mani Srivastava, Elektroingenieur an der UCLA, erklärt. Will man nur einen kleinen Teil der Netzwerkfunktionen verändern, wird oft schon eine Neuprogrammierung fällig. Zudem müsse jedes Detail des Sensors bei der Programmierung beachtet werden – vom Stromverbrauch bis hin zu den notwendigen Berechnungen, bevor Daten über das Netzwerk fließen können.

Suns Java-Programmiersprache habe hier einige klare Vorteile, meint Sun-Mann Meike. Da wäre zum einen die bereits sehr große Programmierer-Community; zum anderen landet Java-Code schon lange in Kleingeräten wie etwa Handys.

Im Gegensatz zu den meisten Handys wird Java auf Sun SPOT-Sensoren allerdings direkt ausgeführt. Die verwendete "Java 2 Micro Edition" läuft direkt auf der Hardware und verhält sich wie ein Betriebssystem. Ein Java-Programmierer kann also einfach eine Anwendung schreiben, sie auf das Gerät laden, laufen lassen und nach Fehlern suchen. Dazu benötigt er nur grundlegende Java-Kenntnisse, sagt Meike. Hard- und Software sind so aufgebaut, dass sie miteinander zusammenarbeiten. Daher ließen sich die Java-Sensoren, im Gegensatz zu TinyOS-Systemen, auch sehr leicht für verschiedene Aufgabengebiete konfigurieren. Java beherrsche zudem die Stromsparfunktionen gut, meint Meike. Dies ist wichtig, da viele der Sensoren ständig laufen: "Java hat die Kontrolle über die kleine Batterie und kann intelligent entscheiden, wann das System schlafen gelegt werden kann", sagt er.

Das Sun SPOT-Java läuft direkt in einem Flash-Speicher ab, der weniger Strom verbraucht als klassischer RAM; dadurch müssen die Programmierer weniger auf die Ressourcenverteilung achten. Zudem lassen sich Java-Anwendungen anhalten und auf andere Geräte portieren: "Stirbt die Batterie auf einem Sensor, wechselt das Programm einfach auf einen anderen."

Diese Mobilität hilft auch beim Debugging von Sensor-Hard- und Software, die laut UCLA-Mann Srivastava derzeit ein kleiner Albtraum ist. Er selbst hat ein Sensoren-Betriebssystem namens SOS entwickelt: "Fehler können schwerwiegende Folgen haben", meint er. Daher sei es praktisch, ein fehlerhaftes Programm auch mal auf einen Computer zu verschieben, wo es leichter verbessert werden kann.

Srivastava sieht allerdings bei Java auch ein Problem: Die Sprache sei "sehr schwer" und verbrauchte mehr Speicher als TinyOS oder sein eigenes SOS. So benötigen Sun SPOT-Sensoren mindestens einen 32-Bit-Prozessor, während TinyOS noch auf alten 8-Bit-Chips läuft. Auch die anderen Sun SPOT-Spezifikationen sind deutlich anspruchsvoller: Mindestens 512 Kilobyte RAM, 4 Megabyte Flash-Speicher, ein 2,4 GHz-Sender und ein USB-Interface.

Harvard-Computerwissenschaftler Matt Welsh hält solche Großsensoren jedoch für durchaus sinnvoll: "Für jede echte Anwendung benötigt man eine unterschiedliche Anzahl verschiedener Geräte. Man nimmt beispielsweise zahlreiche drahtlose Sensoren, die wenig Strom verbrauchen und daneben ein größeres Gerät, das die Informationen sammelt, verarbeitet und zusammenträgt.“ Hier könnten Suns Geräte punkten. Auf kleinsten Sensoren werde Java TinyOS oder SOS jedoch nie ersetzen, so Welsh.

Sun-Mann Meike erwartet jedoch, dass Prozessoren, Speicher und Funksender in den nächsten Jahren weiter schrumpfen werden – und die Sun SPOT-Technik damit auch: "Der Trend sagt uns, dass diese Geräte künftig mehr Funktionen haben werden." Die smarten Anwendungen, die sich Java-Programmierer nun ausdenken könnten, seien hierfür schon heute bereit.

Meike glaubt auch, dass die Sun SPOT-Technik Studenten und Java-Hobby-Programmierer anziehen könnte: "Java-Entwickler erhalten damit ein Gerät, das in ihre Handfläche passt. Statt einen Desktop-PC zu programmieren, programmieren sie damit die ganze Welt."

Ăśbersetzung: Ben Schwan. (wst)