لوحة الخصائص

نظرة عامة

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

Project tree                          Properties panel
+-- Bus                               +-- Name:        OG-Modbus
|   +-- segment_modbus    <-- click   |   Protocol:    [modbustcp ▼]
|       +-- device_motor              |   Interface:   eth0
|           +-- slot_0                |   Bind Addr:   192.168.1.10/24
+-- Programs                          |   Poll:        100 ms
|   +-- PLC_PRG                       |   Enabled:     [x]
                                      |   Port:        502
                                      |   Timeout:     2000 ms

نقرة واحدة على عقدة شجرة تُصيّر فوراً قائمة الحقول المطابقة — نقرة مزدوجة تفتح إضافة إلى ذلك حوار التكوين المشروط (تكوين الناقل) بنفس مجموعة الحقول بالضبط.

اللوحة ملفوفة في QScrollArea وتتمرر عمودياً: الأجهزة ذات امتدادات FDD مع جدول الحالة تصل بسهولة إلى 40+ حقلاً، ويجب أن تبقى جميعها قابلة للوصول حتى عندما تكون اللوحة ضيقة.

شريحة ناقل

عند تحديد شريحة ناقل، تُظهر اللوحة:

الحقلالمعنى
الاسمالاسم المعروض في شجرة المشروع.
البروتوكولmodbustcp، modbusrtu، ethercat، profibus، ethernetip.
الواجهةواجهة الشبكة التي يربط بها الجسر (eth0، eth1، …).
عنوان الربطتدوين CIDR، مثل 192.168.1.10/24. مُتحقق منه.
البوابةالبوابة الافتراضية لعملية الجسر.
فترة الاستقصاءالفترة بـ ms التي يستقصي بها الجسر أجهزته.
مفعّلما إذا كانت العملية الفرعية للجسر نشطة.

الشبكة المتقدمة (كل اختياري)

يعكس نفس المجموعة في FSegmentDialog ويتجاوز افتراضيات نظام التشغيل / الجسر:

  • Subnet CIDR (192.168.24.0/24)
  • نطاق منفذ المصدر (30000-39999)
  • Keep-Alive Idle / Interval / Count (نبضة TCP)
  • الحد الأقصى للاتصالات (0 = غير محدود)
  • VLAN ID (0 = بدون علامة)

خاصة بالبروتوكول

البروتوكولالحقول
modbustcpPort (الافتراضي 502Timeout بـ ms (الافتراضي 2000).
modbusrtuSerial Port (مثل /dev/ttyUSB0Baud Rate، Parity (none/even/odd).
profibusSerial Port، Baud Rate (حتى 12 Mbit/s)، Master Address (0..126).

التسجيل

  • مستوى السجلoff / error / warn / info / debug.
  • ملف السجل — مثل /var/log/forgeiec/segment.log. فارغ = stdout.

جهاز ناقل

الحقلالمعنى
اسم المضيفDNS أو الاسم المعروض.
عنوان IPIPv4 للجهاز.
المنفذمنفذ Modbus على العبد (الافتراضي 502).
معرّف العبدمعرّف وحدة Modbus (0..247).
مجموعة Anvilاسم مجموعة Anvil IPC — وأيضاً اسم AnvilVarList المولّد تلقائياً. إعادة تسميته يعيد تسمية علامة GVL، AnvilVarList وكل متغير مجمّع بـ anvilGroup = oldGroup بشكل متزامن.

تجاوزات متقدمة (كل اختياري، فارغ = الوراثة من الشريحة)

  • عنوان MACAA:BB:CC:DD:EE:FF. مُتحقق منه.
  • EndiannessABCD / DCBA / BADC / CDAB.
  • المهلة بـ ms. 0 = الوراثة من الشريحة.
  • عدد إعادة المحاولات. 0 = الوراثة من الشريحة.
  • وضع الاتصالalways connected أو on demand.
  • البوابة (تجاوز) — فقط عندما يعيش الجهاز في شبكة فرعية مختلفة.
  • الوصف — نص حر (مثل South irrigation valve).

متغيرات الحالة (للقراءة فقط)

كل جهاز يكشف تلقائياً نموذج الخطأ المشترك — سبعة حقول ضمنية تُنشر كموضوع حالة للقراءة فقط عبر Anvil:

الاسمنوع IECالمعنى
xOnlineBOOLTRUE عندما eState = Online أو Degraded.
eStateeDeviceStateحالة الخطأ الحالية.
wErrorCountUDINTإجمالي الأخطاء منذ بدء الجسر.
wConsecutiveFailuresUDINTالإخفاقات منذ آخر Online (تُعاد عند Online).
wLastErrorCodeUINT0 = لا شيء؛ 1..99 شائعة؛ 100+ خاصة بالبروتوكول.
sLastErrorMsgSTRING[48]UTF-8، مبطّن بأصفار.
tLastTransitionULINTوقت Unix (ms) لآخر انتقال حالة.

عندما يكون الجهاز مرتبطاً بـ FDD (وصف جهاز ميداني) عبر catalogRef، يسرد جدول الحالة إضافة إلى ذلك امتدادات FDD المعرفة، مُعلَّمة بـ FDD +<offset> في عمود Source.

في كود ST كل متغير حالة قابل للوصول كـ anvil.<seg>.<dev>.Status.*:

IF NOT anvil.OG_Modbus.K1_Mains.Status.xOnline THEN
    Lampe_Stoerung := TRUE;
END_IF;

وحدة ناقل

وحدات الناقل هي شرائح I/O داخل جهاز. تُظهر اللوحة:

البيانات الوصفية

  • الوحدة (الاسم المعروض أو catalogRef)
  • الفتحة (فهرس الفتحة داخل الجهاز)
  • الكتالوج (مرجع FDD، مثل Beckhoff.EL2008)
  • العنوان الأساسي (إزاحة قاعدة IEC)

جدول متغيرات IO

يسرد كل متغير مجمّع busBinding.deviceId و busBinding.moduleSlot فيه يطابقان هذه الوحدة. الأعمدة:

العمودالمحتوى
الاسماسم المجمّع (قابل للتحرير، مثل Motor_Run).
النوعنوع IEC (قابل للتحرير، مثل BOOL، INT).
العنوانعنوان IEC (%IX0.0، للقراءة فقط).
عنوان الناقلإزاحة سجل Modbus (للقراءة فقط).
الاتجاهin أو out (للقراءة فقط).

ترتيب الفرز: المدخلات قبل المخرجات، ثم تصاعدياً بعنوان الناقل.

سلوك التحرير

كل تحرير في اللوحة يعمل مباشرة مقابل النموذج:

  1. تحرير على الواجهة (editingFinished / valueChanged / toggled).
  2. يُحدَّث حقل النموذج (seg->name = ...).
  3. project->markDirty() يرفع علم القذر.
  4. تُطلق إشارة busConfigEdited.
  5. تنعش النافذة الرئيسية تسمية شجرة المشروع عند الحاجة.

لا يوجد Apply صريح ولا Cancel — التحريرات سارية فوراً. Ctrl+Z (تراجع) على شجرة المشروع يعكس آخر تحرير.

مواضيع ذات صلة