System Design

System Requirements

System requirements are derived from research, our use-case, and discussions with foresters. All requirements are shown in tables below.

Functional and Performance Requirements

No.Functional RequirementNo.Performance Requirement
MF1Traverse the area.MP1.1Traverse at 1.5 m/s speed.
MP1.2Traverse 12° slopes.
MF2Identify planting locations.MP2Identify planting locations with 1 m precision.
MF3Plan planting paths.MP3Replan if obstacle appears within 1 m of current path. 
MF4Map the area.MP4Detect obstacles of 0.15 m height.
MF5Avoid collisions with obstacles.MP5Avoid obstacles over 0.15 m.
MF6Dig holes for planting.MP6.1Dig 0.25 m holes.
MP6.2Reposition robot within 1 minute if digging stalls.
MF7Deposit seedlings.MP7Plant 80% of seedlings.
MF8Tamp soil.MP8Tamp 80% of seedlings.
MF11Update user with feedback.MP11Return updated map to user at least every 30 minutes.
MF12Take user input.MP12.1Carry seedlings of 0.25 m root length.

Non-Functional Requirements

No.Non-Functional Requirement
MN1Plant a seedling in 3 minutes.
MN2Improve tamping to 80% success.
MN3Easy to operate.
MN4Safe around people with 200 ms stop reaction.
MN5Rugged in outdoor environments with IP65.
MN6Reliable 80% planting and navigation success.
MN7Cost-effective.

Desirable System-Level Requirements

No.Desired Requirement
MD1Validate planting success.
MD2Perform failure recovery.
MD3Be nondestructive to surrounding environment.

Functional Architecture

Overview, Inputs, and Outputs 

Our system performs autonomous reforestation using tree seedlings.

The system takes in User Inputs, Environment Information, Power, and Tree Seedlings as System Inputs.

  • User Inputs refer to the user-selected planting area and the specific types of seedlings designated for reforestation.
  • Environmental Information consists of data acquired by sensors that describe the terrain and obstacles information around the robots.
  • Power provides both actuation energy for hardware and computational resources for onboard algorithms.
  • Tree Seedlings serve as the physical planting materials.

As for the outputs, we have user feedback and planted tree seedlings. 

  • User feedback here refers to reporting information like planting progress and planting locations back to the user, enabling the user to monitor the planting progress. 
  • Planted Tree Seedlings are the physical system outputs.

Planning and Navigation Steps

The system utilize GNSS RTK sensor for accurate localization. After that, our system determines a series of planting spots based on the user-selected planting area, plans a cost-efficient path to reach each planting spot from the robot’s current position, and navigates to the planting spots. During navigation, the robot detects and avoids the obstacle encountered on its route, performing real-time obstacle avoidance to ensure a safe and reliable navigation.

Planting Steps 

 Upon reaching a target planting spot, the robot executes the 3-step planting process. 

  • Digging: The robot digs a hole on the ground, with a suitable size and depth according to the seedling’s rootball dimension. 
  • Seedling placement: The robot selects one seedling from storage and deposits the seedling into the hole. 
  • Tamping: The robot tamps the soil, and validates if tamping and planting is successful.

The system includes a static platform capable of holding a predefined number of seedlings as according to our functional requirement. To speed up the planting progress, seedling reloading occurs in parallel with other planting steps.

Another worth-noting function in the planting phase is the digging failure recovery. During the digging process, the robots detect if the process is successful and perform failure recovery. If digging fails, the system marks the location as unsuitable and notifies the planner. The planner directs the robot to the next planting spot. 

User Interaction Steps 

After each successful planting, the system marks the planting coordinates on a site map, and updates the planting progress. Users can view this dynamic map that displays both planned and completed planting locations to monitor the reforestation progress. 

This dynamic map is also fed back to the path-planning step, ensuring future paths avoid traversing over newly planted seedlings.

Cyberphysical architecture

The architecture is divided into the following, according to the flow of operation

  • Inputs & Sensing: The system takes in user instructions (where to plant and what tree species) and combines them with data from onboard sensors. This allows the robot to see its surroundings and track its movement.
  • Perception & Mapping: The raw sensor data, along with GPS ground truth, is processed to build a map of the area. The robot identifies obstacles to avoid and pinpoints the exact locations where trees should be planted.
  • Planning & Navigation: Once the robot knows its current location and the first destination of the planting spot, it calculates a path. Then the robot moves towards that location and positions itself for the work.
  • Mechanical Execution: Upon arriving at the spot, the hardware takes over. This involves a sequence of mechanical actions: digging a hole, placing the seedling, and packing the soil down.
    • Reloading: Using an arm manipulator to handle tree seedlings.
    • Digging: Utilizing an auger powered by an electric motor.
    • Planting & Tamping: Dropping the tree via a chute and packing the soil using a pneumatic tamper.
  • Safety & Recovery: Throughout the entire planting process, a safety loop monitors for problems, such as tipping over or hitting an object, through sensor feedback. If an issue is detected, the robot stops or attempts to fix the situation by backing up or alerting the user.

System design description

We have divided our system into four subsystems below. Each subsystem has a hardware and software element that consists of various hardware components and software algorithms.

Perception & Mapping

The Perception subsystem is responsible obstacle detection, and tree seedling detection. The system receives visual data from the camera, point cloud data from the LiDAR, odometry data from the IMU, and localization data from the GPS. In the object detection modules, segmentation models are employed to classify objects and identify bounding boxes for key targets. The outputs of the perception subsystem are essential for other subsystems—obstacle detection results are used by the Navigation subsystem, and seedling detection results are used by the Planting subsystem.

Planning & Navigation

The Navigation subsystem is responsible for autonomously guiding the mobile platform to designated planting locations. It receives the localization data from GNSS RTK. The navigation process begins with path planning, which generates cost-efficient trajectories to the planting spots. Global path planning creates waypoints, while local path planning generates reference trajectories between waypoints. The obstacle avoidance module receives obstacle detection results from the Perception subsystem and adjusts the local trajectory to avoid obstacles. Once the path planning module generates reference trajectories, the path tracking module ensures the robot follows the exact trajectory.

Planting

The Planting subsystem is responsible for the seedling planting process. The subsystem consists of an auger, robot arm, tamper, camera, and current sensors for digging feedback. It also consists of the software required to control each subsystem component. The planting subsystem activates once the robot has arrived at its planting spot. The auger will dig into the ground to create a hole for a seedling. If the auger encounters anything that prevents it from completing the digging process, the robot will reload the auger and reposition itself to another location to try again. While the subsystem is completing the digging operation, the robot arm moves the seedling into the guiding chute. When digging is complete, the guiding chute deposits the seedling, and the tamping mechanism will compact the surrounding soil to complete the full planting process.

User Interface

The User Interface consists of two main parts. First, a map interface allows users to select target planting areas and seedling species. The system then randomizes the planting pattern and generates a planting map, determining the planting spots. Second, Upon successful planting, the system marks the exact location on the dynamic site map and updates the planting progress. Users can access this dynamic map to monitor the planting progress in real-time.