• Tidak ada hasil yang ditemukan

A PROTOTYPE OF SMART PARCEL BOX BY Lee Jia Heng

N/A
N/A
Nguyễn Gia Hào

Academic year: 2023

Membagikan "A PROTOTYPE OF SMART PARCEL BOX BY Lee Jia Heng"

Copied!
117
0
0

Teks penuh

I declare that this report entitled "A PROTOTYPE OF SMART PARCEL BOX" is my own work, except as cited in the references. This is to prevent the package from being stolen by keeping it locked in the package box.

Introduction

  • Problem Statement and Motivation
  • Project Objectives
  • Project Scope and Direction
  • Contributions
  • Report Organization

The prototype of the smart parcel machine will function as a receiver that helps to receive the parcel from the deliverer. After that, the smart parcel box will open the door to receive the parcel and inform the recipient that the parcel has been received.

Literature Reviews

  • Raspberry Pi vs Arduino
    • Raspberry Pi
  • Barcode vs QR Code
    • Barcode
  • Survey on the Problem
  • Review of the Existing Systems
    • Arduino Based Smart Box
    • Comparison between Two Existing Systems

Although Arduino sounds better in the automation project, Raspberry Pi is more suitable for the development of the smart package box. From the point of view of the authors' smart package box design, even though they have the security password that allows the user to secure everything in the package box.

Figure 2.2. Arduino board  2.1.3  Comparison between Raspberry Pi and Arduino
Figure 2.2. Arduino board 2.1.3 Comparison between Raspberry Pi and Arduino

SYSTEM METHODOLOGY /APPROACH

  • Methodology
    • System Development Model 1: Waterfall Model
    • System Development Model 2: Spiral Model
    • System Development Model 3: Prototyping Model
    • Selected Model
  • System Requirement
    • Hardware
    • Software
  • Functional Requirement
    • QR Code Detection
    • QR Code Verification
    • Photo Capture
    • Notification to Receiver
    • Website
  • Project Milestone
  • Estimated Cost

After some testing on the system prototype, a complete functional system will be developed that will meet most user requirements [20]-[21]. On the main page of the site there will be a list of received packages listed in one.

Figure 3.2 Spiral Model
Figure 3.2 Spiral Model

Grand Total RM 229.83

Concluding Remark

Briefly, this chapter discussed three different system development models and choose an appropriate model to use in this project, which is the prototype model.

System Design

System Architecture

  • Overall System Design
  • Website Architecture Design

If the user wants to register an account, he or she will be taken to the user registration page. Otherwise, the user will be taken directly to the home page with the correct username and password input. On the home page, the user will find a list of incoming packets, received packets, and abnormal activities.

After that, the user can refer to many pages of the website, for example, parcel tracking page, account setting page, parcel box control page, history record page and insert new tracking number page. On the account settings page, user can choose to go to the password page or account deletion page. Also in the history record page, user can choose to go to received packet history page or abnormal activity history page.

Functional Modules in the System

  • QR Code Detection
  • QR Code Verification
  • Photo Capture
  • Notification to Receiver
  • Website
    • User Registration
    • User Login
    • Insert New Tracking Number
    • Incoming Parcel Tracking
    • Received Parcel Confirmation
    • Checking on Abnormal Activity
    • Lock or Unlock Parcel Box Manually
    • View History Record
    • Account Password Reset
    • Account Deletion

The system will verify the user input with the MySQL database to avoid duplicate username and email. The system will verify the user input and compare it with the data stored in the database. If the user input does not match the information in the database, the user cannot log in to the website.

Every abnormal activity will be recorded in a database, the website will retrieve the information from the database and filter out with the record that is unchecked by the user. A button will be provided by the system for the user to recognize and check the abnormal activity, after which the system will mark it as flagged abnormal activity. The system will check the user input with the information in the database, only the valid user input will proceed with the account deletion process.

When the process is complete, the user's account information will be removed from the database.

System Flowchart

  • Overall System
  • User Registration
  • User Login
  • Insert New Tracking Number
  • Account Password Reset
  • Account Deletion

If the data matches, the servo motor turns to unlock the package box. If the information does not match, the system will record it as unusual activity and update the database with the event time and information detected from the QR code. If the user input is valid, the system will update the database by inserting a new record into the user account database.

To log in, the system will ask the user for a username and password, and then confirm the user input. To reset the account password, the user must enter the username, old password, new password and confirm the new password, then the system will verify the user input before continuing the process. Invalid input conditions, including mismatched username or old password, mismatched new password and new password confirmation, and any blank value.

The system will update database by removing the user information from the user account database if the user input is validated.

