This is an old revision of the document!
(acum mult, mult timp…) Eram la ora de fizică și, la o problemă destul de simplă, am ajuns la următoarea expresie de calculat:
$$ x = \frac{0.378 * 0.294 ^ 3 - \sqrt{0.764} * 0.245 ^ 2}{0.532 - 0.654}$$
După două încercări (evident nereușite) de a calcula, am tras concluzia că voi rămâne la calculul simbolic . Totuși, pentru când un rezultat numeric este important (de exemplu, poate fi interpretat mai departe), e nevoie de o metodă mai robustă decât a bate manual la calculator zeci de cifre. Pentru această situație am creat Calculatorul de buzunar++: un device simplu care, folosind PhotoMath, reduce semnificativ erorile umane în calculele numerice de rutină.
Device-ul respectă următoarea secvență de pași:
Pentru realizarea acestui proiect, am achiziționat următoarele componente:
Schema electrică:
Pentru acest proiect, am folosit Arduino IDE. Codul poate fi accesat la adresa https://github.com/VladNegoita/Calculator.
În continuare, va fi descrisă succint modul de funcționare al componentei software.
După realizarea conexiunilor fizice, display-ul funcționează aproape imediat întrucât am folosit o bibliotecă care ușurează semnificativ utilizarea acestuia: LiquidCrystal_I2C.
Pentru driverele camerei, am identificat o soluție implementata pe github: https://github.com/bitluni/ESP32CameraI2S (există și un videoclip explicativ pe youtube asociat).
Camera realizează poze de rezoluție destul de mică, nefiind tocmai satisfăcătoare în practică. Pentru a ajunge la această concluzie, am folosit un WebServer unde am încărcat pozele realizate de cameră periodic și am interogat folosind Postman.
Întrucât pozele sunt primite într-un format .bmp și .jpeg este necesar pentru utilizarea API-ului este nevoie de o conversie între aceste formate. Întrucât nu există suport oferit pentru o astfel de operație pentru microcontroller-ul ales, am decis ca un script de python să se ocupe de conversie și de apelul API-ului, întorcând rezultatul pe serială. <note tip> Descrierea codului aplicaţiei (firmware): * mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR) * librării şi surse 3rd-party (e.g. Procyon AVRlib) * algoritmi şi structuri pe care plănuiţi să le implementaţi * (etapa 3) surse şi funcţii implementate </note> ===== Rezultate Obţinute ===== <note tip> Care au fost rezultatele obţinute în urma realizării proiectului vostru. </note> ===== Concluzii ===== ===== Download =====
===== Jurnal =====
<note tip>
04.05 - Adăugarea introducerii, descrierii și a componentelor hardware ce vor fi utilizate
</note>
===== Bibliografie/Resurse =====
<note>
Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe Resurse Software şi Resurse Hardware**.
Fizica din spatele roțiilor mecanum: https://www.youtube.com/watch?v=gnSW2QpkGXQ
</note>