Soham Methul
Published

Trash Talker

A smart dustbin that tells us how hungry he is.

IntermediateFull instructions provided1 hour739
Trash Talker

Things used in this project

Story

Read more

Schematics

Ciruit Diagram

Connections

Implementation

Output

Code

To get the Trash Value

Arduino
/*
 * Ultrasonic Simple
 * Prints the distance read by an ultrasonic sensor in
 * centimeters. They are supported to four pins ultrasound
 * sensors (liek HC-SC04) and three pins (like PING)))
 * and Seeed Studio sesores).
 *
 * The circuit:
 * * Module HR-SC04 (four pins) or PING))) (and other with
 *   three pins), attached to digital pins as follows:
 * ---------------------    ---------------------
 * | HC-SC04 | Arduino |    | 3 pins  | Arduino |
 * ---------------------    ---------------------
 * |   Vcc   |   5V    |    |   Vcc   |   5V    |
 * |   Trig  |   12    | OR |   SIG   |   13    |
 * |   Echo  |   13    |    |   Gnd   |   GND   |
 * |   Gnd   |   GND   |    ---------------------
 * ---------------------
 * Note: You need not obligatorily use the pins defined above
 * 
 * By default, the distance returned by the distanceRead()
 * method is in centimeters, to get the distance in inches,
 * pass INC as a parameter.
 * Example: ultrasonic.distanceRead(INC)
 *
 * created 3 Apr 2014
 * by Erick Simões (github: @ErickSimoes | twitter: @AloErickSimoes)
 * modified 23 Jan 2017
 * by Erick Simões (github: @ErickSimoes | twitter: @AloErickSimoes)
 * modified 03 Mar 2017
 * by Erick Simões (github: @ErickSimoes | twitter: @AloErickSimoes)
 *
 * This example code is released into the MIT License.
 */

#include <Ultrasonic.h>

/*
 * Pass as a parameter the trigger and echo pin, respectively,
 * or only the signal pin (for sensors 3 pins), like:
 * Ultrasonic ultrasonic(13);
 */
Ultrasonic ultrasonic(12, 13);

void setup() {
  Serial.begin(9600);
  
  }

void loop() {

  Serial.println(ultrasonic.distanceRead());
  delay(1000);
}

To display the Trash Value

Python
from boltiot import Bolt, Sms #Import Sms and Bolt class from boltiot library
import json, time

garbage_full_limit = 5 # the distance between device and  garbage in dustbin in cm

API_KEY = "your Bolt Cloud api key"
DEVICE_ID  = "your device id"


mybolt = Bolt(API_KEY, DEVICE_ID) #Create object to fetch data
response = mybolt.serialRead('10')
print (response)

while True:
    response = mybolt.serialRead('10')  #Fetching the value from Arduino
    data = json.loads(response)
    garbage_value = int(data['value'].rstrip())
    print ("Garbage level is", garbage_value)
    if int(garbage_value) < garbage_full_limit:
        print("Hello Soham, I am full.    -Trash talker"
    time.sleep(200)

Credits

Soham Methul

Soham Methul

1 project • 0 followers

Comments