コグノスケ


link 未来から過去へ表示  link 過去から未来へ表示(*)

link もっと前
2021年12月24日 >>> 2022年1月23日
link もっと後

2021年12月24日

サンタがマッハ2で街にやってくる(2021年)

目次: サンタ

飛行機の位置をリアルタイムに表示するFlightradar24というサービス(サイトへのリンク)があります。飛行機やヘリコプターが発するADS-Bという信号を、世界中の有志が受信して、Flightradar24のサーバーに送ることで実現しているそうです。へえ〜。

仕組みはさておいて、このサービスではクリスマス・イブの日にはサンタが出現する毎年恒例のお約束演出があります。夜にサンタの飛んでいる様をボーっと眺めていました。

マレーシア上空をインド方面に飛んでいましたが、どうも移動速度が速いような気がしてなりません。表示上は40ノット(時速74.8km/h)となっています。しかしマレーシアをあっさりと横断して、インド洋に抜けており、そんなゆっくり飛んでいるように見えません。

サンタの対地速度

サイトの速度表示は無視して、2地点間の距離で速度を測ってみました。


20:27:14時点の位置(緯度9.99903度、経度93.3008度)


20:27:41時点の位置(緯度10.1382度、経度93.2107度)

緯度、経度から距離を出すときは、地球の形状(赤道方向がやや長い、楕円形)を考慮したりで割と面倒らしいんですが、国土地理院のページを使うと一発で計算してくれて超便利です(サイトへのリンク)。


緯度、経度から距離と方位角を計算(国土地理院のサイト)

2地点間の距離は約19.1kmで、時間差は27秒なので、対地速度は約2,546km/hです。地上で言うところのマッハ2くらい(ただし、上空34,000ftsだとマッハ数はもっと高く出る)です。旅客ジェット機は対地速度800km/hくらい(マッハ 〜0.8程度)なので、ジェット機の2〜3倍速です。

戦闘機の巡航速度がマッハ1くらいで、アフターバーナーでマッハ2超えるくらいらしいので、サンタさんめっちゃ速いやん……。戦闘機とやりあう気かよ??

編集者:すずき(2024/01/04 03:18)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



2021年12月26日

DUNGEON ENCOUNTERSクリア

目次: ゲーム

ダンジョンエンカウンターズ、やっと最後まで行きました。謎解きはまじめにやらず、攻略サイトを見てしまいました。難しいというか……正解を見ても「無茶言うなよ」って感じの問題です。攻略サイト作っている人たちはどうやって解いたんでしょうね……?

ラスボス1

地下90階にいるラスボスを倒して1回目のスタッフロールを拝むのはそんなに難しくありません。とはいえ、強いのは確かです。特に2回目の戦闘(パノプティコアA, B, C, D)は、何も考えずに突っ込むとパーティーが蒸発します。ラスボスを無視して、地下99階までの謎解きアイテムとアビリティを全部拾ってから改めて挑むと比較的楽だと思います。アビリティ「テレポ」と「ノーエンカウント」を拾うと回収が捗ります。

  • 武器: アドレスブレイド(単体物理、アドレス依存ダメージ)
  • 武器: ジャベリン(全体物理375,000)
  • 武器: トウルヌソル(単体物理100,000)
  • アビリティ: 防御系全部、HP満タン攻撃力倍、精神統一(飛行に剣や槍が当たる)

謎解きを済ませると、この辺の超強力な武器が全て揃うはずです。地下90階以降の敵はアホみたいに攻撃力が高く、一撃で防御値がなくなることが多いため、防具を1〜2段階強化してもほぼ意味がありません。スピードの落ちる重装備(ヘルム、鎧)より、スピード重視で軽装備(服、帽子)+ブーツにして、相手より早く殴って倒すようにすると良いでしょう。

  • ブーツ: コスト内で速度が一番上がるもの
  • 防具: コスト内で速度の落ちない軽装備、ただし裸は即死するのでNG

パノプティコアは1体だけ残すと「全ての力」という超強烈な攻撃をしてきて、メンバーが一瞬で蒸発するので、

  • HPが低いAを速攻で潰す
  • スピードの速いDをアドレスブレイドで殴りまくって潰す
  • 残ったノロマのBとC 2体をアドレスブレイドで殴り、HPはトウルヌソルで削る
  • 最後にジャベリンで2体同時に倒す

こうすると比較的楽なはずです。

ラスボス2

最下層の地下99階にいるバトルFF「無限」というクッソ強い敵を倒すと2回目のエンディングが拝めます。拾える武器だけでもうまくやれば倒せる気がするんですけど、私はやり方がうまくないのか、火力不足で勝てませんでした。

地下98階辺りの、バトルF7を集中的に選んで、ティアマットLv.99が落とすアドレスブレイドを2本を拾うまで頑張ります。出てくる敵としては、

