Department of Electrical and Electronic Engineering
ELEN90066 Embedded System Design
Kobuki Obstacle Course Project
Overview
The first SIX workshops (Workshops 1—6) for the subject comprised a structured sequence of laboratory exercises designed to give you experience and develop competency in a real-life embedded system, a Kobuki robot platform, and the tools used to program it. The next THREE workshop sessions (Workshops 7—9) are devoted to optimising the design of the Kobuki in order to navigate an obstacle course in the final workshop in Week 12 of the semester. There are no in-class tasks to be performed so it is up to your team to determine how to best spend your workshop time. You will be writing a team report that documents your design and testing procedure so it is important that you document your design, implementation and testing procedure as you go. Your Kobuki obstacle course algorithm MUST be coded as a Finite State Machine (FSM) in either C or LabView.
Obstacle Course Design Requirements
The “B0” button on the Kobuki is referred to as the “Play” button. For CyberSim, a separate “Play” button has been added on top of the Kobuki top view which maps to the “B0” button. The following are the design requirements for the obstacle course navigation of the robot.
1. Startup: When powered on or reset, the robot shall not move until the “Play” button is pressed.
2. Run: The robot shall begin movement the first time the “Play” button is pressed and continue running until paused or stopped.
(a) Ground Orientation: The ground orientation of your robot is the direction the front of the robot is pointing when it first runs. The ground orientation does not change after subsequent pausing/resuming; only after a power cycle, reprogram or restart of the robot or its embedded controller.
(b) Drive: Your robot shall maintain ground orientation and drive forward while on level ground and clear of obstacles.
(c) Obstacle Avoidance: Your robot shall avoid obstacles.
i. Cliff Avoidance: Your robot shall not fall off of cliffs or edges.
ii. Wheel Hazard Avoidance: Your robot shall avoid one or more wheels losing contact with the ground. If a wheel loses contact with the ground, your robot shall attempt to recover and move around the incident hazard.
iii. Object Avoidance: Your robot shall avoid objects in its path. It is acceptable for your robot to touch objects as long as it immediately changes course in an attempt to avoid.
iv. Avoidance Robustness: Obstacle avoidance must always be satisfied, even if multiple obstacles are encountered simultaneously or in short succession.
v. Reorientaton: After avoiding an obstacle, your robot shall eventually reorient to ground orientation.
(d) Hill Climb: Your robot shall have a Hill Climb ability.
i. Hill Climb: When an incline is encountered, your robot shall drive uphill towards the top of the incline. It must not go over any edge of the incline.
ii. Hill Plateau: When the top of an incline is reached your robot shall remain driving forwards along the plateau (top flat section) of the hill.
iii. Hill Descend: When an downward slope is encountered, your robot shall drive downhill towards the bottom of the slope. It must not go over any edge of the slope.
iv. Ground Stop: After climbing and descending, when the bottom of the slope is reached, your robot shall stop and terminate execution within a set distance of the bottom (40cm) as its final goal has been achieved.
3. Pause/Resume: The “Play” button on the top of the robot shall start/resume or pause movement of the robot. At any point the robot is moving, the “Play” button shall cause it to immediately and completely stop. Subsequently pressing the “Play” button shall cause the robot to resume operation.
4. Performance: When moving, your robot must satisfy the following performance char- acteristics:
	(a) Turnabout: Your robot shall never rotate in place more than 180◦
