Applied Mathematics and Physics in Programming of Robots (ELE130)
Apply mathematics and physics to solve various problems in robot programming. Understand and be able to explain the concepts numerical integration, filtering and numerical derivation, as well as be able to implement and use these numerical methods in MATLAB and Python. Develop, implement and simulate ODE-based models of dynamic systems using balance laws in kinematics, fluid dynamics and thermodynamics (momentum, mass and energy balances). Get an introduction to selected topics in kinematics, thermodynamics and fluid dynamics.
Course description for study year 2024-2025. Please note that changes may occur.
Course code
ELE130
Version
1
Credits (ECTS)
10
Semester tution start
Spring
Number of semesters
1
Exam semester
Spring
Language of instruction
Norwegian
Content
The content of this course is divided into two parts. One part consists of a practical project where students apply mathematical and physics knowledge in programming Lego robots to solve various practical problems. The project is carried out in groups of a maximum of 4 people.
The second part focuses on mathematical modeling of various mechanical/kinematic and thermal/process engineering systems. The necessary introduction is therefore given to selected topics within kinematics, thermodynamics and fluid dynamics. The purpose of the models is to analyze the dynamic properties of the systems by implementing and simulating the models in either Matlab, Simulink or Python. The analysis also includes identifying characteristics of linear time-invariant (LTI) systems.
Since the content of the course is focused on the dynamical aspect of applied mathematics and physics, and thus does not build directly on the content of FYS102, the subject can be taken either before or after FYS102.
Learning outcome
Cooperation:
Be able to plan, carry out and present a technical project in collaboration with other students.
Programming (2.5 credits):
- Master problem solving and be able to use flowcharts and pseudocode to create and describe algorithms.
- Apply mathematics and physics to solve various problems in robot programming.
- Be able to implement and simulate mathematical models in Simulink, MATLAB and Python.
- Be able to use MATLAB and/or MicroPython as Legorobot programming tools.
- Know and be able to explain how processing capacity and resource use are important for the execution of algorithms and how this can limit how well a robot can perform a specific task.
Mathematics (5 credits):
- Understand and be able to explain the concepts numerical integration, filtering and numerical derivation, as well as be able to implement and use these numerical methods MATLAB and Python.
- Be able to present numerical results with appropriate graphs and figures.
- Be able to implement and apply simple statistical quality goals in the practical issues in the project part.
- Be able to develop mathematical models in the form of nonlinear differential equations (ODE systems) and implement these in Simulink, MATLAB and Python.
- Have knowledge of different numerical methods for numerical solution of nonlinear differential equations.
- Be able to identify gain and time constant.
- Through the project part could use numerical mathematics to solve problems that are relevant to the control of Legorobots.
Physics (2.5 credits):
- Understand important concepts in fluid dynamics such as Bernoulli's equation and the continuity equation, and be able to use this to model the volume flow through e.g. a control valve.
- Know physical systems with oscillating behavior, such as harmonic oscillators (undamped mass/spring system), and to be able to formulate linear models as state space models.
- Be able to apply kinematics and physics to develop mathematical models of mechanical systems (momentum balance).
- Be able to explain the concept of frequency response.
- Be able to apply fluid dynamics and thermodynamics to develop mathematical models of simple process units (mass and energy balances), included the valve equation.
- Have an understanding of the scope and limitations of the mathematical models used, especially in relation to assumptions made during modeling.
Required prerequisite knowledge
Recommended prerequisites
Exam
Written exam and report
Form of assessment | Weight | Duration | Marks | Aid |
---|---|---|---|---|
Written exam | 2/5 | 4 Hours | Letter grades | Basic calculator specified in general exam regulations |
Report | 3/5 | Letter grades |
The report documents the work done in the project part. The report can be written individually or in the group of maximum 4 students. If the report is written in the group, each group participant will get the same grade. It is a prerequisite for passing the course that the students demonstrate satisfactory knowledge in physics, mathematics and programming in report form and on exams.There will not be any resit exam of the report. Students who wish to take the project part again has to do it during the fall semester.
Coursework requirements
Mandatory Activity 1:
8 exercises related to a written exam.
Grading Rule: Pass/Fail
Individual assessment
Mandatory Activity 2:
Oral presentation related to a report.
Grading Rule: Pass/Fail
Individual assessment
Course teacher(s)
Coordinator laboratory exercises:
Per JotunCourse coordinator:
Tormod DrengstigHead of Department:
Tom RyenMethod of work
6 hours lectures and 2 hours problem solving per week during the first 10 weeks.
Project part with programming of LEGO-robots in groups is done after the 6 first weeks, and lasts typically for 9 weeks. I this part there are up to 4 hours of lectures pr week.
Overlapping courses
Course | Reduction (SP) |
---|---|
Introductory course for engineers - Computer science and electrical engineering (ING100_1) | 5 |