close
تبلیغات در اینترنت
آموزش فاصله سنج التراسونیک با کامپیوتر
loading...

The Website of Electrical & Eectronics Engineers

  این آموزش ارزشمند توسط دوست عزیزم مهندس ناظم تهیه شده و اکنون به صورت کاملا رایگان در اختیار شما عزیزان قرار میگیرد. ارتباط سنسور SRF02 به کامپیوتر: برنامه تحت C#.net 2010 نوشته شده و به صورت Real time اطلاعات فاصله و شماره سنسور را نمایش می دهد . با استفاده از ماژول USB به سریال خیلی راحت…

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

َAdmin بازدید : 791 چهارشنبه 07 دي 1390 : 20:7 نظرات ()

 

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

ارتباط سنسور SRF02 به کامپیوتر:

برنامه تحت C#.net 2010 نوشته شده و به صورت Real time اطلاعات فاصله و شماره سنسور را نمایش می دهد .
با استفاده از ماژول USB به سریال خیلی راحت به USB وصلش کنید !!
ارتباط سنسور SRF02 به کامپیوتر با پورت سریال

 

 

 

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

ارتباط سنسور SRF02 به کامپیوتر:

برنامه تحت C#.net 2010 نوشته شده و به صورت Real time اطلاعات فاصله و شماره سنسور را نمایش می دهد .
با استفاده از ماژول USB به سریال خیلی راحت به USB وصلش کنید !!
ارتباط سنسور SRF02 به کامپیوتر با پورت سریال

 

 

 

 

تقدیم به تمام دوستان خوبم در Micro-Tech

من سورس را در سی شارپ دات نت 2010 نوشتم .

از لحاظ توضیحات نرم افزاری این موارد قابل ذکر است:

نرم افزار کاملا به زبان ساده نوشته شده و در نرم افزار شما قادر هستید سنسور را در هر لحظه خوانده و مشاهده کنید، از طرفی قادر هستید تا آدرس سنسور را به آدرس دلخواه خودتون تغییر بدهید.

در ابتدای کار یک آرایه دو بعدی از نوع بایتی حاوی (آدرس سنسور و درخواست نوع اطلاعات که در اینجا درخواست به سانتی متر است، به صورت هگز) تعریف می شود.

سپس با دستور Write و متد Oveload دوم آن با یک بازه 1 میلی ثانیه ای درخواست ارسال شده است.(ایجاد وقفه با system.Threading.Thread.Sleep تعریف شده است.)

نهایتا چون سنسور 2 بار اطلاعات را در قالب بایت ارسال می کند، دستور Readbyte در برنامه 2 بار نوشته شده است.

برای پرهیز از هنگ کردن برنامه، من timeout خواندن اطلاعات را تعریف کردم(دستور های serialPort1.ReadTimeout = 1; و serialPort1.WriteTimeout = 20; )

این زمان را شما در ابتدای برنامه می توانید تغییر دهید.... (در صورتی که مشکلی پیش آمد زمان را که بر حسب میلی ثانیه هست تغییر دهید.)

همچنین دستور ReadByte را در دستور try قرار دادم تا مشکلی ایجاد نشود.

تمامی تنظیمات ارسال دیتا و تغییر عدد سنسور نیز به همین شکل اما در آرایه ای جدید تعریف شده است که در صورتی که PDF فارسی جناب ilgar را مطالعه بفرمایید، به راحتی متوجه می شوید.

به مثال زیر که بخشی از برنامه است دقت کنید:
کد:
[align=left]byte[] Sensor1 = new byte[8];

Sensor1[0] = first_value;
Sensor1[1] = 0xA0;
Sensor1[2] = first_value;
Sensor1[3] = 0xAA;
Sensor1[4] = first_value;
Sensor1[5] = 0xA5;
Sensor1[6] = first_value;
Sensor1[7] = final_value;



