Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 78

DEBRE TABOR UNIVERSTY

GAFAT INSTITUTE OF TECHNOLOGY


DEPARTMENT OF COMPUTER SCIENCE
INDUSTRIAL PROJECT I
TITLE: - ARDUINO BASED QUADCOPTER DELIVERY SYSTEM
In Partial Fulfillment of the Requirements for the Bachelor of Degree in
computer science
Prepared by:
NAME ID NO
1. TEWODROS ABERE ----------------------------------------- DTU13R1637
2. TEWODROS YIRGA ------------------------------------------DTU13R1639
3. MAHDER EYEBERU------------------------------------------ DTU13R1111
4. BALEWGIZE ALMAW---------------------------------------- DTU13R0253
5. YOHANNIS GUADEGNAW----------------------------------DTU13R1326
6. ABEL MEKONEN-----------------------------------------------DTU13R3004
7. AYUB GETACHEW---------------------------------------------DTU13R0242
8. SAMUEL KASSAHUN------------------------------------------DTU13R1450

Advisor
Mr. Abebe.K
Debre tabor, Amhara, Ethiopia

Juan 2024
APPROVAL
The Project is our own and has not been presented for a degree in any other university with
these functionalities and all the sources of material used for the project have been duly
acknowledged. (Name and Signature of the project group members)

Name signature

1. TEWODROS ABERE
2. TEWODROS YIRGA
3. MAHDER EYEBERU
4. BALEWGIZE ALMAW
5. YOHANNIS GUADEGNAW
6. ABEL MEKONEN
7. AYUB GETACHEW
8. SAMUEL KASSAHUN

This is to certify that I have read this project and that in my opinion it is fully adequate, in scope
and quality, as a project for the degree of Bachelor of Science

ABEBE KINDIE

Name of Advisor Signature

Examiner Name Signature

1.
2.
3.
4.
ACKNOWLEDGEMENT

We would like to express our deepest gratitude to all the individuals who have supported us
throughout the development of this project.

First and foremost, we are immensely grateful to God for providing us with the strength,
wisdom, and perseverance to undertake and complete this project. Without His guidance and
blessings, this accomplishment would not have been possible.

We extend our heartfelt thanks to our families for their unwavering support, encouragement, and
understanding throughout this journey. Their love and belief in us have been a constant source of
motivation.

We are also thankful to our friends, who have been a great support system, providing us with
encouragement and advice whenever we needed it.

Special thanks to our teachers for their invaluable guidance and for imparting the knowledge and
skills necessary to carry out this project. Their dedication to teaching and commitment to our
education have been instrumental in our success.

We would like to express our sincere gratitude to our adviser, Mr. Abebe Kindie (MSC), for his
expert advice, insightful feedback, and continuous support throughout the project. His guidance
has been crucial in shaping the direction and quality of our work.

Finally, we appreciate everyone who has contributed to the project in any way. Your help and
support have been deeply appreciated and have made a significant impact on the successful
completion of this project.

Thank you all.


Table of Contents
APPROVAL....................................................................................................................................2
Acknowledgement...........................................................................................................................3
ABBREVIATION...........................................................................................................................6
Abstract............................................................................................................................................7
CHAPTER ONE..............................................................................................................................8
INTRODUCTION OF WHOLE PROJECT PROCESS.................................................................8
1.1. INTRODUCTION............................................................................................................8
1.2 Background Information........................................................................................................9
1.2.1 Vision..............................................................................................................................9
1.2.2 Mission............................................................................................................................9
1.3 Background of the Project......................................................................................................9
1.4 Problem Statement...............................................................................................................10
1.5 Team Composition...............................................................................................................10
1.6 Objective of the Project........................................................................................................11
1.6.1 General Objective..........................................................................................................11
1.6.2 Specific Objectives........................................................................................................11
1.7 Feasibility Analysis..............................................................................................................12
1.7.1 Operational Feasibility..................................................................................................12
1.7.2 Technical Feasibility.....................................................................................................12
1.7.3 Political Feasibility........................................................................................................13
1.7.4 Economic Feasibility.....................................................................................................13
1.7.5 Schedule Feasibility......................................................................................................14
1.8 Scope of the Project.............................................................................................................14
1.9 Limitation of the Project......................................................................................................15
1.10 Significance of the Project.................................................................................................16
1.11 Target Beneficiaries of the System....................................................................................16
1.12 Methodology for the Project..............................................................................................17
1.12.1 Fact Finding Techniques.............................................................................................17
1.13 Systems Analysis and Design Approach...........................................................................18
1.14 Development Tools............................................................................................................18
1.14.1 Software Requirements...............................................................................................19
1.14.2 Hardware Requirements..............................................................................................19
1.15 Testing Procedures.............................................................................................................19
1.15.1 Unit Testing.................................................................................................................20
1.15.2 Integration Testing......................................................................................................20
1.15.3 System Testing............................................................................................................20
1.16 Risks and Contingencies....................................................................................................21
1.16.1 Project Development Problems...................................................................................21
CHAPTER TWO...........................................................................................................................22
DESCRIPTION OF THE EXISTING SYSTEM..........................................................................22
2.1 Introduction of Existing System..........................................................................................22
2.2 Major Functions/Activities in the Existing System.............................................................23
2.3 Players in the Existing System.............................................................................................23
2.4 Business Rules.....................................................................................................................24
Bottlenecks of the Existing System...........................................................................................24
2.6 Proposed Solution to Address Problems of the Existing System.........................................25
2.7 Requirements of the Proposed System.................................................................................26
2.7.1 Functional Requirements:..............................................................................................26
2.7.2 Non-Functional Requirements:.....................................................................................27
CHAPTER THREE.......................................................................................................................28
SYSTEM ANALYSIS...................................................................................................................28

ABBREVIATION

1. API: Application Programming Interface - A set of rules and definitions that allows
software programs to communicate with each other.
2. AutoCAD: Automatic Computer-Aided Design - A software application for 2D and 3D
design and drafting.
3. CSS: Cascading Style Sheets - A language used to describe the presentation of a
document written in HTML or XML.
4. DHL: Dalsey, Hillblom, and Lynn - A division of the German logistics company
Deutsche Post DHL providing international courier, parcel, and express mail services.
5. EMAIL: Electronic Mail - A method of exchanging digital messages over the internet.
6. ESCs: Electronic Speed Controllers - Devices used to control the speed of electric
motors, typically in UAVs and RC vehicles.
7. GDPR: General Data Protection Regulation - A regulation in EU law on data protection
and privacy in the European Union and the European Economic Area.
8. GPS: Global Positioning System - A satellite-based navigation system that provides
location and time information.
9. HTML: Hypertext Markup Language - The standard markup language for creating web
pages and web applications.
10. HTTP: Hypertext Transfer Protocol - The foundation of any data exchange on the Web,
and it is a protocol used for transmitting hypertext.
11. HTTPS: Hypertext Transfer Protocol Secure - An extension of HTTP used for secure
communication over a computer network.
12. IDE: Integrated Development Environment - A software application that provides
comprehensive facilities to computer programmers for software development.
13. IMU: Inertial Measurement Unit - A device that measures and reports on a body's
specific force, angular rate, and sometimes the magnetic field surrounding the body.
14. MONGODB: Mongo Database - A NoSQL database program that uses JSON-like
documents with optional schemas.
15. NOSQL: Non-Relational Structured Query Language - A type of database design that
provides flexible schemas for the storage and retrieval of data beyond the traditional
tabular relationships used in relational databases.
16. PID: Proportional, Integral, Derivative - A type of feedback controller used in industrial
control systems.
17. RESTful: Representational State Transfer - An architectural style for designing
networked applications.
18. RF: Radio Frequency - The rate of oscillation of electromagnetic radio waves in the
range of 30 kHz to 300 GHz.
19. SMS: Short Message Service - A text messaging service component of most telephone,
internet, and mobile device systems.
20. SQL: Structured Query Language - A standard language for managing and manipulating
databases.
21. UAT: User Acceptance Testing - A process of verifying that a solution works for the
user.
22. UAVs: Unmanned Aerial Vehicles - Aircraft without a human pilot on board, commonly
known as drones.
23. UI design: User Interface Design - The design of user interfaces for machines and
software, such as computers, home appliances, mobile devices, and other electronic
devices.
24. XSS: Cross-Site Scripting - A type of security vulnerability typically found in web
applications.
ABSTRACT

This project proposes the development of an Arduino-based quadcopter integrated with a web-
based delivery management platform tailored to the unique logistical challenges of Ethiopia. The
quadcopter will execute precise delivery operations while the website will facilitate user
interactions and manage administrative tasks. The quadcopter, controlled via a joystick, will
perform essential delivery functions, leveraging GPS and live camera feeds to ensure accuracy
and efficiency. The web platform will offer functionalities such as user registration, order
placement, real-time order tracking, payment processing, and feedback collection.
Administrators will have comprehensive oversight capabilities, including order management,
user registration, and drone status monitoring.

This integrated system aims to revolutionize the delivery sector in Ethiopia by offering a more
efficient, reliable, and technologically advanced solution compared to traditional methods. The
feasibility analysis confirms that both the quadcopter and the web platform can be developed and
deployed effectively within the project's constraints. The project employs various methodologies,
including agile development for the web platform and iterative prototyping for the quadcopter,
ensuring both systems are robust and user-friendly.

By addressing the existing bottlenecks in traditional delivery systems, this project seeks to
enhance delivery speed, accuracy, and customer satisfaction. The detailed system analysis
includes use case diagrams, activity diagrams, and sequence diagrams to ensure a comprehensive
understanding and implementation of both the quadcopter and the web platform. The successful
implementation of this project will not only streamline delivery services but also pave the way
for future technological advancements in the region.
CHAPTER ONE

INTRODUCTION OF WHOLE PROJECT PROCESS

1.1 Introduction

