در انکودرهای ابسولوت دیسک انکودر کد بندی می‌شود و قابلیت این را دارد که حتی در زمان خاموش بودن سیستم موقعیت سیستم را داشته باشد پوزیشن انکودر از بین نرود این انکودرها در دو نوع سینگل‌تر هستند و مولتی ترن ارائه می‌شوند. انکودر بعدی انکودرهای رزولور هستند که خروجی آن‌ها به صورت آنالوگ است و یک سیگنال سینوس و کسیسنوسی مدوله شده به ما می‌دهد این نوع انکدر به شدت در سرووموتورها کاربرد دارد. انکودرهای تحت شبکه خروجی این انکودرها می‌تواند تحت شبکه‌های پروفی‌باس، کن اوپن، پروفی نت و غیره باشد و قیمت بالاتری نسبت به انکودرهای دیگر دارد و به شدت در صنعت پرکاربرد می‌باشند. نحوه محاسبه سرعت دستگاه با استفاده از انکودر خیلی مهم است که نیاز است ما در ابتدا رزولیشن انکدر خود را بدانیم و بر اساس آن فرکانس پالس انکودر را محاسبه کنیم. که این سرعت به صورت سرعت دورانی و سرعت خطی می تواند محاسبه شود. نحوه محاسبه پوزیشن یا موقعیت انکودر برای این منظور باید اطلاعات مکانیکی دستگاه از قبیل گام بال اسکرو، قطر شفت یا محور، گیربکس سیستم، سایز فولی پولی را بدانیم. معرفی انواع انکودر و نحوه اتصال انکودر به PLC های Siemens s7 300 ,s7 1200 Delta , Fatek همراه با مثالهای کاربردی برای سرعت و پوزیشن را در ادامه بررسی خواهیم کرد.

نیک صنعت

انکودر چیست ؟

انکودر (رمزگذار) در واقع یک تجهیز الکترومکانیکی است که حرکت یک جسم را به یک کد دیجیتال( ۰-۱ ) Pulse تبدیل می‌کند و این کد در تجهیز دیگری به نام دیکودر (Decoder) یا رمزگشا بنا به نیاز به تعداد دوران یا سرعت زاویه‌ای و یا مسافت تبدیل می‌شود. انکودرها یکی از تجهیزات ابزار دقیق است که پایه علمی طراحی و ساخت انکودرها بهره گیری از تکنولوژی‌های نوری و مغناطیسی است.
انکودرها تغییرات مکان (position) و جهت (direction) را به سیگنال‌های الکتریکی ترجمه می‌کنند. انکودر حسگری است که به محور چرخ، چرخ دنده، و یا موتور وصل می‌شود و می‌تواند میزان چرخش را اندازه گیری کند، با اندازه‌گیری میزان چرخش می‌توان جابه‌جایی، سرعت، شتاب یا زاویه چرخشی را تعیین کرد.

تقسیم‌بندی انواع انکودرها

1- انکودرها از لحاظ ساختمان به ۲ مدل تقسیم می‌شوند.
الف: انکودرهای خطی
ب: انکودرهای چرخشی و یا دورانی

انکودر خطی و چرخشی

۲- انکودرها از لحاظ عملکرد و ساختمان داخلی به ۳ دسته تقسیم می‌شوند.
الف: نوری
ب: مغناطیسی
پ: خازنی

انکودرها از لحاظ عملکرد و ساختمان داخلی

3- انکودرها از نظر نوع خروجی سیگنال به ۲ دسته تقسیم می‌شوند.
الف: مطلق (Absolute)
ب: افزایشی( Incremental)

انکودرها از نظر نوع خروجی سیگنال خرید encoder

انکودرهای چرخشی افزایشی

انکودرهای افزایشی به این معنا می‌باشد که تا زمانی که انکودر در حال حرکت است در خروجی پالس و سیگنال داریم و برای اندازه‌گیری سرعت و موقعیت باید در کنترلر تعداد این پالس‌ها شمارش شود، ولی اگر کنترلر بازنشانی شود 3(تغذیه آن قطع شده و دوباره روشن شود) موقعیت قبلی انکودر را فراموش کرده و دوباره باید با شمارش پالس‌های انکودر اطلاعات جدید را کسب کند.
یکی از معایب انکودرهای افزایشی همین مورد می‌باشد که نمی‌توان متوجه موقعیت قبلی و واقعی انکودر شد که این امر باعث ارزان قیمت بودن این مدل از انکودرها شده است.

