The cover for our project displays a functional and aesthetic pinball machine.
The requirements set standards for the project and what must be achieved.
The final requirements describe the criteria for the finished prototype.
The final page gives a short summary of the project.
Using a wiring diagram we got the LCD display to print a title after some wire splicing.
All pinball machines utilize these mechanisms:
Bumpers
Flippers
Ball guides
Ball Slides
Scoreboards
Start button to release balls
Ball Guides with Launcher
Launcher
On/Off switch
Coin slots (will not be implemented)
Flashing lights
Sound Effects
Specific Themes
Graphics
Scoring Information Guide
Unique ways to get more points
Bumpers are stationary obstacles that the ball will bounce off of, sometimes they use launchers.
The flippers are the main way a person interacts with the game and are used to launch the ball farther up the machine.
Ball guides are stationary decorations used to guide the ball in certain directions.
The scoreboard is used for displaying remaining balls and your score as well as multipliers and cutscenes.
The start button initiates the game and allows for balls to be deposited into the manual launching chamber.
The manual launcher is a spring loaded cylinder often made out of rubber that first launches the ball. Players use it by pulling back on the handle.
Ball slides occupy the sides above the main obstacles, they help add depth and seeming complexity to the game. Made out of wire, players can get balls onto these slides by getting the ball into a hole where it is transported to the higher level
Flashing lights provide an essential part of pinball aesthetics. They may also flash in tandem with ball contact during the game.
Graphics are another essential part of looks when it comes to pinball games. They are most commonly found on the backboard where the ball rolls but many machines also use suspended graphics such as this archer, printed on a piece of acrylic.
The spinner it rigged to press a switch with every rotation, in other words, the harder you hit it the more points you get.
The guide launcher system uses 2 separated contacts. When hit with enough force, the contacts will touch and complete a circuit triggering the launcher system in the middle to push out the band. The band is used so that contact and ejection force is evenly distributed
The guide sensors are very light switches that are pressed down when run over by a ball.
The tile system is a very unique multiplier system which I hope to implement. When all the tiles are knocked down, a multiplier is added to the next spinner score.
The way this works is that each tile is connected to a dormant spring when retracted. A solenoid pushes the tiles into the ready position (see left) and a hook latches onto a ledge. When hit, the tile moves backwards off the ledge and the spring pulls it into the floor.
This is a much simpler multiplier that affects all any preceding score. A screen displays a different multiplier for each contact below (this one has 3 squares below the screen). Although it is simple it is very visually appealing and eye catching.
I programmed our small size scoreboard to implement a loading screen before going to the main screen which displays remaining lives and the current score. The scoreboard is programmed to reset the score after every "death" but that can be easily removed and was only used for this demonstration. Furthermore, after using up all lives, the screen displays a flashing Game Over screen.
Using OnShape and the Glowforge I created a cutout for the LCD screen to fit and screw into. The width is good but the length will be adjusted in the future to have the screen's edges sit flush with the mounts.
My partner and I 3d printed two parts of a solenoid that fit together, afterwards we glued it to make sure it did not fall apart. To finish the solenoid we wrapped the inside with magnetic wire one thousand times. This will create a magnetic field inside the hollow tube which has repel or attract a metal rod. This will be useful when it comes to creating flippers as the rods can push them with much more forward force than an appropriately sized motor or servo.
We mounted our LCD scoreboard by attaching it to a piece of wood that was subsequently screwed onto the prototype with larger wood screws.
To mount our light switch we did the same thing as the LCD screen, however, the more barren parts of this element were covered by a typical light switch plate.
The barebones of our project were assembled consisting of the frame, scoreboard and power switch.
To mount our power source we used a piece of wood to clamp the source in place, the crack was fixed using wood paste and the entire clamp system was sanded to a smaller size. This could also provide additional space for mounting extra components.
In this task each group member was assigned to develop an element of a pinball machine, I was assigned the pop bumper. My objective is to create a fully functional pop bumper using a solenoid and a 3d printer.
I am going to start designing the bumpers for my Pinball Machine. To do this, I will be watching multiple videos on developing sort-of pistons and bumpers. In the linked video, the prototype the creator makes is a sort of encased solenoid with a spring on the pin. The solenoid draws the pin back and compresses the spring; when the current is removed, the pin is no longer attracted, and the pin is launched forward by the spring. In the prototyping phase, it is revealed that a sort of downwards angled cone is attached to the top that pushes the ball forward when the pin is retracted. I think this will put a spin on the ball allowing it to move faster. We can incorporate this but may have to adjust the angle of the cone to fit our ball properly. We can know it is working once it is able to shoot out a ball faster or equal to the speed the flippers can. We can iterate by trying different designs and describing how each affects the speed and ejection of the ball. We will know it is finished when it launches in the intended direction with an appropriate amount of force.
Using a provided video tutorial, I made a very rudimentary first prototype bumper. The idea is that when downwards force is applied, the angle of the cone would push the ball outwards at high speeds. The downside of this prototype is that it does not use any sensor which is vital to detect when the solenoid should activate. This will be tricky as there is no room in the center of the solenoid shaft for excess materials.
While researching real pinball bumpers, I found this video which provides a very detailed and thorough view of the mechanisms used in pinball bumpers. I used this as a reference picture to create my CAD model. Some parts may be modified to fit my situation.
I created this CAD model using Onshape and the above reference video. This prototype does not include the entire activation mechanism but rather all the most important parts. (From left to right) The first piece is the part which will be contacting and pushing that ball, the second is an extension
This prototype sets the basic structure for future iterations, the bottom base is where the solenoid is affixed to. The hollow center section allows for a trigger mechanism. Unfortunately, there were several issues with this prototype. First off, the trigger was too long and touched the bottom not allowing for the rest of the trigger mechanism. Furthermore, the pillars supporting the top cap were not spaced adequately and interfered with the lip of the solenoid rod.
This CAD model fixes some of the previously mentioned problems, the supporting pillars have been spaced an additional 0.2 centimeters apart and have been lengthened to allow for more space for the trigger mechanism. The object to the far right is the switch for the trigger mechanism which will bend and contact two switch ends. This part will be printed out of a flexible PLA for easy bending and activation.
The third prototype printed extremely well and the base is most likely what i will be using from here on out as I cannot find any flaws to improve upon. However, the top cap had printed over the bottom holes which meant it could not be inserted onto the pillars. Furthermore, I have noticed a bit of warping with the trigger base as it is very thin, increasing the height of this may help and I will implement that into my next prototype.
The trigger receptacle is an integral part of the trigger mechanism. The cone shape holds the trigger in a neutral upright position, when the trigger is pressed to one side, the spike rides up one side of the cone applying downward pressure. This causes the stem to bend slightly and create a connection using two contacts which will activate the solenoid. This prototype was relatively successful but had two issues, the first was that the stem was very thick and did not bend, to fix this I will try printing it with a thinner stem in hopes that it flexes more easily. If not, then I have an alternative material which is more flexible that I can print the receptacle with. The second issue is that it does not fit between the pillars, this is easily remedied and i will create a smaller cone for my fourth iteration of this mechanism.
By adding an extra eighth of a centimeter to the trigger base the rigidity was increased and you can see much less warping in the base. This is is important for a predictable and consistent tilt and triggering of the solenoid.
This receptacle has been made smaller so i can fit through the pillars, furthermore it has been attached to a flexible part that will allow for it to bend more easily.
This iteration of the bumper is the first fully assembled prototype. It combines all the work so far to create a bumper that can be mounted onto a mockup. The receptacle fits between the pillars to hold the trigger in a neutral position, the white strip attached to it is a 3d printed base which flexes easily allowing for the receptacle to create a contact based mechanism to activate the solenoid. Some improvements for the future are a different pillar system. Since the 3D print is produced in layers, repeated downward force (the top hitting and pushing the ball) will weaken it to the point of breaking. To Counter this I can use wooden dowels or threaded screws for future designs. These could be secured in place by bonding them together using cyanoacrylate glue and an accelerant.
The graph to the right is a checklist that allows for easy tracking of progress.
This iterations swaps out the plastic pillars for metal supports, this provides much more support as it will not fracture sideways like the layered plastic print. I creates these by removing the pillars from the original base leaving holes for the nails. One end was stopped by the head and the other was superglued in place. I also used a dremel to flatten the ends by cutting off the tips.
In this prototype I mounted the bumper using a vertical wood which the solenoid and connecting parts were screwed on to. The height was an important factor in this as the bumper top should not sit flush with the wood when pressed. When contacting the ball this could cause damage to the parts. However, it should still apply enough outward force to eject the ball from its radius.
In this iteration I replaced the mock-up board to a smoother sanded board while also adding an additional support that allowed it to stand independently which was a big help when working on the mechanism and will help with testing as well. The board is mounted in a slight incline and allows for enough space to add guide rails for testing. In the future I should probably find a better way to create the holes for the bumper, so far it has almost always resulted in splintering and blemishing of the board.
This trigger uses a spring to keep the 3d printed receptacle at the optimal height. This also adds a bit of resistance that helps prevent false triggers from movement. The 2 contacts are bits of snail tape that are wound around the receptacle and 2nd contact. Wires will be soldered onto these in the future, it will have to be done before being wrapped around though as doing it while wrapped would risk melting the receptacle.
This is a mosfet, it connects two gates when it receives a signal. In this case I have the power cables for the solenoid inserted into the gates on the bottom. The top will eventually be connected to the arduino and trigger/receptacle mechanism. This will complete the mockup and I after that I will begin designing precise parts on Onshape for faster production.
This iteration solves two problems, the balancing of the trigger and the chance that a ball would reach the center of the bumper and damage its components. The cylinder in the middle is unaffected by the bumper's movements as there is a hole in the cone's top for it to pass through. This also blocks balls from reaching the center of the bumper.
In this iteration I soldered wires onto some snail tape and attached it to the receptacle and 2nd contact. I also attached it to the mock-up after this. I was a bi concerned with rigid wires inhibiting the receptacle's movement so I used wires that were a bit more flexible than normal.
With the mechanical design for the bumper completed I wired it up to an arduino and solenoid and confirmed that the bumper would react to touch. A problem I encountered was that the ball was too light or the trigger was too heavy and it was not triggered by contact with the ball. To counter this I could lower the gap between trigger contacts even further.
In this iteration I developed a cad model for the base of the solenoid. If designed correctly this should allow me to rapidly and accurately produce bumpers that are guaranteed to work.
The 3D print came out nicely but had several issues. First of all. the holder for all the components was too wide and did not fit in between the pillars of the bumper. Secondly, the holes in the base and top cap were far too small for the nails I will be using as pillars.
I adjusted the width of the holder and it now fits inbetween the pillars. I also increased the hole size of the base and top cap by 0.2 cm and the top cap fits snugly, however the base still does not fit the nails so I will be increasing the hole diameter by 0.3 cm.
In this video we wired up a neopixel strip and connected it to a button using an Arduino. I programmed mine to use the preset "colorWipe" to change the color every time the button is clicked.
We used Onshape to design a holder for the neopixel out of cardboard then transfered the design to wood.
To prepare for the construction of our flippers I looked up some videos on how flippers work in other pinball machines.
This project was by far the largest undertaking I have experienced in all my engineering classes. I'm glad I did it though because it truly was an amalgamation of what we have learned these past few years and there was nothing more satisfying than seeing it all come together. I think projects like this are things we'll look back on and go "yeah that was really hard", not so much in a negative ontext but in that future projects will seems easier. If any of the things that I heard were true, this project was far beyond even a college level assignment and Im proud of myself, my classmates and especially my partne, Miles, for completing this project. I don't think I could possibly pick one thing to be proud of when it comes to this project, every step seemed massive and we managed to overcome each and ever one.