/my-industrial-robotics-labs

My labs using the ABB IRB 140 6-axis industrial robot

Primary LanguageAMPLMIT LicenseMIT

My Industrial Robotics Labs

Here are the hands-on labs completed during the industrial robotics course of CEGEP de Victoriaville.

My background

At the moment of this writing, I'm a Software Technology Manager at Cogiscan with a strong background in software development, and computer engineering in general.

Labs

Labs #1, #4, and #5 were simulations using RobotStudio from ABB.

Labs #2, #3, #6, #7, #8, and final exam were developed using the IRB 140 6-axis industrial robot (external link).

Most labs were created from scratch, and had to be completed during a 3-hour window.

Lab Name Simulation ABB IRB 140 Media Learnings
1 stencil screenshot positioning instructions (MoveJ, MoveL, MoveC)
2 tracing picture FlexPendant usage, coordinate systems, jogging, singularity
3 weight calibration, fork tool, work objects
4 leapfrog screenshot offset instruction (Offs), procedures and functions
5 the wall screenshot gripper tool, FlexPendant display, Clock type
6 commissioning the IRC5 video system creation, I/O configuration, joints limitation
7 I/O DeviceNet, I/O usage in RAPID
8 zones and interrupts world zones, limits, interrupts
- final exam picture -

Coding convention

No official coding convention was enforced by the instructor. Programs had to be turned-in with French identifiers where possible, and usage of global variables was encouraged for simplicity purposes.

Programs of this repository were converted to English before publication. Some errors might have creeped in during the translation process.

The following sections list the personal convention that I adhered to for most of the labs.

Routines

Routine Identifier prefix Example
function f FUNC num fComputeSomething(...)
procedure p PROC pDoSomething(...)
trap t TRAP tSomethingHappened

Constants and variables

Constant / Variable RAPID types Identifier prefix Example
boolean bool b bool bDisassemble
interrupt identity intnum i intnum iButtonPressed
load loaddata load loaddata loadDice
number num n num nOffsetX
position robtarget, joint position, pos p robtarget pHome
shape shapedata z shapedata zBox
speed speeddata v speeddata vFast
timer clock c clock cClock
tool tooldata t tooldata tPencil
work object wobjdata wobj wobjdata wobjStencil
world zone wztemporary wz wztemporary wzSupplyArea