تخطَّ إلى المحتوى

محمد بني

مهندس روبوتات ومطوّر ويب متكامل

حلب، سوريا

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

01 / نبذة

حيث تلتقي البرمجيات بالعتاد

محمد بني، مهندس روبوتات ومطوّر ويب متكامل، حلب، سوريا

أنا محمد بني، مبرمج ومهندس روبوتات سوري مقيم في حلب. أعمل في المساحة التي تلتقي فيها البرمجيات بالـعتاد. الروبوتات الخدمية التي أبنيها تعمل على ROS 2 Jazzy، وأكتب لها بلغتَي C++ و Python مقابل حسّاسات حقيقية: مسح ليزري يغذّي خوارزميات بناء الخرائط، وبيانات بطارية تصل عبر RS-485 بتوقيت يتذبذب، وحلقات تحكّم عليها أن تبقى سلسة حين تتأخر البيانات أو تصلها ضوضاء.

إخضاع آلة للانضباط وسط حشد من آلاف البشر مسألة مختلفة تماماً عن ضبطها داخل محاكاة. الفارق ليس في الخوارزمية، بل في كل ما يحدث حين تكذب الحسّاسات أو تتأخر أو تتوقف، وفي أن أحداً لن يكون واقفاً هناك ليعيد التشغيل.

وعلى جانب الويب أبني المنظومة كاملة: خدمات خلفية بـ .NET Core و FastAPI، وواجهات أمامية بـ SvelteKit و TypeScript، ومخطّطات بيانات على PostgreSQL و SQL Server، مع ما يلزمها من Docker و Linux عند النشر. أعتمد التصميم المُوجَّه بالمجال و CQRS حيث يستحقان كلفتهما. تصميم نموذج البيانات هو الجزء الأقرب إلى نفسي، لأن شكل البيانات هو ما يحدّد ما الذي سيُسمح للتطبيق أن يصبح عليه لاحقاً.

لمحة سريعة
المقر
حلب، سوريا · غرينتش +3
متاح لـ
العمل عن بُعد والانتقال
العمل الحالي
مهندس روبوتات في SWB AI
العمل الحر
تطوير ويب متكامل، متاح
الدراسة
بكالوريوس هندسة كهربائية، جامعة حلب، 2026
أعمل بـ
C++ · C# · Python · TypeScript · SQL
اللغات
العربية (لغة أم)، الإنكليزية (مستوى مهني)
02 / الأعمال

أعمال مختارة

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

01 روبوتات قيد التشغيل

روبوت منارة

SWB AI · المسجد الحرام في مكة المكرمة والمسجد النبوي في المدينة المنورة

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

ما بنيتُه فيه
  1. 1

    لوحة تحكّم عبر الشبكة مع خريطة حيّة

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

  2. 2

    حزمة إدارة البطارية على ROS 2 Jazzy وC++‎

    بنيتُ وحسّنتُ حزمة إدارة البطارية: قراءة نظام إدارة البطارية عبر RS-485، وضبط تأطير البروتوكول على توقيت العتاد، ونشر بيانات نظيفة عن حالة الشحن وصحة البطارية تثق بها بقية المنظومة.

  3. 3

    ضبط بناء الخرائط لمسار أنعم

    حسّنتُ إعدادات SLAM حتى يتوقف تقدير الموضع عن الاهتزاز، فصار المتحكّم يتبع مساراً سلساً فعلاً بدل أن يصحّح باستمرار ضد ضوضاء تقديره نفسه. الفرق واضح لأي شخص يقف بجانب الروبوت.

  4. 4

    تكامل الحسّاسات وتشغيل الأنظمة المدمجة

    تشغيل منظومة الحوسبة والاستشعار على Orange Pi 5 Max و Raspberry Pi: الليزر الدوّار RPLidar، ومصفوفة الحسّاسات فوق الصوتية، والأجهزة التسلسلية، مع إبقائها مستقرة عبر دورات الإطفاء وتحديثات البرمجية الثابتة.

وحدة منارة تجيب أحد الزوار في المسجد الحرام
وحدة منارة تجيب أحد الزوار في المسجد الحرام
زوار يستخدمون واجهة الإرشاد باللمس
زوار يستخدمون واجهة الإرشاد باللمس
المنظومة
ROS 2 Jazzy · C++ · Python
الحوسبة
Orange Pi 5 Max · Raspberry Pi
الاستشعار والنواقل
RPLidar C1 · مصفوفة فوق صوتية · بيانات بطارية عبر RS-485 بتأطير موقوت على العتاد
02 ويب متكامل منشور

swbai.com

SWB AI · الموقع الرسمي للشركة

