我应该使用TCP或UDP数据包来控制UAV吗?

我应该使用TCP或UDP数据包来控制UAV吗?,tcp,udp,robotics,Tcp,Udp,Robotics,我应该使用TCP或UDP连接向PC/基站的无人机发送控制命令吗 车辆很小(大约有人指甲那么大),需要基站的持续控制来稳定车辆 以下是我的想法:TCP应该是可靠的传输,但速度很慢,而UDP不像TCP那样提供数据包传输的保证,但比TCP更快。 因为我真的很关心如何尽快将数据包从基站传送到UAV,所以我认为使用UDP是一种可行的方法 我走远了吗?我把这个问题简化了吗 在我的演讲中,我不会说两者都不是 我强烈建议您建立一个内部控制回路,稳定无人机,仅使用数据连接发送更多面向行为的命令,如向西飞、向东飞等

我应该使用TCP或UDP连接向PC/基站的无人机发送控制命令吗

车辆很小(大约有人指甲那么大),需要基站的持续控制来稳定车辆

以下是我的想法:TCP应该是可靠的传输,但速度很慢,而UDP不像TCP那样提供数据包传输的保证,但比TCP更快。
因为我真的很关心如何尽快将数据包从基站传送到UAV,所以我认为使用UDP是一种可行的方法


我走远了吗?我把这个问题简化了吗

在我的演讲中,我不会说两者都不是

我强烈建议您建立一个内部控制回路,稳定无人机,仅使用数据连接发送更多面向行为的命令,如向西飞、向东飞等

我假设您正在使用某种无线发射机进行连接

如果使用UDP,则无法确保控制数据包到达UAV,这可能导致UAV变得不稳定并崩溃

如果使用TCP,则无法保证控制数据包以固定的时间间隔到达UAV,这可能会导致UAV变得不稳定并导致崩溃

如果你真的想从基站控制一切,我推荐TCP,因为你可以确保你的控制数据包到达UAV。如果您使用的是标准无线传输,您应该有足够的带宽来重新传输丢失的数据包

如果您希望发送大量数据,例如视频或声音,而不直接影响无人机的稳定性,我肯定会选择UDP,因为您不会在意是否丢失一两帧

我希望这是有道理的


西格德

我认为你需要一个内环循环来稳定飞行。如果您有足够的计算能力来通信,那么您肯定可以控制无人机上的稳定和俯仰偏航滚转。 对于外部循环,您必须决定要实现的通信类型。
如果您想要连续通信(这更安全,但计算更繁重),UDP可能是您的选择(如果您每5毫秒发送一帧,可能您不太关心数据包丢失)

有用的答案。您知道有任何应用层协议为此目的使用TCP吗?