This shows you the differences between two versions of the page.
pm:prj2024:iotelea:dragos.filipescu [2024/05/27 14:09] dragos.filipescu [Hardware Design] |
pm:prj2024:iotelea:dragos.filipescu [2024/05/28 21:07] (current) dragos.filipescu [Software Design] |
||
---|---|---|---|
Line 38: | Line 38: | ||
**Schema hardware** | **Schema hardware** | ||
- | |||
{{ :pm:prj2024:iotelea:schema_hardware_seismograf.drawio.png?direct&600 |}} | {{ :pm:prj2024:iotelea:schema_hardware_seismograf.drawio.png?direct&600 |}} | ||
Line 55: | Line 54: | ||
Pentru o precizie mai buna, am folosit algoritmul [[https://en.wikipedia.org/wiki/Kahan_summation_algorithm#The_algorithm|Kahan Summation]] pentru a face media primelor ''SAMPLE_SIZE'' valori masurate de accelerometru, astfel incat masuratorile ulterioare sa aiba un punct de referinta cat mai precis. | Pentru o precizie mai buna, am folosit algoritmul [[https://en.wikipedia.org/wiki/Kahan_summation_algorithm#The_algorithm|Kahan Summation]] pentru a face media primelor ''SAMPLE_SIZE'' valori masurate de accelerometru, astfel incat masuratorile ulterioare sa aiba un punct de referinta cat mai precis. | ||
+ | |||
+ | {{ :pm:prj2024:iotelea:seismograf_-_kahan_summation.png?direct&600 |}} | ||
Pe langa procesul de calibrare, in setup se initializeaza si timer-ul 1, care va emite o intrerupere software la fiecare secunda, iar la ''FILE_SAVE_INTERVAL'' secunde, se vor scrie date in cardul SD. | Pe langa procesul de calibrare, in setup se initializeaza si timer-ul 1, care va emite o intrerupere software la fiecare secunda, iar la ''FILE_SAVE_INTERVAL'' secunde, se vor scrie date in cardul SD. | ||
+ | |||
+ | {{ :pm:prj2024:iotelea:seismograf_-_timer.png?direct&600 |}} | ||
LED-ul se va aprinde pentru a semnala scrierea datelor pe card, pentru ca acesta sa nu fie scos din slot, ceea ce ar risca coruperea cardului. LED-ul se va stinge cand datele au fost scrise si fisierul inchis. | LED-ul se va aprinde pentru a semnala scrierea datelor pe card, pentru ca acesta sa nu fie scos din slot, ceea ce ar risca coruperea cardului. LED-ul se va stinge cand datele au fost scrise si fisierul inchis. | ||
Line 62: | Line 65: | ||
In vederea scrierii datelor in cardul SD, masuratorile sunt pastrate in 4 buffere de 20 de valori fiecare, care vor stoca valorile acceleratiilor pe cele 3 axe, precum si magnitudinea vectorului V = X + Y + Z, unde X, Y si Z sunt vectorii ce reprezinta acceleratiile pe cele 3 axe. | In vederea scrierii datelor in cardul SD, masuratorile sunt pastrate in 4 buffere de 20 de valori fiecare, care vor stoca valorile acceleratiilor pe cele 3 axe, precum si magnitudinea vectorului V = X + Y + Z, unde X, Y si Z sunt vectorii ce reprezinta acceleratiile pe cele 3 axe. | ||
+ | {{ :pm:prj2024:iotelea:seismograf_-_buffere.png?direct&600 |}} | ||
===== Concluzii ===== | ===== Concluzii ===== |