אַרדוינאָ לאָגאָאַרדוינאָ ABX00087 UNO R4 WiFi אַנטוויקלונג ברעט

ABX00087 UNO R4 WiFi אַנטוויקלונג ברעט

קריקעט שאָס דערקענונג ניצן אַרדוינאָ UNO R4 WiFi + ADXL345 + עדזש
ימפּאַלס
דאס דאקומענט גיט א פולשטענדיגע ארבעטס-פלוס פארן בויען א קריקעט שאס דערקענונג סיסטעם ניצנדיג ארדוינא UNO R4 WiFi מיט אן ADXL345 אקסעלעראמעטער און עדזש אימפולס סטודיא. דער פראיעקט באשטייט פון זאמלען אקסעלעראמעטער דאטן, טרענירן א מאשין לערנען מאדעל, און דיפלויען דעם טרענירטן מאדעל צוריק צום ארדוינא פאר רעאל-צייט שאס קלאסיפיקאציע.
קריקעט שאָטס באַטראַכט אין דעם פּראָיעקט:
– קאָווער דרייוו
– גלייכע דרייוו
– פּול שאָט

שריט 1: האַרדוואַרע רעקווירעמענץ

– אַרדוינאָ אונאָ R4 WiFi
– ADXL345 אַקסעלעראָמעטער (I2C)
– דזשאַמפּער דראָטן
– ברעדבאָרד (אפציאָנעל)
- וסב טיפּ-C קאַבלע

שריט 2: ווייכווארג רעקווירעמענץ

– אַרדוינאָ IDE (לעצטע)
– עדזש אימפולס סטודיאָ אַקאַונט (פריי)
– עדזש אימפולס CLI מכשירים (Node.js פארלאנגט)
– Adafruit ADXL345 ביבליאָטעק

שריט 3: פארבינדן די ADXL345 מיט וויירינג

פֿאַרבינדט דעם ADXL345 סענסאָר צום Arduino UNO R4 WiFi ווי פֿאָלגט:
VCC → 3.3V
GND → GND
SDA → SDA (A4)
SCL → SCL (A5)
CS → 3.3V (אפציאנאל, פאר I2C מאָדע)
SDO → פלאָוטינג אָדער GNDאַרדוינאָ ABX00087 UNO R4 WiFi אַנטוויקלונג ברעט - איבערview

שריט 4: מאַכן IDE סענסאָר גרייט

ווי אזוי צו אינסטאלירן סענסאר לייברעריז אין ארדוינא IDE?
עפֿענען אַרדוינאָ IDE
עפֿענען מכשירים → פאַרוואַלטן לייברעריז… און אינסטאַלירן: Adafruit ADXL345 Unified Adafruit Unified Sensor
(אויב איר האָט LSM6DSO אָדער MPU6050 אַנשטאָט: אינסטאַלירן SparkFun LSM6DSO, Adafruit LSM6DS אָדער MPU6050 לויט דעם.)

שריט 5: אַרדוינאָ סקעטש פֿאַר דאַטן זאַמלונג

לאָודט אַרויף דעם סקעטש צו דיין אַרדוינאָ UNO R4 WiFi. עס סטרימט אַקסעלעראָמעטער דאַטן אין CSV פֿאָרמאַט (x,y,z) ביי ~18 הערץ פֿאַר עדזש אימפולס.
# אַרייַננעמען
#ארייננעמען
Adafruit_ADXL345_Unified אַקסעל =
אַדאַפרויט_ADXL345_יוניפייד(12345);
void setup () {
Serial.begin(115200);
אויב (!אַקסעל.בעגין()) {
סעריאַל.פּרינטלן("קיין ADXL345 נישט דעטעקטירט");
בשעת (1);
}
אַקסעל.סעטרעינדזש(ADXL345_רעינדזש_4_G);
}
פּאָסל שלייף () {
סענסארן_געשעעניש_ט ע;
אַקסעל.געט געשעעניש(&e);
סעריאַל.דרוק (e.אַקסעלעריישאַן.x);
סעריאַל.דרוק(",");
סעריאַל.דרוק(e.אַקסעלעריישאַן.y);
סעריאַל.דרוק(",");
סעריאַל.פּרינטלן(e.אַקסעלעריישאַן.ז);פאַרהאַלטונג(55); // ~18 הערץ
}

