A course-based educational repository for Control Engineering and Robotics Engineering.
This repository contains standalone HTML lecture pages together with companion source-code examples, simulations, and computational demonstrations. The goal is to provide structured learning material that can be read as static course content and studied alongside executable examples in multiple programming environments.
The repository is organized around complete courses. Each course folder contains chapter/lesson material, including HTML lectures and related code examples where applicable.
| Course | Repository Folder |
|---|---|
| Introduction to Robotics | Introduction_to_Robotics_Course |
| Linear Control | Linear_Control_Course |
| System Dynamics | System_Dynamics_Course |
| Modern Control | Modern_Control_Course |
| Robotics Kinematics and Dynamics | Robotics_Kinematics_and_Dynamics_Course |
| Robot Control | Robot_Control_Course |
| Advanced Robotics | Advanced_Robotics_Course |
| Autonomous Mobile Robots | Autonomous_Mobile_Robots_Course |
- Standalone HTML lecture files for control and robotics courses.
- Chapter-based and lesson-based organization.
- Companion source-code examples for selected lessons.
- Mathematical explanations, simulations, and computational demonstrations.
- Multi-language implementation examples for engineering education.
The repository is intended to be useful for students, instructors, researchers, and self-learners who want structured material in control systems, robotics, modeling, dynamics, and robot control.
The exact internal structure may vary by course, but the repository generally follows this pattern, both for codes and lectures:
Control_and_Robotics_Tutorials/
├── Introduction_to_Robotics_Course/
├── Linear_Control_Course/
├── System_Dynamics_Course/
├── Modern_Control_Course/
├── Robotics_Kinematics_and_Dynamics_Course/
├── Robot_Control_Course/
├── Advanced_Robotics_Course/
├── Autonomous_Mobile_Robots_Course/
Inside codes folder, material is organized by courses. A typical course may contain:
Codes/Course_Name/
├── Chapter1/
│ ├── Lesson1/
│ │ ├── Chapter1_Lesson1.html
│ │ ├── Chapter1_Lesson1.py
│ │ ├── Chapter1_Lesson1.cpp
│ │ ├── Chapter1_Lesson1.java
│ │ ├── Chapter1_Lesson1.m
│ │ └── Chapter1_Lesson1.nb
│ └── Lesson2/
├── Chapter2/
└── ...
Depending on the course and lesson, the repository may include examples in:
- Python
- C++
- Java
- MATLAB
- Wolfram Language / Mathematica
- HTML, CSS, and JavaScript for lecture pages and static course material
Clone the repository:
git clone https://github.com/mohammadijoo/Control_and_Robotics_Tutorials.git
cd Control_and_Robotics_TutorialsThen open the course folder you want to study.
For lecture material, open the relevant .html file in a browser. For example:
Course_Name/ChapterX/LessonY/ChapterX_LessonY.html
For code examples, open or run the corresponding source file in the same lesson folder when available.
- Choose a course from the repository folder list.
- Start from
Chapter1and continue lesson by lesson. - Read the HTML lecture page first.
- Study the mathematical derivations and diagrams.
- Run the companion code examples where available.
- Modify parameters and compare simulation results.
- Use the code as a starting point for your own learning experiments.
The current repository covers material related to:
- Introduction to robotics
- Classical and linear control systems
- System dynamics and modeling
- Modern control theory
- Robot kinematics
- Robot dynamics
- Manipulator control
- Advanced robotics
- Autonomous mobile robots
- Planning, estimation, and robotics algorithms
More courses and lessons may be added over time.
The HTML files are designed to make the lessons readable as static educational pages. The companion code is intended to help connect theory with implementation.
Instructors may use the repository as a reference for course planning, lecture preparation, lab demonstrations, and programming exercises, subject to the license terms below.
Contributions are welcome for:
- Fixing typos or broken links.
- Improving explanations.
- Correcting mathematical or programming errors.
- Adding missing examples.
- Improving portability of code examples.
- Reporting issues in lecture HTML pages or simulation files.
Please open an issue or submit a pull request with a clear description of the proposed change.
© Abolfazl Mohammadijoo — Control & Robotics Tutorials.
This repository is intended for personal, academic, and non-commercial educational use.
Unless a different license is stated in a specific file or folder:
- Course text, explanations, diagrams, HTML lecture pages, images, documentation, and educational materials may be used for non-commercial educational purposes only.
- Source-code examples may be used for learning, experimentation, and non-commercial educational purposes only.
- Attribution to Abolfazl Mohammadijoo and this repository must be preserved.
- Author names, copyright notices, repository references, and course branding must not be removed.
- Commercial use is not permitted without a separate written commercial license from the author.
Commercial use includes, but is not limited to:
- Use in paid courses, paid tutorials, paid bootcamps, or commercial training programs.
- Redistribution on paid platforms or subscription-based educational services.
- Use inside commercial products, services, or consulting deliverables.
- Company-internal training or commercial research-and-development use.
- Selling modified or unmodified copies of the material.
For commercial licensing, contact the author.
Abolfazl Mohammadijoo
GitHub: https://github.com/mohammadijoo
YouTube: https://www.youtube.com/@abolfazlmohammadijoo