2025年10月22日水曜日

小ネタ


 三菱電機グループの技術を紹介する「三菱電機技報」全バックナンバーを公開 | 三菱電機

 オンラインで公開していなかった1959年以前についても公開を始めたよ、とのこと。’50年代はともかく、それより前は現代の文に慣れてる身からするとかなり読みづらいけど。

 興味はあるけど、いかんせん量が多いのでなぁ……



 なんか頭痛いなーと思って熱を測ったら37.1℃あって、慌てて加湿器をつけて寝たら、翌朝には36.8℃くらいまで下がってた。その後.8と.9を行ったり来たり、といった感じ。体感ですごい楽だから熱下がったのかなーと思って測ったら37.1℃だったりとか。人体謎い。

 信頼できない湿度計によると、部屋の湿度は45%くらいだった。一晩加湿器をつけて4Lくらいぶちまけて58%くらい。部屋にいるとわからないけど、一旦部屋を出て数分して戻ってくると、部屋に入ったら明らかに蒸し暑い感じがする。単純に加湿器(加熱型)で熱が供給されているのもあるだろうけど。

 部屋の外に設置したGPSアンテナの同軸線を引き込むために窓を数mm開けているので、加湿してもここから空気が交換されるっぽい(室温と外気温の温度差で循環しそう)。とりあえずマスキングテープを窓枠に貼って密閉。これで加湿器をつけると湿度は上がるようになったけど、部屋があちぃ。。。なんだよ10月も後半に29℃って……

 なお、今回更新分の内容が薄いのは体調不良ではなく、ダッコフが原因です。


 ダッコフはドロップが渋いのでなかなか難しいね。例えばDELTA FORCEのオペではデイリーとかウィークリーで装備チケットが貰えたからそれを使い潰して大して稼がなくてもだいぶ遊べたけど、ダッコフでは全部自分で装備を整えなきゃいけないのでデスペナがキツイ。

 最初の数日はわりと遊んだけど、気軽に行ける範囲が結構狭くてすぐ飽きちゃった。




  オンライン対戦のデスマッチ型タイピングゲーム。現在デモ版がフリー公開中。

 対戦型とはいえFPSみたいなゲームに比べれば比較的個人戦に近いのでだいぶ遊びやすい。とはいえ、勝率は悪いので大抵のゲームは普通に撃ち殺されるけど。……タイピングゲームで撃ち殺されるとは一体。。。

 最大100人が同時に入れるのかな? 200人に加えて机やタイプライター等の小物が100セット配置してあって、グラ要求がかなり大きい。

 自分の場合、誤入力が比較的多いので1ミスが命取り(文字通り)になるこのゲームは結構大変。あと、単に英語能力が低いのもボトルネック。次に入力する単語を読み上げるみたいな機能があればタイピング練習だけじゃなくて英語学習的に良さそうな気がする。

 日本語モードも欲しくはあるけど、実装難易度は段違いだろうな。日本語は英語と違って入力の揺れがあるから、それらを許容しようとすると結構手を入れなきゃいけなさそう。


 プレイ時間1時間ちょっとでレベル100を超えて、いくらでもやれそうだけどこれ以上は何かしらに支障をきたしそうなので一区切り。気がついたらレベル200超えてるけど多分なにかのバグ。



 そういえばIdiosが案件してたQTTA、プライムデーで箱買いしていたのが届いたので、とりあえず醤油を試食。記憶の中のQTTAってもっと重いイメージだけど、リニューアルした分が効いてるのか、記憶違いなのか、思ったより食べやすかった。ただ、主食にするには少ないし、間食にするには多いし、微妙なところ。まあ、大抵のカップラーメンはそれくらいの感じだけど。ボリュームが欲しいならパックご飯とか温めればいいしな。そのあたりは個人が好みで調整といったところで。

 最近あまりカップ麺を食べてなかったので結構久しぶりな気がする。昔は別ブランドの6種類入り12個入りとかを箱買いして毎日それを1個ずつ食べるみたいな生活を結構長期間やっていたせいで、その頃に食べていたカップ麺は食傷気味。そういう意味では、QTTAは当時ほとんど食べなかったので、気軽に食べられそうだが。


 カップ麺を食べながら、日常生活の中で時計の時刻精度が10秒くらいで要求される状況もなかなか無いよなー、などと考えたり。待ち合わせでも例えば1,2分くらいのズレは許容できそうな気がする。

 カップ麺を作る場合、3分として10秒で5%くらいだから、湯を入れる場所と食べる場所が物理的に離れている場合、双方の時計が10秒以下程度で同期している必要がある。クォーツ時計は月差10秒前後だから、その誤差が出る時計の場合は数週間程度の頻度で時計を合わせておく必要がある。電波時計やNTPで時刻同期した時計の場合は最大でも数秒程度の誤差に収まるはずだから、カップ麺を食べるときでも安心。



 たまーに流れてくる「ウン十年無借金で経営してきた(経営状況に問題のない優良な)町工場が後継者不在で廃業するしかない」みたいなニュース、人材育成のコストをケチったから無借金だっただけでは?って気がするな。「誰か後を継いでくれる人がいないか」とか言っても、その「誰か」って、最初から自分と同じスキルを持っていることを期待しているんでしょ? 長期間無借金経営ってことはその間に大規模な設備投資も行っていないだろうし、何十年も前に作られたマニュアルもなければ保守できる人も居ない機械が並んだ工場を売りつけられて「明日からよろしく」とか言われたってどうにもならないでしょ。最悪鉄くず程度の価値しかない工場なのでは?



 最近PCのオーディオ系が調子悪いんだよなー。有線イヤホンが時々ゴッソリ抜ける。おそらく充電器に入れてあるEcho Buds 2がPCと接続して出力先がそっちに吸われてるんだと思うんだが。実際、ケース内のBudsをグリグリ押すと正常に戻るし。しばらく放置しても戻ることもある。ファームウェアのバグっぽい挙動なのか、あるいは電気的な問題なのか。BGMとか動画とかの音声が頻繁に途切れるのは結構ストレスが溜まる。



 SDカードにUbuntuを焼いてみたけど、うちのノートPCは内蔵のSDカードリーダーからのブートには非対応っぽい。残念。USB接続のSDカードリーダー経由でも駄目っぽい。同じUSB MSC扱いだと思うけど、USBメモリからは起動できてSDカード(USBリーダー)からは起動できないのちょっと謎い気もする。


 このノートPC、前に使っていたものに比べてほとんど半分くらいまで軽くなっているので取り回しがかなり楽。画面も広くなってFHDになったし。この軽さに慣れたら次に買うノートPCが重くて使えないんじゃないかってレベルで軽い。

 ただ、トラックパッドのスクロールに変なクセが有るのと、CapsLock(Ctrlに割当)を押すとトラックパッドが一瞬反応しなくなるのと、あと動作が全体的に遅い。一応何世代か前のi5が入っているけど、Visual StudioでのビルドとかをメインのPCと比べると圧倒的に時間がかかる。


***


 Windowsでのfl2k、ウイークリービルドのosmo-fl2k-64bit-20220706.zipは動作する(少なくともfl2k_test.exeでsps/2が出る)けど、おそらくその次のosmo-fl2k-64bit-20231112.zip以降は動作しない。


 libosmo-fl2k.dllの戻り値が結構クセがあって大変。列挙型ではSUCCESS = 0で定義してあるけど、例えばfl2k_set_sample_rateの戻り値はintで、正常時には4が帰る。これはfl2kチップのレジスタに値を書き込むfl2k_write_regの戻り値が帰っていて、この関数はlibusb_control_transferの戻り値を返している。ここで4バイトの配列を与えているから、正常時には4が帰り、例えばタイムアウトエラーが発生した場合にはLIBUSB_ERROR_TIMEOUTが帰るが、これはFL2K_ERROR_TIMEOUTで同じ値(-7)が定義してあるから、それが見える(実際にどういうエラーメッセージが出るのかは未確認だけど)。

 大雑把には、負数の場合はエラー、ゼロ以上であれば概ね正常、みたいな判断になる。厳密にやるなら例えばfl2k_set_sample_rateの戻り値は4以外をエラーとする、みたいな扱いでもいいけど、実装が変わったときに対応できない懸念がある。


 とりあえずopen/closeとサンプルレートのset/getは動いているような気配がある(getはFL2000から読んでいるわけではないけど、少なくともDLLレベルまでは正常にアクセスできているはず)。ただ、start_tx/stop_txを入れると、コールバックは呼ばれるが、適当な乱数を入れた配列を与えても出力されないし、その後のcloseはハングアップする。

 参照しているコードは最新のコミットだから20220706版のビルドと違う可能性もありそうだけど、古いバージョンのタグをZipで落としてヘッダを見ても内容はほとんど変わらないから、少なくともAPIを叩くレベルでは区別せず使えるはず(さらに古いバージョンだとI2C機能がなかったりする)。


 試しにi2c_readを適当な引数で叩いてみると、指定したアドレスのI2Cコマンドが出る。ターゲットデバイスをつないでいないから最初のアドレスでNAKを読んでFL2K_ERROR_NOT_FOUNDが帰るけど。とにかく、物理的にFL2000を開いてI2Cコマンドが出ることはオシロで確認できたから、少なくともfl2k_openは正しく動いているし、それで得られたデバイスハンドラも最低限取り扱うことはできているはず。

 i2c_readを呼んだあとにcloseしても正しく閉じれるから、FL2000に対する操作でcloseがハングアップするわけではなさそう。ただ、i2c_readを呼ぶ前には定期的にDDCをポーリング(後述)しているけど、i2c_readを呼ぶとDDCポーリングが止まる。fl2kとしてRF信号を出す場合はDDCは必要ないはずだから事実上は問題ないだろうけど。DDCはFL2000が勝手にポーリングしてるものだと思ってたけど、fl2k側から止められるならなんで出してるんだろう?


 さて、Windowsでfl2k_testが動いて、DLLを叩いて一部の機能は触れるようになったが、DLL経由では肝心の波形信号が出せない、といったところで今週は時間切れ。どうしたものか。fl2k_tcp.exeとかいういかにもなヤツも付属してるから、それを叩いてもいいんだけどな。rtl_tcp.exeの場合は吐き出されるバイナリ列を受け取るだけだから簡単だけど、fl2k_tcpはデータを待ち合わせしなきゃいけないからちょっと面倒そうだ。



 USB 3.0 - VGAアダプタの部品面

 裏面には部品は乗ってないので省略。

 中央にあるのがFL2000-1L0-DX。右端にUSB 3.0のケーブルがはんだ付けしてあって、D, TX, RXの3ペア6本と電源の8本。左端にはDsub15のコネクタが実装されている(上下の補強端子はハンダ無し)。

 左下のチップはフラッシュメモリっぽいけど型番でググっても出てこない。似た型番は出てくるのだが。

 右上のSTO-23は1.2VのLDO。その隣の5ピンも3.3VのLDOで、シリーズで使っているのかな? DACの基準にも使っているっぽいから、PSRR重視でLを挟んでシリーズにしているんだと思う。

 右下に10MHzの水晶。

 その他トランジスタやダイオードやインダクタがいろいろ、コンデンサが大量、抵抗もいくつか。


 I2Cのプロービング用にpin5(GNDのはず)を引き出したらなんか信号が浮いてる。もしかしていくつかのリターン線が結線されてない……?? 



 FL2000のDDC

 I2Cのクロックは15.23kHz。NTSCのHsyncに近い周波数だけど、少し(3%程度)違う。そもそも走査線数からして違うからNTSCとVGAのHsyncの周波数が同じである(or近い)必然性もないし。

 0x50~A(W)が8個ずつ、260ms程度の頻度で出ている。オシロのデコーダのバグで左端にも0x50~Aが出ているけど、実際には無い(前の組のDDCは適切にストップしている)。

 

 先頭

 スタートコンディションの前に1発負パルスが出ている。


 末尾

 NAK直後にストップコンディション。



 fl2kからHsync/Vsyncを出せれば数十kHzとか数十Hzのパルス信号を出せて、RF信号に同期したパルス(トリガ信号)を出せて便利そうだな、と思ってたんだけど、Osmo-fl2kのWikiによるとHsyncとVsyncの両方を無効にしないと連続信号が出せないらしい。ままならないな。


 とりあえず、当面はDLL経由で波形を出せるところが目標か。しかし、構造体とかの取扱もさほど変なところは思いつかないし、怪しいところも無いからなぁ。libosmo-fl2k.dllを消すとfl2k_testも動かなくなるから、少なくともDLLの問題はなくて、叩く方法の問題であることは間違いないはずだが。ダミーのDLLを作ってどういう操作がされているかを見るとか? メンドクセ…… そもそもDLLを正しく叩けているかが問題なのに、どうやってDLLに偽装するんだという話だし。


2025年10月15日水曜日

小ネタ



 めちゃくちゃ真面目に遊んでて良きかな。

 歌詞に出てくる色々なキーワード、「コレ」っていう写真だけスライドショーにしたバージョンも欲しいな。そのうち誰か作りそうではあるけど。

 リアクション&解説動画とかあっても面白そう。CNESとかJPLあたりにホロヲタいないかな。欧米の宇宙機関ならプロジェクト進行とか日本と似てるから色々面白い話ができそう。真面目に全部説明してたら5時間くらいかかりそうだけど。




 DMGのスピンドル。ひずみゲージを内蔵して3軸の力覚センサみたいな計測値が得られる。今のところは手動で記録開始/停止を行って、後で解析するみたいな使い方かな? おそらく適当なテストピースをカットして発生する負荷を計測して切削条件を最適化する、みたいな使い方を考えているんだろう。

 機械自身がセンサで状況把握できるようになるなら、従来のCAMでツールパスを作ってポストプロセスで座標変換して、みたいな感じじゃなくて、CADから「このボリュームを除去して」みたいな指示だけ出して、機械が自分で持っている工具情報(刃の位置や許容負荷範囲)からそれに合わせたツールパスをある程度決めて、切削速度(切り込み量)とかはトルク等を見ながら自動で調整して、みたいな機能があっても良さそうだけどな。ワークピースの形状は機内のカメラなり、DMGならニコンのスキャナなり、機械自身で把握できるわけだし、機内の障害物も知っているから、工具をどういう向きで突っ込むとクラッシュするとかの情報は一通り持っているわけで、CADデータ(STLとか)で最終的に欲しい形だけ教えておいて、あとは先に除去したい範囲とかを教えておけば、機械が勝手に削ってくれる、みたいなのが理想的な工作機械だろうけど。付加造形はわりとそういう感じになってきているし、切削加工もあまりピーキーな製品でないなら勝手に削ってくれる方が良さそうだが。あるいは、最終的な形に1mmくらい膨らませた形(荒削りの範囲)までは機械が自動的にゴリゴリ削っていって、最後の仕上げのツールパスは人間が細かくプログラミングして削る、みたいな感じとか。

 まあ、そのあたりは、とりあえずセンサだけ先に売っておいて、あとからライセンスで追加する、みたいなことを考えているんだろうけど。



 Introducing the S-70UAS™ U-Hawk™ - YouTube

 UH-60を無人化してコックピット部分を観音開きになるようにして長い貨物を積み込めるように。MLRSのコンテナ1個を運んだり、UAVを上空から吐き出したり、いろいろ運べるし、無人だから(機材のコストを無視すれば)撃墜されるような任務に投入しやすくなる。

 各国の軍で採用されているUH-60を改造するのであれば、保守部品の調達や整備の教育コストも圧縮できるし、色々便利そうだろうなぁ。シミュレータ用の機材をそのままリモートコントロールステーションに流用すればUH-60のパイロットがU-Hawkを遠隔操縦できるようにもなるだろうし。

 米海兵隊はMLRSフォームファクタのランチャーを前線付近で移動させて生存性を高めながら使おうとしてるし、運用コストの低いヘリで必要なところに運ぶシステムが有ると便利そうよね。スリングで吊るのでなく機内に格納できるから運用性も高そうだし。

 前線で物資輸送とかUAVランチャーに使うならある程度のステルス性もほしそうだけど、外観を見る感じそのあたりはあまり考えてなさそう。ステルス型のUH-60系は15年くらい前にちょろっと漏れたことがあるから開発自体はやってるだろうし、前線で飛んでたってことは一通り評価も済んでるはずだけど。むしろ一通り情報は持ってるから必要になったときに改造すればいい、みたいな判断なのかもしれないけど。あるいは逆に高コスト過ぎてUH-60のステルス化は諦めたのか。ヘリのステルス化は一定の繰り返し周期が発生するローターからの反射が大変そうだが。

 たぶん無人の輸送ヘリを最初から設計して作ればもっと効率の良い機体を作れるんだろうけど、運用コストを考えると既存機の改造がベストなんだろう。「新規設計じゃないですよ。飛行実績のある機体のバリエーションですよ」といえば色々な手間を省けるし。MLRSコンテナ流用の無人ランチャーといい、既存システム流用の機材が増える昨今。



 20年でCPUコアの巨人にのし上がった「Cortex-M」:EE Times Japan 20周年特別寄稿(1/3 ページ) - EE Times Japan

 自分は仕事として(直接的に金銭的な報酬を受け取って)組み込み開発に関わったことはないけど、ちょうどこの移行期あたりにマイコンで遊んでいた(&若干の試作の下請け的な事をやっていた)気がするな。PICのアセンブリで電子工作を始めて、Arduinoで試作してPICに移植したりして、mbedを一時期触って、その後はSTM32(Cortex-M3)に移行してある程度複雑なものも作ったりして(PICを最後に使っていたのが2011年頃、STM32を使い始めたのが’12年頃、のはず)。試作みたいなやつはPIC, Arduino, STM32, mbed、あたりを一通り使っていた気もする。PICとかSTM32や周辺のセンサを使うときはどうしても英語のデータシートを拾うしかなかった。STMは日本語訳も用意してくれてたり、PICはそこそこシンプルなのでそもそもあまりデータシートを読み込まなくてもある程度は使えたけど(それでハマることも多かったけど)。

 H8Tinyも本当に触りだけ(Lチカ程度は)使ったことがあるけど、開発環境の構築とかが結構面倒で結局全く使わなかった気がする。でも電子工作を本格的に始める切っ掛けはH8系に特殊な開発環境を付属させたキットだったかな。

 海外のマイコン(PICやAVR)が普及して以降は、学生の間にマイコンとかを触り始めたようなエンジニアは英語のデータシートを読むしかないから、その人達が仕事として組み込み機器を作るようになると英語があまり敬遠されなくなった、という効果もありそうな気がする。そういう人たちが就職したタイミングでCortex-Mが出てきた、みたいな。

 ルネサスも一時期電子工作向けにマイコンを普及させようとしていた気がするし、比較的新しいArduinoにも乗ってるけど、でも日本語データシートのメリットを活かせるほど日本で普及したかというとな。そもそもArduinoは巧妙に隠蔽(抽象化)されているから、これでマイコンに触ったからと言ってデータシートを積極的に読むかというとそうはならん気もするし。チップを普及させたいならSTMのNucleoみたいにそれっぽいボードを用意する程度でも十分な気がする。まあ、ルネサスはそれをやって失敗したわけだけど。


 QualcommがArduino買収でエッジAI強化へ:新ボードも発表 - EE Times Japan

