By Electronic Enthusiast for Electronic Enthusiast.

Monday 12 December 2016

RFID Based Attendance System Using Arduino

04:47 Posted by Unknown , , 3 comments
Advanced Attendance Systems are now not used just in companies but also in school and colleges for student attendance. In this project we have used low cost RFID technology to take students attendance.

In this project we have used Arduino Uno to do the processing. A 125Khz TTL RFID reader is used. All students will be provided with a RFID tag so when they enter the classroom they have to swap their card on the reader. The reader reads the tag number and then sends it serially at 9600 baudrate to the Arduino. Arduino then compares the read tag with the ones stored in its memory and if the tag matches it displays the Students name and roll number and also gives a valid beep. If the tag number does not match a long beep is sounded and Invalid Tag is displayed.

We have used a 16x2 Blue LCD over here to display the students name and roll number. We had got bored of using the commonly 16x2 Green LCD so we thought of using LCD with blue backlight and white font.

A 5 volt PCB mounting buzzer is also used to give Audio indication if the Tag is valid or not. Arduino cannot provide the necessary current required for the buzzer so I have used a BC547 transistor as a switch toprovide the necessary current required for the buzzer.

Components Used


If you have any queries regarding this project feel free to post them in the comments below. All components required for this project can be bought online from DNA Technology | Online Electronic Component store.


Sunday 20 September 2015

Arduino Based Stopwatch

19:14 Posted by Unknown , 2 comments
Over here using Arduino Uno we have implemented stop watch. For this we have used a LCD Keypad shield. This project was implemented by Mr Conor on the Instructables "Arduino Stopwatch". His modified code (modified by Elac) is used as it is as it was perfect.

As LCD Keypad shield is used there is no need for wiring over here it is just a plug and play project.

Components Used

  1. Arduino
  2. 16x2 Alphanumeric LCD Keypad shield

Select button is used to start the stop watch & the same switch is used to Stop the timer.

Implemented Circuit Output

Arduino Based Stopwatch

Arduino Based Stopwatch

Arduino Based Stopwatch

 

You can download the code HERE 


 #include <SPI.h>  
 #include <LiquidCrystal.h>  
 // these are the pins used on the shield for this sketch  
 LiquidCrystal lcd(8, 13, 9, 4, 5, 6, 7);  
 // variables used on more than 1 function need to be declared here  
 unsigned long start, finished, elapsed;  
 boolean r = false;  
 // Variables for button debounce time  
 long lastButtonPressTime = 0; // the last time the button was pressed  
 long debounceDelay = 50; // the debounce time; keep this as low as possible  
 void setup()  
 {  
 lcd.begin(16, 2); // inicialize the lcd (16 chars, 2 lines)  
 // a little introduction :)  
 lcd.setCursor(4, 0); // set the cursor to first character on line 1 - NOT needed (it sets automatically on lcd.begin()  
 lcd.print("Arduino");  
 lcd.setCursor(3, 1); // set the cursor to 4th character on line 2  
 lcd.print("StopWatch");  
 delay(2000);  
 lcd.clear();  
 lcd.print("Press select for");  
 lcd.setCursor(2, 1); // set the cursor to 3rd character on line 2  
 lcd.print("Start & Stop");  
 }  
 void loop()  
 {  
 CheckStartStop();  
 DisplayResult();  
 }  
 void CheckStartStop()  
 {  
 int x = analogRead (0); // assign 'x' to the Arduino's AnalogueInputs (Shield's buttons)  
 if (x < 800 && x > 600 ) // if the button is SELECT  
 {  
 if ((millis() - lastButtonPressTime) > debounceDelay)  
 {  
 if (r == false)  
 {  
 lcd.clear();  
 lcd.setCursor(3, 0); // needed  
 lcd.print("Time Past");  
 start = millis(); // saves start time to calculate the elapsed time  
 }  
 else if (r == true)  
 {  
 lcd.setCursor(2, 0); // needed  
 lcd.print(" Final Time ");  
 }  
 r = !r;  
 }  
 lastButtonPressTime = millis();  
 }  
 }  
 void DisplayResult()  
 {  
 if (r == true)  
 {  
 finished = millis(); // saves stop time to calculate the elapsed time  
 // declare variables  
 float h, m, s, ms;  
 unsigned long over;  
 // MATH time!!!  
 elapsed = finished - start;  
 h = int(elapsed / 3600000);  
 over = elapsed % 3600000;  
 m = int(over / 60000);  
 over = over % 60000;  
 s = int(over / 1000);  
 ms = over % 1000;  
 // display the results  
 lcd.setCursor(0, 1);  
 lcd.print(h, 0); // display variable 'h' - the 0 after it is the number of algorithms after a comma (ex: lcd.print(h, 2); would print 0,00  
 lcd.print("h "); // and the letter 'h' after it  
 lcd.print(m, 0);  
 lcd.print("m ");  
 lcd.print(s, 0);  
 lcd.print("s ");  
 if (h < 10)  
 {  
 lcd.print(ms, 0);  
 lcd.print("ms ");  
 }  
 }  
 }  

