

Bòrd Leasachaidh WiFi ABX00087 UNO R4
Aithneachadh Peilear Criogaid a’ cleachdadh Arduino UNO R4 WiFi + ADXL345 + Edge
Impulse
Tha an sgrìobhainn seo a’ toirt seachad sruth-obrach iomlan airson siostam aithneachadh peilear criogaid a thogail a’ cleachdadh Arduino UNO R4 WiFi le luathaichear-mheatair ADXL345 agus Edge Impulse Studio. Tha am pròiseact a’ toirt a-steach cruinneachadh dàta luathaichear-mheatair, trèanadh modail ionnsachaidh innealan, agus an cleachdadh air ais chun Arduino airson seòrsachadh peilear ann an àm fìor.
Seallaidhean criogaid air an deach beachdachadh sa phròiseact seo:
– Draibh Còmhdaich
– Draibheadh Dìreach
– Tarraing air falbh
Ceum 1: Bathar-cruaidh riatanasan
– Arduino UNO R4 WiFi
– Luathaichear-mheatair ADXL345 (I2C)
– Uèirichean geansaidh
– Clàr-arain (roghainneil)
- càball USB Type-C
Ceum 2: Bathar-bog riatanasan
– Arduino IDE (as ùire)
– Cunntas Edge Impulse Studio (an-asgaidh)
– Innealan Edge Impulse CLI (feumar Node.js)
Leabharlann Adafruit ADXL345
Ceum 3: Uèirleadh an ADXL345
Ceangail an sensor ADXL345 ris an Arduino UNO R4 WiFi mar a leanas:
VCC → 3.3V
GND → GND
SDA → SDA (A4)
SCL → SCL (A5)
CS → 3.3V (roghainneil, airson modh I2C)
SDO → fleòdradh no GND
Ceum 4: Dèan deiseil airson mothachair IDE
Mar a stàlaicheas tu leabharlannan mothachaidh ann an Arduino IDE?
Fosgail IDE Arduino
Fosgail Innealan → Stiùirich Leabharlannan… agus stàlaich: Adafruit ADXL345 Aonaichte Adafruit Aonaichte Sensor
(Ma tha LSM6DSO no MPU6050 agad na àite: stàlaich SparkFun LSM6DSO, Adafruit LSM6DS no MPU6050 a rèir sin.)
Ceum 5: Sgeidse Arduino airson Cruinneachadh Dàta
Luchdaich suas an sgeidse seo chun Arduino UNO R4 WiFi agad. Bidh e a’ sruthadh dàta accelerometer ann an cruth CSV (x, y, z) aig ~18 Hz airson Edge Impulse.
# gabhail a-steach
#cuir a-steach
Adafruit_ADXL345_Accel Aonaichte =
Adafruit_ADXL345_Aonaichte(12345);
suidheachadh falamh () {
sreath.toiseach(115200);
ma tha (!accel.begin()) {
Serial.println(“Cha deach ADXL345 a lorg”);
fhad 'sa (1);
}
luathachadh.setRange(ADXL345_RANGE_4_G);
}
lùb falamh () {
mothachairean_tachartas_t e;
luathachadh.faighTachartas(&e);
Clò-bhualadh sreathach (e.luathachadh.x);
Sreath.clò-bhualadh(“,”);
Sreath.clò-bhualadh(e.luathachadh.y);
Sreath.clò-bhualadh(“,”);
Sreath.println(e.acceleration.z);moille(55); // ~18 Hz
}
Suidhich Impulse Oir

Ceum 6: A’ ceangal ri Edge Impulse
- Dùin Monitor Sreathach Arduino.
- Ruith an àithne: edge-impulse-data-forwarder –frequency 18
- Cuir a-steach ainmean nan aisealan: accX, accY, accZ
- Thoir ainm air an inneal agad: Arduino-Cricket-Board
- Dearbhaich an ceangal ann an Edge Impulse Studio fo ‘Innealan’.