Qualcommは「Arduinoは独立したブランドやツール、ミッションを維持しながら、複数の半導体サプライヤーの幅広いマイクロコントローラーとマイクロプロセッサを引き続きサポートする」と述べている。

 じゃあ何のために買収したんだよ、という話だしなぁ。そのうちRasPiと競合の層しか出さず結局売れず、みたいな感じになりそうな気もするが。Intel Edisonとかみたいに。

 Nvidia Jetsonは10年経った今でも製品の発売が続いてるけど、これは計算能力がちょっと高めの用途で使いたいみたいな部分で人気があるのかな。UNO QもQualcommのある程度計算能力の高いチップを積むんだろうけど。とはいえ例えばハイエンドのSnapdragonを積んでAndroidが走ります、とか言われたって、そんなもん何に使うんだよ、って話だし。



 気象衛星ひまわり9号の観測障害 8号での観測に切り替え 気象庁 | NHKニュース | 気象、台風

「今回は衛星のカメラと衛星本体との間の通信に何らかの不具合が起きたとみられていますが、詳しい原因はまだ分かっておらず」

 前回は熱管理の問題だったけど、それとはまた別の原因なのかな?


 ひまわりっていまいち衛星の詳細がわからないんだよなー。AHIは外国製だから日本語資料も少ないし、そもそもここ10年とか20年の衛星はほとんど情報が出てこないってのもあるけど。

 DS2000の資料でAHIの接続にSpWを使っているみたいな感じのことは書いてあるけど。データレートは平均60Mbpsくらいだから、SpWでちょうど良さそうな程度。ほとんど固定レートだから汎用バスを使う利点はあまりないだろうけど、だからといって専用のインターフェースを作るよりはな。

 しかしまあ、ミッション機器と通信ができないと言っても原因として考えられる範囲は端から端まで幅広いからなぁ。


 ひまわりとGOESって少なくともセンサ(AHI/ABI)のメーカーは同じだし、観測帯域もいくつかは共通だったり、多少の互換性はあるわけだけど、例えばひまわりが予備も含めて全損した場合って、軌道上予備のGOESを借りてくる、みたいなことは可能なんだろうか? アメリカは国土が広いというのもあるので、観測衛星は東西のペアでかつそれぞれにバックアップがいるので、軌道上には予備が2機ある。事務仕事(スロットの管理とか)さえクリアできれば西側の1機をもう少し西に寄せてもらうとかはできそうだが……

 ひまわりは日本だけで使っているシステムじゃないし、影響力も非常に大きいから、理想的には軌道上に3機以上を置いて、同時に2機は観測してステレオ視や高頻度観測を実施して、片方が止まっても観測は中断を挟まずに継続して、トラブルが長期化しそうであれば予備機を立ち上げて、みたいに運用するほうがいいんだろうけどな。ひまわり11号以降で純国産化するなら「いよいよやばくなったら最悪GOESを借りて解析に突っ込む」的な運用も難しくなるし、オーストラリアあたりにも呼びかけて軌道上に常時3機おいておくような運用にできないものか。

 日本の気象(weather)衛星はひまわりだけだけど、気候(climate)観測を目的としたものとか、あるいは海外のLEO気象衛星も含めれば断続的とはいえ日本周辺を観測できる衛星は色々と飛んでいるし、静止気象衛星が使えなくなったとしても、直ちに気象予報が許容できないほどに劣化するというわけではないんだろうけれども。少なくとも、いくつかの周回衛星は気象庁のモデルに組み込まれているはずだし。だから9号機の設計寿命を超えて10号機の打上げを遅らせようみたいな話も出てくるんだろうし。


 GOES-17 - Wikipedia #Malfunctions

 GOES搭載ABIでも熱管理のトラブルがあったらしい。推定される原因はループヒートパイプの流れがFODで阻害されたのではないか、とか。ただ、これは純粋に放熱量が減るものだから、ひまわり9号みたいに単発で発生するものとは種類が違うけど。



 YouTube、スマホのYTMで音楽聴きながらデスク外で作業して、机に戻ってきてからPCのYouTubeでBGVを再生しようとすると「別の場所でアカウントが使用されています」的なエラーが出てきて再読込しないと駄目なの結構不便。最近のYouTubeは再生位置が残るとはいえ、時々滅茶苦茶な場所に飛ばされることもあるし。何が面倒って再生画面を再読込しなきゃいけないのが面倒。なんで再開できないんだよ。

 アカウントを複数人で共有してるわけじゃないんだから、「別の場所で再生してる? うっせぇ!そっちを止めろ!!」的な運用でいいはずなんだけどな。



https://www.jstage.jst.go.jp/article/jie1922/37/5/37_5_280/_pdf

「ガスタービンに関する最近の諸問題」(1958年)

 この表題で講演を引き受けたが、問題点が特に思いつかない、とのこと。強いて言えば使用実績が少ないところかな?とか。この頃の実用ガスタービンの例が色々と書いてある。発電用とか、コンプレッサー用とか。

ガスタービンはそれらの要素を作動流体の通路であるダクトと動力伝達を行う軸とで、色々に組み合わせ、結合したものであり、それらの組み合わせ方で色々のサイクルもできまた同一サイクルでも部分負荷性能、回転数特性などきわめて広範囲にかわった性能を持つことを作ることができる。その変化の範囲の広いことは非常なもので、真空管、抵抗、コンデンサ、コイルの組み合わせで全く異なった特性を持った回路を作ることのできる弱電回路とよく対比される。この点はガスタービンの一大特色で、他の原動機がたとえばピストン式内燃機関、蒸気タービンといえばそれぞれかなりはっきりと性能が決まってしまうのと全く異なるところである。

 弱電回路は同じ部品をシリーズやパラレルに使って色々組めるのでさすがにそこまで自由度が高い熱サイクルは実用的な意味は無いとしても、まあ、そういうふうに作れないこともないか。 

 ガスタービンを航空機に使う場合、出力あたりの重さが軽いことと、高高度では空気温度が下がるから圧縮比を高くできる(断熱圧縮でより大きな圧縮比(=温度差)を設定できる)ことから地上用よりも効率が高くなる。

「このように弾道兵器の原動機やごく小型の軽飛行機などを除けば、ほとんどの航空原動機界は内燃タービンの仲間で占めてしまったといってよい。しかし航空用以外にはこのように圧倒的に使用されるというような分野はない」

 その他の用途についてもいくつか。冷却水が不要なので砂漠等での発電で使っているとか。

 圧縮機やタービンの効率はほとんど限界に達していて、あとはタービン入口温度をいかに高くできるかにかかっている。



 ターボプロップとかターボファンとか、エンジンの前にプロペラ(ファン)がついているトラクター式が多くて、プッシャー式ってあんまり見かけない気がする。特にターボファンの場合、コアの中央に低圧シャフトを貫通させなきゃいけないから、構造的にデメリットが大きそうな気がするのだが。

 ターボファンの場合、周囲にカウリングがあるから、トラクター式では流れ(特にファンの後ろ)を時間をかけて整流しやすい、という利点があるのかな? 流れをきれいにすればその分効率化や低騒音化が可能になる。

 ターボプロップの場合は、コアの中を貫通させているわけではなくて、平行軸にオフセットして、その間で減速させたりするから、コアを貫通するような構造上のデメリットは少なそう。

 そういう諸々のバランスを考えると、トラクター式のほうがいいよね、みたいな結論になるんだろうか。


 古い資料(80年代中頃)だと中型機の後方(与圧区域より後ろ、ペラ等が飛散しても与圧区画を貫通しない)にプロペラを配置したプッシャー型ターボプロップ機のイラストがあるけど、普及していないところを見るとトータルで大した利点はなかったんだろうな。飛行機の大型化・高速化でターボプロップ機では厳しいというのもあるだろうし(実際には思ったより小型機のレンジが広がらなかった、という感じか)、他にも、より効率を求めるのであれば胴体の後ろに小径のプロペラをつけるより、主翼の上とかに大径のプロペラを付けたほうが燃費がいいだろうし。


 特殊な例として、P&W PT6がある。普通は前から吸い込んだ空気を後ろに流しながら圧縮・燃焼・膨張を行って高圧タービン(圧縮機用)や低圧タービン(出力用)を駆動するわけだけど、PT6は後方で空気を吸い込んで前に向かってサイクルを進めて、前方から後ろ向きに排気を出す。この場合、低圧タービンが一番前につくから、最短距離の出力シャフトで伝達できるし、コアを貫通させたり長いシャフトで引き出す必要がない。気流を大きく曲げるからFOD対策にも良さそう(質量の大きな粒子は曲がりきれずにトラップできる)。遠心式圧縮機とかタービンの周りに燃焼器がついているとか、大型化するのは厳しそうなデザインだけど、小型機で使うなら問題ないだろうし、売れてるってことはやはりメリットが大きいんだろうな。


 船舶の電動化と同じように航空機でもガスタービンで発電してモーターでプロペラを回そうみたいなシステムもあるし、絶賛開発中だろうから成立する見込みはあるんだろうけど、途中でエネルギー変換を重ねるから効率が悪そうな気はする。小型機で大径ペラをギヤで減速して高効率で回そうとすると機構部の質量が増えるけど、電気を経由すれば比較的簡単に回転数を制御(減速)できるみたいな利点はあるのかな。


 航空機だと運動エネルギーが大きいし軽量化の要求が大きいけど、船舶は逆に運動エネルギー(位置エネルギー含め)が大したことなくて、軽量化の要求も小さいわけだから、ガスタービンより原子力のほうが合いそうな領域ではありそう。それこそ小型モジュール炉で発電してモーターで駆動して、とか。アクティブに動く場所が少ないSMRなら故障の可能性も低いから予備電源もかなり小さくていいだろうし。ただ、船舶の場合は遠洋で沈没したりする可能性を考えると、大きな水圧で圧壊しないような構造(適当な差圧を超えると海水を引き込むとか)が必要になるから、陸上用と設計の共通化ができなくて、単価が厳しそうではある。


***


 L1Cの相関のテスト

 相関値は非正規化なので、高さはあまり意味はない(CPとCDは相対的に比較できるはず)。

 C/Aに比べて狭いスペクトルのCP/CDが得られている。

 L1CはL1 C/Bと同じように1.023MHzの正弦波を重ね合わせてあるけど、CPは1.023MHzと6.138MHzが適当な割合(1MHzが多い)で乗っている。ただ、今回は1.92Mspsだから、単に1.023MHz100%で近似している。送信出力が同じならCPのほうが相関値が低くなるはずだけど、実際にはCPの方が高い。送信出力の違いかな?

 とりあえず、C/Aと同じドップラと思える場所にピークが出ているから、QZSS L1Cの拡散符号は正しく生成できているはず。

 拡散符号の生成はソフトウェアで実装すると結構シンプルだけど、これをハードウェアで実装しようとするとかなり面倒くさい気がする。送信側もどうやって変調しているのか気になるな。C/Aみたいにシフトレジスタで作れる符号列じゃないから、ハードウェアでやろうとしたらROMに持っておくくらいしか考えられない。あるいは初期化に100秒以上かけていいなら比較的シンプルに作れそうな気もするけど。


 ドップラスキャンで出るスペクトル幅が狭いからスキャンは大変そうだ。どうやって取得するのがいいんだろうか。先にC/Aで受信機の位置・時刻・速度を決めておくとか? なんか本末転倒な気もするけど。



 L1Cのスペクトル。縦軸は任意の値。横軸は周波数(MHz)。左右対称なので片側だけ。1.023McpsをNCOでサンプリングレート変換(25Msps)してFFTに通した形。L1C/Aも同じ形のはず。


 自己相関のピーク。縦軸は任意の値。横軸はミリ秒。


 同様に、L1C BOC(1,1)のスペクトルと自己相関。L1CもL1C/Bもスペクトルや自己相関の形は大して変わらないはず。自己相関は周期が違うけど、チップレートは同じだから、メインローブのエンベロープは似ているはず。

 BOC(1,1)はメインローブの±0.5us(±150m)の場所にサイドローブがあるから、綺麗な形のメインローブを期待したアルゴリズムを組んでいると、正常に処理できない。

 あと、DLLのEarly/Lateを±0.5chipsに設定していると、相関値のちょうど切れ込みの部分を見ることになるから、特性が悪くなりそう。それに、Sカーブの形も多分想定と違った形になる。BOC(1,1)をDLLでロックしたい場合、±0.25chipsとかの場所を見ないとダメそう。

 スキャンしてロックするときも、FFTで探して見つけたピークから±1chips程度の範囲を0.1chips間隔くらいで全部相関値を取って、一番高いピークを探す(サイドローブを棄却する)ような処理も必要になるはず。

 簡易的にL1C/Bを受信するならC/Aコードのチップレートを2倍にすれば良いけど、正常に受信したいならかなり大変そうだ。L1CもQZSSから受信したいなら同様。



 実際の信号から、FFTで見つけたピーク値の±6chips位の範囲を、適当な間隔で位相をずらしながら相関

 なんか変な形。3個連なった高いピークが2つのサイドローブとメインローブだろうけど、サイドローブの高さが結構違う。あと、サイドローブの前にもう一つ山がある。


 試しにPRN 4(GPS 3-1)でドップラスキャン

 L1C/AもL1Cpも同様にピークが出る(縦軸は任意の値)。

 ただ、PRN 4はBOC(1,1)は無いけど、時間軸のデータを見ても、妥当性(納得感)のある結果が得られていない。


 デバッグ用に簡単なコードを書いてみたら、全く動かね。。。CDMAの復調ってこんなに大変だったっけェ??


***


 C#のRichTextBox、Textを書き換えても字面が似ていればスクロール位置は概ね維持されるんだな。ちょっとずれる時があるけど。元々TextBoxで作っていて、TextBoxはTextを書き換えると一番上までスクロールされるので、それを防ぐのに色々ググってたんだけどやり方が分からず、RichTextBoxならそれっぽい挙動が作れるらしいのでRichTextBoxに変えたら、そもそも何もやらなくてもスクロールを維持できるじゃん、という発見。これだけで丸一日無駄にしたような気がする。。。

 ただ、RichTextBoxでも字面が大きく変わるとスクロールが少しずれることがある。それが嫌な場合は、

static Point GetScrollPos(RichTextBox richTextBox)
{
    const int EM_GETSCROLLPOS = 0x4DD;
    SendMessage(richTextBox.Handle, EM_GETSCROLLPOS, 0, out var b);
    return b;

    [DllImport("user32.dll", CharSet = CharSet.Auto)]
    static extern long SendMessage(nint hwnd, int msg, int wp, out Point lp);
}

static void SetScrollPos(RichTextBox richTextBox, Point b)
{
    const int EM_SETSCROLLPOS = 0x4DE;
    SendMessage(richTextBox.Handle, EM_SETSCROLLPOS, 0, ref b);

    [DllImport("user32.dll", CharSet = CharSet.Auto)]
    static extern long SendMessage(nint hwnd, int msg, int wp, ref Point lp);
}

 みたいなメソッドを用意して、GetScrollPosで取ったスクロール位置を、Textを書き換えたあとでSetScrollPosに投げれば、スクロール位置をかなり忠実に維持してくれる。ただし描画範囲の前の部分でテキストが書き換えられた場合は、もちろん表示内容自体がズレる。

 TextBoxの場合、SendMessageでEM_GETSCROLLPOSを呼んでも正しい結果が得られない。EM_SETSCROLLPOSも期待したとおりに動かない(反応がない)。おそらくRichTextBoxでしか対応していないと思う。ただ、TextBoxに対してもEM_GETRECTみたいな呼び出しは動いているみたいだから、TextBox自体がSendMessage系コマンドに非対応、というわけではないらしい。いまいちよくわからない。


 SendMessageみたいに色々な型のポインタを渡すような場合は、DllImportでメソッド内に定義するやつのほうが便利そう。LibraryImportだとメソッド内に定義することができないから同じ名前が大量に出てきて面倒なことになりそう。LibraryImportはunsafe前提だから、むしろポインタで宣言してゴリ押しするという手も……



 C#のパターンマッチングのvalue is >= 10 and <= 20みたいな範囲指定の構文、もう少しわかりやすい構文無いものかなー。良い書き方は全く思いつかないけど。value is 10..20とかvalue is not 12.34..56.78みたいな感じとか? そういう書き方がC#的に実装できるかどうかは別として。<や<=は境界値を明示できるのが良さそう。Rangeみたいな書き方は境界値がうまく表現できない。


 宇宙船演算子 - Wikipedia

