nikash_u31
Published

Nut quality testing and auto segregating machine

Automatically recognises the quality of product(here nut-badam) and segregates it automatically using reflection of light.

IntermediateFull instructions provided207
Nut quality testing and auto segregating machine

Things used in this project

Hardware components

Arduino UNO
Arduino UNO
×1
Breadboard (generic)
Breadboard (generic)
×1
Jumper wires (generic)
Jumper wires (generic)
×1
LDR, 5 Mohm
LDR, 5 Mohm
×1
SG90 Micro-servo motor
SG90 Micro-servo motor
×1
Tactile Switch, Top Actuated
Tactile Switch, Top Actuated
×1
LED (generic)
LED (generic)
×1

Software apps and online services

Arduino IDE
Arduino IDE

Story

Read more

Schematics

Schematics

arrangement for wiring and testing area

Code

Coding

C/C++
You can adjust the frequencies of ldr accordingly
/* AN INDUSTRIAL OPERATIVE PROJECT OF QUALITY RECOGNITION OF PRODUCTS
   Properties and main operative concepts:-
   1) Uses the concept of reflection of light
   2) The concepts is dark color reflects low and white reflects more
   3) This programming and the levels of luminous intensity is specifically done for 'badam'.
   4) The process of recognition is done in a closed chamber like PVC
         -By Nikash & Yatin.            */
#include<Servo.h>                          // specifies servo motor library
Servo nikser;                              // naming servo motor as nikser
void setup() {
  pinMode(12, OUTPUT);                     // reflecting spectrum of light 'led'
  pinMode(A0, INPUT);                      // input of ldr
  Serial.begin(9600);                      
  nikser.attach(9);                        // servo motor pin
  pinMode(7, INPUT_PULLUP);                // push button's output to start the recognition process
  nikser.write(90);                        // setting up servo motor to its initial position
}
void loop() {
  int command = digitalRead(7);            // saves input of pushbutton in variable command to start the process
  if (command == 0) {                      // condition when push button is pressed
    digitalWrite(12, HIGH);                // makes the spectrum light on
    delay(1000);
    int qualityrate = analogRead(A0);      // reads the value of ldr
    Serial.println(qualityrate);           // prints the value(quality) in serial monitor
    if (qualityrate < 30) {                // if the ldr value is lower than 30, usually good badam reflects low 
      nikser.write(130);                   // servo moves the badam to left in 130degree which move the badam in a cup of 'good quality'
      delay(1200);
      nikser.write(90);                    // moves to the formal position
    }
    if (qualityrate > 30) {                // if the ldr value is higher than 30, usually bad badam reflects high
      nikser.write(50);                    // servo moves the badam to left in 50degree which move the badam in a cup of 'bad quality'
      delay(1200);
      nikser.write(90);                    //moves to the formal position
    }
  }
}

Credits

nikash_u31
0 projects • 1 follower

Comments