Deprecated: Assigning the return value of new by reference is deprecated in /home/localhiddenvariable/localhiddenvariable.com/ciid/wp-settings.php on line 512

Deprecated: Assigning the return value of new by reference is deprecated in /home/localhiddenvariable/localhiddenvariable.com/ciid/wp-settings.php on line 527

Deprecated: Assigning the return value of new by reference is deprecated in /home/localhiddenvariable/localhiddenvariable.com/ciid/wp-settings.php on line 534

Deprecated: Assigning the return value of new by reference is deprecated in /home/localhiddenvariable/localhiddenvariable.com/ciid/wp-settings.php on line 570

Strict Standards: Declaration of Walker_Page::start_lvl() should be compatible with Walker::start_lvl(&$output) in /home/localhiddenvariable/localhiddenvariable.com/ciid/wp-includes/classes.php on line 1199

Strict Standards: Declaration of Walker_Page::end_lvl() should be compatible with Walker::end_lvl(&$output) in /home/localhiddenvariable/localhiddenvariable.com/ciid/wp-includes/classes.php on line 1199

Strict Standards: Declaration of Walker_Page::start_el() should be compatible with Walker::start_el(&$output) in /home/localhiddenvariable/localhiddenvariable.com/ciid/wp-includes/classes.php on line 1199

Strict Standards: Declaration of Walker_Page::end_el() should be compatible with Walker::end_el(&$output) in /home/localhiddenvariable/localhiddenvariable.com/ciid/wp-includes/classes.php on line 1199

Strict Standards: Declaration of Walker_PageDropdown::start_el() should be compatible with Walker::start_el(&$output) in /home/localhiddenvariable/localhiddenvariable.com/ciid/wp-includes/classes.php on line 1244

Strict Standards: Declaration of Walker_Category::start_lvl() should be compatible with Walker::start_lvl(&$output) in /home/localhiddenvariable/localhiddenvariable.com/ciid/wp-includes/classes.php on line 1391

Strict Standards: Declaration of Walker_Category::end_lvl() should be compatible with Walker::end_lvl(&$output) in /home/localhiddenvariable/localhiddenvariable.com/ciid/wp-includes/classes.php on line 1391

Strict Standards: Declaration of Walker_Category::start_el() should be compatible with Walker::start_el(&$output) in /home/localhiddenvariable/localhiddenvariable.com/ciid/wp-includes/classes.php on line 1391

Strict Standards: Declaration of Walker_Category::end_el() should be compatible with Walker::end_el(&$output) in /home/localhiddenvariable/localhiddenvariable.com/ciid/wp-includes/classes.php on line 1391

Strict Standards: Declaration of Walker_CategoryDropdown::start_el() should be compatible with Walker::start_el(&$output) in /home/localhiddenvariable/localhiddenvariable.com/ciid/wp-includes/classes.php on line 1442

Strict Standards: Redefining already defined constructor for class wpdb in /home/localhiddenvariable/localhiddenvariable.com/ciid/wp-includes/wp-db.php on line 306

Deprecated: Assigning the return value of new by reference is deprecated in /home/localhiddenvariable/localhiddenvariable.com/ciid/wp-includes/cache.php on line 103

Strict Standards: Redefining already defined constructor for class WP_Object_Cache in /home/localhiddenvariable/localhiddenvariable.com/ciid/wp-includes/cache.php on line 431

Deprecated: Assigning the return value of new by reference is deprecated in /home/localhiddenvariable/localhiddenvariable.com/ciid/wp-includes/query.php on line 61

Deprecated: Assigning the return value of new by reference is deprecated in /home/localhiddenvariable/localhiddenvariable.com/ciid/wp-includes/theme.php on line 1109

Strict Standards: Declaration of Walker_Comment::start_lvl() should be compatible with Walker::start_lvl(&$output) in /home/localhiddenvariable/localhiddenvariable.com/ciid/wp-includes/comment-template.php on line 1266

Strict Standards: Declaration of Walker_Comment::end_lvl() should be compatible with Walker::end_lvl(&$output) in /home/localhiddenvariable/localhiddenvariable.com/ciid/wp-includes/comment-template.php on line 1266

Strict Standards: Declaration of Walker_Comment::start_el() should be compatible with Walker::start_el(&$output) in /home/localhiddenvariable/localhiddenvariable.com/ciid/wp-includes/comment-template.php on line 1266

Strict Standards: Declaration of Walker_Comment::end_el() should be compatible with Walker::end_el(&$output) in /home/localhiddenvariable/localhiddenvariable.com/ciid/wp-includes/comment-template.php on line 1266

