MCP HubMCP Hub
스킬 목록으로 돌아가기

design-acoustic-levitation

pjt222
업데이트됨 2 days ago
8 조회
17
2
17
GitHub에서 보기
디자인design

정보

이 Claude Skill은 초음파 정재파를 사용하여 작은 물체를 압력 마디에 가두고 공중에 띄우는 음향 부양 시스템을 설계합니다. 개발자가 트랜스듀서를 선택하고, 마디 간격과 포획력을 계산하며, 음향 복사 압력을 분석하고, 다축 제어를 위한 위상 배열을 구성하는 데 도움을 줍니다. 화학/생물학 실험을 위한 비접촉 샘플 핸들러 제작, 교육용 데모 구축, 또는 특정 물체에 대한 부양 가능성 평가 시 활용하세요.

빠른 설치

Claude Code

추천
기본
npx skills add pjt222/agent-almanac -a claude-code
플러그인 명령대체
/plugin add https://github.com/pjt222/agent-almanac
Git 클론대체
git clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/design-acoustic-levitation

Claude Code에서 이 명령을 복사하여 붙여넣어 스킬을 설치하세요

문서

音響浮揚の設計

重力とバランスするために必要な音響放射圧の決定、安定な定在波を形成するトランスデューサとリフレクタの形状選定、圧力ノードの位置とトラップ強度の計算、トラップされた物体の横方向・軸方向摂動に対する安定性の検証を行い、音響浮揚システムを設計・検証する。

使用タイミング

  • 化学または生物実験用の非接触サンプルホルダーを設計する時
  • 教育やアウトリーチ用の音響浮揚デモンストレーターを構築する時
  • 特定の物体が音響的に浮揚可能かを評価する時(サイズ、密度、周波数の制約)
  • 単軸(トランスデューサ-リフレクタ)とフェーズドアレイ構成の選択時
  • 特定のトランスデューサ周波数と形状でのノード位置とトラップ力を計算する時
  • 単軸浮揚装置をフェーズドアレイによる多軸操作に拡張する時

入力

  • 必須: 物体の特性(質量、密度、半径または特性寸法、既知の場合は圧縮率)
  • 必須: 目標浮揚媒体(空気、水、不活性ガス)とその密度と音速
  • 任意: 利用可能なトランスデューサ周波数(デフォルト: 40 kHz、趣味や研究室システムで一般的)
  • 任意: トランスデューサの出力または電圧定格
  • 任意: 望む操作能力(静的トラップのみ、または動的再配置)

手順

ステップ1: 物体の特性と音響コントラストの決定

物体と媒体を特性化し、音響浮揚の基本的な実現可能性を確立する:

  1. 物体パラメータ: 質量m、密度rho_p、半径a(非球形物体の場合は等価球半径)、体積弾性率K_p(圧縮率kappa_p = 1/K_p)を記録する。金属球のような剛体の場合、K_pは事実上無限大。
  2. 媒体パラメータ: ホスト媒体の密度rho_0、音速c_0、体積弾性率K_0 = rho_0 * c_0^2を記録する。
  3. 音響コントラスト因子: 物体が圧力ノードに移動するか圧力反ノードに移動するかを決定するゴルコフコントラスト因子を計算する:
    • 単極係数: f_1 = 1 - (K_0 / K_p) = 1 - (rho_0 * c_0^2) / (rho_p * c_p^2)
    • 双極係数: f_2 = 2 * (rho_p - rho_0) / (2 * rho_p + rho_0)
    • 空気中のほとんどの固体物体では、f_1 ~ 1、f_2 ~ 1であり、物体は圧力ノード(速度反ノード)にトラップされる。
  4. サイズ制約: 物体の半径aが音響波長lambda = c_0 / fよりもはるかに小さいことを確認する。ゴルコフ理論はa << lambda(通常a < lambda/4)を要求する。この条件が満たされない場合、幾何音響学または完全な数値シミュレーションが必要。
