poster ZhongZhe - Robotics Institute Summer Scholars...

1
Interfacing with ROS Integration of a Cartesian Robot with ROS Zhong Zhe, Ankit Bhatia and Matt Mason The Manipulation Lab, Robotics Institute A Cartesian Robot is an industrial robot whose three principal axes of control are linear and are at right angles to each other. The three sliding joints correspond to moving the wrist updown, inout, backforth. A popular application for this type of robot is a computer numerical control machine an 3D printing. Pick and place machines and plotters are also based on the principal of cartesian robot. Goals: Cartesian Robot Introduction Results The Robot Operating System (ROS) is a flexible framework for writing robot software. It is a collection of tools, libraries, and conventions that aim to simplify the task of creating complex and robust robot behavior across a wide variety of robotic platforms. Hardware and Controls Future Work Just a part of work has being completed this summer and one simple application is used in drawing machines where a pen translates across an x-y plane while a tool is raised and lowered onto a surface to create a precise design. It can also be used in 3D printer design but it is harder. Another future direction is to use ethernet instead of RS232 to command the robot(TCP/IP). This will allow us to log information faster and command the robot at a higher frequency. 6k4 motion controller 6k4 motion Controller Linear servo motor driver Rotary Encoder Brakes Limit&Home Sensors Couplings PC based machine control Driver ROS Computer Robot Services Input Feedback Output Operating Principle of ROS Connection with Robot Commands Procedure Create ROS environment and create catkin workplace Write ROS services Test services on the robot and debug them Actuate robot using ROS services set position, velocity, acceleration, deceleration of robot get position of encoder and status of the robot motion controller Robot Accuracy(position error) is the robot's ability to position its wrist end at a desired target point within the work volume, and it is defined in terms of spatial resolution. Procedure The following graph is the error bar of each axis: xaxis: maximum error is 0.0009 inch mean errors is 0.0004 inch standard deviation is 0.00024 inch yaxis: maximum error of is 0.0008 inch mean error is 0.00036 inch standard deviation is 0.0003 inch collect 5 groups of coordinate data of each axis calculate the mean errors of each axis using Set up robot Write driver for the robot Measure position errors of xaxis and yaxis Computer Motion Controller X-axis Motor Drive Z-axis Motor Drive Y-axis Motor Drive Rotary Encoder Rotary Encoder Rotary Encoder Feedback This flow chart is how the ROS driver works Commanded XAxis(in) Commanded YAxis(in) Measured XAxis(in) Measured YAxis(in)

Transcript of poster ZhongZhe - Robotics Institute Summer Scholars...

Page 1: poster ZhongZhe - Robotics Institute Summer Scholars (RISS)riss.ri.cmu.edu/wp-content/uploads/2015/10/2015... · Interfacing+with ROS •Setup$robot $ •Write$ROS$services$and$debug$

Interfacing  with  ROS

•Set  up  robot    •Write  ROS  services  and  debug  •Test  and  measure  errors  of  x-­‐axis,  y-­‐axis  and  z-­‐axis

                                                                 Integration  of  a  Cartesian  Robot  with  ROSZhong  Zhe,  Ankit  Bhatia  and  Matt  Mason  The  Manipulation  Lab,  Robotics  Institute

•  A  Cartesian  Robot  is  an  industrial  robot  whose  three  principal  axes  of  control  are  linear  and  are  at  right  angles  to  each  other.  The  three  sliding  joints  correspond  to  moving  the  wrist  up-­‐down,  in-­‐out,  back-­‐forth.    

• A  popular  application  for  this  type  of  robot  is  a  computer  numerical  control  machine  an  3D  printing.  Pick  and  place  machines  and  plotters  are  also  based  on  the  principal  of  cartesian  robot.  

• Goals:  

Cartesian  Robot

Introduction Results

• The  Robot  Operating  System  (ROS)  is  a  flexible  framework  for  writing  robot  software.  It  is  a  collection  of  tools,  libraries,  and  conventions  that  aim  to  simplify  the  task  of  creating  complex  and  robust  robot  behavior  across  a  wide  variety  of  robotic  platforms.  

         

Hardware  and  Controls

Future  Work

Just a part of work has being completed this summer and one simple application is used in drawing machines where a pen translates across an x-y plane while a tool is raised and lowered onto a surface to create a precise design. It can also be used in 3D printer design but it is harder. Another future direction is to use ethernet instead of RS232 to command the robot(TCP/IP). This will allow us to log information faster and command the robot at a higher frequency.

6k4  motion  controller

• 6k4  motion  Controller  • Linear  servo  motor  driver                          • Rotary  Encoder  • Brakes  • Limit&Home  Sensors  • Couplings

•      PC  based  machine  control  

   Driver        ROSComputer

   Robot

Services  Input

Feedback  Output

Operating  Principle  of  ROS  Connection  with  Robot  

Commands

•      Procedure

• Create  ROS  environment  and  create  catkin  workplace  • Write  ROS  services  

• Test  services  on  the  robot  and  debug  them  • Actuate  robot  using  ROS  services  

•set  position,  velocity,  acceleration,  deceleration  of  robot  •get  position  of  encoder  and  status  of  the  robot  motion  controller

• Robot  Accuracy(position  error)  is  the  robot's  ability  to  position  its  wrist  end  at  a  desired  target  point  within  the  work  volume,  and  it  is  defined  in  terms  of  spatial  resolution.  

• Procedure  

• The  following  graph  is  the  error  bar  of  each  axis:              x-­‐axis:  maximum  error  is  -­‐0.0009  inch                                          mean  errors  is  -­‐0.0004  inch                                      standard  deviation  is  0.00024  inch              y-­‐axis:  maximum  error  of  is  -­‐0.0008  inch                                      mean  error  is  -­‐0.00036  inch                                                standard  deviation  is  0.0003  inch  

                     

•collect  5  groups  of    coordinate  data  of  each  axis  •calculate  the  mean  errors  of  each  axis  using    •Set  up  robot  

•Write  driver  for  the  robot  •Measure  position  errors  of  x-­‐axis  and  y-­‐axis

Computer Motion Controller

X-axisMotor Drive

Z-axisMotor DriveY-axisMotor Drive

Rotary EncoderRotary EncoderRotary Encoder

Feedback  

•  This  flow  chart  is  how  the  ROS  driver  works  

Commanded  X-­‐Axis(in)

Commanded  Y-­‐Axis(in)

Measured  X-­‐Axis(in)

Measured  Y-­‐Axis(in)