Arduino ലോഗോArduino ABX00087 UNO R4 വൈഫൈ ഡെവലപ്‌മെന്റ് ബോർഡ്

ABX00087 UNO R4 വൈഫൈ ഡെവലപ്‌മെന്റ് ബോർഡ്

Arduino UNO R4 WiFi + ADXL345 + Edge ഉപയോഗിച്ചുള്ള ക്രിക്കറ്റ് ഷോട്ട് തിരിച്ചറിയൽ.
പ്രേരണ
ADXL345 ആക്‌സിലറോമീറ്ററും എഡ്ജ് ഇംപൾസ് സ്റ്റുഡിയോയും ഉപയോഗിച്ച് Arduino UNO R4 WiFi ഉപയോഗിച്ച് ഒരു ക്രിക്കറ്റ് ഷോട്ട് തിരിച്ചറിയൽ സംവിധാനം നിർമ്മിക്കുന്നതിനുള്ള ഒരു പൂർണ്ണ വർക്ക്ഫ്ലോ ഈ ഡോക്യുമെന്റ് നൽകുന്നു. ആക്‌സിലറോമീറ്റർ ഡാറ്റ ശേഖരിക്കുക, ഒരു മെഷീൻ ലേണിംഗ് മോഡലിന് പരിശീലനം നൽകുക, പരിശീലനം ലഭിച്ച മോഡലിനെ റിയൽ-ടൈം ഷോട്ട് വർഗ്ഗീകരണത്തിനായി Arduino-യിലേക്ക് തിരികെ വിന്യസിക്കുക എന്നിവയാണ് ഈ പദ്ധതിയിൽ ഉൾപ്പെടുന്നത്.
ഈ പ്രോജക്റ്റിൽ പരിഗണിക്കുന്ന ക്രിക്കറ്റ് ഷോട്ടുകൾ:
– കവർ ഡ്രൈവ്
– നേരായ ഡ്രൈവ്
– പുൾ ഷോട്ട്

ഘട്ടം 1: ഹാർഡ്‌വെയർ ആവശ്യകതകൾ

– അർഡുനോ UNO R4 വൈഫൈ
– ADXL345 ആക്സിലറോമീറ്റർ (I2C)
– ജമ്പർ വയറുകൾ
– ബ്രെഡ്‌ബോർഡ് (ഓപ്ഷണൽ)
- യുഎസ്ബി ടൈപ്പ്-സി കേബിൾ

ഘട്ടം 2: സോഫ്റ്റ്വെയർ ആവശ്യകതകൾ

– അർഡ്വിനോ ഐഡിഇ (ഏറ്റവും പുതിയത്)
– എഡ്ജ് ഇംപൾസ് സ്റ്റുഡിയോ അക്കൗണ്ട് (സൗജന്യമായി)
– എഡ്ജ് ഇംപൾസ് CLI ടൂളുകൾ (Node.js ആവശ്യമാണ്)
– അഡാഫ്രൂട്ട് ADXL345 ലൈബ്രറി

ഘട്ടം 3: ADXL345 വയറിംഗ്

ADXL345 സെൻസർ Arduino UNO R4 WiFi-യുമായി ബന്ധിപ്പിക്കുക:
വിസിസി → 3.3വി
GND → GND
എസ്.ഡി.എ → എസ്.ഡി.എ (A4)
എസ്‌സി‌എൽ → എസ്‌സി‌എൽ (എ5)
CS → 3.3V (ഓപ്ഷണൽ, I2C മോഡിനായി)
SDO → ഫ്ലോട്ടിംഗ് അല്ലെങ്കിൽ GNDArduino ABX00087 UNO R4 വൈഫൈ ഡെവലപ്‌മെന്റ് ബോർഡ് - ഓവർview

ഘട്ടം 4: IDE സെൻസർ തയ്യാറാക്കുക