「.NET FrameworkではCompareToメソッド[9]が同じ働きをする」

 .NETのCompareToって結果はあくまでも「負数」「ゼロ」「正数」としか規定していないから、宇宙船演算子みたいに例えばswitchでcase -1: break; case 0: break; case 1: break;みたいに分岐できなくて、「同じ働き」とは言えない気がする。最近のC#のswitchだとパターンマッチングで負数、ゼロ、正数にマッチできるから似たような使い方ができないわけじゃないけど。

 基本的には-1,0,1を返すことが多いだろうけど、とはいえ例えばintの比較ならreturn value1 - value2;を返してもいいわけだし(キワでバグるけど)、文字列の比較ならC言語のstring.hのstrcmpみたいな結果をそのまま返したっていいわけで、このあたりはライブラリとか実行環境に依存しているから、呼び出す側はあくまでも符号だけ(&ゼロかどうかも)を見るしかない。

 実際のところ、機械語レベルまで行けば-1,0,1を比較するのと負数、ゼロ、正数を比較するのでは、後者のほうが楽そうな気もする。厳密に-1,0,1で分岐するには1を足してゼロなら-1、1を引いてゼロなら1、どちらでもなければゼロ、みたいなロジックのはずだけど、負ゼ正で分岐するならゼロに対する比較を行って、ゼロフラグが立っていればゼロ、マイナスフラグが立っていれば負数、そうでなければ正数、みたいに分岐できるはず。CPU依存なので実際どういう処理になるのかはわからないけど。



 プログラムで変数を非表示(触るとコンパイルエラー)にするような機能が欲しくなるときがたまにある。例えばint i = 123; Console.WriteLine(i); delete i; Console.WriteLine(i); double i = 123.456;みたいな感じで、適当な構文で変数名を削除すると、その後に読んだり、新しく作ったりするとコンパイルエラーになる(IDE上でもIntelliSenseで見えなくなる)。ちょっと長いメソッド内の最初の方でしか使わない変数が後ろの方で見えるのがウザいときに使ったりとか。そういう場合はメソッドを切り分けろよということで必要ないんだろうけど。


***


 2018年頃に俄に話題になっていたような気がする、USB-VGAアダプタを使った送信機、そういえばそんなのあったなぁ、と思ってamazonで探したらドングルが売ってたので、試しに購入してみた。

 使っているチップがFL2000という型番なので、これを使ったトランスミッタはfl2kと呼ばれるテクニック。

 Windowsからはうまく動かなかった。zadigでドライバを入れ替えるとエラーメッセージが変わるけど、正常動作ではない。

 試しにUSBメモリにUbuntuを焼いて、ライブUSBで起動して、ソースコードからビルドしてみると、実行時にUSB周りのエラーが出た。それと一緒にusbfs_memory_mbを書き換えろみたいなメッセージも出たので、それに従って設定を変えたら、ちゃんと動くようになった(メッセージではechoで書き換えろと表示されていたけど、sudo echoではうまく書けなくて、sudo viで書き換えた)。本当に動いているのかはわからないけど、少なくともfl2k_testで50MHzの正弦波が出て、Ctrl-Cで止めれば止まる。


 100Mspsで50MHzを出して、イメージが-30dBあたり、というような感じ。

 バイアスが0.7Vあたりなのがちょっと謎い。VGAってもう少し低いはずなんだけど(1MΩで受けてるから2倍になったと考えれば、正常かも)。



 ということで、Windowsで動かすには工夫が必要そう(or現状動かない)、Ubuntuで動かすなら割と簡単、という結果が得られた。USB 3.0接続で10Msps~150Mspsくらいで出力できるDACとして使えそう。

 しかし、Ubuntuかぁ…… Windows側もzadigの設定とかいじる余地はあるから、もしかしたら動くのかもしれないけど。


 今回買ったドングルはamazon.co.jpでレビューも多くて、結構数売れてそう。順当に在庫があるなら当面は入手できるかな? はんだ付けは綺麗だけど、底面パッドがスカスカだったり、Dsub mini15の補強端子がはんだ付けされていなかったり、値段なりではある。


 今回は手持ちのUSB 2.0のメモリにUbuntuを入れてたけど、結構使いやすかったし、SDカードに入れて持っておくのも良さそう。ノートPCはUSB 3.0対応だけど、USB端子は2個しかなくて余裕がないから、これは開けておきたい。充電対応のType-Cもあるけど、これは電源として使っているから、USBメモリを差すのには不適。バレルジャック経由でも給電できるけど、ACアダプタ使うのメンドクセ……

 そういえば、夏頃に中古のノートPCを買ったけど、一通り動作確認してから……とか考えてる間に失念して書いてなかった気がするな。こういうことやろうとするとソフト的に多少壊れても問題ないパソコンが有ると便利。その目的で買ったNUCはSDR用のアダプタに使っちゃってるしな。。。あと、キーボードとかディスプレイとか色々考えずに気軽に使えるノートPCはやっぱり気軽に使える。キーボードやトラックバッドのクセが今まで使っていたものと異なるので使いづらくはあるけど、とはいえ北海道じゃ現物を確認して買うってのも難しい御時世だからねぇ。運試しと思って買うしかない。


 ライブUSBって保存領域を設定しない場合は設定やデータが保存されないらしいけど、これって逆に言えば電源ブチ切りとかあるいは起動中にストレージを抜いても問題ない、みたいな使い方ができたりするんだろうか? そういうふうにググってもいまいち情報が出てこない。スピーカーからブチブチ音がする、とかそういう記事ばっかり。ライブCDとかライブDVDなら書き込みができないから明らかに問題ないけど、リムーバブルディスクだとどうなるんだろうか。


 UbuntuってSDカードにインストール(ライブUSB的な動作でなく)はできるんだろうか。その状態でSDカードの優先度を上げておいて、カードが入っていればUbuntuが起動、それがなければWindowsが起動、みたいな。

 WindowsとUbuntuのデュアルブートに関する記事で、Windowsが入っているドライブを物理的に外してからUbuntuをインストールしたあとでWindowsも接続してBIOSで選択する、みたいな解説もあるから、SDカードの有無で起動OSの選択はできそうな気がする(BIOSからSDカードが見える必要があるけど)。デスクトップPCのHDDならSATAコネクタを抜くだけで切断できるけど、NVMeは着脱がちょっと面倒。ノートPCだと底面パネルを開く手間も増える。

 NVMeをカートリッジみたいに気軽に交換できるラップトップとか無いものかな。FrameworkのStorage Expansion Cardが「高速だからOSの起動にも良いよ」(意訳)みたいなことを書いてあるから、これを使って追加のOSをインストールするとか、あるいはカードを交換していろいろなOS環境を交換したりとかもできるんだろうか。Framework Desktopも正面にスロットが2個あるからこれにOSを入れておけばOSを交換できそうだけど、Desktopの拡張スロットは交換が難しそうだ。

 あるいはそもそもSDカードとかUSBメモリなら、ISOを焼くときに保存領域を設定しておけばインストール作業不要でそのままOSとして使えるのかな?


2025年10月8日水曜日

小ネタ

 水没世界オープンワールドFPS『The Last Caretaker』11月6日に早期アクセス配信へ。ひとりぼっち機械による、人類の未来を賭けた廃墟探索 - AUTOMATON

 オブジェクトのデザインとか色使いがだいぶ好みに近い。

 極端に未来感のあるデザインじゃなくて、例えばスクショのアサルトライフルは普通に現行の銃のカラバリって感じがする。銃に照準器がついていないのは、自身がロボットであると考えれば、自身で座標を管理すればいいわけだから、全く問題ない(ロボットのinstinctive shooting能力は人間とは桁違いだからな)。ただ、銃に残弾表示のモニタがついているのはちょっと違和感があるな。銃のデザインに対してミスマッチ。そういうガジェットを作った人は実際に存在しているから、その延長線上で、ありえないというほどのものでもないけど。とはいえ、ロボットであれば自身で残弾数の管理(記憶)もできるわけだから、むしろAR(拡張現実)的に残弾数を銃にオーバーレイする表示のほうが世界観にあっている気がする。

 チョップスティック付きの発射台から打上げられる巨大なロケットはちょっと未来感があるけど、とはいえ我々の世界だってあと10年もあれば運用されてそうだしねぇ。


 デモ版を少し触った感じ、画面が若干揺れるので酔いやすいのと、ゲームシステムとしてはRustとR.E.P.O.を足してシナリオメインのソロ専用にした感じかな。どっちもやったことないけど。

 デモ版では目が覚めた施設を出たところで終了。その範囲ではあまりシステムは進まないので、クラフトとかの要素はあまりわからない。手間を掛けて施設内のリソースを全部使えばかなりのところまでは行けそうだけど、時間はだいぶ掛かりそう。

 時間をかけてゆっくり進めていく感じのゲームという感じ。



 出口は見えたか、DMG森精機担当役員が語る欧州市場の行方と工作機械の将来:EMOハノーバー2025(1/2 ページ) - MONOist

 公式のYouTubeの動画だとドローンで飛び回ってる映像とかあるけど、展示場の建物一つ丸ごと全体を使って、ほんとにドローンで飛ばないと紹介できないくらいデカいブースを構えてるのよな。

「もう1つは、ソフトウェアデファインドだ。将来的には例えばギア加工のソフトウェアを購入することで、既存の工作機械にも機能追加できるようにしたい」

 言うは易しだし、そうしたいんだろうけど、しかし既存の工作機械にも追加するってのは結構大変そうだけどなぁ。ここで言う「既存」がどれくらいのタイムラインを考えているのかわからないけど。「今現在設置してある」のか、「このサービスを開始した時点で設置してある」なのか。ハードウェア依存度の高い機能だってあるだろうし(例えばAIチップリムーバルとか、3Dスキャナとか、工具スキャナとか)、そういう機能が不要なユーザーまで「将来使うかもしれませんよね?」でハードウェア全部盛りの機械を売るのもどうかと思うが。まあ、そういうユーザーにこそ「必要になったときはライセンスを買うだけで使えますよ」という売り文句が効くのかもしれないけど。

 ミドル帯の計器(徹底的に低コスト化する必要はなくて、かといって高価な部品を山積みしているわけではない)とか、特に解析機能とかはライセンスだけ後から売るみたいな構成も多いけど、ある程度価格競争力が必要な場合とか、あるいは基本構成では使わないハードウェアのコストが高い場合、ライセンスだけ後売りモデルは厳しそうな気がする。DMGの場合前者の問題はないだろうけど、後者はどうだろうか。水分や油分の飛沫が多い機械の中で何年も動いてなかったハードウェアをいきなりノートラブルで100%動かさなきゃいけない分で信頼性を確保するためのコストもかかるし。

 あるいは、ハードウェアが必要な機能は注文時に指定して、そうでない機能(CAD/CAMを内蔵して歯車加工とか)だけライセンスで売ることを考えているのかもしれないけど。



 とある日に受信した謎のリプライ

 とある日とか言いながらガッツリ日付見えてるけど。

 Mode-Cに矛盾しないリプライが1個、それ以外の従来型リプライが3個、それとMode-S応答が出ている。

 Mode-Cにコーディングされていない応答のうち、一つはA列(1桁目)だけセットされていて、それ以外はABD列(1,2,4桁)あるいはBD列(2,4桁)がセットされている。さらにA列だけの応答とBD列の応答は周期が低い。

 この時間帯をFr24で見てみると、旭川空港(RJEC)周辺でC-2が飛んでいたらしい。珍しい。飛び方も変な感じ。空自の機体であれば、Mode-1,2,3/A,C,Sに対応している可能性はありそう。ただしこの推定が正しいとして、1,2応答と3/A,C応答は周波数特性が若干異なる。もしかしたら汎用の3/A,Cトランスポンダと、主に軍用でしか使われていない1,2トランスポンダは機材が別なのかもしれない。Mode-Sはサンプリングレートが足りないので特性は不明。

 四半世紀くらい前にENRIが取得したデータによると、陸自駐屯地付近でMode-1/2のインテロゲーションを検出したらしい。例えば旭川駐屯地(800m級の滑走路が1本ある)のレーダーが1,2,3/A,Cの質問を出していて、それに応答しているという可能性はありえる。


 4月に取ったF-15らしい機体の応答を記録したファイルを再度見てみると、トータルで10個のMode-1,2,3/A,C応答と1個のMode-S応答が取得できていて、その内で、Mode-Cに矛盾しない応答が3個あって、Mode-1に矛盾しない応答が2個ある。この時、2機のF-15と1機の民間機が飛んでいたはずだから、F-15がMode-1,2,3/A,Cを1個ずつ8個、民間機がMode-3/A,C,Sと考えると矛盾しない。

 空自機はMode-1,2応答も返して、陸自の対空レーダーも常時Mode-1,2の問い合わせを行っている、というような感じなのかな?

 先日受信したUH-60(千歳救難?)は2種類(おそらくMode-3/A,C)の応答しか出していないから、正面に出る機材か否かではなくて、機体規模(ある程度複雑なアビオを積めるかどうか)によるんだろうけど。あるいは、F-15は設計が古いから搭載、C-2は機体規模に余裕があるから搭載、みたいな可能性もあるけど、それなら同様に設計が古いUH-60だって積んでいてもいいだろうし。あるいは、位置関係の問題でMode-1,2の質問が届いていないだけかもしれないけど。



 別の日

 1200(Mode-3/A)とMode-C応答(FL20台前半)が出ていて、時々フレーミングパルス(赤枠で囲った部分)も低頻度で出している機体。Mode-Sは無く、Fr24にも機影なし。

 1秒程度の間にMode-Cとフレーミングパルスがランダムに多数出ているタイミングもあるので、一時的に気圧計とトランスポンダの接続が失われている、という感じでもない。もしも振動で接触不良になるような場合、全ビットがクリアされるわけではなく、もっと乱雑なパターンになるはず。それに、たぶんGillhamコードは主に負論理で接続するはずだから、接触不良はクリアされる方向ではなくセットされる方向になるはず。Gillhamコードとして不正なビットパターンはトランスポンダが全ビットクリアに上書きする挙動があるとしても、もう少し乱雑なビット列が出てもいい気がする。


 こういう機体って航空管制官からはどういうふうに見えるんだろうか? Mode-C質問でフレーミングパルスを返す場合、Gillhamコードとして正しくないから、レーダースクリーンには映らないはず。Mode-3/A質問でフレーミングパルスを返していた場合は同一の場所に複数の(異なるスコークの)機体が存在しているわけだから、目立つような表示になりそう。もしも管制官から見えるような状態(状況認識に支障をきたすような表示)であれば、トランスポンダの不調として何らかのルートで運用者に連絡が行くはずだから、フレーミングパルスを出すようなトランスポンダが放置されているとすると、管制官からは見えない状態な気がする。



 ATCトランスポンダの応答は統計とか取ったら色々面白そうだけど、ウチは地形的にあまり多くの応答が得られないからなー。高高度を飛んでいる国際線(アジア欧米間とか)の機体だと結構遠くまでかすかに受信できることがあるから、国内線の受信数があまり稼げないのは地形の問題だと思うんだけど。




https://www.jstage.jst.go.jp/article/ieiej/32/7/32_474/_pdf/-char/ja

 2012年。首都圏外郭放水路の概要。

 200m³/sの排水能力があるので、50m³/sのポンプを4台並べている。14mを揚げる必要があるから、航空機用エンジンのガスタービンエンジンを流用してポンプを駆動しているんだそう。

 送水は圧送で行っているので、排水ポンプのOFF等でのサージングが問題になる。調圧水槽はその圧力を逃がすためのもので、だから「調圧」と言うんだそうだ。


https://www.jstage.jst.go.jp/article/tsj/32/6/32_6_337/_pdf/-char/ja

 2004年。首都圏外郭放水路の、特にポンプとか排水周りの話。

 解析で水路を最適化することでコンパクト化したりとか。動力は従来はディーゼルエンジン(水冷)を使っていたが、ガスタービン化で空冷化ができ、130トンから30トンまで軽量化でき、低振動なので基礎も簡易化できる。


https://www.jstage.jst.go.jp/article/tsj1973/17/2/17_2_93/_pdf

 1989年。下水設備のポンプに関して。ガスタービンエンジンが使われ始めた頃かな。いろいろな利点や欠点など。起動時の回転数とか排気温度とかの図も。1軸型はクラッチ(油圧クラッチ等)が必要、2軸型はクラッチ不要、みたいな話はヘリコプター用のターボシャフトエンジンと同じ感じ(この時点では2軸型は開発中といったあたりらしいけど)。

 道路が舗装されることで雨水が下水に流れ込んで、流量が急激に変動することが増えてきて、その対策とか。

 あとは軸受周りの話とか、冷却の話とか。一次冷却水・二次冷却水・クーリングタワーとかは、あちこちで使われてる用語なんだろうけどな。