الموقع الرسمي لـ SWB AI، الشركة التي أبني روبوتاتها. طوّرته بالكامل: الواجهة الأمامية، وبنية المحتوى، والتصميم المتجاوب، والنشر.

يعرض أعمال الشركة أمام جمهور دولي، ومن بينها وحدات منارة، لذلك كان عليه أن يُحمَّل بسرعة على اتصالات ضعيفة وأن يُقرأ جيداً باتجاهَي الكتابة معاً.

  • SvelteKit
  • Node.js
  • PostgreSQL
  • SSR
  • دعم RTL
  • تصميم متجاوب
  • SEO
03 برمجة تنافسية

ACPC · مسابقة حلب للبرمجة التنافسية

سبع سنوات من كل زوايا المسابقة

دخلت البرمجة التنافسية من كل زاوية: متسابقاً، ثم مدرّباً، ثم ضمن الفريق الذي يبني البنية التقنية التي تقوم عليها المسابقة.

على الجانب التقني يعني ذلك عنقود تحكيم PC² 9.10، وإعداد المحكّمات الآلية، ولوحة النتائج الحيّة، وموزّع البالونات، و Resolver في الحفل الختامي. وكتبت أيضاً الأداة التي تستورد المسائل مباشرة من Polygon إلى PC²، باختباراتها ومدقّقاتها وحدودها الزمنية، فاختصرت يوم إعداد يدوي كامل إلى أمر واحد.

  • PC² 9.10
  • Bash
  • Python
  • Polygon
  • Linux
الأدوار التي شغلتها
  • متسابق

    المسابقة السورية الجامعية للبرمجة، والمسابقة الإقليمية لـ ICPC، منذ سنوات الجامعة.

  • مدرّب

    تدريب فرق جامعة حلب منذ 2022 عبر ورشات وجلسات فردية وخطة مؤلفة من 200 مسألة.

  • عضو الفريق التقني

    عنقود التحكيم، والمحكّمات الآلية، ولوحة النتائج، والبالونات، و Resolver.

  • مختبِر مسائل

    التحقق من نصوص المسائل وبيانات الاختبار والحلول المرجعية قبل يوم المسابقة.

  • محكّم

    محكّم في مسابقة إدلب الجامعية للبرمجة.

على الطاولة

أُنجزت أيضاً
  • PLC برامج سلّمية على Delta DVP: خط فرز وتحكّم تسلسلي بالسيور
  • خدمات خلفية واجهة تتبّع طلاب: FastAPI و PostgreSQL وإدخال متكرّر آمن
  • روبوتات عارض شبكة إشغال على ROS 2 يرسم خريطة كلفة حيّة بتردد 10 Hz
  • عمل حر أدلة منتجات مع توليد رموز QR وتحليلات استخدام
03 / الأنظمة

تصميم الأنظمة وقواعد البيانات

قرارات اضطررت للدفاع عنها، ومعها كلفة كل قرار. العمارة لا تصير مثيرة إلا حين تقول ما الذي تنازلت عنه.

كتابة أمينة وقراءة سريعة

Elkood · ‎.NET Core مع DDD و CQRS

المسألة

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

ما فعلته
  1. 1 سياقات محدودة، وتجميعات تملك ثوابتها بنفسها، فلا تتغيّر الحالة إلا عبر نموذج المجال.
  2. 2 الأوامر تكتب عبر المجال، والاستعلامات تتجاوزه تماماً وتقرأ من إسقاطات مبنية لهذا الغرض.
  3. 3 قياس المسارات الساخنة وإعادة صياغتها: إزالة استعلامات N+1، وفهارس موجّهة، وتخزين مؤقت حيث تحتمل البيانات قِدَماً بسيطاً.
  4. 4 توثيق عقود الواجهات وإصدارها، حتى تتحرك فرق الواجهة الأمامية دون انتظارنا.
ما كلّفه ذلك

تكلفة CQRS نموذجٌ ثانٍ عليك إبقاؤه متزامناً، وهو الخيار الخاطئ فعلاً لتطبيق CRUD بسيط. لكنه سدّد كلفته هنا لأن شكلَي القراءة والكتابة كانا قد تباعدا أصلاً، فكنا ندفع الثمن دون أن نقبض الفائدة.

تصميم المخطّط قبل التطبيق

نمذجة بيانات · PostgreSQL و SQL Server

المسألة

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

ما فعلته
  1. 1 عمليات إدخال متكرّرة آمنة مبنية على مفتاح عمل طبيعي، فتتقارب المزامنة المعادة بدل أن تضاعف السجلات.
  2. 2 فهارس مختارة من أشكال الاستعلامات التي تعمل فعلاً، ثم مُتحقَّق منها بخطة التنفيذ لا بأسماء الأعمدة.
  3. 3 تقييس حيث تهم الصحّة، وإلغاء تقييس مقصود وموثّق حيث يهم زمن القراءة أكثر.
  4. 4 ترحيلات مُصدَّرة وقابلة للتراجع، وقيود مفروضة في قاعدة البيانات لا في كود التطبيق وحده.
