ما هو الإنكودر Encoder؟ أنواعه وطريقة عمله واستخداماته في الأتمتة الصناعية


يعد الإنكودر Encoder من أهم الحساسات المستخدمة في أنظمة التحكم والأتمتة الصناعية، إذ يسمح لنظام التحكم بمعرفة موضع Position أو زاوية Angle أو سرعة Speed أو اتجاه حركة Direction جزء ميكانيكي مثل المحرك أو المحور.
نجد الإنكودر في العديد من التطبيقات الصناعية، مثل المحركات، خطوط الإنتاج، ماكينات CNC، الروبوتات، المصاعد، أنظمة السير الناقل Conveyor، ماكينات التعبئة والتغليف وأنظمة التحكم بالحركة Motion Control.
لكن ما هو الإنكودر بالضبط؟ وكيف يحول الحركة الميكانيكية إلى معلومات يمكن للـPLC أو وحدة التحكم قراءتها؟

ما هو الإنكودر Encoder؟

الإنكودر هو حساس يحول الحركة أو الموضع الميكانيكي إلى إشارة كهربائية أو بيانات رقمية يستطيع نظام التحكم تفسيرها.
يمكن أن يقيس الإنكودر حركة دورانية، مثل دوران عمود محرك، أو حركة خطية، مثل حركة محور آلة.
بناءً على الإشارة التي يستقبلها المتحكم، يمكن معرفة موضع المحور أو سرعته أو اتجاه حركته.
وتستخدم الإنكودرات الحديثة تقنيات استشعار مختلفة، أشهرها الاستشعار البصري Optical والمغناطيسي Magnetic، لذلك ليس صحيحًا أن جميع الإنكودرات تحتوي بالضرورة على قرص زجاجي ومصدر ضوء.
توضح شركة SICK أن الإنكودرات تستخدم لقياس الموضع والسرعة وعدد الدورات، وأن تقنيات القياس تشمل الإنكودرات البصرية والمغناطيسية، مع وجود إنكودرات دورانية وخطية.

كيف يعمل الإنكودر؟

يعتمد مبدأ العمل على نوع الإنكودر.
في الإنكودر البصري Optical Encoder يوجد عادة قرص مشفر مرتبط بمحور الدوران، بالإضافة إلى مصدر ضوئي ومستقبل ضوئي. عندما يدور القرص، تتغير كمية الضوء التي تصل إلى الحساس وفقًا للمناطق الشفافة والمعتمة أو العلامات الموجودة على القرص.
تقوم الدوائر الإلكترونية بتحويل هذه التغيرات إلى إشارات يستطيع جهاز التحكم قراءتها.
أما الإنكودر المغناطيسي Magnetic Encoder فيستخدم تغير المجال المغناطيسي بدل الضوء لتحديد زاوية أو موضع المحور.
لذلك فالهدف النهائي واحد، لكن طريقة الاستشعار الداخلية تختلف من نوع إلى آخر.

الأنواع الرئيسية للإنكودر

يمكن تصنيف الإنكودرات من عدة نواحٍ. من ناحية الحركة توجد إنكودرات دورانية وخطية، بينما من ناحية طريقة تمثيل الموضع يوجد نوعان مهمان جدًا في الأتمتة الصناعية: Incremental Encoder وAbsolute Encoder.
 
النوع                         الوظيفة الأساسية
Rotary Encoder قياس الحركة أو الزاوية الدورانية
Linear Encoder قياس الحركة أو الموضع الخطي
Incremental Encoder يولد نبضات تدل على مقدار الحركة
Absolute Encoder يعطي قيمة فريدة تمثل الموضع الحالي

الإنكودر التزايدي Incremental Encoder

الـ Incremental Encoder لا يعطي عادة موضعًا مطلقًا مباشرًا للمحور، وإنما يولد عددًا من النبضات أثناء الدوران.
يقوم الـPLC أو وحدة التحكم بعدّ هذه النبضات لتحديد مقدار الحركة.
فعلى سبيل المثال، إذا كان لدينا إنكودر: 1000 PPR
فهذا يعني، وفق تعريف الشركة المصنعة المستخدم، أنه يعطي 1000 نبضة لكل دورة على قناة معينة.
تؤكد Siemens أن الإنكودر التزايدي يعتمد على القيم التزايدية، ولذلك تحتاج المنظومة عادة إلى Homing أو Referencing بعد إعادة التشغيل حتى تعرف العلاقة بين عدد النبضات والموضع الميكانيكي الحقيقي للمحور.
إشارات A وB في Incremental Encoder
من أشهر أشكال الإنكودر التزايدي وجود قناتين:
Channel A و Channel B
تكون الإشارتان عادة موجتين مربعتين بينهما فرق طور يقارب 90 درجة كهربائية.
هذا الفرق في الطور يسمح للمتحكم بتحديد اتجاه الدوران.
إذا سبقت A القناة B يكون الدوران في اتجاه معين، وإذا سبقت B القناة A يكون الدوران في الاتجاه المعاكس، بحسب تعريف اتجاه الدوران في Data Sheet الخاص بالإنكودر.
توضح Omron أن الفرق بين القناتين A وB في الإنكودرات Quadrature يكون عادة 90 درجة كهربائية.
ومن المهم هنا التفريق بين 90° الكهربائية و90° من دوران عمود المحرك؛ فهي تشير إلى فرق طور الإشارتين وليس إلى أن العمود تحرك ربع دورة.

ما هي إشارة Z؟

تحتوي بعض الإنكودرات التزايدية على قناة ثالثة تسمى:
Z أو Index أو Reference Pulse
وتعطي عادة نبضة مرجعية مرة واحدة خلال كل دورة.
يمكن استخدام هذه النبضة في عمليات تحديد المرجع Homing أو لمزامنة نظام التحكم مع موضع محدد من دورة المحور.
تصف Omron الإنكودر ذي القنوات A وB وZ بأنه Encoder ثلاثي القنوات، وتوضح أن Z هي إشارة Origin تظهر مرة في الدورة.

ماذا تعني A+ وA− وB+ وB−؟

قد نجد في الإنكودرات الصناعية مخارج مثل:
A+ / A−
B+ / B−
Z+ / Z−
وهذا لا يعني وجود ست قياسات مختلفة.
في أنظمة Differential Line Driver يكون لكل إشارة نسخة أصلية ونسخة معكوسة، ويمكن للمستقبل مقارنة الإشارتين معًا لتحسين مقاومة التشويش الكهربائي، وهو أمر مفيد خصوصًا في البيئات الصناعية والكابلات الأطول.
فعلى سبيل المثال تعرض بعض إنكودرات Baumer مخارج A+ وA− وB+ وB− وR+ وR− مع خرج TTL/RS422 أو HTL بحسب الطراز.
لكن هذه المخارج ليست موجودة في كل Encoder؛ فالأمر يعتمد على نوع دائرة الخرج.

ما معنى PPR؟

اختصار PPR يعني غالبًا:
Pulses Per Revolution
أي عدد النبضات لكل دورة.
إذا كان لدينا Encoder بدقة: 1000 PPR
فكل دورة كاملة للمحور تنتج 1000 نبضة وفق طريقة تعريف PPR لدى الشركة المصنعة.
وبالتالي تكون الزاوية المقابلة لنبضة واحدة: Angular step=360∘1000\text{Angular step}=\frac{360^\circ}{1000}
أي: 0.36∘0.36^\circ
لكل نبضة.

الفرق بين PPR وCPR

يجب الانتباه هنا لأن الشركات لا تستخدم المصطلحات دائمًا بالطريقة نفسها.
في Encoder ذي القناتين A وB يستطيع العداد استخدام الحواف الصاعدة والهابطة لكلا القناتين، وهي طريقة تعرف باسم Quadrature x4.
لذلك Encoder موصوف مثلًا بـ1000 نبضة لكل دورة يمكن، في نظام عد x4، أن يوفر: 1000×4=40001000\times4=4000
Count لكل دورة.
وعندها تصبح خطوة العد النظرية: 3604000=0.09∘\frac{360}{4000}=0.09^\circ
لكن يجب دائمًا الرجوع إلى Data Sheet لمعرفة هل الشركة تستخدم PPR أم CPR أم Counts per Revolution وكيف تعرّف كل قيمة.

كيف نحسب السرعة RPM باستخدام الإنكودر؟