ティアマットLv.99
メインターゲットです。スピード80で比較的行動が早いうえ、ほぼ確実に全体物理攻撃(咆哮: 割合ダメージなので雑魚、なぎ倒す: 超強烈で物理防御が一撃でなくなる)をしてきて超危険です。幽霊船の番が来ないなら、こいつを集中攻撃で潰しましょう。
幽霊船Lv.99
スピード85、飛行状態、高確率で全体物理攻撃(砲撃: 強烈な物理攻撃、恐怖: 確率で物理防御破壊)をしてくる危険な相手です。ですが幸いなことにHP 1なので、「精神統一」アビリティ、全員を「物理武器+素手」にしておけば、素手パンチをお見舞いして確実に倒せます。ホクガクの刀攻撃も有効です。
ウィールワーターLv.98
単体、全体魔法攻撃を使ってきますが、全体攻撃は半々くらいですかね。スピード65と遅く、攻撃頻度は低いです。先行で魔法攻撃を食らって魔法防御がなくなったとしても、次の攻撃を食らう前に、ジャベリンとアドレスブレイドの順が回ってきて確実になぎ倒せるはずです。

バトルF8の方がティアマットが確実に出ますが、一気に5体出てきて強力な全体物理攻撃を連発され、パーティーが一瞬で全滅する可能性が高く、面倒な相手です。バトルF7を数こなす方が安定すると思います。

アドレスブレイドを揃えたら、地下99階のなるべく南東のマスに「無限」を出現させます。装備はHP満タン攻撃力倍+スピード重視装備+アドレスブレイドで。アドレスブレイド持ちのキャラはとにかく殴り、防御が完全に剥がれたキャラやアドレスブレイドを持っていないキャラは防御回復を連打、これでたぶん倒せるはずです。

編集者:すずき(2023/09/24 13:06)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



2021年12月27日

DUNGEON ENCOUNTERS完全踏破

目次: ゲーム

ダンジョンエンカウンターズ、全フロアを踏破しました。基本的には強敵を避けてウロウロ歩けば踏破できますし、アビリティ「ノーエンカウント」取得後は、落とし穴以外に恐れるものは存在せず、ほぼ塗り絵ゲームになります。ただし、地下92階だけはかなり辛いです……。

魔の地下92階

おそらく全員が「最も踏破に苦労する階は?」という質問に対して「地下92階」と答えるでしょう。それくらい面倒くさい作りです。地下92階は全て飛び地になっていて、一部は地下93階から02(上り階段)で行けますが、残りはほとんど目印がありません。マップの背景(宇宙みたいな赤と青のモヤモヤ)から、飛び地の座標に当たりを付け、アビリティ「仮想階段上り」で上る必要があります。

地下92階から「仮想階段下り」で地下93階に戻ると、いきなり落とし穴に落ちることがありますが、地下94階で必ず受け止めてくれるので心配いりません。

しかし落ちた先の地下94階や、地下92階の小島でミスって落とし穴を踏むと「奈落の底に落ちてパーティーが全員行方不明」になることがあります。被害を最小限にするためにも、地下92階は1人パーティーで攻略した方が良いと思います。入り口となる地下93階は常に一本道です。落とし穴回避のためアビリティ「ムーブ」「ナイトムーブ」、エンカウントマスも回避できないため「ノーエンカウント」もほぼ必須でしょう。

全部巡るのは非常に大変でしたが、下記の表で座標を全部メモできているはずです。

島の種類 島の広さ
02階段上り 24116
02階段上り 147220
02階段上り 1513 4
02階段上り 213416
02階段上り 338716
02階段上り 362012
02階段上り 473416
02階段上り 498316
02階段上り 611020
02階段上り 724316
02階段上り 738316
02階段上り 741520
02階段上り 924116
02階段上り 9488 9
Event 3Fの島496025
Event FDの島8714 9
仮想階段上り 55420
仮想階段上り 973 4
仮想階段上り 108312
仮想階段上り 101916
仮想階段上り 145416
仮想階段上り 163012
仮想階段上り 178120
仮想階段上り 182612
仮想階段上り 193912
仮想階段上り 196312
仮想階段上り 244516
仮想階段上り 252020
仮想階段上り 275812
仮想階段上り 277520
仮想階段上り 29 615
仮想階段上り 302916
仮想階段上り 376512
仮想階段上り 3942 9
仮想階段上り 405020
仮想階段上り 419915
仮想階段上り 417920
仮想階段上り 5237 4
仮想階段上り 552020
仮想階段上り 584816
仮想階段上り 619416
仮想階段上り 63 012
仮想階段上り 671920
仮想階段上り 6832 6
仮想階段上り 687716
仮想階段上り 7092 9
仮想階段上り 716516
仮想階段上り 7750 9
仮想階段上り 798016
仮想階段上り 802720
仮想階段上り 8339 6
仮想階段上り 875920
仮想階段上り 896816
仮想階段上り 952520

サイトだと見づらいと思うので、Googleスプレッドシートにも置きました(Googleスプレッドシートへのリンク)。基本的には地下93階の「曲がり角」で仮想階段を使う座標にしたはずです。間違ってたらゴメンなさい&コメントなどで教えてくれると嬉しいです。

攻略の途中で「この地下92階は山勘でやってもクリア不可能じゃね?」と感じてメモを始めたため、踏破済みと未踏破が中途半端に混ざった状態からメモを始めることになりました。おかげで島の座標を全部列挙したかどうかの検証がめちゃくちゃ面倒くさかったです……。最初からメモすれば良かったよー。

真のラスボスは諦めた

「無限」より強いと思われるのが、バトルFDの「モルモット教授」という敵です。出会える確率が非常に低い、防御とHPが9,999,999の最強タフネス、驚異のスピード130、数ターン耐えるのが限界の超強力な攻撃、と嫌な点の塊のような敵です。

幸い?なことにアイテムを何もドロップしませんから、倒す必要がありません。無視してOKです。ただただやり込みプレイを阻むためだけに用意された、嫌がらせのような敵です。

私もアドレスブレイド3本とスピード重視装備で挑んでみましたけど、防御すら削りきれないうちに瞬殺されて心が折れました……。勝てる気がしません。もういいわ。

編集者:すずき(2023/09/24 13:06)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする




2022年1月3日

北海道から東京へ

オミクロン株が若干不穏な気配ですが、今年は久しぶりに北海道に帰省しました。でも次の帰省はいつになるやら……。COVID-19の動向次第ですね。

今までは帰省時期に飛行機に乗るとほぼ必ずインフルエンザをもらっていたのですが、今年は風邪一つ引きませんでした。道行く人が全員マスクを着ける、というのは本当に伝染病予防に効くんですね。マスクの効果を疑っていたわけではないですけど、思った以上の効果が出ていて驚いています。

編集者:すずき(2022/02/08 18:43)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



2022年1月4日

Windows電卓

Windows電卓は浮動小数点数を扱えます。10^9999から10^-9999という非常に大きい数から、小さい数まで扱えます。

単精度浮動小数点数の最小値は10^-38(正規化数)もしくは10^-45程度、倍精度浮動小数点数でも最小値は10^-308(正規化数)もしくは10^-324(非正規化数)程度ですから、IEEE 754準拠の浮動小数点数型ではなさそうです。


Windows電卓で1 - 1.e-204 - 1を計算した結果

そのためか少し変わった桁落ちの挙動を示します。同じ程度の大きさの数同士の演算(例: 1.e-9999 + 1.e-9999 = 2.e-9999)であれば桁落ちしませんが、大きい数と小さい数を演算(例: 1 - 1.e-204 - 1 = -9.807971461541689e-149)すると激しく桁落ちします。

Windows電卓はオープンソース

実はWindows 10の電卓のソースコードはGitHubに公開されていてGitHubのプロジェクトへのリンク)、誰でも見ることができます。MITライセンスで、2019年に公開されたそうです。Windowsの標準アプリがオープンソースになっているなんて、調べるまで知りませんでした。

利用方法は簡単でGit cloneしたあと、Visual Studioでsrcディレクトリの下にあるCalculator.slnを開くだけです。私のノートPCが非力なせいか、ビルドは非常に遅いですね……。


デバッグの設定

デバッグする際は、設定を「マネージド+ネイティブ」にしておかないと、ネイティブコードを実行している部分のデバッグが全くできず、ブレークポイントなどが無視されるので注意が必要です。

桁落ちしている箇所

コードのありかとデバッグ方法がわかったところで、Windows電卓のコードを調べます。桁落ちはどこで発生しているでしょうか?

先ほど示した1 - 1.e-204 - 1という演算の場合、CalcManagerプロジェクトのRatPack/rat.cppのaddrat() 関数にてtrimit() を呼んでいる箇所で桁落ちが発生します。

数値表現と加算の実装

//calculator/src/CalcManager/Ratpack/ratpak.h

typedef uint32_t MANTTYPE;

...

//-----------------------------------------------------------------------------
//
//  NUMBER type is a representation of a generic sized generic radix number
//
//-----------------------------------------------------------------------------

#pragma warning(push)
#pragma warning(disable : 4200) // nonstandard extension used : zero-sized array in struct/union
typedef struct _number
{
    int32_t sign;   // The sign of the mantissa, +1, or -1
    int32_t cdigit; // The number of digits, or what passes for digits in the
                    // radix being used.
    int32_t exp;    // The offset of digits from the radix point
                    // (decimal point in radix 10)
    MANTTYPE mant[];
    // This is actually allocated as a continuation of the
    // NUMBER structure.
} NUMBER, *PNUMBER, **PPNUMBER;
#pragma warning(pop)

//-----------------------------------------------------------------------------
//
//  RAT type is a representation radix  on 2 NUMBER types.
//  pp/pq, where pp and pq are pointers to integral NUMBER types.
//
//-----------------------------------------------------------------------------

typedef struct _rat
{
    PNUMBER pp;
    PNUMBER pq;
} RAT, *PRAT;


//calculator/src/CalcManager/Ratpack/rat.cpp

void addrat(_Inout_ PRAT* pa, _In_ PRAT b, int32_t precision)
{
    PNUMBER bot = nullptr;

    if (equnum((*pa)->pq, b->pq))
    {
        // Very special case, q's match.,
        // make sure signs are involved in the calculation
        // we have to do this since the optimization here is only
        // working with the top half of the rationals.
        (*pa)->pp->sign *= (*pa)->pq->sign;
        (*pa)->pq->sign = 1;
        b->pp->sign *= b->pq->sign;
        b->pq->sign = 1;
        addnum(&((*pa)->pp), b->pp, BASEX);
    }
    else
    {
        // Usual case q's aren't the same.
        //★bを変更できないので見づらい書き方になっているが、通分して加算している
        //★pa = pa->pp / pa->pq = A / B, b = b->pp / b->pq = C / Dとおくと
        DUPNUM(bot, (*pa)->pq);          //★bot = B
        mulnumx(&bot, b->pq);            //★bot = BD
        mulnumx(&((*pa)->pp), b->pq);    //★pa = AD / B
        mulnumx(&((*pa)->pq), b->pp);    //★pa = AD / BC
        addnum(&((*pa)->pp), (*pa)->pq, BASEX);    //★pa = (AD + BC) / BC
        destroynum((*pa)->pq);
        (*pa)->pq = bot;                 //★pa = (AD + BC) / BD
        trimit(pa, precision);    //★★この呼び出しで桁落ち★★

        // Get rid of negative zeros here.
        (*pa)->pp->sign *= (*pa)->pq->sign;
        (*pa)->pq->sign = 1;
    }

#ifdef ADDGCD
    gcdrat(pa);
#endif
}

Windows電卓は内部ではRAT型(struct rat型)で数値を保持しています。RATは分子ppと分母pqの2つのNUMBER型で構成された有理数を表す型です。

有理数の加算は小学校で習った通りで、通分して足します。大きな数+小さな数で通分すると、非常に仮数部(構造体のmant、mantissa: 仮数の意味)が長くなってしまいます。例えば1 + 1.e-9999だと仮数部が9511要素もあるint32_tの配列になります。trimit() は一定以上の仮数を切り落とす役目を果たします。


加算の桁落ちを削除したWindows電卓で1 - 1.e-204 - 1を計算した結果

桁落ちを防止したければtrimit() の呼び出しを削れば良いです。しかし不思議なことに完全にtrimit() を削除するとWindows電卓が起動しなくなります。

桁落ちは必須

桁落ちを防止すると起動しなくなる理由は、Windows電卓はなぜか起動時にCCalcEngineのコンストラクタにて10^100を計算しているからです。

Windows電卓はx^yをx^y = exp(y * ln(x)) で求めているので、logの実装を見ましょう。ソースコードはexp.cppの _lograt() です。見たところ、十分に小さい項までテイラー展開を続けるアルゴリズムのようです。

logの実装

//calculator/src/CalcManager/Ratpack/exp.cpp

void _lograt(PRAT* px, int32_t precision)
{
    CREATETAYLOR();

    createrat(thisterm);

    // sub one from x
    (*px)->pq->sign *= -1;
    addnum(&((*px)->pp), (*px)->pq, BASEX);
    (*px)->pq->sign *= -1;

    DUPRAT(pret, *px);
    DUPRAT(thisterm, *px);

    n2 = i32tonum(1L, BASEX);
    (*px)->pp->sign *= -1;

    do
    {
        NEXTTERM(*px, MULNUM(n2) INC(n2) DIVNUM(n2), precision);
        TRIMTOP(*px, precision);
    } while (!SMALL_ENOUGH_RAT(thisterm, precision));

    DESTROYTAYLOR();
}

桁落ちを一切なくすとループが終わらなくなってしまいます。変数thistermが0にならないとループを抜けないところを見ると、ループ条件のSMALL_ENOUGH_RATがバグっているような気もするんですが……、これ以上の深追いはやめておきます。

他にも √ の計算も非常に遅くなります。パフォーマンスと実用性のバランスからtrimit() は必須といえるでしょう。

編集者:すずき(2022/01/06 03:58)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



2022年1月9日

高速道路の合流と、自動運転の微妙な関係、その解決策

結論から先に書いておくと、高速道路合流の速度問題が解決されていたので、そのメモです。

問題の説明の記事は、プロパイロット2.0の実現で浮かび上がった、高速道路の制限速度問題【岩貞るみこの人道車医】 - レスポンス(Response.jp)、などいろいろ出ているので、詳細はお任せするとして。

簡単に言うと、SAEレベル3以上、つまり機械が人の代わりに運転するタイプの自動運転では、法規上の最高速度に問題があります。普段の道路でも最高速度60km/hで走っている人はあまりいなくて、それも問題なんですけど、そこはさておき。当初、問題として取り上げられていたのが、高速道路への合流でした。

