لابفيو

من ويكيبيديا، الموسوعة الحرة
اذهب إلى: تصفح، ‏ ابحث
لابفيو

تعديل

لابفيو labview الشركة المصنعة: National Instruments الإصدار الأخير: 13 نظم التشغيل المطلوبة: Windows, Linux, Mac OS X. المجالات التي يستخدم فيها: تحصيل البيانات، أداة تحكمية، اختبارات نظم الأتمتة، تحليل ومعالجة الإشارة، التحكم الصناعي، تصميم النظم الموسعة. الموقع الرسمي: http://www.ni.com/labview (http://www.ni.com/labview)

الشرح عن البرنامج[عدل]

1. مقدمة تاريخية[عدل]

لقد جاءت تسمية هذا البرنامج LabVIEW اختصاراً لـ (Laboratory Virtual Instrumentation Engineering Workbench أي المخبر وورشة العمل الافتراضية للهندسة الإلكترونية )، وهو عبارة عن بيئة برمجية وأداة تطويرية متكاملة أنتجتها شركة National Instruments الرائدة في صناعة الإلكترونيات الدقيقة والنظم الموسعة، ويمكن اعتباره أداة تعتمد في عملها على البرمجة المرئية Visual Programming حيث تستخدم لغة الـ G المعروفة بإمكانياتها الرسومية وتطبيقاتها، وقد ظهرت بيئة LabVIEW بداية الأمر كمنتج من الشركة المصنعة خاصة بتطبيقات النظم الحاسوبية Apple Macintosh عام 1986، ومن ثم انتقل ليتوافق مع أنظمة التشغيل Windows و UNIX, Linux ويستخدم فيها استخداماً أكاديمياً وصناعياً في عمليات تحصيل البيانات والأتمتة والتحكم الصناعي لينتهي بالإصدار رقم 13 لعام 2013 . ... . ..

2. البرمجة باستخدام تدفق المعطيات[عدل]

إن اللغة التي استخدمت في برمجة بيئة LabVIEW هي اللغة المسماة G، والتي يصطلح تسميتها بلغة برمجة تدفق المعطيات Dataflow Programming Language، والتي يحدد تنفيذ التعليمات فيها ببنية مخطط صندوقي لا بأوامر سطرية على غرار لغات أخرى، ويأخذ الملف التنفيذي في هذه اللغة اسم LV-Source Code الذي يقوم المبرمج فيه بالربط بين عقد صناديق التوابع بواسطة أسلاك افتراضية يقوم برسمها، وتقوم هذه الأسلاك المرسومة بنشر المعطيات ودفعها ما بين العقد، وتقوم العقد بتنفيذ البرنامج طالما وجدت لديها معطيات دخل حديثة للتنفيذ، وبما أن هذا الأداء يخلق فرصة لوجود حالات دخل متعدد في نفس اللحظة فقد تمتعت هذه اللغة البرمجية بقدرات معالجة وتنفيذ متوازٍ للبيانات والتوابع، وتنطوي عملية المعالجة المتوازية تلك على الاستفادة من الكيان الصلب للحاسوب في عمليات وصل ومعالجة أوتوماتيكية ومجدولة، حيث يقوم نظام التشغيل المنصب على الحاسب بلعب دور حلقة الوصل بين وحدة المعالجة الأساسية في كتلة البرنامج والعقد التي تقع على عاتقها تنفيذ البرنامج، نعلم أن الأمر يبدو معقداً إلى حد ما ولكن الفهم المتكامل يتطلب التعمق في لغة البرمجة G وخوارزميات المعالجة المتوازية، حتى أن المبرمجين التقليديين يبدون امتعاضهم ورفضهم استخدام سمات تدفق البيانات الخاصة ببرنامج LabVIEW حيث يصفونها بالصعبة والمعقدة وغير المجدية، ويأتي هذا الوصف حقيقة عن سوء فهم أو نقص في المعلومات حول منهجيات برمجة تدفق المعطيات، حيث إن المنهجية التنفيذية التي تم شرحها تتلخص في ربط متتالٍ لمخارج العقد بمداخل عقد أخرى، ومن الممكن امتلاك مهاراتها برمجياً مثلها مثل أي مهارة برمجية نصية كلغة الـ C و Visual Basic، كما أن LabVIEW لا يحتاج في برمجته إلى تعريف للتوابع (وهو يشابه في هذا برنامج MATLAB) إذ إن السلك الافتراضي يعرف المتحول تلقائيا بناءً على البيانات التي ينقلها من عقد لأخرى (وهذا ما يصطلح تسميته بـ PolyMorphism أو الشكلية المتعددة ).

