1 ポイント 投稿者 GN⁺ 2023-08-20 | 1件のコメント | WhatsAppで共有
  • ヨーロッパで商用操縦士資格の取得を目指し、Piper PA28 練習機に乗っていた際、狭く暑いコックピット環境を補うために安価なレシートプリンターを活用した個人プロジェクト
  • 単独操縦の航空機では、航法、無線交信、チェックリスト、操縦を一人でこなす必要があり、ニーボード(kneeboard) のスペースが不足する
  • SkyVector から取得した PDF 形式のナビゲーションログをスクリプトで解析し、飛行区間ごとのデータを抽出してレシートプリンターで印刷
  • 使われていないコックピットの A-pillar(フロントガラス支柱) の空間を、レシートサイズの印刷物を貼り付ける用途に活用し、ニーボードの混雑を緩和
  • ナビゲーションログ全体は別途携行するため、危険を増やすことなく 追加情報へのアクセス性 だけを高める補助手段

背景 — 訓練環境とコックピットの制約

  • 1960年代後半に製造された Piper PA28 (-180 バリアント) で飛行訓練を実施しており、機体が古いため、一つ二つは正常に動作しない部分がある
  • 単独操縦の運用方式で、飛行、航法、無線、チェックリスト、交信、内外の監視を一人で同時に担当
  • コックピットは狭く暑く、38C/100F の環境で振動する機体に乗って3時間飛行する状況
    • magneto の過大ドロップ、gyro は事実上無用、老朽化した fuel pump など追加の不具合も存在
  • ニーボード(kneeboard) に気象通報、管制塔の指示、航路計画の精度などを記録

ニーボードに携行する書類

  • チェックリスト(離陸前、タキシングなど段階別)
  • 広げるとどこまでも広がる 1:400 の大型航空地図
  • 気象・管制塔指示などを書き留めるメモ用紙
  • ナビゲーションログ(Nav log)
  • これらの書類は飛行段階ごとに相互に交換する必要があるため、ニーボード市場の規模が大きい

Nav logとは

  • ある waypoint から次の waypoint までの 地点間ナビゲーション指示 を記した紙
  • 航法に必要な情報に加え、別の値を計算するために書き留めた情報も多数含む
  • 実際には全ての数値のうち一部しか確認せず、wind correction angle のような値は他の情報を算出するための用途が中心(一部例外を除く)
  • ナビゲーションログの項目を算出することは訓練中の重要な技能で、今では一部のフィールドを自動入力してくれるブラウザーツールを時々使う
    • 1:400 の地図を見ながらツールで waypoint を選ぶと、ナビゲーションログが埋まる
    • その結果の PDF をニーボード用ナビゲーションログへ手書きで転記する

レシートプリンターを導入した理由

  • 小規模プロジェクトに向いていそうだった
  • インクが不要
  • 中古で簡単に入手できる
  • Linux に plug and play で接続できる(/dev/usb/lp0)
  • 見た目がかわいい(たいてい googly eyes が付いている)

プロジェクトの発想 — A-pillar の活用

  • コックピット中央の A-pillar(フロントガラス支柱) は、構造崩壊の防止以外には特に用途がなく、レシートのサイズに近い
  • この空間を活用して、狭いニーボードの問題を一部緩和するという発想
  • ナビゲーションログを見やすいレシートとして出力する git プロジェクト(fliprep) の制作を開始

実装の過程

  • 最も簡単そうに見えたナビゲーションログから着手したが、実際には厄介だった
  • 継続利用する SkyVector のナビゲーションログを取り込むスクリプトを作成
    • Garmin 形式のような export はできず、奇妙に整形された PDF しか提供されない
    • PDF 全文を Ctrl+A でコピーしてスクリプトに貼り付ける方式を採用
  • 使用した手法
    • Regex — コード内でパターンを探し、文字でないものを除去するなどの処理
    • String splitting — テキストの塊を分割(例: "hello there" → ["hello"], ["there"])
    • 一部 計算 — speed と distance から所要時間を算出するなど
  • 結果として、飛行区間ごとの情報を含む Python dictionary / JSON を生成
    • フィールド例: from, to, wind_direction, wind_speed, temp, TAS, Track, WCA, TH, Var, Magnetic Heading, Ground Speed, Distance, ETA, CumulativeETA
  • その JSON を PHP ファイルとして export し、レシートプリンター向けのテキスト整形(フォントサイズ、改行)には Mike42 の escpos-php ライブラリ を使用