Strict Standards: Redefining already defined constructor for class WP_Dependencies in /home/localhiddenvariable/localhiddenvariable.com/ciid/wp-includes/class.wp-dependencies.php on line 31

Strict Standards: Redefining already defined constructor for class WP_Http in /home/localhiddenvariable/localhiddenvariable.com/ciid/wp-includes/http.php on line 61

Strict Standards: Non-static method WP_Http_ExtHTTP::test() should not be called statically, assuming $this from incompatible context in /home/localhiddenvariable/localhiddenvariable.com/ciid/wp-includes/http.php on line 94

Strict Standards: Non-static method WP_Http_Curl::test() should not be called statically, assuming $this from incompatible context in /home/localhiddenvariable/localhiddenvariable.com/ciid/wp-includes/http.php on line 97

Strict Standards: Non-static method WP_Http_ExtHTTP::test() should not be called statically, assuming $this from incompatible context in /home/localhiddenvariable/localhiddenvariable.com/ciid/wp-includes/http.php on line 142

Strict Standards: Non-static method WP_Http_Streams::test() should not be called statically, assuming $this from incompatible context in /home/localhiddenvariable/localhiddenvariable.com/ciid/wp-includes/http.php on line 145
» Physical Computing Adam Little @ CIID

Category Archives: Physical Computing

Exhibition flier

Exhibition flier

Friday night was our first major exhibition and I would say it was quite a success. We opened our studio to the public and exhibited all 9 projects from our month long TUI course.

Keep reading to see photos of a few of the project…

Read More »

What is it?

Our project is a scale that measures a food product’s environmental impact. It looks at the carbon emitted as a result of transporting the food and measures this in terms of how many trees would be required to offset that carbon over one year.

Who is it for?

The scale is an exhibition piece intended to make the general public think about the environmental implications of the food they purchase.

Guests at the final exhibition were able to use the scale and compare different food products.

Guests at the final exhibition were able to use the scale and compare different food products.

Why is it valuable?

This scale is an exploration in how tangible interfaces can be used to interact with data on the web. With the increase in usage of RFID technology and as “everday” objects become networked, we anticipate access to untold amounts of information for things as simple as an apple. With appropriate ways to interact with this data, we hope people will be able to make more informed decisions that will help build a sustainable world.

As an exhibition piece, this scale will raise questions about the food you buy, where it comes from and how it is transported. With a subject as complex as carbon emissions and the global food economy, our scale is only an entry point and is intended to raise more questions than it will answer.

This scale can also be viewed as a hypothetical kitchen appliance or point to a future grocery store service. The data it uses is important but remains hidden to most people, and we hope this will not be the case for much longer.

A scale that measures the weight of food in terms of it's environmental impact

A scale that measures the weight of food in terms of it's environmental impact

How does it work?

The scale works by looking at the carbon emitted by transporting a particular product from it’s country of origin to Denmark. Place an RFID tagged product on the appropriate arm and try to balance the scale with the tree shaped weights. The amount of trees used to balance the scale represents the number of actual trees it would take to offset that product’s carbon emissions over one year. Swap items on the scale and compare different items from a particular country or similar items from different countries.

Place RFID tagged food here

Place RFID tagged food here

What were your key learnings?

Our team experienced many challenges in assembling the scale and in gathering the data behind the products, but most of our key learnings came in the beginning of the project. Rapid prototyping and user testing were essential for our team. We learned that building rudimentary models is the best way to test rudimentary ideas. Some models told us when an idea was going in the wrong direction while other models told us this only when in the hands of people outside our team. From the beginning, our project was heavy with metaphors - a scale and weights to measure data, and trees to represent this data. User testing was the only way to know if these metaphors were the right choice.

Place trees here - These trees, made of glass and acrylic, functions as weights

Place trees here - These trees, made of glass and acrylic, functions as weights

Team Members:

Eilidh Dickson, Siddharth Muthyala, Adam Little

Many thanks to Vinay Venkatraman for working with us on weekends and evenings.

For more information about this project and course, please see my blog archive for TUI


2D foam-core prototype for testing joints and mechanics.

Keep reading to see more videos documenting or various prototypes…

Read More »

Current prototype assembled from laser cut acrylic

Current prototype assembled from laser cut acrylic

The big task of last week was moving from the foam-core prototype to one made out of acrylic so that we can begin attaching the motor and other electronics. The version pictured above was drafted with AutoCAD and cut on the laser printer. It contains no gears but demonstrates how all the joints will work.