انکودرهای چرخشی افزایشی

پالس‌های خروجی انکودرهای افزایشی بر دو نوع هست.
1. پالس مربعی
2. پالس سینوسی

پالس های خروجی انکودر افزایشی
پالس A: پالس مربعی یا سینوسی هست که تعداد یک پالس در هر دور به تعداد رزولوشن انکودر بستگی دارد مثلا اگر رزولوشن یک انکودر 1024 پالس باشد یعنی در هر دور 1024 تا پالس می‌دهد. حال فرکانس پالس به سرعت چرخش محور انکودر بستگی دارد.
پالس B: پالس مربعی یا سینوسی مشابه A هست با این تفاوت که با این پالس با اختلاف فاز 90 درجه نسبت به پالس A ظاهر می‌شود علت وجود این پالس یکی تشخیص جهت حرکت هست به این صورت که اگر جهت حرکت محور به صورت ساعتگرد باشد پالس A ابتدا ظاهر می‌شود و سپس پالس B و اگر جهت حرکت پادساعتگرد باشد ابتدا پالس B ظاهر می‌شود و سپس پالس A و یک علت دیگر برای وجود پالس B جهت بالابردن دقت پوزیشن هست به این صورت که در برخی plc ها می‌توان به این صورت پالس‌ها را شمارش کرد که لبه‌های بالا و پایین هر دو پالس را شمارش می‌کنند در اینصورت دقت خواندن پالس‌ها 4 برابر می‌شود یعنی برای انکودری که رزواوشن آن 1000 پالس هست ما با شمارش 4 برابری در یک دور 4000 پالس شمارش می‌کنیم که این دقت خوبی در محاسبه پوزیشن به ما می‌دهد.

پالس Z: این پالس فقط در یک دور به اندازه یک دوره تناوب پالس A فعال می‌شود یعنی در هر دور فقط یک پالس می‌دهد. این نقطه به عنوان نقطه صفر و مبدا حرکت در یک دور می‌باشد. به همین خاطر حرف Z از کلمه Zero به عنوان صفر گرفته شده است.
از این پالس برای هومینگ کردن و پیدا کردن نقطه مبدا حرکت می‌توان در شرایط خاص استفاده کرد.

همچنین ممکن هست در برخی انکودرها not دیجیتال پالس‌های A ، B و Z هم باشد که در برخی درایوها از آن به جهت تشخیص صحت پالس و عدم وجود نویز استفاده می‌شود.

تشخیص صحت پالس

 

محاسبه سرعت و پوزیشن

 

تشخیص صحت پالس و عدم وجود نویز

انکودرهای چرخشی مطلق

انکودرهای مطلق در هر نقطه و موقعیت که باشد سیگنالی که در خروجی برای کنترلر ارسال می‌کند بیانگر همان مکان می‌باشد، در واقع انکودرهای مطلق یک تعداد عدد یونیک برای هر زاویه از انکودر دارند که با قرارگیری در آن نقطه پالس و کد آن در خروجی ظاهر می‌شود. این انکودرها نسبت به انکودر های افزایشی گران‌تر بوده و پس از هربار بازنشانی کنترلر موقعیت شفت انکودر فراموش نمی‌شود. در انکودرهای مطلق از یک صفحه شفاف استفاده می‌شود، که بخش‌های خاصی از آن سیاه شده‌اند. این صفحه درمیان چندین گیرنده و فرستنده مادون قرمز قرار دارند، در هر لحظه تعدادی از این گیرنده‌ها صفر و تعدادی یک را نشان می‌دهند، بدین ترتیب یک عدد باینری بدست می‌آید که زاویه‌ای بین ۰ تا ۳۶۰ را نشان می‌دهد.
برای مثال اگر تعداد فرستنده‌ها و گیرنده‌ها هشت عدد و عدد باینری خوانده شده ۰۰۱۰۰۱۱۱ باشد (که درمبنای ۱۰ برابر ۳۹ است) زاویه مطلق برابر خواهد بود با:
در محاسبه بالا عدد ۲۵۵ زمانی بدست می آید که همه گیرنده ها یک باشند. یعنی (۱۱۱۱۱۱۱۱)