אויפשטעלן עדזש אימפולס

אַרדוינאָ ABX00087 UNO R4 WiFi אַנטוויקלונג ברעט - סעטאַפּ

שריט 6: פֿאַרבינדן זיך צו עדזש אימפולס

  1. שליסן אַרדוינאָ סעריאַל מאָניטאָר.
  2. לויפט דעם באַפֿעל: edge-impulse-data-forwarder –frequency 18
  3. אַרייַן אַקס נעמען: accX, accY, accZ
  4. געב א נאמען פאר אייער דעווייס: ארדוינא-קריקט-ברעט
  5. באַשטעטיקן די פֿאַרבינדונג אין עדזש אימפּאַלס סטודיאָ אונטער 'דעווייסעס'.

אַרדוינאָ ABX00087 UNO R4 WiFi אַנטוויקלונג ברעט - קאַנעקטינג צו עדזש ימפּאַלסאַרדוינאָ ABX00087 UNO R4 WiFi אַנטוויקלונג ברעט - קאַנעקטינג צו עדזש ימפּאַלס 1

שריט 7: דאַטן זאַמלונג

אין עדזש אימפולס סטודיאָ → דאַטן אַקוויזיציע:
– דעווייס: אַרדוינאָ-קריקט-ברעט
– סענסאָר: אַקסעלעראָמעטער (3 אַקסעס)
– שampלע לענג: 2000 מיליסעקונדעס (2 סעקונדעס)
– אָפטקייט: 18 הערץ
רעקאָרדירן לפּחות 40 סעקונדעסampלעסעס פּער קלאַס:
– קאָווער דרייוו
– גלייכע דרייוו
– פּול שאָטאַרדוינאָ ABX00087 UNO R4 WiFi אַנטוויקלונג ברעט - דאַטן זאַמלונגזאַמלען דאַטן עקסamples
קאָווער דרייוו
דעווייס: אַרדוינאָ-קריקט-ברעט
לייבל: קאָווער דרייוו
סענסאָר: סענסאָר מיט 3 אַקסעס (accX, accY, accZ)
Sampלענג: 10000ms
אָפטקייַט: 18 הז
Exampדי רויע דאַטן:
אַקקX -0.32
אַקאַונט 9.61
אַקסז -0.12
גלייכע דרייוו
דעווייס: אַרדוינאָ-קריקט-ברעט
לייבל: גלייכע דרייוו
סענסאָר: סענסאָר מיט 3 אַקסעס (accX, accY, accZ)
Sampלענג: 10000ms
אָפטקייַט: 18 הז
Exampדי רויע דאַטן:
אַקקX 1.24
אַקאַונט 8.93
אַקסז -0.42
פּול שאָט
דעווייס: אַרדוינאָ-קריקט-ברעט
לייבל: פּול שאָט
סענסאָר: סענסאָר מיט 3 אַקסעס (accX, accY, accZ)
Sampלענג: 10000 מיליסעקונדעס
אָפטקייַט: 18 הז
Exampדי רויע דאַטן:
אַקקX 2.01
אַקאַונט 7.84
אַקסז -0.63 אַרדוינאָ ABX00087 UNO R4 WiFi אַנטוויקלונג ברעט - דאַטן זאַמלונג 1

שריט 8: אימפולס דיזיין