As someone whose background is in digital media, it has been a lot of fun watching Sid and Eilidh (both product designers) build stuff with their hands (and the laser cutter). This is a process I will be careful to never underestimate in any future projects.

Sid attatching the stepper motor

Sid attaching the stepper motor

Once we were happy with the way the scale moved, we had to begin thinking about how to attach the motor. We considered using a belt system, but once we discovered a discarded printer in the school’s dumpster, we began experimenting with the gears inside that. In the end we decided to attach a gear taken from the printer to the scale and laser cut a smaller gear that would attach directly to our motor.

At this point, Sid has found a new best friend in the laser printer. We are using this tool to do everything from etching text to cutting highly customized gears. But besides using the laser printer, we have been in the electronics labs soldering wires, the wood shop seeking advice on materials, the metal workshop cutting screws, the glass studio sand blasting acrylic and in the IT office seeking discarded printers to hack.

Eilidh soldering a power supply to the motor's driver board

Eilidh soldering a power supply to the motor's driver board

The problem we are currently facing is power. Once the motor was fixed to the scale and connected to our Arduino board, we were very relieved to see that it was actually working. The gears fit and the motor moved the arms quite smoothly. But the problem was it could hardly lift a plastic dish, let alone anything that would be placed in that dish. We experimented with stronger power supplies but in the end the problem appeared to be with our motor’s driver board. We are presently working with Vinay to assemble a driver board capable of handling more power. Hopefully then the scale will actually be able to move with things placed on top of it.

Driving the motor with the Arduino

Driving the motor with the Arduino

Besides the motor, we also connected two limit switches. They are placed below the gears and act as a safety mechanism. Once the arm goes too far to either side, it will hit the switch and turn the motor off. They will also be necessary for measuring the amount of steps the motor will take to move the scale from one side to the other. With this measurement, we can begin thinking about how to calculate the movements that will take place when different food items and weights are placed on the scale.

We have made some good progress during the past week but our to-do-list is still frightengly long (and getting longer). Once the motor is working properly, we will need to attach an RFID reader to one arm and a load cell (weight sensor) to the other. And then we have to program everything. It also might be good if the object looks nice, as opposed to clear acrylic with wires everywhere. And then we have to put together a presentation.

Final concept presentation (photo by Tobias Toft)

Final concept presentation (photo by Tobias Toft)

On Friday each group presented their concepts and current prototypes to the class. We discussed the evolution of our scale and demonstrated the current prototype. The initial reaction was a lot of confusion. People saw our object as a balance for comparing two objects and not a scale used for measuring. People were also confused by the metaphor of weight and how this can be used to measure a product’s environmental impact. How can we clarify the metaphor of a scale? How can we better present the “weight” of a product in terms of environmental impact?

Studio party in honor of Ashwin's birthday

Studio party in honor of Ashwin's birthday

After the last group presented, we quickly got on with our Friday night.

Rissoto, Girl Scout cookies and a final meeting before Monday

Rissoto, Girl Scout cookies and a final meeting before Monday

Eilidh, Sid and I got together over the weekend to discuss the feedback from our presentation. We brainstormed ways we could move away from the scale metaphor, but with the course half way over, we decided it would be best to carry on.

Sid's 2D prototype demonstrating the mechanics of our scale

Sid's 2D prototype demonstrating the mechanics of our scale

On Monday we moved away from the traditional balance and decided to use the form of a mechanical scale. Sid created this 2D prototype out of foam-core to demonstrate the mechanics of the arm.

Stealing parts from a digital scale

Stealing parts from a digital scale

With two weeks left, it is time to begin the electronics. It is often cheaper to buy a consumer product and take it apart than it is buying a single component from an electronics distributor. In this case be bought a digital scale from Ikea so that we could use the load cell sensor.

Sid and Eilidh's 3D prototype demonstrating the mechanics

Sid and Eilidh's 3D prototype demonstrating the mechanics

Finally we made a 3D model of the scale to better understand the mechanics, size, where to hide the electronics, motor, etc…

We finally got to use the new laser cutter

We finally got to use the new laser cutter

A more developed but still not functional prototype

A more developed but still not functional prototype

Experimenting with an RFID reader

Experimenting with an RFID reader

A networked scale that weighs digital data

A networked scale that weighs digital data

First version of our balance, with food on either end and indicators in the middle

First version of our balance, with food on either end and indicators in the middle

A meter, when oriented in different directions it would take different measurements

A meter, when oriented in different directions it would take different measurements

Networked scales

Networked scales

A working balance

A working balance

Different elements for a tangible user interface

Different elements for a tangible user interface

A more developed version of the scale balance

A more developed version of the scale balance