Dishwasher Load-Unload Indicator. Jitendra Tailor

Similar documents
Installation Instructions. For the 18 Built-In Dishwasher and Front Color Panels

Project Description. The design details and parameters: Are as follows:

Open Source Home Security System

Installation Instructions Azatrax Dual Infrared Model Train Detector MRD2 'Turnout' Edition

Product Manual. TZ Analog Sensors. TZ Sensors 8115CF 8116CF 8117CF 8118CF. Date: January 2015 Document Number: _B

Azatrax Quad Infrared Proximity Detector Shield for ArduinoTM Uno, Mega and compatibles

INSTALLATION INSTRUCTIONS UNDERCOUNTER DISHWASHERS

Installation Instructions

Models NFPA 1221-A, NFPA 1221-B Public Safety DAS Annunciator Panel. Revision E 61117

Guillermo Alberto Pérez Guillen Automation Home

Redneck Air Conditioner

Web Site: Forums: forums.parallax.com Sales: Technical:

Helpful Tip: NOTE:

Technical Manual. VFD / Cabinet Heater Upgrade 110 VAC Heater to 12 VDC Heater. Provided by: Chart Inc.

Network based smoke alarm - using Arduino and iphone

Installation Instructions

Passive infrared ceiling sensor

SAVE THESE INSTRUCTIONS

D-TECT 3 IP. GJD260 IP Motion Detector

IMPORTANT INFORMATION. Revised Dishwasher Installation Instructions

Android Controlled Fire Fighting Robot

Web Site: Forums: forums.parallax.com Sales: Technical:

Installation Instructions

Ontech GSM 9040/50. Reference Manual English -1 -

F PC and AO OUTPUT BOARDS INSTRUCTION MANUAL. Blue-White. Industries, Ltd.

A BLUETOOTH-BASED HOME ALARM SYSTEM STATUS EXTENDER

A Wireless, General Purpose Tamper Detection System with Mobile User Notifications

Built-In Dishwasher. Installation Instructions. BEFORE YOU BEGIN Read these instructions completely and carefully. IMPORTANT The dishwasher MUST be

Installation Instructions

Installation & Operating Guide

Installation instructions Built-in. Dishwasher READCAREFUL KEEPTHESE INSTRUCTIONS. Model(s): DDW2405BL. IMPORTANT: The dishwasher MUST be installed to

Dishwasher Installation Instructions DW 24XT/DW 24XV

D-TECT 2 IP. GJD230 IP Motion Detector

Pakton Technologies Pty Ltd ABN Ferrier Road, Narangba Qld 4504

Public Safety DAS Annunciator Panel

DEMA SOLID PRODUCT LAUNDRY MASTER TM MODEL: 581L-1W and 581L-2W INSTALLATION INSTRUCTIONS

QUICKFIT INSTALL HOOK-UP SHEET FOR ESL KIT REV 1.17 OP

SEC 2000 Millenium Infrared Gas Detector

Chilipepper CP9000. Installation Instructions READ BEFORE INSTALLING:

Installation GUIDE VDWU524SS VDWU524WSSS FDWU524WS FDWU524 VDWU324SS FDWU324

Grove - Laser PM2.5 Sensor (HM3301)

Chilipepper CP8000. Installation Instructions READ BEFORE INSTALLING:

Sensor Evaluation Kit, SEK001

Installation Instructions

PSC-BL-I-FM-DC0(-BLE) Bi-level Dimming PIR Sensor

Installation Instructions Built-In Dishwasher

Duct and Rough Service Carbon Monoxide Sensor

MD12-2 Vehicle Loop Detector

I make no guarantee(s) about this project and am not liable for any issues that may arise from the information provided here.

General System Layout Sketch

DISHWASHER. Models DW2432 and DW2432SS. Installation Manual. Write Serial Number (on inner door of unit) here:

Installation. 324 Series Built-In Dishwashers U L. Viking Range, LLC 111 Front Street Greenwood, Mississippi USA (662)

