Updates from November, 2008 Toggle Comment Threads | Keyboard Shortcuts

  • Yury Gitman 11:54 pm on November 30, 2008 Permalink | Reply  

    antisocial cat_ servo prototype 

    Prototype 005
    Materials: PIC16F88, breadboard, servo, pot
    Notes:
    – The servo could keep turning left and right, but I couldn’t control its speed and directions.
    – I found that Arduino has a servo library that is easy to use for controlling servos. So I decided to switch to Arduino board.

    http://vimeo.com/moogaloop.swf?clip_id=2297781&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1
    servo test from maze on Vimeo.

    Prototype 006
    Materials: Arduino, servo, breadboard, IR sensor
    Notes:
    – In the very beginning, the range of IR sensor was too small. Thus the servo only moved when I almost touched the sensor. Here I scaled the value of IR sensor from 0-1023 to 0-179.
    Img_1905_2

    – The servo had a problem of drawing too much current.

    Picture_1_3

    – So I did iteration by separating power supply for the servo, but joined the grounds of the two power supplies. I also added decoupling capacitors to stabilize my voltage regulator.

    Img_1911

    Img_1912

    Img_1916

    Img_1917

    http://vimeo.com/moogaloop.swf?clip_id=2391917&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1
    prototype_arduino+servo+ir sensor from maze on Vimeo.

    – Here is the code:
    ——————————————————————————————————–
    #include <Servo.h>

    Servo myservo; //create servo object to control a servo
    int sensor = 0;  // analog pin used to connect the sensor
    int motorPin=11;
    int val;    // variable to read the value from the analog pin

    void setup()
    {
      myservo.attach(11);
      myservo.setMaximumPulse(2200);
     
      Serial.begin(9600);           // set up Serial library at 9600 bps
      pinMode(sensor, INPUT);
      //pinMode(relay, OUTPUT);
      pinMode(motorPin, OUTPUT);
      myservo.setMaximumPulse(2000);
      myservo.setMinimumPulse(700);

      Serial.print("Ready\n");
    }

    int getSensor() {
      val = analogRead(sensor);            // reads the value of the potentiometer (value between 0 and 1023)
      val = map(val, 0, 1023, 0, 179);     // scale it to use it with the servo (value between 0 and 180)

      val=max(val,5);
      val=min(val,180);

      return val;
    } //end of getSensor

    /*
    int moveFoward() {
      analogWrite(motorPin, getSensor());
      delay(1000);
      digitalWrite(motorPin, LOW);
      delay(1000);
      //digitalWrite(relay, HIGH);
      //Serial.println(getIR());
      delay(1000);
    }

    int moveBackward() {
      analogWrite(motorPin, getSensor());
      delay(1000);
      digitalWrite(motorPin, LOW);
      delay(1000);
      //digitalWrite(relay, LOW);
      //Serial.println(getIR());
      delay(1000);
    }
    */

    void loop()
    {
    /*
        val=getSensor();
        if (val<140){
            val=180;
            myservo.write(val);                  // sets the servo position according to the scaled value
            delay(15);                           // waits for the servo to get there
        }//end of if

      while(getSensor()>30){
        myservo.write(getSensor());
        Serial.println(getSensor());
        delay(15);
      }//end of while
    */
        myservo.write(getSensor());
        Serial.println(getSensor());
        delay(15);

      //moveFoward();
      //moveBackward();
      Servo::refresh();
    }
    ————————————————————————————————-
    – I tried to pause the servo after every time it turns by expanding the delay time of myservo.write(). However, its movement became unpredictable. Then I tried moveFoward() and moveBackward() above, but they didn’t work well either.
    – Another problem I have is the click sound of servo. I was wondering if extreme turning angles like 179 or 180 caused those noise.

     
    • M Bethancourt 8:51 am on December 2, 2008 Permalink | Reply

      Your Servo is probably fine. The USB Over Current notice means that there is a short somewhere in your circuit.

    • M Bethancourt 8:53 am on December 2, 2008 Permalink | Reply

      ps
      That’s a damn cute anti-social cat you’ve got up there.

  • Yury Gitman 8:03 pm on November 30, 2008 Permalink | Reply  

    How May I Help You?: Code 

    The code is very simple.  Take a look by clicking the following link.

    (More …)

     
  • Yury Gitman 4:34 pm on November 29, 2008 Permalink | Reply  

    11 LED ON! 

    http://vimeo.com/moogaloop.swf?clip_id=2380037&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1

    Led on and off depending on water height from Hsiang Ju Hung on Vimeo.

    I modified my code and finally got it work!
    IR sensor make Led turn on based on height of water
    I have not used linearizing formula yet. Just make the old one do only one thing:

    if(val < 235){       
        digitalWrite(led,255);
      }
      else{                  
         digitalWrite(led,0);
      }

    I used a water filter container to test again, which is 0 cm to 22 cm tall.
    And I set if the value is bigger less then certain number, make the led turn on.

    Here is the simulation of controlling recorder, which also works.

    http://vimeo.com/moogaloop.swf?clip_id=2380137&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1
    simulation of controlling recorder by IR sensor from Hsiang Ju Hung on Vimeo.

    But when I plugged the connector from Arduino to Play pin on my recorder, it did not make any sound.

    I checked my recorder. Everthing worked fine. I can press the button to play, record, and forward the sound.

    Problem#1: I cannot control recorder with arduino, which has worked before.Don’t know what’s wrong with it… maybe need to build a new recorder to try again.

    Problem#2: The value keeps changing every time when I put ir sensor onto the surface of water. Sometimes the same water height gives very different values. Basically, value goes from 270 to 230 when water goes from 14 cm to 22 cm. It maybe give you 270 at 14 cm this time, but next time it gives you 250 at 14 cm.  It’s very hard to control the range. I have to modify the range each time according to the value I got at 14 cm. I am wondering if there is anyway I can take the beginning value as valueA and set if val- valueA > a range then turn off the led. I’m going to modify the code.

    Oh, and I got the giant rubber duck. It’s bigger than I imagined…

    Dscn0727

    The plan is to cut a hole at the bottom and put circuit inside once I get it work well.

    Bubble

    I found the reason for different value output from ir sensor!!!  Those bubbles in front of either emitter or receiver made the reading unstable…. 

     
  • Yury Gitman 1:05 am on November 29, 2008 Permalink | Reply  

    Just in case this is useful… 

    I’m using a billion sensors in my project and realized a small problem: the Arduino only has 6 analog in pins (unless you use the Nano which has 8). So can how can you get the Arduino to ‘feel’ more sensors? With a multiplexer! And I found a tutorial from Igoe at ITP for it here: http://itp.nyu.edu/physcomp/Tutorials/Multiplexer

    Just a little knowledge to add to your P.Comp. bank…

     
    • M Bethancourt 9:29 am on December 2, 2008 Permalink | Reply

      Nice! Thanks. I posted a trick to treat digital data like analog data too.

  • Yury Gitman 11:00 pm on November 25, 2008 Permalink | Reply  

    Bchito : Week 02 

    http://vimeo.com/moogaloop.swf?clip_id=2349245&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=ff0179&fullscreen=1
    RFID Reader Test 01 from Jennifer Dopazo on Vimeo.

    (More …)

     
  • Yury Gitman 12:17 pm on November 21, 2008 Permalink | Reply  

    Charting the Uncanny Valley- Video 


     
  • Yury Gitman 3:31 pm on November 20, 2008 Permalink | Reply  

    Diagrams for PING 

    Just a little bit of planning…subject to change a bit.

    Ping

    Pingclosed

    Pingopen

    Pingschematic

     
  • Yury Gitman 3:28 pm on November 20, 2008 Permalink | Reply  

    Updated User Scenario 

    Below is a more detailed user scenario for PING – the smart trash bin. It shows a parallel of what’s happening in physical and what’s happening virtually in the same moments. Basically what happens is that every time a user does something with the bin (throws something away, empties, etc.) the bin will collect data about the event and send it to the Internet where the data will be collected and analyzed and show data visualizations, etc. about the user’s trash habits. Based on this data, the bin will receive instructions as to how it should communicate to the user via LEDs and the Winbond chip.

    Storycropped1

    Storycropped2

    Storycropped3

    Storycropped4

    Storycropped5

     
  • Yury Gitman 10:55 am on November 19, 2008 Permalink | Reply  

    vMind, RFID and everything else in the world… 

    Violet (the people who make the Nabaztag bunny) Has just released Mir:ror, an RFID console of sorts that lets you connect apparently anything you want. I got an email announcement about which I copy and pasted below…they even mention how it can be used to know when you’ve taken your vitamins, etc. So it’s cool to see how our ideas in the class are kinda being implemented in other ways. Here’s the email:

    Violet_mirror

    You asked us to let you know when Mir:ror would be available.
    Guess what… that’s now!

    Mir:ror
    makes your everyday objects interactive, smart and connected. Simply
    affix RFID Ztamps to them and show them to Mir:ror – your keys send
    email to tell people you’re back home, your pills knows when you’ve
    taken them, your toys play videos for you… There are literally
    thousands of uses that you can program through a user-friendly Web
    interface.

    http://www.ztore.net/us/index.php

     
  • Yury Gitman 8:06 pm on November 18, 2008 Permalink | Reply  

    Timeline 

    11/21 – Timer circuit with arduino, get PV cells, communicate readings back to computer via bluetooth?
    11/28 – PV cells to work with timer, Design of sunny plush
    12/5 – making all of them work together, sunny plush v 2.0, webpage with readings from sunny
    12/12 – packaging and presentation

     
  • Yury Gitman 8:02 pm on November 18, 2008 Permalink | Reply  

    Sunny 

    Picture_12

    Sunny is a buddy you can carry around who breathes sunlight, he needs his dose of sun everyday. He hangs out with you in your key chain or in your backpack. So, if you go out in the sun he goes out too.

    You can check how sunny is doing today by pressing his head, if he has had enough sun he glows green, if he is ok he glows pink, he is blue if he hasn’t had enough to breathe 😦

    An upgraded version of sunny can dream and save the amount of time spent in the sun onto the computer when he sleeps in is green pot-bed.

     
  • Yury Gitman 6:35 pm on November 18, 2008 Permalink | Reply  

    10 Test 2 and Mechanical test 1 

    Dscn0387

    Dscn0393

    I tried bath duck again but failed again 😦
    It doesn’t work to make leds on and off with ir sensor in water…

    So I developed another method.
    Dscn0647

    Dscn0646_2

    Dscn0648
    http://vimeo.com/moogaloop.swf?clip_id=2281610&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1
    Mechanical test from Hsiang Ju Hung on Vimeo.

     
  • Yury Gitman 6:15 pm on November 18, 2008 Permalink | Reply  

    BOM for the antisocial cat project 

    Materials I’m going to use so far are:

    -Breadboard
    -Arduino
    -Resisters
    -Capacitors
    -Wires
    -Potentiometer
    -PIC16F88 chip
    -LEDs
    -Regulator
    -LCD
    -IR sensor
    -Servo motor

     
  • Yury Gitman 5:08 pm on November 18, 2008 Permalink | Reply  

    B.O.M. for A Smart Trash Bin 

    This is completely tentative at the moment but here it is (in PDF format)

    Download kbekessy_bom_sheet1.pdf

     
  • Yury Gitman 2:14 pm on November 18, 2008 Permalink | Reply  

    zipper test 

    Here’s my first zipper test on a breadboard before its sewn into the pants.

    http://vimeo.com/moogaloop.swf?clip_id=2279427&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1
    zipper test from Lynn WasHere on Vimeo.

     
  • Yury Gitman 12:55 am on November 17, 2008 Permalink | Reply  

    Bchito : Week 01 

    Photobucket

    (More …)

     
  • Yury Gitman 9:20 pm on November 16, 2008 Permalink | Reply  

    reVitamind image/B.0.M 

    Revitamind3

    Radio_shack_edit_2


    (More …)

     
    • M 11:37 am on November 18, 2008 Permalink | Reply

      What about calling it V-mind? It sounds like remind and might be a little more catchy. Or, better yet, what about V-minder? Then it kind of has a double meaning. Reminder, and a minder of your vitamins. Anyways, just a thought!

    • M Bethancourt 11:39 am on November 18, 2008 Permalink | Reply

      What about calling it V-mind? It sounds like remind and might be a little more catchy. Or, better yet, what about V-minder? Then it kind of has a double meaning. Reminder, and a minder of your vitamins. Anyways, just a thought!

  • Yury Gitman 7:18 pm on November 11, 2008 Permalink | Reply  

    09 Timeline 

    11/18

    Order parts.

    Find a right range of height of bath water.
    Find a right range of IR sensor output value.
    Make leds turn on and off on different ranges of height that matches bath in air.
    Make leds turn on and off on different heights of water in bath.

    11/25
    Make recorder play different sounds on ranges of height that matches bath in air.
    Make recorder play different sounds on different heights of water in bath.
    Make the circuit working in the air.
    Make the circuit working in bath with water.

    12/02
    Make the circuit into a smaller size.
    Get a proper sized rubber duck that can fits the circuit and battery.
    Put circuit and battery into the duck.
    Test it in bath with water.

    12/09
    User test.
    Modify it.
    Document it.
    12/16

     
c
Compose new post
j
Next post/Next comment
k
Previous post/Previous comment
r
Reply
e
Edit
o
Show/Hide comments
t
Go to top
l
Go to login
h
Show/Hide help
shift + esc
Cancel