An Innovative Collection of Electronic Circuits ; Arduino and Others
Visit Circuit Designs Home and discover more !!!
Blinking an LED build with Arduino
ALternatively blinks red, green, and blue LED bulbs, along with the same color RGB.
Have hurry for office? feeling sleepy? fear to sleep in the car? No Worry! Strange right? It is quiet XD !!! As u move closer to a car, or a wall, this alert engine in ur car will sense u getting closer, and it will make noises, and vibrate, to wake u up! The closer u move, the wider is the voice, to wake u up! It is indeed useful!
It is an ultrasonic Arduino distance indicator that uses a single RGB LED to alert or indicate a driver getting close to another vehicle on the road. It uses the Red-yellow-green traffic light format to suggest your action.
A very simple design of a circuit that automatically starts the motor of an Air Cooler when the temperature rises above 27 deg. C and switches it off once it goes down! This will help save lots of electrical energy and reduce pollution caused by all-time running ACs.
It is a new tilt-based water pump controller. The tilt sensor is to be attached to a fulcrum-floating rod, like in a cistern. This will automatically switch on the pump when the water level reduces and switches it off once the tank gets filled!
This alert-based sensor will ring the buzzer once the ambient temperature of the sensor grown more than 50 degrees Celcius. This can be very useful to detect unexpected or harmful temperature increase in circuit equipment and chemical apparatus.
This is a simple mechanism for an automatic street light system, that glows up automatically when the light goes dim, whichever part of the day it is! A photoresistor senses the ambient brightness and turns the power supply to the light on when the external brightness goes off. This is much efficient and more advantageous than switch-controlled, or timer-based street lights.
This is the mechanism of a Smart Dustbin. It is fitted with two systems : (i) The system of automatic closing snd opening when it detects and humanoid movement in front of the dustbin. This is sensed by a PIR, provided, there is space to dump more. (ii) The Second system includes a HCSR04 Ultrasonic Distance Sensor that measures the level of trash in the bin. Once it is filled to an optimum level, it will send an SMS to the Control Room, that will include the Dustbin number.
The embd doesnt contain GSM. So, the rest of the entire is available here.
#include <Servo.h>
#include <GSM.h>
#define PINNUMBER ""
// initialize the library instance
GSM gsmAccess;
GSM_SMS sms;
int movement = 0;
int remoteNum = 3322861212;
int txtMsg = 1001234;
int height = 0;
int i = 0;
int j = 0;
Servo servo_2;
long readUltrasonicDistance(int triggerPin, int echoPin)
{
pinMode(triggerPin, OUTPUT); // Clear the trigger
digitalWrite(triggerPin, LOW);
delayMicroseconds(2);
// Sets the trigger pin to HIGH state for 10 microseconds
digitalWrite(triggerPin, HIGH);
delayMicroseconds(10);
digitalWrite(triggerPin, LOW);
pinMode(echoPin, INPUT);
// Reads the echo pin, and returns the sound wave travel time in microseconds
return pulseIn(echoPin, HIGH);
}
void setup()
{
pinMode(8, OUTPUT);
pinMode(11, OUTPUT);
servo_2.attach(2, 500, 2500);
pinMode(13, OUTPUT);
pinMode(7, OUTPUT);
pinMode(4, INPUT);
Serial.begin(9600);
while (!Serial) {
; // wait for serial port to connect. Needed for native USB port only
}
// If your SIM has PIN, pass it as a parameter of begin() in quotes
while (notConnected) {
if (gsmAccess.begin(PINNUMBER) == GSM_READY) {
notConnected = false;
} else {
Serial.println("Not connected");
delay(1000);
}
}
void loop()
digitalWrite(8, HIGH);
digitalWrite(11, LOW);
servo_2.write(0);
digitalWrite(13, HIGH);
height = 0.01723 * readUltrasonicDistance(13, A0);
if (height > 7) {
digitalWrite(8, HIGH);
digitalWrite(11, LOW);
digitalWrite(7, HIGH);
movement = digitalRead(4);
if (movement == HIGH) {
digitalWrite(7, LOW);
servo_2.write(90);
}
delay(1000); // Wait for 1000 millisecond(s)
digitalWrite(7, HIGH);
movement = digitalRead(4);
if (movement == LOW) {
servo_2.write(0);
}
if (movement == LOW) {
servo_2.write(0);
}
} else {
if (height <= 7) {
digitalWrite(8, LOW);
digitalWrite(11, HIGH);
sms.beginSMS(remoteNum);
sms.print(txtMsg);
sms.endSMS();
Serial.println("\nCOMPLETE!\n");
while (!(height > 7)) {
delay(60000); // Wait for 60000 millisecond(s)
}
}
}
delay(10);
}