Figure 4.4 User Registration Flowchart
Figure 4.4 User Registration Flowchart

Database Design

  • Entity Relationship Diagram (ERD)
  • Data Dictionary - Users Database
  • Data Dictionary - Tracking Database
  • Data Dictionary - Abnormal Database

This database is used to store information such as username, first name, last name, email and password. Tracking_num stores the package tracking number that the system uses to verify the QR code scanned by the camera. Parcel_received_time records the timestamp of when the parcel was received, a null value means that the parcel has not been received yet.

Photo is to save the photo taken by the camera when the package is received, zero value means the photo has not been taken yet. Username is used to identify the abnormal activity under which user's smart parcel box. Photo is to save the photo taken when the abnormal activity occurred and save in BLOB data form.

The checked field is to identify whether the recipient has checked for abnormal activity.

Figure 4.9 ERD
Figure 4.9 ERD

Algorithm Design

  • Hashing Algorithm

Graphical User Interface Design (Website)

  • Login Page
  • Account Registration Page
  • Home page
  • Insert New Tracking Number Page
  • Parcel Box Control Page
  • History Record Page
  • History Record Page – Parcel Record History
  • History Record Page – Abnormal Activity History
  • Account Setting Page
  • Account Setting Page – Change Password
  • Account Setting Page – Delete Account

Incoming Parcel Section - a list of incoming parcels is shown to the user and there is a "Track" button which will take the user to the parcel tracking website. Received Package Section – a list of received packages and its information is shown to the user and a “Verify” button for user to acknowledge and confirm the received package. Abnormal activity – a list of abnormal activity and related information is shown to user and a "Check" button for user to mark as marked on the abnormal activity.

It requires the user to enter the tracking number and select a courier from the predefined list. The "Unlock" and "Lock" buttons are for the user to control the smart parcel box manually. Show – to let the user see the route taken for the package, which will redirect the user to the package tracking website.

There are two main sections that allow the user to choose which type of account setup they want, namely change password and delete account.

Figure 4.12 GUI of Account Registration Page
Figure 4.12 GUI of Account Registration Page

Use Case Diagram and Description

  • Use Case Diagram
    • Use Case Description of UC001
    • Use Case Description of UC002
    • Use Case Description of UC003
    • Use Case Description of UC004
    • Use Case Description of UC005
    • Use Case Description of UC006
    • Use Case Description of UC007
    • Use Case Description of UC008
    • Use Case Description of UC009
    • Use Case Description of UC010
    • Use Case Description of UC011

User cannot log in if the username and password do not match information in the database. User will be redirected to the package tracking website based on the tracking number and carrier. The parcel cannot track if the user has entered a wrong parcel tracking number or wrong courier in the database.

The user cannot see any record if the confirmed received packet or the monitored abnormal activity data is empty. User key in username, old password, new password and confirm the new password in the account password reset page. Prerequisite: Username and old password must match information in database, new password and new password must match.

Account will be permanently deleted if the username and password match the information in the database.

Table 4.8 Use Case Description of UC005  Use Case Name: Checking on Abnormal
Table 4.8 Use Case Description of UC005 Use Case Name: Checking on Abnormal

Concluding Remark

SYSTEM IMPLEMENTATION

  • Hardware Setup
  • Software Setup
    • Raspberry Pi OS
    • OpenCV / pyzbar
    • WAMP Server
    • Telegram Bot
  • Setting and Configuration
    • Raspberry Pi Camera Module
    • WAMP Server
    • Telegram Bot
    • Main Python Script
  • System Operation
    • Main Function
    • Parcel Box Control Function
    • Telegram Bot Notification
  • concluding Remark

As for the wiring between Raspberry Pi and SG90 Micro Servo, the connection is shown in Figure 5.3 and Table 5.1. Go to 127.0.0.1 in the web browser. The page will look like Figure 5-8 if the WAMP server is properly installed and running. After that, a window will appear as shown in Figure 5.11, enable the interface of the camera (circled in red).

As shown in Figure 5.14, enter the database created in the previous step and create three tables to store the data. In Figure 5.15, enter the username and hostname based on the Raspberry Pi IP address. To get the user's Telegram chat ID, the user must first send a message to the Telegram bot, as shown in Figure 5.17.

From Figure 5.25, the result shows the process of QR verification, once the QR code is detected on the Raspberry Pi camera module, the system will analyze the data from.

Figure 5.2 Front View of System Prototype
Figure 5.2 Front View of System Prototype

SYSTEM EVALUATION AND DISCUSSION

  • System Testing and Performance Metrics
  • Testing Setup and Result
    • Testing of the Raspberry Pi Camera Module
  • Normal Light (Test 10 times)
  • Little Light (Test 10 times)
  • No Light (Test 10 times)
  • QR Get Wet from Water (Test 10 times) Table 6.4 Result of System Testing (4)
  • Flaws on QR (Test 10 times)
    • Testing of the Servo
  • System Control (Test 10 times)
  • Receiver Control (Test 10 times)
    • Testing of the Database
    • Testing of the Telegram Bot
    • Project Challenges
    • Objectives Evaluation
    • Concluding Remark

If there are errors in the QR code, the accuracy will be 50%, as it depends on the state of the error, as shown in Figure 6.1 and Figure 6.2. The accuracy test tests the accuracy of the servo based on the result of QR verification or the receiver's check. As for the connectivity test, it tests how long it takes for the servo to function after the control signal is given.

For the Telegram bot test, the accuracy test will be based on the content of the message, either notification of package received or warning of abnormal activity. Then the connection must test the delay (in seconds) of the message received after the system sent the message. The system test result of Telegram bot can prove that the accuracy and connectivity of the messaging module can work well.

Tests are being performed on the Raspberry Pi camera module, servo motor, database and Telegram bot.

Table 6.1 Result of System Testing (1)
Table 6.1 Result of System Testing (1)

Conclusion

Conclusion

Since every interaction between people has a chance of contracting the Covid-19 virus, contactless delivery will therefore also protect the recipient and the deliverer from the Covid-19 virus.

Future Work

BIBLIOGRAPHY

Panko, “Package Theft Statistics: How to Prevent Lost or Stolen Packages | Clutch.co,” clutch.co, 2019. Keawwang, “Arduino Based Smart Box for Receiving Parcel Posts,” 2020, 18th International Conference on ICT and Knowledge Engineering (ICT&KE), Nov.

APPENDIX

FINAL YEAR PROJECT WEEKLY REPORT

  • WORK DONE
  • WORK TO BE DONE
  • PROBLEMS ENCOUNTERED - None
  • SELF EVALUATION OF THE PROGRESS - Looking forward to working on the project
  • PROBLEMS ENCOUNTERED
  • SELF EVALUATION OF THE PROGRESS
  • SELF EVALUATION OF THE PROGRESS - Overall, the progress of the project is as scheduled
  • WORK TO BE DONE - None
  • WORK DONE - System prototype
  • WORK TO BE DONE - Finalize system prototype
  • WORK TO BE DONE - Presentation
  • PROBLEMS ENCOUNTERED - No issue on the finalization of project
  • SELF EVALUATION OF THE PROGRESS - The project completed as scheduled

Write a python script to generate a QR code - Write a python script to read data from a QR code. Updating and upgrading Raspberry Pi OS takes longer due to internet connectivity. I am trying to take up FYP1 work and get familiar with the system easily.

Configuring the Telegram Bot takes a bit of time, but integrating the Telegram Bot into the python script is easy and works great. The website design process takes longer as it involves UI and UX design. System process prototyping is very slow because the Raspberry Pi has little memory to run efficiently.

System tests take longer because the Raspberry Pi has little memory to run efficiently.

POSTER

PLAGIARISM CHECK RESULT

Form Title: Supervisor Comments on Originality Report Generated by Turnitin for Final Year Project Report Submission (for Undergraduate Programs). The required originality parameters and limitations approved by UTAR are as follows:. i) the total similarity index is 20% or less, and. ii) Matching of individual cited sources must be less than 3% each and (iii) Matching of texts in a continuous block must not exceed 8 words. Note: Parameters (i) – (ii) exclude citations, bibliography and text matches of less than 8 words.

Note: Supervisor/candidate(s) are required to provide a soft copy of the full set of the originality report to the faculty/department. Based on the above findings, I hereby declare that I am satisfied with the originality of the final project report submitted by my students as mentioned above.

UNIVERSITI TUNKU ABDUL RAHMAN

Gambar

Figure 2.1. Raspberry Pi  2.1.2 Arduino
Figure 2.2. Arduino board  2.1.3  Comparison between Raspberry Pi and Arduino
Figure 2.6 Block diagram of Arduino based smart parcel box system
Figure 2.7 Front side of smart parcel box  2.4.2 Smart Freight Box
+7

Referensi

Dokumen terkait

eSIF Applicant's Name Father's Name Mother's Name Gender DoB Section Class Roll Subjects Opt Sub Pass Year Roll No Board RegNo Photo Student Signature 1 MASHRAFI BIN KABIR

Sincerely Yours Name: ID: Department: Mobile No: Signature of student: Signature of Authorized Person: CEF-05 Upload Passport Sized Photo of Student Upload Passport