يمكن استخدام تردد نبضات الإنكودر لحساب سرعة المحرك.
إذا كان عدد النبضات لكل دورة هو PPR وكان تردد القناة المقاسة هو ff بالهرتز، يمكن حساب سرعة الدوران تقريبًا من: RPM=60×fPPRRPM=\frac{60\times f}{PPR}
مثال:
Encoder = 1000 PPR
وتردد الإشارة = 5000 Hz
إذن: RPM=60×50001000RPM=\frac{60\times5000}{1000} RPM=300RPM=300
أي أن سرعة المحور تساوي 300 دورة في الدقيقة.
ويجب تعديل الحساب إذا كان البرنامج يستخدم Quadrature Counting أو تعريفًا مختلفًا للـCounts.

الإنكودر المطلق Absolute Encoder

على عكس Incremental Encoder، يعطي Absolute Encoder قيمة رقمية فريدة مرتبطة بالموضع الحالي للمحور.
أي أن وحدة التحكم لا تحتاج فقط إلى عدّ النبضات منذ نقطة بداية، وإنما تحصل على قيمة تمثل موضع المحور.
ولهذا يستطيع نظام يستخدم Absolute Encoder معرفة الموضع بعد إعادة التشغيل بطريقة تختلف عن Incremental Encoder، بشرط إعداد ومعايرة النظام بصورة صحيحة.
توضح Siemens أن الموضع في أنظمة Absolute Encoder يستخرج من القيمة المطلقة للإنكودر، وأن عملية Absolute Encoder Adjustment تحفظ العلاقة بين القيمة التي يرسلها الإنكودر والموضع الميكانيكي للمحور.
كما توضح Omron أن Absolute Encoder يعطي كودًا مرتبطًا بزاوية الدوران، بينما Incremental Encoder يعتمد على عد النبضات من نقطة بداية القياس.
Single-turn وMulti-turn Absolute Encoder
الإنكودر المطلق يمكن أن يكون Single-turn أو Multi-turn.
في Single-turn يتم تحديد الموقع داخل دورة واحدة من 0 إلى 360 درجة.
أما Multi-turn فيستطيع بالإضافة إلى موضع العمود داخل الدورة تحديد عدد الدورات التي تم تنفيذها ضمن مجال القياس الذي يدعمه الإنكودر.
وهذا مهم في التطبيقات التي يتحرك فيها المحور أكثر من دورة كاملة، مثل الرافعات والمحاور الخطية التي تتحرك عبر Gearbox أو Screw.

ما هي دقة Absolute Encoder؟

في Absolute Encoder يتم التعبير عن الدقة غالبًا بعدد الـBits أو بعدد المواضع في الدورة.
إذا كان الإنكودر بدقة n bit فإن عدد المواضع النظرية في الدورة يساوي: 2n2^n
ودقة الزاوية النظرية تكون: Angular Resolution=360∘2n\text{Angular Resolution}=\frac{360^\circ}{2^n}
مثال 4 bit: 24=162^4=16
أي 16 موضعًا في الدورة، وبالتالي: 360÷16=22.5∘360÷16=22.5^\circ
أما Encoder بدقة 8 bit: 28=2562^8=256
فتكون الدقة: 360÷256=1.40625∘360÷256=1.40625^\circ
أما 16 bit: 216=655362^{16}=65536
وبالتالي: 360÷65536≈0.00549∘360÷65536\approx0.00549^\circ
وهذا يصحح أحد الأخطاء الموجودة في النسخة القديمة من هذا المقال.

ما هو Gray Code؟

تستخدم بعض Absolute Encoders طريقة ترميز تسمى Gray Code.
الميزة الأساسية لـGray Code أن الانتقال من قيمة إلى القيمة التالية يؤدي إلى تغير Bit واحد فقط في كل مرة.
وهذا يقلل احتمال الحصول على قراءة غير صحيحة أثناء انتقال القرص من موضع إلى آخر مقارنة بالحالات التي تتغير فيها عدة Bits في اللحظة نفسها.
فعلى سبيل المثال، Omron توضح أن Binary Code قد تتغير فيه عدة Bits بين موضعين، بينما Gray Code مصمم بحيث يتغير Bit واحد فقط بين قيمتين متتاليتين.
ولا يعني ذلك أن جميع Absolute Encoders الحديثة ترسل Gray Code مباشرة عبر أسلاك منفصلة؛ فالإنكودرات الحديثة قد تستخدم Interfaces رقمية أو شبكات صناعية مختلفة لنقل بيانات الموضع.

