diff --git a/Code/triad_openvr/README.md b/Code/triad_openvr/README.md index f346a27..62d6b1a 100644 --- a/Code/triad_openvr/README.md +++ b/Code/triad_openvr/README.md @@ -1,8 +1,10 @@ -# Triad OpenVR Python Wrapper +# Triad OpenVR Python封装库 -This is an enhanced wrapper for the already excellent [pyopenvr library](https://github.com/cmbruns/pyopenvr) by [cmbruns](https://github.com/cmbruns). The goal of this library is to create easy to use python functions for any SteamVR tracked system. +​ 这是一个增强的OpenVR的封装库,对比现有的一些较为完善的库如 [cmbruns](https://github.com/cmbruns)开发的 [pyopenvr library](https://github.com/cmbruns/pyopenvr)。Triad OpenVR Python 封装库是为了更加简便的方式去使用python处理SteamVR跟踪系统的数据。 -# Getting Started +## 一、使用样例 + +​ 通过python获取SteamVR的手柄的位置,并绘制在Figure上,示例代码如下: ```python import triad_openvr as vr @@ -17,9 +19,9 @@ plt.ylabel('X Coordinate (meters)') ![Example plot of captured data](images/simple_xcoord_plot.png "Example Plot") -# Configuration file +## 二、配置文件 -The goal is to identify devices by serial, in order to keep the same name for the same physical device. for maing it work, you just have to change serials and names in the 'config.json' file. Here is an example of config file : +​ config.json的作用是通过序列号识别设备,以便为同一物理设备保持相同的名称。为了使其正常工作,只需在'config.json'文件中更改序列号和名称。以下是一个配置文件的示例: ``` { diff --git a/Code/triad_openvr/tracker_test.py b/Code/triad_openvr/tracker_test.py index 83ccbb4..bac3d50 100644 --- a/Code/triad_openvr/tracker_test.py +++ b/Code/triad_openvr/tracker_test.py @@ -3,7 +3,7 @@ import time import sys v = triad_openvr.triad_openvr() -v.print_discovered_objects() +# v.print_discovered_objects() if len(sys.argv) == 1: interval = 1/250 @@ -17,7 +17,7 @@ if interval: while(True): start = time.time() txt = "" - for each in v.devices["tracker_1"].get_pose_euler(): + for each in v.devices["hmd_1"].get_pose_euler(): txt += "%.4f" % each txt += " " print("\r" + txt, end="") diff --git a/Image/Lighthouse的安装.png b/Image/Lighthouse的安装.png new file mode 100644 index 0000000..be1f31b Binary files /dev/null and b/Image/Lighthouse的安装.png differ diff --git a/README.md b/README.md index 176d69e..6a55701 100644 --- a/README.md +++ b/README.md @@ -2,4 +2,39 @@ 描述:这个项目是利用valve的高精度激光定位系统Lighthouse实现对其他非高精度的定位设备进行误差评估的系统。Lighthouse的工作原理文档路径为`Docs\Lighthouse工作原理.md`。 -一、 \ No newline at end of file +## 一、硬件设备 + +### 1.1 设备的准备 + +​ 将Lighthouse用于定位参考设备,只需要准备如下即可。 + +| 设备名 | 数量 | 备注 | +| ------------------- | ---- | ------------------------------------------------------------ | +| HTC 激光基站 & 电源 | 2 | 根据情况可以选择1.0、2.0、3.0的版本,购买的时候一般商家会配套电源。二手产品需要注意购买电源 | +| HTC 手柄或者Tracker | 1 | 根据情况可以选择1.0、2.0、3.0的版本,购买的时候需要对应购买接收器。 | +| 激光基站的支架 | 2 | 基站的顶部需要额外增加万向转接头,可以调整基站方向。 | + +### 1.2 Lightouse的安装与设置 + +​ Lighthouse基站安装一般推荐安装在较高的位置,可以俯瞰地面的设备。一般安装在2m以上的位置,可以选择天花板倒置安装,也可以选择支架安装。 + +![Lighthouse安装示意](.\Image\Lighthouse的安装.png) + +## 二、软件的准备 + +### 2.1 软件的安装概况 + +​ 软件方面主要需要安装Steam平台和SteamVR。理论上SteamVR底层的OpenVR可以支持各种语言。目前最简单的是采用python读取数据,python的运行脚本如下所示: + +```shell +# 安装openvr库 +pip install openvr +# 进入工作目录 +cd Code/triad_openvr +# 获取指定设备的位置和姿态, 这里需要根据实际的设备类型对代码进行调整 +python tracker_test.py +``` + +## 2.2 SteamVR的配置 + +​ 正常来说,SteamVR的启动必须需要头显才能启动,所以需要对SteamVR的部分配置文件进行修改,以得到无头显启动的目的。 \ No newline at end of file