The advent of unmanned aerial vehicles (UAVs), specifically quadcopters, has revolutionized
various industries, including logistics and delivery. This project, titled "Arduino-Based
Quadcopter Delivery System," integrates advanced drone technology with a user-friendly web-
based platform to provide an efficient and reliable delivery service. Unlike traditional delivery
methods constrained by traffic and limited accessibility, our solution leverages the agility and
speed of quadcopters to overcome these challenges.

The project features an Arduino-controlled quadcopter with a self-built controller for precise
control and stabilization. Quadcopters are a type of UAV that are defined by their four rotors,
which allow for vertical takeoff and landing, as well as stable hovering capabilities. These
characteristics make them exceptionally useful in applications ranging from aerial photography
and videography to precision agriculture, surveillance, and delivery services.

Additionally, a comprehensive website is developed to handle user interactions, such as order


placements, real-time tracking, and administrative management. This integrated system aims to
streamline the delivery process, ensuring timely and secure delivery of packages while providing
an exceptional user experience.

1.2 Background Information of the Organization

Our group/organization is dedicated to harnessing cutting-edge technology to address


contemporary challenges in logistics and delivery. With a focus on innovation, we aim to bridge
the gap between traditional delivery services and modern technological advancements. Our team
comprises enthusiasts in UAV technology and software development, all committed to
developing practical solutions that enhance efficiency and user satisfaction. By integrating drone
technology with web-based platforms, we aspire to create a new standard in delivery services
that is both cost-effective and highly efficient.

1.2.1 Vision

Our vision is to redefine the delivery industry by merging advanced drone technology with
intuitive online platforms, thereby providing unparalleled delivery services that are fast, reliable,
and accessible to everyone. We strive to be setting new benchmarks in delivery efficiency and
customer satisfaction.

In addition, our vision emphasizes to democratize drone technology by creatinxg an accessible,


customizable, and user-friendly quadcopter that can serve as an educational tool, a research
platform, and a hobbyist's project too. We envision a future where individuals and institutions
can easily build and modify drones to meet specific needs without being hindered by cost or
complexity.

1.2.2 Mission

Our mission is to design, develop, and deploy an Arduino-based quadcopter for delivery
services, accompanied by a robust website for managing and tracking deliveries. We are
committed to using affordable and open-source technologies to democratize access to advanced
delivery solutions. By doing so, we aim to foster innovation, enhance accessibility, and provide a
practical, scalable delivery solution that meets the evolving needs of businesses and consumers
alike. By incorporating stabilization features, we aim to enhance user interaction and flight
stability, making drone technology more approachable and applicable to a wider range of users.

1.3 Background of the Project

The increasing demand for efficient delivery services in urban areas has highlighted the
limitations of traditional delivery methods. Traffic congestion, high labor costs, and
environmental concerns are significant challenges faced by conventional delivery systems. In
response to these issues, our project explores the potential of quadcopters as a viable alternative
for delivery services. By leveraging the flexibility and speed of drones, we aim to create a system
that can navigate urban landscapes more efficiently and with less environmental impact.

The project involves two main components: the development of an Arduino-based quadcopter
and the creation of a comprehensive web platform for managing deliveries. The quadcopter will
be equipped with a controller for precise maneuvering and stability. The web platform will allow
users to place orders, track deliveries in real-time, and manage their delivery history. This dual
approach ensures that both the technological and user experience aspects are addressed,
providing a seamless and efficient delivery service.

1.4 Problem Statement

The traditional delivery systems are plagued by several inefficiencies, including traffic delays,
high operational costs, and limited accessibility to remote or congested areas. These issues result
in delayed deliveries, increased fuel consumption, and a higher carbon footprint. In densely
populated urban areas, these problems are exacerbated, leading to customer dissatisfaction and
logistical challenges for businesses.

Our project aims to address these issues by developing an Arduino-based quadcopter delivery
system integrated with a user-friendly web platform. The quadcopter can bypass traffic and reach
destinations more quickly, reducing delivery times and operational costs. Additionally, the use of
electric drones contributes to lower emissions, aligning with environmental sustainability goals.
By offering real-time tracking and efficient management through the web platform, we seek to
enhance the overall delivery experience for both businesses and customers.

1.5 Team Composition

Our project team is composed of individuals with diverse knowledge and a shared commitment
to innovation. The team includes:

No Name Tasks
Title selection, document preparation, researching,
1 Tewodros Abere project managing, hardware engineering, coding,
UI(user interface) design
Title selection, document preparation, researching,
2 Tewodros Yirga project managing, hardware engineering, coding, UI
design
Title selection, document preparation, researching,
3 Mahder Eyeberu
hardware engineering, coding, UI design
Title selection, document preparation, researching,
4 Balewgize Almaw
hardware engineering, coding, UI design
Title selection, document preparation, researching,
5 Yohannis Guadegnaw
hardware engineering, coding, UI design
Title selection, document preparation, researching,
6 Abel Mekonen
hardware engineering, coding, UI design
Title selection, document preparation, researching,
7 Ayub Getachew
hardware engineering, coding, UI design
Title selection, document preparation, researching,
8 Samuel Kassahun
hardware engineering, coding, UI design

Table 1: Team composition


This multidisciplinary team collaborates closely to ensure that the project objectives are met
efficiently and effectively.

1.6 Objective of the Project


1.6.1 General Objective

The general objective of this project is to design and implement an Arduino-based quadcopter
delivery system integrated with a web-based platform to provide an efficient, reliable, and
environmentally friendly delivery service. The project aims to demonstrate the feasibility and
benefits of using UAVs for last-mile delivery in urban environments, addressing common
challenges such as traffic congestion and high operational costs.

1.6.2 Specific Objectives

1. Develop the Quadcopter: Design and build an Arduino-based quadcopter with a self-
built control system to ensure stable and precise flight operations.
2. Create the Web Platform: Develop a comprehensive web platform that allows users to
register, place orders, track deliveries in real-time, and manage delivery histories.
3. Integrate GPS Tracking: Implement GPS technology to provide real-time tracking of
the quadcopter, ensuring accurate delivery locations and estimated delivery times.
4. Implement a Notification System: Develop a notification system to keep users
informed about their order status, including confirmation, dispatch, and delivery
notifications.
5. Ensure Battery Monitoring: Integrate a system to monitor the quadcopter's battery
status, ensuring safe and efficient operation during delivery missions.
6. Test and Validate: Conduct extensive testing of both the quadcopter and the web
platform to ensure reliability, safety, and user satisfaction.

By achieving these specific objectives, the project aims to provide a practical solution to the
challenges faced by traditional delivery systems, offering a modern alternative that leverages the
advantages of UAV technology.

1.7 Feasibility Analysis

The feasibility analysis for the Arduino-based quadcopter delivery system encompasses several
dimensions to determine the viability of successfully completing the project. This analysis
evaluates the operational, technical, economic, behavioral/political, and schedule feasibility to
ensure that all aspects of the project are achievable within the given constraints.

1.7.1 Operational Feasibility

Operational feasibility examines the practicality of the project in terms of operational


requirements and the end users' needs.

Quadcopter Development
 Control System: The switch from a gesture-controlled system to a joystick-based
controller simplifies the control mechanism, are well-understood, reliable, and can be
built using standard Arduino components.
 Delivery Mechanism: The quadcopter will be equipped with a payload management
system that ensures secure and efficient delivery of packages. The feasibility of this
system is supported by existing models of drone delivery used by companies like
Amazon and Google.
 User Training: Pilots will require minimal training to operate the joystick-based
controller, as it is intuitive and user-friendly. This reduces the operational complexity and
enhances the feasibility of the project.

Website Development

 User Registration and Order Placement: Implementing user registration and order
placement functionalities is straightforward with modern web development frameworks.
Ensuring user data security and providing a seamless user experience will be prioritized.
 Order Tracking and Notifications: Real-time tracking of the quadcopter and sending
notifications to users are achievable using Global Positioning System (GPS) technology
and notification systems like electronic mail (email) and short message service (SMS).
These functionalities are commonly implemented in delivery and logistics systems.

1.7.2 Technical Feasibility

Technical feasibility assesses whether the project can be developed with the available
technology, skills, and resources.

Quadcopter Development

 Hardware Components: All necessary hardware components, such as motors,


Electronic Speed Controllers (ESCs), flight controllers, GPS modules, and cameras, are
readily available and compatible with Arduino. The integration of these components is
well-documented in the maker and robotics communities.
 Software Development: Programming the flight control software and communication
protocols using Arduino Integrated Development Environment (IDE) and libraries is
feasible. The open-source nature of Arduino and its extensive community support provide
ample resources for troubleshooting and development.

Website Development

 Frontend and Backend Development: Modern web technologies like hypertext markup
language(HTML),cascading style sheet(CSS), JavaScript, Python (Django), or Node.js
offer robust frameworks for building the website. These technologies are well-supported,
and the development team possesses the necessary skills to implement them.
 Database Management: Using relational (Structured Query Language (SQL)) or non-
relational (not only SQL(NoSQL)) databases for managing user data, orders, and delivery
tracking is feasible. These databases are reliable and can handle the expected load.
 API Integration: Developing Representation State Transfer (RESTful) Application
Programming Interfaces (APIs) to communicate between the website and the
quadcopter's control system is technically feasible. Existing libraries and frameworks
facilitate the creation of secure and efficient APIs.

1.7.3 Economic Feasibility

Economic feasibility analyzes the cost-effectiveness of the project, ensuring that it is financially
viable.

Quadcopter Development

 Cost of Components: The cost of Arduino components, sensors, and other hardware is
relatively low. Bulk purchasing can further reduce costs. Besides, most of the
components we are looking for the manufacturing of the quadcopter are available in our
campus ground.
 Development Costs: The development costs are minimized by using open-source
software and in-house expertise. No licensing fees for software or tools are required.
 Maintenance and Operations: The ongoing maintenance costs of the quadcopter, such
