Logo 150Logo 150Logo 150Logo 150
  • صفحه اصلی
  • میکروکنترلرها
    • میکروکنترلرهای AVR
      • آموزش AVR در CodeVision
      • آموزش Atmel Studio
      • AVR بیسیک
    • میکروکنترلرهای PIC
    • میکروکنترلرهای ARM
      • خانواده STM32
    • میکروکنترلر 8051
    • برنامه نویسی گرافیکی
      • LabView
  • مقالات
    • خواندنی ها
    • کتاب-جزوه-مجله
  • نرم افزار
    • کتابخانه آلتیوم
      • Microchip
  • پروژه های آماده
  • خرید پروژه
  • حل تمرینات
  • تماس با ما
  • کانال ها
    • کانال تلگرام
    • اینستاگرام
    • آپارات
    • یوتیوب

آموزش راه اندازی پروتکل سریال در LabView

  • صفحه اصلی
  • مطالب سایت میکروکنترلرها برنامه نویسی گرافیکی LabView
  • آموزش راه اندازی پروتکل سریال در LabView
منابع کلاک در ARM
منابع کلاک در ARM سری LPC176x
4 دی, 1395
ارسال پیامک با LabView
ارسال پیامک با LabView
4 دی, 1395
منتشر شده توسط مدیر توسط 4 دی, 1395
دسته‌ها
  • LabView
  • برنامه نویسی گرافیکی
برچسب‌ها
  • labview
  • serial
  • آموزش سریال
  • لبویو
آموزش راه اندازی پروتکل سریال در LabView

بازدیدها: 172

آموزش راه اندازی پروتکل سریال در LabView

یکی از معروفترین و پرکاربردترین پروتکل های مورد استفاده در صنعت، پروتکل سریال می باشد. سهولت استفاده از این پروتکل باعث گشته تا اولین انتخاب مهندسین در زمینه طراحی و انتقال اطلاعات باشد. در پروتکل سریال ، شما با یک سیم می توانید اطلاعات خود را ارسال کنید و در صورتی که می خواهید تبادل اطلاعات بصورت دوطرفه باشد، می بایست از 2 سیم ارتباطی با نام های RX و TX، یکی برای ارسال و یکی برای دریافت اطلاعات استفاده نمایید.

آموزش های زیادی در مورد ساختار و پیکربندی پروتکل سریال موجود می باشد که خارج از حوصله این بحث بوده و می توانید با جستجوی در گوگل به آنها دسترسی پیدا کنید. در این آموزش سعی بر این داریم تا با کمترین بلوک های برنامه، بهینه ترین برنامه ارتباط سریال با LABVIEW را راه اندازی کنیم. برای راه اندزای پروتکل سریال توسط لبویو، تولکیت VISA نیاز می باشد. در صورتی که این تولکیت را نصب ندارید، با مراجعه به آدرس http://www.ni.com/visa این تولکیت را دانلود و نصب کنید. همانطور که می دانید پروتکل سریال دارای یک پورت ارسال و یک پورت دریافت اطلاعات می باشد. در تمامی برنامه ها، برنامه نویسی پروتکل سریال تقسیم به دو قسمت ، یکی دریافت و دیگری ارسال اطلاعات می گردد. توابع لبویو نیز همانند دیگر برنامه ها به دو قسمت دریافت و ارسال اطلاعات تقسیم می شود. در ادامه راه اندازی هر بخش آموزش داده می شود.
ابتدا به آدرس nstrument i/o و سپس serial مراجعه کنید.

پروتکل سریال در LabView

توابع اصلی که ما به آنها نیاز خواهیم داشت:
configure port : برای پیکربندی پورت سریال
write : ارسال اطلاعات ( بصورت رشته)
read : دریافت اطلاعات ( بصورت رشته)
close : بستن برنامه
byte at port : مشخص کردن تعداد کاراکتر دریافتی

اصول راه اندازی پورت سریال به این صورت می باشد که ابتدا از طریق configure port پورت سریال را پیکربندی می کنیم، سپس بر اساس اطلاعات دریافتی، توابع مربوط به خواندن و نوشتن اطلاعات را قرار داده و در انتهای کار پورت سریال را می بندیم. لازم به ذکر است که برنامه دقیقا می بایست در همین چارچوب طراحی گردد. حتی در صورت افزایش توابع نیز می بایست همین مراحل طی شده و در انتها پورت سریال بسته شود، در صورت مغایرت برنامه درست کار نکرده و دچار خطا می گردد. عکس زیر یک برنامه ساده بدون هیچ تابع دریافت و یا ارسال اطلاعات می باشد.

