飞行者联盟 门户 新闻资讯 精品文章 查看内容

一些开源的航空航天仿真工具软件

2022-1-4 21:10| 发布者: 环球快车 |来自: 飞机模拟训练 225 4

摘要: 序:“小时候,晴朗的天空总是蔚蓝,就连那连绵不断的山峰也无法遮挡住那深邃的远方。曾几何时,天空中偶尔会飞过一架飞机,于是众小伙伴奔走相告,哪怕飞机的轰鸣早已响彻耳旁。有时,我们会目不转睛地望着飞机,直 ...

序:“小时候,晴朗的天空总是蔚蓝,就连那连绵不断的山峰也无法遮挡住那深邃的远方。曾几何时,天空中偶尔会飞过一架飞机,于是众小伙伴奔走相告,哪怕飞机的轰鸣早已响彻耳旁。有时,我们会目不转睛地望着飞机,直到它飞出视野范围之外,并梦想着有一天能够像飞机一样在天空中翱翔,到我们想去的远方。

依稀记得,那些年,为了躲避夏日的炎热,我们姐妹三人常常在优静的晚上躺在繁星闪烁的夜空下,仰望宇宙的苍穹。那时,我们的视力好到可以看见亮度十分暗淡的人造卫星飞越上空。而为了等待流星划过夜空的美丽瞬间,我们更是轮流看守,不放过任何一次机会。令我们感到十分惊讶的是,我们几乎总是能在深夜欣赏到流星划过的瞬间,甚至有时还会中头奖,来一次令人激动不已的流星雨。

童年纵然逝去,但我相信每个人心中都有个孩子,每个人心中都留有一份童真,每个人心中都深藏童年的美好记忆。现在看来,长大可并不是一件好事,但是爸妈却不这么想,天天盼望着我们长大成人,并能有所作为。

童年对头顶上那片天空产生的特殊情怀使得我踏上了航空航天的学习道路,然而多年以来却术无专攻、学无所成。唯一值得欣慰的是,这么多年来,我学会了一个原则,那就是做任何事都不要首先尝试重新发明轮子,而要学着制造汽车。用牛顿先生的话说,就是:“如果说我比别人看得更远些,那是因为我站在了巨人的肩膀上。”于是,当我需要某种工具时,必先用 Google 搜寻一番,哪怕是 Bing 也是可以的。时至今日才猛然发现,在开放的世界竟然有那么多实用的工具可以为我所用,即使是专业特性超强的航空航天领域。”


本文并非一篇教读者如何在庞杂的信息世界里搜索合适的工具,而是直接授之以鱼,将笔者已知的航空航天领域十分优秀的开放仿真工具介绍给大家,并辅以相应的入门级教程。这其实是一项十分艰难的工作,因为大部分开放软件的文档都较为匮乏,且绝大多数由英文写成。这倒不是致命伤,关键在于,笔者不可能把每一款软件都学会,然后写出教程。从时间和精力的角度来讲,这都是不现实的。所以本文将重点对功能相对强大且笔者认为十分有研究价值的工具软件展开介绍,希望能抛砖引玉,吸引更多的爱好者加入到本文的撰写过程中来。

本文定性为航空航天仿真工具的相关介绍和研究,主要涉及航空航天领域大量优秀的开放仿真软件,不会涉及任何与开放硬件相关的话题。这里的开放是指读者可以免费获取资源,而无需为其支付任何使用费用。文中介绍的工具包含了很多开源的软件,而开源是开放的子集,开源的软件绝大多数是免费的。此外,开源软件最鲜明的特点是其源代码必定公开,并可以通过互联网或其它媒介自由获取。书中并不包含那些停止开发或多年未曾更新的工具软件,因为笔者认为,只有历经岁月的洗礼,才能称得上优秀,并最具研究价值。原则上,长达五年未曾更新的软件不会出现在本文的分类之中,已经包含在本文中的软件如果在未来五年之内不再更新,亦将在下一次更新过程中被剔除。

是开源赋予了这个时代更多的活力,而开放则将知识的种子播撒开来。知识本就不应该被束之高阁,即使是本文所讨论的航空航天。衷心地希望本文能够帮助读者了解航空航天,了解开放的世界,并最终找到自己钟爱的航空航天仿真工具。

 

第零篇 基本信息
0.1 版本信息
0.1.1 更新记录

• 2016/06/28 v1.0 建立基本框架,对每款软件进行较为完整的介绍,并不涉及任何操作实践,甚至不包括如何安装软件。

0.1.2 写作计划

• 2019/04/05 v1.1 添加 OpenRocket 安装教程。

• 2019/04/15 v1.2 添加 Orbiter 入门教程:冲破卡门线。

• 2019/04/25 v1.3 添加 GMAT 入门教程:Molniya 轨道预报。

• 2019/05/15 v1.4 添加 Orbiter 入门教程:造访国际空间站。

• 2019/05/25 v1.5 添加 NASA’s Eyes 入门教程:在家畅游太阳系。

• 2019/06/15 v1.6 添加 Orbiter 入门教程:带她一起去月球。

• 2019/06/25 v1.7 添加 GMAT 入门教程:霍曼转移。

• 2019/07/15 v1.8 添加 Orbiter 进阶教程:TransX 行星际航行指南。

• 2019/07/25 v1.9 添加 Orbiter 进阶教程:红色行星之旅行。

• 2019/08/15 v2.0 添加 Orbiter 高级教程:EVA & EDL。

0.2 使用协议

本文采用 Creative Commons 使用协议,具体内容请参照 Creative Commons 协议官方网站。

 

第一篇 航空工具集 

1.0 内容概述 

本篇将对开放航空工具进行分类归纳,由于笔者已不再从事航空学方面的研究工作,所以很少再接触新的航空工具软件,文中涉及的工具皆为笔者早年间熟知的软件,具有一定的代表性。同时希望读者能够分享信息,提供更多关于开放航空仿真工具软件最新的发展状况。

本篇含有三个部分的内容,在广度和深度方面都不如航天工具集篇详实,但其中却不乏重量级的工具。如 FlightGear 和 OpenRocket,它们在各自的领域都有着极大的影响力。特别值得一提的是它们的源代码都是开放的,使得用户可以进行深层次的探究。

笔者作为一名模拟飞行爱好者,曾经使用过 X-Plane,如今对 Orbiter 有较为系统的学习。虽然只是在虚拟的环境中体验飞行,但这也未曾不失为一种乐趣,而且模拟带着浓厚的教育意味,在此过程中可以学得一些书本之外的知识。

1.1 模拟飞行

图片
图注:“协和”号即将降落在伦敦盖特威克机场跑道上

1.1.1 FlightGear

FlightGear 是一款开源的跨平台模拟飞行器。该项目始于 1997 年,经过最初十年的开发,于 2007 年 12 月发布了功能较为完善的 v1.0.0 版本。其最新版本为 2019 年 1 月 29 日发布的 v2018.3.2 版本,软件授权协议为 GPL(GNU General Public License)。

图片

从 FlightGear 官方手册可知,FlightGear 具有以下诸多特点:

民用性:该项目主要针对民航,用于通用航空和民航飞行模拟。FlightGear 的长远目标是可以作为 FAA 的飞行训练模拟器;FlightGear 不能进行空战模拟可能会让您感觉有些失望。但我们并没有完全排除 FlightGear 的这部分功能,只是因为缺少空战模拟的开发人员所以还没有实现这部分功能。

跨平台:项目所有开发人员都希望代码能不依赖平台,因此 FlightGear 能运行在多种电脑硬件和操作系统上。当前的代码支持 Linux(任何分支和平台)、Windows XP/Vista/7/8/10( Intel/AMD 平台)、Mac OS X、BSD UNIX & Sun Solaris 等等。目前为止,还没有其它任何一款模拟飞行软件(不管是商业化的还是免费的)支持如此多的平台。

开放性:FlightGear 不限定在任何固定开发人员手里,能在项目中发挥作用任何人都是受欢迎的。此项目的版权在自由软件基金会的手中,虽然 GPL 现在还不太被人们了解,但它已经得到法律的保护。在这个体系中,GPL 允许您复制和免费贡献代码,只要你喜欢这样做。然而,你必须免费提供源代码给每个需要它的人,且必须保留原始著作权。简而言之,GPL 允许你做任何除了收费之外的事情。

扩展性:从设计之初开始,FlightGear 的场景地形、飞机模型、内部参数、API 和其它任何东西都是对用户透明并有文档记录的。就算没有任何开发文档,您也能参看源代码来了解 FlightGear 是如何工作的。FlightGear 开发人员的目标是建立是一个能自由进行场景设计、飞行面板设计、ATC 设计及声音驱动的基本引擎。FlightGear 项目凝结了来自全世界开发者的智慧,我们希望此项目所有的开发人员和用户都能从中获益。

1.1.2 Plane-Maker

Plane-Maker 是随 X-Plane 免费发布的一款内部模型插件开发工具,专门供 X-Plane 插件开发者为其开发飞机、人物、车辆及地景模型等第三方插件。用户只需安装 X-Plane Demo,而非购买完整的 X-Plane 软件包,即可获得 Plane-Maker 进行插件开发。

图片

Plane-Maker 虽然是免费软件,但它的功能却异常强大。首先,它给开发者提供了一个十分方便的 GUI 集成环境,从而使得开发者可以很轻松地在该环境中创建各种类型的模型;其次,Plane-Maker 与 X-Plane 的交互过程既简单又高效,且在 Plane-Maker 中开发的飞机插件可以直接导入 X-Plane 这一高仿真度的模拟飞行环境中进行试飞;此外,Plane-Maker 能够读取来自外部三维软件(如 Blender、Google Sketchup、AC3D 及 3DS Max 等)所构建的各种模型。

事实上,Plane-Maker 完全是 X-Plane 团队为提升自身竞争力而为第三方开发者量身打造的插件开发工具。时间证明,这种做法是成功的。因为,如今 X-Plane 的插件开发者已经为其开发了大量的优秀插件,这间接增加了 X-Plane 对用户的吸引力。你可以从 X-Plane 官方论坛下载到由众多爱好者开发的各种插件。当然,如果你想设计一架属于自己的机模,我相信 Plane-Maker 一定是不错的选择。

1.1.3 CRRCSim

CRRCSim 是一款基于 GPL 发布的开源遥控模型飞机飞行模拟器,由 C 和 C++ 语言编写而成,OpenGL 作为图形驱动引擎。CRRCSim 可运行在主流的操作系统平台之上,多数 Linux 发行版本、Mac OS X 及 Microsoft Windows。使用 CRRCSim 不仅可以帮助你学习如何操控遥控模型飞机,并在模拟环境中提高遥控操纵技能,还可以帮助你测试新设计的飞机模型。

图片

1.2 飞行动力学仿真

图片

图注:基于 JSBSim 开发的 MATLAB/Simulink 仿真模块

1.2.1 JSBSim

JSBSim 是一套开源的飞行动力学模型软件库,目前为 FlightGear 两大常用的飞行动力学引擎之一。此外,JSBSim 还被 OpenEaagles 模拟框架所使用,并可以单独被其它程序调用,以此来创建一些模拟工具。

图片


路过

雷人

握手

鲜花

鸡蛋
太高级看不懂
2022-1-16 21:54
wow
2022-1-15 11:10
2022-1-10 14:08
2022-1-9 11:41