مقدمة موجزة عن PLCs و Raspberry Pi
أ وحدة التحكم المنطقية القابلة للبرمجة (PLC) هو حاسوب صناعي مصمم لأتمتة العمليات والتحكم في الآلات في مختلف الصناعات. أجهزة التحكم المنطقية القابلة للبرمجة (PLCs) هي أجهزة متينة وموثوقة للغاية، قادرة على التعامل مع مهام مثل إدارة سيور النقل، ومراقبة المستشعرات، وتشغيل الأنظمة الروبوتية. وهي ضرورية لضمان الدقة والكفاءة والسلامة في الأتمتة.
من ناحية أخرى، يُعدّ Raspberry Pi حاسوبًا أحادي اللوحة متعدد الاستخدامات وبأسعار معقولة، وقد اكتسب شعبيةً واسعةً بفضل تصميمه المدمج وتطبيقاته الواسعة. ورغم أنه طُوّر في البداية كأداة تعليمية، إلا أن تكلفته المنخفضة، ودبابيسه العامة (GPIO)، وتوافقه مع البرامج مفتوحة المصدر، تجعله بديلاً واعدًا لأجهزة التحكم المنطقية القابلة للبرمجة (PLCs) التقليدية، للهواة والمعلمين والشركات الصغيرة التي تسعى إلى استكشاف الأتمتة بميزانية محدودة.
الاتجاهات الحالية في الأتمتة الصناعية
الصناعة 4.0 والمصانع الذكية
دمج التقنيات المتقدمة مثل إنترنت الأشياء والذكاء الاصطناعي والتعلم الآلي لإنشاء أنظمة إنتاج مترابطة وذكية.
جمع البيانات وتحليلها في الوقت الفعلي للصيانة التنبؤية وتحسين العمليات وزيادة الكفاءة.

إنترنت الأشياء الصناعي (IIoT)
استخدام الأجهزة والمستشعرات المتصلة لمراقبة المعدات والعمليات.
التركيز على التواصل السلس بين الآلات والأنظمة لتحسين الإنتاجية وتقليل وقت التوقف.
https://www.mdpi.com/2079-9292/10/23/3047
الذكاء الاصطناعي والتعلم الآلي
حلول قائمة على الذكاء الاصطناعي للصيانة التنبؤية، ومراقبة الجودة، واتخاذ القرارات. نماذج تعلّم آلي لتحسين خطوط الإنتاج والتكيف مع الظروف المتغيرة ديناميكيًا.
الروبوتات التعاونية والروبوتات المتقدمة
نشر الروبوتات التعاونية (cobots) التي تعمل جنبًا إلى جنب مع العمال البشريين. تزايد استخدام الروبوتات في المهام المتكررة، والتجميع الدقيق، والعمليات الخطرة.
الحوسبة الحافة

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

