Examples of good RAPID programming

Dear RS Users,

I currently teach RAPID programming, and am on the look out for examples of RAPID code, representing good RAPID programming practice. Can anyone point me in the right direction.

Cheers,  Paul Baker

Paul A Baker


  • Paul.

    I just found out our robots have Rapid 9.8. I figured it was some

    programming code. We have just bought these robots from the used

    market. They didn't come with any ABB manuals. So we are kind of lost

    right now. We have about 20 Fanuc robots, and all of them have been

    programmed by someone other than us.

    These robots were welding robots and we will use them for material

    handlng. Remove rough cast steel casting from a conveyor and place into

    fixtures in cnc mills, then remove the milled castings from the fixtures

    and place onto another conveyor. We're thinking of a end effector that

    has two sides and holds two parts on each side.   

    So my question is can the RAPID programming be also used for material

    handling? I know Fanuc has different programming classes for their

    paint, welders, and material handling. But I haven't taken one so I don't

    know if the langauge is the same and the classes are more for the


    Lastly, do you know anyone in the states that teach ABB other than ABB,

    themselves. We have very little money for this project and are trying to

    safe some cost......

    Thank you for your time, Paul.

    Laura Phillips
    Have a Blessed Day,
  • Paul,

    Good programming is an art more than knowledge. I have a degree in computer science, and I can tell you that general rules apply even to RAPID code:
    - Make short routines
    - Use good names for variables
    - do not copy&paste code, make general routines instead
    - ecc.
    Anyway, the bigger difficulty for new programmers is understanding the robots, more than learning perfect programming art.
    In my experience, courses in robot programming have often one of the following problems:
    1) the course is too easy and nothing of important can be learned.
    2) the course is so difficult that nobody can understand anything.
    So, my suggestion is: talk to your students, and understand what you can really do for them.

    Answering your question, do you know the PPA.PRG program?
    It is the skelethon for PickMaster application. It contains a lot of intersting stuff for teaching, because in principle is a PICK&PLACE program, but it uses RAPID in all the possible ways: modules, exceptions, data-types, interrupts, ...

    Hope this will help

  • Laura,

    Sorry for the late reply, but my computer crashed and I am in the throws of bringing it back up to speed again. To answer your question:

    The RAPID language is a general one that can be used for picknplace applications etc. There are also special application specific packages such as arcwelding, spot welding and glueing that can be attached, giving added functionality were required. From your description, the standard RAPID language should be OK for what you want.

    I cant help you in suggesting a traing provider in the States. Living in Australia, I am not familiar with Robot training providers in that part of the world.  Hope all goes well with your installation.



    Paul A Baker
  • Claudio,

    Thankyou for your timely suggestions. I shall take them on board.

    No I have not seen the PPA.PRG program. I would be interested in looking at it. Is it available on the Web. If so, where can I find a copy?

    Thankyou for your interest.



    Paul A Baker
  • Hi Paul

    Erik S told me that PPA is free from copyright.
    Here attached the code.
    Interesting things are:
    - Multimodule programming
    - managing signals through Trigg instructions
    - trapping stop event in critical section of the program
    - trapping external events such as tuning parameters
    - advanced use of data types


    I hope this will help you, or anybody.

  • j_proulxj_proulx United States ✭✭

    Hello Paul,

    I am attaching an S4 Handbook of Methods. Hope this helps.


    Jim Proulx

  • Hi Claudio,

    Thankyou for the copy of ppa.prg. In the weeks to come, I shall have a good look at it. From both the students and myself, a BIG thankyou. You have been a big help.


    Paul B.

    Paul A Baker
  • Greetings Jim Proulx,

    Thankyou for the material. Yes, every little bit counts. It all helps to enrich the learning experience for the students.  Most of my stendents are already working with robots in industry, so I am always on the look out for generic examples of code that demonstrate a smarter way of doing things. Thankyou again Jim for your assistance.


    Paul Baker.

    Paul A Baker
  • Peter_ABBPeter_ABB China

    Hi Claudio,

    Thanks for the copy of ppa.prg . I learned from it.

  • Hello!

    I need a little help!
    How can i use the "MotSupOn" digital out signal @ with "WHILE" and "IF", when I'm programming the collision detection ?
    Pls help!

    -= biLBooster =-
  • j_proulxj_proulx United States ✭✭

    Hello,  You will be mapping the MotSupOn to a physical output (doMotSupOn). Just test the value of the output

                IF DOutput(doMotSupOn) = 1 THEN<?: prefix = o ns = "urn:schemas-microsoft-com:office:office" />



    BR  Jim Proulx

  • ArwinArwin Philippines

    Hello Sir,

    I am interested in the PPA.PRG however I cant download it, hope you can upload it again. Thanks

  • ArwinArwin Philippines

    Hello Sir,

    I am interested in the PPA.PRG however I cant download it, hope you can upload it again. Thanks

  • VictorAxVictorAx Sweden
    Arwin said:

    Hello Sir,

    I am interested in the PPA.PRG however I cant download it, hope you can upload it again. Thanks

    I believe these are the files you're looking for

Sign In or Register to comment.