前方交会及精度评定

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
因此:
xA xB sin BP y A yB cos BP cos xP x A AP cos AP x A AP sin AP BP y y AP sin y x A xB sin BP y A yB cos BP sin A AP A AP P sin AP BP
化简后,可得 x cot B xB cot A y A yB xP A cot A cot B y y A cot B yB cot A x A xB P cot A cot B 使用上面的公式,要求 A、B、P 的排列顺序与方位角的增加方向一致。如 果不一致就需要交换 A、B 两点。还有一种方法是引入变量 sign。当 A、B、P 的排列顺序与方位角的增加方向一致时,它取值为 1;当 A、B、P 的排列顺序 与方位角的增加方向相反时,它取值为-1。则有: x cot B xB cot A y A yB sign xP A cot A cot B y y A cot B yB cot A xB x A sign P cot A cot B 注意:上式虽然漂亮,但是并不适合于编写程序代码,因为角 A、B 可能 会接近 0 或 180 度。编写程序时,可使用下式:
3
第1章
计算公式
double sign = 1.0; double A = atan2(yP - yA,xP - xA) - atan2(yB - yA,xB - xA); double B = atan2(yA - yB,xA - xB) - atan2(yP - yB,xP - xB); if((yP - yA) * (xB - xA) - (xP - xA) * (yB - yA) < 0.0) {//A,B,P 与方位角增加方向相反。矢量 AB 叉乘矢量 AP 的 z 轴分量小于零 A = -A; B = -B; sign = -1.0; } double cA = cos(A); double sA = sin(A); double cB = cos(B); double sB = sin(B); double XP = (xA*sA*cB + xB*cA*sB + sign*(yA - yB)*sA*sB) / (sA * cB + cA * sB); double YP = (yA*sA*cB + yB*cA*sB + sign*(xB - xA)*sA*sB) / (sA * cB + cA * sB); double deltaX = XP - xP; //应该接近于零 double deltaY = YP - yP; //应该接近于零
图 1.2
显然
xP x A AP cos( AB A) yP y A AP sin( AB A)
根据正弦定理,有 AB AP sin B AB AP AB AP sin A B sin A cot B cos A sin A B sin B 因此
5
第1章
计算公式
double deltaY
=
YP - yP;
//应该接近于零
6
第2章
精度评定
第 2 章 精度评定
下面研究 B 增加微小量 dB 后,对 P 点位置的影响有多大?参考下图,B 点向 AP 作垂线,垂足为 N。记 NBP 为 。
ห้องสมุดไป่ตู้
图 2.1
显然有 NP NB tan 上式两边全微分,有 dNP tan dNB NB sec 2 d
1.1.1 公式推导
为了下面讨论的方便,这里对 A、B、P 的顺序进行了约定:A、B、P 的 排列顺序必须与方位角的增加方向一致。下图是数学系,方位角增加方向是逆 时针,因此 A、B、P 为逆时针排列。
图 1.1
下图是测量系,方位角增加方向是顺时针,因此 A、B、P 为顺时针排列。
1
第1章
计算公式
1.2.2 验证代码
验证上面公式的 C 代码如下: srand(time(NULL)); double xA = rand(); double yA = rand(); double xB = rand(); double yB = rand(); double xP = rand(); double yP = rand(); double aAP = atan2(yP - yA,xP - xA); double aBP = atan2(yP - yB,xP - xB); double ca = cos(aAP); double sa = sin(aAP); double cb = cos(aBP); double sb = sin(aBP); double sab = sa * cb - ca * sb; //sin(aAP - aBP); double XP = (xA*sa*cb - xB*ca*sb + (yB - yA)*ca*cb) / sab; double YP = (yB*sa*cb - yA*ca*sb + (xA - xB)*sa*sb) / sab; double deltaX = XP - xP; //应该接近于零
上式可化简为线性方程组
cos AP sin AP cos BP AP xB x A sin BP BP yB y A
可求得
4
第1章
计算公式
xA xB sin BP y A yB cos BP AP sin AP BP BP x A xB sin AP y A yB cos AP sin AP BP
AB cos AB xB x A 把 代入上式,可得 AB sin AB yB y A
2
第1章
计算公式
x xA cot A yB y A xP x A B cot A cot B y y yB y A cot A xB x A P A cot A cot B
1.2 方位前方交会
角度前方交会需要判断 A、B、P 的排列顺序,使用起来比较麻烦。使用全 站仪进行前方交会时,更多的是观测 AP 和 BP 的方位角,而不是 A 和 B 。
1.2.1 公式推导
在此情况下,有:
xP x A AP cos AP xB BP cos BP yP y A AP sin AP yB BP sin BP
xP y P AB cos( AB A) sin A cot B cos A AB xA cos AB cos A sin AB sin A sin A cot B cos A AB cos AB cot A AB sin AB xA cot A cot B AB yA sin( AB A) sin A cot B cos A AB yA sin AB cos A cos AB sin A sin A cot B cos A AB sin AB cot A AB cos AB yA cot A cot B xA
方位前方交会 ..................................................................................................4
I
第1章
计算公式
第 1 章 计算公式
1.1 角度前方交会
如下图所示,已知 A、B 点的坐标,通过测量 A 和 B 即可求出点 P 的坐 标。这种定位方法就是角度前方交会。
1.1.2 验证代码
验证上面公式的 C 代码如下: srand(time(NULL)); double xA = rand(); double yA = rand(); double xB = rand(); double yB = rand(); double xP = rand(); double yP = rand();
化简后得
x A sin AP cos BP xB cos AP sin BP yB y A cos AP cos BP xP sin AP BP y yB sin AP cos BP y A cos AP sin BP x A xB sin AP sin BP P sin AP BP
x sin A cos B xB cos A sin B sign y A yB sin A sin B xP A sin A cos B cos A sin B y y A sin A cos B yB cos A sin B sign xB x A sin A sin B P sin A cos B cos A sin B
前方交会 及精度评定
Hanford 2015 年 01 月 26 日


目 录
第1章 1.1 1.1.1 1.1.2 1.2 1.2.1 1.2.2 第2章 计算公式 .......................................................................................................1 角度前方交会 ..................................................................................................1 公式推导 .....................................................................................................1 验证代码 .....................................................................................................3 公式推导 .....................................................................................................4 验证代码 .....................................................................................................5 精度评定 .......................................................................................................7
相关文档
最新文档