https://dl.ndl.go.jp/view/prepareDownload?itemId=info%3Andljp%2Fpid%2F3527103&contentNo=1

 1999年。MHIのポンプ用ガスタービン。

 P&Wのガス発生機を使用し、ガスをL字に折り曲げて垂直な軸で出力し、減速したうえでポンプを駆動するのに使う。

 長さのあるジェットエンジンは寝せたまま、出力軸は垂直で使いたい、みたいな用途かな。ただ、結局ベベルギアで減速機を組むならそこで軸を曲げればいいんじゃね?という気はする。あくまでもこの減速機は試験用のコンフィグレーションであって、実際には平行軸減速機だけで減速するつもりなのかもしれないけど(平衡軸と書いてあるのはたぶん平行軸の誤変換だと思うんだけど、平衡と誤変換するあたりいかにも熱屋さんって感じがする)。



https://www.jstage.jst.go.jp/article/jime1966/8/8/8_8_513/_pdf

 1973年。船舶用ガスタービンの特集。

 船舶用ガスタービンはどういう方向性がいいか。航空機用を転用するか、地上用を流用するか。航空機用は信頼性は高いがいささか過剰である。ところで、技術の将来性をどのように見極めるか。例えば昭和初期に航空機用のエンジンは空冷か水冷かという問題があった。空冷は500PSあたりが限界であって、それ以上は水冷が必要であると考えられていた。ところが大戦末期には水冷は1500PS程度までしか実現せず、空冷は3500PSまで実現できた。学術研究と違って応用では様々なファクターが影響するから、簡単に予測することができない。経済性が要求される商船は陸上用、高速性が要求される艦艇は航空機用のガスタービンを転用するようになるのではないか。

 そういう寄稿が数人分でいろいろな見方が書かれている。


 日本での船舶周りの技術開発。戦前は海軍がリソースを提供して技術開発を行っていた(魚雷艇みたいな速力が必要な用途を想定)。戦後は防衛庁がその役割を担っているが、ディーゼルエンジンの高性能化(過給器の搭載とか)で性能の向上が続いているため、ガスタービンの民間への採用はほとんど行われず、専ら艦艇に搭載されるのみ。

 クローズドサイクルのガスタービン。原子力船に応用が効く技術として開発していたらしい。なんとなく日本の核(原子力)アレルギーから考えれば日本で原子力船ってあり得ないだろとか思ってしまうけど、とはいえ日本だって原子力船を建造した実績はあるわけだしな(その船体は現役で(あと数ヶ月は)使われているわけだし)。昔は今みたいに原子力に対するアレルギーはそれほど強くなかったのかも(時代によっては核廃絶を訴える組織でも「共産主義の核は人類平和に資するから反対すべきではない」みたいな論調があったみたいだし)。時代を経るごとに様々な原子力事故があって、どんどん拒否反応が強くなっていったんだろうな。あるいはマスコミが不適切な報道を行ってそれを増幅していった、というような話もあるだろうし、それを読む側も不適切な報道を鵜呑みにしているということもあるだろうし。


 戦時中の船舶用ガスタービンの開発。この話は当時の随想があるらしいんだけど、j-stage内には無いっぽい。後続誌の公式サイトから見れる目次のPDFからタイトルはわかるけど、そのPDFに含まれているリンクはすでにドメインが売られていてリンク切れ、タイトルで検索しても出てこない。


https://www.jstage.jst.go.jp/article/jime/47/2/47_213/_pdf/-char/ja

 飛鳥II(客船)の機関系の解説。ディーゼル発電機(主x4、補x1)で発電し、モーターで可変ピッチプロペラ(低速時65rpm~巡航時最大132rpm)を回す。巡航18ktで重油90t/d、全速力(21kt)で120t/d。


 飛鳥IIIについては、検索すると燃料にLNG・軽油・重油の3種類を使用できる、みたいなことは書いてあるけど、じゃあそれをどうやって燃やしているんだ、という話は全く出てこない。柔軟性の高さという点ではガスタービンで燃やしていそうな気もするけど、とはいえ適当な燃料をボイラーで燃やして水蒸気でタービンを回して発電する、みたいなやり方でも燃料の自由度は高そうだしなぁ。


https://www.jstage.jst.go.jp/article/ieejjournal/129/2/129_2_97/_pdf

 2009年。船舶の電気推進について。歴史とか、実際の構成例とか、その際の負荷の計算とか。


 結局、民間の船舶では一部を除いて現在でもディーゼルが主力なのかな。LNG運搬船みたいに気化ガス(BOG)が出る場合はそれを燃やすこともできるが、その場合もボイラーを炊いて蒸気でタービンを回すか、あるいはガスジェネレータ(ガスタービン)に使うかは別れるっぽいし。

 ディーゼルの欠点は広い出力範囲での燃費の悪さだけど、輸送船であれば最適な燃費で巡航するからデメリットにはならない。旅客船は頻繁な入出港やスケジュール管理上最適な燃費を維持することは難しいが、電気推進化でエンジン負荷をある程度一定に維持できるようになった以上、ディーゼルのデメリットは少なくなってきた。ガスタービンの利点は出力に対して軽量な点で、軽量化が最重要な航空機や、軽量化のインセンティブのある艦艇(戦闘艦)には利点だが、大型船では軽量化の要求はさほど大きくない(巨大で堅牢なディーゼルエンジンを積んでいることからもうかがえる)。軽くないと浮かぶことができない飛行機とか、飛行機ほどではないにしても傾斜で位置エネルギーを稼がなければならない陸上車両に比べれば、船は出力あたりの軽量化はさほど要求されなくて、ガスタービンの利点はあまり活かせないのかも。複雑なサイクルで燃費を改善したガスタービンもあるけど、そこまで複雑なものを積むくらいならディーゼルのままでもいいじゃん、みたいな。



 関係ないけど、タービンつながりの最近のニュース

 AIブームの意外な勝者、キャタピラーに脚光-隠れた主役はタービン - Bloomberg

 鉱山向けの採掘機械や建設機械から、発電機までを手広く扱うキャタピラーは、最近のAI関連で業績が伸びるのではないか、という話。

 CATのディーゼルエンジンの発電機はYouTubeで見たことあるような気もするけど、ガスタービンエンジンの発電機も作ってるんだな。ディーゼルは建機用のエンジンと共通化ができるだろうけど、ガスタービンってどっから出てきたヤツなんだろう?

 データセンターみたいに莫大な電力を使う場合、熱効率のスケールメリットが強烈に効いてくるだろうから、現地で発電するより電力会社の巨大な発電機を使ったほうが効率が良さそうな気もするけど、そんなこと言ってられないくらいに需要が逼迫してるのかな。




https://www.jstage.jst.go.jp/article/micromechatronics/42/1/42_KJ00001887636/_pdf/-char/ja

 1998年。JRCの人がGPSの小型化技術について解説したもの。JRCが'84年に作った船舶用の受信機から、'97年の車載用まで、例えばアンテナ容積13分の1、受信機容積300分の1、そのためにどういう技術が使われたか、等。

 一番最後に「現在のGPSはここまで小型化できた」というイメージとして、カシオの腕時計PROTREKと並べた写真がある。腕時計のケースより一回り大きいサイズでアンテナも内蔵できるようになったぞ、と。なお、GPS受信機能を内蔵したPROTREKが発売されるのはこの翌年だから、カシオ社内では腕時計にGPSを内蔵する試みはある程度形になっていたはず。/* ぐぐるとPROTREKの変遷の話も出てくるけど、これも面白い。ユーザーの視点をどうやって得るかとか。GPSの話が全く出てこないのも興味深い */


https://www.jstage.jst.go.jp/article/micromechatronics/59/213/59_9/_pdf/-char/ja

 2015年。GPSハイブリッドソーラー電波時計。11x11x3mmのアンテナとか、ソニーの受信チップとか。省電力化の工夫。測位を行うのはタイムゾーンの判定時だけ。それ以外は一つの衛星のword2のTOW狙い撃ちで受信時間を極限化する(パリティ含めて1ワード分受信するのかな?)。自動受信を行う場合は太陽電池で屋外にいるかどうかの判定を行う。屋内にいる場合は標準電波の受信を試みる(消費電力がGPSの数百分の1で済む)。

 GPSと標準電波の違いで、標準電波は周波数が低いから回折しやすい、と説明しているけど、長波あたりだと家の中で受信できるのは回折とは別の原理のような気もするのだが、どうなんだろうか。

 GPSを使用した腕時計の省電力化の工夫では衛星1個で時刻だけ受信するという場合が多い気がするけど、その場合の時刻精度ってどれくらいあるんだろう? 衛星の位置関係によって10ms台くらいはズレそう。アナログ腕時計で10ms程度の確度が得られるなら十分だろ、という話だけど。


https://www.jstage.jst.go.jp/article/micromechatronics/65/224/65_2/_pdf

 2021年。女性向けGPSソーラーウォッチの話。特にアンテナ周り。

 小径・薄型でありながらアーバンキャニオンで測位しなきゃいけないので大変そうだ。測位演算はあくまでもタイムゾーンの自動設定が目的であって、時刻同期は衛星1個でやるっぽいけど。人体をGNDに使いつつ、腕につけたときに12時方向が上を向くので、その方向に指向性を持たせているらしい。

 アンテナ、直径28mm、厚さ1.25mm。五百円硬貨より0.6mm薄いくらい。



https://www.jstage.jst.go.jp/article/jin/98/0/98_KJ00004696943/_pdf

 1997年。衛星EPIRBに搭載するGPSアンテナのフィージビリティモデル。GPS受信用の円偏波アンテナの中心に穴を開けてEPRIB送信用のモノポールアンテナを立てる感じ。両アンテナを1箇所で設置できるので、実装面積を小さくできる。

 V/Uのグランドプレーンがやたらとデカイ。実際にEPIRB送信機を作るならGPはもっと小さくしそうだけど、そうするとGPSアンテナの特性も変わりそうだが。とりあえず真ん中にアンテナ立てて動作できることを実証した、という感じなのかな。



https://www.jstage.jst.go.jp/article/jinnavib/98/0/98_KJ00004997681/_pdf

 1988年。測位システム(Loran-C、NNSS、GPS、等)の小型化について。昭和63年ですって。GPSって昭和の時代に作られたシステムなんだよなぁ。

 マイコンを使ったり、チップ部品を使ったり、カスタムLSI(フラットパッケージ)を使ったり。

 ロックウェル・コリンズのハンディ型GPS受信機の写真。




 調べ物をしているときにたまに出てくる大学院生とかが書いた資料、なんだかなぁ、って内容が結構多くて、なんだかなぁ。その結論は正しいのかもしれないけど、でもそこにいたる前提条件は違うんじゃない?みたいな。もうちょっと真面目に検討してから発表資料を作ればいいのに。大学院生はそんなに暇じゃねえよ、と言われると返す言葉もないけど。




 外部同期のできないSDR受信機でGPSの時刻に、IFにローカルで作った疑似信号を注入して同期するやつ、実際に受信したGPS信号から測位した結果をSBASエフェメリスで出して、AF0,1,2を0にして、擬似距離残差がゼロになるようにローカルを動かせば、GPSに時刻同期したクロックになるんだろうか? その擬似衛星を測位演算から除外するロジックが必要になるけど、今のところ自作の受信機はSBAS衛星は測位には使っていないから問題ない。あるいは、定期的にMT0を出しておけば除外してくれるはずだし。

 GPS C/A SBASをマイコンから出力するのってどれくらい大変なんだろうか。相対静止な信号でいいからドップラーは気にする必要はなくて、信号の生成はわりと簡単そうな気もするけど、とはいえコアクロックが144MHzとかだと1.023MHzにコヒーレントなクロックが作れないから、シンプルなクロックツリーでSDRドングルにコヒーレントなC/A信号を出すのは大変そうだ。



 みちびき6号機の概要|みちびき6号機特設サイト

 外観や内装の図。DS2000の内側が細かくレンダリングされている図って意外と珍しい気がする。外から見える白い円筒(TWTAの冷却器)がその内側ではどうなっているか、とか。



 GPSのAF0,1,2成分

 とりあえず手元に航法メッセージがある5月前半以降。

 大きくジャンプしているやつはPRN35とかPRN36とか、正式運用ではない衛星。

 PRN20が途中で長期間止まったあとに誤差ゼロ付近を放送してすぐにジャンプしている。PRN21は放送開始直後に大きな傾斜があって、だんだん収束していっている感じ。

 PRN26は途中で傾斜が大きく変わっているけど、クロックの設定を変えたのかな?

 GPSは0.8ms以下で運用しているけど、QZSは数百ナノ秒とか数マイクロ秒を超えない範囲で運用している感じ。QZSはGEO機がSBASと共有でこれはクロック誤差の許容幅が非常に狭いから、それに対応した制御になっていて、他の非静止衛星でも同様に制御している、という感じかな。

 GPSのクロックエラー、試しにグラフ化してみたけど、見ても大して面白い感じではないかなー。もうちょっと頻繁にクロックの調整を行っているのかな、と思っていたけど、意外と低頻度というか、安定している。



 全く再現できないけど、C#で個別のBitmap/Graphicsインスタンスにマルチスレッドで並行して触るとInvalidOperationException(Object is currently in use elsewhere.)が出る気がする。Formに表示する複数の画像を生成したい場合、マルチスレッドで同時に作るのではなくて、シングルスレッドで作るほうがいいのかもしれない。できればGUIスレッドで作るほうがForm側(C#ライブラリ側)と衝突しなくていいんだろうけど、それだと時間がかかる描画処理が難しくなるから、せいぜい描画周りだけを一つのTaskに切り出す、程度で。

 ここで言うobjectってBitmapとかGraphicsのインスタンスのことだと思ってたけど、実際はGDI+のことを言っていたんだろうか? 


2025年10月1日水曜日

小ネタ



 小さいボトルのラベルに「ブレーキ液」とだけ書いてあって、いやいやいくらなんでもここまでダサい商品もないでしょ……と思ってモノタロウで探してみたら、一番上に出てきたモノタロウPBのブレーキフルードの缶が結構ダサくて感心してしまった。

 カップ麺の容器もだいぶダサいけど、地元の祭りで買った麺類とかが入っていたスチロール容器と考えればまあわからんこともない。


 行動範囲は関東近郊だけなんだろうか? それとも日本の広い範囲をギュッと凝縮してマップ化するんだろうか。拡張コンテンツでもいいから北海道フィールドが欲しいなー。四季表現で変化に富んだマップになりそう。とはいえ、紅葉なら日本の広い範囲で見られるし、雪にしても北海道より本州の日本海側とかのほうが積雪も深いしなぁ。季節表現だけ見ればFH4と似たような結果にもなりそうだし。

 やっぱり過去作との差別化を考えると富士山周辺+アーバンキャニオンがメインになるのかな。




 Call of Duty: Black Ops 7 | How Japan Inspired Multiplayer Maps | Tokyo Game Show 2025 - YouTube

 CoD BO7のマルチプレイヤーモードに日本インスパイアのマップが多く追加されたよ。

 例のごとく日本語版は日本語字幕をつけて1080Pで再エンコードしてるので、日本語版で話の雰囲気を掴んだらオリジナルの4Kを見るのがおすすめ。映像めっちゃきれい。


 都市部はあちこちに漢字、ひらがな、カタカナ、アルファベットが混在していいて、だいぶ日本っぽい気がする。字面やフォント、書いてある文字なんかを見ると違和感はあるけども。

 アーケードのお土産屋の対面にある本屋っぽい店のロゴがすごいな「SHIORI」とアルファベットで表記して、そのOの中に栞の漢字があしらわれている。どっかからデザインを盗んだわけじゃなくて、デザイナーがCoD用に作ったロゴならすごい。通りの奥にあるカエルモチーフの店はタピオカ屋らしくて、2035年世界線で店舗を構えてるってことは、もう一度タピオカブームが来るってことかな? その横にあるのが交番だから、おそらく駅前の一等地みたいな場所のはず。そこでタピオカ専門店を開けるのはだいぶ人気な店なんだろう。

 モノレールの駅も実際の駅(湘南モノレールや千葉都市モノレールみたいな懸垂式モノレールの画像検索で出てくる写真)とかなり雰囲気が似てる。


「TOSHIN - 都心 -」エリアは、駅から出たすぐの場所に平和のモニュメントがあって、その向こう側に交番、その横がタピオカの店、その正面のアーケード街に観光客が来るお土産屋や地元民が来る本屋があって、駅から出てすぐの場所にはカラオケ屋もあって、駅から離れると高層ビル群があって、みたいな感じか。都心と言うよりはちょっと開発が遅れている郊外という感じもするな。

 屋上にあるテレビのアンテナはVHFも残っている感じ。VHFのアンテナの新設は2005年とかそのあたりで終わっているはずだから、30年モノの建物か。まあ、この街の雰囲気からすれば妥当なところか。

「旧市街のような地区から中心部の都市エリアへ」みたいな発言があるから、やはり地理と時代をグラデーションに作ってるんだろうな。

 遠景に高いタワーがあるけど、アンテナの向きはその方向を向いていないから、電波塔ではなく単に観光用の施設のはず。ある程度無線通信の方向にも興味がある僕としては、色々なゲームの中でテレビアンテナや衛星アンテナの向きがバラバラなのはちょっともにょる。


「DEN - デン -」マップは宮殿や神殿とかの殿だろうけど、あんまりトラディショナルな城という雰囲気はないな。最新の防空システムみたいなものも置いてあったり、建物も天窓を追加したり、結構改造してある。日本で古くからある城(orそれに見立てた城)をこういうふうに改造するのは結構大変そうだ。美術館みたいなデザイン重視の建物で城っぽい建物と現代的なデザインを融合させる、みたいなのはあるかもしれないけど。中のサイバーチックな設備も合わせて、外資系が最近建てた建築物って感じがする。それに外観はともかく、内装のデザインは和というより中華っぽい感じ。


 違和感はありつつ、よく作られてるマップだと思う。普通に見て歩くだけでも面白そう。特に市街地の商業施設のデザインはところどころかなりすごい。日本を好きな人がデザインしたのか、あるいは日本人がデザインチームにいるのか。でも日本マップを作るうえでスタッフに日本人がいるならもう少し違和感の少ないデザインになるようにコントロールするだろうし。

 自分はCoD BOは1作目だけシナリオをちょろっと遊んで以降は触ってないからなー。最初は冷戦時代だったはずなのにいつの間にかSF世界感になってる。

 そういえばCoD BO7のトレーラーでも東京が出てきてたな。たぶんシナリオモードのシーンだと思うんだけど。

 映像が綺麗だしBGV用にレンダリングシーンマシマシなPVが欲しいなー。




 この手のエクステンションアダプタ、トルクレンチみたいに静的なトルクならともかく、インパクトレンチみたいに動的なトルクはだいぶ減衰しそうだけど、問題ないんだろうか。エアコンのボルトとかだとよほど振動するような場所でもない限りは問題ないだろうけど、単管足場みたいに上を歩いてガタガタ振動して、しかも人命に関わるような場所だと、そのあたりは心配なところ。



 解析しながら別データを測定可能 テクトロニクスの新オシロ:「7シリーズDPO」 - EE Times Japan

 10G SFP+でデータを転送することで、オシロでのサンプリングとPCでの解析を同時並行で処理できる。AMDのCPUやNVIDIAのGPUを積んであるらしいけど、サンプリングと独立して解析/描画ができないなら何に使ってるんだろう。

 5/6シリーズだと2Uラックマウント型でアナログ周りだけ切り出してデータの取得だけできるような製品が売ってるけど、今のところ7シリーズではそういう製品はなさそう(少なくとも日本サイトでは)。そのうち売るんだろうけど、ネットワーク連携前提なら最初から(or優先して)ラックマウント型を得ればいいのにな。


 将来出すシリーズで、GPUをAMDに置き換えたりすることはあるんだろうか。低レベル信号を処理するFPGAはXilinxだろうし、CPUはAMDだし。GPUもAMDになれば上から下まで全部AMDでフルコンボ。



 ガジェット系の分野で部品名等の接頭辞としてついているe、例えばeMMCやeGPU、全く逆の意味なのに同じ接頭辞なのどうにかならなかったのかな。eMMCのeはEmbeddedのE、eGPUのeはExternalのE。同じEでも「内蔵」と「外付け」の両方の意味がある。大抵は文脈というか字面で区別できるけど。



 ゲーム系ニュースメディアのIGN、記事の背景が半透明の白でその後ろに広告の画像が表示される。僕はこういう表示をされると非常に気が散って文字が読めないので、IGNにしかない記事以外はできるだけ避けている。

 どうしてもIGNで読まなきゃいけないときは読まざるを得ないけど、とはいえ記事の中身はほとんど頭に入ってこない。例えば記事を読もうと思ってスクロールしたら透過度が下がって背景の広告がほぼ見えなくなる、みたいなデザインもできるはずだし、そもそも画像は一部しか見えていないから広告効果だってほとんどないだろうし。記事の背景に常にカラフルな画像を表示するのを許可したのは一体どこの馬鹿だ?って感じ。

 試しにChromeのリーディングモードを使ってみたら、画面を半分弱に分割して狭い方にテキストだけが表示されるとかいう、これこそ本当に馬鹿が考えた機能って感じ。Google Lensもそうだけど、Chromeの組み込み機能って本当にクソだよな。Googleの稼ぎに埋め込み広告とかもあるわけだから、それらが見えないリーディングモードはGoogleの稼ぎを落とすからダメ、みたいなことなんだろうけど。

 EdgeのAIも右側に追加したペインで表示されるけど、とはいえURLでオンラインサイトを読み込めばブラウザ全画面でCopilotを使えるからまだマシ。



 C#で用意されてるTryParse系のやつ、outを引数に取るけど、refを取るやつがほしい時がある。if(double.TryParse(input,out var tmp)){value=tmp;}みたいな処理を、double.TryParse(input,ref value);で済ませられる。


 C#のQueueってforeachで回せば順番にPeekしてくれるけど、逆順に取り出すのっていい感じにできないものかな。LINQで反転させればいいんだけど、回数が多いとパフォーマンスが気になるというか。カリカリまで切り詰めなきゃいけないなら自分で必要なアルゴリズムのバッファを組むんだけど、そこまでするほどでもないというか……



https://www.jahep.org/hepnews/2009/Vol28No1-2009.4.5.6OkumuraShiozawaNakayamaHayatoYamada.pdf

 2009年。スーパーカミオカンデのDAQの更新について。

 約1.3万本のPMTから出てくる実イベントレート数kHzの信号を、可能な限り低エネルギーまで漏らさずに記録する必要がある。PMTから出てくるアナログ信号をASICやFPGAでデジタイズして、100BASEでワークステーションへ転送し、信号を時分割して各ワークステーションでソフト的にトリガ処理を行い、バックグラウンドノイズを除去して記録。

 最大で7.2万イベント/10秒の信号を捉えることができるので、我々の銀河系中心付近で発生した超新星爆発でもデータを逃さず取得できる。



https://www.qst.go.jp/uploaded/attachment/37821.pdf

 SK全体の概要とか。

 J-PARKとのT2K実験では2拠点間をGPSコモンビュー(NICTソース)で時刻同期してるんだとか。単純に時刻を合わせるだけならUTC(NICT)に同期する必要はないはずだけど、2拠点間同期用のGPS受信機より、UTC同期用GPS受信機のほうが安く用意できるんだろう。受信機のパネルにNICTのロゴが入ってるけど、これってNICTが売ってるものなんだろうか? それともあくまでもNICTのサーバーにアクセスしてUTC(NICT)に同期しますよ、という意思表示なんだろうか。

 最後にハイパーカミオカンデの話も少し。SKではPMTからのアナログ信号を同軸線で1箇所に集めてデジタル化しているけど、HKではPMTのすぐ近くでデジタル化することで、信号品質を改善するんだそうだ。電子回路が故障すると水を抜かない限り修理できないので、信頼性が重要。高さ70m、26万トンもの水槽の中で長期間稼働できる耐圧容器が必要になる。

 非修理系に近いという点で人工衛星っぽさもあるけど、むしろ耐圧容器に入れて水中で使うことを考えると光海底ケーブルの中継機とかのほうが近そう。修理できないことはないけどめちゃくちゃ高コスト、という部分も含めて。水深数千mで四半世紀、とかに比べれば、水深100mで10年~くらいだと、そこまで厳しくはないかな? あまり変わらないか。複雑な信号処理が必要とか、過去に作ったノウハウが無いものをいきなり高信頼で作らなきゃいけない難しさもあるし。



https://www.fujitsu.com/jp/documents/about/resources/publications/magazine/backnumber/vol67-6/paper01.pdf

 2016年。カミオカンデとかニュートリノの説明とか。例によってカミオカンデのデータ処理は富士通が関わってるんだろうか? 

 この時点でHKはSKの20倍の有効体積を想定していたらしい(現在8倍で建設中)。



 カミオカンデ、スーパーカミオカンデ、ハイパーカミオカンデ、と来て、その次ってどうするんだろうか。語感とか考えるとウルトラカミオカンデとか? うーん…… 日本で「ウルトラ」はちょっと安易すぎるという気がしないでもない。

 そもそもHKよりさらに大きくすることってあるんだろうか。理学要求より土木側で実現できるかどうかの制限が強そう。2,30年後に土木技術がどれくらい発達しているかによるか。これ以上体積を大きくするならIceCubeみたいにその場にあるシンチレータを使うような方向になるんだろうか。HKで淡水中に設置したエレキが動くことを確認できれば、それを海水中に持っていって…… 宇宙線や電磁波(太陽光)を十分に遮蔽することを考えるとかなり深い部分に設置しなくちゃいけないから、耐圧性が厳しそうだな。普通の海だと発光生物が入ってくることも考えなきゃいけないし。


 首都圏外郭放水路の調圧水槽は容量が70万トン弱だから、HKの有効体積19万トンの3.5倍くらいある。深さが全く違うから単純に比較することはできないにしても。支柱を作っていいならHKより巨大なタンクも作れるんだろうけど、それによってどれくらい信号が遮蔽されるのか。あるいは、柱にもPMTを貼り付けて、円錐の放射点を3次元的に計測することも考えられそうだけど。まあ、その程度のことは東大の頭のいい人たちが寄って集って考え尽くしてるだろうし。

 SKみたいに中央集権的にデータを集めるとタンクの大型化やPMTの数にはエレキ側から制約が出てくるけど、HKみたいに分散型でデータをハンドリングするならそのあたりの制限はある程度少なくなりそう。



 GNSSの測位信号、いままでC/Aしか触ってなかったから他のコードはよくわからないんだけど、例えばL1 C/AとL2Cは別の符号を使っているわけだから、L1/L2をコヒーレントな局発で同じ周波数にダウンコンバートして、それを加算してからADCでデジタル化したあとで相関器で符号を分離して、元の複数周波数の測位信号を高いタイミング精度で測位信号を得る(複数のADCの同期が不要)、みたいなものってあるんだろうか?

 そもそも2周波(or more)対応なGNSS受信機自体ほとんど情報が出てこないのがな。

 アナログ段で混合して相関器で分離できるなら、L1/L2を適当な周波数(数十~数百MHz付近)にダウンコンバートして加算するアダプタをつかって、その後ろはR820T/RTL2832でPCに取り込む、みたいな感じにして、安価に2周波をコヒーレントにサンプリングする、みたいなことも可能なんだろうか(そういう特殊なダウンコンバータが安く作れるかは別として)。

 あるいは、適当なドングルを改造して、2つのドングルをコヒーレントに並べて、R820Tから出てきたIF(数MHz帯)を単純な回路で加算して、片方のRTL2832でサンプリングする、みたいな感じも考えられるか。下手に専用のアナログ回路を作るよりこっちのほうが楽かも。



 ヒーター内蔵GPSアンテナってググっても1個も出てこないんだけど、そういう需要ってないんだろうか?

 小さいアンテナに4℃付近のサーモスタットがついていて、低温時にはヒーターがONになる、みたいな物があれば冬でも使いやすそうだけど、とはいえBias-Teeの0.4W程度じゃ温めるよりも冷えるほうが早そうな気もする。単純に空気中に放熱するだけじゃなくて、グランドプレーンの金属面からもどんどん熱が逃げていくから、温めるなら相当な電力を突っ込まないとダメそう。



https://www.gsi.go.jp/common/000046725.pdf

 電子基準点の凍結対策。アンテナ周りは全く触れていなくて、地盤の凍結(凍上)が問題らしい。

 コンクリートパイルで地下深くの地盤へ固定して、地表付近の基礎は断熱材で覆って凍上を防ぐ、みたいな対策らしい。凍結で土の体積が変わるのが問題なら土と物理的にアイソレートする必要があるんだろうけど、基本的に凍結は等方的だから水平方向はあまり問題ないのかな?


https://www.gsi.go.jp/common/000228079.pdf

 たぶん最近のGEONETの近代化の話。GEONETの資料は数年毎に区切ってその中で「第N年次」という書き方をしているので、それがいつなのか全くわからないな。

 最後の方にレドームにヒータを追加して雪を溶かすための実験を始めた、みたいなことが書いてある。今後はON/OFFの自動化も、みたいな感じだから、現状は手動でON/OFFして雪が溶けるか実験している、といったところか。最近になるまでこういう実験をやっていなかったということは、高精度化してようやく影響が見えてきた、ということなのか、あるいはそこまで手が回っていなかったということなのか。


https://www.gsi.go.jp/common/000025593.pdf

 2006年。「したがって、急激な座標値の変動を地殻変動のシグナルと誤認するような事態を防ぐためにも、レドームへの着雪防止の対策が望まれる」。結構前から認識されていたっぽい。

 着雪対策として超撥水塗装を行うとか、凍上対策として断熱材を入れたり、砂を入れたり。/* この超撥水塗料、メーカーWebサイトには屋外で使うなと明記してあるけどな */


https://www.nra.go.jp/data/000410380.pdf

 原子力規制委員会の資料。前の方に冬季の基線解析で見られる影響の具体例とか。

 凍上で上昇が見られたり、あるいは逆に下降が見られる基準点もある。下降については、冬季に融雪を目的として地下水の汲み上げが行われる影響ではないか、とのこと。

 最近の電子基準点は原子力設備の安全確保に使われたりもするから大変だねぇ。



https://www.jsece.or.jp/event/conf/abstract/2020/pdf/312.pdf

 2020年

 PPK(後解析キネマティック)GPSに対応したドローンで雪面を撮影して、積雪量を推定する。火山での融雪型火山泥流による災害の規模の推定とかに使える。

 PPK対応かつカメラ付きのドローンとしてInspire2を使用。RAW画像を解析することで、特徴点の少ない雪面でも必要な精度で地形モデルを作れる。積雪のない時期での地形との差分を取れば積雪量が得られる。


***


 GPSの受信のやつ

 色々機能が増えてきて手狭になってきた。かろうじてFHD画面に収まるくらいの大きさ。

 一番左側がデータソース。rtl_tcp経由でRTL2832を使うか、WAVファイルからIQファイルを読み込むか、あるいはNMEA0183形式でプロプライエタリなセンテンスで保存したメッセージ/擬似距離を使うか。NMEAで読み込めば60倍速とかで処理できるから、アナログ信号を扱わなくていい範囲のデバッグはかなり楽になる。

 その右側は解析結果をNMEA0183で保存したり、IQファイルを保存したり、細々したコマンドを操作したり。一番下に測位演算の結果を表示している。

 さらにその右側に天球上に衛星配置や電離層遅延の表示と、測位演算での擬似距離残差のグラフ。下には測位演算の結果を3Dで描画する領域があるけど、これは謎のバグが発生していて動作していない(新しく確保したBitmapのインスタンスでGraphicsを作ってもobject is currently in use elsewhereが出る不思議な挙動)。

 その右には受信するPRNを選択するチェックボックスが大量に並んでいるのと、世界地図上に衛星や電離層遅延モデルを表示している。

 一番右側はDCRで送られてくるメッセージの一部を表示しているけど、ここはだいぶ手抜きなので、丸ごと作り変えたい。でもDCRのメッセージ複雑すぎて手を入れるの大変。。。


 衛星選択/世界地図を非表示にするとかなりコンパクトになる。


 衛星が放送しているLNAV/SBASメッセージはせいぜい1Hzとか1/6Hzだから全部保存しても大したデータ量ではない。プロプライエタリな擬似距離は10Hzで保存していて、かなり大量のデータを保存しているから、1日あたり400MB(gzip圧縮時)くらいある。


 擬似距離残差は通常は±30mに収まる。測位演算の精度も水平面は10mとかそれくらいのオーダーに入る。が、たまに擬似距離残差がkm単位まで大きくなることがある。そういう場合は相関器をリセットすれば収束するから、相関器の問題だと思うけど、アナログ的な部分だからデバッグが面倒。

 あと、場合によって相関器をリセットしても収束しない(かつ測位結果が大きくズレる)場合もある。この場合の原因は全く不明。十中八九相関器周りだろうけど。

 通常時に擬似距離残差が±30m位になるのは、ちょっと誤差が大きいような気もする。1桁とまでは言わずとも、もう少し小さくまとまってもいいと思うんだけど。現状、測位演算はサニャック効果だけ考慮して、電離層とか各種遅延は組み込んでいない(AF0/AF1/AF2はもちろん組み込んでいるが)。ただ、電離層遅延はせいぜい数m程度(特に夜間)だし、実際、電離層のモデルをON/OFFするような適当なコードを書いても、擬似距離残差で見えるほどの影響は無い。擬似距離残差のpeak to peakより大きいバイアスがあるから、何らかのバイアスエラーがあると思うんだけど。放送歴に誤差があるならSLASでそれに応じた補正値が放送されるはずだけど、SLASを見てもせいぜい5m程度しか無いから、ちょっと足りない。


 DCRもどうにかしたいのだが。特にDC9 Ash Fallが難解。同じ地域の同じ時刻の異なるステータスがいくつも出てくる。実際に警報が出ているときに気象庁とかに見に行けばどうやって表示するべきかわかるんだろうけど、そのためにはまず警報が出ていることを確認する必要があって、そのためにはDCRの表示機能を作って……


2025年9月24日水曜日

