Posts by Braxtonc001

    I already wrote a routine to simplify. So the work is already done unfortunately.

    But I was hoping there was an easy way. Still ended up being 120 lines unfortunately. there was more I.O. then I thought.

    The more I read the manual. the more I see its not possible.

    The WHY is because I have over 60 of the inputs and outputs to do. and I hate rewriting and copy and paste. 60 because thats what the PLC guy wanted.

    The thought was. If I could dynamically read I/O and uses a loop or counters. it would be 4 or 5 lines vs 60.. and much easier to make changes if needed.

    Okay all, either I am insane or ABB wont do the simple things. Am I doing this right? I want to watch conditions of an input but I want that input to change based on a string

    Can I do this......

    sIOname := "PLC_DI80_OrderReq_Cnv"+NumToStr(nCnvNum,0)+"Chute"+NumToStr(nMagNum,0)+"_"+NumToStr(nChuteNum,0);

    IF DInput(sioname)=1 THEN



    If dinput ("PLC_DI80_OrderReq_Cnv"+NumToStr(nCnvNum,0)+"Chute"+NumToStr(nMagNum,0)+"_"+NumToStr(nChuteNum,0))=1 then


    Im going to have to try both of those things. Im working with accel/deccel right now.

    The issue is the Joint 4 has appeared to go bad. it has a lot of slop. SO i'm trying to get around it till I can get a new one.


    Does anyone have experience with IRB360 flexpickers? I am having an issue with AXIS 4 and would like to slow it down during a moveL. I was considering indepent Axis but I don't think I have the cycletime.

    Attached is the current configuration. for somereason the robot is not updating it in Read-Mode. the i-controller is set to 128bits




    So its always a misunderstood topic and a tough one givin the siemens TIA portal is so hard to navigate and add devices if you don't know the order of operations...

    ANYWAYS, I have a Fanuc on-site and they added a 4th machine. No big deal right? Wrong... I cant get the FANUC side to update. and ive got to the point where im determined im missing a step. Basically you can see the card pulling the i/o data on the status/profinet page but the robot/profinet setup will not read the new configuration or new I/O coming in.

    here's what i've done in the past

    1. robot start mode: stop
    2. cycle power,
    3. Load config too Cp1604 card, via TIA portal.
    4. robot start mode: Run
    5. cyclepower

    The way I typically handle it is to create a small sim pick program the does a Pick From with the [*] option as the index of where to pick from. When you set the index to *, the robot gripper will pick the part that is closest to the gripper you have defined to pick that part.

    I then call this sim pick program from a TP program that handles all the offset math and general path stuff.

    This was a huge help! made life easier. thanks nation

    Im trying to add a simulation to a program i already wrote on the virtual TP. How do I Create picking 150-450 parts easily. By not creating a sim programs? is there a way to call a part array? and activate the pick in the sim via a TP program?

    i really would hate to create a 150 partpick/simulation programs and call each one indivually. it has to be possible, Palletpro does it behind the scenes somehow.

    I guess I can say that I understand what the compiler is recommending the issue is. It conflicts with what I am trying to understand in the Karel manual.

    So help me help my understanding of this language. I'm new to it.

    1.with any "built in procedure" all in/out have to be populated? For example 'GET_TPE_PRM(x,x,x,x,x,x)'.....

    2.also depending on the Data type of the TP argument only one of the variables will be populated,even though all 3 are shown, int_value, Real_value, or str_value?


    Your program helped a lot thanks. im learning quickly just started karel yesterday.


    the manual program example didn't set any variables or anything and shows the built in procedure wrong. Guess I will just have to accept this and learn that the manual isn't entirely right.


    Youre right the handling manual does describe the Naming convetions for arguements prettty well. So i will have no problems in the future with that.

    Whats weird is the examples I use via the Karel program do not work. Having all kinds of issues just to pull a integer.

    My errors with logic im trying to use


    22 GET_TPE_PRM(1, data_type, int_value, status)

    ^ ERROR

    ROUTINE called has less arguments than ROUTINE definition. Routine: GET_TPE_PRM


    26 IF Data_type <> PARM_INTEGER THEN -- make sure parameter is an integer

    ^ ERROR

    Example in the manual. Which only shows half of what needs done. see attached. Is this a common thing in Karel? They only show you half the solution?

Advertising from our partners