User:Medelen8/ENES100/MRHN Design

Problem Statement
To successfully navigate a LEGO robot around the perimeter of the hallways using a ultrasound and a compass sensor.

Requirements for each element or component derived from system level goals and requirements
We were given a robot with a basic code that makes the robot move. Our requirements for the robot were
 * 1) To design a code to make the robot go in a straight line without curving
 * 2) Navigate itself around the hallway using the ultrasonic sensor and the compass sensor.
 * 3) Utilize the compass sensor to map it's way around 359 degrees
 * 4) Avoid obstacles along the way


 * The requirements above apply to only the program because the robot moves according the program we wrote.

Alternatives in design
The program can be done without using a compass sensor and only with an ultrasound but we need to add more coding for the program to operate the robot. We thought of using Simulink for constructing a new program rather modifying the old one. There were more options for the robot to move around the hallway, some suggestions were:
 * 1) To add color markers around the hallway for the robot to move by using the color sensor
 * 2) To add a light sensor so it can follow the lights on the ceiling throughout the hallway

The initial design
The initial design we had to work with was a basic program that made the robot move around using its sensors to avoid an object when it is near. We plan to make a better program where the robot has a destination to go to

Experimental prototypes and testing conducted during design
After the first test was conducted, there were a few problems that arose from initial program:
 * Not moving in a straight line, but slowly turning to the left after a certain point
 * When come in contact with the wall, it goes along with the wall instead of away from it
 * Needs sensors that comes with a 120 degree angle of vision.
 * As we conducted the second test of the program including the compass sensor we weren't able to make the robot go in a straight line.

Appropriate optimization in the presence of constraints
The appropriate values should be entered for the sensors. The robot functions on the function of the program. The right function used in simulink gives the right and specific results we need for the tests. The function we based the direction of the wheels and the compass sensor was y=3*(u-90)+50.

Iteration until convergence
N/A

The final design
We couldn't successfully approach a final design that works well with the constraints listed above.

Technical and scientific knowledge
This project utilizes in technical knowledge of coding where we have to code to specific functions of the robot.

Creativity, problem solving, and group decision-making
Problem solving skill come in handy when working with computers and robots. We had to figure out how to write the right function to make the robot move in a straight line. Our initial function we had created was 3*(u-90)+40.

Modeling and/or Simulation
Not Applicable because our work is based on coding, and no parts were designed by a computer.

Performance, life cycle cost and value
We weren't able to complete our code that complies with the current constraints. The performance is poor, it doesn't cost in any money.

Aesthetics and human factors
Aesthetics is not applicable to our project but the project has little to no human interaction with the robot itself.

Maintainability, reliability, and safety
Claude Moutome