logo Use CA10RAM to get 10%* Discount.
Order Nowlogo
(5/5)

Unity project for this assignment and must not change any parameters of this project, the only aspect of this project you should edit is the RobotController.cs script.

INSTRUCTIONS TO CANDIDATES
ANSWER ALL QUESTIONS

The university has already provided basic code and environment which is mandatory to use. I will send that details once everything is finalised.

Robotic navigation

In this project you must program a simulated robot in Unity to autonomously navigate a track with a range of obstacles. You will be provided with a complete Unity project for this assignment and must not change any parameters of this project, the only aspect of this project you should edit is the RobotController.cs script. You are free to develop the controller in any way you see fit, the measure of success on this project will be how far the robot makes it round the course, the time it achieves, and the smoothness of the trajectory taken, this is an entirely results based assessment.

 

 

 

Example of basic expected behaviour

 

 

 

Click here to download starting project file (now includes controller script)

 

 

 

You must write a piece of code to control the robot to enable it to successfully complete the track provided. Your code must adhere to the following requirements:

 

All code must be in the cs file

Do not change the name of any pre-existing variables in the code.

Do not modify the model in Unity, all students are being assessed against the same model meaning only your cs file will be used for testing.

You are only allowed to use the Sensors provided in the model, theses are named:

SensorFR – Must be a Raycast sensor (for proximity)

SensorL1 – Must be a Raycast sensor (for proximity)

SensorL2 – Must be a Raycast sensor (for proximity)

SensorL3 – Must be a Raycast sensor (for proximity)

SensorR1 – Must be a Raycast sensor (for proximity)

SensorR2 – Must be a Raycast sensor (for proximity)

SensorR3 – Must be a Raycast sensor (for proximity)

SensorOR – Must be an eulerAngles sensor (for robot orientation)

Whilst you must use these sensors as defined above you can set these up however you see fit.

You can rotate the sensors placed on the robot in your code but their physical position coordinates and scale must not change and any changes to the rotation of the sensor must be applied via the code.

You must use the WheelCollider to facilitate the robots movements, these are named:

frontLeftWheelCollider

frontRightWheelCollider

rearLeftWheelCollider

rearRightWheelCollider

You must use Transform visualise the movement of the wheels, these are named:

frontLeftWheelTransform

frontRightWheelTransform

rearLeftWheelTransform

rearRightWheelTransform

You must use the following variables but can set these as you see fit, when setting these they must be set in the code:

 

maxSteeringAngle – for the maximum steering angle

motorForce – for the maximum motor power (speed)

brakeForce – for the maximum breaking force (slowing down)

 

 

It is advised that you use at least the following two functions in your code:

 

private void Start() – This will be called before the first frame is rendered so is useful for setting up parameters.

private void FixedUpdate() – This is called around 50 times per second so ideal for physics elements.

 

 

Marks will be awarded for

Basic Model Requirements (20 marks)

 

Wheels being driven appropriately using motorTorque

Visual representation of wheels appropriately applied (steering and rotational movement visible)

Sensors reasonably orientated to facilitate robots’ perception of the environment

Robot physically capable of moving forwards

Robot physically capable of steering to turn

 

 

Basic self-driving capabilities (70 marks)

 

Successfully follows the track to the end without coming off

Maintains a smooth optimal path in completing the track

Avoids obstacles without collision

Adjusts speed and power to wheels appropriately whilst traveling around the track

Compensates for angled road surfaces

Successfully completes track in a good time (not crawling round slowly)

Successfully navigates tight spaces with multiple obstacles

 

 

A screen recording of your robot running (10 marks)

 

Regardless of the performance you must provide a screen recording of your robot running from start to finish using the controller you developed to illustrating the performance of the robot.

 

 

VERY IMPORTANT NOTE:

 

 

You MUST submit a screen recording and it MUST be from the robot running the code you developed. Since you are being provided with the full project and must not change anything apart from the RobotController.cs code it will run identically on another machine. If there is an obvious difference in the performance of the file you submit against the recording that you submit this will be considered an attempted false representation and will subsequently receive a grade of 0.

(5/5)
Attachments:

Related Questions

. Introgramming & Unix Fall 2018, CRN 44882, Oakland University Homework Assignment 6 - Using Arrays and Functions in C

DescriptionIn this final assignment, the students will demonstrate their ability to apply two ma

. The standard path finding involves finding the (shortest) path from an origin to a destination, typically on a map. This is an

Path finding involves finding a path from A to B. Typically we want the path to have certain properties,such as being the shortest or to avoid going t

. Develop a program to emulate a purchase transaction at a retail store. This program will have two classes, a LineItem class and a Transaction class. The LineItem class will represent an individual

Develop a program to emulate a purchase transaction at a retail store. Thisprogram will have two classes, a LineItem class and a Transaction class. Th

. SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of Sea Ports. Here are the classes and their instance variables we wish to define:

1 Project 1 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of

. Project 2 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of Sea Ports. Here are the classes and their instance variables we wish to define:

1 Project 2 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of

Ask This Question To Be Solved By Our ExpertsGet A+ Grade Solution Guaranteed

expert
Um e HaniScience

952 Answers

Hire Me
expert
Muhammad Ali HaiderFinance

749 Answers

Hire Me
expert
Husnain SaeedComputer science

641 Answers

Hire Me
expert
Atharva PatilComputer science

626 Answers

Hire Me

Get Free Quote!

427 Experts Online