HPR4718: Programmable Logic Controls - Episode 2 — Insubornavel

HPR4718: لوحات المنطق القابلة للبرمجة - الحلقة 2

المصدر: Hacker Public Radioفتح في المصدر الأصلي ↗
بقلم Whiskeyjack02/09/2026 às 00:00128 مشاهدات
Foto: CC BY-SA / Hacker Public Radio
🎙 Whiskeyjack · Hacker Public Radio

تم تصنيف هذا العرض على أنه "نظيف" من قبل المضيف.

--------------------

١- المقدمة

هذه هي الحلقة الثانية في سلسلة من ثماني حلقات.

02

في الحلقة السابقة، ناقشنا أسلاف وحدات التحكم المنطقي البرمجي (PLCs)، وخاصة المنطق الناقل.

في هذه الحلقة، سنناقش كيف تطورت المنطق الناقل ليعبر عن نفسه في البرمجيات بدلاً من مكونات الأجهزة الفعلية.

03

المواضيع التي سيتم تغطيتها تشمل

الحاسبات المبكرة في الصناعة.

أول وحدة تحكم منطقية قابلة للبرمجة (PLC)

* الحاسوب الشخصي مقابل وحدة التحكم المنطقية البرمجية - ما الفرق في الاسم.

من هي العلامات التجارية الرئيسية.

ما هي مظهر وحدة التحكم المنطقية القابلة للبرمجة (PLC) بالفعل؟

* هندسة الآلات.

برامج التحكم المنطقي البرمجي (PLC)

* المسح.

لغات برمجة التحكم في المحركات الكهربائية.

* شعبية نسبية لغات برمجة PLC مقارنة بلغات البرمجة الحاسوبية الأكثر تقليدية.

--------------------

الحواسيب المبكرة في الصناعة

بدأت الحواسيب في الاستخدام في الصناعة في وقت مبكر نسبيًا.

كانت الحواسيب الصغيرة تستخدم في بعض الصناعات الكبيرة لمراقبة أشياء مثل محطات الطاقة الكهربائية.

على سبيل المثال، تم استخدام DEC PDP8 لمراقبة آلات إعادة التزود بالوقود في محطات الطاقة النووية CANDU.

كانت تقوم بتحميل وتفريغ الوقود من المفاعل، وهو ما يحدث باستمرار على أساس يومي أثناء تشغيل المفاعل.

05

كانت أول حاسوب قائم على المعالج الدقيق يتم بيعه في السوق التجارية هو MICRAL من فرنسا، القائم على Intel 8008.

تم بيعه كبديل فعال من حيث التكلفة للحواسيب الصغيرة المستخدمة في الصناعة.

لقد سبق ما يعتبر عمومًا أول أجهزة حاسوب شخصية.

لذا يمكنك أن ترى أن الصناعة لم تكن مترددة في تبني التكنولوجيا الجديدة.

06

مع ذلك، كانت الحواسيب المصغرة أنظمة معقدة كبيرة لم تكن تناسب جيدًا أرضية المصنع.

كان لديهم نيشات خاصة في أنظمة متكاملة ضخمة جداً، ولكنهم لم يكونوا مناسبين لمراقبة العديد من الآلات الفردية في مصنع ينتج أشياء مثل السيارات أو الأجهزة المنزلية.

07

ما كان مطلوباً كان شيئاً يمكن أن يُدرج في حاوية كهربائية قياسية،

تحمل درجات الحرارة الموجودة في المصنع،

يمكن أن يتحمل الاهتزازات والضوضاء.

كانت متسامحة مع تقلبات الجهد الكهربائي.

تتواصل مباشرة مع أجهزة الاستشعار والمحركات.

يمكن برمجة هذا النظام بسهولة من قبل المهندسين، والتقنيين، والحرفيين الذين يمتلكون معرفة بالعمليات التي سيتم التحكم فيها، ولكن لديهم خبرة محدودة أو غير موجودة على الإطلاق مع الحواسيب.

08

تطلب هذا حزمة متكاملة كاملة تغطي الأجهزة والبرمجيات وتوزيع المنتجات من خلال تجار التوريد الصناعي.

شيء يمكن أن يستوفي هذه المعايير هو ما كان مطلوباً ليصبح PLC.

--------------------

تاريخ 09

يشير العديد من القصص إلى مطور أمريكي أصبح "موديكون".

مع ذلك، كانت أول أجهزتهم أكثر دليلاً على المفهوم من أن تكون منتجاً تجارياً قابلاً للتطبيق.

في الواقع، كانت العديد من الشركات في الولايات المتحدة وأوروبا واليابان تعمل على حل هذه المشكلة وأطلقت منتجات مماثلة كلها تقريبًا في نفس الوقت في أوائل السبعينيات.

10

فكرت الفكرة قبل التنفيذ بعدة سنوات.

طلبت شركة جنرال موتورز من موردي معدات التحكم الصناعي في منتصف الستينيات نوعًا من أجهزة التحكم القابلة للبرمجة لتحل محل منطق الترابط.

أظهر هذا للموردين المحتملين أن هناك سوقًا لهذا النوع من الأشياء، وأعطاهم فكرة أوضح عما يبحث عنه العملاء.

11

ما جعل ذلك ممكنًا كان تطوير أول معالج دقيق من 8 بت خلال تلك الفترة، إلى جانب المعالجات القابلة للتقطيع المتاحة بسهولة من صناعة الحواسيب المصغرة ومكونات أخرى.

12

عرف الناس ماذا يفعلون، كانت المشكلة في انتظار تطوير الأجهزة الصلبة المناسبة.

كانت الحواسيب المصغرة تستخدم بالفعل في الصناعة، ولكنها كانت عادةً موجودة في غرف التحكم.

كانت وحدات التحكم المنطقي القابلة للبرمجة جهدًا لإخراج تلك التكنولوجيا من غرف التحكم ووضعها على أرضية المصنع.

13 الحاسوب الشخصي مقابل وحدة التحكم المنطقي القابلة للبرمجة - ما الفرق في الاسم؟

في الأيام الأولى، كانت تُعرف هذه الأنظمة إما بوحدة التحكم المنطقي القابلة للبرمجة (PLC)، والتي تعني "وحدة تحكم منطقي قابلة للبرمجة"، أو بالحاسوب الشخصي (PC)، والتي تعني "مراقب قابل للبرمجة".

فضل مختلف البائعين مصطلحات مختلفة، ولكن كليهما كان شائعًا.

لدي كتاب كان في وقت ما أحد كتب المرجع القياسية لهذه الصناعة، نُشر في عام 1989، ويُشير إليهم باسم "المتحكمات القابلة للبرمجة، أو الحواسيب الشخصية".

14

تم استخدام مصطلح "PC" أيضًا للإشارة إلى "الحاسوب الشخصي"، ولكن ذلك لم يكن مشكلة حقيقية في الأيام الأولى.

مع ذلك، قررت شركة كبيرة معينة تسمية دخولها إلى سوق أجهزة الكمبيوتر الشخصية بـ "كمبيوتر آي بي إم"، وفجأة أصبح "بي سي" مصطلحًا عامًا لأجهزة الكمبيوتر المكتبية.

15

بعد كفاح طويل للحفاظ على تسمية منتجاتهم بـ "أجهزة الكمبيوتر الشخصية"، حتى أكبر الموردين استسلموا وتركوا المعركة وبدأوا في استخدام مصطلح "أجهزة التحكم المنطقي القابلة للبرمجة".

سأستخدم بالتالي مصطلح "PLC" في سلسلة البودكاست هذه حتى عند التحدث عن المنتجات التي كانت تُعرف أصلاً بـ "PCs" في الوقت الذي تم تقديمها فيه.

من هم العلامات التجارية الرئيسية؟

الشركات التي سيطرت على الصناعة في وقت مبكر نسبيًا كانت بشكل عام شركات كانت تصنع بالفعل معدات كهربائية صناعية.

كانت هذه

سيمنز

آلن برادلي، الذي عرف لاحقاً باسم روكويل

شنيدر

ميتسوبيشي

أومرون

17

لا تزال هذه الشركات هي المهيمنة في هذا المجال، على الرغم من وجود العديد من العلامات التجارية الصغيرة، خاصة في نهاية السوق الأرخص.

لقد كانوا جميعاً موردين لمجموعة واسعة من المعدات الصناعية للتحكم، بحيث يمكنك بناء جميع أجزاء نظام التحكم الخاص بك أو تقريباً باستخدام منتجاتهم فقط.

18

كل من هذه المنتجات تبيع حزمة متكاملة من الأجهزة والبرمجيات، بما في ذلك برمجيات التطوير، والتي هي مملوكة بالكامل.

إذا كنت تعتقد أن أعمال الحوسبة الرئيسية تعاني من قفل البائع بشكل كبير، فلم تر بعد سوق الصناعة.

--------------------

ما هي مظهر أي من هذه الأشياء بالفعل؟

في هذه المرحلة، من المحتمل أن تكون لا تزال مشوشًا جدًا بشأن ما هو وحدة التحكم المنطقي القابلة للبرمجة (PLC) بالفعل.

سأحاول وصف واحد منها بمصطلحات أساسية من خلال تقديم مثال واحد.

أصغر وأبسط الأنواع هي ما يُطلق عليه "محولات PLC من نوع صندوق الأحذية".

هذه في الأساس صندوق مستطيل الشكل مع غطاء بلاستيكي.

20

