January 1, 2022
Description
Let's just call this thing, "the device", OK?
This device controls up and down movement of tennis balls hung in a garage for parking cars in just the right spot. This allows the balls to be retracted out of the way when there is no car present in the garage/parking spot. It also keeps the little ones from practicing their tennis / baseball skills on it while there is no car. I decided to do this after having walked into said tennis ball while car was not present.
I DO PLAN TO PROVIDE AN EXPLODED VIEW SOON.
POWER - While the device will run off of a 9V battery, it is recommended that an AC power adapter be used to ensure a consistent power supply. A standard breadboard power supply is used to provide clean power to the device.
ARDUINO SKETCH - https://github.com/somerandomguy03/GarageParkingBallHoist
STAND OFFS - Nylon M2x10mm and associated nut/screw hardware.
SCREWS - Assorted variety of metal M2 and M3
MOUNT FOR BUTTONS - 2x8cm double-sided PCB
MOUNT FOR ARDUINO, L239D, POWER SUPPLY - 5x7cm double-sided PCB
BUTTONS - 6x6x5 mm push buttons (came with my arduino kit)
L239D (used what came with my Arduino kit)
MULTIPLEXER - Adafruit TCA9548A I2C
DISPLAYS - SSD1306 128 x 32 OLED (I used white display color)
LED - https://www.amazon.com/gp/product/B01NAHYUBD/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&th=1. (Careful, mine came wired backwards)
MOTORS - 3V-6V TT Motor
LIMIT SWITCH - KW12-3 Roller Lever Arm Micro Limit Switch, Normally Open and Close Dimension: 20 x 10.5 x 6.5mm (L x W x H)
LINE - As you can see in the pictures, I used both a standard kite string and a monofilament fishing line (60LB/27.2kg, Dia:0.030in/0.76mm, Length: 235yd/214m, Color: Clear). They both work. Personally, I prefer using the monofilament fishing line because it does not unravel like the kite string and get caught on burrs left behind from printing the motor spools. The monofilament was a pain in the butt for clamping on the limit switch plunger, so I just ended up using hot glue, which as worked quite well.
THE BLUE MASKING TAPE YOU SEE IN THE PICTURES - This is simply to cover up the LEDs on the Arduino and power supply because I didn't like how it glowed through the face plate. This is totally optional and you could use whatever you want to block that light.
GORILLA GLUE - This is used to glue the display buttons and set button together.
PULLEYS (IDLERS) - 3mm Bore 6mm Width Timing Pulley Wheel Aluminum.. you need two.
Portions of this code, particularly for the SSD1306 displays and TCA9548A multiplexer were derived from the DroneBot Workshop: https://dronebotworkshop.com/multiple-i2c-bus/
Side note:
Could this have been done with stepper motors? (i.e., not timed) Yes! Howevever, we're
talking about parking a car in a garage, we don't need pinpoint accuracy (at least you shouldn't)! If you are really picky, you could get hooks with a longer threaded shaft that you can use to fine tune the ball's position when down. The professional developers are already rolling their eyes and sighing and we haven't even gotten to the actual code yet. To be fair, I thought about stepper motors after I had already made a bit of progress on this project. And while I'm aware of the sunken cost fallacy and blah blah blah, I am human and decided,I can do some mental gymnastics to justify my lesser design solution. So there!
Most of all, I hope you have fun with this project! I wouldn't publish it if it didn't work! Also,
as stated earlier, updates are planned.
License:
Creative Commons - Attribution - Non-Commercial - Share Alike