这是我的第一篇文章。我是 FIRST 机器人团队的首席程序员,今年的比赛是关于投掷飞盘。我想知道考虑到空气阻力、初速度、初始高度、初始角度等的轨迹是否存在某种“大统一方程”。基本上,我想从超声波测距仪获取数据,编码器决定了我们的电机速度、发射器的角度、旋转力(应该是相当恒定的。我们将自己确定)和重力常数,并在我们实时将其插入方程重新排列镜头以验证/猜测我们是否会接近。如果有人听说过这样的事情,或者知道在哪里可以找到它,我将不胜感激!(供参考,我已经做了一些研究,我能找到的只是每个方面的一堆小方程,比如旋转等等。它最终将用 C++ 编程)。谢谢!
1 回答
我是一名机械工程师,以编写软件为生。在进入科技初创公司之前,我曾在洛克希德马丁公司工作,为火箭编写模拟软件。我在这方面有一些收获。
我的专业直觉是,没有“大统一方程”这样的东西。事实上,这是一个足够难的问题,即使它们是正确的,也可能没有很好的理论模型:例如,你的一个方程必须是飞盘产生的升力,这取决于它的交叉- 截面、速度、迎角和关于空气特性的假设。除非你要把你的飞盘放在风洞里,否则这个方程充其量只是一个近似值。
在现实世界中情况变得更糟:你会在有风的地方发射飞盘吗?然后你就可以和你的模特亲吻再见了,因为随便玩飞盘的人都知道,风是一种巨大的干扰。你的模型可能很好,但现实世界对他们来说可能很残酷。
在现实世界中处理这种复杂性的方式是,几乎所有系统都有反馈:飞行员可以纠正风,或者火箭的计算机可以消除空气密度差异造成的干扰。除非你在飞盘上放置一个带有控制面的微控制器,否则你的开环预测不会走得太远——我敢肯定,这是他们通过让飞盘比赛为你设置的陷阱。
有一种可靠的工程方法来解决这个问题。给牛顿一个靴子,让他们自己做物理方程。
这是经验建模过程:在一个包含俯仰角和滚动角、发射速度、飞盘旋转速度等的矩阵上发射飞盘……然后将模型与您的结果进行反向拟合。这可以像表格结果的线性插值一样简单,因此输入变量的任何组合都可以生成预测。
这不是猜测和检查,因为您提前填充表格,因此可以对结果进行某种预测。您将比尝试理想化模型更快地获得更好的信息,尽管您将不得不继续获取您的飞盘:)