as battery replacements and repairs, are manageable within the project's budget.

Website Development

 Development Costs: The use of open-source web development frameworks and cloud
hosting solutions minimizes development and operational costs. Initial development can
be done in-house, leveraging existing skills.
 Operational Costs: Cloud-based solutions offer scalable pricing models, allowing the
project to start with minimal costs and expand as needed. The cost of maintaining and
updating the website is also economically feasible.

1.7.4 Behavioral/Political Feasibility

Behavioral/political feasibility examines the human and regulatory factors that might impact the
project.

Quadcopter Development

 User Acceptance: joystick-based controller will likely be well-received by users due to


its simplicity and familiarity. This increases the likelihood of user adoption.
 Regulatory Compliance: Compliance with aviation regulations for drone operation is
crucial. The project will adhere to local regulations regarding drone usage, altitude limits,
and flight zones to ensure legal feasibility.

Website Development:
 User Engagement: The website's user-friendly design and functionality will encourage
user engagement. Regular feedback will be sought to ensure the platform meets user
needs.
 Data Privacy: Ensuring compliance with data privacy regulations (such as General Data
Protection Regulation (GDPR)) is essential. Implementing robust data protection
measures will address user concerns about privacy and security.

1.7.5 Schedule Feasibility

Schedule feasibility assesses whether the project can be completed within the given timeframe.

Quadcopter Development

 Development Timeline: The modular nature of the project allows parallel development
of different subsystems. In addition, 6-8 months of time is left for the completion of the
project which will be enough to manufacture and test our quadcopter.
 Milestones: Key milestones will be set to track progress and ensure timely completion.
Regular progress reviews will help identify and address any delays promptly.

Website Development

 Development Phases: The website development will follow an agile methodology, with
iterative development cycles. This allows for continuous feedback and improvements.
 Timeline Management: A detailed timeline with specific deliverables for each
development phase will be created. This includes frontend and backend development,
database setup, API integration, and testing.

By analyzing these aspects, we conclude that the project is feasible operationally, technically,
economically, behaviorally, and within the given schedule. Careful planning, resource allocation,
and adherence to the outlined methodologies will ensure the successful completion of the
Arduino-based quadcopter delivery system project.

1.8 Scope of the Project

It encompasses the development of an Arduino-based quadcopter for delivery services and the
accompanying web platform to manage delivery operations. The project scope is divided into
two main parts: the quadcopter and the web platform.

For our Arduino-based quadcopter delivery system, the scope includes:

1.8.1 Quadcopter Part

Inclusions
1. Quadcopter Design and Construction: Building an Arduino-based quadcopter with
essential components including motors, propellers, ESCs, a flight controller, a GPS
module, a battery and others. Integration of a camera for live video feed.
2. Control System: Development of a joystick-based controller for manual operation of the
quadcopter. Implementing control algorithms for stable flight and maneuvering.
3. Payload Management: Designing a mechanism for carrying and releasing packages.
Ensuring the quadcopter can handle a predefined maximum payload weight.
4. Navigation and Tracking: Integrating GPS for real-time location tracking.
Implementing autonomous flight capabilities for navigating to delivery locations within a
defined delivery zone.
5. Battery Management: Monitoring battery status and ensuring the quadcopter returns to
the base before the battery is depleted.

Exclusions

1. Advanced Autonomous Navigation: Development of complex AI-based autonomous


navigation systems beyond basic GPS-based navigation.
2. High-Capacity Payload: Handling payloads beyond the maximum weight limit
specified for the quadcopter.
3. Interference Management: Mitigation of external interference from other drones or
radio signals not within the scope.
4. Environmental Adaptations: Operations in extreme weather conditions such as heavy
rain, snow, or strong winds are not covered.

1.8.2 Web Platform Part

Inclusions

1. User Registration and Management: Allowing users to register and manage their
profiles. Secure authentication and data protection mechanisms.
2. Order Management: Enabling users to place orders by specifying pick-up and drop-off
locations. Providing an interface for users to input package details and schedule
deliveries.
3. Order Tracking: Real-time tracking of the quadcopter during deliveries. Displaying the
current location of the quadcopter and estimated delivery time.
4. Admin Dashboard: A comprehensive admin panel for managing registered users,
viewing orders, and monitoring delivery status. Features for payment confirmation,
notification management, and delivery zone adjustments.
5. Notification System: Sending email notifications to users about their order status,
including confirmation, dispatch, and delivery.
6. Payment Integration: Secure payment processing for service fees. Supporting various
payment methods.
7. Delivery Zone Management: Defining and modifying delivery zones within the
operational range of the quadcopter. Verifying if delivery addresses fall within the
defined zones.
8. Feedback and Support: Allowing users to provide feedback on their delivery
experience. Admin access to user feedback for service improvement.

Exclusions

1. Product Sales and Inventory Management: The platform will not include
functionalities for buying, selling, or managing inventory of products.
2. Third-Party Integrations: Integration with third-party services or platforms beyond the
specified GPS and payment systems.
3. Advanced Data Analytics: Complex data analytics and reporting beyond basic order and
delivery tracking are not included.
4. Mobile Applications: Development of dedicated mobile applications for the platform is
not within the scope.
5. Comprehensive Customer Support System: Advanced customer support features such
as live chat or extensive support ticketing systems are not covered.

1.9 Limitation of the Project

While the project aims to provide an innovative solution for delivery services, it has several
limitations including some of the exclusions listed in the scope of the project. Some additional
limitations include:

 Battery Life: The flight time of the quadcopter is limited by its battery capacity, which
restricts the range and number of deliveries that can be made on a single charge.
 Payload Capacity: The quadcopter can only carry packages up to a certain weight limit,
limiting the types of items that can be delivered.
 Weather Conditions: Adverse weather conditions such as rain, strong winds, and
extreme temperatures can affect the performance and safety of the quadcopter.
 Regulatory Restrictions: Compliance with aviation regulations may limit the areas
where the quadcopter can operate, especially in densely populated or restricted zones.

By acknowledging these limitations, the project team can develop strategies to mitigate their
impact and ensure the successful implementation of the quadcopter delivery system.

1.10 Significance of the Project

The significance of the project lies in its potential to revolutionize the delivery service industry
through the integration of advanced drone technology and a user-friendly web platform. This
project aims to address several key areas:

1. Efficiency and Speed: By utilizing quadcopters for delivery, the project promises faster
and more efficient delivery services. Drones can avoid traffic and deliver packages
directly to the destination, significantly reducing delivery times.
2. Cost-Effectiveness: The project can lower operational costs associated with traditional
delivery methods, such as fuel and labor costs. The reduced need for vehicles and
delivery personnel can lead to substantial savings for delivery service providers.
3. Environmental Impact: Quadcopter deliveries produce fewer emissions compared to
traditional vehicle-based deliveries, contributing to a reduction in the carbon footprint
and promoting environmental sustainability.
4. Innovation and Technological Advancement: The project showcases the potential of
integrating cutting-edge technologies, such as GPS tracking, Internet Of Things (IoT),
and automated systems, into everyday services. It promotes the advancement of drone
technology and its applications in various industries.
5. Enhanced Customer Experience: The web platform's functionalities, such as real-time
tracking, notifications, and easy order placement, improve the overall customer
experience. Customers can have greater control and visibility over their deliveries.
6. Scalability: The system can be scaled to accommodate an increasing number of users
and deliveries, making it a viable solution for both small and large-scale operations.
7. Flexibility: even if the quadcopter is mainly used for delivery purposes in this project, it
is evident that it can also be deployed to various needs like environmental monitoring,
disaster response, agricultural and medical uses and other public service applications. In
addition the system can be integrated with other systems like Electronic commerce(E-
commerce) platforms or companies with productions or delivery services like restaurants,
hotels and supermarkets.

1.11 Target Beneficiaries of the System

The target beneficiaries of the Arduino-based quadcopter delivery system include:

1. Customers: Individuals and businesses looking for a fast, reliable, and convenient
delivery service. They benefit from the ease of use, real-time tracking, and timely
notifications provided by the web platform.
2. Delivery Service Providers: Companies that adopt this drone delivery system can
reduce operational costs, improve delivery times, and enhance service quality. This
system can help them stay competitive in the evolving market.
3. E-commerce Businesses: Online retailers can integrate this delivery system to offer
faster shipping options, enhancing customer satisfaction and potentially increasing sales.
4. Environmental Organizations: The reduction in carbon emissions from using drones
for deliveries supports environmental sustainability efforts.
5. Technology Enthusiasts and Developers: The project provides a platform for further
research and development in drone technology and its applications, encouraging
innovation and technical advancements.
6. Local Communities: Reduced traffic congestion and pollution contribute to improved
quality of life in urban areas.

1.12 Methodology for the Project

The methodology for developing the Arduino-based quadcopter and the associated delivery
website involves a combination of hardware development, software engineering, and integration
techniques. Below, we detail the specific methods and techniques that will be employed in both
parts of the project.

1.12.1 Quadcopter Development Methodology

1. Requirements Analysis

 Component Selection: Identify and select appropriate hardware components such as


motors, propellers, flight controllers, GPS modules, batteries, and sensors.
 Specification Definition: Define the specifications for payload capacity, flight time,
range, and safety features based on project requirements.

2. Hardware Assembly

 Frame Construction: Assemble the physical frame of the quadcopter using lightweight,
durable materials such as carbon fiber or aluminum.
 Component Integration: Install motors, ESCs, flight controllers, GPS modules,
cameras, and other sensors onto the frame.
 Wiring and Connections: Carefully wire all electronic components to ensure reliable
power supply and signal transmission.

3. Software Development

 Firmware Programming: Develop or customize firmware for the flight controller to


handle sensor data, control algorithms, and communication protocols.
 Control Algorithms: Implement control algorithms for stable flight, including PID
controllers for balancing and maneuvering.
 Communication Protocols: Develop the communication protocols between the
