فهرست مطالب:

اندازه گیری شتاب با استفاده از H3LIS331DL و Raspberry Pi: 4 مرحله
اندازه گیری شتاب با استفاده از H3LIS331DL و Raspberry Pi: 4 مرحله

تصویری: اندازه گیری شتاب با استفاده از H3LIS331DL و Raspberry Pi: 4 مرحله

تصویری: اندازه گیری شتاب با استفاده از H3LIS331DL و Raspberry Pi: 4 مرحله
تصویری: ف۳-۱۰: مثال درمورد اندازه‌گیری شتاب گرانشی با استفاده از حرکت پرتابه 2024, نوامبر
Anonim
Image
Image

H3LIS331DL ، یک شتاب سنج خطی کم توان با عملکرد بالا 3 محور متعلق به خانواده "نانو" ، با رابط سریال دیجیتال I²C است. H3LIS331DL دارای مقیاس های کامل قابل انتخاب 100 گرم//200 گرم/± 400 گرم کاربر است و قادر به اندازه گیری شتاب ها با نرخ داده خروجی از 0.5 هرتز تا 1 کیلوهرتز است. H3LIS331DL تضمین می کند که در محدوده دمایی طولانی از -40 تا +85 درجه سانتی گراد کار کند.

در این آموزش ما قصد داریم ارتباط H3LIS331DL و Raspberry Pi را با استفاده از پایتون به عنوان زبان برنامه نویسی نشان دهیم.

مرحله 1: سخت افزار مورد نیاز:

سخت افزار مورد نیاز
سخت افزار مورد نیاز
سخت افزار مورد نیاز
سخت افزار مورد نیاز
سخت افزار مورد نیاز
سخت افزار مورد نیاز

مواد مورد نیاز برای تحقق هدف ما شامل اجزای سخت افزاری زیر است:

1. H3LIS331DL

2. تمشک پای

3. کابل I2C

4. I2C Shield برای تمشک pi

5. کابل اترنت

مرحله 2: اتصال سخت افزاری:

اتصال سخت افزاری
اتصال سخت افزاری
اتصال سخت افزاری
اتصال سخت افزاری

بخش اتصال سخت افزاری اساساً اتصالات سیم کشی مورد نیاز بین سنسور و تمشک pi را توضیح می دهد. اطمینان از اتصالات صحیح ضروری ترین ضرورت در هنگام کار بر روی هر سیستم برای خروجی مورد نظر است. بنابراین ، اتصالات مورد نیاز به شرح زیر است:

H3LIS331DL روی I2C کار خواهد کرد. در اینجا مثال نمودار سیم کشی است که نحوه اتصال هر رابط سنسور را نشان می دهد.

خارج از جعبه ، برد برای یک رابط I2C پیکربندی شده است ، بنابراین توصیه می کنیم در غیر این صورت آگنوستیک از این اتصال استفاده کنید. تنها چیزی که نیاز دارید چهار سیم است!

فقط چهار اتصال نیاز به پین های Vcc ، Gnd ، SCL و SDA دارد و این اتصالات با کمک کابل I2C متصل می شوند.

این اتصالات در تصاویر بالا نشان داده شده است.

مرحله 3: کد پایتون برای اندازه گیری شتاب:

کد پایتون برای اندازه گیری شتاب
کد پایتون برای اندازه گیری شتاب

مزیت استفاده از تمشک pi این است که به شما انعطاف پذیری زبان برنامه نویسی را می دهد که در آن می خواهید تخته را برنامه ریزی کنید تا سنسور با آن ارتباط برقرار کند. با استفاده از این مزیت این برد ، ما در اینجا برنامه نویسی آن را در پایتون نشان می دهیم. پایتون یکی از ساده ترین زبان های برنامه نویسی با ساده ترین نحو است. کد پایتون برای H3LIS331DL را می توانید از انجمن github ما که فروشگاه DCUBE است بارگیری کنید.

و همچنین برای سهولت کاربران ، ما در اینجا کد را نیز توضیح می دهیم:

به عنوان اولین مرحله کدگذاری ، باید کتابخانه SMBus را در مورد پایتون بارگیری کنید ، زیرا این کتابخانه از توابع مورد استفاده در کد پشتیبانی می کند. بنابراین ، برای بارگیری کتابخانه می توانید از لینک زیر دیدن کنید:

pypi.python.org/pypi/smbus-cffi/0.5.1

همچنین می توانید کد کار را از اینجا کپی کنید:

smbus وارد کنید

زمان واردات

# دریافت I2C busbus = smbus. SMBus (1)

آدرس # H3LIS331DL ، 0x18 (24)

# انتخاب کنترل ثبت 1 ، 0x20 (32)

# 0x27 (39) حالت روشن ، نرخ خروجی داده = 50 هرتز# X ، Y ، Z-Axis فعال است

bus.write_byte_data (0x18 ، 0x20 ، 0x27)

# H3LIS331DL آدرس ، 0x18 (24)# انتخاب کنترل ثبت 4 ، 0x23 (35)

# 0x00 (00) به روز رسانی مداوم ، انتخاب در مقیاس کامل = +/- 100 گرم

bus.write_byte_data (0x18 ، 0x23 ، 0x00)

زمان خواب (0.5)

آدرس # H3LIS331DL ، 0x18 (24)

# داده ها را از 0x28 (40) ، 2 بایت برگردانید

# X-Axis LSB ، X-Axis MSB

data0 = bus.read_byte_data (0x18 ، 0x28)

data1 = bus.read_byte_data (0x18 ، 0x29)

# تبدیل dataxAccl = data1 * 256 + data0

اگر xAccl> 32767:

xAccl -= 65536

آدرس # H3LIS331DL ، 0x18 (24)

# داده ها را از 0x2A (42) ، 2 بایت بخوانید

# Y-Axis LSB ، Y-Axis MSB

data0 = bus.read_byte_data (0x18 ، 0x2A)

data1 = bus.read_byte_data (0x18 ، 0x2B)

# تبدیل داده ها

yAccl = data1 * 256 + data0

اگر yAccl> 32767:

yAccl -= 65536

آدرس # H3LIS331DL ، 0x18 (24)

# داده ها را از 0x2C (44) ، 2 بایت برگردانید

# Z-Axis LSB ، Z-Axis MSB

data0 = bus.read_byte_data (0x18 ، 0x2C)

data1 = bus.read_byte_data (0x18 ، 0x2D)

# تبدیل داده ها

zAccl = data1 * 256 + data0

اگر zAccl> 32767:

zAccl -= 65536

# خروجی داده ها به صفحه

print "Acceleration in X-Axis:٪ d"٪ xAccl

print "Acceleration in Y-Axis:٪ d"٪ yAccl

print "Acceleration in Z-Axis:٪ d"٪ zAccl

کد با استفاده از دستور زیر اجرا می شود:

$> پایتون H3LIS331DL.py gt؛ پایتون H3LIS331DL.py

خروجی سنسور در تصویر بالا برای ارجاع کاربر نشان داده شده است.

مرحله 4: برنامه های کاربردی:

برنامه های کاربردی
برنامه های کاربردی

شتاب سنج هایی مانند H3LIS331DL بیشتر کاربرد آن را در تعویض مشخصات و بازی ها پیدا می کنند. این ماژول حسگر همچنین در سیستم پیشرفته مدیریت قدرت برای برنامه های تلفن همراه استفاده می شود. H3LIS331DL یک سنسور شتاب دیجیتال سه محوری است که با یک کنترل کننده قطع وقوع حرکت روی تراشه هوشمند ترکیب شده است.

توصیه شده: