Giter Club home page Giter Club logo

ematm0054_20_21's Introduction

EMATM0054: Robotic Systems



Contents

Unit Summary
Coursework Materials
Core Labsheets
Supplementary Labsheets
Acknowledgements



Unit Summary

The offical rubric for this unit of study can be found at Unit Catalogue: EMATM0054.

The aim of this unit is to give you a "complete" experience of running a scientific robotics experiment. By the end of this unit, you will have written up a conference paper styled report, in which you present a study and results based on a robotic system. To get to that point, this unit builds up your skill to program and understand a small mobile robot called Romi. The lectures and labsheets will help to familiarise you with the interesting challenges of robotic systems. This unit will:

  • serve as an introduction to robotics.
  • equip you with programming skills to develop microcontroller systems.
  • develop your analytical skills.
  • develop your communication skills.
  • prepare you to present your own proposal, scientific argument, and credible results.



Coursework Materials

Coursework Specification
Map Specification
Code Standard
Code Stub for Romi (source)  (zip file)
Core Labsheets
Supplementary Labsheets
Assessment 1: Video Example
Assessment 1: Online self-assessment declaration
Assessment 2: Experiment Ideas



Core Labsheets

As a guideline, previous students have averaged a sum total of 48 hours to cover the following core labsheet materials and assessment 1 (6 weeks x 8 hours, an appropriate portion of a 10 credit unit). This year (2020-2021) we have provisioned for 6 weeks x 16 hours (an appropriate portion of a 20 credit unit), expecting various interuptions from the COVID-19 pandemic, and with appropriate adjustments to the specification. You may experience a small delay in receiving your kit, however, you should have ample time for focused study. Assessment 2 takes place in the remaining 6 weeks of the unit.

These labsheets present exercises for you to develop skill with the robotic system "Romi". The Supplementary Labsheets are not necessary to complete Assessment 1 to a high standard. These labsheets provide all of the core "ingredients" for your robotic system - but ultimately it is up to you to solve the final architecture of autonomous behaviour to successfully complete the line following challenge. You should anticipate that the final process of integrating and testing your solution will take a significant amount of time - therefore, do not leave the entire coursework until the deadline to do.

It is advised that you first read through all labsheets before you begin working with them.

Labsheet 0: Troubleshooting
Labsheet 1: Meet the Romi
Labsheet 2: Multi-tasking with Millis()
  Check Point 0: Debugging

Labsheet 3: Motors
Labsheet 4: Line Following
  Check Point 1: Refactoring Code

Labsheet 5: Encoders
Labsheet 6: Time and Speed Estimation
Labsheet 7: PID
  Check Point 2: Thinking Clearly

Labsheet 8: Kinematics
Labsheet 9: Finite State Machine

Supplementary Labsheets

The following labsheets provide further information on using other peripheral avaiable on your Romi. You should not need the supplementary labsheets to complete Assessment 1 to a high standard. These labsheets may be beneficial for Assessment 2, depending on the experiment your group decides to design.

S. Labsheet 0: Measuring Battery Voltage
S. Labsheet 1: Interrupts and Timers
S. Labsheet 2: Proximity and Ambient Light
S. Labsheet 3: Inertial Sensors and Magnetometer



Useful External Resources

The following resources are mentioned through the labsheets and it may be quicker to look here to find them again:

Polulu: Pin Mappings for the Romi
Pololu: Guide to programming Romi + Troubleshooting
Pololu: Fix when your cannot upload to Romi
VL1680X Datasheet
Datasheet for the Atmega32u4
Pololu: Magnetometer Product Page and Resources
Pololu: Magnetometer Arduino Library
Pololu: VL1680X Product Page and Resources
Pololu: VL1680X Arduino Library



Acknowledgements

These materials were originally developed and tested by both Dr. Martin Garrad and Dr. Paul O'Dowd in 2018. The materials have been iteratively updated by Paul in the years since. We are grateful for the valuable feedback from students and teaching assistants. We have typically provisioned and delivered this unit of study to 160 simultaneous students - this wouldn't be possible without a great team and community. We are grateful to: the support, valuable input and critique from Prof. Arthur Richards & Prof. Seth Bullock; the support from school manager Evan Roberts; the always patient and friendly support of administrator Ann Foster; the patience of Emma Giddings in timetabling; support from the faculty of engineering technical services, including Jude Bramton, Dominic Hardman, Daryl White and Christopher Cooper. Apologies to anyone I may have missed! (email me!)



(back to top)

ematm0054_20_21's People

Contributors

paulodowd avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.