فهرست مطالب:

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

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

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

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

در این آموزش ما قصد داریم ارتباط H3LIS331DL با Arduino Nano را نشان دهیم.

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

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

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

1. H3LIS331DL

2. آردوینو نانو

3. کابل I2C

4. I2C Shield برای آردوینو نانو

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

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

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

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

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

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

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

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

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

بیایید اکنون با کد arduino شروع کنیم.

هنگام استفاده از ماژول سنسور با آردوینو ، ما کتابخانه Wire.h را شامل می شود. کتابخانه "Wire" شامل عملکردهایی است که ارتباط i2c بین سنسور و برد آردوینو را تسهیل می کند.

برای راحتی کاربر ، کل کد آردوینو در زیر آورده شده است:

#عبارتند از

// آدرس H3LIS331DL I2C 0x18 است (24)

#تعریف Addr 0x18

void setup ()

{

// راه اندازی ارتباط I2C به عنوان MASTER

Wire.begin ()؛

// برقراری ارتباط اولیه ، تنظیم نرخ باود = 9600

Serial.begin (9600)؛

// شروع انتقال I2C

Wire.beginTransmission (Addr)؛

// کنترل ثبت 1 را انتخاب کنید

Wire.write (0x20) ؛

// محور X ، Y ، Z ، حالت روشن ، نرخ خروجی داده 50 هرتز را فعال کنید

Wire.write (0x27) ؛

// توقف انتقال I2C

Wire.endTransmission ()؛

// شروع انتقال I2C

Wire.beginTransmission (Addr)؛

// کنترل ثبت 4 را انتخاب کنید

Wire.write (0x23) ؛

// تنظیم مقیاس کامل ، +/- 100 گرم ، به روز رسانی مداوم

Wire.write (0x00) ؛

// توقف انتقال I2C

Wire.endTransmission ()؛

تأخیر (300) ؛

}

حلقه خالی ()

{

اطلاعات int بدون علامت [6]؛

برای (int i = 0 ؛ i <6؛ i ++)

{

// شروع انتقال I2C

Wire.beginTransmission (Addr)؛

// ثبت داده را انتخاب کنید

Wire.write ((40+i)) ؛

// توقف انتقال I2C

Wire.endTransmission ()؛

// درخواست 1 بایت داده

سیم. درخواست از (Addr، 1)؛

// خواندن 6 بایت داده

// xAccl lsb ، xAccl msb ، yAccl lsb ، yAccl msb ، zAccl lsb ، zAccl msb

if (Wire.available () == 1)

{

داده = Wire.read ()؛

}

}

تأخیر (300) ؛

// تبدیل داده ها

int xAccl = ((داده [1] * 256) + داده [0]) ؛

int yAccl = ((داده [3] * 256) + داده [2]) ؛

int zAccl = ((داده [5] * 256) + داده [4]) ؛

// خروجی داده ها به مانیتور سریال

Serial.print ("شتاب در محور X:") ؛

Serial.println (xAccl) ؛

Serial.print ("شتاب در محور Y:") ؛

Serial.println (yAccl) ؛

Serial.print ("شتاب در محور Z:") ؛

Serial.println (zAccl) ؛

تأخیر (300) ؛

}

تنها کاری که باید انجام دهید این است که کد را در arduino بسوزانید و خوانش های خود را در پورت سریال بررسی کنید. خروجی در تصویر بالا نشان داده شده است.

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

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

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

توصیه شده: