-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #4 from clubcapra/fix-env
Fix-env
- Loading branch information
Showing
43 changed files
with
697 additions
and
1,821 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,15 +1,33 @@ | ||
# ovis-ros2 | ||
|
||
Launch gazebo command: | ||
Ovis is a 6 Degrees of Freedom (DoF) robotic arm developed by the CAPRA student club. It is designed to be highly versatile and is compatible with MoveIt for motion planning and Kinova motors for precise control. This repository provides the necessary tools and launch files to simulate and visualize the Ovis robotic arm using ROS2. | ||
|
||
|
||
## Installation | ||
|
||
Clone and build the repository : | ||
```bash | ||
git clone https://github.com/clubcapra/ovis_ros2.git | ||
cd ovis_ros2 | ||
colcon build --symlink-install | ||
source install/setup.bash | ||
ros2 launch ovis_description sim.launch.py | ||
``` | ||
|
||
Launch rviz command: | ||
## Usage | ||
|
||
Start the gazebo simulation : | ||
```bash | ||
ros2 launch ovis_bringup sim.launch.py | ||
``` | ||
|
||
Launch gui state publisher and arm visualization : | ||
```bash | ||
colcon build --symlink-install | ||
source install/setup.bash | ||
ros2 launch ovis_description launch.py | ||
``` | ||
|
||
Launch MoveIt! : | ||
```bash | ||
ros2 launch ovis_moveit demo.launch.py | ||
``` |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,61 +1,20 @@ | ||
@startuml | ||
|
||
folder "Ovis" as ovis { | ||
[gazebo] | ||
[hardware] | ||
[slam] | ||
[navigation] | ||
[description] | ||
[bringup] | ||
[control] | ||
[nlp] | ||
} | ||
|
||
package "Ovis control" as control { | ||
[control.launch.py] | ||
[teleop.launch.py] | ||
[keyboard.launch.py] | ||
[joy.launch.py] | ||
} | ||
|
||
package "Natural Language Processing" as nlp { | ||
[capra_gpt.launch.py] | ||
[web_server.launch.py] | ||
[local_chat.launch.py] | ||
} | ||
|
||
package "Ovis hardware" as hardware { | ||
[camera.launch.py] | ||
[imu.launch.py] | ||
[lidar.launch.py] | ||
[flipper.launch.py] | ||
[track.launch.py] | ||
node "motor controller" as motor { | ||
} | ||
} | ||
|
||
package "Ovis description" as description { | ||
[description.launch.py] | ||
} | ||
|
||
package "Ovis Gazebo" as gazebo { | ||
[sim.launch.py] | ||
[launch.py] | ||
} | ||
|
||
package "Ovis Bringup" as bringup { | ||
[ovis.launch.py] | ||
[base.launch.py] | ||
[top.launch.py] | ||
} | ||
|
||
package "Ovis Navigation" as navigation { | ||
[nav2.launch.py] | ||
[sim.launch.py] | ||
} | ||
|
||
package "Ovis SLAM" as slam { | ||
[slam.launch.py] | ||
[ekf.launch.py] | ||
[slam_3d.launch.py] | ||
package "Ovis Manipulation" as manipulation { | ||
[moveit.launch.py] | ||
} | ||
|
||
@enduml |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,52 @@ | ||
import os | ||
|
||
from ament_index_python.packages import get_package_share_directory | ||
from launch import LaunchDescription | ||
from launch.actions import IncludeLaunchDescription | ||
|
||
from launch.launch_description_sources import PythonLaunchDescriptionSource | ||
from launch.substitutions import Command | ||
from launch_ros.actions import Node | ||
from launch_ros.parameter_descriptions import ParameterValue | ||
|
||
|
||
def generate_launch_description(): | ||
# Get the launch directory | ||
pkg_ovis_description = get_package_share_directory('ovis_description') | ||
bringup_pkg_path = get_package_share_directory('ovis_bringup') | ||
|
||
# Get the URDF file | ||
urdf_path = os.path.join(pkg_ovis_description, 'urdf', 'ovis_standalone.urdf.xacro') | ||
robot_desc = ParameterValue(Command(['xacro ', urdf_path]), value_type=str) | ||
|
||
# Takes the description and joint angles as inputs and publishes | ||
robot_state_publisher = Node( | ||
package='robot_state_publisher', | ||
executable='robot_state_publisher', | ||
name='robot_state_publisher', | ||
output='both', | ||
parameters=[ | ||
{'robot_description': robot_desc}, | ||
{"use_sim_time": True, } | ||
] | ||
) | ||
|
||
# Visualize in RViz | ||
rviz = Node( | ||
package='rviz2', | ||
executable='rviz2', | ||
arguments=['-d', os.path.join(pkg_ovis_description, 'config', | ||
'basic.rviz')], | ||
) | ||
|
||
teleop = IncludeLaunchDescription( | ||
PythonLaunchDescriptionSource( | ||
os.path.join(bringup_pkg_path, "launch", "ovis_controller_usb.launch.py"), | ||
), | ||
) | ||
|
||
return LaunchDescription([ | ||
robot_state_publisher, | ||
rviz, | ||
teleop, | ||
]) |
File renamed without changes.
38 changes: 0 additions & 38 deletions
38
src/ovis_bringup/launch/rove_controller_bluethoot.launch.py
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,71 @@ | ||
import os | ||
|
||
from ament_index_python.packages import get_package_share_directory | ||
from launch import LaunchDescription | ||
from launch.actions import IncludeLaunchDescription | ||
|
||
from launch.launch_description_sources import PythonLaunchDescriptionSource | ||
from launch.substitutions import Command | ||
from launch_ros.actions import Node | ||
from launch_ros.parameter_descriptions import ParameterValue | ||
from launch.actions import DeclareLaunchArgument | ||
|
||
|
||
def generate_launch_description(): | ||
# Configure ROS nodes for launch | ||
|
||
# Get the launch directory | ||
pkg_ovis_bringup = get_package_share_directory('ovis_bringup') | ||
pkg_ovis_description = get_package_share_directory('ovis_description') | ||
pkg_ros_gz_sim = get_package_share_directory('ros_gz_sim') | ||
|
||
# Get the URDF file | ||
world_file_name = 'worlds/base_world.world' | ||
world = os.path.join(pkg_ovis_description, world_file_name) | ||
|
||
# Setup to launch the simulator and Gazebo world | ||
gz_sim = IncludeLaunchDescription( | ||
PythonLaunchDescriptionSource( | ||
os.path.join(pkg_ros_gz_sim, 'launch', 'gz_sim.launch.py')), | ||
launch_arguments={'gz_args': "-v 4 -r " + world}.items(), | ||
) | ||
|
||
# Spawn robot | ||
create = Node( | ||
package='ros_gz_sim', | ||
executable='create', | ||
arguments=['-name', 'ovis', | ||
'-topic', 'robot_description', | ||
'-x', '0', | ||
'-y', '0', | ||
'-z', '0.1', | ||
], | ||
output='screen', | ||
) | ||
|
||
# Bridge ROS topics and Gazebo messages for establishing communication | ||
bridge = Node( | ||
package='ros_gz_bridge', | ||
executable='parameter_bridge', | ||
parameters=[{ | ||
'config_file': os.path.join(pkg_ovis_description, 'config', | ||
'default_bridge.yaml'), | ||
'qos_overrides./tf_static.publisher.durability': 'transient_local', | ||
"use_sim_time": True, | ||
}], | ||
output='screen' | ||
) | ||
|
||
# Include common launch configuration | ||
common = IncludeLaunchDescription( | ||
PythonLaunchDescriptionSource( | ||
os.path.join(pkg_ovis_bringup, "launch", "common.launch.py"), | ||
), | ||
) | ||
|
||
return LaunchDescription([ | ||
gz_sim, | ||
bridge, | ||
create, | ||
common, | ||
]) |
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.