ABB S4 + IRB2400 startup problem: Diag: Illegal instruction.

  • Hi,



    I have a ABB S4 + IRB2400M94A which will not start-up anymore after some years of no use. It gets an error: "Diag: Illegal Instruction, SR: 2014 PC: 0004C6A6". This happens during booting. What happens:


    - Power on


    - Boot screen will be shown: "Welcome to the S4 robot-controller"


    - Warning. 03:01501 Battery 1 low voltage


    - Warm start in progress.


    - Then after a few seconds only It gets an error in only text: "Diag: Illegal Instruction, SR: 2014 PC: 0004C6A6".



    I already tried searching on the internet but I cannot find anything regarding this error also not in the manual. Off course I also get an warning for the battery so I already ordered new batteries which I will getting a few days, but normally I would say a warning should not prevent that the robot will not start-up. Also a warm boot is performed so the memory is not empty. At least that is what I think.



    The red LEDs on all expansion cards are red, according the manual this happens when the controller is not initialized, I think because it did not start-up currently.



    Did somebody has got a similar problem? Or maybe an idea to solve it?



    Currently my approach would be: I replace the batteries, to be sure. If this does not solve it I would clear the memory by removing the batteries and try to do a cold boot. The problem there is only I do have some disks for this but if these are the rights ones and still working..., I am doubting at least. Therefore I would like to use this as a last solution.

  • Regarding the software - I would copy the disks to make sure they copy with no errors. Post what the labels say and someone should be able to tell if you have what you need. Hopefully one disk is a backup disk - you might need that to get the commutation numbers listed in the MOC.cfg file if someone changed motor or resolver and didn't update the label under the side cover.


    Batteries - During bootup, the controller checks the voltage of the batteries. This is a warning and does not effect booting. It is an indicator that battery voltage may have gotten low enough to effect the memory.

  • Thanks for the reply, I also do not think that by replacing the battery it will be solved, but I just have to be sure because when going for a cold boot definitely everything will be lost. Currently I am still waiting on the new batteries, so unfortunately no update. I did check the boot disks but unfortunately these are corrupt. What will be the best way to get these disks again?


    ABB S4, IRB 2400 M94

  • Can you post a picture of the "Diag: Illegal Instruction, SR: 2014 PC: 0004C6A6" error? Also make sure the controller-to-robot signal cable (serial measurement) is connected when booting. Also try booting with it disconnected. I vaguely remember something in the distant past about an SMB issue causing a robot not to finish booting but don't remember the details.


    You might try connecting to the serial port on the front of the Main CPU Board. Download the "PC as a Service Tool" manual from the manuals section >LINK<. It could give a clue on where and why it is stopping the warm boot at that error.


    Regarding the software, are all the disks corrupt? It's not uncommon to have a corrupt file on the floppy disks. As long as the "disc.id" file is intact, the others on the floppy can be replaced. The disc.id file on S4 software has an encrypted portion containing information that includes the serial # of the software. All of the software disks need to have the same serial # as part of the encryption or they will give a wrong disk message and will not load.

  • Hi,


    Thanks for your reply.


    Attached the photo of the teachpendant with the warning (batterij) and error (diag). First I get the warning then the error. I managed yesterday to have boot disk 1 working again, the other ones I do not have. ABB_MC file was corrupt and could be repaired by windows. The disc.id file still looks okay.


    Update: also disconnected to robot cables, but still the same error.

  • Hi,


    I have just replaced the battery now the warning is gone, but the error is still there. Also tried to connect with the com port but no output. Therefore removed both batteries and now the system is at least performing the test (it didnt do that) and is then performing a cold boot. Now it is asking for the disks (as expected).


    I inserted disk 1 which was okay and then asked for disk 2 which I did not have. Attached the disc.id file.


    Does somebody has the boot disks?

  • I think it is "Boot discette label text:Basic 2.0". I did found BaseWare 3.0 on the forum: boot disks for S4 will it be possible to use this one and therefore to upgrade?


    Br Rene


    Edit: just checked but this is not possible. Probably I have the BaseWare basic 2.0 version. Hopefully somebody still have these disks :smiling_face:

    Edited once, last by rib ().

  • As an FYI - the BaseWare 3.0 in the link has an IRB disk for an M96 IRB2400.


    You may have luck contacting ABB. They will need to know the following:

    Robot serial number and controller serial number

    Robot type (example: IRB2400 M94A)

    DSQC numbers of the Robot Computer Board, Main Computer Board & Extended Memory Board

    Part numbers of the (2) EPROMs located on the Robot Computer Board

    Application (example: arc welding, gluing, material handling, etc)

    What options it had (Advanced Functions is typical)

    If it has external axis

  • I did now manage to get the right Baseware version for an IRB1400 during setup you can then choose for the IRB2400. This is now completely installed, and the system now at least start up again. But now the following problem arises:


    - Battery of the robot itself is also empty.



    Therefore, commutation also has to be done again probably. The only disk which I had was a boot disk so also no MOC.cfg file but I did found the encoder values, but only two times. Any tips?

  • Think, one of the labels is commutation offset (motor to resolver), another one is calibration offset (axis zero position). It is written Komm and Sync(d?)...

    Makara is correct. The commutation & synchronization offset values need to be entered in the parameters as a new software load will have default values of 0. Go to Parameter Menu > Manipulator > Motor to enter the values for each axis motor and select Yes for Offset Valid. Restart the robot to load the parameter changes into operating system. You need to enter the commutation values and restart BEFRORE jogging the robot. The values you see are in radians.


    The M94A 2400, 3200 & 3400 were slightly modified versions of the earlier 2000 & 3000 designs where the resolvers are not built-in to the motors and require commutation be entered manually. New design for M96 2400 have motors with built-in resolvers that are preset to 1.5708 radians.

  • I can move the robot now :smiling_face:


    Only thing is that the motor of the first axis is making a strange noise it looks I sound a little bit as electricity flow or how you want to describe it. When not moving this is constant and when moving its pulsates with the speed of the movement.


    Can it be that for this axis maybe the commutator values are wrong? And therefore the motor is not

    Powered correctly?

  • Small update:

    Today I did the procedure to commutate the motor of first axis, see attached picture. I placed the motor in this posistion and then selected commute axis 1 in the service menu. Unfortunately this did not solve the strange noise.


    Edit: also now swapped the servo amplifier boards inside the s4 controller but still the same noise on the same axis.

  • It seems you are doing the right things.


    Press the axis 1 brake release button and move the robot. Does it feel smooth? Does it feel like the brake might be dragging? Does it "clunk" when changing direction?


    While in the jog window and in joint coordinates, pull in deadman and bump the joystick to release the brakes and apply voltage to motors. Does axis 1 position stay steady or do the numbers change as it holding position? Changing numbers with motor power applied can indicate a weak resolver or shielding issues.

    Edited once, last by Skooter: Added more text to better explain ().

  • I already tried something similar to check the brake, but your method is more efficient. I will perform your tests this evening.


    I also think to try to megger (isolation test) the coils of the motor. I am thinking if maybe the insulation of on of the coils is not okay anymore and therefore are leaking to the ground.

  • I did both tests:

    1) Pressed brake 1 axis and turned manually: i could turn the motor nice and smoothly.

    2) While in jog window watched the amount of degree of each axis: nice and steady.
    3) Previously I already interchanged the motor boards.

    4) Also checked the resistance of the motor by uncoupling the big harting multiconnector from the control cabinet. Between all phases was almost the same resistance.

    P.s. the check with the megger I did not do yet because the motor connector is difficult to reach.


    So from my perspective:

    It's not the brake (test 1), not the encoder (test 2), not the electronics (test 3, or it should be the backplane). So remains for me: cabling (most of it tested with test 4, but not all) or the servo (altough the resistance looks okay in test 4).


    Some other ideas?

  • The motor phase-to-phase resistance should be exactly the same. I have a 40 ohm scale on my DMM that gives me .01 readings which works good for robot size motors. Hardest part is to get consistent connection for the meter leads. A pair of minigrabber-to-banana leads work for me.


    At the back of the amplifier, check the inside of the female pins on the XP1 connector that mates with the amplifier output pins. Seen these go bad on a few 6000/6400 robots with the same style amplifiers.


    If all else checks good, swapping axis 1 and 3 motors can verify motor as good or bad.

Advertising from our partners