最高速度は道路交通法施行令という法律で定められていて、高速道路の加速車線の制限速度は一般道同様に60km/hでした。ご存じのとおり、高速道路の本線は100km/hなので、法律を守って運転すると、次のようになります。

  • 加速車線60km/h
  • 本線合流(★問題点1: 後ろの車と速度差がありすぎて危ない)
  • 本線100km/hに加速(★問題点2: 急加速すぎる)

追突の危険性があるのと、本線で急加速せざるを得ない、ギクシャクした運転になってしまいます。

これは昔から存在していた法律上のおかしな点なんですが、人間が運転する場合はあえて法律(=加速度車線の最高速度制限)を無視し、取り締まり側も厳密なことは言わず見逃す、というゆるい運用で問題を避けてきました。しかし自動運転車まで法律を無視する?それは本当に正しいのか??と問題が再燃したわけです。

法律の方がおかしい

引き続き運用でごまかすのも辛いでしょうし、この問題はどうやって直すのかな?と思っていたんですが、どうやら法律の方を直したみたいです。

道路交通法施行令(令和2年4月1日から施行)
第四章の二 高速自動車国道等における自動車の交通方法等の特例

(最高速度)
第二十七条 最高速度のうち、自動車が高速自動車国道の本線車道又はこれに接する加速車線若しくは減速車線を通行する場合の最高速度は、次の各号に掲げる自動車の区分に従い、それぞれ当該各号に定めるとおりとする。
 一 次に掲げる自動車 百キロメートル毎時
   ★★↑60km/hから100km/hに変わった★★
  イ 大型自動車(三輪のもの並びに牽引するための構造及び装置を有し、かつ、牽引されるための構造及び装置を有する車両を牽引するものを除く。)のうち専ら人を運搬する構造のもの
  ロ 中型自動車(三輪のもの並びに牽引するための構造及び装置を有し、かつ、牽引されるための構造及び装置を有する車両を牽引するものを除く。)のうち、専ら人を運搬する構造のもの又は車両総重量が八千キログラム未満、最大積載重量が五千キログラム未満及び乗車定員が十人以下のもの
  ハ 準中型自動車(三輪のもの並びに牽引するための構造及び装置を有し、かつ、牽引されるための構造及び装置を有する車両を牽引するものを除く。)
  ニ 普通自動車(三輪のもの並びに牽引するための構造及び装置を有し、かつ、牽引されるための構造及び装置を有する車両を牽引するものを除く。)
  ホ 大型自動二輪車
  ヘ 普通自動二輪車
  二 前号イからヘまでに掲げる自動車以外の自動車 八十キロメートル毎時

自動運転の実現に向けて、継続して警察庁にて話し合いが持たれている(自動運転・自動走行 各種有識者会議等 - 警察庁)ので、今後も法律改正されていくことでしょう。

編集者:すずき(2022/01/14 12:12)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



2022年1月10日

バッテリーさんさようなら

目次:

正月寒いなか放置しすぎたせいか車のバッテリーが死にました。テスターで電圧測ると2.3Vで室内灯すら点きません。またバッテリー交換コースかなー。

メモにあるだけでも2007年11月17日2013年3月20日2016年7月24日2020年7月28日にバッテリー交換しています。次で5回目です。

車に乗る頻度が激減した理由は明確です。東京はあらゆる場所が「車で来るな!」とおっしゃるからです。それでも車で行くと

  • 入れない
  • すごい待つ
  • めちゃ高い(駐車代が)

のどれかです。行く気がしませんのよ〜……。

編集者:すずき(2023/09/30 14:45)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



2022年1月11日

デスクトップPCのATX電源を交換

デスクトップPCの部品のいくつかは昔のPCから引き継いで使っています。なかでもATX電源は交換を怠りがちですが、いざ壊れると起動しなくなるだけでなく、巻き添えでCPUやマザーボードまで故障する可能性もあって故障が怖い部品です。トラブルに遭う前に、予防的に交換します。

買ったのはCoolerMaster V650 GOLD V2(MPY-650V-AFBAG-JP, 650W)です。ヨドバシで14,000円くらいでした。ちらっと他店の値段を見たら11,000円くらいでした。ヨドバシはPCパーツがやや高いのかも?

今まではCoolerMaster SilentPro M600(RS-600-AMBA-D3, 600W)を使っていました。Core2 Quadマシンの時代(2009年〜)から使っていましたから、ほぼ付けっぱなしで13年使ったようです。CoolerMasterの電源は優秀ですね。これからも応援してます。

編集者:すずき(2022/01/12 17:28)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



2022年1月14日

クリーンルームの火災

2020年10月の旭化成の半導体工場、火災事故調査報告書が出ていた報告書へのリンク)ので読んでみました。人に犠牲がなかったのは良かったなと思いますが、報告内容はなかなか衝撃的でした。