ആർഡ്വിനോ ഐഡിഇയിൽ സെൻസർ ലൈബ്രറികൾ എങ്ങനെ ഇൻസ്റ്റാൾ ചെയ്യാം?
ആർഡ്വിനോ IDE തുറക്കുക
ടൂളുകൾ തുറന്ന് ലൈബ്രറികൾ കൈകാര്യം ചെയ്യുക... എന്നിട്ട് ഇൻസ്റ്റാൾ ചെയ്യുക: Adafruit ADXL345 Unified Adafruit Unified Sensor
(നിങ്ങൾക്ക് പകരം LSM6DSO അല്ലെങ്കിൽ MPU6050 ഉണ്ടെങ്കിൽ: SparkFun LSM6DSO, Adafruit LSM6DS അല്ലെങ്കിൽ MPU6050 എന്നിവ ഇൻസ്റ്റാൾ ചെയ്യുക.)

ഘട്ടം 5: ഡാറ്റ ശേഖരണത്തിനായുള്ള ആർഡ്വിനോ സ്കെച്ച്

ഈ സ്കെച്ച് നിങ്ങളുടെ Arduino UNO R4 WiFi-യിലേക്ക് അപ്‌ലോഡ് ചെയ്യുക. ഇത് Edge Impulse-നായി ~18 Hz-ൽ CSV ഫോർമാറ്റിൽ (x,y,z) ആക്‌സിലറോമീറ്റർ ഡാറ്റ സ്ട്രീം ചെയ്യുന്നു.
#ഉൾപ്പെടുത്തുക
#ഉൾപ്പെടുന്നു
അഡാഫ്രൂട്ട്_ADXL345_യൂണിഫൈഡ് ആക്‌സിൽ =
അഡാഫ്രൂട്ട്_എഡിഎക്സ്എൽ345_യൂണിഫൈഡ്(12345);
അസാധുവായ സജ്ജീകരണം() {
Serial.begin(115200);
(!accel.begin()) ആണെങ്കിൽ {
Serial.println(“ADXL345 കണ്ടെത്തിയില്ല”);
അതേസമയം (1);
}
accel.setRange(ADXL345_RANGE_4_G);
}
അസാധുവായ ലൂപ്പ്() {
സെൻസറുകൾ_ഇവന്റ്_ടി ഇ;
accel.getEvent(&e); (ആക്സൽ.ഇവന്റ് നേടുക)
സീരിയൽ.പ്രിന്റ് (e.acceleration.x);
സീരിയൽ.പ്രിന്റ്(“,”);
സീരിയൽ.പ്രിന്റ്(e.acceleration.y);
സീരിയൽ.പ്രിന്റ്(“,”);
Serial.println(e.acceleration.z);delay(55); // ~18 Hz
}

എഡ്ജ് ഇംപൾസ് സജ്ജമാക്കുക

Arduino ABX00087 UNO R4 വൈഫൈ ഡെവലപ്‌മെന്റ് ബോർഡ് - സജ്ജീകരണം

ഘട്ടം 6: എഡ്ജ് ഇംപൾസിലേക്ക് കണക്റ്റുചെയ്യുന്നു

  1. ആർഡ്വിനോ സീരിയൽ മോണിറ്റർ അടയ്ക്കുക.
  2. കമാൻഡ് പ്രവർത്തിപ്പിക്കുക: edge-impulse-data-forwarder –frequency 18
  3. അച്ചുതണ്ട് നാമങ്ങൾ നൽകുക: accX, accY, accZ
  4. നിങ്ങളുടെ ഉപകരണത്തിന് പേര് നൽകുക: Arduino-Cricket-Board
  5. 'Devices' എന്നതിന് കീഴിലുള്ള Edge Impulse Studio-യിൽ കണക്ഷൻ സ്ഥിരീകരിക്കുക.

