TCP/UDP

با استفاده از رابط TCP/UDP می‌توان داده‌های RAW بین کنترلگر منطقی برنامه نویسی شده و سرور دور ارسال کرد. در همان زمان، یک سرور برای شنیدن داده‌ها نیز می‌تواند شروع شود.

Info: این رابط خودکاراً با چرخه آهسته‌ترین کنترلگر منطقی برنامه نویسی شده همگام می‌شود. پیام‌های سیستم بافر شده‌اند، بنابراین هیچ پیام از دست نمی‌رود.

Monitor

رنگ‌های زیر در Monitor استفاده می‌شوند.

رنگ توضیحات
سفید هیچ خطایی رخ نداده است.
نارنجی تایم اوت به دست آمده است.
سبز اتصال با موفقیت انجام شد.
قرمز اتصال برقرار نشد یا یک تایم اوت بحرانی در هنگام ارسال به دست آمد. ممکن است خطایی در ارتباط UDP تشخیص داده نشده باشد.

Broadcast و Multicast

ارسال و دریافت Broadcast و Multicast از طریق رابط TCP/UDP امکان‌پذیر است. در این صورت، حالت کار در پیکربندی گیت‌وی مناسب انتخاب می‌شود. سپس گزینه‌های مختلفی مانند TCP غیرموجود خواهند بود. علاوه بر این، انتخاب رابط خروجی اجباری خواهد بود.

برای ارسال پیام‌ها، باید IP مطابق با دستورالعمل در کنار فیلد وارد شود. اگر این کار انجام نشود، پیام از طریق Unicast ارسال می‌شود.

حالت توضیحات
Unicast ارتباط مستقیم را امکان‌پذیر می‌کند.
Broadcast محدود ارتباط تنها در شبکه محلی را امکان‌پذیر می‌کند. (بез وابستگی به IP)
Broadcast هدایت شده ارتباط با زیرشبکه Broadcast را امکان‌پذیر می‌کند. برای مثال، 10.0.0.255 اگر زیرشبکه 24 بیت داشته باشد یا به 255.255.255.0 تنظیم شده باشد.
Multicast ارتباط از طریق Multicast را امکان‌پذیر می‌کند. در این صورت IGMP-Snooping استفاده می‌شود.

شناسایی پایان بسته

در پیکربندی خط جدید، شرط برای پایان انتقال داده‌ها تعیین می‌شود. پایان شناسایی شده نیز همراه ارسال می‌شود.

اگر پایان شناسایی نشود، رابط تا رسیدن به تایم اوت یا پایان اتصال منتظر می‌ماند و نتیجه را به کنترلگر منطقی برنامه نویسی شده ارسال می‌کند. بنابراین توصیه می‌شود که تمام بسته‌های دریافتی بررسی شوند. دریافت پیام‌های UDP هیچ تایم اوتی ندارد.

انتقال HTTP

این روش با استفاده از خط جدید زیر تعریف می‌شود:

HTTP

این روش خاص است، زیرا امکان پاسخ دادن به Content-Length در هدر را فراهم می‌کند.

پس از یک طول مشخص

برای پایان یافتن دریافت پس از یک طول مشخص، رشته زیر را می‌توان در پیکربندی خط جدید استفاده کرد:

LEN === ###

در اینجا ### تعداد کاراکترها است. نحوه نوشتن باید دقیقاً مانند این باشد، شامل فضاهای خالی.

Achtung: استفاده از LEN === 1 هر کاراکتر را به صورت جداگانه دریافت می‌کند و ممکن است باعث افزایش بار سرور شود.

پایان خط شخصی‌سازی شده

می‌توان پایان‌های مختلفی برای خطوط تعریف کرد. معمولاً \n یا \r استفاده می‌شود. هر خط یک شناسایی متفاوت از پایان خط را تعریف می‌کند.

زیرا در پیکربندی یک Escape دارند:

\\ \r \n \0

ارتباط

در ارتباط خروجی از طریق TCP، پس از هر درخواست اتصال دوباره بسته می‌شود.

اگر در زمان درخواست sendrecv پاسخ دریافت نشود، رابط ارسال‌کننده تا رسیدن به تایم اوت بلوک می‌شود. در Monitor یک خطا نمایش داده می‌شود.

متغیر توضیحات
send داده‌ها را به سرور ارسال می‌کند.
!send همه داده‌ها را به سرور ارسال می‌کند و در این过程中 هیچ پیام را نادیده نمی‌گذارد.
sendrecv مانند send، اما در انتظار پاسخ است.
!sendrecv مانند !send، اما در انتظار پاسخ است.
response پاسخ از sendrecv. در هنگام رسیدن به تایم اوت، یک رشته خالی برگشت داده می‌شود.
recv داده‌هایی که از سرور محلی دریافت شده‌اند.
error اگر در هنگام انتقال داده خطایی رخ دهد، مقدار درست است. این می‌تواند در sendrecv پس از تایم اوت رخ دهد.

Hinweis: لطفاً به امنیت رابط توجه کنید. داده‌ها هرگز باید مستقیم از طریق اینترنت منتقل نشوند. در اینجا احراز هویت و رمزنگاری از طریق SSL یا TLS وجود ندارد.