cct333lab7

Tutorial 7: Physical Computing, Tangible Bits, and Different Prototype Methods for Authoring Devices
 Physical computing is a discipline that tries to bring a graphical user interface to life. Instead of being stuck behind the screen of a computer, physical computing aims to do just as it suggests; bring that user interface into the physical world; to make the user interface "tangible" rather than graphical. Using the provided videos as an example, we can see the student downloading information, manipulating data, and even calling someone and taking photos digitally through the devices attached to his fingers. He then proceeds to manipulate the photos he took however he pleases. He even opens a book, and by looking at it can have its contents read to him through his device. On a more realistic level, we have Professor Ishii who is working with technology we have readily available to us today. By opening a bottle, information about the weather forecast is conveyed through sound; birds chirping for sunny days, etc. Another interesting invention of his is the geographic landscape that's modifiable tangibly. However, because technology doesn't allow for all the required information to be displayed tangibly, a computer layers the physical aspect of the map with that remaining information. Colouring of the ground to represent elevation levels and other data are taken care of with this. Overall, physical computing is still in its baby stages. However we can see that it's a field of discipline that should not be ignored, as technology is moving us in this direction. To interact with something directly is the best form of human learning, and this technology can have us reach levels of knowledge and experience that was never possible for us before.

d.tools is a program that allows people to prototype many different physical computing devices. In the video example, we saw the authors' prototyping a GPS-like device using d.tools. Initially they set parameters for things like physically tilting for zooming or scrolling. Then once they have the basics they develop a bit more programming to basically make the device a remote-controlled Google maps device. After the main programming of the unit is done, they develop a more solid prototype to test the application. Finally, in the testing mode d.tools records all the interactions the testers took with the prototype models, also showing which functions were used more or less frequently. All the data can also organized in any way the user desires to best understand it. They then show different neat devices that were created using d.tools, showing how effective it really is in the prototyping of physical computing projects.

Exemplar is a programming-by-demonstration tool. Using sensor-based interactions, they can develop the programming of the device on a largely trial-and-error basis. In this video the authors create a bicycle helmet that will blink left or right by the tilt of your head. Exemplar is a program that generalizes from examples; meaning that it will accept input that you create by imitating the motion with the sensor, and then you can identify it as something you want to define as a trigger to an action. Exemplar can also apply filters to calibrate and transform incoming sensor data. What that means is you can adjust the sensitivity of the sensor and even the duration of how long the minimum blink length will be within the program rather than trying to identify it by using the sensor repeatedly. You can also adjust a "maximum threshold" line to increase or decrease the maximum acceptable error in the input device but still achieve desired results. The program also supports additional features like java programming to further define signal transformations. It is can be used as a basis for creating sensor-based devices for the real world and video game applications.