Агуулгын хүснэгт:
- Алхам 1: Шаардлагатай тоног төхөөрөмж:
- Алхам 2: Тоног төхөөрөмжийн холболт:
- Алхам 3: Хурдатгал хэмжих Arduino код:
- Алхам 4: Өргөдөл:
Видео: H3LIS331DL болон Arduino Nano ашиглан хурдатгалын хэмжилт: 4 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:01
H3LIS331DL нь дижитал I²C серийн интерфэйстэй, "нано" гэр бүлд хамаарах бага хүчин чадалтай, 3 тэнхлэг бүхий хурдны хэмжигдэхүүн юм. H3LIS331DL нь ± 100g/± 200g/± 400g хэрэглэгчийн сонгож болох бүрэн масштабтай бөгөөд 0.5 Гц -ээс 1 кГц хүртэлх гаралтын өгөгдөл дамжуулах хурдатгалыг хэмжих чадвартай. H3LIS331DL нь -40 ° C -аас +85 ° C хүртэл температурын урт хугацаанд ажиллах баталгаатай.
Энэхүү гарын авлагад бид H3LIS331DL -ийн Arduino Nano -той хэрхэн холбогдож байгааг харуулах болно.
Алхам 1: Шаардлагатай тоног төхөөрөмж:
Зорилгодоо хүрэхийн тулд бидэнд шаардлагатай материалууд нь дараахь тоног төхөөрөмжийн бүрэлдэхүүн хэсгүүдийг агуулдаг.
1. H3LIS331DL
2. Ардуино Нано
3. I2C кабель
4. Arduino Nano -д зориулсан I2C бамбай
Алхам 2: Тоног төхөөрөмжийн холболт:
Тоног төхөөрөмжийн холболтын хэсэг нь үндсэндээ мэдрэгч ба arduino нано хооронд шаардлагатай утас холболтыг тайлбарладаг. Аливаа систем дээр ажиллахад шаардлагатай гаралтын хувьд зөв холболтыг хангах нь хамгийн чухал зүйл юм. Тиймээс шаардлагатай холболтууд дараах байдалтай байна.
H3LIS331DL нь I2C дээр ажиллах болно. Мэдрэгчийн интерфэйс бүрийг хэрхэн яаж холбохыг харуулсан утасны диаграмын жишээ энд байна.
Хайрцагнаас гадуурх самбар нь I2C интерфэйс дээр тохируулагдсан байдаг тул хэрэв та өөр ойлголтгүй бол энэ холболтыг ашиглахыг зөвлөж байна. Танд ердөө дөрвөн утас л хангалттай!
Vcc, Gnd, SCL, SDA зүүг зөвхөн дөрвөн холболт шаарддаг бөгөөд эдгээр нь I2C кабелийн тусламжтайгаар холбогддог.
Эдгээр холболтыг дээрх зурган дээр харуулав.
Алхам 3: Хурдатгал хэмжих Arduino код:
Одоо arduino кодоос эхэлье.
Мэдрэгчийн модулийг arduino ашиглан ашиглахдаа бид Wire.h номын санг агуулдаг. "Утас" номын сан нь мэдрэгч ба arduino самбар хоорондын i2c холболтыг хөнгөвчлөх функцүүдийг агуулдаг.
Хэрэглэгчийн тав тухыг хангах үүднээс arduino кодыг бүхэлд нь доор өгөв.
#оруулах
// H3LIS331DL I2C хаяг нь 0x18 (24)
#тодорхойлох Addr 0x18
хүчингүй тохиргоо ()
{
// I2C холболтыг MASTER болгон эхлүүлэх
Wire.begin ();
// Цуваа холбоог эхлүүлэх, дамжуулах хурд = 9600
Цуваа эхлэх (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];
for (int i = 0; i <6; i ++)
{
// I2C дамжуулалтыг эхлүүлэх
Wire.beginTransmission (Addr);
// Өгөгдлийн бүртгэлийг сонгоно уу
Утас. бичих ((40+i));
// I2C дамжуулалтыг зогсоох
Wire.endTransmission ();
// 1 байтын өгөгдөл хүсэх
Wire.requestFrom (Addr, 1);
// 6 байтын өгөгдлийг уншина уу
// xAccl lsb, xAccl msb, yAccl lsb, yAccl msb, zAccl lsb, zAccl msb
хэрэв (Утас. боломжтой () == 1)
{
өгөгдөл = Wire.read ();
}
}
саатал (300);
// Өгөгдлийг хөрвүүлэх
int xAccl = ((өгөгдөл [1] * 256) + өгөгдөл [0]);
int yAccl = ((өгөгдөл [3] * 256) + өгөгдөл [2]);
int zAccl = ((өгөгдөл [5] * 256) + өгөгдөл [4]);
// Өгөгдлийг цуваа монитор руу гаргадаг
Serial.print ("X-Axis дахь хурдатгал:");
Serial.println (xAccl);
Serial.print ("Y-Axis дахь хурдатгал:");
Serial.println (yAccl);
Serial.print ("Z-Axis дахь хурдатгал:");
Serial.println (zAccl);
саатал (300);
}
Та хийх ёстой зүйл бол кодыг arduino дээр шарж, цуваа порт дээрх уншилтыг шалгах явдал юм.
Алхам 4: Өргөдөл:
H3LIS331DL гэх мэт хурдатгал хэмжигч нь тоглоомыг ихэвчлэн ашигладаг бөгөөд профайл солихыг харуулдаг. Энэхүү мэдрэгч модулийг гар утасны хэрэглээний дэвшилтэт эрчим хүчний удирдлагын системд ашигладаг. H3LIS331DL нь гурван талт дижитал хурдатгалын мэдрэгч бөгөөд чип дээрх ухаалаг хөдөлгөөнийг өдөөдөг тасалдлын хянагчтай.
Зөвлөмж болгож буй:
H3LIS331DL болон бөөмийн фотон ашиглан хурдатгалын хэмжилт: 4 алхам
H3LIS331DL ба Particle Photon ашиглан хурдатгалын хэмжилт: H3LIS331DL нь дижитал I²C серийн интерфейстэй, "нано" гэр бүлд хамаарах бага хүчин чадалтай, 3 тэнхлэг бүхий хурдны хэмжигдэхүүн юм. H3LIS331DL нь хэрэглэгчийн сонгох боломжтой бүрэн масштабтай ± 100g/± 200g/± 400g бөгөөд хурдатгалыг хэмжих чадвартай
H3LIS331DL ба Raspberry Pi ашиглан хурдатгалын хэмжилт: 4 алхам
H3LIS331DL ба Raspberry Pi: H3LIS331DL ашиглан хурдатгалыг хэмжих нь I²C дижитал серийн интерфэйстэй, "нано" гэр бүлд хамаарах бага хүчин чадалтай, 3 тэнхлэг бүхий хурдны хэмжигдэхүүн юм. H3LIS331DL нь хэрэглэгчийн сонгох боломжтой бүрэн масштабтай ± 100g/± 200g/± 400g бөгөөд хурдатгалыг хэмжих чадвартай
BMA250 ба Arduino Nano ашиглан хурдатгалын хэмжилт: 4 алхам
BMA250 ба Arduino Nano ашиглан хурдатгалын хэмжилт: BMA250 нь жижиг, нимгэн, хэт өндөр хүч чадалтай, 3 тэнхлэг бүхий өндөр нарийвчлалтай (13 битийн) хэмжилтийг ± 16 гр хүртэл хэмжих төхөөрөмж юм. Дижитал гаралтын өгөгдлийг 16 битийн хос хэлбэрээр форматласан бөгөөд I2C дижитал интерфэйсээр дамжуулан авах боломжтой. Статикийг хэмждэг
ADXL345 болон Arduino Nano ашиглан хурдатгалын хэмжилт: 4 алхам
ADXL345 ба Arduino Nano ашиглан хурдатгалын хэмжилт: ADXL345 нь ± 16 г хүртэл өндөр нарийвчлалтай (13 битийн) хэмжилт бүхий жижиг, нимгэн, хэт өндөр хүчдэлтэй, 3 тэнхлэг бүхий хурд хэмжигч юм. Дижитал гаралтын өгөгдлийг 16 битийн хоёр нэмэлт хэлбэрээр форматласан бөгөөд I2 C дижитал интерфэйсээр дамжуулан авах боломжтой. Үүнийг хэмждэг
Python ашиглан Raspberry Pi болон MMA7455 ашиглан хурдатгалын өөрчлөлтийг хянах: 6 алхам
Python ашиглан Raspberry Pi болон MMA7455 ашиглан хурдатгалын өөрчлөлтийг хянах: Би унаагүй, би таталцлыг туршиж байсан. Энэ нь одоо ч ажиллаж байна … Хурдасч буй сансрын хөлгийн дүрслэл нь таталцлын хүчний цаг хугацааны өргөтгөлийн улмаас явагч онгоцны хамгийн өндөр цэг дэх цаг нь сууринаас илүү хурдан байх болно гэдгийг тайлбарлав. Зарим