پروتکل سریال در LabView

در این برنامه پورت سریال پیکربندی و سپس بسته می شود. تابع configure دارای پورت های زیادی بوده که با مراجعه به HELP تابع و خواندن توضیحات آن می توانید اطلاعات کاملی را کسب کنید. در ادامه یک تابع نوشتن به این پیکربندی اضافه می کنیم.

پروتکل سریال در LabView

در این برنامه هر اطلاعاتی که در پالت write نوشته شود ارسال می گردد. هم اکنون یک تابع خواندن را جایگزین می کنیم.

پروتکل سریال در LabView

در تابع خواندن، شما می بایست مقدار بافر را مشخص کنید. مقدار بافر را هر عددی مشخص کنید، به عنوان مثال 10، بعد از اینکه 10 کاراکتر توسط تابع دریافت شد در پالت read نمایش داده می شود. این روش در مواردی کاربرد دارد که اطلاعات شما از یک تعداد کارکتر خاص و مشخص پیروی می کنند. اما در صورتی که کاراکتر ورودی شما متغیر باشد، دیگر از این روش نمی توانید استفاده کنید و می بایست قبل از تابع خواندن یک گره اطلاعاتی جهت خواندن تعداد کاراکتر قرار دهید. این گره اطلاعاتی در هر دریافت اطلاعات، تعداد کاراکتر را خوانده و عدد آنرا به بافر تابع ارسال می کند. در این حالت همیشه تعداد دقیق بافر مشخص شده و نیاز به تغییر دستی نمی باشد.

پروتکل سریال در LabView

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

پروتکل سریال در LabView

همانطور که مشاهده کردید، توابع اصلی بسیار ساده هستند، اما رعایت یکسری از موارد جهت کارکرد صحیح برنامه بسیار الزامی می باشند.
به عنوان مثال، در آخرین برنامه، ابتدا توسط لبویو یک رشته ارسال و پس از آن توسط لبویو یک رشته دریافت و چاپ می گردد. می بایست طبق برنامه و مراحل ارسال و دریافت برنامه خود، توابع را در جای مناسب قرار دهید. بیشترین خطایی که احتمال دارد شما با آن مواجه شوید، خطای timeout می باشد. timeout همانند سرریز watch dog در میکروکنترلرها عمل می کند. یعنی بعد از ارسال هر دستور یک تایمر داخلی شروع به کار کرده و در صورتی که تا پایان زمان، دستوری ارسال نگردد، برنامه با یک پیغام خطا متوقف می گردد. در صورت نیاز می توانید زمان timeout را افزایش دهید تا هربار با خطا و توقف برنامه خود مواجه نشوید. شما هم اکنون با پیکربندی کامل پورت سریال و راه اندازی آن آشنا شدید، اما مواردی نیز وجود دارند که برای بهتر کار کردن، مخصوصا با میکروکنترلرها می تواند برای شما مفید باشد. در ادامه این موارد معرفی می گردند. اولین مورد استفاده از یک secuence می باشد. شما با قرار دادن توابعتان در یک secuence می توانید ترتیب راه اندازی و کارکرد توابع خود را مرتب کرده و در مواقع کار با میکروکنترلرها کمتر دچار مشکل شوید.

پروتکل سریال در LabView

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

پروتکل سریال در LabView

همین تاخیر با اندازه بسیار کوچک می تواند به راحتی مشکل را رفع کند. شما با تست و خطا می توانید کمترین زمان را انتخاب کنید. قسمت دریافت اطلاعات از طرف کامپیوتر بوده و احتیاجی به قرار دادن تاخیر ندارد. در صورت رعایت موارد فوق، شما می توانید برنامه های پیچیده و تکمیلتری را طراحی کنید. اما همیشه به این نکته توجه داشته باشید که در مرحله ای که نیاز به تابع خواندن است، تابع نوشتن قرار ندهید. قرار دادن توابع اشتباه باعث بروز خطا و توقف اجرای برنامه می گردد. نکته ای هم وجود دارد که احتمال دارد شما را بعدا دچار دردسر کند، متاسفانه منبعی برای آن وجود نداشت و بعد از تست و خطاهای بسیار موفق به رفع آن شدم. بسیاری از ماژول ها همانند ماژول sim900 هنگام ارسال دستورات، یک پیغام با چند سطر جواب برای شما ارسال می کنند!
به عنوان مثال پاسخ ماژول sim900 به ارسال دستور ATI بصورت زیر می باشد:

ATI
SIM900 REV11
OK

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

پروتکل سریال در LabView

