الحسّاسات والمشغّلات للمتحكّمات · الفصل 8 — الحسّاسات الصناعيةחיישנים תעשייתיים · 33.102⌂📚🏠
الفصل 8

الحسّاسات الصناعية

חיישנים תעשייתיים
الصفّان الحادي عشر والثاني عشر · 6 ساعات تعليمية

في المصنع لا نستخدم الوحدات الصغيرة التي عرفناها على لوحة التجارب، بل حسّاسات متينة في غلاف مغلق، تعمل بجهد 24 V وتتحمّل الغبار والماء والاهتزاز والضجيج الكهربائي. في هذا الفصل نتعرّف على حسّاسات التلامس وحسّاسات الاقتراب، على المخرج القياسي NPN و PNP، وعلى حلقة التيار 4–20 mA، ونتعلّم كيف نوصلها بالمتحكّم بأمان.

في نهاية هذا الفصل سنعرف أن:
  • نميّز بين التلامس المفتوح عادةً (NO) والمغلق عادةً (NC)، ونشرح لماذا تُوصل دوائر التوقّف بتلامس NC.
  • نصف مبدأ عمل مفتاح نهاية المشوار، مفتاح الضغط، مفتاح العوّامة ومنظّم الحرارة.
  • نشرح مبدأ حسّاس الاقتراب الحثّي، السعوي والضوئي، ونختار الحسّاس الملائم.
  • نوصل حسّاسا ثلاثي الأسلاك بمخرج NPN أو PNP بالحمل وبمدخل PLC.
  • نوصل حسّاس 24 V بمتحكّم 5 V عبر وحدة مقرن ضوئي جاهزة، ونعدّ القطع على ناقل.
  • نقرأ إشارة 4–20 mA بالمتحكّم، نحوّلها إلى وحدات هندسية ونكشف انقطاع السلك.

חיישני מגע – حسّاسات التلامس (Contact Sensors)

الحسّاس الصناعي (חיישן תעשייתי): حسّاس مبنيّ للعمل الدائم في خط إنتاج: غلاف مغلق ضد الغبار والماء، تغذية قياسية (غالبا 24 V تيار مستمر) ومخرج قياسي يُوصل مباشرة بالمتحكّم المنطقي القابل للبرمجة (PLC): تلامس، ترانزستور NPN/PNP، أو تيار 4–20 mA.

أبسطها حسّاسات التلامس: جزء ميكانيكي يتحرّك (ذراع، غشاء، عوّامة، شريحة معدنية) فيفتح تلامسا كهربائيا أو يغلقه. مخرجها مفتاح له حالتان، مثل الزرّ الذي عرفناه في الفصل 3.

مفتاح نهاية المشوار – מפסק גבול:

NO NC
مفتاح نهاية المشوار (מפסק גבול): مفتاح ميكانيكي يُركّب في نهاية مسار جزء متحرّك (باب، عربة، أسطوانة). عندما يصل الجزء إليه يضغط ذراعه فتتغيّر حالة تلامساته. يُستعمل لإيقاف الحركة عند الحدّ ولمعرفة موقع الجزء.

في المفتاح ثلاثة أطراف: المشترك COM، والتلامس المفتوح عادةً NO (מגע פתוח במנוחה) الذي يُغلق عند ضغط الذراع، والتلامس المغلق عادةً NC (מגע סגור במנוחה) الذي يُفتح عند ضغطه. «عادةً» تعني: في حالة الراحة، بدون ضغط على الذراع.

جسم متحرّكغلاف المفتاحذراع وبكرةCOMNONC
الجسم المتحرّك يضغط البكرة فيتحرّك الذراع
NONC
رمزا التلامس NO و NC؛ البكرة فوقهما تعني أنهما يتحرّكان بذراع

الأمان عند العطل: لماذا NC في دوائر التوقّف؟ – כשל בטוח

الأمان عند العطل (כשל בטוח (Fail-safe)): مبدأ تصميم: إذا حدث عطل (سلك مقطوع، طرف مفكوك، تلامس محروق) تنتقل الآلة إلى الحالة الآمنة، أي تتوقّف.

أكثر الأعطال شيوعا هو انقطاع الدائرة. بتلامس NO إشارة «توقّف» هي إغلاق الدائرة، وسلك مقطوع يمنعها إلى الأبد دون أن ننتبه. بتلامس NC الدائرة مغلقة في العمل العادي وإشارة التوقّف هي فتحها، فيبدو السلك المقطوع للمتحكّم مثل الوصول إلى الحدّ، والآلة تتوقّف.

ماذا حدث؟التوقّف بتلامس NOالتوقّف بتلامس NC
عمل عاديالدائرة مفتوحة، الآلة تعملالدائرة مغلقة، الآلة تعمل
وصل الجزء إلى الحدّالدائرة تُغلق، الآلة تتوقّفالدائرة تُفتح، الآلة تتوقّف
انقطع السلكلا شيء يتغيّر: الآلة لن تتوقّف عند الحدّ!الدائرة تُفتح، الآلة تتوقّف (آمن)
تحذير: دوائر الطوارئ والأمان في الآلات الحقيقية تخضع لمعايير خاصة، وفيها مفاتيح «فتح قسري» وأجهزة أمان معتمدة. متحكّم المختبر لا يحلّ محلّها؛ نتعلّم هنا المبدأ فقط.