チタン除去装置部材の燃焼試験
各状況から火元の可能性が高い、とされた装置に対し、燃焼試験を行ったそうです。仕様上、筐体カバーは「難燃性ポリプロピレン」のはずが、難燃剤が検出されず、可燃性でした。仕様がウソなんて、そんなのありかよ……?という項目でした。全装置に燃焼試験なんてできませんし、もはや何を信じたら良いんだろう。
延焼の原因推定(クリーンルーム部材)
クリーンルームを構成する多くのプラ部材(パーテーション、HEPAフィルタなど)、半導体原料(アルコールなど)が可燃性で、延焼の原因と推定されています。
「装置一台の炎上から全棟延焼なんて、そんな設計ダメ!」
と言うのは簡単ですが、塩ビすら燃えていたようで、何の材質使えば良かったんだろ?って思いました。
延焼の原因推定(防火エリア)
通常火災に耐えうる家屋設計だっただろうし、防火エリアも設置されていたにも関わらず、防火エリアが耐えきれず全棟延焼ってのが衝撃的でした。

通常の部屋と違い、クリーンルームは強力なダウンフローがあるし、天井と床下で繋がってる点は特殊です。クリーンルーム火災なんてレアな事例、積み上げもなさそうです。火災まで視野に入れると、設計めっちゃ難しそうですね……。

メモ: 技術系?の話はFacebookから転記しておくことにした。

編集者:すずき(2022/04/04 17:16)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



2022年1月15日

ハチミツ入りの飴とボツリヌス菌

ハチミツ入りの飴を食べていたら、パッケージに
「はちみつを使用していますので1歳未満の乳児には食べさせないでください。」
と警告があることに気づきました。ハチミツを乳児に与えてはいけないのは、比較的有名な話ハチミツによる乳児のボツリヌス症 - 消費者庁)だと思います。飴の形に加工されていてもやはりダメなのでしょうか?

乳児ボツリヌス症の原因はハチミツに含まれるボツリヌス菌の芽胞です。ボツリヌス菌「食品衛生の窓」 - 東京都福祉保健局によると、ボツリヌス菌の芽胞は熱に強く、殺菌には120℃4分間の加熱処理が必要です。

ハチミツ入りの飴の話に戻ると、

  • ボツリヌス菌の芽胞は土壌に広く分布している(ハチミツにも入る可能性はある)
  • 市販のハチミツは120℃4分間の加熱処理をしない
  • 飴も120℃4分間の加熱処理をしない

なるほど、殺菌するタイミングがなさそうです……。

一般のご家庭でボツリヌス菌を倒せるか?

通常の鍋では、水の沸点(100℃)を超える加熱処理は不可能ですが、圧力鍋を使った場合はどうでしょう?我が家の圧力鍋、パール金属H-3551(メーカーサイトへのリンク)をみると、高圧側100kPa、低圧側60kPaとあります。


飽和水蒸気圧曲線(Wagnerの式を使用)

120℃ の飽和水蒸気圧は198.7kPaのため、大気圧+100kPa = 約200kPaとすると、沸点は120℃まで達します。したがって圧力鍋のロックピンが上がり、圧力が規定値に達したときから、4分間以上加熱することで「一般のご家庭でもボツリヌス菌の芽胞は倒せる」と思われます。やるじゃないか、圧力鍋さん。

とはいえ圧力が必ず200kPaまで達する保証はありませんし、そもそも圧力鍋は殺菌装置ではないので、過信は禁物です。加熱後はちゃんと冷蔵して早めに食べましょう。

飴は……?

圧力鍋が凄いことはわかりましたけど、飴を圧力鍋で煮込むわけにはいきませんから、やっぱりハチミツ入りの飴を乳児にあげてはいけません。

編集者:すずき(2022/01/17 01:06)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



2022年1月16日

圧力鍋の圧力設定の意味

我が家の圧力鍋は圧力切り替え式でゲージ圧(大気圧 = 0kPaとする記法)で「低圧60kPa」「高圧100kPa」となっています。なぜこの数字なんでしょう?

正直に言って設定の意味を理解していなかったんですが、昨日の日記で飽和水蒸気圧曲線(添付の写真、Wagnerの式から導出)を見ていて、設定の意味に気付きました。


飽和水蒸気圧曲線(Wagnerの式を使用)

グラフの圧力軸はゲージ圧ではなく、絶対圧です。沸点は大気圧を100kPaとして、ゲージ圧+100kPaで概算しました。

  • 通常: 100kPa → 沸点約100℃
  • 低圧: 160kPa → 沸点約110℃(実際は113℃くらいか)
  • 高圧: 200kPa → 沸点約120℃

これはもう見たままですね。10℃刻みです。とてもわかりやすいですね。ゲージ圧150〜160kPa(絶対圧250〜260kPa)の鍋もありますが、さらに上の約130℃設定(実際は127℃くらいか)を意味します。

