These days, most people want to receive a package by non-face-to-face delivery because of the COVID-19. In addition, the conflict between the courier and the recipient is getting worse day by day. Exhaust gases generated during delivery can cause environmental pollution. As the problem of delivery intensifies, the demand for unmanned delivery systems is increasing.
Therefore, we decided to implement an unmanned delivery system by using drones and turtlebots that can help our society.
While implementing delivery as an unmanned system, users can obtain real-time information on the transportation situation of drones and turtlebots through Mobius servers.
In addition to turtlebots and drones, we have implemented IoT devices using raspberry pi in elevators and drone stations so that they can actually run services.
1. Prerequisites1-1 Software
- Mobius Server (Rental or installation)
- nCube Thyme, nCube MUV
- ROS 1 (SLAM, NAVIGATION)
- OpenCV(Color detection)
- Haar(Face recognition)
1-2 Self-made
We have created a station that facilitates the exchange of goods between drones and turtlebots. The DC motor in the station operates through communication with the Mobius server and opens and closes the door when the drone arrives.
The important point at this time is that you have to make a slope at the entrance of the station so that the delivery robot can go inside and pick up the goods using the robot arm.
- Drone Carrier
A space not to touch the floor at the bottom of the drone was set as a space to store goods. The electromagnet was installed because the electromagnet module was installed to arrive at the target position and the voltage was not applied to the electromagnet when the power was turned off.
The ideal system is to operate the elevator directly, but given the realistic conditions, we could complete our project if we could install only one physical button. Therefore, a physical button with a camera module and a servo motor was created. The camera module operates the servo motor according to the lighting status of a specific floor within the elevator and sends commands to the Mobius server to help the turtle bot drive autonomously.
1-3 Products that you can buy on the market
- Drone dji matrice 100
- Turtlebot3 waffle
Basically, our system is aimed at unmanned systems. Therefore, if the existing member information is included in the face information of the person who wants to receive additional delivery, the information will be sent to the Mobius server through base64 encoding.
The information is delivered to drones, drone stations, elevators, and delivery robots during delivery. Each piece of information is used through the mqtt communication method and we made a demo video using one school building.
Let's take a look at our projects one by one.
3.Our Mobius System !
3-1Web pages provided to users
We built a web application using vue.js, one of the modern js, to provide the best environment for any device we connect to.
Each member information is authenticated through firebase, and individual uids are issued only to subscribers who have been authenticated in this way and delivered to the Mobius server based on this basis.
Each page is composed of a reactive type, which acts as a great advantage in showing the drone's state in real time.
3-2 Drone / Drone StationWe can set the origin and destination to set the waypoint and control the drone through mavlink. The drones moved in this way aim to land at the station.
We used nCube MUV to use drone status information and GPS information. As the information is delivered, it is transmitted to the Mobius server in real time and communicates with the web and station through the data to bring in a turtlebot in a state where driving inside the building is possible. We tried to implement the precision landing of the drone as a challenge, but this part was not successful.
3-3 Turtlebot / Elevator Physical ButtonWhat is essential for the driving of the delivery robot is the result of the slam in the building. This consists of two image files and yaml files and coincides with the starting point of the delivery robot to start driving. This presupposes that the building is located in the building through a slam in advance.
It is the navigation part of the building that runs autonomously. Using the map provided through the slam, it's LiDAR. Through the sensor, the driving is started by calculating the part that matches the map stochastically.
The moving delivery robot arrives at the elevator in the building and sends a signal to the Mobius server to use the elevator. Delivery in high-rise buildings can also be carried out without difficulty.
Physical buttons that depend on the inside and outside determine whether to operate the servo motor according to the lighting state of the button. This result is sometimes given or received commands from the Mobius server.
Both the SLAM and NAVIGATION functions of ROS are far from the words unmanned and autonomous in that nodes must be executed one by one at the terminal. Therefore, we made this part autonomous by processing it with shell(.sh).
3-4 Face RecognitionThe corresponding driving robot reaches the target layer and performs autonomous driving to the destination based on the map in the target layer. The turtlebot arrives at the user and recognizes the face through the camera module.
Photos of recipients received from users on the web are stored in the Mobius server. The server learns a face with the stored photo dataset. The learning model is also stored in the server. When the turtlebot autonomously drives and arrives at the recipient's place, it recognizes people's faces through OpenCV and delivers packages if the recipient is correct.
4. Demo Video5. Expectation pointWhen landing in the drone part, we will collect data and create a neural network. I would like to add a precision landing function that can autonomously control landing through deep learning with the collected data.
Since we have envisioned a complete unmanned delivery system, we should be more careful not to have safety risks when driving unmanned devices, including turtlebots and drones.
Since there may be users who are reluctant to be used for reasons such as personal information leakage, additional measures such as QR code and fingerprint recognition should be considered.
Comments