if (serialPort1.IsOpen == true)
{
serialPort1.Write(Sensor1, 0, 1);
System.Threading.Thread.Sleep(1);
serialPort1.Write(Sensor1, 1, 1);
System.Threading.Thread.Sleep(1);
serialPort1.Write(Sensor1, 2, 1);
System.Threading.Thread.Sleep(1);
serialPort1.Write(Sensor1, 3, 1);
System.Threading.Thread.Sleep(1);
serialPort1.Write(Sensor1, 4, 1);
System.Threading.Thread.Sleep(1);
serialPort1.Write(Sensor1, 5, 1);
System.Threading.Thread.Sleep(1);
serialPort1.Write(Sensor1, 6, 1);
System.Threading.Thread.Sleep(1);
serialPort1.Write(Sensor1, 7, 1);
return;
}
[/align]
در اینجا اگر به ابتدای سورس دقت کنید، در واقع من یک بایت را با اسم first value انتخاب کرده ام که با دستور Switch case در خطوط بالاتر سمپل، پر می شود.

این دستور switch case شماره ابتدایی سنسور را مشخص کرده است .

مقدار final value نیز از comboBox مقدار مورد نیاز را با استفاده از دستور Switch case به خود می گیرد و نهایتا در آرایه جایگزاری می شود.

هدف از این کار تغییر آدرس (شماره سنسور) از هر آدرسی به آدرس دیگر است.

دلیل موفقیت من، تسلط به ز بان c و basic بود که ترجیحا آنرا در C#.net نوشتم و شما می توانید به راحتی آنرا در VB.net نیز شبیه سازی کنید.


دقت فرمایید اجرای این برنامه فقط در C#.net نسخه سال 2010 انجام گیرد و در نسخه های قدیمی تر، با مشکل مواجه می شوید.... (در حقیقت visual Studio 2010 را باید نصب کرده باشید.)

ضمنا برای ارتباط سخت افزاری هم از ماژول آماده FT232 استفاده کنید و tx ماژول را به Rx سنسور و Rx ماژول را به TX سنسور بدهید. که به دلیل سادگی مدار آنرا دیگه قرار ندادم...


در صورتی هم که پورت کام سیستم را می خواهید استفاده کنید، از یه max232 به عنوان واسط استفاده کنید تا سطح ولتاژ پورت com را به سطح TTL بیاره.....


http://rozup.ir/up/weee/C#.net_2010_Sample_for_SRF02_By_Mohammad_Reza_Nazem.rar.html

 

ارسال نظر برای این مطلب
این نظر توسط حسین در تاریخ 1391/7/27 و 13:45 دقیقه ارسال شده است

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


نام
ایمیل (منتشر نمی‌شود) (لازم)
وبسایت
:) :( ;) :D ;)) :X :? :P :* =(( :O @};- :B /:) :S
نظر خصوصی
مشخصات شما ذخیره شود ؟ [حذف مشخصات] [شکلک ها]
کد امنیتی
تبلیغات
Rozblog.com رز بلاگ - متفاوت ترين سرويس سایت ساز
درباره ما
Profile Pic
به "weee" خوش آمديد . اين سايت با هدف افزايش سطح علمي دانشجويان و مهندسان برق کشور سرویس دهی می کند . باعث افتخار ماست که با ارسال مقالات و پروژه های خود ، ما را یاری کنید تا قدمی در راستای پیشرفت سطح علمی برداشته باشید.
اطلاعات کاربری
نام کاربری :
رمز عبور :
  • فراموشی رمز عبور؟
  • نویسندگان
    آمار سایت
  • کل مطالب : 176
  • کل نظرات : 108
  • افراد آنلاین : 1
  • تعداد اعضا : 2262
  • آی پی امروز : 29
  • آی پی دیروز : 28
  • بازدید امروز : 109
  • باردید دیروز : 67
  • گوگل امروز : 0
  • گوگل دیروز : 0
  • بازدید هفته : 109
  • بازدید ماه : 1,733
  • بازدید سال : 10,767
  • بازدید کلی : 439,570