調理器具ですから、温度は切り良く、覚えやすく、メーカーが作りやすい設定値を選んでいるはずです。当然と言えましょう。

全く理解していませんでした

こんなにわかりやすく考慮してくれているにも関わらず、当のユーザーたる俺ときたら……。全く設定の意味を理解せずに「常に高圧の一択」ですからね。メーカーの設計者は泣いてしまいますね。

メモ: 技術系の話はFacebookから転記しておくことにした。一部加筆。

編集者:すずき(2022/02/28 00:27)

コメント一覧

  • hdkさん(2022/01/17 23:59)
    圧力鍋で米を炊く時は、100kPaで炊くと米が変色するのと、加圧に時間がかかるので、60kPaにしています。毎日のことなので常に低圧一択みたいなものです :)
    以前使っていた、カワチで2079円で買った圧力鍋は、単純なおもり式で80kPa固定で、気になるほどの米の変色はなかったように思います。
  • すずきさん(2022/01/18 14:29)
    なるほど、低圧はお米を炊くときに便利なんですね。
    圧力鍋、とりあえず使ってはいるけど、全力を出せていない気がします。

    カワチといえば、大学時代に買った皿、鍋が15年以上(つくば、大阪、東京)使えていて、値段に対する耐久力の高さに驚いています……。
open/close この記事にコメントする



2022年1月17日

SPIディスプレイを動かしてみる

目次: RISC-V

昨年、秋月で買って放置していた、怪しい中華製のSPI接続ディスプレイ(MSP2807)がやっと動きました。制御用のホストとしてSiFive HiFive1を使いました。OSはZephyrというRTOSを使っています。

HiFive1ではLinuxが動かないのも理由の一つではありますが、SPIの制御だけならZephyrがちょうど良い規模感でしょう。大掛かりなアプリを動かしたければ、別のハード(HiFive1はRAMがたった16KBしかない!)とLinuxを持ってきた方が良いでしょう。


SiFive HiFive1(黒い方)とSPI接続ディスプレイMSP2807(赤い方)

写真のとおり、画面が点灯して書き換えもできた(青と緑の縞模様を描いている)ので、リセット、コマンドとデータは送れているようです。ホスト → ディスプレイの接続は合っていると思われます。

しかし、ディスプレイ側から何か読み出そうとするとALL 0になり何も読めません。ホスト ← ディスプレイの接続をどこかで間違えているのかな……??未だに理由がわからず直せないままです。

このディスプレイはILITEK ILI9341という液晶のドライバーICを使っています。ホストとの接続は何パターンか存在するのですが、

  • ドライバーICとボードの端子の接続
  • ドライバーICの設定ピン

が全く書いていないため、どのモードで動いているのか良くわかりません。イケてねえなあ。おそらく4-wireモード(SPI + コマンドかデータか示すGPIO 1つ)だと思われますが、確かめようがないです……。

メモ: 技術系の話はFacebookから転記しておくことにした。加筆。

編集者:すずき(2022/04/04 06:03)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



2022年1月22日

バッテリーなんですぐ死んでしまうん?

正月、北海道から帰ってきて車の様子を見たら、完全にバッテリーが上がっていました。気づいたのはちょっと前(2022年1月10日の日記参照)くらいです。セルモーターは微塵も動かず、そもそもリモコンキーも効きません。ドアはカギで開けました。ドアを開けても室内灯すら点きませんね……。

今まで何度となくバッテリーをダメにしてきた悲しい経験から、これはバッテリー交換コースだと確信しました。またかよー。

JAFさーん

JAFに来てもらう間、暇だったのでバッテリーの電圧を測りました。電圧は2.16Vでした。これは乾電池でしたっけ??正常な車のバッテリーは12V前後(セル電圧2V程度x6セル)であり、放電終止電圧は10V前後(セル電圧1.8V程度x6セル)です。2.16Vがいかに論外な状態であるか、おわかりいただけるかと思います。


バッテリーの電圧2.16V

バッテリーから流れる電流も測りました。電流はほぼ流れていないか、クランプメーターの検出限界以下と思われます。余談ですが、このクランプメーターはゼロ点が狂ってきたようで、何も繋がず、ゼロ点補正なしだと -0.31Aになってしまいます。直し方がわからない。


バッテリーから流れる電流はほぼゼロ

JAFさんにエンジンかけてもらった後に電流を測りました。やはり電流はほぼ流れておらず、充電されているように見えません。バッテリーが死んでいるのか、エンジン始動直後のせいか?どっちでしょうね?


エンジンを掛けた後もほぼ電流はゼロ

バッテリーの液量インジケーターは元々どうなっていたのかわからなくて、正常か異常か判別できませんでした。


バッテリーの液量インジケーター

仮に液量が正常でも、過放電でサルフェーション現象が発生して電極が死んでいる(=充電ができない=次止めたらエンジンが掛からない)でしょうから、素直にバッテリー交換に行きますか。

バッテリー交換