همانطور که مشاهده می کنید، 2 تابع خواندن، هر 2 سطر برنامه را خوانده و در انتها به هم چسبانده و در یک پالت نمایش می دهد. در قسمت VISAتوابع بسیار زیادی موجود می باشد که شما می توانید با کمک آنها برنامه های متنوع و بسیار کاربردی را طراحی کنید. به عنوان مثال تابعی به نام clear وجود دارد که تمامی اطلاعات موجود در بافر را پاک می کند!

پروتکل سریال در LabView

در این برنامه بعد از تابع خواندن، تمامی اطلاعات ارسالی و یا دریافتی پاک می شوند. با مراجعه به HELP توابع می توانید اطلاعات مفیدی در مورد توابع به دست آورید. سعی من در این مقاله، آموزش مستقیم و بدون مقدمه چینی برای راه اندازی پروتکل سریال بوده و امیدوارم که برای شما مفید واقع شده باشد. برنامه لبویو بسیار قوی بوده و دارای هیچ محدودیتی نبوده و معمولا کارکرد اشتباه و خطاهای مربوط به برنامه مربوط به ترتیب نادرست برنامه ما می باشد.

نویسنده: فرشاد اکرمی
منبع: eca.ir

اشتراک گذاری
91
مدیر
مدیر

نوشته‌های مرتبط

ارسال پیامک با LabView
4 دی, 1395

ارسال پیامک با LabView


بیشتر بدانید
پروژه ارتباط سریال اینترفیس با LabVIEW و Flowcode
11 شهریور, 1390

پروژه ارتباط سریال اینترفیس با LabVIEW و Flowcode


بیشتر بدانید
15 بهمن, 1389

آموزش نرم افزار قدرتمند LabView به زبان ساده (مقدمه)


بیشتر بدانید

دیدگاهتان را بنویسید لغو پاسخ

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

