For your Enviro-kind Disposal needs : presenting the WRONGCO Quantum Mini Dispose-It-All with Enviro-kind Technology
The action packed video of this scifi product in operation:
The fail safe operation includes an infallible quantum farady cage with magnetic reed switch door interlocks, a cooling system for the transport bed, and an intuitive operator controls.
With WRONGCO, it just has to be right.
This disposal transports any trash, garbage, junk, criminal evidence, etc, into quantum something-ness.
We aren't sure where or when, but for sure, it's gone forever.
The Dispose-It-all can be purchased in 3 sizes: the Mini, The Maxi, and the Truck.
The controls use an Arduino Nano, a N.O. pushbutton, a buzzer, 4 LEDs, 28 WS2812 LEDs in 3 strips, a COB LED, an FET driver, a 5V relay, an atomizer, and a smidge of genius.
The WS2812s and COB LED are underneath the transport pad.
The code
// NeoPixel Ring simple sketch (c) 2013 Shae Erisson // released under the GPLv3 license to match the rest of the AdaFruit NeoPixel library #include <Adafruit_NeoPixel.h> #ifdef __AVR__ #include <avr/power.h> #endif // Which pin on the Arduino is connected to the NeoPixels? // On a Trinket or Gemma we suggest changing this to 1 #define PIN 5 // How many NeoPixels are attached to the Arduino? #define NUMPIXELS 24 // When we setup the NeoPixel library, we tell it how many pixels, and which pin to use to send signals. // Note that for older NeoPixel strips you might need to change the third parameter--see the strandtest // example for more information on possible values. Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800); int delayval = 200; // delay for half a second int StartPB=HIGH; int LidOpen=HIGH; int CycleNotRunning=HIGH; void setup() { // This is for Trinket 5V 16MHz, you can remove these three lines if you are not using a Trinket #if defined (__AVR_ATtiny85__) if (F_CPU == 16000000) clock_prescale_set(clock_div_1); #endif // End of trinket special code pixels.begin(); // This initializes the NeoPixel library. pinMode(2, INPUT_PULLUP); //Start PB , trigger on LOW pinMode(3, OUTPUT); //buzzer ////D5 is reserved for WS2812 string pinMode(6, OUTPUT); //RED IL - process started pinMode(7, OUTPUT); //cover on - mag sw closed pinMode(8, OUTPUT); // YELLOW LED - cooldown cycle pinMode(9, OUTPUT); //safe to open pinMode(10, INPUT_PULLUP); //mag sw LID OPEN pinMode(11, OUTPUT); // MIST RELAY pinMode(12, OUTPUT); //COB LED MOSFET driver //initialize the LED bar for(int i=0;i<24;i++) { pixels.setPixelColor((i), pixels.Color(0,0,0)); //off pixels.show(); // This sends the updated pixel color to the hardware. delay(5); } } void LEDSCAN () { for(int i=0;i<12;i++) { // pixels.Color takes RGB values, from 0,0,0 up to 255,255,255 pixels.setPixelColor(i, pixels.Color(200,0,0)); // Moderately bright green color. pixels.setPixelColor((i-1), pixels.Color(0,0,0)); // Moderately bright green color. pixels.setPixelColor((23-i), pixels.Color(200,0,0)); // Moderately bright green color. pixels.setPixelColor(((23-i)+1), pixels.Color(0,0,0)); // Moderately bright green color. if (i==11){ pixels.setPixelColor((11), pixels.Color(0,0,0)); }// Moderately bright green color. pixels.show(); // This sends the updated pixel color to the hardware. delay(delayval); // Delay for a period of time (in milliseconds). } for(int i=0;i<12;i++) { // pixels.Color takes RGB values, from 0,0,0 up to 255,255,255 pixels.setPixelColor(i, pixels.Color(200,100,0)); // Moderately bright green color. pixels.setPixelColor((i-1), pixels.Color(0,0,0)); // Moderately bright green color. pixels.setPixelColor((23-i), pixels.Color(200,100,0)); // Moderately bright green color. pixels.setPixelColor(((23-i)+1), pixels.Color(0,0,0)); // Moderately bright green color. if (i==11){ pixels.setPixelColor((11), pixels.Color(0,0,0)); }// Moderately bright green color. pixels.show(); // This sends the updated pixel color to the hardware. delay(150); // Delay for a period of time (in milliseconds). } for(int i=0;i<12;i++) { // pixels.Color takes RGB values, from 0,0,0 up to 255,255,255 pixels.setPixelColor(i, pixels.Color(100,200,0)); // Moderately bright green color. pixels.setPixelColor((i-1), pixels.Color(0,0,0)); // Moderately bright green color. pixels.setPixelColor((23-i), pixels.Color(100,200,0)); // Moderately bright green color. pixels.setPixelColor(((23-i)+1), pixels.Color(0,0,0)); // Moderately bright green color. if (i==11){ pixels.setPixelColor((11), pixels.Color(0,0,0)); }// Moderately bright green color. pixels.show(); // This sends the updated pixel color to the hardware. delay(100); // Delay for a period of time (in milliseconds). } for(int i=0;i<12;i++) { // pixels.Color takes RGB values, from 0,0,0 up to 255,255,255 pixels.setPixelColor(i, pixels.Color(0,200,100)); // Moderately bright green color. pixels.setPixelColor((i-1), pixels.Color(0,0,0)); // Moderately bright green color. pixels.setPixelColor((23-i), pixels.Color(0,200,100)); // Moderately bright green color. pixels.setPixelColor(((23-i)+1), pixels.Color(0,0,0)); // Moderately bright green color. if (i==11){ pixels.setPixelColor((11), pixels.Color(0,0,0)); }// Moderately bright green color. pixels.show(); // This sends the updated pixel color to the hardware. delay(50); // Delay for a period of time (in milliseconds). } for(int i=0;i<12;i++) { // pixels.Color takes RGB values, from 0,0,0 up to 255,255,255 pixels.setPixelColor(i, pixels.Color(0,100,200)); // Moderately bright green color. pixels.setPixelColor((i-1), pixels.Color(0,0,0)); // Moderately bright green color. pixels.setPixelColor((23-i), pixels.Color(0,100,200)); // Moderately bright green color. pixels.setPixelColor(((23-i)+1), pixels.Color(0,0,0)); // Moderately bright green color. if (i==11){ pixels.setPixelColor((11), pixels.Color(0,0,0)); }// Moderately bright green color. pixels.show(); // This sends the updated pixel color to the hardware. delay(25); // Delay for a period of time (in milliseconds). } for(int i=0;i<12;i++) { // pixels.Color takes RGB values, from 0,0,0 up to 255,255,255 pixels.setPixelColor(i, pixels.Color(0,50,200)); // Moderately bright green color. pixels.setPixelColor((i-1), pixels.Color(0,0,0)); // Moderately bright green color. pixels.setPixelColor((23-i), pixels.Color(0,50,200)); // Moderately bright green color. pixels.setPixelColor(((23-i)+1), pixels.Color(0,0,0)); // Moderately bright green color. if (i==11){ pixels.setPixelColor((11), pixels.Color(0,0,0)); }// Moderately bright green color. pixels.show(); // This sends the updated pixel color to the hardware. delay(15); // Delay for a period of time (in milliseconds). } for(int i=0;i<12;i++) { // pixels.Color takes RGB values, from 0,0,0 up to 255,255,255 pixels.setPixelColor(i, pixels.Color(0,0,200)); // Moderately bright green color. pixels.setPixelColor((i-1), pixels.Color(0,0,0)); // Moderately bright green color. pixels.setPixelColor((23-i), pixels.Color(0,0,200)); // Moderately bright green color. pixels.setPixelColor(((23-i)+1), pixels.Color(0,0,0)); // Moderately bright green color. if (i==11){ pixels.setPixelColor((11), pixels.Color(0,0,0)); }// Moderately bright green color. pixels.show(); // This sends the updated pixel color to the hardware. delay(10); // Delay for a period of time (in milliseconds). } for (int k=0; k<15;k++) { for(int i=0;i<12;i++) { // pixels.Color takes RGB values, from 0,0,0 up to 255,255,255 pixels.setPixelColor(i, pixels.Color(0,0,220)); // Moderately bright green color. pixels.setPixelColor((i-1), pixels.Color(0,0,0)); // Moderately bright green color. pixels.setPixelColor((23-i), pixels.Color(0,0,220)); // Moderately bright green color. pixels.setPixelColor(((23-i)+1), pixels.Color(0,0,0)); // Moderately bright green color. if (i==11){ pixels.setPixelColor((11), pixels.Color(0,0,0)); }// Moderately bright green color. pixels.show(); // This sends the updated pixel color to the hardware. delay(10); // Delay for a period of time (in milliseconds). } } } void Beeper () { for (int j=0; j<25; j++) { tone(3,3000,800); delay(100); tone(3,1000,800); delay(100); } } void Beeper1 () { for (int j=0; j<10; j++) { tone(3,3000,800); tone(3,4000,200); tone(3,1000,800); } } void LED_Cooldown() { for(int m=0;m<150;m++) { for(int i=0;i<12;i++) { // pixels.Color takes RGB values, from 0,0,0 up to 255,255,255 pixels.setPixelColor((i), pixels.Color((200-m),0,(180-m))); // Moderately bright green color. // pixels.setPixelColor((i-1), pixels.Color(0,0,0)); // Moderately bright green color. pixels.setPixelColor((23-i), pixels.Color((200-m),0, (180-m))); // Moderately bright green color. // pixels.setPixelColor(((23-i)+1), pixels.Color(0,0,0)); // Moderately bright green color. if (i==11){ pixels.setPixelColor((11), pixels.Color(0,0,0)); }// Moderately bright green color. pixels.show(); // This sends the updated pixel color to the hardware. delay(15); // Delay for a period of time (in milliseconds). } delay(10); } for(int i=0;i<12;i++) { // pixels.Color takes RGB values, from 0,0,0 up to 255,255,255 // pixels.setPixelColor((i), pixels.Color((255-m),(245-m),0)); // Moderately bright green color. pixels.setPixelColor((i-1), pixels.Color(0,0,0)); // Moderately bright green color. // pixels.setPixelColor((23-i), pixels.Color((255-m),(245-m),0)); // Moderately bright green color. pixels.setPixelColor(((23-i)+1), pixels.Color(0,0,0)); // Moderately bright green color. if (i==11){ pixels.setPixelColor((11), pixels.Color(0,0,0)); }// if (i==11){ pixels.setPixelColor((12), pixels.Color(0,0,0)); }// pixels.show(); // This sends the updated pixel color to the hardware. delay(10); // Delay for a period of time (in milliseconds). } } void loop() { // For a set of NeoPixels the first NeoPixel is 0, second is 1, all the way up to the count of pixels minus one. /// drive white LED9 cycle not running CycleNotRunning=HIGH; if (CycleNotRunning==HIGH){ digitalWrite(9, HIGH);} else { digitalWrite(9,LOW);} /// serve LID OPEN LED LidOpen = digitalRead(10); //READS HIGH WHEN DOOR IS OPEN if (LidOpen==LOW) { digitalWrite(7, HIGH);}//LID OPEN LED BLUE else { digitalWrite(7,LOW);} // LID OPEN LED off BLUE /// if start pressed with lid open - annunciate condition by buzzer and flash blue LED StartPB = digitalRead(2); // read input 2 START PB has pullup, if ((StartPB==LOW)&&(LidOpen==HIGH)) ///LIDOPEN HIGH lites its LED { Beeper(); for(int i=0;i<12;i++) { digitalWrite(7,LOW); // LID OPEN LED off BLUE delay(300); digitalWrite(7,HIGH); // LID OPEN LED off BLUE delay(300); } } StartPB = digitalRead(2); // read input 2 START PB has pullup, if ((StartPB==LOW)&&(LidOpen==LOW)) { digitalWrite(9,LOW); //turn off CYCLE NOT RUNNING LED digitalWrite(6,HIGH); //turn ON RUNNING LED // tone(pin, frequency, duration) frequency: the frequency of the tone in hertz. Allowed data types: unsigned int. // duration: the duration of the tone in milliseconds (optional). Allowed data types: unsigned long. tone(3,500,1000); delay(250); tone(3,1000,1000); delay(250); tone(3,2000,1000); delay(250); tone(3,2500,1000); delay(250); tone(3,3000,1000); delay(250); tone(3,3500,1000); delay(250); digitalWrite(11,HIGH); // start mist delay(200); digitalWrite(11,LOW); // start mist LEDSCAN(); digitalWrite(12,HIGH); // flash COB ON delay(400); digitalWrite(12,LOW); // flash COB OFF digitalWrite(8,HIGH); //turn ON CYCLE COOL DOWN LED_Cooldown(); delay(2000); /// cooldown time /// ----- stop mist by closing pb twice ------ digitalWrite(11,HIGH); // start mist delay(200); digitalWrite(11,LOW); // start mist delay(500); digitalWrite(11,HIGH); // start mist delay(200); digitalWrite(11,LOW); // start mist digitalWrite(8,LOW); //turn OFF CYCLE COOL DOWN digitalWrite(6,LOW); //turn off CYCLE NOT RUNNING LED Beeper1(); } }