• Keine Ergebnisse gefunden

The capability to use the interaction library Squidy for academic courses was determined by its increasing stability and diversity of filter techniques. The course “Interaction de-sign for high-resolution displays” at the University of Konstanz seemed to be the best foundation for such an interaction library. A part of the course was to design somewhat novel widgets based on hardware sensors (Phidgets). The mandatory programming envi-ronment was the interaction library Squidy and its dataflow programming API. Therefore, several nodes have been provided to the students as they should focus on their interaction design and not be constrained by additional work. It furthermore allowed users with less programming experience to visually design a novel interaction technique. However, more advanced techniques had to be implemented manually by the participants. The course was given during the winter term 2009.

The main component of the Phidgets1 is represented by a logical controller board (e.g.

InterfaceKit or TextLCD) with analog and digital inputs as well as digital outputs. A controller is either connected via USB to the computer or runs a programmed routine autonomously. Several sensors can be connected to the controller’s analog input ports. A manifold collection of sensor types are available such as a light sensor, humidity sensor, pressure sensor, 2-axis and 3-axis accelerometers, servo controllers and servo motors. Most programming languages are supported to read and set values of the sensors throughout the controller.

In the course, the students were instructed to augment an everyday object with Phidgets sensors and thus make that object more useful, indispensable, helpful, or essential. Despite the students were given a single week to conceptualize, build, and implement a widget two inspiring projects evolved, which will be presented in conclusion.

5.2.1 The Advising Key Holder

Often, when people leaving their homes they forget to pick up things that are important for the day such as customer documents, an umbrella when it is raining outside, or the lights for a bicycle when it is dark outside. Therefore, a friendly reminder aware of outside and environmental conditions can help beginning a day more relaxed.

The sophisticated key holder developed by a student of the course consists of a TextLCD controller, a light sensor, a humidity sensor, and a vibration sensor. Furthermore, these sensors are cased prototypal in a paper box and a screw in the lower middle of the box is acting as handle for the keys (see Figure 5.10).

The vibration sensor is directly connected to the screw so that the key holder can indicate when the user is leaving home. Furthermore, the humidity sensor can inform the user whether it is raining outside and thus advise him to wear a cagoule and the light sensor indicating outside’s light condition and giving the advise to grab the lights for the bicy-cle. The pipeline controlling the key holder widget is illustrated in Figure 5.11. On the left, the pipeline contains a PhidgetInterfaceKit (PhidgetI...) node that receives sensor

1Products for USB Sensing and Control – http://www.phidgets.com/

(a) (b)

Figure 5.10: The context aware key holder assembled of several Phidgets sensors: (a) The hu-midity sensor indicates that it is raining outside, (b) the light sensor indicates that it is getting darker outside and bicycle lights are required.

change events of the connected temperature and humidity sensors, which then are routed to adjacent nodes. The SensorIndexSplit (SensorIn...) nodes filter the dataflow to allow routing of sensor input to a specific computation node such as TriggerSpecifiedSensors (TriggerS...), ComputeTemperature and ComputeHumidity (both Compute...). The trig-ger node activates the temperature and humidity sensors after the keys has been taken from the keyboard pin. Thereafter, in the computing nodes the current temperature and humidity values are calculated and the results routed to the adjacent ConcatenateStrings node. This node in turn sends a string to the PhidgetTextLCD that displays the temper-ature and humidity on the LCD display. In addition, this widget was developed with the first stable prototype of the Squidy interaction library.

5.2.2 The TakeCare Flower Pot

People not having a green thumb do know about the risk of having plants and flowers and not knowing if the current condition is perfect. Hence, a further project that has been implemented by a student is a flower pot taking care of a plant. This everyday object is augmented with a TextLCD controller providing the user with feedback about location condition and plant requirements (see Figure 5.12).

Integrated light and temperature sensors measure surrounding light and temperature con-ditions and thus indicating whether it is too bright or hot and the pot location needs to be changed. Further an integrated humidity sensor gives colored feedback through LEDs whether the owner should water the plant (green ˆ= water ok / yellow ˆ= needs a little water / red ˆ= needs water). Unfortunately, the pipeline of the TakeCare Flower Pot is lost and could not be reconstructed by the author of this thesis.

These briefly introduced projects showed the feasibility of the Squidy used as rapid in-teraction prototyping tool for the design of intelligent widgets. Furthermore, applications that demand the processing core of Squidy are presented in the next sections.

Figure 5.11: The Squidy pipeline controlling the sensors of key holder widget and furthermore providing textual output on thePhidgetTextLCD controller.

(a) (b)

Figure 5.12: The take care flower pot assembled of several Phidgets sensors taking care of a plant by providing the owner with valuable feedback such as surrounding light, humidity, and temperature conditions: (a) indicating that the flower needs more light and temperature needs to be decreased, (b) indicating optimal light conditions but it is too hot.