Im working on code that will make blobs behaviour unpredictable. So that every time it gets bitten it reacts differently. The code isn't finished yet but anyway.
ARDUINO CODE
// set pin numbers:
const int buttonPin = 7; // the number of the reedswitch pin
long randNumber;
//const int motorPin = 8; // the number oh the motor pin
// variables will change:
int buttonState = 0; // variable for reading the pushbutton status
int pin2 = 2;
int pin3 = 3;
int pin4 = 4;
int pin5 = 5;
int timer = 100;
void setup() {
// initialize the reedswitch pin as an input:
pinMode(buttonPin, INPUT);
// initialize the motor as as output
// pinMode(motorPin, OUTPUT);
// initialize the LED pin as an output:
pinMode(pin2, OUTPUT);
pinMode(pin3, OUTPUT);
pinMode(pin4, OUTPUT);
pinMode(pin5, OUTPUT);
randomSeed(analogRead(0));
Serial.begin(9600);
}
void loop(){
// read the state of the reedswitch value:
buttonState = digitalRead(buttonPin);
// check if the reedswitch is pressed.
// if it is, the buttonState is HIGH:
if (buttonState == HIGH) {
// turn LED on:
randNumber = random(5);
delay(50);
Serial.println(randNumber); }
if ( randNumber==1){
digitalWrite(pin2,HIGH);
delay(1000);
digitalWrite(pin4,HIGH);
delay(1000);}
else if ( randNumber==4){
digitalWrite(pin2, HIGH);
delay(timer);
digitalWrite(pin2, LOW);
delay(timer);
digitalWrite(pin4, HIGH);
delay(timer);
digitalWrite(pin4, LOW);
delay(timer);
digitalWrite(pin3, HIGH);
delay(timer);
digitalWrite(pin3, LOW);
delay(timer);
digitalWrite(pin5, HIGH);
delay(timer);
digitalWrite(pin5, LOW);
delay(timer);
digitalWrite(pin5, HIGH);
delay(timer);
digitalWrite(pin5, LOW);
delay(timer);
digitalWrite(pin2, HIGH);
delay(timer);
digitalWrite(pin2, LOW);
delay(timer);
digitalWrite(pin4, HIGH);
delay(timer);
digitalWrite(pin4, LOW);
delay(timer);
digitalWrite(pin3, HIGH);
delay(timer);
digitalWrite(pin3, LOW);
delay(timer);
digitalWrite(pin5, HIGH);
delay(timer);
digitalWrite(pin5, LOW);
delay(timer);
digitalWrite(pin5, HIGH);
delay(timer);
digitalWrite(pin5, LOW);
delay(timer);
digitalWrite(pin3, HIGH);
delay(timer);
digitalWrite(pin3, LOW);
delay(timer);
digitalWrite(pin4, HIGH);
delay(timer);
digitalWrite(pin4, LOW);
delay(timer);}
else if ( randNumber==2){
// i=0;
// turn LED off:
digitalWrite(pin2, HIGH);
digitalWrite(pin4, HIGH);
digitalWrite(pin3, HIGH);
digitalWrite(pin5, HIGH);}
else {
// turn motor off:
//digitalWrite(motorPin, LOW);
// turn LED off:
digitalWrite(pin2, LOW);
digitalWrite(pin4, LOW);
digitalWrite(pin3, LOW);
digitalWrite(pin5, LOW);
}}
Tuesday, March 2, 2010
Monday, March 1, 2010
Tinga Tinga Tales
Tinga Tinga Tales is a 52 episodes children's series based on African folk tales and aimed at 4- to 6-year olds. It was commissioned by the BBC for its CBeebies channel, and by Disney for its Playhouse channel. Named after the Tingatinga art from Tanzania, it will be made in Kenya by a studio of about 50 people.
The series was first developed by Claudia Lloyd, head of animation at Tiger Aspect, while travelling through Africa. The First three episodes premiered on the BBC website in early February 2010.Sunday, February 28, 2010
New behaviour for blob
Ive done this by using a counter (increment) in the code. So the programmed counts how long the switch is on and sends output accordingly.
ARDUINO CODE
// set pin numbers:
const int buttonPin = 7; // the number of the reedswitch pin
int buttonState = 0; // variable for reading the pushbutton status
int pin2 = 2;
int pin3 = 3;
int pin4 = 4;
int pin5 = 5;
int i = 0; // the counter
void setup() {
// initialize the reedswitch pin as an input:
pinMode(buttonPin, INPUT);
// initialize the LED pin as an output:
pinMode(pin2, OUTPUT);
pinMode(pin3, OUTPUT);
pinMode(pin4, OUTPUT);
pinMode(pin5, OUTPUT);
Serial.begin(9600);
}
void loop(){
// read the state of the reedswitch value:
buttonState = digitalRead(buttonPin);
// check if the reedswitch is pressed.
// if it is, the buttonState is HIGH:
if (buttonState == HIGH) {
i++; // increase the counter by 1
Serial.println(i);
if ( i < 4){ // if the couter is more than 4
digitalWrite(pin2,HIGH);
delay(1000);
digitalWrite(pin4,HIGH);
delay(1000);}
else if ( i < 9){ // if the couter is more than 9
digitalWrite(pin2, HIGH);
delay(timer);
digitalWrite(pin2, LOW);
delay(timer);
digitalWrite(pin4, HIGH);
delay(timer);
digitalWrite(pin4, LOW);
delay(timer);
digitalWrite(pin3, HIGH);
delay(timer);
digitalWrite(pin3, LOW);
delay(timer);
digitalWrite(pin5, HIGH);
delay(timer);
digitalWrite(pin5, LOW);
delay(timer);
digitalWrite(pin5, HIGH);
delay(timer);
digitalWrite(pin5, LOW);
delay(timer);
digitalWrite(pin2, HIGH);
delay(timer);
digitalWrite(pin2, LOW);
delay(timer);
digitalWrite(pin4, HIGH);
delay(timer);
digitalWrite(pin4, LOW);
delay(timer);
digitalWrite(pin3, HIGH);
delay(timer);
digitalWrite(pin3, LOW);
delay(timer);
digitalWrite(pin5, HIGH);
delay(timer);
digitalWrite(pin5, LOW);
delay(timer);
digitalWrite(pin5, HIGH);
delay(timer);
digitalWrite(pin5, LOW);
delay(timer);
digitalWrite(pin3, HIGH);
delay(timer);
digitalWrite(pin3, LOW);
delay(timer);
digitalWrite(pin4, HIGH);
delay(timer);
digitalWrite(pin4, LOW);
delay(timer);}
else if ( i > 10){ // if the couter is more than 10, blob is dead
digitalWrite(pin2, LOW);
digitalWrite(pin4, LOW);
digitalWrite(pin3, LOW);
digitalWrite(pin5, LOW);}
}
else {
i=0;
// turn LED off:
digitalWrite(pin2, LOW);
digitalWrite(pin4, LOW);
digitalWrite(pin3, LOW);
digitalWrite(pin5, LOW);
Serial.println(i);
}
}
Wednesday, February 24, 2010
User test
I also showed the toys 2 other kids who are brother (5 yrs) and sister (3 years). They weren't so verbal. The boy kept running of with fig cause they both loved that you had to blow out the tentacle. He ran away with it so he wouldnt have to share it with his sister. She tried out most of the puppets and was able to slowly pick up the gestures.
I have a hunch girls will be better at the gestures. I'll i know after some more tests, lets see how it turns out :)
Sunday, February 21, 2010
Interaction Prototype
With the earlier prototype I had tested the basic concept of Grub i.e. a set of monsters that each other. I know need to test two aspects of the toy:
1) How well the characters work as hand puppets?
2) How kids react to behavior of the embedded electronics?
1) HAND PUPPETS
In order to test this I have created very rough fabric prototypes of each character. I also have done this to see what kids understand of the form of each character and how they use them.
Shrimp with a finger pocket under its belly.
Fig opening its dull covering to show off bright inner petals.


