Rechercher dans ce blog

Wednesday, September 7, 2022

Steelrising - recenze hry - iDNES.cz

Jedna ze zásadních událostí západní kultury je velká francouzská revoluce. Občané se vzepřeli králi Ludvíku XVI. a dobyli Bastilu. Znamenalo to pád starých pořádků a veškeré snažení skončilo otestováním gilotiny. Aspoň tak to bylo v našich dějinách.

Povstání proti monarchii se ovšem pořádá o něco hůř, pokud proti vám stojí nemilosrdní roboti. V alternativní časové ose Steelrising se to pro povstalce nevyvíjelo tak příznivě. Ludvík XVI. proti povstání tvrdě zasáhl roboty – automaty. Celá Paříž se proměnila ve válečnou zónu, běsnění robotů nebyl ušetřen nikdo. Královna Marie Antoinetta má ovšem tajné eso v rukávu. Jeden automat, její osobní strážce, je jiný než ostatní. Má dokonce jméno – Aegis.

Spiders vzdávají poctu Bloodborne už hlavní hrdinkou. Aegis působí, jako by si Doll zaskočila na dovolenou ze svého útulného Hunter’s Dream do roboty ovládané Paříže. Aegis si můžete na začátku lehce upravit. Vybrat vzhled vašeho automata i specializaci. Ta ovlivní počáteční statistiky a výbavu.

Replikovat soubojový systém a feeling FromSoftware her se pokoušeli mnozí. Steelrising není Bloodborne, ač se snaží, seč může. Hra obsahuje vše, co definuje soulslike titul. Sbíráte univerzální platidlo – „dušičky“, zde zvané Anima Essence. Když vás zamordují, máte jednu šanci ukořistit esenci zpět, jinak nadobro zmizí. Vaší oázou klidu je Vestal, místo, kde nakupujete, upgradujete a levelujete. I lore se vypráví podobně, mimo jiné skrz popisky předmětů a rozhovory za dveřmi. Vše je tak, jak má být. Japonská preciznost, zkušenost s žánrem a větší rozpočet ale titulu chybí. Nejde pouze o soubojový systém, ale i o level design a atmosféru světa.

Soulslike

Soulslike (nebo také souls-like či soulsborne) je subžánr akčních her na hrdiny (nebo akčních dobrodružných her) známý vysokou obtížností a důrazem kladeným na příběh vyprávěný vlastním prostředím.

Zdroj: Wikipedia

Spiders doslova opisují od svého vzoru. Nezdá se však, že by to byl kalkul. Spíš upřímná touha přiblížit se originálu. Navíc japonští FromSoftware se při vývoji Bloodborne notně inspirovali francouzským filmem Le pacte des loups 2001. Takže jsou si národy v opisování celkem kvit. Znepokojivé zvuky sebraných dušiček nebo dramatická zvuková signalizace při vstupu do nové lokace jsou poznávací znaky Bloodborne a nyní i Steelrising. Přidejte kulisy zdevastované, starobylé Paříže a máte celkem solidní základ pro podobnou atmosféru.

Oproti jiným soulsborne hrám je souboj pomalejší. Roboti z konce osmnáctého století budou těžko mistry v akrobacii a mrštnosti. Jsou to povětšinou neohrabané bandasky rekrutované z řad pomocných robotů. Jejich původní zaměření bylo sekat dřevo, bavit rozmazlenou šlechtu hudbou či těžká dřina v dolech. Aegis je unikátní nejen tím, že mluví a myslí sama za sebe. Jakožto taneční robot přestavěný na zbraň je hbitá a obratná. Díky své rychlosti a mrštnosti je v neustálé výhodě. Hrozba jste vy, ne automati. Stačí jen skočit robotovi do zad a zasadit pár tvrdých ran a chudák ani pořádně neví, co se děje. Souboje jsou zábavné, hlavně pokud zvolíte lehké, rychlé zbraně. Aegis může uskakovat i parírovat, řetězit komba, lehké útoky, těžké a speciální. I tak by potřebovaly dopilovat. Lehké útoky z výskoku jsou skoro nepoužitelné.

Steelrising
Steelrising

Znatelně přituhne v momentech, kdy jsou roboti ve značné přesile. Početní převahu nepřátel však lze využít ve svůj prospěch. Pokud stihnete v rychlém sledu uštědřit běsnícímu robotovi dostatek ran, imobilizuje se a je připraven na super silný zakončovací úder. Ten nejen ukousne pořádný kus zdraví jemu, ale při správném nasměrování poškodí i nepřátele v okolí. Nevím, zda to byl záměr tvůrců, ale do hry to vnáší nový strategický element. Další způsob, jak se vypořádat s větší sebrankou, je nechat je posekat se mezi sebou. Nepřátelské útoky zraňují i ostatní roboty. Aegis je schopná i stealth útoku, pokud se nepozorovaně přiblíží k robotovi zezadu.

Hlavní hrdinka má k ruce mnoho unikátních zbraní. Od rychlých vysouvacích drápů po těžké disky a kombinované magické zbraně, schopné útoku na blízko i střelby. Každá zbraň má odlišné vlastnosti a scaling v jiných atributech. Všestrannější magické zbraně škálují ve více atributech. Mohou zároveň způsobovat i poškození ohněm, mrazem nebo elektřinou. Magické útoky používají i nepřátelé. Pokud se naplní ukazatel, projeví se efekt a vy musíte patřičně reagovat. Například při zmražení zuřivě mačkat všechna tlačítka, abyste se vysvobodili, a v případě, že hoříte, tak hbitě uskakovat. Tím oheň uhasíte. Na co si musíte dávat velký pozor, je přehřátí. Aegis není člověk, neunaví se, ale přetíží. Pokud příliš dlouho bojuje, přehřeje se. Lze aktivovat pohotovostní chladicí systém, který jí dá menší mrazivé poškození, nebo počkat, až vychladne. Při přehřátí jste nejzranitelnější, neschopni bojovat či uskakovat. Správné hospodaření se „staminou“ mi přišlo ještě důležitější než v jiných soulslike titulech.

Pomalejší soulsovka

Vrcholem soulslike her jsou střety s bossy. Ty proškolí vaše schopnosti na maximum. U Steelrising jde spíš o zpestření než výzvu. Bossové jsou podobně těžkopádní a pomalí. Ne vyloženě ve smyslu pohybu, ale spíš reakcí. Je dobře, že jsou útoky nepřátel i bossů snadno rozpoznatelné, ale ne, pokud je mezi nimi taková časová prodleva, že stihnete utéct na druhou stranu arény. Bossové jsou nejobtížnější v počátečních fázích hry, ale křivka obtížnosti spíš klesá, a čím nalevelovanější budete mít postavu a zbraň, tím snazší bude průchod hrou. I tak se ale nezřídka stane, že vás při zbrklém postupu pošle k zemi základní automat.

Soulsovky hraji velmi opatrně. Při soubojích s bossy se snažím držet si odstup. Ve většině her to není nic lehkého a agresivní protivník váš defenzivní přístup obrátí proti vám. Ve Steelrising to neplatí, v pohodě můžete kroužit kolem bosse a počkat, až se vám doplní zdraví. Máte k dispozici dva druhy léčivých lahviček. První funguje stejně jako v Elden Ringu. Postupným vylepšováním lahve navyšujete dávky a množství doplněného zdraví vyléčí okamžitě. Druhý typ zdraví doplňuje postupně dvacet sekund. Když v průběhu bossfightu přejdete na druhý typ, souboj se prakticky zastaví. Jen utíkáte před kolosem a čekáte, až budete opět fit. Dynamika souboje tím dostává pořádně na frak. Lahviček u sebe můžete mít neomezené množství. Bosse sice budete řezat pomalu, ale dokud máte zásoby, jste relativně v bezpečí.

Steelrising