## Object and Medium Parameters
- **Object**: [material, mass, density, radius, bulk modulus]
- **Medium**: [gas/liquid, rho_0, c_0, K_0]
- **Contrast factors**: f_1 = [value], f_2 = [value]
- **Wavelength**: lambda = [value] at f = [frequency]
- **Size ratio**: a / lambda = [value] (must be << 1)
- **Trapping location**: [pressure node / pressure antinode]

期待結果: コントラスト因子が計算された物体と媒体の完全な特性化。物体が圧力ノードに移動することが確認される(空気中の固体の典型的ケース)。サイズ制約a << lambdaが満たされている。

失敗時: a / lambda > 0.25の場合、ゴルコフ点粒子理論が破綻する。代わりに数値的方法(有限要素音響シミュレーション)または実験的キャリブレーションを使用する。f_1とf_2が逆符号の場合、物体はクリーンなノードまたは反ノードではなく中間位置にトラップされる可能性がある — これにはゴルコフポテンシャルの慎重なマッピングが必要。

ステップ2: 必要な音響放射圧の計算

重力をバランスするために必要な音場強度を決定する:

  1. 音響放射力: 1次元定在波中の圧力ノードにある小球に対する時間平均軸方向力:
    • F_ax = -(4 * pi / 3) * a^3 * [f_1 * (1 / (2 * rho_0 * c_0^2)) * d(p^2)/dz - (3 * f_2 * rho_0 / 4) * d(v^2)/dz]
    • 平面定在波p(z,t) = P_0 * cos(kz) * cos(omega*t)では、ノード付近で簡略化:
    • F_ax = (pi * a^3 * P_0^2 * k) / (3 * rho_0 * c_0^2) * Phi * sin(2kz)
    • ここでPhi = f_1 + (3/2) * f_2は音響コントラスト因子、k = 2*pi/lambda。
  2. 力のバランス: 最大放射力(ノードからlambda/8の位置でsin(2kz) = 1)を重力に等しくする:
    • F_ax_max = (pi * a^3 * P_0^2 * k) / (3 * rho_0 * c_0^2) * Phi = m * g = (4/3) * pi * a^3 * rho_p * g
    • 必要な圧力振幅を求解:
    • P_0 = sqrt(4 * rho_p * rho_0 * c_0^2 * g / (k * Phi))
  3. 音響強度: 圧力振幅を強度に変換: I = P_0^2 / (2 * rho_0 * c_0)。トランスデューサの定格出力と比較する。
  4. 音圧レベル: dB SPLで表現: L = 20 * log10(P_0 / 20e-6)。空気中の音響浮揚には通常150-165 dB SPLが必要。
## Acoustic Requirements
- **Required pressure amplitude**: P_0 = [value] Pa
- **Required intensity**: I = [value] W/m^2
- **Sound pressure level**: L = [value] dB SPL
- **Safety note**: [hearing protection required if > 120 dB at audible frequencies]

期待結果: 浮揚を達成するための最小音圧振幅の定量的決定。Pa、W/m^2、dB SPLで表現。必要な強度が指定されたまたは市販のトランスデューサで達成可能であること。

失敗時: 必要な圧力振幅が利用可能なトランスデューサの能力を超える場合、物体の質量または密度を減らすか、より軽い材料を使用するか、より高い密度の媒体(例: SF6のような高密度ガスで浮揚し放射力を増加)に切り替える。または、集束アレイで複数のトランスデューサを使用してトラップポイントに音響エネルギーを集中させる。

ステップ3: トランスデューサ-リフレクタ形状の設計

