ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

custom robotic arm

asked 2015-12-27 09:07:28 -0600

denim_patel gravatar image

updated 2015-12-27 10:08:38 -0600

gvdhoorn gravatar image

hello everyone

i have recently completed navigation on my custom robot base, and planning to make own robotic arm controlled by moveit.

for that , i searched-on wiki pages and ros-industrial tutorials.

my progress on this is as follows 1.have my robots urdf file 2.completed moveit setup assistant 3.demo.launch runs completely well. 4.controller.yaml 5.moveit_planning_execution.launch

now i'm struct!!where to go now!! i think next phase is writting custom hardware node listen to the trajectory. bt i'm not sure

can anyone guide me ?

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2015-12-27 09:57:46 -0600

Humpelstilzchen gravatar image

updated 2015-12-31 01:57:59 -0600

Had the same problem and after a lot of websearches I ended up writing an ActionLib Server for the FollowJointTrajectoryAction

  • You get the list of goals for each link in trajectory/points

  • You should publish the feedback for each goal while also watching preempt_requested.

  • Moveit expects you to return FollowJointTrajectoryResult.SUCCESSFUL in FollowJointTrajectoryActionResult if all went well.

In case it helps I uploaded my implementation (python) to github, no guarantees given.

The new angle is send to hardware with the to_angle() call (not in this repos). The interface is

def to_angle(axis, speed=255, angle=0)

where axis is the axis number (0..5), speed the motor pwm speed and angle in rad.

edit flag offensive delete link more


thanks for the precious help!!!

denim_patel gravatar image denim_patel  ( 2015-12-28 06:26:09 -0600 )edit

thank you for sharing!!! i worked on your implementation but there is a problem with one module "arm". no module is added in your pkg present on git-hub named "arm". can you please upload it? thank you

denim_patel gravatar image denim_patel  ( 2015-12-30 16:35:49 -0600 )edit

I could share it, but this is the call to the hardware which you most certainly do not need. It basically sends an i2c call to the different motor/servo controllers. I have updated my answer with the detail.

Humpelstilzchen gravatar image Humpelstilzchen  ( 2015-12-31 01:58:08 -0600 )edit

thank you for all the help!!!

denim_patel gravatar image denim_patel  ( 2015-12-31 05:58:53 -0600 )edit

using your guidance and your code, I completed my node of action server client. Right now i am working on changing the settings from fake_trajectory_execution to arm_trajectory_execution.

does am i doing right? it will be great if you suggest me the process of the same in fewer lines.

denim_patel gravatar image denim_patel  ( 2016-01-01 14:58:43 -0600 )edit

Sorry not sure if I fully understood you. There should be no need to change any of the launch files created by moveit. For real hardware I just use move_group.launch instead of demo.launch.

Also this might better go into a new question.

Humpelstilzchen gravatar image Humpelstilzchen  ( 2016-01-01 15:26:25 -0600 )edit

Hey @Humpelstilzchen, could you share the link of your github implementation again, the current one is not working. It would be a great help.

Robo_Panda gravatar image Robo_Panda  ( 2018-08-15 08:06:31 -0600 )edit

Try on private repo. But an implementation based on ros control might be prefered.

Humpelstilzchen gravatar image Humpelstilzchen  ( 2018-08-15 10:53:27 -0600 )edit

Question Tools



Asked: 2015-12-27 09:07:28 -0600

Seen: 1,051 times

Last updated: Dec 31 '15