Posts Tagged ‘arduino’

Easing library for Arduino

Sunday, March 28th, 2010

I finally pulled myself together and released the easing library I wrote for the Arduino last summer. It’s based on Robert Penner’s nice work, so all credits should go to him.

Anyway, you can find it here:

http://bit.ly/arduinoeasing

First version of the Braitenberg vehicles

Tuesday, July 14th, 2009

My thesis at CIID is about objects with personality and the different ways there are to implement “artificial” personality in otherwise stupid objects. As part of my research I have decided to take a closer look at Valentino Braitenberg’s work with synthetic psychology in the beginning of the 80′s. Especially his investigations in the book “Vehicles: Experiments in Synthetic Psychology” where he designed the rather famous Braitenberg vehicles.

The vehicles are extremely simple electronic objects, that seem to show a specific personality from their actions. The interesting thing is, that they are in fact extremely stupid, but because we (humans) only look at their actions without knowing why they act as they do, we tend to project our own logic and reason to them and thereby give them a personality that they actually don’t have. It sounds a bit complicated, but actually it isn’t – it’s just because I can’t explain it properly yet :)

I decided to base them on Arduino, though it might be overkill – the reason I did it is to keep flexibility, so that I later can upload more advanced firmware to the bots. Here’s a photo I took of one of my boards – unfortunately I put it upside down!

Anyway, of course I also snapped some photos of the first vehicle and it’s half-finished sibling today. Here they are:

Braitenberg vehicle - side view

You can see more photos in my Flickr photoset.

Graphical User Interface design – Part 1

Monday, December 22nd, 2008

After having spent time with the elderly, we started thinking in concepts that could improve the life of the elderly. We had the honour of having Niels Clausen-Stuck as guest teacher for the first two weeks of our GUI design module, where he, along with Alex from CIID, helped us through the whole design process. A process looking a lot like the good old ISO13407 which I am quite familiar with after having studied product development at DTU for 5 years. Well, this post is not going to be about design processes (though it’s a topic that I’m very interested in).

After having visited the elderly, we found out that they are no longer interested in creating and sharing new memories, they are more interested in re-living old memories, with people that can help them filling in the gaps and completing their stories from the past. But it’s not always easy to find people at your own age that you can actually do this with, as almost 85% of the residents on the old folks homes have dementia to some degree. And as the course was about graphical user interfaces, we also had to create some kind of device. After lots of thinking and another visit to Plejehjemmet Aftensol, we decided to develop a “time machine”. Well, not a time machine in the traditional sense, but at least something that would help you think back in time.

Radio in BW

We decided to build a radio, that could go back in time. Instead of having a frequency scale, this radio has a time scale. Turn the knob back to the year you would like to get refreshed, and the radio will start playing content from that period. If you only want to listen to specific types of content, there is a knob for selecting that, e.g. news, radio-theater or classical music. I won’t go into the details of the UI, but we put a lot of thought into arranging the buttons and the graphical layout of the screen, to be as intuitive as possible. As this mock-up was developed in the second iteration, it is still very early – unfortunately we didn’t have time to take it to the elderly to evaluate it.

The radio set to 1978

Technically speaking the radio is just a device with a wifi connection, and access to digitalised radio archives, e.g. from Danmarks Radio or BBC. The interface is kept “old-fashioned” on purpose, to keep a higher level of familiarity to the user. Our philosophy was, that this concept is a radio and therefore it should look and feel like a radio. Not a computer or streaming mp3-player.

Electronics-wise the mock-up (or hardware sketch) was built using Flash, Arduino (+ potmeters), a hacked Nokia speaker and an Asus Eee 901, all put into a cabinet covered with sheets of paper with a wood texture printed on them. The picture below is showing the radio when it’s not covered by the fake table.

Under the hood of the radio: Arduino and Eee 901

In general the GUI class resulted in some really nice models, considering we had very short time for the projects. Take a look at some of the other mock-ups in my Flickr photostream. If you don’t want to go to Flickr, the photos from the exhibition (and some from the process) can also be found here.

Marcin's smurfFirst concept sketchPutting Post-Its on the wallMessyBrainstormingKey value
Discussing ideasGood or bad?In or out?ScenariosScenario sketchesInterviewing
Taking notesInterviewingInterviewingInterviewing EbbaSid's fist snowNordic Brainstorming
Deciding placementDeciding placementSetting up ArduinoAndreas finishing the fake woodAlmost readyCool proto. Great UI.
Cool proto. Great UI.Controlling the showNice drawingsSetting the moodAndreas demonstratingAndreas adjusting
Hmm...Singing or presenting? Or both?Memory protoTired girlsFilmingNice setup
SimonaActive wallKevin and SidUjj pretending not to have a camera aroundJust tiredTired of it
Calendar systemVisitors from JapanRadio protoThumbnail sketchesThumbnail sketchesThumbnail sketches

