您当前的位置:五五电子网电子知识电子知识资料机器人-智能车机器人遥操作网络通信平台的设计 正文
机器人遥操作网络通信平台的设计

机器人遥操作网络通信平台的设计

点击数:7296 次   录入时间:03-04 12:04:03   整理:http://www.55dianzi.com   机器人-智能车

(c)

图4 通信平台运行界面

  客户端和服务器进行连接并通信。图4(b)显示的是IP为“192.168.0.106”的客户端和服务器建立连接之后的通信,而图4(c)则是IP为“192.168.0.110”的客户端和服务器通信的界面。

  3 实验性能分析

  1.时延和数据的丢失问题

  机器人 遥操作 要求数据传输要具备可靠性和次序性,TCP协议提供了可靠而有序的传输,基于这一特性,可以在传输过程中使用超时重传、分段、重组等检错纠错策略,通过这些检错纠错策略可以保证在数据传输过程中的可靠性和有序性,可以有效的防止数据的丢失。

  机器人远端遥操作控制的采用并不意味着实时控制作用被上移到网络,实时控制依然由现场的控制单元来完成,而网络遥操作更关注的是对现场信息的监视和管理以及对机器人的非实时控制,所以TCP通信在传输过程中存在的时延问题也就显得影响不大。



www.55dianzi.com

   2.数据共享问题及其解决方案

  由于本文中程序是多任务多线程的,当多个客户端同时连接到服务器时,多任务、多线程就极易造成数据共享问题。数据共享问题可以解释如下:假定有多个函数(或者ISR、任务)共享一个变量,如果在某一时刻存在对该变量的数值的操作,并且在对其施加操作的的过程中,仅有部分操作完成,还有一部分没有完成,若在此时产生一个中断,如果此时还有另一个函数也在共享该变量,且前面的操作已经完成,该变量的数值可能与预期的不同。因此,当一个函数与另一个函数共享某变量时,所调用的ISR或者另一个函数都有可能改变此变量,是变量的数值发生变化,在返回时此变量的新数值将从堆栈转载到四个寄存器中,未完成的操作将按照寄存器中的新数值执行,程序就会发生错误。

  在本文中,利用了以下措施消除了程序中由共享数据问题所导致的错误。

1) 对于从中断返回的变量,在声明中使用了volatile。此声明可以警告编译器,这些变量是可更改的。
2)在中断之前将完全执行的部分中对原子指令使用可再生函数,此部分叫临界段。
3) 将共享的变量放入循环队列中。需要使用该变量数值的函数总是从队列的前端将其删除。而另一些写入该变量的数值的函数总是从队列的末端进行操作。
4)在临界段开始执行之前通过使用信号量来关闭中断,在其完成之时打开中断。

  4 结论

  本文设计了一种基于TCP协议的网络通信平台,通过该平台可以实现远程客户机与本地服务器之间的信息通信,而且保证了数据传输的可靠性和次序性,对 机器人 的 遥操作 提供了可靠的网络通信条件。

  网络通信平台的建立,扩大了对机器人操作的远程化距离,而且该平台具有架构容易,低成本,维护便利等优点,对机器人遥操作领域的技术进步将会起到帮助作用。

  参考文献

  [1] Brady KTzyh—Jong. Intemet—based remote teleoperation[A].In International Conference on RobotICs and Automation[C].Leuven Belgium,1998,65.

  [2] 陈宁,王庆鹏,谈大龙.基于 Internet的机器人遥操作实验平台的设计与实现[J].机器人.2000,22(7):211-214.

  [3] 郭建光,符秀辉.网络机器人遥操作实验研究[J].仪器仪表学报.2005,25(8):477-478.

  [4] 扶忠践.基于 MFC的网络通信程序设计[J].湖南:长沙电力学院学报.1999,14(4):325-327.



上一页  [1] [2] 


本文关键字:机器人  通信  网络  机器人-智能车电子知识资料 - 机器人-智能车