ROS_Kinetic_18 使用V-Rep3.3.1和Matlab2015b(vrep_ros_bridge)续

ROS_Kinetic_18 使用V-Rep3.3.1和Matlab2015b(vrep_ros_bridge)续

上一节配置的v-rep在ros kinetic中是可以看图像,并订阅主题的,但是无法发送消息让机器人动起来,

在Top启发下,研究了一下,终于解决了,官方提供的正对3.3.1版本的vrep需要额外的步骤。

ln -s compiledRosPlugins/libv_repExtRos.so 

配置后在 kinetic中是会报错的,这时候需要重新编译生成该文件。

1 编译生成

这里,需要注意catkin_make和catkin build的区别,并灵活使用。

复制在v-rep安装目录ros_packages到catkin_relay/src中:

/home/relaybot/Rob_Soft/V-REP_PRO_EDU_V3_3_1_64_Linux/programming/externalIkDemo1/ros_packages

需要修改,其中CMakeLists.txt,加入:

link_directories("/opt/ros/kinetic/lib")

使其可以用于kinetic,需要修改多处。然后编译,这里推荐用catkin build:

~$ cd catkin_relay/
~/catkin_relay$ catkin build


完成后,就可以在devel/lib下看到新的.so。


~/Rob_Soft/V-REP_PRO_EDU_V3_3_1_64_Linux$ ln /home/relaybot/catkin_relay/devel/lib/libv_repExtRosBridge.so
~/Rob_Soft/V-REP_PRO_EDU_V3_3_1_64_Linux$ ln /home/relaybot/catkin_relay/devel/lib/libv_repExtRos.so

这时,启动./vrep.sh,就不会出错了。

2 图像识别

分别启动roscore和v-rep。

打开Pioneer_p3dx_traj_DEMO.ttt场景并运行。

新打开一个终端,运行:

~$ roslaunch demo_pioneer demo-visual-servo-pioneer-simulation.launch 

图像被标记出。这里需要用到visp,demo_pioneer等。

3 控制机器人

~$ rosrun rqt_publisher rqt_publisher 


4 Matlab

Matlab2015b之后版本可以直接使用ROS,测试过indigo和kinetic都没有问题。也可以用matlab直接和vrep调试。


最后补一组图,ros和vrep控制空中机器人也很方便的。




-End-

补充 API接口

Matlab

Remote API

The remote API is part of the V-REP API framework.

V-REP offers a remote API allowing to control a simulation (or the simulator itself) from an external application or a remote hardware (e.g. real robot, remote computer, etc.). The V-REP remote API is composed by approximately one hundred specific functions and one generic function, that can be called from a C/C++ application, a Python script, a Java application, a Matlab/Octave program, an Urbi script, or a Lua script. The remote API functions are interacting with V-REP via socket communication in a way that reduces lag and network load to a great extent. All this happens in a hidden fashion to the user. The remote API can let one or several external applications interact with V-REP in a synchronous* or asynchronous* way (asynchronous by default), and even remote control of the simulator is supported (e.g. remotely loading a scene, starting, pausing or stopping a simulation for instance).

The word Synchronous is used in the sense that each simulation pass runs synchronously with the remote API application (i.e. the simulator will wait for a trigger signal from a client to start next simulation pass at a time t+dt). This is different from synchronous/asynchronous in the sense of blocking/non-blocking operation. The remote API also supports blocking and non-blocking operations.

Make sure you understand how the remote API is operating by reading this section. Also have a look at the external controller tutorial.

The remote API functionality comes in 2 separate entities, that are interacting via socket communication:


安装 A-LOAM 前,需要在安装 ROS Kinetic 的前提下进行。以下是使用 `catkin_make_isolated` 安装 A-LOAM 的步骤: 1. 创建 catkin 工作空间 在终端输入以下命令创建 catkin 工作空间: ``` mkdir -p ~/catkin_ws_isolated/src cd ~/catkin_ws_isolated/ catkin_make_isolated ``` 2. 克隆 A-LOAM 代码 在终端进入 catkin 工作空间的 src 目录下,并克隆 A-LOAM 代码: ``` cd ~/catkin_ws_isolated/src git clone https://github.com/HKUST-Aerial-Robotics/A-LOAM.git ``` 3. 安装依赖项 在终端输入以下命令安装必要的依赖项: ``` sudo apt-get install ros-kinetic-pcl-ros ros-kinetic-tf ros-kinetic-tf-conversions ros-kinetic-robot-state-publisher ros-kinetic-rosconsole ros-kinetic-rosconsole-bridge ros-kinetic-rospy ros-kinetic-rosgraph-msgs ros-kinetic-rosgraph ros-kinetic-rosbag ros-kinetic-rosbag-storage ros-kinetic-message-filters ros-kinetic-image-transport ros-kinetic-cv-bridge ros-kinetic-geometry-msgs ros-kinetic-sensor-msgs ros-kinetic-nav-msgs ros-kinetic-actionlib ros-kinetic-roscpp ros-kinetic-std-msgs ros-kinetic-catkin libgoogle-glog-dev libgflags-dev protobuf-compiler libprotobuf-dev libboost-dev ``` 4. 编译 A-LOAM 在终端输入以下命令编译 A-LOAM: ``` cd ~/catkin_ws_isolated/ catkin_make_isolated --pkg aloam_velodyne ``` 5. 运行 A-LOAM 在终端输入以下命令运行 A-LOAM: ``` source ~/catkin_ws_isolated/devel_isolated/setup.bash roslaunch aloam_velodyne aloam_velodyne_HDL_32.launch ``` 这将启动 A-LOAM 节点,并开始接收 Velodyne 激光雷达数据进行 SLAM。
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zhangrelay

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值