ما كلّفه ذلك

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

04 / أكاديمي

مشروع التخرج

مفصول عن أعمال العملاء عن قصد. هذا هو المشروع الجامعي، وفيه تُستخدم نظرية التحكّم فعلياً.

جامعة حلب أكاديمي

تحكّم تكيّفي بتقاطع مروري

مشروع تخرج، جامعة حلب

إشارة مرور تقرّر توقيتها بنفسها من كاميرا واحدة بدل جدول ثابت. يكشف YOLOv11n المركبات، ويحوّل التتبّع بمعيار IoU مع تنعيم EMA تلك الكشوفات إلى تقدير مستقر لطول الطابور عند كل مدخل، ثم يختار متحكّم إشرافي مبني على نظرية Max-Pressure أي طور يأخذ الضوء الأخضر.

وتحت ذلك كله آلة حالات منتهية تملك القرار في السلامة: حدّ أدنى للأخضر، وفترة إخلاء يكون فيها كل شيء أحمر، وتوقيت ثابت كخطة بديلة. إن كذبت طبقة الرؤية أو تعطّلت أو توقفت تماماً، يبقى سلوك التقاطع صحيحاً. يعمل النظام على ESP32 مع لوحة إلكترونية مصمّمة خصيصاً لقيادة رؤوس الإشارة.

  • YOLOv11n
  • OpenCV
  • Python
  • ESP32
  • لوحة مخصّصة
  • طبقة سلامة
  • Max-Pressure

بإشراف الدكتور حسان النداف

كيف بُني
الإدراك
كشف بـ YOLOv11n مع تتبّع IoU وتنعيم EMA
التحكّم
متحكّم إشرافي على أساس Max-Pressure فوق مجموعة أطوار
السلامة
آلة حالات: حد أدنى للأخضر، إخلاء أحمر، توقيت بديل
العتاد
ESP32 ولوحة إلكترونية مخصّصة تقود رؤوس الإشارة
05 / المهارات

ما أعمل به

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

الروبوتات والأنظمة المدمجة

01
  • ROS 2 Jazzy: العقد والمواضيع والخدمات و TF
  • ملاحة ذاتية ودمج بيانات الحسّاسات
  • ESP32 و AVR وبرمجة على العتاد مباشرة
  • تشغيل Orange Pi 5 Max و Raspberry Pi
  • RPLidar C1 ومصفوفات فوق صوتية وأنظمة بطاريات
  • تصميم اللوحات الإلكترونية وتنقيح العتاد

إنترنت الأشياء والأنظمة المتصلة

02
  • نواقل حقلية: RS-485 و UART و I²C و SPI
  • تأطير البروتوكولات بتوقيت العتاد
  • استقبال بيانات القياس ومراقبة الأجهزة
  • استدلال على أطراف محدودة الموارد
  • شبكات حسّاسات واكتساب بيانات
  • إدارة البطاريات وقياسات الطاقة

الخدمات الخلفية وتصميم الأنظمة

03
  • C# و ‎.NET Core، Python و FastAPI
  • التصميم المُوجَّه بالمجال و CQRS
  • تصميم واجهات REST وإصداراتها وتوثيقها
  • مصادقة JWT وإصدار المفاتيح وتدويرها
  • التخزين المؤقت وتحسين المسارات الساخنة
  • Docker و Linux و Git و CI/CD

قواعد البيانات ونمذجتها

04
  • PostgreSQL و SQL Server
  • تصميم المخطّطات والتقييس
  • فهرسة مبنية على أشكال الاستعلامات الفعلية
  • تحليل خطط التنفيذ وضبط الأداء
  • إدخال متكرّر آمن وترحيلات مُصدَّرة
  • المعاملات والتزامن والقيود

الويب والواجهات الأمامية

05
  • SvelteKit و TypeScript
  • Tailwind CSS وأنظمة تصميم
  • Capacitor للتوزيع على Android
  • واجهات متجاوبة وقابلة للوصول
  • الأداء ومؤشرات Core Web Vitals
  • نشر ساكن ونشر بتصيير من الخادم

الرؤية والخوارزميات

06
  • YOLO v8 و v11 وضبط الاستدلال الطرفي
  • OpenCV وتتبّع IoU وتنعيم EMA
  • بنى المعطيات والخوارزميات
  • نظرية الغراف والبرمجة الديناميكية
  • تحليل التعقيد والتحسين
  • برمجة تنافسية على مدى سبع سنوات
06 / الخبرة

الخبرة والتعليم

