I am building the slider systems (v01 and v02) to do some experiments from which we hope to study how varying qualities of an interaction medium influences the experience.
A project that shows a minimalist version of mediated interaction and telepresence, is Cololo, from the Uchiyama lab in Tsukuba. (be sure to have a look at some of their other projects)
I have now gotten my slider system to mimic the Cololo behavior as follows: When one slider is moved, the other slider moves randomly for about 4 seconds. During that period, the system does not respond to input on either slider.
I set out to maintain the possibility to have feedback on slider A about the random movement of slider B in response to the initial moving of slider A. However this proved rather tricky in a closed loop feedback system. It did teach me a thing or two about how to implement such behavior. Moreover it proved once more on the one hand that my current platform has its limits for more complex behaviors, and on the other hand my own limitations when it comes to ‘control systems’ theory and implementation.
Luckily the Cololo system doesn’t have any direct feedback, so for now I don’t need it. In my current code I applied a bit of a blunt method to get the Cololo behavior. In future iterations I will definitely need the feedback, so I will have to come up with a more elegant solution. I am now looking into possible collaborations with experts in the field of mechanical engineering and control systems theory.
My current arduino code for the Cololo behavior can be downloaded here (as a zip archive).
I have been working with Pierre Lévy of the DQI group here in Eindhoven, on a paper for the IASDR 2011 conference in Delft.
The abstract was accepted some weeks ago and now, after a spurt effort, the paper is done and submitted. Thank you Pierre for taking the lead and pulling this through. Now all we can do is keep our fingers crossed. As soon as we know if it is accepted, I’ll give a synopsis here.
Moving on from Slider v01, I’ve tried to improve the performance of the system and to move towards a more stable, flexible and -hopefully- reusable arduino code.
In this video you see a motorfader box on the left and another one on the right. In between is a Tablet connected to a computer, of which you see part of the screen at the bottom.
With the pen and tablet, I control the botton slider on the screen (the white slider). The top green slider represents the box on the right and the bottom one the one on the left. The size of the box in the white slider shows the difference between the pen-input and the average position of all 3 sliders together.
The electronic circuit that controls the motorfaders has not changed from v01, I mostly re-wrote the arduino code to include a PID-controller (well, just using Proportional and Derivative component), inspired by the wikipedia and this arduino.cc post.
I have added the possibility to connect the system to a Max/MSP patch, to have a third slider to interact with the system.
However, the serial communication increases duration of the program loop, and this influences the gritty and the ‘friction’ feel on the sliders as well as the stability of the whole system.
Another TODO point is to implement error detection/correction in the serial communication as now there seems to be some noise from this.
It also seems that the whole system ‘wiggles’ to the high slider positions when MAXMSP is attached. So far I have no clue why. ( I have added some smoothing/averaging on the analog reading in the arduino, and it seems to help a little).
I solemnly vow to keep notes on my research on this page;
- thoughts and summaries on books and papers I read
- updates, video and pictures on builds and hacks
- others’ inspiring work
- ramblings and so on