نوصل التلامس NC بين D3 والأرضي مع مقاومة الرفع الداخلية. في العمل العادي نقرأ LOW؛ عند ضغط الذراع أو انقطاع السلك نقرأ HIGH فنوقف المحرّك. المحرّك ممثَّل بمصباح بيان على D8 (في الفصل 10 نشغّل محرّكا حقيقيا عبر مرحّل).

Arduino UnoD3D8GND220 ΩNCمفتاح نهاية المشوارLED = المحرّك
مفتاح نهاية المشوار بتلامس NC بين D3 والأرضي، ومصباح بيان على D8 بدل المحرّك
إيقاف المحرّك بمفتاح نهاية المشوار NC Arduino Uno · limit_nc_stop.ino
const int LIMIT = 3;   // NC contact to GND, INPUT_PULLUP
const int MOTOR = 8;   // LED stands for the motor relay

int lastState = -1;

void setup() {
  pinMode(LIMIT, INPUT_PULLUP);
  pinMode(MOTOR, OUTPUT);
  Serial.begin(9600);
}

void loop() {
  int s = digitalRead(LIMIT);   // LOW = contact closed = normal
  bool run = (s == LOW);
  digitalWrite(MOTOR, run ? HIGH : LOW);
  if (s != lastState) {         // print only on change
    lastState = s;
    Serial.print("D3 = ");
    Serial.print(s);
    if (run) Serial.println("  -> motor ON");
    else     Serial.println("  -> STOP (limit or broken wire)");
  }
}
Serial Monitor · قراءة نموذجية
D3 = 0  -> motor ON
D3 = 1  -> STOP (limit or broken wire)
D3 = 0  -> motor ON
D3 = 1  -> STOP (limit or broken wire)

السطور: البوّابة تتحرّك؛ وصلت إلى الحدّ؛ رجعت فتحرّر الذراع؛ قطعنا السلك عمدا — فتوقّف المحرّك كما عند الحدّ. في آلة حقيقية لا تعود الحركة وحدها بعد التوقّف، بل بعد ضغط زرّ تشغيل جديد.

سؤال 8.1: ما السطر الذي يُطبع إذا انفكّ السلك الأرضي للمفتاح والبوّابة في منتصف الطريق؟ وماذا يحدث للمحرّك؟
خطأ شائع: أن نوصل مفتاح التوقّف بتلامس NO «لأن البرنامج أبسط». سلك مقطوع عندها يُبطل التوقّف بلا أي إشارة.
▶تجربة حية — بوّابة مع مفاتيح نهاية المشوارمحاكاة حيّة: بوّابة يحرّكها محرّك في الاتجاهين، ومفتاحا نهاية المشوار يوقفانها عند الحدّين.
⚠
المختبر غير متاح الآن. المادة في هذا الفصل كاملة من دونه — نواصل القراءة، ونعود إلى التجربة لاحقا أو نفتحها مباشرة من الرابط الذي تحت الإطار.
https://fahed-lab.com/control/gate_ls
نفتح المختبر في صفحة مستقلة ↗ fahed-lab.com/control/gate_ls

مفتاح الضغط – מפסק לחץ (פרסוסטט):

Pضبط النقطةنابضغشاء
مبدأ مفتاح الضغط
P
مفتاح الضغط (מפסק לחץ (פרסוסטט)): مفتاح يغيّر حالة تلامسه عندما يتجاوز ضغط الهواء أو السائل نقطة ضبط. الضغط يدفع غشاءً ضد نابض، ومسمار الضبط يحدّد قوة النابض، أي نقطة العمل.

لكل مفتاح ضغط فرق تشغيل (הפרש מיתוג) ΔP ، وهو التخلّف الذي يمنع الوصل والفصل السريع: ضاغط يُفصل عند 8 bar وفرق تشغيله 1.5 bar يعود إلى العمل عند 6.5 bar.

سؤال 8.2: مفتاح ضغط يفصل مضخّة مياه عند 4.5 bar ويعيد تشغيلها عند 3 bar. ما فرق التشغيل؟

مفتاح العوّامة – מצוף (מפסק מפלס):

عوّامة ومغناطيسمفتاح Reedداخل الأنبوبسائل
مفتاح عوّامة بأنبوب
FLOAT
مفتاح العوّامة (מצוף (מפסק מפלס)): مفتاح يكشف وصول سائل إلى مستوى معيّن. عوّامة فيها مغناطيس تنزلق على أنبوب مع سطح السائل، وداخل الأنبوب مفتاح مغناطيسي صغير (Reed، מגע ריד) يُغلق أو يُفتح عندما يقترب المغناطيس.

في كثير من الطرازات نحصل على NO أو NC بقلب العوّامة. لا تيار في السائل نفسه، ولذلك يناسب الماء والوقود.

سؤال 8.3: مضخّة تُفرغ بئر تجميع: تعمل عندما يرتفع الماء إلى العوّامة وتتوقّف عندما ينخفض. هل نختار تلامسا يُغلق عند ارتفاع الماء أم يُفتح؟ ولماذا يُضاف عادةً مفتاح عوّامة ثانٍ في الأسفل؟

