I am new to the CoDeSys programing and communicating with the J1939 Can Bus. Can someone help with the id format. Example to get Engine Coolant temp of the bus the ID = 16#18FEEE00. This works, but I was given this code with no explanation of how it was dervied. Can somene breakdown the code so I can add more code for different PGN numbers. Looking to add Charge Air Temp and Transmission Oil Temp.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I can help. The PGN stands for Parameter Group Number. When you look up the PGN in the J1939 standard it will tell you which SPN Suspect Parameter Number that are in the Group number and where they are located in the CAN frame. You then look up the SPN number in the J1939 standard and it will tell you the data type, units etc of the SPN. It is all defined in the J1939-71 "Surface Vehicle recommended practice".
What you were given is the 29 bit header 16#18FEEE00. It is broken down like this:
18 = some reserve bits and the Priority in this case the priority is 6.
FE = PDU format code (PF)
EE = PDU specific code (PS)
00 = Source Address in this case 00 is always the engine. Source address are defined in the J1939 standard as well
To decode the PGN = 16#FEEE = 65262 = Engine Temperature 1
the transmission rate of this can frame is every 1sec and has 8 data byte
The data is the following:
Byte1 = Engine Coolant temperature SPN 110
Byte2 = Engine Fuel temperature 1 SPN 174
Byte3-4 = Engine Oil temperature 1 SPN 175
Byte5-6 = Engine TurboCharger Oil temperature SPN 176
Byte7 = Engine Intercooler temperature SPN 52
Byte8 = Engine Intercooler thermostat opening SPN 1134
Let me know what you need and I can send you more info offline.
The transmission oil temperature is
PGN 65272 = Tramsmission Fluids 1
data rate = 1sec priority 6 data bytes 8
Byte1 = Clutch pressure SPN 123
Byte2 = Trans oil level SPN 124
Byte3 = Trans filter differential pressure SPN 126
Byte4 = trans Oil pressure SPN 127
Byte5-6 = trans Oil temperature SPN 177
Byte7 = trans oil level high / low SPN 3027
byte8.1 = trans oil level countdown timer SPN 3028
byte8.5 = trans oil level measurement status SPN 3026
One problem is if the engine is not connect to the transmission the data may be comming directly from an ECU on the J1939 from the transmission itself which means the address portion of the CAN frame will not be 00.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi,
I am completely new in CodeSys 2.3 and I am using PCI-card (Peak-system) with Codesys RTE as master node.I have an actuator motor canopen DSP402.But I dont understand how I start to configure canopen Node DSP 402 actuator in codeSys.I am already save EDS file in
C:\Program Files\Common Files\CAA-Targets\3S\PLCConf_NTRT
and now it is showing in PLC configuration under CANmaster-in append Subelemnt (EncoTrive(EDS)). But i cant understand how i go forward.I do not get that I have to configure first send PDO or Receive PDO or SDO.
I know I am in very initial stage of canopen configuration but unfortunate I am new .
Can you tell me how can I go step by step to configure DSP402 node?
Thanks,
Asif
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I am new to the CoDeSys programing and communicating with the J1939 Can Bus. Can someone help with the id format. Example to get Engine Coolant temp of the bus the ID = 16#18FEEE00. This works, but I was given this code with no explanation of how it was dervied. Can somene breakdown the code so I can add more code for different PGN numbers. Looking to add Charge Air Temp and Transmission Oil Temp.
I can help. The PGN stands for Parameter Group Number. When you look up the PGN in the J1939 standard it will tell you which SPN Suspect Parameter Number that are in the Group number and where they are located in the CAN frame. You then look up the SPN number in the J1939 standard and it will tell you the data type, units etc of the SPN. It is all defined in the J1939-71 "Surface Vehicle recommended practice".
What you were given is the 29 bit header 16#18FEEE00. It is broken down like this:
18 = some reserve bits and the Priority in this case the priority is 6.
FE = PDU format code (PF)
EE = PDU specific code (PS)
00 = Source Address in this case 00 is always the engine. Source address are defined in the J1939 standard as well
To decode the PGN = 16#FEEE = 65262 = Engine Temperature 1
the transmission rate of this can frame is every 1sec and has 8 data byte
The data is the following:
Byte1 = Engine Coolant temperature SPN 110
Byte2 = Engine Fuel temperature 1 SPN 174
Byte3-4 = Engine Oil temperature 1 SPN 175
Byte5-6 = Engine TurboCharger Oil temperature SPN 176
Byte7 = Engine Intercooler temperature SPN 52
Byte8 = Engine Intercooler thermostat opening SPN 1134
Let me know what you need and I can send you more info offline.
The transmission oil temperature is
PGN 65272 = Tramsmission Fluids 1
data rate = 1sec priority 6 data bytes 8
Byte1 = Clutch pressure SPN 123
Byte2 = Trans oil level SPN 124
Byte3 = Trans filter differential pressure SPN 126
Byte4 = trans Oil pressure SPN 127
Byte5-6 = trans Oil temperature SPN 177
Byte7 = trans oil level high / low SPN 3027
byte8.1 = trans oil level countdown timer SPN 3028
byte8.5 = trans oil level measurement status SPN 3026
One problem is if the engine is not connect to the transmission the data may be comming directly from an ECU on the J1939 from the transmission itself which means the address portion of the CAN frame will not be 00.
Hi,
I am completely new in CodeSys 2.3 and I am using PCI-card (Peak-system) with Codesys RTE as master node.I have an actuator motor canopen DSP402.But I dont understand how I start to configure canopen Node DSP 402 actuator in codeSys.I am already save EDS file in
C:\Program Files\Common Files\CAA-Targets\3S\PLCConf_NTRT
and now it is showing in PLC configuration under CANmaster-in append Subelemnt (EncoTrive(EDS)). But i cant understand how i go forward.I do not get that I have to configure first send PDO or Receive PDO or SDO.
I know I am in very initial stage of canopen configuration but unfortunate I am new .
Can you tell me how can I go step by step to configure DSP402 node?
Thanks,
Asif
Please place this in another thread this thread is for J1939 not CANopen / CoDeSys / DSP402. I can help if you send me a link in another thread.