---
title: "双筒望远镜棱镜系统互动实验｜Sandbox Physics"
description: "双筒望远镜的棱镜怎样把像转正，屋脊棱镜又为什么会让像变糊？一对 Porro 棱镜让光反射四次，上下、左右各翻一次，像就正过来了。"
canonical_url: "https://sandboxphysics.com/zh/labs/binocular-prism-lab/"
language: "zh-CN"
page_type: "lab"
alternate_languages:
  en: "https://sandboxphysics.com/labs/binocular-prism-lab/"
last_modified: "2026-10-27"
---

光学 032 · 成像、仪器与视觉系统

# 双筒望远镜棱镜系统

**双筒望远镜的棱镜怎样把像转正，屋脊棱镜又为什么会让像变糊？** 一对 Porro 棱镜让光反射四次，上下、左右各翻一次，像就正过来了。屋脊棱镜把光束分成两半，各在一个屋脊面上反射。两半光的偏振相位不一样，不加补偿的话，它们干涉不完全，像就变糊，哪怕一点光都没损失。

拆开两块正交的 Porro 棱镜，追踪有限的 Snell–Fresnel 光路和它们送出的光瞳；再按偏振分别比较未补偿与理想补偿的屋脊光瞳的衍射。

> 交互仿真：在浏览器中打开本页，即可调整参数并运行模型。

Porro 部分是有限几何模块，带方形入口；视场卡是等比例的方向示意图。屋脊部分是独立的轴上模块，在玻璃内把光转 90 度，采用放大的圆形光瞳和理想延迟补偿。它不是完整的双筒望远镜，也不是可制造的镀膜设计。

物理教程

## 检验双筒望远镜棱镜系统的物理过程

**背景** 正物镜给出倒立的像。把像转正靠的是反射，每次反射由算子 $H_{\hat{\mathbf n}}=I-2\hat{\mathbf n}\hat{\mathbf n}^{\mathsf T}$ 描述。每块 Porro 棱镜有两个互相垂直的反射面。两块棱镜再互相垂直摆放，就能把两个横向坐标都翻过来，同时让光重新朝前走。

**为什么值得理解** 双筒望远镜的棱镜怎样把像转正，屋脊棱镜又为什么会让像变糊？

先抓重点

- **核心问题**: 双筒望远镜的棱镜怎样把像转正，屋脊棱镜又为什么会让像变糊？
- **一句话直觉**: 屋脊把光瞳分成两半，两半以相反次序经过两个屋脊面，但并不各自成像。对非偏振光，像强度为 $I(\mathbf q)=\frac12\left\|J_+A_+(\mathbf q)+J_-A_-(\mathbf q)\right\|_F^2$。两组复矢量场要先干涉，再对两个独立的入射偏振取平均。反射了全部功率，也不保证得到衍射极限的点像。

### 核心数学模型

#### 四次反射，两个坐标翻转

$$
H_4H_3H_2H_1=\operatorname{diag}(1,-1,-1)
$$

第一个坐标是向前的光轴，另两个是横向的世界坐标。所以物镜形成的倒像，过了第二块棱镜就变正。所有视场卡用同一个符号尺度，它们只是示意符号，不是照片，也不代表完整的像中继。

#### 临界角与有限大小的棱镜面

$$
\theta_c=\arcsin(1/n_g),\qquad \hat{\mathbf k}_r=H_{\hat{\mathbf n}}\hat{\mathbf k}_i
$$

角度从表面法线量起。追迹的光线必须真的打到有限大小的表面上，才会反射。低于临界角时，一部分光折射漏进空气，剩下的反射光遵守 Fresnel 振幅。方形入口光阑和涂黑的棱镜端面，都按吸收光的实体部件处理。

#### 无损反射仍改变相位

$$
r_s=\frac{\cos\theta-i\gamma}{\cos\theta+i\gamma},\quad r_p=\frac{\eta^2\cos\theta-i\gamma}{\eta^2\cos\theta+i\gamma},\quad \gamma=\sqrt{\sin^2\theta-\eta^2},\quad \eta=1/n_g
$$

