Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Spot][jsk-spot-startup] add jsk_spot_startup package #14

Closed
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
87 commits
Select commit Hold shift + click to select a range
eecbf57
[jsk_spot_startup] add jsk_spot_startup package
sktometometo Nov 1, 2020
3086cba
[jsk_spot] add jsk_spot.rosintall
sktometometo Nov 1, 2020
f022c2d
[jsk_spot] update README.md
sktometometo Nov 1, 2020
daa1856
[jsk_spot_robot] update README.md
sktometometo Nov 1, 2020
272b0df
[jsk_spot_robot] update README.md
sktometometo Nov 1, 2020
2ed09c7
[jsk_spot_startup] fix the filepath of a rviz config in rviz.launch
sktometometo Nov 2, 2020
dccdb9b
[jsk_spot_startup] update the package.xml to fix the version, a maint…
sktometometo Nov 2, 2020
0ae06eb
[jsk_spot_startup] add Install section, Testing Section to CMakeLists…
sktometometo Nov 2, 2020
27fac1f
[jsk_spot_startup] add shorcuts for rviz and ros driver
sktometometo Nov 4, 2020
b02b94b
[jsk_spot_startup] add icons to desktop shorcuts
sktometometo Nov 4, 2020
9fc3e5f
[jsk_spot_startup] fix bugs
sktometometo Nov 4, 2020
81b9743
[jsk_spot_startup] fix bugs in desktop shortcuts
sktometometo Nov 5, 2020
0284328
[jsk_spot_startup] fix RViz icon for spot
sktometometo Nov 13, 2020
3e4df5e
[jsk_spot_startup] update shortcuts
sktometometo Nov 13, 2020
c92e38a
add python requirements
mqcmd196 Nov 14, 2020
49b02b4
add python requirements on README
mqcmd196 Nov 14, 2020
1bcc5ce
add bosdyn api version
mqcmd196 Nov 16, 2020
f183e25
Merge pull request #4 from mqcmd196/add_jsk_spot_startup
sktometometo Nov 17, 2020
6bb37f7
[jsk_spot_startup] add play.launch and record.launch
sktometometo Nov 18, 2020
eb01f74
[jsk_spot_startup] update record.launch
sktometometo Feb 10, 2021
02ca62a
[jsk_spot_startup] add peripheral.launch to bringup peripheral devices
sktometometo Feb 16, 2021
eaa81d1
[jsk_spot_startup] update driver.launch to add required property to s…
sktometometo Feb 16, 2021
8fc4ea5
[jsk_spot_startup] add panoramma image topic to record.launch and add…
sktometometo Feb 16, 2021
f8c555e
[jsk_spot_startup] change rviz view to robot centric and add panorama…
sktometometo Feb 17, 2021
8fb9c35
[jsk_spot_startup] update rviz config to add base_link trajectory
sktometometo Feb 17, 2021
1fd3058
[jsk_spot_startup] update play.launch
sktometometo Feb 17, 2021
12c8df7
[jsk_spot_startup] update rviz config to visualize battery percentage
sktometometo Feb 17, 2021
f020266
[jsk_spot_startup] update play.launch
sktometometo Feb 17, 2021
75bd79d
[jsk_spot_startup] set brightness of insta 360 air to 128
sktometometo Feb 18, 2021
6e16ff0
[jsk_spot_startup] add jsk_spot_bringup.launch
sktometometo Feb 18, 2021
325caf2
[jsk_spot_startup] add teleop.launch to jsk_spot_startup.launch
sktometometo Feb 18, 2021
ee760ac
[jsk_spot_startup] fix bugs in jsk_spot_bringup.launch
sktometometo Feb 18, 2021
7169351
[jsk_spot_startup] update rviz config
sktometometo Feb 18, 2021
ec4c3e7
[jsk_spot_startup] add jsk version of xacro
sktometometo Feb 24, 2021
2fbbc8a
[jsk_spot_startup] add resize node for panorama image
sktometometo Feb 25, 2021
1d0f092
[jsk_spot_startup] add dector and tracker
sktometometo Feb 25, 2021
aa7959e
[jsk_spot_startup] fix typo
sktometometo Feb 25, 2021
4e6a040
[jsk_spot_startup] add approximate_sync parameter to deep_sort_tracker
sktometometo Feb 25, 2021
435b475
[jsk_spot_startup] fix topic name of object_tracker.launch
sktometometo Feb 25, 2021
74e2afa
[jsk_spot_startup] update rviz.launch and add rviz config
sktometometo Feb 25, 2021
f702a28
[jsk_spot_startup] update spot_with_mot rviz config
sktometometo Mar 1, 2021
8417927
[jsk_spot_startup] add panorama_info to record and object_tracker
sktometometo Feb 28, 2021
4ed70ac
[jsk_spot_startup] fix typo and format of object_tracker.launch
sktometometo Feb 28, 2021
2bb7273
[jsk_spot_startup] add panorama rects to boudning box array node to o…
sktometometo Feb 28, 2021
a97ed96
[jsk_spot_startup] fix bugs and params for panorama_rect_array_to_bou…
sktometometo Feb 28, 2021
c2da474
[jsk_spot_startup] add respeaker_node to peripheral.launch
sktometometo Mar 2, 2021
77164c0
[jsk_spot_startup] removed unused launch
sktometometo Mar 2, 2021
5976c73
[jsk_spot_startup] add respeaker_base to xacro
sktometometo Mar 2, 2021
6389dd1
[jsk_spot_startup] fix typo in xacro
sktometometo Mar 2, 2021
b6ad990
[jsk_spot_startup] add launch_conversino_nodes arg to object_tracker.…
sktometometo Mar 4, 2021
e054798
[jsk_spot_startup] remove rect_array_to_panorama_rect_array and panor…
sktometometo Mar 4, 2021
0e59d36
[jsk_spot_startup] add interaction launch
sktometometo Mar 4, 2021
377ef87
[jsk_spot_startup] fix bugs in interaction.launch
sktometometo Mar 4, 2021
92bb8f3
[jsk_spot_startup] add rviz config
sktometometo Mar 4, 2021
1e5b7bb
[jsk_spot_startup] fix typo
sktometometo Mar 4, 2021
0c0ebd5
[jsk_spot_startup] update rviz config
sktometometo Mar 4, 2021
60084d2
[jsk_spot_startup] use english by default to speech_recognition
sktometometo Mar 4, 2021
f37558f
[jsk_spot_startup] add japanese online speech recgonition
sktometometo Mar 4, 2021
0aa04c9
[jsk_spot_startup] fix topic name
sktometometo Mar 5, 2021
25d4dbf
[jsk_spot_startup] update twist_mux to add develop cmd_vel input
sktometometo Mar 5, 2021
6004f85
[jsk_spot_startup] add respawn attribute to spot_ros.py node in drive…
sktometometo Mar 5, 2021
9f65ad6
[jsk_spot_startup] update edgetpu_object_detector.launch to specify p…
sktometometo Mar 5, 2021
e9414a2
[jsk_spot_startup] remove respeaker namespace from peripheral.launch
sktometometo Mar 5, 2021
11bb363
[jsk_spot_startup] fix audio topic name in interaction.launchg
sktometometo Mar 5, 2021
614395e
[jsk_spot_startup] add score_thresh param to edgetpu_object_detector.…
sktometometo Mar 5, 2021
7b43182
update README.md
sktometometo Mar 18, 2021
6a2e41c
update rosinstall
sktometometo Mar 18, 2021
ef76741
[jsk_spot_startup] merge detection and tracking launch
sktometometo Mar 19, 2021
2a14690
[jsk_spot_startup] mv basic launch to launch/include
sktometometo Mar 19, 2021
48c305c
[jsk_spot_startup] fix jsk_spot_bringup.launch
sktometometo Mar 19, 2021
241052a
[jsk_spot_startup] bugfix
sktometometo Mar 19, 2021
28b2dff
[jsk_spot_startup] add additional topics to record.launch
sktometometo Mar 19, 2021
bc8f151
[jsk_spot_startup] fix typo
sktometometo Mar 19, 2021
3b1b48c
[jsk_spot_startup] fix bugs
sktometometo Mar 19, 2021
b4b3bc9
[jsk_spot_startup] update detction launch
sktometometo Mar 20, 2021
ac00f6d
[jsk_spot_startup] fix arm and property of multoi_object_tdetector
sktometometo Mar 20, 2021
bfd8503
update README.md
sktometometo Mar 20, 2021
1769f66
[jsk_spot_startup] update launch files
sktometometo Mar 20, 2021
ddee457
[jsk_spot_startup] fix bugs
sktometometo Mar 20, 2021
116e326
[jsk_spot_startup] fix bugs
sktometometo Mar 20, 2021
b9e2a14
[jsk_spot_startup] update rviz config
sktometometo Mar 20, 2021
07096da
[jsk_spot_startup] update bbox_array topic
sktometometo Mar 20, 2021
240b8f6
[jsk_spot_startup] update tracking label topic
sktometometo Mar 20, 2021
42ab298
[jsk_spot_startup] fix mot launch
sktometometo Mar 20, 2021
4576979
[jsk_spot_startup] updte rviz config
sktometometo Mar 20, 2021
0deec75
[jsk_spot_startup] add cmd_vel_smoother
sktometometo Mar 22, 2021
48bd1a9
[jsk_spot_startup] add spot_recognition topics to record.launch
sktometometo Mar 22, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
67 changes: 67 additions & 0 deletions jsk_spot_robot/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,70 @@
jsk_spot_robot
==============

