Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pm:prj2024:iotelea:dragos.filipescu [2024/05/27 14:02]
dragos.filipescu [Download]
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 45: Line 44:
  
 {{ :​pm:​prj2024:​iotelea:​seismograf.gif?​direct&​600 |}} {{ :​pm:​prj2024:​iotelea:​seismograf.gif?​direct&​600 |}}
 +
 +**Versiunea finala (seismograma pe dsiplay LCD)**
 +
 +{{ :​pm:​prj2024:​iotelea:​seismograf2.gif?​direct&​600 |}}
  
 ===== Software Design ===== ===== Software Design =====
Line 51: 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 58: 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 =====
pm/prj2024/iotelea/dragos.filipescu.1716807735.txt.gz · Last modified: 2024/05/27 14:02 by dragos.filipescu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0