quadcopter and the joystick-based controller, utilizing radio frequency (RF) modules.

4. Testing and Calibration

 Bench Testing: Conduct initial tests of individual components and subsystems to ensure
proper functionality.
 Field Testing: Perform field tests to calibrate sensors, fine-tune control algorithms, and
validate the overall performance of the quadcopter.
 Safety Checks: Implement safety checks such as fail-safes and return-to-home
functionality in case of signal loss or low battery.

5. Integration and Final Testing

 System Integration: Integrate all hardware and software components into a cohesive
system.
 Final Testing: Conduct comprehensive testing to ensure all functionalities work as
intended, including payload management, navigation, and safety features.
1.12.2 Web Platform Development Methodology

1. Requirements Analysis

 User Stories and Use Cases: Gather requirements by defining user stories and use cases
for different user roles (admin, customer, pilot).
 Functional Specifications: Detail the functional requirements for user registration, order
placement, tracking, notifications, and admin dashboard.

2. Design

 Database Design: Create a database schema to store user information, order details,
delivery history, and other relevant data.
 User Interface Design: Develop wireframes and prototypes for the website’s user
interface, ensuring a user-friendly experience.
 System Architecture: Define the architecture of the web platform, including server-side
and client-side components, APIs, and communication protocols.

3. Frontend Development

 HTML/CSS: Use HTML and CSS to build the structure and style of the website.
 JavaScript: Implement interactive features and dynamic content using JavaScript
frameworks such as React or Angular.

4. Backend Development

 Server-Side Logic: Develop server-side logic using programming languages like Python
(Django), Node.js, or Ruby on Rails to handle user requests, process orders, and manage
data.
 API Development: Create RESTful APIs to enable communication between the frontend
and backend, as well as with the quadcopter’s control system for real-time tracking.
 Database Management: Use SQL or NoSQL databases to store and retrieve data
efficiently.

5. Security Measures

 Authentication and Authorization: Implement secure user authentication and


authorization mechanisms.
 Data Protection: Ensure data protection through encryption, secure communication
protocols (HTTPS), and regular security audits.

6. Testing

 Unit Testing: Write unit tests for individual components and functions to ensure
correctness.
 Integration Testing: Conduct integration testing to verify that different parts of the
system work together seamlessly.
 User Acceptance Testing: Perform user acceptance testing (UAT) with real users to
gather feedback and make necessary improvements.

7. Deployment and Maintenance

 Deployment: Deploy the web platform on a reliable hosting service, ensuring scalability
and performance.
 Monitoring and Maintenance: Continuously monitor the system for performance and
security issues, and perform regular maintenance and updates.

By following these detailed methodologies, we aim to build a robust and efficient quadcopter for
delivery services and a user-friendly web platform to manage and track deliveries.

1.12.1 Fact Finding Techniques

Fact-finding techniques are essential for gathering the necessary information to inform the
project's development and ensure that the final system meets the needs of all stakeholders. The
following techniques will be used:

1. Interviews: Conducting interviews with stakeholders, including potential users, delivery


service providers, and technical experts, to gather detailed insights into their needs,
expectations, and potential challenges.
2. Observation: Observing current delivery processes and identifying pain points and
inefficiencies that the new system can address. This includes shadowing delivery
personnel and monitoring traditional delivery methods.
3. Document Review: Reviewing existing documentation, such as delivery service records,
regulatory guidelines, and technical specifications, to inform the system's design and
ensure compliance with relevant standards.
4. Prototyping: Developing prototypes of both the quadcopter and the web platform to
gather feedback from stakeholders and refine the system's design based on their input.

These fact-finding techniques will provide a comprehensive understanding of the requirements,


challenges, and opportunities for the Arduino-based quadcopter delivery system, ensuring that
the final product is well-designed and effectively meets the needs of its users.

1.13 Systems Analysis and Design Approach

The systems analysis and design approach for the Arduino-based quadcopter delivery system is
crucial for ensuring that both the hardware and software components are well-integrated and
meet user requirements. This approach involves several stages.

Systems Analysis
Requirements Gathering: The first step in systems analysis is to gather detailed requirements
from stakeholders. This includes understanding the needs of customers, delivery service
providers, and pilots. Techniques such as interviews, surveys, and observations are used to
collect this information.

System Modeling: Once the requirements are gathered, system modeling techniques are
employed to visualize the system's structure and behavior. Use case diagrams, sequence
diagrams, and data flow diagrams are created to represent the interactions between users and the
system. These models help in identifying the system's functionalities and data flow.

Feasibility Study: A feasibility study is conducted to evaluate the technical, economic,


operational, and schedule feasibility of the project. This involves assessing the available
technology, costs, potential benefits, and timeline to ensure the project's viability.

System Specifications: Detailed system specifications are documented, outlining the hardware
and software requirements, functional and non-functional requirements, and system constraints.
These specifications serve as a blueprint for the design phase.

Systems Design

Architectural Design: The architectural design defines the overall structure of the system,
including the hardware and software components and their interactions. For the quadcopter, this
involves designing the frame, selecting the Arduino microcontroller, sensors, motors, and GPS
module. For the web platform, this includes designing the server-side architecture, database, and
user interface.

Detailed Design: In this phase, detailed designs for each component are developed. This
includes circuit diagrams for the quadcopter, detailed schematics for the controller, and
wireframes for the web platform's user interface. The detailed design ensures that each
component functions as intended and integrates seamlessly with the other parts.

Prototyping: Prototyping is an iterative process where preliminary versions of the system are
developed and tested. Prototypes of the quadcopter and the web platform are created to validate
the design, gather user feedback, and make necessary adjustments before final implementation.

Integration Planning: Integration planning involves defining how the hardware and software
components will be integrated and tested. This includes developing integration tests to ensure
that the quadcopter and web platform work together effectively, and planning for data
synchronization between the two systems.

1.14 Development Tools

The development of the Arduino-based quadcopter delivery system requires a range of tools to
facilitate hardware and software development, testing, and deployment. The selected tools ensure
that the project is built efficiently and effectively.
Hardware Development Tools

Arduino IDE: The Arduino Integrated Development Environment (IDE) is used for writing,
compiling, and uploading code to the Arduino microcontroller. It provides a user-friendly
interface and a wide range of libraries for controlling sensors, motors, and other components.

Fritzing: Fritzing is a tool for creating electronic circuit diagrams and PCB layouts. It helps in
designing the quadcopter's circuitry and ensures that all components are correctly connected.

3D Modeling Software: Software like AutoCAD or SolidWorks is used for designing and
simulating the quadcopter frame and other mechanical parts. These tools help in visualizing the
physical structure and ensuring that it meets design specifications.

Multimeter and Oscilloscope: These tools are essential for testing and debugging the
quadcopter's electronic circuits, measuring voltage, current, and signal waveforms to ensure
proper functionality.

Software Development Tools

Visual Studio Code: Visual Studio Code is a versatile code editor that supports multiple
programming languages. It is used for developing the web platform's front-end and back-end
code, providing features like syntax highlighting, debugging, and version control integration.

Node.js and Express: Node.js is a runtime environment for executing JavaScript on the server
side, and Express is a web application framework for Node.js. Together, they are used to develop
the server-side logic and APIs for the web platform.

MongoDB: MongoDB is a NoSQL database used to store user data, order details, and delivery
tracking information. It provides flexibility in handling large amounts of unstructured data and
supports real-time data processing.

Git and GitHub: Git is a version control system that tracks changes to the codebase, and
GitHub is a platform for hosting and collaborating on Git repositories. These tools facilitate
collaborative development, code review, and version management.

Postman: Postman is a tool for testing APIs. It is used to test the web platform's APIs, ensuring
that they function correctly and meet the specified requirements.

1.15.1 Software Requirements

The software requirements for the Arduino-based quadcopter delivery system encompass the
essential applications, frameworks, and libraries needed to develop, test, and deploy the system.
These requirements ensure that both the quadcopter and the web platform function as intended
and provide a seamless user experience.
Arduino IDE: The primary development environment for writing, compiling, and uploading
code to the Arduino microcontroller. It supports various libraries necessary for interfacing with
sensors, motors, and communication modules.

Web Platform

 Node.js and Express: For server-side development, handling HTTP requests, and
managing APIs.
 React or Angular: For developing a responsive and dynamic front-end user interface.
 MongoDB: For managing user data, order information, and tracking data.
 Socket.io: For real-time communication between the server and client, enabling live
order tracking and notifications.
 Passport.js: For user authentication and authorization, ensuring secure access to the web
platform.
 Payment platforms: For integrating payment processing capabilities, allowing
customers to pay for delivery services.
 Google Maps API: For implementing map functionalities, such as selecting delivery
locations and tracking the quadcopter's route.

Testing and Debugging Tools

 Jest or Mocha: For unit testing JavaScript code, ensuring that each function works
correctly.
 Postman: For testing and validating APIs.
 Selenium: For automated testing of the web platform's user interface.

1.15.2 Hardware Requirements

The hardware requirements for the Arduino-based quadcopter delivery system include all the
physical components needed to build and operate the quadcopter and the necessary infrastructure
to support the delivery service. These components ensure the system's reliability, efficiency, and
overall performance.

Quadcopter Components

 Frame: A durable and lightweight frame to house all the components and ensure stability
during flight.
 Arduino Microcontroller: The brain of the quadcopter, responsible for processing
inputs from the joystick controller and sensors and controlling the motors.
 Motors and ESCs: Brushless motors and ESCs to provide the necessary thrust and
control for the quadcopter.
 Propellers: High-quality propellers to generate lift and ensure smooth flight.
 Battery: A rechargeable LiPo battery to power the motors and electronics, along with a
battery management system.
 GPS Module: For real-time location tracking and navigation.
 IMU (Inertial Measurement Unit): Comprising an accelerometer and gyroscope for
