Proiectul consta in declansarea aparatului foto de la distanta folosind o conexiune Bluetooth cu telefonul mobil. Acest lucru este foarte util pentru poze ce se doresc a fi facute fara actionarea aparatului foto sau videouri de tip timelapse, mai ales daca aparatul este montat pe un trepied. Ideea mi-a venit din experienta proprie.
Camera foto va fi ancorata pe o structura de lemn care contine un brat actionat printr-un motor pas cu pas orientat catre butonul de declansare a pozei. Conectand telefonul mobil la microcontroller prin Bluetooth, se poate actiona motorul ce va declansa butonul si implicit va captura o poza.
Denumire | Pret (lei) | Cantitate |
---|---|---|
Kit-ul cu componentele de baza | 34 | 1 |
Motor stepper 28BYJ-48 | 7 | 1 |
Driver motor ULN2003 | 10 | 1 |
Modul Bluetooth HC-05 | 22 | 1 |
Fire mama-mama | 0.3 | 10 |
Cablu USB A | 6 | 1 |
Poxipol | 12 | 1 |
Bucati de lemn | - | 3 |
Aplicatia consta in 2 parti: microcontrollerul care primeste pe seriala un semnal pentru a misca motorul si aplicatia android in care utilizatorul poate apasa pe un buton pentru a realiza o poza. In acel moment, se trimite prin Bluetooth un semnal catre modulul HC-05 de pe microcontroller care trimite mai departe prin seriala catre microprocesor. La deschiderea aplicatiei Android, se realizeaza conexiunea Bluetooth intre telefon si modul.
Pe microcontroller, se initiaza conexiunea USART si asteapta intr-o bucla sa primeasca un caracter prin seriala.
Cand primeste caracterul “1”, incepe miscarea bratului. Aceasta are loc in 2 etape:
- prima etapa in care se misca in jos pana la apasarea butonului camerei foto
- a doua etapa in care se ridica in pozitia initiala
Miscarea propriu-zisa a bratului este comandata prin modificarea PORTA cu valori din vectorul [1, 3, 2, 6, 4, 12, 8, 9], date in aceasta ordine pentru miscarea in jos, si in ordine inversa pentru miscarea in sus. Aceste valori reprezinta, in codificarea Gray pe 4 biti, valorile transmise in binar catre driver si, mai departe, ca tensiune catre cele 4 bobine. Fiecare bit reprezinta tensiunea unei bobine. Acestea trebuie actionate pe rand, cate 1 sau cate 2 alaturate. Dupa miscarea in jos, se asteapta 0.3 secunde si se realizeaza miscarea inapoi a bratului prin modificarea PORTA cu aceleasi valori in ordine inversa.
Surse cod:
Cod microcontroller
Cod Android
Software folosit:
- Visual Studio Code
- Android Studio
Etapa | Data |
---|---|
Achizitionare piese necesare | 26.04.2019 |
Lipire componente pe placa | 06.05.2019 |
Realizare schema electrica | 09.05.2019 |
Scriere cod microcontroller | 10.05.2019 |
Scriere cod Android | 12.05.2019 |
Realizare constructie din lemn | 14.05.2019 |
Modificat cod - ajustat motor | 15.05.2019 |
Reparat brat | 22.05.2019 |
A fost un proiect foarte interesant, primul de genul pentru mine. Am avut insa destule probleme cu pozitionarea motorului si a bratului lipit de acesta din cauza ca nu avea forta suficienta pentru a apasa butonul si a doua oara pentru realizarea pozei, doar prima cursa a butonului in care focuseaza imaginea. In plus, cu cateva zile inainte am rupt din greseala bratul de pe axul motorului si a trebuit sa il lipesc din nou.