منظّم الحرارة ثنائي المعدن – תרמוסטט דו-מתכתי:

منظّم الحرارة (תרמוסטט): مفتاح يفتح تلامسه أو يغلقه عند درجة حرارة معيّنة (الثرموستات). في الطراز البسيط يحرّك التلامس شريحة ثنائية المعدن (פס דו-מתכתי): شريحتان من معدنين مختلفين ملحومتان على طولهما. عند التسخين يتمدّد أحد المعدنين أكثر من الآخر فيصبح أطول، ولأن الشريحتين ملتصقتان تنحني الشريحة كلها نحو المعدن الآخر.
فولاذنحاس أصفربارد: التلامس مغلقساخن: الشريحة تنحني والتلامس يُفتح
النحاس الأصفر في الأسفل يتمدّد أكثر، فتنحني الشريحة إلى الأعلى ويُفتح التلامس

عندما تبرد الشريحة تعود مستقيمة فيُغلق التلامس من جديد. هكذا يعمل منظّم الحرارة في المكواة والسخّان: يفصل التسخين عند الحرارة المطلوبة ويعيده عندما تنخفض.

سؤال 8.4: نريد منظّم حرارة يُغلق تلامسه عند التسخين (لتشغيل مروحة). أين نضع النحاس الأصفر بالنسبة للتلامس الثابت؟
تحذير: منظّم الحرارة ومفتاح الضغط يتحكّمان كثيرا بأحمال على شبكة 230 V (سخّان، ضاغط، مضخّة). لا نفتح غلافها ولا نوصلها بأنفسنا: التوصيل بالشبكة فقط بواسطة كهربائي مؤهّل أو بإشراف المعلّم وعبر وحدة معتمدة. بالمتحكّم نقرأ تلامسا منفصلا ذا جهد منخفض فقط.

חיישני קרבה – حسّاسات الاقتراب (Proximity Sensors)

حسّاس الاقتراب (חיישן קרבה) يكشف الجسم بدون أن يلمسه. لا تلامس ميكانيكي فيه، فلا يبلى ولا يرتدّ، ويعمل ملايين المرات وبسرعة. مخرجه ترانزستور إلكتروني (البند 8.3).

حسّاس الاقتراب الحثّي – חיישן קרבה השראתי:

M18
حسّاس الاقتراب الحثّي (חיישן קרבה השראתי): في وجهه ملفّ يغذّيه مذبذب فينشأ أمامه مجال مغناطيسي متناوب. جسم معدني يقترب تنشأ فيه تيارات دوّامية تأخذ طاقة من المجال، فتهبط سعة الذبذبة، ويقلب المقارن المخرج. يكشف المعادن فقط.
هدف معدنيالوجه الحسّاسSnالمذبذبالمقارندائرة المخرج
حثّي: الملفّ في الوجه الحسّاس، والهدف المعدني على المسافة Sn
ضبط الحساسيةبلاستيك، خشب، ماءالوجه الحسّاسSnالمذبذبالمقارندائرة المخرج
سعوي: الجسم غير المعدني يغيّر السعة؛ في الخلف مقاومة متغيّرة لضبط الحساسية
مسافة الاستشعار الاسمية Sn (מרחק חישה נומינלי): المسافة التي يقلب عندها الحسّاس مخرجه أمام هدف قياسي من الفولاذ، وهي مكتوبة في ورقة البيانات. الحسّاس المسطّح (מותקן בשקע, flush) يُركّب داخل المعدن حتى وجهه، فمسافته أقصر.
قيم نموذجية حسب ورقة البياناتM12M18M30
Sn للحسّاس المسطّح2 mm5 mm10 mm
Sn لغير المسطّح4 mm8 mm15 mm

الرقم M12 أو M18 أو M30 هو قطر الغلاف المسنّن بالمليمتر: كلما كبر الحسّاس كشف من مسافة أبعد. المعادن غير الحديدية، مثل الألومنيوم والنحاس، تتأثّر بالمجال أقل من الفولاذ، فيكشفها الحسّاس من مسافة أقصر بكثير، أحيانا أقل من نصف Sn.

خطأ شائع: أن نركّب الحسّاس على المسافة Sn المكتوبة على غلافه بالضبط: عندها يتردّد المخرج، ومع ألومنيوم لا يكشف شيئا. نركّبه أقرب من ذلك بهامش واضح، ونجرّبه مع القطع الحقيقية.

حسّاس الاقتراب السعوي – חיישן קרבה קיבולי:

CAP
حسّاس الاقتراب السعوي (חיישן קרבה קיבולי): في وجهه قطب يشكّل مع ما أمامه مكثّفا. أي جسم يقترب، معدنيا أو غير معدني، يغيّر السعة فيقلب المخرج. يكشف تقريبا كل مادة: بلاستيك، خشب، ورق، حبوب، ماء (الرسم الأيسر في بند الحسّاس الحثّي).

