1. Home
    1. Dashboard
    2. Search
  2. Forum
    1. Unresolved Threads
    2. Members
      1. Recent Activities
      2. Users Online
      3. Team Members
      4. Search Members
      5. Trophys
  3. Articles
  4. Blog
  5. Videos
  6. Jobs
  7. Shop
    1. Orders
  • Login or register
  • Search
Blog Articles
  • Everywhere
  • Articles
  • Pages
  • Forum
  • Blog Articles
  • Products
  • More Options
  1. Robotforum - Support and discussion community for industrial robots and cobots
  2. Blog

Blog Articles by Lemster68

  • RSS Feed
Programming ABB robots, Rapid programming
Random number generator, kind of
Updated to Rev 1, 6-24-20. Added boolean tracking array to use every number only one time and a counter to reset.

So yesterday on another forum someone had asked about a function to generate random numbers from 1-100. I wanted to take up the challenge. It is really a pseudo random generator, grabbing the current system time, using the minutes and seconds to pick numbers from a multidimensional array. If you call it only from time to time or have a larger interval between using it, I expect that it should appear to be perfectly random. So here it is:

(Code, 120 lines)

I hope that you like it and maybe have a use for it. Have a great day!


Read More

Lemster68
May 29, 2020 at 9:38 PM
Thumbs Up 1
0
Programming ABB robots, Rapid programming
Rapid 201: Set yourself ahead of the crowd.
How to call by variable, and how not to.

Here a programmer hard coded the routine name to a string to be used in a Call by variable. It pretty much defeats the purpose of using a Call by Variable and creates extra steps as well. There are two ways to use a call by variable: 1. %MyRoutine%; where the string between the percent signs is the name of the routine to run. 2. CallByVar "MainTyp", nProg; The number value is automatically converted to a string and concatenated onto the string name of the routine.



!**************** STRING ****************

!

! "stMainTyp1" Call for main routine, for engine type 1 (DO NOT EDIT).

CONST string stMainTyp1:="MainTyp1";

! "stMainTyp2" Call for main routine, for engine type 2 (DO NOT EDIT).

CONST string stMainTyp2:="MainTyp2";

! "stMainTyp3" Call for main routine, for engine type 3 (DO NOT EDIT).

CONST string stMainTyp3:="MainTyp3";

! "stMainTyp4" Call for main routine, for engine type 4 (DO NOT EDIT).

CONST string …


Read More

Lemster68
March 9, 2020 at 6:20 PM
Like 1
1
Programming ABB robots, Rapid programming
Wait timers and why I don't like them
I have been to many installs, some have standard programs which must be used, others do not. I was struck by this one standard years ago at a tier1 frame supplier.

(Code, 57 lines)


Read More

Lemster68
January 14, 2020 at 7:35 PM
Like 1
4
Programming ABB robots, Rapid programming
Another program that writes a program.
This module shows more file handling, both reading and writing. There is also quite a bit of array usage. I have already shared it on a github repo, but I feel that it follows well from the previous article. It reads Motoman files and converts the infromation into usable ABB Rapid code, creating loadable modules for the ABB. I hope that you all can find it useful, especially if you get the chance to use it and give some bug reports or feedback. Otherwise, take away some more knowledge.

(Code, 210 lines)


Read More

Lemster68
January 2, 2020 at 6:49 PM
Like 2
4
Programming ABB robots, Rapid programming
A program that can write a program!
This program writes system parameter files which can then be loaded. Also, it writes a loadable rapid program module. I wasn't sure when I set out to do this if it would even work. It does! I had to cut out some stuff to make it fit this article. But the gist of it is there. Can you tell I like programming ABB robots? Real programming, stuff that maybe no one has ever tried to do before or thought of before. New and interesting challenges keep things from getting boring. The purpose of doing this is explained in the comments below in the program.

(Code, 783 lines)


Read More

Lemster68
November 5, 2019 at 4:01 PM
Like 3
0
Programming ABB robots, Rapid programming
Picking part 2, from a tray of parts.
Here is the next article on picking parts with robtarget arrays, taught by one position then calculating the rest of the array. In this one, since it is a flat tray, I had to set the "Z" value the same. The improved part is writing the orient and axis configuration also. I hope you find it informative and useful. I think I got the code formatted better this time. I will have to revisit the first article to see if I can fix it.

(Code, 417 lines)


Read More

Lemster68
November 4, 2019 at 3:41 PM
Like 3
0
Programming ABB robots, Rapid programming
Picking from a cart of parts
Some years past I was working at an integrator that was building two, entirely separate, but more or less identical truck building lines. The area in which I was working, there was a robot which needed to pick parts from a cart which held the same parts, in rows and layers. Someone brought me the program that had been written in the other assembly line. They told me that we should use that program so that the lines were the same. I looked at that code and just could not bring myself to use it. This is that program:

MODULE pPickPart

!******************************* ROBOT INFORMATION ****************************

! ROBOT = R16

! PLANT = DS Warren Truck

! LINE = Underbody

! STATION = S14

!******************************************************************************

!***********************************NumData************************************

!Pick Locations

PERS num PickX := 0 ;

PERS num PickZ := 0;

!Distance Between one row To the next

CONST num zToPart := 96;

!Distance…


Read More

Lemster68
November 1, 2019 at 5:14 PM
Like 2
0

Advertising from our partners

IRBCAM
Robotics Channel
Robotics Training
Advertise in robotics
Advertise in Robotics
Advertise in Robotics

Categories

  1. Personal Blog 0
  2. Industrial robotics 7
  3. General Industrial Robotics 2
  4. General Cobots 0

Tag Cloud

  • abb
  • ABB robot
  • picking parts
  • Programming
  • Programming ABB robot
  • Programming Rapid
  • RAPID
  • Rapid code
  • Rapid programming
  • WaitTime
  1. Privacy Policy
  2. Legal Notice
Powered by WoltLab Suite™
As a registered Member:
* You will see no Google advertising
* You can translate posts into your local language
* You can ask questions or help the community with your knowledge
* You can thank the authors for their help
* You can receive notifications of replies or new topics on request
* We do not sell your data - we promise

JOIN OUR GREAT ROBOTICS COMMUNITY.
Don’t have an account yet? Register yourself now and be a part of our community!
Register Yourself Lost Password
Robotforum - Support and discussion community for industrial robots and cobots in the WSC-Connect App on Google Play
Robotforum - Support and discussion community for industrial robots and cobots in the WSC-Connect App on the App Store
Download