This shows you the differences between two versions of the page.
|
pm:prj2022:agmocanu:pianotiles [2022/05/12 08:29] maria.sibiceanu |
pm:prj2022:agmocanu:pianotiles [2022/05/27 20:59] (current) maria.sibiceanu |
||
|---|---|---|---|
| Line 7: | Line 7: | ||
| The colour of the tile is sensed as black or white using LDR, and touch is simulated at appropriate locations on the screen using a logic programmed into the Arduino. | The colour of the tile is sensed as black or white using LDR, and touch is simulated at appropriate locations on the screen using a logic programmed into the Arduino. | ||
| | | ||
| - | {{:pm:prj2022:agmocanu:piano_tiles_circuit.png?600|}} | + | |
| - | + | {{:pm:prj2022:agmocanu:pianotiles.png?400|}} | |
| ===== Hardware Design ===== | ===== Hardware Design ===== | ||
| Line 16: | Line 16: | ||
| - Arduino, Breadboard, 22k Resistor, LDR, Relay, Connecting wires, a conducting metal coin | - Arduino, Breadboard, 22k Resistor, LDR, Relay, Connecting wires, a conducting metal coin | ||
| - Computer to program Arduino | - Computer to program Arduino | ||
| + | |||
| + | {{:pm:prj2022:agmocanu:piano_tiles_circuit.png?600|}} | ||
| + | |||
| + | {{:pm:prj2022:agmocanu:piano.jpeg?600|}} | ||
| + | |||
| ===== Software Design ===== | ===== Software Design ===== | ||
| + | Arduino reads the voltage drop across the LDR. Observe the voltage for black and white tiles, and choose a suitable threshold voltage to say Vt ( in this case it's 700). If the voltage is less than the threshold voltage, then there is a larger drop across LDR, the larger the resistance, which implies a Black tile and vice versa. I have simulated the touch accordingly. The values of the delays can be tweaked to get the best result. | ||
| + | |||
| + | * Arduino(Embedded) C code for the project | ||
| + | * Pin 4, 5, 6, 7 -> Relay output | ||
| + | * Pin A2, A3, A4, A5 -> Analog input value from the LDRs. | ||
| + | * Analog value less than 700 implies it Black tile. | ||
| + | * NOTE: It is to be calibrated based on ambient intensity and screen brightness. | ||
| + | * Used void loop() and void setup(). | ||
| ===== Obtained results===== | ===== Obtained results===== | ||
| + | {{:pm:prj2022:agmocanu:piano_tiles_1.jpeg?600|}} | ||
| + | |||
| + | {{:pm:prj2022:agmocanu:piano_tiles_2.jpeg?600|}} | ||
| + | |||
| + | {{:pm:prj2022:agmocanu:piano_tiles_3.jpeg?600|}} | ||
| ===== Conclusion ===== | ===== Conclusion ===== | ||
| + | |||
| + | I have managed to complete all the requirements for a good project. There are still small problems regarding the LDR because of the phone's screen and the Relay's ability to conduct. I have learned how to use Arduino software to connect LDRs wires and coins accordingly so that the current will go through the coins correctly. | ||
| ===== Download ===== | ===== Download ===== | ||
| + | |||
| + | |||
| + | Arduino Code: https://github.com/ShibaInu66/PianoTiles-Game | ||
| ===== Journal ===== | ===== Journal ===== | ||
| + | |||
| + | * 5.05.2022: Decided on the project + started the documentation | ||
| + | * 12.05.2022: Gathering all the components | ||
| + | * 15.05.2022: Assembling everything | ||
| + | * 20.05.2022: Completing the Arduino Code | ||
| + | * 24.05.2022: Concluding the documentation | ||
| ===== Bibliography ===== | ===== Bibliography ===== | ||
| + | |||
| + | [[https://ocw.cs.pub.ro/courses/pm/lab/lab1-2022|USART]] | ||
| + | |||
| + | [[https://www.instructables.com/Arduino-and-a-LDR-Light-Dependent-Resistor/|LDR Arduino]] | ||
| + | |||
| + | [[https://arduinogetstarted.com/tutorials/arduino-relay|Relay Arduino]] | ||
| + | -------------------------------- | ||
| <html><a class="media mediafile mf_pdf" href="?do=export_pdf">Export to PDF</a></html> | <html><a class="media mediafile mf_pdf" href="?do=export_pdf">Export to PDF</a></html> | ||