Hello everyone!
This is my first Arduino project in 2020 and it is going to be a fun and simple project. You would have heard of the Buzz Wire, a steady hand game, and today you will be learning to make one using Arduino.
Hardware components used in this project
- Arduino Nano
- USB Type A to mini B cable (for Arduino Nano)
- Solderless Breadboard - Mini and Full-size
- LEDs (x2) - Green and Red
- Resistors (x2) - 220 Ω
- Active Buzzer module (KY-012)
- LCD display module with I2C interface - 16x2
- Male-to-Male Jumper wires (x4) - 10cm
- Female-to-Male Jumper wires (x5) - 20 cm
- Jumpers (x5) - to reduce the usage of wires
- Copper wire
- Tape (or any form of insulation)
Setup
Your hardware setup must look somewhat similar to the ones in the images above. The beginning and end of the copper wire maze must be taped to prevent conductivity between the wire loop and maze.
Connections
LCD display module with I2C interface
- GND - Ground
- VCC - 5V
- SDA - A4
- SCL - A5
Active buzzer module (KY-012)
- S - D6
- (+) - 5V
- (-) - Ground (GND)
LEDs
- Anode (Green) - D4
- Anode (Red) - D5
- Cathode - Ground
Wire Maze - D3
Wire loop - Ground
Coding
You will be needing the 'Wire', in-built library, and 'Arduino LiquidCrystal I2C library' for this project. You can download the .ZIP version of this library from GitHub by following the hyperlink. To add this .ZIP folder to your Arduino IDE, go to sketch----> include library---->Add .ZIP library. Set the LCD address to 0x27 for a 16 chars and 2 line display. You can use the I2C scanner to get the address of your LCD display module.
Create a global variable named 'count'. Within void setup( ) function, use pinMode( ) function to declare the pins of the LEDs and active buzzer as OUTPUT and the wire maze as INPUT. Use lcd.print( ) function to make your LCD display the message, 'Welcome'. Set a delay period of 2 seconds.
If the loop touches the wire maze, there is a connection between them and it sends a HIGH signal to the Arduino microcontroller. The count will increase, the red LED will light up and the buzzer will give out an alarm sound when the HIGH signal is received. The green LED will light up when the LOW signal is received.
Use lcd.clear( ) to clear your LCD display and print "Hit count: " in the first row. The number of counts must be displayed in the second row. If the number of counts reaches 5, the red LED and buzzer should be set HIGH and the LCD must display 'You lost!".
Please watch the YouTube video in the last section of this page to learn how this project works.
If anyone has any questions with the coding, please feel free to comment below or send me an email at arduinoprojectsbyr@gmail.com.
Final Look
If anyone has any questions, or suggestions, about this project, don't hesitate to comment below or send me an email at arduinoprojectsbyr@gmail.com.
Comments
Post a Comment