Steelrising jde naproti nezkušeným hráčům. Sice jde o soulslike titul, ale je mnohem přístupnější. Úkoly se zanáší do deníku a kompas vás nasměruje k cílům mise. I ve vyprávění je přímočařejší. Bloodborne je proslulý těžkou interpretací příběhu. Nemusíte nakoukat sto hodin lorových videí a přečíst několik textů o rozsahu diplomové práce, abyste měli aspoň tušení, o čem hra byla. Steelrising vše vysvětlí po lopatě. Spiders si užívají, že vypráví příběh ze své domoviny. Titul je ukecanější, než je u žánru zvykem. Čas od času vám dá i možnost volby, která ovlivní budoucí události. Hru si můžete ulehčit použitím modulů. Zlepší Aegis statistiky, nebo dokonce doplní část zdraví při kritickém úderu.

Co je největší zjednodušení? Assist mode. Obtížnost lze upravit dle libosti. Snížit utržené poškození nebo vypnout ztrátu esence po smrti. Hry od FromSoftware mám rád, na Bloodborne a Elden Ring nedám dopustit. Nemůžu ale říct, že bych v nich exceloval. Každý triumf byl vykoupen spoustou potu a nervů. Díky tomu byl každý bossfight intenzivní zážitek. U Steelrising jsem ten pocit zažil na standardní obtížnost zřídka. Nemyslím si však, že by nižší obtížnost musela být na škodu. Trh nabízí spoustu náročných soulslike titulů, které se s hráčem nemažou. Steelrising může být solidní vstupní branou pro hráče, kteří se zatím žánru vyhýbali obloukem. I tak mohli autoři obtížnost lépe vyvážit, aby poskytla výzvu i pro zkušenější hráče.

Ztraceni v labyrintu

RECENZE: Výpravný GreedFall okouzlí alternativním sedmnáctým stoletím

Titul se skládá z několika postupně rozšiřovaných oblastí, do kterých cestujete. Ze začátku hra svižně mění prostředí. Z rozlehlých palácových zahrad se přesunete do rurální části Paříže a hned potom do továrních komplexů. Sice jsou všechny oblasti zbytečně velké, tovární haly přímo gigantické, ale scenérie se stále mění. Poté, co vkročíte do městské zástavby, se začne projevovat nižší rozpočet a design úrovní pokulhává. Valná většina hry se odehrává v centru Paříže. Level design centra je jednotvárný labyrint, který nedává příliš smysl a nenabízí moc pamětihodných míst.

Vývojáři se snaží nižší rozpočet maskovat velikostí map. Ale spíš než se zaměřit na rozlohu, měli autoři udělat prostředí zajímavější a přidat víc nepřátel. To, že nerozeznáte jednu uličku od druhé, navigaci nepomůže. I s postupným otevíráním zkratek budete neustále bloudit. Mapy jsou plné zákoutí, ve kterých by mohly být ukryté zajímavé poklady, ale odměnou vám je často jen pouhý granát nebo léčivá lahvička.

Steelrising
Steelrising

Pocit jednotvárnosti by se dal nabourat promyšlenějším dávkováním obsahu, autoři se ale rozhodli většinu vedlejších questů situovat do centra. Zhruba v polovině hry získáte za poražení bossů několik nástrojů. Díky nim můžete navštívit všechny nedostupné části map. Dash ve vzduchu vás dostane přes propasti, kotva na vyvýšená místa a beranidlem probouráte slabé zdivo. Až když máte všechny nástroje, můžete plnit vedlejší úkoly, co se vám nahromadily. Backtracking je hojný a není moc zábavný. Přesto, že se pohybujete v monotónním prostředí, jsou vedlejší questy obsahově zajímavé, pomohou vám odhalit víc z pozadí příběhu a natáhnou herní dobu na třicet a víc hodin. Navíc za ně dostanete i nějaké ty odměny.

Graficky je hra vydařená. Autoři se vyřádili hlavně na animacích. Automati i Aegis mají trhavé pohyby a využívají své nepřirozené pohyblivosti. To dává prostor k zajímavým a nečekaným útokům. I ozvučení je netradiční. Roboti vydávají kakofonii, která s trochou představivosti přechází v hudbu. Je to zneklidňující a originální. Pokud jde o stabilitu a optimalizaci, není si na PC nač stěžovat. Za celou hru jsem nenašel jediný závažnější bug.

Startovní soulsovka

Steelrising je jako dělaný pro nováčky žánru. Neklade takové nároky na skill a ve všech ohledech je přístupnější. Pokud hledáte hru, se kterou otestujete, zda vás soulsovky osloví, je Steelrising hra pro vás. Zkušenější hráče zaujme spíš netradičním zasazením než hratelností a designem úrovní.

Adblock test (Why?)


Steelrising - recenze hry - iDNES.cz
Read More

Jak bude probíhat návrat astronautů na povrch Měsíce v lodi Starship v rámci programu Artemis - ElonX

V Kennedyho vesmírném středisku se v těchto dnech připravuje na svůj prémiový start nová americká raketa Space Launch System, která by měla umožnit trvalý návrat pozemšťanů na Měsíc. Hlavním hybatelem celého konání je americká NASA. Avšak i společnost SpaceX Elona Muska má v tomto programu své želízko v ohni, vyvíjí totiž pro NASA přistávací modul Starship Human Landing System. Tento lander ale přijde na řadu až při prvním pilotovaném pokusu o přistání, který by se měl uskutečnit v rámci mise Artemis III v roce 2025. Přestože se tento okamžik nachází ještě v daleké budoucnosti, v dnešním článku vám představíme několik zajímavostí a novinek k této misi. Pochopitelně se tyto informace budou týkat hlavně aktivit, které při této misi bude zajišťovat SpaceX. Známe například nové podrobnosti k testovací misi landeru SpaceX a NASA zároveň vybrala potenciální oblasti na Měsíci, které jsou vhodné pro přistání během mise Artemis III.

Vizualizace astronautů programu Artemis na povrchu Měsíce (Zdroj: NASA)

V prosinci roku 1972 se po měsíčním povrchu naposledy procházeli pozemšťané, konkrétně šlo o Eugena Cernana a Harrisona Schmitta. Oba byli astronauté NASA a členové posádky Apolla 17, které tehdy bylo vrcholem celého amerického lunárního programu. Od té doby uplynulo téměř 50 let a průzkumu Měsíce se od té doby věnovaly in-situ pouze automaty a robotické sondy. Vše se začalo pomalu měnit až na počátku nového tisíciletí, když americký prezident G. W. Bush vyhlásil program Constellation, který měl obnovit přítomnost lidí na Měsíci do roku 2020. Tento program neměl ovšem dlouhého trvání a z důvodu finanční náročnosti byl ukončen v roce 2010. Z tohoto programu do dalších let přežila jen kosmická loď Orion a původně plánovaný nosič Ares V byl posléze nahrazen supertěžkým nosičem Space Launch System (SLS). Měsíční aktivity americké kosmonautiky byly oficiálně obnoveny až v roce 2017, kdy došlo k vyhlášení programu NASA s názvem Artemis.

Eugene Cernan, velitel Apolla 17, stojí vedle lunárního roveru v údolí Taurus Littrow, 13. prosinec 1972 (Foto: NASA)

Program Artemis má vytyčený náročnější cíl než jen návrat lidských bytostí na Měsíc. Na rozdíl od programu Apollo, kdy lidé Měsíc jen navštěvovali, by cílem programu Artemis mělo být zajištění trvalé a udržitelné přítomnosti lidí na povrchu Měsíce. Aby však NASA mohla začít dopravovat lidi na Měsíc, oslovila řadu firem, které pro ni začaly připravovat nutný hardware. Vývoj a výrobu nosičů SLS zajišťuje firma Boeing, kosmickou loď Orion připravuje společnost Lockheed Martin, přičemž servisní modul pro tuto loď dodává Evropská kosmická agentura ESA. Mohli bychom tu probírat i řadu dalších aktivit, kterými se NASA snaží vybudovat celou architekturu, ale z hlediska našeho článku je posledním podstatným prvkem celého procesu měsíční lander Human Landing System (HLS), který pro NASA vyvíjí kalifornská firma SpaceX na základě kosmické lodi Starship.