stabilizing the quadcopter and providing orientation data.
 Radio Receiver and Transmitter: For communication between the joystick controller
and the quadcopter.
 Camera: For providing a live feed to the pilot and assisting with navigation and delivery
tasks.

Controller Components

 Joystick Controller: A custom-built controller with joysticks, buttons, and an Arduino


microcontroller to send control signals to the quadcopter.

Web Platform Infrastructure

 Web Server: A reliable and scalable server to host the web platform and handle user
requests.
 Database Server: For storing user data, order details, and tracking information.
 Network Equipment: Routers, switches, and access points to ensure stable and secure
connectivity.
 GPS Tracking Devices: Additional GPS units for enhanced tracking accuracy.
 Personal computers: provide browsers to connect to the website through the internet.

These hardware components are essential for building a robust and reliable Arduino-based
quadcopter delivery system, capable of providing efficient delivery services while ensuring
safety and user satisfaction

1.15 Testing Procedures

Testing procedures are essential to ensure that the Arduino-based quadcopter delivery system
performs reliably and meets all specified requirements. These procedures help in identifying and
fixing issues at various stages of development, thereby enhancing the system's quality and
performance.

1.15.1 Unit Testing

Unit testing involves testing individual components or units of the system in isolation. This
process ensures that each part functions correctly before they are integrated into the larger
system.

Software Unit Testing: Each software module, such as user authentication, payment processing,
and GPS tracking, is tested independently. Automated testing frameworks like Jest or Mocha are
used to create and run tests, ensuring that each function and method produces the expected
output.

Hardware Unit Testing: Individual hardware components, such as motors, sensors, and the
GPS module, are tested separately. This involves verifying the correct operation of each sensor,
ensuring motors respond appropriately to control signals, and confirming that the GPS module
provides accurate location data.

Arduino Code Testing: The code running on the Arduino microcontroller is tested in segments.
Each part of the code, such as motor control, sensor data processing, and communication with
the joystick controller, is tested to ensure it performs as intended.

1.15.2 Integration Testing

Integration testing is conducted to ensure that different units and components work together as a
cohesive system. This stage verifies that the interactions between hardware and software
components do not produce any errors or unexpected behavior.

Hardware-Software Integration: The integration between the Arduino microcontroller and the
hardware components (motors, sensors, GPS module) is tested. This involves checking if the
microcontroller correctly interprets sensor data and controls the motors accordingly.

System Components Integration: Integration between the web platform and the quadcopter is
tested. This includes ensuring that the web platform can send control commands to the
quadcopter, receive real-time location data, and update the delivery status.

End-to-End Testing: The entire workflow, from order placement on the website to the
quadcopter performing the delivery, is tested. This ensures that all components interact
seamlessly and that the system performs as expected under various scenarios.

1.15.3 System Testing

System testing involves testing the entire integrated system to ensure it meets the specified
requirements. This stage includes functional testing, performance testing, security testing, and
user acceptance testing.

Functional Testing: All functionalities of the system, such as user registration, order placement,
real-time tracking, and notifications, are tested to ensure they work correctly and meet the
requirements.

Performance Testing: The system's performance is evaluated under different loads to ensure it
can handle high traffic and multiple concurrent deliveries without degradation. This involves
testing the response times, throughput, and resource usage of the web platform and the
quadcopter's control system.

Security Testing: The system is tested for vulnerabilities to ensure it is secure against potential
threats. This includes testing for common security issues such as SQL injection, cross-site
scripting (XSS), and ensuring secure data transmission between the web platform and the
quadcopter.
User Acceptance Testing (UAT): Real users test the system to ensure it meets their needs and is
easy to use. Feedback from users is used to make necessary adjustments and improvements
before the final deployment.

1.16 Risks & Contingencies

Identifying potential risks and developing contingency plans is critical for the successful
completion of the Arduino-based quadcopter delivery system project. This section outlines the
major risks and the corresponding strategies to mitigate them.

1.16.1 Project Development Problems

Technical Risks

 Hardware Malfunctions: Hardware components like motors, sensors, or the Arduino


microcontroller may fail or malfunction. To mitigate this risk, thorough unit testing of
each component is performed, and spare parts are kept on hand for quick replacements.
 Software Bugs: Bugs in the software can lead to system failures or unexpected behavior.
This risk is mitigated by implementing rigorous testing procedures, including unit,
integration, and system testing, and by using version control systems to track and manage
code changes.

Project Management Risks

 Timeline Delays: Delays in the project timeline can occur due to unforeseen technical
challenges or resource constraints. This risk is mitigated by developing a detailed project
plan with realistic milestones and by regularly reviewing progress to identify and address
potential delays early.
 Resource Allocation: Inadequate allocation of resources, such as manpower, budget, or
equipment, can hinder project progress. To mitigate this risk, a thorough feasibility study
is conducted to ensure adequate resource allocation, and contingency plans are developed
to address potential shortages.

Operational Risks

 Safety Concerns: The operation of the quadcopter involves safety risks, such as
collisions or crashes. This risk is mitigated by implementing strict safety protocols,
conducting thorough testing, and ensuring that the quadcopter is equipped with fail-safe
mechanisms.
 Environmental Factors: Weather conditions or obstacles in the delivery zone can affect
the quadcopter's performance. This risk is mitigated by developing a robust navigation
system that can handle varying conditions.

Compliance and Regulatory Risks


 Regulatory Compliance: Compliance with aviation regulations and local laws is
essential for the legal operation of the quadcopter. This risk is mitigated by conducting
thorough research on relevant regulations and obtaining the necessary permits and
approvals.
 Data Privacy: Ensuring the privacy and security of user data is critical. This risk is
mitigated by implementing robust security measures, such as encryption, secure data
storage, and adhering to data protection regulations.

Contingency Plans

 Backup Systems: Backup systems and components are maintained to quickly address
hardware failures or malfunctions.
 Redundancy: if possible redundant systems, such as additional GPS modules or
communication channels, are implemented to ensure continued operation in case of
component failure.
 Regular Reviews: Regular project reviews and risk assessments are conducted to
identify new risks and update contingency plans as needed.
 Training and Documentation: Team members are trained on risk management
practices, and detailed documentation is maintained to ensure that everyone is aware of
potential risks and the corresponding mitigation strategies.

By proactively identifying potential risks and developing comprehensive contingency plans, the
project team can minimize disruptions and ensure the successful completion of the Arduino-
based quadcopter delivery system project.
CHAPTER TWO

DESCRIPTION OF THE EXISTING SYSTEM

2.1 Introduction of Existing System

In Ethiopia, the existing delivery system primarily relies on traditional methods such as motor
bicycles, cars, and on-foot couriers. These methods are widely used due to their simplicity and
the established infrastructure supporting them. However, they face several challenges, including
inefficiencies, delays, requiring more human power, and limited reach in remote areas. While
drone delivery services have been gaining traction globally, such advanced systems are not yet
prevalent in Ethiopia.

Traditional Delivery Methods in Ethiopia

The traditional delivery system in Ethiopia encompasses various modes of transportation. Motor
bicycles are commonly used for quick and short-distance deliveries, particularly within urban
areas. Cars are employed for longer distances and larger parcels. On-foot couriers are often used
for intra-city deliveries, especially in congested areas where vehicle access is limited. The postal
service, a key player in the country's delivery ecosystem, often requires customers to physically
present packages for delivery.

Global Trends in Delivery Services

While Ethiopia primarily uses traditional methods, it's important to acknowledge the global
advancements in delivery services. Companies like Amazon, Google, and DHL have been
pioneering drone delivery systems, aiming to provide faster and more efficient services. These
systems leverage GPS navigation, automated flight control, and real-time tracking to overcome
the limitations of ground-based transportation. However, these innovations are still in early
stages of adoption and are not widely or entirely implemented in Ethiopia.

Challenges of Global Drone Delivery Systems

 Regulatory Hurdles: Strict regulations governing airspace use.


 Payload Capacity: Limited by drone technology, suitable only for small packages.
 Battery Life: Constrained by current battery technology, affecting range and duration.
 Safety Concerns: Potential risks associated with autonomous flights in populated areas.

2.2 Major Functions/Activities in the Existing System

Understanding the major functions and activities in Ethiopia's existing delivery systems provides
insight into the operational challenges and opportunities for innovation. These traditional
systems involve several key functions and activities, from order processing and package
handling to navigation and delivery execution.

Order Processing

Order processing in Ethiopia's traditional delivery systems involves receiving orders through
various channels, including phone calls and physical submissions at postal offices.

Key Activities

 Order Reception: Orders are typically received via phone calls, where customers
provide delivery details, or through physical visits to delivery service providers like the
postal office.
 Verification: Details such as customer information, delivery address, and package
contents are verified to ensure accuracy and feasibility.
 Packaging: Packages are prepared for delivery, ensuring they are securely packed to
withstand transportation.

Package Handling

Package handling encompasses the physical management of parcels from the point of order to
the delivery vehicle.

Key Activities:

 Sorting: Packages are sorted based on destination, size, and priority, often manually due
to the lack of automated systems.
 Labeling: Packages are labeled with delivery addresses and tracking numbers (if
available).
 Storage: Temporarily storing packages in a warehouse or distribution center before
dispatch, typically in conditions that protect them from damage and theft.

Navigation

Navigation in traditional delivery systems is primarily based on human drivers and couriers who
use maps and local knowledge to reach their destinations.

Key Activities

 Route Planning: Routes are planned based on traffic conditions, distance, and delivery
urgency. This is often done manually by the driver or courier.
 Navigation Tools: Basic tools like printed maps or GPS on smartphones are used for
navigation, but real-time traffic updates are rarely utilized.
 Monitoring: There is minimal real-time monitoring of delivery progress, making it
difficult to provide accurate delivery time estimates to customers.

Delivery Execution

The final stage involves transporting the package to the recipient and ensuring proper handover.

Key Activities

 Transportation: Using motor bicycles, cars, or on-foot couriers to transport packages to


their destinations.
 Drop-off: The package is handed over to the recipient, often requiring a signature or
another form of confirmation.
 Notification: Customers are notified of the delivery through phone calls or SMS,
although real-time tracking and automated notifications are not commonly available.

By analyzing these existing functions and activities, we can identify areas for improvement and
innovation in our project. This understanding will help us design a more efficient, reliable, and
user-friendly Arduino-based quadcopter delivery system, which addresses the current limitations
and enhances the overall delivery experience in Ethiopia.

2.3 Players in the Existing System

In the traditional delivery system in Ethiopia, various stakeholders play crucial roles in ensuring
the smooth operation of package delivery. These players include the customers, delivery
personnel, dispatchers, and service providers, each with specific responsibilities and interactions
that collectively maintain the delivery process.

Customers

Role and Responsibilities


 Order Placement: Customers initiate the delivery process by placing orders through
phone calls or visiting delivery service offices. They provide essential details such as
delivery address, package contents, and any specific instructions.
 Payment: Customers are responsible for paying the delivery fees either upfront or upon
delivery, depending on the service provider's policies.
 Package Preparation: In some cases, customers may need to prepare and pack the items
for delivery, especially when using postal services.
 Receipt of Delivery: Customers must be available at the delivery location to receive the
package and confirm its receipt, often through a signature or verbal acknowledgment.

Delivery Personnel

Role and Responsibilities

 Package Collection: Delivery personnel, including motorbike riders, car drivers, or on-
foot couriers, collect packages from the dispatch center or directly from customers.
 Transporting Packages: They transport packages to the specified delivery addresses,
navigating through traffic and varying road conditions.
 Handover: Upon reaching the destination, they hand over the package to the recipient,
ensuring proper documentation of the delivery.
 Communication: Delivery personnel may need to communicate with customers or
dispatchers to confirm delivery details or resolve issues encountered during the delivery
process.

Dispatchers

Role and Responsibilities

 Order Management: Dispatchers receive and manage delivery orders, verifying details,
and assigning them to delivery personnel based on location, priority, and available
resources.
 Route Planning: They plan efficient delivery routes to minimize travel time and fuel
consumption, often considering current traffic conditions.
 Coordination: Dispatchers coordinate with delivery personnel, providing instructions
and support to address any challenges during delivery.
 Tracking and Monitoring: They track the progress of deliveries, ensuring timely
completion and addressing any delays or issues that arise.

Service Providers

Role and Responsibilities

 Infrastructure Provision: Service providers, including postal services and private


delivery companies, provide the infrastructure and resources necessary for the delivery
process. This includes vehicles, storage facilities, and communication systems.
 Service Design and Management: They design and manage the overall delivery service,
establishing business rules, pricing structures, and operational protocols.
 Customer Support: Service providers offer customer support to address inquiries,
complaints, and service issues, ensuring customer satisfaction.
 Compliance and Regulation: They ensure compliance with regulatory requirements and
industry standards, maintaining the quality and reliability of their services.

2.4 Business Rules

Business rules in the traditional delivery system govern the interactions, processes, and
operations to ensure efficiency, consistency, and compliance. These rules are designed to
manage customer expectations, streamline operations, and maintain service quality.

Order Processing Rules

Order Acceptance

 Orders must be placed within designated working hours.


 Orders should include complete and accurate delivery details.
 Orders exceeding the weight or size limit specified by the service provider may be
rejected or require special handling.

Payment Terms

 Payment must be made either at the time of order placement or upon delivery, based on
the service provider’s policy.
 Accepted payment methods may include cash, mobile money, or bank transfers.

Delivery Execution Rules

Package Handling

 Packages must be securely packed to prevent damage during transit.


 Hazardous or prohibited items (e.g., flammable substances, illegal goods) are not
accepted for delivery.

Delivery Scheduling

 Deliveries are scheduled based on a first-come, first-served basis, with priority given to
urgent or high-priority orders.
 Estimated delivery times are provided but are subject to change based on traffic and other
conditions.

Recipient Verification

 Recipients must present valid identification upon delivery.


 A signature or verbal confirmation is required to verify the successful receipt of the
package.

Operational Rules

Vehicle and Route Management

 Delivery vehicles must be maintained in good working condition and comply with safety
regulations.
 Routes are planned to optimize efficiency, considering factors such as distance, traffic,
and delivery priority.

Communication and Tracking

 Delivery personnel must maintain communication with dispatchers and customers to


provide updates and resolve issues.
 Tracking information is recorded and monitored to ensure timely and accurate deliveries.

Service Quality and Compliance

 Service providers must adhere to regulatory requirements and industry standards to


ensure service quality and reliability.
 Regular training and evaluation of delivery personnel are conducted to maintain high
service standards.

Customer Service

 Service providers must address customer inquiries and complaints promptly and
effectively.
 Policies for refunds, returns, and compensation for lost or damaged packages must be
clearly defined and communicated to customers.

By understanding these players and business rules, we can identify opportunities to improve the
traditional delivery system through our innovative Arduino-based quadcopter delivery system.

2.5 Bottlenecks of the Existing System

The traditional delivery system in Ethiopia faces several bottlenecks that hinder its efficiency,
reliability, and customer satisfaction. These bottlenecks are critical challenges that need to be
addressed to improve the overall delivery process. The key bottlenecks include:

Inefficient Order Placement and Management

Manual Processes
The reliance on manual order placement methods, such as phone calls and in-person visits, leads
to inefficiencies and delays. Manual entries can result in errors and miscommunications. Lack of
a centralized system to manage orders often causes confusion and missed deliveries.

Limited Tracking Capabilities

Traditional delivery systems often lack real-time tracking features, making it difficult for
customers and service providers to monitor the status and location of packages. This limitation
leads to uncertainty and frustration among customers, especially when there are delays.

Transportation Challenges

Traffic Congestion

Urban areas in Ethiopia, particularly Addis Ababa, experience significant traffic congestion,
causing delays in delivery times. Delivery vehicles, such as motorbikes and cars, are frequently
caught in traffic jams, reducing the overall efficiency of the delivery process.

Infrastructure Issues

Poor road conditions in many areas make it difficult for delivery personnel to navigate and reach
their destinations on time. In rural areas, the lack of proper infrastructure poses additional
challenges for timely and reliable deliveries.

Limited Delivery Zones

Traditional delivery services often operate within restricted zones due to logistical constraints,
limiting their reach and accessibility. Customers outside these zones face difficulties in accessing
delivery services.

Operational Inefficiencies

Resource Management

Inefficient allocation of delivery personnel and vehicles leads to underutilization of resources


and increased operational costs. Lack of real-time data and analytics hampers effective decision-
making and resource optimization.

Package Handling and Security

Inadequate packaging and handling practices result in damaged goods, leading to customer
dissatisfaction and increased returns. Security concerns, such as package theft or loss, are
prevalent due to insufficient tracking and monitoring mechanisms.

Customer Service Limitations


Communication Gaps

Limited communication channels between customers and service providers result in poor
customer support and unresolved inquiries. Delays in addressing customer complaints and issues
impact the overall service quality.

Payment and Documentation Issues

Traditional cash-on-delivery methods pose risks of fraud and non-payment. Lack of digital
payment options limits convenience for customers.

By identifying these bottlenecks, it becomes evident that significant improvements are necessary
to enhance the traditional delivery system in Ethiopia. Addressing these challenges through
innovative solutions can lead to a more efficient, reliable, and customer-centric delivery service.

2.6 Proposed Solution to Address Problems of the Existing System

To overcome the challenges and bottlenecks in the traditional delivery system, we propose an
innovative solution that integrates an Arduino-based quadcopter for delivery services with a
comprehensive website for order management. This solution leverages advanced technology to
enhance efficiency, reliability, and customer satisfaction. The key components and features of
the proposed solution include:

Integration of an Arduino-Based Quadcopter

Automated and Efficient Deliveries

 Utilizing an Arduino-based quadcopter for deliveries can significantly reduce the impact
of traffic congestion and poor road conditions. The quadcopter can navigate directly to
delivery destinations, avoiding ground-level obstacles.
 The quadcopter’s automated navigation system ensures efficient and timely deliveries,
especially in urban areas with heavy traffic.

Enhanced Tracking and Monitoring

 The quadcopter is equipped with GPS and real-time tracking capabilities, allowing
customers and service providers to monitor the delivery status and location of packages.
 Live tracking information enhances transparency and provides customers with accurate
delivery times.

Expanded Delivery Zones

 The quadcopter can reach areas that are typically inaccessible or challenging for
traditional delivery vehicles, expanding the service’s delivery zones.
 Rural and remote areas can benefit from reliable delivery services, improving
accessibility and convenience for customers.
Comprehensive Website for Order Management

User-Friendly Interface

 The website offers a user-friendly interface for customers to easily place orders, track
deliveries, and manage their accounts.
 Customers can register and log in to view their order history, estimated delivery times,
and receive notifications about their deliveries.

Efficient Order Placement and Management

 The website allows customers to place orders online, specifying pick-up and drop-off
locations, and providing all necessary details.
 Orders are centrally managed, reducing errors and improving efficiency. The system
assigns orders to the quadcopter and tracks their progress in real-time.

Advanced Notification System

 Customers receive notifications at every major stage of the delivery process, including
order confirmation, dispatch, and delivery. This ensures transparency and keeps
customers informed.
 The system sends email notifications to customers when their packages have been
successfully delivered.

Admin and Pilot Functionalities

 Admins can manage registered users, view placed orders, track order history, confirm
payments, monitor deliveries, and manage delivery zones.
 Pilots can track the quadcopter’s position, receive pick-up and destination information,
monitor battery status, and access live camera feeds for better control over the delivery
process.

Payment Integration

 The website includes a secure payment platform, allowing customers to pay delivery fees
