Auto Trash by Arduino




Introduction: Auto Trash by Arduino

This instructable is so called Auto Trash, but do not overlook it, it just open the lid when you closed to it. This is a not a fancy toy, you can actually buy a factory make from warehouse store, but the price is often beyond your imagination. I made this instructable for experiment purpose, I had previously made the H-bridge motor driver ( that could be useful here, I connected the driver with bipolar stepper motor to arduino broad and the supersonic transducer.

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

Step 1: The Litter Bin

I choose a small litter bin, originally I wanted to install a large bin, but the motor was not powerful enough to pull up the lid. I installed a small rod extended the back side of the lid, and pull the rod with a wire connected to the motor disc or crank shaft. Actually this can be done with servo motor, I just transplanted the assembly from large bin to small bin.

Step 2: The Code

The connection is shown here

#include <Stepper.h>

const int stepsPerRevolution = 20;

// change this to fit the number of steps per revolution // for your motor

// initialize the stepper library on pins 8 through 11: Stepper myStepper(stepsPerRevolution, 8, 9, 10, 11);

void setup() {

// put your setup code here, to run once:

// set the speed at 60 rpm:


pinMode(7, OUTPUT);//trig

pinMode(6, INPUT);//echo


void loop() {

// put your main code here, to run repeatedly:


if (scan()<15) {


delay (1500);


delay (1000);




long scan() {

long duration;

digitalWrite(7, LOW);


digitalWrite(7, HIGH);


digitalWrite(7, LOW);

duration = pulseIn(6, HIGH);

return (duration/2) / 29.1;


void watchdogSetup(void){

WDTCSR |= (1<<WDCE) | (1<<WDE);

WDTCSR = (1<<WDIE) | (1<<WDW) | (0<<WDP3) | (1<<WDP2) | (1<<WDP1) | (1<<WDP0);

ISR(WDT_vect) {

// Watchdog timer interrupt.


Step 3: A Special Feature

I noticed the bipolar motor consumed 1A current at 5V even no movement, the motor pitches are engaged, this made the motor hot without any work done, but when I reset the board the current can ceased, so I add a watchdogsetup() code to reset the board, check the end of video.

Be the First to Share


    • Magnets Challenge

      Magnets Challenge
    • Raspberry Pi Contest 2020

      Raspberry Pi Contest 2020
    • Wearables Contest

      Wearables Contest

    2 Discussions


    3 years ago

    nice ideas


    3 years ago

    The electronics needed are about as big as the bin. Not real practical at that size but if you can get them smaller and the bin bigger its a brilliant idea