بمقاومة الضبط نختار أقل حساسية تكشف المادة المطلوبة. مثال شائع: نلصق الحسّاس على جدار خزّان بلاستيكي فيكشف السائل في الداخل ولا يكشف الجدار الرقيق. الماء يُكشف من مسافة أكبر من البلاستيك والخشب.

خطأ شائع: أن نضبط الحساسية على الحدّ الأقصى «لنكشف أكثر»: عندها يكشف الحسّاس الرطوبة والغبار على وجهه ويعطي كشفا كاذبا.

حسّاس الاقتراب الضوئي – חיישן קרבה אופטי:

OPT
حسّاس الاقتراب الضوئي (חיישן קרבה אופטי): فيه مرسل ضوء (ديود باعث، أحمر أو تحت الأحمر) ومستقبل حسّاس للضوء. يكشف الجسم لأنه يقطع الشعاع أو لأنه يعكسه. له ثلاثة أنواع رئيسية:
أ. حاجز ضوئي: مرسل ومستقبل منفصلانمرسلمستقبلب. انعكاسي بعاكس: الشعاع يرجع من العاكسمرسل ومستقبلعاكسج. انعكاس منتشر: الجسم نفسه يعكس الضوءمرسل ومستقبلجسم
أنواع الحسّاس الضوئي
سؤال 8.5: ناقل عرضه 3 m ، ولا يمكن أن نمدّ أسلاكا إلى جهته الثانية. أيّ حسّاس ضوئي نختار لعدّ الصناديق الكرتونية؟

مقارنة بين الحسّاسات الصناعية – השוואה בין חיישנים תעשייתיים:

في الجدول أيضا الحسّاس فوق الصوتي الصناعي: يعمل بمبدأ الوحدة HC-SR04 من الفصل 7، لكن في غلاف صناعي. يكشف كل جسم يعكس الصوت مهما كان لونه أو شفافيته، ولذلك يقيس كثيرا مستوى خزّان من أعلاه.

الحسّاسالمبدأماذا يكشفالمدى النموذجيالمخرج
نهاية المشوارذراع وتلامسجسم يضغط الذراعتلامس مباشرNO/NC
الضغط / العوّامة / الحرارةغشاء، عوّامة، شريحةضغط، مستوى، حرارة عند نقطة الضبطنقطة الضبطNO/NC
اقتراب حثّيتيارات دوّاميةالمعادن فقط2–15 mmNPN/PNP
اقتراب سعويتغيّر السعةكل مادة تقريباحتى نحو 25 mmNPN/PNP
ضوئيقطع الشعاع أو انعكاسهجسم غير شفافأقل من متر حتى عشرات الأمتارNPN/PNP
فوق صوتي صناعيزمن الصدىكل جسم يعكس الصوت، حتى الزجاج والسوائلعشرات السنتيمترات حتى بضعة أمتارNPN/PNP أو 4–20 mA
ملاحظة: المديات قيم نموذجية حسب أوراق البيانات؛ لكل طراز نعتمد على ورقة بيانات الصانع.
على اللوحات الثلاث: حسّاس 24 V يتّصل باللوحات الثلاث بالطريقة نفسها: عبر وحدة مقرن ضوئي جاهزة. نغذّي جانب خرج الوحدة من جهد اللوحة: 5 V في Uno ، و 3.3 V في ESP32 والراسبيري باي.
▶تجربة حية — الحسّاسات الرقمية الصناعيةمحاكاة حيّة: معدن، بلاستيك وكرتون أمام حسّاس حثّي وسعوي وضوئي ومفتاح نهاية مشوار؛ وتوصيل NPN مقابل PNP.
⚠
المختبر غير متاح الآن. المادة في هذا الفصل كاملة من دونه — نواصل القراءة، ونعود إلى التجربة لاحقا أو نفتحها مباشرة من الرابط الذي تحت الإطار.
https://fahed-lab.com/hashmal/sensors#dsens
نفتح المختبر في صفحة مستقلة ↗ fahed-lab.com/hashmal/sensors#dsens

חיישן תלת-גידי: מוצא NPN ומוצא PNP – الحسّاس ثلاثي الأسلاك: مخرج NPN ومخرج PNP (Three-Wire DC Sensor)

الحسّاس ثلاثي الأسلاك (חיישן תלת-גידי): حسّاس اقتراب يُغذّى بجهد مستمر (10–30 V ، والاسمي 24 V — قيمة نموذجية حسب ورقة البيانات)، له سلكا تغذية وسلك مخرج. الألوان وأرقام أطراف الموصل حسب المعيار IEC 60947-5-2: بنّي BN (1) للموجب +24 V ، أزرق BU (3) لـ 0 V ، أسود BK (4) للمخرج، وفي الحسّاس رباعي الأسلاك أبيض WH (2) لمخرج ثانٍ معاكس.
+24 V0 Vالحسّاسكشفالحملمدخل PLCIBN 1BK 4BU 3
مخرج PNP: الحمل بين الأسود و 0 V
+24 V0 Vالحسّاسكشفالحملمدخل PLCIBN 1BK 4BU 3
مخرج NPN: الحمل بين +24 V والأسود
ملاحظة: ترانزستور المخرج صغير: يتحمّل عادةً 100–200 mA ، قيمة نموذجية حسب ورقة البيانات. هذا يكفي لمدخل PLC ولمصباح بيان أو مرحّل صغير، أما مصباح كبير أو ملفّ ملامس فنشغّله عبر مرحّل وسيط.
سؤال 8.6: بينما الحسّاس لا يكشف شيئا والحمل موصول، ماذا نقيس على السلك الأسود بالنسبة لـ 0 V في حسّاس PNP؟ وفي حسّاس NPN؟
خطأ شائع: أن نوصل حسّاس PNP بمدخل PLC مشتركه على +24 V (مدخل لـ NPN): عند الكشف يكون طرفا المدخل على 24 V ، فلا تيار والمدخل لا يرى شيئا، مع أن الحسّاس سليم ومصباحه يضيء. نفحص نوع المخرج على الغلاف ونوع المدخل في ورقة بيانات الـ PLC.

