Home



Tech Specs



OuiCan Team



Photo Gallery



Video

Technical Specifications

Functional Requirements

High Level:

  • Shall add grocery items to inventory via OuiCan iOS application
  • Shall track each inventory item’s quantity remaining
  • Shall track each inventory item’s time since added to inventory
  • Shall detect disposed items via OuiCan’s speech recognition
  • Shall detect weight of disposed items in OuiCan
  • Shall detect garbage level in OuiCan
  • Shall update OuiCan application inventory via wireless communication

Technical Requirements:

  • Shall allow inputs of type and quantity to OuiCan application via receipt image
  • Shall keep track of number of days since each item added to inventory
  • Shall open OuiCan lid when motion is detected at a distance of ~1 foot above lid
  • Shall detect disposed items via OuiCan using speech recognition
  • Shall detect weight of disposed items via wheatstone bridge of load cells under OuiCan
  • Shall detect garbage level via ultrasonic sensor
  • Shall process the sensor information via wired serial connections to Raspberry Pi
  • All circuitry and sensors shall be packaged within the trash can container
  • Shall send data to OuiCan application via Wi-Fi

Future Goals:

  • Shall allow inputs to OuiCan application inventory via speech recognition
  • Shall detect disposed items via OuiCan using UPC scanner via CCD camera
  • Shall send garbage weight data for city collection to improve garbage route efficiency
  • Shall suggest personalized shopping tips based on waste production history
Components

Hardware

  • Simple Human Trash Can with Motion Detection
  • Raspberry Pi 2 Model B
  • Ultrasonic Range Finder MaxSonar-EZ3
  • UPC Barcode Reader/Scanner
  • Condenser Microphone
  • Hazardous Gas Sensor
  • Mechanical Switch
  • Load Cells (x4)
  • Custom Printed Circuit Board
ouican sensors

Software

  • System level: Python
  • iOS Programming: Swift
  • Server: Firebase
  • Google Speech API
  • Tesseract: OCR Engine
Architecture

Input side:

input




Output side:

output