RobotStudio event

IRB 1200

Good evening, I'm new in the forum, my name is Andrea calling from Italy. We have an IRB 1200 programmed via flexpendant making always the same movements, thus, we don't need any pc connected. Sometimes I need to change the value of a variable to adjust some eventual imperfections of the object to take. To do this, I have to turn the key in manual position, change the variable, turn again the key, engage motors, reset robot position etc etc. So, is there a simple way to send a command to change that variable without doing the above actions? Something like an UDP message or something like that.
Many thanks in advance,

Andrea
«1

Comments

  • You could connect via the service port with robotstudio and make edits.  You could also view the data on the teach pendant and make changes without changing to manual mode.  You might need to stop program execution for a moment while doing so.
    Lee Justice
  • Many thanks, Lee. Sorry for the late in my answer but I was around for work. I would like to avoid the presence of the pendant in order to avoid unwanted touch by workers. I read about the socket mode or writing a file that the controller reads at every start but I didn't find how to do it
  • lemster68
    lemster68 ✭✭✭
    If you want to work with file based variables, you could FTP the file to the controller and then use the Load command in rapid to load the module which contains the variables that you need changed.
    Lee Justice
  • Wow, it looks so easy... but I will need a little more specific hand...
  • lemster68
    lemster68 ✭✭✭
    Start with an FTP client.  Oh, and make sure that the robot has the option FTP and NFS.  I use Filezilla.  Get connected to the main computer via ethernet connection on the cpu port.  Try to send your file.  Look up in the forum examples for using the load command.  I am pretty sure that I have already posted some examples, as well as have some other users.
    Lee Justice
  • How can I check if I have the FTP option?
  • lemster68
    lemster68 ✭✭✭
    Look inside a backup, there is a folder, BACKINFO, there is a text file inside it, Backinfo.txt.  It will list the installed options.
    Lee Justice
  • Ok I will try. Just another question: until now, I've used WaitDI command but how can I check an input without holding the execution? Something like
    If DI1=1 then
    do something
    end if
  • lemster68
    lemster68 ✭✭✭
    You could do that or TestDI function.  But if the input is not on, it is not on regardless of how you check for it.  If you must wait, then you must.  But if it is the case that you can do something else instead of wait doing nothing, then your suggestion would be best.
    Lee Justice
  • I'm sorry but I don't have the TestDI function on my pendant? Where it would be? And, I have to check only if it on and do an operation only if so. I DON'T want to wait
  • Good morning, I didn't find anything about FTP but I have devicenet. At this point I have to use the disk file option. I've connected the IRC5 with the WANport to my ethernet. I've modified the ip settings and I can ping it but I cannot see it as a phisical disk (using windows \\192.168.0.15\). 
  • lemster68
    lemster68 ✭✭✭
    If you don't have FTP and NFS option you would need the option PC interface to connect RS to the main computer ethernet port.  Otherwise, it is limited to the service port.
    Lee Justice
  • I have the pc interface. I've downloaded the trial version of RobotStudio and I can see and sync it. I would like to avoid robot studio and create my own app in order to simplify the operation for any person who need to change that parameter instead of calling me every time.
  • No more suggestions?
  • Hallo, option PCInterface includes socket messaging where you can communicate on a permanet ethernet connection using a c/C++ program running on a remote PC. You might use this to transfer data.
  • lemster68
    lemster68 ✭✭✭
    Do you have screenmaker or flex pendant interface option?  You could whip something up for the pendant to do what you want.  Otherwise, you could be about to go deep into a rabbit hole with learning SDK or other methods of interfacing a computer with the robot.
    Lee Justice
  • I have the flexpendant. At the moment I use that to change a constant value that is passed to a variable in the program. So I can change the screen of the flexpendant as I want?
  • lemster68
    lemster68 ✭✭✭
    If you have the options that I mentioned.
    Lee Justice
  • matti said:
    Hallo, option PCInterface includes socket messaging where you can communicate on a permanet ethernet connection using a c/C++ program running on a remote PC. You might use this to transfer data.

    If you want (and can) make your own PC app, you can use this youtube video + the source code in the comments as a starting point.
    https://www.youtube.com/watch?v=VkZsjef6wC8&t=302s

    Credit to @Maxim Riabichev for the video + source code. 
    Systemintegrator - Web / C# / Rapid / Robotstudio

    If I helped, please press Vote Up  :smile:
  • Many thanks for the help. I've tried with the screenmaker and has been very useful. Now it's a lot easier...
  • lemster68
    lemster68 ✭✭✭
    You wrote something up that fast?
    Lee Justice
  • Yes, I told you! I need to change only a variable! Screenmaker is quite easy. I'ts similar to VB6. But, now I have another problem: the screen I've created has been succesfully uploaded in my fp, I can see project files in the flexpendant explorer but it doesn't appear in the top left menu as it does in the flexpendant simulation. If I use screenmaker doctor I get an error saying I have to add screenmaker.sys as a module. What does it mean???
  • lemster68
    lemster68 ✭✭✭
    Sorry, I have not used that myself.  But good job so far.  I am sure that better help will arrive soon.
    Lee Justice
  • mecoplast said:
    Yes, I told you! I need to change only a variable! Screenmaker is quite easy. I'ts similar to VB6. But, now I have another problem: the screen I've created has been succesfully uploaded in my fp, I can see project files in the flexpendant explorer but it doesn't appear in the top left menu as it does in the flexpendant simulation. If I use screenmaker doctor I get an error saying I have to add screenmaker.sys as a module. What does it mean???

    I think these modules should be loaded automatically if the robot is booted correctly.
    But you can try to load them manually, you can find the module in the robotware folder.

    On my computer the path is 
    C:\Users\admin\AppData\Local\ABB Industrial IT\Robotics IT\RobotWare\RobotWare_6.15.1001\options\gtpusdk


    Systemintegrator - Web / C# / Rapid / Robotstudio

    If I helped, please press Vote Up  :smile:
  • Hi, I'm sorry but I've tried with some hints found in this forum but without success. I've searched for that file on my pc and found it under 6.14.1017 release, so I've upgraded flexpendant system hoping it would have been downloaded automatically but nothing. Then I've tried with the mod of sys.cfg in the backup folder but performing a reboot, I receive an error message saying "missing task for screenmaker.sys"
  • In the Controller parameter domain the Type Automatic loading of modules has to have an entry. 

    The following entry is on many controllers in this facility (though all are running RW 5.15):

    RELEASE:/options/gtpusdk/ScreenMaker.sys

    Also, in ScreenMaker for the project's properties Display tab, is the ABB Menu section configured?
  • I've entered that entry this morning but nothing changes. The ABB menu section is properly configured...
  • I tried configuring it in robot studio. Now I can see under rapid->T_ROB the screenmaker sub menu. If I click it I have

    MODULE ScreenMaker(SYSMODULE,NOVIEW)
            
    PERS string routineNameToCall := "";
     PROC ScmCallRoutine()
      IF routineNameToCall <> stEmpty THEN
       %routineNameToCall%;      
      ELSE
       TPWrite "Rapid Data must be set before";
       RETURN;
      ENDIF 
      routineNameToCall := stEmpty;
      Stop;
         ERROR
       routineNameToCall := stEmpty;
       RETURN;
         UNDO
       routineNameToCall := stEmpty;
     ENDPROC        
    ENDMODULE

    but It doesn't start. Do I have to input my screenmaker app name in "routineNameToCall "?