نگاهی به پایان نامه های انجام شده درباره : طراحی و ساخت سامانه اندازه گیری دمای چند کاناله با قابلیت ... |
![]() |
۴-۱-۳- Receive ASCII.vi
SubVI شکل ۴-۴ یکی از مهمترین قسمت های برنامه است، زیرا داده های اولیه را دریافت می کند و اعمال زیر را روی آنها انجام میدهد:
CheckSum را چک می کند.
تعداد بایتهای دریافتی را چک می کند.
هدر و تریلر را چک می کند.
نوع ترموکوپل را چک می کند.
شماره برد متصل را چک می کند.
در نهایت پس از چک کردن و درست بودن تمام موارد گفته شده، داده اولیه را از داخل داده دریافتی استخراج کرده و برای مرحله بعد ارسال می کند.
شکل ۴-۴: Receive ASCII.vi
۴-۱-۴- Convert String number to number.vi
این SubVI (شکل ۴-۵) یک داده عددی که به صورت Hex ارسال شده است را دریافت می کند، سپس آن را به صورت یک عدد صحیح تبدیل می کند و برای پروسههای بعدی ارسال می کند.
شکل ۴-۵: Convert String number to number.vi
۴-۱-۵- %d to Hex.vi
اینSubVI (شکل ۴-۶)، ۴ عدد صحیح که به صورت متنی است را دریافت می کند، سپس ۴ عدد Hex را به خروجی انتقال میدهد.
شکل ۴-۶: %d to Hex.vi
۴-۱-۶- Check valid board and T.vi
این SubVI (شکل ۴-۷) داده اولیه را دریافت می کند، سپس در قسمت خروجی، دو آرایه میدهد که مشخص می کند کدام ترموکوپلها و کدام بردها به سامانه متصل هستند.
شکل ۴-۷: Check valid board and T.vi
۴-۱-۷- Extract data.vi
این SubVI (شکل ۴-۸) یکی از مهمترین قسمت های برنامه است که دادۀ خام دریافتی را به عدد صحیح (دما) تبدیل می کند، همچنین پیامی مبنی بر متصل بودن یا نبودن ترموکوپل تولید کرده و از طریق پایه Message به خروجی میدهد.
شکل ۴-۸: Extract data.vi
۴-۱-۸- F_CRLF_tcp read.vi
این SubVI (شکل ۴-۹)، مانند بلوک TCP Read عمل می کند با این تفاوت که، داده را تا رسیدن به یک کاراکتر خاص دریافت می کند، سپس کل داده ها را از طریق خروجی data out به قسمت های بعدی ارسال می کند.
شکل ۴-۹: F_CRLF_tcp read.vi
۴-۱-۹- Error Dialog.vi
در این SubVI تمام خطاهای احتمالی سیستم جمع آوری شده است. همانطور که در شکل ۴-۱۰ مشاهده میکنید یکی از ورودیهای این SubVI خطای ورودی (error IN) است تا از روی آن پیام مورد نظر را به کاربر نمایش دهد.
شکل ۴-۱۰: Error Dialog.vi
۴-۱-۱۰- Send ASCII.vi
این SubVI (شکل ۴-۱۱) شماره برد، شماره ترموکوپل و نوع ترموکوپل را میگیرد، سپس دادۀ نهایی که برای بردها ارسال میکنیم را تولید می کند (CheckSum نیز وجود دارد).
شکل ۴-۱۱: Send ASCII.vi
۴-۱-۱۱- Zero before Number less 10.vi
این SubVI (شکل ۴-۱۲) زیر مجموعه SubVI قبل است و قسمتی از کار آن را انجام میدهد؛ یعنی یک متن رشته ای (String) را از روی داده های دریافتی تولید می کند.
شکل ۴-۱۲: Zero before Number less 10.vi
۴-۱-۱۲- Max Min Median Data.vi
از این SubVI (شکل ۴-۱۳) برای بدست آوردن بیشترین مقدار و کمترین مقدار داده های بارگذاری شده روی نمودار استفاده می شود. همچنین به دلخواه کاربر و توسط این SubVI فیلتر Median را روی داده های بارگذاری شده اعمال می کند.
شکل ۴-۱۳: Max Min Median Data.vi
۴-۱-۱۳- Load Data Mode APPENDED (T).vi
به دلیل این که حجم کمی از فضای RAM رایانه کاربر را اشغال کنیم، داده ها را با حالت Appended ذخیره کردهایم، از این رو برای بارگذاری داده ها نیاز به SubVI نوشته شده در شکل ۴-۱۴ داریم.
شکل ۴-۱۴: Load Data Mode APPENDED (T).vi
۴-۱-۱۴- Fill WDT.vi
این SubVI (شکل ۴-۱۵) داده های خام و شماره کانالهای انتخابی را دریافت کرده و دمای مربوط به هر کانال را از طریق خروجی Array 2 به نمودار ارسال می کند.
شکل ۴-۱۵: Fill WDT.vi
۴-۱-۱۵- Name Legend.vi
این SubVI (شکل ۴-۱۶) شماره کانالهای انتخابی کاربر را دریافت می کند و از روی آنها Legend مناسب را برای هر گراف تولید می کند.
شکل ۴-۱۶: Name Legend.vi
۴-۱-۱۶- Number to time String
این SubVI (شکل ۴-۱۷) عددی بر حسب ثانیه دریافت می کند و آن را به زمان (با فرمت رشتهای (String)) تبدیل می کند.
شکل ۴-۱۷: Number to time String
۴-۱-۱۷- Save WDT Graph.vi
این SubVI (شکل ۴-۱۸) گراف لحظه قبل، داده های دریافت شده، زمان t0 و چند پارامتر دیگر را میگیرد و پس از پردازشهای لازم دمای ترموکوپلها را در متغیر Output Graph قرار میدهد و آنها را در رایانه، با نرخ انتخابی توسط کاربر، ذخیره می کند.
فرم در حال بارگذاری ...
[چهارشنبه 1400-08-05] [ 08:42:00 ق.ظ ]
|