חיבור חיישן 24 V לבקר – توصيل حسّاس 24 V بالمتحكّم (Interfacing a 24 V Sensor)

عند الكشف يعطي مخرج PNP نحو 24 V ، وأقصى جهد مسموح على طرف Arduino Uno نحو 5.5 V (ورقة بيانات ATmega328P)؛ ولوحة ESP32 تعمل بـ 3.3 V ولا تتحمّل 5 V. لذلك نحتاج دائما إلى دائرة ملاءمة بين الحسّاس والمتحكّم.

تحذير: لا نوصل أبدا السلك الأسود لحسّاس 24 V بطرف المتحكّم، ولا «للحظة»: الطرف يحترق وقد يتلف المتحكّم كله. ونفحص قطبية المصدرين مرتين قبل التشغيل.

الحلّ الجاهز: وحدة المقرن الضوئي – מצמד אופטי:

المقرن الضوئي (מצמד אופטי): ديود باعث وترانزستور ضوئي في غلاف معتم واحد. التيار في الديود يضيء الترانزستور فيوصل. لا اتصال كهربائي بين الجهتين، وهذا هو العزل الغلفاني (בידוד גלווני): جهة 24 V وجهة المتحكّم لا تشتركان حتى في الأرضي.
PNP 24VBNBKBU+24V4.7 kΩ0 VPC817Arduino UnoD2GNDجانب 24 Vجانب المتحكّم
حسّاس PNP موصول بـ D2 عبر المقرن الضوئي PC817؛ الخط المتقطّع هو حدّ العزل

في السوق وحدات جاهزة لهذا الغرض: لوحة صغيرة عليها مقرن ضوئي مثل PC817 والمقاومة المناسبة لـ 24 V ، وفيها طرفا مدخل وطرفا مخرج. في جهة الحسّاس نوصل السلك الأسود بمدخل الوحدة و 0 V بطرفها الثاني؛ المقاومة 4.7 kΩ تحدّ تيار الديود الباعث إلى بضعة ميلي أمبير. في جهة المتحكّم يعمل الترانزستور كزرّ إلى الأرضي مع INPUT_PULLUP: عند الكشف نقرأ LOW، وبدون كشف نقرأ HIGH.

سؤال 8.7: حسّاس PNP موصول عبر المقرن الضوئي كما في الرسم. ماذا نقرأ على D2 عندما يكشف الحسّاس جسما؟ وعندما لا يكشف؟ ولماذا لا نخاف على المتحكّم إذا حدث قصر في جهة 24 V؟

برنامج: عدّ القطع على ناقل – ספירת פריטים על מסוע:

حسّاس حثّي PNP موصول عبر المقرن الضوئي بـ D2، وكل علبة معدنية تعطي نبضة LOW. الحسّاس لا يرتدّ، لكن في المصنع تشويش من المحرّكات، وقد يتردّد المخرج عندما تكون حافة العلبة على حدّ المسافة. لذلك نقبل الحالة الجديدة فقط إذا بقيت ثابتة 20 ms (إزالة الارتداد بالزمن).

عدّاد قطع على ناقل مع إزالة الارتداد Arduino Uno · conveyor_counter.ino
const int SENSOR = 2;          // optocoupler output, LOW = object
const unsigned long DEBOUNCE_MS = 20;

int stableState = HIGH, lastRaw = HIGH;
unsigned long lastChange = 0, count = 0;

void setup() {
  pinMode(SENSOR, INPUT_PULLUP);
  Serial.begin(9600);
  Serial.println("Conveyor counter ready");
}

void loop() {
  int raw = digitalRead(SENSOR);
  if (raw != lastRaw) {        // input moved: restart the timer
    lastRaw = raw;
    lastChange = millis();
  }
  if (millis() - lastChange >= DEBOUNCE_MS && raw != stableState) {
    stableState = raw;         // the new state is stable
    if (stableState == LOW) {  // a new object reached the sensor
      count++;
      Serial.print("t = "); Serial.print(millis());
      Serial.print(" ms  count = "); Serial.println(count);
    }
  }
}
Serial Monitor · قراءة نموذجية
Conveyor counter ready
t = 420 ms  count = 1
t = 1170 ms  count = 2
t = 1923 ms  count = 3
t = 2620 ms  count = 4