Ceum 7: Cruinneachadh Dàta
Ann an Edge Impulse Studio → Cruinneachadh dàta:
– Inneal: Bòrd-Criogaid Arduino
– Braitear: Luathaichear-mheatair (3 aisealan)
— Sampfad an le: 2000 ms (2 diogan)
- Tricead: 18 Hz
Clàraich co-dhiù 40 dioganampnas lugha gach clas:
– Draibh Còmhdaich
– Draibheadh Dìreach
– Tarraing air falbh
Cruinnich dàta examples
Cover Drive
Inneal: Bòrd-criogaid Arduino
Leubail: Draibh Còmhdaich
Braitear: Braitear le 3 aisealan (accX, accY, accZ)
Sampfad an le: 10000ms
Tricead: 18 Hz
Exampan dàta amh:
accX -0.32
cunntas 9.61
accZ -0.12
Draibh Dhìreach
Inneal: Bòrd-criogaid Arduino
Leubail: Draibh Dhìreach
Braitear: Braitear le 3 aisealan (accX, accY, accZ)
Sampfad an le: 10000ms
Tricead: 18 Hz
Exampan dàta amh:
accX 1.24
cunntas 8.93
accZ -0.42
Tarraing-urchair
Inneal: Bòrd-criogaid Arduino
Leubail: Tarraing-urchair
Braitear: Braitear le 3 aisealan (accX, accY, accZ)
Sampfad an le: 10000 ms
Tricead: 18 Hz
Exampan dàta amh:
accX 2.01
cunntas 7.84
accZ -0.63 
Ceum 8: Dealbhadh Brosnachail
Fosgail Cruthaich brosnachadh:
Bloc cuir-a-steach: Dàta sreath ùine (3 aisealan).
Meud uinneig: 1000 ms Meudachadh uinneig (ceum): 200 ms Comasaich: Aisealan, Meudachd (roghainneil), tricead 18.
Bloc giullachd: Mion-sgrùdadh speactram (ris an canar Feartan Speactram airson gluasad). Meud uinneig: 1000 ms Meudachadh uinneig (ceum): 200 ms Comasaich: Aisealan, Meud (roghainneil), cùm a h-uile roghainn bunaiteach an toiseach.
Bloc ionnsachaidh: Seòrsachadh (Keras).
Briog air Sàbhail impulse. 
Feartan a chruthachadh:
Rach gu Mion-sgrùdadh speactrail, cliog air Sàbhail paramadairean, agus an uairsin Gin feartan airson an t-seata trèanaidh.

