What is needed for using Integrated Vision?

Hello!

I have an ABB robot with PC Interface and a Cognex In-Sight 5100 camera.

I am using the ABB-Cognex interface in order to communicate them, but I would be interested in using the Integrated Vision module of Robot Studio. The reason is that the ABB-Cognex interface is from 2009 and doesn’t seem to have any kind of maintenance? Am I right when thinking that I should use the Integrated Vision module?

When through the RobotStudio 6.0 not 64 bit I click to the integrated vision, the camera is detected but all the buttons are blocked.

I’d like to know what is needed in order to use it.

Thank’s for your help!!!

I have a similar issue, is there any solution to this situation?

Hi Pablo, when I moved the discussion you posted in recently from Developer Center to here, I see that you have really searched to forum and made several posts to get an answer to those questions. I worked with the development of Integrated Vision long time ago but I’m not up to date with the latest and probably I have forgot something about how it worked back then as well :frowning:

I understand you are considering using Insight Explorer instead, but I’m really sure that your use case is a perfect fit for Integrated Vision. Have you bought the camera from ABB or from Cognex? If it is from Cognex you can verify with ABB support if it works or not.

In another post you referred to page 50 in the manual. Somewhere close there is instructions about configuring the controller (the VC) to understand how to establish a network connection with the real camera. Have you followed them?

In a real as well as virtual scenario you need to tell the controller that it shall connect to the camera. It is basically some CFG-settings that say that we have a camera on this IP and lets call it this name. That name is then used in the RAPID program when you refer to it from instructions such as “LoadJob”.

When this step is done the IRC5 “knows about” the camera and it should be visible in the controller browser. When it is visible you can select it and connect.

Maybe this can help a bit.

Don’t forget that you can contact your local contact person to get support and via him or her get help from the experts as well.

Dear Niklas,

Thank you so much for your detailed answer. I bought the camera from Cognex so I have to make sure if that model (ism1020) works well with Integrated Vision. I read that Integrated Vsion software development was tailored for Model 5000 Cognex cameras.

I followed the instructions from page 50 in the manual but it didn’t work… the good news are I finally connected to the camera, using F1 help from In-sight Explorer 4.7.3 lol, in “How to..” → Configure Robot Communications → ABB Robot Controller. There is a code snippet that says:

MODULE VISION

! DATA DECLARATIONS

PERS num nXOffs:=0;

PERS num nYOffs:=0;

PERS num nAngle:=0;

VAR string stReceived;

VAR iodev ComChannel;

PERS tooldata tGripper:=[TRUE,[0,0,0],[0,0,0,1]],

[5,[0,0,],[1,0,0,0],0,0,0]];

PERS tooldata tVision:=[TRUE,[[0,0,0],[0,0,0,1]],

[5,[0, 0, 0],[1,0,0,0],0,0,0]];

CONST robtarget pHome:=[[0,0,0],[0,0,0,1],

[-2,0,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];

CONST robtarget pVisionPos:=[[0,0,0],[0,0,0,1],

[-2,0,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];

PROC Main()

MoveL pHome,v1000,fine,tVision;

GetVisionData;

MoveL Reltool(pVisionPos,nXOffs,nYOffs,0\Rz:=nAngle),v500,

fine,tGripper;

WaitTime 3;

MoveL pHome,v1000,fine,tVision;

ENDPROC

PROC GetVisionData()

VAR string XData:=“”;

VAR string YData:=“”;

VAR string AngleData:=“”;

VAR num NumCharacters:=9;

VAR bool bOK;

nXOffs:=0;

nYOffs:=0;

nAngle:=0;

Close ComChannel;

Open “COM2”, ComChannel \Append\Bin;

ClearIOBuff ComChannel;

WaitTime\InPos, 0.5;

! Instruction In-Sight to Acquire an Image

! and not return until complete

WriteStrBin ComChannel, “sw8\0D”;

CheckStatus;

! Get the value in cell C7

WriteStrBin ComChannel, “gvc007\0D”;

CheckStatus;

! Read the X-offset

XData:= ReadStrbin (ComChannel, NumCharacters \Time:=5);

! Read the Y-offset

YData:= ReadStrbin (ComChannel, NumCharacters \Time:=5);

! Read the Angle-offset

AngleData:= ReadStrbin (ComChannel, NumCharacters \Time:=5);

!Closes Serial Channel “COM2”

Close ComChannel;

!Convert String Data To Numerical Data

bOK:=StrToVal(XData,nXOffs);

bOK:=StrToVal(YData,nYOffs);

bOK:=StrToVal(AngleData,nAngle);

ENDPROC

PROC CheckStatus()

stReceived:=ReadStrBin(ComChannel,1\Time:=5);

IF stReceived<>“1” THEN

TPErase;

TPWrite “Vision Error!”;

Stop;

ENDIF

ClearIOBuff ComChannel;

ENDPROC

ENDMODULE

Finally I connected to the Cognex Camera using telnet port, and modifying the upper code snippet… for example in the line " IF stReceived<>“1” THEN" I received the 1 digit in ASCII code, followeb by /RC (Return carriage) and /NL (New Line).

It was tricky but finally it helped to get some centroid data (x, y and theta)… according to my initial question, I haven’t solved it but I found a not-so-fancy solution using telnet

Thanks for the advice of ask to a local contact person :slight_smile:

Best regards,

Pablo Liberona

PD: Sorry for the delay in responding :wink: