GIGAVAC CANBUS User Instructions

GIGAVAC CANBUS User Instructions
 GIGAVAC Contactors J1939 Protocol Documentation Revision: 5 To use firmware version 2 and later until further notice. Product Models: GXCAN15, GXCAN16, MXCAN15 & MXCAN16. It is assumed that the reader is familiar with J1939 protocol and hardware requirements of the CAN‐BUS. For more information consult the SAE documents and CAN‐BUS specification in more details. Current firmware revision uses fixed baud‐rate at 250K/s. There are 4 types of messages to communicate with these products: Command, Settings, requests and report. Command is a messages send to the contactors for controlling its operation. Settings (configurations) is to change the unit’s operational characteristics. User can get data or settings back from the contactors by sending a request message. While in normal operation, the contactors send out report‐data regularly on the CAN‐bus with updated information, and this report‐repetition rate is changeable by the users. If report‐update‐rate is set to zero the report stops, but it will output a single report by a control command. Setting or configuration data will store in nonvolatile memory automatically after each received message. At first power‐up, the unit joins the CAN bus and tries to claim a J1939 address of 0xC8 on the network. If no other devices using the same address, it will keep it as the operational address. If other device has the same address with higher name, this unit will win the address, or other devices has the same address with lower name, this unit will lose the address of 0xC8 and change to 0xFE. After losing the address, it will not transmit or receive messages as normal until someone changes its address without overlapping other device’s addresses. Proper Configuration before Deployment: These contactors need to be practically configured before connected to the J1939 network. In order to save time and avoid unnecessary troubleshooting, a details configuration is preferred: ‐
‐
‐
‐
‐
J1939 address: This is the most important. The address has to be unique on the network. Incase address conflict, you can change it while connected to the BUS, but it is much easier to have an address for itself at first. Trip points: These are over current protection points. You can have the current‐levels of your choice up to 3 points. If you need only one point of over‐current protection, set the other points to be highest level which is the unit’s maximum current. Caution: if you set trip‐point to 0 Amp, it will trip all the time at no current as soon as the contact is closed. Trip‐delay: The time to delay in seconds before the contactor trips. If you don’t need delay, change it to 0. Low‐voltage protection shutoff: make sure this setting is at the realistic level below the power supply. J1939 name: be sure to have no name conflict and no address conflict. ‐
There are more settings depend on your needs in the following messages. Commands Controls of Contactor: This command is the combination of the following controls: Contactor on/off (A): This command is to turn‐on or turn‐off the contactor. ‘C’ (x43) is for close or turn‐on and ‘O’ (0x4F) is for open or turn‐off. Incase over‐current trip or under voltage shutoff, use this control to send a contact‐off command after all trips had been cleared to reset protection condition in order for the contact to be able to close again. One time report (B): If data report‐repetition rate is zero, set this value ‘R’ (0x52) will force the contactor to send out only 1 report. If repetition rate is nonzero, this command has no effect. Power‐up Contactor State (C): When first power‐up, the contactor state can be closed or opened depends on this value. Set this value to ‘C’ (x43) to close or turn on and ‘O’ (0x4F) to open or turn off. Power up state is also belong to setting and the state will save to EEPROM for use in the next power‐up condition. Note: if you need to set only 1 value on this command, use meaningful value for the command that you want to set and use meaningless value to the others commands that you don’t need to set. Example: meaningful value for contactor on/off is ‘C’ or ‘O’, but anything else is meaningless. Control data: Byte 7 Not used Byte 6 Byte 5 Byte 4 C ‘C’ / ’O’ Byte 3 B ‘R’ Byte 2 A ‘C’ / ’O’ Byte 1 Byte0 ID bytes ‘G’ ‘V’ Send J1939 control message: [priority: 6], [PDU format: 18110], [destination: this unit’s address], [source address: user unit’s address]. 5 bytes data length, see above definitions. Example: send a command to only turn on the contactor byte1 & byte0 = “GV”, byte2 = ‘C’, byte3 = 0 and byte4 = 0. Setting (Configuration): Trip‐Points & Low‐Volts‐Shutoff: There ere are 3 trip‐points to protect over current condition. If the current goes through the contact is greater than any of these settings, the contactor will trip. Trip‐point‐1 should be set to lowest value and trip‐point‐3 should be the highest. Trip point 1 default to 200A (170 counts) for factory testing and the others defaults are in the maximum values (600A, 512 counts). If you are using 350A contactors, it is better to set trip‐points max to (350A, 298 counts); this will provide protection for the maximum rating of the contactor. Low‐voltage‐shutoff is when power supply voltage drops to <= the low‐volts setting, contactor will turn off. Low‐volts shutoff default is in the lowest value (0). When a contactor was opened by trip or by shutoff protection, it will not accept contact‐close command until a contact open‐command is received to reset the protection condition and also make sure no trip and no LV‐shutoff conditions exist in order for it to close again. Trip point & low volts shutoff data: Byte 7 Byte 6 Unused Shared Free byte 4x2 bits Byte 5 LV‐Off 8+2 bits Byte 4 Trip 3 8+2 bits Byte 3 Trip 2 8+2 bits Byte 2 Trip 1 8+2 bits Byte 1 Byte0 ID bytes ‘G’ ‘V’ Byte 6 share‐bits: Bit 7 Bit 6 2 bits MSB: LV‐Off Bit 5 Bit 4 2 bits MSB: Trip‐3 Bit 3 Bit 2 2 bits MSB: Trip‐2 Bit 1 Bit 0 2 bits MSB: Trip‐1 Trip‐point calculation: the equation of trip‐point setting is count‐per‐Amp = 512 counts/600. Trip‐point example: To set a trip‐point for 200A, the value to enter using the equation above will be: (512/600) * 200 = 170 counts. Low‐volts shutoff calculation: Shutoff counts = shutoff voltage * (4.02/28.02) * (1024/5) Low‐volts shutoff example: To set shutoff‐Voltage for 18.6V. The number to set is = 18.6 * (4.02/28.02) * (1024/5) = 546 counts. Trip‐points & LV shutoff J1939 message: [priority: 6], [PDU format: 18010], [destination: this unit’s address], [source address: user unit’s address]. 7 bytes data length, see above definitions. Note: This unit’s default address is 0xC8. If you change the address, you need to use the new address that you had changed. You can get this unit’s name & address by sending a “request for address claimed” message. In case you forget what address you changed to the unit, just use address 0xFF for sending “request for address claimed”. Using 0xFF the global address will get reposes from all devices on the BUS. J1939 message example for trip‐points & LV‐shutoff: User’s address is 12510 and this unit’s address is 20010, using a 600A contactor, Set trip‐point1 to 120A, trip‐point2 to 350A, trip‐point3 to 450A and set low‐voltage shutoff to 20.5V. See command and data below: The CAN extended address becomes J1939P GN: Byte 3 Priority & data page 0x18 Byte 2 PDU format 18010 Byte 1 Destination 20010 Byte0 User‐source address 12510 CAN data byte is the same as J1939 data: The 6th byte shares 2 most significant bits of each data. Trip‐point1=120A (0x66 counts), trip‐
point2=350A (0x12A counts) and trip‐point3=450A (0x180 counts). Low‐volts shutoff=20.5V (0x25A counts). Shared byte=0x94. Byte 7 unused Don’t care Byte 6 Shared 0x94 Byte 5 LV‐Off 0x5A Byte 4 Trip 3 0x80 Byte 3 Trip 2 0x2A Byte 2 Trip 1 0x66 Byte 1 Byte0 ID bytes ‘G’ ‘V’ Delays & Report‐Repetition‐Rate: When over current or LV‐shutoff condition occurs; time to delay before contact opens. Delay unit is 1 second per count. There are 3 trip‐
points‐delays and one low‐volts‐shutoff‐delay. All delays default to zero. The report‐repetition (RP rate) is the interval of the regular message that the contactor sends out to report operational status (see report massage). R‐P rate default is 800ms, and it is changeable in 100ms per count. Delay & repetition data: Byte 7 not used Byte 6 RP‐rate 8‐bits Byte 5 LV Delay 8‐bits Byte 4 Delay 3 8‐bits Byte 3 Delay 2 8‐bits Byte 2 Delay 1 8‐bits Byte 1 Byte0 ID bytes ‘G’ ‘V’ Delays range is from 0 to 255 (each count = 1 second of delay), no need to translate the value. The same range for repetition rate, it is also from 0 to 255, each count is = 100ms. Delay & RP‐rate, J1939 message: [priority: 6], [PDU format: 17810], [destination: this unit’s address], [source address: user unit’s address]. 7 bytes data length, see above definitions. Change Name: The lower 4 bytes [3:0] name of this device is defined by manufacture and cannot be changed. For flexible use on many different industries, the upper 4 bytes [7:4] can be changed by users using the following J1939 data format: Bit 8 (should be 0) Byte 7 Bite 6, 5, 4 Arbitrary Address Cap.
IND Group
Bit 3, 2, 1, 0 VE‐Sys Instance Byte 6 Bit 7, 6, 5, 4, 3, 2, 1 Bit 0 Vehicle System
Don’t care Byte 5 Functions Byte 4 Bits 2, 1, 0 Bits 7, 6, 5, 4, 3 ECU Instance
Function Instance
Because bytes [3:0] are not changeable, use “GVAC” for identification. Byte 3 Byte 2 Byte 1 Identification Bytes ‘V’ ‘A’ ‘G’ Byte0 ‘C’ Send J1939 change‐name message: [priority: 6], [PDU format: 17710], [destination: this unit’s address], [source address: user unit’s address]. 8 bytes data length, see above definitions. Change Address: These models of contactors are not arbitrary address capable, but the address of these units will change with this command. This command uses more than 8 bytes of data. Therefore, it must use Multi‐Packet Broadcast message. This command requires the use of contactor’s device name; send “request for address claimed” message to retrieve this unit’s device name. 8 Bytes data 1: Broadcast Announce Message (BAM) indicates 9 bytes and 2 packages. Byte 7 0 Byte 6 0xFE Byte 5 0xD8 Byte 4 0xFF Byte 3 2 Byte 2 0 Byte 1 9 Byte0 3210 Send J1939 change address message 1: [priority: 7], [PDU format: 23610], [destination: 25510], [source address: user unit’s address]. 8 bytes data length, see above definitions. 8 Bytes data 2: CA Name of this unit (7 bytes) and package number 1. Byte 7 to byte 1 Use byte 6 to byte 0 from the name of this unit. Name[6‐0] Byte 0 1 Send J1939 change address message 2: [priority: 7], [PDU format: 23510], [destination: 25510], [source address: user unit’s address]. 8 bytes data length, see above definitions. 8 Bytes data 3: The unused bytes filled with 0xFF, new address, 1 byte name [7], package number 2. Byte 7 0xFF Byte 6 0xFF Byte 5 0xFF Byte 4 0xFF Byte 3 Byte 2 0xFF New Address (0‐253) Byte 1 Name[7] Byte0 2 Send J1939 change address message 3: [priority: 7], [PDU format: 23510], [destination: 25510], [source address: user unit’s address]. Data 8 bytes see above definitions. Change Report Message PS (PGN): The report message regularly sent out on the J1939 network by this unit using fixed PDU format (PF) value (25510) and default PDU specific (PS) value (25510). The user can change the PDU specific ranging from 0 to 255 by this command. Byte 7 Byte 6 Byte 5 Byte 4 Don’t care PF New PS 0xFF 0xFF 0xFF (fixed) range (0‐255) Byte 3 ‘G’ Byte 2 Byte 1 Identification Bytes ‘V’ ‘A’ Byte0 ‘C’ Send J1939 change report PGN message: [priority: 6], [PDU format: 17910], [destination: this unit’s address], [source address: user unit’s address]. 8 bytes data length, see above definitions. Request: Request for Address Claimed: Send a request to get back the address and name of this unit. When this message is received, it will report back its J1939 address and its name to the users for communication purposes. If you don’t know this unit’s address use 0xFF a global address. Remember, use global address will cause all devices on the network to respond. Request for address claimed format: Byte 7 Byte 6 Byte 5 Byte 4 Not used Byte 3 Byte 2 0x00 Byte 1 0xEE Byte0 0x00 Send J1939 request for address claimed message: [priority: 6], [PDU format: 23410], [destination: this unit’s address], [source address: user unit’s address]. 3 bytes data length, see above definitions. Return if address successfully claimed: It returns this unit’s address embedded in the CAN extended ID and the 8 bytes data contains the name of this unit. Return if address cannot claim: It will return the NULL address (254) in the CAN extended ID bytes and the 8 bytes data with the name of this unit. Return address data format: Byte 7 Byte 6 Byte 5 Byte 4 Byte 3 Byte 2 Byte 1 Name[7] Name[6] Name[5] Name[4] Name[3] Name[2] Name[1]  The 21 bits of the lower bytes name also the serial number of this unit. Byte0 Name[0] Return J1939 address claimed message: [priority: 6], [PDU format: 23810], [destination: 255], [source address: return‐ADDR (claimed address or 0x254)]. 8 bytes data length, see above definitions. Request Contactor Parameters: Send this message is for getting back the settings and configurations of this unit. The return data include: trip‐points, shutoff‐low‐volts, delays, repetition‐rate, power‐up contactor‐state and 24bits contactor‐on/off cycle‐log (3 bytes: byte 2 to byte 0). After the “request contactor parameters” message is received, it will send back the report using multi‐packet broadcast message transport protocol. Request contactor parameters J1939 format: Byte 7 Byte 6 Byte 5 Byte 4 Not used Byte 3 Byte 2 0x00 Byte 1 0xEA Byte0 0x00 Send J1939 message request parameters: [priority: 6], [PDU format: 23410], [destination: this unit’s address], [source address: user unit’s address]. 3 bytes data length, see above definitions. Request contactor parameters return: The first 8 bytes contain J1939 PGN. The second 8 bytes signal the multi‐packet number 1. The third 8 bytes also the final 8 bytes has packet number 2. Return first 8 bytes: Broadcast announce message (BAM) shows 2 packages, 14 bytes, byte4 reserved value (0xFF) and PGN 65240 (0x00FED8). Byte 7 0x00 Byte 6 0xFE Byte 5 0xD8 Byte 4 0xFF Byte 3 2 Byte 2 0 Byte 1 1410 Byte0 3210 Return J1939 first message: [priority: 7], [PDU format: 23610], [destination: user’s ADDR], [source address: user unit’s address]. 8 bytes data length, see above definitions. Return second 8 bytes: Contactor on/off cycle‐log byte0, contactor power‐up default, shared bits, shutoff volts, trip‐points and package number 1 indicator. Byte 7 Cycle Byte 0 Byte 6 C_PW‐St C/O Byte 5 shared 4x2 bits Byte 4 LV‐Off 8+2 bits Byte 3 Trip 3 8+2 bits Byte 2 Trip 2 8+2 bits Byte 1 Trip 1 8+2 bits Byte0 Package# 1 Definition of byte‐5 second package: Bit 7 Bit 6 2 bits MSB: LV‐Off Bit 5 Bit 4 2 bits MSB: Trip‐3 Bit 3 Bit 2 2 bits MSB: Trip‐2 Bit 1 Bit 0 2 bits MSB: Trip‐1 Return J1939 second message: [priority: 7], [PDU format: 23510], [destination: user’s ADDR], [source address: user unit’s address]. 8 bytes data length, see above definitions. Return Third 8 bytes: Contactor on/off cycle‐logs bytes 2 & 1, repetition‐rate, delays and package number 2 indicator. Byte 7 Cycle Byte 2 Byte 6 Cycle Byte 1 Byte 5 RP‐rate 8 bits Byte 4 LV‐Delay 8 bits Byte 3 Delay 3 8‐bits Byte 2 Delay 2 8‐bits Byte 1 Delay 1 8‐bits Byte0 Package# 2 Return J1939 third message: [priority: 7], [PDU format: 23510], [destination: user’s ADDR], [source address: user unit’s address]. 8 bytes data length, see above definitions. Request Firmware Version, Report PS & A1‐A2 Volts: Send this request will return this unit’s firmware version and the PS (PGN) of report message that regularly send out on the BUS. Also the non‐isolated contact‐voltage‐sensing at the bus‐bar terminals labeled A1 and A2 on the contactor. If this unit has no contact‐voltage sensing option, the A1 and A2 values will be irrelevant. Request firmware, PS (PGN), A1, A2 Volts format: Byte 7 Byte 6 Byte 5 Byte 4 Not used Byte 3 Byte 2 0x00 Byte 1 0xFE Byte0 0xDA Send request firmware RP rate A1, A2 Volts J1939 message: [priority: 6], [PDU format: 23410], [destination: this unit’s address], [source address: user unit’s address]. 3 bytes data length, see above definitions. Return of request firmware PS (PGN) & A1 A2: 8 bytes data combination of firmware version, report PS (PGN) and A1 A2. Byte 7 Shared bits See below Byte 6 Byte 5 A2 Volts A1 Volts 8+2 bits 8+2 bits Byte 4 Byte 3 Report PS FW Minor PGN # Alphabet Byte 2 FW Major Numeric Byte 1 Byte 0 ID bytes ‘G’ ‘V’ Byte 7 shared bits: Bit 7 Not used Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 2bits MSB: A2_V Bit 1 Bit 0 2bits MSB: A1_V Return J1939 Firmware, RP rate, A1‐A2 Volts message: [priority: 6], [PDU format: 25410], [destination: 21810], [source address: this unit’s address]. 7 bytes data length, see above definitions. Byte 5 & 6 (A1 & A2) Volts: A1 & A2 voltages are 10 bit unsigned integer. A1 or A2 Volts = (5/1024) * Reading ADC counts * (32.74/2.74). A1 & A2 Volts example: Reading ADC value of 0x1EA = (5/1024) * 0x1EA * (32.74/2.74) = 28.59V. Request Product Model BAR Code Data: Send this request to the unit will return the product model and date code total of 64 bytes. This type of data is mainly for factory production, troubleshooting and record keeping purposes. Request Product Model & Date‐code J1939 format: Byte 7 Byte 6 Byte 5 Byte 4 Not used Byte 3 Byte 2 0x00 Byte 1 0xFE Byte0 0xEB Send J1939 message BAR code request: [priority: 6], [PDU format: 23410], [destination: this unit’s address], [source address: user unit’s address]. 3 bytes data length, see above definitions. Request Product Model & Date‐code return: Using Multi‐Packet Broadcast message transport protocol. Return first 8 bytes: Broadcast announce message (BAM) shows 10 packages, 64 bytes, byte4 is reserved value (0xFF) and PGN 65240 (0x00FED8). Byte 7 0x00 Byte 6 0xFE Byte 5 0xD8 Byte 4 0xFF Byte 3 0x0A Byte 2 0 Byte 1 6410 Byte0 3210 Return J1939 first message: [priority: 7], [PDU format: 23610], [destination: user’s ADDR], [source address: user unit’s address]. 8 bytes data length, see above definitions. Return second 8 bytes: 7 bytes bar‐code data from array index 0 to index 6 and package number 1. Byte 7 D6 Byte 6 D5 Byte 5 D4 Byte 4 D3 Byte 3 D2 Byte 2 D1 Byte 1 D0 Byte0 1 Return J1939 second message: [priority: 7], [PDU format: 23510], [destination: user’s ADDR], [source address: user unit’s address]. 8 bytes data length, see above definitions. Return third 8 bytes: 7 bytes bar‐code data from array index 7 to index 13 and package number 2. Byte 7 D13 Byte 6 D12 Byte 5 D11 Byte 4 D10 Byte 3 D9 Byte 2 D7 Byte 1 D7 Byte0 2 Return J1939 third message: [priority: 7], [PDU format: 23510], [destination: user’s ADDR], [source address: user unit’s address]. 8 bytes data length, see above definitions. Continue package number 3 ….to the end of package 10. Report: Contactor Data Report: The unit sends out reports regularly on the J1939 BUS every 800ms (default), repetition rate can be changed by users with the “Delays & Report‐Repetition‐
Rate” command. These report data types have only temperature is signed integer. The rests are unsigned integers. Report will have the following data: Current: the total current going through the contact. Temperature: the temperature inside the contactor in degree C. Power‐supply‐V: Voltage of the power supply. Status: Under‐Voltage Protection set UVP bit, and over current set TRIP bit. State‐bit set if contactor closed; if contact opened the state‐bit is cleared. Countdown (Timer to trip): time in seconds to open the contact. Note: there are 3 trip points and 1 under‐volts, a total of 4 different trip‐times. Time to trip countdown is the 1 shortest time to trip from the 4 trip‐times above. Report data output format: Byte 7 Byte 6 Byte 5 Trip time 10 bits Status Count down (sec) UVP/Trip/St Byte 4 Byte 3 Shared bits Power‐Supply‐V Below 8+2 bits Byte 2 Byte 1 Temperature Signed 16 bits Byte0 Current 8+2 bits Byte 4 definition: 2 bits MSB of Power supply & current data. Bit 7 Bit 6 Bit 5 not used Bit 4 Bit 3 Bit 2 2 bits MSB: PS‐V Bit 1 Bit 0 2 bits MSB: Current Byte 5 status definition: If power supply is <= low‐volts‐shutoff, the under‐voltage‐protection (UVP) will open the contact; bit 5 will set. The trip state is over current protection trip (TRIP). The contact‐state is the contactor opened or closed (State). Bit 7 Bit 6 unused Bit 5 UVP Bit 4 Unused Bit 3 TRIP Bit 2 Bit 1 unused Bit 0 Contact State Byte 6 & byte 7: Count down to trip: when over current or under voltage condition happens, the number of seconds to count‐down before the contactor trips, also called delay to trip. The time to trip is changeable on the delay command. When there is no over‐current or under‐voltage, this countdown value is 0xFFFE. Report J1939 message: [priority: 6], [PDU format: 25510], [destination: PS], [source address: this unit’s address]. 8 bytes data length, see above definitions. Note: PDU format is always 255, and destination address default is 255, and the destination address can be changed by sending “Change Report Message PS (PGN)” command. How to interpret the report values: Current: Current is 10 bit unsigned integer combines byte0 with 2 bits from byte 4. Current in Amp = reading of ADC counts * (600/512). Current example: Reading 220 counts = 220 * 1.17 = 258A Byte 1 & 2 Temperature: Temperature is 16 bit signed integer. Temperature value in °C = ((reading data – 3) / 128) Temperature example 1: reading data 0x3E83 the temperature is = 125°C Temperature example 2: reading data 0xF383 the temperature is = ‐25°C Byte 3 Power Supply Voltage: Supply‐Voltage is 10 bits unsigned integer combines with 2 bits from byte4, the equation is: Supply Volts = (5/1024) * ADC counts * (28.02 / 4.02). Supply voltage example: If read‐back ADC counts = 0x198. You have supply voltage of (5/1024) * 0x198 * (28.02/4.02) = 13.89V. Appendix: J1939 format CAN J1939 Bits 29 bit ID PDU (Protocol Data Unit) P R DP PF PS 3 1 1 8 8 24 bit PGN (Parameter Group Number) (1st 6 bits are 0) Abr. Full Name PGN Parameter Group Number P Priority Description Priority of command. Data SA 8 Data 0‐64 R DP PF PS SA Reserved Data Page PDU Format PDU Specific Source Address Use 0. 1 reserved for future expansion. Command Address of recipient Address of sender Revision history: R1: Initial completion. R2: Correct typo and fine tune appearances. R3. Add under‐voltage and over‐voltage shutoff. R4. ‐
‐
‐
Data format apply to firmware version 2 or later. Add LV‐shutoff delay and change all delays range to 8‐bits. Add firmware version major and minor numbers. ‐
‐
‐
‐
Reorganized split command and setting into 2 groups. There are total of 4 messages types. Add baud‐rate info. R5: 
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertising