Home > Engineering essays > Design a microcontroller for a washing machine

Essay: Design a microcontroller for a washing machine

Essay details and download:

  • Subject area(s): Engineering essays
  • Reading time: 6 minutes
  • Price: Free download
  • Published: 14 November 2015*
  • Last Modified: 23 July 2024
  • File format: Text
  • Words: 1,763 (approx)
  • Number of pages: 8 (approx)

Text preview of this essay:

This page of the essay has 1,763 words.

Contents
Introduction
Requirements
Hardware Elements
States
Activity
Inputs
Outputs
Introduction
This is a coursework designed for the students to design a microcontroller for a washing machine which can be easily used by the developers to create and code a system for a washing machine. In this project we will be considering the use of a PIC16 for its reliability and many professional advantages.
Requirements
The stages to be followed by a successful design of a washing machine in one cycle are:
1. Wash: This is the first stage, the clothes are being washed by either a water of 60??C or 40??C (the water will be heated in the water heater), which is decided by the user depending on what kind of being laundry is being washed.
[Time to wash: 10 minutes]
2. Rinse: The wet laundry will then be rinsed 3 times. The first and second rinse will be as usual but on the third rinse it with be with the conditioner and all of the rinse use col mains water.
[Each rinse lasts for 3 minutes]
3. Spin: The spin varies on occasions during the cycle, two types or spin are there in the cycle High speed spin and a Low speed spin. The Low speed spin will occur after the first two rinse and the High speed spin will occur after the third rinse.
[Low speed rinse lasts for 1 Minute and High speed spin lasts for 5 minutes]
Thus the total time for one cycle would be 27 minutes.
Hardware elements
1) Power
2) Buttons
a) Start
b) Temperature = 40
c) Temperature = 60
3) Motor
4) Internal Heater
5) Timers
a) 10 minutes
b) 5 minutes
c) 3 minutes
d) 1 minute
6) Electronic Relays [Valves]
a) Tap water
b) Drain pipe
c) Washing powder
d) Conditioner
7) LED Display
8) Sensors
a) Temperature
b) Water level
c) Weight
d) Door
9) Buzzer
10) Microcontroller
a) PIC16

Internal States
The washing machine will consist of 4 different internal state each containing a different combination of the hardware elements.
Idle State: This will be usual state of the machine when it will have no inputs or outputs. At this point the machine will be consuming no power and/or is doing nothing.
Standby state: This state is when the machine is turned on. The machine will have no inputs but the LED Display will be turned on showing that the machine is on. This state stays only as long as no inputs are given.
Collection state: When an input is given, the machine state changes from standby to collection. The Led display shows the input we are providing confirming the input selection desired by the user. This state consists of both input and outputs.
Runtime State: the last state where all the processes from wash to spin occur. When the whole cycle is complete, the door latch opens and the machine goes back to standby state, and then onto its idle state if power is turned off.
Tasks Farmed out
Since we are using a PIC16 to control all the hardware elements, tasks can be easily farmed out from each of the hardware.
1. Power: The power switch will be used to send a signal to turn the microcontroller on, switching it from an idle state to a standby state. The input signal from this switch will be :
‘ on_power
2. Buttons: These buttons will be used as an input to the microcontroller at the collection state, the user will trigger the desired temperature and press the start button changing it to Run-Time state. The input signal from these buttons will be :
‘ 40_temp
‘ 60_temp
‘ start_cycle
3. Temperature Sensors: This sensor will be acting as a thermostat continuously reading the temperature of water during washing stage making sure the temperature of is the same as the input. If the temperature falls below or rises above the sensor sends signals to the PIC to turn the heater on or off respectively. The signal sent to the PIC would be :
‘ 40_temp
‘ 60_temp

Water Height Sensor: This sensor will ensure that the height of water reaches the required level. It then sends an active high signal to the relay to close the water valve. After draining all the water it sends an active low signal to the controller to close the drain valve. Its output is:
‘ water _height
Weight Sensor: This sensor is tasked to detect the weight of the laundry in the drum before starting the washing stage. If the weight is above the maximum limit, The LED display will show ‘overloaded’, so that the user can be notified and removes excess laundry. The output to would be:
‘ overloaded
4. Door Sensor: The door sensor will have two tasks. The first task will be to make sure the door is closed before the user presses the start button and the second task is to lock the door after pressing start. The outputs from sensor will be :
‘ door_closed
‘ door_locked
5. Motor: The motor will be receiving signal from the microcontroller on when to switch to high speed spin or to short low speed spin. An active high means high speed spin and an active low means short low speed spin. The signal that the motor will be receiving will be :
‘ on_motor
‘ off_motor
6. Internal Heater: The heater will be used to heat the water inside the machine to the temperature set by the user. When heater is on the input will be active high and active low input when heater is off. The inputs to the heater will be:
‘ Int_Heater
7. Timers: The timer will be noting time on receiving a signal from the controller and sends an output to the controller when the time is up. The time period will vary depending on at which stage the cycle is and the out puts will be:
‘ 10_minutes
‘ 5_minutes
‘ 3_minutes
‘ 1_minute
And the outputs at the end of each timer in respective order will be:
‘ 10_minutes_over
‘ 5_minutes_over
‘ 3_minutes_over
‘ 1_minute_over
8. Electronic Relays [Valves]: The relays will act as actuators and will be actively used throughout the cycle. They act upon receiving the signal from the controller which results from the output the sensors send. An active high signal would cause the valve to open and an active low signal to close. The inputs that the valves would receive are:
‘ water_valve
‘ drain_valve
‘ powder_valve
‘ conditioner_valve
9. LED Display: The LED display will indicate the live time position of the system during the standby, collection and run-time state. It will also show the current selection of inputs. It will display only when the controller sends the signal. The outputs from the controller in order to display will be:
‘ on_power_ack
‘ overloaded_ack
‘ door_closed_ack
‘ 40_temp_ack
‘ 60_temp_ack
‘ display_wash
‘ display_rinse1
‘ display_rinse2
‘ display_rinse3
‘ display_spin
10. Buzzer: The buzzer will be activated at the end of the high speed spin to notify the completion of the cycle, an active high signal input to the buzzer for it to turn on and an active low for it to turn off. The signal is:
‘ buzz

Inputs
Source input to controller
Input signals
Function
Active high or low
Power switch
on_power
Machine switches on
High
40oC Temperature
40_temp
Sets water temperature to 40oC.
High
60oC Temperature
60_temp
Sets water temperature to 60oC.
High
Start
start_cycle
Starts the wash
High
Weight sensor
overloaded
Indicates if the maximum weight limit has been exceeded
High
Door Sensor
door_closed
Indicates if the door has been properly closed
High
Water height sensor
water_ height
That water height is at required level for wash
High
Temperature sensor
40_temp
Tells water temperature is at 40oC.
High
Temperature sensor
60_temp
Tells water temperature is at 60oC.
High
Timer
10_minutes_over
Signals that 10 min are over
High
Timer
5_minutes_over
Signals that 5 min are over
High
Timer
3_minutes_over
Signals that 3 min are over
High
Timer
1_minute_over
Signals that 1 minute are over
High
Outputs
Target of output signal
Output signals
Function
Active high or low
LED Display
on_power_ack
Displays ‘Power on ‘
High
LED Display
overloaded_ack
Displays ‘ Overloaded’
High
LED Display
door_closed_ack
Displays ‘ Door closed’
High
LED Display
40_temp_ack
Displays ’40oC Temperature set ‘
High
LED Display
60_temp_ack
Displays ’60oC Temperature set ‘
High
LED Display
display_wash
Displays ‘ Washing ‘
High
LED Display
display_rinse1
Displays ‘ 1st Rinse’
High
LED Display
display_rinse2
Displays ‘ 2nd Rinse’
High
LED Display
display_rinse3
Displays ‘ 3rd Rinse’
High
LED Display
display_spin
Displays ‘ Spinning’
High
water valve
water_valve
Opens or closes the water valve
High=open
Drain valve
drain_valve
Opens or closes the drain valve
High=open
Powder valve
powder_valve
Opens or closes the washing powder valve
High=open
Conditioner valve
conditioner_valve
Opens or closes the conditioner valve
High=open
Internal Heater
Int_Heater
Turns the internal heater on or off
High=on
Motor
on_motor
Turns the motor on at high or low speed
High=high
Motor
Off_motor
Turns the motor off
High
Buzzer
buzz
Turns on the buzzer
High=on
Timer
10_minutes
Turns on the timer for 10 minutes
High
Timer
5_minutes
Turns on the timer for 5 minutes
High
Timer
3_minutes
Turns on the timer for 3 minutes
High
Timer
1_minutes
Turns on the timer for 1 minute
High

Activity
State of system
Input
Output
Idle
on_power
on_power_ack
Standby
overloaded
overloaded_ack
door_closed
door_closed_ack
Collection
40_temp/60_temp
40_temp_ack/60_temp_ack
Runtime
start_cycle
start_cycle_ack
door_locked
water_valve=high
drain_valve=low
powder_valve=high
conditioner_valve=low
water_height=high
water_valve=low
powder_valve=low
heater=high
40_temp/60_temp
Int_Heater=low
on_motor=high
10_minutes
10_minutes_over
Off_motor
drain_valve=high
on_motor=low
1_min
1_min_ Finish
off_motor
water_height=low
drain_valve=low
start_cycle_ack=low
display_rinse1=high
water_valve=high
water_height=high
water_valve=low
on_motor=high
3_minutes
3_minutes_ over
off_motor
drain_valve=high
on_motor=low
1_minute
1_minute_ over
off_motor
water_height=low
drain_valve=low
display_rinse1=low
display_rinse2=high
water_valve=high
water_height=high
water_valve=low
on_motor=high
3_minutes
3_minutes_ over
Off_motor
drain_valve=high
on_motor=low
1_minute
1_minute_over
Off_motor
water_height=low
drain_valve=low
display_rinse2=low
display_rinse3=high
water_valve=high
conditioner_valve=high
water_height=high
water_valve=low
conditioner_valve=low
on_motor=high
3_minutes
3_minutes_over
off_motor
drain_valve=high
motor_on=low
1_min
1_min_ Finish
Off_motor
water_height =low
led_rinse3=low
display_spin=high
On_motor=high
5_minutes
5_minutes_over
off_motor
buzz=high
drain_valve=low
display_spin=low
buzz=low
door_locked=low

About this essay:

If you use part of this page in your own work, you need to provide a citation, as follows:

Essay Sauce, Design a microcontroller for a washing machine. Available from:<https://www.essaysauce.com/engineering-essays/essay-design-a-microcontroller-for-a-washing-machine/> [Accessed 11-04-26].

These Engineering essays have been submitted to us by students in order to help you with your studies.

* This essay may have been previously published on EssaySauce.com and/or Essay.uk.com at an earlier date than indicated.