<!doctype html><html lang="en" class="no-js"><head><meta charset="utf-8"> <!-- begin SEO --><title>Week 10 Slides - DC Motor Control - Dr. Kaveh Hooshmandi</title><meta property="og:locale" content="en-Iran"><meta property="og:site_name" content="Dr. Kaveh Hooshmandi"><meta property="og:title" content="Week 10 Slides - DC Motor Control"><link rel="canonical" href="https://kaveh-hooshmandi.github.io/courses/control-systems/slides/week10.md"><meta property="og:url" content="https://kaveh-hooshmandi.github.io/courses/control-systems/slides/week10.md"> <script type="application/ld+json"> { "@context" : "http://schema.org", "@type" : "Person", "name" : "Dr. Kaveh Hooshmandi", "url" : "https://kaveh-hooshmandi.github.io", "sameAs" : ["https://github.com/kaveh-hooshmandi","https://scholar.google.com/citations?user=7zjCtzcAAAAJ"] } </script> <!-- end SEO --><link href="https://kaveh-hooshmandi.github.io/feed.xml" type="application/atom+xml" rel="alternate" title="Dr. Kaveh Hooshmandi Feed"> <!-- http://t.co/dKP3o1e --><meta name="HandheldFriendly" content="True"><meta name="MobileOptimized" content="320"><meta name="viewport" content="width=device-width, initial-scale=1.0"> <script> document.documentElement.className = document.documentElement.className.replace(/\bno-js\b/g, '') + ' js '; </script> <!-- For all browsers --><link rel="stylesheet" href="https://kaveh-hooshmandi.github.io/assets/css/main.css"><meta http-equiv="cleartype" content="on"> <!-- start custom head snippets --><link rel="apple-touch-icon" sizes="57x57" href="https://kaveh-hooshmandi.github.io/images/apple-touch-icon-57x57.png?v=M44lzPylqQ"><link rel="apple-touch-icon" sizes="60x60" href="https://kaveh-hooshmandi.github.io/images/apple-touch-icon-60x60.png?v=M44lzPylqQ"><link rel="apple-touch-icon" sizes="72x72" href="https://kaveh-hooshmandi.github.io/images/apple-touch-icon-72x72.png?v=M44lzPylqQ"><link rel="apple-touch-icon" sizes="76x76" href="https://kaveh-hooshmandi.github.io/images/apple-touch-icon-76x76.png?v=M44lzPylqQ"><link rel="apple-touch-icon" sizes="114x114" href="https://kaveh-hooshmandi.github.io/images/apple-touch-icon-114x114.png?v=M44lzPylqQ"><link rel="apple-touch-icon" sizes="120x120" href="https://kaveh-hooshmandi.github.io/images/apple-touch-icon-120x120.png?v=M44lzPylqQ"><link rel="apple-touch-icon" sizes="144x144" href="https://kaveh-hooshmandi.github.io/images/apple-touch-icon-144x144.png?v=M44lzPylqQ"><link rel="apple-touch-icon" sizes="152x152" href="https://kaveh-hooshmandi.github.io/images/apple-touch-icon-152x152.png?v=M44lzPylqQ"><link rel="apple-touch-icon" sizes="180x180" href="https://kaveh-hooshmandi.github.io/images/apple-touch-icon-180x180.png?v=M44lzPylqQ"><link rel="icon" type="image/png" href="https://kaveh-hooshmandi.github.io/images/favicon-32x32.png?v=M44lzPylqQ" sizes="32x32"><link rel="icon" type="image/png" href="https://kaveh-hooshmandi.github.io/images/android-chrome-192x192.png?v=M44lzPylqQ" sizes="192x192"><link rel="icon" type="image/png" href="https://kaveh-hooshmandi.github.io/images/favicon-96x96.png?v=M44lzPylqQ" sizes="96x96"><link rel="icon" type="image/png" href="https://kaveh-hooshmandi.github.io/images/favicon-16x16.png?v=M44lzPylqQ" sizes="16x16"><link rel="manifest" href="https://kaveh-hooshmandi.github.io/images/manifest.json?v=M44lzPylqQ"><link rel="mask-icon" href="https://kaveh-hooshmandi.github.io/images/safari-pinned-tab.svg?v=M44lzPylqQ" color="#000000"><link rel="shortcut icon" href="/images/favicon.ico?v=M44lzPylqQ"><meta name="msapplication-TileColor" content="#000000"><meta name="msapplication-TileImage" content="https://kaveh-hooshmandi.github.io/images/mstile-144x144.png?v=M44lzPylqQ"><meta name="msapplication-config" content="https://kaveh-hooshmandi.github.io/images/browserconfig.xml?v=M44lzPylqQ"><meta name="theme-color" content="#ffffff"><link rel="stylesheet" href="https://kaveh-hooshmandi.github.io/assets/css/academicons.css"/> <!-- Support for MatJax --> <script src="https://cdnjs.cloudflare.com/polyfill/v3/polyfill.min.js?features=es6"></script> <script id="MathJax-script" async src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script> <!-- end custom head snippets --></head><body> <!--[if lt IE 9]><div class="notice--danger align-center" style="margin: 0;">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</div><![endif]--><div class="masthead"><div class="masthead__inner-wrap"><div class="masthead__menu"><nav id="site-nav" class="greedy-nav"> <button><div class="navicon"></div></button><ul class="visible-links"><li class="masthead__menu-item masthead__menu-item--lg"><a href="https://kaveh-hooshmandi.github.io/">Dr. Kaveh Hooshmandi</a></li><li class="masthead__menu-item"><a href="https://kaveh-hooshmandi.github.io/research/">Projects</a></li><li class="masthead__menu-item"><a href="https://kaveh-hooshmandi.github.io/talks/">Talks</a></li><li class="masthead__menu-item"><a href="https://kaveh-hooshmandi.github.io/portfolio/">Portfolio</a></li><li class="masthead__menu-item"><a href="https://kaveh-hooshmandi.github.io/cv/">CV</a></li><li class="masthead__menu-item"><a href="https://kaveh-hooshmandi.github.io/courses/">Courses</a></li></ul><ul class="hidden-links hidden"></ul></nav></div></div></div><div id="main" role="main"><div class="sidebar sticky"><div itemscope itemtype="http://schema.org/Person"><div class="author__avatar"> <img src="https://kaveh-hooshmandi.github.io/images/Profile.jpg" class="author__avatar" alt="Dr. Kaveh Hooshmandi"></div><div class="author__content"><h3 class="author__name">Dr. Kaveh Hooshmandi</h3><p class="author__bio">Assistant Professor in Control Engineering | Robotics, Automation, ROS2, Sensor Fusion and Autonomous Mobile Robots</p></div><div class="author__urls-wrapper"> <button class="btn btn--inverse">Follow</button><ul class="author__urls social-icons"> <!-- Font Awesome icons / Biographic information --><li class="author__desktop"><i class="fa-solid fa-location-dot icon-pad-right" aria-hidden="true"></i>Arak, Iran</li><li class="author__desktop"><i class="fa fa-solid fa-building-columns icon-pad-right" aria-hidden="true"></i>Arak University of Technology</li><li><a href="https://kaveh-hooshmandi.github.io"><i class="fas fa-fw fa-link icon-pad-right" aria-hidden="true"></i>Website</a></li><li><a href="mailto:dk.hooshmandi@gmail.com"><i class="fas fa-fw fa-envelope icon-pad-right" aria-hidden="true"></i>Email</a></li><!-- Font Awesome and Academicons icons / Academic websites --><li><a href="https://scholar.google.com/citations?user=7zjCtzcAAAAJ"><i class="ai ai-google-scholar icon-pad-right"></i>Google Scholar</a></li><!-- Font Awesome icons / Repositories and software development --><li><a href="https://github.com/kaveh-hooshmandi"><i class="fab fa-fw fa-github icon-pad-right" aria-hidden="true"></i>Github</a></li><!-- Font Awesome icons / Social media --></ul></div></div></div><article class="page" itemscope itemtype="http://schema.org/CreativeWork"><meta itemprop="headline" content="Week 10 Slides - DC Motor Control"><div class="page__inner-wrap"><header><h1 class="page__title" itemprop="headline">Week 10 Slides - DC Motor Control</h1></header><section class="page__content" itemprop="text"><h1 id="week-10-slide-template-dc-motor-speed-and-position-control">Week 10 Slide Template: DC Motor Speed and Position Control</h1><h2 id="slide-1--title">Slide 1 — Title</h2><p>DC Motor Speed and Position Control</p><h2 id="slide-2--learning-goals">Slide 2 — Learning goals</h2><p>Understand PWM actuation, encoder feedback, speed estimation, and speed/position control loops.</p><h2 id="slide-3--motor-control-in-robotics">Slide 3 — Motor control in robotics</h2><p>DC motors are used in wheels, joints, conveyors, and mechatronic actuators.</p><h2 id="slide-4--pwm-actuation">Slide 4 — PWM actuation</h2><p>PWM controls average voltage applied to the motor by changing duty cycle.</p><h2 id="slide-5--encoder-feedback">Slide 5 — Encoder feedback</h2><p>Encoders provide pulse counts that can be converted to speed or position.</p><h2 id="slide-6--speed-estimation">Slide 6 — Speed estimation</h2><p>speed = change in encoder position / sampling time</p><h2 id="slide-7--speed-control-loop">Slide 7 — Speed control loop</h2><p>Reference speed, measured speed, error, PI controller, PWM output, motor, encoder.</p><h2 id="slide-8--position-control-loop">Slide 8 — Position control loop</h2><p>Position control may use an outer position loop and an inner speed loop.</p><h2 id="slide-9--practical-limitations">Slide 9 — Practical limitations</h2><p>Friction, dead zone, saturation, sensor resolution, noise, and sampling delay.</p><h2 id="slide-10--lab-task">Slide 10 — Lab task</h2><p>Implement or simulate a PI speed controller and evaluate tracking and disturbance rejection.</p></section><footer class="page__meta"></footer></div></article></div><div class="page__footer"><footer> <!-- start custom footer snippets --> <a href="/sitemap/">Sitemap</a> <!-- end custom footer snippets --><div class="page__footer-follow"><ul class="social-icons"><li><a href="http://github.com/kaveh-hooshmandi"><i class="fab fa-github" aria-hidden="true"></i> GitHub</a></li><li><a href="https://kaveh-hooshmandi.github.io/feed.xml"><i class="fa fa-fw fa-rss-square" aria-hidden="true"></i> Feed</a></li></ul></div><div class="page__footer-copyright">&copy; 2026 Dr. Kaveh Hooshmandi. Powered by <a href="http://jekyllrb.com" rel="nofollow">Jekyll</a> &amp; <a href="https://github.com/academicpages/academicpages.github.io">AcademicPages</a>, a fork of <a href="https://mademistakes.com/work/minimal-mistakes-jekyll-theme/" rel="nofollow">Minimal Mistakes</a>.</div></footer></div><script src="https://kaveh-hooshmandi.github.io/assets/js/main.min.js"></script></body></html>