עפֿענען שאַפֿן אימפּולס:
אינפוט בלאק: צייט סעריע דאטן (3 אַקסן).
פֿענצטער גרייס: 1000 מס פֿענצטער פֿאַרגרעסערונג (שריט): 200 מס ענייבאַל: אַקסעס, מאַגניטוד (אַפּשאַנאַל), פֿרעקווענץ 18.
פּראַסעסינג בלאָק: ספּעקטראַל אַנאַליז (אויך באַקאַנט ווי ספּעקטראַל פֿעיִקייטן פֿאַר באַוועגונג). פֿענצטער גרייס: 1000 מס פֿענצטער פאַרגרעסערונג (שריט): 200 מס ענייבאַל: אַקסעס, מאַגניטוד (אַפּשאַנאַל), האַלטן אַלע דיפאָלץ ערשטער.
לערן בלאָק: קלאַסיפֿיקאַציע (קעראַס).
דריקט אויף ראַטעווען אימפּולס. אַרדוינאָ ABX00087 UNO R4 WiFi אַנטוויקלונג ברעט - אימפולס דיזיין

שאַפֿן פֿעיִטשערז:
גייט צו ספּעקטראַל אַנאַליז, גיט אויף ראַטעווען פּאַראַמעטערס, און דערנאָך דזשענערייט פֿעיִקייטן פֿאַר די טראַינינג סעט.

אַרדוינאָ ABX00087 UNO R4 WiFi אַנטוויקלונג ברעט - טריינינג סעט

טרענירן אַ קליין מאָדעל
גיי צו קלאַסיפייער (קעראַס) און ניץ אַ קאָמפּאַקטע קאָנפיגוראַציע ווי:
נעוראַל נעץ: 1–2 געדיכטע שיכטן (למשל, 60 → 30), ReLU
עפּאָכן: 40–60
לערן קורס: 0.001–0.005
פּעקל גרייס: 32
דאַטן שפּאַלטונג: 80/20 (טריינירן/טעסטן)
ראַטעווען און טרענירן די דאַטןאַרדוינאָ ABX00087 UNO R4 WiFi אַנטוויקלונג ברעט - ראַטעווען און טרענירן די דאַטן

אפשאצן און קאנטראלירן מאָדעל טעסטינג מיטן האלאוט סעט.
דורכקוקן די צעמישונג מאַטריץ; אויב די קרייזן און די אויבערשטע טיילן זיך איבערדעקן, זאַמלען מער פֿאַרשיידענע דאַטן אָדער צופּאַסן.
ספּעקטראַל פּאַראַמעטערס (פֿענצטער גרייס / ראַש שטאָק).

שריט 9: דיפּלוימאַנט צו אַרדוינאָ

גיי צו דיפּלוימאַנט:
קלייַבט אויס די אַרדוינאָ ביבליאָטעק (די C++ ביבליאָטעק אַרבעט אויך).
אַקטיווירן EON קאָמפּיילער (אויב פֿאַראַן) צו פֿאַרקלענערן די גרייס פֿון מאָדעל. אַרדוינאָ ABX00087 UNO R4 WiFi אַנטוויקלונג ברעט - דיפּלוימאַנט צו אַרדוינאָדאַונלאָוד די .zip, דערנאָך אין Arduino IDE: Sketch → Include Library → Add .ZIP Library… דאָס לייגט צו עקס.ampווי סטאַטישע באַפער און קאָנטינויִערלעכע אונטער File → עקסamples →
אייער פּראָיעקט נאָמען – עדזש אימפולס. אינפֿערענץ סקיצע פֿאַר אַרדוינאָ UNO EK R4 WiFi + ADXL345.

שריט 10: אַרדוינאָ אינפֿערענץ סקיצע