Raketa SLS v srpnu 2022 před misí Artemis I (Foto: NASA)

Než však v programu Artemis dojde řada na přistávací modul dodávaný firmou SpaceX, uskuteční se ještě dva starty nosiče SLS. První mise nazývaná Artemis I se měla uskutečnit už v těchto dnech, ale technické problém vedly k odkladu na říjen. V rámci této bezpilotní mise dojde k první letové zkoušce nové rakety SLS a k druhému testovacímu letu lodi Orion. Po dosažení oběžné dráhy bude loď navedena na cestu k Měsíci, v jehož prostoru stráví skoro celý měsíc.

K druhé misi programu Artemis by mělo dojít nejdříve v polovině roku 2024. Půjde již o pilotovanou misi, kosmická loď Orion ovšem pouze proletí okolo Měsíce po dráze volného návratu, nevstoupí na jeho oběžnou dráhu a vrátí se zpět na Zemi. Během celé této mise bude posádka provádět testy lodi Orion, aby odzkoušela téměř všechny nezbytné komponenty, které budou potřeba při další misi Artemis.

Plánovaný průběh mise Artemis III bod po bodu (Zdroj: NASA)

Jedinou neotestovanou komponentou tak zůstane přistávací modul HLS vyvíjený firmou SpaceX. Jeho nepilotovaný test se má uskutečnit nezávisle na misích Artemis v roce 2024. Cílem tohoto testu bude přistání na Měsíci, test samotný však nebude požadovat, aby loď Starship po přistání byla schopna odstartovat z povrchu. Samozřejmě, pokud se lodi start z povrchu povede, bude to jen dobře, ale NASA to nutně nevyžaduje. To znamená, že úplně první pokus o start HLS z povrchu Měsíce může teoreticky nastat až při ostré misi Artemis III. Činitelé NASA sami charakterizují loď HLS pro nepilotovaný test jako „kostru“, tedy asi jakýsi neplnohodnotný prototyp, a nepředpokládají, že tatáž loď bude následně použita i pro misi Artemis III s astronauty.

Koncept lunárního modulu Starship HLS pro NASA z roku 2021 (Zdroj: SpaceX)

Ač je hlavním cílem této mise test lodi HLS, NASA patrně neodolá a pokusí se využít i této příležitosti k tomu, aby na povrch Měsíce dopravila další vědecký náklad. Přeci jen by byla škoda nevyužít přepravní kapacity HLS, která má být schopná dopravit na Měsíc až 100 tun nákladu. Přistávací oblast pro tento test se bude také nacházet v oblasti jižního pólu, patrně však mimo lokality, které mohou být vybrány pro misi Artemis III, aby tak žádným způsobem nemohlo dojít ke kontaminaci okolí pro budoucí vědecký výzkum.

Loď Starship u Měsíce (Zdroj: dearMoon)

První lidské přistání na Měsíci v rámci mise Artemis III je oficiálně plánováno na konec roku 2025, ale reálnější odhady mluví spíše o roce 2026. Než se však až čtyři zatím neznámí astronauté vydají na svou cestu na palubě lodi Orion, bude nutno pro ně na oběžné dráze Měsíce přichystat lunární lander HLS. Ten se nejprve dotankuje na oběžné dráze Země a poté se přemístí vlastními silami k Měsíci, kde bude čekat. HLS a Orion se tak poprvé potkají až na oběžné dráze Měsíce, kde jeden muž a jedna žena přestoupí na jeho palubu a po odpojení od mateřské lodi zamíří do oblasti jižního pólu.

Plán použití lunárního landeru HLS během mise Artemis III (Zdroj: NASA)

Přesné místo přistání zatím nebylo určeno, ašak NASA koncem srpna oznámila, že předběžně vybrala 13 míst, kde by se přistání mohlo uskutečnit. Více míst bylo zvoleno, protože to umožňuje větší variabilitu ve výběru startovního okna pro misi Artemis III. Pro zájemce je zde i video, které společně představuje vybrané oblasti. Všechny se nacházejí ve vzdálenosti maximálně šesti stupňů zeměpisné šířky od jižního pólu. Kromě flexibility startovního okna a vědeckého významu byly při výběru přistávacích míst zahrnuty i další okolnosti jako sklon terénu, bezpečnost přistání, snadnost komunikace se Zemí i světelné podmínky. Aby přistávací oblast byla vhodná pro loď Starship, do výběru lokalit bylo zapojeno i SpaceX. Každé ze zvolených míst nabízí posádce minimálně 6 a půl dne slunečního svitu. Posádka tak nebude přistávat ve tmě a bude na místě moci používat sluneční panely. Zároveň jde o oblasti, ze kterých se posádka bude moci snadno přesunout do oblasti trvale zastíněné před slunečním svitem. Možnost odebírat vzorky v oblasti nedotčené slunečním zářením je velkým lákadlem pro vědecký tým NASA. Předpokládá se zde také přítomnost vody, pro niž dozajista budoucí průzkumníci a osadníci najdou využití.

13 potenciálních oblastí pro přistání astronautů v rámci mise Artemis III (Zdroj: NASA)

Po přistání stráví astronaut a astronautka na povrchu Měsíce přibližně týden, který zasvětí vědeckým pozorováním a sběru vzorků. Během jejich pobytu jim bude přibližně 50 metrů vysoká loď HLS sloužit jako domovská základna. Až se naplní čas, posádka odstartuje z povrchu Měsíce v HLS a na oběžné dráze se opět spojí s mateřskou lodí Orion. Poté už bude scénář letu podobný misím Apollo. Loď Orion i s astronauty opustí oběžnou dráhu, zamíří zpět k Zemi a na padácích se snese do vln oceánu.

Neoficiální představa lodi Orion na oběžné dráze Měsíce s lunární verzí Starship (HLS), kterou dodá SpaceX (Autor: Mack Crawford)

Na tomto místě si možná pokládáte otázku, co se stane s lunárním landerem HLS, který zůstane na oběžné dráze? Z hlediska NASA musí lander dopravit posádku zpět na oběžnou dráhu, čímž splní svůj úkol a požadavky NASA. Jeho další osud bude závislý výhradně na rozhodnutí SpaceX. Co se s HLS stane? Na tomto místě je možno vzít si příklad z minulosti a podívat se, jak končily lunární moduly po misích Apollo. Modul z mise Apollo 10 byl po skončení mise naveden na heliocentrickou dráhu, modul z Apolla 11 ponechala posádka na oběžné dráze Měsíce. Moduly z ostatních měsíčních misí, s výjimkou Apolla 13, který shořel v zemské atmosféře, ukončily svou pouť nárazem do Měsíce. Jaký však bude osud prvního pilotovaného lunárního modulu z dílny SpaceX, to je prozatím ve hvězdách.

Koncept lodi HLS z roku 2022 (Zdroj: NASA)

Tolik tedy k plánovanému průběhu mise Artemis III. Možná to tak na první pohled nevypadá, ale před společností SpaceX zůstává stále ještě velká řádka úkolů, které bude muset vykonat. Stále kupříkladu nebylo rozhodnuto, kolik budou muset lodi Starship podniknout tankovacích letů na oběžnou dráhu, aby v tankeru obíhajícím naší Zemi bylo dostatek pohonných hmot pro uskutečnění celé mise Artemis III. Velkou výzvou je pak i samotný management kryogenních pohonných látek na oběžné dráze. Na vyřešení tohoto náročného úkolu SpaceX už dlouho pracuje ruku v ruce s NASA. Vývoj landeru HLS také prozatím pokračuje dobře. Například v březnu 2022 zástupci NASA uvedli, že SpaceX splnilo všechny dosavadní smluvní milníky.

Neoficiální představa orbitálního tankování HLS před letem na Měsíc (Autor: ErcXspace)

