我正在创建一个我有客户端和服务器的应用程序。客户端将向服务器发送一些坐标,用于移动机器人。我想要的是同步定时器,用于时间戳日志数据,以便我可以比较输入和输出。通信通过TCP / IP完成,客户端使用C ++完成,而服务器使用RAPID(ABB机器人编程语言)。我的问题是定时器没有正确同步。
现在,定时器在两者之间的连接建立时开始:
服务器端: ListenForConnection; startTimer所;
客户方: connectToServer; startTimer所;
这不起作用。有没有一种技术可以确保定时器同步?
注意:服务器只能通过LAN连接。
答案 0 :(得分:1)
您需要客户端和服务器之间的协议来传递时间戳。
现在,大概你有一个发送坐标的协议。你需要以某种方式扩展它以允许一方向另一方发送定时器信息。
最简单的方法是,如果你有双向沟通能力。在这种情况下,客户端
如果服务器无法发送到客户端,则客户端需要不时发送时间戳,服务器将其识别为时间,而不是坐标。在第一次发生这种情况之前,两者不会同步。