Ask Question, Ask an Expert

+61-413 786 465

info@mywordsolution.com

Ask Java Expert


Home >> Java

PART A Specification - Robot Simulation

PART A Requirements

To complete this assignment you will use the supplied eclipse project Robot P1/. It is already set up to execute a simple arm movement loop which you will build upon to create the full solution.

NOTE: The primary requirements specifications are the supplied videos which show the EXACT behaviour you should reproduce.

However, some points worth noting about the displayed behaviour:

INITIALISATION:

After the init() method is called with valid array parameters:

- Blocks are placed in order (bottom to top) from the supplied (hard coded) blockHeights array, into the far right source column (column 10) (Control.SRC_COLUMN).
- Bars are placed in order from the supplied (hard coded) barHeights array from left to right (from Control.FIRST_BAR_COLUMN to a maximum of Control.LAST_BAR_COLUMN).
- This initialisation is done AUTOMATICALLY by the supplied RobotImpl.jar

BLOCK PLACMENT:

You must reproduce this behaviour by calling methods on the Robot. Further hints are given in the section HOW TO PROCEED below.

- Blocks are picked from the source column from top to bottom until there are no blocks remaining. You will need to control the robot movement to do this.
- Blocks are dropped (placed) as follows:
Yellow (Size 1) blocks are placed on the top of column 1 (Dest 1). Red (Size 2) blocks are placed on the top of column 2 (Dest 2).
Blue (Size 3) blocks are placed on top of bars starting at the left most bar (Control.FIRST_BAR_COLUMN) and progressing to the right most bar (Control.LAST_BAR_COLUMN).
- Blocks are lowered to the drop position using the raise()/lower() methods to move Arm3.
- If less bars than columns are supplied, blocks can still be placed on the empty column and should still be laid out as described above from Control.FIRST_BAR_COLUMN to Control.LAST_BAR_COLUMN

HEIGHT OPTIMISATION (ARM1 movement):

Again, you must reproduce this behaviour by calling appropriate methods on the Robot.

- Arm 2 (the horizontal arm controlled by extend()/contract()) should always be at the lowest height to clear any obstacles (i.e. the top of any column). This is achieved by using the up()/down() methods on Arm1.
- This is set before moving to make a pick (or after any drop) so that the arm can JUST clear any obstacles as it moves to the source column.
- The height is then rechecked as soon as you make a pick taking into account the picked block and the additional clearance it needs as it moves to the drop destination.

Code Quality Assessment

As well as functional correctness (robot behaviour matches video requirements) you will also be assessed based on the following code quality requirements:

- Use meaningful / descriptive identifiers (eg variable and method names).
- Demonstrate understanding of local variables versus class attributes and prefer local scope where possible.
- Demonstrate the use of defined constants in Control.java (Rather than using
magic numbers)
- Avoid code repetition. (THIS IS THE MOST IMPORTANT ONE!)
- Write small private methods to avoid code other than one or more method calls going in the RobotControl.control() method.
- Appropriate use of comments (but remember that easily understandable code is better than a comment).
- Include a comment at the top of RobotControl.java class stating your name and student number.

Attachment:- Assignment part.rar

Java, Programming

  • Category:- Java
  • Reference No.:- M93113795
  • Price:- $160

Guranteed 48 Hours Delivery, In Price:- $160

Have any Question? 


Related Questions in Java

Answer the following question whats the difference public

Answer the following Question : What's the difference public inheritance and private inheritance? What can derived classes inherit from base classes? What cannot be inherited from base classes?

Project descriptionwrite a java program to traverse a

Project Description: Write a java program to traverse a directory structure (DirWalker.java) of csv files that contain csv files with customer info. A simple sample in provided in with the sample code but you MUST will r ...

Assignment taskwrite a java console application that allows

Assignment task Write a java console application that allows the user to read, validate, store, display, sort and search data such as flight departure city (String), flight number (integer), flight distance (integer), fl ...

Can someone please help me with the following java

can someone please help me with the following java question The input is an N by N matrix of nonnegative integers. Each individual row is a decreasing sequence from left to right. Each individual column is a decreasing s ...

Simple order processing systemquestion given the classes

Simple Order Processing System Question: Given the classes Ship (with getter and setter), Speedboat, and SpeedboatTest. Answer the following questions: Refine the whole application (all classes) and create Abstract class ...

Can someone kindly help me to consider whether java

Can someone kindly help me to consider whether Java provides the facility of operator overloading? If it does, may you kindly describe how overloading operators can be accomplished? If not, may you kindly describe why yo ...

Assessment socket programmingtaskwrite a java gui program

Assessment: Socket Programming Task Write a JAVA GUI program that would facilitate text chatting/exchanging between two or multiple computers over the network/internet, using the concept of JAVA socket programming. If yo ...

Overviewyou are required to use java se 80 and javafx to

Overview You are required to use Java SE 8.0 and JavaFX to develop a Graphical User Interface (GUI) for the FlexiRent rental property management program created in Assignment 1. This assignment is designed to help you: 1 ...

Solving 2nd degree equationsbull write the following java

Solving 2nd degree equations • Write the following Java methods • boolean real-sols(double a, double b, double c): it returns true if the 2nd degree equation ax2 + bx + c has real solutions • double solution1(double a, d ...

Overviewyou are required to use java se 80 and javafx to

Overview You are required to use Java SE 8.0 and JavaFX to develop a Graphical User Interface (GUI) for the FlexiRent rental property management program created in Assignment 1. This assignment is designed to help you: 1 ...

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

Why might a bank avoid the use of interest rate swaps even

Why might a bank avoid the use of interest rate swaps, even when the institution is exposed to significant interest rate

Describe the difference between zero coupon bonds and

Describe the difference between zero coupon bonds and coupon bonds. Under what conditions will a coupon bond sell at a p

Compute the present value of an annuity of 880 per year

Compute the present value of an annuity of $ 880 per year for 16 years, given a discount rate of 6 percent per annum. As

Compute the present value of an 1150 payment made in ten

Compute the present value of an $1,150 payment made in ten years when the discount rate is 12 percent. (Do not round int

Compute the present value of an annuity of 699 per year

Compute the present value of an annuity of $ 699 per year for 19 years, given a discount rate of 6 percent per annum. As