You are on page 1of 33

Automation: Microcontrollers,

Sensors, and Applications


Voltage Sensor

Vcc

GND

Block diagram
Hardware implementation

DC supply

Arduino UNO
Voltage Sensor
Arduino IDE code
Current Sensor

Block diagram
Hardware implementation

DC supply

Arduino UNO
Current Sensor
Arduino IDE code
Temperature and humidity Sensor

Block diagram
Hardware implementation

Temperature and humidity sensor


Arduino UNO
Arduino IDE code
Light Dependent Resistor (LDR) Sensor
Hardware implementation

Arduino UNO

LED

LDR sensor
Ultrasonic Sensor
Hardware implementation
Arduino IDE code
LED blinking
Hardware implementation

Arduino UNO

Resistor
LED
Arduino IDE code
Soil moisture sensor
Hardware implementation

Arduino UNO

Soil moisture sensor


Arduino IDE code
Motor Movement Control using Microcontroller
and Motor Driver
Motor Driver- L293D
Block Diagram-

Microcontroller Motor Driver Motor


(Arduino) (L293D) (DC)
Connection Diagram-
12 Volt DC
supply
+5 Volt 16 8
3
2 1

3 2 M1
4 7
6
Arduino L293D
14
5 9

6 10 M2

7 15
11
GND GND
CODE 1-Forward Rotation
// Motor A connections pinMode(in2, OUTPUT);
const int enA = 2; pinMode(in3, OUTPUT);
const int in1 = 3; pinMode(in4, OUTPUT);
const int in2 = 4; }
// Motor B connections void loop() {
const int enB = 5; analogWrite(enB,255);
const int in3 = 6; analogWrite(enA,255);
const int in4 = 7; digitalWrite(in1, HIGH);
void setup() { digitalWrite(in2, LOW);
Serial.begin (9600); digitalWrite(in3, HIGH);
pinMode(enA, OUTPUT); digitalWrite(in4, LOW);
pinMode(enB, OUTPUT); }
pinMode(in1, OUTPUT);
CODE 2-Reverse Rotation
// Motor A connections pinMode(in2, OUTPUT);
const int enA = 2; pinMode(in3, OUTPUT);
const int in1 = 3; pinMode(in4, OUTPUT);
const int in2 = 4; }
// Motor B connections void loop() {
const int enB = 5; analogWrite(enB,255);
const int in3 = 6; analogWrite(enA,255);
const int in4 = 7; digitalWrite(in1, LOW);
void setup() { digitalWrite(in2, HIGH);
Serial.begin (9600); digitalWrite(in3, LOW);
pinMode(enA, OUTPUT); digitalWrite(in4, HIGH);
pinMode(enB, OUTPUT); }
pinMode(in1, OUTPUT);
CODE 3- Rotation in different Direction
// Motor A connections pinMode(in2, OUTPUT);
int enA = 2; pinMode(in3, OUTPUT);
int in1 = 3; pinMode(in4, OUTPUT);
int in2 = 4; }
// Motor B connections
int enB = 5; void loop() {
int in3 = 6; // put your main code here, to run repeatedly:
int in4 = 7; analogWrite(enA,255);
digitalWrite(in1, LOW);
void setup() { digitalWrite(in2, HIGH);
// put your setup code here, to run once: analogWrite(enB,255);
Serial.begin (9600); digitalWrite(in3, LOW);
pinMode(enA, OUTPUT); digitalWrite(in4, HIGH);
pinMode(enB, OUTPUT); }
pinMode(in1, OUTPUT);
CODE 4-Speed Change
// Motor A connections pinMode(in2, OUTPUT);
int enA = 2; pinMode(in3, OUTPUT);
int in1 = 3; pinMode(in4, OUTPUT);
int in2 = 4; }
// Motor B connections
int enB = 5; void loop() {
int in3 = 6; // put your main code here, to run repeatedly:
int in4 = 7; analogWrite(enA,90);
digitalWrite(in1, LOW);
void setup() { digitalWrite(in2, HIGH);
// put your setup code here, to run once: analogWrite(enB,90);
Serial.begin (9600); digitalWrite(in3, LOW);
pinMode(enA, OUTPUT); digitalWrite(in4, HIGH);
pinMode(enB, OUTPUT); }
pinMode(in1, OUTPUT);

You might also like