Obsah:
- Krok 1: Nástroje
- Krok 2: Díly a základní rozvržení
- Krok 3: Vytvořte prototyp (volitelně)
- Krok 4: Tipy pro zapojení
- Krok 5: Získání Lasercutu čelní desky
- Krok 6: Zapojení tlačítek a přepínačů
- Krok 7: Zapojení joysticků a displeje LCD
- Krok 8: Palivoměry LED Bar
- Krok 9: Sestavení přílohy
- Krok 10: Software a testování
- Krok 11: Na Měsíc
Video: KerbalController: vlastní ovládací panel pro raketovou hru Kerbal Space Program: 11 kroků (s obrázky)
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:23
Proč stavět KerbalController?
Protože mačkání tlačítek a házení fyzických přepínačů je mnohem podstatnější než kliknutí myší. Zvlášť když je to velký červený bezpečnostní spínač, kde musíte nejprve otevřít kryt, švihnutím spínače vyzbrojíte raketu, spustíte odpočítávání a 3.. 2.. 1.. máme start!
Co je to KerbalController?
KerbalController, také označovaný jako ovládací panel, Simpit (simulovaný kokpit), DSKY (klávesnice pro zobrazení) nebo vlastní joystick, je přizpůsobené vstupní zařízení pro ovládání populární stavby raket a létání a doufejme, že ne exploduje hra Kerbal Space Program kombinovaná s volitelným výstupem ze hry, jako jsou stavová světla, telemetrické displeje a/nebo palivoměry.
Tato konkrétní sestava obsahuje vstupy, jako jsou ovládací prvky otáčení a překladu prostřednictvím joysticků, posuvného ovladače plynu, spousty tlačítek se stavovými kontrolkami, LED palivoměrů a telemetrického LCD displeje s více režimy.
Tato příručka bude obsahovat vše, co potřebujete k vytvoření identické kopie nebo k provádění úprav a vylepšení na cestě, jak uznáte za vhodné. Zahrnuty jsou:
- seznam dílů
- digitální designové výkresy připravené k laserovému řezání
- pokyny k zapojení
- Arduino kód
- Kód doprovodného pluginu KSP
- Spousta obrázků
Jste připraveni na vzlet? Pojďme!
Krok 1: Nástroje
Nejdůležitějším nástrojem, který pro tuto stavbu potřebujete mít, je páječka. To zahrnuje nějakou pájku, kovovou houbičku na čištění špičky páječky a „třetí ruku“.
Dalšími nástroji jsou odizolovač drátu, řezačka drátu, pinzeta a některé malé šroubováky.
Krok 2: Díly a základní rozvržení
Vytvořit pro vás co nejlepší ovladač znamená přesně vybrat, která tlačítka a přepínače chcete implementovat. Protože každý hraje hru jinak. Někteří lidé létají s letadly a staví SSTO (jednostupňové na oběžnou dráhu). Jiní dávají přednost roverům vesmírných stanic. A někteří jen chtějí, aby věci efektně explodovaly!
Pomůže nakreslit všechny díly v jejich přibližné velikosti a přetáhnout je v programu pro vektorové kreslení (jako Affinity Designer nebo Inkscape) nebo 3D kreslícím programu (jako SketchUp).
Pokud chcete jednodušší sestavení, stačí zkopírovat můj ovladač a získat součásti uvedené v přiloženém seznamu dílů.
Krok 3: Vytvořte prototyp (volitelně)
Pokud kopírujete můj ovladač, můžete tento krok přeskočit.
Pokud se chystáte pro vlastní rozložení, doporučuji nejprve použít botník k vytvoření funkčního prototypu s hlavními ovládacími prvky. Opravdu pomáhá doladit polohu hlavních ovládacích prvků. Je také příjemné získat jistotu, že to dokáže fungovat, než budete investovat čas a peníze do finální stavby. Vlastně jsem tu hru hrál nějakou dobu se svým ovladačem botníku. Není to Kerbalský způsob, jak pomocí zachráněných částí něco hacknout dohromady?
Krok 4: Tipy pro zapojení
Při vytváření prototypu nepájejte všechna svá tlačítka, pokud je nechcete odspájkovat, až se dostanete ke konečnému pouzdru. K tlačítkům jsem připájel několik vodičů a pomocí dočasného připojení k Arduinu jsem použil nepájivou desku.
Když připojujete veškerou elektroniku k finální čelní desce, můžete omezit nepořádek vytvořením smyček pro 5 V a uzemnění. Nepřipojíte všechny zemnící piny přímo k Arduinu, ale spíše připojíte uzemnění na jednom tlačítku k uzemnění na dalším tlačítku a smyčku všude kolem. Nakonec se připojíte k Arduinu.
Po vytvoření smyček pro napájení a uzemnění zůstanou všechna připojení k pinům Arduino. Doporučuji sehnat pár proužků kolíků a k těm připájet dráty. Můžete je použít jako velký konektor, takže můžete Arduino pro testování stále odpojit.
Délka vodičů je vyvážením mezi dostatečně krátkými, aby se v pouzdře udržely přebytečné spleti drátu (což by vám mohlo zabránit v uzavření krabice) a dostatečně dlouhými, aby bylo možné přesunout části z cesty k pájení další části dovnitř, utáhněte šrouby a šťourejte se s multimetrem při ladění.
Krok 5: Získání Lasercutu čelní desky
Při ručním řezání a malování je dosažení čistého a profesionálního vzhledu velmi obtížné. Naštěstí řezání laserem už není příliš drahé. Umožňuje extrémní přesnost, pokud je váš návrh přesný.
V příloze je můj design čelní desky ve formátech vhodných pro Affinity Designer a další programy pro kreslení vektorů, jako je bezplatný InkScape.
Nechal jsem se na čelním panelu lasercutem v Nizozemsku na Lichtzwaardu. Od té doby se zavřely a aktivity převzal Laserbeest, kde jsem nechal box vyřezat laserem. Každý obchod může mít jiné požadavky na design, proto se před odesláním obraťte na svůj obchod. Také téměř vždy nabízejí pomoc s návrhem za hodinovou sazbu.
Důležité věci, které je třeba mít na paměti:
- Všechno musí být založeno na vektoru. Proto se logo v mém designu čelní desky neleptalo. Všimněte si, že to není v přiložených návrzích opraveno.
- I text má být vektorový. Takže převeďte ta písmena na křivky!
- Opatření. Opatření. Opatření. Nezohlednil jsem velikost potřebnou pro montáž joysticků a musel jsem to hacknout. Dopadlo to dobře, naštěstí. Všimněte si toho, že je to opraveno v přiložených návrzích.
Po důkladné kontrole vše odešlete do obchodu s laserovým řezáním. Počítejte s tím, že v Nizozemsku zaplatíte 40–50 eur a druhý den dostanete tento krásný výsledek poštou!
Krok 6: Zapojení tlačítek a přepínačů
Většina přepínačů a tlačítek má konektory označené C, NO, NC, +, -. Zde je návod, jak je připojit k Arduinu.
Jednoduchý spínač nebo tlačítko:
- Ground C (společné)
- Digitální pin Arduino NE (normálně otevřený)
Digitální pin nakonfigurujeme jako INPUT_PULLUP, což znamená, že Arduino bude udržovat pin na 5V a detekovat, kdy se pin uzemní, a považovat to za vstup. Konektor NO na spínači nebo tlačítku je normálně otevřený, takže obvod není připojen. Když stisknete tlačítko nebo přepnete spínač, obvod se uzavře a pin se uzemní.
Tlačítko s LED:
Část tlačítka je stejná jako výše. Pro LED připojíte další vodiče:
- Ground - (negativní)
- Digitální pin Arduino + (kladný)
Tato část je docela přímočará. Pin Arduino budeme používat v normálním režimu VÝSTUP.
Bezpečnostní spínače s LED:
Ty jsou trochu jiné a neumožňují ovládání LED nezávisle na poloze spínače. LED dioda se vždy rozsvítí, pouze když je spínač zapnutý. Mají konektor +, - a signál.
- Ground - (negativní)
- 5V + (kladný)
- Arduino digitální pin S (signál)
Pin Arduino použijeme v režimu INPUT. Když je spínač zapnutý, LED se rozsvítí a signální kolík se rozsvítí vysoko.
Krok 7: Zapojení joysticků a displeje LCD
LCD
LCD je velmi jednoduchý. Potřebuje pouze napájení, uzemnění a sériové připojení.
- 5V VDD
- Pozemní GND
- Arduino Tx PIN RX
Můžete použít konektor JST nebo přímo připájet vodiče k desce.
Joysticky
Joysticky mohou na první pohled vypadat skličující, ale jejich připojení je celkem snadné. Existují tři osy, které jsou spojeny stejným způsobem. Dva z nich používají konektory ve spodní části joysticku. Třetí používá nějaké dráty.
- Přízemní
- Wiper Arduino analogový vstupní pin
- 5V
Konektory lze připojit v tomto pořadí. Nebojte se, že byste to dostali zpět, stěrač je vždy prostřední. Pokud dojde k záměně napájení a země, můžeme osu v kódu Arduino později převrátit.
Dráty mohou mít na joysticku jiné barevné schéma, ale obecně: dva vodiče se stejnými barvami jsou pro tlačítko nahoře. Červená nebo oranžová je 5V, černá nebo hnědá je uzemněná. Zbývající drát je stěrač.
Krok 8: Palivoměry LED Bar
Dobře. Toto je nejtěžší část celé stavby. Nebojte se to přeskočit na své první sestavě, nebo to vylepšit a dejte mi vědět!
Mám tyto skvělé LED tyče, které chci použít jako palivoměry. Horní LED dioda je modrá, pak zelená, oranžová a nakonec červená. Pokud můžeme rozsvítit jednu LED najednou, můžeme ji nechat reprezentovat hladinu paliva v naší kosmické lodi.
Původně jsem u nich objednal integrované obvody řidiče. Fungují skvěle! Můžete zvolit bodový režim nebo pruhový režim a bude zobrazovat analogové vstupní napětí jako jedna LED (tečka) nebo řada LED (bar). Arduino ale nevydává analogové napětí! A funkce PWM, která vám umožňuje ztlumit LED pomocí emulace analogového napětí, nefunguje s těmito integrovanými obvody ovladače.
Na plán 2: posuvné registry. S těmito můžete pracovat v každé startovací sadě Arduino. A můžete se o nich dozvědět více zde:
V plánu je nějak převést hladiny paliva na správný řetězec bitů, které budou představovat hladiny paliva na lištách LED. Při použití 5 palivoměrů by všechny hladiny paliva musely být 10000000001000000000100000000010000000001000000000. Při prázdném monopropelentu by to bylo: 10000000001000000000100000000010000000000000000001.
Zní to dost jednoduše. Existují určité komplikace. Posuvné registry mají 8 pinů, zatímco lišty LED mají 10 LED. Pro získání 56 výstupů používám 7 posuvných registrů. Když jsem je zapojoval, někde jsem přeskočil pin IC (vejdeme se do kódu). A zapojím jednu LED lištu na začátek na druhém konci (opravíme to v kódu). Oh a Arduino matematika, kterou potřebujeme, někdy používá aritmetiku s pohyblivou řádovou čárkou, která způsobuje chyby zaokrouhlování (opravíme to v kódu). Všimněte si, že kód sdílím v pozdějším kroku.
Moje konečná sestava neodpovídala připojenému schématu zapojení, takže pokud tento ovladač znovu sestavíte, jsou v kódu vyžadovány některé aktualizace. Komentujte níže, pokud potřebujete pomoc.
Každá LED vyžaduje vlastní odpor. Vyzkoušejte různé hodnoty, aby odpovídaly jasu. Zelená se stejným odporem vypadá mnohem jasněji než červená, takže to pomáhá vyrovnat.
Konečný výsledek: namísto 50 digitálních pinů potřebných k napájení 5 LED diod je redukováno na 3: hodinový signál, západkový signál a datový signál.
Krok 9: Sestavení přílohy
Čas pomstít se s těmi logy!
Logo jsem převedl na správné vektorové kresby, takže se v pohodě vyleptají. Dnes mám jiný problém. Otvory pro šrouby nejsou na správných místech pro správnou montáž krabice. Na krabici jsem použil 6mm MDF. Šroubování hřebíků do okrajů bohužel způsobí jejich rozdělení. Rozsekal jsem to spolu s dalšími kousky dřeva a lepidlem. Hodně lepidla.
Pro ty z vás, kteří jsou lepší se dřevem, lepidlem a/nebo hřebíky, jsem připojil verzi návrhů bez otvorů pro šrouby.
Navzdory obtížím je konečný výsledek docela hladký.
Krok 10: Software a testování
Stáhněte si následující software, aby ovladač fungoval s Kerbal Space Program:
Plugin KSP:
Soubor ZIP je kompilovaný plugin. Zbytek je zdrojový kód, který můžete použít k úpravě pluginu a kompilaci vlastní verze. Rozbalte plugin do adresáře GamaData.
Kód Arduino:
Pomocí Arduino IDE nahrajte kód do Arduino Mega ve vašem ovladači.
Podívejte se do pravého dolního rohu Arduino IDE, abyste zjistili, na kterém sériovém portu je ovladač (např. /Dev/cu.usbmodem1421). Otevřete soubor config.xml z adresáře pluginu a ujistěte se, že je váš port vyplněn. Nyní můžete začít!
Režim ladění můžete použít tak, že malý vypínač zapnete/vypnete vlevo nahoře do polohy ON. Na displeji LCD by se měl zobrazit řetězec písmen. Každé písmeno představuje tlačítko nebo přepínač a přepíná mezi malými a velkými písmeny, když stisknete tlačítko nebo přepnete přepínač. Nastavením přepínačů xyz na Xyz (zapnutí/vypnutí/vypnutí) se také zobrazí hodnoty posuvníku plynu. xYz zobrazuje hodnoty joysticku pro joystick Překlad (vlevo). xyZ pro otočný (pravý) joystick.
LCD režimy
Následující režimy zobrazení lze vybrat pro zobrazení na displeji LCD pomocí přepínačů x, y a z
Režim TakeOff: Suface Velocity / Acceleration (G)
Režim na oběžné dráze: Apoapsis + Time to Apoapsis / Periapsis + Time to Periapsis
Režim manévrování: Čas do dalšího uzlu manévru / Zbývající Delta-V pro další uzel
Režim Rendezvous: Vzdálenost k cíli / Rychlost vzhledem k cíli
Režim opětovného vstupu: Procentuální přehřátí (max) / zpomalení (G)
Režim létání: Nadmořská výška / Machovo číslo
Režim přistání: Radarová nadmořská výška / Vertikální rychlost
Extra režim: zatím není implementován
Chcete -li vidět různé režimy v akci, podívejte se na video na konci pokynů.
Krok 11: Na Měsíc
Zapalte KSP, naložte své oblíbené plavidlo nebo postavte nové a můžete vyrazit!
Tipy:
- Pro své žebříky použijte vlastní akční skupinu 5
- Pro své solární panely použijte vlastní akční skupinu 6
- Použijte vlastní akční skupinu 7 pro padáky nebo skluzavky
- Přiřaďte spouštěcí únikový systém a příslušné oddělovače akční skupině Přerušit
- Nezapomeňte, že musíte aktivovat tlačítko Staging
Druhé místo v soutěži Arduino Contest 2017
Runner Up in the First Time Author Contest 2018
Doporučuje:
Ovládací panel NASA pro děti: 10 kroků (s obrázky)
Ovládací panel NASA pro děti: Postavil jsem to pro svou švagrovou, která provozuje denní péči. Viděla můj ležák, který jsem postavil téměř před třemi lety pro faire výrobce společnosti, a moc se mu líbil, takže jsem pro ni postavil tento na vánoční dárek. Odkaz na můj další projekt zde: https: //www
Vytvořte si vlastní hru 1D Pong: 5 kroků (s obrázky)
Vytvořte si vlastní hru 1D Pong: U tohoto projektu vám ukážu, jak jsem kombinoval desku MDF s tlačítky bzučáku, LED diodami a Arduino Nano, abych vytvořil hru 1D Pong, která je opravdu zábavná. Po cestě vám ukážu, jak vytvořit elektronický obvod a jak se liší
Nástěnný držák pro iPad jako ovládací panel domácí automatizace, aktivace obrazovky pomocí magnetu ovládaného servem: 4 kroky (s obrázky)
Nástěnný držák pro iPad jako ovládací panel domácí automatizace, pomocí magnetu ovládaného servem k aktivaci obrazovky: V poslední době jsem strávil nějaký čas automatizací věcí ve svém domě a kolem něj. Jako aplikaci pro domácí automatizaci používám Domoticz, podrobnosti najdete na www.domoticz.com. Při hledání aplikace na palubní desce, která zobrazuje všechny informace o Domoticz
Arduino Rhythm Game Controller (pro vlastní hru): 6 kroků
Arduino Rhythm Game Controller (pro vlastní hru): V tomto návodu vám ukážu, jak tento Rhythm Game Controller stavím od začátku. Zahrnuje základní dovednosti zpracování dřeva, základní dovednosti 3D tisku a základní pájecí dovednosti. Tento projekt pravděpodobně můžete úspěšně postavit, pokud máte nulový ex
Vlastní ovládací prvky Adafruit Feather NRF52, není vyžadováno kódování: 8 kroků (s obrázky)
Adafruit Feather NRF52 Vlastní ovládací prvky, není vyžadováno kódování: Aktualizace 23. dubna 2019 - Grafy data/času používající pouze Arduino millis () viz Arduino Datum/čas Vykreslování/protokolování pomocí Millis () a PfodApp Nejnovější bezplatný generovaný pfodDesigner V3.0.3610+ Kompletní skici Arduina pro vykreslení dat podle data/času u