ما هي Interfaces المستخدمة مع Absolute Encoder؟

بحسب نوع الإنكودر ونظام التحكم، يمكن أن تنتقل بيانات الموضع باستخدام واجهات مختلفة مثل SSI، BiSS، CANopen أو Interfaces صناعية أخرى.
لذلك عند اختيار Encoder لا يكفي معرفة أنه Absolute فقط؛ يجب التأكد من توافق واجهة الاتصال مع PLC أو Drive أو Motion Controller المستخدم.

الفرق بين Incremental وAbsolute Encoder

الخاصيةIncremental EncoderAbsolute Encoderنوع المعلومات نبضات نسبية موضع رقمي مطلق
معرفة الموضع بعد Power ON يحتاج غالبًا إلى Homing يمكن استعادة الموضع المطلق حسب النظام
الإشارات الشائعة A، B، Z Code أو Interface رقمية
التكلفة غالبًا أبسط وأقل تكلفة عادة أعلى
الاستخدام السرعة والاتجاه والموضع النسبي تحديد الموضع المطلق
التطبيقات محركات، Conveyors، قياس السرعة Robotics، Motion Control، Positioning

كيف نستخدم Encoder مع PLC؟

عند توصيل Incremental Encoder مع PLC، تكون النبضات عادة أسرع من أن تُقرأ كإشارات Digital Input عادية في بعض التطبيقات.
لذلك يتم استخدام:
High Speed Counter – HSC
أو وحدة Technology/Motion مخصصة تستطيع استقبال الإشارات بسرعات عالية.
يقوم PLC بعدها بعد النبضات، وتحديد اتجاه الحركة من A وB، واستخدام Z عند الحاجة، ثم تحويل عدد النبضات إلى زاوية أو مسافة أو سرعة.
أما مع Absolute Encoder فقد يتم نقل قيمة الموضع من خلال Interface مخصصة أو شبكة صناعية، حسب طراز الإنكودر ووحدة التحكم.
مثال عملي: قياس حركة Conveyor
لنفترض وجود Encoder مثبت على بكرة سير ناقل.
إذا كان الإنكودر يعطي 1000 Count لكل دورة، وكان محيط البكرة:
500 mm
فكل Count يمثل حركة خطية مقدارها: 5001000=0.5 mm\frac{500}{1000}=0.5\text{ mm}
إذا سجل الـPLC عدد:
2000 Count
فإن السير تحرك: 2000×0.5=1000 mm2000\times0.5=1000\text{ mm}
أي مترًا واحدًا.
هذه الطريقة تستخدم كثيرًا في أنظمة القياس، القص حسب الطول، التعبئة والتغليف ومزامنة حركة خطوط الإنتاج.

أنواع دوائر خرج Incremental Encoder

لا يكفي معرفة PPR فقط عند شراء Encoder؛ يجب معرفة نوع الخرج الكهربائي أيضًا.
من الأنواع الشائعة NPN Open Collector، PNP، Push-Pull/HTL وTTL/RS422 Line Driver.
فعلى سبيل المثال، تعرض Omron إنكودرات Incremental بخروج NPN Open Collector، بينما تعرض Baumer نماذج صناعية بخيارات TTL/RS422 وHTL Push-Pull.
يجب أن يكون خرج الإنكودر متوافقًا مع مدخل PLC أو Drive من ناحية الجهد ونوع الإشارة والتردد الأقصى.

كيف تختار Encoder مناسبًا؟