全反射时两种振幅的模都是一，相位却不同。屋脊两个面的入射面并不共面，两半光瞳经过它们的先后次序正好相反。模型在每个面上变换完整的电场矢量。

#### 两半光瞳的 Jones 衍射

$$
A_\pm(\mathbf q)=\frac1\pi\iint_{P_\pm}e^{-i\mathbf q\cdot\boldsymbol\rho}\,\mathrm d^2\boldsymbol\rho,\qquad S_0=I(\mathbf 0)
$$

屋脊模型用 550 nm 的均匀圆瞳。点像由两个半圆的数值积分和整圆的解析变换算出。所有 PSF 共用 100 角秒视场，以理想峰值为一作标尺，亮度取强度的平方根。完全补偿指理想的无损延迟均衡，不对应具体的多层膜或膜厚。

### 常见难点

#### 全反射就一定成像清晰吗？

**容易误解** 两个屋脊面都把光全反射了，相位补偿不可能再提高分辨率。

**正确理解** 功率和复场是两回事。两半光瞳反射次序相反，各偏振分量的瞳场都会改变，像里的能量随之重新分配。屋脊参考值不含光进出玻璃时的损失，Porro 直接通量则包含这些损失。两个数都不是整台双筒望远镜的透射率。

### 动手实验

1. 01

   #### 场景 1：双 Porro 正像

   打开双 Porro，沿四个反射点走一遍，比较棱镜前、两块棱镜之间和棱镜后的不对称视场。转动视角，确认两次折叠互相垂直。

   **你会看到：** 双 Porro 的出射方向和入射方向平行，但光路有横向错位，视场转了 180 度。

2. 02

   #### 场景 2：有限瞳与全反射漏光

   打开有限瞳，增大视场角或降低折射率，看粉色漏光和离临界角还有多少余量。增大瞳径或缩窄 Porro，可以看到光阑和端面截掉的光。

   **你会看到：** Fresnel 损失和几何截光是两回事：送达的功率和被接收的瞳面积分别给出。

3. 03

   #### 场景 3：屋脊瞳衍射

   打开屋脊，把理想补偿从零调到一。在相同亮度下比较未补偿、当前和理想圆瞳的点像。折射率决定裸面的 Fresnel 相位，瞳径决定衍射的角尺度。

   **你会看到：** 屋脊模块让光转 90 度。它只把相位问题单独拿出来研究，并不是一台完整的直通式 Schmidt–Pechan 仪器。

物理结论

看清光在棱镜面上真实的反射位置；像的方向和波动像质要分开考虑；相位要靠偏振计算得到，不能随手设一个。

波与光学 · 入门路径

## 从一条光线到干涉测量

从折射出发，找到光线模型失效的地方，再用干涉测量极小的距离。

[从这里开始 → **光学界面探索器** 转动入射角，观察反射与透射功率此消彼长；再切换到“临界角与全反射”场景。 观察 · 11 分钟](https://sandboxphysics.com/zh/labs/optical-boundary-explorer/)

1. [1 光学界面探索器](https://sandboxphysics.com/zh/labs/optical-boundary-explorer/)
2. [2 彩虹焦散观测站](https://sandboxphysics.com/zh/labs/rainbow-laboratory/)
3. [3 针孔相机](https://sandboxphysics.com/zh/labs/camera-obscura/)
4. [4 相干波合成器](https://sandboxphysics.com/zh/labs/coherent-wave-composer/)
5. [5 Young 双缝实验台](https://sandboxphysics.com/zh/labs/young-double-slit-bench/)
6. [6 Michelson 精密测量台](https://sandboxphysics.com/zh/labs/michelson-precision-lab/)

[查看完整路径 →](https://sandboxphysics.com/zh/topics/waves-and-optics/#starter-path)