http://www.4electron.com/phpbb/download/file.php?id=1449
LV2.jpg (24.29 KiB) شوهد 825 مرات

توضح الصورة برنامجاً بسيطاً مكتوباً بواسطة LabVIEW يعمل على توليد وتحليل واستعراض أشكالاً موجية مختلفة، كما تظهر المخططات الصندوقية ولوحة أمامية Front Panel خاصة بمولد الأمواج. كل صندوق من عناصر المخطط يمثل تابعاً فرعياً Subroutine (subVI)، وهو ما يمكن أن يكون برنامجاً آخر مكتوباً باستخدام LabVIEW أو أحد توابعه المكتبية الجاهزة.

3. البرمجة الرسومية[عدل]

يعتمد برنامج LabVIEW بشكل كبير على الواجهات الرسومية (والتي يسميها Front Panel أو اللوحات الأمامية ) ويعدها حلقة أساسية من حلقات تطوير برامجه وملفاته، ويصطلح تسمية توابعه بالأدوات الافتراضية Virtual Instruments أو باختصار VIs، وتتألف كل أداة افتراضية من ثلاثة عناصر: مخطط صندوقي Block Diagram، لوحة أمامية Front Panel والسطح الواصل Connector Pane (الذي يساعد في وصل الأدوات بين بعضها وتضمينها داخل بعضها)، أما العناصر التحكمية والمؤشرات في نافذة لوحة التحكم فهي تسمح للمعاملات التي تم استخدامها في إحدى الصناديق بتمرير المعطيات أو استخلاصها من/إلى صندوق أو أداة افتراضية أخرى، وبالتالي، يمكن للأداة الافتراضية أن تعمل كبرنامج مستقل بذاته ومزود بواجهة تخاطب رسومية، أو يستخدم كعقدة يمكن تضمينها في المخطط الصندوقي لأداة افتراضية أخرى، وتقوم لوحة التحكم بتحديد الدخل والخرج للعقد المرتبطة بتلك الأداة باستخدام السطح الواصل. توفر هذه الطريقة في التعامل مع البرنامج مزايا كثيرة أهمها: إمكانية فحص كل أداة افتراضية على حدة قبل تضمينها كتابع فرعي في برنامج أكبر حجماً وأكثر مهاماً.

تسمح طريقة التضمين السابقة لغير المبرمجين باستخدام LabVIEW في إجراءاتهم البحثية ( وهي تشابه بذلك كلاً من NI Multisim® أو Simulink®) حيث تبقى مهمتهم إدراج الأدوات ضمن مخططات صندوقية أكبر حجماً لتحقيق نظامهم المتكامل، ولكنها في نفس الوقت تفتح المجال أمام المحترفين والمتقدمين ( ككثير ممن يضيقون ذرعاً بمحدودية برنامج Multisim® ) لأن يبنوا عناصرهم وأدواتهم الافتراضية الخاصة بهم وتحقيق خوارزمياتهم المعقدة في بناء أدوات افتراضية جديدة لم يسبق وأن وجدت ومهما كان شكلها، حتى أنه يمكن بناء أدوات افتراضية يمكنها التواصل ببروتوكولات شبكية كبروتوكولات زبون/مخدم مما يحقق مزيداً من المعالجة المتوازية لتدفق المعطيات.

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