انکودرهای چرخشی مطلق

تقسیم بندی انکودرهای ابسولوت ( مطلق ) از نظر نوع عددی
1.single tern
: در این حالت فقط موقعیت یک دور مشخص میشود یعنی ممکن هست عددی از 0 تا 4096 باشد سپس این عدد در هر چرخش صفر میشود .
2. multi tern: در این حالت خروجی یک عددی هست که میتواند تعداد دورها را شمارش کند و عدد بالاتری را نشان دهد یعنی یک عددی که میتواند نشان دهنده تعداد دورهای بالا را هم در خود ذخیره کند در این صورت این نوع انکودر یک باتری داخل مدار انکودر دارد که حافظه را ذخیره کند و با قطع تغذیه انکودر این عدد از بین نرود . این نوع انکودر ها بسیار گران می باشند .

تقسیم بندی انکودرها از نظر نوع خروجی

  1. به صورت باینری و خروجی‌های باینری: به تعداد بیت‌های دیتای انکودر خروجی می‌دهد مثلا اگر رزولوشن 12 بیتی باشد یعنی 12 تا سیم خروجی دارد که خروجی ها از کم ارزش‌ترین تا پرارزش‌ترین کنار هم وارد plc یا کنترلر می‌شوند و تشکیل یک عدد دسیمال می‌دهند که مثلا برای 12 بیت عدد از (000000000000) باینری تا (1111111111111 ) یا به عبارتی در حوزه دسیمال از عدد 0 تا 4096 می‌باشد.
  2. به صورت دیتا تحت شبکه‌های صنعتی: ممکن هست عدد انکودر به صورت یک دیتای 16 بیتی یا 32 بیتی باشد که در این صورت این دیتا تحت شبکه‌های صنعتی به plc ها فرستاده می‌شود. این شبکه‌ها ممکن هست شبکه‌هایModbus ،profibus ،profinet ، canopen ،Ethercat و Devicenet باشد. این انکودرها گران‌ترین نوع انکودرها می‌باشد که می‌توانند singletern یا multitern باشند. آموزش PLC می‌تواند سرعت یادگیری شما را بیشتر کند.
  3. انکودرهای چرخشی مغناطیسی: این انکدرها هم همانند انکدرهای افزایشی بوده ولی در تولید پالس از سنسورهای اثر هال استفاده شده است.
انکودرهای چرخشی مغناطیسی

انکودرهای چرخشی سینوسی و کسیونوسی resolvers
همانطور که در شکل زیر مشاهده می‌کنید، این انکدرها تفاوت عمده‌ای با انکدرهای افزایشی و مطلق دارد، با این تفاوت که در این انکودرها پالس‌ها به صورت دیجیتال نبوده و به صورت سیگنال آنالوگ می‌باشد که با اندازه گیری فرکانس و اختلاف فاز و شمارش نقاط صفر سیگنال‌ها می‌توانیم سرعت، موقعیت و جهت حرکت شفت را به دست آوریم.
رزولورها اکثرا در پشت سروموتورها نصب می‌شوند و خروجی رزولورها به کارت مخصوص خود در درایوها می‌روند بنابراین معمولا نمی‌توان با plc ها خروجی آن‌ها را تحلیل کرد .
رزولورها 6 سیم دارند که 2 سیم به عنوان سیگنال سینوسی از سمت کارت مخصوص آن به رزولور اعمال می‌شود و سپس 4 سیم خروجی، 2 به 2 خروجی مدوله سینوسی کسیونسی می‌دهد.

انکودر های چرخشی سینوسی و کسیونوسی resolvers انکودر های چرخشی سینوسی و کسیونوسی resolvers انواع انکودر و نحوه محاسبه سرعت و پوزیشن چرخشی سینوسی و کسیونوسی resolvers

انکودر های مطلق خطی
یکی از مدل‌های دیگر انکدرها به صورت مطلق خطی بوده که کاربرد بسیاری در اندازه گیری های طولی دارد که به خط کش‌های دیجیتال معروف هستند.

انکودر های مطلق خطی خط کش های دیجیتال