# אַרייַננעמען
#ארייננעמען
#ארייננעמען // פאַרבייַטן מיט עדזש ימפּאַלס כעדער
Adafruit_ADXL345_Unified אַקסעל =
אַדאַפרויט_ADXL345_יוניפייד(12345);
סטאַטיש בול דיבאַג_ן = פאַלש;
void setup () {
Serial.begin(115200);
בשעת (!סעריאַל) {}
אויב (!אַקסעל.בעגין()) {
סעריאַל.פּרינטלן("טעות: ADXL345 נישט דעטעקטירט");
בשעת (1);
}
אַקסעל.סעטרעינדזש(ADXL345_רעינדזש_4_G);
}
פּאָסל שלייף () {
פלאָוט באַפער[EI_CLASSIFIER_DSP_INPUT_FRAME_SIZE] = {0};
פֿאַר (size_t ix = 0; ix < EI_CLASSIFIER_DSP_INPUT_FRAME_SIZE; ix +=
3) {
uint64_t נעקסט_טיק = מיקראָס() + (EI_קלאַסיפיער_אינטערוואַל_מס *
1000);
סענסארן_געשעעניש_ט ע;
אַקסעל.געט געשעעניש(&e);
באַפער[ix + 0] = e.אַקסעלעראַציע.x;
באַפער[ix + 1] = e.אַקסעלעראַציע.y;
באַפער[ix + 2] = e.אַקסעלעראַציע.z;
int32_t וואַרטן = (int32_t)(נעקסט_טיק – מיקראָס());
אויב (וואַרטן > 0) פאַרהאַלטןמיקראָסעקונדעס(וואַרטן);
}
סיגנאַל_ט סיגנאַל;
אינט ערר = נומפּי::סיגנאַל_פֿון_באַפֿער(באַפֿער,
EI_CLASSIFIER_DSP_INPUT_FRAME_SIZE, &סיגנאַל);
אויב (ערר != 0) צוריקקער;

ei_impulse_result_t רעזולטאַט = {0};
EI_IMPULS_ERROR רעז = run_classifier(&סיגנאל, &רעזולטאט,
דיבאַג_ןן);
אויב (רעס != EI_IMPULSE_OK) צוריקקער;

פֿאַר (size_t ix = 0; ix < EI_CLASSIFIER_LABEL_COUNT; ix++) {
ei_printf("%s: %.3f ", רעזולטאַט.קלאַסיפֿיקאַציע[ix].label,
רעזולטאַט.קלאַסיפֿיקאַציע[ix].ווערט);
}
#אויב EI_קלאַסיפיער_האט_אַנאָמאַלי == 1
ei_printf(“אַנאָמאַליע: %.3f”, רעזולטאַט.אַנאָמאַליע);
#ענדיף
ei_printf("\n");
}

רעזולטאַט עקסampלאַ:

אַרדוינאָ ABX00087 UNO R4 WiFi אַנטוויקלונג ברעט - אַרדוינאָ אינפֿערענס סקיצעעצות:
האַלט EI_CLASSIFIER_INTERVAL_MS אין סינקראָניזאַציע מיט דיין דאַטן פאָרווערדער אָפטקייט (למשל, 100 הערץ → 10 מס). די עדזש אימפולס ביבליאָטעק שטעלט דעם קאָנסטאַנט אויטאָמאַטיש פֿון דיין אימפולס.
אויב איר ווילט קאָנטינויִערלעכע דעטעקציע (גליטשנדיקע פֿענצטער), אָנהייבן פֿון די קאָנטינויִערלעכע פֿענצטער.ample אַרייַנגערעכנט מיט דער EI ביבליאָטעק און סוואַפּ אין די ADXL345 לייענט.
מיר וועלן באַלד צולייגן ווידעאָ טוטאָריאַלס; ביז דעמאָלט, בלייבט אויף דער אינטערנעץ – https://www.youtube.com/@RobuInlabs
און אויב איר האָט נאָך עטלעכע ספיקות, קענט איר קוקן אויף דעם ווידעאָ פֿון Edge Impulse: https://www.youtube.com/watch?v=FseGCn-oBA0&t=468s

אַרדוינאָ לאָגאָ

דאָקומענטן / רעסאָורסעס

אַרדוינאָ ABX00087 UNO R4 WiFi אַנטוויקלונג ברעט [pdfבאַניצער גייד
R4 WiFi, ADXL345, ABX00087 UNO R4 WiFi אנטוויקלונג ברעט, ABX00087, UNO R4 WiFi אנטוויקלונג ברעט, WiFi אנטוויקלונג ברעט, אנטוויקלונג ברעט, ברעט

רעפערענצן

לאָזן אַ באַמערקונג

דיין בליצפּאָסט אַדרעס וועט נישט זיין ארויס. פארלאנגט פעלדער זענען אנגעצייכנט *