Physical Computing Exhibition

Saturday, November 1st, 2008

The second week of the physical computing course ended with a small exhibition/presentation where we had the honour of having Bill Verplank as part of the external crit group. The second week was dedicated to developing a small concept and building a working prototype. The brief that Gwen gave us said:

Home automation and the internet of things enable our intelligent objects to silently communicate amongst themselves at faster and higher degrees of autonomy. This requires less and less interaction and relationship with the user. These trends also create and depend on cycles of replacement and upgrading, leading to the rapid discarding of old objects. Our project will challenge these behaviors of passivity and obsolescence by exploring and adapting the cultural, physical, and psychological user interfaces that reside in the objects we have given up on or replaced. How can new interactions with and between our old objects create more meaningful, engaging, and thoughtful relationships with contemporary situations, needs, and desires?

As more and more behaviors and interactions get packed into smaller and smarter objects, what are the physical gestures and interactions we threw away with “outdated” technology that could add logic, humanity, and meaning to our daily lives or specific situations.

Please find old objects and re-imagine their functionality: the way they interact with either another object, other objects, people, or the computer in new and relevant ways.

The result of that brief ended up in many different projects, ranging from games to physical products and public installations. Our project dealt with how technology makes our lives more efficient, but at the same time steal more time from us. We wanted to create a product that would facilitate break time in the otherwise hectic workday at the office. The project was called “Rock is the new swivel” and basically combines a rocking chair, Gilbert O’Sullivan and a coffee machine. Sounds strange? I’ll explain the project in more detail in the beginning of next week when we have a video ready. Meanwhile, check out the pictures from the exhibition (thanks to Ashwin by the way – he helped me by taking a lot of the pics).

Physical Computing ExhibitionPhysical Computing ExhibitionPhysical Computing ExhibitionPhysical Computing ExhibitionPhysical Computing ExhibitionPhysical Computing Exhibition
Physical Computing ExhibitionPhysical Computing ExhibitionPhysical Computing ExhibitionPhysical Computing ExhibitionPhysical Computing ExhibitionPhysical Computing Exhibition
Physical Computing ExhibitionPhysical Computing ExhibitionPhysical Computing ExhibitionPhysical Computing ExhibitionPhysical Computing ExhibitionPhysical Computing Exhibition
Physical Computing ExhibitionPhysical Computing ExhibitionPhysical Computing ExhibitionPhysical Computing ExhibitionPhysical Computing ExhibitionPhysical Computing Exhibition
Physical Computing ExhibitionPhysical Computing ExhibitionPhysical Computing ExhibitionPhysical Computing ExhibitionPhysical Computing ExhibitionPhysical Computing Exhibition
Physical Computing ExhibitionPhysical Computing ExhibitionPhysical Computing ExhibitionPhysical Computing ExhibitionPhysical Computing ExhibitionPhysical Computing Exhibition

Physical Computing (first week)

Saturday, November 1st, 2008

Two weeks ago we started the physical computing class. The course was based on learning how to use the Arduino board as well as different basic electronic components, accelerometers, ultra sound distance sensors, servo motors and different analog sensors – our teachers in electronics and Arduino were David Mellis and Massimo Banzi, and Gwendolyn Floyd helped us with the inspiration and conceptual level. The Arduino board is probably the easiest microcontroller board to get started with, it has a large online community around it and everything is open source – that makes it really easy to get help, instructions or inspiration on how to use it. The topic wasn’t new to me – I have been working with both Arduino (which is Atmel based) and PIC processors before and know a bit about electronics and programming, but it was great to spend some time letting my inner geek loose. In the end of the first week we did some mini-projects, where the focus was on communication between two Arduino boards (via serial). I worked with Jason from Taiwan on two small rubber robots, one was sensing motion and the other one was reacting to what the first one experienced. The following video show the bots, it doesn’t really do them justice, but at least it gives an impression of their behavior. In the video it looks like they are physically connected, but actually they are not.

I was impressed with how quickly people actually got to use the Arduinos – even people that never tried either electronics or microprocessor programming before, created fairly complex interactive contraptions in only one week. Below is a bunch of pictures from the first week – notice how our class room rather quickly turned into a room filled with small robots, electronic junk, tools, sketches on crumpled paper and empty coffee cups. Second week it got even better.

Physical Computing - First weekPhysical Computing - First weekPhysical Computing - First weekPhysical Computing - First weekPhysical Computing - First weekPhysical Computing - First week
Physical Computing - First weekPhysical Computing - First weekPhysical Computing - First weekPhysical Computing - First weekPhysical Computing - First weekPhysical Computing - First week
Physical Computing - First weekPhysical Computing - First weekPhysical Computing - First weekPhysical Computing - First weekPhysical Computing - First weekPhysical Computing - First week

By the way, the latest issue of Wired had an interesting article on Arduino and Massimo.