LISTA PROIECTE 2010
Completion requirements
Proiectul de SMP trebuie predat în ultimul laborator din semestru. Pentru susținerea acestuia va trebui să-mi prezentați implementarea hardware + software. Aveți posibilitatea să vă alegeți din 4 categorii de proiecte:
I) Proiecte placuta 386EX EV/Z3, cea cu care vom lucra în laborator
1. Ceas digital (oră, dată, cronometru, alarmă, sincronizare cu PC-ul) – 1-2 studenți
2. Calculator de buzunar (gen calc din Windows) – 1-2 studenți
3. Implementare unui joc interactiv (X/0, dame, sah) – 2-3 studenți
4. Implementarea unei instrument muzical cu tastatura placii EV/Z3, display-ul acesteia, sunetul redat pe calculatorul desktop, transmis prin seriala - 2-3 studenți
5. Simularea controlarii motoarelor unui robot folosind convertorul A/D, tastatura si display - 1-2 studenți
II) Proiecte grele de research
6. Portare placuta EV/Z3 pe Qemu (arhitectura 386, controller 8254 (prob existent), timere,
device-uri - seriala, paralel, display, keyboard, convertor A/D) - 5-6 studenți
III) Proiecte PIC/Atmel - se va implementa și folosi un simulator (Proteus) și/sau placuța efectivă
7. Simulare centrală termică folosind un diferențial între 2 senzori de temperatura - 1-2 studenți
8. Sistem de alarma cu 3 zone programabile - 1-2 studenți
9. Creeare unui micro web server html cu comunicația prin seriala - 2-3 studenți
10. Convertor Serial-Paralel folosind Pic - 1-2 studenți
IV) Proiecte propuse de voi (PIC/Atmel - implementare device hardware + software) - maxim 3 studenți
i) La o grupă se poate alege un singur tip de proiect. Proiectele propuse de mine se vor da în ordinea în care vă inscrieți la ele.
ii) La proiectele din categoria I va trebui să lucrați pentru portarea lor în cadrul laboratorului de SMP. Practic logica o implementați pe calculatorul vostru de acasă (IA32), portarea pe device-urile I/O de pe placuță o să trebuiască să o efectuați la laborator.
iii) Pentru proiectele propuse de voi trebuie să-mi dați mail până la începutul lui Aprilie
iv) Ca să va înscrieți la orice proiect trebuie să-mi dați mail (matmih2002@yahoo.com)
Situația proiecte pe grupe:
-> 331AC
I.1 - Negoita Daniel - Ceas digital
-> Trebuie să afișezi pe LCD-ul plăcuței ora/minutul/secunda curentă. Trebuie să ai posibilitatea să intruci o alarmă de la tastatură (oră la care să sune ceva). Pentru oră/alarmă trebuie să te folosești de timer-urile plăcuței, iar pentru sunatul alarmei de buzzer. Introducerea alarmei de la tastatura placuței. Va trebui sa găsești o modalitate de a seta ora inițială, după ce încarci programul pe plăcuță.
I.2 - Andrei Alexandru - Calculator de buzunar
-> Trebuie să realizezi operații de adunare, scădere, impărțire, înmulțire folsind tastatura de pe plăcuță și display-ul LCD pentru afișarea rezultatului. Modul de introducere a operației este asemănătoare programului Calculator din Windows
I.3 - Saioc Ionut,Nae Andrei,Burghiu Adrian - Implementare unui joc interactiv de X și 0
-> Modalitatea de funcționare a jocului este: utilizatorul își alege la început cu ajutorul tastaturii ce vrea să fie (X sau 0). De asemenea își va alege și dimensiune tablei de joc (să spunem între 3-6 căsuțe pe coloană). Introducerea unui pas din joc (X sau 0) se va efectua cu ajutorul tastaturii folosind coordonatele de pe tablă (ex 2:3 - rândul 2, coloana 3). Pe LCD-ul plăcuței va trebui să afișa-ți un status al jocului, să folosiți buzzer-ul pentru comenzi greșite/câștig/pierdut. De asemenea trebuie să aveți o funcție pentru a afișa pe LCD boardul de joc linie cu linie (LCD-ul conține o singură linie, practic afișați board-ul cu X/0 tot linie cu linie,folosind tastele de -> <- pentru a trece la alte linii. Ce este important este că va trebui să implementați un algoritm care să mă bată la un board de 6:6 - ceva euristic nu va funcționa, dați un search despre arbori min-max și stări de joc.
I.3 - Costin Chirvasuta - Implementare unui joc de șah
-> Cum este vorba de alt joc o să permit duplicarea acestui proiect. Modalitatea de selectare a mutării este cea descrisă în jocul de X și 0. Pentru a efectua o mutare uită-te la http://www.cforcoding.com/2009/12/programming-puzzles-chess-positions-and.html. De la tastatura plăcii o introduci aceste mutării. Ce mai trebuie sa implementezi o modalitate de a afisa toată tabla rând cu rând (diplay-ul LCD al placii are doar 1 row), și să testezi dacă o mutare este legală. Practic cei doi jucători vor fi doi utilizatori ai jocului. Dacă vrei poti să testezi și situația de MAT și să dai un semnal cu buzzer-ul plăcii
I.3 - Eftimie Daniel, Hristescu Cristian, Satalan Alexandru - Implementare unui joc de dame
-> Modalitatea de selectare a mutării este cea descrisă în jocul de X și 0. Pentru a efectua o mutare uită-te la http://www.cforcoding.com/2009/12/programming-puzzles-chess-positions-and.html. Cel mai bine ar fi să găsiți o modalitate clasică de descriere a unei mutări pentru jocul de dame. De la tastatura plăcii o introduci aceste mutării. Ce mai trebuie sa implementezi o modalitate de a afisa toată tabla rând cu rând (diplay-ul LCD al placii are doar 1 row), și să testezi dacă o mutare este legală. Practic cei doi jucători vor fi doi utilizatori ai jocului. Trebuie sa detectați daca s-a ajuns la un rezultat (cineva a câștigat_ și să dai un semnal cu buzzer-ul plăcii. De asemenea trebuie să realizați și un algoritm inteligent pentru a juca cu calculatorul - să aibă mutări coerente and stuff. Pentru ușurință trebuie să afișați ultima mutare în pentru jocul cu un oponent calculator. Ca să testăm vom pune 2 calculatoare să joace unul cu celălalt. Modalitatea de selectare a jucătorilor se va face la început.
I.4 - Chiriac Adrian - Instrument muzical
-> Proiectul își propune generarea de tonuri muzicale cu tastatura placuței, afișarea acestora pe LCD, redarea acestora cu buzzerul. Se vor implementa 3 instrumente muzicale alese la început, o modalitate de a seta notele cântate de acestea prin tastatura plăcii. Se va descriere în README algoritmul taste-note ales.
Se va putea alege și redarea unei melodii aflate static în program.
I.5 - Sergiu Ionescu - Simularea controlarii motoarelor unui robot folosind convertorul A/D, tastatura si display
-> Ce trebuie să realizezi este softul in C cu OpenWatcom pentru controlarea motorului/motoarelor + să vii și cu un motor funcțional care să-l conectăm la plăcuța din laborator. Pe display va trebui să afișezi turația motorului în timp real + distanța totală parcursă + viteza de deplasare. Din taste trebuie să fii capabil să schimbi turația. Trebuie să vezi și dacă reușești să-l faci să inversezi direcția motorului.
IV - Martinas Radu, Lucescu Ionut, Preda Nicusor - Masinuta cu atmega16
-> Trebuie să-mi aduci și un astfel de motor(de preferat un mic robot) pe care să-l conectezi la plăcuță. Trebuie să ai posibilitatea să schimbi turația de la o tastatură/controller extern (gen telecomandă radio/inflaroșu) și să afișezi anumiți parametrii pe un display LCD(turație, distanța totală parcursă de motor). Dacă folosiți o mașină ar fi frumos să poți să modifici direcția/sensul din tastatură. De asemenea ar trebui sa anuntati utilizatorul cand s-a lovit de un obstacol, buzzer+lcd, ca acesta sa poate modifica sensul (înainte/înapoi/stânga/dreapta). Cum sunteți 3 trebuie să puteți să introduceți de la tastatura plăcuței și un circuit pe care mașina îl va urma - de exemplu 30N-20NNE-10S - se va deplasa când îi dați Run 30cm la Nord, 20 cm la NordNordEst și așa mai departe
IV - Anchevici Silviu, Andrei Babalic 331AC - Line following robot
-> Trebuie să-mi dați mail cu ce microprocesor o să folosiți. Cum am discutat veți folosi ATmega 16PU 0812K si 6 senzori infrarosii pentru a putea determina cu exactitate traseul. Pe lângă robot/circuit/software mi-ar place să vă gandiți la un algoritm pentru a determina dacă robotul nu a intrat într-un ciclu de circuit. Gândiți-vă la cum poate robotul să iasă dintr-un cerc, intrat dintr-o bifurcație.
III.4 Baleanu Iosif - Convertor Serial-Paralel folosind PIC
-> Trebuie sa realizezi efectiv placa hardware pe care sa o testam cu un cablu paralel si serial. Porturile mama/tata te gandesti tu cum ar fi mai usor. Trebuie sa-mi trimiti si ce PIC o sa folosesti si modalitatea de alimentare a acestuia. De asemenea lucrarea trebuie sa contina si o documentatie asupra impactului unui anumit protocol de transmisie pe seriala precum si caracteristicile conexiunilor suportate (baudrate/stop bits etc...) de o parte si de alta. Ar fi frumos sa ai o modalitate de a seta carateristicile conversiei..(adica carateristicile conexiunii seriale de input si ale celei paralele de output - cum ar fi baudrate-ul).
-> 332 AA
I.3 - Caiter Vlad-Ionut, Panait Flaviu Iulian - Implementare unui joc interactiv de X și 0
-> Modalitatea de funcționare a jocului este: utilizatorul își alege la început cu ajutorul tastaturii ce vrea să fie (X sau 0). De asemenea își va alege și dimensiune tablei de joc (cum sunteți 2 ne vom limita la 3x3). Introducerea unui pas din joc (X sau 0) se va efectua cu ajutorul tastaturii folosind coordonatele de pe tablă (ex 2:3 - rândul 2, coloana 3). Pe LCD-ul plăcuței va trebui să afișa-ți un status al jocului, să folosiți buzzer-ul pentru comenzi greșite/câștig/pierdut. De asemenea trebuie să aveți o funcție pentru a afișa pe LCD boardul de joc linie cu linie (LCD-ul conține o singură linie, practic afișați board-ul cu X/0 tot linie cu linie,folosind tastele de -> <- pentru a trece la alte linii. Ce este important este că va trebui să implementați un algoritm care să mă bată la joc.
III.1 - Manciu Alexandru, Matei Georgian - Simulare centrală termică folosind un diferențial între 2 senzori de temperatură
-> Trebuie să-mi aduceți plăcuța hardware ce va conține un microcontroller, un LCD, 2 senzori de temperatură pentru a testa și o modalitate de a seta plăcuța (minitastatură, conectare soft prin serială, telecomandă inflaroșu). Pe LCD se va simula (arăta) diferența de temperatură între cei doi senzori și cum trebuie crescut focul deschis pentru a mentine încălzirea. Pentru ecuația matematică ce trebuie implementată vă puteți uita pe net pentru diferețele dintre tur și retur (temperatura apei ce pleacă de la centrală și a celei care vine după ce a trecut prin calorifere). Astfel de la panoul de comandă se va seta o temperatură constantă pe care centrala trebuie să o mențină în camere (nu e temperatura de la tur - trebuie să vă uitați pe net despre cum se face). Trebuie să-mi trimiteți ce componente o să folosiți (mai ales uC)
IV - Irina Nicolae, Radulescu Andrei Ciprian - Controlul turatiei unui motor de curent continuu
-> Trebuie să-mi prezentați placuța care o să conțină un motor de curent continuu, un encoder, un ATMega32, o punte H, un regulator de tensiune. Ce trebuie să implementați, în afară de mașina propiu-zisă este modalitatea de control a acesteia - stânga/dreapta/înainte/înapoi cu ajutorul unui dispozitiv extern - de exemplu telecomandă infraroșu (mail telecomandă unde radio - e Ok) + mecanism de modificare dinamica a turației/vitezei.
IV - Iacob Mihai Vlad, Chiorpec Vlad, Balaceanu Bogdan - Roboțel de camera
-> Trebuie să-mi prezentați "roboțel"-ul hardware care merge prin camera până la întâlnirea unui obstacol. La întâlnirea obstacolului robotul va scana în stanga și în dreapta cu ajutorul unui servomecanism pentru a gasi o cale libera. Daca gâsește spațiu pentru a merge se întoarce în stanga respectiv în dreapta, daca nu se întoarce 180 de grade. De asemenea trebuie sa faceti si un dispozitiv de comanda (gen telecomanda inflaroșu) pentru controlul acestuia - stanga/dreapta/inainte/inapoi, și să aveți un led care detectează dacă robotul s-a blocat (numai poate înainta în nici o direcție). Hardware-ul de implementare al proiectului va conține un atmega16 legat la o punte H pentru controlul motoarelor, un servomecanism, un senzor shar pentru detecarea obstacolelor, un led pentru detecție de blocare și dispozitul de telecomandă.
-> 332 AC
I.1 - Stefan Alexandru - Ceas digital
-> Trebuie să afișezi pe LCD-ul plăcuței ora/minutul/secunda curentă. Trebuie să ai posibilitatea să intruci o alarmă de la tastatură (oră la care să sune ceva). Pentru oră/alarmă trebuie să te folosești de timer-urile plăcuței, iar pentru sunatul alarmei de buzzer. Introducerea alarmei de la tastatura placuței. Va trebui sa găsești o modalitate de a seta ora inițială, după ce încarci programul pe plăcuță
I.2 - Sandu Marius-Gabriel, Diaconu-Tarantus Sorin - Calculator de buzunar
-> Trebuie să realizezi operații de adunare, scădere, impărțire, înmulțire folsind tastatura de pe plăcuță și display-ul LCD pentru afișarea rezultatului. Modul de introducere a operației este asemănătoare programului Calculator din Windows. Cum sunteți 2 o să trebuiască să adăugați posibilitatea de a introduce și rezolva o expresie de la tastatură, de exemplu (2*5 + 4)/2 . Pentru aceasta trebuie să aveți posibilitatea de a adăuga paranteze de la tastatură și încă o tastă de = pentru rezolvarea expresiei. Dacă nu s-a introdus o expresie corectă trebuie să dați un mesaj de eroare. Pentru rezolvarea unei expresii generice va trebui să rezolvați forma postfixată a acesteia (căutați pe google postfix expressions)
III.2 Marcu Violeta - Sistem de alarmă cu trei zone
-> Trebuie sa realizezio plăcuță cu un uC (treb să-mi dai mail cu ce o să folosești) la care sunt legați 3 senzori (de preferat infraroșii sau ce se mai practică pentru alarme de apartament). Plăcuța va avea pe ea un buzzer sau orice dispozitiv audio. Va trebui să poți programa dispozitivul de pe serială cu o anumită configurație(de exemplu 2 senzori on, 1 off). Buzzer-ul se va activa doar dacă există semnal la un senzor activ. Ai putea să faci și un timer(tot configurabil) ca alarma să nu se declanșeze decât după un anumit timp de la activarea senzorului (ca să se poate introduce un cod de exemplu). - va face proiect cu alta grupa .. deci se mai poate alege acesta
III.4 Munteanu Aurelian-Ionut - Convertor Serial-Paralel folosind PIC
-> Trebuie sa realizezi efectiv placa hardware pe care sa o testam cu un cablu paralel si serial. Porturile mama/tata te gandesti tu cum ar fi mai usor. Trebuie sa-mi trimiti si ce PIC o sa folosesti si modalitatea de alimentare a acestuia. De asemenea lucrarea trebuie sa contina si o documentatie asupra impactului unui anumit protocol de transmisie pe seriala precum si caracteristicile conexiunilor suportate (baudrate/stop bits etc...) de o parte si de alta. Ar fi frumos sa ai o modalitate de a seta carateristicile conversiei..(adica carateristicile conexiunii seriale de input si ale celei paralele de output - cum ar fi baudrate-ul).
IV - Agrigoroaiei Pavel Dan, Avadanii Alexandru - Pistol de lipit cu control al temperaturii
-> După cum am discutat veți folosi pentru implementarea hardware un microcontroller ATmega168, un circuit de liniarizare a caracteristicii termocuplului, un LCD și din punct de vedere software un algoritm PID de reglare a temperaturii(algoritm cu reacție inversă corectoare bănuiesc...), interfata SPI intre uC și circuitul de liniarizare, interfațarea cu LCD-ul și detectia de zero-crossing pentru curent alternativ. Ce mi-ar place, dar nu știu în ce măsură este posibil, ar fi să puteți regla dinamic o temperatură(eventual inițială) de lipire sau, și mai frumos, să setați un algoritm de lipire. De exemplu să înceapă de la o temperatură inițială mică, să o crească succesiv, după care să o scadă treptat.
IV - Cosmin Gabriel - Minicomputer cu PIC
-> Trebuie implementat hardware un fel de calculator HC, conectat la un display extern (monitor/LCD). Dispozitivul va avea atașat un modul RAM, o intrare PS/2 pentru conectarea unei tastaturi si eventual o ieșire VGA dacă foloseți monitor ca display. Ce ar mai trebui realizat ca să vedem că merge (dacă nu gasești un minios portat pentru PIC/Atmel-ul tău) este un program/joc pentru testarea tastaturii/display-ului. Să-mi spui ce microcontroller folosești.
IV - Petrea Adrian George, Iordache Florin - Achizitie de date pe o placuta cu microcontroller
-> Sistem de masurare folosind un senzor de preziune un uC PIC + controller USB. Placuța + aplicație Visual Basic (.Net) pe PC pentru prozentarea datelor colectate. Eventual un LCD pe placuță. Să vă gândiți la autonomia plăcuței + sistem de criptare pentru memorarea datelor în RAM-ul controller-ului până la conectarea la un PC.
I) Proiecte placuta 386EX EV/Z3, cea cu care vom lucra în laborator
1. Ceas digital (oră, dată, cronometru, alarmă, sincronizare cu PC-ul) – 1-2 studenți
2. Calculator de buzunar (gen calc din Windows) – 1-2 studenți
3. Implementare unui joc interactiv (X/0, dame, sah) – 2-3 studenți
4. Implementarea unei instrument muzical cu tastatura placii EV/Z3, display-ul acesteia, sunetul redat pe calculatorul desktop, transmis prin seriala - 2-3 studenți
5. Simularea controlarii motoarelor unui robot folosind convertorul A/D, tastatura si display - 1-2 studenți
II) Proiecte grele de research
6. Portare placuta EV/Z3 pe Qemu (arhitectura 386, controller 8254 (prob existent), timere,
device-uri - seriala, paralel, display, keyboard, convertor A/D) - 5-6 studenți
III) Proiecte PIC/Atmel - se va implementa și folosi un simulator (Proteus) și/sau placuța efectivă
7. Simulare centrală termică folosind un diferențial între 2 senzori de temperatura - 1-2 studenți
8. Sistem de alarma cu 3 zone programabile - 1-2 studenți
9. Creeare unui micro web server html cu comunicația prin seriala - 2-3 studenți
10. Convertor Serial-Paralel folosind Pic - 1-2 studenți
IV) Proiecte propuse de voi (PIC/Atmel - implementare device hardware + software) - maxim 3 studenți
i) La o grupă se poate alege un singur tip de proiect. Proiectele propuse de mine se vor da în ordinea în care vă inscrieți la ele.
ii) La proiectele din categoria I va trebui să lucrați pentru portarea lor în cadrul laboratorului de SMP. Practic logica o implementați pe calculatorul vostru de acasă (IA32), portarea pe device-urile I/O de pe placuță o să trebuiască să o efectuați la laborator.
iii) Pentru proiectele propuse de voi trebuie să-mi dați mail până la începutul lui Aprilie
iv) Ca să va înscrieți la orice proiect trebuie să-mi dați mail (matmih2002@yahoo.com)
Situația proiecte pe grupe:
-> 331AC
I.1 - Negoita Daniel - Ceas digital
-> Trebuie să afișezi pe LCD-ul plăcuței ora/minutul/secunda curentă. Trebuie să ai posibilitatea să intruci o alarmă de la tastatură (oră la care să sune ceva). Pentru oră/alarmă trebuie să te folosești de timer-urile plăcuței, iar pentru sunatul alarmei de buzzer. Introducerea alarmei de la tastatura placuței. Va trebui sa găsești o modalitate de a seta ora inițială, după ce încarci programul pe plăcuță.
I.2 - Andrei Alexandru - Calculator de buzunar
-> Trebuie să realizezi operații de adunare, scădere, impărțire, înmulțire folsind tastatura de pe plăcuță și display-ul LCD pentru afișarea rezultatului. Modul de introducere a operației este asemănătoare programului Calculator din Windows
I.3 - Saioc Ionut,Nae Andrei,Burghiu Adrian - Implementare unui joc interactiv de X și 0
-> Modalitatea de funcționare a jocului este: utilizatorul își alege la început cu ajutorul tastaturii ce vrea să fie (X sau 0). De asemenea își va alege și dimensiune tablei de joc (să spunem între 3-6 căsuțe pe coloană). Introducerea unui pas din joc (X sau 0) se va efectua cu ajutorul tastaturii folosind coordonatele de pe tablă (ex 2:3 - rândul 2, coloana 3). Pe LCD-ul plăcuței va trebui să afișa-ți un status al jocului, să folosiți buzzer-ul pentru comenzi greșite/câștig/pierdut. De asemenea trebuie să aveți o funcție pentru a afișa pe LCD boardul de joc linie cu linie (LCD-ul conține o singură linie, practic afișați board-ul cu X/0 tot linie cu linie,folosind tastele de -> <- pentru a trece la alte linii. Ce este important este că va trebui să implementați un algoritm care să mă bată la un board de 6:6 - ceva euristic nu va funcționa, dați un search despre arbori min-max și stări de joc.
I.3 - Costin Chirvasuta - Implementare unui joc de șah
-> Cum este vorba de alt joc o să permit duplicarea acestui proiect. Modalitatea de selectare a mutării este cea descrisă în jocul de X și 0. Pentru a efectua o mutare uită-te la http://www.cforcoding.com/2009/12/programming-puzzles-chess-positions-and.html. De la tastatura plăcii o introduci aceste mutării. Ce mai trebuie sa implementezi o modalitate de a afisa toată tabla rând cu rând (diplay-ul LCD al placii are doar 1 row), și să testezi dacă o mutare este legală. Practic cei doi jucători vor fi doi utilizatori ai jocului. Dacă vrei poti să testezi și situația de MAT și să dai un semnal cu buzzer-ul plăcii
I.3 - Eftimie Daniel, Hristescu Cristian, Satalan Alexandru - Implementare unui joc de dame
-> Modalitatea de selectare a mutării este cea descrisă în jocul de X și 0. Pentru a efectua o mutare uită-te la http://www.cforcoding.com/2009/12/programming-puzzles-chess-positions-and.html. Cel mai bine ar fi să găsiți o modalitate clasică de descriere a unei mutări pentru jocul de dame. De la tastatura plăcii o introduci aceste mutării. Ce mai trebuie sa implementezi o modalitate de a afisa toată tabla rând cu rând (diplay-ul LCD al placii are doar 1 row), și să testezi dacă o mutare este legală. Practic cei doi jucători vor fi doi utilizatori ai jocului. Trebuie sa detectați daca s-a ajuns la un rezultat (cineva a câștigat_ și să dai un semnal cu buzzer-ul plăcii. De asemenea trebuie să realizați și un algoritm inteligent pentru a juca cu calculatorul - să aibă mutări coerente and stuff. Pentru ușurință trebuie să afișați ultima mutare în pentru jocul cu un oponent calculator. Ca să testăm vom pune 2 calculatoare să joace unul cu celălalt. Modalitatea de selectare a jucătorilor se va face la început.
I.4 - Chiriac Adrian - Instrument muzical
-> Proiectul își propune generarea de tonuri muzicale cu tastatura placuței, afișarea acestora pe LCD, redarea acestora cu buzzerul. Se vor implementa 3 instrumente muzicale alese la început, o modalitate de a seta notele cântate de acestea prin tastatura plăcii. Se va descriere în README algoritmul taste-note ales.
Se va putea alege și redarea unei melodii aflate static în program.
I.5 - Sergiu Ionescu - Simularea controlarii motoarelor unui robot folosind convertorul A/D, tastatura si display
-> Ce trebuie să realizezi este softul in C cu OpenWatcom pentru controlarea motorului/motoarelor + să vii și cu un motor funcțional care să-l conectăm la plăcuța din laborator. Pe display va trebui să afișezi turația motorului în timp real + distanța totală parcursă + viteza de deplasare. Din taste trebuie să fii capabil să schimbi turația. Trebuie să vezi și dacă reușești să-l faci să inversezi direcția motorului.
IV - Martinas Radu, Lucescu Ionut, Preda Nicusor - Masinuta cu atmega16
-> Trebuie să-mi aduci și un astfel de motor(de preferat un mic robot) pe care să-l conectezi la plăcuță. Trebuie să ai posibilitatea să schimbi turația de la o tastatură/controller extern (gen telecomandă radio/inflaroșu) și să afișezi anumiți parametrii pe un display LCD(turație, distanța totală parcursă de motor). Dacă folosiți o mașină ar fi frumos să poți să modifici direcția/sensul din tastatură. De asemenea ar trebui sa anuntati utilizatorul cand s-a lovit de un obstacol, buzzer+lcd, ca acesta sa poate modifica sensul (înainte/înapoi/stânga/dreapta). Cum sunteți 3 trebuie să puteți să introduceți de la tastatura plăcuței și un circuit pe care mașina îl va urma - de exemplu 30N-20NNE-10S - se va deplasa când îi dați Run 30cm la Nord, 20 cm la NordNordEst și așa mai departe
IV - Anchevici Silviu, Andrei Babalic 331AC - Line following robot
-> Trebuie să-mi dați mail cu ce microprocesor o să folosiți. Cum am discutat veți folosi ATmega 16PU 0812K si 6 senzori infrarosii pentru a putea determina cu exactitate traseul. Pe lângă robot/circuit/software mi-ar place să vă gandiți la un algoritm pentru a determina dacă robotul nu a intrat într-un ciclu de circuit. Gândiți-vă la cum poate robotul să iasă dintr-un cerc, intrat dintr-o bifurcație.
III.4 Baleanu Iosif - Convertor Serial-Paralel folosind PIC
-> Trebuie sa realizezi efectiv placa hardware pe care sa o testam cu un cablu paralel si serial. Porturile mama/tata te gandesti tu cum ar fi mai usor. Trebuie sa-mi trimiti si ce PIC o sa folosesti si modalitatea de alimentare a acestuia. De asemenea lucrarea trebuie sa contina si o documentatie asupra impactului unui anumit protocol de transmisie pe seriala precum si caracteristicile conexiunilor suportate (baudrate/stop bits etc...) de o parte si de alta. Ar fi frumos sa ai o modalitate de a seta carateristicile conversiei..(adica carateristicile conexiunii seriale de input si ale celei paralele de output - cum ar fi baudrate-ul).
-> 332 AA
I.3 - Caiter Vlad-Ionut, Panait Flaviu Iulian - Implementare unui joc interactiv de X și 0
-> Modalitatea de funcționare a jocului este: utilizatorul își alege la început cu ajutorul tastaturii ce vrea să fie (X sau 0). De asemenea își va alege și dimensiune tablei de joc (cum sunteți 2 ne vom limita la 3x3). Introducerea unui pas din joc (X sau 0) se va efectua cu ajutorul tastaturii folosind coordonatele de pe tablă (ex 2:3 - rândul 2, coloana 3). Pe LCD-ul plăcuței va trebui să afișa-ți un status al jocului, să folosiți buzzer-ul pentru comenzi greșite/câștig/pierdut. De asemenea trebuie să aveți o funcție pentru a afișa pe LCD boardul de joc linie cu linie (LCD-ul conține o singură linie, practic afișați board-ul cu X/0 tot linie cu linie,folosind tastele de -> <- pentru a trece la alte linii. Ce este important este că va trebui să implementați un algoritm care să mă bată la joc.
III.1 - Manciu Alexandru, Matei Georgian - Simulare centrală termică folosind un diferențial între 2 senzori de temperatură
-> Trebuie să-mi aduceți plăcuța hardware ce va conține un microcontroller, un LCD, 2 senzori de temperatură pentru a testa și o modalitate de a seta plăcuța (minitastatură, conectare soft prin serială, telecomandă inflaroșu). Pe LCD se va simula (arăta) diferența de temperatură între cei doi senzori și cum trebuie crescut focul deschis pentru a mentine încălzirea. Pentru ecuația matematică ce trebuie implementată vă puteți uita pe net pentru diferețele dintre tur și retur (temperatura apei ce pleacă de la centrală și a celei care vine după ce a trecut prin calorifere). Astfel de la panoul de comandă se va seta o temperatură constantă pe care centrala trebuie să o mențină în camere (nu e temperatura de la tur - trebuie să vă uitați pe net despre cum se face). Trebuie să-mi trimiteți ce componente o să folosiți (mai ales uC)
IV - Irina Nicolae, Radulescu Andrei Ciprian - Controlul turatiei unui motor de curent continuu
-> Trebuie să-mi prezentați placuța care o să conțină un motor de curent continuu, un encoder, un ATMega32, o punte H, un regulator de tensiune. Ce trebuie să implementați, în afară de mașina propiu-zisă este modalitatea de control a acesteia - stânga/dreapta/înainte/înapoi cu ajutorul unui dispozitiv extern - de exemplu telecomandă infraroșu (mail telecomandă unde radio - e Ok) + mecanism de modificare dinamica a turației/vitezei.
IV - Iacob Mihai Vlad, Chiorpec Vlad, Balaceanu Bogdan - Roboțel de camera
-> Trebuie să-mi prezentați "roboțel"-ul hardware care merge prin camera până la întâlnirea unui obstacol. La întâlnirea obstacolului robotul va scana în stanga și în dreapta cu ajutorul unui servomecanism pentru a gasi o cale libera. Daca gâsește spațiu pentru a merge se întoarce în stanga respectiv în dreapta, daca nu se întoarce 180 de grade. De asemenea trebuie sa faceti si un dispozitiv de comanda (gen telecomanda inflaroșu) pentru controlul acestuia - stanga/dreapta/inainte/inapoi, și să aveți un led care detectează dacă robotul s-a blocat (numai poate înainta în nici o direcție). Hardware-ul de implementare al proiectului va conține un atmega16 legat la o punte H pentru controlul motoarelor, un servomecanism, un senzor shar pentru detecarea obstacolelor, un led pentru detecție de blocare și dispozitul de telecomandă.
-> 332 AC
I.1 - Stefan Alexandru - Ceas digital
-> Trebuie să afișezi pe LCD-ul plăcuței ora/minutul/secunda curentă. Trebuie să ai posibilitatea să intruci o alarmă de la tastatură (oră la care să sune ceva). Pentru oră/alarmă trebuie să te folosești de timer-urile plăcuței, iar pentru sunatul alarmei de buzzer. Introducerea alarmei de la tastatura placuței. Va trebui sa găsești o modalitate de a seta ora inițială, după ce încarci programul pe plăcuță
I.2 - Sandu Marius-Gabriel, Diaconu-Tarantus Sorin - Calculator de buzunar
-> Trebuie să realizezi operații de adunare, scădere, impărțire, înmulțire folsind tastatura de pe plăcuță și display-ul LCD pentru afișarea rezultatului. Modul de introducere a operației este asemănătoare programului Calculator din Windows. Cum sunteți 2 o să trebuiască să adăugați posibilitatea de a introduce și rezolva o expresie de la tastatură, de exemplu (2*5 + 4)/2 . Pentru aceasta trebuie să aveți posibilitatea de a adăuga paranteze de la tastatură și încă o tastă de = pentru rezolvarea expresiei. Dacă nu s-a introdus o expresie corectă trebuie să dați un mesaj de eroare. Pentru rezolvarea unei expresii generice va trebui să rezolvați forma postfixată a acesteia (căutați pe google postfix expressions)
III.2 Marcu Violeta - Sistem de alarmă cu trei zone
-> Trebuie sa realizezio plăcuță cu un uC (treb să-mi dai mail cu ce o să folosești) la care sunt legați 3 senzori (de preferat infraroșii sau ce se mai practică pentru alarme de apartament). Plăcuța va avea pe ea un buzzer sau orice dispozitiv audio. Va trebui să poți programa dispozitivul de pe serială cu o anumită configurație(de exemplu 2 senzori on, 1 off). Buzzer-ul se va activa doar dacă există semnal la un senzor activ. Ai putea să faci și un timer(tot configurabil) ca alarma să nu se declanșeze decât după un anumit timp de la activarea senzorului (ca să se poate introduce un cod de exemplu). - va face proiect cu alta grupa .. deci se mai poate alege acesta
III.4 Munteanu Aurelian-Ionut - Convertor Serial-Paralel folosind PIC
-> Trebuie sa realizezi efectiv placa hardware pe care sa o testam cu un cablu paralel si serial. Porturile mama/tata te gandesti tu cum ar fi mai usor. Trebuie sa-mi trimiti si ce PIC o sa folosesti si modalitatea de alimentare a acestuia. De asemenea lucrarea trebuie sa contina si o documentatie asupra impactului unui anumit protocol de transmisie pe seriala precum si caracteristicile conexiunilor suportate (baudrate/stop bits etc...) de o parte si de alta. Ar fi frumos sa ai o modalitate de a seta carateristicile conversiei..(adica carateristicile conexiunii seriale de input si ale celei paralele de output - cum ar fi baudrate-ul).
IV - Agrigoroaiei Pavel Dan, Avadanii Alexandru - Pistol de lipit cu control al temperaturii
-> După cum am discutat veți folosi pentru implementarea hardware un microcontroller ATmega168, un circuit de liniarizare a caracteristicii termocuplului, un LCD și din punct de vedere software un algoritm PID de reglare a temperaturii(algoritm cu reacție inversă corectoare bănuiesc...), interfata SPI intre uC și circuitul de liniarizare, interfațarea cu LCD-ul și detectia de zero-crossing pentru curent alternativ. Ce mi-ar place, dar nu știu în ce măsură este posibil, ar fi să puteți regla dinamic o temperatură(eventual inițială) de lipire sau, și mai frumos, să setați un algoritm de lipire. De exemplu să înceapă de la o temperatură inițială mică, să o crească succesiv, după care să o scadă treptat.
IV - Cosmin Gabriel - Minicomputer cu PIC
-> Trebuie implementat hardware un fel de calculator HC, conectat la un display extern (monitor/LCD). Dispozitivul va avea atașat un modul RAM, o intrare PS/2 pentru conectarea unei tastaturi si eventual o ieșire VGA dacă foloseți monitor ca display. Ce ar mai trebui realizat ca să vedem că merge (dacă nu gasești un minios portat pentru PIC/Atmel-ul tău) este un program/joc pentru testarea tastaturii/display-ului. Să-mi spui ce microcontroller folosești.
IV - Petrea Adrian George, Iordache Florin - Achizitie de date pe o placuta cu microcontroller
-> Sistem de masurare folosind un senzor de preziune un uC PIC + controller USB. Placuța + aplicație Visual Basic (.Net) pe PC pentru prozentarea datelor colectate. Eventual un LCD pe placuță. Să vă gândiți la autonomia plăcuței + sistem de criptare pentru memorarea datelor în RAM-ul controller-ului până la conectarea la un PC.
Last modified: Tuesday, 18 March 2025, 11:42 AM