I am using IRC5, and was not aware of how to use tracklog (other than having the laptop connected to the AWC unit during the weld).
This is the code for one of the vertical sections. The workobject is defined with z positive being up (but the weld seem is not always exactly vertical so the midpoint and the top point are not exactly on the seam). The position values of ver1straight and ver1top are overwritten once the search for the start position is complete, only the orientation (and external axis, yes its an irb140 so i need to use external axis for a weld 190mm long argggg) is used.
LOCAL VAR robtarget ver1straight:=[[89.54,84.33,109.69],[0.251941,-0.670475,-0.308028,-0.626186],[1,-1,-1,5],[12600.7,9E+09,9E+09,1688.05,12600.7,1849.71]];
LOCAL VAR robtarget ver1top:=[[93.19,92.36,266.63],[0.251944,-0.670475,-0.308032,-0.626183],[1,-1,-1,5],[12600.7,9E+09,9E+09,1688.05,12600.7,1692.52]];
LOCAL VAR robtarget ver1start:=[[84.94,70.77,119.51],[0.191433,-0.770212,-0.343752,-0.501958],[1,0,-1,5],[12748,9E+09,9E+09,1562.09,12748,1682.68]];
LOCAL VAR robtarget ver1startweld:=[[68.44,82.91,199.59],[0.207696,-0.749445,-0.339514,-0.52908],[1,0,-1,5],[12577.5,9E+09,9E+09,1694.02,12577.5,1711.93]];
WeldSearch y, 50, 6, wobjdn600ps10, tWeldGun36;
WeldSearch x, 50, 6, wobjdn600ps10, tWeldGun36;
WeldSearch z,-100,2,wobjdn600ps10,tWeldGun36;
WaitUntilInPos, TRUE;
ver1startweld := Crobt();
ver1straight.trans := ver1startweld.trans;
ver1straight.trans.z := ver1straight.trans.z + 75;
ver1top.trans := ver1startweld.trans;
ver1top.trans.z := ver1top.trans.z + 190;
ArcLStart ver1startweld, v200, VER3F_1_1sm, VER3F_1_1wdWeave:=VER3F_1_1wv, fine, tWeldGun36WObj:=wobjdn600ps10Track:=VER3F_1_1tr;
ArcL ver1straight, v200, VER3F_1_1sm, VER3F_1_1wdWeave:=VER3F_1_1wv, fine, tWeldGun36WObj:=wobjdn600ps10Track:=VER3F_1_1tr;
ArcLEnd ver1top, v200, VER3F_1_1sm, VER3F_1_1wdWeave:=VER3F_1_1wv, fine, tWeldGun36WObj:=wobjdn600ps10Track:=VER3F_1_1tr;
Thanks for your help so far, I would appreciate any suggestions you have.