Arduino ABX00087 UNO R4 വൈഫൈ ഡെവലപ്‌മെന്റ് ബോർഡ് - എഡ്ജ് ഇംപൾസുമായി ബന്ധിപ്പിക്കുന്നുArduino ABX00087 UNO R4 വൈഫൈ ഡെവലപ്‌മെന്റ് ബോർഡ് - എഡ്ജ് ഇംപൾസ് 1-ലേക്ക് കണക്റ്റുചെയ്യുന്നു

ഘട്ടം 7: ഡാറ്റ ശേഖരണം

എഡ്ജ് ഇംപൾസ് സ്റ്റുഡിയോയിൽ → ഡാറ്റ ഏറ്റെടുക്കൽ:
– ഉപകരണം: ആർഡ്വിനോ-ക്രിക്കറ്റ്-ബോർഡ്
– സെൻസർ: ആക്സിലറോമീറ്റർ (3 അക്ഷങ്ങൾ)
– എസ്ampനീളം: 2000 മി.സെക്കൻഡ് (2 സെക്കൻഡ്)
– ആവൃത്തി: 18 Hz
കുറഞ്ഞത് 40 സെക്കൻഡ് റെക്കോർഡ് ചെയ്യുകampക്ലാസ്സ് അനുസരിച്ച്:
– കവർ ഡ്രൈവ്
– നേരായ ഡ്രൈവ്
– പുൾ ഷോട്ട്Arduino ABX00087 UNO R4 വൈഫൈ ഡെവലപ്‌മെന്റ് ബോർഡ് - ഡാറ്റ ശേഖരണംഡാറ്റ ശേഖരിക്കുക മുൻampലെസ്
കവർ ഡ്രൈവ്
ഉപകരണം: അർഡ്വിനോ-ക്രിക്കറ്റ്-ബോർഡ്
ലേബൽ: കവർ ഡ്രൈവ്
സെൻസർ: 3 അക്ഷങ്ങളുള്ള സെൻസർ (accX, accY, accZ)
Sampനീളം: 10000ms
ആവൃത്തി: 18 Hz
Exampഅസംസ്കൃത ഡാറ്റ:
എസിസിഎക്സ് -0.32
അക്വൈ 9.61
എസിസിഇസഡ് -0.12
സ്ട്രെയിറ്റ് ഡ്രൈവ്
ഉപകരണം: അർഡ്വിനോ-ക്രിക്കറ്റ്-ബോർഡ്
ലേബൽ: സ്ട്രെയിറ്റ് ഡ്രൈവ്
സെൻസർ: 3 അക്ഷങ്ങളുള്ള സെൻസർ (accX, accY, accZ)
Sampനീളം: 10000ms
ആവൃത്തി: 18 Hz
Exampഅസംസ്കൃത ഡാറ്റ:
എസിസിഎക്സ് 1.24
അക്വൈ 8.93
എസിസിഇസഡ് -0.42
പുൾ ഷോട്ട്
ഉപകരണം: അർഡ്വിനോ-ക്രിക്കറ്റ്-ബോർഡ്
ലേബൽ: പുൾ ഷോട്ട്
സെൻസർ: 3 അക്ഷങ്ങളുള്ള സെൻസർ (accX, accY, accZ)
Sampനീളം: 10000 മി.സെ.
ആവൃത്തി: 18 Hz
Exampഅസംസ്കൃത ഡാറ്റ:
എസിസിഎക്സ് 2.01
അക്വൈ 7.84
എസിസിഇസഡ് -0.63 Arduino ABX00087 UNO R4 വൈഫൈ ഡെവലപ്‌മെന്റ് ബോർഡ് - ഡാറ്റ ശേഖരണം 1

ഘട്ടം 8: ഇംപൾസ് ഡിസൈൻ

ക്രിയേറ്റ് ഇംപൾസ് തുറക്കുക:
ഇൻപുട്ട് ബ്ലോക്ക്: സമയ ശ്രേണി ഡാറ്റ (3 അക്ഷങ്ങൾ).
വിൻഡോ വലുപ്പം: 1000 ms വിൻഡോ വർദ്ധനവ് (സ്ട്രൈഡ്): 200 ms പ്രവർത്തനക്ഷമമാക്കുക: അച്ചുതണ്ടുകൾ, മാഗ്നിറ്റ്യൂഡ് (ഓപ്ഷണൽ), ഫ്രീക്വൻസി 18.
പ്രോസസ്സിംഗ് ബ്ലോക്ക്: സ്പെക്ട്രൽ വിശകലനം (ചലനത്തിനുള്ള സ്പെക്ട്രൽ സവിശേഷതകൾ എന്നും അറിയപ്പെടുന്നു). വിൻഡോ വലുപ്പം: 1000 ms വിൻഡോ വർദ്ധനവ് (സ്ട്രൈഡ്): 200 ms പ്രവർത്തനക്ഷമമാക്കുക: അച്ചുതണ്ടുകൾ, മാഗ്നിറ്റ്യൂഡ് (ഓപ്ഷണൽ), എല്ലാ ഡിഫോൾട്ടുകളും ആദ്യം സൂക്ഷിക്കുക.
പഠന ബ്ലോക്ക്: വർഗ്ഗീകരണം (കേരസ്).
ഇംപൾസ് സംരക്ഷിക്കുക ക്ലിക്ക് ചെയ്യുക. Arduino ABX00087 UNO R4 വൈഫൈ ഡെവലപ്‌മെന്റ് ബോർഡ് - ഇംപൾസ് ഡിസൈൻ

സവിശേഷതകൾ സൃഷ്ടിക്കുക:
സ്പെക്ട്രൽ വിശകലനത്തിലേക്ക് പോയി, പാരാമീറ്ററുകൾ സംരക്ഷിക്കുക ക്ലിക്കുചെയ്യുക, തുടർന്ന് പരിശീലന സെറ്റിനായി സവിശേഷതകൾ സൃഷ്ടിക്കുക.

Arduino ABX00087 UNO R4 വൈഫൈ ഡെവലപ്‌മെന്റ് ബോർഡ് - പരിശീലന സെറ്റ്

ഒരു ചെറിയ മോഡലിനെ പരിശീലിപ്പിക്കുക
ക്ലാസിഫയറിലേക്ക് (കെരാസ്) പോയി ഇതുപോലുള്ള ഒരു കോം‌പാക്റ്റ് കോൺഫിഗറേഷൻ ഉപയോഗിക്കുക:
ന്യൂറൽ നെറ്റ്‌വർക്ക്: 1–2 സാന്ദ്രമായ പാളികൾ (ഉദാ. 60 → 30), ReLU
യുഗങ്ങൾ: 40–60
പഠന നിരക്ക്: 0.001–0.005
ബാച്ച് വലുപ്പം: 32
ഡാറ്റ വിഭജനം: 80/20 (ട്രെയിൻ/ടെസ്റ്റ്)
ഡാറ്റ സംരക്ഷിച്ച് പരിശീലിപ്പിക്കുകArduino ABX00087 UNO R4 വൈഫൈ ഡെവലപ്‌മെന്റ് ബോർഡ് - ഡാറ്റ സേവ് ചെയ്ത് പരിശീലിപ്പിക്കുക.

ഹോൾഡ്ഔട്ട് സെറ്റ് ഉപയോഗിച്ച് മോഡൽ പരിശോധന വിലയിരുത്തുകയും പരിശോധിക്കുകയും ചെയ്യുക.
കൺഫ്യൂഷൻ മാട്രിക്സ് പരിശോധിക്കുക; വൃത്തവും മുകളിലേക്കും ഓവർലാപ്പ് ചെയ്യുകയാണെങ്കിൽ, കൂടുതൽ വൈവിധ്യമാർന്ന ഡാറ്റ ശേഖരിക്കുക അല്ലെങ്കിൽ മാറ്റങ്ങൾ വരുത്തുക.
സ്പെക്ട്രൽ പാരാമീറ്ററുകൾ (വിൻഡോ വലുപ്പം / ശബ്ദ നില).

ഘട്ടം 9: ആർഡ്വിനോയിലേക്ക് വിന്യാസം

വിന്യാസത്തിലേക്ക് പോകുക:
Arduino ലൈബ്രറി തിരഞ്ഞെടുക്കുക (C++ ലൈബ്രറിയും പ്രവർത്തിക്കുന്നു).
മോഡൽ വലുപ്പം ചുരുക്കാൻ EON കംപൈലർ (ലഭ്യമെങ്കിൽ) പ്രാപ്തമാക്കുക. Arduino ABX00087 UNO R4 വൈഫൈ ഡെവലപ്‌മെന്റ് ബോർഡ് - Arduino-യിലേക്കുള്ള വിന്യാസം.zip ഡൗൺലോഡ് ചെയ്യുക, തുടർന്ന് Arduino IDE-യിൽ: Sketch → Include Library → Add .ZIP Library… ഇത് ex ചേർക്കുന്നുampസ്റ്റാറ്റിക് ബഫർ, തുടർച്ചയായത് എന്നിവ പോലുള്ളവ File → ഉദാampലെസ് →
നിങ്ങളുടെ പ്രോജക്റ്റ് നാമം - എഡ്ജ് ഇംപൾസ്. Arduino UNO EK R4 WiFi + ADXL345-നുള്ള ഇൻഫറൻസ് സ്കെച്ച്.

ഘട്ടം 10: ആർഡ്വിനോ ഇൻഫെരൻസ് സ്കെച്ച്

#ഉൾപ്പെടുത്തുക
#ഉൾപ്പെടുന്നു
#ഉൾപ്പെടുന്നു // എഡ്ജ് ഇംപൾസ് ഹെഡർ ഉപയോഗിച്ച് മാറ്റിസ്ഥാപിക്കുക
അഡാഫ്രൂട്ട്_ADXL345_യൂണിഫൈഡ് ആക്‌സിൽ =
അഡാഫ്രൂട്ട്_എഡിഎക്സ്എൽ345_യൂണിഫൈഡ്(12345);
സ്റ്റാറ്റിക് ബൂൾ ഡീബഗ്_എൻഎൻ = തെറ്റ്;
അസാധുവായ സജ്ജീകരണം() {
Serial.begin(115200);
(!സീരിയൽ) {}
(!accel.begin()) ആണെങ്കിൽ {
Serial.println(“പിശക്: ADXL345 കണ്ടെത്തിയില്ല”);
അതേസമയം (1);
}
accel.setRange(ADXL345_RANGE_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_CLASSIFIER_INTERVAL_MS *
1000);
സെൻസറുകൾ_ഇവന്റ്_ടി ഇ;
accel.getEvent(&e); (ആക്സൽ.ഇവന്റ് നേടുക)
ബഫർ[ix + 0] = e.aceleration.x;
ബഫർ[ix + 1] = e.aceleration.y;
ബഫർ[ix + 2] = e.aceleration.z;
int32_t കാത്തിരിക്കുക = (int32_t)(അടുത്ത_ടിക്ക് – മൈക്രോസ്());
(കാത്തിരിക്കുക > 0) വൈകിയാൽ മൈക്രോസെക്കൻഡ്സ്(കാത്തിരിക്കുക);
}
സിഗ്നൽ_ടി സിഗ്നൽ;
int err = നമ്പർ::signal_from_buffer(ബഫർ,
EI_CLASSIFIER_DSP_INPUT_FRAME_SIZE, &സിഗ്നൽ);
(പിശക് != 0) റിട്ടേൺ ചെയ്താൽ;

ei_impulse_result_t ഫലം = {0};
EI_IMPULSE_ERROR res = റൺ_ക്ലാസിഫയർ(&സിഗ്നൽ, &ഫലം,
ഡീബഗ്_എൻഎൻ);
(res != EI_IMPULSE_OK) റിട്ടേൺ ചെയ്താൽ;

(വലുപ്പം_t ix = 0; ix <EI_CLASSIFIER_LABEL_COUNT; ix++) എന്നതിന് {
ei_printf(“%s: %3f”, ഫലം.വർഗ്ഗീകരണം[ix].ലേബൽ,
ഫലം.വർഗ്ഗീകരണം[ix].മൂല്യം);
}
#EI_CLASSIFIER_ANOMALY ഉണ്ടെങ്കിൽ == 1
ei_printf(“അനോമലി: %.3f”, ഫലം.അനോമലി);
#endif
ei_printf(“\n”);
}

ഔട്ട്പുട്ട് മുൻampLe:

Arduino ABX00087 UNO R4 വൈഫൈ ഡെവലപ്‌മെന്റ് ബോർഡ് - Arduino ഇൻഫറൻസ് സ്കെച്ച്നുറുങ്ങുകൾ:
നിങ്ങളുടെ ഡാറ്റ ഫോർവേഡർ ഫ്രീക്വൻസിയുമായി (ഉദാ: 100 Hz → 10 ms) EI_CLASSIFIER_INTERVAL_MS സമന്വയിപ്പിച്ച് നിലനിർത്തുക. എഡ്ജ് ഇംപൾസ് ലൈബ്രറി നിങ്ങളുടെ ഇംപൾസിൽ നിന്ന് ഈ സ്ഥിരാങ്കം യാന്ത്രികമായി സജ്ജമാക്കുന്നു.
നിങ്ങൾക്ക് തുടർച്ചയായ കണ്ടെത്തൽ (സ്ലൈഡിംഗ് വിൻഡോ) വേണമെങ്കിൽ, തുടർച്ചയായ എക്സ് എന്നതിൽ നിന്ന് ആരംഭിക്കുക.ample EI ലൈബ്രറിയിൽ ഉൾപ്പെടുത്തിയിട്ടുണ്ട്, കൂടാതെ ADXL345 റീഡുകളിൽ സ്വാപ്പും ഉണ്ട്.
ഞങ്ങൾ ഉടൻ തന്നെ വീഡിയോ ട്യൂട്ടോറിയലുകൾ ചേർക്കുന്നതായിരിക്കും; അതുവരെ, തുടരുക – https://www.youtube.com/@RobuInlabs
നിങ്ങൾക്ക് ഇപ്പോഴും ചില സംശയങ്ങളുണ്ടെങ്കിൽ, എഡ്ജ്ഡ് ഇംപൾസിന്റെ ഈ വീഡിയോ നിങ്ങൾക്ക് പരിശോധിക്കാം: https://www.youtube.com/watch?v=FseGCn-oBA0&t=468s

Arduino ലോഗോ

പ്രമാണങ്ങൾ / വിഭവങ്ങൾ

Arduino ABX00087 UNO R4 വൈഫൈ ഡെവലപ്‌മെന്റ് ബോർഡ് [pdf] ഉപയോക്തൃ ഗൈഡ്
R4 വൈഫൈ, ADXL345, ABX00087 UNO R4 വൈഫൈ ഡെവലപ്‌മെന്റ് ബോർഡ്, ABX00087, UNO R4 വൈഫൈ ഡെവലപ്‌മെന്റ് ബോർഡ്, വൈഫൈ ഡെവലപ്‌മെന്റ് ബോർഡ്, ഡെവലപ്‌മെന്റ് ബോർഡ്, ബോർഡ്

റഫറൻസുകൾ

ഒരു അഭിപ്രായം ഇടൂ

നിങ്ങളുടെ ഇമെയിൽ വിലാസം പ്രസിദ്ധീകരിക്കില്ല. ആവശ്യമായ ഫീൽഡുകൾ അടയാളപ്പെടുത്തി *