安定な定在波を生成するための物理ハードウェアを構成する:

  1. トランスデューサの選定: 周波数f(一般的: 28 kHz、40 kHz、60-80 kHz圧電トランスデューサ)の超音波トランスデューサを選択する。高い周波数は波長が短くタイトなトラップになるが、最大物体サイズを制限する。動作距離で必要なP_0をトランスデューサが生成できることを確認する。
  2. リフレクタ設計: トランスデューサの反対側に平面または凹面リフレクタを配置する。リフレクタ表面は音響的に硬い(媒体との音響インピーダンス不整合が大きい)必要がある。空気中では金属またはガラス板が有効。凹面リフレクタは音場を集中させ軸上の圧力振幅を増加させる。
  3. キャビティ長: トランスデューサ-リフレクタ間距離Lを半波長の整数倍に設定: L = n * lambda/2(nは正の整数)。これによりトランスデューサとリフレクタ間にlambda/2間隔でn個の圧力ノードが生成される。
  4. ノード位置: 圧力ノードはリフレクタ表面からz_j = (2j - 1) * lambda/4の位置にある(j = 1, 2, ..., n)。キャビティ中央に最も近いノードが通常最も安定なトラップサイトとなる。
  5. 共振調整: 浮揚力または音圧をマイクロフォンで監視しながらマイクロメータステージでトランスデューサ-リフレクタ間距離を微調整してLを最適化する。最適距離は最も強い定在波を生成する。
## Geometry Design
- **Transducer**: [model, frequency, rated power or SPL]
- **Reflector**: [material, shape (flat/concave), dimensions]
- **Cavity length**: L = [n] x lambda/2 = [value] mm
- **Number of nodes**: [n]
- **Node positions from reflector**: z_1 = [value], z_2 = [value], ...
- **Selected trapping node**: z_[j] = [value]

期待結果: トランスデューサ、リフレクタ、キャビティ長が決定された完全なハードウェア仕様。ノード位置が計算されトラップノードが選択されている。

失敗時: 安定な定在波が形成されない場合(Lが正確にn * lambda/2でない場合に一般的)、0.1 mm刻みでキャビティ長を調整する。温度変化がc_0を変化させlambdaを変化させるため、再調整が必要。トランスデューサビームがキャビティ長に対して発散しすぎる場合、ホーンまたは導波管を追加してビームを平行化するか、Lを短くする。

ステップ4: トラップポテンシャルと復元力の計算

音響トラップの強度と空間的範囲を定量化する:

  1. ゴルコフポテンシャル: 定在波場中の小球に対してゴルコフポテンシャルを計算する:
    • U(r) = (4/3) * pi * a^3 * [(f_1 / (2 * rho_0 * c_0^2)) * <p^2> - (3 * f_2 * rho_0 / 4) * <v^2>]
    • ここで<p^2>と<v^2>は時間平均二乗圧力と速度場。
    • 物体はU(r) + mgz(重力を含む)の最小値にトラップされる。
  2. 軸方向復元力: トラップノード付近で、F_zを1次に展開:
    • F_z ~ -k_z * delta_z、ここでk_z = (2 * pi * a^3 * P_0^2 * k^2) / (3 * rho_0 * c_0^2) * Phi
    • 軸方向固有振動数はomega_z = sqrt(k_z / m)。
  3. 横方向復元力: 有限幅ビームでは、横方向放射力は横方向強度勾配から生じる。ウエストwのガウスビームプロファイルの場合:
    • k_r ~ k_z * (a / w)^2(近似、横方向剛性は軸方向より弱い)
    • 横方向トラップは軸方向より弱い。これが安定性の制限因子。
  4. トラップ深さ: 物体がトラップから脱出する前の最大変位はポテンシャル井戸深さで決まる。軸方向では、井戸深さはDelta_U = F_ax_max * lambda / (2 * pi)。熱エネルギーk_B * Tの倍数で表現する(マイクロメートルスケールの粒子では常に重要、空気中のミリメートルスケールの物体では無視可能)。
## Trapping Analysis
- **Axial stiffness**: k_z = [value] N/m
- **Axial natural frequency**: omega_z / (2*pi) = [value] Hz
- **Lateral stiffness**: k_r = [value] N/m
- **Lateral natural frequency**: omega_r / (2*pi) = [value] Hz
- **Axial well depth**: Delta_U = [value] J = [value] x k_B*T
- **Stiffness ratio**: k_z / k_r = [value] (lateral is weaker)

期待結果: 軸方向と横方向の両方向の定量的な剛性値、計算された固有振動数、決定されたトラップポテンシャル井戸深さ。横方向剛性が正であることが確認される(軸方向より弱いが)。

