[General] DevType = CANopenDevice DeviceDll = CANopen DeviceCtrlDll = CANopen SyncMode=3 DataRate=20 MessageType=9 // formula TimeOut=5.0 NumberOfMessages=1 // Number of messages defined in this file [Msg(0)] MsgMode=0 // Input message ID=2B1 // Message ID also used to request the device IDStart=0 // start at IDLength=3 // Id lenght NewElement=1 // This message forwards the data block to the comps. NumDataEntries=2 NormData(0).Entry=1 NormData(0).Formula=CanValue(var0,2,0)/100; NormData(1).Entry=2 NormData(1).Formula=-CanValue(var0,2,2)/100; [Attribs] UserAttribs = 1 @tr.dev.ADFwebMultiFrame = 0x403, 1 // use multiframe mode. @tr.dev.SDEVOffset= 1,0.02 @tr.dev.SDEVRollPitch = 1,0.01 @tr.dev.SDEVHeading = 1,0.01 @tr.dev.SDEVVRULattency = 1,0.0 @tr.dev.SDEVFixHeave = 1,0.05 @tr.dev.SDEVDynHeave = 1,5 @tr.dev.SDEVRoll = 1,0.05 @tr.dev.SDEVPitch = 1,0.05 @tr.dev.TimeDelay = 1, 0.0 @tr.dev.DeviceOffset = 1, 1,1,Zero Offset,1,1,1,1,0.0,0.0,0.0 @tr.dev.HdgCor = 1, 0.0 @tr.dev.RollCor = 1, 0.0 @tr.dev.PitchCor = 1, 0.0 @tr.dev.HeaveCor = 17, 0.0 @tr.dev.HeaveDelay = 1, 0.0 @tr.dev.LinkCompsFromDevice = 19, 1 @tr.dev.GapCheckEnable = 1, 1 @tr.dev.MaxGapTime = 1, 1 @tr.dev.SDEParam=17,0 @tr.dev.OrderInfo = @L0,TimeDelay,DeviceOffset,HdgCor,RollCor,PitchCor,HeaveDelay,@L0,GapCheckEnable,@L1,MaxGapTime,@L0,SDEParam,@L1,SDEVOffset,SDEVRollPitch,SDEVHeading,SDEVFixHeave,SDEVDynHeave,SDEVRoll,SDEVPitch LinkComps = 1 NumComps = 1 Comp(1) = 1017 Name(1) = Attitude computation @tr.Comp(1).VruDataId = 3,1,1,5,1,0 @tr.Comp(1).HeaveFactor = 1, 1.0 @tr.Comp(1).InvertRoll = 1, 0 @tr.Comp(1).InvertPitch = 1, 0 @tr.Comp(1).AutoStaticComp = 1, 1 @tr.Comp(1).StaticRoll = 1, 0.0 @tr.Comp(1).StaticPitch = 1, 0.0 @tr.Comp(1).IntegrationPeriod = 1, 60.0 @tr.Comp(1).ButterworthFilter = 1, 0 @tr.Comp(1).Persentage = 1, 90 @tr.Comp(1).OrderInfo = @L0,VruDataId,HeaveFactor,InvertRoll,InvertPitch,AutoStaticComp,@L1,StaticRoll,StaticPitch,@L0,IntegrationPeriod,@L0,ButterworthFilter,@L1,Persentage [CanDeviceInit(0)] Name=Attutude NodeId=0x31 //sensor node ID CobId=0x2B1 //PDO object id WaitTime=500 //msec // init list is all hexicimal -- init for DIS QG65-MD-90H -- CanInitCmd(0)=NMT,80 //NMT pre-operational state CanInitCmd(1)=SDOtx,1800,01,C0,00,CobIdHi,CobIdLo //set PDO0 invalid + no RTR allowed + CobId CanInitCmd(2)=SDOtx,1800,02,FF //set PDO0 trans type to sync =01 to timer = ff CanInitCmd(3)=SDOtx,1800,05,00,32 //set PDO0 event time 100 mSec CanInitCmd(4)=SDOtx,1A00,00,02 //set PDO0 mapping 1 data values CanInitCmd(5)=SDOtx,1A00,01,64,01,01,10 //set PDO0 mapping index 6401, sub index 1, lentgh 16 bits CanInitCmd(6)=SDOtx,1A00,02,64,01,02,10 //set PDO0 mapping index 6401, sub index 2, lentgh 16 bits CanInitCmd(7)=SDOtx,1800,01,40,00,CobIdHi,CobIdLo //set PDO0 valid + no RTR allowed + CobId CanInitCmd(8)=SDOtx,1801,01,C0,00,01,81 //set PDO1 invalid + no RTR allowed + CobId CanInitCmd(9)=SDOtx,1010,02,73,61,76,65 //save communication parameter CanInitCmd(10)=NMT,01 //NMT operational state CanInitCmd(11)=SDOtx,300E,00,01,F4 //set Filter time to 500 mSec 250msec=00,FA, 500mSec = 01,F4 750 msec = 02,EE CanInitCmd(12)=SDOtx,2300,00,AA //save settings [CanDeviceSetNodeId(0)] // NodeiD is obtained from CanDeviceInit WaitTime=500 CanInitCmd(0)=OldId //set use OldId CanInitCmd(1)=SDOtx,3000,00,NewNodeId //set New Node Id CanInitCmd(2)=SDOtx,2300,00,AA //save settings