پروژه های آماده

  • پروژه جعبه دارویی هوشمند با avr0
    پروژه جعبه دارویی هوشمند با avr
    25 مرداد, 1399
  • پروژه اندازه گیری ضربان قلب با السیدی گرافیکی و ارسال SMS0
    پروژه اندازه گیری ضربان قلب با السیدی گرافیکی و ارسال SMS
    21 فروردین, 1399
  • پروژه اندازه گیری دما بی سیم2
    پروژه اندازه گیری دما بی سیم
    21 فروردین, 1399
  • پروژه محافظ 30 آمپری با avr و نمایشگر LCD0
    پروژه محافظ 30 آمپری با avr و نمایشگر LCD
    4 آبان, 1398
  • کنترل و برنامه ریزی دو رله با زمان یا دما0
    کنترل و برنامه ریزی دو رله با زمان یا دما
    4 آبان, 1398
  • پروژه اندازه گیری جریان و ارسال بیسیم با بورد یک کیلومتر nRF24l010
    پروژه اندازه گیری جریان و ارسال بیسیم با بورد یک کیلومتر nRF24l01
    17 خرداد, 1398
  • پروژه محافظ برق و اندازه گیری توان مصرفی با avr و نمایشگر سون سگمنت2
    پروژه محافظ برق و اندازه گیری توان مصرفی با avr و نمایشگر سون سگمنت
    14 خرداد, 1398
  • ساعت دیجیتال دارای تقویم شمسی و زنگ هشدار1
    ساعت دیجیتال دارای تقویم شمسی و زنگ هشدار
    7 فروردین, 1398
  • پروژه کنترل دور فن یا موتور توسط سنسور دما0
    پروژه کنترل دور فن یا موتور توسط سنسور دما
    17 اسفند, 1397
  • پروژه کنتور برق با AVR و ارسال اطلاعات توسط سیم کارت0
    پروژه کنتور برق با AVR و ارسال اطلاعات توسط سیم کارت
    22 آذر, 1397
  • پروژه کنترل رله توسط پورت USB با AVR و C شارپ 12 کاناله0
    پروژه کنترل رله توسط پورت USB با AVR و C شارپ 12 کاناله
    24 تیر, 1397
  • دیمر دیجیتال با AVR به زبان سی
    دیمر دیجیتال با AVR به زبان سی
    24 آذر, 1396
  • پروژه فاصله سنج با سنسور مادون قرمز شارپ Sharp
    پروژه فاصله سنج با سنسور مادون قرمز شارپ Sharp
    15 آذر, 1396
  • این پروژه یک ساعت آنالوگ، تاریخ شمسی و روزه هفته به زبان فارسی به همراه ساعت دیجیتال می باشد. قابلیت تنظیم ساعت و تاریخ توسط سه عدد میکروسوئچ
    ساعت آنالوگ با AVR و lcd گرافیکی به زبان c
    6 آذر, 1396
  • پروژه نشت یاب گاز و کنترل با SMS
    پروژه نشت یاب گاز و کنترل با SMS
    25 بهمن, 1395
  • پروژه نشت یاب گاز و کنترل با SMS
    پروژه ماشین حساب ساده با السیدی گرافیکی و avr
    30 دی, 1394
  • پروژه فاصله سنج و عمق سنج آلتراسونیک با AVR
    پروژه فاصله سنج و عمق سنج آلتراسونیک با AVR
    10 دی, 1394
  • پروژه mp3 پلیر ساده با avr به زبان C
    پروژه mp3 پلیر ساده با avr به زبان C
    4 دی, 1394
  • پروژه کنترل رله توسط پورت USB با AVR و C شارپ
    پروژه کنترل رله توسط پورت USB با AVR و C شارپ
    30 آذر, 1394
  • پروژه ریموت کنترل 433-315 مگاهرتز تک کاناله با قابلیت لرنینگ
    پروژه ریموت کنترل 433-315 مگاهرتز تک کاناله با قابلیت لرنینگ
    18 آذر, 1394
  • پروژه دماسنج ساده با avr
    پروژه دماسنج ساده با avr
    26 آبان, 1394
  • ماشین حساب مهندسی ساده
    ماشین حساب مهندسی ساده
    12 آبان, 1394
  • پروژه ریموت کنترل 433-315 مگاهرتز 4 کاناله با قابلیت لرنینگ
    پروژه ریموت کنترل 433-315 مگاهرتز 4 کاناله با قابلیت لرنینگ
    6 اسفند, 1393
  • پروژه تایمر-ساعت نجومی (فتوسل بدون نور)
    پروژه تایمر-ساعت نجومی (فتوسل بدون نور)
    24 بهمن, 1393
  • زاویه تابش خورشید,محاسبه ساعت طلوع و غروب خورشید,تاریخ شمسی,avr,زبان c,ساعت,ساعت نجومی,خورشیدی,سروو موتور,کنترلر,DS1307,میکروکنترلر,موقیعت یاب خورشیدی,نجومی,پروژه الکترونیک با avr,پروژه الکترونیک با میکرو,طراحی مدار الکترونیکی,پروژه الکترونیکی,پروژه دانشجویی,پروژه دانشجویی الکترونیک,ساخت پروژه دانشجویی الکترونیک,پروژه الکترونیک دانشجویی
    پروژه کنترلر پنل خورشیدی با استفاده از ساعت نجومی
    11 بهمن, 1393
  • DS1307,AVR,تایمر,دستگاه فتوتراپی,زردی خون نوزاد,فتوتراپی,بیلی روبین,Phototherapy,پروژه الکترونیک با avr,پروژه الکترونیک با میکرو,طراحی مدار الکترونیکی,پروژه الکترونیکی,پروژه دانشجویی,پروژه دانشجویی الکترونیک,ساخت پروژه دانشجویی الکترونیک,پروژه الکترونیک دانشجویی
    پروژه مدار دستگاه فتوتراپی (پایین آورنده زردی خون نوزادان)
    5 بهمن, 1393
  • پروژه محافظ لوازم برقی با avr و نمایشگر LCD
    پروژه محافظ لوازم برقی با avr و نمایشگر LCD
    5 بهمن, 1393
  • پروژه خازن سنج دو حالته از 1nf تا 2000uf
    پروژه خازن سنج دو حالته از 1nf تا 2000uf
    24 آذر, 1393
  • محافظ,برق شهر,اندازه گیری,ولتاژ,avr,زبان c,امنیتی,نوسان,محافظ برق,طراحی محافظ برق,پروژه محافظ برق,پروژه ساخت محافظ لوازم برقی,محافظ یخچال,محافظ تلویزیون,محافظ کامپیوتر,پروژه الکترونیک با avr,پروژه الکترونیک با میکرو,طراحی مدار الکترونیکی,پروژه الکترونیکی,پروژه دانشجویی,پروژه دانشجویی الکترونیک,ساخت پروژه دانشجویی الکترونیک,پروژه الکترونیک دانشجویی
    پروژه محافظ لوازم برقی با avr و نمایشگر سون سگمنت
    2 تیر, 1393
  • پروژه ماشین کنترلی بی سیم با avr
    پروژه ماشین کنترلی بی سیم با avr
    2 تیر, 1393
تمامی حقوق مادی و معنوی برای PicPars.com محفوظ است. شماره همراه 09335751032 جهت ارتباط با خرید پروژها در تلگرام و واتساپ