Stejná spolupráce probíhá i při testování výtahu, který bude posádku měsíční lodi HLS dopravovat z obytného prostoru na lunární povrch a zpět. Zveřejněné obrázky prozradily, že zkušební model výtahu pro HLS je testován v prostoru před experimentálním tunelem Boring Company, který se nachází hned naproti továrně SpaceX v kalifornském Hawthorne. Pochopitelně se při tom zkouší všechny možné i nemožné situace. Výtah samotný je navíc poměrně robustní konstrukce, přeci jen, kabina s lidmi se bude nacházet ve výši několika desítek metrů nad terénem a případné katastrofické selhání by mohlo zamezit návratu posádky zpět do lodi.

Testování modelu výtahu pro HLS v Hawthorne (Zdroj: NASA/SpaceX)

Prach, který je na měsíčním povrchu všudypřítomný, má navíc nepříjemnou vlastnost, že snadno ulpívá na řadě povrchů a mohl by posádce výrazně zkomplikovat život. Z tohoto důvodu byl také výtah samotný navržen velmi konzervativně. Na tomto místě je ale nutno připomenout, že lidstvo již má určité zkušenosti s vlastnostmi měsíčního prachu, který se vyskytoval v oblastech přistání misí Apollo. Tento prach byl ovšem řadu let opracováván slunečním zářením. Podmínky, které budou panovat v méně osvětlených oblastech měsíčních pólů, jsou proto do určité míry stále neznámou.

Koláž fotografií z testů výtahu, který bude dopravovat astronauty z kabiny landeru HLS na měsíční povrch a zpět (Zdroj: NASA/SpaceX)

Co se týče budoucích lunárních misí, SpaceX letos v březnu obdrželo kontrakt na jednu další pilotovanou misi HLS. Lze předpokládat, že se týká přistání astronautů na Měsíci v rámci mise Artemis V, která je předběžně v plánu na rok 2028. NASA si navíc připravuje půdu pro další uchazeče, kteří mají zájem nabídnout svoje landery pro další chystané mise Artemis.


Přispějte prosím na provoz webu ElonX, aby mohl nadále zůstat bez reklam. Podpořte nás pomocí služby Patreon či jinak a zařaďte se tak po bok ostatních dobrodinců, kteří už finančně přispěli. Děkujeme!

Jiří Hadač
Latest posts by Jiří Hadač (see all)

Počet zobrazení článku: 2 236

Adblock test (Why?)


Jak bude probíhat návrat astronautů na povrch Měsíce v lodi Starship v rámci programu Artemis - ElonX
Read More

Tuesday, September 6, 2022

Apple ve středu představí nové iPhony. A Samsung do nich opět šije - iDNES.cz - iDNES.cz

Americká pobočka Samsungu spotem s názvem Buckle Up poukazuje na jednu z předností letošního špičkového modelu řady Galaxy S22, tedy varianty s přídomkem Ultra. Jde o špičkový fotoaparát. Hlavní snímač letošních iPhonů 14 Pro, které Apple společně s „obyčejnými“ iPhony 14 představí ve středu 7. září, si má sice oproti předchůdcům v jeho rozlišení značně polepšit, avšak očekávaných 48 Mpix není z pohledu jihokorejského výrobce patrně dostatečnou inovací.

Doslova říká, že lidé, kteří dají přednost iPhonu 14 Pro/Pro Max (který Apple představí 7. září večer středoevropského času), jeho pořízením vstoupí do světa, v němž se hlavy nebudou otáčet jejich směrem. Do světa, v němž smartphone s fotoaparátem s nejvyšším rozlišením nebude v jejich kapse. Samsung tím poukazuje na 108Mpix rozlišení hlavního snímače modelu Galaxy S22 Ultra. A jde ještě dále.

Vzápětí totiž vyzdvihuje také stonásobný hybridní zoom. „Ten epický snímek měsíce, který získává všechny lajky ... nebude tvůj,“ rýpne si opět do uživatelů očekávaných špičkových iPhonů s tím, že takové inovace nelze u smartphonů Applu očekávat ani v dohledné době.

Ve spotu, do něhož po svém zakomponoval i grafiku letošní pozvánky na Apple Event, ukáže Samsung také letní novinku, véčko Galaxy Z Flip 4. To sice nedisponuje fotoaparátem stejných parametrů jako Galaxy S22 Ultra, ale oba tyto špičkové samsungy se prodejní cenou blíží očekávané ceně iPhonu 14 Pro. Ze strany Samsungu jde pravděpodobně o další mírné popíchnutí: v portfoliu Applu totiž jakýkoli skládací model doposud schází.

Samsung do Applu rýpal už před lety

Vzpomeňme v této souvislosti na patrně nejpovedenější set reklamních spotů, tedy těch s titulem Ingenius. Samsung se v nich v roce 2018 zaměřil na tehdejší top model iPhone X, respektive na funkce, v nichž Apple zaostával za konkurenty. Ve spotech vyobrazoval zaměstnance konkurenčního Applu, který zákazníkům nedokáže přiznat, že některé funkce iPhony nezvládnou.

Ze strany Samsungu nešlo o jediné takové strefování do jeho hlavního tržního rivala, nit na Applu nenechaly v minulosti suchou ani jiné mobilní značky (více viz Rádi do sebe rýpali. Teď abyste takové konkurenční pošťuchování pohledali). Apple si však z takového popichování nic nedělal, byť to minimálně Samsungu mohl několikrát vrátit. Třeba v souvislosti s osvojením výřezu displeje či redukcí na sluchátkový jack, kvůli níž se také Samsung Applu původně vysmíval.

Americká společnost si z nějakého takovéhoto konkurenčního pošťuchování patrně nebude nic dělat i nadále. Své inovace, byť je uživatelé androidích smartphonů používají či znají už léta, umí totiž i dobře prodat a udělat z nich značnou přednost. Možná však tento americký gigant překvapí a dočkáme se nějaké jeho odezvy na účet Samsungu.

Adblock test (Why?)


Apple ve středu představí nové iPhony. A Samsung do nich opět šije - iDNES.cz - iDNES.cz
Read More

Zemřel astronaut, který na svůj let čekal 19 let. Zrušili mu i misi na Měsíc - iDNES.cz

K výcviku na astronauta ho přijali v roce 1966, do vesmíru se ale dostal až právě v roce 1985. „Byl to rekord. Nikdo nečekal na svůj let do vesmíru déle než já. Doufám, že se tohle už nestane,“ řekl Lind v roce 2005 portálu NASA.

Lind se dostal do devatenáctičlenné party astronautů, s nimiž se počítalo na cestu k Měsíci. Zařadili ho do páté skupiny, do té čtvrté se kvůli věkovému limitu nevešel o 74 dní.

Než však na něj přišla řada, byl projekt ukončen. „A já už jsem se na Měsíc nedostal. Bylo to pro mě neuvěřitelné zklamání,“ dodal Lind.

Následně byl vybrán do programu vesmírné stanice Skylab na začátku sedmdesátých let. Dostal se do záložní posádky pro pilotované lety číslo 3 a 4. S parťákem Vancem DeVoeBrandem nacvičovali případnou záchrannou výpravu. Nicméně do vesmíru se opět nepodíval.

Posádka raketoplánu Challenger z roku 1985. Astronaut Don Lind je třetí zprava.

To se mu povedlo až v roce 1985 na palubě raketoplánu Challenger. Ten odstartoval 29. dubna. Vzhledem k tomu, že dva ze šesti dalších Lindových kolegů byli též astronauti z někdejší éry Apolla, byl průměrný věk posádky 48,6 roku, což misi řadí k vůbec nejstarším v americké vesmírné historii.

Lind byl na palubě v pozici letového specialisty. Mise trvala sedm dní, přičemž na orbitě strávil celkem 168 hodin. Posádka provedla několik vědeckých experimentů, včetně prvních pokusů na zvířatech. „Měli jsme tam opice, veverky a několik krys. Užil jsem si to,“ komentoval svou práci Lind.