.
(b) Chattering: Your robot shall not move erratically or exhibit chattering.
(c) Abnormal Termination: Your robot shall not abnormally terminate execution, with the exception of power or mechanical failure.
(d) Obstacle Hugging: Your robot shall not repeatedly encounter (“hug”) an obstacle for the purpose of navigation.
(e) Timeliness: Your robot shall achieve its goals in a timely manner.
Hint: Your robot does not need to follow a specific path or trajectory, or return to a specific path or trajectory following obstacle avoidance — it need only eventually return to and maintain its original ground orientation.
Note: The Hill Climb section of the course will NOT have any obstacles present.
Workshop 10 (Week 12) – Robot Obstacle Course
In your final scheduled workshop for the subject in Week 12, your team will be running the Kobuki robot on an obstacle course in order to determine if your navigation and hill climbing algorithm is successful. The following subsections will provide details on the course set up, workshop schedule and logistics for the final workshop.
Figure 1: Obstacle course layout. Note that items are not to scale.
The course
The course will consist of an area approximately 5m ×3m that will contain the following:
• Barriers (walls) that mark the edges of the course. These may be bumped into by the Kobuki but not “hugged”;
• Several shaped obstacles (e.g. rectangular, triangular) that will be in random positions on the course;
• A hill section that comprises of an upward sloping incline, a flat top, and a downward sloping ramp. The Kobuki is not to drive off the side of the hill.
An example course layout is shown in Figure 1. Note that this course does NOT correspond to the precise layout that your robot will be tested on — you will not know the locations of the objects on the course before you run your robot on it. The only information known about the course is that it will narrow towards the hill, which will be at the end of the course as shown in Figure 1. Your robot MUST stop within 40cm of reaching the bottom of the far side of the hill.
Course location
The obstacle course will be either located in the Telstra Creator Space Test Bed or the workshop locations PAR-173-L1-124-EDS 1. You will NOT be able to access the course until your final workshop. NO testing may be done on the actual course before the trial, even during class time. You team must make sure that you have simulated and tested the robot enough that you are confident it can handle any configuration of the course.
Week 12 Workshop Logistics
The class schedule for the final workshop will be as follows:
• 0:00 – arrive at normal workshop room;
• 0:05 – robots handed out to teams;
• 0:10 – demonstrators will check the myRIO file systems to ensure all prior code is deleted;
• 0:15 – myRIOs are to be programmed by teams. Once programmed, robots are to left ON and in the PAUSED state;
• 0:30 – class heads to arena to run the robots on the course. NO alterations to the code are allowed from the moment the class leaves the workshop room;
• 1:30 – class returns robots and all equipment.
At the obstacle course, the robots will be tested with the following procedure:
• A team will be selected at random;
• The team will place their robot in the marked starting position, which is referred to as the ground orientation;
• The demonstrator will signal when to press the “Play” button on the Kobuki and will start a timer once the button has been pressed;
• The attempt is considered complete if any of the following occur:
1. the robot completes the course by successfully avoiding all obstacles, ascending and descending the hill and then stopping within 40cm of the bottom of the downwards sloping section;
2. the robot breaks any of the rules in the ‘Obstacle Course Design Requirements’ section;
3. the elapsed time is greater than 120 seconds;
4. the robot is interfered with in any way.
Assessment (20%)
The assessment for the Kobuki Project is worth 20% of the final mark for the subject. Of this, the report itself is worth 18% and the project outcome worth 2%.
Project Outcome (2%)
Your team will be graded on how successful the robot was in achieving the objective of navigat- ing the obstacle course. The marking rubric for this component is integrated into the marking rubric for the report on LMS.
Project Final Report (18%)
The report must contain (but is not limited to):
• a complete FSM diagram (including pause states) of the robot algorithm using the nota- tion covered in the lectures. If you use an Extended state machine, or state refinements, you must show all states, variables and transitions.
• a basic description of the sensor data available to the myRIO and how it was used in your algorithm.
• your design procedure (this could include work from earlier workshops).
• your testing procedure (this could include simulation data or screenshots).
• your validation procedure (this could include reliability or reachability analyses).
• the outcome of the run in the final workshop. Make sure to record this in the final workshop. You do not get a second chance at this.
• a discussion section (how you applied knowledge from the lectures, what you would im- prove in the future).
The report is to be no more than 20 pages in length. A marking rubric for the report is available on LMS.
Submission Details
Requirements for submitting the report:
• Submission is via the LMS.
• Submissions must be in PDF format.
• ONE submission per team.
• The report is to be no more than 20 pages in length, not including any appendices.
• Late submissions will be penalised at the rate of 10% per day.
• Submission date: Monday Nov 3 at 23:59.

![[SOLVED] ELEN90066 Embedded System Design Kobuki Obstacle Course Project](https://assignmentchef.com/wp-content/uploads/2022/08/downloadzip.jpg)

![[SOLVED] Introduction  you will be implementing a version of the very simple file system](https://assignmentchef.com/wp-content/uploads/2022/08/downloadzip-1200x1200.jpg)
 
 
Reviews
There are no reviews yet.