بگذارید با یک عدد شروع کنم: 214-219. این محدوده صفحه در دفترچه راهنمای V6.2.2 است که بلوکهای نقطه شناور در آنجا قرار دارند. شما فکر میکنید فروشنده آنها را آنجا دفن کرده است زیرا هیچکس از آنها استفاده نمیکند. اشتباه است. آنها را آنجا دفن کردند زیرا ریاضیات صحیح برای نود درصد کارها خوب است - و ده درصد آخر جایی است که ماشینهای واقعی زندگی میکنند.
یک میکرو-PLC که SIN، COS، TAN، LN، EXP، SQRT، مقایسههای عدد واقعی و جابجاییهای عدد واقعی را انجام میدهد. ده سال پیش این جمله یک شوخی بود. امروز در یک ماژول ریل DIN 35 میلیمتری که هزینهای کمتر از یک پروب اسیلوسکوپ مناسب دارد، عرضه میشود.
زمانی که ریاضیات صحیح به شما دروغ میگوید
اینجا تله است. مقیاسگذاری یک ورودی آنالوگ 0-10V با ریاضیات صحیح کار میکند - تا زمانی که تقسیم کنید. 6V در یک محدوده 0-1000: تقسیم صحیح باقیمانده را حذف میکند و ناگهان خوانش سطح شما در هر اسکن به اندازه یک واحد تغییر میکند. در طول یک شیفت، این انحراف جمع میشود. در طول یک هفته، مخزن شما سرریز میشود زیرا PLC فکر میکرد سطح خوب است.
نقطه شناور این مشکل را حل میکند. یک بلوک مقیاسگذاری، اعداد واقعی از ابتدا تا انتها، و نویز گرد کردن ناپدید میشود. این یک لوکس نیست. این چیزی است که پمپهای شما را خشک نگه میدارد و مشتریان شما را آرام میکند.
مورد مشخص: کنترل دما PID با ریاضیات واقعی
یک حلقه PID را روی PR-18 تنظیم کنید: ورودی آنالوگ یک PT100 را از طریق یک فرستنده 0-10V میخواند، بلوک PID با بهرههای عدد واقعی محاسبه میکند، خروجی یک کانال PWM برای بخاری را راهاندازی میکند. موتور نقطه شناور ترم انتگرال را پایدار نگه میدارد. در سختافزار فقط صحیح، همان حلقه به برنامهریزی دستی بهره نیاز دارد و هنوز هم در خطای کم نوسان دارد.
من شاهد بودم که یک مهندس راهاندازی به مدت دو روز به دنبال نوسان 0.4 درجه در یک PID صحیح بود. CPU را با مدل نقطه شناور تعویض کرد، در یک ساعت آن را تنظیم کرد. تفاوت هزینه سختافزار خندهدار بود. تفاوت زمان مهندسی نبود.
بلوکهایی که واقعاً استفاده خواهید کرد
صادق باشید: شما از ADD-R، SUB-R، MUL-R، DIV-R و SQRT استفاده خواهید کرد. شاید ROUND و TRUNC هنگام ارائه مقادیر به HMI. توابع مثلثاتی برای پروژههای واقعاً عجیب وجود دارند - محاسبات جریان، حجم مخزن از سطح، جبران زاویه نقاله. وقتی آن درخواست عجیب به دست میآید، نمیخواهید توضیح دهید که PLC شما نمیتواند کسینوس انجام دهد.
و تبدیلهای رشتهای بیشتر از آنچه به نظر میرسد اهمیت دارند. واقعی به رشته، صحیح به ASCII - اینگونه است که شما پیامهای هشدار خوانا و گزارشهای داده بدون زبان اسکریپت HMI میسازید.
هزینه آن چقدر است
چیزی اضافی نیست، وقتی CPU مناسب را انتخاب کنید. بلوکهای نقطه شناور بخشی از کتابخانه استاندارد در نسخه فعلی دفترچه راهنما هستند و نرمافزار رایگان است. تنها هزینه واقعی تغییر عادت است: از فکر کردن به اعداد صحیح دست بردارید، شروع به فکر کردن به واحدهای مهندسی کنید.
مقیاسگذاری به درستی انجام شده
مقیاسگذاری جایی است که نقطه شناور ارزش خود را به دست میآورد و همچنین جایی است که بیشتر اشکالات مقیاسگذاری وجود دارد. خطای کلاسیک: مقیاسگذاری مقدار خام با ریاضیات صحیح و از دست دادن باقیمانده در هر تقسیم. اصلاح کلاسیک: ریاضیات را با اعداد واقعی انجام دهید و یک بار در مرز، جایی که HMI یا SCADA انتظار یک عدد صحیح را دارد، تبدیل کنید. یک بلوک مقیاسگذاری، اعداد واقعی از ابتدا تا انتها، و نویز گرد کردن ناپدید میشود.
ثابتهای مقیاسگذاری را بنویسید جایی که مهندس بعدی بتواند آنها را پیدا کند. یک فرستنده 4-20mA که 0-10 بار را میخواند: فرمول، محدوده خام، محدوده مهندسی - همه اینها باید در یک نظر در بلوک مقیاسگذاری باشد. مقدار "به نظر درست میرسد" به مدت ماهها تا زمانی که دیگر درست نباشد، و شخصی که آن را اشکالزدایی میکند به ثابتها نیاز خواهد داشت، نه به حافظه شخصی که آنها را انتخاب کرده است.
مرزها را در زمان راهاندازی آزمایش کنید: حداقل، حداکثر و نقطه میانه. یک بلوک مقیاسگذاری که در 50% درست است اما در 0% نادرست است، یک نگاه سطحی را میگذرانید و یک فرآیند واقعی را شکست میدهد. سه نقطه آزمایشی، پنج دقیقه، و مقیاسگذاری تمام میشود.
توهم فقط صحیح
یک مکتب فکری وجود دارد که میگوید یکMicro PLCباید فقط صحیح باقی بماند زیرا این کاری است که کنترلکنندههای کوچک انجام میدهند. این یک موضع قابل دفاع از نظر هزینه است و از نظر مهندسی غیرقابل دفاع است به محض اینکه فرآیند شما شامل تقسیم، نسبتها یا هر چیزی شبیه به واحدهای واقعی باشد. سختافزار نقطه شناور در این پلتفرم هزینهای اضافی ندارد؛ قابلیت در کتابخانه بلوک است، نه یک سطح پریمیوم.
هزینه واقعی تفکر فقط صحیح در نگهداری ظاهر میشود: راهحلها - اعداد صحیح مقیاسگذاری شده، اعشار جابجا شده، ریاضیات نقطه ثابت دستی - دقیقاً کدی هستند که هیچکس شش ماه بعد نمیفهمد. نقطه شناور مانند فرآیند خوانده میشود: دما به درجه، سطح به متر، جریان به لیتر در دقیقه. کد خوانا کد قابل نگهداری است و کد قابل نگهداری چیزی است که قرارداد خدمات را سودآور نگه میدارد.
از اعداد صحیح در جایی که ابزار مناسب هستند استفاده کنید - شمارندهها، پرچمها، مقادیر ایندکس. از اعداد شناور در جایی که فرآیند زندگی میکند استفاده کنید. پلتفرم هر دو را به شما میدهد؛ انضباط انتخاب بر اساس سیگنال است، نه بر اساس مذهب.
اعداد واقعی در HMI
صفحات HMI و SCADA باید واحدهای مهندسی را نشان دهند، نه اعداد صحیح خام - و مقیاسگذاری در سمت PLC زندگی میکند. تبدیل را یک بار، در یک بلوک مقیاسگذاری انجام دهید و نمایشگرها در همه جا درجه، بار و لیتر در دقیقه را بخوانند. گزینه دیگر - مقیاسگذاری در هر صفحه، هر برچسب، هر گزارش - یک اشتباه فرمول در حال انتظار است. یک نقطه تبدیل برای هر سیگنال، مستند شده در نظر بلوک، و کل سیستم به زبان اپراتور صحبت میکند.
این تغییر است. سختافزار قبلاً آن را انجام داده است. سبک برنامهنویسی شما آخرین بخش ارتقاء است.












