Acsm Last Report
Acsm Last Report
Acsm Last Report
On
ANANYA P (IEAUEEE003)
GOKUL TP (IEAUEEE008)
MUBARISH K (IEAUEEE015)
BACHELOR OF TECHNOLOGY
in
UNIVERSITY OF CALICUT
MALAPPURAM-673636 KERALA
JANUARY 2024
i
CERTIFICATE
Head of Department
ii
ABSTRACT
India is the third largest coconut producing country in the world with annual 21,500
million tonnes of production. Several works have been carried out in the area of developing
automated systems for sorting fruits and vegetables using the optical sources and pneumatic
devices. Machineries are available for spherical fruits like apple, orange, kiwi, tomato etc.
including completely shaved coconuts are available, segregating husked coconut is being a
challenge in Indian market. An automation system for coconut sorting machine (ACSM) has
not been reported in open literature. An effort is made to design ACSM with three sub-
assemblies namely loading unit, Conveying unit and segregating unit and sensing units
The objective of this research is to develop a coconut grading machine for coconut
cultivators and entrepreneurs. The basis of design is characterized by a tapered belt conveyor
and sizing board with openings of increasing aperture .With Camera module using machine
learning (using open cv), ultrasonic sensor, colour sensor (TCS 3200), and load cell .coconuts
are fed onto the tapered belt conveyor where the gravitational force pushes the nut towards the
edge until it comes in contact with sizing board. Due to the tangential force, where coconuts
are graded and allowed to fall through aperture according to their sizes and as the conveyor
moves the coconut to the sensing unit with Camera module (using open cv), ultrasonic sensor,
colour sensor (TCS 3200), and load cell and the coconut are sorted as per requirement.
iii
ACKNOWLEDGEMENT
Dedicating this work to the almighty God whose abundant grace and mercies enabled
its successful completion, we would like to express our profound gratitude to all the people
who have inspired and motivated us to make this mini project a success
We are very much thankful to the project co-ordinator Dr. Jaya CK, Assistant
Professor(Higher Grade) EEE Department, Institute of Engineering and Technology,
University of Calicut, for her helpful hands during this project.
We deem the privilege of thanking our Guide Mrs. Prisy, P , Assistant Professor,
Department of Electrical and Electronics Engineering, Institute of Engineering and
Technology, University of Calicut, for his constant help, creative ideas, valuable advice and
guidance rendered us through the course of this mini project.
Our profound gratitude to all staffs, for their valuable guidance, kind cooperation and
help provided for the successful completion of the work.
iv
CONTENTS
v
vi
LIST OF ABBREVATIONS
vii
LIST OF FIGURES
S1.No. Page
viii
Automatic Coconut Sorting Machine (ACSM)
CHAPTER 1
INTRODUCTION
The Automatic Coconut Sorting Machine stands at the forefront of technological advancement
in the coconut processing industry. Merging advanced sensor technology and precise
mechanics, this state-of-the-art solution transforms the sorting process by achieving
unparalleled efficiency and accuracy. Covering diverse aspects such as size, shape, quality, and
freshness, our automated system guarantees a consistent and uniform selection of coconuts,
providing a significant boost to productivity for businesses while maintaining uncompromising
standards.Through the seamless integration of cutting-edge sensors and precision mechanics,
our machine revolutionizes the traditional approach to coconut sorting. It not only ensures a
rapid and flawless selection process but also minimizes errors associated with manual sorting
methods. By optimizing the entire workflow, businesses can expect enhanced operational
efficiency and a marked improvement in the overall quality of processed coconuts.The
emphasis on uniformity in coconut selection is a key feature, as it not only streamlines
production but also contributes to the production of high-quality coconut products. The
precision in sorting, from size to freshness, is a testament to the meticulous design and
functionality of our automated system.In essence, the Automatic Coconut Sorting Machine
represents a groundbreaking leap forward in the coconut processing landscape, promising a
future where technology redefines efficiency, accuracy, and quality standards. It is more than
a machine; it is a catalyst for transformation within the industry, setting a new benchmark for
excellence in coconut processing.
The process commences as coconuts are deposited into the hopper, where they individually
descend onto a roller conveyor. This conveyor facilitates the alignment of the coconut and its
eye in a single direction, guiding them to the sensing unit. The sensing unit is equipped with a
comprehensive set of tools, including a camera module for eye detection, an ultrasonic sensor
for identifying cracks, a color sensor, and a load sensor for precise weight measurement.At this
point, the Automatic Coconut Sorting Machine undertakes a meticulous analysis of each
coconut in real-time. The integrated camera, ultrasonic, color, and load sensors work
collaboratively to scrutinize various aspects such as eye presence, potential cracks, color
characteristics, and weight. Defective coconuts are swiftly identified through this thorough
assessment.
To maintain the efficiency of the sorting process, the machine incorporates a servo motor
mechanism. Upon detection of a defective coconut, the servo motor promptly engages, pushing
the flawed coconut out of the conveyor system. This automated rejection system ensures a swift
and accurate removal of defective coconuts from the production line.This groundbreaking
technology addresses the manual sorting challenges endemic in the coconut industry,
signifying a transformative shift from traditional labor-intensive methods to a fully automated
approach. The commitment to automation aims to enhance productivity by reducing manpower
while simultaneously upholding superior quality through the precise identification and
segregation of defective coconuts. The implementation of the Automatic Coconut Sorting
Machine represents a strategic fusion of efficiency, cost-effectiveness, quality assurance, and
a substantial reduction in manual intervention throughout the coconut processing production
process. It heralds a new era in the industry, urging stakeholders to embrace the future of
coconut processing with our state-of-the-art solution—a true game-changer.
In essence, the Automatic Coconut Sorting Machine represents a groundbreaking leap forward
in the coconut processing landscape, promising a future where technology redefines efficiency,
accuracy, and quality standards. It is more than a machine; it is a catalyst for transformation
within the industry, setting a new benchmark for excellence in coconut processing.
CHAPTER 2
LITERATURE SURVEY
2.1 INTRODUCTION
This paper proposes an automatic coconut segregation system. Which sorts coconut
based on various constrains, this project describe the development of prototype of
AUTOMATIC COCONUT SORTINMG MACHINE. The various journals and papers in
regards to the project is briefly explained below:
AYE MYAT MYAT MYO, ZAR CHI SOE [2]Arduino, an open-source electronics
platform, has become the go-to option for anyone working on interactive hardware and
software projects. This paper presents a methodical literature review intended to intensively
3olour3 and compare existing primary studies on prototyping with Arduino. Most often, they
control one dedicated task in the device and not all of the device’s functions. Microcontrollers
have both a software and a hardware component. The color sorting machine using Arduino is
a fascinating and renowned project for techniques, which would like to combine electronics,
machine building and programming. The color sorting machine is fully automated with the
help of Arduino Mega.
classification of agricultural goods, assembling the same color products in one packing box,
and where risky and repeated works are performed.
OPENCV( Open Source Computer Vision Library) is an open source computer vision and
machine literacy software library. OpenCV was erected to give a common structure for
computer vision operations and to accelerate the use of machine perception in the marketable
product.The paper has covered topics ranging from how artificial intelligence and machine
learning algorithms help in object detection to how OpenCV is such a useful tool for beginners
who wish to learn how real time object identification and tracking can be done. Here we used
to detect crack of the coconut and also chech weather the eye of the coconut exposed or not to
meet our desirable parameters. Image identification makes use of techniques like detection of
an object, its recognition, and segmentation of the coconut. The use of artificial intelligence
and machine learning enhances the rate of processing the data and maintaining the standard of
the coconut.
2.3 SUMMARY
These papers described here the designing and working of various sensors for automatic
coconut sorting machine.
CHAPTER 3
METHODOLOGY
3.1.INTRODUCTION
Designing the automatic coconut sorting machine involves several steps . All these steps
are described below.
3.2 METHODOLOGY
Initially, the coconuts are dumped in the Hooper. Coconuts are taken individually from
the hooper and passed through roller conveyor. Coconuts are passed in such a way that it
become oriented in a particular direction only (eye of coconuts are arranged either to left or
right) for easy detection and to improve sorting efficiency. On the next phase, the coconut
enters the sensing unit. As the coconut passes through sensing unit, the camera module creates
a loop of images through which it detects if the eye is covered or not by machine learning
technology. Simultaneously, the crack is also detected in a similar manner. An ultrasonic
sensing unit is also employed in order to improve the accuracy of crack detection. The defective
coconuts are pushed out of the conveyor by servo motor mechanism .On the next stage, the
maturity of the coconut has to be analysed for that a colour sensor is used as it matches our
required constrain(biscuit colour). Coconut which fails the test are removed by servo motor
mechanism. On the final phase, the coconut is sorted on the basis of their weight using load
cell and balancing mechanism.
The system has six major hardware and software interfaces: an Arduino UNO, Load
cell, servomotor, ultrasonic, colour sensor and open CV. The specifications regarding various
components used in this system are descriptively explicated below
1) Arduino UNO
Arduino UNO is an easy to use, robust microcontroller based on the ATmega328P processors.
It consists of 14 digital input/output ports of which 6 can be used for Pulse Width Modulation
(PWM) techniques. It has a transmitter and receiver port pair which could be used for serial
communication with other boards. There are three ground ports and a 5V output supply port. It
also contains a 16 MHz quartz crystal, a power jack which inputs at 5V, an ICSP header, a
flash memory of 32KB of storage and a reset button. It also has an USB port which can be
used to power it and also etch the code done on an open-source software platform, the Arduino
IDE. The IDE can run on different platforms such as Windows, Macintosh OSX, and Linux.
It also contains ample libraries to support various, highly complex operations.
A load cell HX711 is a specialized type of load cell designed for measuring weight or force,
finding common applications in weighing scales, industrial settings, and force measurement
systems. These sensors operate on the principle of strain gauges. When a force is applied to the
load cell, it undergoes slight deformation, altering the electrical resistance of the strain gauges
embedded within. This change in resistance produces an electrical signal proportional to the
applied force. The electrical signal generated by load cell weight sensors is typically low and
requires amplification and conditioning. Signal output may manifest as voltage, current, or
frequency, dependent on the sensor type and application.
The HX711 is a precision 24-bit analog-to-digital converter (ADC) designed specifically for
weigh scales and industrial control applications to interface directly with a bridge sensor,
particularly strain gauge load cells
The TCS3200 is a versatile color sensor module designed for detecting and measuring the
intensity of red, green, blue, and clear (no filter) light. It finds extensive application in
electronics projects, robotics, and automation tasks, including color sorting, recognition, and
ambient light sensing. Equipped with an array of photodiodes, the TCS3200 accurately detects
a broad spectrum of colors by illuminating surfaces with white light and measuring the
reflected light's intensity using its photodiodes. With separate sets for red, green, blue, and
clear light, the sensor effectively distinguishes between different colors, ensuring
precise measurements.
4) Ultrasonic sensor
An ultrasonic sensor is a device that utilizes ultrasonic sound waves to detect the distance to
an object or obstacle without physical contact. Operating on the principle of echolocation akin
to how bats navigate, it emits high-frequency sound pulses and awaits the echo's return. By
measuring the time taken for the sound waves to rebound, the sensor discerns the distance to
the object. At the core of the ultrasonic sensor lies the transducer, responsible for converting
electrical energy into ultrasonic sound waves and vice versa, emitting sound pulses and
receiving echoes.These sensors are adept at measuring distances spanning from a few
centimeters to several meters, tailored to various models and designs. Predominantly employed
in robotics, automation, and industrial domains, they serve purposes like object detection,
obstacle avoidance, and distance sensing
5) Servo motor
6) Open Cv
OpenCV, short for Open Source Computer Vision Library, is an open-source computer vision
and machine learning software library. It provides a comprehensive set of tools and algorithms
for various tasks related to image and video processing, object detection, tracking, and machine
learning. OpenCV offers a wide range of functions and algorithms for image processing tasks
such as filtering, thresholding, edge detection, and image enhancement. These tools enable
users to manipulate and analyze digital images with ease.
3.3 SUMMARY
In the thesis the various steps used are discussed above and ACSM performance depends upon
the functions of the above steps.
CHAPTER 4
SYSTEM DESIGN
4.1 INTRODUCTION
The diagrammatic representation of the system in full working condition can be described
by a block diagram and circuit diagram . The block diagram and circuit diagram of ACSM
is shown below. In this control scheme, ACSM included microcontroller and sensors.
This is the block diagram representation of automatic coconut sorting machine. The
block diagram consists of Arduino mega board, microcontroller, camera module, servomotor,
load cell, colour sensor and ultrasonic sensor
The objective is to sort the coconut and identify the defective coconuts. The coconut is
dumbed in the Hooper, and the coconut drop individually on the roller conveyor coconut and
eye of the coconut are oriented in a single direction and moved along the conveyor system to
the sensing unit containing camera module for detecting the eyes, ultrasonic sensor for
detecting the crack, colour sensor, load sensor for weight measurement after each detection
defective coconuts are pushed out of the conveyor system using servo motor mechanism
CONVEYOR
Conveyor system is a transportation mechanism used to move the coconut across Various units
(sensing units, sorting units, etc…)
The circuit diagram for implementing automatic coconut sorting machine involves the
following components: Arduino UNO, Husky lens, HX711 load cell amplifier, load cell,
ultrasonic sensors, colour sensor (TCS3200) and servo motors. Arduino is the main control
unit responsible for executing the control algorithm and generating the control signals. Arduino
interfaces with our components and peripherals.
Husky lens is connected to the Arduino board by the terminal of husky lens (SDA, SCL,
VCC, GND) are connected to the (D0, D1, VCC, GND) of the Arduino respectively. The husky
lens captures the image of the coconut and scan any fault (visibility of eyes and crack) and the
signal is send to the microcontroller.
Ultrasonic sensor is connected to Arduino board by (VCC, TRIG, ECHO, GND) pins to
the (VCC, D13, D12, GND) pins of Arduino respectively. Ultrasonic sensor detects the crack
by evaluating the frequency change receiving signal that reflected by the surface.
Colour sensor (TCS3200) is connected to the Arduino board by (S0, S1, S2, S3, OUT, VCC,
GND) pins to the (D11, D10, D6, D7, D5, VCC, GND) Arduino respectively.Colour sensor
transmits the white light and determines the ratio of RGB in the reflected receiving light.By
evaluating the proportions of RGB in receiving signal, the colour of the surface is determined.
Load cell (HX711) is connected to amplifier circuit through (E+ , E- , A-, A+) pins.
Amplifier circuit amplifies the signal from load cell and fed to terminals of Arduino board by
(VCC, DAT, SCK, GND) to the pins of Arduino board (VCC, D3, D2, GND)
respectively.Load cell determines the weight of coconut by piezo electric effect .when a
mechanical stress applied to the load cell, a corresponding electric signal is formed in the
internal circuit and weight is measured in accordance with the variation.
4.4 SUMMARY
The corresponding system design for design of ACSM is explained in this chapter. The
proposed work can be implemented by referring this design.
CHAPTER 5
RESULT AND DISCUSSION
5. 1INTRODUCTION
The simulation and flowchart representation of automatic coconut sorting machine is given
below.
An electronic system employing an Arduino UNO, an ultrasonic distance sensor, and a servo
motor facilitates the control of the servo motor's position based on the distance of an object
detected by the sensor. The ultrasonic sensor operates by emitting ultrasonic waves to gauge
the distance of an object positioned in front of it, returning the measurement in centimeters.
The Arduino UNO microcontroller processes the received distance data and adjusts the servo
motor's position accordingly.
This setup enables dynamic positioning of the servo motor in response to changes in the
detected distance, offering versatile applications in robotics, automation, and object
tracking systems. The Arduino Mega serves as the central processing unit of the sorting
machine. It controls and coordinates the operation of all other components, receives input from
The load cell measures the weight of each coconut after passing through the sensing units.
Weight data is used to determine the quality and ripeness of the coconut. The colour sensor
identifies the color of each coconut. Deviations from the expected color may indicate defects
or ripeness issues. The ultrasonic sensor detects cracks or irregularities in the surface of the
coconut. It emits ultrasonic waves and measures the time taken for the waves to bounce back.
Anomalies in the return signal can signify cracks or structural issues. Coconuts are deposited
into the hopper and are released individually onto the roller conveyor. As the coconuts move
along the conveyor, they pass through various sensing units, including the camera module,
ultrasonic sensor, colour sensor, and load cell. The camera module captures images of the
coconuts, which are analyzed by the microcontroller to detect eye defects. The ultrasonic sensor
identifies cracks or irregularities in the coconut's surface. The colour sensor assesses the color
of each coconut.
5.3 FLOWCHART
Coconuts are individually retrieved from the hopper and directed through a roller
conveyor system. As they traverse the conveyor, coconuts undergo various
sensor-based evaluations and sorting methodologies to align with desired
characteristics. Among these considerations, coconut weight stands as a pivotal
constraint. Upon encountering the load cell, the program initializes. The load cell
accurately gauges the coconut's weight, transmitting a corresponding signal to the
microcontroller. Subsequently, the microcontroller relays this information to the
display unit, where the coconut's weight is showcased. This precise measurement
As coconuts move along the roller conveyor, a crucial constraint involves detecting their colour
to assess their quality. When a coconut enters the range of the colour sensor, the program
initiates. The colour sensor swiftly identifies the coconut's colour against the desired hue. If the
detected colour matches the desired one, the servo motor pivots left. Conversely, if the colour
deviates from the desired shade, the servo motor swivels right. This process ensures that
coconuts meeting the specified colour criteria are directed one way, while those failing to meet
the criteria are directed in another, thereby facilitating quality control along the conveyor line.
When a coconut enters the range of the ultrasonic sensor, the program initiates. The first step
involves initializing the ultrasonic sensor, preparing it for operation. Subsequently, the
microcontroller sends a trigger signal to the ultrasonic sensor to initiate an ultrasonic pulse, and
then waits for the sensor to receive the echo pulse reflected from the coconut. Upon receiving
the echo pulse, the ultrasonic sensor detects the distance to the coconut. If the detected distance
corresponds to the coconut being within the sensor's range, the program proceeds to measure
the coconut's weight. If the coconut is present infront of the ultrasonic sensor, the servo motor
turns right and back into the sorting process and continues diverting the coconut accordingly.
5.4 RESULT
The automatic coconut sorting machine seamlessly integrates cutting-edge technologies to
achieve precise and efficient sorting outcomes. The following descriptive results highlight the
machine's performance.The Quality Assessment it is a advanced sensor technology, the
machine demonstrated an impressive ability to assess coconut quality based on color, shape,
and surface condition.
High accuracy in quality sorting was observed, emphasizing the machine's capability to uphold
stringent quality standards.A precision weighing mechanism facilitated the efficient sorting of
coconuts based on weight categories.The machine maintained tight tolerances in weight
variations, resulting in grouped coconuts that met precise weight specifications.
5.5 SUMMARY
The simulation analysis of ACSM is performed using wokwi software. The implemented
machine showed significant improvement in the performance.
5.6 CONCLUSION
This research can used as sorting machine for coconut. Based on the results of analysis and
testing, the conclusions of this study indicate that this sorting system has an maximal accuracy.
The Weight sensor is used in this project. Which is one of the most important parameters that
is taken into account for calculating the dosage value. It is a key measure for safe medication
management and monitoring patients. The ultimate aim of the project is to avoid the medication
errors caused due to their annual calculation.
REFERENCES
[1] Tansuva Jahn Nuva, Md. Imteaz Ahmed, Sarker Safat, Muhmud. “Design &
Fabrication
[2] Ayushi Sharma, Jyostna Pathak, Muskan Prakash,J N Singh. “Arduino And Node MCU
Based Ingenious Household Object Monitoring And Control Environment,
Conference- International Conference On Advances In Computing,Communication
Control And Networking(ICACCCN), Year- 2019.
[3] Trilok .G. Mylar, Prashanth L, Ramesh C G, “Design Of Automated System For
Coconut Segregstion”, Journal- International Journal Pf Advances In Engineering And
Management(IJAEM),Volume 2, Issue No- 4, Year-August 2020.
[4] J.Chinna Babu, M.Sandeep Kumar, Prabu Jayagopal, V.E Satheeshkumar. “Iot Based
Intelligence System For Internal Crack Detection In Building Blocks”, Journal- Journal
Of Nanomaterial. Year- June 2022
[5] Myat Myat Myo, Zar Chi Soe, “Automatic Colour Sorting Machine Using Arduino
Mega Microcontroller, Journal- International Journal Of Latest Technology In
Engineering Management & Applied Science(IJLTEMAS), Volume- VIII, Issue No-
VIII, Year- August 2019.
APPENDIX
#include <Servo.h>
#define trigPin 9
#define echoPin 8
Servo servo;
void setup() {
Serial.begin (9600);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
servo.attach(6);
void loop() {
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
Serial.print(distance);
servo.write(90);
else if (distance<180) {
Serial.print(distance);
servo.write(180); }
else {
Serial.println("nothing detected");
delay(500);
#define DT A0
#define SCK A1
#define sw 2
long sample=0;
float val=0;
long count=0;
unsigned char i;
pinMode(DT, OUTPUT);
digitalWrite(DT,HIGH);
digitalWrite(SCK,LOW);
Count=0;
pinMode(DT, INPUT);
while(digitalRead(DT));
for (i=0;i<24;i++)
digitalWrite(SCK,HIGH);
Count=Count<<1;
digitalWrite(SCK,LOW);
if(digitalRead(DT))
Count++;
digitalWrite(SCK,HIGH);
Count=Count^0x800000;
digitalWrite(SCK,LOW);
return(Count);
void setup()
Serial.begin(9600);
pinMode(SCK, OUTPUT);
pinMode(sw, INPUT_PULLUP);
lcd.begin(16, 2);
lcd.setCursor(0,1);
delay(1000);
lcd.clear();
calibrate();
void loop()
count= readCount();
int w=(((count-sample)/val)-2*((count-sample)/val));
Serial.print("weight:");
Serial.print((int)w);
Serial.println("g");
lcd.setCursor(0,0);
lcd.print("Weight ");
lcd.setCursor(0,1);
lcd.print(w);
lcd.print("g ");
if(digitalRead(sw)==0)
val=0;
sample=0;
w=0;
count=0;
calibrate();
void calibrate()
lcd.clear();
lcd.print("Calibrating...");
lcd.setCursor(0,1);
lcd.print("Please Wait...");
for(int i=0;i<100;i++)
count=readCount();
sample+=count;
Serial.println(count);
sample/=100;
Serial.print("Avg:");
Serial.println(sample);
lcd.clear();
count=0;
while(count<1000)
count=readCount();
count=sample-count;
Serial.println(count);
lcd.clear();
lcd.print("Please Wait....");
delay(2000);
for(int i=0;i<100;i++)
count=readCount();
val+=sample-count;
Serial.println(sample-count);
val=val/100.0;
lcd.clear();
}
6.3 SERVO MOTOR WITH COLOUR SENSOR
#include <Servo.h>
#include <Adafruit_TCS3200.h>
#define S0 5
#define S1 4
#define S2 3
#define S3 2
#define sensorOut 6
Servo myservo;
void setup() {
Serial.begin(9600);
colorSensor.begin();
pinMode(sensorOut, INPUT);
}
void loop() {
int red, green, blue;