Trèanadh modail bheag
Rach gu Classifier (Keras) agus cleachd rèiteachadh teann mar:
Lìonra neoni: 1–2 sreathan dùmhail (m.e., 60 → 30), ReLU
Linntean: 40–60
Ìre ionnsachaidh: 0.001–0.005
Meud baidse: 32
Roinn dàta: 80/20 (trèanadh/deuchainn)
Sàbhail agus trèanadh an dàta
Dèan measadh agus sgrùdadh air deuchainnean modail leis an t-seata holdout.
Thoir sùil air maitrís a’ mhì-chinnt; ma tha an cearcall agus an t-àrd a’ dol thairis air a chèile, cruinnich dàta nas eadar-mheasgte no dèan atharrachadh air.
Paramadairean speactram (meud uinneig / làr fuaim).
Ceum 9: Cleachdadh gu Arduino
Rach gu Cleachdadh:
Tagh leabharlann Arduino (bidh leabharlann C++ ag obair cuideachd).
Cuir an comas air EON Compiler (ma tha e ri fhaighinn) meud a’ mhodail a lughdachadh.
Luchdaich sìos am faidhle .zip, an uairsin ann an Arduino IDE: Sketch → Include Library → Add .ZIP Library… Cuiridh seo ex risampmar bufair statach agus fo leantainneach File → Example →
Ainm a’ Phròiseict agad – Edge Impulse. Sgeidse co-dhùnaidh airson Arduino UNO EK R4 WiFi + ADXL345.
Ceum 10: Sgeidse Co-dhùnaidh Arduino
# gabhail a-steach
#cuir a-steach
#cuir a-steach // Cuir ceann-sgrìobhaidh Edge Impulse na àite
Adafruit_ADXL345_Accel Aonaichte =
Adafruit_ADXL345_Aonaichte(12345);
statach bool debug_nn = meallta;
suidheachadh falamh () {
sreath.toiseach(115200);
fhad 's a (!Sreath) {}
ma tha (!accel.begin()) {
Serial.println(“MEARACHD: Cha deach ADXL345 a lorg”);
fhad 'sa (1);
}
luathachadh.setRange(ADXL345_RANGE_4_G);
}
lùb falamh () {
bufair snàmh[EI_CLASSIFIER_DSP_INPUT_FRAME_SIZE] = {0};
airson (size_t ix = 0; ix < EI_CLASSIFIER_DSP_INPUT_FRAME_SIZE; ix +=)
3) {
uint64_t next_tick = micros() + (EI_CLASSIFIER_INTERVAL_MS *
1000);
mothachairean_tachartas_t e;
luathachadh.faighTachartas(&e);
bufair[ix + 0] = e.luathachadh.x;
bufair[ix + 1] = e.luathachadh.y;
bufair[ix + 2] = e.luathachadh.z;
int32_t feitheamh = (int32_t)(an ath_bhriogadh – micros());
ma tha (feitheamh > 0) delayMicroseconds(feitheamh);
}
comharra_t comharra;
int err = numpy::signal_from_buffer(bufair,
EI_CLASSIFIER_DSP_INPUT_FRAME_SIZE, &comharra);
ma thilleas (err != 0);
ei_impulse_result_t toradh = {0};
EI_IMPULSE_ERROR res = run_classifier(&comharra, &toradh,
dì-bhugachadh_nn);
ma tha (res != EI_IMPULSE_OK) a’ tilleadh;
airson (size_t ix = 0; ix < EI_CLASSIFIER_LABEL_COUNT; ix++) {
ei_printf(“%s: %.3f “, toradh.seòrsachadh[ix].label,
toradh.seòrsachadh[ix].luach);
}
#ma tha EI_CLASSIFIER_HAS_ANOMALY == 1
ei_printf(“neo-riaghailteachd: %.3f”, toradh.neo-riaghailteachd);
#deireadh
ei_printf(“\n”);
}
Toradh example:
Molaidhean:
Cùm EI_CLASSIFIER_INTERVAL_MS ann an co-chòrdadh ri tricead an t-sruth-chuir dàta agad (me, 100 Hz → 10 ms). Bidh leabharlann Edge Impulse a’ suidheachadh an cunbhalachd seo gu fèin-ghluasadach bhon impuls agad.
Ma tha thu ag iarraidh lorg leantainneach (uinneag sleamhnachaidh), tòisich bhon eisimpleir leantainneach.ample air a ghabhail a-steach leis an leabharlann EI agus iomlaid anns na leughaidhean ADXL345.
Cuiridh sinn bhideothan oideachaidh ris a dh’ aithghearr; gus an uairsin, cùm sùil a-mach – https://www.youtube.com/@RobuInlabs
Agus ma tha teagamhan sam bith agaibh fhathast, faodaidh sibh sùil a thoirt air a’ bhidio seo le Edged Impulse: https://www.youtube.com/watch?v=FseGCn-oBA0&t=468s

Sgrìobhainnean/Goireasan
![]() |
Bòrd Leasachaidh WiFi Arduino ABX00087 UNO R4 [pdfStiùireadh Cleachdaiche R4 WiFi, ADXL345, ABX00087 Bòrd Leasachaidh WiFi UNO R4, ABX00087, Bòrd Leasachaidh WiFi UNO R4, Bòrd Leasachaidh WiFi, Bòrd Leasachaidh, Bòrd |