منذ كانون الثاني 2026
حالياً

مهندس روبوتات

SWB AI · حلب، سوريا

  • بناء وبرمجة روبوتات خدمية ذاتية القيادة على ROS 2 Jazzy، منها وحدات منارة العاملة في مكة المكرمة والمدينة المنورة.
  • كتابة الجسر البرمجي بلغتَي C++ و Python الذي يقرأ بيانات إدارة البطارية والحسّاسات فوق الصوتية عبر RS-485 وينقلها إلى مواضيع ROS 2.
  • تنفيذ بروتوكولات تسلسلية وتنقيحها، وضبط توقيت العتاد للحصول على تأطير موثوق لبيانات البطارية.
  • تشغيل الأنظمة المدمجة وتحسينها على Orange Pi 5 Max و Raspberry Pi مع RPLidar.
مستمر
حالياً

مطوّر ويب متكامل

عمل حر · عن بُعد

  • تصميم وتسليم منتجات ويب كاملة: الواجهة البرمجية، وقاعدة البيانات، والواجهة الأمامية، والنشر.
  • خدمات خلفية بـ ‎.NET Core و FastAPI، وواجهات أمامية بـ SvelteKit و TypeScript.
  • تصميم مخطّطات PostgreSQL و SQL Server واستراتيجيات الفهرسة والترحيل.
  • متاح لمشاريع جديدة. البريد أو واتساب أسرع طريقة لبدء الحديث.
حزيران 2023 · آب 2024

مطوّر خدمات خلفية ومصمّم قواعد بيانات

Elkood · حلب، سوريا

  • تصميم وصيانة خدمات ‎.NET Core باعتماد التصميم المُوجَّه بالمجال و CQRS.
  • تصميم وتحليل المخطّطات العلائقية خلف تلك الخدمات: التقييس، واستراتيجية الفهرسة، وتخطيط الترحيل.
  • بناء وتوثيق الواجهات البرمجية لفرق الواجهة الأمامية، بما حسّن التكامل بين المنتجات.
  • خفض أزمنة الاستجابة على المسارات الساخنة بإعادة صياغة الاستعلامات والفهرسة والتخزين المؤقت.
  • مراجعة الكود عبر فريق الخدمات الخلفية وترسيخ الأعراف المعمارية.
منذ كانون الثاني 2022
حالياً

مدرّب حل مسائل

جامعة حلب · حلب، سوريا

  • تدريب الطلاب لمسابقات على نمط ICPC عبر ورشات وجلسات فردية وخطة مؤلفة من 200 مسألة.
  • عضو الفريق التقني لمسابقة حلب: نظام التحكيم والبنية التشغيلية يوم المسابقة.
  • تصميم أدوات تقييم لقياس التقدّم عبر الدفعات.
2019 · 2026
تعليم

بكالوريوس هندسة كهربائية

جامعة حلب · حلب، سوريا

  • تخرّجت عام 2026 من قسم التحكّم الآلي والأتمتة الصناعية، ومنه تأتي خلفية نظرية التحكّم التي يقوم عليها عملي في الروبوتات.
  • مشروع التخرج: تحكّم تكيّفي بتقاطع مروري، وتفاصيله في قسمه أعلاه.
07 / المسابقات

البرمجة التنافسية

أدرّب البرمجة التنافسية منذ 2022 وأعمل ضمن الفريق التقني خلف ACPC، مسابقتنا التابعة لـ ICPC. التدريس أسرع طريقة عرفتها لاكتشاف ما أفهمه فعلاً.

البنية التقنية للمسابقة

ACPC · تابعة لـ ICPC

ضمن الفريق التقني أعمل على الآلة التي تقوم عليها المسابقة: عنقود تحكيم PC² 9.10، وإعداد المحكّمات الآلية، ولوحة النتائج الحيّة، وموزّع البالونات، و Resolver في الحفل الختامي. وكتبت الأداة التي تستورد المسائل مباشرة من Polygon إلى PC²، باختباراتها ومدقّقاتها وحدودها الزمنية، فاختصرت يوم إعداد يدوي كامل إلى أمر واحد.

مدرّب ومحكّم ومتسابق

@Legends_Never_Die

أدرّب فرق جامعة حلب عبر ورشات وجلسات فردية وخطة مؤلفة من 200 مسألة. أختبر مجموعات المسائل قبل يوم المسابقة، وحكّمت في مسابقة إدلب الجامعية للبرمجة. سبع سنوات من المنافسة هي مصدر حدسي في تنقيح الأخطاء: الخلل يكون دائماً تقريباً في الافتراض الذي لم تختبره.

08 / تواصل

لديك روبوت أو نظام مدمج أو منصّة ويب تحتاج أن تعمل فعلاً؟

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