هذه هي الأبعاد لنموذج منخفض النطاق نموذجي، وهو ميتسوبيشي FX3U-32M.

وفقاً للمواصفات المذكورة في الدليل، فإنها تبلغ 150 ملم عرضاً، و90 ملم ارتفاعاً، و86 ملم عمقاً.

21

يمكن تركيبه على اللوحة داخل حاوية كهربائية عن طريق تثبيته على ما يسمى بقضيب DIN.

تستخدم قضبان DIN أنظمة تركيب قياسية تتكون من شريط معدني على شكل حرف U مع حافة علوية في كل نهاية من نهايات حرف U.

تثبت مسار DIN على لوحة التوزيع الكهربائية داخل الحاوية، وبذلك يمكن تثبيت معظم المكونات الصناعية مثل المتحكمات المنطقية القابلة للبرمجة (PLCs)، وكتل النهاية، وقاطعات الدائرة، وأنواع أخرى من الأشياء بسهولة وتكون جاهزة للتوصيل.

22

على طول الجزء العلوي والسفلي من وحدة التحكم المنطقي القابل للبرمجة (PLC)، توجد منافذ يمكنك من خلالها ربط الأسلاك من الأشياء التي ترغب في استشعارها أو التحكم فيها في بقية الآلة، مثل أزرار التشغيل، وأضواء الإرشاد، وأجهزة الاستشعار عن القرب، والصمامات.

23

المدخلات في الأعلى، والمخرجات في الأسفل.

تتميز FX3U-32M بـ 16 مدخلاً و 16 مخرجاً.

يمكن أن تكون هذه المدخلات والمخرجات 24 فولت مستمرًا، أو 100 إلى 120 فولت تيار بديل، اعتمادًا على النموذج.

بدلاً من ذلك، قد يكون لديها محولات صغيرة للخرجات.

في حين كانت مدخلات ومخرجات AC مهيمنة ذات يوم، أصبحت 24V DC المعيار في معظم الصناعات منذ عدة عقود، حيث تتوافق بسهولة مع الأجهزة الإلكترونية وتسمح أيضًا بأسلاك أرخص وأكثر إحكاماً.

24

يمكن إضافة المزيد من المدخلات والمخرجات عن طريق توصيل وحدات I/O إضافية بمنظم التحكم المنطقي القابل للبرمجة (PLC) الرئيسي بجانبها على نفس السكك الديناميكية، حتى ما مجموعه 256 I/O.

تكون الوصلة عادةً عبر كابلات شريطية قصيرة يتم إدخالها في الوحدة المجاورة.

تُشبه هذه الوحدات الإدخال/الإخراج الوحدة الرئيسية للتحكم المنطقي القابل للبرمجة (PLC)، ولكنها تضيف فقط وظائف الإدخال/الإخراج.

25

داخل وحدة التحكم المنطقي القابلة للبرمجة (PLC) توجد وحدة معالجة مركزية (CPU)، وذاكرة، وبرمجيات مدمجة.

يتمتع هذا النموذج بـ 64K "خطوة" من الذاكرة، والتي يمكن اعتبارها كم عدد التعليمات التي يمكنك امتلاكها.

يعمل البرنامج في ذاكرة الوصول العشوائي، ولكن يمكنك إضافة جهاز ذاكرة فلاش صغير لحفظ البرنامج عليه.

هناك مفتاح تشغيل/إيقاف يسمح لك ببدء أو إيقاف برنامج المستخدم.

هناك منفذ يمكنك استخدامه لتوصيل وحدة التحكم المنطقي القابلة للبرمجة (PLC) بحاسوب محمول عبر كابل حتى تتمكن من تنزيل برنامجك عليه.

26

الجزء الأكبر من سوق وحدات التحكم المنطقي القابلة للبرمجة هو من أنماط "صندوق الأحذية".

ومع ذلك، هناك وحدات أكبر أيضًا تتميز بمزيد من مدخلات/مخرجات، وذاكرة أكبر، ومعالجات مركزية أسرع، وما إلى ذلك.

هذه مصممة لمهام مثل تنسيق خطوط التجميع الكبيرة وأشياء من هذا القبيل.

هذه هي ما يُعرف بنظم الرفوف، حيث يكون الرف صندوقًا فارغًا مفتوحًا من الأمام ويحتوي على حافلة خلفية تعمل على طول الخلف.

تقوم بتوصيل وحدة المعالجة المركزية الرئيسية بالحافلة، عادةً في أقصى اليسار، ثم تقوم بتوصيل وحدات الإدخال/الإخراج بالرف.

وحدات الإدخال/الإخراج هي صناديق طويلة ونحيفة ومغلقة بالكامل مع محطات الإدخال/الإخراج على طول الأمام.

27

