Surveying LabVIEW

اتوماسیون با LabVIEW

Surveying LabVIEW

اتوماسیون با LabVIEW

RTD

یکی از پرکاربردترین وسایل مورد استفاده در پورت آنالوگ، مبدل حرارتی می باشد. 

پرکاربردترین مبدل حرارتی، RTD  است که دمای محیط را به ولتاژ تبدیل می کند.  

RTD: Resistance Temperature Detector 

 

 

 

اصول و مبانی RTD ها:

RTD بر اساس این مشخصه کار می کند که مقاومت فلز با تغییر دما تغییر می کند، از این ایده استفاده شد و که مقدار تغییر دما، به تغییر مقاومت تبدیل شود.  طبیعتا از فلزاتی استفاده می شود که حساسیت بالاتری داشته باشند. عموما آن را با فلزاتی چون پلاتین، نیکل، آلیاژنیکل-آهن و مس می سازند که هر کدام برای کاربردی استفاده می شوند.

به جهت خصوصیاتی چون خطی بودن ( خطی تر نسبت به دیگر فلزات) پایدار بودن، دقت و... در صنعت از پلاتین استفاده می شود.پلاتین بر اساس استاندارد « دین» ( Deutsches Institut fur Normung DIN) به دو درجه A و B تقسیم شده است.

Grade A: t = +- (0.15+0.002.|t|)     -200  to  650(°C)

Grade B: t = +- (0.30+0.005.|t|)      -200  to  850(°C)

از پلاتین درجه A بیشتر در کارهای آزمایشگاهی استفاده می شود و در صنعت عموما از پلاتین درجه B استفاده می کنند. مقدار مقاومت RTD را با استفاده از این مورد که مفدار ضریب مقاومتی با تعییر دما تغییر می کند به رابطه های زیر رسیدیم:

For T<0; RTD = R0 + R
RTD = R0 × [1 + A × T + B × T2 + (T – 100) × T3]

For T>0; RTD = R0 + R
RTD = R0 × [1 + A × T + B × T2]

مدل خطی RTD = R0 + R
RTD = R0 × (1 + × T)

که R0 مقدار مقاومت پلاتین در دمای صفر درجه است، T دمای پلاتین و A ، B و C ضرایب ثابت اند که از کالیبراسیون می توانیم بدست بیاوریم.

معمولا در جاهایی که تکرار پذیری و خطی بودن اهمیت دارد از RTD ها استفاده می شود . البته RTD در مقابل تکانهای شدید و شوکهای مکانیکی به خوبی ترموکوپل مقاوم نیست و همچنین ماکزیمم دمای آن 1200درجه فارنهابت است ولی ترموکوپل می تواند تا 3100 درجه فارنهایت را اندازه گیری کند.

مدارهای بهسازی

برای بهسازی و تبدیل مقاومت به ولتاژ بیشتر از مدار پل استفاده می شود.RTD به صورت دو، سه و چهار سیمه به مدار پل وصل می شود. در صنعت عموما از دو و سه سیمه استفاده می شود که خطای سه سیمه کمتر از دو سیمه می باشد. از چهار سیمه بیشتر در مصارف آزمایشگاهی استفاده می شود. 

                                                

 

 

 

 

 

 

برای بهسازی RTD مدار های مجتمعی تیز وجود دارد که مقاومت را به ولتاژ تبدیل می کنند.به عنوان مثال مدار مجتمع DSCA34 که در زیر آمده است.

درباره درگاه

پارامترهای مربوط به پورت سریال

اولین پارامتر پورت سریال مربوط به تجهیزات ارتباطات سریال می‏باشد که این تقسیم بندی عبارتند از :

ارتباط ساده   ( Simplex ) : در این نوع ارتباط ، داده فقط در یک جهت انتقال پیدا می کند در واقع دستگاه فقط به عنوان فرستنده و یا فقط به عنوان گیرنده می‏تواند فعالیت کند. به عنوان مثال می‏توان انتقال اطلاعات در سنسور آلتراسونیک را ذکر نمود.

ارتباط نیمه دو طرفه (Half Duplex): در این نوع ارتباط ، داده در هر دو جهت انتقال پیدا می کند پس دستگاه در هر لحظه میتواند به عنوان فرستنده و یا گیرنده عمل کند. به عنوان مثال می‏توان پروتکل RS485 که در اتوماسیون صنعتی و ابزار دقیق کاربرد فراوانی دارد.

ارتباط تمام دو طرفه (Full Duplex): در این نوع ارتباط ، داده در هر دو جهت انتقال پیدا می‏کند مانند ارتباط نیمه دو طرفه با این تفاوت که دستگاه در هر لحظه می‏تواند هم فرستنده و هم به عنوان گیرنده باشد. به عنوان مثال می‏توان پروتکل RS422 که در صنایع مورد استفاده قرار می‏گیرد را در نظر گرفت.

پارامتر بعدی مربوط به پورت سریال به تنظیمات پورتی که مورد استفاده قرار می‏گیرد برمی‏گردد و این تنظیمات عبارتند از:

نرخ انتقال اطلاعات (Bit per Second) :برای برقراری ارتباط و انتقال داده بین فرستنده و گیرنده (به عنوان مثال کامپیوتر و یک برد میکرو کنترلر) باید سرعت فرستنده و گیرنده با هم برابر باشد تا سرعت ارسال اطلاعات توسط یک میکرو کنترلر به کامپیوتر که به عنوان گیرنده می‏باشد هماهنگ شود به عنوان مثال اگر یک برد میکرو کنترلر نرخ ارسال اطلاعات آن ۹۶۰۰ مشخص شده باشد و بخواهیم از Hyper Terminal برای برقراری ارتباط آن با کامپیوتر استفاده کنیم برای پورت مشخص شده باید سرعت انتقال ۹۶۰۰ را انتخاب کنیم.

تعداد بیت داده ارسالی (Data bits) :تعداد بیت هر داده ای که ارسال می‏شود را در این قسمت مشخص می‏کنیم.

به عنوان مثال اگر کلمه HLC را در نظر بگیریم هر کاراکتر معادل ۸بیت است که در کلمه بالا دارای ۲۴ بیت داده می باشد.

 بیت توازن (Parity bit) :  بیتی است که برای نشان دادن زوج یا فرد بودن تعداد بیت هایی که ۱ می باشند به بیت ها اضافه می شود. بیت توازن برای مشخص کردن خطای کد به کار می رود.

دو نوع بیت توازن داریم: بیت توازن زوج (Even)و بیت توازن فرد(Odd) و بدون بیت توازن (None).

 اگر از بیت توازن زوج استفاده کنیم زمانیکه تعداد یک های داده زوج باشد مقدار بیت توازن صفر می‏ شود و اگر تعداد یک های داده فرد بود مقدار بیت توازن یک می شود.

اگر از بیت توازن فرد استفاده کنیم زمانیکه تعداد یک های داده فرد باشد مقدار بیت توازن یک می‏شود و اگر تعداد یک های داده زوج بود مقدار بیت توازن صفر می‏شود.

۷ بیت داده        ۸ بیت

 تعداد یک ها       بیت توازن زوج    بیت توازن فرد

 ۰۰۰۰۰۰۰(۰)      ۰۰۰۰۰۰۰۰         ۰۰۰۰۰۰۰۱ 

 ۱۰۱۰۰۰۱ (۳)     ۱۱۰۱۰۰۰۱         ۰۱۰۱۰۰۰۱  

 ۱۱۰۱۰۰۱ (۴)     ۰۱۱۰۱۰۰۱         ۱۱۱۰۱۰۰۱ 

 ۱۱۱۱۱۱۱ (۷)     ۱۱۱۱۱۱۱۱         ۰۱۱۱۱۱۱۱ 

