Мазмуну:
- 1 -кадам: Аппараттык камсыздоо талап кылынат:
- 2 -кадам: Аппараттык туташуу:
- 3 -кадам: Ылдамданууну өлчөө коду:
- 4 -кадам: Тиркемелер:
Video: ADXL345 жана Arduino Nano колдонуу менен ылдамданууну өлчөө: 4 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:40
ADXL345-кичине, ичке, ультра кубаттуу, 3 октук акселерометр, ± 16 г чейин жогорку чечилиште (13-бит) өлчөө. Санарип чыгуучу маалыматтар 16-бит эки катары толукталган жана I2 C санариптик интерфейси аркылуу жеткиликтүү. Бул эңкейүүнү сезүүчү колдонмолордо тартылуу күчүнүн статикалык ылдамдатуусун, ошондой эле кыймылдан же шоктон келип чыккан динамикалык ылдамданууну өлчөйт. Анын жогорку токтому (3,9 мг/LSB) жантайыштын өзгөрүүсүн 1,0 ° дан аз өлчөөгө мүмкүндүк берет.
Бул окуу куралында ADXL345 сенсор модулунун arduino нано менен интерфейси сүрөттөлгөн. Ылдамдануу маанилерин окуу үчүн, I2c adapter. This I2C адаптери менен arduino колдонгонбуз, сенсор модулуна туташууну жеңил жана ишенимдүү кылат.
1 -кадам: Аппараттык камсыздоо талап кылынат:
Максатыбызга жетүү үчүн бизге керектүү материалдар төмөнкү аппараттык компоненттерди камтыйт:
1. ADXL345
2. Ардуино Нано
3. I2C кабели
4. Arduino Nano үчүн I2C Shield
2 -кадам: Аппараттык туташуу:
Аппараттык туташуу бөлүмү негизинен сенсор менен arduino нанонун ортосунда талап кылынган зым байланыштарын түшүндүрөт. Туура туташууларды камсыздоо каалаган өндүрүш үчүн кандайдыр бир системада иштеп жатканда негизги зарылчылык болуп саналат. Ошентип, керектүү байланыштар төмөнкүлөр:
ADXL345 I2C үстүндө иштейт. Бул жерде сенсордун ар бир интерфейсин кантип зым менен жабуу керектигин көрсөтүүчү зымдардын схемасы келтирилген.
Кутудан тышкары, такта I2C интерфейси үчүн конфигурацияланган, андыктан эгер сиз агностиксиз болсоңуз, анда бул байланышты колдонууну сунуштайбыз.
Сизге болгону төрт зым керек! Vcc, Gnd, SCL жана SDA төөнөгүчтөрүнө төрт гана туташуу керек жана алар I2C кабелинин жардамы менен туташкан.
Бул байланыштар жогорудагы сүрөттөрдө көрсөтүлгөн.
3 -кадам: Ылдамданууну өлчөө коду:
Эми arduino коду менен баштайлы.
Arduino менен сенсор модулун колдонуп жатканда, биз Wire.h китепканасын камтыйт. "Wire" китепканасы сенсор менен arduino тактасынын ортосундагы i2c байланышын жеңилдетүүчү функцияларды камтыйт.
Колдонуучунун ыңгайлуулугу үчүн ардуино коду төмөндө келтирилген:
#кошуу
// ADXL345 I2C дареги 0x53 (83)
#define Addr 0x53
жараксыз орнотуу ()
{
// I2C байланышын MASTER катары баштаңыз
Wire.begin ();
// Сериялык байланышты баштоо, байдын ылдамдыгын = 9600
Serial.begin (9600);
// I2C берүүнү баштоо
Wire.beginTransmission (Addr);
// Өткөрүү ылдамдыгынын регистрин тандаңыз
Wire.write (0x2C);
// Кадимки режим, Чыгуу маалымат ылдамдыгы = 100 Гц
Wire.write (0x0A);
// I2C өткөрүүнү токтотуу
Wire.endTransmission ();
// I2C берүүнү баштоо
Wire.beginTransmission (Addr);
// Күчтү башкаруу реестрин тандаңыз
Wire.write (0x2D);
// Авто уйку өчүрүү
Wire.write (0x08);
// I2C өткөрүүнү токтотуу
Wire.endTransmission ();
// I2C берүүнү баштоо
Wire.beginTransmission (Addr);
// Маалымат форматынын реестрин тандаңыз
Wire.write (0x31);
// Өзүн-өзү текшерүү өчүрүлгөн, 4 зымдуу интерфейс, Толук чечилиши, Диапазону = +/- 2g
Wire.write (0x08);
// I2C өткөрүүнү токтотуу
Wire.endTransmission ();
кечигүү (300);
}
боштук цикл ()
{
кол коюлбаган int маалыматтары [6];
үчүн (int i = 0; i <6; i ++)
{
// I2C берүүнү баштоо
Wire.beginTransmission (Addr);
// Маалымат реестрин тандоо
Wire.write ((50 + i));
// I2C өткөрүүнү токтотуу
Wire.endTransmission ();
// 1 байт маалымат сураңыз
Wire.requestFrom (Addr, 1);
// 6 байт маалыматтарды окуңуз
// xAccl lsb, xAccl msb, yAccl lsb, yAccl msb, zAccl lsb, zAccl msb
эгер (Wire.available () == 1)
{
маалымат = Wire.read ();
}
}
// Маалыматтарды 10 битке айландырыңыз
int xAccl = (((маалыматтар [1] & 0x03) * 256) + маалыматтар [0]);
эгер (xAccl> 511)
{
xAccl -= 1024;
}
int yAccl = (((маалыматтар [3] & 0x03) * 256) + маалыматтар [2]);
эгер (yAccl> 511)
{
yAccl -= 1024;
}
int zAccl = (((маалыматтар [5] & 0x03) * 256) + маалыматтар [4]);
эгер (zAccl> 511)
{
zAccl -= 1024;
}
// Маалыматтарды сериялык мониторго чыгаруу
Serial.print ("X-Axis ылдамдануусу:");
Serial.println (xAccl);
Serial.print ("Y-Axis ылдамдануусу:");
Serial.println (yAccl);
Serial.print ("Z-огунда ылдамдануу:");
Serial.println (zAccl);
кечигүү (300);
}
Зымдык китепканада Wire.write () жана Wire.read () командаларды жазуу жана сенсордун чыгышын окуу үчүн колдонулат.
Serial.print () жана Serial.println () Arduino IDE сериялык мониторунда сенсордун чыгарылышын көрсөтүү үчүн колдонулат.
Сенсордун чыгышы жогорудагы сүрөттө көрсөтүлгөн.
4 -кадам: Тиркемелер:
ADXL345-бул кичинекей, ичке, ультра кубаттуу, 3-октук акселерометр, аны телефондордо, медициналык приборлордо ж.
Сунушталууда:
ADXL345 жана Бөлүкчө Фотонун колдонуу менен ылдамданууну өлчөө: 4 кадам
ADXL345 жана Бөлүкчө Фотонун колдонуу менен ылдамдатууну өлчөө: ADXL345-кичинекей, ичке, ультра кубаттуу, 3 октук акселерометр, жогорку чечим (13-бит) ± 16 г чейин. Санарип чыгуучу маалыматтар 16-бит эки катары толукталган жана I2 C санариптик интерфейси аркылуу жеткиликтүү. Ал өлчөйт
H3LIS331DL жана Arduino Nano колдонуу менен ылдамданууну өлчөө: 4 кадам
H3LIS331DL жана Arduino Nano аркылуу ылдамдатууну өлчөө: H3LIS331DL-бул санариптик I²C сериялык интерфейси бар, "нано" үй-бүлөсүнө таандык, аз кубаттуу, 3 октук сызыктуу акселерометр. H3LIS331DL колдонуучу ± 100g/± 200g/± 400g тандап алган толук таразаларга ээ жана ылдамдыкты өлчөй алат
ADXL345 жана Raspberry Pi менен ылдамданууну өлчөө: 4 кадам
ADXL345 жана Raspberry Pi колдонуу менен ылдамдатууну өлчөө: ADXL345-кичинекей, ичке, ультра кубаттуу, 3 октук акселерометр, жогорку чечим (13-бит) ± 16 г чейин өлчөө. Санарип чыгуучу маалыматтар 16-бит эки катары толукталган жана I2 C санариптик интерфейси аркылуу жеткиликтүү. Ал өлчөйт
H3LIS331DL жана Raspberry Pi колдонуу менен ылдамданууну өлчөө: 4 кадам
H3LIS331DL жана Raspberry Pi: H3LIS331DL менен ылдамданууну өлчөө-бул IanoC санариптик интерфейси бар, "нано" үй-бүлөсүнө таандык, аз кубаттуу, 3 октук сызыктуу акселерометр. H3LIS331DL колдонуучу ± 100g/± 200g/± 400g тандап алган толук таразаларга ээ жана ылдамдыкты өлчөй алат
HIH6130 жана бөлүкчө фотонун колдонуу менен нымдуулукту жана температураны өлчөө: 4 кадам
HIH6130 жана Particle Photon аркылуу нымдуулукту жана температураны өлчөө: HIH6130 - бул санариптик чыгышы бар нымдуулук жана температура сенсору. Бул сенсорлор ± 4% RH тактыгын камсыз кылат. Өнөр жайдын алдыңкы узак мөөнөттүү туруктуулугу, чыныгы температуранын ордун толтуруучу санариптик I2C, индустриянын алдыңкы ишенимдүүлүгү, энергияны үнөмдөө