Access Sony XC-56 camera on Fanuc robot using ROS

asked 2018-10-26 07:25:03 -0600

razerblade gravatar image

Hello,

I am trying to figure out how to use Fanuc's Sony camera with ROS. I am running ROS on R30iB controller and on PC I am using ROS Kinetic. The communication between the PC and the controller is with an Ethernet cable. Is it possible to somehow stream the video from controller to the IP address and use the camera as the IP camera? Is there any other option to obtain the camera image to PC without using the Fanuc iRVision software? Was anyone already successful in getting the camera working with ROS using some of the available ROS camera drivers or at least getting the camera image to PC running Linux?

Thanks!

edit retag flag offensive close merge delete

Comments

1

I don't believe this is possible, although I don't have any first-hand experience with the XC-56 (but I do have experience with Fanucs).

If frames from the camera can be viewed on a web page (and it doesn't use one of Fanucs ActiveX components for that) you might be able to write a grabber ..

gvdhoorn gravatar image gvdhoorn  ( 2018-10-26 07:35:33 -0600 )edit
1

.. that periodically downloads the current frame from the website that the robot controller serves and then convert that to a ROS message. That would not be very performant though.

Whether it would be possible to access camera images directly or connect it to your PC I wouldn't know.

gvdhoorn gravatar image gvdhoorn  ( 2018-10-26 07:40:07 -0600 )edit

Thanks for your answer! I had something similar in my mind but I think it uses some drivers specifically for Internet Explorer. And to get IE with ActiveX controllers working in Ubuntu would be fun I guess... Now, I have an idea to try to stream the images to the FTP server managed by controller...

razerblade gravatar image razerblade  ( 2018-10-29 10:30:42 -0600 )edit

...and then write a script to stream the images through ROS message. Probably it still won't be too performant but I will give it a try. Do you maybe have experience with something similar?

razerblade gravatar image razerblade  ( 2018-10-29 10:30:56 -0600 )edit

If you can capture some traffic (using Wireshark) fi between an internet explorer session and your robot controller while there is a live-view of the camera, we might be able to figure out the protocol. There is a small change we can work around the ActiveX components.

gvdhoorn gravatar image gvdhoorn  ( 2018-10-29 10:32:04 -0600 )edit

Ok, after some experimenting it appears the current captured frame from the camera can be accessed over HTTP easily, but it's a bit tricky to get the snapshot continuously updated. If you can figure that out though, it should be possible to use Python requests fi to write a node.

gvdhoorn gravatar image gvdhoorn  ( 2018-10-29 11:39:46 -0600 )edit

Thanks, I downloaded Wireshark and came to the same url for latest live image. But now I do it like this: I start live image on computer with IE and then I remove the cable, put it to Linux computer and can get the last image from Windows computer plugged.Did you try to stream live on Teach Pendant?

razerblade gravatar image razerblade  ( 2018-10-29 12:04:27 -0600 )edit

And then get the image on the Linux box without the windows get involved? Because I have some problems with iRVision setup (needs firmware update) on teach pendant...

razerblade gravatar image razerblade  ( 2018-10-29 12:04:39 -0600 )edit