خطای ویرایش آنلاین MicroLogix 1400 با دستور MUL
خطای ویرایش آنلاین MicroLogix 1400 هنگام افزودن دستور MUL با عملوند ثابت. برای منبع ضرب، بهجای ثابت از آدرس Float استفاده کنید.
ویرایش آنلاین MicroLogix 1400 از طریق EtherNet/IP ممکن است زمانی با پیام «برنامه قابل کامپایل نیست. خطای ویرایش آنلاین» شکست بخورد که یک ردیف MUL از یک ثابت لفظی مانند 0.7 در برابر یک منبع صحیح استفاده میکند. همان پروژه ممکن است در حالت آفلاین بدون خطا تأیید شود. کامپایلر ویرایش آنلاین کنترلر، قوانین سختگیرانهتری برای عملوندها نسبت به مسیر آفلاین اعمال میکند و ثابتهای اعشاری در دستورهای حسابی، یکی از عوامل رایج بروز خطا هستند.
ثابت لفظی را با نشانی یک فایل Float که از قبل مقدار 0.7 را در خود دارد جایگزین کنید، سپس پیش از هر تغییر دیگری، ویرایش آنلاین را دوباره آزمایش کنید.
نشانه و پیکربندی
| مورد | پیکربندی معمولِ خطادار |
|---|---|
| کنترلر | MicroLogix 1400 سری A یا B |
| نرمافزار | RSLogix 500 با ویرایش آنلاین |
| دستور | MUL |
| منبع A | N7:2 (صحیح) |
| منبع B | ثابت 0.7 |
| مقصد | N7:7 (صحیح) |
علت اصلی
ویرایشهای آنلاین در MicroLogix 1400 اندازه و نوع عملوند را سختگیرانهتر از کامپایل آفلاین اعتبارسنجی میکنند. ثابت اعشاری بهعنوان Source B ممکن است در برخی تأییدهای آفلاین پذیرفته شود، اما هنگامی که ویرایش باید در تصویر در حال اجرای برنامه کامپایل شود، رد میشود. پیامهای آفلاین مرتبط مانند «اندازه عملوند مطابقت ندارد» نیز به همین دسته از ناهماهنگیهای نوعی اشاره دارند. هر تغییری در MicroLogix برای اجرا بهصورت آنلاین مجاز نیست؛ برخی ویرایشهای ساختاری همچنان به تغییر آفلاین و دانلود نیاز دارند.
روش اصلاح
- یک نشانی Float بدون استفاده را شناسایی کنید (برای نمونه F8:7).
- در حالت آفلاین یا از طریق یک ردیف MOV/مقداردهی اولیه یکباره، مقدار F8:7 را روی 0.7 تنظیم کنید.
- MUL را ویرایش کنید: Source A همچنان N7:2 باشد؛ Source B به F8:7 تغییر کند؛ Destination همچنان N7:7 بماند یا در صورت اهمیت دقت، به یک Float منتقل شود.
- ویرایش آنلاین را بپذیرید و تأیید کنید که ردیف با موفقیت کامپایل میشود.
- یک مقدار مشخص را برای Source A اعمال اجباری کنید و حاصلضرب را هنگام اجرا بررسی کنید.
MUL Source A: N7:2 Source B: F8:7 <-- نشانی Float، نه ثابت لفظی 0.7 Dest: N7:7 <-- یا F8:8 برای دقت کامل
پیامدهای نوع داده
| پیکربندی | نتیجه |
|---|---|
| Source B = ثابت 0.7 | خطای کامپایل ویرایش آنلاین |
| Source B = F8:7، Dest = N7:7 | ویرایش موفق؛ تبدیل به صحیح با رفتار قطع/گرد کردن |
| Source B = F8:7، Dest = F8:8 | ویرایش موفق؛ دقت کامل Float |
با N7:2 = 10 و ضریب 0.7، مقصد صحیح پس از رفتار گرد کردن/قطع، مقدار 7 را نشان میدهد، نه یک Float حفظشده با مقدار 7.0. هنگامی که مقدار قرار است به PID، مقیاسبندی یا مقایسهها وارد شود، نوع مقصد را آگاهانه انتخاب کنید.
محدودیتهای مرتبط با ویرایش آنلاین محاسبات
همین حساسیت کامپایلر آنلاین در دستورهای DIV، عبارتهای سبک CPT در صورت وجود، و زنجیرههای ترکیبی INT/Float که هنگام یک تغییر سریع در زمان کار وارد شدهاند نیز دیده میشود. مهندسان اغلب سه ویرایش آنلاین پیاپی را امتحان میکنند—ابتدا فقط تغییر ثابت، سپس تغییر نوع فایل مقصد، و بعد تغییر کل ردیف—بدون اینکه هرگز از حالت Run خارج شوند. هر کامپایل ناموفق، صف ویرایش در انتظار را در وضعیتی گیجکننده باقی میگذارد. ویرایش ناموفق را بهدرستی لغو کنید، یک تغییر منسجم انجام دهید (ثابت لفظی به نشانی Float)، و فقط یکبار آن را بپذیرید. اگر MicroLogix پس از چند تلاش گزارش کرد که برنامه قابل کامپایل نیست، آفلاین شوید، وجود فایل را بررسی کنید (F8 با تعداد کافی عنصر ایجاد شده باشد)، سپس پیش از تلاش دوباره برای کار آنلاین، یک تصویر سالم و شناختهشده را دانلود کنید.
همچنین تأیید کنید که فایل Float بهوسیله مجوز جدول داده یا گذرواژهای که تأیید آفلاین را مجاز اما تغییر آنلاین را مسدود میکند، محافظت نشده باشد. کنترلرهای MicroLogix 1400 سری A و سری B هر دو از ویرایش آنلاین پشتیبانی میکنند، مشروط بر اینکه نسخههای Firmware و RSLogix 500 با یکدیگر سازگار باشند؛ ناهماهنگی نسخه ابزارها میتواند متن یکسان «خطای ویرایش آنلاین» را به دلایل نامرتبط نشان دهد. یک تصویر از کنترلر آزمایشگاهی که موفقیت دستور MUL با عملوند Float را نشان میدهد نگه دارید تا تکنسینها بتوانند آن را با پروژه کارخانه مقایسه کنند.
تأیید و محدودیتهای گستردهتر
پس از پذیرفته شدن ویرایش، N7:2 را با چند مقدار مختلف اعمال اجباری کنید و در صورت وجود هر دو مقصد، مقصدهای صحیح و Float را روندگیری یا مشاهده کنید. تأیید کنید که ویرایش آنلاین بدون خطا کامپایل میشود، اجرای صحیح MUL را در زمان کار بررسی کنید و اگر دقت اهمیت دارد، مقصد را به یک Float مانند F8:8 منتقل کنید. خطاهای مداوم پس از جایگزینی ثابتهای لفظی باید ابتدا در حالت آفلاین بازتولید و سپس دانلود شوند. هرجا انتظار میرود ویرایشها بهصورت آنلاین انجام شوند، بهجای ثابتهای درونخطی از مقادیر دارای نشانی استفاده کنید. رویههای برنامهنویسی MicroLogix را در کنار سایر استانداردهای PLC و PAC مستند کنید تا تکنسینها بهدنبال خطاهای Ethernet نروند، در حالی که مشکل در واقع یک قانون مربوط به عملوند است.
درباره نویسنده
Mark Townsend | مهندس ارشد اتوماسیون – سامانههای Allen-Bradley
Mark Townsend مهندس ارشد اتوماسیون است و بیش از ۱۸ سال روی پلتفرمهای Allen-Bradley، از جمله ControlLogix، CompactLogix و SLC-500 قدیمی، تجربه دارد. کار روزمره او شامل راهاندازی منطق RSLogix / Studio 5000 و HMIهای FactoryTalk View در ناوگانهای قدیمی و ترکیبی است.