فهرست مطالب:
تصویری: Raspberry Pi - MPL3115A2 Precision Altimeter Sensor Java Java: 4 Step
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:54
MPL3115A2 از سنسور فشار MEMS با رابط I2C برای ارائه اطلاعات دقیق فشار/ارتفاع و دما استفاده می کند. خروجی های سنسور با ADC 24 بیتی با وضوح بالا دیجیتالی می شوند. پردازش داخلی وظایف جبران خسارت را از سیستم MCU میزبان حذف می کند. این دستگاه قادر به تشخیص تغییر در 0.05 کیلو پاسکال است که معادل 0.3 متر ارتفاع است. در اینجا نمایش آن با تمشک pi با استفاده از کد جاوا است.
مرحله 1: آنچه شما نیاز دارید..
1. تمشک پای
2. MPL3115A2
3. کابل I²C
4. I²C Shield برای رزبری پای
5. کابل اترنت
مرحله 2: اتصالات:
یک سپر I2C برای تمشک pi بگیرید و آن را به آرامی روی پایه های gpio تمشک pi فشار دهید.
سپس یک سر کابل I2C را به سنسور MPL3115A2 و سر دیگر را به سپر I2C وصل کنید.
همچنین کابل اترنت را به pi وصل کنید یا می توانید از ماژول WiFi استفاده کنید.
اتصالات در تصویر بالا نشان داده شده است.
مرحله 3: کد:
کد جاوا برای MPL3115A2 را می توانید از مخزن github ما- فروشگاه DCUBE بارگیری کنید.
در اینجا پیوند مربوط به آن است:
github.com/DcubeTechVentures/MPL3115A2/tree/master/Java
ما از کتابخانه pi4j برای کد جاوا استفاده کرده ایم ، مراحل نصب pi4j در تمشک pi در اینجا شرح داده شده است:
pi4j.com/install.html
همچنین می توانید کد را از اینجا کپی کنید ، به صورت زیر آمده است:
// با مجوز اراده آزاد توزیع می شود.
// از آن به هر نحوی که می خواهید استفاده کنید ، سودمند یا رایگان ، مشروط بر اینکه در مجوز آثار مربوط به آن متناسب باشد.
// MPL3115A2
// این کد برای کار با ماژول MPL3115A2_I2CS I2C Mini موجود از
واردات com.pi4j.io.i2c. I2CBus ؛
واردات com.pi4j.io.i2c. I2CDevice؛
واردات com.pi4j.io.i2c. I2CFactory؛
واردات java.io. IOException؛
کلاس عمومی MPL3115A2
{
public static void main (String args ) Exception را پرتاب می کند
{
// ایجاد گذرگاه I2C
گذرگاه I2CBus = I2CFactory.getInstance (I2CBus. BUS_1) ؛
// دریافت دستگاه I2C ، آدرس MPL3115A2 I2C 0x60 (96) است
دستگاه I2CDevice = Bus.getDevice (0x60) ؛
// کنترل ثبت را انتخاب کنید
// حالت فعال ، OSR = 128 ، حالت ارتفاع سنج
device.write (0x26 ، (بایت) 0xB9) ؛
// ثبت پیکربندی داده ها را انتخاب کنید
// رویداد آماده داده برای ارتفاع ، فشار ، دما فعال شده است
device.write (0x13، (byte) 0x07)؛
// کنترل ثبت را انتخاب کنید
// حالت فعال ، OSR = 128 ، حالت ارتفاع سنج
device.write (0x26 ، (بایت) 0xB9) ؛
Thread.sleep (1000) ؛
// خواندن 6 بایت داده از آدرس 0x00 (00)
// وضعیت ، tHeight msb1 ، tHeight msb ، tHeight lsb ، temp msb ، temp lsb
بایت داده = بایت جدید [6]؛
device.read (0x00 ، داده ، 0 ، 6) ؛
// تبدیل داده ها به 20 بیت
int tHeight = ((((داده [1] & 0xFF) * 65536) + ((داده [2] & 0xFF) * 256) + (داده [3] & 0xF0)) / 16) ؛
int temp = ((داده [4] * 256) + (داده [5] & 0xF0)) / 16؛
ارتفاع دو برابر = tHeight / 16.0 ؛
دو cTemp = (temp / 16.0) ؛
دو fTemp = cTemp * 1.8 + 32 ؛
// کنترل ثبت را انتخاب کنید
// حالت فعال ، OSR = 128 ، حالت فشارسنج
device.write (0x26، (byte) 0x39)؛
Thread.sleep (1000) ؛
// خواندن 4 بایت داده از آدرس 0x00 (00)
// وضعیت ، pres msb1 ، pres msb ، pres lsb
device.read (0x00 ، داده ، 0 ، 4) ؛
// تبدیل داده ها به 20 بیت
int pres = (((data [1] & 0xFF) * 65536) + ((data [2] & 0xFF) * 256) + (data [3] & 0xF0)) / 16؛
فشار مضاعف = (pres / 4.0) / 1000.0 ؛
// خروجی داده ها به صفحه
System.out.printf ("فشار:٪.2f kPa٪ n" ، فشار) ؛
System.out.printf ("ارتفاع:٪.2f m٪ n" ، ارتفاع) ؛
System.out.printf ("دما برحسب درجه سانتیگراد:٪.2f C٪ n" ، cTemp) ؛
System.out.printf ("دما در فارنهایت:٪.2f F٪ n" ، fTemp) ؛
}
}
مرحله 4: برنامه های کاربردی:
برنامه های کاربردی مختلف MPL3115A2 شامل ارتفاع سنجی با دقت بالا ، تلفن های هوشمند/رایانه های لوحی ، ارتفاع سنج الکترونیکی شخصی و غیره است. همچنین می توان آن را در GPS Dead Reckoning ، تقویت GPS برای خدمات اضطراری ، کمک نقشه ، ناوبری و همچنین تجهیزات ایستگاه هواشناسی گنجانید.
توصیه شده:
Raspberry Pi - TMD26721 Infrared Digital Proximity Detector Java Java: 4 Step
Raspberry Pi-TMD26721 Infrared Digital Proximity Detector Java Java: TMD26721 یک آشکارساز مجاورت دیجیتالی مادون قرمز است که یک سیستم تشخیص مجاورت کامل و منطق رابط دیجیتال را در یک ماژول نصب سطح 8 پین تک فراهم می کند. تشخیص مجاورت شامل بهبود سیگنال به نویز و دقت. یک حرفه ای
Raspberry Pi MCP9803 Temperature Sensor Java Java: 4 Step
Raspberry Pi MCP9803 Temperature Sensor Java Java: MCP9803 یک سنسور دمای 2 سیم با دقت بالا است. آنها با رجیسترهای قابل برنامه ریزی کاربر که برنامه های سنجش دما را تسهیل می کنند تجسم یافته اند. این سنسور برای سیستم نظارت بر درجه حرارت چند منطقه ای بسیار پیچیده مناسب است. اینجا
Raspberry Pi MCP9805 Temperature Sensor Java Java: 4 Step
Raspberry Pi MCP9805 Temperature Sensor Java Java: MCP9805 یک سنسور دمای دیجیتال ماژول حافظه است. این دستگاه با رجیسترهای قابل برنامه ریزی کاربر که انعطاف پذیری را برای برنامه های سنجش دما ایجاد می کند ، گنجانده شده است. این حسگر طوری طراحی شده است که در مدول حافظه پلتفرم موبایل گنجانده شود
Raspberry Pi A1332 Precision Hall - Effect Angle Sensor جاوا: 4 مرحله
Raspberry Pi A1332 Precision Hall - Effect Angle Sensor Java Java: A1332 یک سنسور موقعیت زاویه مغناطیسی قابل برنامه ریزی با وضوح 360 درجه بدون تماس است. این سیستم برای سیستم های دیجیتال با استفاده از رابط I2C طراحی شده است. این دستگاه بر اساس فناوری Circular Vertical Hall (CVH) و یک سیگنال مبتنی بر ریزپردازنده قابل برنامه ریزی ساخته شده است
Raspberry Pi MMA8452Q 3-Axis 12-bit/8-bit Accelerometer Digital Java Java: 4 Step
Raspberry Pi MMA8452Q 3-Axis 12-bit/8-bit Accelerometer Java Java: MMA8452Q یک شتاب سنج هوشمند ، کم توان ، سه محوری ، خازنی ، میکرو ماشین با 12 بیت وضوح است. گزینه های قابل برنامه ریزی کاربر قابل انعطاف با کمک توابع تعبیه شده در شتاب سنج ، قابل تنظیم در دو فاصله