برای محاسبه بیت توازن زوج،XORبیتهای ورودی را محاسبه می‏کنیم.

 برای محاسبه بیت توازن فرد،XNORبیتهای ورودی را محاسبه می کنیم.

یک حالت دیگری هم در بیت توازن وجود دارد که None میباشد در این حالت داده به صورت خام ارسال و دریافت می‏شود.

 بیت پایانی (Stop bits) :پایان هر Pack داده یک یا دو بیت برای شناسایی پایان داده همراه هشت بیت داده اصلی ارسال می‏کنیم.

 کنترل جریان داده (Flow Control) : هماهنگ کردن نرخ انتقال بین دو دستگاه برای جلوگیری از ارسال ، از طرف فرستنده پر سرعت به دریافت کننده با سرعت پایین است. کنترل جریان مکانیزمی را برای دریافت کننده جهت کنترل سرعت انتقال فراهم می کند. بنابراین دستگاه دریافت کننده دچار سر ریزی داده از طرف دستگاه ارسال کننده نمیشود.

دارای سه حالت می‏باشد:Xon ، Xoff ، Hardware ، None

Xon-Xoff :کنترل نرم افزاری این مکانیزم است.

در واقع با ارسال دو کد اسکی ۱۷ و ۱۸ وضعیت ارسال داده و دستگاه را مشخص می‏کند و بین فرستنده و گیرنده هماهنگی ایجاد می‏کند.

سخت افزار کنترل جریان(Hardware)  : به عنوان مثال در پروتکل RS232 دو خط کنترل سخت افزاری وجود دارد که کنترل جریان RTS (درخواست ارسال) /CTS (مناسب برای ارسال) را شامل می‏شود.

پورت مجازی چیست؟

در معنا به معنی درگاه است برای ارسال و دریافت اطلاعات استفاده می‏شود.‏

 تمام پورت ها حفاظت شده می‏باشند  و یا به عبارت دیگر بسته هستند و تنها موقعی باز می‏شود که ‏اطلاعات بخواهد از آن عبور کند.

ما در این مقاله قصد معرفی دو پورت مجازی و حقیقی را داریم.

پورت حقیقی Real  Port 

همان درگاه های سخت افزاری می‏باشند که قابل لمس و رویت هستند و مکانی فیزیکی را اشغال می کنند. مبادله ی بیت به بیت اطلاعات تنها از طریق یک کانال را ارتباط سریال می گویند. در چنین حالتی یک بایت از اطلاعات به صورت هشت بیت یکی پس از دیگری ارسال خواهند گردید. مزیت عمده روش فوق استفاده از یک دو زوج سیمRXD , TXD  برای ارسال و دریافت داده است.

پورت سریال یکی از متداولترین روش های موجود جهت اتصال یک دستگاه به کامپیوتر است . با اینکه سیستمهای جدیدتر سعی در استفاده محدود از پورت سریال را داشته و پورت USB را مورد توجه بیشتر قرار می دهند ولی همچنان دستگاههای متعددی در اتوماسیون صنعتی و ابزار دقیق مانند PLC و HMI و بعضی از سنسور ها مانند شتاب سنج ها هستند که هنوز از پورت سریال برای راه اندازی آن استفاده می‏شود پورت های سریال یک کانکتور استاندارد و یک پروتکل را به منظور اتصال دستگاههایی نظیر همان PLC و … به کامپیوتر را ارائه می نمایند.

پورت مجازی    Virtual Port

پورت مجازی توسط یک درایور نرم افزاری ایجاد می‏شود.

یک سیستم عامل دارای ۶۵۵۳۶ عدد پورت مجازی میباشد که از شماره ۰ شروع و با شماره ۶۵۵۳۵ به اتمام میرسند.

 استفاده از پورت سریال مجازی مشابه پورت سریال واقعی است و کافی است درایور مربوط به آن را نصب کرد و با تعیین شماره پورت مجازی و تنظیم پارامترهای مربوط به آن که شامل Baudrate ,Data bites ,Stop bits ,Flow control می‏باشند ( که به صورت کامل در مقاله‏های بعدی توضیح خواهیم داد ) می‏توان آن را به یکی از  برنامه ‏های کاربردی نظیر HyperTerminal یا LabVIEW  یا …. متصل کرد.