کاربرد انکودر

انکودرها معمولا در سیستم‌های اتوماسیون و کنترلی در قسمتی نصب می‌شوند که بتوانند از خروجی فیدبک را برای کنترلر ارسال کنند و پارارمترهای زیر را مشخص کند.

  • اندازه گیری سرعت
  • اندازه گیری و کنترل موقعیت
  • جهت چرخش شفت

تصور کنید که قصد کنترل سرعت یک موتور الکتریکی را دارید، اگر شما فرمان‌های موتور را از یک اینورتر به آن اعمال کنید و سرعت را کم و یا زیاد نمایید توانسته‌اید تا سرعت موتور را کنترل کنید ولی مشکل اصلی زمانی پیش می‌آید که شما قصد داشته باشید تا سرعت موتور را روی سرعت خاص به صورت دقیق و ثابت نگه دارید در این حالت شما نیاز به گرفتن فیدبک از موتور هستید اما این سوال پیش می‌آید که آیا سرعت دقیق موتور همان عددی که شما به آن اعمال کرده‌اید هست یا نه؟ پس یکی دیگر از کاربردهای انکودر اندازه‌گیری سرعت موتورها می‌باشد. مواردی پیش می‌آید که شما می‌خواهید نوار نقاله مورد نظرتان به اندازه‌ای مشخص حرکت کند و در آن نقطه توقف کند که این موضوع یکی از پرکاربردترین نوع استفاده از انکودر در صنعت مخصوصا در ماشین آلات بسته‌بندی و پرکن‌های صنعتی به کار گرفته می‌شود. برای این کار شما خروجی انکودر را اندازه‌گیری می‌کنید و با در نظر گرفتن ضرایب گیربکس و کوپلینگ‌ها مسافت طی شده را به دست می‌آورید، این کار به اصطلاح کنترل موقعیت نامیده می‌شود. در ادامه نحوه محاسبه سرعت و پوزیشن (موقعیت) با استفاده از انکودرهای افزایشی پالس مربعی توسط اتصال به plc می‌پردازیم.

نحوه محاسبه سرعت با استفاده از انکوردهای افزایشی:
برای محاسبه سرعت ابتدا باید فرکانس پالس انکودر را بدست بیاوریم یعنی تعداد پالس خوانده شده در یک ثانیه
برای محاسبه فرکانس در plcهای مختلف از دو روش این کار انجام می‌پذیرد.
1.استفاده از دستور یا توابع آماده محاسبه فرکانس پالس سرعت بالا ( HIGH SPEED ):
در این حالت در برخی PLCها دستورات آماده یا توابع آماده موجود هست که می‌توان فرکانس پالس انکودر را محاسبه کرد. اما ممکن هست در برخی موارد فرکانس پالس بسیار کوچک باشد که نتوان از این توابع استفاده کرد و در این صورت از روش دوم استفاده می‌کنیم .

2. استفاده از کانترهای سرعت بالا (HIGH SPEED COUNTER):
در این روش ما توسط کانترهای سرعت بالا، تعداد پالس را در یک سمپل زمانی خیلی کوتاه (مثلا 100 میلی ثانیه) شمارش می‌کنیم و سپس با تناسب مقدار پالس در یک ثانیه را حساب می‌کنیم. در این صورت ما فرکانس پالس را حساب کرده‌ایم. مثلا اگر هر 100 میلی‌ثانیه مقدار کانتر سرعت بالا را در یک رجیستر بریزیم و حالا کانتر را ریست کنیم تا مجددا شمارش کند و آن رجیستر را همواره در عدد 10 ضرب کنیم (چون هر یک ثانیه 10 تا 100 میلی‌ثانیه می باشد)، در این صورت ما تعداد پالس انکودر را در یک ثانیه داریم و این یعنی ما فرکانس پالس انکودر را محاسبه نموده‌ایم.

پس از محاسبه فرکانس پالس انکودر برای محاسبه دیگر موارد از فرمول‌های ذیل استفاده می‌کنیم.
1.محاسبه فرکانس محور متصل به انکودر (به صورتی که انکودر مستقیم به آن محور یا موتور کوپل شده است).

محاسبه فرکانس محور متصل به انکودر

