机器人编程技术:从Colbert到SVS系统的全面解析
1. Colbert编程基础
Colbert包含有限状态自动机(FSA)和并发进程两种进程。在Colbert中,程序是一种基于FSA语义的活动。这种活动能以多种方式控制机器人的整体行为:
- 对机器人执行的基本动作进行排序。
- 监控基本动作和其他活动的执行情况。
- 执行活动子程序。
- 检查和设置内部变量的值。
FSA可用于推理计算复杂性和可判定性。Colbert的优势在于它能将ANSI C中的操作符结构直观地转换为可控制机器人的FSA。
2. 套接字编程
2.1 套接字概述
套接字是一种双向通信设备,用于在同一机器上的不同进程之间,或不同机器上的进程之间进行通信。它是实现不同计算机与机器人服务器之间通信的唯一进程间通信方式。在LINUX中,创建套接字需要将通信程序中的端口ID引用与通信风格、命名空间和协议等参数关联起来。数据以数据包的形式发送和接收,通信风格决定了数据包的处理和寻址方式,命名空间指定了套接字地址的书写方式,协议则决定了数据的传输方式。常见的协议有TCP/IP、APPLETALK网络协议和UNIX本地通信协议。通常,这些功能会封装在 Socket 类的方法中,为其他程序提供简单易用的通信格式。JAVA通过提供标准API库,为套接字编程提供了内置支持。
2.2 客户端 - 服务器架构
在客户端 - 服务器架构中,套接字可配置为服务器套接字或客户端套接字。服务器套接字会持续检查(监听)客户端的连接请求,而客户端套接字则主动发起连接请求。服务器套接字验
超级会员免费看
订阅专栏 解锁全文
57

被折叠的 条评论
为什么被折叠?