آیا همیشه میتوان از پورت مجازی به جای پورت سریال استفاده کرد؟

در بعضی از پروژه‏ های اتوماسیون صنعتی یا ابزار دقیق نرم افزارهای آنها روی پورت سخت افزاری قابل اجرا هستند و استفاده از پورت نرم افزاری امکان پذیر نیست.

لازم به ذکر است که پورت مجازی(VCP)  هنوز در صنایع اتوماسیون صنعتی جای خود را به دلایلی باز نکرده است یکی از این دلایل گم کردن پورت USB  می‏باشد. به عنوان مثال ما در بعضی پروژهها نیاز به این داریم که تغذیه سخت افزار از طریق کامپیوتر تامین شود این  امکان برای USB موجود است زیرا دارای پایه تغذیه مستقل می‏باشد اما برای سریال حقیقی این امکان وجود ندارد که میکرو Xmega  به دلیل کمتر مصرف کردن جریان نسبت به میکرو AVR  از کاربرد بهتری در اینگونه پروژهها دارد.

کاربرد پورت مجازی و حقیقی

به عنوان مثال اگر یک میکروکنترلر Xmega را بخواهیم به یک PC متصل کنیم که بر روی آن پورت حقیقی وجود نداشته باشد می‏توانیم توسط نصب درایور و استفاده از آی سی سخت افزاری مانند FT232 امکان اتصال میکرو Xmega  را داشته باشیم.

پروتکل های ارتباطی در نرم افزار لب ویو

پروتکل های ارتباطی در نرم افزار لب ویو

Function>>Data Communication>>Protocols

یکی از قدرت های نرم افزار LabVIEW برقراری ارتباط با دنیای خارج از کامپیوتر از طریق پروتکل های متفاوت است.

 در این مقاله قصد داریم توضیح مختصری در مورد این پروتکل ها بدهیم و در مقالات بعدی هر پروتکل را به صورت کامل آموزش خواهیم داد.

پروتکل TCP

پروتکل TCP/IP با گرفتن یک آی پی می تواند با تجهیزات دیگر ارتباط برقرار کند این پروتکل یک شیوه انتقال داده امن

می باشد. و امکان این را دارد که به راحتی تجهیزات ابزار دقیق و یا سنسورها را شبکه کنید.

پروتکل TCP/IP به تازگی وارد زمینه اتوماسیون صنعتی و ابزار دقیق شده است و دارای تجهیزات گران قیمتی می باشد.

 و بعضی شرکت ها سنسورها و ترانسمیترهایی را روانه بازار کرده اند که سوکت RJ45 به صورت مستقیم به آنها وصل

می شود. آینده اتوماسیون صنعتی و ابزار دقیق در این پروتکل خلاصه می شود زیرا با داشتن یک IP Valid می توانید.

این اطلاعات را در یک کشور دیگر تحویل بگیرید.

که این فاصله با گران قیمت ترین فرستنده گیرنده رادیویی هم، به این راحتی پوشش داده نمی شود.

پروتکل UDP

 مانند پروتکل TCP است با این تفاوت که امنیت انتقال اطلاعات در این پروتکل مانند TCP نیست اما حجم داده های زیادتری

را می تواند منتقل کند که برای انتقال اطلاعات صوت و یا تصویر از این پروتکل استفاده می کنند.

اگر مقداری از داده های صوت و یا تصویر از بین برود خیلی نمایان نیست اما در پروتکل TCP اگر اطلاعات یک سنسور دما

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

پروتکل Serial

نام های دیگر این پروتکل RS232 ویا Visa است که کاربرد بسیار زیادی در اتوماسیون صنعتی و ابزار دقیق دارد.

به راحتی می توانید توسط مبدل هایی این پروتکل را تبدیل به پروتکل های RS485,TCP/IP,CAN بکنید.