小ネタ




 Delta Force、GRBPみたいなTPSのオリジナルストーリーのゲームモードがあったらだいぶやりたいんだけどなー。キャラ毎に色々な戦術が使えるから、ミッションごとにキャラや装備を選択して好きな戦術(正面突破、ステルス、ハッキング、etc)で目標を達成していく感じで。

 人間同士で戦うゲームだとDelta Forceのオペやウォーフェアしかり、他のFPSでもそうだけど、それぞれ固有の能力を持ったキャラを選択して使うのは当たり前にあるけど、シナリオモードで能力に応じてキャラクターを選んでミッションを進めるみたいなものはあんまり見かけない気がする。そもそも最近はシナリオドリブンのFPS/TPSがどれだけあるのかって話だけど。




 な、なんだってー!?

 確かに、どっちもデルタなのか。それに、DFのオープンβのPVもワニっぽい感じだったし…?

 しかし、どんなコラボになるのかいまいち想像できないな。……オペで現地にある段ボールに隠れたら敵NPCから発見されなくなるとか? 安易ィ

 オペで段ボールを入手して配送センターに隠れると脱出できる、みたいなのはできそうだけど、既存のシステムと差別化できなさそうだしなぁ。

 ウォーフェアにシャゴホッドが出てくるのは流石に駄目だろって感じがするし。


 Delta Force | Official Season "War Ablaze" Cinematic Trailer - YouTube

 日本語版は1080Pで画質ちょっと悪めだけど、グローバル版は4Kでしっかりレンダリングしてるし、アセットだってゲーム内のものとは別のものだろうし。わざわざこういうコンテンツ作れるのすごい。




 トゥーン調&アジアンなGTAみたいな感じかな。テザーに比べて背景が実写寄りになった気はするけど。

 キャラを変えてファストトラベルするシステムは面白そうだけど、結局お気に入りのキャラで固定になりそうな気もする。キャラの個性(ジョブや能力)でうまいこと差別化されていたらいいな。

 キャラを変えてファストトラベルするシステムは、マップの広い範囲でキャラを独自に自動操縦しておく必要があるから、演算範囲が広くて大変そう。計算リソースに余裕が出てきたからそういうシステムが作れるようになった、ってことなのかな。モバイルでも遊べるらしいから、実はそんなに高度なことはやっていないのかもしれないけど。

 しっかし、この規模でちゃんと作ってあってF2Pってのはちょっと頭がおかしいとかそういうレベルじゃねーぞ。DFもそうだけど、中国は他の国のゲームメーカーとはやることがちょっと違うよな。これが資本主義と社会主義の違いか…… 欧米でXbox Game Passはゲーム市場を破壊しているとか言っている間に気がついたら中国資本のF2Pで焼け野原にされてるみたいなことも有り得そうだ。




 アラバマで作ったロケットをパナマ経由でアメリカ西海岸に運んでいるのを見ると、名古屋から種子島まで船で運ぶくらいどうってことない気がしてくるな。



 全国一般人常識チェックで美術のカリスマ級な常識力を披露する石神【 全国一般人常識チェック / 石神のぞみ #石神のぞみ切り抜き 】 - YouTube

 自称宇宙好きが「どの惑星が一番小さい?」でメタ読みしてしっかり外すの流石(褒めてる)。



 JAXA | 金星探査機「あかつき」(PLANET-C)の運用終了

 プレスリリースの文をそのまま読むと昨年4月に姿勢制御系の故障(例えばホイール故障でスラスタによる姿勢制御へ移行)が起きて、通信が確立できなくなって、そのまま最近まで通信が復旧できなかったから、停波して運用終了、みたいな感じ?

「通信の回復に向けて復旧運用を行ってまいりましたが」と書いてあるところを見るとそもそもHKとかコマンドが通ってないって感じに読めるけど、とはいえ姿勢を喪失したところでLGAは使えるはずだし。セーフホールドでスピンに入れたけど太陽角が大きすぎて発電できなくなって、軌道面と太陽の位置関係が変わってSAPが太陽を向いて発電するようになるのを待ったけど、相変わらずコマンドが通らなかった、みたいなことだろうか。だとすると昨年4月から今年の9月まで、金星で丸2年、太陽角が変わるのを待っていたのかな。



 NTTと三菱重工がレーザー無線給電で世界最高効率、1kWを1km送光して152W受電:組み込み開発ニュース(1/2 ページ) - MONOist

 NTTと三菱重工、大気の影響が強い環境下でのレーザ無線給電で世界最高効率を達成~被災地・離島・宇宙などの社会ニーズに応え、新市場を切り開く次世代長距離ワイヤレス送電の確立へ~ | 三菱重工

 汎用の光電変換素子を使っているので、波長に最適化した半導体を使えば受光効率を2倍程度まで改善できるらしい。


 高強度のレーザ照射で補償光学みたいなものって無いんだろうか。受電側で観測したレーザ波面を光通信でフィードバックして、それを送信側で適用して波面を整える。大出力の照射を始める前にフィードバック用の信号をビーコンとして使うようにすれば、適切な受電設備がない場所へ照射する危険性も少ない。緊急で照射を止めたい場合はビーコンを止めれば送信側が直ちに停止するから、安全性も高くなる。良さそうだけどな。

 とはいえ、超高エネルギーのレーザ光を、アクチュエータで制御できるくらいに薄い鏡で反射させないといけないから、そのあたりがネックになりそうではあるか。あと、補償光学が得意なのはMHIじゃなくてMELCO。レーザ給電をMHIがやってるのはレーザ加工機とかの関係かな? ……レーザ加工機ってMELCOじゃね?



 Home | GPS.gov

 GPSの公式サイトの更新が再開されたっぽい。

 ドキュメントの更新はまだ行われていないかな? PRN割り当ても23年4月版が最新。




 千歳の救難隊かな?

 UH-60はUH-1に比べてかなり静か。音に気がついたらもうすぐそこにいる。

 10分くらいで戻ってきた。巡航で25kmくらいだけど、この方向・その距離になにか特徴的なものがあるわけでもない。せいぜい十勝岳の山頂とかがある程度。


 Mode-3/A/C応答と、比較的低い頻度でそれ以外の信号も出ている。ただ、普通のADS-B的な信号ともまた違う。サンプリングレートが低いので波形としては見えないけど、プリアンブルの形が通常のADS-B信号と異なる。

 やっぱり帯域幅の広い受信機ほしいなー。民間機のMode-S/ESもちゃんと受信したいし。



 日曜の午後に飛んでいた謎の機体。かすかに数人乗りくらいのターボプロップ機っぽい音がしたような気はするけど、自信は無し。Fr24に機影無し。

 同じ振幅・同じ周波数特性の応答が同時に4種類出ている。一つはMode-C(高度)の可能性のある応答で、残りの3個はMode-3/A(コード)応答を返している。Mode-Sは無し。

 Mode-3/Aが2個とMode-Cが2個、なら2機のペアの可能性もあるけど、Mode-3/Aが3個、Mode-Cが1個の組み合わせは考えづらい。

 短時間とはいえ10分程度の間に高度変化が全く無いから、Mode-3/Aが4個の可能性も排除はできない。とはいえ、そんなことあり得るかな。Mode-C(or S)が無いとTCASが正常に動作しない(RAが出ない)から、実際に飛んでいる飛行機であればよほどのことがない限りはMode-Cは出すと思うんだけど。

 そもそも、コヒーレントなMode-3/Aを同時に3個も出せるトランスポンダってどういう機材なんだろうか。トランスポンダの精度が良くてたまたまコヒーレントっぽい信号を返していた(同じロットの機材を同じ場所(特に同じ温度環境)に設置すれば周波数は近くなるはず)という可能性もあるけど、その場合は一つのインテロゲーションに対して個別の応答が発生するから正常に復調できなくなる。とすると、1個の機材で個別に返すなり、複数の機材がラウンドロビンで応答するなり、少なくとも複数のコードを返すことを前提とした機材を使っているはず。が、航空機用のトランスポンダでそんな需要があるとも思えないし。謎は深まるばかり。/* そういえば、航空機のトランスポンダの冗長系ってどうやって組んでるんだろうか */

 もしかしたら、Mode-3/AとMode-Cだけでなく、別のモードを使っているのかもしれない。例えばMode-BとMode-Dを使えば、4種類の質問を識別して応答することができる。あるいは、Mode-1とMode-2とMode-3/AとMode-Cの4種類かもしれない。Mode-1は2桁しか応答ができないが、今回受信した4個の中1個は2桁応答に矛盾しないから、可能性は排除できない。とはいえ、Mode-1, 2, 3/A, Cをすべて質問するインテロゲーターってなんぞや?という話だし。いや、心当たりがないわけではないけど、それにしても……



 艦載ヘリコプターの離陸方法、元海自のヘリパイロットの人曰く、艦船から後ろ向きに離陸すると不具合があったときに後ろに落ちるから危険、という話、海外の都市部の救急搬送ヘリでは後ろに離陸する飛び方があったはず。

 ビル群の屋上から前方に離陸して不具合があると他のビルに突っ込むけど、後ろに離陸して緊急着陸が必要になったら操縦桿を前に押し込んで、そのまま前に進んでいけばヘリパッドがある、という考え方。

 真上に離陸してまっすぐ落とすか、後ろに離陸して前向きの速力を得るか、前者の場合は低高度でもスロットルを抜けばそのままズドンと落ちれるし、後者の場合はある程度の高度がないと運動エネルギーを稼げないから、どっちが優れているみたいな話でもなく、機体性能とか運用方針にもよるんだろうけど。そもそもビル群と洋上じゃ考え方も違うだろうしな。



 GPSの相関器でNCOから累計の回転数を取れるように改造して、2つのアンテナから同時に受信した適当なサンプルの搬送波位相(+波数)をグラフ化。アンテナ間は1m未満くらいの距離で適当に置いてる。

 ↑受信機1(base想定)

 ↓受信機2(rover想定)

 波数の整数部は搬送波にロックした段階でゼロにリセットしているけど、ドップラーシフトで発散する。見かけ上のドップラーシフト(受信機のクロックエラー、数百Hz程度)もあるはずだけど、衛星の運動量が大きいので、その成分(数kHz)が支配的。

 この時はサンプリングでちょっとミスっていて、短い時間しかデータが得られなかった。もっと長い時間で見ていれば二次曲線状というか三角関数状というかそういう形の曲線が見えるはずだけど、今回は直線状。


 ↓受信機1と受信機2の二重差

 受信機1と受信機2でそれぞれの衛星にロックするタイミングが異なってバイアスがあるので広い範囲に分散する。


 グラフ化のために、適当なタイミングでの差をオフセットとして使用

 後半のバイアスが小さくなるようにオフセットしているので、前半のオフセットは大きい。後半は安定しているので、前半が暴れているのは過渡的な特性のはず。


 ゼロ付近を拡大

 かなり安定している気がする。今回はPRN10を基準にしているので、これはゼロに張り付く。後ろの方でPRN15が少し飛んでる。PLLが外れたらもっと大きく飛ぶはずだから、中途半端に飛ぶのは謎い。

 全体的に下向きに動いているけど、衛星の位置関係が動いている成分が見えているんだと思う。この二重差を3次元空間にプロットすると多重解の動きとして見えるはず。

 二重差のノイズ(変動)は±0.05くらいかな? 波長が20cmだから±1cmくらいに相当する。RTKの精度で考えると±1cmのノイズはちょっと大きい気もするけど、1本数千円のワンセグチューナー系ドングルで受信した信号だから、十分妥協できる精度だと思う。10Hzでサンプリングしているから平均化してもいいし。



 再度サンプリングやり直し


 搬送波の追尾が外れると波数をゼロにリセットしているので、すべての衛星のロックが外れるとすべての衛星が0から再出発する。開始早々に全衛星がゼロに戻っているのはドングルがデータを取りこぼしたからだと思う。その割にはそれ以降1時間程度サンプリングしていて1回も取りこぼしていないのが不思議。おまえそんなに安定性の良い受信機じゃないだろ…… なんでこんなに安定しているんだろう? 最近寒くなったから? そんなの関係あるのかな。


 適当なタイミングを基準にして、二重差。

 195と199が0.5ステップでジャンプしている。なんでそういう挙動をするんだろう。他の衛星はかなり安定して推移している。ちょっと変動が大きい気もするけど、とはいえ距離にして2cm程度だと思う。

 長時間見てたら曲線状に動くものだと思ってたけど、かなり直線状だな。それに1時間で1波長も距離差が変わらない。距離が近いからかな? 20cmの距離で1波長分変わるには3時間かかるから、2,3倍程度の距離で1時間なら1波長程度くらいで妥当な感じか。


 二重差を微分して得た速度(位相の角速度)はbase/rover(+衛星ペア)の位置関係によるわけで、baseからの空間的な角度を決めれば所望の角速度が発生する距離は自動的に決まるはず。こうして得た二重差毎の曲面を組み合わせれば交点が決まるはず。おそらくこれがFLOAT解に近いようなものだと思う。


 さて、二重差の信号はそれなりに正しそうな気がするのは見えてきた。問題はどうやって解を得るか。

 単独測位の計算方法(擬似距離残差から最小二乗法で移動量を得る)はGPSの基礎の基礎だから調べれば計算方法とかも出てくるけど、干渉法みたいな方式って1次元空間(2次元平面で水平な地面)とか2次元空間に近似した説明は出てくるけど、それを発展させて3次元空間でどうやって計算するか、みたいな話はほとんど出てこない。数学的に複雑になるし、一方で曖昧さを除去する部分は純粋な数学的な処理(線形化して方程式を解くとか)では処理できないから計算式だけで示すのは難しいし、みたいなことなのかな。



 たまに単独測位で高度が大きく(300m近く)ずれることがある(水平面のズレの量は未確認)。その場合でも、位置(確度)がずれるだけで、分散(精度)はほとんど悪化していない。

 プログラムをいじった(バグが入った)わけでもないし、翌日とか翌々日に確認すると正しい確度に戻っている。時間で変化する外部要因が原因だと思うんだけど、1マイクロ秒オーダーもずれるような外部要因って何だろう?

 光速が遅い媒質を通過する場合、例えば光速が2分の1になれば、600mの厚さを通過しないと1マイクロ秒には達しない。受動的な遅延で数十ナノ秒オーダーの遅延を発生させるのはかなり大変なはず。



 受信ソフトを放置してたらPRN203にロックしてしまった。コイツはC/Bコードを放送しているので、C/Aコード専用の相関器でC/Bコードにロックすると、コード測距で誤った距離を計測してしまう。とりあえずC/Aコードだけ対応する予定だったけど、試しにC/Bコードにも対応。といっても、起動時に設定ファイルを読んでC/AとC/Bを切り替えるだけなので、自動識別には非対応。

 C/BコードはC/Aコードに倍のチップレートのゼロイチ信号をビット加算するだけなので、比較的簡単に対応できる。コード測距はNCOで対応していて、NCOはテーブルの長さには関係なく指定した周期(C/AやC/Bなら約1kHz)でテーブルの中身を吐き出すだけなので、起動時にコードのテーブルを作るときに、指定したコードは2倍に伸ばしてゼロイチを加算するという簡単な処理でC/Bに対応できる。ハードウェアで相関器を作ってると大変だろうけど、ソフトウェアなら簡単に対応可能。

 改修したプログラムで203を追尾して、とりあえず正しそうな結果が得られているので、おそらくこれでいいはず。

 C/Bは帯域幅が広くなるのでサンプリングレートもそれなりに要求されるはずだけど、1.92Mspsでも問題なくロックできる(信号強度は低い気もするけど)。C/Aだって1Msps未満でも一応相関は出るしな。チップレートの1/2より有意に大きいサンプリングレートであれば相関は出るはず。相関強度とか時間分解能とかでペナルティはあるけど。

 コードの自動判別は、ヘルス情報を見ればC/AとC/Bのフラグがあるはずなので、アルマナックを受信すればコンステレーション内のC/AとC/Bを区別したり、あるいはC/AとC/Bを間違って誤ロックした場合でも、エフェメリスのヘルスを見てから拡散符号が正しいことを確認して採用(C/AとC/Bが違う場合は相関器に指示してコードを切り替え)みたいなロジックは作れそう。あるいは、そもそもC/AとC/Bの両方でドップラスキャンして相関値が高い方を採用するとかもできるけど、これはドップラスキャンに2倍の時間がかかる問題がある。


 そもそもC/BコードはC/Aコードを出す衛星が増えてきて干渉が問題になったからスペクトルで分離するために設定したわけだけど、帯域幅が2倍に増えているわけだから、コード測距精度も2倍くらいに改善しているんだろうか? 将来的にQZSSのPNT C/Aは全廃してすべてC/Bに移行するらしいけど、測距精度の改善に効果があるのだとすれば納得感はあるか。

 L1S(SLAS)はC/Aを使い続けるのかな? 地震や津波や噴火の情報も放送しているし、古い機材でそういうのを受信している環境があると、なかなか次世代規格(C/Bとか)には移行できなさそう。具体的にC/A SLAS MT43を受信しているシステムがどれくらいあるのかはわからないけど。

 アプリケーションノートで津波や噴火のシェルター等の案内板の制御にDCR受信機を使う例が書いてあるから、想定通りならかなりの数の受信機が普及しているはず。あるいは、自動販売機で災害時に飲料を無料開放するトリガにも使えると想定している。最近の自販機は移動体通信に対応しているだろうからそれで制御しそうな気もするけど、災害時に通信が途切れたときを考えるとバックアップでDCRを使っている可能性もあるか。防災用でDCRを使うことを想定して、かなりの数の受信機が運用中のはずだから、気軽にC/Bへ移行するのは無理そう。放送型だからどこにいくつ設置されているかも把握できないだろうし。


 C/AコードはGPSの仕様書によるとcoarse/acquisitionの略だけど、C/Bって何の意味なんだろう? QZSSの仕様書にはC/Aの意味も書いてないから、同様にC/Bの意味も書いてない。GPSではC/Bは使っていないから、GPSの仕様書にもC/Bは書いてない。Wikipediaでも、英語版はもちろん日本語版もC/Bについての記載はなし。

 ググったら「AI による概要:GPSにおけるC/BコードとはC/Aコードのことで(後略)」とか出てくる。Google、お前が知らないからって間違いと決めつけるなよ……ッ!!!



 QZSS L1S MT43 DCRの台風のビット列、リファレンス時刻の前に1bit+台風番号を置いておいて欲しかったな。先に台風番号の数値が入っていれば、ビット列でソートしたときに台風の情報が順番に並ぶ。

 台風番号の前の1bitは、例えば年末に発生した台風80号と年始に発生した台風1号をソートしたときに発生順に並べるために、前年の台風はビットクリア、今年の台風はビットセット、みたいにして使う想定。

 あと、南海トラフのパケット(文字列を細切れにして送ってくる)も、先にページ番号が欲しかったな。


 アプリケーションノート曰くMT43/MT44はビット列で過去のメッセージと比較して同じメッセージを持っていたら破棄する、みたいなアルゴリズムを提案しているけど、例えば気象情報みたいに複数の要素が入っているメッセージで、組み合わせが変わったときに、同じ地点で相反するメッセージを持ったりしてしまうはずなんだけど、どうやって処理するのがいいんだろうか。

 有効な情報は常に再送しているから、最後に受信してから一定時間経過したメッセージを削除するような処理が一番手軽だけど、それにしたって一時的に重複するのは避けられないし、削除までの待ち時間を設定するのも難しい。南海トラフのメッセージ(UTF8文字列が18バイトずつ送られてくる)みたいに数十個のパケットを待たなきゃいけないものもあるし。台風の情報だって全体を送るには結構時間がかかるはずだし。

 あとは、一つの地域に複数の警報が時間差で出たときに、ビット列でソートするとReport Timeでソートされて離れた場所に表示されそう。

 結局、ビット列の一致で明らかに重複したパケットを捨てて、その中からさらに細かくフィルタリングしていく、みたいな感じで処理するしかないのかな。それにしたって、一つの地域に出ている警報の数とか、あるいは過去に受け取った警報を削除するタイミングとか、色々難しそうだけど。


 7月に受信したMT43/MT44をサンプルにしてメッセージを取り出しているけど、大雨(洪水)でLアラートが出ることはあっても、Jアラートが放送されたことはないっぽい。幸いなことにというか、今年は北朝鮮の弾道ミサイル発射回数はさほど多くないので、今のところGPSを受信中(記録中)にJアラートが出るような事態は起きていない。


 MT44はEUでも採用していて、将来的にはGalileo経由でグローバルな配信ができるようになるのかな?

 QZSSからは日本以外にオーストラリア、フィジー、タイ、あたりが想定されているっぽい(実際に運用されているかはともかく)。QZSSの測位(PNT)のサービスエリアは東は東経180度までだからフィジーの首都は範囲外だけど、DCX(MT44)のサービス範囲は衛星が仰角10度以上に見える範囲だから、フィジーも範囲内。地形等の関係で受信可能な面積率はあまり高くはなさそうだけど。

 QZSSの場合、MT44のフォーマットは内容に応じて変わる部分があるので、そのあたりをちゃんと対応しようとすると結構面倒そう。まあ、MT43よりはマシなはず。ただ、MT43は平時(気象警報とか緊急で送るものが無い場合)は色々なテストメッセージが送出されているけど、MT44にはそういう挙動は無いから(正確には、運用中の衛星の情報を送るために、国が日本でそれ以外のフィールドがすべてゼロ埋めのパケットは出ている)、デコーダが動いているかどうかを確認できない。まあ、MT43のテストパケットだって、正解値がわからないから、テストとして機能しているかは怪しいけど。



 Google Earthのポリゴン、Earth内で座標を編集できないの結構アホっぽい気がするんだけども。一旦適当な座標を作ってCtrl-CでクリップボードにXMLをコピーして、メモ帳とかで座標を編集したあとでCtrl-VでEarthに戻す、みたいな感じでやらなきゃいけない。なんかもっとマシなフローありそうな気がするんだけど、しかしGoogleのやることだからなぁ……



