This is an old revision of the document!
Proiectul propus presupune simularea unei masini de scris al carei element central este un cap de scriere ce executa anumite miscari pentru a desena caractere pe o banda de hartie. Utilizatorul interactioneaza cu masina prin intermediul unor butoane, introducand un caracter intr-o anumita codificare. Capul de scriere coboara pana la nivelul de contact cu banda de scriere, realizeaza miscarile necesare caracterului selectat, iar apoi realizeaza o miscare la dreapta iar procesul se continua. Scopul proiectului este ca miscarile realizate de capul de scriere sa fie suficient de precise astfel incat caracterele scrise pe banda de hartie sa fie inteligibile, iar utilizatorul sa poata folosi cu usurinta butoanele pentru a introduce un text.
Proiectul a pornit de la o idee mai complexa, anume o masina Turing ce ar putea efectua si operatii de citire pe banda, astfel fiind posibila executia unui program, insa fiind dat timpul relativ scurt realizarii acestui proiect a fost redus la o varianta simplificata.
In principiu, proiectul este un proof-of-concept, intrucat tehnologia moderna permite metode mult mai eficiente de a transpune pe hartie anumite informatii. Totusi, proiectul poate fi folosit pentru a traduce in “cleartext” anumite codificari intr-un mod mai aproapiat de modul in care au fost concepute (de exemplu, codul Morse ar putea fi reprezentat de apasari lungi si scurte de buton, fata de reprezentarea abstracta prin linii si puncte)
Exemplu de schemă bloc: http://www.robs-projects.com/mp3proj/newplayer.html
Piesele folosite în cadrul proiectului sunt:
Schemă electrică:
Pentru a putea monta piesele de bază am printat 3D mai multe piese “suport”. Banda de hartie se va misca in jurul unui suport ce are la un capat montat motorul stepper si o roata dintata, si o alta roata dintata la celalalt capat, intre cele doua fiind trasa o curea inchisa. Astfel, prin actionarea servomotorului se va misca cureaua si deci si banda de hartie de deasupra ei.
La baza suportului se va plasa un servomotor. De aceasta va fi legat un suport ce va contine un alt servomotor, de acesta fiind legat suportul de pix. Prin actionarea primului servomotor, se va putea muta pixul pana fie in pozitie ridicata (aproximativ 50 de grade), respectiv la nivelul foii (aproximativ 80 de grade). Prin actionarea celui de-al doilea servomotor se va putea controla pozitia verticala a pixului pe foaie. Asftel, prin actionarea celor 3 motoare vom putea cu usurinta ridica/cobori pixul pe foaie si muta stanga/dreapta.
Pentru dezvoltare am folosit Arduino IDE:
Biblioteci utilizate
Vom avea doua butoane, unul roșu și unul negru. Prin apăsarea scurtă a butonului negru (trecerea de pe HIGH pe LOW a pinului asociat butonului) vom adăuga în codul curent un punct, iar la apăsarea lungă vom adăuga o linie. Codul curent va fi afișat și pe LCD. La apăsarea scurtă a butonului roșu se va șterge ultimul caracter din codul curent iar la apăsarea lungă a acestui se va confirma codul și se va scrie pe foaie (se vor executa secvențele corespunzătoare ale celor 3 motoare pentru a scrie liniile și puncte), se va acționa stepperul pentru a muta foaia mai la dreapta iar apoi se va curăța LCD-ul.
Versiunea 1 (puncte si linii): https://youtu.be/CugPcJ30PQg
Versiunea 2 (litere):
Fişierele se încarcă pe wiki folosind facilitatea Add Images or other files. Namespace-ul în care se încarcă fişierele este de tipul :pm:prj20??:c? sau :pm:prj20??:c?:nume_student (dacă este cazul). Exemplu: Dumitru Alin, 331CC → :pm:prj2009:cc:dumitru_alin.