المعالجة (تنفيذ المنطق): تعالج وحدة المعالجة المركزية (CPU) في وحدة التحكم المنطقية القابلة للبرمجة (PLC) بيانات الإدخال بناءً على منطق مُبرمج مسبقًا. يُعرّف المنطق عادةً باستخدام مخططات السلم، أو مخططات كتلة الوظائف، أو برمجة النصوص المنظمة.
بناءً على المنطق المُعالَج، يُرسِل مُتحكم PLC إشارات خرج إلى المُشغِّلات، والمحركات، والصمامات، أو غيرها من الأجهزة لأداء مهام مُحددة. على سبيل المثال، تشغيل مُحرِّك، أو فتح صمام، أو إيقاف سير ناقل.
تعمل وحدات التحكم المنطقية القابلة للبرمجة بطريقة دورية (دورة المسح)، حيث تقوم بقراءة المدخلات بشكل متكرر، ومعالجة المنطق، وتحديث المخرجات، مما يضمن التحكم في الوقت الحقيقي.
تواصل
يمكن لوحدات التحكم المنطقية القابلة للبرمجة الحديثة الاتصال بالشبكات والتواصل مع وحدات تحكم أو أنظمة إشرافية أخرى، مما يتيح التكامل في أطر التشغيل الآلي الأكبر حجمًا.
سيناريوهات التطبيق النموذجية لوحدات التحكم المنطقية القابلة للبرمجة
أتمتة التصنيع:
• التحكم في خطوط التجميع والأذرع الروبوتية والآلات في المصانع.
• تنسيق العمليات مثل اللحام، والتعبئة والتغليف، ومراقبة الجودة.
التحكم في العملية:
• تنظيم المتغيرات مثل درجة الحرارة والضغط أو التدفق في الصناعات مثل النفط والغاز وتجهيز الأغذية والأدوية.
مناولة المواد:
• إدارة الأحزمة الناقلة وأنظمة الفرز والرافعات في المستودعات والمطارات والموانئ.
إدارة الطاقة:
• أتمتة الأنظمة في محطات الطاقة، مثل التحكم في التوربينات، وإدارة الشبكة، وتوزيع الأحمال.
أتمتة المباني:
• تشغيل أنظمة التدفئة والتهوية وتكييف الهواء والإضاءة والمصاعد في المباني التجارية والسكنية.
معالجة المياه والصرف الصحي:
• مراقبة والتحكم في المضخات والصمامات وأنظمة الترشيح في محطات المعالجة.
أنظمة النقل:
• التحكم بإشارات السكك الحديدية وإشارات المرور وكابينات الرسوم.
• إدارة الأنظمة في مترو الأنفاق أو المطارات لضمان التشغيل السلس.
الأتمتة الزراعية:
• التحكم في أنظمة الري والصوب الزراعية وأنظمة تغذية الحيوانات لتحقيق الممارسات الزراعية المثلى.
مزايا استخدام Raspberry Pi كـ PLC
فعالية التكلفة: يعتبر Raspberry Pi أرخص بكثير من PLCs التقليدية، مما يجعله خيارًا جذابًا للشركات الصغيرة والشركات الناشئة والهواة والمشاريع التعليمية.
إمكانية التخصيص: تسمح الطبيعة مفتوحة المصدر لـ Raspberry Pi للمستخدمين بإنشاء وتخصيص أنظمة التشغيل الآلي المصممة خصيصًا لتلبية متطلبات محددة، مما يوفر مرونة لا مثيل لها مقارنة بأنظمة PLC الملكية.
نظام بيئي واسع للبرمجيات: متوافق مع بيئات البرمجة المختلفة مثل Python وNode-RED وCodesys.
الوصول إلى العديد من المكتبات والأدوات للحصول على ميزات متقدمة مثل تسجيل البيانات، واتصال إنترنت الأشياء، والتعلم الآلي.
تكامل إنترنت الأشياء: يمكن لـ Raspberry Pi الاتصال بسلاسة بالمنصات السحابية، مما يتيح المراقبة في الوقت الفعلي والتحكم عن بعد والتحليلات التنبؤية.
مناسب لتنفيذ حلول الأتمتة القائمة على الصناعة 4.0 وإنترنت الأشياء.
خيارات الإدخال/الإخراج المتعددة (IO): مجهزة بدبابيس GPIO لوظائف الإدخال والإخراج الأساسية وقابلة للتوسيع باستخدام HATs (الأجهزة المرفقة في الأعلى) أو الدروع للاتصال الصناعي.
ترخيص مفتوح المصدر: يزيل الاعتماد على البرامج أو الأجهزة الملكية، مما يقلل التكاليف على المدى الطويل ويوفر التحكم الكامل في النظام.
المكونات المطلوبة
الأجهزة
Raspberry Pi ولوحات التوسعة للإدخال والإخراج الرقمي/التناظري

