Functional Architecture 10/19/2017

A graphical representation of the functional architecture of the project is presented in Figure 3. The flow of the project as depicted in the architecture can be divided into 3 major phases, each of which is explained below.

 

Figure 1: Functional Architecture

 

The first phase consists of inputs to the architecture which include having initial knowledge of the terrain map, on-board sensors readings along with companion rover data and user input for rover’s destination point. The two rovers are deployed in the field to carry out exploration. Given a satellite map of the area and destination way points defined by the user, the rovers will explore the area by driving through those way points and build a detailed terrain map incorporating on-ground details.

The second phase comprises of Path Planning, Simultaneous Localization and Mapping (SLAM), Movement Control, Goal and Entrapment determination and Photograph processing. This phase requires the rovers to determine the goal points, plan their path through those goal points and, at the same time, simultaneously localize and map (SLAM) the environment. The first step in this stage elicits rovers to plan path to that goal state given by the user. Having carried out the path planning, movement control shall make sure the rovers are successfully able to execute their movements in accordance with the planned path. While the rovers are navigating to the goal state, they shall map out the terrain they are navigating using on-board sensors and cameras as well as localize them- selves in that map. While exploring the area, once of the rovers gets stuck in an entrapment, it shall detect and signal its entrapped state. The companion (assisting) rover, on receiving this signal of entrapment, shall halt its initial mission of exploration and plan to rescue the entrapped rover. It shall determine a new goal point (point of entrapment of the stuck rover) and navigate to that location. Once the assisting rover is in close proximity of the stuck rover, it shall carry out tow planning for the purpose of extricating the stuck rover.

Third phase involves execution primarily. Having generated plans for the tasks at hand (either navigating for exploration purposes or rescuing other rover), movement control will enable the execution of the planned paths. The map generated from SLAM is passed back to update the shared map data which in turn will aid in path planning and movement control. In the case of rescuing the stuck rover, the assisting rover will execute the planned navigation path to the point of entrapment and incur tow mechanism actuation to extricate the stuck rover.