Write An Essay logo
  • Home
  • Dissertation Writing
  • Essay Writing
  • Personal Statement
  • My account
  • Order now
Order Now
Uncategorized

Webots & Python (Empty worlds: “Lab2_epuck.zip”)

5 min read
Posted on 
October 9th, 2021
Home Uncategorized Webots & Python (Empty worlds: “Lab2_epuck.zip”)

Distance Sensor

Webots’ e-puck robot has three distance sensors1 (front, left and right). Each distance sensor has a lookupTable field that indicates min and max readings. For the lab, the distance readings are between 0 and 1.27 meters (50 inches).

C.1 Task 1 – MotionwithPID (Task + Plot)Implement a controller called “Lab2_Task1.py”. The robot should use proportional control to move towards the end wall while also keeping its distance from the side walls, as shown in Figure 2. You will apply the “P” component of the PID controller to all 3 distance sensors. Robot should stop at the exact 10-inch mark from the end wall, while keeping a distance between 2.5 and 5.5 inches from side walls. You need to continuously print all three distance measurements on the screen. Robot should never hit a wall, and if gets too close, it should adjust its distance and orientation as necessary. You need to use only proportional gain control. Test the 𝐾𝑝program using 6 different values of (0.1, 0.5, 1.0, 2.0, 2.5, 5.0). Apply the same control values 𝐾𝑝to all three sensors at the same time. Find the one value that you think works best. Provide a 𝐾𝑝single plot for each value, showing “Distance from Wall” (front, left, right) vs. “Time”, 𝐾𝑝comparing the results for the 6 . Note that tile size is set to 0.508×0.508m (20x20inches), 𝐾𝑝corresponding to 2×2 squares, i.e. each square in Figure 2 measures 0.254×0.254m (10x10inches). Task should run for 30 sec. NOTE: Implement your own PID equations. Do not use Webots prebuilt PID controller. During evaluation, the TA will start the robot at different distances and orientations varying less than 30 degrees in either orientation from the straight line towards the end wall.

C.2 Task 2 – Motion to Goal (Task + Plot)Implement a program called “Lab2_Task2.py”. The robot will start from the corner opposite the yellow cylinder, i.e. the “goal”, with any orientation, as shown in Figure 3. The robot should move towards the goal and must stop at 10 inches from the cylinder. There are no obstacles between the robot and the cylinder. Apply PID control to front distance sensor and use side control to realign the robot with the center of the cylinder. Provide a single plot, showing (a) “Distance from Goal” vs. “Time”, (b) “Alignment with Goal” vs. “Time”, (c) “Blob Size” vs “Time”.Task should run for 30 sec. During evaluation, the TA will start the robot at different distances and orientations from the yellow cylinder.

C.3 Task 3 – Wall FollowingImplement four wall following algorithms while applying the PID controller from Task 1:

Implement “Lab2_Task3_CorridorLeftTurns.py” (Figure 4 – left).Implement “Lab2_Task3_CorridorRightTurns.py” (Figure 4 – left).Implement “Lab2_Task3_MazeLeftTurns.py” (Figure 4 – right).Implement “Lab2_Task3_MazeRightTurns.py” (Figure 4 – right).If the robot reaches 7 inches from any end wall it should make a 90-degree. If no 90-degree turns are possible, it should make a 180-degree turn, and continue wall following in the opposite direction. The robot should navigate no further away than 7 inches from the wall it is following. The robot can start at any grid cell with any orientation and should stop when completing a full path by calculating the time it takes. Depending on the original orientation the robot my follow a different path. Task should be completed in less than 3 minutes. During evaluation, the TA will start the robot at different initial positions and orientations in the corridor or maze.

C.4 Task 4 –Bug Zero AlgorithmImplement a program called “Lab2_Task4.py”. The robot should follow the Bug Zero algorithm, using the world shown in Figure 5. The goal is represented by the yellow-colored cylinder. The robot should follow walls no further than 8.4 inches away from them. The robot may use any of its sensors, including camera. Task should be completed in less than 3 minutes. During evaluation, the TA will start the robot at different initial positions and orientations.

C.5 Task 5 – Tangent Bug Algorithm (Task + Plot) (Extra Credit)Implement three different controllers for the Tangent Bug Algorithm using the Figure 5 world: Implement “Lab2_Task5_ZeroRangeSensor.py” using a sensor range of no further than 7 inches.Implement “Lab2_Task5_FiniteRangeSensor.py” using a sensor range of 15 inches.Implement “Lab2_Task5_InfiniteRangeSensor.py” using an “infinite” sensor range.The algorithm should be based on the Tangent Bug Finite Range Sensor, using the world shown in Figure 5. Provide a diagram showing all hit, leave, and min points for each of the 3 subtasks. Note that you can modify the distance sensor range by: (a) modifying the distance sensor range in Webots corresponding sensor lookup table, or (b) comparing distance ranges directly in your Python code. You should get sensor readings as often as possible, and you may choose to add a Lidar range sensor or rotate your robot in order to get multiple readings of your front distance sensor to obtain endpoints for the intervals of continuity. Task should be completed in less than 3 minutes. During evaluation, the TA will start the robot at different initial positions and orientations. 

attachment_1
attachment_2

Order an Essay Now & Get These Features For Free:

Turnitin Report

Formatting

Title Page

Citation

Outline

Place an Order
Share
Tweet
Share
Tweet
Calculate the price
Pages (275 words)
$0.00
Write An Essay
Company
  • Why Choose Us
  • About Us
  • Terms
  • Dissertation Help
  • Personal Statement
  • Research Paper Format
  • Term Papers
Legal
  • Write My Essay
  • Thesis Format
  • Custom Papers
  • Coursework Writing
  • Dissertation Writing
  • Essay Writing
How Our Service is Used:
Write An Essay essays are NOT intended to be forwarded as finalized work as it is only strictly meant to be used for research and study purposes. Write An Essay does not endorse or condone any type of plagiarism.
Subscribe
No Spam
© 2023 Write An Essay. All rights reserved.
Write An Essay will be listed as ‘Write An Essay’ on your bank statement.