Kromě toho Lind navrhl a provedl také svůj vlastní experiment, když pořídil první jasné fotografie polární záře. Vše, co tehdy potřeboval, byla kamera, která už byla na palubě raketoplánu dostupná, a tři role filmu. „Ten experiment vyšel NASA na 36 dolarů, byl jedním z nejlevnějších,“ smál se Lind.

Z NASA Lind odešel půl roku po svém letu do vesmíru a stal se profesorem fyziky a astronomie na Utah State University v Loganu. Už dřív obhájil doktorát v oboru jaderné fyziky vysokých energií a pracoval také jako vesmírný fyzik. Do penze odešel v roce 1995.

Byl také aktivním členem Církve Ježíše Krista Svatých posledních dnů, jejíž členové jsou nazýváni mormoni. Byl ženatý a měl sedm dětí.

Adblock test (Why?)


Zemřel astronaut, který na svůj let čekal 19 let. Zrušili mu i misi na Měsíc - iDNES.cz
Read More

Monday, September 5, 2022

Turistické značení v Mapy.cz se dočkalo zajímavého vylepšení - Svět Androida

Turistické značení v Mapy.cz se dočkalo zajímavého vylepšení

Mohlo by vás zajímat

Adblock test (Why?)


Turistické značení v Mapy.cz se dočkalo zajímavého vylepšení - Svět Androida
Read More

Programování elektroniky: Vyrobíme blikačku s Bluetooth pro pořádné cyklogeeky - Živě.cz

Při jednom z letních cyklovýjezdů jsem ztratil svoji oblíbenou zadní blikačku z AliExpressu, a protože dny se už citelně zkracují, rychle jsem objednal značkové světlo s akumulátorem z prvního e-shopu pro cyklisty.

Blikačka ale nevydržela ani jeden pořádný prázdninový déšť, a tak jsem rezignovaně sedl do své redakční dílničky a začal hledat cokoliv, z čeho by se dala poskládat provizorní zadní svítilna pro těch několik posledních teplých týdnů letošního roku.

Našel jsem hrstku 5mm RGB LED se společnou anodou (+), několik konfekčních bipolárních NPN tranzistorů 2N2222 nejistého původu z Číny, kolébkový spínač a zásobu českých úsporných desek řady ESP32-LPKit s Wi-Fi/Bluetooth čipem Espressif ESP32.

Video: Stavíme cykloblikačku s BLE od A do Z

Deska je vyzbrojená nabíjecím čipem TP4054  a konektorem pro jednočlánkový lithiový akumulátor, takže mám v podstatě všechno ke stavbě elementární svítilny, kterou budu moci ovládat i skrze Bluetooth Low Energy třeba ze svého mobilního telefonu. Podívejte se na video výše.

Po zapnutí začne blikat pět rudých LED

Z dvaceti RGB LED nakonec v červeném kanálu svítilo jen pět exemplářů, to ale bohatě stačí. Pětimilimetrová dioda je už totiž přece jen robustnější a mohu do ní bezpečně pustit 20-30 miliampérů elektrického proudu, který se promění v docela solidní záři.

Klepněte pro větší obrázek
RGB LED se společnou anodou a katodou. My dnes použijeme pouze červený kanál R

LEDky zapojím paralelně, takže celkový protékající proud bude součtem těch dílčích a neměl by přesáhnout 150 mA. Druhým důvodem co nejnižšího proudu při zachování dobré svítivosti bude skutečnost, že nebudu světýlka napájet přímo z baterie, ale pro jednoduchost zapojení z 3,3V regulovaného zdroje na desce ESP32-LPKit.

Klepněte pro větší obrázekKlepněte pro větší obrázekKlepněte pro větší obrázek
Postupná evoluce prototypu BLE lampy od nepájivého pole a zkoušení difuzního krytu po venkovní konstrukci, která už pomaličku začíná připomínat skutečný výrobek z obchodu

Destička je vyzbrojená stabilizátorem HT7833, který při napětí 3,3 V nabídne až 500 mA elektrického proudu. Regulátor nicméně živí i samotný čip ESP32 a nechci, aby se zbytečně přehříval. Naštěstí nebudu pracovat s energeticky náročnou Wi-Fi a zároveň snížím takt procesoru na 80 MHz.

Tranzistor bude spínat silový okruh

Zdroj elektřiny bychom tedy měli, ale ještě musím nějak zajistit blikání a omezit protékající proud v obvodu svítivých diod. O to se postará naprosto konfekční bipolární NPN tranzistor 2N2222. který nechybí snad v žádné sadě pro kutily.

Klepněte pro větší obrázek
Bipolární NPN tranzistor 2N2222 a jeho schéma zapojení

I v tomto případě se jedná o exemplář z AliExpressu, o jehož kvalitě, specifikaci a původu mohu jen spekulovat, když ale nahlédnu do dokumentace obdobných modelů, měly by si bez problému poradit s protékajícím proudem až okolo 600 mA. V praxi ale bude mnohem menší. Sníží jej zapojený rezistor a samotné blikání, během kterého bude každé světýlko spalovat energii vždy jen polovinu periody.

Klepněte pro větší obrázek
Zjednodušené schéma zapojení LED s tranzistorem

Tranzistor v typickém obalu TO-92 má tři vodiče: emitor, bázi a kolektor. Kolektor připojíme ke katodám (-) pětice paralelně zapojených LED, emitor do referenční země GND naší prototypovací desky ESP32-LPKit a na bázi budeme konečně zvedat imaginární polovodičová stavidla, která spojí, nebo rozpojí obvod mezi kolektorem a emitorem. Když stavidla otevřeme, začne obvodem protékat proud a světýlka se rozsvítí.

Bázový rezistor

Stavidla budeme otevírat nastavování logického stavu na bázi, kterou připojíme k některému z volných pinů GPIO na desce ESP32-LPKit. V našem experimentu použiji pin číslo 27.

Klepněte pro větší obrázek
Testovací zapojení na nepájivém poli jen se čtyřmi LED a silnějším rezistorem báze

Kdybych ale na tomto pinu jen tak nastavil vysoký logický stav HIGH, stavidla budou mít jen relativně nízký elektrický odpor, otevřou se naplno, obvodem pětice LED začne protékat příliš vysoký proud (horním limitem je oněch 500 mA, které vyrábí stabilizátor HT7833) a mohu je rychle zničit a zbytečně přetížit celou desku.

Proto mezi náš pin GPIO 27 a bázi připojím rezistor s vhodným odporem. Mohu začít třeba na odporu 10 kΩ a multimetrem měřit protékající proud, který by neměl být vyšší než násobek počtu paralelně připojených LED a proudu, který zvládnou.

Klepněte pro větší obrázek
Obvodem se čtyřmi paralelně zapojenými LED nyní protéká 64 mA, což dělá 16 mA na každou z nich a jsem v bezpečném limitu 20-30 mA 

Na fotografii níže mám na nepájivém poli zapojené pouze 4 LED a 10kΩ bázový rezistor. Stolní multimetr měří odběr zhruba 64 mA, což dělá 16 mA na LED. Jsem tedy v normě a světýlka přitom už svítí poměrně jasně.

V hotovém obvodu nicméně budu mít zapojeno rovnou pět LED s bezpečných odběrem 20-30 mA, a tak mohu stavidla ještě o něco otevřít volbou slabšího rezistoru se zhruba polovičním odporem 4,7 kΩ. Schválně jsem zvolil hodnoty, které jsou opět velmi typické a nechybějí v žádné sadě drobných rezistorů pro kutily.

LED deska na pájivém poli

V produkční verzi kvůli pevnosti elektrických spojů a rozměrům samozřejmě nebudu moci použít nepájivé pole. Kdybych měl o něco více času, v EasyEDA si navrhnu vlastní tištěný spoj, který mi vyrobí třeba asijské studio JLCPCB. Už jsme si to ukázali v praxi na začátku roku.

Já ale vyrábím blikačku na poslední chvíli, a tak jsem nakonec sáhl po méně elegantním pájivém poli – tedy perforované destičce, do které se drátky nezacvakávají, ale pevně se připájí.