INSTALLATION INSTRUCTIONS

R A D I O N I C S. READYKEY K2015A Alarm Event Manager. Installation Data Sheet. Description

HRX3000. Technical Manual

KIT 53. CODEPAD/ALARM USING 68HC705P9

II. METHODS AND MATERIALS

Section 2 Safety, Tools and Equipment, Shop Practices Unit 5 Tools and Equipment

Section 2 Safety, Tools and Equipment, Shop Practices Unit 5 Tools and Equipment. Unit Objectives 3/1/2012. General Hand Tools (1 of 6)

Characteristics of different sensors used for Distance Measurement

MD12-1 Vehicle Loop Detector

Mix Boiler & Font Range ( #, #, #, , )

Scotsman Technical Training. CU50 Cube Ice Machine

Danfoss gas detection units

AddressPro Digital Dimming Technical Product Information

DC200 Digital Dispenser Operating Manual

Installation Instructions Built-In Dishwasher

Introduction... 3 Setup & Suggestions... 4 Basic Use... 4 Setting Time... 4 Setting Temperature... 5 Setting Height / Pressure...

Smoke/Temperature Controlled Fan

Colour also can display the time Build a LED colour clock

C-Bus Four Channel Analogue Output Unit Installation Instructions

Tempco PCT-3000 Series Temperature Control Console with Relay Output for Heating or Cooling Applications

INSTALLATION INSTRUCTIONS

Data Sheet Version 1.0

Regulations Governing Fire Protection Systems That will be connected to the Town of Wayland Municipal Fire Alarm System.

Installation Manual PS-225 & PS-275

How to modify Volvo Alarm Siren after it has given Message: Alarm system Service Required Ver. 1.2

FUSION ALARMS TROUBLESHOOTING GUIDE CURRENT LIMIT VOLTAGE LIMIT

GEM-C Wireless User & Installation Manual. Revision October Apollo Solar Electric Limited. Documentation

Top Control Dishwasher

Installation Instructions 30 French Door Built-in Wall Ovens

Dishwasher Installation Manual

Labkotec Ice Detector

Installation Instructions

Installation Instructions

W C. Table of Contents... 2 Table des matières... 25

Summary of SNAP thermal tests

MIX Boiler & Font Range Service Manual

IMPORTANT SAFETY INFORMATION READ ALL...

INSTALLATION INSTRUCTIONS FOR SERIES 9 INTERMITTENT PILOT IGNITION CONTROL

LINEAR HEAT DETECTION CABLE DURÁN-SAFE

Passive Infrared Perimeter Monitoring Alarm System

Smart Starter Bundle. Hub. Smart Motion Sensor. Smart Door/ Window Sensor

Filtration. General Instructions

International Journal of Scientific & Engineering Research Volume 9, Issue 2, February-2018 ISSN

PRO-TEC SYSTEM ONE. Trailer Security Systems Model # PTS-2. Photo includes PTS-2 with optional pager unit

ECO N DATE DESCRIPTION OF CHANGE CHG

Added password for IP setup page : Password must be in IP format!

XPIN -XT X-ray Detector Operation Manual

MW402 Integrated Dishwasher

Transcription:

Dishwasher Load-Unload Indicator Jitendra Tailor Circuit and Software Operation The key to this gadget involves timing the activity of the dishwasher users. I preset the time to empty the dishwasher at 4.65 minutes, which closely approximates the longest time it takes my family to unload clean dishes. If you can empty your dishwasher faster, then decrease the time by decreasing the i<65 value in the statement for(int i=0; i<65; i++). If you need a longer time, increase this value. Each pass through this loop takes 4.3 seconds, so you can calculate a delay time, or given a time, calculate the value needed for variable i. When the dishwasher door stays open--and the tilt switch stays open circuit--for more than 4.65 minutes, the red LED will start to start blink, indicating the dishwasher is empty. If someone opens the door for a minute or two to take out several dishes, the green LED will continue to blink so others know the dishwasher is still contains clean dishes. The LEDs blink only when someone approaches the dishwasher. Note: My project used a tilt switch with elemental mercury because I had one handy. This project includes a mercury-free mechanical tilt switch that will work equally well. Build Instructions Build the circuit shown in the schematic diagram (Figure 1) on a piece of perforated breadboard material.

Figure 1. Schematic diagram of the dishwasher circuit. For a list of components, see the Bill of Materials for this project. I prefer Veroboard, which you can purchase from several suppliers at amazon.com. Veroboard provides copper traces you use as conductors. By cutting traces you create stand-alone conductors for power and signals. You will find more information about how to use Veroboard on the Internet. Figure 2 shows the arrangement of components for my circuit.

Figure 2. This photograph shows the arrangement of components on a piece of prototyping board for the main-circuit module that mounts inside the dishwasher's lower section that houses the motor, pump, and hot-water inlet.

To simplify programming I recommend you use an 8-pin socket for the ATtiny-85 microcontroller (MCU) chip rather than solder the chip on the breadboard. I used a 10- pin male connector along one edge of the board to make it easy to test and service. You can solder wires directly to the breadboard if you choose, or use a suitable connector. Use stranded hook-up wire for off-board connections so cables have flexibility. The controller will operate inside the dishwasher enclosure and the remaining components will attach to the front kickplate. Mount the breadboard circuit board in a plastic enclosure with a metal lid. The sensing resistor attaches to the inside of the lid and a bit of heatsink compound between the lid and the resistor ensures good heat transfer between the two (see Figure 2). After you build the circuit and have the motion sensor, tilt switch and the indicators mounted and connected to the controller with long wires, you can program the ATtiny-85 MCU chip. You must use an Arduino UNO board as the MCU programmer. The following link provides information about how to perform the programming steps. It might help to print these instructions. http://hlt.media.mit.edu/?p=1695. You also need the stand-alone compiler for the Arduino, which you can download from the official Arduino Web site at: http://www.arduino.cc/. If you have not used an Auduino UNO board before, try some of the simple examples posted on the Arduino site. When you are ready to program the ATtiny 85 MCU, open the program listing for this gadget and copy the program listing. Next, go to the Arduino compiler editing window and clear it. You don't want bits and pieces of any test or example programs left in this editing window. Then, paste the copied code into the blank editing window and follow the programming steps at the link provided earlier. Before you program the ATtiny-85 MCU with the final program, follow the software-test instructions that follow. Software Tests For easy and quick testing, you will change several program commands to shorten delay loops so you can observe circuit and software actions. I recommend you print a copy of the program and mark your changes so you can go back and reset them to the original values, or you can simply reload the original program. (For the sake of clarity, I have reformatted or abbreviated comments in the code that follows.) Find the void loop () command block and make changes as noted below: delay(3600000); //After 60 minutes of the hot water run...

1. The delay(3600000); statement creates a 60-minute (1-hour) delay, where 1000 = 1 sec. For testing, change this delay to one minutes (1000 x 60 = 60000). 2. MCU operations in the loop, for(int i=0; i<65; i++), determine how long the dishwasher door must remain open (tilt-switch now open circuit) before the program determines the dishwasher was emptied, and the red LED starts to blink. for(int i=0; i<65; i++) //After dishwasher door is opened for longer than //set time (65x4300=4.65) minutes as the red and // green LED blinking time is 4300 sec. in // total), the Red LED blinks. Change the statement to decrease the delay to just over one second: for(int i=0; i<15; i++) Instead of 65 x 4300 = 4.65 minutes, 15 x 4300 = 1.075 minutes. Or choose your own delay period. After you program the ATtiny-85 MCU with the changes noted in this section for testing, carefully insert the MCU IC into the 8-pin socket. Ensure you have the MCU properly positioned so pin 1 on the chip goes into pin 1 on the socket. In this circuit, pin-1 on the socket does not get used and does not connect to any signal. Keep the control box, tiltswitch, proximity sensor, and LEDs on your workbench. Hold the tilt switch in a position that closes its contacts. In the system tests that follow, you will apply power and check the controller's operation. To simulate hot water in the hose, use a hot-air hair dryer to heat the enclosure lid, and thus the temperature sensor underneath. Apply heat slowly. System Tests Now, when you power the unit, you should see the red LED blink. Place the tilt switch so it connects its two contacts (closed circuit). Apply heat to the heat sensor portion of the metal case top, one minute later the green LED will start to blink. You can check the motion sensor by moving your hand in front of the sensor eye at any time. You will see the green LED continue to blink for as long as you donʼt cause the tilt switch to open its contacts. Next, change the position of the tilt switch so its contacts become "open circuit," and keep it in that position for at least 30 seconds. Then re-orient the tilt switch so its contacts close. Within the set test time (1.075 minutes), you will still see the green LED blink. As soon as you leave the tilt switch in the open-circuit position for longer than

1.075 minutes, the red LED will start to blink. This is how you know that your gadget works properly. When you determine that the circuit and MCU software work properly, remove the MCU from its socket on the controller board. Change the statements in the program to their pre-testing form, or reload the original program and proceed to program the compiled code into your ATtiny MCU. Reprogram the MCU with the original unmodified code and replace the MCU in its socket on the controller board. Mounting Instructions With the prototype board in the plastic enclosure (the control box), close the aluminum lid with the temperature sensor on the inside side of the lid, and screw it tightly to the plastic case. Do not crimp the connections between the breadboard and the temperature-sensing resistor attached to the inside of the metal lid. The resistor should attach firmly to the metal lid, which in turn will press against the hot-water inlet hose as shown in Figure 3. You can use cable ties to secure the plastic case to this hose. The resistor will detect heat from hot water that flows into the dishwasher. Figure 3. The metal cover of the case that holds the control circuit must make physical contact with the hot-water inlet. The microcontroller measures the temperature via a variable-resistance sensor.

When the controller operates properly, you can attach the components to the dishwasher. The tilt switch (Figure 4) attaches to the dishwasher door to detect when someone opens it. I used long wires on the tilt switch to easily connect it to the control box. Then I inserted the tilt switch in a short piece of plastic tubing and sealed both ends of the tube with epoxy cement. Attach the tilt switch with double-sided tape behind the door. Make sure the tilt switch is straight side up when the door is closed, so the switch contacts provide a closed circuit. Figure 4. The tilt switch attaches to an internal part of the door that moves from vertical when closed to horizontal when open. The tilt switch should change to open circuit when you have the door completely open. You can mount the red and green LEDs either through the bottom kick plate or place them in a small plastic box and attach the box to the front of the dishwasher, as shown in Figure 5. Route the proximity-sensor and LED wires out of the bottom plate of the dishwasher. Close or replace the dishwasher's bottom kick plate and secure it in place, but not tight enough to crimp the wires for the proximity sensor and the LEDs.

You can use double-sided tape to hold the proximity sensor and the LEDs on the kick plate. Position the LEDs to reflect off the floor so people can easily see them when they light up. Position the proximity detector so it "sees" when someone walks near the dishwasher. Figure 5. Mounting positions of LEDs and infrared proximity sensor on the outside of the diskwasher's kick plate. The control box is not attached to the hot-water inlet in this photograph. The control circuit needs a 5-volt power supply such as the plug-in wall adapter listed in the bill of materials. You can use a standard extension cord to provide mains power to the adapter (Figure 6). In homes that have an in-sink disposer you might find a wall outlet under the sink. If you do not have this type of nearby outlet, you can cut off the male end of the extension cord and connect the extension-cord wires to the dishwasher power in the dishwasher junction box. If you must make this type of connection, check your local building and electrical codes. Your local building inspectors can suggest a way to make an approved electrical connection to a dishwasher's internal junction box. ALWAYS turn off power when you work with a mains-power circuit.

Figure 6. I used a plug-in wall-adapter power cube to power the dishwasher indicator circuit. The "cube" connects to mains power through an extension cord and a wall outlet. Check local building codes for permissible connections to mains power. Now turn on mains power to the dishwasher, or plug in the wall-adapter extension code and test your Load unload dishwasher Indicator. If it worked on the workbench, it should work with your dishwasher too. -----end-----

Jitendra Tailor Dishwasher Indicator Page 1 of 3 //Source Code for dishwasher indicator: int sensorpin = 2; // select Pin# 3 of ATiny85 for the analog input OR sensor int digital_1 = 3; // select Pin#2 of ATiny85 for digital input 1 or tilt switch int ledred = 1; // select pin#6 of ATiny85 for the RED LED int ledgreen = 0; // select pin#6 of ATiny85 for the Green LED void setup() pinmode(sensorpin, INPUT); pinmode(digital_1, INPUT); pinmode(ledred, OUTPUT); pinmode(ledgreen, OUTPUT); digitalwrite(digital_1, HIGH); // Pull up internal resistor void loop() int value = digitalread(digital_1); int sensorreading = analogread(sensorpin); if(sensorreading <=450 ) //Thermal sensor input voltage > 2.2 vdc (Hot water hose sensor //1000/450=2.2V) Initially the dishwasher is in normal stage. //The Digital input is short to GND by tilt switch. //The Red Led will flash, indicating the dishes are dirty. //Off Green LED indicating the Dishes are not cleaned yet. delay(3600000); //After 60 minutes of the hot water run through the hose OR the sensor //voltage goes down to < 2.0 vdc.(time can be changed according to //your dishwasher cycle timing) the green LED start flashing digitalwrite(ledgreen, LOW); // Cleaned dish LED blinking 5 times as the code at the end of this page. digitalwrite(ledred, HIGH); // Dirty dish indicator RED led turned off while(value==low) for(int i=0; i<65; i++) //After dishwasher door is opened for longer then set time (65x4300=4.65 //minutes as the red and green LED blinking time is 4300 sec. in total), //the Red LED blinks. greenled(); value = digitalread(digital_1); // Micro sees the digital input short to the GND by the tilt switch

Jitendra Tailor Dishwasher Indicator Page 2 of 3 else redled(); void redled() digitalwrite(ledred, LOW); digitalwrite(ledred, HIGH); digitalwrite(ledred, LOW); digitalwrite(ledred, HIGH); delay(2000); void greenled() digitalwrite(ledgreen, LOW); digitalwrite(ledgreen, LOW); digitalwrite(ledgreen, LOW); //attached to the door. //If Any of above is not true, then do this. //By opening the dishwasher door, Tilt switch opens the short to //GND (Indicates the dishwasher is emptied) //Blinking Red LED indicates the Dishwasher is ready to be load. //Blinking Red LED indicates the Dishwasher is ready to be load. //After the hot water starts running through the hose,the dish cleaned //LED Green start blinking. (This action will be in effect after an hour // or so) //0.1 seconds delay time between rapid blinking. //After the hot water starts running through the hose,the dish cleaned //LED Green start blinking. (This action will be in effect after an hour // or so) //0.1 seconds delay time between rapid blinking. //After the hot water starts running through the hose,the dish cleaned //LED Green start blinking. (This action will be in effect after an hour // or so)

Jitendra Tailor Dishwasher Indicator Page 3 of 3 digitalwrite(ledgreen, LOW); digitalwrite(ledgreen, LOW); delay(1000); //0.1 seconds delay time between rapid blinking. //0.1 seconds delay time between rapid blinking. //After the hot water starts running through the hose,the dish cleaned //LED Green start blinking. (This action will be in effect after an hour // or so) //0.1 seconds delay time between rapid blinking. //After the hot water starts running through the hose,the dish cleaned //LED Green start blinking. (This action will be in effect after an hour // or so) //0.1 seconds delay time between rapid blinking. //1 seconds delay time between rapid blinking. //----end of program---