αFOIL+ωSIM version-0.05 — 松原水泳場 滑空・人力機 距離競技シミュレータ
gliderSIM / hpaSIM は各試技の位置・姿勢・操縦量を、1秒間に約30回保存します。飛行記録一覧の行を右クリックし、記録を再生を選ぶと、試技時点の機体形状と会場条件を復元して飛行をリプレイできます。読み込み中は、キャンセルボタンのない進捗バーで準備状況を表示します。時系列を持たない旧形式の記録では再生項目が無効になります。
| 分野 | 内容 |
|---|---|
| 座標系 | 3Dモデリングで使う公開座標を、軸コンパスと同じX=赤(左右)、Y=青(前後)、 Z=緑(高さ)に統一しました。既存の解析計算は変更せず、モデリング・表示・ 入出力との境界に座標変換層を設けています。 |
| 飛行シミュレータの表示 | モデリングツリーの空、湖面、飛行経路1、飛行経路2をダブルクリックして、色を個別に変更 できるようにしました。着水後に中央へ表示される飛距離の文字と、それを挟む上下2本の線も、 それぞれダブルクリックして色を選択できます。左上の状態表示は風速までとし、飛距離は中央の 大表示と左下のランキングへ整理しました。 |
| 飛行記録データベース | gliderSIM.db/hpaSIM.dbへ、各試技の時刻・位置・速度・姿勢・操縦量などを
1秒間に約30回の再生用時系列として保存するようにしました。新しい時系列は試技の削除と連動し、
データ一括保存 *.a2zでも書き出し・読み込みできます(旧記録の時系列は空欄です)。 飛行記録の行を右クリックして「記録を再生」を選ぶと、保存した位置・姿勢・操縦量に沿って 機体を再生します。3DOF質点法の記録は速度方向から機首方向を復元し、旋回中も軌跡に沿った 正しい向きで表示します。再生準備中は、機体形状・会場・時系列の読込状況を進捗バーへ表示します。 選択機体をGUI機体へ読み込む間は、処理状況が分かるプログレスバーを表示します。 各データベースには、選択データの削除と VACUUM(DB圧縮)機能も追加しました。 |
| 翼型検索 | 翼厚・キャンバーの最小/最大入力欄に、押しやすい大きさの▲/▼ボタンを追加しました。 三角形を直接描画するため、Windowsの表示テーマやフォントに左右されず、確実に表示されます。 長押しによる連続変更にも対応しています。 |
| グラフ表示 | 構造解析をはじめ、LLT・VLMなどの解析グラフへ縦横のグリッドを追加し、 値と分布を読み取りやすくしました。 |
| 翼型座標の自動修正 | 翼型を読み込むと、XFOIL の NORM(翼弦長を1に)・DERO(座標に付いた迎え角を0に)・
PANE(曲率の大きい所へ節点を寄せる)にあたる手当てを自動で掛けます。
xfoil.exe を使わずPythonだけで行うので、内蔵の解析コードにも同じきれいな座標が渡ります。 Lednicer形式の変換、先頭の点数行・NaN・重複点の除去、一周の向きの統一も行います。 多要素翼や閉じていない輪郭は形が崩れるので手を付けず、理由を残します。 ファイル(F)→「翼型座標を自動修正…(NORM/DERO/PANE)」(Ctrl+R)で、 直す前後を重ねて見ながらつまみを調整し、データベースの座標を直すかDATに書き出せます。 読み込み時の自動修正は設定(S)メニューで切れます。 → 翼型解析 |
| 翼型解析の信頼性 | Cp分布に重ねる非粘性Cpを、XFOILの非粘性モードで解くようにしました。粘性Cpと
同じパネル分割・同じソルバなので、2本の差がそのまま境界層の影響になります。
xfoil.exe が無いときはTheodorsenの写像で解きます。 Theodorsenコード・守屋コードは、翼型を円へ写す写像が成立しているかを確かめ、 成立していない翼型では結果を出さず未収束として扱うようにしました。前縁半径の 小さい翼型では写像が前縁で折り返し、圧力分布も零揚力角も当てにならなくなるためです。 理由は解析ログに残ります。 |
| パネル法表示 | 機体モデリングを始めた直後から、内部でパネル表示を先に作っておくようにしました。
パネル法表示へ切り替えたときには出来上がっているので、待たずに切り替わります。
ソリッド表示へ戻しても網目を捨てないので、行き来も一瞬です。 作り直しが要るときはキャンセルなしの進捗バーを出します。側面図では断面を直すたびに 作り直しになるため、自動でソリッド表示へ戻し、パネル法表示はグレーアウトします。 |
| 機体パーツの選択と色 | グライダー・人力機モデリングで、カーソルを載せたパートが光るようにしました。
面まで見て一番手前を選ぶので、主翼の陰の胴体を誤って拾いません。 右クリックすると、そのパートの色の変更・既定色へ戻す・一時的に隠すと、 パートに応じた寸法編集(胴体なら側面図、主翼なら平面図)を選べます。 パネル法表示のときは網目の線の色をパートごとに変えられます(白・青・緑・黄など)。 → 機体データの編集 |
| 寸法編集の使いやすさ | 平面図・正面図・側面図の入力欄の▲▼ボタンを大きくし、押しやすくしました。 胴体長・翼根の翼型・上反角(外翼)・垂直尾翼高さの欄を、寸法線や他の欄と重ならない 位置へ移しました。 |
| 主翼の構造解析 | 構造解析に「桁解析」タブを追加しました。オリンポスの木製ボックス桁の手順に沿って、
V-n線図・せん断力・曲げモーメント・ねじりモーメントからフランジ寸法・接着幅・箱寸法を
決め、たわみ・ねじれ・重量まで出します。 梁解析では、荷重倍数を機体重量にも掛けるようにし、翼型のCm0入力と 「1 G」トリムボタンを追加しました。 |
| データの一括保存・読み込み | 翼型・空力解析・機体・プロペラ・飛行記録・自動計算を、1つの *.a2z ファイルへ
まとめて保存できます。読み込みではまだ無いものだけを取り込むので、
バージョンアップのたびに個別に出し入れする必要がありません。 バージョンチェックも入れてあり、このバージョンでまだ実装していない新しいデータは 読み飛ばして、その旨を報告します。 |
| メニューの整理 | 項目の少なかった「ツール」メニューを無くし、中身を「設定」メニューへまとめました。 機体データベースの「解析」タブを「空力解析」へ改名しました。 設計メニューへ「BEM3D物体空力特性計算(有料版実装)」を加えました。 |
| 飛行シミュレータ | 左下の飛距離ランキングをダブルクリックすると、文字色を選べるようにしました。 明るい色を選べば暗い縁取り、暗い色なら白い縁取りへ自動で切り替わるので、 海や空の色が変わっても読めます。 |
| 起動時スプラッシュ | 起動画面のデザインを新しくしました。空から湖面へ落とした青のグラデーションを 背景に、左へ3枚ブレードのプロペラ紋章、右へ高台から飛び出す飛行軌跡と グライダーのシルエットを配した構図です。ソフト名・副題(松原水泳場 滑空・人力機 距離競技シミュレータ/PYTHON+OPENGL)と著作権表示も入れ直しました。 アプリのアイコンもプロペラで揃えています。 |
| 不具合の修正 | 守屋コードのCp分布が真っ白になっていたのを直しました(後縁のNaNで縦軸を
決められなくなっていたため)。あわせて、ごく一部の点が跳ね上がってもグラフが
つぶれないよう、縦軸の決め方を頑丈にしました。 最大化したままモードを切り替えると、画面が一瞬小さくなってから戻るのを直しました。 最大化した窓の枠が画面の利用可能領域より数px大きく報告されるため、毎回「はみ出し」と 判定されていました。 |
| 分野 | 内容 |
|---|---|
| 取扱説明書 | この鳥説(取扱説明書)概要を、アプリの中で読めるようにしました。 メニュー「ヘルプ → 取扱説明書…」(F1)で開きます。 本文はプログラムの中に収めてあるので、manual フォルダが無くても表示できます。 |
| 不具合の修正 | 3D モデリング画面の軸コンパスで、X・Y・Z の文字が表示されなくなっていたのを直しました。 → 使用方法 |
| 解析エンジン | 解析エンジンの一覧に「吉田コード(今井の拡張 有料版実装)」を加えました。 今井コードを拡張した解析で、有料版で実装します。 → 翼型解析 |
| 機体モデリング | 平面図の「翼根の翼型」の欄を、主翼の後ろの空いた所(斜め上)へ移しました。 側面図の「リカンベント型 IGAワイヤーフレーム」から、Autodesk T-Spline #TSS0001 / tspline-g0 の .iga を開き、
制御ネットとT-mesh要素境界を回転・ズーム表示できます。
→ 機体データの編集 |
| 空力FEM弾性解析 | 「連成解析」メニューと機体データベースの解析タブに、空力荷重とCFRPシェルFEMを 反復する詳細解析を追加しました。空力解析法は Vortex-Ring VLM/VLM(Katz)/QVLM、 構造は CFRP BOX桁(閉断面翼箱)/CFRP薄肉円筒桁から選択でき、両構造の比較もできます。 変位・翼端ねじれ・Trefftz誘導抗力・各層応力・Tsai-Wu/Hashin破壊指数を表示し、 CSV/VTKへ保存できます。画面下部の機体データベースから解析対象も切り替えられます。 → 技術情報 |
| 主翼構造解析 | 設計メニューに「強度計算と構造法の実際」を追加しました。揚力線理論の翼幅荷重を使い、 せん断力・曲げモーメント・たわみ・ねじり・曲げ応力・安全率を計算します。 木製ボックス桁を含む構造条件を設定でき、結果をCSVへ保存できます。 → 技術情報 |
| VLM結果の3D表示 | VLM(Katz)などの解析後に、格子ごとの揚力矢印、誘導抗力を含む合力、循環Γ、 格子数値、ΔCp色分けを機体上へ表示できるようにしました。 翼幅方向分布との切替、表示ツリーからの個別ON/OFFにも対応しました。 |
| パネル法の圧力表示 | SUSCAP・Katzパネル法の結果を、機体表面のCpグラデーションとカラーバーで 表示できるようにしました。パイロットは空力パネル生成から除外し、表示専用としています。 |
| パイロットモデル | グライダーとハンググライダーの搭乗者をSTLベースのパイロットモデルへ変更しました。 STLは圧縮バイナリとしてプログラム内へ収録しています。モデリングツリーでは「パイロット」と表示し、 ダブルクリックすると側面の2次元平面で前後・上下位置を調整できます。 |
| 3D機体表示 | ソリッド表示で、主翼―胴体、キャノピー―胴体、胴体―テールビーム、水平尾翼―垂直尾翼などの 部品間交線と多段上反角の継ぎ目を見やすく表示するようにしました。 パネル表示では内部で重なる部分を抑え、主翼・水平尾翼の色や軸コンパスも整理しました。 |
| データベースと結果表示 | 飛行記録データベースは Shift/Ctrl で複数行を選び、まとめて削除できます。 別の機体を読み込んだときは、前の機体の解析結果を自動的に非表示にします。 揚抗比の表示は CL / (CD0 + CDi) に統一しました。 |
| プロペラ詳細設計 | 守屋解(プロペラ揚力線理論)の設計条件・集計値・半径方向分布・性能曲線を、 1つのCSVファイルへ保存できるようにしました。 |
| 表示と操作の改善 | VLMグラフの誘導角系列が描画領域からはみ出す問題、格子CL表示時の強制終了、 軸コンパスの向きと色、解析後の既定表示などを修正しました。 発進台のポールには第3・第4形態と同じ赤い旗を表示します。 |
| 分野 | 内容 |
|---|---|
| 翼型の逆設計 | Qspec逆設計を追加しました。速度分布の曲線をマウスでつまんで動かすと、 その分布になる翼型が出てきます(XFOIL の QDES・MDES にあたります)。 → Qspec逆設計 |
| 翼型解析の表示 | 解析結果を XFOIL と同じ並びの Cp 分布図(上に Cp、下に翼型の形)で見られるようになりました。非粘性の Cp と、境界層の排除厚み δ* も重ねられます。 → Cp 分布を見る |
| 解析データの保存 | 解析結果を CSV ファイルで書き出せるようになりました(ポーラー・Cp 分布・境界層)。 → 解析データを CSV で書き出す |
| 最適化 | GA最適化を実装しました。機体データベースの機体を 6 自由度モデルで飛ばし、 滑空距離が最大になる操縦のしかたを遺伝的アルゴリズムで探します。 → GA最適化 |
| 並列計算 | 全翼型バッチ解析・GA 探索・GA最適化は、同時には 1 つだけ動くようになりました。 → 並列計算について |
| 水泳場 | 発進台に 第4形態(第3形態と同じ形で、飛び込み台が青)を追加しました。 桟橋の中央に青いシートを敷き、手すりはシーンツリーで消せるようにしました。 → シーンツリー |
| 表記 | 「セオドーセンコード」を、原論文にあわせて Theodorsen コードと表記するようにしました。 |
高さ 10 m のプラットホームから滑空機・人力飛行機を飛ばし、飛行距離を競うシミュレータです。 それに加えて、飛ばす機体そのものを設計するための道具を一つのアプリにまとめています。
名前は二つの部分からできています。
| αFOIL(アルファフォイル) | 2D 翼型のデータベースと解析。UIUC/Selig の 1,665 翼型を収めた SQLite カタログを持ち、 XFOIL 6.99 をはじめ 9 種類の解析エンジンで翼型を計算できます。 |
| ωSIM(オメガシム) | 3D モデリングとフライトシミュレータ。プロペラ・グライダー・人力飛行機を モデリングし、そのまま松原水泳場の空へ飛ばせます。 |
この二つは切り離されていません。翼型解析で選んだ翼型が、そのままプロペラ・主翼・尾翼の断面になり、 モデリングした機体がそのままシミュレータで飛ぶ——X世代からY、Z、α世代からω世代へという一本の流れになっています。
1,665 翼型の座標をデータベースに持ち、迎角掃引によるポーラー・Cp 分布・境界層を計算できます。 XFOIL のような粘性パネル法だけでなく、Theodorsen(NACA TR-452)・今井・守屋・森口といった 古典的な等角写像理論、Eppler PROFIL、水野 BEM まで選べます。 全 1,665 翼型を並列でまとめて解析するバッチ機能もあります。 Cp 分布は XFOIL と同じ並びの図で見られ、解析結果は CSV で書き出せます。
さらに望みの圧力分布・速度分布から翼型そのものを作り出すことができます。 「逆翼型設計」タブ(Eppler PROFIL・佐藤コード・Lighthill コード)のほかに、 速度分布の曲線をマウスでつまんで翼型を直していくQspec逆設計があります。
寸法をダイアログで打ち込むだけでなく、平面図・正面図・側面図の上で図形を直接ドラッグして 多段平面形・上反角・胴体の輪切りを編集できます。区間ごとに別々の翼型を割り当てることもできます。
作った機体はデータベース(SQLite)に名前を付けて保存でき、いつでも呼び戻せます。
単純な 3DOF 質点から、尾翼操作を伴う縦 3 自由度、非線形 6DOF まで、 目的に応じて計算エンジンを切り替えられます。地面効果・翼のたわみ・ペダル出力と疲労も扱います。
機体を降りて、松原水泳場を歩いて見て回れます。一人称・三人称・トップダウンの三つの視点があり、 桟橋や発進台の上にも登れます。景色を確かめたいときや、発進台の高さを体感したいときにどうぞ。
翼根の翼厚を指定するだけで、データベースから翼型を自動で選び、遺伝的アルゴリズムで 飛行距離が最大になる機体を探索することができます。並列計算なので、探索を回しながら 別のモードで作業を続けられます。
機体が決まったあとは、GA最適化で「その機体をどう飛ばせば一番遠くまで行くか」 (発進時の姿勢・引き起こしのタイミング・自動操縦のゲインなど)を探せます。
また、12 種類の揚力線理論をまとめて計算し、翼幅荷重分布を重ね描きして比較する機能もあります。
| ページ | 内容 |
|---|---|
| 動作環境と起動 | 必要な環境、インストール、XFOIL の入手、起動のしかた、同梱ファイルの説明 |
| 使用方法 | 7 つのモードの切り替え、メニュー一覧、キー操作、視点変更 |
| 翼型解析 | 翼型データベースの使い方、解析エンジンの選び方、バッチ解析、Cp 分布の図、CSV 出力、 逆翼型設計、Qspec逆設計 |
| 機体データの編集 | 機体諸元・多段平面形・上反角・胴体・プロペラの編集、データベースへの保存 |
| 自動計算・最適化 | 翼型自動選定+GA 探索、揚力線理論群の比較、飛行経路最適化、GA最適化 |
| 技術情報 | 運動方程式、揚力の算出、地面効果、たわみ、使用している理論 |
| FAQ | よくある質問と答え |
| サポート・その他 | 連絡先、著作権・免責、参考文献、あとがき |