Klepněte pro větší obrázek
Za toto asi cenu za průmyslový design nedostanu, ale funguje to

Ano, je to ošklivé a příští verze už bude tištěná a oboustranná, svůj účel to ale splnilo. Na pájivém poli je matice 5 rudých LED a zároveň obvod se spínacím tranzistorem a regulačním bázovým rezistorem. Z modulu vedou tři vodiče pro připojení 3,3V (červený), systémovou zemi GND (černý) a samotný signální zelený vodič, který připojíme na pin 27 a softwarovým nastavováním vysokého a nízkého logického stavu budeme zapínat a zhasínat světýlka.

Ještě změřit akumulátor

Každá chytrá BLE lampička musí umět posílat údaj o stavu baterie. Samotná deska ESP32-LPKit ji změřit nedokáže, takže si musíme poradit sami. Nejjednodušší možnosti je obvod děliče napětí se dvěma rezistory jako na obrázku níže.

Klepněte pro větší obrázek
Dělič nám pomůže se snížením napětí baterie, abychom jej mohli přečíst pomocí A/D převodníku na čipu ESP32

Když bude jednočlánkový lithiový akumulátor nabitý na maximum, dosáhne napětí zhruba 4,2 V. Pomocí děliče s rezistory 27 kΩ a 100 kΩ (nebo jinou kombinací, viz různé kalkulačky) jej můžeme snížit na bezpečné pracovní napětí desky 3,3 V, odečíst skrze A/D převodník a funkci analogRead na některém z analogových pinů a přepočítat zpět na analogové napětí.

Nemusí to být ale nejpřesnější, druhou možností jsou proto hotové moduly voltmetrů a ještě o kousíček sofistikovanější senzory upravené pro detekci stavu lithiového článku. K těm nejpopulárnějším mezi kutily patří třeba moduly s čipem MAX17043 od Maxim Integrated, které komunikují skrze I2C a změří jak napětí baterie, tak odhadovaný procentuální stav nabití.

Senzor lithiového článku DFR0563

Na laciný AliExpress se mi ale čekat nechtělo, a tak jsem na Farnellu narychlo objednal mnohem dražší destičku DFR0563 s totožným čipem. DFRobot pro něj připravil i vlastní knihovnu, kterou stáhnete z GitHubu, nebo nainstalujete ze správce přímo v Arduinu.

Klepněte pro větší obrázek
Akumulátorové čidlo DFR0563

Vedle komunikace po sběrnici I2C nabízí MAX17043 ještě signál ALRT – alert –, na kterém se změní logický stav v případě, kdy nabití lithiového článku klesne pod stanovenou hranici. Pro jednoduchost dnešní ukázky ale toto asynchronní varování

Schránka z 3D tiskárny

Co nám zbývá? Nějaký hezký obal z 3D tiskárny. Bude mít tvar strohého válce, ve kterém bude zasunutá relativně dlouhá deska ESP32-LPKit, která bude definovat jeho rozměry. Později bych mohl desku vyměnit za něco menšího, pro jednoduchost příkladu se mi ale hodí, že je vyzbrojená nabíjecím obvodem.

Klepněte pro větší obrázek
Příprava minimalistické krabičky v Tinkercadu

Ve válci bude otvor pro kolébkový retro spínač a na zadní straně otvor pro šroub k ukotvení úchytu na tyč sedlovky. Čelní stěnu válce, který mohu vytisknout v libovolné barvě, pak uzavře krytka vytištěná z čiré – transparentní hmoty.

Princip domácího FFF/FDM 3D tisku a postupné pokládání natavené struny se postarají o to, aby plast fungoval jako docela použitelný difuzér, který světlo rozptýlí do všech stran a za tmy bude spojitě svítit celá stěna válce.

Klepněte pro větší obrázekKlepněte pro větší obrázekKlepněte pro větší obrázek
A takto vypadá výsledek

Zatímco průhlednou krytku vytisknu z odolného materiálu PETG, tubus a úchyt na sedlovku z neméně robustního tiskového plastu ASA. Pokud několikatýdenní testování v terénu vyjde, později mohu sáhnout po ještě odolnějších termoplastech na bázi karbonu, anebo po těch ohebných, aby úchyt na sedlovce pohltil všechny otřesy a neulomil se po prvním dnu.

BLE služby a charakteristiky

Když Espressif před lety představil svůj kombinovaný čip ESP32 s podporou Wi-Fi a Bluetooth, podpora modrého zubu byla zpočátku velmi omezená a slabě dokumentovaná. Už se to ale zlepšilo a to i pro jednoduché programování v Arduinu, pro které je k dispozici i několik knihoven a hromada příkladů, jenž používají úsporný protokol BLE.

Základní principy práce s Bluetooth Low Energy jsme si v našem seriálu už ukázali na desce Arduino Nano 33 BLE s mikrokontrolerem nRF52840, takže jen stručně:

Když skrze BLE zapisujeme, nebo čteme nějaké hodnoty – třeba právě stav baterie v naší blikačce – říkáme tomu BLE charakteristiky. Charakteristiky nicméně nepoletují vzduchem jen tak nazdařbůh, ale jsou zapouzdřené v BLE službách, které slouží pro jejich snadnou organizaci. Služby i charakteristiky zároveň mají svůj jedinečný 128bitový identifikátor UUID, který se zpravidla zapisuje v textové hexadecimální podobě.

Klepněte pro větší obrázek
Architektura obvyklé stavové komunikace BLE organizovaná do služeb a charakteristik

Některé jsou standardní a rozumějí jim aplikace (třeba právě UUID pro službu a charakteristiku stavu baterie), jiné slouží jen pro vaše interní organizační účely a náhodný UUID si pak můžete vygenerovat třeba na webu guidgenerator.com.

Ještě jednou a pro jistotu: Nejedná se o žádnou centrální registraci, není to žádná evidovaná SPZka. Je to jen vaše naprosto anonymní ID, které by ale mělo být vždy unikátní, aby nedošlo ke kolizi, kdyby si někdo zvolil to samé.

Náš firmware bude používat tyto služby a jejich vnořené charakteristiky:

  • Světlo (Vlastní UUID: 19B10000-E8F2-537E-4F6C-D104768A1214)
    • Režim (Vlastní UUID: 19B10001-E8F2-537E-4F6C-D104768A1214)
    • Jas (Vlastní UUID: 19B10002-E8F2-537E-4F6C-D104768A1214)
  • Baterie (Standardní UUID: 180F)
    • Stav nabití (Standardní UUID: 2A19)

Ahoj, jsem cyklolampička a nabízím tyto služby

Díky této architektuře může náš firmware po zapnutí počítače začít hulákat do okolí (tzv. advertising) své jméno, BLE MAC a také údaje o jedné ze služeb. Už z ní lze pak přečíst různé informace i bez oboustranného spojení.

V případě oboustranného spojení pak druhá strana získá kompletní seznam služeb a jejích charakteristik, které naše cyklolampa nabízí.

READ, WRITE, NOTIFY

Každá z charakteristik může kombinovat různé příznaky, které stanovují, jestli se bude jednat o čtení, zápis, anebo notifikaci (včetně). Naše charakteristiky pro nastavení režimu blikání a jas tedy budou mít příznaky READ a WRITE, aby druhá strana zjistila aktuální stav (READ) a mohla jej změnit (WRITE), no a charakteristika stavubaterie bude mít příznaky READ a NOTIFY. Stav baterie tedy dokáže druhá strana na vyžádání přečíst, ale stejně tak může zareagovat pokaždé, když vyšleme notifikaci.

Naše charakteristiky budou mít velikost jednoho bajtu:

Režim:

  • 0: Zhasnuto
  • 1: Svítím
  • 2-255: Blikám s prodlevou, která odpovídá násobku 50 ms a čísla-1. Takže hodnota 2 spustí blikání s prodlevou 50 ms, hodnota 3 s prodlevou 100 ms a tak dále

Jas:

  • 0-255: Jas pomocí obdélníkového PWM signálu. 0 odpovídá nejslabšímu jasu, 255 pak tomu nejsilnějšímu

Stav baterie:

  • 0-100: Standardní údaj v celých procentech. Jelikož mi nedorazil zmíněný měřící čip na lithiový akumulátor, budu posílat fiktivní hodnotu pro ověření funkce

Kdo bude druhou stranou?

Takže firmware bychom měli (jeho komentovaný kód najdete v závěru článku), ale kdo bude vlastně tou druhou stranou? Může to být třeba mobilní aplikace na vašem chytrém telefonu. Tu si ale naprogramujeme až příště, článek by se nám totiž nafouknul do obřích rozměrů.

Klepněte pro větší obrázekKlepněte pro větší obrázekKlepněte pro větší obrázekKlepněte pro větší obrázek
Testovací spojení s BLE lampou skrze nRF Connect for Mobile

Namísto toho funkci ověříme pomocí mobilního BLE analyzátoru nRF Connect for Mobile od severského Nordicu. K dispozici je pro iOS i Android a dokáže zobrazit a ovládat libovolné Bluetooth Low Energy zařízení v dosahu.

Klepněte pro větší obrázekKlepněte pro větší obrázek
Testovací spojení s lampou skrze nRF Connect for Desktop a speciální BLE přijímač

Stejný analyzátor nRF Connect for Desktop můžete spustit i na velkém počítači, v takovém případě ale budete potřebovat některou z BLE destiček od Nordicu – třeba nRF52840 Dongle – a speciální firmware, který ji promění v univerzální přijímač.

A to je vše. Cyklolampička funguje, po aktivaci bliká a stejně tak nabízí vzdálené ovládání pomocí Bluetooth Low Energy. V úvodním videu se podívejte na její ostrý test ve večerním Brně.

Zdrojový kód pro čip ESP32 a prostředí Arduino

Kód níže vyžaduje nainstalování podpory pro čipy ESP32 do vývojového prostředí Arduino.

// Knihovny pro praci s BLE na cipech ESP32
// Jsou soucasti podpory pro cipy ESP32 v Arduinu
// https://github.com/espressif/arduino-esp32/tree/master/libraries/BLE
#include <BLEDevice.h>
#include <BLEServer.h>
#include <BLEUtils.h>
#include <BLE2902.h>

// Knihovna DFRobot MAX17043 pro praci s cidlem akumulatoru
// https://github.com/DFRobot/DFRobot_MAX17043
// Lze doinstalovat skrze Projekt->Pridat knihovnu->Spravovat knihovny
#include <DFRobot_MAX17043.h>

// Pin, ktery bude ovladat radu LED
#define PIN_VYKONNA_LED 27

// 128b HEX UUID sluzby Svetlo a jeho charakterisrtik Rezim a Jas
// Muzete vygenerovat treba zde https://www.guidgenerator.com/online-guid-generator.aspx,
// nebo zvolit libovolny vlastni, ale mel by byt dostatecne unikatni, aby nedoslo ke kolizi
#define SVETLO_SLUZBA "19B10000-E8F2-537E-4F6C-D104768A1214"
#define REZIM_CHARAKTERISTIKA "19B10001-E8F2-537E-4F6C-D104768A1214"
#define JAS_CHARAKTERISTIKA "19B10002-E8F2-537E-4F6C-D104768A1214"

// Standardni zkracene 16bit HEX UUID pro sluzbu Baterie a charakteristiku Stav baterie
// Registr standaerdnizovanych 16bit HEX UID: https://btprodspecificationrefs.blob.core.windows.net/assigned-values/16-bit%20UUID%20Numbers%20Document.pdf
#define BATERIE_SLUZBA "180F"
#define BATERIE_CHARAKTERISTIKA "2A19"

// Trida naseho BLE serveru, ktery pobezi na cipu ESP32
BLEServer* server = NULL;

// Tridy sluzeb a charakteristik pro ovladani svetla
BLEService *svetlo_sluzba = NULL;
BLECharacteristic* rezim_charakteristika = NULL;
BLECharacteristic* jas_charakteristika = NULL;

// Trida sluzby a charakteristiky pro stav baterie
BLEService *baterie_sluzba = NULL;
BLECharacteristic* baterie_charakteristika = NULL;

// O periodicke blikani a zasilani notifikaci se stavem baterie
// se postaraji dve asynchronni ulohy vrstvy FreeRTOS,
// na ktere je postavene SDK cipu ESP32
TaskHandle_t ulohaBlikani;
TaskHandle_t ulohaBaterie;

// Promenna se stavem svetla
bool stavLED = false;

// Promenna s rezimem svetla
// Ve vychozim stavu hodnota 3, takze blikani kazdych 100 ms
uint8_t rezimLED = 3;

// Promenna s jasem 0-255
// Ve vychozim stavu maximalni jas
uint8_t jasLED = 255;

// Trida cidla akumulatoru
DFRobot_MAX17043 max17043;

// Perioda zasilani notifikaci se stavem baterie
// Ve vychozim stavu 5 000 milisekund
uint32_t baterieProdlevaAktualizaceMs = 5000;

// Promenna se stavem baterie 0-100 %
// Protoze nam zatim nedorazil merici cip MAX17243,
// budeme zasilat fiktivni a postupne se snizujici hodnotu
uint8_t baterieStav = 100;

// Trida, ktera se zpracuje pri udalosti BLE serveru
class priUdalostiServeru: public BLEServerCallbacks {
    // Pri pripojeni klienta probudime ulohu,
    // ktera zasila notifikaxce se stavem baterie
    void onConnect(BLEServer* server) {
      Serial.println("PRIPOJENO");
      vTaskResume(ulohaBaterie);
    };

    // Pri odhlaseni klienta, uspime ulohu,
    // ktera zasila notifikace se stavem baterie
    // a zaroven aktivujeme advertising,
    // tedy hulakani do prostoru, ze jsme cyklosvetlo
    // a jsme k dispozici pro pripojeni
    void onDisconnect(BLEServer* server) {
      vTaskSuspend(ulohaBaterie);
      Serial.println("ODPOJENO");
      server->startAdvertising();
      Serial.println("Cekam na spojeni...");
    }
};

// Trida, ktera se zporacuje, pokud charaktrreristika pro rezim svetla
// obdrzi od klienta nova data
class bleNovaDataRezim: public BLECharacteristicCallbacks {
    void onWrite(BLECharacteristic *rezim_charakteristika) {
      // Precteme surove bajty, mel by to  byt jen jeden bajt 0-255
      uint8_t *bajty = rezim_charakteristika->getData();
      Serial.printf("NOVA DATA, REZIM: %d, 0x%X\r\n", *bajty, *bajty);
      // Podle hodnoty bajtu nastavim promennou rezimLED
      // Pozastavime ulohu s blikanim
      rezimLED = *bajty;
      vTaskSuspend(ulohaBlikani);

      // Pokud je rezim 0, zhasneme LED
      if (rezimLED == 0) {
        stavLED = false;
        Serial.println("Vypinam LED");
        analogWrite(PIN_VYKONNA_LED, 0);
      }

      // Pokud je rezim 1, rozsvitime LED
      else if (rezimLED == 1) {
        stavLED = true;
        Serial.println("Zapinam LED");
        analogWrite(PIN_VYKONNA_LED, jasLED);
      }

      // Pokud je rezim vetsi nez 1,
      // spustime ulohu blikani s prodlevou hdonota-1 * 50 ms
      else {
        Serial.printf("Spoustim blikani s prodlevou %d ms\r\n", ((rezimLED - 1) * 50));
        vTaskResume(ulohaBlikani);
      }
    };
};

// Analogicky zpracujeme nova data z charakteristiky Jas
class bleNovaDataJas: public BLECharacteristicCallbacks {
    void onWrite(BLECharacteristic *jas_charakteristika) {
      uint8_t *bajty = jas_charakteristika->getData();
      Serial.printf("NOVA DATA, JAS: %d, 0x%X\r\n", *bajty, *bajty);
      jasLED = *bajty;
    };
};

// Hlavni funkce setup se zpracuje hned na zacatku
void setup() {
  // Nastartujeme seriovou linku na USB pro ucely ladeni
  Serial.begin(115200);
  delay(100);
  // Nastavime pin pro LED na vystup
  pinMode(PIN_VYKONNA_LED, OUTPUT);

  // Nastartujeme meric lithiove baterie
  Serial.print("Startuji cidlo baterie MAX17043... ");
  if(max17043.begin() == 0) Serial.println("OK");
  else Serial.println("CHYBA");

  // Nastavime BLE zarizeni s nazvem "Cyklolampa"
  BLEDevice::init("Cyklolampa");
  // Vytvorime BLE server
  server = BLEDevice::createServer();
  // Pokud se na serveru neco stane, zavola se trida priUdalostiServeru
  server->setCallbacks(new priUdalostiServeru());

  // Zaregistrujeme BLE sluzbu Svetlo
  svetlo_sluzba = server->createService(SVETLO_SLUZBA);

  // Zaregistrujeme BLE charakteristiku Rezim sluzby Svetlo
  // Z charakteristiky muzeme cist a zapisovat do ni
  rezim_charakteristika = svetlo_sluzba->createCharacteristic(
                            REZIM_CHARAKTERISTIKA,
                            BLECharacteristic::PROPERTY_READ   |
                            BLECharacteristic::PROPERTY_WRITE
                          );
  // Pri udalosti charakterisrtiky zavolame tridu bleNovaDataRezim
  rezim_charakteristika->setCallbacks(new bleNovaDataRezim);

  // Analogicky zaregistrujeme charakteristiku Jas
  jas_charakteristika = svetlo_sluzba->createCharacteristic(
                          JAS_CHARAKTERISTIKA,
                          BLECharacteristic::PROPERTY_READ   |
                          BLECharacteristic::PROPERTY_WRITE
                        );
  jas_charakteristika->setCallbacks(new bleNovaDataJas);
  // Spustime sluzbu Svetlo
  svetlo_sluzba->start();

  // Analogicky zaregistrujeme BLE sluzbu a charakterisrtiku se stavem baterie
  // Lisi se v tom, ze ma priznak NOTIFY a muze posilat notifikace
  baterie_sluzba = server->createService(BATERIE_SLUZBA);
  baterie_charakteristika = baterie_sluzba->createCharacteristic(
                              BATERIE_CHARAKTERISTIKA,
                              BLECharacteristic::PROPERTY_READ   |
                              BLECharacteristic::PROPERTY_NOTIFY
                            );
  // Tady druhe strane rikame, ze muze pracovat s notifikacemi
  baterie_charakteristika->addDescriptor(new BLE2902());
  baterie_sluzba->start();

  // Nastavime vychozi hodnoty jednobajtovych charakteristik
  rezim_charakteristika->setValue((uint8_t*)&rezimLED, 1);
  jas_charakteristika->setValue((uint8_t*)&jasLED, 1);
  baterie_charakteristika->setValue((uint8_t*)&baterieStav, 1);

  // Nakonfigurujeme a spustime advertising,
  // tedy hulakani do prostoru, kdo jsme a co umime
  BLEAdvertising *oznamovani = BLEDevice::getAdvertising();
  oznamovani->addServiceUUID(SVETLO_SLUZBA);
  oznamovani->setScanResponse(false);
  oznamovani->setMinPreferred(0);
  BLEDevice::startAdvertising();

  // Vytvorime FreeRTOS ulohu, ktera spusti funkci loopBlikani
  // Uloha bude mit k dispozici 1000B RAM a velmi vysokou prioritu
  // https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-reference/system/freertos.html#_CPPv411xTaskCreate14TaskFunction_tPCKcK8uint32_tPCv11UBaseType_tPC12TaskHandle_t
  xTaskCreate(loopBlikani, "BLIKANI", 1000, NULL, configMAX_PRIORITIES - 1, &ulohaBlikani);
  // Pokud je rezim LED mensi nez 2 (vypnuto/plny svit), ulohu pozastavime, protoze neblikame
  if (rezimLED < 2) vTaskSuspend(ulohaBlikani);

  // Je-li vychozi rezim roven 1,
  // rozsvitime LED
  if (rezimLED == 1) {
    stavLED = true;
    analogWrite(PIN_VYKONNA_LED, jasLED);
  }

  // Vytvorime druhou FreeRTOS ulohu, ktera nam tentokrat spusti funkci loopBaterie
  // Uloha ma 4000B RAM, protoze bude pracovat s BLE charakteristikami a cidlem baterie
  // Uloha ma velmi nizkou prioritu
  xTaskCreate(loopBaterie, "BATERIE", 4000, NULL, 1, &ulohaBaterie);
  // A hned ulohu pozastavime, dokud totiz neni pripojeny klient, nepotrtebujeme ji
  vTaskSuspend(ulohaBaterie);

  // Hotovo a cekame na spojeni
  // Podle vychoziho stavu promenne rezimLED lampa bud sviti, je zhasnuta, nebo blika
  Serial.println("Cekam na spojeni...");
}

// Smycka loop je povinna, ale je v nasem priapde prazdna
// veskera cyklicka logika se toti odehrava v uxlohach FreeROS
void loop() {
  ;
}

// Funkce s nekonecnou smyckou pro zasilani notifikaci se stavem baterie
// Zivotni cyklus funkce ridi FreeRTOS a jeho spravce uloh
// Pokud pzoastavime ulohu, pozastavi se i beh smycky
void loopBaterie(void *parametry) {
  while (true) {
    float baterieNapeti = max17043.readVoltage() / 100.0f;
    baterieStav = (uint8_t)max17043.readPercentage();
    Serial.printf("Napeti baterie: %.2f V, nabiti baterie: %d %%\r\n", baterieNapeti, baterieStav);
    Serial.println("Posilam BLE notifikaci se stavem baterie");
    baterie_charakteristika->setValue((uint8_t*)&baterieStav, 1);
    baterie_charakteristika->notify(true);
    vTaskDelay(pdMS_TO_TICKS(baterieProdlevaAktualizaceMs));
  }
}

// Funkce s nekonecnou smyckou pro cyklicke spinani LED
// I tuto funkci ridi FreeRTOS, a tak ji muzeme pozastavit
// a znovu nastartovat, jka se nam to hodi
void loopBlikani(void *parametry) {
  while (true) {
    if (stavLED) analogWrite(PIN_VYKONNA_LED, jasLED);
    else analogWrite(PIN_VYKONNA_LED, 0);
    stavLED = !stavLED;
    vTaskDelay(pdMS_TO_TICKS((rezimLED - 1) * 50));
  }
}

Adblock test (Why?)


Programování elektroniky: Vyrobíme blikačku s Bluetooth pro pořádné cyklogeeky - Živě.cz
Read More

Sunday, September 4, 2022

KOMENTÁŘ: Zvykejme si. Zdražení playstationů je jen začátek - iDNES.cz

Hraní videoher stálo vždy daleko mimo základní lidské potřeby a specificky herní hardware se v podstatě dá považovat za luxusní zboží. Vůbec se tedy nelze divit tomu, že dobré herní počítače stojí klidně i vyšší desítky tisíc a stejně tak levná nebude ani většinová sbírka herních konzolí. No a pokud si přičteme cenu všech těch her, které za léta pěstování tohoto koníčku nakoupíme, mnozí z nás se mohou klidně dostat i na šesticiferné částky.

Adblock test (Why?)


KOMENTÁŘ: Zvykejme si. Zdražení playstationů je jen začátek - iDNES.cz
Read More

Metro Awakening zve do tunelů moskevského metra ve virtuální realitě - INDIAN - INDIAN

Abychom vám mohli nabídnout co nejlepší zážitek z našich stránek, používáme ty nejmodernější technologie. Bez JAVASCRIPTU tyto stránky nem...