انکودر دوار (Rotary Encoder) یا انکودر شفت (Shaft Encoder) یک دستگاه الکترومکانیکی برای تشخیص زاویه یا سرعت زاویهای یک شفت یا محور است. به صورت کلی دو نوع انکودر از نظر جنس خروجی داده وجود دارد:
انکودر مطلق (Absolute Encoder)
این نوع از انکودر قادر به تشخیص موقعیت زاویهای است.
انکودر افزایشی (Incremental Encoder)
این نوع از انکودر تنها قادر به تشخیص سرعت زاویهای است. با این وجود با انتگرالگیری یا مشتقگیری از خروجی آن میتوان موقعیت زاویهای یا شتاب زاویهای را محاسبه کرد.
انکودر دوار در محدودهی وسیعی از سیستمهای مانیتورینگ یا سیستمهای کنترلی حلقه بسته استفاده میشود. منظور از سیستمهای مانیتورینگ ابزاری هستند که تنها برای نمایش مجموعهای از دادهها استفاده میشوند. اما در سیستمهای کنترلی حلقه بسته هدف کنترل یک یا چند پارامتر با اندازهگیری (فیدبک گرفتن) تعدادی از پارامترهای سیستم است. به عنوان مثال اودومتر استفاده شده در اتومبیلهای قدیمی از انکودر نصب شده روی شفتهای متصل به چرخها تنها برای نمایش سرعت اتومبیل یا کیلومتر پیمایش شده استفاده میشود (مانیتورینگ). در مقابل در اتومبیلهایی که دارای قابلیت کروز کنترل هستند از دادهی انکودر چرخها برای اندازهگیری سرعت اتومبیل به منظور رسیدن به سرعت مطلوب و حفظ آن استفاده میشود (کنترل حلقه بسته).
از نظر تکنولوژی ساخت انواع مختلفی از انکودر وجود دارد. که در ادامه به صورت مختصر به معرفی آنها پرداخته میشود.
انکودر دوار مکانیکی
این نوع از انکودرها شامل دیسکی از PCB دارای تِرَکهای مسی در دور تا دور PCB هستند (پین Common). پینهای A و B متصل به شفت دوار هستند و با حرکت چرخشی و اتصال به پین Common موجی مربعی را تشکیل میدهند.