失敗時: 横方向剛性が負またはごく小さい場合、物体はビームから横方向にドリフトして脱出する。解決策として、より広いトランスデューサ(大きなビームウエスト)の使用、横方向トランスデューサの追加、フェーズドアレイ構成への切り替え、または収束波面を作成してより強い横方向閉じ込めを提供する凹面リフレクタの使用がある。

ステップ5: 摂動に対する安定性の検証

設計されたシステムが物体を確実にトラップし保持することを確認する:

  1. 重力オフセット: 平衡位置は圧力ノードの下にdelta_z = m * g / k_zだけシフトする。delta_z << lambda/4(ポテンシャル最大までの距離)であることを確認する。delta_zがlambda/4に近づくと、物体はトラップから落下する。
  2. 気流感度: 周囲の気流からの抗力を推定する。球の場合、F_drag = 6 * pi * eta * a * v_air(ストークス抗力)。横方向復元力と比較する: 許容最大風速はv_max = k_r / (6 * pi * eta)。
  3. 音響ストリーミング: 定在波は定常的な循環流(レイリーストリーミング)を駆動し、その速度はv_stream ~ P_0^2 / (4 * rho_0 * c_0^3 * eta) * lambda。これらの流れは浮揚物体に抗力を及ぼす。ストリーミング抗力が横方向復元力より小さいことを確認する。
  4. 熱効果: 音響吸収が媒体を加熱し、c_0を変化させノード位置をシフトさせる。高強度動作(> 160 dB SPL)では、動作時間にわたる温度上昇とそれによるノードドリフトを推定する。
  5. フェーズドアレイ拡張(操作が必要な場合): 動的な物体再配置のために、単一のトランスデューサ-リフレクタ対をフェーズドアレイのトランスデューサに置き換える。相対位相を調整することで圧力ノード位置を連続的に移動でき、トラップされた物体をそれに伴って運ぶ。位相分解能が位置決め精度を決定する: delta_z ~ lambda / (2 * pi * N_phase_bits)。
## Stability Verification
| Perturbation | Magnitude | Restoring Force | Margin | Stable? |
|-------------|-----------|----------------|--------|---------|
| Gravity offset | delta_z = [val] | k_z * delta_z | delta_z / (lambda/4) = [val] | [Yes/No] |
| Air currents | v_air = [val] m/s | F_lat = [val] N | F_lat / F_drag = [val] | [Yes/No] |
| Acoustic streaming | v_stream = [val] | F_lat = [val] N | F_lat / F_stream_drag = [val] | [Yes/No] |
| Thermal drift | Delta_T = [val] K | Re-tune interval | [time] | [Acceptable/No] |

期待結果: すべての摂動源が定量化され、トラップマージン内にあることが示される。重力オフセットがlambda/4のごく一部。気流とストリーミング効果が横方向トラップを圧倒しない。

失敗時: 重力オフセットが大きすぎる場合(重い物体、弱い音場)、P_0を増加させるか高い周波数を使用する(波長あたりの勾配が強くなる)。気流が問題の場合、浮揚装置をドラフトシールドで囲む。音響ストリーミングが物体を不安定化する場合、駆動振幅を下げ、ストリーミング渦を最小化するリフレクタ形状(例: 浅い凹面リフレクタ)を使用する。

バリデーション

  • 物体サイズがa << lambdaを満たす(ゴルコフ理論が適用可能)
  • 音響コントラスト因子が計算され、トラップ位置(ノード/反ノード)が特定されている
  • 必要な圧力振幅P_0が計算され、指定のハードウェアで達成可能
  • トランスデューサ-リフレクタキャビティ長がn * lambda/2に設定され、ノード位置が計算されている
  • 軸方向と横方向の剛性がともに正
  • 重力オフセットdelta_zがlambda/4のごく一部
  • 気流と音響ストリーミングの摂動がトラップマージン内
  • 高SPL動作の安全上の考慮事項が文書化されている
  • フェーズドアレイを使用する場合、位相制御分解能と位置決め精度が指定されている

