https://github.com/robincpc/nexgrc_experimental
Experimental ROS package for NexCOBOT Controller
https://github.com/robincpc/nexgrc_experimental
robot-arm ros-industrial
Last synced: 3 months ago
JSON representation
Experimental ROS package for NexCOBOT Controller
- Host: GitHub
- URL: https://github.com/robincpc/nexgrc_experimental
- Owner: RobinCPC
- Created: 2019-03-14T01:07:32.000Z (about 7 years ago)
- Default Branch: kinetic-devel
- Last Pushed: 2019-11-28T07:40:29.000Z (over 6 years ago)
- Last Synced: 2025-02-08T15:46:34.270Z (about 1 year ago)
- Topics: robot-arm, ros-industrial
- Language: CMake
- Homepage:
- Size: 1.77 MB
- Stars: 0
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# nexgrc_experimental
[](https://travis-ci.org/RobinCPC/nexgrc_experimental)
NexGRC Experimental
nexgrc_clinet node provide ros service to talk with socket (and send command to GRC Controller)
```
nexgrc_clien/StringCommand
string command
string parameters
---
int32 error_code
string response
```
## How to Build [Kinetic]:
Go to your ROS workspace directory, then
``` bash
# remove old compiled file (if exist) and rebuild
catkin clean
catkin build
source devel/setup.bash
```
## Usage:
### Run with real Robot arm:
Currently, Only use `StringCommand` to communicate with GRC controller through tcpip.
``` bash
# After build, run the following command
roslaunch nexgrc_client start.launch
# Then, client node will wait for connecting NexGRC controller
# run with rviz (will need to specified urdf file)
roslaunch nexgrc_client start_rviz_demo.launch model:=`rospack find pmc6r_support`/urdf/pmc6r.urdf.xacro gui:=true
```
For testing, open another terminal
``` bash
# Go to you ROS worksace, and source nexgrc_client package
source devel/setup.bash
# ask robot to do ptp move.
rosservice call /grc_telnet 'ptp' ' -35 130 -15 45 90 -115'
# get joint position
rosservice call /grc_telnet 'get joint position' ''
# get flange frame
rosservice call /grc_telnet 'get flange frame' ''
# check if motion finish
rosservice call /grc_telnet 'get state' ''
# ask robot to stop while executing ptp command
rosservice call /grc_telnet 'halt' ''
```
### Work with Gazebo and control with ros_control
Run the following command in order.
``` bash
# To display in Gazebo Simulation.
roslaunch pmc6r_gazebo pmc6r_world.launch
# Connect with ros control
roslaunch pmc6r_control pmc6r_control.launch
# a function publish joint control message
rosrun pmc6r_control simple_mover
```
Note: In GRC Controller socket server part.
You need to set Inbouad rule of port (such as 1688) for tcp connection (From `Windows Firewall` -> `Advanced Setting`)