2.محاسبه فرکانس محور در صورتی که با گیربکس متصل شده است. محاسبه فرکانس محور در صورتی که با گیربکس متصل شده است.

محاسبه فرکانس محور

3. برای محاسبه سرعت دورانی از فرمول ذیل استفاده می‌کنیم.

60 × فرکانس محور ( موتور ) با کوپل مستقیم = سرعت محور ( با کوپل مستقیم انکودر ) بر حسب دور بر دقیقه RPM

60 × فرکانس محور با اتصال گیربکس مکانیکی = سرعت محور با اتصال گیربکس مکانیکی بر حسب دور بر دقیقه RPM

4. برای محاسبه سرعت خطی ( متر بر دقیقه ) از فرمول ذیل استفاده می‌کنیم.

محیط شفت یا غلتک محور( بر حسب متر m ) × سرعت محور ( بر حسب دور بر دقیقه RPM ) = سرعت خطی بر حسب متر بر دقیقه ( m/min )

مثال:
یک انکودر با رزولوشن 1000 پالس پشت موتوری کوپل شده است این موتور تحت گیربکس با نسبت 5 به 1 محور یک نوار نقاله را می‌چرخاند اگر در مدت زمان 100 میلی‌ثانیه در PLC 2400 پالس شمارش شده و قطر نوار نقاله 90 میلی‌متر باشد.

مطلوبست محاسبه:
1.فرکانس موتور
2.سرعت rpm موتور
3.سرعت خطی نوار نقاله بر حسب متر بر دقیقه

حل مثال:

فرکانس پالس انکودر

1.برای فرکانس موتور چون انکودر با کوپل مستقیم به موتور متصل هست و در فاصله زمانی 100 میلی‌ثانیه محاسبه شده هست ابتدا فرکانس پالس انکودر را محاسبه می‌کنیم:

نحوه محاسبه پوزیشن (موقعیت) با استفاده از انکوردهای افزایشی:

برای محاسبه پوزیشن ابتدا باید در یک محدوده مشخص قابل اندازه‌گیری از پوزیشن تعداد پالس‌ها را با استفاده از کانترهای سرعت بالا شمارش کرده و سپس این تعداد پالس را تقسیم بر پوزیشن اندازه‌گیری شده می‌نماییم. سپس تعداد پالس در واحد پوزیشن بدست می‌آید و این را به عنوان ضریب همواره در برنامه استفاده می‌نماییم. دقت کنید که برای نقطه شروع می‌توان توسط سنسور یا کلیدی توسط اپراتور در نقطه شروع کانتر را صفر نموده و براساس نقطه شروع همواره تعداد پالس‌های شمارش شده توسط کانتر سرعت بالا را اگر بر آن ضریب تقسیم نماییم در حقیقت با حرکت انکودر ما مقدار حرکت یا پوزیشن فعلی را بر حسب واحد اندازه‌گیری دلخواه داریم و می‌توان در برنامه از آن استفاده کرد.

مثال: به ازای حرکت 20 سانتی متر روی یک محور افقی تعداد پالس انکودر شمارش شده 35000 می‌باشد. ضریب محاسبه را بر حسب دقت 1 میلیمتر بدست بیاورید .

حل مثال:
برای دقت میلیمتر می بایست مقدار حرکت محاسبه شده را بر حسب میلیمتر محاسبه کنیم یعنی 20 سانتیمتر می‌شود 200 میلیمتر سپس داریم. این بدین معناست که هر 175 پالس از حرکت به منزله حرکت یک میلیمتر هست پس اگر تعداد پالس‌های شمارش شده انکودر توسط انکودر را همواره بر عدد 175 تقسیم کنیم عددی که بدست می‌آید پوزیشن یا موقعیت بر حسب میلیمتر می‌باشد.

نویسنده : محمود باقری اصفهانی گروه نیک صنعت

راه‌های ارتباطی نیک صنعت:

  • تماس با نیک صنعت: 021:87700210
  • واحد فروش نیک صنعت: 09197872783
  • واحد تعمیرات نیک صنعت: 09197872789
  • ایمیل نیک صنعت: info@nicsanat.com
  • آدرس شرکت: تهران، خیابان بهشتی، خیابان میرعماد، کوچه پیمانی(یازدهم)، پلاک 17