مرّت أربع علب بدأت عند 400، 1150، 1900، 2600 ms. نبضة تشويش طولها 3 ms عند 800 ms لم تُعدّ. في العلبة الثالثة تردّد المخرج بعد 2 ms فبدأ المؤقّت من جديد، ولذلك ظهر العدد بعد 23 ms من بدايتها بدل 20 ms.

سؤال 8.8: لماذا لا يُعدّ نبض التشويش القصير عند 800 ms؟ وماذا يحدث لو جعلنا DEBOUNCE_MS صفرا؟

לולאת זרם 4–20 mA – حلقة التيار 4–20 mA (4–20 mA Current Loop)

الضغط والمستوى والحرارة والتدفّق كميات تماثلية، والحسّاس قد يكون على بعد مئات الأمتار من لوحة التحكّم. هنا نستعمل المرسِل (משדר): حسّاس مع دائرة تحوّل القياس إلى تيار. هكذا تعمل مرسِلات الحرارة والضغط والمستوى في المصنع.

4-20mA
حلقة التيار 4–20 mA (לולאת זרם 4–20 mA): دائرة توالٍ فيها مصدر (عادةً 24 V)، المرسِل، أسلاك الخط ومقاومة القياس عند المتحكّم. المرسِل يضبط التيار: 4 mA عند بداية مدى القياس و 20 mA عند نهايته، وبينهما خطّيا.
+−24 Vمرسل ضغط0–10 bar+−PRw250 Ω4.7 kΩ5VArduino UnoA0GNDI
المصدر، المرسِل، مقاومة الأسلاك Rw ومقاومة القياس 250 Ω؛ A0 يقرأ عبر 4.7 kΩ وديود حماية إلى 5 V

التحويل بسيط لأن العلاقة خطّية: 4 mA هو صفر المدى، 20 mA هو نهايته، وبينهما 16 mA تغطّي المدى كله. في المنتصف تماما، 12 mA ، نكون في نصف المدى.

من تيار الحلقة إلى الكمية المقيسة · המרה ליחידות הנדסיות
x = xmin + I − 416·(xmax − xmin)
الرمزالمعنىوحدة القياس
Iتيار الحلقة[mA]
xالكمية المقيسة بالوحدات الهندسية (יחידות הנדסיות)[bar, °C, m]
xmin , xmaxبداية مدى المرسِل ونهايته (عند 4 mA و 20 mA)[bar, °C, m]

المتحكّم يقرأ جهدا، فنمرّر التيار في مقاومة القياس (נגד מדידה (שנט)) دقيقة 250 Ω. حسب قانون أوم يصبح 4 mA جهد 1 V و 20 mA جهد 5 V: المدى 1–5 V داخل مدى المحوّل التماثلي-الرقمي في Uno. السلسلة كلها: القيمة الخام N ← الجهد ← التيار ← الضغط.

051041220P [bar]I [mA]عطل: أقل من 3.8 mA1 V5 V
مرسِل 0–10 bar: التيار خطّي مع الضغط، وتحت 3.8 mA عطل
مثال 8.1
مرسِل ضغط 0–10 bar ، والتيار في الحلقة 12.8 mA. نحسب الضغط، الجهد على مقاومة القياس والقيمة الخام في Arduino Uno.
الحل:
P = 0 + 12.8 − 416 · (10 − 0) = 5.5 bar
V = 12.8·10−3 · 250 = 3.2 V
N = 3.25 · 1023 = 654.72 ≈ 655
P = 5.5 bar , N = 655

برنامج: قراءة مرسِل ضغط وكشف انقطاع السلك – קריאת משדר לחץ וזיהוי נתק:

في الصناعة يُعدّ القياس سليما بين نحو 3.8 mA و 20.5 mA ، وتحت 3.8 mA عطل (توصية NAMUR NE 43). البرنامج يحوّل القيمة الخام إلى جهد، ثم إلى تيار، ثم إلى ضغط. 20 mA يعطي 5 V ، أي N = 1023 ، والمحوّل لا يميّز بينه وبين تيار أكبر؛ لذلك نطبع عندها «المدى الكامل».

مرسِل ضغط 0–10 bar مع كشف العطل Arduino Uno · loop_4_20.ino
const int LOOP_PIN = A0;       // 250 ohm shunt, via 4.7k
const float R_SHUNT = 250.0;   // ohm
const float P_MAX = 10.0;      // bar at 20 mA (0 bar at 4 mA)

void setup() {
  Serial.begin(9600);
}

void loop() {
  int n = analogRead(LOOP_PIN);
  float v = n * 5.0 / 1023.0;
  float mA = v / R_SHUNT * 1000.0;
  Serial.print("N = "); Serial.print(n);
  Serial.print("  I = "); Serial.print(mA, 2); Serial.print(" mA  ");
  if (mA < 3.8) {
    Serial.println("FAULT: open loop");
  } else if (n >= 1023) {
    Serial.println("P >= 10 bar (ADC full)");
  } else {
    float p = (mA - 4.0) / 16.0 * P_MAX;
    if (p < 0) p = 0;
    Serial.print("P = "); Serial.print(p, 2); Serial.println(" bar");
  }
  delay(1000);
}
Serial Monitor · قراءة نموذجية
N = 205  I = 4.01 mA  P = 0.00 bar
N = 368  I = 7.19 mA  P = 2.00 bar
N = 655  I = 12.81 mA  P = 5.50 bar
N = 1023  I = 20.00 mA  P >= 10 bar (ADC full)
N = 0  I = 0.00 mA  FAULT: open loop