✓ لوحات الإدخال/الإخراج الرقمية
يوفر دبابيس إدخال وإخراج رقمية إضافية. مفيد للتحكم في المرحلات، والمستشعرات، والمشغلات.
أمثلة: PiFace Digital، Automation HAT.
✓ لوحات الإدخال/الإخراج التناظرية
أضف وظيفة الإدخال والإخراج التناظرية إلى Raspberry Pi، الذي يفتقر إلى دعم أصلي للإشارات التناظرية. يُعدّ هذا ضروريًا لقراءة البيانات من أجهزة الاستشعار التناظرية (مثل درجة الحرارة والضغط) والتحكم في أجهزة مثل المحركات التناظرية.
أمثلة: أجهزة ADC/DAC HAT مثل اللوحات التي تعتمد على ADS1115 أو MCP3008.
✓ لوحات التتابع
تمكين التحكم في الأجهزة ذات الجهد العالي مثل المحركات، والأضواء، أو الآلات الصناعية.
أمثلة: PiRelay، وحدة تتابع Sainsmart رباعية القنوات.
✓ لوحات الإدخال/الإخراج الصناعية
تم تصميمه للبيئات القاسية مع ميزات مثل العزل البصري وحماية من الجهد الزائد والتوافق مع مستويات الإشارة الصناعية.
أمثلة: Sequent Microsystems Industrial HAT، UniPi Neuron.
✓ لوحات بروتوكول الاتصالات
دعم بروتوكولات الاتصالات الصناعية مثل Modbus أو CAN أو RS-485.
أمثلة: PiCAN2، RS485 HAT.
وحدات الإدخال والإخراج الرقمية والتناظرية
✓ وحدات الإدخال/الإخراج الرقمية

https://www.makerfabs.com/4-channel-ad-module-for-raspberry-pi-3.html
تُستخدم وحدات الإدخال/الإخراج الرقمية للتفاعل مع الأجهزة التي تعمل بإشارات ثنائية (تشغيل/إيقاف، ارتفاع/انخفاض). تُوسّع هذه الوحدات نطاق المدخلات/المخرجات الرقمية، وتُوفّر توافقًا مع مستويات الجهد الصناعي.
الميزات الرئيسية:
• دعم إشارات TTL (3.3 فولت أو 5 فولت)، و12 فولت، و24 فولت.
• أجهزة التحكم مثل المرحلات، والمفاتيح، ومصابيح LED، والملفات اللولبية.
• عزل بصري للحماية من ارتفاع الجهد الكهربائي.
✓ وحدات الإدخال/الإخراج التناظرية
تُعد وحدات الإدخال/الإخراج التناظرية ضرورية لمعالجة الإشارات ذات القيم المتفاوتة، مثل تلك الصادرة عن أجهزة الاستشعار التي تقيس درجة الحرارة أو الرطوبة أو الضغط.
الميزات الرئيسية:
• ADC (محول من تناظري إلى رقمي) لتحويل المدخلات التناظرية إلى إشارات رقمية.
• DAC (محول من رقمي إلى تناظري) لتوليد المخرجات التناظرية.
• الدقة الشائعة: 10 بت، أو 12 بت، أو أعلى للحصول على قراءات دقيقة.
Raspberry Pi OS و Codesys و OpenPLC: منصات للأتمتة
نظام التشغيل Raspberry Pi

ملخص
• نظام التشغيل Raspberry Pi هو نظام التشغيل الموصى به لأجهزة Raspberry Pi.
كودسيس
ملخص
• Codesys هي بيئة تطوير احترافية لبرمجة PLC، وتدعم لغات IEC 61131-3 القياسية مثل مخطط السلم (LD)، ومخطط كتلة الوظيفة (FBD)، والنص المنظم (ST).
• يمكن تثبيته على Raspberry Pi لتحويله إلى PLC صناعي.

أوبن بي إل سي
ملخص
• OpenPLC عبارة عن منصة مفتوحة المصدر مصممة خصيصًا لبرمجة PLC وأتمتتها.
• يدعم لغات البرمجة IEC 61131-3، مما يجعله بديلاً فعالاً من حيث التكلفة لبرامج PLC التقليدية.


بيئة التطوير:
بيئة التطوير لأتمتة Raspberry Pi باستخدام بايثون، وNode-RED، وMQTT يقدم نهجًا متعدد الاستخدامات وقويًا لبناء أنظمة إنترنت الأشياء والتحكم في الوقت الفعلي. تُعد لغة Python واحدة من أكثر اللغات فعالية لتطبيق Raspberry Pi نظرًا لاستخدامها للأوامر عالية المستوى وتوافر العديد من المكتبات. يتيح التحكم المباشر في دبابيس GPIO للتفاعل مع المستشعرات والمشغلات والأجهزة الأخرى، بالإضافة إلى قدرات معالجة بيانات قوية. تتيح مكتبات مثل RPi.GPIO وgpiozero إدارة فعّالة للأجهزة، بينما تتكامل مكتبات أخرى مثل paho-mqtt بسلاسة مع MQTT للتواصل.