https://www.jstage.jst.go.jp/article/jsmemag/59/452/59_KJ00003060955/_pdf/-char/en

 1956年。欧米の航空宇宙関連の施設を見学した記録。著者の感想とかは、まあ、時代かなぁ、というところはある。

 原子力飛行機の研究室がG.E.とP&Wにそれぞれ3000人規模で存在しているらしくて、時代だなぁ。

 アメリカでは大卒の初任給が数年で2倍になっていて、人材不足によるものだそう。単に大学を卒業した人間ではなくて、「本当に物を考えることができるいわゆるものを考える技術者(thinking engineer)の不足」だそう。いつの時代も似たような感じだなぁとか思いつつ、最近のアメリカの製造業のあれこれを見る感じ、当時の人材不足をそのまま引きずっていったのかもしれないけど。


 米国は予算が莫大であって、日本が倣うなら米国より欧米を参考にするべきではないか、といった感じの結論。

 この当時の航空機の研究費は日本は5億円くらいかな。アメリカが2200億円、フランスが342億円だそう。「せめて仏の研究費の半分か1/4くらいの費用が必要」みたいなことが書いてある。米国からF-86とかF-104とかを買い続けているだけでは自国で航空機を設計できなくなる、みたいなことも。

 あとは、航空機に対して大きな施設が必要ないロケットは日本向き、とか。ジェットエンジンとかのテストで巨大な風洞を使っているのに比べれば、ロケットエンジンはまだ扱いやすいか。いや、高空燃焼試験とか結局やることは同じな気がするけどな。長大な滑走路でなく1箇所の打上げ施設があればいい、みたいな意味なのかな。


2025年9月17日水曜日

小ネタ








 ALMA望遠鏡、日本が担当したのは12m4台と7m12台。12mはCFRPやインバーで熱変形を抑止したけど、7mは低コスト化のために主鏡に鉄を多用したんだそう。熱設計や熱制御で対応したとのこと。12mも7mも重さは同じなので(おそらく同じ機材でハンドリングするからだろう)、CFRPで軽量化した12mより7mのほうが重量配分で余裕があるので、熱変異の大きい鉄でも成立したらしい。


「いんばー」を変換すると「inバー」になるの、そういう商品があるんだな。

 inバー プロテイン | 森永製菓株式会社

 inゼリーのシリーズでスティックなタイプ。

 熱膨張特性とか測った人いないかな? 暇な大学生とかやってそうだけど。

 コンビニとかで普通に売ってるのかな? 今度行ったときに覚えていたら…… 「amazon等のネット通販で売ってるよ」とはいうものの、最近のamazonの飲食品は販売単位がデカいから試しに買うのに使えないのが不便。かといって地元で気軽に買うのも難しいのが田舎。いや、まあ、田舎なら自分で足を持てよ、という話なので、結局自己責任というか自業自得というか、そのあたりに落ち着くわけだが。



 10年くらい前にJAXAで検討していたらしいCOMPIRAという海面高度計衛星。その後の話が見えてこないので具体的に設計を始めるみたいな話までは進まなかったようだけど。

 衛星の左右にアンテナを1個ずつ積んで、X帯の干渉SARで海面高度を計測する。空間分解能5km、計測精度5-7cm、観測幅160kmを観測する。従来の海面高度計衛星に対して精度は若干悪いが、面的な広さに強みを持つ(従来の海面高度計衛星は衛星直下しか見えない)。

 干渉SARのミッション機器はSHIOSAIというらしい。これとは別に衛星直下を計測するための海面高度計も乗せるのかな?(SARは直下が見えないので) SHIOSAIのイメージとしてはShuttle Radar Topography Missionと同じかな。

 海洋のモデルは、遠洋は時間的・空間的にあまり大きな動きがないから、低密度な衛星観測でもあまり問題は無いらしい。なので、COMPIRA/SHIOSAIの高密度な観測データは沿岸域を対象にしているようだ。

 ただ、COMPIRAで計測できるのはあくまでも海面高度の分布だけだから、衛星を1機打上げて得られるリターンが少ない、みたいな理由で開発まで行けなかったのかな。あとは、同時期にNASAがSWOTというほぼ同じコンセプトの衛星を検討していたので、わざわざ日本がやらなくても、みたいな感じになったのかも(SWOTは仏加英が加わって2022年に打上げ)。


 軽くググって出てくる資料だと2015年辺りまでだから、理学側の検討はこのあたりで終わっているはず。

 ただ、2020年に防衛省が出した資料に、COMPIRAの名前が出てくる(あとはSLATSも)。防衛省としては海洋観測衛星はやはり欲しいだろうな。あくまでも期待しているというような表現であって、それを防衛省が主導して作るとかいう話ではないけど。それに、たとえ防衛省でそういう衛星を作ったとして、観測データは非公開になるだろうから、理学側もその衛星に対して協力するインセンティブがない。やりないなら勝手にやれば、てな感じで。かといって自衛隊が一から十まで全部担当して衛星を作るというのも大変だろうし。

 海上保安庁も日本沿岸の海流データとかは欲しいだろうし、海洋国家として重点的に海洋観測を行うような衛星があっても良さそうな気がするけど、MOS-1(1987年、'90年打上げ、'96年まで運用)以降この手の衛星ってなさそうな気がする。一応、GCOMシリーズがMOSの後続として書かれることはあるけど、これは放射計で気候的な情報を得るのが目的であって、海保や海自が欲しがるような情報はほとんど取ってないはず。



 1パスで干渉して地形を計測するやつ、既存のSAR衛星(orその小改造)でできたりしないだんだろうか。例えばALOS-4ではビームの複雑な位相制御を行っているけど、制御プログラムの改造とか、あるいは多少のハードウェアの変更が必要にしても、PALSAR-4あたりで対応するとか。大面積化してアクティブフェーズドアレイでビームを振るなら、両端の開口だけ使って1機でさらに干渉させるような。

 あるいは、1枚のアンテナでは難しいとしても、受信用の素子を横に突き出す感じにしたりとか。ALOS-4でもSPAICE3を横に突き出しているから、その先にL帯受信素子を1個追加して、感度はメインのアンテナで稼いで、受信用の素子は基線長を稼ぐだけ。このくらいなら比較的シンプルに作れるし、ALOS-4の後続機で相乗り実証とかできそうだけど。

 理学側からそういう提案とかってないんだろうか? L帯だと分解能悪くて使い物にならないから、みたいな理由はありそうだけど。

 標高の計測は測地側からも要求はありそうだけど、とはいえ地形みたいに変動の少ない成分なら1機の衛星(開口)で2回帰分の観測を干渉させればいいから、別のアンテナでも受信して1パスでDEMを作るみたいな要求はなさそう。あるいは、日本の場合はALOS搭載PRISMの視差でDEMを作ったから、絶対値はそれを使って、InSARで相対値を追うとかでDEMの更新もできそうだし。


 QPS-SARにL帯受信機を追加してALOSと同時打ちしても面白そう。同時に同じエリアを(面積は狭いとはいえ)L/Xの2バンド同時観測ができるし、L帯で長基線長の干渉もできるし。同じアンテナサイズでもL帯は波長が長いからビーム幅も広くなる。利得が下がる分はALOSの大電力でゴリ押しする。

 GPSを干渉させて基線ベクトルを決定したり、衛星間通信で測距したりパルスを同期したり。QPS-SAR側にL帯受信機を追加する以外は双方とも小改造で行けそう。



 将来のALOS/PALSARで、ALOS-2みたいに機体下部に水平にアンテナを付けるような感じに戻ったりしないかな、という空想。

 ALOS-4/PALSAR3ではDBFでビームステアリングできるから、もっと大きく振れるようにすれば水平なアンテナから機体の左右を観測できるようになる。単純計算で一度にALOS-4の2倍が見える。さすがにフルスペックで左右同時観測は難しいとしても、姿勢変更せずに左右を切り替えたりとか、あるいは感度や分解能を多少下げて左右同時観測をできるとか、ミッションの柔軟性が上がるのは良さそうな気がするが。

 運用中に大きく姿勢を振る必要がないから、姿勢制御系も楽になる。とはいえ、A-4ではRWは5台だから、減らしてもせいぜい4台まで、生存性を重視するなら5台あれば嬉しいかな、と考えると、ハード的には大して楽にはならない。SAPを振り回さなくて良い分で構造系が少し楽になるかな、くらいか。やはり運用の自由度(短時間で左右を切り替えて観測したり、あるいは同時に左右を観測したり)が大きなポイントか。



https://confit.atlas.jp/guide/event-img/jpgu2019/STT45-P09/public/pdf?type=in&lang=ja

 ALOSのSARでDEMを作って既存のSARとの比較を行った話の概要。数cmから数十m、平均して9.94mの誤差だそう。比較対象のDEMのソースが書いてないからどう考えればいいのかわからないけど。2019年発表で国土地理院のDEMなら、ALOSのPRISMで作ったDEMが相手なのかな?

 L帯SARの精度は数mとか数十mとかなのかな。それともハードやソフトの工夫で改善できるんだろうか。



https://www.jstage.jst.go.jp/article/rssj/41/2/41_258/_pdf

 2021年。ALOSシリーズの解説。

 元々、海洋観測衛星(MOSシリーズ)と陸域観測衛星(LOS)が計画されていて、MOSはMOS-1/1bとして、LOSはJERSとして開発され、その後MOSは中断、JERSはALOSとして発展、という感じらしい。なるほどなぁ。

 JERSは'92年に打上げて、設計寿命2年を大きく超える'98年まで運用された。その間には兵庫県南部地震のInSAR観測を行うことでSAR衛星の防災利用が議論されるようになった。

 JERSには光学で立体視ができる機器も乗っていたので、DEMの作成も。光学はADEOSに引き継がれたが、こちらは短命だった。ADEOSと同時期に開発が行われていたのがALOSで、SARと光学をどちらも搭載しているし、立体視も引き継ぎ。

 ALOSはそれまでの日本の観測衛星の集大成という感じでもあるけど、まあ、運用(特にリソース管理)がめんどくせーということでSARと光学が分離されたのは御存知の通り。で、日本の光学大型衛星が途絶えたのも御存知の通り。。。一応、情報収集衛星まで含めれば現在でも日本の光学衛星の開発は続いているけど。

 各ALOS衛星の特徴とか役割とかの説明が色々。

 ALOS初号機の説明(制約)で、「光学センサは衛星直下の観測を基本とするため、SARは左右どちらかしか観測できない」みたいな説明は、ちょっとミスリーディングというか、不適切な説明な気がするな。光学と干渉するからSARが直下を観測できないわけではなく、原理的にSARは直下を観測することができないから、光学と同居していることは関係ない(さらに厳密に言えば、合成開口技術(衛星進行方向の解像度向上)自体は直下の観測も問題なくて、SAR衛星で直下が見えないのは別の技術的制約(軌道に直交する方向の解像度向上ができない)によるものだけど)。

 ALOS-5/6に向けて。私案だし、ALOS-3打上げ前の話だし、大した事も書いてないけど。


 ALOS-4が打ち上がって、次期レーダ衛星の話がそろそろ出てきてもいいはずだけど、いまいち見当たらない気がする。 設計寿命がALOSの3年、A-2の5年、A-4の7年と伸びているから、次期レーダ衛星は2030年代始めに打上げればいいよね、みたいな感じで時間的に余裕があるんだろうか。それにしたってあと5年程度で打上げなきゃいけないから、最近の日本の衛星開発の遅さを考えれば設計寿命中に打ち上げるにはそろそろ作り始めないと間に合わなそうだけど。



https://www.eorc.jaxa.jp/ALOS/conf/symp/2003/tomioka.pdf

 ALOSの観測機器の説明とか。

 各種観測機器の観測幅や首振り範囲の図がわかりやすくて良いな。他の衛星でもこういう図ほしい。



https://annex.jsap.or.jp/photonics/kogaku/public/33-06-kaisetsu3.pdf

 2004年。電波のビームフォーミングを光領域で行う方式の説明とか。

 電波のバトラーマトリックスを光領域に持っていった感じ。注入ポートを切り替えるとビームを振れる。同時に複数ポートに突っ込むとマルチビームを作れる。光電変換を行うので一方通行のはず。/* RFのバトラーマトリックス回路は双方向に通せる受動素子(導波管デバイス)を組んでるから双方向に使えるはずなんだけど、Googleで検索するとAI曰く「バトラーマトリックスに双方向の機能はない」との回答が出る。en.wikipediaには送受信に使えると書いてあるけど */

 用途は軍用レーダー(ある程度のコストを許容できる、民間用に比べてあまり量を作らなくていい)や、あるいは最近(2004年時点)では携帯電話の基地局で、ROFで配る前に制御したりの用途を考えているらしい。かつては衛星用にも研究が行われていたけど、近年では地上の通信網が発達したおかげで衛星通信の需要が減ったのでそっちの研究はほとんど行われていないそうだ。


 この方式は最近(現在)また衛星通信が見直されて、これが研究されていたりするらしい。

 衛星で使うには光デバイスの放射線による劣化が心配だけど、とはいえハードウェアで(パッシブに)ビームフォーミングできるのは良さそうだな。ASICとかFPGAとかでデジタルに振るより圧倒的に省電力で済みそうな気がする。軌道上でビームパターンを変えたりできないから、そういうことをやりたいなら細いビームを大量に並べて必要に応じてそれらを束ねて使うみたいな工夫が必要そうだけど、それはそれで光回路が複雑になりそうだ。

 あとは、双方向に使えないはずだから、送受信を個別に作らなきゃいけないのが面倒そうではあるけど、ETS8みたいに送受信を分離して作るみたいな感じにすればいいか。大抵の場合は上り回線と下り回線で必要な帯域幅は違うだろうから、送受信のビームパターンは個別に設定したほうが便利だろうし。



 大型航空機搭載フェーズドアレイレーダのためのパラメトリック位相スポイリング【JST・京大機械翻訳】 | 文献情報 | J-GLOBAL 科学技術総合リンクセンター

 2023年。英語論文の概要の機械翻訳。