الأسطر لتيارات 4، 7.2، 12.8، 20، 0 mA بالترتيب؛ في الأخير قطعنا السلك. 7.2 mA يُقرأ 7.19 mA: دقّة التمييز محدودة بخطوة المحوّل.

سؤال 8.9: كم خطوة من خطوات المحوّل بين 4 mA و 20 mA؟ وما دقّة التمييز للضغط؟
سؤال 8.10: ماذا يطبع البرنامج عندما يكون تيار الحلقة 16 mA؟
تحذير: قصر في الخط عند المرسِل يضع 24 V على مقاومة القياس: 96 mA و 2.3 W — مقاومة 0.25 W تحترق، وبلا حماية يصل 24 V إلى A0. لذلك 4.7 kΩ على التوالي مع الطرف وديود شوتكي (דיודת שוטקי) إلى 5 V يحدّ الجهد، وفي المختبر نغذّي الحلقة من مصدر نضبط فيه حدّ التيار قريبا من 25 mA.
خطأ شائع: أن نقرأ 0 bar عند انقطاع السلك. بدون فحص 3.8 mA يحسب البرنامج ضغطا صفرا، وقد يشغّل المضخّة بلا توقّف «لأن الضغط منخفض». الصفر الحيّ موجود لكي نفحصه.
على اللوحات الثلاث: مقاومة القياس في الحلقة تتغيّر مع اللوحة: Uno: 250 Ω تعطي من 1 V حتى 5 V. ESP32: 150 Ω تعطي من 0.6 V حتى 3 V. الراسبيري باي: 150 Ω أيضا، والجهد إلى قناة في MCP3008.
▶تجربة حية — الحسّاسات التماثلية وحلقة التيارمحاكاة حيّة: مرسِل يحوّل القياس إلى 4–20 mA ، مقاومة الأسلاك، وقراءة المحوّل التماثلي-الرقمي.
⚠
المختبر غير متاح الآن. المادة في هذا الفصل كاملة من دونه — نواصل القراءة، ونعود إلى التجربة لاحقا أو نفتحها مباشرة من الرابط الذي تحت الإطار.
https://fahed-lab.com/hashmal/sensors#asens
نفتح المختبر في صفحة مستقلة ↗ fahed-lab.com/hashmal/sensors#asens

ملخّص قوانين الفصل:

القانونالصيغة
فرق التشغيل لمفتاح الضغطPon = Poff − ΔP
من تيار الحلقة إلى الكميةx = xmin + I − 416·(xmax − xmin)
الجهد على مقاومة القياسV = I·Rsh
من القيمة الخام إلى الجهد (Uno)V = N·51023

قاموس المصطلحات – מילון מונחים:

بالعربيةبالعبرية (كما تظهر في الامتحان)English
مفتاح نهاية المشوارמפסק גבולLimit switch
التلامس المفتوح / المغلق عادةًמגע פתוח / סגור במנוחהNO / NC contact
الأمان عند العطلכשל בטוחFail-safe
مفتاح الضغطמפסק לחץ (פרסוסטט)Pressure switch
فرق التشغيلהפרש מיתוגSwitching differential
مفتاح العوّامةמצוף (מפסק מפלס)Float switch
منظّم الحرارة (الثرموستات)תרמוסטטThermostat
الشريحة ثنائية المعدنפס דו-מתכתיBimetallic strip
حسّاس اقتراب حثّي / سعوي / ضوئيחיישן קרבה השראתי / קיבולי / אופטיInductive / capacitive / photoelectric
مسافة الاستشعار الاسميةמרחק חישה נומינליRated sensing distance
حاجز ضوئي / انعكاسي / منتشرמחסום אור / רטרו-רפלקטיבי / דיפיוזיThrough-beam / retro-reflective / diffuse
الحسّاس ثلاثي الأسلاكחיישן תלת-גידיThree-wire sensor
مخرج PNP (يغذّي التيار)יציאת PNP (מקורית)PNP (sourcing) output
مخرج NPN (يسحب التيار)יציאת NPN (שוקעת)NPN (sinking) output
المقرن الضوئيמצמד אופטיOptocoupler
العزل الغلفانيבידוד גלווניGalvanic isolation
المرسِلמשדרTransmitter
حلقة التيار 4–20 mAלולאת זרם 4–20 mA4–20 mA current loop
مقاومة القياسנגד מדידה (שנט)Shunt resistor
الصفر الحيّאפס חיLive zero

أسئلة للتمرين:

