Turinys:
- 1 žingsnis: korpuso kūrimas
- 2 žingsnis: sukurkite „Flipper“mechaniką
- 3 žingsnis: sienų klojimas
- 4 veiksmas: pridėkite balų blokus
- 5 veiksmas: pridėkite žaidimą prie kontakto
- 6 žingsnis: kabelių skylių gręžimas
- 7 žingsnis: prijunkite viską
- 8 veiksmas: įkelkite kodą
Video: „Arduino“: „Pinball Machine“: 8 žingsniai (su nuotraukomis)
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:48
Kadangi man visada patiko ir pinball'o automatai, ir elektronika, nusprendžiau pasigaminti savo flipso aparatą. Programavimui ir elektronikai pasirinkau „Arduino“, nes tai labai prieinama platforma, kuri yra kompaktiška ir paprasta naudoti.
Šiame vadove paaiškinsiu savo kūrimo procesą, todėl galbūt vienas iš jūsų entuziastų galėtų sukurti kažką panašaus.
1 žingsnis: korpuso kūrimas
Pradėkime nuo pinball mašinos korpuso. Aš padariau gana paprastą konstrukciją. Aš nupjoviau apatinę plokštę ir panaudojau 4 mažus medinius stulpus kampuose, kad sujungčiau sienų dalis. Jūsų dėklo dydis yra jūsų pačių pasirinkimas, aš nusprendžiau padaryti jį šiek tiek mažesnį nei originalus flipso žaidimo aparatas, nes neplanavau pridėti jokių itin įspūdingų priedų, kad užpildytų erdvę. Aš naudoju ir varžtus, ir klijus, kad korpusas būtų kuo stabilesnis. Užpakalinėje dalyje aš išgręžiau dvi skylutes grindjuostėje, skirtoje abiem kojoms, kurios suteiks pinball mašinai ikonišką pakreipimą. Vėlgi, kojų aukštis priklauso nuo jūsų. Kuo aukštesnės kojos, tuo greičiau kamuolys riedės (žemyn).
2 žingsnis: sukurkite „Flipper“mechaniką
Kadangi norėjau apriboti šio projekto išlaidas, nusprendžiau gaminti visiškai mechaninius, o ne elektroninius atvartus. Jei jus domina elektroniniai pleištai, galite naudoti konstrukciją, kuri yra šiek tiek panaši, tačiau prie jos prijungtas vadinamasis „solenoidas“(solenoidai, turintys pakankamai galios valdyti pleištus, man buvo per brangūs).
Pradėjau gręždamas dvi skylutes apačioje abiejų plekšnių pasukimo taškui. Aš gręžiau skyles (mano nuomone) šiek tiek per arti viena kitos, ir dėl to žaidimas galų gale buvo šiek tiek per lengvas. Taigi būkite atsargūs ir nedėkite pūkų per arti vienas kito, nebent norite lengvo žaidimo stiliaus.
Aš taip pat išgręžiau dvi skyles abiejose šoninėse sienose, lygiagrečias atvartams. Šios skylės turi būti naudojamos dviem atlenkiamiems mygtukams.
Aš panaudojau spyruokles, norėdamas atplėšti pleištus atgal į pradinę padėtį, ir padariau pasukamą konstrukciją tarp atvartų ir mygtukų, kad jie pasuktų, kai spaudžiami mygtukai. Kad spyruoklės per toli neatstumtų pleiskanų, uždėjau du varžtus, kurie laikė atvartus pradinėje padėtyje.
3 žingsnis: sienų klojimas
Aš įdėjau porą sienų, kad nukreipčiau pinballą į pleištus. Juos padaryti labai paprasta. Tiesiog gręžkite 3 skyles korpuso apačioje ir įstumkite tris medinius kaiščius. Apvyniokite guminę juostelę aplink kaiščius ir baigsite.
4 veiksmas: pridėkite balų blokus
Rezultatų blokai yra viena iš svarbiausių pinball žaidimo mašinos dalių, todėl įsitikinkite, kad šią dalį atlikote teisingai. Aš padariau tris taškų blokus savo pinball mašinai, bet vėl viskas priklauso nuo jūsų.
Nupjoviau mažą šluotos koto gabalėlį ir apvyniojau varine viela. „Arduino“šią varinę vielą nuolat maitins 5 V įtampa. Aš lituodavau keturias tušinuko spyruokles į šoną, kad geriau susiliesčiau su kamuoliu.
Rezultatų blokų veikimo būdas yra tas, kad kamuolys užbaigia grandinę, vedančią į „Arduino“įvesties kaištį. Taigi tai, ką aš padariau, užklijuoti aliuminio foliją ant korpuso apačios (NELIEKTI VARO) ir priklijuoti foliją iki „Arduino“kaiščio. Kai kamuolys patenka į varį ir aliuminį, grandinė baigta ir „Arduino“gaus signalą.
Sujungiau visus taškų blokus, naudodami aliuminio foliją, tačiau atminkite, kad lipni pusė nelaiko elektros.
5 veiksmas: pridėkite žaidimą prie kontakto
„Pinball“apačioje, tarp plekšnių, pridėjau žaidimą per kontaktą. Kai kamuolys pataiko į šį kontaktą, žaidėjas praras kamuolį. Konstrukcija, kurią aš padariau, labai panaši į taškų blokus. Tik čia aš naudojau du varžtus, o vėl - aliuminio folijos gabalėlį apačioje.
6 žingsnis: kabelių skylių gręžimas
Prieš pradėdami viską prijungti prie „Arduino“, pirmiausia turime išgręžti keletą skylių kabeliams. Aš išgręžiau skylę per abu aliuminio folijos gabalus, taigi viena skylė aliuminio folijoje šalia taškų blokų ir viena skylė aliuminio folijoje šalia žaidimo per kontaktą.
Be to, aš išgręžiau skylę apačioje kairėje, tarp sienų, kabeliui, vedančiam į papildomus rutulinius vartus „Servo“.
Taip pat apačioje turėtų būti skylė kabeliui, prijungtam prie LCD.
7 žingsnis: prijunkite viską
Aš sudariau šią schemą, kad galėčiau geriau suprasti, kur turėtų būti nukreipti visi kabeliai. Kryžiai yra taškai, kuriuose jungiasi kabeliai. Stengiausi lituoti kuo daugiau, kad viskas būtų kiek pastoviau ir patikimiau. Elektros instaliacija užtruks šiek tiek laiko, bet po to jūs beveik būsite!
8 veiksmas: įkelkite kodą
Įkelkite šį kodą į „Arduino“, kad jūsų pinball mašina pradėtų veikti!
// Įtraukite LCD biblioteką
#įtraukti #įtraukti
// Inicijuokite LCD duomenų smeigtukus
„LiquidCrystal lcd“(7, 8, 9, 10, 11, 12);
// Sukurkite servo
Servo kamuolysGateServo;
// Sukurkite kintamuosius mūsų naudojamiems kaiščiams
int gameoverPin = 6; int rezultatasPin = 5; int speakerPin = 4; int ballGateServoPin = 3;
// Inicijuokite žaidimo kintamuosius pinball mašinai
int rezultatas = 0; int rekordas = 500; bool highscoreReached = false; int kamuoliai = 3; int gameoverTimer = 0; int gameoverTimerDuration = 100; bool gameoverTriggered = false;
// paleiskite šį kodą vieną kartą pirmame kadre
void setup () {// Nustatykite smeigtukų, kuriems naudojame pinMode, pinMode (gameoverPin, INPUT); pinMode (scorePin, INPUT);
// Inicijuokite LCD, nurodydami plotį ir aukštį
LCD. pradžia (16, 2);
// Pritvirtinkite rutulinių vartų servo prie atitinkamo kaiščio
ballGateServo.attach (ballGateServoPin);
// Vartų servo nustatymas į pradinę padėtį
ballGateServo.write (0); }
// Vykdykite šį kodą kiekviename kadre
void loop () {// Užfiksuokite kaiščio įvestis int gameoverState = digitalRead (gameoverPin); int scoreState = digitalRead (scorePin);
// Pridėti prie balo, jei gaunama įvestis
if (scoreState) {tone (speakerPin, 1000); balas += 10; } else {noTone (4); }
// Atimkite iš kamuolių, jei suaktyvinama žaidimo duobė
if (gameoverState ir! gameoverTriggered) {kamuoliai -= 1; gameoverTriggered = tiesa; gameoverTimer = gameoverTimerDuration; }
// Paleiskite žaidimo laikmatį, kai tik kamuolys neliečia žaidimo kontakto
if (! gameoverState) {if (gameoverTimer> = 1) {gameoverTimer -= 1; } else {gameoverTriggered = false; }}
// Blink the gameover text to the LCD and reset the score and kamuoliai
if (rutuliai <= 0) {lcd.setCursor (0, 0); (int i = 5; i> = 1; i--) {lcd.clear (); vėlavimas (250); lcd.print ("ŽAIDIMO PABAIGA"); lcd.setCursor (0, 1); lcd.print ("Bandyti dar kartą?"); vėlavimas (250); } lcd.clear (); balas = 0; ballGateServo.write (0); highscoreReached = false; kamuoliai = 3; }
if (rezultatas> rekordas ir! rekordasReached) {
lcd.setCursor (0, 0); (int i = 5; i> = 1; i--) {lcd.clear (); vėlavimas (250); lcd.print ("NAUJAS AUKŠTAS"); lcd.setCursor (0, 1); lcd.print ("Staigi mirtis!"); vėlavimas (250); } lcd.clear (); rutuliai = 1; ballGateServo.write (120); rekordas = rezultatas; highscoreReached = tiesa; }
// Atnaujinkite rekordą, jei dabartinis balas yra didesnis
if (rezultatas> rekordas) {rekordas = balas; }
// Nustatykite žymeklį į 0 eilutę
lcd.setCursor (0, 0); // Spausdinti dabartinį (aukštą) balą į LCD, jei (rezultatas <= 0) {lcd.print ("Aukščiausias rezultatas:" + Styga (rekordas) + ""); } else {lcd.print ("Rezultatas:" + eilutė (rezultatas) + ""); }
// Nustatykite žymeklį į 1 eilutę
lcd.setCursor (0, 1);
// Atspausdinkite dabartinį rutulių kiekį į LCD
lcd.print ("Kamuoliai:" + Styga (rutuliai)); }
Rekomenduojamas:
„Ultimate Beer Pong Machine“- „PongMate CyberCannon Mark III“: 6 žingsniai (su nuotraukomis)
„PongMate CyberCannon Mark III“yra naujausia ir pažangiausia alaus teniso technologija, kuri kada nors buvo parduodama visuomenei. Su naujuoju „CyberCannon“bet kuris žmogus gali tapti labiausiai bijomu žaidėju prie alaus teniso stalo. Kaip tai p
„Arduino Pinball Machine“, kuris žaidžia pats!: 13 žingsnių (su nuotraukomis)
„Arduino“flipso aparatas, kuris žaidžia pats !: " Pinball machine, kuris žaidžia pats, ar tai neatima visų malonumų? &Quot; Girdžiu, kaip klausiate. Galbūt, jei jums nepatinka autonominiai robotai, tai gali būti. Tačiau aš labai noriu kurti robotus, galinčius daryti šaunius dalykus, o šis
„Flipperkonsole Für PC Flipper / Pinball“konsolė, skirta kompiuteriniams „Pinballs“žaidimams: 9 žingsniai
„Flipperkonsole Für PC Flipper / Pinball Console for PC Pinballs“: yra USB jungtis „Spielkonsole für PC-Flipperkästen“. „Spannungsversorgung“erfolgtas yra USB kabelis. Įdiekite „Flipper Buttons“ir „Startbutton“mygtukus. Zusätzlich yra atsakingas už galutinį, von links und von rechts implem
„Office Arcade Machine“: 9 žingsniai (su nuotraukomis)
„Office Arcade Machine“: tiems iš jūsų, kurie tikėjosi, kad tai bus dar vienas rankų darbo sintezatoriaus dėklas, tai gali būti šiek tiek nuvilianti, tačiau šiandien norėčiau pasidalinti savo patirtimi kuriant viso dydžio arkadinę mašiną mūsų biurui. Tai buvo kuopos bendros pastangos
„Sesame Street“- „Pinball Number Count Clock“: 8 žingsniai (su nuotraukomis)
Sezamo gatvė - „Pinball Number Count Clock“: šis nurodymas apibūdins pritaikyto laikrodžio konstrukciją. Nors tai yra būtent Sesame gatvėje rodomo laikrodžio konstrukcija; „Pinball Number Counting“animacija, bendros procedūros yra tos pačios ir instrukcijos