「望ましいパターン合成のフェーズスポリングはフェイズドアレイで使われる一般的な方法であり(後略)」

 日本語でフェーズスポイリングをググっても全く出てこない。

 英語でphase spoilingをググると結構出てくる。

 Phase Spoiling Technique for High Power and Wide Beam in Alos-4 | IEEE Conference Publication | IEEE Xplore

 トップに出てくるのはALOS-4搭載PALSAR-3レーダの話。最近の日本の衛星ってぐぐってもほとんど情報が出てこないけど、情報公開に消極的になったわけではなくて、単に日本語論文が減って英語論文が増えたってことなのかな。


 フェーズスポイリングの考え方としては、素直に(綺麗な)ビームフォーミングを行うとビームが細くなりすぎるから、適当に位相をスポイル(乱雑に)させてブロードなビームを作る、みたいなモノのはず。シンプルにやるならいろいろな方向の細いビームを加算してマルチビーム全体で1本のブロードなビームに見えるようにするとかだろうけど、メインローブの形状だけじゃなくて、サイドローブを抑圧したりとか、色々な評価基準があるそうだ。



https://www.jstage.jst.go.jp/article/pscjspe/2022S/0/2022S_296/_pdf/-char/en

 2022年。

 光学望遠鏡で、光学系の規模が大きくなると変位の影響も大きくなるので、それを補正(フィードバック)するような手法の提案。鏡を6本のロッドで支えてそれぞれにアクチュエータを付けて、6自由度のスチュワートプラットフォームを作ろう、みたいな話。この手の機構は例えばALOS-3の副鏡でも使っているはずなので、そう目新しい話という気もしないが。


 精密に(解析的に楽な)制御をしようとするとピエゾアクチュエータで、みたいなのはわかるんだけど、例えばCFRPロッドのフレームにヒーターを貼って熱制御で頑張る、みたいな方向って無いんだろうか? 少し冷やし目に熱設計しておいて、MLIで安定化させつつ、ヒーターで熱を与えてロッドの熱膨張を制御して、全体の寸法を目標値に収める。

 応答性と解析性が悪いので日本の宇宙開発には不向きな感じもする。あとはマージン(解析誤差)を多く見積もろうとすると消費電力が増える欠点もあるか。全体の均一な熱膨張はルーバ大雑把にで制御するとかもできるだろうけど。

 熱膨張ゼロのCFRP材を作ってアクチュエータでアクティブに制御するのと、熱膨張率の絶対値はゼロより有意に大きい材料をヒーターで熱制御するのと、どっちが楽なんだろうか。

 赤外線みたいに極低温に冷却した鏡を使いたいならゼロ膨張材+ピエゾアクチュエータのほうが安心だろうし、補償光学みたいにミリ秒とかの応答性が必要ならピエゾのほうが有利だろうけど、常温系の鏡/構造で応答速度がさほど必要ないなら、熱制御でやるほうが楽そうな気がする。ピエゾアクチュエータはそれ用の制御回路とかも必要になるだろうけど、熱制御ならON/OFF制御だけでいい。とはいえ、あまりにスイッチング速度が遅いと材料の熱容量が負けるけど、数Hzとかで制御するなり、あるいは電流で制御するなりでもいいし。アクティブに熱制御を行うならCFRPみたいに高コストな材料でなく、鉄とかアルミでフレームを作ったりもできそう。熱容量の大きい材料ならヒータもON/OFF制御だけで良さそう。

 波面センサとかで直接ヒータにフィードバックしてもいいし、あるいは精密(高分解能)な温度センサがあるなら先に温度でフィードバックループを作ってもいいし。MLIの内側で恒温制御したうえでフレームの温度制御も行えば、MLIの外の環境変動(地球の影に出たり入ったり)の影響もかなり減らせるだろうし。



 ALOS-3の光学系、地上の試験で一通り動作確認ができているから軌道上実証はできてないけどセンサとしては十分に動くことが確認できている、みたいな話。ALOS-4のSARだと宇宙に持っていったら一部の機能が満足に動かないみたいな事態もあったわけで、地上でどれだけ試験したところで最後は実際に宇宙に持っていかないとわからない、というのが衛星の怖いところだと思うし、その点ではALOS-3は宇宙では動作確認を行っていないわけで。TDI CCDのコンセプトは一応SLATSで実証しているし、TDI自体は目新しい技術ではないとしても。

 せっかく苦労して光学系を設計したんだから、HTV-XでISSに運んでJEMのロボットアームに持たせて使えるようなモジュールを作ったら良さそうな気もするけどな。高度が下がる分で観測幅は減るけど、計算上の分解能は改善する。ただ、ISSは振動環境が悪いだろうから、振動由来のブレでだいぶ解像度が落ちそうだ。防振マウントを作ろうとするとさらに時間が掛かるし、そんなことをやっていたらISSの運用が終わってしまうし。ISSの前途がもう少し明るければ、ALOS-3の光学系をJEMに持っていって、みたいな未来もあったのかもしれないけど。

 それに、ISS/JEMにはHISUIが乗ってるから、それなりに解像度の高いカメラがあるんだよな。ALOS-3カメラを持っていけば観測幅は2,3倍、分解能は数十倍(理想値)改善するけど、わざわざコストをかけて持っていっても…… ハイパースペクトルカメラに比べればたかだか6バンドだし。



 Anvil firing - Wikipedia

 金床飛ばし。もっとアホっぽいイベントだと思ってたら、結構ちゃんとした由来があるんだな。

 おおむね、まともな使い方としては大砲の代用として使うことが多いらしい。祝砲代わりに使ったり、大砲っぽい音を出して威嚇に使ったり。黒色火薬さえ用意できれば砲身や砲弾がいらないから、武器として大砲が規制されている場合でも使えそうだ(火薬自体が規制されている場合はどうしようもないけど)。



 Project HARP - Wikipedia

 1960年代の中頃の、米海軍の16インチ砲を流用した高層大気の研究プログラム(HARP; High Altitude Research Program)。他にも5インチや7インチの砲も使っていたらしい。/* 陰謀論でよく出てくる名前の似ているヤツはHAARP; High frequency Active Auroral Research Program */

 16インチ砲はライフリングのライナーを抜いて16.4インチの滑腔砲として使ったらしい。サボット弾を使用して、受動的または能動的な観測機器を乗せていたようだ。例えばアルミ箔のチャフを上空から散布してレーダー観測することでその場の風速を計測したり、あるいはラジオゾンデのような機器を打ち出したり。およそ180kgの砲弾(84kgのペイロード)を15000gで2.1km/sくらいまで加速して180kmあたりまで打ち上げるそう。/* 1.5万gだと2.1km/sに達するまで1mちょっとしか必要ないから、1.5万gというのは衝撃のピーク値であって、加速度はもう少し小さいはずだけども */

 射撃時の音で近隣の住宅に破損(壁のひび割れとか)があったらしい。ただ、現地政府はそれに関する損害賠償請求を認めなかったので、周辺住民からは不人気だったそうだ。さもありなん。


 ロケットアシステッドな砲弾を使って、さらに高い高度であったり、あるいはペイロードを周回軌道へ乗せることも検討していたらしい。ただ、固体燃料が1.5万gもの加速に耐えられなかったそうだ。普通の砲弾であれば炸薬は充填率100%で詰め込んであるし、そもそも初速が低いから加速度も低いけど、固体燃料の場合は多かれ少なかれ多少の空洞が必要だから、そこから崩壊しそうではある。側面燃焼なら壁がボロボロ剥がれそうだし、端面燃焼だって全部がズルっと落ちてきそう。適当な詰め物(水とか)を入れて火工品で蓋をしておけば良さそうな気もするけど、1.5万gなんて物性の常識が通じるかも怪しいからなぁ。うまいこといい感じに減速してパラシュートとかで回収すれば損傷状態を確認したりもできるけど、コンピューターシミュレーションだって無いような時代だろうし。ポジティブに考えれば、耐衝撃性はそこそこ大きいからある程度大雑把な減速手段でもそれなりに健全に回収できる見込みはあるか。

 SS-520の弾道飛行のペイロードが140kgで、LEOのペイロードが4kgだから、16インチ砲で180kgを撃てばLEOに数kgのペイロードを投入できる可能性はありそう。ただし1.5万gに耐える構造分で実質のペイロードは減るけど。


 月ペネトレータの貫入時の衝撃が5000gだから、SpinLaunchはその2倍、HARPは3倍ということになる。一応ペネトレータは耐衝撃性はそこそこ見込みがついていたから、そこからあと2,3倍頑張れば…… いやぁ、大変そうだなぁ。

 ペネトレータは高感度な地震計(機械式の共振器)を持っていかなきゃいけないから大変そう(半田クラックとかも問題になってたけど)。それに対して最近の小さな衛星くらいなら軽い半導体とかMEMSとか色々使えるから、大型なハードウェアを持っていくよりは楽そうだが。


 SpinLaunchは1万gの遠心力から2.1km/sで打ち出して、60km付近でロケットに点火して、200kgのペイロードを軌道投入する見込みだそう。真空チャンバーで回転させて打ち出すよりは艦砲射撃のほうが楽そうな気がするけど、やはり火薬の取り扱いとかがネックなのかな? それにしたって軌道速度を得るための火薬は持っていかなきゃいけないから、なら最初から火薬を使うほうが楽じゃねって気もする。

 結局火薬を使うなら地上で全部燃やす砲弾型と途中で燃やすロケット型は似たようなものになるけど、砲弾型は火薬自身で火薬を運ぶ必要がないのが利点か。あと初速がアホみたいに速いので重力損失が多少減る? その代わり海面付近の濃密な大気をマッハ6程度の速度で(10秒とかのオーダーで抜けるとはいえ)通らなきゃいけないし、もちろん加速度も凄まじいことになる。


 極超音速の寸法のスケール則ってどうなってるんだろうか。常識的な物性だと、空気抵抗は面積に比例するがそれによる加速度(減速度)は質量に反比例するから、大きいほうが空気抵抗の損失は少ないはず。あるいは、エアロスパイクみたいなものを使えば規模を大きくしても抗力はさほど増えない可能性もある。とすると、ペイロード数kgのHARPよりは、ペイロード数百kgのSpinLaunchのほうが、空気抵抗の損失は少ないんだろうか?

 60年代というと電池や信号処理だってろくな性能がないだろうから、今同じ質量割当でなにか作れと言われたら、結構ちゃんとしたものが作れるはず(2kgあれば、構造質量を別にすればキューブサット1個分の衛星は作れる)。それに、第二次世界大戦中に使われていた砲身を流用した当時の砲に比べれば、現在の冶金や化学で作った砲や装薬のほうが性能はいいはずで、今HARPと同じようなものを作れば、当時よりはマシなシステムになるはず。

 が、そういう構想が出てこないってことは、やっぱりどこかに問題があるんだろう。一番ありえそうなのは兵器としての規制が強いとか? それにしたってロケットなんてICBMと同じじゃねーかという話になるし。大砲で衛星を打上げるというのはいかにもゲームやマンガの世界観っぽい感じでウケ狙い以上に見えないから予算が集まらない、とかの話はありそう。


 軌道投入できる大きさの砲身が1本200トンとして、周辺設備をあわせてもせいぜい数千トン程度で作れるなら、あまり大きくない貨物船にも載せられるくらいの規模。まあ、汎用の貨物船からそのまま撃ったら船底が抜けるだろうから、汎用船から気軽にシーロンチできる、というわけではないだろうけど。それにコンテナを10本取り回すのと200トンの貨物を取り回すのでは全く違うだろうしな。

 大砲で軌道投入とかは、真面目に検討すれば面白そうな題材ではあるけど、とはいえ最近の火砲だと大きくても155mmとかそのあたりだから、大口径の砲を作るとなると工場から作らなきゃいけない。バカでかいロケットを作るのだって工場から作るのは変わらないわけで、火砲で低コストに宇宙に行ける見込みがあるなら誰かやるだろうし、誰もやらないってことは……



 40ftコンテナに収まる大きさの地上発射型ロケットって無いんだろうか? ロケットの中で比較的小型なエレクトロンでも全長は60ft位あるから、40ftコンテナには収まらない。SS-520の全長10m弱なら2m程度の余裕を持って40ftコンテナに入れれる。SS-520を一回り太くして、立てたコンテナからそのまま打てるようなロケットがあれば、海上の好きな場所から打てるし、運搬も既存の設備をそのまま使えるから楽。固体燃料は色々剣呑だから、液体燃料を想定。LOX/LH2/ケロシンはコンテナタンクで運べば燃料系も既存の設備(港湾施設を含む)で容易にハンドリングできるから、ロケット打上げシステム全体の物流コストがかなり安くなる。

 衛星はロケットに積んでからコンテナに詰めて荷物として運んでもいいし、あるいはせいぜい数十kg程度のペイロードだから、船の上で組み立ててもいいし。海面がある程度穏やかなら、数十kgなら人力でも作業できる規模。もちろん適当な補助設備を使えば多少荒れた海でも安全に作業できるし。ロケット自身は海運で安く運んで、衛星は近くの空港まで貨物機で迅速に輸送して、そこで待っていた貨物船に積んでから発射海域へ移動する間にロケットに乗せたり、あるいは発射海域で待機している船へヘリコプターで運んでもいいし。

 しかし、ロケットの運搬コスト(陸上を含めた任意の場所へ気軽に運んで打てる)を勘案しても、SS-520より一回り大きいサイズとして、ペイロードは10kgとか20kgとかだから、小型衛星としてもかなり小さい部類。実用的な衛星を打とうとすると50kg~300kgくらい欲しいだろうし、40ftコンテナ数個で打てるロケットはちょっと厳しそう。

 コンテナ容積に対してロケットはかなり余裕があるから、例えば第1段を40ftコンテナに収まる大きさにして、第2段を隙間に詰め込んでおいて、打上げ直前に第1段と第2段を結合し、さらに衛星を収缶したフェアリングも結合して、エレクトロンくらいの大きさのロケットを作る、みたいなことは可能だろうけど、作業工数が増えるとその分作業コストが増える。

 どちらにしろコンテナを立てるジグは必要なわけだから、80ftくらいのジグを作って、その上にロケットが入った40ftコンテナを乗せて、残りの空間で第2段/フェアリングを結合する作業領域を作って、とかは考えられるか。

 あるいは、コンテナの中から打とうとするとホットロンチにしろコールドロンチにしろコンテナ側で色々と追加設備が必要になるから、コンテナ自体のコストが馬鹿にならない。せっかく周辺設備を使うなら打上げ用に耐える部分も別で持っておいたほうが楽そう。例えばコンテナから先に第1段を引き抜いて、その途中で第2段/フェアリングを結合して、コンテナの中で作業するから多少の風雨には耐えられる、とか。コンテナの中で作業するので狭いのが難点。結局、全部引き抜いてから作業するほうが楽そう。

 諸々を気にしなくていいなら、40ftコンテナに組み立て済みの固体燃料ロケットを1本入れて、コンテナ自身が起立して発射できる、みたいな構成が1番楽ではある。斜め上に向けてコールドランチして、点火してそのまま上昇、火をつけるのに失敗したら海にドボン、とか。ただ、コールドランチをやるとかなり大きな反作用が来るはずだから、強度的な問題が出てくる。ロンチチューブに駐退機をつけてとかも考えられるけど、せっかく海上コンテナで輸送コストを下げているのに、周辺機器でどんどんコストが嵩むデメリットが出てくる。



 C#で大量のコントロールを追加するときとか、一時的に描画を止めたい場合。今回はFormのコンストラクタの中で、Formのデザイナで配置したPanelの中にコントロール(CheckBox)を200個くらい配置する感じだったけど、この処理に600msくらいかかる(起動時に画面が表示されるまでにそれくらいかかる)。試しにSuspendLayout()/ResumeLayout()を呼んだんだけど効果はなかった。

 が、コントロールを追加する対象のコントロール(つまりPanel)のインスタンスに対してSuspendLayout/ResumeLayoutを呼ぶと、圧倒的に(体感的には一瞬で)終わるようになった(すぐに起動する)。

 一番根本(Formのインスタンスが持っているSuspend/Resume)を呼んでおけばいいんでしょ、と思っていたんだけど、実はそうじゃないらしい。

 Suspend/Resumeはあくまでも自身以下の描画を行う・波及させるかどうかのスイッチであって、上位側でSuspendしたからと言ってそのスイッチが下位へ波及するわけではないのかな。だから下位のPanelとかにコントロールを追加すると、Panelはスイッチが切られていないから、描画が行われる、みたいな感じで。



 rtl-sdr blog v3ドングルみたいな安いSDRドングルだと外部にトリガ信号を出したり入れたりできないから時刻決めに使えない、と思ってたけど、ダイレクトサンプリングの端子に外からマイコンとかで適当な変調信号を突っ込んで、時分割で相関させてやれば、その信号をGPS時刻に紐づけることができるから、その信号の時刻をマイコンに返してやれば、GPS時刻に同期した時計は作れそうだな。同期信号をうまく作れば1/sps/10くらいの精度は出るだろうから、50ナノ秒くらいの精度でGPS時刻に同期した時計を作れる。50ns*c=15mくらいだから、単独測位でもこの程度なら意味のある精度。さすがにマイコンでGPSの処理までやるのは手間がかかるからPCとかRasPiとかで処理してフィードバックするような感じになるだろうけど。

 ということで、安価なドングル+マイコンでGPS時計は、そこそこの精度で良ければ、ソフトウェアをフルスクラッチで(GPSモジュールみたいなブラックボックスを経由せずに)作れそうな気がする。少なくともR820T/RTL2832Uはブラックボックスになるけど、安く作るなら多少のCOTSは許容しなきゃ……

 RTL2832Uはダウンサンプリング周りに多分エラッタがあってたまにデータを取りこぼすので、そのあたりはうまくハンドリングしなきゃいけないけど、頻度は数分に何回みたいな頻度だから、なんとかなるはず。

 ただ、v3ドングルはダイレクトサンプリングのパスがRF端子にLPF経由で通っているはずなので、そのあたりが面倒そうな気がする。v4だとアップコンバータが入っているからダイレクトサンプリングの端子は丸ごと空いてるのかな?