# 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 (impulse, mass and energy balances). Get an introduction to selected topics in kinematics, thermodynamics, fluid dynamics, electricity theory, wave physics and electromagnetism.

Course description for study year 2022-2023

Facts

ELE130

1

10

Spring

1

Spring

Norwegian

Time table

## Content

The content of this course is divided into two parts, where both parts are completed in parallel during the semester.

One part consists of a practical project where students apply mathematical and physics knowledge in programming Lego robots to solve various practical problems. The Lego equipment consists of different types of sensors (light, ultrasound, gyro) and electric motors, and in order for the students to understand the principle behind these sensors and motors, an introduction is given to wave physics and electromagnetism. The project is carried out in groups of a maximum of 4 people.

The second part focuses on mathematical modeling of various mechanical / kinematic, thermal / process engineering and electrical systems. The necessary introduction is therefore given to selected topics within kinematics, thermodynamics, fluid dynamics and electricity theory. 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 RED102, the subject can be taken either before or after RED102.

## 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 robot 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 use partial differensiation to linearize nonlinear differential equations and identify gain and time constant.
• Through the project part could use numerical mathematics to solve problems that are relevant to the control of robots.

Physics (2.5 credits):

• Understand important concepts in wave physics such as reflection and transmission of light and sound, and be able to use these concepts to explain how light and sound-based sensors work, especially sensors used in robotics such as infrared distance sensor and ultrasonic sensor.
• 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.
• Understand important concepts in electromagnetism and be able to use these concepts to explain how electric motors work.
• Know physical systems with oscillating behavior, such as harmonic oscillators (undamped mass / spring system) and electrical circuits.
• Be able to apply kinematics and physics to develop mathematical models of mechanical systems (momentum balance).
• Be able to apply fluid dynamics and thermodynamics to develop mathematical models of simple process units (mass and energy balances), included the valve equation.
• Be able to apply develop mathematical models of simple electrical systems.
• Have an understanding of the scope and limitations of the mathematical models used, especially in relation to assumptions made during modeling.

None

## Recommended prerequisites

DAT120 Introduction to Programming

## Exam

Written exam and report

## Coursework requirements

Compulsary assignments
8 compulsatory theory assignments. 2 laboratory assignments.

Per Jotun

Tormod Drengstig

Tom Ryen

## Method of work

4 hours lectures and 2 hours problem solving per week.

Project part: Programming of LEGO-robots in groups.

## Open for

Computer Science - Bachelor in Engineering Control Engineering and Circuit Design - Bachelor in Engineering Medical technology - Bachelor in Engineering

## Course assessment

Course evaluation takes place according to the Faculty’s guidelines.

## Literature

Search for literature in Leganto