online using various payment methods. This reduces the risks associated with cash-on-
delivery and enhances convenience.

Feedback and Support

 Customers can provide feedback on their delivery experience, helping to improve service
quality.
 The website offers customer support to address inquiries and resolve issues promptly.

Additional Features
 The system includes functionalities such as scheduling deliveries, checking drone
delivery zones, verifying payload weights, and viewing delivery fees.

By integrating an Arduino-based quadcopter with a comprehensive delivery management


website, the proposed solution addresses the limitations of the traditional delivery system in
Ethiopia. This innovative approach enhances delivery efficiency, expands service reach,
improves tracking and transparency, and offers a seamless and convenient customer experience.

2.7 Requirements of the Proposed System

To ensure the successful implementation of the proposed Arduino-based quadcopter delivery


system, it is essential to outline both the functional and non-functional requirements. These
requirements define the expected behavior, performance, and constraints of the system.

2.7.1 Functional Requirements

Functional requirements describe the specific behavior and functions of the system. They define
what the system should do, how it should respond to inputs, and the outputs it should produce.
The functional requirements for the proposed system include:

User Registration

 The system must allow customers to create an account by providing their email address
and other necessary information.
 Customers must be able to log in and manage their account details.

Order Placement

 Customers must be able to place delivery orders by specifying pick-up and drop-off
locations.
 The system should provide an interface for customers to input package details, including
weight and delivery instructions.

Order Tracking

 The system must provide real-time tracking of the quadcopter and the delivery process.
 Customers should be able to view the current location of the quadcopter and estimated
delivery time.

Admin Dashboard

 The system must include an admin panel for managing registered users, viewing placed
orders, and accessing order history.
 Admins should be able to confirm payments, track deliveries, and monitor the
quadcopter’s status.
Notification System

 The system must send notifications to customers at key stages of the delivery process,
such as order confirmation, dispatch, and delivery.
 Email notifications should be sent to customers when their packages have been delivered.

Payment System

 The system must integrate a secure payment platform that allows customers to pay for
delivery services online.
 The system should support various payment methods and confirm payment status to the
admin.

Delivery Zone Management

 Admins must be able to define and modify delivery zones based on the quadcopter’s
operational range.
 The system should check if a delivery address falls within the defined delivery zone and
notify customers accordingly.

Weight Verification

 The system must include a method for customers to input the weight of their package.
 If the package weight exceeds the quadcopter’s maximum payload capacity, the system
should notify the customer that the delivery cannot be performed.

Scheduling Deliveries

 Customers must be able to schedule deliveries for specific dates and times.
 The system should display a list of scheduled deliveries to the admin and pilot.

Feedback Mechanism

 The system must allow customers to provide feedback on their delivery experience.
 Feedback should be accessible to the admin for service improvement.

Pilot Functionalities

 Pilots must be able to track the quadcopter’s position and receive pick-up and drop-off
information.
 The system should provide live camera feed access to the pilot for better control during
the delivery process.

2.7.2 Non-Functional Requirements


Non-functional requirements describe the overall qualities and constraints of the system, such as
performance, security, and usability. These requirements ensure that the system operates
effectively and efficiently while meeting user expectations.

Performance

 The system must handle multiple user registrations and orders simultaneously without
significant performance degradation.
 Real-time tracking and updates should be provided with minimal latency to ensure
accurate delivery information.

Scalability

 The system should be scalable to accommodate an increasing number of users and


delivery orders.
 The architecture must support future expansion and integration with additional features or
services.

Security

 The system must ensure the security of user data, including personal information and
payment details.
 Secure authentication mechanisms should be implemented to prevent unauthorized access
to user accounts and the admin dashboard.

Reliability

 The system must provide reliable operation with minimal downtime.


 Backup and recovery mechanisms should be in place to protect data and ensure system
availability in case of failures.

Usability

 The user interface must be intuitive and user-friendly, enabling customers to easily
navigate the website and place orders.
 The admin and pilot interfaces should be designed for efficient management and
operation.

Compatibility

 The system should be compatible with various devices and browsers, ensuring a seamless
experience for users on different platforms.
 Integration with GPS and payment systems must be smooth and reliable.

Maintainability
 The system should be designed for easy maintenance and updates.
 Clear documentation and modular design practices should be followed to facilitate future
enhancements and troubleshooting.

Legal and Regulatory Compliance

 The system must comply with relevant data protection and privacy laws.
 Delivery operations should adhere to local regulations and guidelines for drone usage and
commercial deliveries.

By addressing both functional and non-functional requirements, the proposed system will be
well-equipped to deliver an efficient, reliable, and user-friendly delivery service using the
Arduino-based quadcopter and the comprehensive website.

CHAPTER THREE

SYSTEM ANALYSIS

3.1 System models

3.1.1 Actors and use case Identification

Use Case ID Use Case Name Actors


UC-01 User Registration Customer
UC-02 Login Customer, Admin, pilot
UC-03 Order Placement Customer
UC-04 View Order History Customer
UC-05 Order Tracking Customer, Admin
UC-06 Notifications Customer
Use Case ID Use Case Name Actors
UC-07 Track drone Pilot
UC-08 Give Feedback Customer
UC-09 Manage Orders Admin
UC-10 Update Delivery Zone Admin
UC-11 Check Battery Status Pilot
UC-12 Add quadcopter Admin
UC-13 Send camera feed Quadcopter
UC-14 Get Live Camera Feed Pilot
UC-15 Send GPS location Quadcopter

Table 2 Actors and Use case Identification

3.1.2 Use case Diagram


Figure 1. System use case

3.1.3 Use Case Description Tables


Use Case ID: UC-01
Use Case Name: User Registration
Actors: Customer

Field Description

This use case allows a customer to register on the website by providing


Description
their personal details.

Precondition The customer must have access to the registration page.

1. The customer navigates to the registration page.


2. The system prompts the customer to enter their personal details (name,
email, password, etc.).
Basic Course of
3. The customer enters the required details and submits the registration
Action
form.
4. The system validates the information and creates a new account.
5. The system sends a confirmation email to the customer.
3a. The customer provides invalid details:
3a1. The system displays an error message and prompts the customer
Alternative Action
to correct the details.
3a2. The customer corrects the details and resubmits the form.
The customer account is created, and the customer receives a
Post Condition
confirmation email.

Table 3 Use case description-User registration

Use Case ID: UC-02


Use Case Name: Login
Actors: Customer, Admin, Pilot
Field Description

This use case allows customers, admins, and pilots to log in to the
Description
website.

Precondition The user must have an existing account on the website.

1. The user navigates to the login page.


2. The system prompts the user to enter their email and password.
Basic Course of 3. The user enters the required credentials and submits the login form.
Action 4. The system validates the credentials.
5. The user is redirected to their respective dashboard (Customer,
Admin, Pilot).
3a. The user provides invalid credentials:
3a1. The system displays an error message and prompts the user to
Alternative Action
retry.
3a2. The user corrects the credentials and resubmits the form.
The user is successfully logged in and redirected to their respective
Post Condition
dashboard.

Table 4 Use case description-Login

Use Case ID: UC-03


Use Case Name: Order Placement
Actors: Customer

Field Description
This use case allows a customer to place a delivery order by specifying
Description
pick-up and drop-off locations and other relevant details.
The customer must be logged in and have access to the order placement
Precondition
page.
1. The customer navigates to the order placement page.
2. The system prompts the customer to enter order details (pick-up
location, drop-off location, package details, etc.).
Basic Course of 3. The customer enters the required details and submits the order form.
Action 4. The system validates the information and calculates the delivery fee.
5. The customer confirms the order and completes the payment.
6. The system creates the order and sends a confirmation notification to the
customer.
3a. The customer provides invalid or incomplete details:
3a1. The system displays an error message and prompts the customer to
correct the details.
Alternative
3a2. The customer corrects the details and resubmits the form.
Action
5a. The payment fails:
5a1. The system displays an error message and prompts the customer to
retry the payment.
The order is successfully placed, and the customer receives a confirmation
Post Condition
notification.

Table 5 Use case description-Order placement

Use Case ID: UC-04


Use Case Name: View Order History
Actors: Customer

Field Description

Description This use case allows a customer to view their past delivery orders,
including details and status of each order.

Precondition The customer must be logged in and have access to the order history page.

1. The customer navigates to the order history page.


2. The system retrieves the customer's past orders from the database.
Basic Course of 3. The system displays the list of past orders with relevant details (order
Action date, status, pick-up and drop-off locations, etc.).
4. The customer selects an order to view detailed information.
5. The system displays the detailed information of the selected order.
2a. No past orders exist:
Alternative Action 2a1. The system displays a message indicating that no past orders are
available.

Post Condition The customer views the details of their past orders.

Table 6 Use case description-View order history

Use Case ID: UC-05


Use Case Name: Order Tracking
Actors: Customer, Admin

Field Description

This use case allows customers and admins to track the status and
Description
location of an order in real-time.
Precondition The order must be placed and be in progress. The user must be logged in.

1. The user navigates to the order tracking page.


2. The system retrieves the current status and GPS location of the order.
Basic Course of
3. The system displays the real-time status and location of the order on a
Action
map.
4. The user can refresh the status and location updates periodically.
2a. The order is not found or not in progress:
Alternative Action 2a1. The system displays a message indicating the order cannot be
tracked at this moment.

Post Condition The user views the real-time status and location of the order.

Table 7 Use case description-Order tracking

Use Case ID: UC-06


Use Case Name: Notifications
Actors: Customer

Field Description

This use case sends notifications to customers about major events in the
Description
delivery process.

Precondition The user must be registered and have an active order.


1. A major event occurs in the delivery process (e.g., order confirmation,
dispatch, delivery).
Basic Course of
2. The system generates a notification.
Action
3. The system sends the notification to the customer's email and/or
displays it on the website.
3a. The email fails to send:
Alternative Action 3a1. The system logs the failure and attempts to resend the
notification.