Arduino Based Digital Thermometer

14:14 Posted by Unknown , 2 comments
As the name implies we are making a digital Thermometer using Arduino and LM35. This was originally implemented in Instructables by Mr wayne and called as "Waynes World Thermometer". We have tested & modified the project and presented it over here.

A LCD is used over here to display the temperature this temperature is also sent to the PC. We are displaying temperature both in Degree Centigrade and Fahrenheit Arduino updates the temperature in celcius every 500ms on PC and on LCD for 4 seconds (i.e. 8 readings) and then calculates the average temperature and then displays the average temperature both in degree centigrade & in Fahrenheit both on PC as well as on LCD. It also calculates the Maximum average & minimum average temperature and sends to PC.So basically the average temperature, minimum temperature & maximum temperature is calculated after every 5 seconds.

We are using 16x2 Alphanumeric Display which is a two line display with 16 character on each line. The display is interfaced to Arduino in 4 bit mode. Pin diagram is as follows
  • LCD_RS (PIN 4) to digital pin 11
  • LCD_Enable (Pin 6) to digital pin 12
  • LCD_D4 (Pin 11) to digital pin 5
  • LCD_D5 (Pin 12) to digital pin 4
  • LCD_D6 (Pin 13) to digital pin 3
  • LCD_D7 (Pin 14) to digital pin 2

LM35 Temperature controller is connected to A0 i.e. Analog PIN0 of arduino.
Schematic of Arduino Based Digital Thermometer
Circuit Diagram of Arduino Based Digital Thermometer

Components Used

  1. Arduino Uno
  2. LM35 Temperature Sensor
  3. LCD Breakout Board
  4. 1:1 wires
  5. Bread Board



Implemented Circuit/Output

Arduino Based Temperature Monitor Serial Output
Serial Output on PC

Temperature output in Degree Centigrade
Temperature output in Degree Centigrade

Temperature output in Degree Fahrenheit
Temperature output in Degree Fahrenheit


You can download the complete working code from HERE

 /*   
 Arduino Based Digital Thermometer  
 Tested By Amol Shah from DNA Technology : http://www.dnatechindia.com/  
 For https://makeelectronicprojects.blogspot.in  
 To wire your LCD screen to your Arduino, connect the following pins:   
 LCD Pin 6 to digital pin 12   
 LCD Pin 4 to digital pin 11   
 LCD Pin 11 to digital pin 5   
 LCD Pin 12 to digital pin 4   
 LCD Pin 13 to digital pin 3   
 LCD Pin 14 to digital pin 2   
 Additionally, wire a 10K pot to +5V and GND, with it's wiper (output) to LCD screens VO pin (pin3).   
  */  
 #include <LiquidCrystal.h>                 
 float tempC = 0;                      
 float tempf = 0;                      
 int tempPin = 0;                      
 float samples[8];                      
 float maxi = 0,mini = 100;                 
 int i;  
 LiquidCrystal lcd(12, 11, 5, 4, 3, 2);           
 void setup()  
 {  
 Serial.begin(9600);                     
 lcd.begin(16, 2);                      
 lcd.setCursor(2, 0);                    
 lcd.print("  Digital");                  
 lcd.setCursor(3, 1);                    
 lcd.print("Thermometer");                  
 delay(1000); // wait 1000ms                 
 lcd.clear(); // clear LCD display              
 }  
 void loop()  
 {  
 for(i = 0;i<=7;i++){                      
 samples[i] = ( 5 * analogRead(tempPin) * 100.0) / 1024;    
 lcd.setCursor(0, 0);                   
 lcd.print(" Current Temp ");              
 lcd.setCursor(4, 1);                   
 lcd.print(samples[i]);   
 lcd.write(0xdf);  
 lcd.print("C ");  
 lcd.setCursor(12, 1);                     
 Serial.print(" Current Temperature in Celcius: " );      
 Serial.println(samples[i]);    
 tempC = tempC + samples[i];                
 delay(500);                          // wait 500ms  
 }                               
 tempC = tempC/8.0;                       
 tempf = (tempC * 9)/ 5 + 32;                  
 if(tempC > maxi) {maxi = tempC;}                
 if(tempC < mini) {mini = tempC;}                
 Serial.println("New measurement:");  
 Serial.print(" Average Temperature in Celcius is " );     
 Serial.println(tempC);//send the data to the computer     
 Serial.print(" Average Temperature in Farenait is " );     
 Serial.println(tempf);//send the data to the computer     
 Serial.print(" MAX Temperature in Celcius is " );       
 Serial.println(maxi);//send the data to the computer      
 Serial.print(" MIN Temperature in Celcius is " );       
 Serial.println(mini);//send the data to the computer      
 Serial.println("---------------------------------------" );  
 lcd.setCursor(4, 1);                      
 lcd.print(tempf);                       
 lcd.write(0xdf);  
 lcd.print("F ");                     
 delay(1000);                          
 tempC = 0;                           
  }  