يجب أن يكون لديك فكرة تقريبية عن مظهرهم في هذه المرحلة، لذا سأتجاهل الوصف المادي الآن وأنتقل إلى المفاهيم وراء كيفية عملهم بالفعل وما الذي يجعلهم مختلفين عن شيء مثل Raspberry Pi.

--------------------

28 هندسة الآلة

ليس المعدات بالفعل هي التي تحدد وحدة التحكم المنطقي القابلة للبرمجة (PLC).

بدلاً من ذلك، فإنها بنية نظام البرمجيات.

كل وحدة تحكم منطقي قابلة للبرمجة، على حد علمي، لديها مجموعة مشتركة من الميزات.

29 جدول البيانات

جدول البيانات ببساطة كتلة من الذاكرة التي قد تكون أو لا تكون مقسمة إلى أجزاء مختلفة.

تعمل كل المنطق، وكل مدخلات/مخرجات (I/O)، عن طريق الكتابة إلى عناوين في جدول البيانات وقراءتها منها.

30 مدخلات/مخرجات

يرتبط كل نقطة مدخلات ومخرجات بعنوان ذاكرة ثابت في وحدة التحكم المنطقية القابلة للبرمجة (PLC).

لقراءة حالة مدخل، تقرأ عنوان ذاكرته.

لتغيير حالة مخرج، اكتب في عنوان ذاكرته.

31

هذه المدخلات/المخرجات الرقمية تظهر كقيم منطقية ثنائية بت واحد.

تحتوي لغة برمجة وحدة التحكم المنطقية القابلة للبرمجة على أوامر تسمح بقراءة أو كتابة بتات فردية مباشرة دون الحاجة إلى إخفاء البتات الأخرى كما ستحتاج إلى فعله إذا كنت تستخدم لغة برمجة تقليدية.

لقد ذكرت حتى الآن فقط المدخلات/المخرجات الرقمية، وهي قيم تشغيل/إيقاف بت واحد.

32 نوع آخر من المدخلات/المخرجات

يضم العديد من التحكمات المنطقية القابلة للبرمجة (PLCs) أيضًا أنواعًا أخرى من مدخلات/مخرجات (I/O) مثل ...

مدخلات ومخرجات التناظرية، والتي تمثل جهود جهد متغيرة بدلاً من قيم التشغيل/الإيقاف فقط.

على سبيل المثال، قد ترغب في قراءة درجة حرارة من زوج حراري حيث يختلف مستوى الجهد مع درجة الحرارة.

غالباً ما يتم رسم خريطة هذه القيم في جدول البيانات كقيم بايت أو كلمات.

ذاكرة داخلية بتية أو منطقية 33

سيكون هناك مجموعة من ذاكرة بت واحد أو منطق صحيح تستخدم لحالة المنطق الداخلي.

قد يحتاج برنامجك إلى توليد سلسلة من القيم المنطقية الوسيطة، وتخزينها في هذه البتات أو الأعلام الداخلية.

ثلاث وأربعون مؤقتاً ومعداً للعد

يُعدّ التحكّم في الآلات غالباً عملية تتضمّن التوقيت والعد.

تُقام المؤقتات والعدادات في جدول البيانات.

يمكن قراءة الإعدادات والقيم المسبقة للعدّاد والتوقيت ككلمات، وسيكون هناك عناوين بتية تشير إلى حالة العدّاد أو التوقيت، مثل ما إذا كان قد وصل إلى إعداده المسبق و"اكتمل".

قيم صحيحة وعشرية من 35

ستكون هناك عناوين كلمات حيث يمكن تخزين كلمات الأعداد الصحيحة والعائمة.

إذا كنت بحاجة لإجراء بعض العمليات الحسابية الرياضية وتخزين النتائج، فستحفظها في متغير عدد صحيح أو عدد عشري.

ذاكرة مُدخلَة 36

على عكس برمجة شيء مثل جهاز كمبيوتر شخصي حيث يكون لديك ببساطة مجموعة من البايتات غير المميزة، وفي حالة أجهزة التحكم المنطقي القابلة للبرمجة (PLC)، فإن ذاكرة جدول البيانات لها أنواع ومعانٍ محددة، وتفرض البرامج الثابتة للنظام طرق الوصول إلى الذاكرة الصحيحة.

حجم جدول البيانات: 37

تختلف جداول البيانات بشكل كبير في الحجم.

يسمح جدول البيانات الأكبر ببرامج أكبر وأكثر تعقيدًا.

بشكل عام، ستحتوي المتحكمات المنطقية القابلة للبرمجة (PLCs) الجديدة على جداول بيانات أكبر من النماذج القديمة.

وستحتوي المتحكمات المنطقية القابلة للبرمجة (PLCs) الأكثر تكلفة على جداول بيانات أكبر من النماذج الأرخص من نفس الجيل.

مثال: 38

بعد اختيار متحكم منطقي قابل للبرمجة (PLC) حالي كنموذج لأبعاده المادية، سأختار نموذجًا قديمًا وعتيقًا كمثال على جدول البيانات.

كانت سلسلة Siemens S5-100 متحكمًا منطقيًا قابلًا للبرمجة صغيرًا يأتي بعدة أحجام.

كان لدى النموذج الأساسي S5-100 حجم جدول البيانات التالي.

39

كان لدى ديجيتال آي/أو ما مجموعه 128 مدخلاً ومخرجاً كحد أقصى.

كان للمدخلات والمخرجات التناظرية حد أقصى 8 عند جمعها معًا.

تذكرت العلم أو البت كانت 1024

مؤقتات - 16

المقابض - 16

40

تقدم S5-103 المزيد من كل شيء في الحزمة الأساسية نفسها، ولكن بالطبع بتكلفة أعلى.

كان لدى ديجيتال آي/أو ما مجموعه 256 مدخلاً ومخرجاً كحد أقصى.

كانت المدخلات والمخرجات المتوازية لديها حد أقصى يبلغ 32 معًا.

كانت ذاكرة العلم، أو البت، 2048.

كان لدى المؤقتات 128.

كانت العدادات 128.

--------------------

41 برنامج PLC.

يأتي PLC مع ما يشبه نظام تشغيل وآلة افتراضية مدمجتين فيه.

تستخدم أنت، كمبرمج، البرنامج الخاص بالمزود، الذي يُدعى عمومًا "برنامج برمجة PLC"، لكتابة تطبيق له.

42

ثم تقوم بتوصيل حاسوبك الشخصي بالـ PLC باستخدام كابل من نوع ما، وتحميل برنامجك إليه.

يتم تخزين البرنامج في ذاكرة الوصول العشوائي للتحكم المنطقي القابل للبرمجة.

قد يكون هناك ذاكرة فلاش تعمل كنسخة احتياطية من ذاكرة الوصول العشوائي عندما يكون التيار الكهربائي مقطوعًا حتى لا تفقد البرنامج.

قبل توفر الفلاش، كان من الضروري استخدام بطارية لحفظ ذاكرة الوصول العشوائي الثابتة.

43

هناك برنامج واحد فقط في وحدة التحكم المنطقية القابلة للبرمجة.

لا يوجد نظام ملفات، فقط ذاكرة البرنامج وجدول البيانات.

عند تشغيل وحدة التحكم المنطقي القابلة للبرمجة (PLC)، تقوم بتشغيل البرنامج الذي كتبته.

يستمر في تشغيل البرنامج حتى تقوم بإيقاف الطاقة أو ضبط مفتاح التشغيل/الإيقاف في وضع الإيقاف.

44

سأعود إلى البرمجة لاحقاً، ولكن كان علينا تغطية هذه النقاط الأساسية قبل أن أتمكن من وصف بعض المفاهيم الأخرى التي يجب تغطيتها.

--------------------

الفحص - 45

أحد الجوانب الرئيسية التي يجب فهمها حول المتحكمات المنطقية القابلة للبرمجة (PLCs) هو مفهوم "الفحص".

يعمل هذا كما يلي.

هناك دورة متكررة تُعرف بالفحص.

46

أولاً، يقوم المتحكم المنطقي القابل للبرمجة بقراءة جميع المدخلات الفيزيائية وتحديث عناوين المدخلات المقابلة في جدول البيانات.

بعد ذلك، ينفذ البرنامج الخاص بالمستخدم مرة واحدة.

أخيراً، يقرأ عناوين المخرجات في جدول البيانات ويكتبها في المخرجات الفيزيائية المقابلة.

ثم يكرر الفحص من الخطوة 1.

47

يمكن أن تستغرق المسح أي مكان من بضعة ملي ثانية إلى مئات الملي ثانية، اعتمادًا على نموذج PLC.

ميلاً عن PLCs الأقدم والأرخص تميل إلى أن تكون أبطأ.

ومع ذلك، مع تقدم تكنولوجيا الدوائر المتكاملة، أصبحت البرامج أسرع.

48

لدى PLC مؤقت مراقب.

هذا هو المؤقت الذي يعمل في الخلفية ويعيد ضبطه في بداية مسح.

49

إذا استغرق المسح وقتًا أطول من اللازم، سيقوم المراقب بتفعيله ووقف البرنامج وتحديد المدخلات إلى حالة محددة، إما إيقافها جميعًا أو إبقائها في القيمة الأخيرة.

يُعرف هذا بـ "إحداث خطأ" في المعالج.

50

قد يكون خطأ المراقب ناتجًا عن برنامج طويل جدًا، أو يستخدم الكثير من التعليمات البطيئة جدًا، أو في بعض الحالات قد يكون بسبب خطأ في برنامجك.

ولكن هذه السبب الأخير ليست شائعة أو سهلة التسبب كما قد تعتقد عندما يتعلق الأمر بالأخطاء.

--------------------

51 لغات برمجة PLC

المفتاح لكل هذا هو الطريقة الفريدة التي تعمل بها لغات البرمجة المستخدمة في PLCs.

سأقدم أولاً وصفاً موجزاً للغة البرمجة الرئيسية اثنتين ثم سأوضح كيف تعملا في PLC كجزء من نظام كامل.

52 منطق السلم

هناك العديد من لغات البرمجة، ولكن اللغة الرئيسية تسمى منطق السلم.

إذا كنت تستمع إلى الحلقة السابقة، فإن كلمة "سلم" ستثير انتباهك.

عندما كانت الآلات تتحكم بها المفاتيح الكهربائية الميكانيكية، كانت الرسومات الكهربائية التي تحدد وتوثق أنواع المفاتيح والاتصالات بينها تسمى "رسومات السلم".

53

تأخذ وحدات التحكم المنطقية البرمجية (PLCs) ببساطة هذه الرسوم البيانية للسلالم وتُعيد إنتاجها على شاشة حاسوبك في برنامج البرمجة باستخدام الرموز المخططية القياسية نفسها.

54

لا تحتاج إلى رسم الرموز كما لو كانت تصميمًا باستخدام CAD.

بدلاً من ذلك، تستخدم ببساطة لوحة المفاتيح أو الفأرة للإشارة إلى أنك تريد إدخال هذا الرمز في موقع المؤشر الحالي أو تريد توصيل هذا السلك من هنا إلى هناك.

عندما تنتهي من كتابة مقالك، سيتحقق البرنامج في مرحلة ما من صحته النحوية.

ثم تنتقل إلى صعود الدرجات التالية واحدة تلو الأخرى حتى تحصل على برنامجك الكامل.

قائمة التعليمات 55

تمثيل بديل هو ما يسمى "قائمة التعليمات"، على الرغم من أن مختلف الموردين قد يستخدمون مصطلحات أخرى.

هذا نص تمثيلي يبدو كأنه نوع من لغة التجميع.

مع ذلك، الأمر في الواقع بسيط جدًا، إنه فقط يُظهر بطريقة مختلفة. بعض أنواع برامج البرمجة تسمح لك بالتبديل بين وضع الرسم البياني وقائمة التعليمات، حيث تقوم بترجمة كل منهما تلقائيًا.

56

هذا سيعطيك فكرة عن كيفية تنفيذ وحدة تحكم منطقية قابلة للبرمجة (PLC) لمخطط تخطيطي.

خلف الكواليس، ستقوم برمجيات الترجمة بتحويل المخطط إلى قائمة تعليمات، ثم يقوم التحكم المنطقي القابل للبرمجة (PLC) بتنفيذ هذه التعليمات إما عن طريق مفسر أو تجميعها إلى رمز آلة وتنفيذها.

لغات برمجة أخرى: 57

هناك لغات برمجة أخرى، ولكن نادراً ما يتم رؤيتها.

لن أدخل في تفاصيل وصفهم، سأذكرهم بإيجاز فقط.

58

يُطلق على واحد من هذه المخططات "مخطط الوظائف التسلسلية".

هذه نوع من مخطط التدفق المصمم لإظهار التسلسلات المعقدة، بما في ذلك تلك مع المسارات البديلة أو المتوازية.

الاسم الأصلي لهذا هو Grafcet، يُكتب G R A F C E T.

يشير إلى "Graphe Fonctionnel de Commande Étape Transition".

بالإضافة إلى كونه لغة برمجة، فهو أيضًا أداة تصميم وتحليل ممتازة حتى إذا لم تدعمها وحدة التحكم المنطقي القابلة للبرمجة (PLC) المستخدمة.

59

هناك طريقة أخرى هي مخطط الكتل الوظيفية.

هذه لغة رسومية أخرى تشبه مخططات التدفق المستخدمة في الصناعات التحويلية.

يُفترض أن تُستخدم بشكل أساسي في صناعات مثل تصنيع المواد الكيميائية.

ومع ذلك، يبدو أنها متخصصة للغاية، ولن يراها معظم الأشخاص الذين يستخدمون وحدات التحكم المنطقي القابلة للبرمجة، ولن يسمعوا عنها حتى.

60

هناك لغة أخرى هي النص المهيكل.

هذا واضح جداً أنه مشتق من مودولا-2 ويشبهه بشدة.

إذا لم تكن على دراية بلغة Modula-2، فقد أنشأها نيكولاس ويرث وكانت تهدف إلى أن تكون خليفة للغة باسكال التي استمدت منها.

يبدو أن النص المنظم يحظى بحب عدد قليل من الأكاديميين، ولكن يبدو أن له استخدامًا عمليًا ضئيلًا في الميدان.