よくある落とし穴

  • 小粒子仮定の違反: ゴルコフ放射力公式はa << lambdaを仮定する。lambda/4に近づくサイズの物体では、点粒子近似が破綻し、実際の力がゴルコフ予測と大幅に(大きさと方向の両方で)異なりうる。大きな物体には全波シミュレーションを使用する
  • 横方向閉じ込めの無視: ほとんどの入門的な扱いは軸方向(垂直方向)のトラップ力に焦点を当て、はるかに弱い横方向復元力を無視する。実際には、横方向不安定性が主要な障害モードであり、特にサイズ上限付近の物体で顕著
  • 音響ストリーミングの忘却: 高強度の定在波は常に定常的なストリーミング流を駆動する。これらの流れは放射力と競合する浮揚物体への抗力を及ぼす。ストリーミングは小さな効果ではない — 高SPLでは支配的な不安定化要因となりうる
  • 温度感度: 空気中の音速は摂氏1度あたり約0.6 m/s変化する。10度の温度変動で波長が約2%シフトし、典型的なキャビティでノード位置がミリメートル単位で移動する。長時間の実験には能動的な長さ補償または温度制御が必要
  • 圧力ノードと速度ノードの混同: 圧力ノードは速度反ノードであり、その逆も然り。正のコントラスト因子を持つ固体物体は圧力ノード(圧力振動が最小で速度振動が最大の場所)にトラップされる。これを逆にすると間違った位置にトラップされる
  • 高振幅での非線形効果の無視: 約155-160 dB SPLを超えると、非線形音響効果(高調波生成、衝撃波形成)が重要になり、線形理論の予測と比較して有効なトラップ力が低下する

関連スキル

  • evaluate-levitation-mechanism -- 音響浮揚を磁気、静電、空力代替手段と比較する
  • analyze-magnetic-levitation -- 比較のための補完的な磁気浮揚分析
  • derive-theoretical-result -- 第一原理から音響放射圧を導出する

GitHub 저장소

pjt222/agent-almanac
경로: i18n/ja/skills/design-acoustic-levitation
0
agentsagentskillsai-assisted-developmentclaude-codeskillsteams

연관 스킬

executing-plans

디자인

executing-plans 스킬은 검토 체크포인트가 포함된 통제된 배치로 실행할 완전한 구현 계획이 있을 때 사용합니다. 이 스킬은 계획을 불러와 비판적으로 검토한 후, 소규모 배치(기본값 3개 작업)로 작업을 실행하면서 각 배치 사이에 진행 상황을 아키텍트 검토를 위해 보고합니다. 이를 통해 내재된 품질 관리 체크포인트를 갖춘 체계적인 구현이 보장됩니다.

스킬 보기

requesting-code-review

디자인

이 스킬은 코드 변경 사항을 요구 사항에 따라 분석하기 위해 코드 리뷰어 하위 에이전트를 호출합니다. 작업 완료 후, 주요 기능 구현 후, 또는 메인 브랜치에 병합하기 전에 사용해야 합니다. 이 리뷰는 현재 구현체와 원래 계획을 비교하여 문제를 조기에 발견하는 데 도움이 됩니다.

스킬 보기

connect-mcp-server

디자인

이 스킬은 개발자들이 HTTP, stdio 또는 SSE 전송 방식을 통해 MCP 서버를 Claude Code에 연결하는 포괄적인 가이드를 제공합니다. GitHub, Notion 및 사용자 정의 API와 같은 외부 서비스를 통합하기 위한 설치, 구성, 인증 및 보안을 다룹니다. MCP 통합 설정, 외부 도구 구성 또는 Claude의 모델 컨텍스트 프로토콜 작업 시 활용하세요.

스킬 보기

web-cli-teleport

디자인

이 스킬은 작업 분석을 기반으로 개발자가 Claude Code 웹 인터페이스와 CLI 인터페이스 중 선택할 수 있도록 돕고, 두 환경 간 원활한 세션 텔레포트를 가능하게 합니다. 웹, CLI 또는 모바일 환경 전환 시 세션 상태와 컨텍스트를 관리하여 워크플로를 최적화합니다. 다양한 단계에서 서로 다른 도구가 필요한 복잡한 프로젝트에 사용하세요.

스킬 보기