Digging the dirt - autonomous mining robots , MATLAB Programming

Assignment Help:

Digging the Dirt: Autonomous Mining Robots  

Mining is a multi-billion dollar industry and a critical part of the Australian economy. Much of the day-to-day work on mining sites is dull, dirty and extremely dangerous, and so is ideally suited to robots! Researchers at the Australian Centre for Field Robotics at the University of Sydney are developing autonomous vehicles to dig and remove dirt from around mining sites. The diggers have to be able to load dirt, drive around the site without hitting any obstacles or mining workers, and then unload the dirt, all without human intervention. To accomplish this, sophisticated software is needed. The challenge in this project is to implement software to guide an autonomous mining vehicle.

A schematic of the region to be cleared is shown below. You can consider it as a grid of n x n locations. The robot starts from the Base and needs to travel to each pile of dirt (shown in brown), while avoiding obstacles (shown in shaded grey). It can move horizontally or vertically, one step at a time. In the example below we have a 7x7 grid with the Base in location (7, 5) and the dirt in locations (1, 5), (4, 2), (5, 2) and (5, 3). Your task is to write a MATLAB program to transport all of the dirt back to the Base.

1.'Reading'the'configuration'of'the'mining'area'' Your program should read the file dirtgrid.csv, which contains 25 x 25 values representing the configuration of the area. The free locations are represented with 0 and the forbidden with 1. Dirt piles are indicated by the value 2. Your program should ask the user to enter the Base location, e.g. using x and y coordinates. If the location is out of range or forbidden, the user should be prompted to re-enter them until valid values are entered.

2.'Experimenting'with'initial'strategies'' First implement a simple strategy for finding and transporting the dirt, starting from the Base location. The robot does not know where the dirt is located, and so should move up and down each row (or column) until it hits a block. If it can't move because of a block it should turn right or left, then continue. The robot can revisit the same location, but can't move to forbidden locations. It must check every cell in the grid for dirt. Assume it can transport any amount of dirt in one go. Your program should ask the user to set a limit for the maximum number of steps the robot is allowed (e.g. 1000 steps), so that you do not allow your robot to wander indefinitely. Your program should display each step the robot takes formatted as columns of x and y coordinates.

  • If the maximum number of steps is reached, it should display Maximum steps reached
  • When the robot identifies a dirt pile (say at x = 3, y = 11 after 30 steps) it should display: Dirt loaded from position (3, 11) after 30 steps
  • When the robot has completed its search (say after 65 steps) it should display: Area completed in 65 steps
  • When you have loaded dirt into the truck, you should change the value of that cell to 0.

3. 'Showing the robot's progress- Your program should ask the user to select a strategy: B for the basic strategy or X for your smarter strategy (if you completed the extension in Part 4 below - or maybe you have multiple advanced strategies) and the maximum number of moves to make. It should then count the number of times the robot visits a particular square as it tries to find and transport the dirt. You should visualize the grid and the movement of the robot as a colour map using the MATLAB imagesc function using the visits matrix. Finally, use the getframe and movie2avi functions to create a movie of the visits matrix after each step so we can see the behaviour dynamically.

4. 'Extension: Smarter transportation!  Implement your own strategy that improves on the strategy in Part 2. The aim is to clear all dirt with the least number of steps. As an example, you could assume the robot has sensors that can evaluate how close the neighbouring locations are to a dirt pile, or that it remembers how often it has visited a particular location. You might also add an extension in which the robot returns to base via the shortest path. Alternatively you could limit how much dirt the robot can carry at time. Of course, you are free to develop any strategy you like. The extension will be marked on the sophistication (and success!) of your solution. You should include a brief explanation of your extension as a comment in the program.


Related Discussions:- Digging the dirt - autonomous mining robots

Tuning Fractional PID using GA and PSO algorithm, my project is on load fre...

my project is on load frequency control using FPID tuned using GA and PSO algorithm.the system is a two area system.

Determine two sided confidence intervals of the mean speed, The average spe...

The average speed of vehicles on a freeway is being studied. Assume that the standard deviation of vehicle speed is known to be 8 km/h. (a) Suppose observations on 120 vehicles

Create a model or spreadsheet in matlab, The pressure radiated by a column ...

The pressure radiated by a column of in-phase monopole sources may be expressed as: Create a model (spreadsheet / MATLAB etc) for a 6 element column, where d=0.2m . Figure

Illustration of assignment statements, Illustration  of assignment stateme...

Illustration  of assignment statements: At that point, if the expression mynum 3 is entered, the default variable ans is used as the result of this expression is not assigned

Colon operator, The Colon Operator: If the values in the vector are re...

The Colon Operator: If the values in the vector are regularly spaced, the colon operator is used to iterate through these values. For illustration, 1:5 results in all the inte

Calculate the mean-mode and median, You are given data similar to the examp...

You are given data similar to the examples and sample problems in the statistics topic. Write MATLAB program to do the following: 1. Plot histogram, relative frequency histogram

Calculate the distance between the two cars, Two cars started to move from ...

Two cars started to move from zero position with (φ = 35) as shown. For the next four minutes, do the following: 1. Calculate each car's distance from the zero position (Distanc

Create a text file with simulated data, Create a text file with simulated d...

Create a text file with simulated data. Calculate an experimental y using the first function and some reasonable values for the parameters Add noise Save the x values and ca

Calculate the signal-to-noise ratio, Use the MATLAB randn function to gener...

Use the MATLAB randn function to generate 1000 points for x. Generate the output of the unknown system with the ?lter function and b=[1232 1] and a=[1]. Normalise the ?lter output

CPM AND PERT, ACTIVITIES OF A PROJECT 1-2 1-3 1-4 1-5 2-6 3-6 3-7 4-7 5-7 7...

ACTIVITIES OF A PROJECT 1-2 1-3 1-4 1-5 2-6 3-6 3-7 4-7 5-7 7-6 6-8 7-8 THE COMMPANY LOSES 2,000 FOR EVERY WEEK THE PROJECT LASTS BEYOND 30 WEEKS. fOR EACH OF THE PROPOSALS; ACTIVI

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd