Olen loppusyksyn 2021 aikana kehitellyt uutta webissä toimivaa softaa sukellusten suunnitteluun, joka siis toimii webbiselaimella, ja sillä voi mm:
- laskea MOD:in
- suunnitella seoskaasujen täyttöjä eri menetelmillä
- laskea sukellussuunnitelman käyttäen Buhlmann algoritmia (sama jolla Perdix toimii)
Omana päämääränä oli lähinnä opetella kunnolla koodaamaan Javascript-kielellä, ja siinä sivussa päivittää osaamista HTML5:n ja CSS:n koodaamisessa myös. Olen viimeiset 40 vuotta käyttänyt monia ohjelmointikieliä, mutta Javascript on jäänyt sivuosaan ja nyt näyttää että sen suosio vain kasvaa eli ehkä tämäkin pitää nyt opetella kunnolla. Alunperinhän Javascriptin kehitti Netscapella Brendan Eich vain muutamassa päivässä ja se oli tarkoitettu tekemään webbisivusta dynaamisempia. Pitkään monet pitivät sitä roskakielenä, jonka opettelussa ei ole mitään mieltä, eikä sitä voinut edes ajaa muuta kuin joissakin webbiselaimissa. Nyt kieli on kehittynyt ja sen käyttö laajentunut huimasti ja sillä voi tehdä jo paljon asioita, kuten koodata graafisen softan, jolla voi suunnitella sukelluksia.
- Tällä sivulla on upotettuna softaan kuuluvia lomakkeita, jotka ovat täysin toimivia, tulosten oikeellisuutta en voi taata.
- Koko softa pyrii täällä palvelimella sivulla https://scalc.ianleiman.com/
- Lähdekoodi löytyy githubista: https://github.com/eianlei/scalc
- Ja githubista voi myös käyttää ohjelmaa suoraan: https://eianlei.github.io/scalc/index.html
Softa on kehityksen alla eikä vielä mitenkään valmis eikä kunnolla testattu vielä. Käyttöliittymä toistaiseksi vain englanniksi.
Seuraavassa kuvausta softan käytöstä ja sulautettuna tällä sivulla toimivat laskentalomakkeet.
MOD laskenta
Seuraava lomake laskee MOD:in eli maksimikäyttösyvyyden kaasulle kun lomakkeeseen syöttää happipitoisuuden ja hapen sallitun osapaineen (ppO2). Happipitoisuuden voi syöttää numerona tai säätää liukusäätimellä. Pudotusvalikosta voi valita jonkun standardikaasun.
Gas Blender eli seoskaasun valmistus
Seuraavalla lomakkeella voi laskea miten sekoitetaan haluttu nitroksi- tai trimiksi-kaasu kun pohjalla on jotain vanhaa kaasua. Lomake tuottaa ohjeet viidelle eli valmistusmenetelmälle, joita ovat:
- osapainetäyttö, helium ensin, sitten happi, toppaus ilmalla
- CFM eli jatkuvan virtauksen täyttö nitroksilla tai trimiksillä
- toppaus nitroksilla tai ilmalla, jolloin lomake laskee mikä seos tästä syntyisi
- osapainetäyttö heliumilla ja toppaus nitroksilla
Laskentaan voi valita kolme eri algoritmia:
- Ideaalikaasulakia käyttäen vakiolämpötilassa. Tällaisen laskelman voi tehdä paperillakin, mutta tulos on epätarkka.
- Van der Waalsin yhtälöä käyttäen, kaasu 20 asteen lämmössä. Tulos on tarkempi, eikä tällaista laskua enää käsityönä ns. ”normaali” ihminen tee. Silti tulos on epätarkka koska kaasun lämpeminen vaikuttaa havaittuun paineeseen todella paljon.
- Van der Waalsin yhtälöä käyttäen, kaasun lämpötila eri vaihessa konfiguroitavissa. Tällä saisi jo varsin tarkkoja tuloksia, jos vain tietäisi tankissa olevan kaasun todellisen lämpötilan eri vaiheissa.
Lisäksi lomake laskee täytön kustannukset, ja varastosäiliöiden kulutukset, kaasujen täyttöajat ja virtausnopeudet.
Dive Planner, eli sukellussuunnitelman laskenta
Seuraava lomake laskee OC-sukeltajalle sukelluksen dekosuunnitelman käyttäen Buhlmannin ZHL-16C algoritmia. Samalla algoritmilla toimii Shearwater Perdix ja moni muu. Lomakkeelle syötetään pohjan syvyys ja pohja-aika, sekä gradient-faktorit. Lisäksi voi konfiguroida selkäkaasun ja kaksi dekokaasua. Lomake tuottaa sukelluksen profiilin kaasunvaihtoineen, joka näytetään sekä graafisena ja tekstinä. Lisäksi lasketaan kaasun kulutus. Lisäksi voi tarkastella taulukon muodossa Buhlmann dekomallin tarkempia datoja.
Ohjelmassa on vielä pari bugia, joiden vuoksi dekoja tulee paljon enemmän kuin olisi tarkoitus. Eli tulos on liian konservatiivinen. Tämän korjaan vielä joku päivä kunhan kerkeän.