عند اختيار الإنكودر يجب التأكد من عدة أمور رئيسية: نوع القياس المطلوب Incremental أو Absolute، الدقة أو PPR، السرعة القصوى، جهد التغذية، نوع خرج الإشارة، واجهة الاتصال، قطر ونوع العمود، طريقة التثبيت، درجة الحماية IP، درجة الحرارة وظروف الاهتزاز، بالإضافة إلى توافق تردد الخرج مع مدخل الـPLC أو Drive.
فمثلًا توجد إنكودرات صناعية يمكن أن تصل دقتها إلى عشرات آلاف النبضات لكل دورة وتعمل بترددات خرج تصل إلى مئات الكيلوهرتز، لذلك لا بد من مراجعة Data Sheet لكل تطبيق بدل الاعتماد على مواصفات عامة.
حماية الإنكودر من التشويش الكهربائي
إشارات Encoder، خصوصًا عند الترددات العالية والمسافات الطويلة، يمكن أن تتأثر بالتداخل الكهرومغناطيسي EMI.
لذلك يجب الالتزام بتعليمات الشركة المصنعة بخصوص التأريض والـShield، وإبعاد كابل Encoder قدر الإمكان عن كابلات القدرة والمحركات والكونتاكتورات والـVFD، واختيار نوع الإشارة المناسب للمسافة والبيئة الصناعية.
توصي SICK في بعض أنظمة الإنكودر بالتوصيل التفاضلي لتحسين جودة الإشارة، كما تحدد تعليماتها طريقة توصيل Shield وفق نوع الجهاز.
ولا توجد قاعدة واحدة للتأريض تصلح لجميع الإنكودرات؛ Data Sheet وتعليمات الشركة المصنعة هي المرجع الأساسي.
الحماية الميكانيكية وتركيب Encoder
التركيب الميكانيكي مهم بقدر أهمية التوصيل الكهربائي.
عدم محاذاة محور الإنكودر مع محور المحرك يمكن أن يسبب تحميلًا شعاعيًا أو محوريًا غير مرغوب فيه على Bearings الخاصة بالإنكودر ويؤثر على عمره.
كما يجب اختيار Coupling مناسب، وعدم تجاوز السرعة أو الحمل المحوري والشعاعي المسموح به، ومراعاة درجة الحماية IP وظروف الغبار والرطوبة والاهتزاز والصدمات.
المواصفات المسموحة تختلف اختلافًا كبيرًا حسب المنتج؛ لذلك يجب الرجوع إلى Data Sheet. فعلى سبيل المثال، تحدد بعض إنكودرات Baumer بصورة مستقلة السرعة القصوى، الحمل المحوري والشعاعي، درجة IP ومقاومة الاهتزاز والصدمات.

أشهر استخدامات Encoder

يستخدم الإنكودر في التحكم بسرعة المحركات، تحديد موضع المحاور، Servo Systems، ماكينات CNC، الروبوتات، المصاعد، خطوط الإنتاج، Conveyors، أنظمة القص حسب الطول، التعبئة والتغليف، ماكينات الطباعة، الرافعات وأنظمة Motion Control.
وجود Encoder يجعل نظام التحكم قادرًا على معرفة ما حدث فعليًا في الحركة بدل الاعتماد فقط على الأمر الذي تم إرساله إلى المحرك.
وهذا هو أساس مفهوم Closed Loop Control في الكثير من تطبيقات التحكم بالحركة.

الخلاصة

الـ Encoder هو حساس يحول الحركة الميكانيكية إلى معلومات يستطيع نظام التحكم استخدامها لتحديد الموضع والسرعة والاتجاه.
الـIncremental Encoder يولد نبضات يتم عدها بواسطة وحدة التحكم، وغالبًا يستخدم قنوات A وB لتحديد مقدار واتجاه الحركة، وقد يحتوي على قناة Z كمرجع.
أما Absolute Encoder فيعطي قيمة فريدة مرتبطة بموضع المحور، ويمكن أن يكون Single-turn أو Multi-turn.
وعند اختيار Encoder يجب عدم التركيز على الدقة وحدها؛ بل يجب دراسة نوع الخرج، واجهة الاتصال، جهد التشغيل، التردد الأقصى، طريقة التركيب والظروف البيئية، والتأكد من توافقه مع PLC أو Drive المستخدم.

المصادر والمراجع

Omron Industrial Automation – Rotary Encoders Technical Guide وRotary Encoder FAQ.
SICK – Overview and Application for Encoders.
Siemens Industry – Encoder and Axis Function Documentation.
Baumer –Incremental Encoder Technical Data and Interfaces.

1 تعليقات

يسعدنا مشاركتك معنا

أحدث أقدم

اعلان بداية المقال

اعلان اخر المقال