در مقاله بعدی به صورت کامل این پروتکل را بهمراه پروژه های کاربردی توضیح خواهیم داد.

پروتکل IrDa

از این پروتکل برای برقراری ارتباط به صورت Wireless استفاده می شود و از تکنولوژی مادون قرمز Infrared 

استفاده شده است که در صنعت کاربرد بسیار کمی دارد. به دلیل اینکه می توان هر کدام از تجهیزات را آدرس مشخصی

داد، در نتیجه شبکه کردن تجهیزات متصل به نرم افزار LabVIEW به راحتی امکان پذیر است.

در حال حاضر در اتوماسیون صنعتی و ابزار دقیق انتقال اطلاعات به فواصل طولانی و شبکه کردن تجهیزات به شدت

مورد توجه قرار گرفته است.

پروتکل Bluetooth

این پروتکل هم مانند پروتکل IrDa در اتوماسیون صنعتی و ابزار دقیق کاربرد چندانی ندارد.

اما یکی از پروژه های جالبی که توسط شرکت ما ( کنترل دیجیتال نوین) انجام شد کنترل یک دستگاه دو محوره

موتورپله ای بود که توسط LabVIEW انجام شد علاوه بر اینکه توسط کامپیوتر کنترل می شد، توسط گوشی موبایل

و پروتکل بلوتوث هم موتور های پله ای کنترل می شدند.

که در یکی از سمینار ها این پروژه را آموزش خواهیم داد.

پروتکل SMTP

 توسط این پروتکل به طور مثال می توانید در صورتیکه حد تعیین شده یک سنسور فشار از مقدار تعیین شده بالاتر رفت

یک ایمیل برای شما ارسال کند. با این پروتکل می توان پروژه های متنوع و جالبی انجام داد.

بطور خلاصه این پروتکل برای ارسال ایمیل می باشد.

معرفی پارامتر های Visa

معرفی پارامتر های Visa

 Function>>Data Communication>>Protocols>>Serial

با استفاده از بلوک های زیر می توانیم از طریق پورت سریال و نرم افزار LabVIEW با دنیای خارج ارتباط برقرار کرد.

در زیر بلوک های اصلی و مهم آنرا آموزش خواهیم داد.

پیکربندی پورت سریال

 قبل از شروع کار با پورت سریال بایستی پارامتر های آنرا تعیین که به کار پیکر بندی می گویند.

Enable Termination Char

این پارامتر کاراکتر پایان دهنده داده را فعال می کند. این کاراکتر چه کاربردی دارد؟ با ذکر یک مثال توضیح می دهم.

شما ۲ نوع داده “ LabVIEW Software ” و “ LabVIEW “دارید

اگر داده ی مانند “LabVIEW” دریافت شد، لب ویو از کجا باید بفهمد که داده به اتمام رسیده یا اینکه هنوز ادامه دارد؟

اگر اشتباه کند و انتهای داده را درست تشخیص ندهد داده “Software” حذف خواهد شد و یا اینکه داده پایان یافته اما منتظر

داده بعدی است. در هر دو حالت سیستم به اختلال می افتد.

برای حل این مشکل از یک کاراکتری به عنوان کاراکتر پایان دهنده در انتهای داده ارسال می شود.

اینکه این پارامتر فعال شود یا خیر، بستگی به پروژه تان دارد مثلا در کارت USB DAQ General ما نیازی نیست این پارامتر فعال شود.

Termination Char

کاراکتر پایان دهنده را مشخص میکند. که به صورت پیش فرض عدد ۱۰ است. دو عدد استاندارد یکی عدد ۱۰ و دیگری عدد ۱۳ وجود دارد. البته می توانید اعداد خاصی هم متناسب با پروژه تان تعیین کنید.

به عنوان مثال در کارت USB DAQ High-speed ما کاراکتر پایانی را عدد ۲۵ قرار دادیم.

Timeout

