به نام الله : تو این مطلب از سری مطالب پروژه آردینو، میخوام آموزش کار با سنسور فشار سنج و ارتفاع سنج سری BMP رو براتون قرار بدم، دیتاشیت فارسی سنسور فشار سنج رو قرار بدم، به آموزش نوشتن کتابخونه برای ماژول های میپردازم، یه فایل PDF آموزش و ترجمه دیتاشیت سنسور های سری BMP رو براتون میزارم که توش فرمول محاسبه فشار رو براتون قرار دادم، فرمول محاسبه ارتفاع، توضیح ریجسترها و امکانات این سری از سنسور ها و تفاوت سنسور BM085 و BMP180 رو براتون گزاشتم، یه کتابخونه برا این دو سنسور نوشتم و قرار دادم براتون، کلا هر چی مربوط به این سنسور بود رو براتون قرار دادم، عرضم به حظورتون که این مطلب تو سایت ربات پرنده کاربرد داره(مطلب نه خود سنسور ^_^ کاربرد داره)، شکل زیر سنسور فشار سنج هستش(فک کنم) حالا کدوم مدل هستش دقیقا نمیدونم >>> پروژه و آموزش فشار سنج و ارتفاع سنج با arduino
پروژه و آموزش فشار سنج و ارتفاع سنج با arduino
کارهایی که با سنسور bmp (فشار سنج) میشه انجام داد
- محاسبه فشار محیط
- محاسبه فشار سطح دریا
- محاسبه دمای محیط
- محاسبه ارتفاع از سطح دریا
- محاسبه ارتفاع از سطح زمین
معرفی پایه های ماژول bmp
همین اول اینو بگم که هر کسی میتونه آیسی bmp رو برداره و طبق دیتاشیت مدارش رو ببنده و لذا ممکنه n نوع ماژول bmp085 و bmp180 تو بازار موجود باشه، ظاهرشون فرق داره ولی دیگه پایه هاشون که فرق نداره که، در زیر من برا bmp085 مثال میزنیم یه برد رو و توضیحش میدم پایه هاش رو(البته شکل زیر رو ببینید معلوم هستش و نیاز به توضیح نداره ولی یکمکی توضیح میدم باز) – در ضمن یه وقت پیش خودتون نگید داش مهدی سنسور bmp085 رو توضیح داد و اون یکی رو نداد حالا من چیکار کنم>>> عرضم به حظورتون که هر دو سنسور پایه های اصلیشون یکسان هستش و در هر دو موجود هستش(کلا برا هر دوم سنسور، در هر بردی با هر شکل و شمایلی شما ببینید پایه های VCC و GND و SDA و SCL فقط مورد نیاز ما هستش و هر دو سنسور این 4 تا پایه رو دارن و فقط همین 4 تا پایه به کار ما میاد و در هر بردی با هر شکل شمایلی و ساخت هر ناکجا آبادی این 4 تا پایه موجود هستش، در ضمن اینو هم بگم ریجستر های دو سنسور فوق با هم یکسان هستش و لذا اگه کتابخونه ای پیدا کردید که برا یکی از سنسور های فوق جواب داد به احتمال 101% برا اون یکی هم جواب میده.)
توجه کنید که بعضی برد ها دو تا پایه تغذیه دارن، یکی 5 ولت و یکی 3.3 ولت، اولا شما باید از یکی از این پایه ها استفاده کنید و بهش ولتاژ بدید و نه هر دو، دوما تغذیه سنسور حدودا 3.3 ولت هستش(دقیقا 3.3 ولت نیستش و 3.3 ولت شاملش هستش، اول دیتاشیتش رو ببینید نوشته – حالا زیاد هم مهم نیست) ولی بعضی برد ها و ماژول ها اومدن و یه رگولاتور گزاشتن تا شما بتونید ولتاژ 5 ولت به ماژول اعمال کنید(برا وقتایی که ولتاژ 3.3 ولت ندارید مناسب هستش)
پایه های SCL و SDA مربوط به ارتباط I2C هستن که در مطلب زیر آموزشش رو قرار دادم و باید به صورت جدول زیر به میکرو وصل بشن : آموزش جامع آردوینو جلسه ۱۶ پروتکول i2c twi
SCL | SDA | Any Arduino |
A5 | A4 | Uno, Redboard, Pro/Mini |
21 | 20 | Mega2560, Due |
3 | 2 | Leonardo, Pro/Micro |
خرید ماژول BMP180
ماژول نسخه 180 جدید ترین نسخه از این سری از ماژول های فشار سنج هستش و از همه نظر نسبت به نسخه قبلیش یعنی 085 برتری داره و قیمتشون هم آنچنان فرقی نداره با هم و لذا عقلانی نیستش که بری نسخه 085 رو بخرید.
ماژول فشار بارومتریک BOSCH BMP180
مطالب مرتبط با سنسور فشار سنج
Grove – Barometer Sensor
Using the BMP085
(Arduino Weather Station (AWS
این مطلب هم بخونید خالی از لطف نیستش : ارتفاع شهر های ایران از سطح دریای آزاد و تاثیر آن بر پرواز
توضیحاتی درمورد فشار
دانستنی 1 : تاریخچه بارومتر
دانستنی 2 : کاربرد سنسور فشارسنج در موبایل
دانستنی 3 : واحدهای فشار >>>> یه سایت خوب برای تبدیل انواع واحد به همدیگه : مبدل واحدهای اندازه گیری
دانستنی 4 : Barometer یا فشار سنج وسیله ای کاربردی برای سنجش فشار هوا است. هر چند به نظر هوا بدون وزن به نظر می رسد اما وزن هوا در هر متر مربع از سطح زمین برابر 10 تن است. این نیروی ایجاد شده را فشار می نامیم.
دانستنی 5 : فرض کنیم که فشار هوا کم شود، این تغییر به ما فهماند که باد و طوفانی دارد پیوسته به منطقه ی ما نزدیک می شود. زیرا همیشه باد به سوی مناطق کم فشار روی می آورد. اما بر عکس هر گاه فشار بالا برود نشان خوبی وضع هواست. (منبع : چگونه با فشار سنج هوا را پیش بینی می کنند)
دانستنی 6 : با افزایش ارتفاع هوا کمتر شده(تراکم هوا کم میشود) و وزن و فشار آن کاسته می شود لذا فشار با افزایش ارتفاع کم می شود. ( منبع : بارومتر یا فشار سنج هوا)
دانستنی 7 : افزایش فشار باعث افزایش دما میشه.
دانستنی 8 : فشار هوا در سطح دریاهای آزاد برابر با ستونی از جیوه به ارتفاع 760 میلی متر هستش و هر میلی متر جیوه هم معادل 1.333224 میلی بار هستش، لذا ارتفاع در سطح دریاهای آزاد تقریبا برابر 101,325 پاسکال هستش.
760 mm HG = 1013.25 m bar = 101,325 Pa = 1 atm
سایتی برای تبدیل (میلی بار به میلی متر جیوه و برعکس) : mBar to mmHg
پروژه فشار سنج و ارتفاع سنج با آردوینو
در زیر دو تا پروژه براتون قرار میدم، یکی اطلاعات رو تو پنجره سریال نمایش میده و یکی تو نمایشگر رنگی 1.8 اینچ
نمایشگر 1.8 اینچ رنگی رو هم میتونید از لینک زیر تهیه کنید : ماژول TFT LCD تمام رنگ 1.8 اینچ
و اموزش جامع کار با این نمایشگر رو هم قبلا گزاشتم تو سایت : پروژه و آموزش راه اندازی lcd tft 1.8 inch با آردوینو
دانلود دو پروژه زیر – سنجش ارتفاع و فشار با سنسور bmp
خب امیدوارم این مطلب برای شما دوستان مفید بوده باشه، حامی مالی این مطلب آقای Ali Ghahramani بود، که باعث شد من این مطلب کوچولو موچولو رو براتون بنویسم.
اگه مفید بود هزینه این مطلب رو پرداخت کنید لطفا : برا تموم بیمارها دعا کنید تا هرچه زود تر سلامتیشون رو بدست بیارن
فعلا یا علی
مهمان
سلام از ماژول BM|P 180 میشه برای فشار خون (باتوجه به تبدیل واحد از هکتو پاسکال به میلی متر جیوه) استفاده کرد؟
مهمان
طبیعتا نباید بشه. چون فشار خون با فشار هوا متفاوت هست.
مهمان
باعرض سلام …..لطفا یک ماژول ارتفاع سنج نام ببرید که عمق آب(ازسطح آب تا پایین ترین نقطه آب) را از 2 میلی متر تا 20 سانتی بتواند اندازه گیری کند
مهمان
توی برنامه اون قسمتی که نوشتید ” ارتفاع من از سطح دریا ” اینو اگه یبار وارد کنیم بعد از اینکه دستگاه ریست میشه بعدش خطا میوفته همش و همون مقدار رو جایگزین می کنه و به کل ارتفاع اشنباه میشه.
چه راه حلی دارید برای قضیه؟
ممنون
مهمان
با سلام
بعد از runکردن برنامه این متن رو برام میفرسته
Could not find a valid BMP085 sensor, check wiringنمیدونم چکار کنم؟
لطفا راهنمایی کنین
نویسنده این مطلب
سلام
تنها چیزی که به فکرم میرسه – سنسور خراب-اتصصالات اشتباه- هستش فعلا – غیر اون باید مدار پیشم باشه خودم تست کنم.
مهمان
سلام لطفا یه سنسور یا ماژول پیشنهاد بدید که بوسیله اون فشار آب را اندازه گیری کرد
مهمان
سلام خسته نباشید
من پروژه ارتفاع سنج با سریال مانیتور رو انجام دادم فقط طرز کار با سریال مانیتور چطوره؟
مهمان
با سلام و تشکر از مطلب جالبی که زحمتش رو کشیدی.من ماژول BMP180و نمایشگر 1.8 رو خریدم.فقط برد اردینویی که خریدم نانو ATMEL MEGA 328 P هست.هر کار میکنم برنامه آپلود نمیشه و پیام خطا میده.میشه راهنمایی بفرمایین چه تغییری باید در برنامه ایجاد کنم.آیا شماره ورودیها و خروجیها اشتباهه؟
مهمان
لطفا لطفا راه اندازی این سنسور رو با کدویزن توصیح دهید…
مهمان
سلام
برای راه اندازی ماژول از طریق کدویژن باید از i2c سخت افزاری استفاده کرد؟؟؟؟؟؟؟؟
نویسنده این مطلب
سلام-فرقی نداره ولی خب سخت افزار بهتره.
مهمان
سلام
ممنون از مطلب خوبتون
من یک مشکلی دارم و اون هم اینه هر کاری می کنم خطای :Could not find a valid BMP085 sensor, check wiring! : رو می نویسه توی خروجی!!!!
لطفا راهنمایی کنید.
سنسور را چند بار عوض کردم باز هم نشد.چکار باید بکنم تا جواب بگیرم؟
نویسنده این مطلب
سلام – یه عکس از مدارت بفرست – طوری که اتصالات و خود ماژول و آردوینو معلوم و واضح باشن کاملا.
مهمان
سلام
پشت lcd یک جای sd card هستش.میشه برنامه رو طوری نوشت که هر چند ثانیه یک بار اطلاعاتی که از ماژول میاد رو ذخیره کنه!؟
لطفا راهنمایی کنید
نویسنده این مطلب
سلام – هر کاری بخواین میتونین بکنید!
سوالتون کلی بود.
مهمان
چه جوری انجام بدم؟
منبعی رو دارید که معرفی کنید؟
نویسنده این مطلب
آموزش میکروکنترلر مددنظرتون+آموزش sdکارت با میکرو مد نظرتون رو تو نت سرچ کنید و مطالعه کنید.
مهمان
سلام
بی زحمت میشه دیتاشیت فارسی nrf24l01 رو با فرمت word قرار بدین
نویسنده این مطلب
سلام
تو پروژه ان آر اف با آردوینو گزاشتم
مهمان
این با avr نداره؟
نویسنده این مطلب
تو این سایت نه.
مهمان
اما چرا ارتفاع هی تغییر میکنه؟ ثابت نیست؟ در صورتی که دستگاه ثابته!
نویسنده این مطلب
تو مطلب فک کنم گفتم که خطا داره و 1-2 متری حداقل در نظر بگیرید – چون فشار محاسبه شده دقیق نیست – سنسور خب یکم خطا داره – به دیتاشیت مراجعه کن.
مهمان
خطاش هرچقدر هم باشه قابل تحمله و دقتش هم هرچی باشه.
اما توی یک ثانیه عدد متفاوت میشه! این برای رباطی که بخواد پرواز کنه و بعدش بشینه کار رو سخت میکنه!
نویسنده این مطلب
اینو از اونایی بپرس که ربات پرنده ساختن – تا جایی که من شنیدم سنسور srf میزنن زیر ربات برا این کار.
حالا چقدر بالا پایین میشه؟
میشه ترکیبی از bmp و srf ساخت
مهمان
سلام .
فایل کتابخانه رو چطوری به برنامه اردوینو اضافه کنم . فایل زیپ نیست که!
نویسنده این مطلب
سلام – تو نت سرچ کن – تا مطلب جلسه اول آردوینو – قسمت آخر اون لینک هایی گه گزاشتم رو ببین تا جایی که یادمه – زیپ هم نباشه موردی نیست
مهمان
بله
بسیار ممنون
فایل رو از زیپ خارج کردم . تو پوشه کتابخانه های اردوینو کپی کردم تو کتابخونه ها اضافه شد.
مهمان
سلام. خدا قوت
رفیق یه سوال داشتم. توی آخرین عکسی که گذاشتید در این پست روی نمایشگر ارتفاع هم نمایش داده شده. این ارتفاع از سطح زمین هست؟؟
واقعا این ماژول این قابلیت را داره که ارتفاع از سطح زمین را بده ؟
و در آخر اینکه دقت اندازه گیری ارتفاع چقدره؟
واقعیت من تحصیلات و یا تجربه الکترونیک ندارم و برای یه موضوعی احتیاج دارم ارتفاع از سطح زمین ز کف تا 40 متر را دائم بدونم و ثبت بشه… دنبال سنسور مناسب این کار هستم که موانع هم روش تاثیر نداشته باشه
ممنون از مطالبتون
نویسنده این مطلب
سلام آقا حسین
خب اگه ما ارتفاع سنسور سطح دریا رو داشته باشیم – ارتفاع منقطه زندگیمون از سطح دریا رو هم داشته باشیم – به یه جمع و تفریق میتونیم ارتفاع سنسور از سطح زمین رو محاسبه کرد – البته خب رو دقتش من تضمین نمیکنم – با یکم تست میتونی خطاش رو در بیاری
مهمان
سلام
ممنون از توضیحاتتون
این کتابخانه bmp180 میشه داخل کد ویژن استفاده کرد؟
و این کتابخانه برای bmp280 میشه استفاده کرد؟
ممنون
نویسنده این مطلب
سلام-در حالت عادی نه – نمیدونم