A gateway device for relaying communication between a Controller Area Network, CAN, communication device and a Modbus communication device, the gateway device comprising: a CAN input unit for receiving a CAN input data frame from the CAN communication device; a Modbus input unit for receiving a Modbus input data frame from the Modbus communication device; a conversion unit for converting the received CAN input data frame into a Modbus output data frame and converting the received Modbus input data frame into a CAN output data frame; a Modbus output unit for outputting the converted Modbus output data frame; and a CAN output unit for outputting the converted CAN output data frame, wherein the CAN input data frame or the CAN output data frame comprises a CAN identifier, a data length code, and a plurality of CAN data units, the Modbus input data frame or the Modbus output data frame comprises an address, a function code, a plurality of Modbus data units and a Cyclic Redundancy Check code, and wherein the conversion unit is arranged to: generate the address of the Modbus output data frame on the basis of the CAN identifier in the CAN input data frame when the received CAN input data frame is converted into the Modbus output data frame, generate the plurality of Modbus data units of the Modbus output data frame on the basis of the plurality of CAN data units in the CAN input data frame, generate the function code of the Modbus output data frame to correspond to a transmission purpose of the CAN input data frame, generate the CRC code of the Modbus output data frame on the basis of the plurality of CAN data units in the CAN input data frame. a CAN input unit for receiving a CAN input data frame from the CAN communication device; a Modbus input unit for receiving a Modbus input data frame from the Modbus communication device; a conversion unit for converting the received CAN input data frame into a Modbus output data frame and converting the received Modbus input data frame into a CAN output data frame; a Modbus output unit for outputting the converted Modbus output data frame; and a CAN output unit for outputting the converted CAN output data frame, wherein the CAN input data frame or the CAN output data frame comprises a CAN identifier, a data length code, and a plurality of CAN data units, the Modbus input data frame or the Modbus output data frame comprises an address, a function code, a plurality of Modbus data units and a Cyclic Redundancy Check code, and wherein the conversion unit is arranged to: generate the address of the Modbus output data frame on the basis of the CAN identifier in the CAN input data frame when the received CAN input data frame is converted into the Modbus output data frame, generate the plurality of Modbus data units of the Modbus output data frame on the basis of the plurality of CAN data units in the CAN input data frame, generate the function code of the Modbus output data frame to correspond to a transmission purpose of the CAN input data frame, generate the CRC code of the Modbus output data frame on the basis of the plurality of CAN data units in the CAN input data frame. generate the address of the Modbus output data frame on the basis of the CAN identifier in the CAN input data frame when the received CAN input data frame is converted into the Modbus output data frame, generate the plurality of Modbus data units of the Modbus output data frame on the basis of the plurality of CAN data units in the CAN input data frame, generate the function code of the Modbus output data frame to correspond to a transmission purpose of the CAN input data frame, generate the CRC code of the Modbus output data frame on the basis of the plurality of CAN data units in the CAN input data frame.