# digital-twin **Repository Path**: ppppplus/digital-twin ## Basic Information - **Project Name**: digital-twin - **Description**: Digital-twin environment for hardware-in-loop simulation. - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-01-24 - **Last Updated**: 2024-01-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

CT-Digital-Twin


digital twin for Cloud Testbench
#### 安装教程 1. 拉取代码 ``` bash git clone https://gitee.com/nics-robot/ct-digital-twin.git ``` 2. gzweb安装 执行以下命令安装nvm: ``` bash export NVM_DIR="$HOME/.nvm" && ( git clone https://github.com/nvm-sh/nvm.git "$NVM_DIR" cd "$NVM_DIR" git checkout `git describe --abbrev=0 --tags --match "v[0-9]*" $(git rev-list --tags --max-count=1)` ) && \. "$NVM_DIR/nvm.sh" ``` 在`~/.bashrc`中添加以下内容,将nvm添加到环境变量: ``` bash export NVM_DIR="$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion ``` 安装和启用nodejs: ```bash nvm install 8 nvm use 8 ``` 安装基础依赖: ``` bash sudo apt install gazebo9 libgazebo9-dev sudo apt install libjansson-dev libboost-dev imagemagick libtinyxml-dev mercurial cmake build-essential ``` 构建gzweb: ``` bash source /usr/share/gazebo/setup.sh cd ct-digital-twin/gzweb npm run deploy --- ``` 3. 数字孪生ROS包部署 环境依赖: * ROS2 安装VRPN库: ```bash git clone https://github.com/vrpn/vrpn.git mkdir -p vrpn/build cd vrpn/build cmake .. make make install ``` 编译ROS包: ```bash cd ct-digital-twin/digital_twins_ws colcon build --packages-select entity_manager_interfaces source install/setup.bash colcon build ``` #### 使用说明 1. 启动gzserver ``` bash cd ct-digital-twin/digital_twins_ws source install/setup.bash ros2 launch gazebo_entity_manage gazebo_entity_manage.launch.py ``` 2. 启动VRPN消息转发 编辑配置文件`ct-digital-twin/digital_twins_ws/src/vrpn_listener/config/params.yaml`: ``` yaml /vrpn_listener: ros__parameters: server: 192.168.50.88 # VRPN 数据源IP port: 3883 frame_id: "world" mainloop_frequency: 100.0 # 主循环频率 (hz) refresh_trackers_frequency: 1.0 # tracker刷新频率 (hz) tracker_mainloop_frequency: 100.0 # tracker主循环频率 (hz) ``` 如果修改了配置文件,则需重新编译ros包,编译完成后执行以下命令: ``` bash cd ct-digital-twin/digital_twins_ws source install/setup.bash ros2 launch vrpn_listener sync_entity_state.launch ``` 3. 启动gzweb ``` bash cd ct-digital-twin/gzweb npm start ```