近所のイエローハットまで20分くらい走って、エンジンを切ってみたところ、電圧は11.8Vとなっていました。ん?充電されている?もしかしてバッテリーは生きてたのかな?


20分くらい走行後のバッテリー電圧11.8V

このまま帰ってまたバッテリーが上がったり、旅先で立ち往生されるのは困るため、潔くバッテリーを交換しました。当たり前ですが交換後は12.6Vと元気な電圧になっていました。


交換後のバッテリー電圧12.6V

バッテリーは今載っているものと全く同じものを買いました。特に変更する理由もないし。はー、こんなことで35,000円の出費は痛いな……。

エラー表示

メーターを見ると、エラーEr IUが出てました。なんじゃろ?これ??


エラーIU

Facebookで会社の皆さまに教えていただいたところ、統合ユニットの通信エラーが発生したときに記録されるエラーとのこと。ずっと出続けていて気になりますけど、普通に走れて実害もなさそうなので、しばし放っておこうと思います。

編集者:すずき(2022/04/05 11:02)

コメント一覧

  • hdkさん(2022/01/27 23:48)
    2Vはさすがに何か照明を消し忘れたか漏電でもないとなかなかなさそうな気がします... 自分でハザード消し忘れをやらかした時は4Vで警告灯がぼんやり見える程度でした。以前帰省した時に親の車のバッテリーが上がっていましたが、1か月くらい乗っていない状態で、始動チャレンジ一発目にキュルっと音はしたので、測ってはいないけど開放電圧なら11Vぐらいはありそうでしたね。
  • すずきさん(2022/01/28 10:33)
    社外品のセキュリティをつけていて、そやつが割と待機電力を食っているみたいです。前回の交換のように 2V を切って 1V になってた(2020年 7月 28日)こともありますよ……。
    写真に写ってますが 85D23L というかなり大きめのバッテリーでして、普通は1か月放置した程度ではバッテリーは上がりません。でも私の車は 1か月放っておくとエンジンが掛からなくなります。バッテリーに優しくない車です。
    次の車を買うかどうかは知りませんが、もう社外の電装品は付けません……。
  • hdkさん(2022/01/28 22:23)
    おぉ、それはバッテリーに優しくない車、いや、社外品のセキュリティ... セキュリティ用に別のバッテリーを積んで、そっちはメインキーONの間だけ充電されるみたいな仕掛けにできたら良さそうですね。
    85D23Lだと、アイドリングストップ対応のiQの純正バッテリーQ-55Rと容量が近そうです。アイドリングストップはあんまり使わないので、次は55D23Rでもいいかななんて思っているところです。
open/close この記事にコメントする



link もっと前
2021年12月24日 >>> 2022年1月23日
link もっと後

管理用メニュー

link 記事を新規作成

<2021>
<<<12>>>
---1234
567891011
12131415161718
19202122232425
262728293031-

最近のコメント5件

  • link 24年6月17日
    すずきさん (06/23 00:12)
    「ありがとうございます。バルコニーではない...」
  • link 24年6月17日
    hdkさん (06/22 22:08)
    「GPSの最初の同期を取る時は見晴らしのい...」
  • link 24年5月16日
    すずきさん (05/21 11:41)
    「あー、確かにdpkg-reconfigu...」
  • link 24年5月16日
    hdkさん (05/21 08:55)
    「システム全体のlocale設定はDebi...」
  • link 24年5月17日
    すずきさん (05/20 13:16)
    「そうですねえ、普通はStandardなの...」

最近の記事3件

  • link 24年6月27日
    すずき (06/30 15:39)
    「[何もない組み込み環境でDOOMを動かす - その4 - 自作OSの組み込み環境へ移植] 目次: RISC-V目次: 独自OS...」
  • link 22年12月13日
    すずき (06/30 15:38)
    「[独自OS - まとめリンク] 目次: 独自OS一覧が欲しくなったので作りました。自作OSの紹介その1 - 概要自作OSの紹介...」
  • link 21年6月18日
    すずき (06/29 22:28)
    「[RISC-V - まとめリンク] 目次: RISC-VSiFive社ボードの話、CoreMarkの話のまとめ。RISC-V ...」
link もっとみる

こんてんつ

open/close wiki
open/close Linux JM
open/close Java API

過去の日記

open/close 2002年
open/close 2003年
open/close 2004年
open/close 2005年
open/close 2006年
open/close 2007年
open/close 2008年
open/close 2009年
open/close 2010年
open/close 2011年
open/close 2012年
open/close 2013年
open/close 2014年
open/close 2015年
open/close 2016年
open/close 2017年
open/close 2018年
open/close 2019年
open/close 2020年
open/close 2021年
open/close 2022年
open/close 2023年
open/close 2024年
open/close 過去日記について

その他の情報

open/close アクセス統計
open/close サーバ一覧
open/close サイトの情報

合計:  counter total
本日:  counter today

link About www.katsuster.net
RDFファイル RSS 1.0

最終更新: 06/30 15:39