Draw2Move: Design and Development of an Interactive User Interface for Robot Navigation This project aims to develop an Interactive GUI with Mobile App for Robot Navigation. Through this interface, we send patterns to robots to move them. The desi
Draw to Move
Draw2Move: Design and Development of an Interactive User Interface for Robot Navigation
This project aims to develop an Interactive GUI with Mobile App for Robot Navigation. Through this interface, we send patterns to robots to move them. The designed app includes a list of all available robots. These robots are intelligent and they can send their coordinate location to the App through the Internet Cloud. We select a particular robot from the app and display its current location on Google Maps. The current location of the selected robot is considered it's Home Location. After selecting a particular robot, the user can draw any pattern on Google Maps and send it to the robot via IoT. After drawing the pattern, the mission is to ride on the selected robot, that moves it in direction of a given pattern. The robot will give feedback while moving on these waypoints. When the robot completes the mission, it will return back to its home location.
1. To design a user-friendly Mobile App, display the list of all available Robots with their current location on Google maps.
2. To develop a Wireless network connection between mobile and Robot and propose 3D map coordinates to Robot controller using Python/C.
3. To get feedback on visualization of Robot navigation.
4. To track the Robot from its surroundings is essential to obtain motion parameters such as position, trajectory, velocity, and acceleration of the Robot.
5. To perform Obstacle Detection and Avoidance to protect the Robot from any obstacle coming it's way.
1. We begin this project by designing an app in Flutter. Although Android Studio can be used to create an app, we prefer to use Flutter for designing an app to move Robots on the specified coordinates. This is because Flutter is the current state of the art. Flutter-based mobile apps are compatible with both iOS and Android smartphones.
2. To communicate between the Robot and the designed app, we used the User Datagram Protocol (UDP) as our communication protocol. Using the Wi-Fi module of ESP-32, we generated SSID and Password, allowing it to function as an access point or a UDP server.
3. The mobile app functions as a UDP client. This is done by including the UDP client code in the mobile app's code.
4. The connection is established between UDP Server and UDP Client by sending data in the form of packets from the app to ESP32 and then receiving data back from ESP Server.
5. We designed a Mobile App for sending 2D coordinates to the Robot. In this app, we enter x-coordinates first, then y-coordinates, and then click on the "Enter" button to save these coordinates into a table, that appears on the screen. After we have input all the coordinates, we click on the “Move Robot” button which will show the path on which the Robot will move and send these values to ESP Server.
6. After moving Robot on 2D coordinates, we designed a Mobile App integrated with Google Maps. Using the GPS module of the Robots, their location is accessed through Cloud and displayed on Google Maps.
7. We used Cloud Firestore Firebase as a medium between the Robot and the mobile app, for sending and receiving the coordinates and feedback. Cloud Firestore is a NoSQL document database that lets you easily store, sync, and query data for your mobile and web apps.
8. Then we draw a pattern on Google Maps on which we want to move the robot. The robot will retrieve those coordinate values.
9. The success of this project depends on the ability of the robot to follow the prescribed pattern. For navigating the robot, particularly on that pattern, we encoded the Movement Matrix.
Industrial and Academic Utilization:
Miniature Robot:
A small circular robot 80 mm in diameter with two wheels controlled by brushed DC Motors with inbuilt encoders as well. It has five IR transmitter-receiver sensors. It has the capability to support various add-ons like a wireless charging board, a radio comms board and IMU board, a Raspberry Pi and Nano Pi interface board, an LDR board, and a communication board adding Wi-Fi, Bluetooth, and 360 degrees IR Communications. It also includes two N20 dc motors operating at 3v with 150 RPM(Rotation Per Minute).
| Item Name | Type | No. of Units | Per Unit Cost (in Rs) | Total (in Rs) |
|---|---|---|---|---|
| Miniature Robots | Equipment | 2 | 35000 | 70000 |
| GPS Module and Tracker etc | Miscellaneous | 1 | 10000 | 10000 |
| Total in (Rs) | 80000 |
The general idea of this application is to perform Market Analysis for new business startu...
The main purpose of this project is to develop and control a boiler. The boiler is going t...
Automation plays an important role in today?s human life and people?s life is changing gra...
A cloud based marketplace for arventureres, tour guides, tour operators and service provid...
This concept shows a self-balancing two-wheeled vehicle that is controlled by a control mo...