Node-RED ، أداة تطوير تعتمد على التدفق، تكمل Python من خلال توفير واجهة برمجة مرئية. يُبسّط Node-RED إنشاء سير عمل الأتمتة من خلال عقد السحب والإفلات، مما يُمكّن المستخدمين من تصميم أنظمة معقدة دون الحاجة إلى خبرة برمجية واسعة. يدعم Node-RED التحكم في GPIO وطلبات HTTP والتكامل مع الخدمات السحابية، مما يجعله أداة عملية لتنظيم تدفقات البيانات وإنشاء لوحات معلومات آنية للمراقبة والتحكم.

يُعدّ بروتوكول MQTT بمثابة العمود الفقري للاتصالات في هذه البيئة. وهو بروتوكول خفيف الوزن مثالي للأجهزة محدودة الموارد مثل Raspberry Pi. يستخدم MQTT نموذج ناشر-مشترك، مما يتيح مراسلة فعّالة وفورية بين الأجهزة. هذا يجعله خيارًا مثاليًا لتطبيقات إنترنت الأشياء حيث يكون التواصل الموثوق أمرًا بالغ الأهمية.
معًا، تُنشئ بايثون ونود-ريد وMQTT منظومة متكاملة. يُمكن لبايثون إدارة تفاعلات الأجهزة وإجراء عمليات حسابية متقدمة، بينما يضمن MQTT كفاءة نقل البيانات بين الأجهزة أو منصات السحابة. يربط نود-ريد كل شيء معًا من خلال تمكين إدارة سير العمل المرئية وتصور البيانات في الوقت الفعلي. على سبيل المثال، في نظام أتمتة المنزل، يُمكن لبايثون قراءة بيانات درجة الحرارة من جهاز استشعار، ونشرها على وسيط MQTT، بينما يُمكن لنود-ريد الاشتراك في البيانات وعرضها على لوحة معلومات، وتنفيذ إجراءات مثل تشغيل مروحة.

هذه البيئة قابلة للتطوير ومرنة، ومناسبة لمهام الأتمتة البسيطة والمعقدة. توفر بايثون العمق اللازم للوظائف المتقدمة، بينما يُحسّن Node-RED سهولة الاستخدام والتصور، ويُسهّل MQTT التواصل السلس. سواءً للنماذج الأولية، أو تطبيقات إنترنت الأشياء، أو أنظمة الأتمتة الكاملة، يُقدّم هذا المزيج حلاً متكاملاً وقويًا.
تكوين البرنامج
تثبيت وتكوين OpenPLC على Raspberry Pi
OpenPLC هي منصة مجانية ومفتوحة المصدر تُحوّل Raspberry Pi إلى وحدة تحكم منطقية قابلة للبرمجة (PLC) قوية ومتوافقة مع معايير IEC 61131-3. فيما يلي خطوات تثبيت OpenPLC وتكوينه على Raspberry Pi.
تحضير Raspberry Pi
1. متطلبات الأجهزة:
o Raspberry Pi (يوصى باستخدام الطراز 3B أو 4 أو الأحدث).
o بطاقة SD مع نظام التشغيل Raspberry Pi OS بسعة 16 جيجابايت على الأقل.
2. تحديث النظام
3. تثبيت التبعيات المطلوبة: تثبيت الحزم الأساسية لبناء وتشغيل OpenPLC:
sudo apt install git build-essential python3-pip apache2 php libmodbus-dev libsnmp-dev -y

تثبيت OpenPLC
1. استنساخ مستودع OpenPLC: انتقل إلى دليل منزلك واستنسخ مستودع OpenPLC:
استنساخ git https://github.com/thiagoralves/OpenPLC_v3.git

قرص مضغوط OpenPLC_v3
2. تشغيل البرنامج النصي للتثبيت: يوفر OpenPLC نصًا برمجيًا للتثبيت يُؤتمت عملية الإعداد. شغّل النص البرمجي باستخدام:
sudo ./install.sh rpi


