nkinde – Physical Computing https://courses.ideate.cmu.edu/16-223/f2014 Carnegie Mellon University, IDeATe Fri, 11 Aug 2017 21:41:33 +0000 en-US hourly 1 https://wordpress.org/?v=4.7.28 Final Project – UltraSonic https://courses.ideate.cmu.edu/16-223/f2014/final-project-ultrasonic/ Thu, 11 Dec 2014 05:03:24 +0000 http://courses.ideate.cmu.edu/physcomp/f14/16-223/?p=3411 Nkinde Ambalo, Horace Hou

Introduction

For our project, Ultrasonic, we created a device that tries to quantify a sense that we, humans, can’t sense. Using a microphone and a PureData patch we created a device that can sense ultrasonic sound waves in the range of 18kHz to 20kHz. Using this information we are able to tone the frequency of the sound waves to what humans are able to perceive. Also the strength of the signal changes the volume of the sound outputted. Using this information we also wanted to be able to map the what the variety and sources of ultrasonic waves that exist in a persons environment.

Technical Aspects

Our project consisted of a raspberry pi running pure data. The patch running on pure data watched for the plugged in microphone input level to go higher than the usual for background noise. When it did it played sound through the connected output device, sound which was pitched down 6 octaves from the input sound. This allowed anyone to hear sounds that could have been above their threshold of hearing, as the high frequency tone would be below 10,000 hz. The raspberry pi had to have an external usb sound card connected to it so that it could accept both a recording device as well as output to a speaker device. Other than power, no other cables were connected to the Raspberry Pi. In the plan for this device there was also the plans to add a gps device connected to the pins of the raspberry pi, or a bluetooth adapter connected to a smartphone pinging the location of the phone every time high frequency sound was detected.

Photos

20141210_232619

20141210_232534

20141210_232512

Video

]]>
Autonomous Robot Part 3: Ghosty https://courses.ideate.cmu.edu/16-223/f2014/autonomous-robot-part-3-ghosty/ Wed, 10 Dec 2014 20:38:51 +0000 http://courses.ideate.cmu.edu/physcomp/f14/16-223/?p=3292 Introduction

Ghosty is an autonomous little robot who is adventurous and loves to explore his surroundings. However, unlike a normal ghost, he doesn’t like to scare people. Instead they actually scare him! In our most current version of Ghosty, his vision line is based on the data of two proximity sensor data reads. The difference between the data of the two proximity sensors determine whether the motors that control the wheels of Ghosty will go forward or backward and what acceleration (bigger difference equals greater speed).

Technical Details

g1

g2

Ghost was set up according to the above circuit diagram. There were two proximity sensors, both powered by the 5 volt pin on the arduino board. These sent readings to the arduino, which checked the difference between the values and turned the robot left or right if there was a significant difference between them. The difference between the proximity sensors caused a certain combination of high and low values to be sent to the motor pins, controlled through an integrated circuit that was able to operate two motors simultaneously.

 

The above circuit diagram is a modified version of the circuit diagram seen below:

GhostyDiagram

Motor Control:

Upon reaching out to Dr.Ali  from prior iteration (Ghosty II), It was decided the DRV 8833 Motor Controller (source: http://www.pololu.com/file/0J534/drv8833.pdf ) would be best to control the motors for Ghosty. After working with Dr.Ali, a program that works with the DRV 8833 Motor controller was made. The Arduino was able to send data to the Motors was using the DRV 8833, which has the ability to drive two motors simultaneously and send signals from the arduino and relay them to the motor.

The way the motor driver works is it reads two different data forms, by sending LOW/HIGH to the pin labeled BIN2, the motor driver would tell whichever motor connected to that pin to move at a slow decay if it is set to HIGH, and fast decay if it is set to LOW. Then it would move at a forward motion at a rate determined by the difference between the data read by the two proximity sensors. If sent data to BIN1 LOW/HIGH, the motor connected to the pin will also move at a slow decay if sent to HIGH and fast decay if it is set to LOW, however it will now move in reverse motion based on the difference between the data recorded from the two proximity sensors. The same conditions also apply to pins AIN1 and AIN2. BIN1 or BIN2 (as well as if AIN1, AIN2) is fed a positive value (determined by if the proximity sensor connected to A1 on the arduino reads that an object is further away from it than it is the proximity sensor connected to A0) and a negative value if A0 reads an object is further away from it than it is the proximity sensor connected to A1. If fed a negative value then the motor will move in a reverse motion and if positive, will move in a forward motion. The combination of the motors determines which direction Ghosty will go. The motors themselves (from prior iterations in Ghosty II), Solarbotics GM9 Gear Motor (http://www.pololu.com/product/188/resources  )  required around 9V of power each to show any noticeable change, which, in the current iteration was supplied by battery (Code from prior iteration (Ghosty II) Shown Below):                     ArduinoDistance

 

Servo:

Originally in prior iterations (Ghosty 2) it was decided that the arduino would be controlled by pins 9/10 from the Arduino, such that if a proximity sensor read that an object is close, Ghosty will move its arms (servos) in an upward motion, however it was decided it would be more efficient to use these pins for motors instead. The servos were originally powered by A 5V Step Up Regulator. Code shown below:                ArduinoDistanceWithServo

Puredata:

Research was done in regards to integrate puredata in the 3rd edition of Ghosty using sensors & arduino, however, under given time constraints, it was decided not to.  http://forum.pdpatchrepo.info/search/arduino-sensors.

 

Photos

20141204_152617 (1)

20141204_152543 (1)

Video:

]]>
Autonomous Robot Part 2 – Boo! Ghosty Autonomous Robot https://courses.ideate.cmu.edu/16-223/f2014/boo-ghosty-autonomous-robot/ Wed, 12 Nov 2014 15:50:33 +0000 http://courses.ideate.cmu.edu/physcomp/f14/16-223/?p=2868 Annamarie Rose, Wole Idowu, Nkinde Ambalo

Description:

Ghosty is an autonomous little robot who is adventurous and loves to explore his surrounds. However, unlike a normal ghost, he doesn’t like to scare people. Instead they actually scare him! His vision line is a proximity sensor that tells him when he had gotten too close to something. He then gets spooked and flails his arms and reverses his course. At the moment, We have completed him as far as to roll forwards, and stop when an obstacle is seen. He continues forward when there is no one in front of him anymore, and he does all of this using one proximity sensor. There are also servos attached so that he covers his eyes with cardboard for a few seconds when he sees an obstacle in his way.

This was accomplished using an arduino connected to a proximity sensor and a motor circuit. We have so far only gotten the Motor to work by powering the pins connected to it on or off by a signal from a PWM pin on the arduino.

Circuit Diagram:

Go_schem

Pictures:

photo (2)

Video:

Not Available 🙁

]]>
1C – Dream Machine – Steam Machine https://courses.ideate.cmu.edu/16-223/f2014/1c-dream-machine-steam-machine/ Mon, 13 Oct 2014 12:34:38 +0000 http://courses.ideate.cmu.edu/physcomp/f14/16-223/?p=2394 Group Members: Nkinde Ambalo, Wole Idowu, Judy Han

Roles: Nkinde as Integrator and Designer, Wole as Designer and Tutor, Judy as Tutor and Integrator

Introduction: Steam Machine

(Information will be uploaded)

]]>