![BMA250 мен бөлшек фотонының көмегімен үдеуді өлшеу: 4 қадам BMA250 мен бөлшек фотонының көмегімен үдеуді өлшеу: 4 қадам](https://i.howwhatproduce.com/images/002/image-3181-38-j.webp)
Мазмұны:
2025 Автор: John Day | [email protected]. Соңғы өзгертілген: 2025-01-23 14:51
![Image Image](https://i.howwhatproduce.com/images/002/image-3181-40-j.webp)
![](https://i.ytimg.com/vi/-p25fwJ1Sq4/hqdefault.jpg)
BMA250-ұсақ, жұқа, ультра қуатты, 3 осьті акселерометр, жоғары ажыратымдылықпен (13 биттік) ± 16 г дейін. Сандық шығыс деректері 16 биттік қосалқы ретінде форматталған және I2C сандық интерфейсі арқылы қол жетімді. Көлбеуді сезу кезінде ауырлық күшінің статикалық үдеуін, сонымен қатар қозғалыс немесе соққыдан болатын динамикалық үдеуді өлшейді. Оның жоғары ажыратымдылығы (3,9 мг/LSB) көлбеудің өзгеруін 1,0 ° -тан төмен өлшеуге мүмкіндік береді.
Бұл оқулықта біз BMA250 мен бөлшектер фотонының көмегімен барлық үш перпендикуляр осьте үдеуді өлшейміз.
1 -қадам: Қажетті жабдық:
![Қажетті жабдық Қажетті жабдық](https://i.howwhatproduce.com/images/002/image-3181-41-j.webp)
![Қажетті жабдық Қажетті жабдық](https://i.howwhatproduce.com/images/002/image-3181-42-j.webp)
![Қажетті жабдық Қажетті жабдық](https://i.howwhatproduce.com/images/002/image-3181-43-j.webp)
Мақсатқа жету үшін бізге қажет материалдар келесі аппараттық компоненттерді қамтиды:
1. BMA250
2. Фотондық бөлшектер
3. I2C кабелі
4. Бөлшек фотонға арналған I2C қалқаны
2 -қадам: Жабдықты қосу:
![Жабдықты қосу Жабдықты қосу](https://i.howwhatproduce.com/images/002/image-3181-44-j.webp)
![Жабдықты қосу Жабдықты қосу](https://i.howwhatproduce.com/images/002/image-3181-45-j.webp)
Аппаратты қосу бөлімі негізінен сенсор мен фотон бөлшектері арасындағы сымдық қосылыстарды түсіндіреді. Қажетті шығыс үшін кез келген жүйеде жұмыс істеу кезінде дұрыс қосылуды қамтамасыз ету - бұл негізгі қажеттілік. Сонымен, қажетті байланыстар келесідей:
BMA250 I2C режимінде жұмыс істейді. Датчиктің әр интерфейсін қалай қосуға болатынын көрсететін электр схемасының мысалы.
Қаптамадан тыс тақта I2C интерфейсі үшін конфигурацияланған, сондықтан егер сіз агностикалық болмасаңыз, осы қосылымды пайдалануды ұсынамыз. Сізге тек төрт сым қажет!
Vcc, Gnd, SCL және SDA түйреуіштеріне тек төрт қосылым қажет және олар I2C кабелінің көмегімен қосылған.
Бұл байланыстар жоғарыдағы суреттерде көрсетілген.
3 -қадам: жеделдетуді өлшейтін код:
![Жылдамдықты өлшейтін код Жылдамдықты өлшейтін код](https://i.howwhatproduce.com/images/002/image-3181-46-j.webp)
Енді бөлшектер кодынан бастайық.
Сенсорлық модульді arduino -мен қолданған кезде, біз application.h және spark_wiring_i2c.h кітапханасын қосамыз. «application.h» және spark_wiring_i2c.h кітапханасы сенсор мен бөлшек арасындағы i2c байланысын жеңілдететін функцияларды қамтиды.
Пайдаланушыға ыңғайлы болу үшін бөлшектердің толық коды төменде берілген:
#қосу
#қосу
// BMA250 I2C мекенжайы - 0x18 (24)
#анықта Addr 0x18
int xAccl = 0, yAccl = 0, zAccl = 0;
жарамсыз орнату ()
{
// Айнымалыны орнатыңыз
Particle.variable («i2cdevice», «BMA250»);
Particle.variable («xAccl», xAccl);
Particle.variable («yAccl», yAccl);
Particle.variable («zAccl», zAccl);
// I2C байланысын MASTER ретінде баптаңыз
Wire.begin ();
// Сериялық байланысты инициализациялаңыз, жіберу жылдамдығы = 9600
Serial.begin (9600);
// I2C берілуін бастау
Wire.beginTransmission (Addr);
// Ауқымды таңдау регистрін таңдаңыз
Wire.write (0x0F);
// +/- 2g диапазонын орнатыңыз
Wire.write (0x03);
// I2C берілуін тоқтату
Wire.endTransmission ();
// I2C берілуін бастау
Wire.beginTransmission (Addr);
// өткізу жолағының регистрін таңдаңыз
Wire.write (0x10);
// 7.81 Гц өткізу жолағын орнатыңыз
Wire.write (0x08);
// I2C берілуін тоқтату
Wire.endTransmission ();
кешіктіру (300);}
бос цикл ()
{
қол қойылмаған int деректері [0];
// I2C берілуін бастау
Wire.beginTransmission (Addr);
// Деректер тізілімін таңдау (0x02 - 0x07)
Wire.write (0x02);
// I2C берілуін тоқтату
Wire.endTransmission ();
// 6 байтты сұрау
Wire.requestFrom (Addr, 6);
// Алты байтты оқыңыз
// xAccl lsb, xAccl msb, yAccl lsb, yAccl msb, zAccl lsb, zAccl msb
егер (Wire.available () == 6)
{
деректер [0] = Wire.read ();
деректер [1] = Wire.read ();
деректер [2] = Wire.read ();
деректер [3] = Wire.read ();
деректер [4] = Wire.read ();
деректер [5] = Wire.read ();
}
кешіктіру (300);
// Деректерді 10 битке түрлендіру
xAccl = ((деректер [1] * 256) + (деректер [0] & 0xC0)) / 64;
егер (xAccl> 511)
{
xAccl -= 1024;
}
yAccl = ((деректер [3] * 256) + (деректер [2] & 0xC0)) / 64;
егер (yAccl> 511)
{
yAccl -= 1024;
}
zAccl = ((деректер [5] * 256) + (деректер [4] & 0xC0)) / 64;
егер (zAccl> 511)
{
zAccl -= 1024;
}
// Деректерді бақылау тақтасына шығару
Particle.publish («X осінде үдеу:», String (xAccl));
кешіктіру (1000);
Particle.publish («Y осінде үдеу:», String (yAccl));
кешіктіру (1000);
Particle.publish («Z осінде үдеу:», String (zAccl));
кешіктіру (1000);
}
Particle.variable () функциясы сенсордың шығысын сақтау үшін айнымалылар жасайды және Particle.publish () функциясы сайттың бақылау тақтасында шығуды көрсетеді.
Сенсор шығысы жоғарыдағы суретте көрсетілген.
4 -қадам: Өтініштер:
![Қолданбалар Қолданбалар](https://i.howwhatproduce.com/images/002/image-3181-47-j.webp)
BMA250 сияқты акселерометрлер көбінесе ойындарда қолданылады және профильді ауыстыруды көрсетеді. Бұл сенсорлық модуль мобильді қосымшаларға арналған қуатты басқарудың жетілдірілген жүйесінде де қолданылады. BMA250-үш фазалы цифрлық үдеткіш сенсоры, ол интеллектуалды микросхемадағы қозғалысты басқаратын үзіліс контроллерімен біріктірілген.
Ұсынылған:
HYT939 мен бөлшек фотонының көмегімен ылғалдылықты өлшеу: 4 қадам
![HYT939 мен бөлшек фотонының көмегімен ылғалдылықты өлшеу: 4 қадам HYT939 мен бөлшек фотонының көмегімен ылғалдылықты өлшеу: 4 қадам](https://i.howwhatproduce.com/images/009/image-25017-j.webp)
HYT939 мен бөлшек фотонының көмегімен ылғалдылықты өлшеу: HYT939 - бұл I2C байланыс протоколында жұмыс істейтін цифрлық ылғалдылық сенсоры. Ылғалдылық медициналық жүйелер мен зертханаларға қатысты маңызды параметр болып табылады, сондықтан осы мақсаттарға жету үшін біз HYT939 -ді таңқурай пи -мен байланыстыруға тырыстық. Мен
H3LIS331DL мен бөлшек фотонының көмегімен үдеуді өлшеу: 4 қадам
![H3LIS331DL мен бөлшек фотонының көмегімен үдеуді өлшеу: 4 қадам H3LIS331DL мен бөлшек фотонының көмегімен үдеуді өлшеу: 4 қадам](https://i.howwhatproduce.com/images/009/image-26525-j.webp)
H3LIS331DL мен Бөлшек Фотонды қолдана отырып үдеуді өлшеу: H3LIS331DL-цифрлық I²C сериялық интерфейсі бар «нано» тобына жататын төмен қуатты жоғары өнімді 3 осьті желілік акселерометр. H3LIS331DL -де ± 100g/± 200g/± 400g пайдаланушы таңдауға болатын толық таразы бар және ол жылдамдықты өлшеуге қабілетті
CPS120 мен бөлшек фотонының көмегімен қысымды өлшеу: 4 қадам
![CPS120 мен бөлшек фотонының көмегімен қысымды өлшеу: 4 қадам CPS120 мен бөлшек фотонының көмегімен қысымды өлшеу: 4 қадам](https://i.howwhatproduce.com/images/002/image-3185-38-j.webp)
CPS120 мен бөлшек фотонының көмегімен қысымды өлшеу: CPS120 - бұл толық компенсацияланған шығысы бар жоғары сапалы және төмен сыйымдылықтағы абсолютті қысым сенсоры. Ол өте аз қуатты тұтынады және қысымды өлшеуге арналған өте шағын микроэлектромеханикалық сенсордан (MEMS) тұрады. Сигма-дельтаға негізделген
TMP112 мен бөлшек фотонының көмегімен температураны өлшеу: 4 қадам
![TMP112 мен бөлшек фотонының көмегімен температураны өлшеу: 4 қадам TMP112 мен бөлшек фотонының көмегімен температураны өлшеу: 4 қадам](https://i.howwhatproduce.com/images/002/image-3192-24-j.webp)
TMP112 мен бөлшек фотонының көмегімен температураны өлшеу: TMP112 жоғары дәлдіктегі, төмен қуатты, сандық температура сенсоры I2C MINI модулі. TMP112 температураны өлшеу үшін өте қолайлы. Бұл құрылғы калибрлеуді немесе сыртқы компоненттік сигналды баптауды қажет етпестен ± 0,5 ° C дәлдігін ұсынады
HDC1000 мен бөлшек фотонының көмегімен температура мен ылғалдылықты өлшеу: 4 қадам
![HDC1000 мен бөлшек фотонының көмегімен температура мен ылғалдылықты өлшеу: 4 қадам HDC1000 мен бөлшек фотонының көмегімен температура мен ылғалдылықты өлшеу: 4 қадам](https://i.howwhatproduce.com/images/002/image-3262-14-j.webp)
HDC1000 мен Particle Photon көмегімен температура мен ылғалдылықты өлшеу: HDC1000 - бұл температураның сенсоры бар цифрлық ылғалдылық датчигі, ол өте төмен қуатта өлшеудің дәлдігін қамтамасыз етеді. Құрылғы жаңа сыйымдылық сенсорының негізінде ылғалдылықты өлшейді. Ылғалдылық пен температура сенсорлары