تفقد تقريباً جميع مرافق المراقبة وتصحيح الأخطاء المدمجة في وحدة التحكم المنطقي القابل للبرمجة (PLC) عند استخدامها، لذا فإن استخدامها لا يُحقق غرضاً إلا في بعض التطبيقات المتخصصة.

هناك بعض اللغات الأخرى أيضًا، وخاصةً تلك المملوكة للقطاع الخاص، والتي غالبًا ما تستخدم مخططات تدفق أو ما شابه ذلك.

تتوفر 61 لغة في نظام PLC، وهي غير حجبية.

الشيء المهم في برنامج التحكم المنطقي القابل للبرمجة (PLC) هو أنه يتم تنفيذه من الأعلى إلى الأسفل، ومن اليسار إلى اليمين، دون توقف أو حجب.

لا يوجد انتظار للمدخلات أو المخرجات أو لعودة مكالمة نظام.

كل درجة تنتج على الفور نتيجة تُكتب في عنوان ذاكرة أو تمكن مؤقتًا أو عدادًا.

يتم تنفيذ كل درجة في كل مسح.

62

يمكنك تكرار هذا في أي لغة برمجة حاسوبية تقليدية.

في منطق السلالم، يعد ذلك جزءًا أساسيًا من النحو، ومن الصعب للغاية أو مستحيلًا القيام به بطريقة مختلفة.

سأقدم مثالاً بلغة بايثون عما أعنيه.

63

يُعبر عن المعادلة كما يلي: (ب أو ج) و ليس د.

64

إذا كانت الجمل (ب) أو (ج) صحيحة و (د) خاطئة، فإن (أ) ستكون محددة على أنها صحيحة.

إذا كانت الباء والجيم كاذبتين أو أن الدال صحيحة، فإن الألفا كاذبة.

65

تخيل الآن أننا لا ننفذ هذا البيان مرة واحدة، بل نفذته بشكل متكرر.

لن يمنع هذا البيان أبدًا التنفيذ.

سيقدم دائمًا نتيجة فورية.

الآن دعنا نعدل ذلك قليلاً.

66

a = (b أو a) وليس d

67

لاحظ أننا استبدلنا c بـ a.

الآن يعتمد قيمة a على القيمة السابقة لـ a وكذلك b و d.

ومع ذلك، بمجرد أن يصبح a صحيحًا، لم تعد قيمة b مهمة لأن b في حالة "أو" مع a.

إذا قمنا بتنفيذها مرارًا وتكرارًا، فإن الحقيقة الوحيدة التي ستجعل "لا" كاذبة هي أن "د" تصبح صحيحة.

68

هذه هي الدائرة الزراعية القياسية، المعروفة أيضًا باسم "الدائرة المغلقة"، لأنها "تغلق" حول حالة البداية.

69

"ب" هو زر البدء مع اتصال مفتوح عادةً.

"د" هو زر الإيقاف مع اتصال مغلق عادةً.

"أ" هو محول مع أحد اتصالاته المستخدمة لإبقائه مشغلاً.

70

إذا قمت بتوصيل هذا مع أزرار حقيقية ومحوّلات أو برمجته في وحدة تحكم منطقية قابلة للبرمجة (PLC) بلغة سلمية، فستعمل بنفس الطريقة.

تتكون برنامج وحدة التحكم المنطقية القابلة للبرمجة من صفوف من المنطق صفًا تلو الآخر، وتنفذه مرارًا وتكرارًا مسحًا بعد مسح، ولا تتوقف إلا لتحديث مدخلات/مخرجاتها.

71 البرمجة غير المتزامنة.

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

أساساً، هو نفس المبدأ بالضبط.

72

مع البرمجة غير المتزامنة، يجب ألا يستخدم برنامجك أوامر التوقف ويجب أن تستمر التنفيذ في دورة متكررة.

تحل وحدات التحكم المنطقي البرمجي (PLCs) هذه المشكلة من خلال عدم وجود أي تعليمات تمنعها، ولا تسمح العديد من وحدات التحكم المنطقي البرمجي بالقفزات العكسية.

كان العمال في المصانع يرتدون الزي الرسمي ويقومون ببرمجة غير متزامنة منذ عقود قبل أن يسمع عنها "الموهوبون".

تُستخدم 73 لغة برمجة في التحكم الصناعي (PLC) وهي لغات بصرية أو رسومية.

إذا كانت سلم، أو مخطط الوظائف التسلسلية، أو Grafcet ومخطط الكتل الوظيفية تبدو مثل لغات البرمجة البصرية، فهي كذلك.

في الواقع، يعتبر السلم أحد أقدم اللغات البصرية المستخدمة تجاريًا على الأرجح.

تحدد ويكيبيديا لغة البرمجة البصرية على أنها:

74

في مجال الحوسبة، لغة البرمجة البصرية (نظام البرمجة البصرية، أو VPL)، والمعروفة أيضًا بالبرمجة التخطيطية أو البرمجة الرسومية أو الترميز بالكتلة، هي لغة برمجة تسمح للمستخدمين بإنشاء برامج من خلال التلاعب بعناصر البرنامج رسوميًا بدلاً من تحديدها نصيًا. تتيح VPL البرمجة باستخدام التعبيرات البصرية، والترتيبات المكانية للنصوص والرموز الرسومية، المستخدمة إما كعناصر للتركيبة النحوية أو كنظام ثانوي للتوضيح. على سبيل المثال، تستند العديد من LPL إلى فكرة "الصندوق والسهم"، حيث يتم معاملة الصناديق أو الكائنات الأخرى على الشاشة ككيانات، متصلة بالسهم أو الخطوط أو المنحنيات التي تمثل العلاقات. تعد LPL بشكل عام أساس منصات تطوير البرمجيات منخفضة الرمز. "سكراتش" مثال على LPL.

75

نهاية الاقتباس.

كما ترى، ما كان رائعاً اليوم كان موجوداً في أرض المصنع منذ أكثر من 40 عاماً.

--------------------

شعبية لغات برمجة أنظمة التحكم المنطقي القابلة للبرمجة (76)

تُعتبر وحدات التحكم المنطقية البرمجية (PLCs) من أكثر الأنظمة ملكية، إن لم تكن الأكثر.

تقريباً لدى كل بائع تفسيره الخاص لكل لغة.

كيفية برمجة أي وحدة تحكم منطقي قابل للبرمجة (PLC) محددة تعتمد على برنامج البرمجة الذي يوفره البائع.

إذا لم يدعم البائع ذلك، فلا يمكنك استخدامه.

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

77

يدعم جميع أجهزة التحكم المنطقي القابلة للبرمجة تقريباً البرمجة بلغة السلم.

يدعم البعض برمجة قائمة التعليمات وكذلك السلم.

أي شيء آخر أقل شيوعًا بكثير.

78

توجد منطق السلم بالفعل في فهرس تيوبيه.

بالنسبة لأولئك الذين لم يسمعوا به، مؤشر تيوبه، أو T I O B E، هو موقع إلكتروني يُدرج شعبية العديد من لغات البرمجة بناءً على معايير مختلفة.

79

يأتي بايثون (Python) في المرتبة الأولى بقائمةهم، حيث يبلغ معدله الحالي 19.98%.

الرقم الثاني هو C، بنسبة 11.55%.

80

في وقت كتابة هذا النص، كانت لادر لوجيك في المرتبة 46 بنسبة 0.28%، مما وضعها مباشرة تحت إيرلنج وأعلى من هاسكل.

لست متأكداً مما إذا كان ذلك يعني أن لادر لوجيك ليست غامضة كما ظننت، أو ما إذا كان إيرلنج وهاسكل في الواقع أكثر غموضاً مما ظننت.

--------------------

ملخص الحلقة 81

في هذه الحلقة غطينا

التاريخ المبكر للحاسبات في التحكم الصناعي

التاريخ المبكر لـ PLCs، بما في ذلك كيف حصلت على اسمها

من هي العلامات التجارية الرئيسية

ما يبدو عليه جسديًا

82

وصف أساسي لهندسة الآلة المجردة

نظرة موجزة جدًا على ما يشبه برنامج التحكم المنطقي القابل للبرمجة

مفهوم المسح

لغات برمجة التحكم المنطقي القابل للبرمجة الرئيسية

لغات برمجة التحكم المنطقي القابل للبرمجة الثانوية

الشعبية النسبية لكل لغات البرمجة

83

في الحلقة القادمة، سنلقي نظرة على واحد من أوائل أجهزة التحكم المنطقي القابل للبرمجة من العصر الذي بدأ فيه استخدامها على نطاق واسع.

كان هذا النظام التحكم المنطقي القابل للبرمجة ناجحًا للغاية وكان أول نظام يستخدمه العديد من الشركات.

هذا هو نظام التحكم المنطقي القابل للبرمجة Allen Bradley PLC2.

84

كان هذا الحلقة الثانية من سلسلة مكونة من 8 حلقات.

--------------------

تقديمالتعليقاتحول هذه الحلقة.

المصدر
Hacker Public Radio
فتح الأصل ↗

المحتوى مترجم آليًا.

هل كانت هذه الأخبار مفيدة؟

نقاشات 0

Seja o primeiro a contribuir com o debate.

شارك معلوماتك وروّج لحجتك

لا تتردد في نشر المعلومات أو البيانات التي قد تكون مفيدة.

للمشاركة في النقاش، سجّل دخولك أو أنشئ حساباً مجانياً.