1.
لماذا يُوصل مفتاح نهاية المشوار في دائرة التوقّف بتلامس NC؟ ما العطل الذي يكشفه هذا التوصيل؟
الإجابات: انقطاع السلك يفتح الدائرة كما يفعل المفتاح، فتتوقّف الآلة (الأمان عند العطل)
2.
مفتاح ضغط يفصل الضاغط عند 7 bar ، وفرق التشغيل 2 bar. عند أي ضغط يعود الضاغط إلى العمل؟
الإجابات: Pon = 5 bar
3.
نشرح بكلماتنا كيف يفتح منظّم الحرارة ثنائي المعدن تلامسه عند التسخين، ولماذا يُغلق من جديد عندما يبرد.
الإجابات: المعدنان يتمدّدان بمقدار مختلف، والشريحتان ملتصقتان فتنحني الشريحة وتبتعد عن التلامس؛ عند التبريد تعود مستقيمة
4.
أيّ حسّاس اقتراب نختار؟
أ. عدّ علب ألومنيوم على مسافة 1 mm.
ب. كشف قنينة بلاستيك فيها ماء.
ج. كشف صناديق على ناقل عرضه 4 m.
د. كشف مستوى سائل عبر جدار خزّان بلاستيكي.
الإجابات: أ. حثّي. ب. سعوي أو ضوئي. ج. حاجز ضوئي أو انعكاسي بعاكس. د. سعوي
5.
على غلاف حسّاس حثّي مكتوب Sn = 5 mm ، ونريد أن يكشف قطعا من الألومنيوم. هل نركّبه على بعد 5 mm منها؟ نعلّل.
الإجابات: لا؛ الألومنيوم يُكشف من مسافة أقصر بكثير، فنركّبه أقرب بهامش ونجرّبه مع القطع الحقيقية
6.
نرسم توصيل حسّاس PNP ثلاثي الأسلاك بمصباح بيان 24 V مع لون كل سلك، ثم التوصيل نفسه لحسّاس NPN.
الإجابات: PNP: الحمل بين الأسود و 0 V. NPN: الحمل بين +24 V والأسود. البنّي +24 V والأزرق 0 V في الحالتين
7.
فنّي وصل حسّاس NPN بمدخل PLC مشتركه على 0 V. مصباح الحسّاس يضيء عند الكشف، لكن الـ PLC لا يرى شيئا. لماذا؟ وما الحل؟
الإجابات: عند الكشف يصبح طرفا المدخل على 0 V فلا يمرّ تيار؛ نوصل المشترك بـ +24 V أو نستبدل الحسّاس بطراز PNP
8.
لماذا لا نوصل حسّاس 24 V بطرف Arduino مباشرة؟ ماذا تعطينا وحدة المقرن الضوئي غير خفض الجهد؟
الإجابات: الطرف يتحمّل نحو 5.5 V فقط ويحترق؛ المقرن يعطي عزلا غلفانيا: لا اتصال كهربائي ولا أرضي مشترك بين الجهتين
9.
مرسِل ضغط مداه 0–6 bar ، وتيار الحلقة 9.6 mA. نحسب الضغط، الجهد على 250 Ω والقيمة الخام في Arduino Uno.
الإجابات: P = 2.1 bar ، V = 2.4 V ، N = 491
10.
مرسِل درجة حرارة مداه من −50 °C (عند 4 mA) حتى 150 °C (عند 20 mA). على مقاومة القياس 250 Ω نقيس 2.6 V. نحسب التيار ودرجة الحرارة.
الإجابات: I = 10.4 mA ، T = 30 °C
11.
مرسِل مستوى مداه 0–4 m. ما تيار الحلقة عندما يكون الخزّان فارغا؟ وعندما يكون ممتلئا؟ وماذا نستنتج عندما نقرأ 0 mA؟
الإجابات: 4 mA ؛ 20 mA ؛ انقطاع السلك أو عطل في الحلقة، وليس خزّانا فارغا
الإجابات النهائية لأسئلة الفصل
8.1 يُطبع D3 = 1 -> STOP (limit or broken wire) ويتوقّف المحرّك
8.2 ΔP = 1.5 bar
8.3 يُغلق عند ارتفاع الماء؛ الثاني يحدّد مستوى التوقّف ويمنع تشغيل المضخّة بلا ماء
8.4 في الجهة البعيدة عن التلامس، فتنحني الشريحة نحوه عند التسخين
8.5 انعكاسي بعاكس: الحسّاس في جهة والعاكس في الجهة الثانية
8.6 PNP: 0 V تقريبا (الحمل يسحبه إلى السالب)؛ NPN: 24 V تقريبا (الحمل يرفعه إلى الموجب)
8.7 عند الكشف LOW، وبدونه HIGH؛ لأن العزل الغلفاني يفصل جهة 24 V عن المتحكّم
8.8 لأنه أقصر من 20 ms فلا تصبح الحالة ثابتة؛ بدون إزالة الارتداد يُعدّ التشويش قطعة، وتُعدّ العلبة الثالثة مرّتين، فيصبح العدد 6 بدل 4
8.9 1023 − 205 = 818 خطوة، ودقّة التمييز 0.0122 bar
8.10 N = 818 I = 15.99 mA P = 7.50 bar
لوحة القوانين: كل قوانين هذا الفصل مجموعة مع رسومها وجداول رموزها في الفصل 15 — لوحة القوانين الشاملة. (נוסחאון הספר)