Saturday 19 September 2015

PC based Temperature Indicator using Arduino

18:26 Posted by Unknown , No comments

Temperature Indicator or Temperature Monitoring system is very useful in industries. This is a very simple project to understand the basics of Arduino. Over here we are using LM35 temperature sensor and reading the temperature using the analog pin A1 of Arduino Uno and then sends serially to PC.

The arduino gets the temperature from Sensor and displays on PC after every 1 second in Degree Centigrade as well as in Degree Fahrenheit.

Components Used


Circuit Diagram 

Circuit Diagram for PC based Temperature Indicator using Arduino
Circuit Diagram


Implementation

Implemented Circuit


PC based Temperature Indicator using Arduino Display ON PC
Circuit Output on PC


Code

You can Download the complete Code over Here
 /*  
 PC based Temperature Indicator  
 Tested By Amol Shah from DNA Technology : http://www.dnatechindia.com/  
 For https://makeelectronicprojects.blogspot.in  
 */  
 int val;  
 int tempPin = 1;  
 void setup()  
 {  
  Serial.begin(9600);  
  Serial.println("PC based Temperature Indicator");  
  Serial.println("Tested By Amol Shah from DNA Technology : http://www.dnatechindia.com/");  
  Serial.println("For https://makeelectronicprojects.blogspot.in");  
 }  
 void loop()  
 {  
  val = analogRead(tempPin);  
  float mv = ( val/1024.0)*5000;   
  float cel = mv/10;  
  float farh = (cel*9)/5 + 32;  
  Serial.print("TEMPRATURE = ");  
  Serial.print(cel);  
  Serial.print("*C");  
  Serial.println();  
  Serial.print("TEMPRATURE = ");  
  Serial.print(farh);  
  Serial.print("*F");  
  Serial.println();  
  delay(1000);  
 }  

Automatic Plant Watering using Soil Moisture Sensing

16:23 Posted by Unknown , , 3 comments

An easy way to conserve water is Agriculture sector is to install soil moisture sensor so we decided to implement an Automatic Plant Watering using Soil Moisture Sensing technique as implemented by Amitabhs over here in the instructable article. Solved one error & presented over here a working tested code.

Water harvesting is the backbone of farming industry. As per India is censured  lot of water gets wasted due to many regions .So the requirement of water for farm can’t get fulfill. Due to the improper maintenance and wrong water harvesting plan the irrigation of water is also the main problem. Day by day the rain percentage is also becoming less and so a very small amount of water is available for the farming. Most of water percentages also get wasted due to lack of proper attention by farmer. - Read more regarding water irrigation system http://www.dnatechindia.com/Projects/Synopsis-and-Abstract/Automatic-Irrigation-System.html


Circuit Diagram for Automatic Plant Watering using Soil Moisture Sensing
Circuit Diagram for Automatic Plant Watering using Soil Moisture Sensing


Over here we have implemented a low cost solutions without LCD. We have used Arduino Uno as the heart of the circuit.

A soil moisture sensor detects the percentage of water in the soil and accordingly turns ON/OFF the pump. We have used a relay over here the relay can then be used to turn ON/OFF any pump or motor that you require. The output of the soil moisture sensor is analog so it is given to analog pin i.e. A0 pin of the arduino which then compares internally with the set level & then accordingly turns ON/OFF the relay.

