This is the swiftpro ROS package designed by Roger Cui(roger@ufactory.cc) and David Long (xiaokun.long@ufactory.cc). These packages support Moveit!, RViz and serial communication with swiftpro.
Download ros packages for uarm swift pro
$ cd ~/catkin_ws/src
$ git clone
or manually copy package folders swiftpro and swiftpro_moveit into a catkin_ws/src.
Install ros serial package
$ sudo apt-get install ros-kinetic-serial
Compile
$ catkin_make
Source all setup.bash files to set up your enviroment.
# System configure ROS environment variables automatically every time you open a ternimal
echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc
echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc
Connect your swiftpro to computer and get USB permission to access uArm
$ sudo chmod 666 /dev/ttyACM0
Get data from serial and simulate swiftpro in RViz.
roslaunch swiftpro display.launch
right now, you can drag your swiftpro and it will simulate in Rviz.
Connect swiftpro, send data though serial.
roslaunch swiftpro control.launch
Open another ternimal to get joint angles from Moveit!.
roslaunch swiftpro_moveit demo.launch
right now, you can do trajectory planning or grasping in moveIt!.
SwiftproState.msg: includes all data about swiftpro
float64 motor_angle1
float64 motor_angle2
float64 motor_angle3
float64 motor_angle4
float64 x
float64 y
float64 z
uint8 pump
uint8 swiftpro_status
uint8 gripper
position.msg: includes x, y, z information(mm)
float64 x
float64 y
float64 z
angle4th.msg: 4th motor angle(degree)
float64 angle4th
status.msg: work if 1; otherwise 0
uint8 status