使用結果と今後の計画

  • 印刷結果は予想以上によく機能し、地図を見ながら混雑した air-to-air 周波数で交信する際に、現在位置を素早く把握するのに役立った
  • ナビゲーションログ全体を一緒に携行しているため、疑問があれば全ての詳細を確認でき、危険ではなく、未使用だった空間に追加情報を置くための補助手段だと判断
  • レッスンプランの印刷のような単純作業にも利用可能
  • バージョン2では機能拡張、整形の改善、レッスンプラン用 QR 参照の追加などを計画

1件のコメント

 
GN⁺ 2023-08-20
Hacker News のコメント
  • いくつものレストランで働いてきて、今はレストラン向けソフトウェアを扱っているのですが、ここで注意すべきなのは、熱で感熱紙が読めなくなることです
    厨房で感熱プリンターを使おうとして、周囲の熱気や配膳台のヒートランプのせいで紙があまりに早く黒くなり、インパクトプリンターに切り替えた例をたくさん見てきました
    作者が絶対に重要な用途に依存しているわけではないのは幸いですが、雲ひとつない晴れた日にこの紙がどれくらい早く劣化するのかは気になります
    募集中のポジションもあります: https://boards.greenhouse.io/touchbistro/jobs/5058791003

    • ほとんどの感熱紙には BPA/BPS が多く含まれています
      https://www.pca.state.mn.us/business-with-us/bpa-and-bps-in-...
    • 感熱紙が黒くなるのは知っていましたが、そんなに早いとは知りませんでした
      明日、日光にさらしてみるつもりで、4時間ほどもってくれれば満足できそうです
      もちろん言われたとおり、まずは飛行、航法、通信ですね
    • 感熱紙の劣化に関するBrother の研究は読む価値があります: https://www.anixter.com/content/dam/Suppliers/Brother/White%...
      特に Figure 3 は、感熱紙のサンプルごとに高温への反応が大きく異なることを示しています
      COVID の時期に Aliexpress で注文したプラスチック製の水筒が6か月後に届いたのですが、水筒か工場由来の可塑剤が感熱式の配送ラベルをひどく傷めたように見えました
    • 私の経験では、代わりに熱転写プリンターが必要です
      処理された紙ではなくリボンでインクを転写する方式で、多くのメーカーが同じプリンターを熱転写モデルと直接感熱モデルに分けて出しています
    • 以前、スマートパーキングメーターを開発したことがあり、そこでは感熱プリンターを使っていました
      暑い晴天の日の車のダッシュボードのような高温環境に耐える紙も入手できます
  • ロールチャートを調べてみるとよいです
    通常はオートバイのハンドルバーに取り付ける小さな装置で、中に道案内が入っています
    各経由地に到達するたびにつまみを回して次の経由地が窓に見えるようにする仕組みなので、レシートプリンターと相性がよく、飛行機の A ピラーの長さにも制限されません

    • もっと長い A ピラーのある飛行機を買おうとしていたところだったのに、残念です
      確かにロールチャートのほうが筋が通っているように思います
      Rally Dakar で見たことがあり、最近まで使われていた気がしますが、本当に格好いいと思います
      今はセロテープの柔軟性、とくにロールチャートのマウントを機体に貼り付ける方法が気に入っていて、3D プリンターを持っている友人を呼んで作ってみたいです
    • Jones Live Mapに触れる口実はいつでも歓迎です
      昔は車の走行距離計につないで、矢印が方向を指したらそちらへ進む仕組みでした
      一度も曲がる方向を逃さなければうまく動きますが、逃した瞬間にずれます
      同じエンジン回転数でも対地速度が大きく変わる飛行機にはひどい相性でしょうが、むしろそれが飛行機で試す「楽しさ」になるかもしれません
      https://www.sealcoveautomuseum.org/collection-test/jones-liv...
    • オートバイに15年乗っていますが、ロールチャートは初めて聞きました
      携帯電話の前は、A5 の紙にメモをざっと書いて燃料タンクの上にテープで貼っていましたが、雨が降るとうまくいきませんでした
    • ロールチャートとニーボードを今知ることができてよかったです
  • 私は旧世代なので、今のパイロットが使える技術を見るといつも驚きます
    単発機の前に巨大なグラス航法システムが置かれているのは、習得は複雑でも、私にはとても見慣れないものに感じます
    C-172 で計器飛行試験を受け、PA-44 で事業用操縦士試験を受けましたが、どちらの試験でも乱気流のある IFR 条件で「スチームゲージ」だけを使い、最低高度まで ILS アプローチをしなければなりませんでした
    飛行機で一番格好いい装備はたぶん HSI で、計器試験のときには実際の気象条件で最低高度まで NDB アプローチもしました
    今どきの飛行機には NDB はそもそも付いていない気がしますし、昔は暇つぶしに AM ラジオを合わせて聴いたものです
    最近 Microsoft Flight Simulator で C-172 を飛ばしてみたところ、G1000 の使い方が分からず IFR 航法は無理だと悟り、画面をしばらく眺めただけでした
    エンジンを始動して離陸はできるでしょうが、ボタンも多く派手なグラフィックも多くて、航法は見当がつきませんでした。これが進歩の歩みなのだと感じます

    • 私も基本訓練と計器訓練はスチームゲージで受け、今は主に Cirrus Perspective+ システムに乗っていますが、マニュアルを少し読んでシミュレーターで触ってみれば、数時間で慣れます
      10時間ほど経つと、単独操縦で生活をものすごく楽にしてくれる小さな機能があまりに多く、これほど少ない労力であれこれできるのが信じられないほどに感じます
      リーンバーン、TOD、ステップ入力、アプローチボタンを押して飛行機に飛ばせることなどは、ときどき黒魔術のようです
      ここまで来ると元には戻れませんし、特にただどこかへ行きたいときはそうです
      本当に「飛ぶ」ことをしたいときのためには、単座の Yak があります
    • G1000は素晴らしいですが、この30年以上、一般航空機でそれ以外のほとんどすべてが変わっていない点は残念です
      近いうちに一般航空のエンジン、機体、燃料で本当の革新が見られることを願っていますし、短期的には燃料が最も有望に見えます
    • かなり最近受けたヨットの授業を思い出します
      その後、短い航海を何度かしましたが、他の人たちは私たちが乗った、もっと豪華なボートでしか訓練を受けていませんでした
      最初に私が扱わなければならなかったボートには、ホイールの代わりにティラー、トイレの代わりにバケツ、巻き取り式の前帆なし、強風時にはストームジブへ交換、自動ロック式ウインチなし、オートパイロットなし、水深センサーなし、GPS/画面なし、燃料計なし、クラッチなし、効きの悪いジャムクリートがいくつか、手動で上げ下げする折りたたみ式エンジンだけがありました
      サイズも31フィートで34フィートより小さかったですが、もう一度学ぶとしてもそのボートで授業を受けると思います
      より深く学べる経験でした
  • HSIは、私にとって最も直感的な航法計器です。
    飛行機の図を、無線標識局の方向またはその反対方向へ飛びたい方位に合わせると、正しいコースをインターセプトするために左へ行くべきか右へ行くべきかを教えてくれます。
    面白半分で FlightGear で Lockheed Super Constellation を CAT2 や CAT3 の天候モードで飛ばし、スチームゲージと無線航法周波数の記憶だけで空港間を飛んでみています。
    最近はオートパイロットなしで手動操縦もしていて、1つの席で操縦士・航法士・無線担当・4基の R-3350 エンジンの航空機関士を全部こなしているようなものです。
    真っ暗な霧の中で滑らかに着陸する直前に ALSF 灯が現れる瞬間は驚くほど満足感があり、丘に突っ込んだのは数回だけだと自慢できます。
    この機体は旅客機のグラスコックピットより約半世紀前のものです。

    • 私の短い経験でも同意します。
      うちの飛行学校は近所でいちばん安くて古い飛行機を使っているのですが、少し前に別の学校の C172 に座って G1000 を見たとき、「うわ、色がすごく多いな、このボタンは何だろう」くらいしか言えませんでした。
      安全面では画面のほうが99%優位だと思いますが、画面 X と画面 Y が1対1で対応していないので、新しいシステムを実質的に学び直さなければならないように感じますし、計器には独特の格好よさがあります。
      G1000 がある学校には G1000 トレーナーと IFR トレーナーの両方が必要ですが、両方の経験が得られるという点では悪くないのかもしれません。
      画面が多すぎるのも最善とは限らず、G600 には今ではタッチスクリーンもあります。
  • 数日前に書いた小さなスクリプトです。
    友人2〜3人がブログを投稿しているのを見てうらやましくなり、自分も何かを作って公開したと言えるように投稿してみました。
    飛行機と技術の両方が好きなので、読む価値があると感じてもらえたらうれしいです。
    誤字、バグ、問題、倫理的な点があれば教えてほしいです。
    急いでいるように見えたらすみません。
    夜が近づいていて、犬の散歩に行かなければなりません。

    • どのプリンターを使っているのか気になります。
      その価格だと新品ではなさそうです。
    • 航空については詳しくないのですが、印刷したリストがコラムから外れた場合、懸念すべき点はないのでしょうか?
  • 数年前に航法ログを受け取って、チャートをレシートテープの長い帯に印刷するツールを作ったことがあります。
    ほとんどアートプロジェクトに近いものでした。
    Epson の感熱プリンターは、複数ある ESC/POS ラスターモードのうちどれをいちばん好むのかを見極めると、意外と良いハーフトーンを出せます。
    ただし通常のテキスト速度に比べると印刷は非常に遅く、残念ながらそのスクリプトはもう残っていないようです。

    • 本当に格好いいです。
      私が使っているライブラリは Epson 用なので、プリンターに合わせて修正する必要がありました。
      アート的な性格のほうが強いという点には同意しますが、それでも格好いいです。
  • 良いですね。ただ、そういうプリンターを20ドルでどこで入手できるのか知りたいです。

    • 私は実際に隣の店で1台買いましたが、eBay では20ドルのものも見かけました。
      もちろん Super Pro XL Mega 4K みたいなものを買えばもっと高くなります。
  • 画像が多い記事なのに、alt テキストが全部文字通り alt text になっているタイプの記事ですね。
    こういう現象がどこから来るのか知っている人はいますか?初めて見たわけでもないですし、なぜこれが良い考えだと思われたのか分かりません。

    • ブログを作り直すときにタグをコピー&ペーストして、alt を埋めるのを完全に忘れていました。
      アクセシビリティ機能を使っているなら本当にすみません。少ししたら更新します。
    • img タグでは alt 属性は技術的には必須なので、HTML バリデーターを走らせたり IDE/エディターの警告を消したりするには追加する必要があります。
      ただ、記憶が正しければ空文字列でもよかったはずです。
    • 何らかの CMS のせいかもしれません。
      わざわざ「alt text」と手入力したとは思えません。
  • そのうち ForeFlight や Garmin Pilot を見つけるでしょうが、そうなったら人生はもう以前のままではなくなります。

    • ForeFlight はこれまで作られた最高のアプリです。
    • 確かに、いつかは私も成長することになりそうです。
  • 素敵ですが、最近は感熱ラベルプリンターや感熱テーププリンターを使うことに、以前ほどワクワクしなくなりました。
    それらのラベルには感熱インクを安定させるために BPA が大量に含まれていると知ったからです。

    • 最近は BPA-free、または少なくとも削減した特殊紙もあります。
      この地域のスーパーは環境上の理由でそうした紙に切り替えました。
    • まったく知りませんでした。
      今調べています。