لب ویو (LabView) یک میز کار مهندسی تجهیزات مجازی آزمایشگاهی ( Laboratory Virtual Instrument Engineering Workbench) است. لب ویو یک بستر طراحی سیستمهای مختلف و محیطی برای توسعه یک زبان برنامه نویسی بصری (Graphical Programming Language) است که توسط شرکت National Instruments طراحی شده است.
نرم افزار لب ویو توانایی بسیار بالایی در ارتباط با انواع مختلف سخت افزار دارد. پشتیبانی از تمامی پروتکلهای استاندارد از دیگر ویژگیهای LabView است که باعث شده به عنوان یکی از بهترین گزینههای پیش روی محققین به منظور دستیابی به اهداف صنعتی و آزمایشگاهی خود در کوتاهترین زمان ممکن شود.
نرم افزار لب ویو توانایی ارتباط با بسیاری از دوربینها و تجهیزات کنترلی را داراست. به کمک این نرم افزار میتوان با بیش از ۴۵۰ ماژول اندازهگیری و ۲۰۰ تجهیزات داده برداری که توسط شرکت NI طراحی و ساخته شده است، ارتباط گرفت. پشتیبانی از پروتکلهای استاندارد صنعتی باعث شده که با LabView بتوان بیش از ده هزار درایو صنعتی و ۳۵۰ وندور فعال برای برنامهنویسان صنعتی فراهم کرد. همچنین ارتباط با انواع PLC تحت OPCServer و IOServer به کمک این نرم افزار قابل انجام است.
در این مقاله میخوانیم:
– Data Acquisition چیست و چرا از آن استفاده میشود؟
– بررسی کلی LabView
—- واقعا لب ویو چیست؟
—- زبان برنامه نویسی گرافیکی چیست و جریان داده به چه معناست؟
—- شناسایی محیط برنامه نویسی لب ویو
—- ابزار اندازهگیری مجازی (Virtual Instrument) چیست؟
توضیحات مقدماتی آموزش لب ویو (LabView) / معرفی لب ویو (LabView)
دانلود نسخه اصلی نرم افزار لب ویو (LabView)
سطح آموزش: مقدماتی
پیشنیاز: آشنایی مقدماتی با کامپیوتر + آشنایی نسبی با الگوریتم و فلوچارت
Data Acquisition چیست و چرا از آن استفاده میشود؟
در اندازهگیری سنتی، سنسورها سیگنال را به تجهیزات آنالوگ یا دیجیتال ارسال میکنند. آزمایش کننده دادهها را خوانده و با دست ثبت و ضبط میکند.
در سیستمهای کنترل و جمعآوری داده خودکار (Automated Data Acquisition)، سنسورها به صورت مستقیم سیگنال را به صورت جریان یا ولتاژ به رایانه منتقل میکنند. نرم افزار لب ویو دستیابی و پردازش دادههای جمعآوری شده را کنترل میکند.
مزایای سیستمهای خودکار عبارتند از:
- دقت بالا در ثبت و ضبط داده
- افزایش تعداد دادههای اندازهگیری شده در واحد زمان ( افزایش فرکانس داده برداری)
- پتانسیل بالای پیش و پس پردازش دادهها و توانایی ایجاد کنترل کیفیت
بررسی کلی LabView
واژهی LabView از کلمات ( Laboratory Virtual Instrument Engineering Workbench) تشکیل شده است. این برنامه یک زبان برنامه نویسی گرافیکی ( Graphical Language ) است که امکان کنترل ابزارهای مختلف اندازهگیری، تحلیل و کنترل دادهها و پردازش آنها را فراهم میکند. همانگونه که اشاره شد، لب ویو برای امور مربوط به برنامه نویسی متکی به نمادهای گرافیکی است تا دستورات متنی. اگرچه این نرم افزار امکان برنامه نویسی به صورت زبانهای متنی را نیز داراست.
جریان داده تنها در صورتی که تمامی توابع اطلاعات مورد نیاز خود را دریافت کنند در برنامه اتفاق میافتد.
لب ویو چگونه کار میکند؟
برنامههای نوشته شده توسط لب ویو را اصطلاحا VI و یا ابزار اندازهگیری مجازی میگویند. دلیل این نام گذاری این است که ظاهر و عملکرد آنهای شبیه به تجهیزات واقعی است اما عملیات به صورت مجازی و در کامپیوتر انجام میشود. با این حال برنامههای نوشته شده توسط لب ویو ( Graphical Language ) مشابه توابع و زیر برنامههای موجود در زبانهای برنامه نویسی محبوب C، Fortran، پاسکال و … است.
در شکل زیر نمونهای از یک VI نشان داده شده است.
در لب ویوو یک VI به طور کلی از ۳ قسمت اصلی تشکیل شده است:
- Front Panel
این قسمت رابط کاربری تعاملی VI است. این قسمت میتواند صفحه جلوی یک ابزار فیزیکی را شبیهسازی کند. - The block (or wiring) diagram
کدهای برنامه نویسی که به صورت گرافیکی ( Graphical Language ) و بلوکی است، در این قسمت از VI ساخته میشوند. - Icon/connector
در ادامه به توضیح اینکه چگونه قسمتهای اصلی یک VI با هم کار میکنند، پرداخته میشود. همچنین تفاوت بین Controls و Indicator و همچنین ورودیهای (Terminals) یک Block Diagram مورد بررسی قرار خواهد گرفت.
Front Panel پنجره تعامل
به زبان ساده میتوان گفت Front Panel نرم افزار لب ویو پنجرهای است که کاربر از طریق آن با برنامه تعامل پیدا میکند. ( Graphical Language ) هنگامی که یک VI اجرا میشود، به کمک Front Panel میتوان ورودیهای مورد نظر را به برنامه اعمال کرد. در Front Panel خروجی برنامه نیز قابل مشاهده است.
Front Panel در درجه اول ترکیبی از Controls و Indicators است. Controls در اصل همان ورودیهایی هستند که توسط کاربر به برنامه اعمال میشود. Indicators نیز خروجی است که توسط کاربر مشاهده میشود. در شکل زیر Controls و Indicators عددی نشان داده شده است.
تشخیص Controls از Indicators:
در شکل زیر یک کنترل عددی در لب ویو نشان داده شده است. متناظر با هر Control در پنجره Front Panel، یک بلوک در پنجره Block Diagram وجود دارد. (به لیبل Control در هر دو پنجره توجه شود!) به عبارت دیگر، هر المان در صفحه Front panel، یک المان متناظر در صفحه Block diagram دارد.
سوال: چگونه باید تشخیص داد که آیکون مورد نظر یک Control است یا یک Indicator ؟
سادهترین روش برای تشخیص اینکه در لب ویو با یک Control مواجه هستیم یا یک Indicator، مراجعه به پنجره Block Diagram است. اگر مطابق شکل ترمینال (به مثلث نشان داده شده ترمینال میگویند) در سمت راست المان قرار داشت، مطمئناً آن المان یک Control است. اگر ترمینال در سمت چپ المان قرار داشت آن المان یک Indicator است. علاوه بر آن، مرز اطراف المان Control نسبت به Indicator از ضخامت بالاتری برخوردار است.
اما آیا میتوان یک Control را به Indicator یا بالعکس تبدیل کرد؟ در ادامه به این موضوع پرداخته خواهد شد.
تبدیل Controls به Indicators:
جهت تبدیل Control به Indicator در لب ویو کافیست بر روی Control مورد نظر کلیک راست کرده و از پنجره باز شده گزینه Change to Indicator انتخاب شود. در اینصورت مشاهده میشود که محل ترمینال بلوک مورد نظر به سمت چپ رفته و ضخامت مرزی المان کاهش مییابد.
جهت تبدیل Indicator به Control کافیست بر روی Control مورد نظر کلیک راست کرده و از پنجره باز شده گزینه Change to Control انتخاب شود. در اینصورت مشاهده میشود که محل ترمینال بلوک مورد نظر به سمت راست رفته و ضخامت مرزی بلوک افزایش مییابد.
در شکل زیر نحوه تبدیل Control به Indicator نشان داده شده است:
هنگامی که حجم برنامه در Block Diagram بالا باشد، برنامه نویس تصمیم میگیرد که ابعاد المان را کاهش دهد. برای اینکار مطابق شکل زیر بر روی المان مورد نظر کلیک راست کرده و در پنجره ظاهر شده روی گزینه View As Icon کلیک میشود. با اینکار المان به صورت نوع داده (Data type) نشان داده میشود و حجم برنامه نویسی کاهش مییابد.
نکته: به صورت پیش فرض تمام بلوکها به صورت آیکون دیده میشوند. برای اینکه بلوکها به شکل Data Type دیده شوند. ابتدا وارد مسیر Tools—>option شده و مطابق شکل در پنجره option و در دسته Block Diagram و در قسمت General، تیک گزینه Place front panel terminals as icons برداشته میشود.
گره (Node):
گره یا Node فقط یک کلمه فانتزی برای یک عنصر اجرای برنامه است. گره ها در زبان برنامه نویسی G مشابه دستورات، عملگرها، توابع و زیر برنامهها در زبانهای برنامهنویسی استاندارد است. توابع جمع و تفریق و حلقههای For و While نمونهای از گره یا Node است. همچنین لب ویو، شامل گرههای مخصوصی است که Formula nodes نام دارد. این گرهها برای فرمولها و عبارات ریاضی کاربردی هستند.
سیم (Wire):
گرهها و ترمینالهای Controls و Indicators به کمک سیمها به هم متصل شده و تشکیل یک VI میدهند. سیمها دادهها را از یک منبع به یک یا چند مقصد انتقال میدهند.
شکل زیر به معرفی سیم و گره پرداخته است.
انواع سیم در لب ویو:
در لب ویو هر سیم با توجه به اینکه چه نوع دادهای را انتقال میدهد، رنگ و نوع مخصوص به خود را دارد. در جدول زیر این اختلاف نشان داده شده است.
سیم شکسته (Broken Wire):
بعضی اوقات در لب ویو سیم شکسته میشود. معمولا اگر سیم به بیش از یک منبع (Source) متصل باشد و یا اصلا منبعی نداشته باشد، سیم به شکل شکسته در میآید. شکل زیر به بررسی سیم شکسته پرداخته است.
در این مقاله به معرفی نرم افزار لب ویو (LabView) و مقدماتی از Graphical Language پرداخته شد. امیدواریم از این آموزش استفاده کافی برده باشید. خوشحال میشویم نظرات خود را جهت بهبود کیفیت این سری آموزشها با ما در میان بگذارید.
مجله اینترنتی تحلیلک