Post Condition The customer receives a notification about the major event.

Table 8 Use case description-Notifications

Use Case ID: UC-07


Use Case Name: Track Drone
Actors: Pilot

Field Description

This use case allows the pilot to track the GPS location of the quadcopter
Description
in real-time.

Precondition The quadcopter must be operational and transmitting GPS data.

Basic Course of 1. The pilot navigates to the drone tracking page.


2. The system retrieves the current GPS location of the quadcopter.
Action 3. The system displays the real-time location of the quadcopter on a map.
4. The pilot can refresh the location updates periodically.
2a. The quadcopter is not transmitting GPS data:
Alternative Action 2a1. The system displays an error message indicating the drone cannot
be tracked at this moment.

Post Condition The pilot views the real-time location of the quadcopter.

Table 9 Use case description-Track drone

Use Case ID: UC-08


Use Case Name: Give Feedback
Actors: Customer

Field Description

This use case allows customers to give feedback on their delivery


Description
experience.

Precondition The customer must be logged in and have completed a delivery.

Basic Course of 1. The customer navigates to the feedback page.


Action 2. The system prompts the customer to enter their feedback.
3. The customer enters their feedback and submits the form.
4. The system saves the feedback in the database.
5. The system sends a confirmation notification to the customer.
3a. The customer provides invalid or inappropriate feedback:
3a1. The system displays an error message and prompts the customer
Alternative Action
to correct the feedback.
3a2. The customer corrects the feedback and resubmits the form.
The feedback is successfully saved, and the customer receives a
Post Condition
confirmation notification.

Table 10 Use case description-give feedback

Use Case ID: UC-09


Use Case Name: Manage Orders
Actors: Admin

Field Description

This use case allows the admin to manage all delivery orders, including
Description
viewing, updating, and deleting orders.
The admin must be logged in and have access to the order management
Precondition
system.
1. The admin navigates to the order management page.
2. The system displays a list of all orders.
Basic Course of
3. The admin selects an order to view detailed information.
Action
4. The admin can update or delete the order as needed.
5. The system saves any changes made by the admin.
4a. The admin attempts to update or delete an invalid order:
Alternative Action 4a1. The system displays an error message and prompts the admin to
correct the action.

Post Condition The order is successfully managed, and any changes are saved.

Table 11 Use case description-Manage orders

Use Case ID: UC-10


Use Case Name: Update Delivery Zone
Actors: Admin
Field Description

This use case allows the admin to update the delivery zone for the
Description
quadcopter.
The admin must be logged in and have access to the delivery zone
Precondition
management system.
1. The admin navigates to the delivery zone management page.
Basic Course of 2. The system displays the current delivery zone.
Action 3. The admin updates the delivery zone and submits the changes.
4. The system saves the updated delivery zone.
3a. The admin provides invalid or overlapping delivery zone details:
3a1. The system displays an error message and prompts the admin to
Alternative Action
correct the details.
3a2. The admin corrects the details and resubmits the form.

Post Condition The delivery zone is successfully updated and saved.

Table 12 Use case description-Update delivery zone


Use Case ID: UC-11
Use Case Name: Check Battery Status
Actors: Pilot

Field Description

This use case allows the pilot to check the battery status of the quadcopter
Description
in real-time.

Precondition The quadcopter must be operational and transmitting battery status data.

1. The pilot navigates to the battery status page.


Basic Course of
2. The system retrieves the current battery status of the quadcopter.
Action
3. The system displays the real-time battery status.
2a. The quadcopter is not transmitting battery status data:
Alternative Action 2a1. The system displays an error message indicating the battery status
cannot be retrieved at this moment.

Post Condition The pilot views the real-time battery status of the quadcopter.

Table 13 Use case description-Check battery status


Use Case ID: UC-12
Use Case Name: Add Quadcopter
Actors: Admin

Field Description

Description This use case allows the admin to add a new quadcopter to the system.

The admin must be logged in and have access to the quadcopter


Precondition
management system.
1. The admin navigates to the quadcopter management page.
2. The system prompts the admin to enter details of the new quadcopter
(e.g., model, specifications, etc.).
Basic Course of
3. The admin enters the required details and submits the form.
Action
4. The system validates the information and adds the new quadcopter to
the database.
5. The system confirms the addition to the admin.
3a. The admin provides invalid or incomplete details:
3a1. The system displays an error message and prompts the admin to
Alternative Action
correct the details.
3a2. The admin corrects the details and resubmits the form.
The new quadcopter is successfully added to the system and the admin
Post Condition
receives a confirmation.

Table 14 Use case description-Add quadcopter


Use Case ID: UC-13
Use Case Name: Send Camera Feed
Actors: Quadcopter

Field Description

This use case allows the quadcopter to send live camera feed data to the
Description
system.

Precondition The quadcopter must be operational and have a functioning camera.

1. The quadcopter captures live video feed.


Basic Course of
2. The system receives and processes the camera feed data.
Action
3. The system streams the live camera feed to the pilot's interface.
2a. The camera feed data is not received or corrupted:
Alternative Action
2a1. The system logs the error and attempts to re-establish the feed.

Post Condition The live camera feed is streamed to the pilot's interface.

Table 15 Use case description-send camera feed


Use Case ID: UC-14
Use Case Name: Get Live Camera Feed
Actors: Pilot

Field Description

This use case allows the pilot to view the live camera feed from the
Description
quadcopter.
The quadcopter must be operational and transmitting live camera feed
Precondition
data. The pilot must be logged in.
1. The pilot navigates to the live camera feed page.
Basic Course of
2. The system retrieves and displays the live camera feed from the
Action
quadcopter.
2a. The camera feed is not available:
Alternative Action 2a1. The system displays an error message indicating the feed cannot
be retrieved at this moment.

Post Condition The pilot views the live camera feed from the quadcopter.

Table 16 Use case description-get live camera feed

Use Case ID: UC-15


Use Case Name: Send GPS Location
Actors: Quadcopter
Field Description

This use case allows the quadcopter to send its GPS location to the
Description
system in real-time.

Precondition The quadcopter must be operational and have a functioning GPS module.

1. The quadcopter captures its current GPS location.


Basic Course of 2. The system receives and processes the GPS location data.
Action 3. The system updates the quadcopter's location on the map in the pilot's
and customer's interfaces.
2a. The GPS location data is not received or corrupted:
Alternative Action 2a1. The system logs the error and attempts to re-establish the data
connection.

Post Condition The real-time GPS location of the quadcopter is updated on the map.

Table 17 Use case description-send GPS location

3.1.4 Object model

3.1.4.1 Class Diagram

In the context of our Arduino-based quadcopter delivery system, the class diagram will illustrate
the static structure of the system by showing the classes involved, their attributes, operations, and
the relationships among the objects. The class diagram helps in understanding how the different
components of the system interact with each other.
Figure 2. Class diagram
3.2 Dynamic Model
3.2.1 Sequence Diagram

The sequence diagram for our project will depict the sequence of interactions between the
system's objects over time, focusing on the order in which these interactions occur. This diagram
is particularly useful for understanding the flow of messages between different components of
the system in a specific scenario.
Figure 3. login sequence diagram
Figure 4. registration sequence diagram
Figure 5. order placement sequence diagram
Figure 6. update delivery zone sequence diagram
Figure 7. drone tracking sequence diagram
Figure 8. send camera feed sequence diagram
Figure 9. add quadcopter sequence diagram
3.2.2 Activity diagram

An activity diagram will represent the workflow of the system, showing the sequence of
activities and the flow of control from one activity to the next. This is particularly useful for
capturing the dynamic aspects of the system.

Figure 10. login activity diagram


Figure 11. order placement activity diagram
Figure 12. Registration activity diagram
Figure 13. update delivery zone activity diagram
Figure 14. drone tracking activity diagram
3.2.3 State diagrams

A state diagram will show the different states that an object in the system can be in, as well as
the transitions between these states based on events. This is useful for modeling the lifecycle of a
particular object.

Figure 15. login state diagram


Figure 16. order placement state diagram
Figure 17. registration state diagram
Figure 18. delivery state diagram
Figure 19. update delivery zone state diagram
The user interface (UI) is a critical component of the Arduino-based quadcopter delivery system,
as it is the primary point of interaction between users and the system. The UI needs to be
designed for the web platform, which users will interact with to place and track orders.

Web Platform UI

The web platform UI will be user-friendly and intuitive, guiding users through the process of
placing delivery orders and tracking their packages. Key components of the web platform UI will
include:

 Homepage: This will introduce users to the delivery service, providing essential
information and links to login or sign up.
 User Dashboard: Once logged in, users will access their dashboard, where they can
place new orders, track existing ones, and view order history.
 Order Placement Page: This page will allow users to input delivery details, such as
pickup and drop-off locations, package weight, and desired delivery times. Interactive
maps and address auto-complete features will enhance user experience.
 Real-Time Tracking Page: Users can track their deliveries in real-time, viewing the
current location of the quadcopter on a map, estimated time of arrival, and receiving live
updates.
 Notifications and Alerts: The system will send notifications via email or SMS regarding
order confirmations, dispatch updates, and delivery confirmations, ensuring users are
always informed.

The UI's behavior is designed to ensure seamless interaction for both users and operators. For
users, the process starts with logging into the platform, where they can easily navigate to
place new orders. The order placement form will guide them through the necessary inputs,
such as pickup and drop-off locations, with interactive maps to assist in location selection.
Once an order is placed, users can switch to the real-time tracking page, where they will see
live updates and an estimated delivery time. Notifications will keep them informed
throughout the delivery process, enhancing their experience.

For operators, the control interface ensures efficient management of the delivery fleet. The
flight control panel provides a comprehensive view of each quadcopter's status, ensuring
operators can respond swiftly to any issues. The delivery management panel offers a
centralized view of all orders, allowing operators to track progress and handle multiple
deliveries simultaneously.

You might also like