In the project implemented by Mr Amitabh he has set the level to 250 i.e. if the soil moisture percent goes below 25% the pump will turn ON & will turn OFF once it goes above 25%.


Components Used



Automatic Plant Watering using Soil Moisture Sensing Relay OFF Condition
Relay is off when Water is present in Soil




Automatic Plant Watering using Soil Moisture Sensing Relay ON Condition
Relay is on when water is not present in Soil

You can Download the code from Here

 /*  
 Automatic Plant Watering using Soil Moisture Sensing Technology  
 Tested By Amol Shah from DNA Technology : http://www.dnatechindia.com/  
 For https://makeelectronicprojects.blogspot.com   
 */  
 const int VAL_PROBE = 0; //Analog pin 0  
 const int MOISTURE_LEVEL = 250; // the value after the LED goes on  
 void setup()  
 {  
  Serial.begin(9600);  
  pinMode(13, OUTPUT);  
  pinMode(7, OUTPUT);  
 }  
 void LedState(int state)  
 {  
  digitalWrite(13,state);  
 }  
 void loop()  
 {  
  int moisture = analogRead(VAL_PROBE);  
  Serial.print("Moisture = ");  
  Serial.println(moisture);  
  if(moisture > MOISTURE_LEVEL)  
  {  
   LedState(HIGH);  
   digitalWrite(7,LOW);  
  }  
  else   
  {  
   LedState(LOW);  
   digitalWrite(7,HIGH);  
  }  
  delay(500);  
 }  

Fork that reminds you that you are eating too much

10:20 Posted by Unknown , , No comments

The fork is, well, a fork. But inside it has a capacitive sensor that knows how long it has been since you have taken your last bite. Say you take a bite of that piece of fish, chew it and then go for another bite within 10 seconds. The fork will know that and gently vibrate to tell you have been eating too fast.


Eating too fast leads to poor digestion and poor weight control. The HAPIfork, powered by Slow Control, is an electronic fork that helps you monitor and track your eating habits. It also alerts you with the help of indicator lights and gentle vibrations when you are eating too fast. Every time you bring food from your plate to your mouth with your fork, this action is called: a "fork serving".

 The HAPIfork also measures:
  • How long it took to eat your meal.
  • The amount of "fork servings" taken per minute.
  • Intervals between "fork servings".
This information is then uploaded via USB or Bluetooth to your Online Dashboard on HAPI.com to track your progress. The HAPIfork also comes with the HAPIfork and HAPI.com apps plus a coaching program to help improve your eating behavior.


You can now buy it online on Amazon
Thankyou cnet & abcnews for providing us with this information. And special thanks to HAPIfork for making an Intimate object judge me while eating as if my wife was not enough.

Thursday 23 October 2014

India plans to build the world's largest floating solar farm

19:23 Posted by Unknown , , , 1 comment
India plans to build the world's largest floating solar farm
Image by Chesky @Shutterstock
The National Hydroelectric Power Corporation (NHPC), which is setting up the 50 MW solar power project, is currently undertaking a survey of the land on the banks of the Kallada river and hopes to place solar panels over the water bodies spread over nearly 250 acres in the region.This floating solar power technology was developed by India's Renewable Energy College. World's biggest floating solar farm will be built in kollam, Kerala. A state which is blessed with 44 rivers and equal number of lagoons .But the state faces intense energy needs.

The 250 acres where the proposed plant is to be set up was once a beautiful terrain through which river has flown with all her turbulence. And then the land mafia came and mined all the sand for the construction purpose. The flow became unbalanced and the terrain becomes flooded. For all these years residents of the place have found a sparking idea to meet the power requirements for about 50000 homes. Solar panels have to be floated on the water and they need to be anchored firmly on the ground to avoid their  motion on the surface of the water.It is estimated that 5 acres of land are required to produce 1 megawatt of solar power. The Kollam solar project would require 250 acres. $100 million project  will be implemented in the next 2-3 years. The infrastructure and unit cost for floating solar panels is way less compared to land installed ones.

The ecology of the water body is not likely to be affected much and it will also reduce evaporation, thus helping preserve water levels during extreme summer. Solar panels installed on land face reduction of yield as the ground heats up. When such panels are installed on a floating platform, the heating problem is solved to a great extent.


world’s largest floating solar power plant

 

Currently the world’s largest floating solar power plant is located in Japan, where a 1.2 MW float power plant was set up by West Holdings Group over a reservoir in Okegawa City.

Thank you Likeswagon for providing us with this information

You Would Also Love Reading......

Popular Posts

JOIN US