本页介绍了如何将机器人系统设置为建图模式和定位模式
本页内容
运行环境准备
软件平台
- 本地安装python及相关的Python 库
- Slamware RESTful SDK: Swagger UI (slamtec.com)
- RoboStudio(用于显示地图):思岚科技(SLAMTEC)资源下载中心及技术支持联系方式 ----可以在该网站下载最新发布的RoboStudio
Sample Code: 可以命令行运行,也可以下载常用的集成开发环境 (IDE) 和 编辑器来运行,例如PyCharm或者Visual Studio Code (VS Code)等
硬件平台
(以下任选其一)
- Slamware SDP mini
- Slamware 套装 (基于Slamware导航方案的用户机器人系统)
- Apollo/Ares/Athena/Hermes等底盘系统
例程下载
编译运行
如下说明使用的是以PyCharm作为demo
- 下载例程到本地文件夹中,并使用PyCharm打开此文件夹
- 在PyCharm中配置好 Python 解释器
- 在终端中传参运行并连上Robostudio查看机器人建图功能打开
代码描述
如下代码实现的是给开启机器人系统的建图模式
开启建图模式
data = {"enable": True}
开启定位模式
data = {"enable": False}
#!/usr/bin/python # -*- coding:utf-8 -*- import requests import sys # 检查输入参数 if len(sys.argv) < 2: print("请提供IP地址") sys.exit(1) ip = sys.argv[1] url = f"http://{ip}:1448/api/core/slam/v1/mapping/:enable" headers = {'Content-Type': 'application/json'} data = {"enable": True} # 设置为False后,机器人系统就会切换到定位模式 def send_request(method, url, headers, json_data=None, timeout=30): try: response = requests.request(method=method, url=url, headers=headers, json=json_data, timeout=timeout) response.raise_for_status() # 如果状态码是4xx或5xx,会抛出HTTPError异常 return response except requests.exceptions.RequestException as e: print(f"发生错误: {e}") sys.exit(1) response = send_request("PUT", url, headers, json_data=data) if response.status_code in [200, 201, 203, 204]: print("接口调用成功, 返回内容如下: " + response.text) else: print(f"请求 {url} 的状态码不正确: {response.status_code}")