WO2022227883A1 - 一种远程控制方法及装置 - Google Patents

一种远程控制方法及装置 Download PDF

Info

Publication number
WO2022227883A1
WO2022227883A1 PCT/CN2022/080097 CN2022080097W WO2022227883A1 WO 2022227883 A1 WO2022227883 A1 WO 2022227883A1 CN 2022080097 W CN2022080097 W CN 2022080097W WO 2022227883 A1 WO2022227883 A1 WO 2022227883A1
Authority
WO
WIPO (PCT)
Prior art keywords
remote control
communication module
vehicle
wake
management server
Prior art date
Application number
PCT/CN2022/080097
Other languages
English (en)
French (fr)
Inventor
黄向荣
赵文伟
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Priority to EP22794362.8A priority Critical patent/EP4319080A1/en
Publication of WO2022227883A1 publication Critical patent/WO2022227883A1/zh
Priority to US18/492,157 priority patent/US20240048949A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • H04L67/125Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/12Messaging; Mailboxes; Announcements
    • H04W4/14Short messaging services, e.g. short message services [SMS] or unstructured supplementary service data [USSD]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/40Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]

Definitions

  • the present application relates to the technical field of Internet of Vehicles, and in particular, to a remote control method and device.
  • the user can control some behaviors of the components in the vehicle through the mobile phone. For example, in a hot summer or a cold winter, the user can activate the air conditioner in the car through the mobile phone before getting in the car, and then open the door and get in the car after the air conditioner adjusts the temperature in the car to a suitable level. For another example, when a user needs to use a car, the user can also call the vehicle through the mobile phone first, so that the vehicle can automatically drive to the current location of the user and then directly board the vehicle, instead of walking to the location of the vehicle to get on the vehicle. It can be seen that by enabling the vehicle to support the remote control function, the user's comfort and convenience in using the vehicle can be effectively improved.
  • the remote control process in the prior art is usually as follows: the user sends a remote control related command to the vehicle management server through a mobile phone, and after receiving the relevant command, the vehicle management server first sends a wake-up short message to the vehicle, and waits for the vehicle to return to wake up After a successful response, if a successful wake-up response is received, the remote control command is sent to the vehicle, and the control result returned by the vehicle is waited for, and the control result is returned to the user through the mobile phone.
  • this method it takes a long time for the user to know the control result after issuing the relevant command of the remote control, resulting in a long time delay of the remote control, which is not conducive to the user's experience. Based on this, how to reduce the time delay of remote control has become a technical problem that needs to be solved urgently.
  • the present application provides a remote control method and device for reducing the time delay of remote control.
  • the present application provides a remote control method, which is applied to a communication module in a vehicle.
  • the method includes: when the communication module is in a sleep state supporting a remote wake-up function, receiving a wake-up command and a remote control command, and according to the wake-up command to cause the communication module to enter an awake state and, in accordance with the remote control command, send a control message to a component within the vehicle to activate the component within the vehicle or instruct the component within the vehicle to perform an operation indicated by the remote control command.
  • the remote control command can be an internet protocol (IP) data packet
  • the wake-up command can be a short message or an IP data packet.
  • IP internet protocol
  • the wake-up command can be a short message or an IP data packet.
  • the wake-up command and the remote control command may be sent to the communication module in the same IP data packet, or may be sent to the communication module in two consecutive IP data packets.
  • the design can make the communication module receive the wake-up command and the remote control command at the same time as much as possible, which is helpful to realize the scheme that the communication module executes the remote control immediately after the wake-up.
  • the wake-up command and the remote control command can be sent by the vehicle management server to the communication module.
  • This design helps to realize the flexible management of the vehicle remote control by the vehicle management server and the centralized remote control of different vehicles. manage.
  • the wake-up command and the remote control command can be sent to the communication module by the user terminal logging in to the vehicle management server.
  • This design can save the forwarding delay introduced by forwarding commands through the vehicle management server and further reduce the remote control delay.
  • the communication module before the communication module receives the wake-up command and the remote control command, it can also log in to the vehicle management server to establish a connection with the vehicle management server, so that the vehicle management server can send the wake-up command and the remote control command through the connection. sent to the communication module.
  • the effective network address of the communication module may also be periodically sent to the vehicle management server.
  • the design enables the vehicle management server to obtain the latest network address of the vehicle management server as much as possible, and improves the success rate of sending a wake-up command or a remote control command.
  • the updated network address of the communication module may also be sent to the vehicle management server.
  • the design enables the vehicle management server to obtain the network address changed by the communication module in time, and improves the success rate of sending a wake-up command or a remote control command.
  • the communication module before the communication module receives the wake-up command and the remote control command, it can also periodically send a heartbeat data packet to the vehicle management server, where the heartbeat data packet is used to maintain a long connection between the vehicle management server and the communication module .
  • the design helps the vehicle management server to send wake-up commands and remote control commands to the communication module through a long connection, without re-establishing the connection, effectively saving network resources.
  • the heartbeat data packet may contain a valid network address or an updated network address of the communication module.
  • the operation of synchronizing the network address can be implemented together in the process of maintaining a long connection, and the operation of synchronizing the network address can be performed independently without wasting additional resources, which helps to save network resources.
  • an updated key can also be sent to the vehicle management server, and the updated key can be used for the subsequent communication between the communication module and the vehicle management server.
  • Communication such as sending wake-up commands and remote control commands in encrypted form.
  • the previously updated key can also be used to decrypt the data packet to obtain a plaintext wake-up command. and remote control commands. Helps improve remote control security by sending wake-up commands and remote control commands encrypted.
  • the communication module may also periodically perform authentication with the vehicle management server.
  • the validity of the communication module is checked periodically by the vehicle management server, and the wake-up command and remote control command can be sent to the communication module only in legal cases, and remote control is not performed in illegal cases, which effectively improves remote control. security.
  • a wake-up command and a remote control command can be directly sent when remote control needs to be performed, without re-authentication and authentication, which further improves the efficiency of remote control.
  • the present application provides a remote control method, which is applicable to any device with processing capability, such as a vehicle management server.
  • the method includes: the vehicle management server receives a first remote control command from the user terminal, and based on the first remote control command, sends a wake-up command to the vehicle, so that the communication module in the vehicle enters the wake-up state, and the communication module is in the wake-up state.
  • the module is in a sleep state supporting the remote wake-up function
  • a second remote control command is sent to the vehicle to instruct components in the vehicle to start or perform a first operation.
  • the second remote control command may be an IP data packet
  • the wake-up command may be a short message or an IP data packet
  • the vehicle management server can send the wake-up command and the remote control command to the communication module in the same IP data packet, or it can put the wake-up command and the remote control command in two consecutive IP data packets respectively. packet sent to the communication module.
  • the vehicle management server may also accept the login of the communication module.
  • the vehicle management server may also periodically receive the effective network address of the communication module from the communication module.
  • the vehicle management server when the vehicle management server periodically receives the valid network address of the communication module from the communication module, if no new valid network address is received for more than one period of time, the vehicle management server will communicate with The network address of the module is set to an invalid state.
  • the invalid state means that the network link between the vehicle management server and the communication module is interrupted.
  • the vehicle management server before sending the wake-up command and sending the second remote control command, can also obtain the state of the network address information of the communication module, if it is in the valid state, it will wake up according to the valid network address information
  • the command and the second remote control command are sent to the communication module, and if it is in an invalid state, a wake-up short message is sent to the communication module.
  • the efficiency of waking up the vehicle and remotely controlling the vehicle can be improved by waking up the communication module in the form of an IP data packet when the quality of the network link between the vehicle management server and the communication module is good.
  • the vehicle management server may also receive an updated network address of the communication module from the communication module.
  • the vehicle management server may also send the network address of the communication module to the user terminal.
  • the vehicle management server may periodically send the effective network address of the communication module to the user terminal, or send the communication module's valid network address to the user terminal when a preset event is triggered.
  • the current network address is sent to the user terminal, and the preset event may be, for example, that the network address of the communication module is updated, so that the vehicle management server sends the updated network address of the communication module of the communication module to the user terminal.
  • This method enables the user terminal to know the latest network address of the communication module in time, which facilitates the user terminal to directly send the wake-up command and the third remote control command to the communication module based on the latest network address, saves the forwarding delay via the vehicle management server, and further improves the remote control s efficiency.
  • the vehicle management server may also periodically receive heartbeat data packets from the communication module.
  • the heartbeat data packet may contain a valid network address or an updated network address of the communication module.
  • the vehicle management server may also receive an updated key from the communication module, and use the updated key to encrypt the wake-up command and the second remote control Order.
  • the vehicle management server may also periodically perform authentication and authentication with the communication module.
  • the vehicle management server may also send a wake-up short message to the vehicle while sending the wake-up command to the vehicle.
  • the wireless coverage effect of short messages is better than the network coverage effect of data services, by sending wake-up commands to the communication module in the form of network and short messages at the same time, it can quickly
  • the wake-up command is transmitted to the communication module, which improves the efficiency of waking up the communication module, and can successfully wake up the communication module through a wake-up short message with better network coverage in the case of poor network.
  • the present application provides a remote control method, which is applicable to any device with user interaction capability, such as a user terminal.
  • the method includes: the user terminal receives a network address of a communication module in the vehicle from a vehicle management server, and when the communication module is in a dormant state supporting a remote wake-up function, sending a third remote control to the vehicle according to the network address command, the third remote control command is used to instruct a component in the vehicle to activate or perform the first operation.
  • directly waking up and controlling the vehicle through the user terminal not only helps to reduce the delay introduced by the indirect forwarding of the wake-up command and the remote control command via the vehicle management server, effectively improves the efficiency of remote control, but also decentralizes the vehicle management as much as possible. Server work pressure.
  • the user terminal may also send a wake-up command to the vehicle according to the network address, so that the communication module enters the wake-up state.
  • the wake-up command in the form of a network, the forwarding delay introduced by the wake-up command being forwarded by the SMS center can be saved, which is helpful to further improve the efficiency of remote control.
  • the user terminal may also send a first remote control command to the vehicle management server, so that the vehicle management server instructs the components in the vehicle to start or execute the first remote control command in the form of a network or a short message according to the first remote control command. operate.
  • the wake-up command and the remote control command are sent to the communication module by at least two of the network form of the user terminal, the short message form of the user terminal, the network form of the vehicle management server, and the short message form of the vehicle management server. Multiple transmission methods improve the probability that the communication module receives the wake-up command and the possibility of successfully waking up the vehicle.
  • the user terminal may periodically receive the effective network address of the communication module from the vehicle management server, or receive the network address of the communication module triggered by a preset event from the vehicle management server, where the preset event may be, for example, An update occurs for the network address of the communication module so that the user terminal receives the updated network address of the communication module from the vehicle management server.
  • the preset event may be, for example, An update occurs for the network address of the communication module so that the user terminal receives the updated network address of the communication module from the vehicle management server.
  • the user terminal when the user terminal periodically receives the network address of the communication module from the vehicle management server, if it does not receive a new valid network address within a period of time, the user terminal will send the communication module's network address to the user terminal.
  • the network address is set to an invalid state.
  • the user terminal before sending the third remote control command, can also obtain the status of the network address information of the communication module. If it is in a valid state, the wake-up command and the third remote The control command is sent to the communication module, and if it is in an invalid state, the first remote control command is sent to the vehicle management server.
  • the present application provides a remote control device, comprising: a transceiver unit for receiving a wake-up command and a remote control command when a communication module in a vehicle is in a sleep state supporting a remote wake-up function; a wake-up unit for receiving a wake-up command according to a The wake-up command makes the communication module enter the wake-up state; the control unit is used to send a control message to the components in the vehicle according to the remote control command, and the control message is used to start the component or instruct the component to perform the operation indicated by the remote control command.
  • the remote control command can be an IP data packet
  • the wake-up command can be a short message or an IP data packet
  • the wake-up command and the remote control command may be sent to the communication module in the same IP data packet, or may be sent to the communication module in two consecutive IP data packets.
  • the wake-up command and the remote control command may be sent by the vehicle management server.
  • the wake-up command and the remote control command may be sent by a user terminal logging in to the vehicle management server.
  • the transceiver unit may further perform at least one of the following operations: log in to the vehicle management server; periodically send the effective network address of the communication module to vehicle management server; send the updated network address of the communication module to the vehicle management server; periodically send heartbeat data packets to the vehicle management server; send the updated key to the vehicle management server; or, periodically communicate with the vehicle management server Perform authentication.
  • the heartbeat data packet may contain a valid network address or an updated network address of the communication module.
  • the present application provides a remote control device, comprising a transceiver unit and a processing unit.
  • the transceiver unit under the control of the processing unit, performs the following operations: receiving a first remote control command from a user terminal, and based on the first remote control command, Send a wake-up command to the vehicle to make the communication module in the vehicle enter the wake-up state, and when the communication module is in a dormant state supporting the remote wake-up function, send a second remote control command to the vehicle based on the first remote control command to instruct the vehicle A component within initiates or performs a first operation.
  • the second remote control command may be an IP data packet
  • the wake-up command may be a short message or an IP data packet
  • the transceiver unit can send the wake-up command and the remote control command to the communication module in the same IP data packet, or it can place the wake-up command and the remote control command in two consecutive IP data packets respectively. sent to the communication module.
  • the transceiver unit may further perform at least one of the following operations: accept the login of the communication module; periodically receive communication from the communication module the effective network address of the module; receive the updated network address of the communication module from the communication module; periodically receive the heartbeat data packet from the communication module; receive the updated key from the communication module; or, periodically authenticate with the communication module Certification.
  • the processing unit when the transceiver unit periodically receives the effective network address of the communication module from the communication module, if the new effective network address is not received within a period of more than one cycle, the processing unit will The network address is set to an invalid state.
  • the state of the network address information of the communication module can also be obtained before the transceiver unit sends the wake-up command and sends the second remote control command. If it is in a valid state, the wake-up command is sent according to the valid network address information. and the second remote control command are sent to the communication module, and if it is in an invalid state, a wake-up short message is sent to the communication module.
  • the heartbeat packet may contain a valid or updated network address of the communication module.
  • the transceiver unit may also periodically send the effective network address of the communication module to the user terminal after determining that the user terminal logs in to the vehicle management server, or send the updated effective network address of the communication module to the user terminal.
  • the transceiver unit may also send a wake-up short message to the vehicle while sending the wake-up command to the vehicle.
  • the present application provides a remote control device, comprising a transceiver unit and a processing unit.
  • the transceiver unit under the control of the processing unit, performs the following operations: receiving a network address of a communication module in a vehicle from a vehicle management server; When in the dormant state supporting the remote wake-up function, according to the network address, a third remote control command is sent to the vehicle to instruct the components in the vehicle to start or perform the first operation.
  • the transceiver unit may also send a wake-up command to the vehicle according to the network address, so that the communication module enters the wake-up state.
  • the transceiver unit may also send a first remote control command to the vehicle management server to instruct components in the vehicle to start or perform the first operation.
  • the transceiver unit may also periodically receive the effective network address of the communication module from the vehicle management server, or receive the changed network address of the communication module from the vehicle management server.
  • the transceiver unit when the transceiver unit periodically receives the network address of the communication module from the vehicle management server, if no new valid network address is received within a period of more than one period, the processing unit will The network address is set to an invalid state.
  • the transceiver unit before sending the third remote control command, can also obtain the state of the network address information of the communication module. If it is in a valid state, the wake-up command and the third remote The control command is sent to the communication module, and if it is in an invalid state, the first remote control command is sent to the vehicle management server.
  • the present application provides a remote control device, comprising a processor, a transceiver and a memory, the processor is connected to the memory, the memory stores a computer program, and when the computer program stored in the memory is executed by the processor, the remote control device is Execution:
  • the communication module is in a dormant state that supports the remote wake-up function, receive a wake-up command and a remote control command, make the communication module enter the wake-up state according to the wake-up command, and send a control message to the components in the vehicle according to the remote control command to start The component or instructs the component to perform the operation indicated by the remote control command.
  • the remote control command can be an IP data packet
  • the wake-up command can be a short message or an IP data packet
  • the wake-up command and the remote control command may be sent to the communication module in the same IP data packet, or may be sent to the communication module in two consecutive IP data packets.
  • the wake-up command and the remote control command may be sent by the vehicle management server.
  • the wake-up command and the remote control command may be sent by a user terminal logging in to the vehicle management server.
  • the remote control device when the computer program stored in the memory is executed by the processor, the remote control device is caused to perform at least one of the following operations: log in to the vehicle management server; periodically update the effective network address of the communication module Send to the vehicle management server; send the updated network address of the communication module to the vehicle management server; periodically send a heartbeat data packet to the vehicle management server; send the updated key to the vehicle management server; The management server performs authentication and authentication.
  • the heartbeat data packet may contain a valid network address or an updated network address of the communication module.
  • the present application provides a remote control device, comprising a processor, a transceiver and a memory, the processor is connected to the memory, the memory stores a computer program, and when the computer program stored in the memory is executed by the processor, the remote control device is Execute: receive the first remote control command from the user terminal, send a wake-up command to the vehicle based on the first remote control command, so that the communication module in the vehicle enters the wake-up state, when the communication module is in the sleep state supporting the remote wake-up function, based on the The first remote control command sends a second remote control command to the vehicle to instruct a component in the vehicle to activate or perform a first operation.
  • the second remote control command may be an IP data packet
  • the wake-up command may be a short message or an IP data packet
  • the remote control device when the computer program stored in the memory is executed by the processor, the remote control device is made to specifically execute: the wake-up command and the remote control command are sent to the communication module in the same IP data packet, or separately The wake-up command and the remote control command are sent to the communication module in two consecutive IP packets.
  • the remote control device when the computer program stored in the memory is executed by the processor, the remote control device can further perform at least one of the following operations before sending the wake-up command and sending the second remote control command: accepting The login of the communication module; periodically receive the effective network address of the communication module from the communication module; receive the updated network address of the communication module from the communication module; periodically receive the heartbeat data packet from the communication module; receive the updated password from the communication module. key; or, periodically perform authentication and authentication with the communication module.
  • the remote control device when the computer program stored in the memory is executed by the processor, the remote control device further executes: if the effective network address of the communication module is periodically received from the communication module, then after more than one cycle When no new valid network address is received within the time period, the network address of the communication module is set to an invalid state.
  • the remote control device when the computer program stored in the memory is executed by the processor, the remote control device further executes: before sending the wake-up command and sending the second remote control command, obtain the state of the network address information of the communication module , if it is in a valid state, send a wake-up command and a second remote control command to the communication module according to the valid network address information, and if it is in an invalid state, send a wake-up short message to the communication module.
  • the heartbeat data packet may contain a valid network address or an updated network address of the communication module.
  • the remote control device when the computer program stored in the memory is executed by the processor, the remote control device further executes: after determining that the user terminal logs in to the vehicle management server, periodically sending the effective network address of the communication module to User terminal, or send the updated effective network address of the communication module to the user terminal.
  • the remote control device when the computer program stored in the memory is executed by the processor, it causes the remote control device to also execute: sending a wake-up short message to the vehicle at the same time as sending the wake-up command to the vehicle.
  • the present application provides a remote control device, comprising a processor, a transceiver and a memory, the processor is connected to the memory, the memory stores a computer program, and when the computer program stored in the memory is executed by the processor, the remote control device is Execution: Receive the network address of the communication module in the vehicle from the vehicle management server, and when the communication module is in a dormant state supporting the remote wake-up function, send a third remote control command to the vehicle according to the network address, and the third remote control command is used to indicate A component within the vehicle activates or performs a first operation.
  • the remote control device when the computer program stored in the memory is executed by the processor, the remote control device further executes: sending a wake-up command to the vehicle according to the network address, so that the communication module enters a wake-up state.
  • the remote control device when the computer program stored in the memory is executed by the processor, the remote control device further executes: sending a first remote control command to the vehicle management server to instruct a component in the vehicle to activate or execute the first remote control command. operate.
  • the computer program stored in the memory when executed by the processor, causes the remote control device to also perform: periodically receive a valid network address of the communication module from the vehicle management server, or receive communication from the vehicle management server The network address of the module changes.
  • the remote control device when the computer program stored in the memory is executed by the processor, it causes the remote control device to also execute: if the network address of the communication module is periodically received from the vehicle management server, then for a duration exceeding one cycle When a new valid network address is not received within the system, the network address of the communication module is set to an invalid state.
  • the remote control device when the computer program stored in the memory is executed by the processor, the remote control device also executes: before sending the third remote control command, obtain the state of the network address information of the communication module, if it is valid If it is in an invalid state, the wake-up command and the third remote control command are sent to the communication module according to the valid network address information, and if it is in an invalid state, the first remote control command is sent to the vehicle management server.
  • the present application provides a remote control device, comprising a processor and a communication interface, the communication interface is used to receive signals from other communication devices other than the remote control device and transmit to the processor or send signals from the processor To other communication devices other than the remote control device; the processor is used to implement the method described in any one of the designs of the first aspect above through logic circuits or executing code instructions.
  • the present application provides a remote control device, comprising a processor and a communication interface, the communication interface being used to receive signals from other communication devices other than the remote control device and transmit to the processor or transfer signals from the processor Sent to other communication devices other than the remote control device; the processor is used to implement the method described in any one of the designs of the second aspect above through logic circuits or executing code instructions.
  • the present application provides a remote control device, comprising a processor and a communication interface, the communication interface being used for receiving signals from other communication devices other than the remote control device and transmitting to the processor or transferring the signals from the processor Sent to other communication devices other than the remote control device; the processor is used to implement the method described in any one of the designs of the third aspect above through logic circuits or executing code instructions.
  • the present application provides a remote control device, comprising a processor, the processor is connected to a memory, the memory is used for storing a computer program, and the processor is used for executing the computer program stored in the memory, so that the device executes the above-mentioned first The method of any of the aspects devised.
  • the present application provides a remote control device, comprising a processor, the processor is connected to a memory, the memory is used for storing a computer program, and the processor is used for executing the computer program stored in the memory, so that the device executes the above-mentioned second The method of any of the aspects devised.
  • the present application provides a remote control device, comprising a processor, the processor is connected to a memory, the memory is used for storing a computer program, and the processor is used for executing the computer program stored in the memory, so that the device executes the above-mentioned third The method of any of the aspects devised.
  • the present application provides a remote control device, including a processor and a memory, the memory stores computer program instructions, and the processor executes the computer program instructions to implement the method described in any one of the designs of the first aspect above.
  • the present application provides a remote control device, comprising a processor and a memory, the memory stores computer program instructions, and the processor executes the computer program instructions to implement the method according to any one of the designs of the second aspect above.
  • the present application provides a remote control device, comprising a processor and a memory, the memory stores computer program instructions, and the processor executes the computer program instructions to implement the method according to any one of the designs of the third aspect.
  • a nineteenth aspect provides a vehicle, comprising the remote control according to any one of the designs of the fourth aspect, or the seventh aspect, or the tenth aspect, or the thirteenth aspect, or the sixteenth aspect device.
  • the present application provides a remote control system, including a communication module in a vehicle and a vehicle management server, where the communication module in the vehicle is used to implement the method described in any one of the designs of the first aspect above, and the vehicle management The server is configured to implement the method according to any one of the designs of the above second aspect.
  • the present application provides a remote control system, including a first device, a second device, and a third device, where the first device can be any device with a communication function, such as a communication module in a vehicle, for A method as described in any one of the designs of the first aspect above is implemented.
  • the second device may be any device with a processing function, such as a vehicle management server, for implementing the method described in any one of the designs of the second aspect above.
  • the third device may be any device with a user interaction function, such as a user terminal, for implementing the method described in any one of the designs of the foregoing third aspect.
  • the present application provides a chip, which may include a processor and an interface, where the processor is configured to read instructions through the interface, so as to execute the method described in any one of the designs of the first aspect above, or to execute the Design the method according to any one of the above second aspects, or perform the method according to any one of the above third aspects.
  • the present application provides a computer-readable storage medium, where a computer program is stored in the computer-readable storage medium, and when the computer program is executed, the design described in any one of the above first aspects is implemented. method.
  • the present application provides a computer-readable storage medium, where a computer program is stored in the computer-readable storage medium, and when the computer program is executed, the design described in any one of the above second aspects is implemented. method.
  • the present application provides a computer-readable storage medium, where a computer program is stored in the computer-readable storage medium, and when the computer program is executed, the design described in any one of the above third aspects is implemented. method.
  • the present application provides a computer program product that, when the computer program product runs on a processor, implements the method described in any one of the designs of the first aspect above.
  • the present application provides a computer program product that, when the computer program product runs on a processor, implements the method described in any one of the designs of the second aspect above.
  • the present application provides a computer program product that, when the computer program product runs on a processor, implements the method described in any one of the designs of the third aspect above.
  • FIG. 1 exemplarily shows a schematic diagram of a possible system architecture to which the embodiments of the present application are applicable;
  • FIG. 2 exemplarily shows a schematic flowchart of a remote control method provided in Embodiment 1 of the present application
  • FIG. 3 exemplarily shows a schematic diagram of interface implementation of a remote control method provided by an embodiment of the present application
  • FIG. 4 exemplarily shows a schematic flowchart of a remote control method provided in Embodiment 2 of the present application
  • FIG. 5 exemplarily shows a schematic flowchart of a remote control method provided in Embodiment 3 of the present application
  • FIG. 6 exemplarily shows a schematic diagram of the internal architecture of a vehicle management server provided by an embodiment of the present application
  • FIG. 7 exemplarily shows a schematic diagram of the internal architecture of a user terminal provided by an embodiment of the present application.
  • FIG. 8 exemplarily shows a schematic diagram of the internal architecture of a communication module in a vehicle provided by an embodiment of the present application
  • FIG. 9 exemplarily shows a schematic diagram of time delay analysis of a remote control scheme commonly used in the industry.
  • FIG. 10 exemplarily shows a schematic diagram of time delay analysis of another remote control scheme commonly used in the industry
  • FIG. 11 exemplarily shows a schematic diagram of time delay analysis of a remote control solution provided by an embodiment of the present application
  • FIG. 12 exemplarily shows a schematic diagram of time delay analysis of another remote control solution provided by an embodiment of the present application.
  • FIG. 13 exemplarily shows a schematic structural diagram of a remote control device provided by an embodiment of the present application
  • FIG. 14 exemplarily shows a schematic structural diagram of another remote control device provided by an embodiment of the present application.
  • FIG. 15 exemplarily shows a schematic structural diagram of another remote control device provided by an embodiment of the present application.
  • FIG. 16 exemplarily shows a schematic structural diagram of another remote control apparatus provided by an embodiment of the present application.
  • the remote control solution in the embodiments of the present application can be applied to the Internet of Vehicles, such as vehicle-to-everything (V2X), long term evolution-vehicle (LTE-V), vehicle - Vehicle (vehicle-vehicle, V2V) etc.
  • V2X vehicle-to-everything
  • LTE-V long term evolution-vehicle
  • V2V vehicle - Vehicle
  • the other devices include but are not limited to: on-board terminals, on-board controllers, on-board modules, on-board modules, on-board components, on-board chips, on-board units, on-board radars or on-board cameras and other sensors.
  • vehicle-mounted module vehicle-mounted module, vehicle-mounted component, vehicle-mounted chip, vehicle-mounted unit, vehicle-mounted radar or camera, and implement the remote control method provided by this application.
  • the remote control solution in the embodiments of the present application can also be used in other smart terminals with remote communication functions except vehicles, or set in other smart terminals with remote communication functions other than vehicles, or set in other smart terminals with remote communication functions.
  • components of the intelligent terminal may be other terminal equipment such as intelligent transportation equipment, smart home equipment, and robots.
  • a smart terminal or other sensors such as a controller, a chip, a radar or a camera, and other components in the smart terminal.
  • FIG. 1 is a schematic diagram of a possible system architecture to which the embodiment of the application is applied.
  • the system architecture shown in FIG. 1 includes a vehicle management server 110 , a vehicle 120 and a user terminal 130 .
  • the vehicle 120 refers to a vehicle with a telecommunication function, and the telecommunication function of the vehicle 120 can usually be realized by a communication module 121 provided on the vehicle 120.
  • a common communication module 121 includes, for example, a telecommunication box (telematics box, TBOX).
  • the vehicle management server 110 may refer to a single server, or may refer to a server cluster composed of multiple servers.
  • the vehicle management server 110 may specifically refer to a cloud server, also referred to as cloud, cloud, cloud server, cloud controller, or Internet of Vehicles server.
  • Cloud server is a general term for devices or devices with data processing capabilities, such as physical devices such as hosts or processors, virtual devices such as virtual machines or containers, and chips or integrated circuits.
  • User terminal 130 is a device that provides voice and/or data connectivity to a user. For example, it may include a handheld device with wireless connectivity, or a processing device connected to a wireless modem.
  • user terminals 130 are: mobile phone (mobile phone), tablet computer, notebook computer, palmtop computer, mobile internet device (MID), wearable device, virtual reality (VR) device, Augmented reality (AR) equipment, wireless terminal equipment in industrial control, wireless terminal equipment in self driving, wireless terminal equipment in remote medical surgery, smart grid Wireless terminal equipment in smart grid, wireless terminal equipment in transportation safety, wireless terminal equipment in smart city, wireless terminal equipment in smart home, etc.
  • the embodiments of the present application do not limit the number of vehicle management servers 110 , the number of vehicles 120 and the number of user terminals 130 in the system architecture, nor the number of communication modules 121 included in each vehicle 120 .
  • one vehicle management server 110 can be connected to multiple vehicles 120 and multiple user terminals 130, and multiple vehicles 120 and multiple user terminals 130 can be one-to-one or many-to-one (for example, A user has more than one vehicle at the same time).
  • the connection between the vehicle management server 110 and the multiple vehicles 120 may be realized by connecting with the communication modules 121 on the multiple vehicles 120 , wherein each vehicle 120 generally includes one communication module 121 .
  • the system architecture to which the embodiments of the present application are applicable may also include other devices, such as core network devices, wireless relay devices, and wireless backhaul devices.
  • This embodiment of the present application is also not limited.
  • the vehicle management server 110 in the embodiment of the present application may integrate all functions on an independent physical device, and may also deploy different functions on a plurality of independent physical devices respectively, and this embodiment of the present application does not make any difference. limited.
  • the vehicle in the embodiment of the present application may have an integrated architecture in units of functional domains. That is, each electronic control unit (ECU) in the vehicle is divided into different functional domains according to different functions, and each functional domain is also provided with a corresponding domain controller (domain control unit, DCU), Each domain controller is respectively connected to each electronic control unit included in the functional domain in which it is located, and is used to realize centralized management and control of various electronic control units originally scattered in the functional domain in which it is located.
  • functional domains are also called functional systems
  • common functional domains may include but are not limited to: powertrain, chassis and safety systems, body control systems, infotainment systems, or assisted driving systems, etc.
  • the vehicle-mounted gateway in the vehicle acts as the central hub for vehicle interaction and is interconnected with each domain controller in the vehicle to securely transfer data between the various domain controllers.
  • the in-vehicle gateway is also responsible for the protocol conversion between different bus architectures, so as to break the gap of data analysis between different functional domains.
  • the vehicle gateway also acts as a communication bridge between the vehicle and the external communication network. It establishes a safe and efficient connection with the vehicle management server through the communication module in the vehicle. Upgrade, management, maintenance and control of control units.
  • a long connection in this embodiment of the present application is a relative concept of a short connection.
  • a short connection means that both parties of the communication establish a connection every time they need to send data, and disconnect after the data transmission is completed, that is, the connection established each time is only used to complete one data transmission operation.
  • a long connection means that both parties of the communication do not disconnect after establishing the connection and sending data, but continue to maintain the connection. When the data needs to be continued to be sent later, the data can be sent directly on the maintained connection. In the case that the two communicating parties maintain a long connection, the communicating parties can continuously send multiple data packets on one connection. In addition, during the long connection maintaining period, if no data packets are sent for a long time, both parties of the communication usually need to check the current communication link, so as to discover the failure of the communication link in time.
  • Simultaneously sending at least two data packets in this embodiment of the present application may refer to any of the following: using at least two threads to send at least two data packets in parallel, or using a single thread to send at least two data packets continuously. That is, as long as at least two data packets are sent at a negligible time interval, at least two data packets can be considered to be sent at the same time.
  • the user key in the embodiment of the present application refers to the key used for data interaction between the user terminal and the vehicle management server.
  • the user key may be a fixed key preset in the user terminal and the vehicle management server, or obtained through periodic negotiation between the user terminal and the vehicle management server, or may be a predetermined key known to the user terminal and the vehicle management server. It is assumed that the variable key generated by the algorithm is not specifically limited.
  • the vehicle key in the embodiment of the present application refers to the key used for data interaction between the communication module and the vehicle management server.
  • the vehicle key can be a fixed key preset in the communication module and the vehicle management server, or obtained through periodic negotiation between the communication module and the vehicle management server, or it can be a predetermined key known to the communication module and the vehicle management server. It is assumed that the variable key generated by the algorithm is not specifically limited.
  • the vehicle interaction key in the embodiment of the present application refers to the key used for data interaction between the communication module and the user terminal.
  • the vehicle interaction key can be a fixed key that is preset in the communication module before the vehicle leaves the factory and is synchronized to the user terminal by the communication module during the first interaction with the user terminal, or it can be distributed to the user by the vehicle management server.
  • the key of the terminal and the communication module may also be a variable key negotiated between the user terminal and the communication module according to the network address period of the communication module synchronized by the vehicle management server, which is not specifically limited.
  • first”, “second”, “third”, and “fourth” are only used for the purpose of distinguishing and describing, and should not be construed as indicating or Implying relative importance is also not to be construed as indicating or implying order.
  • first timer”, “second timer”, “third timer” and “fourth timer” are just examples to indicate different timers set for different timing events.
  • the timing duration of the two timers may be the same or different, and the priority or importance may be the same or different. It should not be understood as implying that their timing duration is different, or that their importance or priority is different.
  • FIG. 2 exemplarily shows a schematic flowchart of a remote control method provided in Embodiment 1 of the present application.
  • the method is applicable to a communication module, a vehicle management server, a user terminal, and a component in a vehicle, wherein the communication in the vehicle is
  • the modules, the vehicle management server and the user terminal can be, for example, the communication module 121 , the vehicle management server 110 and the user terminal 130 in the vehicle 120 shown in FIG. 1 .
  • the process includes the following steps:
  • Step 201 when the communication module is in a sleep state supporting a remote wake-up function, receives a wake-up command and a remote control command.
  • the communication module in this embodiment of the present application may have the following three states: a sleep state, also called a deep sleep state, in which the communication module supports local wake-up but does not support remote wake-up.
  • a sleep state also called a deep sleep state
  • the communication module supports local wake-up but does not support remote wake-up.
  • the user can press The start button in the car wakes up the communication module in the deep sleep state
  • the sleep state also known as the light sleep state
  • the communication module supports remote wake-up, for example, the user can send a remote command through the mobile phone to wake up the light sleep state.
  • Communication module the wake-up state, in which the communication module is in a high-power operating mode, capable of supporting all equipped functions.
  • the communication module is powered on, but the power consumption of the sleep state is lower than that of the sleep state, and the power consumption of the sleep state is lower than that of the wake-up state.
  • the "sleep state supporting the remote wake-up function" refers to the sleep state among the above three states.
  • the communication module cannot receive remote commands sent by external devices, but can pass the vehicle
  • the internal components indicate wake-up; when the sleep vehicle is selected, the communication module in the vehicle will switch from the working state to the sleep state, and the communication module can receive remote commands sent by external devices, such as wake-up commands or remote control sent by the vehicle management server or user terminal. Order.
  • the wake-up command and the remote control command may be sent to the communication module by the vehicle management server (step 2001 in FIG. 2 , please refer to the following embodiment 2 for the specific implementation process), or may be sent by the user who logs in to the vehicle management server.
  • the terminal sends it to the communication module (step 2002 in FIG. 2 , please refer to the third embodiment below for the specific implementation process), and can also be sent to the communication module by the vehicle management server and the user terminal together.
  • the examples sent by the vehicle management server and the user terminal together include but are not limited to: the vehicle management server sends a wake-up command to the communication module when the communication module is in a dormant state, and the user terminal sends a remote command to the communication module when the communication module is in a dormant state.
  • the vehicle management server sends a remote control command to the communication module when the communication module is in a dormant state
  • the user terminal sends a wake-up command to the communication module when the communication module is in a dormant state, or the vehicle management server when the communication module is in a dormant state
  • the vehicle management server sends a first wake-up command to the communication module when the communication module is in a dormant state
  • the command and the second remote control command, the user terminal sends the second wake-up command and the third remote control command to the communication module when the communication module is in a dormant state, etc., which are not listed here.
  • the wake-up command can be sent in the form of a short message or an IP data packet
  • the remote control command can be sent in the form of an IP data packet. That is to say, the wake-up command and the remote control command can be sent in any of the following ways: the wake-up command and the remote control command are sent to the communication module through the same IP data packet, so that the communication module can obtain the wake-up command and the remote control command at the same time; the wake-up command And the remote control command is sent to the communication module through two consecutive IP data packets, so that the communication module user can obtain the wake-up command and the remote control command with almost no time difference; the short message carrying the wake-up command and the IP data packet carrying the remote control command are simultaneously Send to the communication module; the short message or IP data packet carrying the wake-up command is first sent to the communication module, and the IP data packet carrying the remote control command is sent to the communication module, and it is necessary to ensure that the IP data packet carrying the remote control command is in the wake-up command.
  • the short message or IP data packet is sent to the communication module before it successfully wakes up the communication module; the short message carrying the wake-up command, the IP data packet carrying the wake-up command and the IP data packet carrying the remote control command are sent to the communication module at the same time; The short message is first sent to the communication module, and the IP data packet carrying the wake-up command and the remote control command is then sent to the communication module; the IP data packet carrying the wake-up command is sent to the communication module first, and the short message carrying the wake-up command and the remote control command are sent to the communication module. The IP data packet is then sent to the communication module and so on. It should be understood that there are many possible sending modes, as long as the two commands can be sent to the communication module when the communication module is in a dormant state, both of them are within the protection scope of this application, and this application will not list them one by one.
  • the network address of the communication module needs to be known.
  • the communication module in the future vehicle has a fixed contact network address like the subscriber identity module (SIM) card on the mobile phone at this stage, such as the international mobile subscriber identity (international mobile subscriber identity, IMSI), or the number that the calling user needs to dial (mobile subscriber international ISDN/PSTN number, MSISDN) to call the user in the mobile communication network
  • SIM subscriber identity module
  • the vehicle management server or the user terminal can directly store the network address of the communication module in the vehicle , so that each time the remote control needs to be performed subsequently, the wake-up command or the remote control command can be sent to the communication module through the network address in the form of an IP data packet.
  • the network address of the communication module may be obtained by the vehicle management server or the user terminal requesting the communication module, or the communication module may actively send the communication module to the communication module.
  • the occurrence timing of the request or report may be after knowing that the remote control needs to be performed, or before knowing that the remote control needs to be performed, which is not specifically limited. It should be understood that there are many possible implementation manners, which are not listed one by one here.
  • the communication module before receiving the wake-up command and the remote control command, the communication module may further perform at least one of the following operations:
  • Operation 1 The communication module logs in to the vehicle management server. If the login is successful, a connection can be successfully established between the communication module and the vehicle management server. In this way, the vehicle management server can send a wake-up command and a remote control command to the communication module through this connection, or can The relevant information of the communication module is sent to the user terminal, so that the user terminal can send a wake-up command and a remote control command to the communication module.
  • the communication module periodically sends the effective network address of the communication module to the vehicle management server. This operation is more suitable for the scenario where the communication module frequently moves.
  • By periodically synchronizing the effective network address it helps the vehicle management server to use the latest synchronized network address to send IP data packets carrying the wake-up command or remote control command, or to update the latest network address.
  • the synchronized network address is sent to the user terminal, so that the user terminal can use the latest synchronized network address to send the IP data packet carrying the wake-up command or the remote control command, which effectively improves the success probability of sending the wake-up command and the remote control command.
  • the communication module sends the updated network address of the communication module to the vehicle management server.
  • This operation is more suitable for the scenario where the position of the communication module does not move frequently.
  • the vehicle management server can accurately know the latest network address of the communication module after each change, and can also update the communication module every time.
  • the latest network address after the second change is sent to the user terminal, which can also help improve the success probability of sending a wake-up command or a remote control command in an IP data packet.
  • the communication module periodically sends a heartbeat data packet to the vehicle management server.
  • This operation can be used to maintain a long connection between the communication module and the vehicle management server.
  • the vehicle management server receives a heartbeat data packet within a period, it is determined that the long connection with the communication module still exists, and the vehicle management The server can directly obtain the network address of the communication module through the long connection, send a wake-up command or remote control command to the communication module according to the network address, or send the obtained network address to the user terminal, so that the user terminal can send the communication module to the communication module according to the network address. Send wake-up commands or remote control commands without having to re-establish the connection.
  • the vehicle management server does not receive a heartbeat data packet within a period, it is determined that the long connection with the communication module has been disconnected, and the vehicle management server needs to establish a connection with the communication module first, and then send a wake-up command or Remote control commands.
  • the header of the heartbeat data packet may carry the network address of the vehicle management server, where the network address refers to address information that can be used for network communication with the vehicle management server, for example, may include the IP address and port number of the vehicle management server,
  • the content carried in the packet body of the heartbeat data packet is not specifically limited, for example, it may be a default check value, an empty packet, or an effective network address of the communication module.
  • the communication module sends the updated vehicle key to the vehicle management server, and the vehicle key can be used for the subsequent communication between the communication module and the vehicle management server.
  • the vehicle management server can use the latest updated vehicle key to encrypt the wake-up command and The remote control command is then sent to the communication module to improve the security of remote control.
  • the communication module periodically performs authentication and authentication with the vehicle management server.
  • the authentication authentication can be used not only for the communication module to ensure the legitimacy of the vehicle management server, but also for the vehicle management server to ensure the legitimacy of the communication module.
  • the vehicle management server can only send wake-up commands and remote
  • the communication module can also only receive and execute the wake-up command and the remote control command sent by the vehicle management server that has passed the authentication and authentication, so as to ensure the security of the remote control as much as possible.
  • the communication module can log in to the vehicle management server first, and periodically send its own valid network address to the vehicle management server after the login is successful, so that the vehicle management server can use the previously logged-in communication module to update the latest
  • the valid network address sent at one time sends an IP data packet carrying a wake-up command or a remote control command to the previously logged-in communication module.
  • the communication module can log in to the vehicle management server first, and monitor its own network address in real time after successful login. Once the network address changes, it will send the changed network address to the vehicle management server so that the vehicle can
  • the management server can send an IP data packet carrying a wake-up command or a remote control command to the previously logged-in communication module by using the changed latest network address of the previously logged-in communication module.
  • the communication module can log in to the vehicle management server first. After the login is successful, on the one hand, it can periodically send its own valid network address to the vehicle management server, and on the other hand, it can monitor its own Once it is found that the network address has changed, the changed network address is also sent to the vehicle management server, and the sending cycle is restarted. This method can further ensure that the vehicle management server knows the most accurate network address, which helps to improve the success probability of sending a wake-up command or a remote control command.
  • the communication module can put the effective network address in the heartbeat data packet, and periodically send the heartbeat data packet to the vehicle management server, so that the vehicle management server can obtain the effective network address by parsing the heartbeat data packet.
  • the combination can implement the operation of periodically synchronizing the effective network address in the process of the long connection, without wasting additional resources to synchronize the effective network address, and helping to save the computing resources of the communication module.
  • the communication module can generate a heartbeat data packet for the network address that changes during a heartbeat cycle and send it to the vehicle management server, and can restart the timing of the heartbeat cycle based on the current heartbeat data packet , the combination can apply the network address that changes in real time to the heartbeat data packet that maintains the long-term connection, which helps to improve the flexible management of maintaining the long-term connection and synchronizing the network address.
  • the communication module can not only add its own effective network address to the heartbeat data packet to be sent in each heartbeat cycle, but also send the network address that changes during a heartbeat cycle separately.
  • a new heartbeat data packet is generated for the vehicle management server, or for a network address that changes during a cycle, and then sent to the vehicle management server, and the timing of the heartbeat cycle is restarted.
  • the communication module can log in to the vehicle management server first, and periodically send a heartbeat data packet to the vehicle management server after the login is successful, that is, after the login is successful, it starts to maintain communication with the vehicle management server. Persistent connection in order to send wake-up commands and remote control commands depending on the maintained persistent connection.
  • the communication module can log in to the vehicle management server first, and periodically send a message carrying a valid network address or a changed network address to the vehicle management server after the login is successful.
  • Heartbeat data packet so that the vehicle management server parses the heartbeat data packet to obtain a valid network address or a changed network address.
  • the communication module can log in to the vehicle management server first, and after successful login, periodically or in real time, send the latest updated vehicle key to the vehicle management server, so that the vehicle management server and the communication module can be encrypted in the login state.
  • the message to be synchronized improves the security of message transmission.
  • the communication module can log in to the vehicle management server first, and after successful login, periodically or in real time, send the latest updated vehicle key to the vehicle management server, and use the latest update
  • the updated vehicle key encrypts the valid network address or changed network address, and sends the encrypted information to the vehicle management server, so that the vehicle management server can also use the latest updated vehicle key to decrypt to obtain the valid network address or changed network address.
  • the wake-up command and the remote control command encrypted with the newly updated vehicle-mounted key are sent to the communication module. This combination is equivalent to periodically updating the vehicle key during the process of maintaining a long connection.
  • the communication module and the vehicle management server are connected for a long time, by updating the vehicle key at intervals, it can also reduce illegal devices obtaining the latest vehicle encryption key. It improves the accuracy of the communication module in identifying illegal messages encrypted by the historical vehicle key, prevents illegal devices from illegally controlling the communication module by invading the long connection, and effectively improves the security of the long connection.
  • the communication module can log in to the vehicle management server first, and send the latest updated vehicle key to the vehicle management server periodically or in real time after the login is successful.
  • Use the latest updated vehicle key to encrypt the valid network address or the changed network address, and send the heartbeat data packet carrying the encrypted network address to the vehicle management server, so that the vehicle management server can obtain the encrypted valid network address by parsing the heartbeat data packet or After changing the network address, use the latest updated vehicle key to decrypt to obtain a valid network address or changed network address, and use the valid network address or changed network address to send the latest updated vehicle key encrypted wake-up to the communication module commands and remote control commands.
  • the communication module can log in to the vehicle management server first, and periodically perform authentication with the vehicle management server after successful login. This combination can periodically update the communication module and the vehicle management server in the login state Performing security authentication locally helps to ensure the credibility of the login status of the two.
  • the communication module can first log in to the vehicle management server, periodically perform authentication with the vehicle management server after successful login, and update the vehicle key in the process of authentication and authentication. In this way, by performing the operation of negotiating the vehicle key in the process of periodic authentication and authentication, the resources of the communication module can be saved.
  • the communication module can log in to the vehicle management server first, and after successful login, periodically perform authentication with the vehicle management server. In the next step, the effective network address or the changed network address is periodically sent to the vehicle management server, so that the vehicle management server obtains the safe effective network address or the changed network address.
  • the communication module can log in to the vehicle management server first, and after successful login, periodically perform authentication with the vehicle management server, and In the process of authentication and authentication, synchronize the updated on-board key. If the authentication is passed, use the latest updated on-board key to encrypt the effective network address or the changed network address, and send the encrypted network address to the vehicle management server.
  • the heartbeat data packet of the address so that the vehicle management server obtains the encrypted effective network address or changed network address by parsing the heartbeat data packet, and decrypts it with the latest updated vehicle key to obtain the effective network address or changed network address.
  • the network address or the changed network address send the latest updated wake-up command and remote control command encrypted by the vehicle key to the communication module.
  • Step 202 the communication module makes the communication module enter a wake-up state according to the wake-up command.
  • the communication module can first wake up other programs within itself according to the wake-up command, so that the communication module can be switched to a normal working state, and the communication module can also wake up other components in the vehicle, and the other components can be corresponding to the remote control command.
  • the components to be controlled can also be all the components in the vehicle.
  • the wake-up process may specifically include: the communication module first sends an authentication message carrying a wake-up command to the vehicle-mounted gateway in the dormant state, and the vehicle-mounted gateway is triggered by the authentication message of the communication module and switches to the working state; then , the in-vehicle gateway determines whether the authentication message is legal (for example, determines whether the communication module uses a legal in-vehicle key to encrypt the authentication message). ) message format, the wake-up command is converted into a CAN message and sent to each domain controller in the car, and each domain controller wakes up the ECUs managed in their respective domains.
  • the CAN messages sent to each domain controller also need to be encrypted with the in-vehicle key corresponding to each domain controller.
  • the in-vehicle key corresponding to any domain controller is usually preset before the vehicle leaves the factory. Inside the vehicle, it can also be updated periodically through the domain controller and the ECUs in its domain after the vehicle leaves the factory.
  • Step 203 the communication module sends a control message to the components in the vehicle according to the remote control command.
  • the communication module can generate a control message according to the remote control command, and send the control message to the vehicle-mounted gateway.
  • the vehicle gateway converts the control message into a CAN message according to the CAN message format and sends it to the domain controller where the ECU to be controlled is located, so as to send the control message to the ECU to be controlled through the domain controller.
  • the above steps 202 and 203 are only described by taking the communication module sending a wake-up command and a remote control command as an example.
  • the communication module can also generate an authentication message carrying both the wake-up command and the control message corresponding to the remote control command to the vehicle-mounted gateway. After the vehicle-mounted gateway authenticates the legality, it wakes up each ECU according to the wake-up command and the control message and directly controls the The ECU to be controlled completes the remote control.
  • Step 204 a component in the vehicle starts the component according to the control message or performs the operation indicated by the remote control command.
  • the ECU to be controlled can execute the control operation corresponding to the start or remote control command.
  • These operations include but are not limited to: starting the air conditioner (in some cases, it is also necessary to start the engine to drive the air conditioner at the same time) ), unlock/lock the doors remotely, search for a car remotely (such as remotely controlling the vehicle to automatically drive to the user's location, or remotely flashing lights and honking so that the user can find the vehicle, etc.), or remotely opening/locking the windows, etc.
  • the domain controller may also return a control success response to the vehicle management server via the vehicle-mounted gateway and the communication module in turn, and the vehicle management server will then return it to the user terminal.
  • a control success response is returned to the user terminal via the vehicle-mounted gateway and the communication module in turn, so as to be displayed to the user through the user terminal.
  • the communication module by sending the remote control command to the communication module when the communication module of the vehicle is in a dormant state, it is helpful for the communication module to execute the remote control immediately after waking up the in-vehicle components, and effectively avoid waiting for the in-vehicle components to wake up and respond
  • the delay introduced by sending the remote control command afterward helps to improve the timeliness of the remote control.
  • FIG. 3 exemplarily shows a schematic flowchart of the remote control method provided in the second embodiment of the present application.
  • the method is applicable to a vehicle management server, a communication module in a vehicle, and a user terminal.
  • the vehicle management server 110 shown in FIG. 1 the vehicle Communication module 121 and user terminal 130 in 120 .
  • the process includes the following steps:
  • Step 301 the communication module logs into the vehicle management server.
  • the login process may refer to the following steps a to c:
  • step a when the communication module logs in to the vehicle management server for the first time, it sends a login request to the vehicle management server, and the login request carries the information to be authenticated and the network address of the communication module.
  • the information to be authenticated may include the version information of the communication protocol, and may also include a vehicle identification number (VIN), or other symbolic information that can indicate a vehicle or a communication module.
  • VIN vehicle identification number
  • the information to be authenticated is usually preset in the communication module of the vehicle before the vehicle leaves the factory.
  • step b the vehicle management server verifies the information to be authenticated in the login request according to a preset authentication algorithm. If the verification is passed, it is determined that the login request is legal, and the vehicle management server allows the communication module to log in, and stores the network address of the communication module. The network address returns a login success response to the communication module.
  • the preset authentication algorithm can be set by those skilled in the art based on experience, and can be pre-synchronized to the communication module, so that the communication module can also set the information to be authenticated according to the preset authentication algorithm.
  • the communication module and the vehicle management server can complete the login through a two-way authentication method. Specifically, the communication module initiates a login request to the vehicle management server when logging into the vehicle management server for the first time, and after receiving the login request, the vehicle management server sends the public key certificate of the vehicle management server to the communication module, and the communication module reads the vehicle The public key certificate of the management server obtains the public key of the vehicle management server, and sends the public key certificate of the communication module to the vehicle management server, and the vehicle management server uses the root certificate to decrypt the public key certificate of the communication module to obtain the public key of the communication module.
  • the communication module sends the encryption scheme it supports to the vehicle management server, and the vehicle management server selects an encryption scheme that both parties can support according to the encryption scheme supported by itself and the encryption scheme supported by the communication module, and encrypts it with the public key of the communication module. sent to the communication module.
  • the communication module decrypts the received encryption scheme with its own private key, a random number is generated, and the random number is used as the vehicle key for subsequent communication with the vehicle management server (that is, the vehicle key obtained through initial negotiation), and the vehicle management server is used
  • the public key encrypts the random number and sends it to the vehicle management server.
  • the vehicle management server decrypts the random number with its own private key, and uses the random number as the vehicle key for subsequent communication with the communication module.
  • the vehicle management server and the communication module communicate using the vehicle key negotiated by both parties in the subsequent communication process.
  • the public key certificate of the vehicle management server, the private key of the vehicle management server, the root certificate, and the encryption scheme supported by the vehicle management server can be preset in the vehicle management server by those skilled in the art in advance, and the public key certificate of the communication module, the communication module
  • the private key and the encryption scheme supported by the communication module can be preset in the communication module by the R&D personnel before the vehicle leaves the factory.
  • Step c after receiving the successful login response returned by the vehicle management server, the communication module determines that the communication module successfully logs in to the vehicle management server, that is, a connection is successfully established between the communication module and the vehicle management server, and the communication module can be accessed through the connection.
  • Resources in the vehicle management server such as voice service resources, map navigation resources, or network query resources, etc.
  • Step 302 the communication module negotiates with the vehicle management server according to the first preset period to obtain the updated vehicle key.
  • the vehicle-mounted key may be updated in a manner of actively applying to the vehicle management server for negotiation through the communication module according to the first preset period. That is, the first timer is maintained in the communication module, and the timing of the first timer is the period of a first preset period. After the communication module successfully logs in to the vehicle management server, the first timer can be started. After a timer reaches a corresponding time period, the communication module can send a key update request to the vehicle management server, and restart the first timer.
  • the key update request can also carry the network address of the communication module, so that the communication module and the vehicle management server can synchronize the network address of the communication module in the process of negotiating the vehicle key, and further improve the network address of the communication module stored in the vehicle management server. accuracy of the address.
  • the key update request can also be encrypted using the last negotiated vehicle key. In this way, after receiving the key update request, the vehicle management server can first decrypt the key update request in plaintext using the vehicle key negotiated in the last negotiation, and then verify whether the identity information of the communication module carried in the key update request is not. legitimate.
  • the vehicle management server can set a new vehicle key for the communication module, and encrypt the new vehicle key with the vehicle key negotiated last time, according to the network address of the communication module stored locally (refer to the following steps 303), sending the encrypted new vehicle key to the communication module to complete the update operation of the vehicle key.
  • the new vehicle key may be randomly or sequentially selected by the vehicle management server from a preset vehicle key set, or may be generated according to a preset algorithm, or may be some carried in the key update request.
  • the information is obtained through deformation, which is not specifically limited.
  • the communication module can continuously apply for negotiating the vehicle key according to the first preset period, regardless of whether the last application was successful. In this way, even if there is a problem in the operation of negotiating the vehicle key between the communication module and the vehicle management server, the data interaction is interrupted (for example, the vehicle management server generates a new vehicle key, but fails to send it to the communication module, causing the communication module to use The old on-board key and the new on-board key are used by the vehicle management server. Although the two can receive data, they cannot decrypt the data of the other party to complete the data exchange), and can also use the communication module to actively apply for negotiation to complete the subsequent generated data. The negotiation of a new vehicle key restores the normal data exchange between the two.
  • Step 303 the communication module sends a valid network address to the vehicle management server according to the second preset period.
  • the vehicle management server can store the network address of the communication module locally, and can update the network address periodically or in real time during subsequent interactions with the communication module. In this way, when remote control needs to be performed, the vehicle management server can obtain the network address of the communication module by directly inquiring locally.
  • the network address of the communication module may be stored in the vehicle management server in the form of a correspondence between the identification of the communication module and the network address, and the correspondence may be expressed as any one or more of a table, a picture or a data stack. In this way, even if the vehicle management server establishes connections with multiple communication modules at the same time, the vehicle management server can accurately communicate with any communication module according to the corresponding relationship.
  • the effective network address of the communication module may be updated by the communication module actively reporting the heartbeat data packet to the vehicle management server according to the second preset period. That is, the second timer is maintained in the communication module, and the time duration of the second timer is the second preset time duration. After the communication module successfully logs in to the vehicle management server, the second timer can be started, and every time the second timer counts After the corresponding timing period is reached, the communication module can send a heartbeat data packet to the vehicle management server, and restart the second timer.
  • the heartbeat data packet may carry the network address of the vehicle management server, which is used to send the heartbeat data packet to the vehicle management server, and the effective network address of the communication module.
  • the communication module periodically sends a heartbeat data packet carrying a valid network address to the vehicle management server after logging in to the vehicle management service, which not only maintains the long connection between the communication module and the vehicle management server, but also enables the vehicle management server to know in time.
  • the current valid network address of the communication module is equivalent to integrating the operation of synchronizing the effective network address with the process of maintaining a long connection. It eliminates the need to set up the operation of synchronizing the effective network address periodically, which helps to save the communication overhead between the vehicle management server and the communication module. .
  • the maintenance of the persistent connection may be implemented by the communication module actively initiating a heartbeat data packet, and it does not care whether the heartbeat data packet is successfully sent.
  • the long connection between the communication module and the vehicle management server is only interrupted but not over, as long as the problem is solved, the vehicle management server can be based on the heartbeat data packet sent by the communication module in the next timing period. network address, and restore the long connection with the communication module to continue the communication with the communication module.
  • step 304 may also be performed:
  • Step 304 the communication module sends the changed network address to the vehicle management server in real time.
  • the communication module may also monitor its own network address, and once it finds that its own network address has changed, it will report the changed network address to the vehicle management server in real time.
  • the vehicle management server may also use the changed network address to update the locally stored network address of the communication module. In this way, even if the communication module switches the network address within the sending interval of the two heartbeat data packets, the vehicle management server can obtain the latest network address in time, which helps to improve the accuracy of the network address stored locally by the vehicle management server.
  • the changed network address may be sent to the vehicle management server in a separate message format, or may be carried in a heartbeat data packet and sent to the vehicle management server, which is not specifically limited.
  • the communication module may restart the second timer based on the newly sent heartbeat data packet.
  • the communication module starts a second timer after sending a heartbeat data packet carrying a valid network address at a certain moment, and if the heartbeat data packet carrying a changed network address is sent in real time before the second preset time period has elapsed , the communication module can restart the second timer again, so as to avoid repeatedly sending the same network address in a short time, and effectively save the communication loss of the communication module.
  • the communication module can directly send the effective network address or the changed network address to the vehicle management server in plaintext, or can also use the recently negotiated vehicle key to encrypt the valid network address in the form of ciphertext.
  • the network address or the changed network address is sent to the vehicle management server, which is not specifically limited.
  • Step 305 the vehicle management server determines whether the network address sent by the communication module is received within a second preset period, and if so, executes step 306 , and if not, executes step 307 .
  • a third timer may also be maintained in the vehicle management server, and the timing duration of the third timer is also the second preset duration.
  • a network address (which may be a valid network address or a changed network address) sent by the communication module, it may start a third timer.
  • the vehicle management server may start a third timer.
  • the timing of the third timer if the vehicle management server receives a new valid network address or a changed network address, it is determined that the network address sent by the communication module is received within the second preset period.
  • the timing of the third timer expires, if the vehicle management server has not received a new valid network address or a changed network address, it is determined that the network address sent by the communication module has not been received within the second preset period.
  • the vehicle management server starts the third timer after receiving the valid network address at a certain moment, and if the changed network address is received before the second preset time period expires, the vehicle management server may execute step 306 And restart the third timer, if the third timer after restarting counts to the second preset time and no new valid network address or changed network address is received, it is determined that the vehicle management server can execute step 307 and restart the third timer.
  • the second preset period may be set by the vehicle management server and sent to the communication module, or may be set by the communication module and synchronized to the vehicle management server, or may be set by a person skilled in the art on the vehicle management server. and communication modules, which are not specifically limited.
  • Step 306 the vehicle management server updates the locally stored network address of the communication module to the received network address.
  • the vehicle management server can receive the valid network address or the changed network address sent by the communication module within a second preset period, it means that the vehicle management server and the communication module are within the current second preset period
  • the network status is good, and the network address is likely to be the current network address of the communication module.
  • the vehicle management server can use the received network address to update the network address of the locally stored communication module, for example, directly replace the locally stored network address with the received network address, or locally add the received network address
  • the original network address is marked with an invalid label, and the newly added network address is marked with an effective label, or the received network address is added locally and the received time stamp is marked.
  • the received network address may be different from the original network address (for example, the vehicle moves to another area), or may be the same as the original network address (for example, the vehicle is still in the original area), which is not limited.
  • the vehicle management server may also use the updated network address to return an update success response to the communication module.
  • each time the communication module sends a network address it can also wait for the vehicle management server to return an update success response. If the update success response returned by the vehicle management server has not been received within the preset waiting period (much shorter than the second preset period), it means that the network address transmission failed this time, and the communication module can resend the current effective network address. If the communication module receives an update success response in the retransmission operation within a preset number of times, it means that the last transmission failure is likely caused by some accidental factors, such as accidental packet loss in the last transmission.
  • the long connection interruption caused by these accidental factors can be recovered in time. If the update success response has not been received in the retransmission operation within the preset number of times, it indicates that the above-mentioned transmission failure is probably caused by an abnormal communication link, for example, the communication module is currently in an area with weak network coverage. In this case, the communication module can end the retransmission, and can wait for the next second preset period before sending the heartbeat data packet carrying the network address, so as to wait for the communication module to move to an area with better network coverage. Resume the long connection that was interrupted before, saving unnecessary communication consumption.
  • the communication link between the communication module and the vehicle management server may have some kind of failure that cannot be automatically recovered, such as the hardware of the communication module or the vehicle management server.
  • Communication module is damaged.
  • the communication module can also generate an alarm message and send it to the operation and maintenance node to repair the communication failure with the vehicle management server in time.
  • Step 307 the vehicle management server invalidates the network address of the communication module stored locally.
  • step 307 when the vehicle management server cannot receive the heartbeat data packet carrying the network address sent by the communication module within a second preset period, it indicates that the communication between the vehicle management server and the communication module in the current second preset period There is a problem with the link.
  • the problem may be caused by the failure of the hardware communication module in the vehicle management server or the communication module, or the poor network status.
  • the vehicle management server has a high probability of being unable to communicate with the communication module through the network during the current period. interactive data. In this case, the vehicle management server may directly invalidate the locally stored network address of the communication module, so as to temporarily interrupt the network communication mode between the vehicle management server and the communication module.
  • the vehicle management server After that, the vehicle management server enters the waiting stage, until the heartbeat data packet carrying the network address sent by the communication module is re-received at a certain time, the vehicle management server can re-validate the locally stored network address, and update the network address to the received network address. to restore the network communication mode between the vehicle management server and the communication module.
  • Step 308 the user terminal logs in to the vehicle management server.
  • Step 309 the user terminal sends a remote control command (ie, the first remote control command) to the vehicle management server.
  • the user terminal may first encrypt the remote control command using the user key, and then send the encrypted remote control command to the vehicle management server.
  • the vehicle management server By encrypting the remote control commands of the user terminal, it can not only reduce the risk of remote control commands being tampered with during remote transmission, but also enable the vehicle management server to accurately identify illegal remote control commands sent by illegal terminals, effectively improving the security of remote control vehicles. sex.
  • the interaction between the user terminal and the vehicle management server may be implemented through a target application (application, APP) on the user terminal.
  • the target APP may be an APP specially developed to implement a remote control function, or an APP used for other application functions in a user terminal, such as a smart vehicle.
  • the program of the remote control method in the present application can be preset in the target APP of the new version.
  • the target APP also has the function of remotely controlling the vehicle.
  • the following exemplarily introduces the interface operation process for sending remote control commands to the vehicle management server based on the target APP on the user terminal:
  • FIG. 4 exemplarily shows a schematic interface diagram of a user terminal provided by an embodiment of the present application.
  • multiple application programs such as calendar, Clock, call log, information, settings, gallery, one-key lock screen, video call, and target APP (ie, the car control APP 401 shown in (a) in Figure 4).
  • target APP ie, the car control APP 401 shown in (a) in Figure 4.
  • the user can click the target APP, then register and log in (if the user has registered a user account before, the user can log in directly).
  • the vehicle management server verifies that the user account is legal, enter the main page of the target APP. interface.
  • the user account may generally include a user name and a password, and the password may be a fixed password set by the user, or may be an SMS verification code, face information, iris information, or fingerprint information, etc., which are not limited.
  • FIG. 4 exemplarily shows a schematic diagram of the main interface in a target APP provided by an embodiment of the present application.
  • there are multiple function buttons in the main interface of the target APP such as adding Vehicle button, select vehicle button, delete vehicle button, etc.
  • the user can directly click the vehicle selection button on the main interface to enter the vehicle selection interface.
  • the user can click the add vehicle button on the main interface to switch to the vehicle adding interface, and fill in the vehicle information to be added on the interface (for example, the VIN of the vehicle), after binding the vehicle to be added and the user account through the vehicle management server, return to the main interface and click the vehicle selection button to enter the vehicle selection interface. At this time, the vehicle selection interface will display the newly added vehicle. Vehicle Information.
  • Fig. 4(c) exemplarily shows a schematic diagram of a vehicle selection interface in a target APP provided by an embodiment of the present application.
  • the vehicle selection interface may display relevant information about at least one vehicle.
  • Information relevant information may include vehicle pictures, brand or car series and other attribute information, and may also include performance information such as fuel quantity or service life.
  • the user can select the vehicle to be remotely controlled on the vehicle selection interface to enter the remote control interface.
  • FIG. 4 exemplarily shows a schematic diagram of a remote control interface in a target APP provided by an embodiment of the present application.
  • one or more remote control commands are displayed on the remote control interface. , for example, it may include commands for starting the air conditioner, flashing lights and whistles, commands for opening windows and ventilating, and commands for seat heating as shown in (d) in FIG. Other remote control commands such as air cleaning commands.
  • the user can click the desired remote control command on the remote control interface.
  • the target APP detects the click operation, the target APP can generate a remote control request according to the clicked remote control command and send it to the vehicle management server, and then switch to the command execution interface according to the response content returned by the vehicle management server.
  • FIG. 4 (e) and Figure 4 (f) exemplarily show schematic diagrams of command execution interfaces in the two target APPs provided by the embodiments of the present application.
  • the interface can display the text information "remote control is being executed, please wait patiently".
  • the target APP receives the successful execution response returned by the vehicle management server, the text message "remote control has been completed" can be displayed on the interface.
  • the target APP can not only display to the user whether the execution is completed, but also display the execution progress in the form of a circle and blackened. It should be understood that (e) in FIG. 4 and (f) in FIG. 4 are only two exemplary descriptions, as long as the solution that can prompt the user whether to execute the completed solution currently is within the protection scope of the present application, the present application I will not list them one by one.
  • step 310 the vehicle management server determines whether the network address of the locally stored communication module is valid, and if it is valid, executes step 311, and if not, executes step 313.
  • Step 311 the vehicle management server generates the first wake-up/remote control IP data packet according to the network address of the locally stored communication module, the wake-up command and the remote control command, and encrypts the first wake-up/remote control IP data using the newly negotiated on-board key. packet, get the encrypted first wakeup/remote control IP data packet.
  • the first wake-up/remote control IP data packet may include a wake-up IP data packet and a remote control IP data packet, and may also include a wake-up and remote control IP data packet.
  • the wake-up data packet refers to an IP data packet generated according to the network address of the communication module and the wake-up command and used to instruct the vehicle to wake up.
  • the remote control IP data packet refers to an IP data packet generated according to the network address of the communication module and the remote control command and used to instruct the component to start or perform the first operation.
  • the wake-up plus remote control IP data packet refers to an IP data packet generated according to the network address of the communication module, the wake-up command and the remote control command to instruct the component to start or perform the first operation after the vehicle wakes up.
  • the vehicle management server sends the wake-up command and the remote control command to the communication module in real time through the network.
  • the introduction of the short message through the short message center forwarding on the operator side can be avoided.
  • the short message forwarding delay can effectively improve the timeliness of waking up the vehicle and remotely controlling the vehicle.
  • the vehicle management server may first encrypt the IP data packets, and then send the encrypted IP data packets to the communication module.
  • the vehicle management server can use the vehicle key to encrypt information other than the network address of the communication module in the IP data packet to ensure that the encrypted IP data packet can still be sent to the communication module.
  • the remote control command can be encrypted without encrypting other information, so as to reduce the working pressure of the vehicle management server.
  • the IP data packet carrying the wake-up command (such as the wake-up IP data packet) can also be encrypted with the vehicle key before being sent, so as to improve the accuracy of the communication module in identifying the illegal wake-up command, save unnecessary power waste, and improve the efficiency of the vehicle. of endurance.
  • Step 312 the vehicle management server simultaneously sends the encrypted first wake-up/remote control IP data packet and the wake-up short message to the communication module.
  • the first wake-up/remote control IP data packet will be sent to the communication module in the network mode, and the wake-up short message will be forwarded to the communication module in the form of a short message via the short message center on the operator side.
  • vehicle management server may also only send the first wake-up/remote control IP data packet without sending the wake-up short message, which is not specifically limited.
  • Step 313 the vehicle management server sends a wake-up short message to the communication module.
  • step 313 when the network address of the communication module stored in the vehicle management server is invalid, it means that the network link between the vehicle management server and the communication module is temporarily interrupted, and the vehicle management server cannot currently instruct the vehicle to wake up through the network. . Therefore, the vehicle management server can send the wake-up short message without sending the first wake-up/remote control IP data packet. In this way, unnecessary communication overhead between the vehicle management server and the communication module can be saved, and the conventional wake-up short message can be saved. The form successfully wakes up the vehicle.
  • Step 314 the communication module determines whether the first received information is the encrypted first wakeup/remote control IP data packet or a wakeup short message:
  • step 315 is performed;
  • step 316 is executed.
  • the encrypted first wake-up/remote control IP data packet may only take about 500ms (milliseconds) to be successfully sent to the communication module, and It takes at least 15s (seconds) for the wake-up short message to be sent to the communication module. Therefore, the communication module will most likely receive the encrypted first wake-up/remote control IP data packet first. Of course, in the case of poor network status or other accidental events, the encrypted first wake-up/remote control IP data packet may not be sent to the communication module within 15 seconds. Therefore, the communication module may also Receive the wake-up short message first.
  • Step 315 the communication module decrypts the encrypted first wake-up/remote control IP data packet using the recently negotiated on-board key to obtain a wake-up command and a remote control command (that is, the second remote control command), and according to the wake-up command and the remote control Remote control is performed directly after commanding to wake up the vehicle.
  • the communication module in the case that the communication module first receives the encrypted first wake-up/remote control IP data packet, the communication module can directly discard the wake-up short message received subsequently without parsing the wake-up short message, to save computing resources.
  • Step 316 the communication module wakes up the vehicle according to the wake-up short message.
  • the communication module receives the wake-up short message first, it means that there is a problem in the network link between the communication module and the vehicle management server, and the problem may be caused by the connection between the vehicle management server and the communication module. It is caused by an error in updating the network address of the vehicle, or it may be caused by an error in the key negotiation between the vehicle management server and the communication module.
  • the network address of the communication module stored in the vehicle management server may be different from the real network address of the communication module, and the vehicle key stored in the vehicle management server and the vehicle key stored in the communication module may also be different.
  • the communication module can re-authenticate with the vehicle management server, that is, re-negotiate with the vehicle management server to update the vehicle key, and re-send the current network address to the vehicle management server, so that the vehicle management server can The same and accurate vehicle key and network address can be negotiated with the communication module.
  • the vehicle management server can send the remote control command to the communication module based on the accurate vehicle key and network address, and the communication module can also execute the remote control command based on the accurate vehicle key and network address to complete the remote control.
  • the communication module wakes up the vehicle, during the period from the re-authentication in the above-mentioned conventional process until the acquisition of the remote control command, if the communication module receives the encrypted first wake-up/remote control IP data packet again, It means that the current network link is back to normal again, and the communication module can no longer wait for the completion of the conventional authentication before starting the remote control, but can directly terminate the conventional process, and according to the first wakeup/remote control IP data packet from the encrypted
  • the remote control command parsed in the remote control command directly starts the remote control to complete the remote control as soon as possible.
  • the wake-up scheme in the above-mentioned embodiment 2 can be synchronized on the basis of improving the wake-up speed. Maintain the success rate of remote control, so as to take into account the dual needs of quickly waking up the vehicle and successfully waking up the vehicle, effectively reducing the delay of waking up the vehicle.
  • FIG. 5 exemplarily shows a schematic flowchart of the remote control method provided in Embodiment 3 of the present application, and the method is applicable to a vehicle management server, a communication module in a vehicle, and a user terminal, such as the vehicle management server 110 shown in FIG. 1 , the vehicle Communication module 121 and user terminal 130 in 120 .
  • the process includes the following steps:
  • Step 501 the communication module logs into the vehicle management server.
  • Step 502 the communication module negotiates with the vehicle management server according to a first preset period to obtain an updated vehicle key.
  • Step 503 the communication module sends the effective network address to the vehicle management server according to the second preset period, or may also send the changed network address to the vehicle management server in real time.
  • Step 504 the vehicle management server updates the locally stored network address of the communication module, specifically including: if the network address sent by the communication module is received within a second preset period, updating the locally stored network address to the received network address The address remains valid. If the network address sent by the communication module is not received within a second preset period, the locally stored network address is set to be invalid.
  • Step 505 the user terminal logs into the vehicle management server.
  • the specific operation of the user terminal logging in to the vehicle management server through the target APP may refer to the following steps:
  • the user can enter the registration information on the target APP of the mobile phone.
  • the registration information may include the user account and login password, and may also include other information, which is not limited in detail.
  • the user account may be the user's mobile phone number, may also be an identifier assigned to the user by the vehicle management server, or may be other information that can be used to uniquely identify the user.
  • the target APP of the user terminal In the second step, the target APP of the user terminal generates a registration request according to the registration information input by the user, and sends the registration request to the vehicle management server. Moreover, in order to ensure that the registration request is not tampered with during the sending process, the target APP may also encrypt the registration request first and then send the encrypted registration request to the vehicle management server. Alternatively, in order to improve registration efficiency, the target APP may also compress the registration request first, and then send the compressed registration request to the vehicle management server. Alternatively, the target APP can also compress the registration request first, then encrypt the compressed registration request, and finally send the encrypted compressed registration request to the vehicle management server, so as to improve the security of registration while rapidly transmitting the registration request.
  • the vehicle management server In the third step, after receiving the registration request, the vehicle management server first parses the registration request to obtain the user account and login password, and then creates a new folder locally.
  • the folder can be named after the user's user account, or can be marked with other unique identifiers for the user.
  • the vehicle management server may store the user account and login password carried in the registration request in this folder.
  • the vehicle management server can also query whether the folder corresponding to the user already exists in the vehicle management server. If there is, it means that the user has previously registered the user account. Therefore, the vehicle management server can directly return a registration failure response message to the target APP.
  • the vehicle management server can create a folder and perform a corresponding storage operation. After the storage is completed, the vehicle management server determines that the user account is successfully registered, so that the vehicle management server can send a response message of successful registration to the target APP.
  • the target APP in the user equipment displays a response message of successful registration to the user.
  • the user can directly switch from the response interface of successful registration to the login interface, or close the target APP and reopen the target APP to directly enter the login interface.
  • the user fills in the user account and login password on the login interface, and clicks the login button to trigger the target APP to generate a login request and send it to the vehicle management server.
  • the vehicle management server finds the corresponding folder according to the user account carried in the login request, and verifies whether the login password input by the user is the login password corresponding to the user account.
  • the target APP in the target APP returns the main interface information, so that the target APP loads the main interface information and switches to the main interface. If not, the verification fails, and the vehicle management server can return the login failure response message to the target APP in the target terminal, so that The target APP displays the login failure to the user.
  • Step 506 The vehicle management server sends the locally stored network address of the communication module to the user terminal according to a third preset period.
  • a fourth timer may also be maintained in the vehicle management server, and the timing duration of the fourth timer is a third preset period.
  • the vehicle management server may first feed back the locally stored network address of the communication module to the user terminal, and start a fourth timer. Whenever the fourth timer reaches the corresponding time period, the vehicle management server may re-send the locally currently stored network address of the communication module to the user terminal, and restart the fourth timer.
  • the vehicle management server when sending the network address: if the locally stored network address is valid, the vehicle management server may send the specific content of the network address to the user terminal; if the locally stored network address is invalid, the vehicle management server may send to the user terminal
  • the failure indication information does not send the specific content of the network address, or the fourth timer can be restarted directly without performing the sending operation, until a certain fourth timer reaches the timing time and the network address is also valid, and then restart.
  • Send the specific content of the network address if the vehicle management server only periodically synchronizes the valid network address to the user terminal, or simultaneously periodically synchronizes the valid network address and invalid indication information to the user terminal, the user terminal can be notified in time when the network link of the communication module is good. The latest network address of the communication module is obtained, and the user terminal can also know the current abnormal situation of the network link when the communication module network is not good, so as to provide a decision basis for the user terminal to send the network address through the network in the future.
  • the vehicle management server may further perform the following step 507 after the user terminal successfully logs in to the vehicle management server:
  • Step 507 The vehicle management server sends the locally stored changed network address of the communication module to the user terminal in real time.
  • the vehicle management server may also monitor the network address stored by itself, and once it finds that the network address stored by itself changes, it will send the changed network address to the user terminal in real time.
  • the user terminal may also use the changed network address to update the locally stored network address of the communication module. In this way, even if the network address stored locally by the vehicle management server changes within a time interval of a third preset period, the user terminal can obtain the latest network address after the change in time, which improves the accuracy of the network address stored locally by the user terminal. sex.
  • the vehicle management server may restart the fourth timer based on the latest sent information. For example, the vehicle management server starts a fourth timer after sending the locally stored network address at a certain time. If the changed network address is sent in real time before the third preset time period has elapsed, the vehicle management server may restart the timer again. The fourth timer is restarted to avoid repeatedly sending the same network address in a short period of time, thereby effectively saving the communication loss of the vehicle management server.
  • the vehicle management server may also maintain the third timer but not the fourth timer.
  • the vehicle management server After logging in to the vehicle management server, every time the vehicle management server receives a valid network address or changed network address sent by the communication module, it can update the locally stored network address and receive the valid network address or changed network address at the same time. It is sent to the user terminal to synchronize the operation of synchronizing the network address of the communication module with the vehicle management server at the same time.
  • the network address of the communication module can be exchanged between the vehicle management server and the user terminal in the form of plain text, or the network address of the communication module can be exchanged in the form of cipher text after encryption with the user key, which is not specifically limited.
  • Step 508 the user terminal updates the locally stored network address of the communication module.
  • step 508 when the vehicle management server sends the network address or invalid indication information to the user terminal, if the user terminal receives the network address, the vehicle management server can directly update the locally stored network address of the communication module For the received network address, if the user terminal receives invalid indication information, the vehicle management server may invalidate the locally stored network address setting of the communication module. In the case that the vehicle management server sends the network address without sending the invalid indication information to the user terminal, the user terminal may also maintain a fifth timer, and the timing duration of the fifth timer is also the third preset period. To a network address sent by the vehicle management server (which may be an effective network address sent periodically, or a changed network address sent in real time), the fifth timer can be restarted.
  • the vehicle management server which may be an effective network address sent periodically, or a changed network address sent in real time
  • the locally stored network address may be updated to the newly received network address.
  • the locally stored network address setting may be invalidated.
  • Step 509 when there is a remote control requirement, the user terminal generates a second wakeup/remote control IP data packet according to the network address of the locally stored communication module, the wakeup command and the remote control command, and uses the vehicle interactive key to encrypt the second wakeup/remote control.
  • the remote control IP data packet is obtained, and the encrypted second wake-up/remote control IP data packet is obtained.
  • Step 510 the user terminal sends the encrypted second wake-up/remote control IP data packet to the communication module.
  • the data interaction between the communication module and the user terminal is completed by encrypting the vehicle interaction key, which can not only ensure the security of the data interaction between the communication module and the user terminal, but also make the communication as much as possible.
  • the module accurately identifies the control commands forged by the illegal user terminal and improves the security of the remote control vehicle.
  • the target APP on the user terminal when the target APP on the user terminal detects that the user selects a certain remote control command, the target APP can first query whether the network address of the locally stored communication module is valid. If it is valid, it means that the communication module is currently in an area with a good network, and the vehicle can be woken up and controlled faster through the network. Therefore, the target APP on the user terminal can put the network address in the header of the IP data packet. Put the wake-up command and the selected remote control command in the body of one IP data packet or in the body of two IP data packets respectively, and generate a second wake-up/remote control IP data packet to be sent to the communication through the network module.
  • the communication module may be in an area with poor network, and it is difficult for the user terminal to wake up and control the vehicle through the network during the current period. Therefore, the target APP on the user terminal may not generate a second wake-up/remote control IP data packet , but directly complete the wake-up and remote control of the vehicle according to the conventional process.
  • the user terminal may also authorize the use permission of the short message APP to the target APP in advance.
  • the target APP on the user terminal can also call the authority of the SMS APP to directly send the wake-up short message to the user vehicle, for example, simultaneously send the second wake-up/remote control IP data packet and the wake-up short message. sent to the communication module.
  • this example can simultaneously instruct the vehicle to wake up through the user terminal in the form of network and text messages, not only can quickly wake up the vehicle while taking into account the success probability of waking up the vehicle, but also complete the entire control logic of the communication module through the user terminal itself, and The vehicle management server is no longer required for forwarding, and the timeliness of remote control is further improved under the condition of reducing the communication loss of the user terminal.
  • the user terminal may also perform the following steps 511 to 513:
  • Step 511 while sending the encrypted second wake-up/remote control IP data packet, the user terminal sends a remote control command (ie, the first remote control command) to the vehicle management server.
  • a remote control command ie, the first remote control command
  • Step 512 the vehicle management server generates the first wake-up/remote control IP data packet according to the network address of the locally stored communication module, the wake-up command and the remote control command, and encrypts the first wake-up/remote control IP data using the newly negotiated on-board key. packet, get the encrypted first wakeup/remote control IP data packet.
  • Step 513 the vehicle management server sends the encrypted first wake-up/remote control IP data packet and/or wake-up short message to the communication module.
  • the vehicle management server may perform the sending operation in any of the following ways:
  • the vehicle management server sends the first wake-up/remote control IP data packet but does not send the wake-up short message.
  • the abnormal network link between the user terminal and the communication module causes the second wake-up/remote control IP data packet sent by the user terminal to fail to be successfully sent to the communication module, as long as the network link between the vehicle management server and the communication module is If it is normal, the wake-up command and the remote control command can also be quickly sent to the communication module in the network form of the first wake-up/remote control IP data packet. That is, the vehicle management server and the user terminal respectively send the wake-up/remote control IP data packets to the communication module, so as to ensure that the communication module quickly receives the wake-up command and the remote control command in the form of a network.
  • the vehicle management server sends the wake-up short message but does not send the first wake-up/remote control IP data packet.
  • This method can be applied to the scenario where the target APP in the user terminal does not have the authority to call the short message APP, so that the user terminal fails to send the wake-up short message.
  • the vehicle management server sends a wake-up command in the form of a short message, and when the network of the communication module is not good, the wake-up operation can be performed as far as possible through the normal short message process to improve the success probability of waking up the vehicle.
  • the vehicle management server sends a wake-up short message in the form of a short message
  • the user terminal sends a wake-up command and a remote control command in the network mode.
  • the work pressure of the server and the user terminal saves the processing resources of the vehicle management server and the user terminal.
  • the vehicle management server sends the first wake-up/remote control IP data packet and the wake-up short message at the same time.
  • this method sends wake-up/remote control IP data packets through the vehicle management server and the user terminal respectively, which can improve the probability that the communication module network receives the wake-up command and the remote control command.
  • this method sends a wake-up short message through the vehicle management server as a supplementary mechanism in addition to the network sending form, which can prevent the communication module from receiving the wake-up/remote control IP data packets from the vehicle management server and the user terminal due to the poor network of the communication module. In this case, switch to the normal SMS process to wake up the vehicle as soon as possible, which can reduce the delay of remote control and ensure the success rate of waking up the vehicle.
  • the wake-up and control operations can be performed through multiple channels. , to increase the success probability of waking up and controlling the vehicle.
  • Step 514 the communication module determines whether the first received information is an encrypted wakeup/remote control IP data packet or a wakeup short message:
  • step 515 is performed;
  • step 516 is performed;
  • step 517 is executed.
  • Step 515 the communication module decrypts the encrypted second wake-up/remote control IP data packet using the vehicle interactive key to obtain the wake-up command and the remote control command (that is, the third remote control command), and according to the wake-up command and the remote control command Execute remote control directly after waking up the vehicle.
  • the communication module firstly receives the encrypted second wake-up/remote control IP data packet, indicating that the transmission effect of the network link between the communication module and the user terminal is better than that of other links or short messages.
  • the communication module determines that the remote control execution is completed, it can directly return the remote control result to the user terminal through the network link with the user terminal, and no longer needs to forward it through the vehicle management server, so as to send the remote control result to the user terminal more quickly.
  • the user communicates the remote control result, improving the user's experience of performing the remote control using the mobile phone.
  • Step 516 the communication module decrypts the encrypted first wake-up/remote control IP data packet using the vehicle key obtained from the latest negotiation, and obtains the wake-up command and the remote control command (that is, the second remote control command), according to the wake-up command and the remote control.
  • Remote control is performed directly after commanding to wake up the vehicle.
  • the communication module firstly receives the encrypted first wake-up/remote control IP data packet, indicating that the transmission effect of the network link between the communication module and the vehicle management server is better than that of other links or short messages. Even better, there may be a problem with the network link between the communication module and the user terminal. Therefore, after determining that the remote control execution is completed, the communication module can return the remote control result to the vehicle management server through the network link with the vehicle management server, so as to be forwarded to the user terminal through the vehicle management server.
  • the communication module in the case that the communication module receives any encrypted wake-up/remote control IP data packet first, the communication module can directly discard the encrypted wake-up/remote control IP data packet received subsequently Or wake up short messages to save computing resources.
  • Step 517 the communication module wakes up the vehicle according to the wake-up short message.
  • step 517 during the period from waking up the vehicle according to the conventional process until the communication module obtains the remote vehicle command, if the communication module receives the encrypted first wake-up/remote control IP data packet or the encrypted second wake-up /Remote control IP data packets, which means that the current network link is back to normal, the communication module can no longer wait for the completion of conventional authentication to start remote control, but can directly terminate the conventional process, and according to the encrypted first The wake-up/remote control IP data packet or the remote control command parsed in the encrypted second wake-up/remote control IP data packet directly starts the remote control, so as to reduce the delay of the remote control. Of course, if another encrypted wake-up/remote control IP data packet is subsequently received, it can be directly discarded.
  • the vehicle management server periodically (or periodically and in real time) synchronizes the network address of the communication module with the user terminal, so that the user terminal can directly obtain the network address of the communication module locally when there is a remote control requirement, so as to realize
  • the direct wake-up and control of the vehicle by the user terminal not only helps to reduce the delay introduced by the indirect forwarding of the wake-up command and the remote control command via the vehicle management server, effectively improves the efficiency of remote control, but also decentralizes the vehicle management server as much as possible. work pressure.
  • the communication module can be improved by various sending methods.
  • the probability of receiving a wake-up command increases the likelihood of successfully waking up the vehicle.
  • the wake-up command is sent in the form of a network through the user terminal and the vehicle management server, and the communication module can also quickly receive the wake-up command and the remote control command in the form of the network as much as possible, reducing the delay of remote control of the vehicle.
  • an information maintenance module and a remote control module may be included: the information maintenance module is used to maintain remote Some information that will be used in control, such as network addresses and keys for data interaction with other devices, etc.; and the remote control module is used to use the information maintained by the information maintenance module to complete the remote control process with other devices.
  • the information maintenance module and the remote control module can be located in different threads, and they do not interfere with each other, so as to maintain the normal remote control process, update the information required for remote control in real time, and take into account the accuracy and timeliness of remote control. sex.
  • FIG. 6 exemplarily shows a schematic diagram of the internal architecture of a vehicle management server provided by an embodiment of the present application.
  • the vehicle management server 600 may include a server information maintenance module 610 and a server remote control module 620.
  • the module 610 is used to maintain the network address of the communication module stored locally in the vehicle management server 600 and the vehicle key negotiated recently with the communication module
  • the server remote control module 620 is used to maintain the network address and the network address of the communication module maintained in the module 610 according to the server information.
  • the vehicle key initiates remote control to the communication module.
  • the server information maintenance module 610 determines that the communication module is logged into the vehicle management server, the following four operations can be performed in parallel:
  • Operation 1 start to run the third timer, if the encrypted network address sent by the communication module (such as carrying an encrypted effective network address or an encrypted network address) is received before the third timer expires (that is, before the second preset time period is counted) The heartbeat data packet of the changed network address), then the network address of the communication module is obtained by decrypting the encrypted network address using the latest negotiated on-board key, so as to update the network address of the locally stored communication module, and restart the third timer . If the encrypted network address sent by the communication module is not received before the third timer expires, the locally stored network address of the communication module is set to an invalid state, and the third timer is restarted.
  • the encrypted network address sent by the communication module such as carrying an encrypted effective network address or an encrypted network address
  • Operation 2 If a key update request sent by the communication module is received, a new vehicle key is set for the communication module and returned to the communication module.
  • Operation 3 Start to run the fourth timer. Whenever the fourth timer times out (ie, the timer reaches the third preset duration), the network address of the locally stored communication module is sent to the user terminal, and the fourth timer is restarted.
  • the network address of the locally stored communication module is monitored in real time, and once a change in the network address is detected, the changed network address is sent to the user terminal, and the fourth timer is restarted.
  • operation 1 means that the vehicle management server receives the network address of the communication module according to the second preset duration or in real time alone
  • operation 3 and operation 4 mean that the vehicle management server only reports to the user according to the third preset duration or real-time.
  • the terminal sends the network address of the communication module
  • the second preset duration and the third preset duration may be different durations.
  • the second preset duration and the third preset duration may also be the same duration.
  • the above-mentioned operation 1, operation 3 and operation 4 can also be replaced with the following operations:
  • Operation 5 Start to run the third timer, if the encrypted network address sent by the communication module is received before the third timer expires (that is, before the second preset time period), by using the newly negotiated on-board key pair After the encrypted network address is decrypted to obtain the network address of the communication module, the obtained network address is sent to the user terminal, the locally stored network address of the communication module is updated, and the third timer is restarted. If the encrypted network address sent by the vehicle management server is not received before the third timer expires, the network address of the locally stored communication module is set to an invalid state, the third timer is restarted, and the invalidation indication information is sent to the user terminal. Instructs the user terminal to invalidate the locally stored network address, or does not send any information to wait for the user terminal to invalidate the locally stored network address on its own initiative.
  • the server remote control module 620 may perform the following operations:
  • the wake-up plus remote control IP data packet is generated according to the network address, the wake-up command and the remote control command, and the wake-up plus remote control IP data packet is encrypted and sent to the communication module together with the wake-up short message. If the network address of the communication module is invalid, a wake-up short message is sent to the communication module.
  • FIG. 7 exemplarily shows a schematic diagram of the internal architecture of a user terminal provided by an embodiment of the present application.
  • the user terminal 700 may include a user terminal information maintenance module 710 and a user terminal remote control module 720.
  • the user terminal information The maintenance module 710 is used to maintain the network address of the communication module locally stored in the user terminal 700
  • the user terminal remote control module 720 is used to initiate remote control to the communication module according to the network address of the communication module maintained by the user terminal information maintenance module 710 .
  • the user terminal information maintenance module 710 can perform the following operations after determining that the user terminal logs into the vehicle management server:
  • the encrypted network address sent by the vehicle management server (such as an encrypted effective network address or encrypted change) is received.
  • the network address of the communication module is obtained by decrypting the encrypted network address by using the user key, thereby updating the network address of the locally stored communication module and restarting the fifth timer. If the encrypted network address sent by the vehicle management server is not received before the fifth timer expires, or the invalidation indication information sent by the vehicle management server is received, the network address of the locally stored communication module is set to an invalid state, and the first Five timers.
  • the user terminal remote control module 720 can perform the following operations:
  • the network address of the locally stored communication module maintained by the user terminal information maintenance module 710 If the network address of the communication module is valid, generate a second wake-up/remote control IP data packet according to the network address, the wake-up command and/or the remote control command, and encrypt the second wake-up/remote control IP data packet using the vehicle interactive key and then sent to the communication module.
  • remote control commands can also be sent to the vehicle management server.
  • the wake-up short message can also be sent to the communication module at the same time.
  • FIG. 8 exemplarily shows a schematic diagram of the internal architecture of a communication module provided by an embodiment of the present application.
  • the communication module 800 may include a communication module information maintenance module 810 and a communication module remote control module 820.
  • the communication module information The maintenance module 810 is used to negotiate the latest vehicle key with the vehicle management server, and report its own network address to the vehicle management server.
  • the communication module remote control module 820 is used to wake up the vehicle according to the vehicle key maintained by the communication module information maintenance module 810. Execute remote control directly.
  • the following three operations can be performed in parallel:
  • Operation 1 Start running the first timer, and send a key update request to the vehicle management server whenever the first timer times out (that is, when the time reaches the first preset duration), and save the vehicle key returned by the vehicle management server , restart the first timer.
  • Operation 2 Start running the second timer, and every time the second timer times out (that is, when the time reaches the second preset duration), encrypt your current network address with the newly negotiated on-board key and send it to the vehicle management server , and restarts the second timer.
  • Operation 3 Monitor your own network address in real time. Once the monitored network address changes, encrypt the changed network address with the latest negotiated vehicle key and send it to the vehicle management server, and restart the second timer.
  • the communication module remote control module 820 may perform the following operations:
  • the first received information is an encrypted wake-up/remote control IP data packet: if it is the encrypted first wake-up/remote control IP data packet sent by the vehicle management server, use the information maintained by the communication module information maintenance module 810 The latest on-board key decrypts the encrypted first wake-up/remote control IP data packet to obtain the wake-up command and remote control command; if it is the encrypted second wake-up/remote control IP data packet sent by the user terminal, use the The interactive key decrypts the encrypted second wakeup/remote control IP data packet to obtain a wakeup command and a remote control command.
  • the vehicle management server After that, wake up each electronic control unit in the vehicle according to the wake-up command, and then send the remote control command to the corresponding electronic control unit to instruct the corresponding electronic control unit to perform remote control. And, during this period, the subsequently received wake-up short message or another encrypted wake-up/remote control IP data packet can also be discarded. If the first received information is a wake-up short message, wake up and remotely control the vehicle according to the normal process, that is, first wake up each electronic control unit in the vehicle according to the wake-up short message, and then re-connect to the vehicle management server to obtain accurate information.
  • the information management operation and the control execution operation of the remote control service can be decoupled, and the probability of mutual interference between the two operations can be effectively reduced , improve the centralized control of the entire remote control process.
  • the remote control solutions in the above embodiments of the present application can comprehensively reduce the time delay of remote control from multiple angles.
  • a specific experimental data is used below to illustrate the prominence of the remote control solution in the embodiment of the present application in reducing the remote control delay compared with the two commonly used remote control solutions in the industry. It should be noted that, in the following, only the time consumed by the data transfer process is taken as the delay, and the execution time of executing the wake-up operation and executing the remote control operation is not considered.
  • Figure 9 exemplarily shows a schematic diagram of time delay analysis of a remote control scheme commonly used in the industry. As shown in Figure 9, the scheme mainly completes remote control through the following steps:
  • Step 901 the user terminal sends a remote control command to the vehicle management server, which takes about 500ms;
  • Step 902 the vehicle management server sends a wake-up short message to the communication module in the vehicle, it takes about 15s for the short message to transmit the wake-up short message, and the communication module takes about 4s to send a wake-up command to the in-vehicle components including the vehicle-mounted gateway when waking up the vehicle;
  • Step 903 after the communication module determines that the vehicle is successfully woken up, it sends a wake-up success response to the vehicle management server, and initiates an access procedure to the vehicle management server. It takes about 3000ms to send the network address to the vehicle management server;
  • Step 904 the vehicle management server sends a remote control command to the communication module in an encrypted form according to the vehicle key negotiated in Step 903 and the network address of the received communication module, which takes about 500ms;
  • Step 905 After the communication module determines that the remote control command is executed, it returns the remote control result to the vehicle management server, which takes about 500ms;
  • Step 906 the vehicle management server forwards the remote execution result to the user terminal, which takes about 500ms.
  • the short message method can make the communication module receive the wake-up short message with a high probability, independent of the network status of the communication module, so the success rate of wake-up is relatively high.
  • FIG. 10 exemplarily shows a schematic diagram of time delay analysis of another remote control scheme commonly used in the industry.
  • the communication module After logging in to the vehicle management server, the communication module will periodically synchronize its own network address to the vehicle management server, So that the vehicle management server can directly use the network to wake up the vehicle.
  • this solution mainly completes remote control through the following steps:
  • Step 1001 the user terminal sends a remote control command to the vehicle management server, which takes about 500ms;
  • Step 1002 the vehicle management server first sends a wake-up data packet to the communication module through the network according to the latest network address periodically synchronized by the communication module, and waits for a successful wake-up response of the communication module. If the wake-up success response has not been received within 2s, the wake-up short message is sent to the communication module in the form of a short message, and the wake-up successful response of the communication module is waited for. During this process, if the wake-up data packet can be successfully sent to the communication module, it will take about 500ms to wake up the vehicle, and the communication module takes about 4s to send the wake-up command to the in-vehicle components including the vehicle gateway when waking up the vehicle. That is about 4.5s in total.
  • the wake-up packet cannot be successfully sent to the communication module, it will take about 21s (ie, 2s after sending the wake-up packet, 15s for sending the wake-up short message, and 4s for the communication module to send the wake-up command to the in-vehicle components) Start waking up the vehicle. That is, a duration between 4.5s and 21s is required.
  • Step 1003 after the communication module determines that the vehicle wakes up successfully, it sends a wake-up success response to the vehicle management server, exchanges the newly negotiated vehicle key with the vehicle management server, and sends its own network address to the vehicle management server, which takes about 3000ms;
  • Step 1004 the vehicle management server sends a remote control command to the communication module in encrypted form according to the vehicle key negotiated in step 1003 and the network address of the communication module received, which takes about 500ms;
  • Step 1005 After the communication module determines that the remote control command is executed, it returns the remote control result to the vehicle management server, which takes about 500ms;
  • Step 1006 the vehicle management server forwards the remote execution result to the user terminal, which takes about 500ms.
  • the solution needs to wait for 2s and then switch to the wake-up short message to re-execute the wake-up, that is to say, in the worst case, it will take about 26s ( 500ms+2s+15s+4s+3000ms+500ms+500ms+500ms) time. It can be seen that the existing solution shown in FIG. 10 actually achieves the purpose of reducing the wake-up delay on the condition of sacrificing the wake-up success rate, and cannot simultaneously reduce the wake-up delay and improve the wake-up success rate.
  • FIG. 11 exemplarily shows a schematic diagram of time delay analysis of a remote control scheme in the second embodiment of the present application.
  • the communication module after logging in to the vehicle management server, the communication module not only periodically (or both periodically and in real time) reports to the vehicle management
  • the server sends its own network address, and also periodically negotiates the latest vehicle key with the vehicle management server, so that the vehicle management server can directly use the latest network address and vehicle key to wake up the vehicle in the form of a network and perform remote control directly.
  • this solution mainly completes remote control through the following steps:
  • Step 1101 the user terminal sends a remote control command to the vehicle management server, which takes about 500ms;
  • Step 1102 the vehicle management server sends an encrypted wake-up command and a remote control command to the communication module through the network according to the latest network address periodically synchronized by the communication module and the vehicle key negotiated periodically, and also sends an encrypted wake-up command and a remote control command to the communication module through a short message at the same time.
  • the module sends a wake-up short message.
  • the wake-up command and remote control command can be successfully sent to the communication module in the form of network, it will take about 500ms to start to wake up and control the vehicle remotely, and the communication module will send the vehicle including the vehicle gateway to the vehicle when waking up the vehicle. It takes about 4s for the internal components to send the wake-up command, which is about 4.5s in total.
  • the wake-up command and remote control command cannot be successfully sent to the communication module in the form of network, it can use the wake-up short message sent at the same time to directly switch to the short message form to wake up the vehicle, that is, the short message transmits the 15s required for the wake-up short message and the communication module to the vehicle interior. It takes 4s for the device to send the wake-up command, for a total of 19s. That is, this method requires a duration between 4.5s and 19s.
  • the related information is sent in the network mode and the short message mode at the same time, instead of switching to the short message sending after the network transmission is unsuccessful, so it can save the 2s required for intermediate waiting in the case of the network mode being unsuccessful.
  • the communication module directly executes the remote control after waking up the vehicle, and there is no need to negotiate the vehicle key with the vehicle management server between these two operations.
  • network address, and there is no need to send remote control commands so this solution can also save 3000ms required to negotiate the vehicle key and network address and 500ms required to send remote control commands.
  • Step 1103 After the communication module determines that the remote control command is executed, it returns the remote control result to the vehicle management server, which takes about 500ms;
  • Step 1104 the vehicle management server forwards the remote control result to the user terminal, which takes about 500ms.
  • the shortest time is only about 6s (500ms+4.5ms+500ms+500ms). That is, after the user clicks the remote control command on the mobile phone, the remote control result can be obtained after waiting for the shortest 6s. It can be seen that the shortest delay required by this scheme is 6s, which is optimized by about 75% (ie (24-6)/24) compared to the fixed 24s delay in Figure 9, and compared with the shortest delay in Figure 10.
  • the scheme also synchronizes the network address of the communication module to the vehicle management server periodically, and synchronizes the changed network address of the communication module in real time, which further increases the ability to control the vehicle with the shortest delay. probability of success. It can be seen that the solution shown in FIG. 11 can simultaneously reduce the wake-up delay and improve the wake-up success rate.
  • FIG. 12 exemplarily shows a schematic diagram of time delay analysis of a remote control solution in the third embodiment of the present application.
  • the vehicle management server will periodically (or periodically and in real time) Send the network address of the communication module to the user terminal, so that the user terminal can directly use the latest network address to wake up the vehicle in the form of a network and perform remote control directly.
  • this solution mainly completes remote control through the following steps:
  • Step 1201 when there is a remote control requirement, the user terminal directly sends an encrypted wake-up command and a remote control command to the communication module through the network according to the network address of the communication module newly sent by the vehicle management server. It takes about 500ms, while the communication module It takes about 4s to send a wake-up command to the in-car components, for a total of 4.5s. Moreover, the user terminal will also send a remote control command to the vehicle management server at the same time, which takes about 500ms.
  • the communication module directly executes the remote control after waking up the vehicle, instead of the indirect wake-up and remote control of the vehicle management server, so it can save the cost of using the vehicle management server.
  • the delay introduced by the transfer of data In the case that the user terminal cannot successfully send the wake-up command and the remote control command in the form of a network, the user terminal indirectly wakes up and remotely controls the vehicle according to the scheme in FIG. Simultaneously delayed.
  • Step 1202 After the communication module determines that the remote control command is executed, it directly returns the remote control result to the user terminal, which takes about 500ms.
  • the shortest time required is about 5 seconds (4.5ms+500ms) except for the execution time necessary to execute wake-up and execute remote control.
  • the shortest delay required for this scheme is lower than that in the scheme illustrated in Figure 11.
  • the scheme can directly switch to wake up and remote control the vehicle through the remote control command sent to the vehicle management server at the same time, that is, in the worst case, only would have the same delay as the scheme illustrated in Figure 11.
  • the network address changed by the communication module is synchronized in real time, which further increases the shortest delay.
  • the probability of success in controlling the vehicle It can be seen that the solution shown in FIG. 12 can also take into account the unity of reducing the wake-up delay and improving the wake-up success rate.
  • the remote control solution provided by the above-mentioned embodiments of the present application can greatly reduce the remote control time delay and ensure the original control as much as possible. There are even higher wake-up success rates achieved.
  • each network element in the above-mentioned implementation includes corresponding hardware structures and/or software modules for executing each function.
  • the present invention can be implemented in hardware or a combination of hardware and computer software in conjunction with the units and algorithm steps of each example described in the embodiments disclosed herein. Whether a function is performed by hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Skilled artisans may implement the described functionality using different methods for each particular application, but such implementations should not be considered beyond the scope of the present invention.
  • FIG. 13 exemplarily shows a schematic structural diagram of a remote control device provided by an embodiment of the present application.
  • the device may be a communication module in a vehicle, a vehicle management server, or a user terminal, or it may be It is a chip or circuit, such as a chip or circuit that can be set in a communication module, another example, a chip or circuit that can be set in a vehicle management server, or a chip or circuit that can be set in a user terminal.
  • the communication module may be a component with communication capability in the vehicle, and an example may be the communication module described in any one of FIG. 2 , FIG. 3 or FIG.
  • the vehicle management server may be a device with management capability, for example Typically, it can be a vehicle management server as shown in any one of FIG. 2 , FIG. 3 or FIG. 5 , and the user terminal can be a device with data interaction capability, exemplarily, as shown in FIG. 2 , FIG. 3 or FIG. 5 any one of the user terminals.
  • the remote control device 1301 may include a processor 1302, a memory 1304 and a transceiver 1303, and may further include a bus system, wherein the processor 1302, the memory 1304 and the transceiver 1303 may be connected through the bus system.
  • the above-mentioned processor 1302 may be a chip.
  • the processor 1302 may be a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), a system on chip (SoC), or a system on chip (SoC). It can be a central processing unit (CPU), a network processor (NP), a digital signal processing circuit (DSP), or a microcontroller (microcontroller). unit, MCU), it can also be a programmable logic device (PLD) or other integrated chips.
  • FPGA field programmable gate array
  • ASIC application specific integrated circuit
  • SoC system on chip
  • SoC system on chip
  • SoC system on chip
  • MCU microcontroller
  • MCU programmable logic device
  • PLD programmable logic device
  • each step of the above-mentioned method can be completed by an integrated logic circuit of hardware in the processor 1302 or an instruction in the form of software.
  • the steps of the methods disclosed in conjunction with the embodiments of the present application may be directly embodied as being executed by a hardware processor, or executed by a combination of hardware and software modules in the processor 1302 .
  • the software module may be located in random access memory, flash memory, read-only memory, programmable read-only memory or electrically erasable programmable memory, registers and other storage media mature in the art.
  • the storage medium is located in the memory 1304, and the processor 1302 reads the information in the memory 1304, and completes the steps of the above method in combination with its hardware.
  • processor 1302 in this embodiment of the present application may be an integrated circuit chip, which has a signal processing capability.
  • each step of the above method embodiments may be completed by a hardware integrated logic circuit in a processor or an instruction in the form of software.
  • the aforementioned processors may be general purpose processors, digital signal processors (DSPs), application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components .
  • DSPs digital signal processors
  • ASICs application specific integrated circuits
  • FPGAs field programmable gate arrays
  • the methods, steps, and logic block diagrams disclosed in the embodiments of this application can be implemented or executed.
  • a general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
  • the steps of the method disclosed in conjunction with the embodiments of the present application may be directly embodied as executed by a hardware decoding processor, or executed by a combination of hardware and software modules in the decoding processor.
  • the software modules may be located in random access memory, flash memory, read-only memory, programmable read-only memory or electrically erasable programmable memory, registers and other storage media mature in the art.
  • the storage medium is located in the memory, and the processor reads the information in the memory, and completes the steps of the above method in combination with its hardware.
  • the memory 1304 in this embodiment of the present application may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memory.
  • the non-volatile memory may be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically programmable Erase programmable read-only memory (electrically EPROM, EEPROM) or flash memory.
  • Volatile memory may be random access memory (RAM), which acts as an external cache.
  • RAM random access memory
  • DRAM dynamic random access memory
  • SDRAM synchronous DRAM
  • SDRAM double data rate synchronous dynamic random access memory
  • ESDRAM enhanced synchronous dynamic random access memory
  • SLDRAM synchronous link dynamic random access memory
  • direct rambus RAM direct rambus RAM
  • the remote control device 1301 corresponds to a communication module in a vehicle
  • the remote control device may include a processor 1302 , a transceiver 1303 and a memory 1304 .
  • the memory 1304 is used for storing instructions
  • the processor 1302 is used for executing the instructions stored in the memory 1304 to implement the communication module in the method corresponding to any one or any of the items shown in FIG. 2 , FIG. 3 or FIG. 5 above , or execute the method executed by the communication module in any of the embodiments shown in the first embodiment to the third embodiment.
  • the transceiver 1303 may receive a wake-up command and a remote control command when the communication module is in a sleep state supporting the remote wake-up function, and the processor 1302 may, according to the wake-up command, The communication module is brought into an awake state, and the transceiver 1303 may send a control message to a component in the vehicle according to the remote control command, the control message being used to activate the component or instruct the component to perform the operation indicated by the remote control command.
  • the remote control device 1301 corresponds to a vehicle management server
  • the remote control device may include a processor 1302 , a transceiver 1303 and a memory 1304 .
  • the memory 1304 is used for storing instructions
  • the processor 1302 is used for executing the instructions stored in the memory 1304 to implement vehicle management in any one or any of the corresponding methods shown in FIG. 2 , FIG. 3 or FIG. 5 .
  • the remote control device 1301 is a vehicle management server, and when the first embodiment is implemented: the transceiver 1303 can receive a first remote control command from the user terminal under the control of the processor 1302, and send a wake-up call to the vehicle based on the first remote control command command to bring the communication module in the vehicle into an awake state, and, when the communication module is in a sleep state supporting the remote wake-up function, send a second remote control command to the communication module in the vehicle based on the first remote control command, the first remote control command
  • Two remote control commands are used to instruct components in the vehicle to activate or perform a first operation.
  • the remote control device 1301 refers to the descriptions of the foregoing methods or other embodiments for explanations, detailed descriptions and other steps, which are not described here. Do repeat.
  • the remote control apparatus 1301 When the remote control apparatus 1301 corresponds to a user terminal, the remote control apparatus may include a processor 1302 , a transceiver 1303 and a memory 1304 .
  • the memory 1304 is used for storing instructions
  • the processor 1302 is used for executing the instructions stored in the memory 1304, so as to realize the user terminal in any one or any of the corresponding methods shown in FIG. 2, FIG. 3 or FIG. 5 above. , or execute the method executed by the user terminal in any of the embodiments shown in the first embodiment to the third embodiment.
  • the remote control device 1301 is a user terminal, and when the first embodiment is implemented: the transceiver 1303 can receive the network address of the communication module in the vehicle from the vehicle management server under the control of the processor 1302, and the communication module supports the remote wake-up function when the In the dormant state, according to the network address, a third remote control command is sent to the vehicle, where the third remote control command is used to instruct components in the vehicle to start or perform the first operation.
  • FIG. 14 exemplarily shows a schematic structural diagram of a remote control device provided by an embodiment of the present application.
  • the remote control device 1401 may be a communication module in a vehicle, an exemplary The ground may be the communication module described in any one of FIG. 2 , FIG. 3 or FIG. 5 , or may be a chip or a circuit, such as a chip or circuit that can be provided in the communication module.
  • the remote control device can implement the steps performed by the communication module in any one or more of the corresponding methods shown in FIG. 2 , FIG. 3 or FIG. 5 , or perform any one of the first to third embodiments above. The method performed by the communication module in the embodiment.
  • the remote control device 1401 may include a transceiver unit 1402 , a wake-up unit 1403 and a control unit 1404 .
  • the transceiver unit 1402 can receive a wake-up command and a remote control command when the communication module in the vehicle is in a sleep state that supports the remote wake-up function, and the wake-up unit 1403 can wake up according to the command to make the communication module enter the wake-up state, the control unit 1404 can send a control message to the components in the vehicle according to the remote control command, the control message is used to start the components in the vehicle or instruct the components in the vehicle to execute the command instructed by the remote control command. operate.
  • the transceiver unit 1402 can be a sending unit or a transmitter when sending information, the transceiver unit 1402 can be a receiving unit or a receiver when receiving information, the transceiver unit 1402 can be a transceiver, and the transceiver, transmitter or receiver can be a radio frequency Circuit, when the remote control device 1401 includes a storage unit, the storage unit is used to store computer instructions, the wake-up unit 1403 and the control unit 1404 are respectively connected in communication with the storage unit, and the wake-up unit 1403 and the control unit 1404 respectively execute the computer instructions stored in the storage unit , so that the remote control apparatus 1401 can be used to execute the method executed by the communication module in any one of the above-mentioned Embodiments 1 to 3.
  • the wake-up unit 1403 or the control unit 1404 may be a general-purpose central processing unit (CPU), a microprocessor, or an application specific integrated circuit (ASIC).
  • the transceiver unit 1402 may be an input and/or output interface, a pin, a circuit, or the like.
  • the wake-up unit 1403 and the control unit 1404 can execute the computer-executed instructions stored in the storage unit, so that the chip in the remote control device 1401 executes the method performed in any of the first to third embodiments.
  • the storage unit is a storage unit in a chip, such as a register, a cache, etc., and the storage unit can also be a storage unit located outside the chip in the remote control device 1401, such as a read only memory (read only memory, ROM) or Other types of static storage devices that can store static information and instructions, random access memory (RAM), etc.
  • FIG. 15 exemplarily shows a schematic diagram of another remote control device provided by the embodiments of the present application.
  • the remote control device 1501 may be a vehicle management server, exemplarily For the vehicle management server described in any one of FIG. 2 , FIG. 3 or FIG. 5 , it can also be a chip or a circuit, such as a chip or a circuit that can be provided in the vehicle management server.
  • the remote control device 1501 can implement the steps performed by the vehicle management server in any one or more of the corresponding methods shown in FIG. 2 , FIG. 3 or FIG. 5 , or perform the steps shown in the first to third embodiments above. A method performed by a vehicle management server in any of the embodiments.
  • the remote control device 1501 may include a transceiver unit 1502 and a processing unit 1503 .
  • the transceiver unit 1502 can receive a first remote control command from the user terminal under the control of the processing unit 1503, and send a wake-up command to the vehicle based on the first remote control command , the wake-up command is used to make the communication module in the vehicle enter the wake-up state, and, when the communication module is in the sleep state supporting the remote wake-up function, based on the first remote control command, send a second remote control command to the vehicle, the second remote control command
  • the remote control command is used to instruct a component within the vehicle to activate or perform a first operation.
  • the transceiver unit 1502 can be a sending unit or a transmitter when sending information, the transceiver unit 1502 can be a receiving unit or a receiver when receiving information, the transceiver unit 1502 can be a transceiver, and the transceiver, transmitter or receiver can be a radio frequency Circuit, when the remote control device 1501 includes a storage unit, the storage unit is used to store computer instructions, the processing unit 1503 is connected in communication with the storage unit, and the processing unit 1503 executes the computer instructions stored in the storage unit, so that the remote control device 1501 can be used to execute The method executed by the vehicle management server in any of the embodiments shown in the first embodiment to the third embodiment.
  • the processing unit 1503 may be a general-purpose central processing unit (CPU), a microprocessor, or an application-specific integrated circuit (ASIC).
  • the transceiver unit 1502 may be an input and/or output interface, a pin, a circuit, or the like.
  • the processing unit 1503 can execute the computer-executed instructions stored in the storage unit, so that the chip in the remote control device 1501 executes the method performed in any of the first to third embodiments.
  • the storage unit is a storage unit in a chip, such as a register, a cache, etc., and the storage unit can also be a storage unit located outside the chip in the remote control device 1501, such as a read-only memory (ROM) or can store static information. and other types of static storage devices for instructions, random access memory (RAM), etc.
  • FIG. 16 exemplarily shows a schematic diagram of another remote control apparatus provided by the embodiments of the present application.
  • the remote control apparatus 1601 may be a user terminal, which may be exemplarily as The user terminal described in any one of FIG. 2 , FIG. 3 or FIG. 5 may also be a chip or a circuit, for example, a chip or circuit that can be provided in the user terminal.
  • the remote control device 1601 may implement the steps performed by the user terminal in any one or any of the corresponding methods shown in FIG. 2 , FIG. 3 or FIG. A method performed by a user terminal in an embodiment.
  • the remote control device 1601 may include a transceiver unit 1602 and a processing unit 1603 .
  • the transceiver unit 1602 can receive the network address of the communication module in the vehicle from the vehicle management server under the control of the processing unit 1603, and the communication module is in a mode that supports the remote wake-up function.
  • a third remote control command is sent to the vehicle, where the third remote control command is used to instruct a component in the vehicle to start or perform a first operation.
  • the transceiver unit 1602 can be a sending unit or a transmitter when sending information, the transceiver unit 1602 can be a receiving unit or a receiver when receiving information, the transceiver unit 1602 can be a transceiver, and the transceiver, transmitter or receiver can be a radio frequency Circuit, when the remote control device 1601 includes a storage unit, the storage unit is used to store computer instructions, the processing unit 1603 is connected in communication with the storage unit, and the processing unit 1603 executes the computer instructions stored in the storage unit, so that the remote control device 1601 can be used to execute The method executed by the user terminal in any of the embodiments shown in the foregoing Embodiment 1 to Embodiment 3.
  • the processing unit 1603 may be a general-purpose central processing unit (CPU), a microprocessor, or an application-specific integrated circuit (ASIC).
  • the transceiver unit 1602 may be an input and/or output interface, a pin or a circuit, or the like.
  • the processing unit 1603 can execute the computer-executable instructions stored in the storage unit, so that the chip in the remote control device 1601 executes the method performed in any of the first to third embodiments.
  • the storage unit is a storage unit in a chip, such as a register, a cache, etc., and the storage unit can also be a storage unit located outside the chip in the remote control device 1601, such as a read-only memory (ROM) or can store static information. and other types of static storage devices for instructions, random access memory (RAM), etc.
  • the above division of the units of the remote control device 1401, the remote control device 1501 and the remote control device 1601 is only a division of logical functions, and can be fully or partially integrated into a physical entity in actual implementation, or can be physically separated .
  • the transceiver unit 1402, the transceiver unit 1502, and the transceiver unit 1602 may be implemented by the transceiver 1303 shown in FIG. 13, and the wake-up unit 1403, the control unit 1404, the processing unit 1503, and the processing unit 1603 may be implemented by the process shown in FIG. 13. 1302 implements.
  • the present application also provides a computer program product, the computer program product includes: computer program code, when the computer program code is run on a computer, the computer is made to execute FIG. 2 , FIG. 3 or The method of any one of the embodiments shown in FIG. 5 .
  • the present application also provides a computer-readable storage medium, where the computer-readable medium stores program codes, and when the program codes are run on a computer, the computer is made to execute FIG. 2 and FIG. 3 . Or the method of any one of the embodiments shown in FIG. 5 .
  • the present application further provides a vehicle, the vehicle may include a communication module, and the communication module may be used to execute any one or any of the items shown in FIG. 2 , FIG. 3 or FIG. 5 above
  • the steps performed by the communication module in the corresponding method, or the steps performed by the communication module in any of the embodiments shown in the first embodiment to the third embodiment are executed.
  • the present application further provides a remote control system, which includes the aforementioned vehicle management server, a vehicle, and a user terminal.
  • the above-described embodiments may be implemented in whole or in part by software, hardware, firmware, or any combination thereof.
  • software When implemented in software, it can be implemented in whole or in part in the form of a computer program product.
  • the computer program product includes one or more computer instructions. When the computer instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of the present application are generated.
  • the computer may be a general purpose computer, special purpose computer, computer network, or other programmable device.
  • the computer instructions may be stored on or transmitted from one computer readable storage medium to another computer readable storage medium, for example, the computer instructions may be downloaded from a website site, computer, vehicle management server or Data center access to another website site, computer, vehicle management server or data center via wired (eg coaxial cable, fiber optic, digital subscriber line, DSL) or wireless (eg infrared, wireless, microwave, etc.) transmission.
  • the computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device such as a vehicle management server, a data center, etc. that includes one or more available mediums integrated.
  • the available media may be magnetic media (eg, floppy disks, hard disks, magnetic tapes), optical media (eg, high-density digital video discs (DVDs)), or semiconductor media (eg, solid state drives, SSD)) etc.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • Medical Informatics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Cardiology (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Selective Calling Equipment (AREA)

Abstract

一种远程控制方法及装置,用以降低远程控制的时延。其中方法包括:在车辆中的通信模块处于支持远程唤醒功能的休眠状态时,接收唤醒命令和远程控制命令,根据唤醒命令,使通信模块进入唤醒状态,以及,根据远程控制命令,向车辆内的部件发送控制消息,以启动车辆内的部件或者指示车辆内的部件执行远程控制命令指示的操作。通过在车辆的通信模块处于休眠状态时将远程控制命令发送给通信模块,有助于通信模块在唤醒车内部件后立即执行远程控制,有效避免等待车内部件唤醒响应后再发送远程控制命令所引入的时延,有助于提高远程控制的及时性。

Description

一种远程控制方法及装置
相关申请的交叉引用
本申请要求在2021年04月25日提交中国专利局、申请号为202110448849.5、申请名称为“一种远程控制方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及车联网技术领域,尤其涉及一种远程控制方法及装置。
背景技术
随着车联网技术的发展,远程控制功能在车辆中的应用越来越普遍。当车辆支持远程控制功能时,用户能通过手机控制车辆中部件的一些行为。例如,在炎热的夏天或寒冷的冬天,用户在上车之前可以先通过手机启动车内空调,待空调将车内温度调节至适宜后再开门上车。又例如,用户在需要用车时也可以先通过手机召唤车辆,让车辆自动行驶至用户当前所在的位置后直接上车,而不用再步行至车辆所在的位置上车。可见,通过使车辆支持远程控制功能,能有效提高用户使用车辆的舒适性和便捷性。
然而,现有技术中的远程控制流程通常如下:用户通过手机向车辆管理服务器发出远程控制的相关指令,车辆管理服务器接收到相关指令后,先向车辆发送唤醒短消息,并等待车辆返回的唤醒成功响应,之后,如果接收到唤醒成功响应,则再向车辆发送远程控制命令,并等待车辆返回的控制结果,将控制结果通过手机返回给用户。然而,采用该方式,用户在发出远程控制的相关指令后,要经过很长时间才能获知到控制结果,导致远程控制的时延较长,不利于用户的使用体验。基于此,如何降低远程控制的时延,成为目前亟待解决的一个技术问题。
发明内容
本申请提供一种远程控制方法及装置,用以降低远程控制的时延。
第一方面,本申请提供一种远程控制方法,该方法应用于车辆中的通信模块,该方法包括:在通信模块处于支持远程唤醒功能的休眠状态时,接收唤醒命令和远程控制命令,根据唤醒命令,使通信模块进入唤醒状态,以及,根据远程控制命令,向车辆内的部件发送控制消息,以启动车辆内的部件或者指示车辆内的部件执行远程控制命令指示的操作。在该设计中,通过在车辆的通信模块处于休眠状态时将远程控制命令发送给通信模块,有助于通信模块在唤醒车内部件后立即执行远程控制,有效避免等待车内部件唤醒响应后再发送远程控制命令所引入的时延,有助于提高远程控制的及时性。
在一种可能的设计中,远程控制命令可以为国际互连协议(internet protocol,IP)数据包,唤醒命令可以为短消息或者IP数据包。在该设计中,通过采用IP数据包的网络方式发送远程控制命令或唤醒命令,相比于短消息发送方式来说,能节省命令经运营商侧的短消息中心转发所引入的短消息转发时延,有助于进一步降低远程控制车辆的时延。且, 即使通过短消息发送唤醒命令,由于在通信模块被唤醒之前先以IP数据包的形式发送了远程控制命令,因此也能尽量保证通信模块连续执行唤醒和远程控制。
在一种可能的设计中,唤醒命令和远程控制命令可以在同一个IP数据包中发送给通信模块,也可以在连续的两个IP数据包中发送给通信模块。该设计能尽量使通信模块在同一时刻接收到唤醒命令和远程控制命令,有助于实现通信模块在唤醒后立即执行远程控制的方案。
在一种可能的设计中,唤醒命令和远程控制命令可以是车辆管理服务器发送给通信模块的,该设计有助于实现车辆管理服务器对车辆远程控制的灵活管理,以及对不同车辆远程控制的集中管理。
在一种可能的设计中,唤醒命令和远程控制命令可以是登录车辆管理服务器的用户终端发送给通信模块的,该设计可以节省经由车辆管理服务器转发命令所引入的转发时延,进一步降低远程控制的时延。
在一种可能的设计中,在通信模块接收唤醒命令和远程控制命令之前,还可以登录车辆管理服务器,以建立与车辆管理服务器的连接,便于车辆管理服务器通过该连接将唤醒命令和远程控制命令发送给通信模块。
在一种可能的设计中,在通信模块接收唤醒命令和远程控制命令之前,还可以周期性地将通信模块的有效网络地址发送给车辆管理服务器。该设计能使车辆管理服务器尽量获取到车辆管理服务器的最新的网络地址,提高发送唤醒命令或远程控制命令的成功率。
在一种可能的设计中,在通信模块接收唤醒命令和远程控制命令之前,还可以将通信模块的更新的网络地址发送给车辆管理服务器。该设计能使车辆管理服务器及时获取到通信模块变化的网络地址,提高发送唤醒命令或远程控制命令的成功率。
在一种可能的设计中,在通信模块接收唤醒命令和远程控制命令之前,还可以周期性地向车辆管理服务器发送心跳数据包,该心跳数据包用于维持车辆管理服务器与通信模块的长连接。该设计有助于车辆管理服务器通过长连接向通信模块发送唤醒命令和远程控制命令,而可以不再重新建立连接,有效节省网络资源。
在一种可能的设计中,心跳数据包中可以包含通信模块的有效网络地址或更新的网络地址。在该设计中,同步网络地址的操作可以放在维持长连接的流程中一起实现,而可以不再额外浪费资源单独执行同步网络地址的操作,有助于节省网络资源。
在一种可能的设计中,在通信模块接收唤醒命令和远程控制命令之前,还可以向车辆管理服务器发送更新后的密钥,该更新后的密钥可以用于通信模块和车辆管理服务器的后续通信,如以加密的方式发送唤醒命令和远程控制命令。相应地,在通信模块接收到唤醒命令和远程控制命令之后,若唤醒命令和远程控制命令为加密的数据包,则还可以使用先更新后的密钥解密该数据包,以得到明文的唤醒命令和远程控制命令。通过以加密方式发送唤醒命令和远程控制命令,有助于提高远程控制的安全性。
在一种可能的设计中,在通信模块接收唤醒命令和远程控制命令之前,还可以周期性地与车辆管理服务器进行鉴权认证。在该设计中,通过车辆管理服务器周期检测通信模块的合法性,能只在合法的情况下向通信模块发送唤醒命令和远程控制命令,在不合法的情况下不执行远程控制,有效提高远程控制的安全性。且,通过采用周期方式进行鉴权认证,还能在需要执行远程控制时直接发送唤醒命令和远程控制命令,而可以不再重新鉴权认证,进一步提高远程控制的效率。
第二方面,本申请提供一种远程控制方法,该方法适用于具有处理能力的任一设备,如车辆管理服务器。以车辆管理服务器为例,该方法包括:车辆管理服务器从用户终端接收第一远程控制命令,基于第一远程控制命令,向车辆发送唤醒命令,以使车辆中的通信模块进入唤醒状态,在通信模块处于支持远程唤醒功能的休眠状态时,基于第一远程控制命令,向车辆发送第二远程控制命令,以指示车辆内的部件启动或者执行第一操作。
在一种可能的设计中,第二远程控制命令可以为IP数据包,唤醒命令可以为短消息或者IP数据包。
在一种可能的设计中,车辆管理服务器可以将唤醒命令和远程控制命令放在同一个IP数据包中发送给通信模块,也可以分别将唤醒命令和远程控制命令放在连续的两个IP数据包中发送给通信模块。
在一种可能的设计中,车辆管理服务器在发送唤醒命令和发送第二远程控制命令之前,还可以接受通信模块的登录。
在一种可能的设计中,车辆管理服务器在发送唤醒命令和发送第二远程控制命令之前,还可以周期性地从通信模块接收通信模块的有效网络地址。
在一种可能的设计中,当车辆管理服务器周期性地从通信模块接收通信模块的有效网络地址时,若在超过一个周期的时长内未接收到新的有效网络地址,则车辆管理服务器将通信模块的网络地址设置为无效状态。在该设计中,无效状态意味着车辆管理服务器与通信模块之间的网络链路中断,通过更新通信模块的网络地址的状态,能使车辆管理服务器及时获知网络链路的状态,便于决策后续的命令发送方式。
在一种可能的设计中,车辆管理服务器在发送唤醒命令和发送第二远程控制命令之前,还可以获取通信模块的网络地址信息的状态,若处于有效状态,则根据有效的网络地址信息将唤醒命令和第二远程控制命令发送给通信模块,若处于无效状态,则将唤醒短消息发送给通信模块。在该设计中,通过在车辆管理服务器与通信模块的网络链路质量较好时以IP数据包的形式唤醒通信模块,能提高唤醒车辆和远程控制车辆的效率。且,通过在车辆管理服务器与通信模块的网络链路中断时以短消息形式唤醒通信模块,不仅能以常规形式成功唤醒车辆,还能节省不必要的通信开销。由此可知,该设计能兼顾远程控制的效率和成功率。
在一种可能的设计中,车辆管理服务器在发送唤醒命令和发送第二远程控制命令之前,还可以从通信模块接收通信模块的更新的网络地址。
在一种可能的设计中,车辆管理服务器在从用户终端接收第一远程控制命令之前,还可以将通信模块的网络地址发送给所述用户终端。
在一种可能的设计中,车辆管理服务器在确定用户终端登录车辆管理服务器后,还可以周期性地将通信模块的有效网络地址发送给用户终端,或者在有预设事件触发时将通信模块的当前网络地址发送给用户终端,其中的预设事件例如可以为通信模块的网络地址发生更新,以便车辆管理服务器将通信模块的更新的通信模块的网络地址发送给用户终端。该方式能使用户终端及时获知通信模块的最新网络地址,便于用户终端直接基于最新网络地址向通信模块发送唤醒命令和第三远程控制命令,节省经由车辆管理服务器的转发时延,进一步提高远程控制的效率。
在一种可能的设计中,车辆管理服务器在发送唤醒命令和发送第二远程控制命令之前,还可以周期性地从通信模块接收心跳数据包。
在一种可能的设计中,心跳数据包中可以包含通信模块的有效网络地址或更新的网络地址。
在一种可能的设计中,车辆管理服务器在发送唤醒命令和发送第二远程控制命令之前,还可以从通信模块接收更新后的密钥,使用更新后的密钥加密唤醒命令和第二远程控制命令。
在一种可能的设计中,车辆管理服务器在发送唤醒命令和发送第二远程控制命令之前,还可以周期性地与通信模块进行鉴权认证。
在一种可能的设计中,车辆管理服务器在向车辆发送唤醒命令的同时,还可以向车辆发送唤醒短消息。在该设计中,由于短消息的无线覆盖效果优于数据业务的网络覆盖效果,因此,通过同时以网络形式和短信形式向通信模块发送唤醒命令,既能在网络较好的情况下快速地将唤醒命令传递给通信模块,提高唤醒通信模块的效率,又能在网络不好的情况下通过网络覆盖效果更优的唤醒短消息成功唤醒通信模块。
第三方面,本申请提供一种远程控制方法,该方法适用于具有用户交互能力的任意设备,如用户终端。以用户终端为例,该方法包括:用户终端从车辆管理服务器接收车辆中的通信模块的网络地址,在通信模块处于支持远程唤醒功能的休眠状态时,根据网络地址,向车辆发送第三远程控制命令,第三远程控制命令用于指示车辆内的部件启动或者执行第一操作。在该设计中,通过用户终端直接唤醒和控制车辆,不仅有助于降低经由车辆管理服务器间接转发唤醒命令和远程控制命令所引入的时延,有效提高远程控制的效率,还能尽量分散车辆管理服务器的工作压力。
在一种可能的设计中,用户终端还可以根据网络地址向车辆发送唤醒命令,以使通信模块进入唤醒状态。在该设计中,通过以网络形式发送唤醒命令,能节省唤醒命令经由短信中心转发所引入的转发时延,有助于进一步提高远程控制的效率。
在一种可能的设计中,用户终端还可以向车辆管理服务器发送第一远程控制命令,以便车辆管理服务器根据第一远程控制命令以网络形式或短消息形式指示车辆内的部件启动或者执行第一操作。在该设计中,通过以用户终端的网络形式、用户终端的短信形式、车辆管理服务器的网络形式和车辆管理服务器的短信形式中的至少两项向通信模块发送唤醒命令和远程控制命令,能通过多种发送方式提高通信模块接收到唤醒命令的概率,提高成功唤醒车辆的可能性。
在一种可能的设计中,用户终端可以周期性地从车辆管理服务器接收通信模块的有效网络地址,或者从车辆管理服务器接收预设事件触发的通信模块的网络地址,其中的预设事件例如可以为通信模块的网络地址发生更新,以便用户终端从车辆管理服务器接收通信模块的更新的网络地址。
在一种可能的设计中,当用户终端周期性地从车辆管理服务器接收通信模块的网络地址时,若在超过一个周期的时长内未接收到新的有效网络地址,则用户终端将通信模块的网络地址设置为无效状态。
在一种可能的设计中,用户终端在发送第三远程控制命令之前,还可以获取通信模块的网络地址信息的状态,若处于有效状态,则根据有效的网络地址信息将唤醒命令和第三远程控制命令发送给通信模块,若处于无效状态,则将第一远程控制命令发送给车辆管理服务器。
第四方面,本申请提供一种远程控制装置,包括:收发单元,用于在车辆中的通信模 块处于支持远程唤醒功能的休眠状态时,接收唤醒命令和远程控制命令;唤醒单元,用于根据唤醒命令,使通信模块进入唤醒状态;控制单元,用于根据远程控制命令,向车辆内的部件发送控制消息,控制消息用于启动部件或者指示部件执行远程控制命令指示的操作。
在一种可能的设计中,远程控制命令可以为IP数据包,唤醒命令可以为短消息或者IP数据包。
在一种可能的设计中,唤醒命令和远程控制命令可以在同一个IP数据包中发送给通信模块,也可以在连续的两个IP数据包中发送给通信模块。
在一种可能的设计中,唤醒命令和远程控制命令可以是车辆管理服务器发送的。
在一种可能的设计中,唤醒命令和远程控制命令可以是登录车辆管理服务器的用户终端发送的。
在一种可能的设计中,在收发单元接收唤醒命令和远程控制命令之前,收发单元还可以执行以下操作中的至少一项:登录车辆管理服务器;周期性地将通信模块的有效网络地址发送给车辆管理服务器;将通信模块的更新的网络地址发送给车辆管理服务器;周期性地向车辆管理服务器发送心跳数据包;向车辆管理服务器发送更新后的密钥;或者,周期性地与车辆管理服务器进行鉴权认证。
在一种可能的设计中,心跳数据包中可以包含通信模块的有效网络地址或更新的网络地址。
第五方面,本申请提供一种远程控制装置,包括收发单元和处理单元,收发单元在处理单元的控制下,执行如下操作:从用户终端接收第一远程控制命令,基于第一远程控制命令,向车辆发送唤醒命令,以使车辆中的通信模块进入唤醒状态,在通信模块处于支持远程唤醒功能的休眠状态时,基于第一远程控制命令,向车辆发送第二远程控制命令,第以指示车辆内的部件启动或者执行第一操作。
在一种可能的设计中,第二远程控制命令可以为IP数据包,唤醒命令可以为短消息或者IP数据包。
在一种可能的设计中,收发单元可以将唤醒命令和远程控制命令放在同一个IP数据包中发送给通信模块,也可以分别将唤醒命令和远程控制命令放在连续的两个IP数据包中发送给通信模块。
在一种可能的设计中,在收发单元发送唤醒命令和发送第二远程控制命令之前,收发单元还可以执行以下操作中的至少一项:接受通信模块的登录;周期性地从通信模块接收通信模块的有效网络地址;从通信模块接收通信模块的更新的网络地址;周期性地从通信模块接收心跳数据包;从通信模块接收更新后的密钥;或者,周期性地与通信模块进行鉴权认证。
在一种可能的设计中,当收发单元周期性地从通信模块接收通信模块的有效网络地址时,若在超过一个周期的时长内未接收到新的有效网络地址,则处理单元将通信模块的网络地址设置为无效状态。
在一种可能的设计中,在收发单元发送唤醒命令和发送第二远程控制命令之前,还可以获取通信模块的网络地址信息的状态,若处于有效状态,则根据有效的网络地址信息将唤醒命令和第二远程控制命令发送给通信模块,若处于无效状态,则将唤醒短消息发送给通信模块。
在一种可能的设计中,心跳数据包中可以包含通信模块的有效网络地址或更新的网络 地址。
在一种可能的设计中,收发单元还可以在确定用户终端登录车辆管理服务器后,周期性地将通信模块的有效网络地址发送给用户终端,或者将更新的通信模块的有效网络地址发送给用户终端。
在一种可能的设计中,收发单元在向车辆发送唤醒命令的同时,还可以向车辆发送唤醒短消息。
第六方面,本申请提供一种远程控制装置,包括收发单元和处理单元,收发单元在处理单元的控制下,执行如下操作:从车辆管理服务器接收车辆中的通信模块的网络地址,在通信模块处于支持远程唤醒功能的休眠状态时,根据网络地址,向车辆发送第三远程控制命令,以指示车辆内的部件启动或者执行第一操作。
在一种可能的设计中,收发单元还可以根据网络地址,向车辆发送唤醒命令,以使通信模块进入唤醒状态。
在一种可能的设计中,收发单元还可以向车辆管理服务器发送第一远程控制命令,以指示车辆内的部件启动或者执行第一操作。
在一种可能的设计中,收发单元还可以周期性地从车辆管理服务器接收通信模块的有效网络地址,或者从车辆管理服务器接收通信模块变化的网络地址。
在一种可能的设计中,当收发单元周期性地从车辆管理服务器接收通信模块的网络地址时,若在超过一个周期的时长内未接收到新的有效网络地址,则处理单元将通信模块的网络地址设置为无效状态。
在一种可能的设计中,收发单元在发送第三远程控制命令之前,还可以获取通信模块的网络地址信息的状态,若处于有效状态,则根据有效的网络地址信息将唤醒命令和第三远程控制命令发送给通信模块,若处于无效状态,则将第一远程控制命令发送给车辆管理服务器。
第七方面,本申请提供一种远程控制装置,包括处理器、收发器和存储器,处理器和存储器相连,存储器存储计算机程序,当存储器中存储的计算机程序被处理器执行时,使得远程控制装置执行:在通信模块处于支持远程唤醒功能的休眠状态时,接收唤醒命令和远程控制命令,根据唤醒命令,使通信模块进入唤醒状态,根据远程控制命令,向车辆内的部件发送控制消息,以启动部件或者指示部件执行远程控制命令指示的操作。
在一种可能的设计中,远程控制命令可以为IP数据包,唤醒命令可以为短消息或者IP数据包。
在一种可能的设计中,唤醒命令和远程控制命令可以在同一个IP数据包中发送给通信模块,也可以在连续的两个IP数据包中发送给通信模块。
在一种可能的设计中,唤醒命令和远程控制命令可以是车辆管理服务器发送的。
在一种可能的设计中,唤醒命令和远程控制命令可以是登录车辆管理服务器的用户终端发送的。
在一种可能的设计中,当存储器中存储的计算机程序被处理器执行时,使得远程控制装置还执行如下操作中的至少一项:登录车辆管理服务器;周期性地将通信模块的有效网络地址发送给车辆管理服务器;将通信模块的更新的网络地址发送给车辆管理服务器;周期性地向车辆管理服务器发送心跳数据包;向车辆管理服务器发送更新后的密钥;或者,周期性地与车辆管理服务器进行鉴权认证。
在一种可能的设计中,心跳数据包中可以包含通信模块的有效网络地址或更新的网络地址。
第八方面,本申请提供一种远程控制装置,包括处理器、收发器和存储器,处理器和存储器相连,存储器存储计算机程序,当存储器中存储的计算机程序被处理器执行时,使得远程控制装置执行:从用户终端接收第一远程控制命令,基于第一远程控制命令,向车辆发送唤醒命令,以使车辆中的通信模块进入唤醒状态,在通信模块处于支持远程唤醒功能的休眠状态时,基于第一远程控制命令,向车辆发送第二远程控制命令,以指示车辆内的部件启动或者执行第一操作。
在一种可能的设计中,第二远程控制命令可以为IP数据包,唤醒命令可以为短消息或者IP数据包。
在一种可能的设计中,当存储器中存储的计算机程序被处理器执行时,使得远程控制装置具体执行:将唤醒命令和远程控制命令放在同一个IP数据包中发送给通信模块,或者分别将唤醒命令和远程控制命令放在连续的两个IP数据包中发送给通信模块。
在一种可能的设计中,当存储器中存储的计算机程序被处理器执行时,使得远程控制装置在发送唤醒命令和发送第二远程控制命令之前,还可以执行以下操作中的至少一项:接受通信模块的登录;周期性地从通信模块接收通信模块的有效网络地址;从通信模块接收通信模块的更新的网络地址;周期性地从通信模块接收心跳数据包;从通信模块接收更新后的密钥;或者,周期性地与通信模块进行鉴权认证。
在一种可能的设计中,当存储器中存储的计算机程序被处理器执行时,使得远程控制装置还执行:若周期性地从通信模块接收通信模块的有效网络地址时,则在超过一个周期的时长内未接收到新的有效网络地址时,将通信模块的网络地址设置为无效状态。
在一种可能的设计中,当存储器中存储的计算机程序被处理器执行时,使得远程控制装置还执行:在发送唤醒命令和发送第二远程控制命令之前,获取通信模块的网络地址信息的状态,若处于有效状态,则根据有效的网络地址信息将唤醒命令和第二远程控制命令发送给通信模块,若处于无效状态,则将唤醒短消息发送给通信模块。
在一种可能的设计中,心跳数据包中可以包含通信模块的有效网络地址或更新的网络地址。
在一种可能的设计中,当存储器中存储的计算机程序被处理器执行时,使得远程控制装置还执行:在确定用户终端登录车辆管理服务器后,周期性地将通信模块的有效网络地址发送给用户终端,或者将更新的通信模块的有效网络地址发送给用户终端。
在一种可能的设计中,当存储器中存储的计算机程序被处理器执行时,使得远程控制装置还执行:在向车辆发送唤醒命令的同时,向车辆发送唤醒短消息。
第九方面,本申请提供一种远程控制装置,包括处理器、收发器和存储器,处理器和存储器相连,存储器存储计算机程序,当存储器中存储的计算机程序被处理器执行时,使得远程控制装置执行:从车辆管理服务器接收车辆中的通信模块的网络地址,在通信模块处于支持远程唤醒功能的休眠状态时,根据网络地址,向车辆发送第三远程控制命令,第三远程控制命令用于指示车辆内的部件启动或者执行第一操作。
在一种可能的设计中,当存储器中存储的计算机程序被处理器执行时,使得远程控制装置还执行:根据网络地址,向车辆发送唤醒命令,以使通信模块进入唤醒状态。
在一种可能的设计中,当存储器中存储的计算机程序被处理器执行时,使得远程控制 装置还执行:向车辆管理服务器发送第一远程控制命令,以指示车辆内的部件启动或者执行第一操作。
在一种可能的设计中,当存储器中存储的计算机程序被处理器执行时,使得远程控制装置还执行:周期性地从车辆管理服务器接收通信模块的有效网络地址,或者从车辆管理服务器接收通信模块变化的网络地址。
在一种可能的设计中,当存储器中存储的计算机程序被处理器执行时,使得远程控制装置还执行:若周期性地从车辆管理服务器接收通信模块的网络地址,则在超过一个周期的时长内未接收到新的有效网络地址时,将通信模块的网络地址设置为无效状态。
在一种可能的设计中,当存储器中存储的计算机程序被处理器执行时,使得远程控制装置还执行:在发送第三远程控制命令之前,获取通信模块的网络地址信息的状态,若处于有效状态,则根据有效的网络地址信息将唤醒命令和第三远程控制命令发送给通信模块,若处于无效状态,则将第一远程控制命令发送给车辆管理服务器。
第十方面,本申请提供一种远程控制装置,包括处理器和通信接口,通信接口用于接收来自除远程控制装置以外的其它通信装置的信号并传输至处理器或将来自处理器的信号发送给除远程控制装置以外的其它通信装置;处理器通过逻辑电路或执行代码指令用于实现如上述第一方面中任一项设计所述的方法。
第十一方面,本申请提供一种远程控制装置,包括处理器和通信接口,通信接口用于接收来自除远程控制装置以外的其它通信装置的信号并传输至处理器或将来自处理器的信号发送给除远程控制装置以外的其它通信装置;处理器通过逻辑电路或执行代码指令用于实现如上述第二方面中任一项设计所述的方法。
第十二方面,本申请提供一种远程控制装置,包括处理器和通信接口,通信接口用于接收来自除远程控制装置以外的其它通信装置的信号并传输至处理器或将来自处理器的信号发送给除远程控制装置以外的其它通信装置;处理器通过逻辑电路或执行代码指令用于实现如上述第三方面中任一项设计所述的方法。
第十三方面,本申请提供一种远程控制装置,包括处理器,处理器与存储器相连,存储器用于存储计算机程序,处理器用于执行存储器中存储的计算机程序,以使得装置执行如上述第一方面中任一项设计所述的方法。
第十四方面,本申请提供一种远程控制装置,包括处理器,处理器与存储器相连,存储器用于存储计算机程序,处理器用于执行存储器中存储的计算机程序,以使得装置执行如上述第二方面中任一项设计所述的方法。
第十五方面,本申请提供一种远程控制装置,包括处理器,处理器与存储器相连,存储器用于存储计算机程序,处理器用于执行存储器中存储的计算机程序,以使得装置执行如上述第三方面中任一项设计所述的方法。
第十六方面,本申请提供一种远程控制装置,包括处理器和存储器,存储器存储计算机程序指令,处理器运行计算机程序指令以实现如上述第一方面中任一项设计所述的方法。
第十七方面,本申请提供一种远程控制装置,包括处理器和存储器,存储器存储计算机程序指令,处理器运行计算机程序指令以实现如上述第二方面中任一项设计所述的方法。
第十八方面,本申请提供一种远程控制装置,包括处理器和存储器,存储器存储计算机程序指令,处理器运行计算机程序指令以实现如上述第三方面中任一项设计所述的方法。
第十九方面,本申请提供一种车辆,包括如上述第四方面、或第七方面、或第十方面、 或第十三方面、或第十六方面中任一项设计所述的远程控制装置。
第二十方面,本申请提供一种远程控制系统,包括车辆中的通信模块和车辆管理服务器,车辆中的通信模块用于实现如上述第一方面中任一项设计所述的方法,车辆管理服务器用于实现如上述第二方面中任一项设计所述的方法。
第二十一方面,本申请提供一种远程控制系统,包括第一设备、第二设备和第三设备,第一设备可以为具有通信功能的任一设备,如车辆中的通信模块,用于实现如上述第一方面中任一项设计所述的方法。第二设备可以为具有处理功能的任一设备,如车辆管理服务器,用于实现如上述第二方面中任一项设计所述的方法。第三设备可以为具有用户交互功能的任一设备,如用户终端,用于实现如上述第三方面中任一项设计所述的方法。
第二十二方面,本申请提供一种芯片,该芯片可以包括处理器和接口,处理器用于通过接口读取指令,以执行如上述第一方面中任一项设计所述的方法、或执行如上述第二方面中任一项设计所述的方法、或执行如上述第三方面中任一项设计所述的方法。
第二十三方面,本申请提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,当计算机程序被运行时,实现如上述第一方面中的任一项设计所述的方法。
第二十四方面,本申请提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,当计算机程序被运行时,实现如上述第二方面中的任一项设计所述的方法。
第二十五方面,本申请提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,当计算机程序被运行时,实现如上述第三方面中的任一项设计所述的方法。
第二十六方面,本申请提供一种计算机程序产品,当所述计算机程序产品在处理器上运行时,实现如上述第一方面中任一项设计所述的方法。
第二十七方面,本申请提供一种计算机程序产品,当所述计算机程序产品在处理器上运行时,实现如上述第二方面中任一项设计所述的方法。
第二十八方面,本申请提供一种计算机程序产品,当所述计算机程序产品在处理器上运行时,实现如上述第三方面中任一项设计所述的方法。
上述第二方面至第二十八方面的有益效果,具体请参照上述第一方面中相应设计可以达到的技术效果,这里不再重复赘述。
附图说明
图1示例性示出本申请实施例适用的一种可能的系统架构示意图;
图2示例性示出本申请实施例一提供的一种远程控制方法的流程示意图;
图3示例性示出本申请实施例提供的一种远程控制方法的界面实现示意图;
图4示例性示出本申请实施例二提供的一种远程控制方法的流程示意图;
图5示例性示出本申请实施例三提供的一种远程控制方法的流程示意图;
图6示例性示出本申请实施例提供的一种车辆管理服务器的内部架构示意图;
图7示例性示出本申请实施例提供的一种用户终端的内部架构示意图;
图8示例性示出本申请实施例提供的一种车辆中的通信模块的内部架构示意图;
图9示例性示出业界常用的一种远程控制方案的时延分析示意图;
图10示例性示出业界常用的另一种远程控制方案的时延分析示意图;
图11示例性示出本申请实施例提供的一种远程控制方案的时延分析示意图;
图12示例性示出本申请实施例提供的另一种远程控制方案的时延分析示意图;
图13示例性示出本申请实施例提供的一种远程控制装置的结构示意图;
图14示例性示出本申请实施例提供的另一种远程控制装置的结构示意图;
图15示例性示出本申请实施例提供的又一种远程控制装置的结构示意图;
图16示例性示出本申请实施例提供的又一种远程控制装置的结构示意图。
具体实施方式
需要说明的是,本申请实施例中的远程控制方案可以应用于车联网,如车-万物(vehicle to everything,V2X)、车间通信长期演进技术(long term evolution-vehicle,LTE-V)、车辆-车辆(vehicle-vehicle,V2V)等。例如可以应用于具有远程通信功能的车辆,或者车辆中具有远程通信功能的其它装置。该其它装置包括但不限于:车载终端、车载控制器、车载模块、车载模组、车载部件、车载芯片、车载单元、车载雷达或车载摄像头等其它传感器,车辆可通过该车载终端、车载控制器、车载模块、车载模组、车载部件、车载芯片、车载单元、车载雷达或摄像头,实施本申请提供的远程控制方法。当然,本申请实施例中的远程控制方案还可以用于除了车辆之外的其它具有远程通信功能的智能终端,或设置在除了车辆之外的其它具有远程通信功能的智能终端中,或设置于该智能终端的部件中。该智能终端可以为智能运输设备、智能家居设备、机器人等其他终端设备。例如包括但不限于智能终端或智能终端内的控制器、芯片、雷达或摄像头等其它传感器、以及其它部件等。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。需要说明的是,在本申请实施例的附图中,实线框是默认要执行的步骤,而虚线框是可选步骤。其中,实线框和虚线框相结合是为了实现更优的技术方案,但在实际操作中,也可以只执行实线框而不执行虚线框。另外,应理解,下文所描述的实施例仅仅是本申请的一部分实施例,而不是全部的实施例。
图1为本申请实施例适用的一种可能的系统架构示意图,如图1所示的系统架构包括车辆管理服务器110、车辆120和用户终端130。其中,车辆120是指具有远程通信功能的车辆,车辆120的远程通信功能通常可以由设置在车辆120上的通信模块121实现,常见的通信模块121例如包括远程通信箱(telematics box,TBOX)。车辆管理服务器110可以是指单个服务器,也可以是指由多个服务器构成的服务器集群。在车联网领域中,该车辆管理服务器110具体可以是指云服务器,也称为云、云端、云端服务器、云端控制器或车联网服务器等。云服务器是对数据处理能力的设备或器件的统称,诸如可以包括主机或处理器等实体设备,也可以包括虚拟机或容器等虚拟设备,还可以包括芯片或集成电路。用户终端130是指向用户提供语音和/或数据连通性的设备。例如可以包括具有无线连接功能的手持式设备、或连接到无线调制解调器的处理设备。目前,一些用户终端130的举例为:手机(mobile phone)、平板电脑、笔记本电脑、掌上电脑、移动互联网设备(mobile internet device,MID)、可穿戴设备,虚拟现实(virtual reality,VR)设备、增强现实(augmented reality,AR)设备、工业控制(industrial control)中的无线终端设备、无人驾驶(self driving)中的无线终端设备、远程手术(remote medical surgery)中的无线终端设备、智能电网(smart grid)中的无线终端设备、运输安全(transportation safety)中的无线终端设备、智慧城市(smart city)中的无线终端设备、智慧家庭(smart home)中的无线终端设备等。
应理解,本申请实施例对系统架构中车辆管理服务器110的数量、车辆120的数量和用户终端130的数量均不作限定,每台车辆120中包含的通信模块121的数量也不作限定。 通常情况下,一台车辆管理服务器110可以与多台车辆120和多个用户终端130连接,多台车辆120和多个用户终端130可以是一对一的,也可以是多对一的(例如某个用户同时具有多台车辆)。且,车辆管理服务器110与多台车辆120的连接可以通过与多台车辆120上的通信模块121的连接来实现,其中每台车辆120上一般包含一个通信模块121。此外,本申请实施例所适用的系统架构中除了包括车辆管理服务器110、车辆120和用户终端130以外,还可以包括其它设备,如核心网设备、无线中继设备和无线回传设备等,对此本申请实施例也不作限定。以及,本申请实施例中的车辆管理服务器110可以将所有的功能集成在一个独立的物理设备上,也可以将不同功能分别部署在多个独立的物理设备上,对此本申请实施例也不作限定。
在介绍具体的实施例之前,先示例性介绍下本申请的下列实施例所涉及到的部分术语:
(1)车辆架构。
本申请实施例中的车辆可以具有以功能域为单位的集成化架构。即,车辆中的各个电子控制单元(electronic control unit,ECU)按照功能的不同划分至不同的功能域中,且每个功能域中还设置有对应的域控制器(domain control unit,DCU),每个域控制器分别连接所在功能域中包含的各个电子控制单元,用于实现对所在功能域中原本分散的各个电子控制单元的集中管理和控制。其中,功能域也称为功能系统,常见的功能域可以包括但不限于:动力传动系统、底盘与安全系统、车身控制系统、信息娱乐系统或辅助驾驶系统等。
在以功能域为单位的集成化架构中,车辆中的车载网关作为整车交互的中心枢纽,与车辆中的各个域控制器互联,用于在各个域控制器之间安全地中转数据。当各个功能域分别采用不同的总线架构时,车载网关还担负着在不同总线架构之间协议转化的工作,以打破不同功能域之间对数据解析的隔阂。此外,车载网关还作为车辆与外部通信网络之间的沟通桥梁,经由车辆中的通信模块与车辆管理服务器建立安全高效的连接,用于根据通信模块从车辆管理服务器接收的数据完成对车内电子控制单元的升级、管理、维护和控制。
(2)长连接。
本申请实施例中的长连接是短连接的相对概念。短连接是指:通讯双方在每次需要发送数据时就建立一个连接,在数据发送完成后则断开连接,即每次所建立的连接只用于完成一次数据发送操作。长连接是指:通讯双方在建立连接并发送完数据后并不断开连接,而是继续保持连接,后续在需要继续发送数据时,直接在保持的连接上发送数据即可。在通讯双方保持长连接的情况下,通讯双方能在一个连接上连续发送多个数据包。且,在长连接保持期间,如果长时间没有发送数据包,则通常还需要通讯双方就当前的通讯链路进行检测,以及时发现通讯链路的故障。
(3)同时发送至少两个数据包。
本申请实施例中的同时发送至少两个数据包可以是指如下任一内容:采用至少两个线程并行发送至少两个数据包,或者采用单个线程连续发送至少两个数据包。即,只要至少两个数据包以可以忽略不计的时间间隔发出,即可认为至少两个数据包是同时发出的。
(4)用户密钥、车载密钥和车用交互密钥。
本申请实施例中的用户密钥是指用户终端与车辆管理服务器之间交互数据所使用的密钥。用户密钥可以是预先设置在用户终端和车辆管理服务器中的固定密钥,也可以是用户终端与车辆管理服务器通过周期协商得到的,还可以是按照用户终端和车辆管理服务器公知的某种预设算法生成的可变密钥,具体不作限定。
本申请实施例中的车载密钥是指通信模块与车辆管理服务器之间交互数据所使用的密钥。车载密钥可以是预先设置在通信模块和车辆管理服务器中的固定密钥,也可以是通信模块与车辆管理服务器通过周期协商得到的,还可以是按照通信模块和车辆管理服务器公知的某种预设算法生成的可变密钥,具体不作限定。
本申请实施例中的车用交互密钥是指通信模块与用户终端之间交互数据所使用的密钥。车用交互密钥可以是在车辆出厂之前预置在通信模块中、且由通信模块在与用户终端的第一次交互时同步给用户终端的固定密钥,也可以是车辆管理服务器分配给用户终端和通信模块的密钥,还可以是用户终端根据车辆管理服务器同步过来的通信模块的网络地址周期与通信模块协商得到的可变密钥,具体不作限定。
下面将结合附图对本申请作进一步地详细描述。应理解,方法实施例中的具体操作方法也可以应用于装置实施例或系统实施例中。需要说明的是,在本申请的描述中,“至少一个”是指一个或多个,其中,多个是指两个或两个以上。鉴于此,本申请实施例中也可以将“多个”理解为“至少两个”。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,字符“/”,如无特殊说明,一般表示前后关联对象是一种“或”的关系。
另外,需要理解的是,在本申请的描述中,“第一”、“第二”、“第三”、“第四”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。例如,“第一计时器”、“第二计时器”、“第三计时器”和“第四计时器”,只是示例性地指出针对于不同的计时事件所设置的不同计时器,这四个计时器的计时时长可能相同也可能不同,优先级或重要程度可能相同也可能不同,并不能理解为暗示其计时时长不同,或暗示其重要程度或优先级不同。
【实施例一】
图2示例性示出本申请实施例一提供的一种远程控制方法的流程示意图,该方法适用于车辆中的通信模块、车辆管理服务器、用户终端和车辆内的部件,其中,车辆中的通信模块、车辆管理服务器和用户终端例如可以为图1所示意出的车辆120中的通信模块121、车辆管理服务器110和用户终端130。如图2所示,该流程包括如下步骤:
步骤201,通信模块在处于支持远程唤醒功能的休眠状态时,接收唤醒命令和远程控制命令。
需要说明的是,本申请实施例中的通信模块可以具有如下三种状态:睡眠状态,也称为深睡眠状态,在该状态下通信模块支持本地唤醒但不支持远程唤醒,例如用户可以通过按压车内的启动按键来唤醒深睡眠状态下的通信模块;休眠状态,也称为浅休眠状态,在该状态下通信模块支持远程唤醒,例如用户可以通过手机发送远程命令来唤醒浅休眠状态下的通信模块;唤醒状态,在该状态下通信模块处于高功耗的工作模式,能够支持所有已配备的功能。无论是睡眠状态、休眠状态还是唤醒状态,通信模块都是通电的,只是睡眠状态的功耗要低于休眠状态的功耗,而休眠状态的功耗又低于唤醒状态的功耗。基于此,上述步骤201中,“支持远程唤醒功能的休眠状态”,即是指上述三种状态中的休眠状态。用户在不使用车辆时,可以选择睡眠车辆或休眠车辆:当选择睡眠车辆时,车辆中的通信模块会从工作状态切换至睡眠状态,通信模块无法接收外部设备发送的远程命令,但能通过车内部件指示唤醒;当选择休眠车辆时,车辆中的通信模块会从工作状态切换至休眠状 态,通信模块可以接收外部设备发送的远程命令,诸如车辆管理服务器或用户终端发送的唤醒命令或远程控制命令。
本申请实施例中,唤醒命令和远程控制命令可以由车辆管理服务器发送给通信模块(如图2中的步骤2001,具体实现过程请参照如下实施例二),也可以由登录车辆管理服务器的用户终端发送给通信模块(如图2中的步骤2002,具体实现过程请参照如下实施例三),还可以由车辆管理服务器和用户终端一起发送给通信模块。其中,由车辆管理服务器和用户终端一起发送的示例包括但不限于:车辆管理服务器在通信模块处于休眠状态时向通信模块发送唤醒命令,且用户终端在通信模块处于休眠状态时向通信模块发送远程控制命令,或者车辆管理服务器在通信模块处于休眠状态时向通信模块发送远程控制命令,且用户终端在通信模块处于休眠状态时向通信模块发送唤醒命令,或者车辆管理服务器在通信模块处于休眠状态时向通信模块发送唤醒命令和第二远程控制命令,用户终端在通信模块处于休眠状态时向通信模块发送第三远程控制命令,或者车辆管理服务器在通信模块处于休眠状态时向通信模块发送第一唤醒命令和第二远程控制命令,用户终端在通信模块处于休眠状态时向通信模块发送第二唤醒命令和第三远程控制命令等,此处不再一一列举。如此,通过在通信模块处于休眠状态时将远程控制命令发送给通信模块,而不是在唤醒后再发送远程控制命令,能节省等待唤醒及等待远程控制命令所引入的时延,有助于使通信模块在唤醒后直接使用远程控制命令执行远程控制,有效提高远程控制的及时性。
在一种可选地实施方式中,唤醒命令可以以短消息或IP数据包的形式发送,而远程控制命令可以以IP数据包的形式发送。也即是说,唤醒命令和远程控制命令可以以如下任一方式发送:唤醒命令和远程控制命令通过同一IP数据包发送给通信模块,以便通信模块同时获取到唤醒命令和远程控制命令;唤醒命令和远程控制命令通过连续的两个IP数据包发送给通信模块,以便通信模块户几乎无时差地获取到唤醒命令和远程控制命令;携带唤醒命令的短消息和携带远程控制命令的IP数据包同时发送给通信模块;携带唤醒命令的短消息或IP数据包先发送给通信模块,携带远程控制命令的IP数据包再发送给通信模块,且需要确保携带远程控制命令的IP数据包在携带唤醒命令的短消息或IP数据包成功唤醒通信模块之前发送给通信模块;携带唤醒命令的短消息、携带唤醒命令的IP数据包和携带远程控制命令的IP数据包同时发送给通信模块;携带唤醒命令的短消息先发送给通信模块,携带唤醒命令和远程控制命令的IP数据包再发送给通信模块;携带唤醒命令的IP数据包先发送给通信模块,携带唤醒命令的短消息和携带远程控制命令的IP数据包再发送给通信模块等。应理解,可能的发送方式有很多,只要能在通信模块处于休眠状态时将这两个命令发送给通信模块,都在本申请的保护范围内,本申请对此不再一一列举。
需要说明的是,在通过IP数据包的形式向通信模块发送命令时,需要获知通信模块的网络地址。在一种情况下,如果未来车辆中的通信模块如现阶段手机上的用户识别卡(subscriber identity module,SIM)卡一样存在固定联络的网络地址,诸如国际移动用户识别码(international mobile subscriber identity,IMSI),或者主叫用户为呼叫移动通信网中用户所需拨号的号码(mobile subscriber international ISDN/PSTN number,MSISDN),则车辆管理服务器或用户终端可以直接存储车辆中的通信模块的该网络地址,如此,后续在每次需要执行远程控制时,都可以通过该网络地址以IP数据包的形式将唤醒命令或远程控制命令发送给通信模块。在另一种情况下,如果车辆中的通信模块不具有固定联络的网络地址,则通信模块的网络地址可以是车辆管理服务器或用户终端向通信模块请求而得到的,也可 以是通信模块主动向车辆管理服务器或用户终端上报的,请求或上报的发生时机可以是在知晓需要执行远程控制之后,也可以是在知晓需要执行远程控制之前,具体不作限定。应理解,可能的实现方式还有很多,此处不再一一列举。
在一种可选地实施方式中,通信模块在接收唤醒命令和远程控制命令之前,还可以执行如下至少一项操作:
操作一,通信模块登录车辆管理服务器,如果登录成功,则通信模块与车辆管理服务器之间可以成功建立连接,如此,车辆管理服务器可以通过该连接向通信模块发送唤醒命令和远程控制命令,或者可以将该通信模块的相关信息发送给用户终端,以便于用户终端向该通信模块发送唤醒命令和远程控制命令。
操作二,通信模块周期性地将通信模块的有效网络地址发送给车辆管理服务器。该操作比较适用于通信模块频繁发生位置移动的场景,通过周期同步有效网络地址,有助于车辆管理服务器利用最新同步的网络地址发送携带唤醒命令或远程控制命令的IP数据包,或者能将最新同步的网络地址发送给用户终端,便于用户终端利用最新同步的网络地址发送携带唤醒命令或远程控制命令的IP数据包,有效提高发送唤醒命令和远程控制命令的成功概率。
操作三,通信模块将通信模块的更新的网络地址发送给车辆管理服务器。该操作比较适用于通信模块不常发生位置移动的场景,通过在网络地址变化时实时同步网络地址,车辆管理服务器能准确获知通信模块每次变化后的最新的网络地址,也能将通信模块每次变化后的最新的网络地址发送给用户终端,也能有助于提高以IP数据包发送唤醒命令或远程控制命令的成功概率。
操作四,通信模块周期性地向车辆管理服务器发送心跳数据包。该操作可以用于维持通信模块和车辆管理服务器的长连接,在长连接下,如果车辆管理服务器在一个周期内接收到心跳数据包,则确定与通信模块之间的长连接还存在,车辆管理服务器可以直接通过该长连接获取通信模块的网络地址,按照该网络地址向通信模块发送唤醒命令或远程控制命令,或者将获取的网络地址发送给用户终端,以便用户终端按照该网络地址向通信模块发送唤醒命令或远程控制命令,而不必再重新建立连接。如果车辆管理服务器在一个周期内未接收到心跳数据包,则确定与通信模块之间的长连接已断开,车辆管理服务器需要先和通信模块建立连接,再通过新建立的连接发送唤醒命令或远程控制命令。其中,心跳数据包的包头中可以携带有车辆管理服务器的网络地址,该网络地址是指能够用于与车辆管理服务器进行网络通信的地址信息,例如可以包括车辆管理服务器的IP地址和端口号,而至于心跳数据包的包体中携带的内容则不作具体限定,例如可以是一个默认的校验值,也可以是一个空包,还可以是通信模块的有效网络地址。
操作五,通信模块向车辆管理服务器发送更新后的车载密钥,该车载密钥可以用于通信模块和车辆管理服务器的后续通信,如车辆管理服务器能使用最新更新的车载密钥加密唤醒命令和远程控制命令后再发送给通信模块,以提高远程控制的安全性。
操作六,通信模块周期性地与车辆管理服务器进行鉴权认证。该鉴权认证既可以用于通信模块确保车辆管理服务器的合法性,也可以用于车辆管理服务器确保通信模块的合法性,车辆管理服务器可以只向鉴权认证通过的通信模块发送唤醒命令和远程控制命令,通信模块也可以只接收并执行鉴权认证通过的车辆管理服务器发送的唤醒命令和远程控制命令,尽可能地保证远程控制的安全性。
需要说明的是,上述操作一至操作六还可以相互组合以得到新的操作,示例来说:
当组合操作一和操作二时,通信模块可以先登录车辆管理服务器,并在登录成功后周期性地向车辆管理服务器发送自己的有效网络地址,以便车辆管理服务器能利用之前登录的通信模块在最新一次发送的有效网络地址向之前登录的通信模块发送携带唤醒命令或远程控制命令的IP数据包。
当组合操作一和操作三时,通信模块可以先登录车辆管理服务器,并在登录成功后实时监控自己的网络地址,一旦发现网络地址发生变化则将变化的网络地址发送给车辆管理服务器,以便车辆管理服务器能利用之前登录的通信模块变化后的最新网络地址向之前登录的通信模块发送携带唤醒命令或远程控制命令的IP数据包。
当组合操作一、操作二和操作三时,通信模块可以先登录车辆管理服务器,在登录成功后,一方面可以周期性地向车辆管理服务器发送自己的有效网络地址,另一方面还可以监控自己的网络地址,一旦发现网络地址发生变化,则也将变化的网络地址发送给车辆管理服务器,并重启发送周期。该方式能进一步保证车辆管理服务器获知最准确的网络地址,有助于提高发送携带唤醒命令或远程控制命令的成功概率。
当组合操作二和操作四时,通信模块可以将有效网络地址放在心跳数据包中,周期性地将心跳数据包发送给车辆管理服务器,以便车辆管理服务器通过解析心跳数据包获得有效网络地址。该组合能将周期同步有效网络地址的操作放在长连接的流程中实现,而可以不再额外浪费资源同步有效网络地址,有助于节省通信模块的计算资源。
当组合操作三和操作四时,通信模块可以针对于一个心跳周期间发生变化的网络地址生成一个心跳数据包后发送给车辆管理服务器,并可以以当前的心跳数据包为基准重启心跳周期的计时,该组合能将实时变化的网络地址应用在维持长连接的心跳数据包中,有助于提高对维持长连接和同步网络地址的灵活管理。
当组合操作二、操作三和操作四时,通信模块除了可以在每个心跳周期将发送的心跳数据包中添加自己的有效网络地址以外,还可以将一个心跳周期间发生变化的网络地址单独发送给车辆管理服务器,或者针对于一个周期间发生变化的网络地址生成一个新的心跳数据包后发送给车辆管理服务器,并重启心跳周期的计时。
当组合操作一和操作四时,通信模块可以先登录车辆管理服务器,并在登录成功后周期性地向车辆管理服务器发送心跳数据包,也即是,在登录成功后开始维持与车辆管理服务器的长连接,以便依赖维持的长连接发送唤醒命令和远程控制命令。
当组合操作一和操作四、以及操作二和/或操作三时,通信模块可以先登录车辆管理服务器,并在登录成功后周期性地向车辆管理服务器发送携带有效网络地址或变化的网络地址的心跳数据包,以便车辆管理服务器解析心跳数据包获得有效网络地址或变化的网络地址。
当组合操作一和操作五时,通信模块可以先登录车辆管理服务器,在登录成功后周期或实时向车辆管理服务器发送最新更新后的车载密钥,以便车辆管理服务器和通信模块在登录状态下加密待同步的消息,提高消息传输的安全性。
当组合操作一、操作五、以及操作二和/操作三时,通信模块可以先登录车辆管理服务器,在登录成功后周期或实时向车辆管理服务器发送最新更新后的车载密钥,并使用最新更新后的车载密钥加密有效网络地址或变化的网络地址,向车辆管理服务器发送加密后的信息,以便车辆管理服务器也能使用最新更新后的车载密钥解密得到有效网络地址或变化 的网络地址,利用有效网络地址或变化的网络地址,向通信模块发送最新更新后的车载密钥加密的唤醒命令和远程控制命令。该组合相当于在维持长连接的过程中周期更新车载密钥,即使通信模块与车辆管理服务器长时间处于连接状态,通过隔一段时间就更新一次车载密钥,也能降低非法设备获取最新车载密钥的概率,提高通信模块识别历史车载密钥加密的非法消息的准确性,阻止非法设备通过侵入该长连接对通信模块进行的非法控制,有效提高长连接的安全性。
当组合操作一、操作四、操作五、以及操作二和/操作三时,通信模块可以先登录车辆管理服务器,在登录成功后周期或实时向车辆管理服务器发送最新更新后的车载密钥,并使用最新更新后的车载密钥加密有效网络地址或变化的网络地址,向车辆管理服务器发送携带加密后的网络地址的心跳数据包,以便车辆管理服务器通过解析心跳数据包获得加密的有效网络地址或变化的网络地址后,使用最新更新后的车载密钥解密得到有效网络地址或变化的网络地址,并利用有效网络地址或变化的网络地址,向通信模块发送最新更新后的车载密钥加密的唤醒命令和远程控制命令。
当组合操作一和操作六时,通信模块可以先登录车辆管理服务器,在登录成功后周期性地与车辆管理服务器进行鉴权认证,该组合能对登录状态下的通信模块和车辆管理服务器周期性地进行安全认证,有助于保证两者登录状态的可信度。
当组合操作一、操作五和操作六时,通信模块可以先登录车辆管理服务器,在登录成功后周期性地与车辆管理服务器进行鉴权认证,并在鉴权认证的过程中更新车载密钥。如此,通过将协商车载密钥的操作放在周期鉴权认证的过程中执行,能节省通信模块的资源。
当组合操作一、操作六、以及操作二和/操作三时,通信模块可以先登录车辆管理服务器,在登录成功后,周期性地与车辆管理服务器进行鉴权认证,在鉴权认证通过的情况下,周期性地向车辆管理服务器发送有效网络地址或变化的网络地址,以便车辆管理服务器获得安全的有效网络地址或变化的网络地址。
当组合操作一、操作四、操作五、操作六、以及操作二和/操作三时,通信模块可以先登录车辆管理服务器,在登录成功后,周期性地与车辆管理服务器进行鉴权认证,并在鉴权认证的过程中同步更新的车载密钥,在鉴权通过的情况下,使用最新更新后的车载密钥加密有效网络地址或变化的网络地址,向车辆管理服务器发送携带加密后的网络地址的心跳数据包,以便车辆管理服务器通过解析心跳数据包获得加密的有效网络地址或变化的网络地址后,使用最新更新后的车载密钥解密得到有效网络地址或变化的网络地址,并利用有效网络地址或变化的网络地址,向通信模块发送最新更新后的车载密钥加密的唤醒命令和远程控制命令。
应理解,上述内容只是示例性介绍几种可能的组合,但这并不是全部组合,凡是能够组合上述操作一至操作六中的一个或多个而得到的新操作都在本申请的保护范围内,本申请对此不再一一列举。
步骤202,通信模块根据唤醒命令,使通信模块进入唤醒状态。
在上述步骤202中,通信模块可以先根据唤醒命令唤醒自己内部的其它程序,以使通信模块切换到正常工作状态,且通信模块还可以唤醒车辆内的其它部件,其它部件可以是远程控制命令对应的待控制的部件,也可以是车辆内的全部部件。以车辆内的全部部件为例,唤醒过程具体可以包括:通信模块先将携带唤醒命令的认证消息发送给休眠状态的车载网关,车载网关被通信模块的认证消息所触发而切换至工作状态;之后,车载网关判断 确定该认证消息是否合法(例如确定通信模块是否使用合法的车内密钥加密认证消息),若合法,则根据车内部件交互所使用的控制器局域网络(controller area network,CAN)消息格式,将唤醒命令转化为CAN消息后发送给车内的各个域控制器,由各个域控制器分别唤醒各自域内所管理的ECU。当然,发送给每个域控制器的CAN消息也需要使用每个域控制器所对应的车内密钥进行加密,任一域控制器所对应的车内密钥通常会在车辆出厂前预置在车辆内部,也可以在车辆出厂后通过该域控制器与其域内的ECU周期性地同步进行更新。
步骤203,通信模块根据远程控制命令,向车辆内的部件发送控制消息。
在上述步骤203中,通信模块在确定车辆内的其它部件唤醒完成后(例如接收到车载网关返回的唤醒成功响应),通信模块可以根据远程控制命令生成控制消息,并将控制消息发送给车载网关,由车载网关按照CAN消息格式将控制消息转化为CAN消息后发送给待控制的ECU所在的域控制器,以通过该域控制器向待控制的ECU发送该控制消息。
应理解,上述步骤202和步骤203只是以通信模块分别发送唤醒命令和远程控制命令为例进行介绍。在另一种方案中,通信模块也可以生成同时携带唤醒命令和远程控制命令对应的控制消息的认证消息给车载网关,由车载网关认证合法后,根据唤醒命令和控制消息唤醒各个ECU后直接控制待控制的ECU完成远程控制。
步骤204,车辆内的部件根据控制消息启动该部件或者执行远程控制命令指示的操作。
在上述步骤204中,待控制的ECU接收到控制消息后,可以执行启动或远程控制命令对应的控制操作,这些操作包括但不限于:启动空调运行(有些情况下还需要同时启动发动机驱动空调运转)、远程解锁/上锁车门、远程寻车(如远程控制车辆自动驾驶至用户所在位置,或远程闪灯和鸣笛以便用户找到车辆等)或远程打开/闭锁车窗等。
示例性地,当域控制器确定待控制的ECU成功完成远程控制时,域控制器还可以依次经由车载网关和通信模块向车辆管理服务器返回控制成功响应,由车辆管理服务器再返回给用户终端,或者依次经由车载网关和通信模块向用户终端返回控制成功响应,以通过用户终端显示给用户。
在上述实施例一中,通过在车辆的通信模块处于休眠状态时将远程控制命令发送给通信模块,有助于通信模块在唤醒车内部件后立即执行远程控制,有效避免等待车内部件唤醒响应后再发送远程控制命令所引入的时延,有助于提高远程控制的及时性。
下面基于实施例二和实施例三,进一步介绍本申请中远程控制方法的具体实现。
【实施例二】
图3示例性示出本申请实施例二提供的远程控制方法的流程示意图,该方法适用于车辆管理服务器、车辆中的通信模块和用户终端,例如图1所示意出的车辆管理服务器110、车辆120中的通信模块121和用户终端130。如图3所示,该流程包括如下步骤:
步骤301,通信模块登录车辆管理服务器。
示例性的,登录过程具体可以参照如下步骤a~步骤c:
步骤a,通信模块在初次登录车辆管理服务器时,向车辆管理服务器发送登录请求,登录请求中携带待认证信息和通信模块的网络地址。其中,待认证信息可以包括通信协议的版本信息,还可以包括车辆识别码(vehicle identification number,VIN)、或其它能够指示车辆或通信模块的标志性信息。待认证信息通常在车辆出厂之前预置在车辆的通信模块中。
步骤b,车辆管理服务器根据预设的认证算法对登录请求中的待认证信息进行验证,若验证通过,则确定登录请求合法,车辆管理服务器允许通信模块登录,并存储通信模块的网络地址,根据该网络地址向通信模块返回登录成功响应。其中,预设的认证算法可以由本领域技术人员根据经验进行设置,并可预先同步给通信模块,以便通信模块也能按照该预设的认证算法设置待认证信息。
示例性的,通信模块和车辆管理服务器可以通过双向认证方法完成登录。具体地说,通信模块在初次登录车辆管理服务器时向车辆管理服务器发起登录请求,而车辆管理服务器接收到该登录请求后,将车辆管理服务器的公钥证书发送给通信模块,通信模块读取车辆管理服务器的公钥证书获得车辆管理服务器的公钥,并将通信模块的公钥证书发送给车辆管理服务器,车辆管理服务器使用根证书解密通信模块的公钥证书获得通信模块的公钥。之后,通信模块向车辆管理服务器发送自己支持的加密方案,车辆管理服务器根据自身支持的加密方案和通信模块支持的加密方案,选择一个双方都能支持的加密方案,使用通信模块的公钥加密后发送给通信模块。通信模块使用自己的私钥解密接收到的加密方案后,生成一个随机数,将该随机数作为后续与车辆管理服务器通信的车载密钥(即初次协商得到的车载密钥),使用车辆管理服务器的公钥加密该随机数并发送给车辆管理服务器。车辆管理服务器使用自己的私钥解密获得随机数,将该随机数作为后续与通信模块通信的车载密钥。如此,车辆管理服务器和通信模块在后续的通信过程中使用双方协商的车载密钥进行通信。其中,车辆管理服务器的公钥证书、车辆管理服务器的私钥、根证书以及车辆管理服务器支持的加密方案可以由本领域技术人员提前预置在车辆管理服务器中,通信模块的公钥证书、通信模块的私钥以及通信模块支持的加密方案可以在车辆出厂之前由研发人员提前预置在通信模块中。
步骤c,通信模块在接收到车辆管理服务器返回的登录成功响应后,确定通信模块成功登录车辆管理服务器,也即是,通信模块与车辆管理服务器之间成功建立连接,通信模块可以通过该连接访问车辆管理服务器中的资源,例如语音服务资源、地图导航资源或联网查询资源等。
步骤302,通信模块与车辆管理服务器按照第一预设周期协商获得更新的车载密钥。
在一种可选地实施方式中,车载密钥可以通过通信模块按照第一预设周期主动向车辆管理服务器申请协商的方式更新。即,通信模块中维持第一计时器,第一计时器的计时时长为一个第一预设周期的周期时长,通信模块在成功登录车辆管理服务器后,即可启动第一计时器,每当第一计时器计时到对应的计时时长后,通信模块即可向车辆管理服务器发送密钥更新请求,并重启第一计时器。其中,密钥更新请求中也可以携带通信模块的网络地址,以便通信模块和车辆管理服务器在协商车载密钥的过程中同步通信模块的网络地址,进一步提高车辆管理服务器中存储的通信模块的网络地址的准确性。密钥更新请求还可以使用上一次协商出的车载密钥进行加密。如此,车辆管理服务器在接收到密钥更新请求后,可以先使用上一次协商出的车载密钥解密得到明文的密钥更新请求,再验证该密钥更新请求中携带的通信模块的身份信息是否合法。若合法,则车辆管理服务器可以为通信模块设置一个新的车载密钥,并使用上一次协商出的车载密钥加密新的车载密钥后,根据本地存储的通信模块的网络地址(参照如下步骤303),将加密后的新的车载密钥发送给通信模块,以完成车载密钥的更新操作。其中,新的车载密钥可以是车辆管理服务器从预设的车载密钥集合中随机选取或顺序选取的,也可以是按照预设算法生成的,还可以是根据密钥更新 请求中携带的一些信息变形得到的,具体不作限定。
需要说明的是,通信模块可以按照第一预设周期不断申请协商车载密钥,而不考虑上次申请是否成功。如此,即使通信模块与车辆管理服务器之间协商车载密钥的操作出现问题导致数据交互中断(例如车辆管理服务器生成了新的车载密钥,但并未成功下发给通信模块,导致通信模块使用旧的车载密钥而车辆管理服务器使用新的车载密钥,两者虽然能接收到数据,但无法解密对方的数据完成数据交互),也能通过通信模块后续的主动申请协商,完成后续生成的新的车载密钥的协商,恢复两者之间的正常数据交互。
步骤303,通信模块按照第二预设周期向车辆管理服务器发送有效网络地址。
本申请实施例中,在通信模块初次登录车辆管理服务器后,车辆管理服务器即可在本地存储通信模块的网络地址,并可以在后续与通信模块的交互过程中周期或实时更新该网络地址。如此,当需要执行远程控制时,车辆管理服务器直接查询本地即可获得通信模块的网络地址。其中,通信模块的网络地址可以以通信模块的标识与网络地址的对应关系的形式存储在车辆管理服务器中,该对应关系可以表现为表格、图片或数据栈中的任意一项或任意多项。如此,即使车辆管理服务器同时与多个通信模块建立连接,车辆管理服务器也能根据该对应关系准确实现与任一通信模块的通信。
在一种可选地实施方式中,通信模块的有效网络地址可以通过通信模块按照第二预设周期主动向车辆管理服务器上报心跳数据包的方式实现更新。即,通信模块中维持第二计时器,第二计时器的计时时长为第二预设时长,通信模块在成功登录车辆管理服务器后,即可启动第二计时器,每当第二计时器计时到对应的计时时长后,通信模块即可向车辆管理服务器发送心跳数据包,并重启第二计时器。其中,心跳数据包中可以携带车辆管理服务器的网络地址,用于将心跳数据包发送给车辆管理服务器,以及携带通信模块的有效网络地址。如此,通过通信模块在登录车辆管理服务后周期发送携带有效网络地址的心跳数据包给车辆管理服务器,不仅能保持通信模块与车辆管理服务器之间的长连接,还能使车辆管理服务器及时获知到通信模块当前的有效网络地址。该方式相当于将同步有效网络地址的操作融合在保持长连接的流程中一起实现,可以无需再额外设置周期同步有效网络地址的操作,有助于节省车辆管理服务器与通信模块之间的通信开销。
需要说明的是,本申请实施例中,长连接的保持可以通过通信模块主动发起心跳数据包的方式来实现,至于该心跳数据包是否发送成功则不关心。如此,即使长连接在某一时刻出现问题(例如通信模块的网络地址发生了变化,但变化的网络地址并未成功通知给车辆管理服务器,导致车辆管理服务器按照旧的网络地址所发送的消息无法通知给通信模块),通信模块与车辆管理服务器之间的长连接也只是中断而不结束,只要问题解决了,车辆管理服务器就能根据通信模块在下一计时周期发送的心跳数据包中携带的有效网络地址,重新恢复与通信模块的长连接,以继续与通信模块的通信。
示例性的,通信模块在与车辆管理服务器建立连接后,还可以执行如下步骤304:
步骤304,通信模块实时地向车辆管理服务器发送变化的网络地址。
在上述步骤304中,通信模块还可以监测自己的网络地址,一旦发现自己的网络地址发生变化,则实时地将变化的网络地址上报给车辆管理服务器。对应的,车辆管理服务器在接收到通信模块发送的变化的网络地址后,也可以使用变化的网络地址更新本地存储的通信模块的网络地址。如此,即使通信模块在两个心跳数据包的发送间隔内切换了网络地址,车辆管理服务器也能及时获取到最新的网络地址,有助于提高车辆管理服务器本地存 储的网络地址的准确性。
需要说明的是,变化的网络地址可以是按照单独的消息格式发送给车辆管理服务器,也可以是携带在心跳数据包中发送给车辆管理服务器,具体不作限定。当有效网络地址和变化的网络地址都携带在心跳数据包中发送给车辆管理服务器时,通信模块可以以最新发送的心跳数据包为基准重启第二计时器。例如,通信模块在某一时刻发送携带有效网络地址的心跳数据包后启动第二计时器,如果在还没计时到第二预设时长之前,又实时发送了携带变化的网络地址的心跳数据包,则通信模块可以再重启第二计时器,以避免短时间内重复发送相同的网络地址,有效节省通信模块的通信损耗。
应理解,本申请实施例中,通信模块可以以明文的形式直接将有效网络地址或变化的网络地址发送给车辆管理服务器,也可以使用最近协商的车载密钥加密后以密文的形式将有效网络地址或变化的网络地址发送给车辆管理服务器,具体不作限定。
步骤305,车辆管理服务器判断一个第二预设周期内是否接收到通信模块发送的网络地址,若是,则执行步骤306,若否,则执行步骤307。
示例性的,车辆管理服务器中还可以维持第三计时器,第三计时器的计时时长也为第二预设时长。车辆管理服务器每接收到通信模块发送的一个网络地址(可能是有效网络地址或变化的网络地址),都可以启动第三计时器。在计时到第三计时器的计时时长之前,如果车辆管理服务器接收到了新的有效网络地址或变化的网络地址,则确定第二预设周期内接收到通信模块发送的网络地址。在计时到第三计时器的计时时长时,如果车辆管理服务器还未接收到新的有效网络地址或变化的网络地址,则确定第二预设周期内未接收到通信模块发送的网络地址。例如,车辆管理服务器在某一时刻接收到有效网络地址后启动第三计时器,如果在还没计时到第二预设时长之前,又接收到了变化的网络地址,则车辆管理服务器可以执行步骤306并重启第三计时器,如果直至重启后的第三计时器计时到第二预设时长且未收到新的有效网络地址或变化的网络地址时,确定车辆管理服务器可以执行步骤307并重启第三计时器。
需要说明的是,第二预设周期可以是车辆管理服务器设置并下发给通信模块的,也可以是通信模块设置并同步给车辆管理服务器的,还可以是本领域技术人员设置在车辆管理服务器和通信模块中的,具体不作限定。
步骤306,车辆管理服务器将本地存储的通信模块的网络地址更新为接收到的网络地址。
在上述步骤306中,当车辆管理服务器能在一个第二预设周期内接收到通信模块发送的有效网络地址或变化的网络地址时,说明车辆管理服务器与通信模块在当前第二预设周期内的网络状态较好,该网络地址大概率即为通信模块当前的网络地址。在这种情况下,车辆管理服务器可以使用所接收到的网络地址更新本地存储的通信模块的网络地址,例如将本地存储的网络地址直接替换为接收到的网络地址,或者在本地添加接收到的网络地址后,为原网络地址打上失效标签,且为新添加的网络地址打上生效标签,或者在本地添加接收到的网络地址后标注接收时间戳等。其中,接收到的网络地址可能与原网络地址不同(如车辆移动到另一区域),也可能与原网络地址相同(如车辆仍在原区域),不作限定。
在一种可选地实施方式中,车辆管理服务器在成功更新网络地址后,还可以使用更新后的网络地址向通信模块返回更新成功响应。对应的,通信模块每发送一个网络地址后,还可以等待车辆管理服务器返回更新成功响应。如果在预设的等待时长(远小于第二预设 时长)内一直未接收到车辆管理服务器返回的更新成功响应,则说明本次网络地址发送失败,通信模块可以重发当前的有效网络地址。如果通信模块在预设次数内的重发操作中接收到了更新成功响应,说明上次发送失败的现象很可能是由于一些偶然因素所导致的,例如上次发送中意外丢包等。在这种情况下,通过通信模块的上述重发操作,能及时恢复由于这些偶然因素所导致的长连接中断。如果在预设次数内的重发操作中一直未接收到更新成功响应,说明上述发送失败的现象很可能是由于通信链路异常导致的,例如通信模块当前处于一个网络覆盖较弱的区域。在这种情况下,通信模块可以结束重发,并可以等待下一个第二预设周期来临后再发送携带网络地址的心跳数据包,以便等通信模块重新移动至网络覆盖较好的区域之后再恢复之前中断的长连接,节省不必要的通信消耗。此外,如果多个第一预设周期都没有接收到更新成功响应,说明通信模块和车辆管理服务器之间的通信链路可能存在某种不可自动恢复的故障,例如通信模块或车辆管理服务器的硬件通信模块损坏。在这种情况下,通信模块还可以生成告警消息并发送给运维节点,以及时修复与车辆管理服务器之间的通信故障。
步骤307,车辆管理服务器失效本地存储的通信模块的网络地址。
在上述步骤307中,当车辆管理服务器无法在一个第二预设周期内接收通信模块发送的携带网络地址的心跳数据包时,说明在当前第二预设周期内车辆管理服务器与通信模块的通信链路出现问题,该问题可能是由于车辆管理服务器或通信模块中的硬件通信模块故障、或网络状态不好等因素造成的,车辆管理服务器在当前时段内大概率无法再通过网络方式与通信模块交互数据。在这种情况下,车辆管理服务器可以直接失效本地存储的通信模块的网络地址,以暂时中断车辆管理服务器与通信模块之间的网络通信方式。之后,车辆管理服务器进入等待阶段,直至某个时刻重新接收到通信模块发送的携带网络地址的心跳数据包后,车辆管理服务器可以重新生效本地存储的网络地址,并将该网络地址更新为接收到的新的网络地址,以恢复车辆管理服务器与通信模块之间的网络通信方式。
步骤308,用户终端登录车辆管理服务器。
步骤309,用户终端向车辆管理服务器发送远程控制命令(即第一远程控制命令)。
示例性的,用户终端在确定存在远程控制需求时,可以先使用用户密钥加密远程控制命令,再将加密后的远程控制命令发送给车辆管理服务器。通过加密用户终端的远程控制命令,不仅能降低远程控制命令在远程传输过程中被篡改的风险,还能使车辆管理服务器准确识别出非法终端发送的非法远程控制命令,有效提高远程控制车辆的安全性。
本申请实施例中,用户终端与车辆管理服务器的交互可以通过用户终端上的目标应用程序(application,APP)来实现。其中,目标APP可以是专门开发以用于实现远程控制功能的APP,也可以是用户终端中用于其它应用功能的APP,例如智慧车辆。当目标APP为用户终端中用于其它应用功能的APP时,本申请中的远程控制方法的程序可以预置在新版本的目标APP中,如此,用户只要执行升级目标APP的操作,即可使目标APP也具有远程控制车辆的功能。
下面示例性介绍下基于用户终端上的目标APP向车辆管理服务器发送远程控制命令的界面操作流程:
图4中(a)示例性示出本申请实施例提供的一种用户终端的界面示意图,如图4中(a)所示,用户终端的界面上可以设置有多个应用程序,例如日历、时钟、通话记录、信息、设置、图库、一键锁屏、视频电话和目标APP(即图4中(a)所示意出的车控APP401)。 在用户需要执行远程控制命令时,用户可以点击目标APP,然后注册并登录(若用户之前注册过用户账号,则用户可以直接登录),在车辆管理服务器验证用户账号合法后,进入目标APP的主界面。其中,用户账号一般可以包括用户名和密码,密码可以为用户设置的固定密码,也可以为短信校验码、人脸信息、虹膜信息或指纹信息等,不作限定。
图4中(b)示例性示出本申请实施例提供的一种目标APP中的主界面示意图,如图4中(b)所示,目标APP的主界面中存在多个功能按键,例如添加车辆按键、选择车辆按键、删除车辆按键等。当用户需要对之前已经在目标APP上添加过的某辆车进行远程控制时,用户可以直接点击主界面上的选择车辆按键,进入车辆选择界面。当用户需要对之前未在目标APP上添加过的某辆车进行远程控制时,用户可以先点击主界面上的添加车辆按键切换到添加车辆界面,并在该界面上填写待添加的车辆信息(如车辆的VIN),在通过车辆管理服务器绑定待添加的车辆和用户账号后,再返回主界面中点击选择车辆按键以进入车辆选择界面,此时车辆选择界面中会显示有用户刚刚添加的车辆信息。
图4中(c)示例性示出本申请实施例提供的一种目标APP中的车辆选择界面示意图,如图4中(c)所示,车辆选择界面上可以显示有至少一台车辆的相关信息,相关信息可以包括车辆的图片、品牌或车系等属性信息,还可以包括油量或使用年限等性能信息。用户可以在车辆选择界面上选中想要执行远程控制的车辆,以进入远程控制界面。
图4中(d)示例性示出本申请实施例提供的一种目标APP中的远程控制界面示意图,如图4中(d)所示,远程控制界面上显示有一个或多个远程控制命令,例如可以包括如图4中(d)所示意的启动空调命令、闪灯鸣笛命令、开窗透气命令和座椅加热命令,还可以包括解锁车门命令、开启后备箱命令、启动引擎命令或空气净化命令等其它远程控制命令。用户可以在远程控制界面上点击想要执行的远程控制命令。当目标APP检测到该点击操作后,目标APP可以根据被点击的远程控制命令生成远程控制请求并发生给车辆管理服务器,之后根据车辆管理服务器返回的响应内容切换至命令执行界面。
图4中(e)和图4中(f)示例性示出本申请实施例提供的两种目标APP中的命令执行界面示意图。如图4中(e)所示,在远程控制命令执行成功之前,该界面上可以显示有“正在执行远程控制,请耐心等待……”的文字信息,在远程控制命令执行成功后,即,目标APP接收到车辆管理服务器返回的执行成功响应后,该界面上可以显示有“远程控制已完成”的文字信息。如图4中(f)所示,目标APP不仅能向用户显示是否执行完成,还能通过圆圈加黑的形式显示执行进度。应理解,图4中(e)和图4中(f)只是两种示例性的说明,只要能够通过界面显示的方式提示用户当前是否执行完成的方案都在本申请的保护范围内,本申请对此不再一一列举。
步骤310,车辆管理服务器判断本地存储的通信模块的网络地址是否有效,若有效,则执行步骤311,若无效,则执行步骤313。
步骤311,车辆管理服务器根据本地存储的通信模块的网络地址、唤醒命令和远程控制命令,生成第一唤醒/远程控制IP数据包,使用最新协商的车载密钥加密第一唤醒/远程控制IP数据包,得到加密后的第一唤醒/远程控制IP数据包。
在上述步骤311中,第一唤醒/远程控制IP数据包可以包括唤醒IP数据包和远程控制IP数据包,也可以包括唤醒加远程控制IP数据包。其中,唤醒数据包是指根据通信模块的网络地址和唤醒命令生成的用于指示车辆唤醒的一个IP数据包。远程控制IP数据包是指根据通信模块的网络地址和远程控制命令生成的用于指示部件启动或执行第一操作的 一个IP数据包。唤醒加远程控制IP数据包是指根据通信模块的网络地址、唤醒命令和远程控制命令生成的用于指示车辆唤醒后指示部件启动或执行第一操作的一个IP数据包。如此,通过车辆管理服务器以网络方式实时地将唤醒命令和远程控制命令发送给通信模块,相比于短消息发送命令的方式来说,可以避免短消息经运营商侧的短消息中心转发所引入的短消息转发时延,有效提高唤醒车辆及远程控制车辆的时效性。
在一种可选地实施方式中,在生成携带远程控制命令的IP数据包(如远程控制IP数据包或唤醒加远程控制IP数据包)后,车辆管理服务器还可以先使用车载密钥加密该IP数据包,再将加密后的该IP数据包发送给通信模块。其中,车辆管理服务器可以使用车载密钥加密IP数据包中除通信模块的网络地址以外的信息,以保证加密后的IP数据包仍能发送给通信模块,例如,可以加密除通信模块的网络地址以外的其它全部信息,以有效保证全部数据传输的安全性,或者,也可以只加密远程控制命令而不加密其它信息,以降低车辆管理服务器的工作压力。通过加密车辆管理服务器与通信模块之间的用于远程控制车辆的IP数据包,不仅能降低远程控制命令在传输过程中被篡改的风险,还能使通信模块准确识别出非法车辆管理服务器或非法终端发送的非法控制命令,有效提高远程控制车辆的安全性。
应理解,携带唤醒命令的IP数据包(如唤醒IP数据包)也可以先使用车载密钥加密后再发送,以提高通信模块识别非法唤醒命令的准确性,节省不必要的电量浪费,提高车辆的续航能力。
步骤312,车辆管理服务器同时将加密后的第一唤醒/远程控制IP数据包和唤醒短消息发送给通信模块。
在上述步骤312中,第一唤醒/远程控制IP数据包会以网络方式发送给通信模块,而唤醒短消息则会以短信形式经运营商侧的短消息中心转发给通信模块。
应理解,车辆管理服务器也可以只发送第一唤醒/远程控制IP数据包而不发送唤醒短消息,具体不作限定。
步骤313,车辆管理服务器将唤醒短消息发送给通信模块。
在上述步骤313中,当车辆管理服务器中存储的通信模块的网络地址无效时,意味着,车辆管理服务器与通信模块之间的网络链路暂时中断,车辆管理服务器当前无法通过网络方式指示车辆唤醒。因此,车辆管理服务器可以发送唤醒短消息而不发送第一唤醒/远程控制IP数据包,如此,既可以节省车辆管理服务器与通信模块之间不必要的通信开销,又能以唤醒短消息的常规形式成功唤醒车辆。
步骤314,通信模块判断最先接收到的信息为加密后的第一唤醒/远程控制IP数据包还是唤醒短消息:
当先接收到加密后的第一唤醒/远程控制IP数据包时,执行步骤315;
当先接收到唤醒短消息时,执行步骤316。
在上述步骤314中,理论上来说,在网络状态较好的情况下,加密后的第一唤醒/远程控制IP数据包可能仅需要大概500ms(毫秒)的时间就能成功发送给通信模块,而唤醒短消息则需要至少15s(秒)的时间才能被发送给通信模块,因此,通信模块大概率会先接收到加密后的第一唤醒/远程控制IP数据包。当然,在网络状态不好或发生其它偶然事件的情况下,加密后的第一唤醒/远程控制IP数据包也可能在经过15秒的时间还没发送到通信模块,因此,通信模块也可能会先接收到唤醒短消息。
步骤315,通信模块使用最近协商的车载密钥对加密后的第一唤醒/远程控制IP数据包进行解密,得到唤醒命令和远程控制命令(即第二远程控制命令),根据唤醒命令和远程控制命令唤醒车辆后直接执行远程控制。
在上述步骤315中,在通信模块先接收到加密后的第一唤醒/远程控制IP数据包的情况下,通信模块可以直接丢弃后续接收到的唤醒短消息,而不需要再解析唤醒短消息,以节省计算资源。
步骤316,通信模块根据唤醒短消息唤醒车辆。
在上述步骤316中,在通信模块先接收到唤醒短消息的情况下,意味着,通信模块与车辆管理服务器之间的网络链路存在问题,该问题可能是由于车辆管理服务器与通信模块之间的网络地址更新错误导致的,也可能是由于车辆管理服务器与通信模块之间的密钥协商错误导致的。在这种情况下,车辆管理服务器中存储的通信模块的网络地址和通信模块真实的网络地址信可能不同,车辆管理服务器中存储的车载密钥和通信模块中存储的车载密钥也可能不同。因此,通信模块在唤醒车辆后,还可以重新与车辆管理服务器进行鉴权认证,即,重新与车辆管理服务器协商更新车载密钥,且重新向车辆管理服务器发送当前的网络地址,以便车辆管理服务器和通信模块能协商出相同且准确的车载密钥和网络地址。之后,车辆管理服务器可以基于准确的车载密钥和网络地址向通信模块发送远程控制命令,而通信模块也可以基于准确的车载密钥和网络地址执行远程控制命令,以完成远程控制。
示例性的,通信模块在唤醒车辆后,从上述常规流程中的重新鉴权开始直至获取到远程控制命令的期间中,如果通信模块又接收到了加密后的第一唤醒/远程控制IP数据包,意味着当前的网络链路重新恢复正常,通信模块可以不再等待常规鉴权完成后才启动远程控制,而是可以直接终止常规流程,并根据从加密后的第一唤醒/远程控制IP数据包中解析出的远程控制命令直接启动远程控制,以尽快完成远程控制。
在上述实施例二中,由于短消息的无线覆盖效果优于数据业务的网络覆盖效果,因此,通过同时以网络形式和短信形式向通信模块发送唤醒命令,既能在网络较好的情况下快速地将唤醒命令传递给通信模块,提高唤醒车辆的效率,又能在网络不好的情况下通过网络覆盖效果更优的唤醒短消息成功唤醒车辆。相比于先以网络形式发送唤醒命令,在网络唤醒不成功的情况下再以唤醒短消息的形式唤醒车辆的方式来说,上述实施例二中的唤醒方案能在提高唤醒速度的基础上同步保持远程控制的成功率,以同时兼顾到快速唤醒车辆与成功唤醒车辆的双重需求,有效降低唤醒车辆的时延。
【实施例三】
图5示例性示出本申请实施例三提供的远程控制方法的流程示意图,该方法适用于车辆管理服务器、车辆中的通信模块和用户终端,例如图1所示意出的车辆管理服务器110、车辆120中的通信模块121和用户终端130。如图5所示,该流程包括如下步骤:
步骤501,通信模块登录车辆管理服务器。
步骤502,通信模块与车辆管理服务器按照第一预设周期协商获得更新的车载密钥。
步骤503,通信模块按照第二预设周期向车辆管理服务器发送有效网络地址,或者还可以实时地向车辆管理服务器发送变化的网络地址。
步骤504,车辆管理服务器更新本地存储的通信模块的网络地址,具体包括:如果在一个第二预设周期内接收到通信模块发送的网络地址,则将本地存储的网络地址更新为接 收到的网络地址且保持有效,如果在一个第二预设周期内未接收到通信模块发送的网络地址,则将本地存储的网络地址设置失效。
步骤505,用户终端登录车辆管理服务器。
示例性的,用户终端通过目标APP登录车辆管理服务器的具体操作可以参照如下几步:
第一步,用户在将新购入的车辆开回家后,可以在手机的目标APP上输入注册信息,注册信息可以包括用户账号和登录密码,还可以包括其它信息,具体不作限定。其中,用户账号可以是用户的手机号码,也可以是指车辆管理服务器分配给用户的标识符,还可以是指其它能够用于唯一标识用户的信息。
第二步,用户终端的目标APP根据用户输入的注册信息生成注册请求,并将注册请求发送给车辆管理服务器。且,为了保证注册请求在发送的过程中不被篡改,目标APP还可以先加密该注册请求再将加密后的注册请求发送给车辆管理服务器。或者,为了提高注册效率,目标APP还可以先压缩注册请求,再将压缩后的注请求发送给车辆管理服务器。或者,目标APP还可以先压缩注册请求,再加密压缩后的注册请求,最后将加密后的压缩注册请求发送给车辆管理服务器,以在快速传输注册请求的同时提高注册的安全性。
第三步,车辆管理服务器接收到注册请求后,先解析注册请求得到用户账号和登录密码,然后在本地新建一个文件夹,该文件夹可以以该用户的用户账号来命名,也可以以能够标志该用户的其它唯一标识来命名。车辆管理服务器可以将注册请求中携带的用户账号和登录密码存储在该文件夹中。示例性地,车辆管理服务器在生成该用户账号对应的文件夹之前,还可以先查询车辆管理服务器中是否已存在该用户对应的文件夹,若存在,则说明该用户之前已经注册过用户账号,因此车辆管理服务器可以直接向目标APP返回注册失败的响应消息。若不存在,则说明该用户还没有注册过用户账号,因此车辆管理服务器可以创建文件夹并执行对应的存储操作。在存储完成后,车辆管理服务器确定该用户账号注册成功,从而车辆管理服务器可以向目标APP发送注册成功的响应消息。
第四步,用户设备中的目标APP向用户显示注册成功的响应消息。
第五步,用户可以直接从注册成功的响应界面切换到登录界面,也可以先关掉目标APP再重新打开目标APP以直接进入登录界面。用户在登录界面上填写用户账号和登录密码,并点击登录按钮,以触发目标APP生成登录请求并发送给车辆管理服务器。
第六步,车辆管理服务器根据登录请求中携带的用户账号找到对应的文件夹,验证用户输入的登录密码是否为该用户账号对应的登录密码,若是,则验证通过,车辆管理服务器可以向目标终端中的目标APP返回主界面信息,以使目标APP加载主界面信息从而切换到主界面,若否,则验证不通过,车辆管理服务器可以向目标终端中的目标APP返回登录失败的响应消息,以便目标APP向用户显示登录失败。
需要说明的是,该部分内容中所涉及到的目标APP与车辆管理服务器的交互流程较为繁琐,且与本方案中的发明点关联不大,因此本申请实施例仅简略地以图5中显示出的“登录”来表示该部分内容,但这并不限定本申请中登录的具体实现方案。
步骤506,车辆管理服务器按照第三预设周期将本地存储的通信模块的网络地址发送给用户终端。
示例性的,车辆管理服务器中还可以维持第四计时器,第四计时器的计时时长为第三预设周期。在用户终端成功登录车辆管理服务器后,车辆管理服务器可以先将本地存储的通信模块的网络地址反馈给用户终端,并启动第四计时器。每当第四计时器计时到对应的 计时时长时,车辆管理服务器都可以重新将本地当前存储的通信模块的网络地址发送给用户终端,并重启第四计时器。其中,在发送网络地址时:如果本地存储的网络地址有效,则车辆管理服务器可以将该网络地址的具体内容发送给用户终端;如果本地存储的网络地址无效,则车辆管理服务器可以向用户终端发送失效指示信息而不发送网络地址的具体内容,或者也可以不执行发送操作而是直接重启第四计时器,直至在某个第四计时器达到计时时长的时刻且网络地址也有效时,再重新发送网络地址的具体内容。如此,无论是车辆管理服务器只周期同步有效的网络地址给用户终端,还是同时周期同步有效网络地址和无效指示信息给用户终端,都能在通信模块网络链路较好的情况下及时让用户终端获知到通信模块最新的网络地址,且还能在通信模块网络不好的情况下让用户终端了解网络链路当前的异常情况,便于为用户终端后续是否通过网络方式发送网络地址提供决策依据。
示例性的,车辆管理服务器在用户终端成功登录车辆管理服务器后还可以执行如下步骤507:
步骤507,车辆管理服务器实时地向用户终端发送本地存储的通信模块的变化的网络地址。
在上述步骤507中,车辆管理服务器还可以监测自己存储的网络地址,一旦发现自己存储的网络地址发生变化,则实时地将变化的网络地址发送给用户终端。对应的,用户终端在接收到车辆管理服务器发送的变化的网络地址后,也可以使用变化的网络地址更新本地存储的通信模块的网络地址。如此,即使车辆管理服务器本地存储的网络地址在一个第三预设周期的时长间隔内发生了变化,用户终端也能及时获取到变化后的最新的网络地址,提高用户终端本地存储网络地址的准确性。
需要说明的是,在车辆管理服务器既周期发送网络地址又实时发送变化的网络地址的情况下,车辆管理服务器可以以最新发送的信息为基准重启第四计时器。例如,车辆管理服务器在某一时刻发送本地存储的网络地址后启动第四计时器,如果在还没计时到第三预设时长之前,又实时发送了变化的网络地址,则车辆管理服务器可以再重启第四计时器,以避免短时间内重复发送相同的网络地址,有效节省车辆管理服务器的通信损耗。
示例性地,在上述步骤506和步骤507中,为保持车辆管理服务器和用户终端更新网络地址的一致性,车辆管理服务器中也可以维持第三计时器但不维持第四计时器,在用户终端登录车辆管理服务器之后,车辆管理服务器每接收到通信模块发送的一个有效网络地址或变化的网络地址之后,都可以在更新本地存储的网络地址的同时,将接收到有效网络地址或变化的网络地址发送给用户终端,同步实现用户终端在同一时刻与车辆管理服务器同步通信模块的网络地址的操作。
应理解,车辆管理服务器与用户终端之间可以以明文的形式交互通信模块的网络地址,也可以使用用户密钥加密后以密文的形式交互通信模块的网络地址,具体不作限定。
步骤508,用户终端更新本地存储的通信模块的网络地址。
在上述步骤508中,在车辆管理服务器发送网络地址或无效指示信息给用户终端的情况下,如果用户终端接收到的是网络地址,则车辆管理服务器可以直接将本地存储的通信模块的网络地址更新为接收到的网络地址,如果用户终端接收到的是无效指示信息,则车辆管理服务器可以将本地存储的通信模块的网络地址设置失效。在车辆管理服务器发送网络地址而不发送无效指示信息给用户终端的情况下,用户终端中还可以维持第五计时器,第五计时器的计时时长也为第三预设周期,用户终端每接收到车辆管理服务器发送的一个 网络地址(可能是周期发送的有效网络地址,也可能是实时发送的变化的网络地址),都可以重启第五计时器。在计时到第五计时器的计时时长之前,如果用户终端接收到了新的网络地址,则可以将本地存储的网络地址更新为新接收到的网络地址。在计时到第五计时器的计时时长时,如果用户终端还未接收到新的网络地址,则可以将本地存储的网络地址设置失效。
步骤509,用户终端在存在远程控制需求时,根据本地存储的通信模块的网络地址、唤醒命令和远程控制命令生成第二唤醒/远程控制IP数据包,使用车用交互密钥加密第二唤醒/远程控制IP数据包,得到加密后的第二唤醒/远程控制IP数据包。
步骤510,用户终端将加密后的第二唤醒/远程控制IP数据包发送给通信模块。
在上述步骤509和步骤510中,通过使用车用交互密钥加密完成通信模块与用户终端之间的数据交互,不仅能保证通信模块与用户终端之间数据交互的安全性,还能尽量使通信模块准确识别非法用户终端伪造的控制命令,提高远程控制车辆的安全性。
具体实施中,当用户终端上的目标APP检测到用户选中某个远程控制命令时,目标APP可以先查询本地存储的通信模块的网络地址是否有效。如果有效,说明通信模块当前大概率处于网络较好的区域,通过网络形式能更快唤醒车辆和控制车辆,因此,用户终端上的目标APP可以将该网络地址放在IP数据包的包头中,将唤醒命令和选中的远程控制命令放在一个IP数据包的包体或分别放在两个IP数据包的包体中,生成第二唤醒/远程控制IP数据包,以便通过网络形式发送给通信模块。如果无效,说明通信模块当前可能处于网络不好的区域,用户终端当前时段内很难通过网络形式唤醒和控制车辆,因此,用户终端上的目标APP可以不生成第二唤醒/远程控制IP数据包,而是直接按照常规的流程完成对车辆的唤醒和远程控制。
示例性的,用户终端还可以提前将短信APP的使用权限授权给目标APP。如此,在确定通信模块的网络地址无效时,用户终端上的目标APP也可以调用短信APP的权限直接向用户车辆发送唤醒短消息,例如同时将第二唤醒/远程控制IP数据包和唤醒短消息发送给通信模块。如此,该示例能通过用户终端以网络形式和短信形式同时指示车辆唤醒,不仅能在快速唤醒车辆的同时兼顾唤醒车辆的成功概率,还能通过用户终端自己完成对通信模块的整个控制逻辑,而可以不再需要车辆管理服务器进行转发,在降低用户终端的通信损耗的情况下,进一步提高远程控制的时效性。
在一种可选地实施方式中,用户终端还可以执行如下步骤511至步骤513:
步骤511,用户终端在发送加密的第二唤醒/远程控制IP数据包的同时,将远程控制命令(即第一远程控制命令)发送给车辆管理服务器。
步骤512,车辆管理服务器根据本地存储的通信模块的网络地址、唤醒命令和远程控制命令,生成第一唤醒/远程控制IP数据包,使用最新协商的车载密钥加密第一唤醒/远程控制IP数据包,得到加密后的第一唤醒/远程控制IP数据包。
步骤513,车辆管理服务器将加密后的第一唤醒/远程控制IP数据包和/或唤醒短消息发送给通信模块。
在上述步骤513中,车辆管理服务器可以通过如下任一方式执行发送操作:
发送方式一,车辆管理服务器发送第一唤醒/远程控制IP数据包但不发送唤醒短消息。如此,即使用户终端与通信模块之间的网络链路异常导致用户终端发送的第二唤醒/远程控制IP数据包没能成功发送给通信模块,只要车辆管理服务器与通信模块之间的网络链路正 常,则唤醒命令和远程控制命令也能以第一唤醒/远程控制IP数据包的网络形式快速发送给通信模块。即,通过车辆管理服务器和用户终端分别发送唤醒/远程控制IP数据包给通信模块,能尽量确保通信模块以网络形式快速接收到唤醒命令和远程控制命令。
发送方式二,车辆管理服务器发送唤醒短消息但不发送第一唤醒/远程控制IP数据包。该方式可以适用于用户终端中的目标APP不具有调用短信APP的权限导致用户终端未能发送唤醒短消息的场景。在该场景下,通过车辆管理服务器以短信形式发送唤醒命令,还能在通信模块网络不好的情况下,尽量通过正常的短信流程执行唤醒操作,提高唤醒车辆的成功概率。且,该发送方式由车辆管理服务器以短信形式独自发送唤醒短消息,以及由用户终端以网络方式独自发送唤醒命令和远程控制命令,能在保证网络和短信形式都覆盖的情况下,分散车辆管理服务器和用户终端的工作压力,节省车辆管理服务器和用户终端的处理资源。
发送方式三,车辆管理服务器同时发送第一唤醒/远程控制IP数据包和唤醒短消息。首先,该方式通过车辆管理服务器和用户终端分别发送唤醒/远程控制IP数据包,能提高通信模块网络接收唤醒命令和远程控制命令的概率。其次,该方式通过车辆管理服务器发送唤醒短消息以作为网络发送形式外的补充机制,能在通信模块网络不好导致通信模块无法接收到车辆管理服务器和用户终端的唤醒/远程控制IP数据包的情况下,尽快切换至正常的短信流程唤醒车辆,在减小远程控制时延的同时还可保证唤醒车辆的成功率。
可知,在上述步骤511至步骤513中,通过在用户终端的直接唤醒和控制之余,向车辆管理服务器发送远程控制命令指示车辆管理服务器间接唤醒和控制,能通过多个途径的唤醒和控制操作,增大唤醒车辆和控制车辆的成功概率。
步骤514,通信模块判断最先接收到的信息为加密后的唤醒/远程控制IP数据包还是唤醒短消息:
当先接收到加密后的第二唤醒/远程控制IP数据包时,执行步骤515;
当先接收到加密后的第一唤醒/远程控制IP数据包时,执行步骤516;
当先接收到唤醒短消息时,执行步骤517。
步骤515,通信模块使用车用交互密钥对加密后的第二唤醒/远程控制IP数据包进行解密,得到唤醒命令和远程控制命令(即第三远程控制命令),根据唤醒命令和远程控制命令唤醒车辆后直接执行远程控制。
在上述步骤515中,通信模块最先接收到加密后的第二唤醒/远程控制IP数据包,说明通信模块与用户终端之间的网络链路的传输效果比其它链路或短信的传输效果更好,因此,通信模块在确定远程控制执行完成后,可以直接通过与用户终端之间的网络链路向用户终端返回远程控制结果,而不再需要通过车辆管理服务器进行转发,以便更快地向用户传达远程控制结果,提高用户使用手机执行远程控制的体验。
步骤516,通信模块使用最近协商得到的车载钥对加密后的第一唤醒/远程控制IP数据包进行解密,得到唤醒命令和远程控制命令(即第二远程控制命令),根据唤醒命令和远程控制命令唤醒车辆后直接执行远程控制。
在上述步骤516中,通信模块最先接收到加密后的第一唤醒/远程控制IP数据包,说明通信模块与车辆管理服务器之间的网络链路的传输效果比其它链路或短信的传输效果更好,通信模块与用户终端之间的网络链路可能出现问题。因此,通信模块在确定远程控制执行完成后,可以通过与车辆管理服务器之间的网络链路向车辆管理服务器返回远程控 制结果,以便通过车辆管理服务器转发给用户终端。
在上述步骤515和步骤516中,在通信模块先接收到任一加密后的唤醒/远程控制IP数据包的情况下,通信模块可以直接丢弃后续接收到的加密后的唤醒/远程控制IP数据包或唤醒短消息,以节省计算资源。
步骤517,通信模块根据唤醒短消息唤醒车辆。
在上述步骤517中,通信模块从按照常规流程唤醒车辆开始直至获取到远程车载命令的期间中,如果通信模块又接收到了加密后的第一唤醒/远程控制IP数据包或加密后的第二唤醒/远程控制IP数据包,意味着当前的网络链路重新恢复正常,通信模块可以不再等待常规鉴权完成后才启动远程控制,而是可以直接终止常规流程,并根据从加密后的第一唤醒/远程控制IP数据包或加密后的第二唤醒/远程控制IP数据包中解析出的远程控制命令直接启动远程控制,以降低远程控制的时延。当然,如果后续还接收到另一加密后的唤醒/远程控制IP数据包,则可直接丢弃。
在上述实施例三中,通过车辆管理服务器周期(或周期且实时)向用户终端同步通信模块的网络地址,使得用户终端能在存在远程控制需求时直接从本地获取通信模块的网络地址,以实现用户终端对车辆的直接唤醒和控制,该方式不仅有助于降低经由车辆管理服务器间接转发唤醒命令和远程控制命令所引入的时延,有效提高远程控制的效率,还能尽量分散车辆管理服务器的工作压力。且,通过以用户终端的网络形式、用户终端的短信形式、车辆管理服务器的网络形式和车辆管理服务器的短信形式中的至少两项向通信模块发送唤醒命令,能通过多种发送方式提高通信模块接收到唤醒命令的概率,提高成功唤醒车辆的可能性。此外,通过用户终端和车辆管理服务器分别以网络形式发送唤醒命令,还能尽量让通信模块以网络形式快速接收到唤醒命令和远程控制命令,降低远程控制车辆的时延。
在一种可选地实施方式中,针对于车辆管理服务器、用户终端和车辆中的通信模块中的每个设备,都可以包含信息维护模块和远程控制模块:信息维护模块用于维护在执行远程控制时会用到的一些信息,如网络地址以及与其它设备进行数据交互的密钥等;而远程控制模块则用于使用信息维护模块所维护的信息完成与其它设备的远程控制流程。其中,信息维护模块和远程控制模块可以分别位于不同的线程,且各自互不干扰,以在维持正常的远程控制流程的同时,实时更新远程控制所需的信息,兼顾远程控制的准确性与及时性。
下面分别对每种设备中的这两个模块进行详细介绍。
车辆管理服务器
图6示例性示出本申请实施例提供的一种车辆管理服务器的内部架构示意图,如图6所示,车辆管理服务器600中可以包括服务器信息维护模块610和服务器远程控制模块620,服务器信息维护模块610用于维护车辆管理服务器600本地存储的通信模块的网络地址和与通信模块最新协商的车载密钥,服务器远程控制模块620用于根据服务器信息维护模块610中维护的通信模块的网络地址和车载密钥向通信模块发起远程控制。
如图6所示,在实施中,服务器信息维护模块610在确定通信模块登录车辆管理服务器后,可以并行执行如下四个操作:
操作一,开始运行第三计时器,如果在第三计时器超时之前(即计时到第二预设时长之前)接收到了通信模块发送的加密的网络地址(如携带加密的有效网络地址或加密的变 化的网络地址的心跳数据包),则通过使用最新协商的车载密钥解密该加密的网络地址获得通信模块的网络地址,以此更新本地存储的通信模块的网络地址,并重启第三计时器。如果在第三计时器超时之前未接收到通信模块发送的加密的网络地址,则设置本地存储的通信模块的网络地址为无效状态,并重启第三计时器。
操作二,如果接收到通信模块发送的密钥更新请求,则为通信模块设置新的车载密钥,并返回给通信模块。
操作三,开始运行第四计时器,每当第四计时器超时(即计时到第三预设时长),则将本地存储的通信模块的网络地址发送给用户终端,并重启第四计时器。
操作四,实时监测本地存储的通信模块的网络地址,一旦监测到网络地址发生变化,则将变化的网络地址发送给用户终端,并重启第四计时器。
需要说明的是,上述操作一是指车辆管理服务器单独按照第二预设时长或实时接收通信模块的网络地址,操作三和操作四是指车辆管理服务器单独按照第三预设时长或实时向用户终端发送通信模块的网络地址,第二预设时长和第三预设时长可以为不同时长。在另一种情况下,第二预设时长和第三预设时长也可以是同一时长,在这种情况下,上述操作一、操作三和操作四也可以替换为如下操作:
操作五,开始运行第三计时器,如果在第三计时器超时之前(即计时到第二预设时长之前)接收到了通信模块发送的加密的网络地址,则通过使用最新协商的车载密钥对加密的网络地址进行解密以获得通信模块的网络地址后,将获取的网络地址发送给用户终端,并更新本地存储的通信模块的网络地址,重启第三计时器。如果在第三计时器超时之前未接收到车辆管理服务器发送的加密的网络地址,则设置本地存储的通信模块的网络地址为无效状态,重启第三计时器,将失效指示信息发送给用户终端以指示用户终端失效本地存储的网络地址,或者不发送任何信息以等待用户终端自己主动失效本地存储的网络地址。
相应的,服务器远程控制模块620在接收到用户终端的远程控制命令后,可以执行如下操作:
获取服务器信息维护模块610维护的最新的车载密钥和本地存储的通信模块的网络地址。若通信模块的网络地址有效,则根据该网络地址、以及唤醒命令和/或远程控制命令生成第一唤醒/远程控制IP数据包,使用最新的车载密钥加密第一唤醒/远程控制IP数据包后,将加密后的第一唤醒/远程控制IP数据包和唤醒短消息一起发送给通信模块。例如,根据网络地址和唤醒命令生成唤醒IP数据包,根据网络地址和远程控制命令生成远程控制IP数据包,对这两个IP数据包加密后连同唤醒短消息一起送给通信模块。或者,根据网络地址、唤醒命令和远程控制命令生成唤醒加远程控制IP数据包,对唤醒加远程控制IP数据包加密后连同唤醒短消息一起送给通信模块。若通信模块的网络地址无效,则向通信模块发送唤醒短消息。
用户终端
图7示例性示出本申请实施例提供的一种用户终端的内部架构示意图,如图7所示,用户终端700中可以包括用户终端信息维护模块710和用户终端远程控制模块720,用户终端信息维护模块710用于维护用户终端700本地存储的通信模块的网络地址,用户终端远程控制模块720用于根据用户终端信息维护模块710维护的通信模块的网络地址向通信模块发起远程控制。
如图7所示,在实施中,用户终端信息维护模块710在确定用户终端登录车辆管理服 务器后,可以执行如下操作:
开始运行第五计时器,如果在第五计时器超时之前(即计时到第三预设时长之前),接收到了车辆管理服务器发送的加密的网络地址(如携带加密的有效网络地址或加密的变化的网络地址的心跳数据包),则通过使用用户密钥对加密的网络地址进行解密后获得通信模块的网络地址,以此更新本地存储的通信模块的网络地址,并重启第五计时器。如果在第五计时器超时之前未接收到车辆管理服务器发送的加密的网络地址,或接收到车辆管理服务器发送的失效指示信息,则设置本地存储的通信模块的网络地址为无效状态,并重启第五计时器。
相应的,用户终端远程控制模块720在存在远程控制需求时,可以执行如下操作:
获取用户终端信息维护模块710维护的本地存储的通信模块的网络地址。若通信模块的网络地址有效,则根据该网络地址、以及唤醒命令和/或远程控制命令生成第二唤醒/远程控制IP数据包,使用车用交互密钥加密第二唤醒/远程控制IP数据包后发送给通信模块。或者,还可以向车辆管理服务器发送远程控制命令。或者,在具有发送信息的权限时,还可以同时将唤醒短消息也发送给通信模块。若通信模块的网络地址无效,则向车辆管理服务器发送远程控制命令,以经由车辆管理服务器以网络形式发送第一唤醒/远程控制IP数据包,和/或,以短信形式发送唤醒短消息。
车辆中的通信模块
图8示例性示出本申请实施例提供的一种通信模块的内部架构示意图,如图8所示,通信模块800中可以包括通信模块信息维护模块810和通信模块远程控制模块820,通信模块信息维护模块810用于与车辆管理服务器协商最新的车载密钥,以及向车辆管理服务器上报自己的网络地址,通信模块远程控制模块820用于根据通信模块信息维护模块810维护的车载密钥唤醒车辆后直接执行远程控制。
如图8所示,在实施中,通信模块信息维护模块810在确定通信模块登录车辆管理服务器后,可以并行执行如下三个操作:
操作一,开始运行第一计时器,每当第一计时器超时(即计时到第一预设时长时)时,向车辆管理服务器发送密钥更新请求,并保存车辆管理服务器返回的车载密钥,重启第一计时器。
操作二,开始运行第二计时器,每当第二计时器超时(即计时到第二预设时长时)时,使用最新协商得到的车载密钥加密自己当前的网络地址后发送给车辆管理服务器,并重启第二计时器。
操作三,实时监测自己的网络地址,一旦监测到网络地址发生变化,则使用最新协商得到的车载密钥加密变化的网络地址后发送给车辆管理服务器,并重启第二计时器。
相应的,通信模块远程控制模块820在接收到车辆管理服务器或用户终端的信息后,可以执行如下操作:
在最先接收到的信息为加密的唤醒/远程控制IP数据包的情况下:如果是车辆管理服务器发送的加密的第一唤醒/远程控制IP数据包,则使用通信模块信息维护模块810维护的最新的车载密钥对加密的第一唤醒/远程控制IP数据包进行解密,得到唤醒命令和远程控制命令;如果是用户终端发送的加密的第二唤醒/远程控制IP数据包,则使用车用交互密钥对加密的第二唤醒/远程控制IP数据包进行解密,得到唤醒命令和远程控制命令。之后,先根据唤醒命令唤醒车辆中的各个电子控制单元,再将远程控制命令发送给对应的电 子控制单元,以指示对应的电子控制单元执行远程控制。且,在此期间,还可以丢弃后续接收到的唤醒短消息或另一个加密后的唤醒/远程控制IP数据包。在最先接收到的信息为唤醒短消息的情况下,按照常规流程唤醒和远程控制车辆,即,先根据唤醒短消息唤醒车辆中的各个电子控制单元,再通过重新接入车辆管理服务器获取准确的车载密钥和通信模块的网络地址,并等待接收到车辆管理服务器发送的远程控制命令后,将远程控制命令发送给对应的电子控制单元,且,在接收到远程控制命令之前,若又接收到加密的唤醒/远程控制IP数据包,则可以不再执行常规流程,而是直接对加密的唤醒/远程控制IP数据包进行解密以获得远程控制命令,并发送给对应的电子控制单元,以直接启动远程控制。
在上述实施方式中,通过在每个设备中设置两个并行的模块分别执行信息维护和远程控制,能解耦远程控制业务的信息管理操作和控制执行操作,有效降低两个操作相互干扰的概率,提高对整个远程控制流程的集中管控。
本申请上述实施例中的远程控制方案能从多个角度综合降低远程控制的时延。下面通过一个具体的实验数据,说明本申请实施例中的远程控制方案相比于业界常用的两种远程控制方案在降低远程控制时延上的突出性。需要说明的是,下文中只将数据中转流程所耗费的时间作为时延,而不考虑执行唤醒操作和执行远程控制操作的执行时间。
图9示例性示出业界常用的一种远程控制方案的时延分析示意图,如图9所示,该方案主要通过如下几个步骤完成远程控制:
步骤901,用户终端向车辆管理服务器发送远程控制命令,大约需要500ms;
步骤902,车辆管理服务器向车辆中的通信模块发送唤醒短消息,短信传输唤醒短消息大约需要15s,通信模块在唤醒车辆时向包含车载网关在内的车内部件发送唤醒命令大约需要4s;
步骤903,通信模块确定成功唤醒车辆后,向车辆管理服务器发送唤醒成功响应,并向车辆管理服务器发起接入流程,接入成功后与车辆管理服务器交互最新协商的车载密钥,并将自己的网络地址发送给车辆管理服务器,大约需要3000ms;
步骤904,车辆管理服务器根据步骤903中协商得到的车载密钥以及接收到的通信模块的网络地址,以加密的形式向通信模块发送远程控制命令,大约需要500ms;
步骤905,通信模块确定执行完远程控制命令后,向车辆管理服务器返回远程控制结果,大约需要500ms;
步骤906,车辆管理服务器向用户终端转发远程执行结果,大约需要500ms。
根据上述内容可知,采用如图9所示意的现有方案,除去执行唤醒和执行远程控制所必须的执行时间之外,还需要大概24s(500ms+15s+4s+3000ms+500ms+500ms+500ms)。即,用户在手机上点击远程控制命令后,至少需要等待24s才能获取到远程控制结果。虽然该方案的远程控制时延较大,但短信方式能大概率让通信模块接收到唤醒短消息,而不依赖于通信模块的网络状况,因此唤醒的成功率比较高。
图10示例性示出业界常用的另一种远程控制方案的时延分析示意图,在该方案中,通信模块在登录车辆管理服务器后,会周期性地将自己的网络地址同步给车辆管理服务器,以便车辆管理服务器能直接利用网络形式唤醒车辆。如图10所示,该方案主要通过如下几个步骤完成远程控制:
步骤1001,用户终端向车辆管理服务器发送远程控制命令,大约需要500ms;
步骤1002,车辆管理服务器先根据通信模块周期同步的最新的网络地址,通过网络形式向通信模块发送唤醒数据包,并等待通信模块的唤醒成功响应。如果在2s的时间内还未收到唤醒成功响应,则再通过短信形式向通信模块发送唤醒短消息,并等待通信模块的唤醒成功响应。在该过程中,如果唤醒数据包能成功发送给通信模块,则大约需要500ms即可开始唤醒车辆,而通信模块在唤醒车辆时向包含车载网关在内的车内部件发送唤醒命令大约需要4s,即共计约4.5s。如果唤醒数据包无法成功发送给通信模块,则大约需要21s(即发出唤醒数据包后等待的2s、发送唤醒短消息所需的15s以及通信模块向车内部件发送唤醒命令所需的4s)才能开始唤醒车辆。即,大约需要4.5s~21s之间的一个时长。
步骤1003,通信模块确定车辆成功唤醒后,向车辆管理服务器发送唤醒成功响应,与车辆管理服务器交互最新协商的车载密钥,并将自己的网络地址发送给车辆管理服务器,大约需要3000ms;
步骤1004,车辆管理服务器根据步骤1003中协商得到的车载密钥以及接收到的通信模块的网络地址,以加密的形式向通信模块发送远程控制命令,大约需要500ms;
步骤1005,通信模块确定执行完远程控制命令后,向车辆管理服务器返回远程控制结果,大约需要500ms;
步骤1006,车辆管理服务器向用户终端转发远程执行结果,大约需要500ms。
根据上述内容可知,采用如图10所示意的现有方案,除去执行唤醒和执行远程控制所必须的执行时间之外,至少需要大概9.5s(500ms+4.5s+3000ms+500ms+500ms+500ms)的时间。即,用户在手机上点击远程控制命令后,需要等待9.5s才能获取到远程控制结果。该方案所需的最短时延比图9所示意的方案的时延明显降低,但该最短时延只能在通信模块与车辆管理服务器之间的网络通信状况非常好的情况下才能实现。当通信模块与车辆管理服务器之间的网络通信状况不好时,该方案需要等待2s的时长后切换至唤醒短消息的方式重新执行唤醒,也即是说,最差情况下会需要大概26s(500ms+2s+15s+4s+3000ms+500ms+500ms+500ms)的时间。可见,图10所示意的现有方案实际上是以牺牲唤醒成功率为条件实现降低唤醒时延的目的,无法同时兼顾到降低唤醒时延和提高唤醒成功率。
图11示例性示出本申请实施例二中的一种远程控制方案的时延分析示意图,在该方案中,通信模块在登录车辆管理服务器后,不仅会周期(或周期且实时)向车辆管理服务器发送自己的网络地址,还会周期与车辆管理服务器交互协商最新的车载密钥,以便车辆管理服务器能直接利用最新的网络地址和车载密钥以网络形式唤醒车辆后直接进行远程控制。如图11所示,该方案主要通过如下几个步骤完成远程控制:
步骤1101,用户终端向车辆管理服务器发送远程控制命令,大约需要500ms;
步骤1102,车辆管理服务器根据通信模块周期同步的最新的网络地址和周期协商的车载密钥,通过网络形式向通信模块同时发送加密的唤醒命令和远程控制命令,且同时还会通过短信形式向通信模块发送唤醒短消息。在该过程中,如果唤醒命令和远程控制命令能以网络形式成功发送给通信模块,则大约需要500ms即可开始唤醒并远程控制车辆,而通信模块在唤醒车辆时向包含车载网关在内的车内部件发送唤醒命令大约需要4s,即共计约4.5s。即使唤醒命令和远程控制命令无法以网络形式成功发送给通信模块,也能利用同时发送的唤醒短消息直接切换至短信形式唤醒车辆,即短信传输唤醒短消息所需的15s和通信模块向车内部件发送唤醒命令所需的4s,共计19s。即,该方式大约需要4.5s~19s之间 的一个时长。
首先,上述步骤1102同时以网络方式和短信方式发送相关信息,而不是先网络发送不成功再切换至短信发送,因此能在网络方式不成功的情况下节省中间等待所需的2s。其次,在唤醒命令和远程控制命令能以网络形式成功发送给通信模块的情况下,通信模块在唤醒车辆后直接执行远程控制,在这两个操作之间无需再与车辆管理服务器协商车载密钥和网络地址,也无需再发送远程控制命令,因此该方案还能节省协商车载密钥和网络地址所需的3000ms和发送远程控制命令所需的500ms。
步骤1103,通信模块确定执行完远程控制命令后,向车辆管理服务器返回远程控制结果,大约需要500ms;
步骤1104,车辆管理服务器向用户终端转发远程控制结果,大约需要500ms。
根据上述内容可知,采用如图11所示意的方案,除去执行唤醒和执行远程控制所必须的执行时间之外,最短只需要大概6s(500ms+4.5ms+500ms+500ms)的时间。即,用户在手机上点击远程控制命令后,最短只需等待6s就能获取到远程控制结果。可知,该方案所需的最短时延6s,相比于图9中固定的24s时延来说优化了大约75%(即(24-6)/24),相比于图10中的最短时延9.5s来说优化了大约36.8%(即(9.5-6)/9.5),该方案所需的最短时延相比于图9和图10所示意的现有方案明显降低。即使在通信模块与车辆管理服务器的网络通信状况不好的情况下,该方案也能直接切换至同时发送的唤醒短消息来唤醒车辆,即,最差情况下也只会与图9中的方案具有相同时延。且,该方案为保证最短时延下唤醒车辆的成功率,还在周期向车辆管理服务器同步通信模块的网络地址之余,实时同步通信模块变化的网络地址,进一步增加了以最短时延控制车辆的成功概率。可见,图11所示意的方案能同时兼顾到降低唤醒时延和提高唤醒成功率的统一。
图12示例性示出本申请实施例三中的一种远程控制方案的时延分析示意图,在该方案中,车辆管理服务器在用户终端成功登录车辆管理服务器后,会周期(或周期且实时)向用户终端发送通信模块的网络地址,以便用户终端能直接利用最新的网络地址以网络形式唤醒车辆后直接进行远程控制。如图12所示,该方案主要通过如下几个步骤完成远程控制:
步骤1201,用户终端在存在远程控制需求时,直接根据车辆管理服务器最新发送的通信模块的网络地址,通过网络形式向通信模块同时发送加密的唤醒命令和远程控制命令,大约需要500ms,而通信模块向车内部件发送唤醒命令大约需要4s,共计4.5s。且,用户终端还会同时向车辆管理服务器发送远程控制命令,大约需要500ms。
在用户终端能以网络形式成功发送唤醒命令和远程控制命令的情况下,通信模块在唤醒车辆后直接执行远程控制,而不再需要车辆管理服务器间接唤醒和远程控制,因此能节省通过车辆管理服务器中转数据所引入的时延。在用户终端无法以网络形式成功发送唤醒命令和远程控制命令的情况下,用户终端通过车辆管理服务器间接按照图11中的方案唤醒和远程控制车辆,即最差也与图11中的方案具有相同时延。
步骤1202,通信模块确定执行完远程控制命令后,直接向用户终端返回远程控制结果,大约需要500ms。
根据上述内容可知,采用如图12所示意的方案,除去执行唤醒和执行远程控制所必须的执行时间之外,最短只需要大概5秒(4.5ms+500ms)的时间。该方案所需的最短时延比图11所示意的方案中的时延还要低。即使在用户终端和通信模块的网络通信状态不好 的情况下,该方案也能直接切换为通过同时发送给车辆管理服务器的远程控制命令来唤醒和远程控制车辆,即,最差情况下也只会与图11所示意的方案具有相同时延。且,该方案为保证最短时延下唤醒车辆的成功率,还在车辆管理服务器周期向用户终端同步通信模块的网络地址之余,实时同步通信模块变化的网络地址,进一步增加了以最短时延控制车辆的成功概率。可见,图12所示意的方案也能同时兼顾到降低唤醒时延和提高唤醒成功率的统一。
综上所述,本申请的上述实施例给出的远程控制方案相比于图9及图10所给出的现有方案来说,能在大大降低远程控制时延的基础上,尽量保证原有甚至实现更高的唤醒成功率。
需要说明的是,上述各个信息的名称仅仅是作为示例,随着通信技术的演变,上述任意信息均可能改变其名称,但不管其名称如何发生变化,只要其含义与本申请上述信息的含义相同,则均落入本申请的保护范围之内。
上述主要从各个网元之间交互的角度对本申请提供的方案进行了介绍。可以理解的是,上述实现各网元为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本发明能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
根据前述方法,图13示例性示出本申请实施例提供的一种远程控制装置的结构示意图,如图13所示,该装置可以为车辆中的通信模块、车辆管理服务器或用户终端,也可以为芯片或电路,比如可设置于通信模块中的芯片或电路,再比如可设置于车辆管理服务器中的芯片或电路,又比如可设置于用户终端中的芯片或电路。其中,通信模块可以为车辆中具有通信能力的部件,示例性地可以为如图2、图3或图5中任一项所述的通信模块,车辆管理服务器可以为具有管理能力的设备,示例性地可以为如图2、图3或图5中任一项所述的车辆管理服务器,用户终端可以为具有数据交互能力的设备,示例性地可以为如图2、图3或图5中任一项所述的用户终端。
如图13所示,该远程控制装置1301可以包括处理器1302、存储器1304和收发器1303,还可以进一步包括总线系统,其中,处理器1302、存储器1304和收发器1303可以通过总线系统相连。
应理解,上述处理器1302可以是一个芯片。例如,该处理器1302可以是现场可编程门阵列(field programmable gate array,FPGA),可以是专用集成芯片(application specific integrated circuit,ASIC),还可以是系统芯片(system on chip,SoC),还可以是中央处理器(central processor unit,CPU),还可以是网络处理器(network processor,NP),还可以是数字信号处理电路(digital signal processor,DSP),还可以是微控制器(micro controller unit,MCU),还可以是可编程控制器(programmable logic device,PLD)或其他集成芯片。
在实现过程中,上述方法的各步骤可以通过处理器1302中的硬件的集成逻辑电路或者软件形式的指令完成。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器1302中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器 等本领域成熟的存储介质中。该存储介质位于存储器1304,处理器1302读取存储器1304中的信息,结合其硬件完成上述方法的步骤。
应注意,本申请实施例中的处理器1302可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
可以理解,本申请实施例中的存储器1304可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。应注意,本文描述的系统和方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
该远程控制装置1301对应车辆中的通信模块的情况下,该远程控制装置可以包括处理器1302、收发器1303和存储器1304。该存储器1304用于存储指令,该处理器1302用于执行该存储器1304存储的指令,以实现如上图2、图3或图5中所示的任一项或任意多项对应的方法中通信模块的相关方案,或执行上述实施例一至实施例三所示任一实施例中通信模块所执行的方法。例如,当远程控制装置1301为通信模块,且执行实施例一时:收发器1303可以在通信模块处于支持远程唤醒功能的休眠状态时,接收唤醒命令和远程控制命令,处理器1302可以根据唤醒命令,使通信模块进入唤醒状态,以及,收发器1303可以根据远程控制命令,向车辆内的部件发送控制消息,该控制消息用于启动该部件或者指示该部件执行远程控制命令所指示的操作。
该远程控制装置1301所涉及的与本申请实施例提供的通信模块的技术方案相关的概念,解释和详细说明及其他步骤请参见前述方法或其他实施例中关于这些内容的描述,此处不做赘述。
该远程控制装置1301对应车辆管理服务器的情况下,该远程控制装置可以包括处理器1302、收发器1303和存储器1304。该存储器1304用于存储指令,该处理器1302用于执行该存储器1304存储的指令,以实现如上图2、图3或图5中所示的任一项或任意多项 对应的方法中车辆管理服务器的相关方案,或执行上述实施例一至实施例三所示任一实施例中车辆管理服务器所执行的方法。例如,远程控制装置1301为车辆管理服务器,且执行实施例一时:收发器1303在处理器1302的控制下,可以从用户终端接收第一远程控制命令,基于第一远程控制命令,向车辆发送唤醒命令,以便使车辆中的通信模块进入唤醒状态,以及,在通信模块处于支持远程唤醒功能的休眠状态时,基于第一远程控制命令,向车辆中的通信模块发送第二远程控制命令,该第二远程控制命令用于指示车辆内的部件启动或者执行第一操作。
该远程控制装置1301所涉及的与本申请实施例提供的车辆管理服务器的技术方案相关的概念,解释和详细说明及其他步骤请参见前述方法或其他实施例中关于这些内容的描述,此处不做赘述。
该远程控制装置1301对应用户终端的情况下,该远程控制装置可以包括处理器1302、收发器1303和存储器1304。该存储器1304用于存储指令,该处理器1302用于执行该存储器1304存储的指令,以实现如上图2、图3或图5中所示的任一项或任意多项对应的方法中用户终端的相关方案,或执行上述实施例一至实施例三所示任一实施例中用户终端所执行的方法。例如,远程控制装置1301为用户终端,且执行实施例一时:收发器1303在处理器1302的控制下,可以从车辆管理服务器接收车辆中的通信模块的网络地址,在通信模块处于支持远程唤醒功能的休眠状态时,根据该网络地址,向车辆发送第三远程控制命令,第三远程控制命令用于指示车辆内的部件启动或者执行第一操作。
该远程控制装置1301所涉及的与本申请实施例提供的用户终端的技术方案相关的概念,解释和详细说明及其他步骤请参见前述方法或其他实施例中关于这些内容的描述,此处不做赘述。
基于以上实施例以及相同构思,图14示例性示出本申请实施例提供的一种远程控制装置的结构示意图,如图14所示,该远程控制装置1401可以为车辆中的通信模块,示例性地可以为如图2、图3或图5中任一项所述的通信模块,也可以为芯片或电路,比如可设置于通信模块中的芯片或电路。该远程控制装置可以实现如上图2、图3或图5中所示的任一项或任意多项对应的方法中通信模块所执行的步骤,或执行上述实施例一至实施例三所示任一实施例中通信模块所执行的方法。
如图14所示,该远程控制装置1401可以包括收发单元1402、唤醒单元1403和控制单元1404。当远程控制装置1401为通信模块,且执行实施例一时:收发单元1402可以在车辆中的通信模块处于支持远程唤醒功能的休眠状态时,接收唤醒命令和远程控制命令,唤醒单元1403可以根据该唤醒命令,使通信模块进入唤醒状态,控制单元1404可以根据远程控制命令,向车辆内的部件发送控制消息,该控制消息用于启动车辆内的部件或者指示车辆内的部件执行远程控制命令所指示的操作。
收发单元1402在发送信息时可以为发送单元或发射器,收发单元1402在接收信息时可以为接收单元或接收器,收发单元1402可以为收发器,此收发器、发射器或接收器可以为射频电路,当远程控制装置1401包含存储单元时,该存储单元用于存储计算机指令,唤醒单元1403和控制单元1404分别与存储单元通信连接,唤醒单元1403和控制单元1404分别执行存储单元存储的计算机指令,使远程控制装置1401可以用于执行上述实施例一至实施例三所示任一实施例中通信模块所执行的方法。其中,唤醒单元1403或控制单元1404可以是一个通用中央处理器(CPU),微处理器,特定应用集成电路(application specific  intergrated circuit,ASIC)。
当远程控制装置1401为通信模块时,收发单元1402可以是输入和/或输出接口、管脚或电路等。唤醒单元1403和控制单元1404可执行存储单元存储的计算机执行指令,以使该远程控制装置1401内的芯片执行实施例一至实施例三所示任一实施例所执行的方法。可选地,存储单元为芯片内的存储单元,如寄存器、缓存等,存储单元还可以是远程控制装置1401内的位于该芯片外部的存储单元,如只读存储器(read only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)等。
该远程控制装置1401所涉及的与本申请实施例提供的技术方案相关的概念,解释和详细说明及其他步骤请参见前述方法或其他实施例中关于这些内容的描述,此处不做赘述。
基于以上实施例以及相同构思,图15示例性示出本申请实施例提供的另一种远程控制装置的示意图,如图15所示,该远程控制装置1501可以为车辆管理服务器,示例性地可以为如图2、图3或图5中任一项所述的车辆管理服务器,也可以为芯片或电路,比如可设置于车辆管理服务器中的芯片或电。该远程控制装置1501可以实现如上图2、图3或图5中所示的任一项或任意多项对应的方法中车辆管理服务器所执行的步骤,或执行上述实施例一至实施例三所示任一实施例中车辆管理服务器所执行的方法。
如图15所示,该远程控制装置1501可以包括收发单元1502和处理单元1503。当远程控制装置1501为车辆管理服务器,且执行实施例一时:收发单元1502在处理单元1503的控制下,可以从用户终端接收第一远程控制命令,基于第一远程控制命令,向车辆发送唤醒命令,该唤醒命令用于使车辆中的通信模块进入唤醒状态,以及,在通信模块处于支持远程唤醒功能的休眠状态时,基于第一远程控制命令,向车辆发送第二远程控制命令,该第二远程控制命令用于指示车辆内的部件启动或者执行第一操作。
收发单元1502在发送信息时可以为发送单元或发射器,收发单元1502在接收信息时可以为接收单元或接收器,收发单元1502可以为收发器,此收发器、发射器或接收器可以为射频电路,当远程控制装置1501包含存储单元时,该存储单元用于存储计算机指令,处理单元1503与存储单元通信连接,处理单元1503执行存储单元存储的计算机指令,使远程控制装置1501可以用于执行上述实施例一至实施例三所示任一实施例中车辆管理服务器所执行的方法。其中,处理单元1503可以是一个通用中央处理器(CPU),微处理器,特定应用集成电路(ASIC)。
当远程控制装置1501为芯片时,收发单元1502可以是输入和/或输出接口、管脚或电路等。处理单元1503可执行存储单元存储的计算机执行指令,以使该远程控制装置1501内的芯片执行实施例一至实施例三所示任一实施例所执行的方法。可选地,存储单元为芯片内的存储单元,如寄存器、缓存等,存储单元还可以是远程控制装置1501内的位于该芯片外部的存储单元,如只读存储器(ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(RAM)等。
该远程控制装置1501所涉及的与本申请实施例提供的技术方案相关的概念,解释和详细说明及其他步骤请参见前述方法或其他实施例中关于这些内容的描述,此处不做赘述。
基于以上实施例以及相同构思,图16示例性示出本申请实施例提供的又一种远程控制装置的示意图,如图16所示,该远程控制装置1601可以为用户终端,示例性地可以为如图2、图3或图5中任一项所述的用户终端,也可以为芯片或电路,比如可设置于用户 终端中的芯片或电路。该远程控制装置1601可以实现如上图2、图3或图5中所示的任一项或任意多项对应的方法中用户终端所执行的步骤,或执行上述实施例一至实施例三所示任一实施例中用户终端所执行的方法。
如图16所示,该远程控制装置1601可以包括收发单元1602和处理单元1603。当远程控制装置1601为用户终端,且执行实施例一时:收发单元1602在处理单元1603的控制下,可以从车辆管理服务器接收车辆内的通信模块的网络地址,在通信模块处于支持远程唤醒功能的休眠状态时,根据该网络地址,向车辆发送第三远程控制命令,该第三远程控制命令用于指示车辆内的部件启动或者执行第一操作。
收发单元1602在发送信息时可以为发送单元或发射器,收发单元1602在接收信息时可以为接收单元或接收器,收发单元1602可以为收发器,此收发器、发射器或接收器可以为射频电路,当远程控制装置1601包含存储单元时,该存储单元用于存储计算机指令,处理单元1603与存储单元通信连接,处理单元1603执行存储单元存储的计算机指令,使远程控制装置1601可以用于执行上述实施例一至实施例三所示任一实施例中用户终端所执行的方法。其中,处理单元1603可以是一个通用中央处理器(CPU),微处理器,特定应用集成电路(ASIC)。
当远程控制装置1601为芯片时,收发单元1602可以是输入和/或输出接口、管脚或电路等。处理单元1603可执行存储单元存储的计算机执行指令,以使该远程控制装置1601内的芯片执行实施例一至实施例三所示任一实施例所执行的方法。可选地,存储单元为芯片内的存储单元,如寄存器、缓存等,存储单元还可以是远程控制装置1601内的位于该芯片外部的存储单元,如只读存储器(ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(RAM)等。
该远程控制装置1601所涉及的与本申请实施例提供的技术方案相关的概念,解释和详细说明及其他步骤请参见前述方法或其他实施例中关于这些内容的描述,此处不做赘述。
应理解,以上远程控制装置1401、远程控制装置1501和远程控制装置1601的单元的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。本申请实施例中,收发单元1402、收发单元1502和收发单元1602可以由上述图13的收发器1303实现,唤醒单元1403、控制单元1404、处理单元1503和处理单元1603可以由上述图13的处理器1302实现。
根据本申请实施例提供的方法,本申请还提供一种计算机程序产品,该计算机程序产品包括:计算机程序代码,当该计算机程序代码在计算机上运行时,使得该计算机执行图2、图3或图5所示实施例中任意一个实施例的方法。
根据本申请实施例提供的方法,本申请还提供一种计算机可读存储介质,该计算机可读介质存储有程序代码,当该程序代码在计算机上运行时,使得该计算机执行图2、图3或图5所示实施例中任意一个实施例的方法。
根据本申请实施例提供的方法,本申请还提供一种车辆,该车辆可以包括通信模块,通信模块可以用于执行如上图2、图3或图5中所示的任一项或任意多项对应的方法中通信模块所执行的步骤,或执行上述实施例一至实施例三所示任一实施例中通信模块所执行的步骤。
根据本申请实施例提供的方法,本申请还提供一种远程控制系统,其包括前述的车辆管理服务器、车辆以及用户终端。
上述实施例可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、车辆管理服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、车辆管理服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的车辆管理服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,高密度数字视频光盘(digital video disc,DVD))、或者半导体介质(例如,固态硬盘(solid state drive,SSD))等。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (34)

  1. 一种远程控制方法,其特征在于,所述方法应用于车辆中的通信模块,包括:
    在所述通信模块处于支持远程唤醒功能的休眠状态时,接收唤醒命令和远程控制命令;
    根据所述唤醒命令,使所述通信模块进入唤醒状态;
    根据所述远程控制命令,向所述车辆内的部件发送控制消息,所述控制消息用于启动所述部件或者指示所述部件执行所述远程控制命令指示的操作。
  2. 如权利要求1所述的方法,其特征在于,所述远程控制命令为国际互连协议IP数据包,所述唤醒命令为短消息或者IP数据包。
  3. 如权利要求1或2所述的方法,其特征在于,所述唤醒命令和所述远程控制命令是车辆管理服务器发送的,或者是登录所述车辆管理服务器的用户终端发送的。
  4. 如权利要求1-3任一项所述的方法,其特征在于,在所述接收唤醒命令和远程控制命令之前,所述方法还包括以下操作中的至少一项:
    登录车辆管理服务器;
    周期性地将所述通信模块的有效网络地址发送给所述车辆管理服务器;
    将所述通信模块的更新的网络地址发送给所述车辆管理服务器;
    周期性地向所述车辆管理服务器发送心跳数据包;
    向所述车辆管理服务器发送更新后的密钥;或者
    周期性地与所述车辆管理服务器进行鉴权认证。
  5. 一种远程控制方法,其特征在于,所述方法包括:
    从用户终端接收第一远程控制命令;
    基于所述第一远程控制命令,向车辆发送唤醒命令,所述唤醒命令用于使所述车辆中的通信模块进入唤醒状态;
    在所述通信模块处于支持远程唤醒功能的休眠状态时,基于所述第一远程控制命令,向所述车辆发送第二远程控制命令,所述第二远程控制命令用于指示所述车辆内的部件启动或者执行第一操作。
  6. 如权利要求5所述的方法,其特征在于,所述第二远程控制命令为国际互连协议IP数据包,所述唤醒命令为短消息或者IP数据包。
  7. 如权利要求5或6所述的方法,其特征在于,在所述发送唤醒命令和所述发送第二远程控制命令之前,所述方法还包括以下操作中的至少一项:
    接受所述通信模块的登录;
    周期性地从所述通信模块接收所述通信模块的有效网络地址;
    从所述通信模块接收所述通信模块的更新的网络地址;
    周期性地从所述通信模块接收心跳数据包;
    从所述通信模块接收更新后的密钥;或者
    周期性地与所述通信模块进行鉴权认证。
  8. 如权利要求5至7任一项所述的方法,其特征在于,在所述从用户终端接收第一远程控制命令之前,所述方法还包括:
    将所述通信模块的网络地址发送给所述用户终端。
  9. 一种远程控制方法,其特征在于,所述方法包括:
    从车辆管理服务器接收车辆中的通信模块的网络地址;
    在所述通信模块处于支持远程唤醒功能的休眠状态时,根据所述网络地址,向所述车辆发送第三远程控制命令,所述第三远程控制命令用于指示所述车辆内的部件启动或者执行第一操作。
  10. 如权利要求9所述的方法,其特征在于,所述方法还包括:
    根据所述网络地址,向所述车辆发送唤醒命令,所述唤醒命令用于使所述通信模块进入唤醒状态。
  11. 如权利要求9或10所述的方法,其特征在于,所述方法还包括:
    向所述车辆管理服务器发送第一远程控制命令,所述第一远程控制命令用于指示所述车辆内的部件启动或者执行所述第一操作。
  12. 一种远程控制装置,其特征在于,包括:
    收发单元,用于在车辆中的通信模块处于支持远程唤醒功能的休眠状态时,接收唤醒命令和远程控制命令;
    唤醒单元,用于根据所述唤醒命令,使所述通信模块进入唤醒状态;
    控制单元,用于根据所述远程控制命令,向所述车辆内的部件发送控制消息,所述控制消息用于启动所述部件或者指示所述部件执行所述远程控制命令指示的操作。
  13. 如权利要求12所述的装置,其特征在于,所述远程控制命令为国际互连协议IP数据包,所述唤醒命令为短消息或者IP数据包。
  14. 如权利要求12或13所述的装置,其特征在于,所述唤醒命令和所述远程控制命令是车辆管理服务器发送的,或者是登录所述车辆管理服务器的用户终端发送的。
  15. 如权利要求12-14任一项所述的装置,其特征在于,在所述收发单元接收唤醒命令和远程控制命令之前,所述收发单元还用于执行以下操作中的至少一项:
    登录所述车辆管理服务器;
    周期性地将所述通信模块的有效网络地址发送给所述车辆管理服务器;
    将所述通信模块的更新的网络地址发送给所述车辆管理服务器;
    周期性地向所述车辆管理服务器发送心跳数据包;
    向所述车辆管理服务器发送更新后的密钥;或者
    周期性地与所述车辆管理服务器进行鉴权认证。
  16. 一种远程控制装置,其特征在于,包括收发单元和处理单元,所述收发单元在所述处理单元的控制下,执行如下操作:
    从用户终端接收第一远程控制命令;
    基于所述第一远程控制命令,向车辆发送唤醒命令,所述唤醒命令用于使所述车辆中的通信模块进入唤醒状态;
    在所述通信模块处于支持远程唤醒功能的休眠状态时,基于所述第一远程控制命令,向所述车辆发送第二远程控制命令,所述第二远程控制命令用于指示所述车辆内的部件启动或者执行第一操作。
  17. 如权利要求16所述的装置,其特征在于,所述第二远程控制命令为国际互连协议IP数据包,所述唤醒命令为短消息或者IP数据包。
  18. 如权利要求16或17所述的装置,其特征在于,在所述收发单元发送唤醒命令和所述发送第二远程控制命令之前,所述收发单元还用于执行以下操作中的至少一项:
    接受所述通信模块的登录;
    周期性地从所述通信模块接收所述通信模块的有效网络地址;
    从所述通信模块接收所述通信模块的更新的网络地址;
    周期性地从所述通信模块接收心跳数据包;
    从所述通信模块接收更新后的密钥;或者
    周期性地与所述通信模块进行鉴权认证。
  19. 如权利要求16至18任一项所述的装置,其特征在于,在所述收发单元从用户终端接收第一远程控制命令之前,所述收发单元还用于:
    将所述通信模块的网络地址发送给所述用户终端。
  20. 一种远程控制装置,其特征在于,包括收发单元和处理单元,所述收发单元在所述处理单元的控制下,执行如下操作:
    从车辆管理服务器接收车辆中的通信模块的网络地址;
    在所述通信模块处于支持远程唤醒功能的休眠状态时,根据所述网络地址,向所述车辆发送第三远程控制命令,所述第三远程控制命令用于指示所述车辆内的部件启动或者执行第一操作。
  21. 如权利要求20所述的装置,其特征在于,所述收发单元还用于:
    根据所述网络地址,向所述车辆发送唤醒命令,所述唤醒命令用于使所述通信模块进入唤醒状态。
  22. 如权利要求20或21所述的装置,其特征在于,所述收发单元还用于:
    向所述车辆管理服务器发送第一远程控制命令,所述第一远程控制命令用于指示所述车辆内的部件启动或者执行第一操作。
  23. 一种远程控制装置,其特征在于,包括处理器和存储器,所述存储器存储计算机程序,所述处理器运行所述计算机程序以实现如上述权利要求1至4任一项所述的方法。
  24. 一种远程控制装置,其特征在于,包括处理器和存储器,所述存储器存储计算机程序,所述处理器运行所述计算机程序以实现如上述权利要求5至8任一项所述的方法。
  25. 一种远程控制装置,其特征在于,包括处理器和存储器,所述存储器存储计算机程序,所述处理器运行所述计算机程序以实现如上述权利要求9至11任一项所述的方法。
  26. 一种车辆,其特征在于,包括如上述权利要求12至15任一项所述的远程控制装置,或者包括如上述权利要求23所述的远程控制装置。
  27. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,当所述计算机程序被运行时,实现如上述权利要求1至4任一项所述的方法。
  28. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,当所述计算机程序被运行时,实现如上述权利要求5至8任一项所述的方法。
  29. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,当所述计算机程序被运行时,实现如上述权利要求9至11任一项所述的方法。
  30. 一种计算机程序产品,其特征在于,包括计算机指令,当所述计算机指令在处理器上运行时,实现如上述权利要求1至4任一项所述的方法。
  31. 一种计算机程序产品,其特征在于,包括计算机指令,当所述计算机指令在处理器上运行时,实现如上述权利要求5至8任一项所述的方法。
  32. 一种计算机程序产品,其特征在于,包括计算机指令,当所述计算机指令在处理器 上运行时,实现如上述权利要求9至11任一项所述的方法。
  33. 一种远程控制系统,其特征在于,包括车辆中的通信模块和车辆管理服务器,所述通信模块用于实现如上述权利要求1至4任一项所述的方法,所述车辆管理服务器用于实现如上述权利要求5至8任一项所述的方法。
  34. 一种远程控制系统,其特征在于,包括车辆中的第一设备、第二设备和第三设备,所述通第一设备用于实现如上述权利要求1至4任一项所述的方法,所述第二设备用于实现如上述权利要求5至8任一项所述的方法,所述第三设备用于实现如上述权利要求9至11任一项所述的方法。
PCT/CN2022/080097 2021-04-25 2022-03-10 一种远程控制方法及装置 WO2022227883A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP22794362.8A EP4319080A1 (en) 2021-04-25 2022-03-10 Method and apparatus for remote control
US18/492,157 US20240048949A1 (en) 2021-04-25 2023-10-23 Remote control method and apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110448849.5 2021-04-25
CN202110448849.5A CN115242825A (zh) 2021-04-25 2021-04-25 一种远程控制方法及装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US18/492,157 Continuation US20240048949A1 (en) 2021-04-25 2023-10-23 Remote control method and apparatus

Publications (1)

Publication Number Publication Date
WO2022227883A1 true WO2022227883A1 (zh) 2022-11-03

Family

ID=83666571

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/080097 WO2022227883A1 (zh) 2021-04-25 2022-03-10 一种远程控制方法及装置

Country Status (4)

Country Link
US (1) US20240048949A1 (zh)
EP (1) EP4319080A1 (zh)
CN (1) CN115242825A (zh)
WO (1) WO2022227883A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116022091A (zh) * 2022-12-30 2023-04-28 南斗六星系统集成有限公司 基于远程锁车的防异常锁车方法、装置、设备及存储介质
CN116795443A (zh) * 2023-08-25 2023-09-22 小米汽车科技有限公司 休眠唤醒控制系统、方法、车辆和存储介质

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115623446B (zh) * 2022-12-14 2023-03-10 江苏天一航空工业股份有限公司 一种民航作业车辆远程控制系统
CN116339284A (zh) * 2023-03-29 2023-06-27 安徽海博智能科技有限责任公司 一种无人驾驶矿卡远程点火和熄火控制系统及方法
CN117675805A (zh) * 2024-01-30 2024-03-08 荣耀终端有限公司 一种远程控制方法及电子设备

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103770747A (zh) * 2012-10-26 2014-05-07 广州汽车集团股份有限公司 一种远程控制汽车的方法
CN104363266A (zh) * 2014-10-23 2015-02-18 北京远特科技有限公司 远程控制车辆的方法、tsp后台系统以及车载终端
CN104597787A (zh) * 2014-12-15 2015-05-06 北京新能源汽车股份有限公司 对电动汽车进行远程空调控制的方法和系统
CN104723829A (zh) * 2013-12-18 2015-06-24 比亚迪股份有限公司 车载空调的控制方法、系统及其装置
US20170151928A1 (en) * 2014-05-08 2017-06-01 Kyungpook National University Industry-Academic Cooperation Foundation Mobile device system for remote starting and management of a vehicle
CN107295025A (zh) * 2016-03-30 2017-10-24 比亚迪股份有限公司 车载终端的唤醒系统、方法、车载终端、车辆和服务器
CN108989059A (zh) * 2018-08-16 2018-12-11 上海小蚁科技有限公司 车载终端唤醒方法及系统、服务器、计算机可读存储介质
CN110266572A (zh) * 2019-06-28 2019-09-20 泉州装备制造研究所 一种远程车辆控制方法和系统
CN111131483A (zh) * 2019-12-30 2020-05-08 上海博泰悦臻网络技术服务有限公司 一种车载智能计算装置、云端服务器以及ip地址的汇报及获取方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103770747A (zh) * 2012-10-26 2014-05-07 广州汽车集团股份有限公司 一种远程控制汽车的方法
CN104723829A (zh) * 2013-12-18 2015-06-24 比亚迪股份有限公司 车载空调的控制方法、系统及其装置
US20170151928A1 (en) * 2014-05-08 2017-06-01 Kyungpook National University Industry-Academic Cooperation Foundation Mobile device system for remote starting and management of a vehicle
CN104363266A (zh) * 2014-10-23 2015-02-18 北京远特科技有限公司 远程控制车辆的方法、tsp后台系统以及车载终端
CN104597787A (zh) * 2014-12-15 2015-05-06 北京新能源汽车股份有限公司 对电动汽车进行远程空调控制的方法和系统
CN107295025A (zh) * 2016-03-30 2017-10-24 比亚迪股份有限公司 车载终端的唤醒系统、方法、车载终端、车辆和服务器
CN108989059A (zh) * 2018-08-16 2018-12-11 上海小蚁科技有限公司 车载终端唤醒方法及系统、服务器、计算机可读存储介质
CN110266572A (zh) * 2019-06-28 2019-09-20 泉州装备制造研究所 一种远程车辆控制方法和系统
CN111131483A (zh) * 2019-12-30 2020-05-08 上海博泰悦臻网络技术服务有限公司 一种车载智能计算装置、云端服务器以及ip地址的汇报及获取方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116022091A (zh) * 2022-12-30 2023-04-28 南斗六星系统集成有限公司 基于远程锁车的防异常锁车方法、装置、设备及存储介质
CN116795443A (zh) * 2023-08-25 2023-09-22 小米汽车科技有限公司 休眠唤醒控制系统、方法、车辆和存储介质
CN116795443B (zh) * 2023-08-25 2023-11-28 小米汽车科技有限公司 休眠唤醒控制系统、方法、车辆和存储介质

Also Published As

Publication number Publication date
CN115242825A (zh) 2022-10-25
US20240048949A1 (en) 2024-02-08
EP4319080A1 (en) 2024-02-07

Similar Documents

Publication Publication Date Title
WO2022227883A1 (zh) 一种远程控制方法及装置
EP3726806B1 (en) Method for remotely controlling vehicle on the basis of smart apparatus
US9330514B2 (en) Systems and methods for locking device management
CN108122316B (zh) 基于安全芯片的门锁通信系统及方法
RU2632161C2 (ru) Способ и устройство для предоставления информации
AU2011267799A1 (en) Wireless communication network for smart appliances
JPWO2005101727A1 (ja) 通信装置、通信システム及び認証方法
US9676385B2 (en) Connection preservation and timeout in remote vehicle telematics
US11522840B2 (en) Automatic client device registration
WO2022057559A1 (zh) 一种设备的发现方法和装置
CN111031147A (zh) 一种基于mqtt框架的远程车载控制系统及方法
TW201434341A (zh) 自行配置無線網路的冗餘控制
US11329805B2 (en) First vehicle-side terminal, method for operating the first terminal, second vehicle-side terminal and method for operating the second vehicle-side terminal
CN111638704A (zh) 远程唤醒车辆的方法、系统以及装置
WO2019071681A1 (zh) 基于 p2p 的远程唤醒系统及方法
WO2012075814A1 (zh) 一种mtc组设备的应用密钥管理方法及系统
KR20080019826A (ko) 인스턴트 메시지 프로토콜 기반의 로봇 원격 제어 장치 및방법
US20230300213A1 (en) Information transmission method and communication device
WO2023082983A1 (zh) 一种无线音频监听方法及无线音频系统
US9860220B2 (en) Methods and devices having a key distributor function for improving the speed and quality of a handover
CN201657020U (zh) 一种基于异地Socks5代理的移动SSL VPN系统
EP2891299B1 (en) Systems and methods for efficient remote security panel configuration and management
CN101616128A (zh) 一种访问控制方法及系统以及相关设备
KR102224726B1 (ko) IoT 디바이스를 위한 임시 인증서 발급 방법
CN211063634U (zh) 一种基于mqtt框架的远程车载控制系统

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22794362

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2022794362

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2022794362

Country of ref document: EP

Effective date: 20231026

NENP Non-entry into the national phase

Ref country code: DE