Saber with finger spaces for pincers and velcro lice on its feet.
Blob with finger pockets on either side and in its eye socket/ neck. And a velcro patch on its bottom for eating lice. yummy!
2)ELECTRONICS
I have created a sock character to see how kids will react to blob lighting up. And hope to hear through the test what kinds of behaviour they would like it exhibit (fear, death etc.)
Yayeee! It actually works!
1) How well the characters work as hand puppets?
2) How kids react to behavior of the embedded electronics?
1) HAND PUPPETS
In order to test this I have created very rough fabric prototypes of each character. I also have done this to see what kids understand of the form of each character and how they use them.
2)ELECTRONICS
I have created a sock character to see how kids will react to blob lighting up. And hope to hear through the test what kinds of behaviour they would like it exhibit (fear, death etc.)
Yayeee! It actually works!
Labels:
Character,
Electronics,
Prototype,
Puppets
The Technicals
So I had a difficult 1 and half weeks working on the technology. Cause one silly little mistake and it just wont work. It drove me crazy but seems to be ready for a first test. Phew!
In order to the test the technology I decided to create my own arduino board(micro-controller). This turns out cheaper, smaller and sturdy enough to test.
So..
1) I made an arduino on a breadboard using the ITP Tutorial
(and ofcourse the first thing you do when its ready is get an LED to blink)
2) Attach the reed switch circuit to the breadboard Arduino
3) Solder everything onto a perf board.
Freeware like eagle lite is available to help you layout your circuit. But since I didn't feel like working with another software I drew it out with pencil and paper. And yes i guess this only makes sense for a relatively simple circuit.
In order to the test the technology I decided to create my own arduino board(micro-controller). This turns out cheaper, smaller and sturdy enough to test.
So..
1) I made an arduino on a breadboard using the ITP Tutorial
(and ofcourse the first thing you do when its ready is get an LED to blink)
2) Attach the reed switch circuit to the breadboard Arduino
3) Solder everything onto a perf board.
Freeware like eagle lite is available to help you layout your circuit. But since I didn't feel like working with another software I drew it out with pencil and paper. And yes i guess this only makes sense for a relatively simple circuit.
Subscribe to:
Comments (Atom)