Currently, this packages require

- [spot_ros]() with [this patch](https://github.com/clearpathrobotics/spot_ros/pull/25)
- [common_msgs]() with [this patch](https://github.com/ros/common_msgs/pull/171)
- [jsk_recognition]() with [this patch](https://github.com/jsk-ros-pkg/jsk_recognition/pull/2579) and [this patch](https://github.com/jsk-ros-pkg/jsk_recognition/pull/2581)

## Manuals

- [Supported Documents of Boston Dynamics](https://www.bostondynamics.com/spot/training/documentation)
- [Spot ROS User Documentation](http://www.clearpathrobotics.com/assets/guides/melodic/spot-ros/ros_usage.html#taking-control-of-the-robot)

## How to run

### Install some python requirements

```
$ pip3 install -r requirements.txt
```

### Setting up a catkin workspace for a new user in the internal pc

```bash
source /opt/ros/$ROS_DISTRO/setup.bash
mkdir $HOME/catkin_ws/src -p
cd $HOME/catkin_ws
catkin init
cd src
wstool init .
wstool merge -t . https://github.com/sktometometo/jsk_robot/raw/develop/spot/jsk_spot_robot/jsk_spot.rosinstall
wstool update
rosdep install -y -r --from-paths . --ignore-src
catkin build
source $HOME/catkin_ws/devel/setup.bash
```

### Bringup spot

First, please turn on spot and turn on motors according to [the OPERATION section of spot user guide](https://www.bostondynamics.com/sites/default/files/inline-files/spot-user-guide.pdf)

After that, please run the ros driver and other basic programs with `jsk_spot_bringup.launch`. You can now control spot from ROS!

```bash
roslaunch jsk_spot_startup jsk_spot_bringup.launch username:=<username> password:=<password>
```

This launch includes
- driver launch file for spot
- bringup launch for additional peripheral devices (Respeaker, insta 360 air and ublox GPS module)
- teleoperation launch
- interaction launch with Speech-To-Text and Text-To-Speech

For visualization, you can run RViz with jsk configuration.

```bash
roslaunch jsk_spot_startup rviz.launch
```

You can control spot with DualShock3 controller. Please see [jsk_spot_teleop](./jsk_spot_teleop/README.md) for more details.

For development, `record.launch` and `play.launch` are useful for rosbag recording and playing.

```bash
# Record a rosbag file
roslaunch jsk_spot_startup record.launch rosbag:=<absolute file path to rosbag file>
# Play a rosbag file
roslaunch jsk_spot_startup play.launch rosbag:=<absolute file path to rosbag file>
```
16 changes: 16 additions & 0 deletions jsk_spot_robot/jsk_spot.rosinstall
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
- git:
local-name: jsk-ros-pkg/jsk_robot
uri: https://github.com/sktometometo/jsk_robot.git
version: develop/spot
- git:
local-name: jsk-ros-pkg/jsk_recognition
uri: https://github.com/sktometometo/jsk_recognition.git
version: develop/spot
- git:
local-name: common_msgs
uri: https://github.com/sktometometo/common_msgs.git
version: PR/add-panorama-info
- git:
local-name: spot-ros
uri: https://github.com/sktometometo/spot_ros.git
version: feature/add-go-pos
64 changes: 64 additions & 0 deletions jsk_spot_robot/jsk_spot_startup/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
cmake_minimum_required(VERSION 3.0.2)
project(jsk_spot_startup)

find_package(catkin REQUIRED)


###################################
## catkin specific configuration ##
###################################
catkin_package()


#############
## Install ##
#############
install(DIRECTORY config launch
DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}
USE_SOURCE_PERMISSIONS
)

###################################
## Create desktop icons for spot ##
###################################
##
macro(configure_spot_ros_icon_files iname)
set(ROBOT_NAME ${iname})
configure_file(shortcuts/SpotROS.desktop.in
$ENV{HOME}/.local/share/applications/SpotROS${ROBOT_NAME}.desktop)
cmake_host_system_information(RESULT _host_name QUERY HOSTNAME)
if(${_host_name} MATCHES "^${ROBOT_NAME}")
configure_file(shortcuts/SpotROS.desktop.in
$ENV{HOME}/Desktop/SpotROS${ROBOT_NAME}.desktop)
endif()
endmacro(configure_spot_ros_icon_files)
##
macro(configure_rviz_icon_files iname)
set(ROBOT_NAME ${iname})
configure_file(shortcuts/RVizSpot.desktop.in
$ENV{HOME}/.local/share/applications/RViz${ROBOT_NAME}.desktop)
cmake_host_system_information(RESULT _host_name QUERY HOSTNAME)
if(${_host_name} MATCHES "^${ROBOT_NAME}")
configure_file(shortcuts/RVizSpot.desktop.in
$ENV{HOME}/Desktop/RViz${ROBOT_NAME}.desktop)
endif()
endmacro(configure_rviz_icon_files)

configure_spot_ros_icon_files(spot-jsk)
configure_rviz_icon_files(spot-jsk)


#############
## Testing ##
#############
if(CATKIN_ENABLE_TESTING)
find_package(catkin REQUIRED COMPONENTS roslaunch roslint)
file(GLOB LAUNCH_FILES launch/*.launch)
foreach(LAUNCH_FILE ${LAUNCH_FILES})
roslaunch_add_file_check(${LAUNCH_FILE})
endforeach()

set(ROSLINT_PYTHON_OPTS --max-line-length=180 --ignore=E221,E222,E241) # skip multiple spaces before/after operator
roslint_python()
roslint_add_test()
endif()
Loading