RobotStudio event

Event manager API call

Hi all,

I need to create an event in the "Event manager" using RobotStudio 5.07.01 API. The event trigger is an I/O signal and the action is to attach a part to active tool with the setting "keep position". Anybody knows how to do this?

/erik

 

 

 

Comments

  • Hi all again & Happy New Year,

    The purpose is to create a pick and place plugin for some customers. Today it quite boring and time consuming to attach and detach parts inside the event manager. I think I have managed to set up the event table actions and triggers but can't figure out how to get it into the eventmanager.. image

    Are they any RS heroes out there that can help out.?

    /e

    ------------------------------------------------------------ -----


    private void EventButt_Click(object sender, EventArgs e)
    {
    CreateAttachedParts();
    // create some parts to attach (prtA1,prtA2) ,gets active controller actVC

    EventActivationMode EAM;
    EAM =
    EventActivationMode.Simulation;
    EventTableActionIO etActionIO =new EventTableActionIO();
    etActionIO.Irc5Controller = actVC;

    EventTableTriggerIO ettTriggerIO = new EventTableTriggerIO();
    ettTriggerIO.Name =
    "USERDO1"; //the IO signal i would like to use
    ettTriggerIO.Value = 0;
    ettTriggerIO.Irc5Controller = actVC;

    EventTableActionAttach etAction = new EventTableActionAttach();
    etAction.AttachmentParent = prtA1;
    etAction.AttachmentChild = prtA2;
    etAction.MountObject =
    true; //(keep position?)


    EventTableEntry ETE = new EventTableEntry();
    ETE.EventTableTrigger = ettTriggerIO;
    ETE.EventTableActions.Add(etAction);
    ETE.EventTableActions.Add(etActionIO);
    ETE.Cyclic =
    true;
    ETE.Comment=
    "";
    ETE.EventActivationMode = EAM;

    //And finally creates the entry
    //Which is not possible because there are no constructors defined..
    EventTableEntryCollection EvTablCollect= new EventTableEntryCollection();
    EvTablCollect.Add(ETE);
    //
    }

    ------------------------------------------------------------ -----

     


  • Hi Erik,

    Typically you should do like this:
    Simulator.ActiveConfiguration.EventTable.EventTableEntries.A dd(ETE);

    regards,
    Johannes
    Johannes Weiman2007-1-10 12:41:13
    Johannes Weiman
    Software Engineer
    ABB Robotics
  • Wooooaaaaaaaa!!

    Tack, tack, tack!

    /e