Posts by Sean_MMSNI

    Thanks very much SkyeFire, this is very helpful. The problem detecting the tyre is there are that many different versions with different diameters and widths even for the one generic size of 17.5rim.


    Your idea with the scale under the wheel sound like it could be a good option, I think I will look into this and try this.

    Yeah I have been looking at the LoadID function in the manual, I think the robot has to be in a certain position with axis 5 and 6 nearly in the 0 degrees position and will take about 3 minutes to workout, my cycle time atm is just over one minute so this wouldn't be a viable option for me.


    if there is no way to do this I might have to continue to get the operator to select the wheel size.

    I have a robot here (IRB6400, s4c) that lifts different size truck wheels, small ones about 50kg up to large ones at 150kg. At the moment there are 3 main groups with similar weights, the 17.5 inch that are the small wheels, 19.5 inch wheels which are the medium wheels and the 22.5 which are the large. The wheels are fitted by a guy then loaded on a conveyor where the robot lifts the wheel and stacks it. they are done in stacks of 6 mostly. The guy fitting the tyres sets the wheel type on the controller every time he changes sizes.


    The problem is, they have that much going on they often forget to change the program on the controller and the robot crashes due to incorrect load data. I am trying to make the program so it will work for all size of wheels without any human intervention, I have everything else figured out except the load data. Is there anyway to get the robot to calculate its own load data or is there something I can change that will allow the robot to work within this range of weight without crashing due to load data?

    I have an ABB robot with s4c controller that stacks tyres directly on top of each other. At the moment the robot stacks the tyres 6 high. It stacks the first tyre on the ground on a recorded Move L position. It then lifts another tyre and moves to an offset position directly above the Move L position. It then moves straight down on the Z axis until a sensor mounted on the underside of the gripper detects the tyre below and triggers the robot to stop and pull out leaving the tyre stacked on top of the other. It does this for the remaining tyres on the stack by multiplying the tyre count by the tyre thickness. The tyre thickness offset by is entered into the teach pendant at the start.



    This works fine, my only problem is there is a lot of different thickness of tyres so the offset tyre width needs to be set for every different tyre. I have to do this as if I used the worst case thickest wheel offset, then when using a thinner tyre by the time the offset is multiplied by the 5th tyre the robot comes in way above the stack and takes a long time to reach the tyre below. This plus the fact the guys operating the robot forget to change the thickness a lot.



    My question is, can I bring the robot in above the first tyre at the thickest tyre offset and bring it down as normal until the sensor is triggered then record the position it was stopped at? I could then use the Z valve of the recorded position to work out the tyre thickness to use as the offset for the remaining tyres in the stack?



    If I could record the position at that point, I could minus the original move L position from this and the Z axis value would then be the tyre thickness.


    Is there a command I can use to get the robot to do this?

    I have a 14 meter track that I am trying to align, it has come out of alignment due to being incorrectly installed. I have been reading through the manual and it states to use a laser lever, however it doesn't give much information on what type of laser level to use. Any of the laser levels I have been looking at has a +/- 2mm tolerance which obviously isn't good enough.


    Does anyone know the best type of laser to use and what is the best method to use to level and straighten it?

    I contacted ABB direct and they got back saying it should be the 55mm one, the 54mm versions seems to have a different surface finish and they seem to have a slacker tolerance. My guess is either somebody tried to modify original ones to remove defects or else they are a badly made china remake.


    We have booked a cnc machine installer to come out and relevel the track again however he cant come for another 3 weeks. So I am trying to do what I can to improve it until he comes.

    We purchased a robot and track from a second hand robot supplier, the robot is an irb6400r s4c and the track seems to be an IRBT6004. The robot was made in the year 2002 however the track seems to be a newer version made in 2014. the track also seems be be made up from several different tracks as there are stickers on some sections saying IRBT6004 and then on others IRBT7004 and then on others IRBT4004. From what I can tell the sections of track seem to be the same no matter what sticker is on them.


    the difference I have found is in the rack itself that the pinion drives on. I have found two different types there is one type that measures 54mm from the base of the rack to the top of the teeth and there is another that is 55mm. This seems to be giving me issues with back lash and unwanted movement. I have attached a photo of both types below


    Does anyone know which is the correct size to be use? Iv laid the two on top of other with the teeth meshing and the pitch seems to to be the same for both types.

    I have an ABB IRB6400R on a 14m track, s4c. Recently I have been getting quite a lot of errors. The two most common errors are (50052 Joint speed error, The speed of joint TRACK is too high relative the ordered speed) and (38033 Transmission failure, Axis computer detected failure in transmission to/from serial measurement system 1).


    The errors come up randomly during a program and cause the robot to go into crash state. The track speed error comes up in programs where the track is stationary.


    Anybody any idea what is going on?

    I have an IRB6400R and I am pretty sure the brake release in axis one motor has gone faulty, so I want to change it. I have another robot here that is exactly the same and the part number on the motor matches up so I want to use it. I realise that will have to fine calibrate the motor.


    What I want to know is how hard is it to get the robot calibration spot on again. This robot is used as a CNC robot and has a cell constructed around it with programs already made. Will calibrating it throw it off and mean all will need repositioned?

    I have an ABB IRB6400R S4C on a 14m track that i am useing as a cnc robot. The software i use to produce the cnc programs for the robot outputs some very large programs upwards of 100,000 lines of code. My robot has a usb emulator installed on it and at the moment i have to split the programs down manually into smaller programs of around 8,000 lines as that is all the robot can handle.


    Between each program it takes between 10-15 mins to load each program which is very time consuming. Is there anything I can get for the robot that could perhaps increase memory so I can load bigger programs of is there any I can get to decrease loading times?

    I am using my ABB irb 6400r s4c as a CNC machining robot and i want to change the acceleration for different parts of the program. As My robot is on a track there are some unwanted oscillations occurring in certain machining operations. Currently i am using AccSet to change it in the main routine. iv read in the manual that this will only work in the main routine so i cant use it within a sub routine.


    Is there any other way to do what I want?

    I want to create a zone data of 2mm and 3mm however there is no presets for these in the robot controller, I Know you can create your own but I am unsure of how that needs to be formatted, Can anyone help me out?


    controller is s4c

    from what i can tell my orient is correct its just when i try to get the robot to move in the x direction when the tcp is not aligned with the z axis it does not move the correct distance. However when the tcp is aligned with the z axis it does move the correct distance.


    Iv checked my rev counters and they line up and checked the calibration offset and they match the sticker on the robot arm. as my software creates its own tcp data I will try do a re-orientate around one point useing that tcp to see if it drifts any.


    At this stage i think its a problem with my robot.

    Quaternions must be normalized, there is a function to do such. But, it is the sum of the square roots which should add up to 1, or very close. How far off do you mean when you say wrong position? A few millimeters or much more? It could also be the axis configurations that make it seem a bit off. You could try inverting some of them to see if it gets closer

    Some of the points are off about 40 or 50mm. However the orientation is correct just the actual position of tool tip is about 40mm/50mm away from where it should be. When I have my tool alinged vertical in my software the robot goes to the correct place just seems when i try to go to a point with any other orientation the robot goes to the wrong place.


    My first point is with the tool in the vertical orientation and it goes to correct place and my second point is about 30mm over in the x direction only with the tool at an angle and the tool just stays where it is but changes to the correct orientation. iv checked the code and it does tell the robot to move 30mm in the x direction but it doesnt do this. Thats why im starting to think it may be to do with the quaternions. or else maybe something else in the robot may be causing this?

    I have software that outputs rapid code that I program offline, Some of the lines of code it gives me sends the robot to he wrong position, some send it to the correct position I am trying to work out the cause of the problem so the software developers can fix the issue.


    In the lines of code that sends the robot to the wrong place, Q1, Q2, Q3 & Q4 add up to between 1.3 and 1.6. Would this cause the robot to go to the wrong position? As far as i am aware these should add up to 1


    In the lines of code that does work Q1, Q2, Q3 & Q4 add up to near enough 1 (eg 0.99998998)


    My robot is an ABB IRB6400R with s4c controller.

    I have a spindle attached to my ABB IRB 6400R S4c, I want to connect the e stop of the spindle and the robot together so that when I hit the e stop on the teach pendant it also e stops the spindle. Can this be done and if so how?