Arduino Project

Auto Sanitizer

Course Introduction

This program uses an Arduino Uno board with an infrared obstacle avoidance sensor and a water pump.

The sensor is used to detect the presence of an object.

When an object is detected, the water pump is activated to dispense liquid (liquid hand soap).

Note

If this is your first time working with an Arduino project, we recommend downloading and reviewing the basic materials first.

1.1 Install Arduino IDE(Important)
1.2 Introduction of Arduino IDE

Required Components

In this project, we need the following components:

SN

COMPONENT INTRODUCTION

QUANTITY

PURCHASE LINK

1

Arduino UNO R4 WIFI

1

2

USB Type-C cable

1

×

3

Breadboard

1

4

Wires

Several

5

Power Supply

1

6

IR Obstacle Avoidance Sensor Module

1

7

L9110 Motor Driver Module

1

×

8

Centrifugal Pump

1

×

Wiring

Auto_soap_bb.webp__PID:73e1b656-e1e1-4093-b9a0-7a0564b56ef0

Common Connections:

L9110 Motor Driver Module
GND:
Connect to breadboard’s negative power bus.
VCC: Connect to breadboard’s red power bus.
A-1A: Connect to 9 on the Arduino.
A-1B: Connect to 10 on the Arduino.

IR Obstacle Avoidance Sensor Module
OUT:
Connect to 7 on the Arduino.
GND: Connect to breadboard’s negative power bus.
VCC: Connect to breadboard’s red power bus.

Centrifugal Pump
Connect to L9110 Motor Driver Module MOTOR A.
Connect to L9110 Motor Driver Module MOTOR A.

Writing the Code

Note
You can copy this code into the Arduino IDE.
Don’t forget to select the board(Arduino UNO R4 Minima/WIFI) and the correct port before clicking the Upload button.


/*
  This program uses an Arduino Uno board with an infrared obstacle avoidance sensor and a water pump.
  The sensor is used to detect the presence of an object. When an object is detected, the water pump
  is activated to dispense liquid (liquid hand soap).

  Board: Arduino Uno R3 (or R4)
  Component: Infrared obstacle avoidance sensor and water pump
*/

// Define the pin numbers for the Infrared obstacle avoidance sensor
const int sensorPin = 7;
int sensorValue;

// Define pin numbers for the water pump
const int pump1A = 9;
const int pump1B = 10;

void setup() {
  // Set the sensor pin as input
  pinMode(sensorPin, INPUT);

  // Initialize the pump pins as output
  pinMode(pump1A, OUTPUT);
  pinMode(pump1B, OUTPUT);

  // Keep pump1B low
  digitalWrite(pump1A, LOW);
  digitalWrite(pump1B, LOW);

  Serial.begin(9600);
}

void loop() {
  sensorValue = digitalRead(sensorPin);
  Serial.println(sensorValue);

  // If an object is detected, turn on the pump for a brief period, then turn it off
  if (sensorValue == 0) {
    digitalWrite(pump1A, HIGH);
    delay(700);
    digitalWrite(pump1A, LOW);
    delay(1000);
  }
}