3. تعيين الأذونات: بعد التثبيت، تأكد من أن وقت تشغيل OpenPLC لديه الأذونات اللازمة للتفاعل مع GPIO:
sudo chmod a+rw /dev/mem
تكوين OpenPLC
1. بدء وقت تشغيل OpenPLC: قم بتشغيل وقت تشغيل OpenPLC عن طريق تشغيل:
sudo ./start_openplc.sh
سيؤدي هذا إلى بدء تشغيل واجهة الويب OpenPLC ونظام التشغيل.
2. الوصول إلى واجهة الويب: افتح متصفح الويب على شبكتك المحلية وانتقل إلى:
http://<raspberry_pi_ip>:8080


تسجيل الدخول: اسم المستخدم الافتراضي: openplc كلمة المرور الافتراضية: openplc
يتعين عليك تغيير بيانات الاعتماد الافتراضية للأمان ضمن علامة التبويب "الإعدادات" في واجهة الويب.

3. تحميل برنامج PLC:
o انتقل إلى علامة التبويب "البرامج" في واجهة الويب الخاصة بـ OpenPLC.
o قم بتحميل برنامج PLC في أحد التنسيقات المدعومة (على سبيل المثال، Ladder Logic، أو Function Block Diagram، أو Structured Text).
o تجميع البرنامج ونشره.
اختياري - تمكين اتصال Modbus
1. تفعيل خادم Modbus: يتضمن OpenPLC خادم Modbus TCP/RTU للاتصالات الصناعية. يمكنك تفعيله من خلال تبويب "الإعدادات".

2. اختبار Modbus: استخدم أدوات مثل modpoll أو نظام SCADA المتوافق مع Modbus للتواصل مع OpenPLC.
استكشاف الأخطاء وإصلاحها
• واجهة الويب غير قابلة للوصول: تأكد من تشغيل خادم Apache:
• sudo systemctl إعادة تشغيل apache2
• مشاكل GPIO: تحقق من أذونات الوصول إلى GPIO وتأكد من تعيين الدبوس الصحيح في تكوين OpenPLC.
• أخطاء البرنامج: قم بالتحقق من صحة برنامج PLC الخاص بك بحثًا عن أخطاء نحوية قبل التحميل.
القيود
× الملاءمة الصناعية: يفتقر Raspberry Pi إلى المتانة والشهادات الصناعية، مما يجعله أقل موثوقية في البيئات القاسية.
× GPIO محدود: قد يؤدي عدد دبابيس GPIO إلى تقييد الأنظمة المعقدة، مما يتطلب لوحات التوسعة.
× الأداء في الوقت الفعلي: لا تتمتع قدرات Raspberry Pi في الوقت الفعلي بنفس قوة أجهزة التحكم المنطقية القابلة للبرمجة المخصصة.
× استقرار البرنامج: نظرًا لكون OpenPLC مفتوح المصدر، فقد يكون لديه ميزات ودعم أقل مقارنة ببرامج PLC التجارية.
خاتمة
بفضل تكلفته المنخفضة ومرونته وتوافقه مع المنصات مفتوحة المصدر، يُقدم Raspberry Pi بديلاً ممتازًا لوحدات التحكم المنطقية القابلة للبرمجة (PLCs) التقليدية في مشاريع الأتمتة. ورغم أنه قد لا يحل محل وحدات التحكم المنطقية القابلة للبرمجة الصناعية بشكل كامل في البيئات القاسية، إلا أنه يوفر منصة ممتازة للنماذج الأولية، والأغراض التعليمية، والتطبيقات الصغيرة والمتوسطة. ومن خلال الاستفادة من أدوات مثل Python وNode-RED وOpenPLC، يمكن للمستخدمين بناء حلول أتمتة مخصصة تتكامل بسلاسة مع أنظمة إنترنت الأشياء. ومع استمرار تطور الأتمتة الصناعية مفتوحة المصدر، ستزداد إمكانات Raspberry Pi كوحدة تحكم قابلة للبرمجة، مما يجعله أداة قيّمة للهواة والمعلمين والشركات المبتكرة.