اگر در زمان مشخص شده اطلاعاتی نیامد خطای Timeout می دهد تا متوجه شویم ارتباط با دستگاه

مورد نظرمان قطع شده است. این موضوع در سیستم های اتوماسیون صنعتی و یا ابزار دقیق برای عیب یابی استفاده می شود.

Visa Resource name

شماره پورت را مشخص می کند.

Baud Rate

 یعنی اینکه سرعت انتقال اطلاعات را معین می کند که برحسب بیت بر ثانیه است. به عنوان مثال اگر Baud rate = 9600

باشد. ۹۶۰۰ بیت بر ثانیه را ارسال و یا دریافت می کند. این سرعت بایستی بین فرستنده و گیرنده یکسان باشد.

Data Bit & Parity & Stop Bit & Flow Control

این پارامتر ها در مقاله ” معرفی پارامترهای پورت سریال” به صورت کامل توضیح داده شده است.

Error In & Error Out

اگر در باز کردن پورت و یا انتقال داده مشکلی پیش بیاید ، با ذکر دلیل مشکل به ما نشان خواهد داد.

دستور نوشتن در پورت سریال

Write Buffer

اطلاعاتی که به صورت یک رشته به این ورودی داده شود را به دنیای خارج ارسال می کند.

Return Count

تعداد کاراکتر هایی را که ارسال کرده به ما نشان می دهد که می توانیم آنرا با داده که در ورودی Write Buffer دادیم

مقایسه کنیم اگر تعداد آنها یکی نبود مجددا ارسال شود.

دستور خواندن از پورت سریال

 Byte Count

تعداد کاراکتر هایی را که از پورت سریال دریافت می کند معین می کند. به عنوان مثال اگر این ورودی را بر روی عدد ۲۰

تنظیم کنیم منتظر می ماند تا ۲۰ کاراکتر را بخواند و سپس ادامه برنامه را دنبال می کند اگر این تعداد را مناسب انتخاب نکنیم خطای Time out می دهد و یا اگر از طول داده دریافتی کمتر باشد قسمت از داده را از دست می دهد.

در نتیجه انتخاب درست این عدد بسیار مهم است.

Read Buffer

داده های دریافتی را به ما نشان می دهد.

بستن پورت سریال

پس از اینکه کار ما با پورت به اتمام رسید بایستی توسط این بلوک پورت سریال را ببندیم در غیر اینصورت یک برنامه دیگر نمی تواند از این پورت استفاده کند و سیستم خطا می دهد. 

« مطالب این یادداشت از سایت شرکت کنترل دیجیتال نوین استخراج شده است » 

تسلسل

به زنجیر در زبان عربی سلسله و در زبان ایتالیایی کاتنا می گویند. 

 

منظور این است که Concatenation یعنی حلقه هایی را به هم بستن و زنجیر ساختن، یعنی تسلسل. 

در زبان لب ویو برای الحاق دو رشته از بلوک Concatenation استفاده می شود: 

"Hello, " C. "World!" => Hello, World!

سر خط

یونیکد برای فرمان «سرخط» دستورات متعددی را پذیرفته است که ردپایی از زمان های قدیم دارد. مثلا تایپیست هایی برای برگرداندن ماسوره، کلمه Carriage Return را ادا می کردند. همین کلمه امروزه به صورت <CR> در زبان های برنامه نویسی به کار می رود. دیگر مخففات برای «سر خط» عبارتند از: 

LF:    Line Feed
VT:    Vertical Tab
FF:    Form Feed
NEL:   Next Line
LS:    Line Separator
PS:    Paragraph Separator

متغییرها

انواع مختلف متغییر در 

Functions>>Programming>>Structures 

موجودند. پرکاربردترین آنها 

  • متغییرهای محلی که در یک برنامه به خصوص در حلقه ها کاربرد دارند. 
  • متغییرهای سراسری که می توانند در چند برنامه که با هم باز شده اند به کار روند. 
  • متغییرهای اشتراکی که در امور کتابخانه ای و وب کاربرد دارند.