CN106936932B - A method of it is wrapped by cloud service protocol access robot software - Google Patents

A method of it is wrapped by cloud service protocol access robot software Download PDF

Info

Publication number
CN106936932B
CN106936932B CN201710284862.5A CN201710284862A CN106936932B CN 106936932 B CN106936932 B CN 106936932B CN 201710284862 A CN201710284862 A CN 201710284862A CN 106936932 B CN106936932 B CN 106936932B
Authority
CN
China
Prior art keywords
message
service
type
theme
ros
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN201710284862.5A
Other languages
Chinese (zh)
Other versions
CN106936932A (en
Inventor
丁博
王怀民
刘惠
胡奔
张鹏飞
史佩昌
李艺颖
车慧敏
包慧
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
National University of Defense Technology
Original Assignee
National University of Defense Technology
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 National University of Defense Technology filed Critical National University of Defense Technology
Priority to CN201710284862.5A priority Critical patent/CN106936932B/en
Publication of CN106936932A publication Critical patent/CN106936932A/en
Application granted granted Critical
Publication of CN106936932B publication Critical patent/CN106936932B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • 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]
    • 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/10Protocols in which an application is distributed across nodes in the network

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Manipulator (AREA)

Abstract

The invention discloses a kind of methods wrapped by cloud service protocol access robot software, technical solution is to build the cloud robot calculate node environment being made of robot calculate node and cloud computing center, whether the corresponding theme message type of issuing subject name for then comparing robot calculate node is identical as the theme message type of the subscription subject of the same name on cloud computing center, while whether the theme message type for comparing the theme message type of the subscription subject of robot calculate node and the issuing subject name of cloud computing center is identical;If they are the same, robot calculate node is using the ROS message for subscribing to subject subscription cloud computing center theme of the same name, while robot calculate node issues ROS message by issuing subject name to cloud computing center.The invention enables ROS robot software packets it is not necessary to modify can be deployed in cloud computing center, and uses the interaction of ROS message between robot calculate node and cloud computing center of WebSocket protocol realization.

Description

A method of it is wrapped by cloud service protocol access robot software
Technical field
The present invention relates to robot Distributed Computing Technology fields, and in particular to one kind is in cloud robot framework, by machine People's software package deployment is cloud computing service, is wrapped by cloud service protocol access robot software, so that robot software's packet can The method of backstage cloud computing support remotely is provided for robot by internet.
Background technique
Robot middleware is the software infrastructure for supporting robot framework, it encapsulates robot service common problem The solution of (such as data communication, affairs), so as to significantly simplify the development process of such application.ROS(Robot Operating System) be current mainstream robot middleware, it contain one open source middleware framework and one Synthesis tool chain for robot development and management.This middleware framework, which realizes, to be handed over each software module Mutual communication infrastructure, comprehensive tools chain include a series of machine system exploitations, debugging, check, the work of status visualization Tool, including basic command-line tool, sensing data visualization tool, graphic interface developing instrument etc..
From the viewpoint of distribution, ROS can regard a message-oriented middleware as.One ROS is applied by one group ROS self-described software entity composition, this software entity are known as software package.These software packages can be run in different positions, They are by ROS message transmission channel interaction ROS message to realize common task object.
There are two types of transmission channels for the transmission of ROS message, and one is theme (Topic) message channel, which is based on hair Cloth/subscribing mechanism broadcast message.The message transmitted on theme message channel is carried out theme message, theme message according to subject Classification.Theme message channel is divided into two kinds of massage patterns: 1) news release (Publish) mode, and ROS robot software packet is based on Subject issues ROS message and is used for broadcast data;2) message subscribing (Subscribe) mode, ROS robot software, which wraps, subscribes to it The theme message of his software package publication, is subscribed to after completing, other software packet once issues the message, can receive the message Content.Another kind is service (Service) message channel.The message transmitted on service message channel is service message.Pass through this Kind message channel, ROS robot software packet can service defined in other ROS robot softwares of far call packet, and obtain Required result.
Theme message is by subject and theme message Composition of contents in ROS.The subject of ROS is accorded with by letter, number and "/" Number composition, ROS subject unique identification one kind theme message.Theme message content is by meeting the value group of theme message type At, the theme message type stated data type of corresponding the included data of theme message content of one subject (such as Int, string etc.) and these data type datas combination.Service message is by Service name and service message in ROS Hold and constitutes.The Service name of ROS is made of letter, number and "/" symbol, ROS Service name unique identification one kind service message. Service message content is made of the value for meeting service message type, the one Service name corresponding service of service message type stated The data type (such as int, string etc.) of the included data of message content and the combination of these data type datas.
ROS Master software package is to provide a kind of ROS robot software packet of directory service, is that ROS message function is realized Core.ROS Master software package can recorde the subject and corresponding theme message type that each software package is issued, together When also have recorded each software package service provided name and corresponding service message type.Any desired issuing subject message or The software package that person provides service will be registered on ROS Master.One ROS robot software packet is soft by ROS Master Part packet knows other ROS robot softwares packet has issued what theme message and corresponding theme message type, also by ROS Master software package tells other ROS robot softwares wrap what theme message and corresponding theme message class oneself issued Type, at the same by ROS Master software package know other ROS robot softwares packet be capable of providing what service and it is corresponding Service message type also tells other ROS robot softwares wrap what service and corresponding service message oneself be capable of providing Type.Therefore each must be interacted using robot software's packet of ROS message mechanism with ROS Master.In order to protect The correct realization for demonstrate,proving ROS message function, prevents the situation that registration information is inconsistent on ROS Master software package, ROS Operating mechanism, which defines, can only run a ROS Master software package in the same ROS system, and require different ROS machines The message of the same name (including theme message and service message) that people's software package is registered on the same ROS Master, which must assure that, to disappear It is consistent to cease type.
Since ROS provides the synthesis tool chain of good messages communication mechanism and exploitation and management for robot application, So that the development process of robot application is significantly simplified.Robot application based on ROS is rapidly progressed.At present The thousands of robot software that can be reused packets are had accumulated in the ROS software ecosystem, these robot softwares include Many independent packaged automatic machinery people algorithms, greatly reduce the repetitive operation of robot development, so that ROS Robot middleware is widely accepted in community, robot.
Cloud robot refers to the combination of cloud computing service and robot, it is set using the backstages basis such as cloud computing and big data It applies, hoisting machine people carries out the ability of task under complex environment.Cloud robot framework, which refers to through cloud computing service, to be enhanced Robot individual capability, assist people complete the system architecture of task.In cloud robot framework, part needed for robot Function (algorithm of such as computation-intensive) is realized by cloud computing service, realizes local computing unloading.Robot is local, and only operation must Softwares, these local softwares such as environment information acquisition, the executing mechanism control wanted closely are interacted with cloud computing service, are cooperated Complete specified task.Cloud robot framework is introduced, simplified robot local software exploitation is brought, reduces robot local computing The advantages that resource occupation.
A large amount of ready-made the robot software's packet that can be reused and cloud machine are provided in view of the ROS software ecosystem How the advantage and characteristic of device people does not need modification ROS software package in cloud robot framework and directly provides cloud clothes for robot Business becomes core objective.The key for realizing this target is the communication realized between cloud and robot calculate node.ROS itself Message mechanism is provided, but between centralization framework and ROS software package of the ROS message mechanism based on ROS Master software package Interacting message communication mechanism, this is only ROS message mechanism to operate in the online minisystem service of local area. It is just disposed to not need modification ROS robot software packet and provides service beyond the clouds for robot, it is necessary to overcome ROS can only For this defect of the small scale machine people system service of local area network, it is desirable to provide one kind passes through cloud service protocol access ROS The method of robot software's packet.
The cloud service access protocol of mainstream includes HTML agreement, WebSocket agreement etc. at present.Wherein, it is based on TCP connection Full-duplex communication protocol Web Socket agreement provide and can carry out the energy that full duplex interactively communicates in single TCP connection Power.By WebSocket API, client and server-side need to only carry out one " shaking hands " movement, so that it may establish one " quickly Channel " can directly carry out data transmission at any time between the two.Currently, WebSocket is in internet and field of cloud calculation On have obtained relatively broad application.
How cloud service access protocol WebSocket is used for the transmission of robot ROS message, so that disposing beyond the clouds ROS robot software packet can be converted into cloud computing service it is not necessary to modify ground, and with the ROS robot that is deployed in robot Software package carries out instant communication, reduces the cost for changing robot application " cloud ", allows the robot to more facilitate land productivity It is oneself service with cloud resource, improves the efficiency of robot application, be the technical issues of this field is eager to solve.
Summary of the invention
The technical problem to be solved in the present invention is to provide a kind of sides wrapped by cloud service protocol access ROS robot software Method, so that it is not necessary to modify ROS robot software packets, so that it may which ROS robot software packet is deployed in cloud computing center, and machine The ROS robot that the ROS robot software packet that device people uses is able to use the cloud service access protocol of mainstream and cloud is run is soft Part packet interacts.
The technical scheme is that ROS robot software packet is directly deployed in cloud computing center, WebSocket is used The ROS robot software of protocol realization robot calculate node wraps the ROS between the ROS robot software of cloud computing center packet and disappears The interaction of breath.The present invention can make local machine people's communication system in ROS message mechanism based on single ROS Master be extended to Support the realtime communication system between multiple ROS systems namely based on multiple ROS Master.Robot calculate node Message communication between ROS robot software packet and the ROS robot software packet of cloud computing center is actually based on robot The communication of ROS Master software package and cloud computing center ROS Master software package.Since different ROS Master is operated in On different systems, so the ROS message that ROS robot software packet is registered on different ROS Master software packages is mutual Between be not associated with, therefore there are the same subjects, and different theme message types is corresponded on different ROS Master The case where, i.e., the information registered on two ROS Master is inconsistent.In order to avoid such case, need message transmission it The preceding type to message is compared, and theme message type unanimously could mutually transmit message.In cloud computing center and robot Calculate node introduces pair of ROS message and data transmission format JSON (JavaScript Object Notation) message respectively To transformation mechanism, connection is established using WebSocket agreement and is carried out data transmission.So that the ROS of robot calculate node disappears Breath can be packaged into JSON format, and be transmitted to cloud computing center through internet by WebSocket agreement, with cloud computing center The ROS robot software of deployment, which wraps, carries out interacting message, while same method can be used from cloud in robot calculate node Subscribe to ROS message in calculating center.
The present invention the following steps are included:
The first step builds cloud robot calculate node environment, it is by m robot calculate node and 1 cloud computing center It forms (m >=1, m are integers).Robot calculate node be can with robot hardware's equipment of runs software program (such as unmanned plane, Unmanned vehicle, anthropomorphic robot etc.);Cloud computing center is operation computation-intensive or data-intensive robot application and external The calculating equipment of service is provided.Between robot calculate node and cloud computing center is interconnected by the network equipment.
In addition to being equipped with operating system Ubuntu (such as 14.04 versions), in robot in each robot calculate node Between part ROS (such as Indigo version), outside WebSocket agreement, be also equipped with the first ROS message execution module, first message Conversion module and WebSocket link block.
The present invention defines the mode of operation that " Message Opcode type " variable is used to describe the transmission of ROS message, its possible values Are as follows: issuing subject operates (publish), subscribes to theme operation (subscribe) and call service actions (call_service).
ROS provide /function of rosapi/topic_type service is to obtain the corresponding theme message type of subject, That is the subject can be obtained as parameter calling/rosapi/topic_type service by using subject to correspond to Theme message type, to obtain the format of corresponding theme message content.
First ROS message execution module is issued by first service checking assembly, first message subscription component and first message Component composition.
The function of first service checking assembly is to compare robot calculate node and cloud computing center publication to have with subscription Whether the theme message type of identical subject is consistent.First service checking assembly and first message conversion module, first message Publication component, first message subscription component are connected with user.First service checking assembly receives publication from user and subscribes to theme Name, setting Message Opcode type call service name, by Message Opcode type, service name and subject are called to be sent to the One message conversion module;First service checking assembly from first message conversion module receive cloud computing center return publication with order The corresponding theme message type of subject and response result label are read, publication is used to call institute as parameter with the subject subscribed to Category robot calculate node /affiliated these subjects of the robot calculate node correspondence of rosapi/topic_type service acquisition Theme message type, and theme message type corresponding with the subject obtained from cloud computing center is compared, if machine The corresponding theme message type of the identical subject of people's calculate node and cloud computing center is identical, then robot calculate node and cloud The ROS robot software packet at calculating center can be interacted by cloud service agreement, will subscribe to subject and theme message class Type is sent to first message subscription component, and issuing subject name and theme message type are sent to first message publication component;If Theme message type is different, then cannot access.
First message subscription component subscribes to the ROS message of cloud computing center using the subscription subject having been verified by, And the subject and theme message content of cloud computing center return are received, ROS is constructed and issued in affiliated robot calculate node Message.First message subscription component and ROS in first service checking assembly, first message conversion module, ROS robot software packet Message subscribing person is connected.First, which subscribes to message components, receives subscription subject and theme message class from first service checking assembly Type is arranged Message Opcode type, subject, theme message type and Message Opcode type is sent to first message modulus of conversion Block.First message subscription component obtains theme message content and subject from first message conversion module, passes through ROS message mechanism ROS message is constructed and issues, ROS message subscribing person receives ROS message by ROS message mechanism in ROS robot software packet.
The function of first message publication component is ROS news release in the issuing subject name that will be had been verified by cloud Calculating center.It and first service checking assembly, first message revolving die block, ROS message issuer's phase in ROS robot software packet Even.First message issues component and receives issuing subject name and theme message type from first service checking assembly, uses ROS message Mechanism subscribes to the ROS message on the theme.First message issues component and receives ROS message issuer at this using ROS mechanism ROS message and Message Opcode type are sent to first message conversion module by the ROS message issued on theme.
First message conversion module and first message subscription component, first message publication component, first service checking assembly, WebSocket link block is connected, and has the function of constructing and parsing JSON message.
The method of first message conversion module construction JSON message is:
It is operated if it is issuing subject, first message conversion module receives ROS message from first message publication component and disappears Action type is ceased, the theme message content and subject of ROS message are obtained, by former ROS theme message content transformation at JSON word Section, constructs the JSON message of issuing subject format, and the JSON message of issuing subject format is sent to WebSocket connection mould Block.If it is theme operation is subscribed to, first message conversion module receives from first message subscription component and subscribes to subject, theme disappears Type and Message Opcode type are ceased, construction subscribes to the JSON message of theme format, and the JSON message for subscribing to theme format is sent out Give WebSocket link block.If it is call service actions, first message conversion module connects from first service checking assembly It receives Message Opcode type, call service name and subject, construction calls the JSON message of service request format, and takes calling The JSON message of business request format is sent to WebSocket link block.
The method of first message conversion module parsing JSON message is:
First message conversion module receives JSON message from WebSocket link block, parses the message in JSON message Action type is operated if it is issuing subject, and first message conversion module obtains subject and theme message content, by subject First message subscription component is sent to theme message content.If it is call service actions, first message conversion module is obtained Response result label and service returns results are sent to by response result label and service returns results (i.e. theme message type) First service checking assembly.(first message conversion module is grasped from the message in the received JSON message of WebSocket link block Making type will not subscribe to theme operation, because the JSON message that first message conversion module receives all is second message modulus of conversion The JSON message of block construction, second message conversion module will not construct the JSON message for subscribing to theme format, because in cloud computing The heart passively provides service, will not actively subscribe to the information in robot calculate node, therefore is not related to construction and subscribes to theme format JSON message).
WebSocket link block is connected with first message conversion module, cloud computing center.WebSocket link block WebSocket is established by URL (UniformResourceLocator, uniform resource locator) and port and cloud computing center Link.The function of WebSocket link block is to send and receive JSON message.WebSocket link block is from first message Conversion module receives JSON message, is linked using WebSocket JSON message being sent to cloud computing center.WebSocket connects Connection module is linked from cloud computing center by WebSocket and receives JSON message, and JSON message is sent to first message conversion Module.
In addition to being equipped with operating system Ubuntu (such as 14.04 versions), robot middleware ROS (example on cloud computing center Such as Indigo version, it is made of ROS message issuer, ROS message subscribing person and the original communication protocol of ROS etc.), Outside WebSocket agreement, there are also the 2nd ROS message execution module, second message conversion module and WebSocket service modules.
The WebSocket link block of WebSocket service module and second message conversion module, robot calculate node It is connected.The function of WebSocket service module is that robot calculate node is enabled to pass through URL and port and cloud computing center Establish WebSocket link.WebSocket service module is connect by monitoring WebSocket connection from WebSocket link block JSON message is received, JSON message is sent to second message conversion module.WebSocket service module is from second message modulus of conversion Block receives JSON message, and JSON message is sent to the WebSocket connection of robot calculate node using WebSocket connection Module.
Second message conversion module is connected with WebSocket service module, and the first of function and robot calculate node The function of message conversion module is essentially identical, has the function of constructing and parsing JSON message.
The method of second message conversion module construction JSON message is:
It is operated if it is issuing subject, shows that cloud computing center has issued the theme of robot subscription, need the theme Upper ROS message returns to robot.Second message conversion module receives ROS message and Message Opcode from second message subscription component Type obtains the theme message content and subject of ROS message, by the theme message content transformation of ROS message at JSON field, The JSON message of issuing subject format is constructed, and the JSON message of issuing subject format is sent to WebSocket service module. If it is call service actions, indicate that robot calls service to return the result.Second message conversion module is tested from second service Component is demonstrate,proved to obtain Message Opcode type, call service name, theme message type and response result label, construction that service is called to answer The JSON message of format is answered, and the JSON message of service response format will be called to be sent to WebSocket service module.
The method of second message conversion module parsing JSON message is:
Second message conversion module receives JSON message from WebSocket service module, parses the message in JSON message Action type is operated if it is issuing subject, obtains subject and theme message content, and subject and theme message content are sent out Give second message publication component.If it is theme operation is subscribed to, the subject and theme message type of subscription are obtained, will be subscribed to Subject and theme message type be sent to second message subscription component.If it is call service actions, obtains and call service Title and parameter will call service name and parameter to be sent to second service checking assembly.
2nd ROS message execution module is issued by second service checking assembly, second message subscription component and second message Component composition.
The function of second service checking assembly is to obtain publication theme message type corresponding with subject is subscribed to.Second clothes Business checking assembly is connected with second message conversion module, and second service checking assembly receives from second message conversion module and calls clothes Title of being engaged in and subject use subject to call as parameter and service, and obtain the corresponding theme message type of subject, and will disappear Breath action type and theme message type are sent to second message conversion module.
Second message subscription component subscribes to ROS message using message subject name is subscribed to, and receives ROS message and to robot meter Operator node issues ROS message.It is connected with ROS message issuer in second message conversion module, ROS robot software packet.The Two message subscribing components receive from second message conversion module and subscribe to message subject name and theme message type, use ROS message Mechanism carries out ROS message subscribing.Second message subscription component receives ROS message issuer in a certain master using ROS message mechanism ROS theme message content and Message Opcode type are sent to second message conversion module by the ROS message issued in topic.
Second message issues component and issues ROS message using ROS message mechanism.It and second message conversion module, ROS machine ROS message subscribing person is connected in device people's software package.Second message issues component and receives message subject from second message conversion module Name and theme message content are constructed and are issued ROS message, ROS message subscribing person in robot software's packet using ROS message mechanism ROS message is received by ROS message mechanism.
Second step, robot calculate node and cloud computing center cooperate, and compare the publication master of robot calculate node It is whether identical as the theme message type of the subscription subject of the same name on cloud computing center to inscribe one's name corresponding theme message type, together When compare robot calculate node subscription subject theme message type and cloud computing center issuing subject name theme Whether type of message is identical.Specific step is as follows:
The WebSocket link block of 2.1 robot calculate nodes is by using URL and port (such as " ws: // < B_ IP_Address >: WebSocket Port "), which is established, with the WebSocket service module of cloud computing center connect.If can not connect It connects, shows error information, execute the 4th step, correct connection thens follow the steps 2.2.
The first service checking assembly of 2.2 robot calculate nodes receives the publication that user specifies and subscribes to subject (example Such as/TopicSubscribe and/TopicPublish), uses subject as parameter, obtained by WebSocket link block Obtain the corresponding theme message type of the same subject of cloud computing center.Specific step is as follows:
2.2.1 the first service checking assembly of robot calculate node receives the publication and subscribe to subject that user specifies, Setting calling service name is "/rosapi/topic_type " and Message Opcode type is " call_service ", by the user Specified publication and subscription subject, calling service name and Message Opcode type is sent to first message conversion module.
2.2.2 the first message conversion module of robot calculate node receives publication and subscribes to subject, calls service Title and Message Opcode type, judge message action type.Message Opcode type is " call_service ", according under The JSON message that format construction calls service request format is stated, and the JSON message of service request format will be called to be sent to WebSocket link block.
Call the format of the JSON message of service request format are as follows:
" op " field is string type, indicates the action type to ROS message;
" service " field is string type, indicates the title for calling service;
" args " field is made of JSON data list, indicates the parameter for calling service, content of parameter JSON format number According to indicating, this field is alternative field, that is, the service having does not need parameter.
The JSON message approach of construction calling service request format is: " call_service " is set by " op " field, By " service " field be set as call service name "/rosapi/topic_type ", will " arg " field be set as publication and Subscribing to subject is "/TopicSubscribe/TopicPublish ".
2.2.3 the WebSocket link block of robot calculate node, which receives, calls the JSON of service request format to disappear After breath, connects to send to the WebSocket service module of cloud computing center using the WebSocket that step 2.1 is established and call clothes The JSON message of business request format.Print error message and the 4th step of execution, execute step if sending failure if transmission successfully Rapid 2.2.4.
2.2.4 the WebSocket connection that the WebSocket service module of cloud computing center is established by monitoring step 2.1 The JSON message for obtaining the calling service request format that robot calculate node is sent will call the JSON of service request format to disappear Breath is sent to the second message conversion module of cloud computing center.
2.2.5 after the second message conversion module of cloud computing center receives the JSON message for calling service request format, The content of the JSON message of service request format is called in parsing, obtains Message Opcode type.Message Opcode type is call_ Service, service name and parameter are called in the parsing of second message conversion module, and service name and parameter will be called to be sent to cloud The second service checking assembly at calculating center.
2.2.6 the second service checking assembly of cloud computing center, which receives, calls service name and parameter, using publication with Subject is subscribed to as parameter operation service/rosapi/topic_type, obtains theme message type.If successfully obtaining master Type of message is inscribed, setting response result is labeled as " 1 ", indicates successfully to obtain result;Otherwise setting response result is labeled as " 0 ", Theme message type is set to sky.Theme message type, the response result mark that second service checking assembly will be issued with subscribe to theme Note, calling service name and Message Opcode type are sent to the second message conversion module of cloud computing center.
2.2.7 the second message conversion module of cloud computing center receives Message Opcode type, calls service name, publication After marking with the theme message type and response result for subscribing to theme, construction calls the JSON message of service response format.According to According to the JSON message of following formats construction call service actions response format, and the JSON message of service response format will be called to send out Give WebSocket service module.
Call the format of the JSON message of service response format are as follows:
" op " field is string type, indicates the action type to ROS message;
" service " field is string type, indicates the title for calling service;
" result " field is bool type, indicates that service is called to have return value, 0 indicates that service is called not obtain successfully It takes, 1 indicates to call to service successfully to obtain;
" value " field is made of the data list of JSON format, indicates the return value for calling service.
The method that construction calls service response format JSON message is: " call_service " is set by " op " field, It sets " service " field to call service name "/rosapi/topic_type ", " result " field is set as answering Result queue is answered, sets " value " field to the theme message type of the publication obtained with subscription theme.
2.2.8 after the WebSocket service module of cloud computing center receives the JSON message for calling service response format, The JSON message for calling service response format is sent to robot and calculates section by the WebSocket connection established using step 2.1 The WebSocket link block of point.
2.2.9 the WebSocket link block of robot calculate node, which receives, calls the JSON of service response format to disappear After breath, first message conversion module is sent it to.
2.2.10 the first message conversion module of robot calculate node, which receives, calls the JSON of service response format to disappear After breath, the content of the JSON message of service response format is called in parsing, obtains Message Opcode type.Message Opcode type is Call_service obtains cloud computing center publication and marks with the theme message type and response result for subscribing to theme, and will lead Theme message type and the response result label of autograph are sent to first service checking assembly.
The first service checking assembly of 2.3 robot calculate nodes receives the master of cloud computing center publication with subscription theme Type of message and response result label are inscribed, response result queue is judged.If response result label is 0, explanation does not have Cloud computing center publication theme message type corresponding with subject is subscribed to is successfully obtained, print error message simultaneously executes the 4th Step;If response result label is 1, use cloud computing center publication and the subject subscribed to as robot belonging to parameter calling Calculate node /rosapi/topic_type service, it is corresponding with subject is subscribed to obtain affiliated robot calculate node publication Theme message type, by affiliated robot calculate node publication theme message type corresponding with the subject subscribed to and cloud computing The corresponding theme message type of the subject of the same name at center is compared.If the issuing subject name of robot calculate node is corresponding Theme message type it is of the same name with cloud computing center the corresponding theme message type of subscription subject is identical and robot section Point subscribes to the corresponding theme message type of subject and the cloud computing center corresponding theme message type of issuing subject name of the same name It is identical, then issuing subject name and theme message type are sent to first message publication component, subject will be subscribed to and theme disappears Breath type is sent to first message subscription component, executes third step;Otherwise it shows error message and executes the 4th step.
The step of third step, robot calculate node presses 3.1, subscribes to cloud computing center theme of the same name using subject is subscribed to ROS message;Meanwhile robot calculate node issues ROS message by issuing subject name to cloud computing center by the step of 3.2. Specific step is as follows:
3.1 robot calculate nodes subscribe to the ROS message of cloud computing center theme of the same name using subject is subscribed to.Specific step It is rapid as follows:
3.1.1 the first message subscription component of robot calculate node receives from first service checking assembly and subscribes to subject With theme message type, " subscribe " is set by Message Opcode type, by Message Opcode type, subscribes to subject and master Topic type of message is sent to first message conversion module.
3.1.2 the first message conversion module of robot calculate node receive subscribe to subject, theme message type and Message Opcode type judges that for " subscribe ", the JSON for subscribing to theme format is constructed according to following formats for Message Opcode type Message, and the JSON message for subscribing to theme format is sent to WebSocket link block.
Subscribe to the format of the JSON message of theme format are as follows:
" op " field is string type, indicates the action type to ROS message;
" topic " field is string type, indicates the message name for subscribing to message;
" type " expression is string type, is an alternative field, indicates the theme message for subscribing to ROS message Type.
The method that construction subscribes to the JSON message of theme format is: " subscribe " is set by " op " field, it will " topic " field is set as subscribing to subject, sets theme message type for " type " field.
3.1.3 the WebSocket link block of robot calculate node receives the JSON message for subscribing to theme format, makes The WebSocket service module of cloud computing center is sent to the WebSocket connection that step 2.1 is established.If sending failure Then print error message and the 4th step of execution, send and successfully then follow the steps 3.1.4.
3.1.4 the WebSocket connection that the WebSocket service module of cloud computing center is established by monitoring step 2.1 The JSON message for getting the subscription theme format of robot calculate node transmission, the JSON message of the subscription theme format is sent out Give the second message conversion module of cloud computing center.
3.1.5 after the second message conversion module of cloud computing center receives the JSON message for subscribing to theme format, parsing The content of the JSON message of theme format is subscribed to, Message Opcode type is obtained, message action type is judged.Message Opcode Type is subscribe, obtains and subscribes to subject and theme message type, and will subscribe to subject and the transmission of theme message type Give second message subscription component.
3.1.6 the second message subscription component of cloud computing center, which receives, subscribes to subject and theme message type, to disappear The subject and theme message type of breath subscribe to the message on the subject using ROS message mechanism as parameter.
3.1.7 second message subscription component is received in the ROS robot software packet of cloud computing center by ROS message mechanism The ROS message that ROS message issuer is issued based on the subject, setting Message Opcode type is " publish ", and ROS is disappeared Breath and Message Opcode type are sent to the second message conversion module of cloud computing center.
3.1.8 the second message conversion module of cloud computing center receives ROS message and Message Opcode type, judges message Action type is " publish ", and second message conversion module parses ROS message, obtains subject and theme message content, will lead Topic message content is converted to JSON field.According to the JSON message of following formats construction issuing subject format, and by issuing subject The JSON message of format is sent to WebSocket service module.
The JSON message format of issuing subject format are as follows:
{"op":<string>,
"topic":<string>,
"msg":<json>
}
" op " field is string type, indicates the action type to ROS message;
" topic " field is string type, indicates the subject to give out information;
" msg " field is the data of JSON format, indicates the content of issuing subject message.
The method for constructing the JSON message of issuing subject is: " publish " is set by " op " field, by " topic " word Section is set as the subject of ROS message, sets " msg " field to be converted into the theme message content of JSON format.
3.1.9 the WebSocket service module of cloud computing center receives the JSON message of issuing subject format, uses step The JSON message of issuing subject format is sent to robot calculate node by the rapid 2.1 WebSocket connections established WebSocket link block.
3.1.10 the WebSocket that the WebSocket link block of robot calculate node is established by monitoring step 2.1 The JSON message of issuing subject format is sent to first message modulus of conversion by the JSON message for receiving issuing subject format Block.
3.1.11 the first message conversion module of robot calculate node receives the JSON message of issuing subject format, obtains Take message action type.Message Opcode type is judged for " publish ", obtains subject and theme message content, and by theme Name and theme message content are sent to first message subscription component.
3.1.12 the first of robot calculate node subscribes to message components and receives subject and theme message content, passes through ROS message mechanism construction and publication ROS message, the ROS message subscribing person of robot software's packet receive ROS by ROS mechanism Message.It goes to step 3.1.7 and continues to the cloud computing center ROS message subscribed to.
3.2 robot calculate nodes issue ROS message by issuing subject name to cloud computing center.Specific step is as follows:
3.2.1 the first message of robot calculate node issues component and receives issuing subject name from first service checking assembly With theme message type, the subject is subscribed to using ROS message mechanism.
3.2.2 the first message publication component of robot calculate node receives robot by ROS message mechanism and calculates section The ROS message that ROS message issuer is issued based on the subject in robot software's packet of point, sets Message Opcode type to " publish ", and ROS message and Message Opcode type are sent to first message conversion module.
3.2.3 after the first message conversion module of robot calculate node receives ROS message and Message Opcode type, sentence Disconnected Message Opcode type is " publish ", and first message conversion module parses ROS message, is obtained in subject and theme message Hold, according to the JSON message of the method construct issuing subject format of 3.1.8, i.e., sets " publish " for " op " field, it will " topic " field is set as the subject of ROS message, sets " msg " field to the JSON field of theme message content transformation, And the JSON message of issuing subject format is sent to WebSocket link block.
3.2.4 after the WebSocket link block of robot calculate node receives the JSON message of issuing subject format, The JSON message of issuing subject format is sent to cloud computing center by the WebSocket connection established using step 2.1 WebSocket service module.Print error message and the 4th step of execution if WebSocket link block sends failure.Such as Fruit WebSocket link block is sent successfully, thens follow the steps 3.2.5.
3.2.5 the WebSocket connection that the WebSocket service module of cloud computing center is established by monitoring step 2.1 The message for receiving the JSON format for the issuing subject format that robot calculate node is sent, transmits the message to cloud computing center Second message conversion module.
3.2.6 it after the second message conversion module of cloud computing center receives the JSON message of issuing subject format, obtains Message Opcode type.Message Opcode type is judged for " publish ", obtains subject and theme message content, and by subject Second message publication component is sent to theme message content.
3.2.7 after the second message publication component of cloud computing center receives subject and theme message content, pass through ROS Message mechanism construction and publication ROS message.
3.2.8 ROS message subscribing person is disappeared using issuing subject name subscription ROS in cloud computing center ROS robot software packet Breath, receives ROS message by ROS message mechanism.It goes to step 3.2.2 and issues ROS message to cloud computing center.
The publication of ROS software package with the theme message subscribed to is classified according to subject.Step 3.1.1- step 3.1.6 the ROS message function that robot calculate node subscribes to cloud computing center theme of the same name, step 3.1.7- step are completed 3.1.12 the ROS message function that ROS message subscribing person in robot software's packet receives cloud computing center theme of the same name is completed.Machine Device people calculate node need to only subscribe to some primary theme message, all message issued on such theme can be received, so meeting Circulation step 3.1.7 to 3.1.12.Similarly, step 3.2.1 is that the first message publication component of robot calculate node receives hair Cloth subject simultaneously subscribes to ROS message, need to only subscribe to 1 time.Step 3.2.2- step 3.2.8 completes first message publication group Part receives ROS message, to cloud computing center by the function of issuing subject name publication ROS message.Robot calculate node issues certain A theme message is intended to issue all message of such theme, that is to say, that robot calculate node leads some All message issued in topic are all sent to cloud computing center, so can circulation step 3.2.2 to 3.2.8.
4th step terminates.
Using the present invention can achieve it is following the utility model has the advantages that
(1) communication Internet-based between robot and cloud service is realized.By introduce ROS message execution module, The functional modules such as WebSocket link block, WebSocket service module, robot calculate node ROS robot software packet can To pass through the WebSocket cloud service access protocol of mainstream, access is deployed in the ROS robot software packet of cloud computing center.
(2) the existing robot software based on robot middleware ROS can not need modification and just directly be deployed in cloud Become cloud service on calculating center, robot calculate node also needs not move through a large amount of modifications and can realize as using local ROS application equally uses cloud service.Due to invention introduces message conversion module, WebSocket link block, WebSocket service module etc., so that shielding ROS message converts the details communicated with WebSocket to JSON message, therefore Existing ROS software and robot calculate node do not need to modify using the mode of ROS software.
Detailed description of the invention
Fig. 1 is first step building multirobot calculate node environmental physics structure chart of the present invention.
Fig. 2 is the supercentral software deployment figure of robot calculate node and cloud computer of the present invention.
Fig. 3 is overall flow figure of the present invention.
Fig. 4 is the process for the ROS message that 3.1 Bu Zhong robot calculate node of third step of the present invention subscribes to cloud computing center Figure.
Fig. 5 is process of the 3.2 Bu Zhong robot calculate node of third step of the present invention to cloud computing center publication ROS message Figure.
Specific embodiment
Fig. 1 is the multirobot calculate node environmental physics structure chart of first step building of the present invention, it is by m robot meter Operator node and 1 cloud computing center composition (m >=1, m are integers).Robot calculate node is can be with the machine of runs software program Device people hardware device (such as unmanned plane, unmanned vehicle, anthropomorphic robot);Cloud computing center is to calculate to enrich with storage resource, can To run computation-intensive or data-intensive robot application and externally provide the calculating equipment of service.Robot calculates section Between point and cloud computing center is interconnected by network routing device.
Fig. 2 is the software deployment figure in robot calculate node of the present invention.In addition to installation in each robot calculate node There are operating system Ubuntu (such as 14.04 versions), robot middleware ROS (such as Indigo version), WebSocket agreement Outside, the first ROS message execution module, first message conversion module and WebSocket link block are also equipped with.Cloud computing center On in addition to equipped with operating system Ubuntu (such as 14.04 versions), robot middleware ROS (such as Indigo version, by ROS The composition such as message issuer, ROS message subscribing person and the original communication protocol of ROS), outside WebSocket agreement, there are also second ROS message execution module, second message conversion module and WebSocket service module.
Illustrate a specific embodiment of the invention so that turtlebot robot follows people to move as an example below.The reality Example is made of a turtlebot robot and a cloud computing center.In addition to the 2nd ROS message of operation is held on cloud computing center Outside row module, second message conversion module and WebSocket service module, also operation turtlebot_fllower robot is soft Part packet (common ROS robot software packet, can be downloaded from http://wiki.ros.org/turtlebot_follower), function Can be calculate environment point cloud data in include the center for following object, distance and speed, then calculate robot in order to with Linear velocity and angular speed required for certain following distance are kept with object.Turtlebot robot disappears in addition to the first ROS of operation It ceases outside execution module, first message conversion module and WebSocket link block, also operation freenect_launch software package (common ROS robot software packet, can be fromhttp://wiki.ros.org/freenect_launchDownloading) and turtlebot_ (common ROS robot software packet, can be from for bringup software packagehttp://wiki.ros.org/turtlebot_bringup/ Tutorials/indigo/TurtleBot%20BringupDownloading).Freenect_launch software package is for obtaining depth The point cloud data of camera, freenect_launch software package pass through "/depth/image_rect " theme to cloud computing center Turtlebot_fllower robot software wrap publication environment point cloud data.Turtlebot_bringup software package is subscribed to The turtlebot_fllower robot software of cloud computing center wraps the message of publication "/cmd_vel " theme, obtains linear velocity And angular speed, it then controls robot ambulation and people is followed.
It is as follows using a specific embodiment of the invention:
The first step builds cloud robot calculate node environment, it is by m turtlebot robot and 1 cloud computing center Composition.For the sake of simplicity, m=1, turtlebot robot and 1 cloud computing center is enabled to interconnect by the network equipment. Turtlebot robot hardware's equipment includes robot base, controls laptop and the point cloud data acquisition of robot Equipment Kinect camera.14.04 version of operating system Ubuntu, robot middleware are housed on Turtlebot notebook ROS Indigo version, robot control software wrap turtlebot_bringup, and the acquisition of Kinect sensor data and calculating are soft Part packet freenect_launch, the first ROS message execution module, first message conversion module and WebSocket link block. Operation has 14.04 version of operating system Ubuntu, ROS Indigo version, the 2nd ROS message to execute mould on cloud computing center Block, second message conversion module and WebSocket service module and turtlebot_fllower software package.
Second step, turtlebot robot compare the issuing subject name "/depth/image_rect " of the robot and order Subscription the subject "/depth/ in the corresponding theme message type of subject "/cmd_vel " and cloud computing center read Whether image_rect " is identical as the theme message type of the subject "/cmd_vel " of publication.
The WebSocket link block of 2.1 turtlebot robots by using URL and port (such as " ws: // < 202.197.251.250 >: WebSocket 9090 "), which is established, with the WebSocket service module of cloud computing center connect.If It can not connect, show error information, execute the 4th step, correct connection thens follow the steps 2.2.
The first service checking assembly of 2.2 turtlebot robots using subject "/depth/image_rect " and "/cmd_vel " is used as parameter, obtains the corresponding theme of the two subjects of cloud computing center by WebSocket link block Type of message.Specific step is as follows:
2.2.1 the first service checking assembly of turtlebot robot receive the publication specified of user subject "/ The entitled "/rosapi/topic_ of service name is called in depth/image_rect " and subscription subject "/cmd_vel ", setting Type " and Message Opcode type are " call_service ", and the publication which is specified and subscription subject call Service name Claim and Message Opcode type is sent to first message conversion module.
2.2.2 the first message conversion module of turtlebot robot receives publication and subscribes to subject "/depth/ Image_rect " and "/cmd_vel ", call service name ("/rosapi/topic_type ") and Message Opcode type (" call_service").Message Opcode type is " call_service ", and construction calls the JSON message of service request format, and The JSON message of service request format will be called to be sent to WebSocket link block.
Calling the format of the JSON message of service request format is:
2.2.3 the WebSocket link block of turtlebot robot receives the JSON for calling service request format After message, connects to send to the WebSocket service module of cloud computing center using the WebSocket that step 2.1 is established and call The JSON message of service request format.Print error message and the 4th step of execution, execute if transmission successfully if sending failure Step 2.2.4.
2.2.4 the WebSocket connection that the WebSocket service module of cloud computing center is established by monitoring step 2.1 The JSON message for obtaining the calling service request format that turtlebot robot is sent, JSON message is sent in cloud computing The second message conversion module of the heart.
2.2.5 after the second message conversion module of cloud computing center receives the JSON message for calling service request format, The content of the JSON message of service request format is called in parsing, and obtaining Message Opcode type is " call_service ", and second disappears It is "/rosapi/topic_type " that breath conversion module, which parses and calls service name, and parameter is { " topicname ": "/ Depth/image_rect " and " topicname ": "/cmd_vel ".And service name and parameter will be called to be sent to cloud meter The second service checking assembly at calculation center.
2.2.6 after the second service checking assembly of cloud computing center receives calling service name and parameter, theme is used Name "/depth/image_rect " and "/cmd_vel " is used as parameter operation service "/rosapi/topic_type ", obtains master Inscribe type of message.Success obtains theme message type, and "/depth/image_rect " corresponding theme message type is " sensor_msgs/Image ", "/cmd_vel " corresponding theme message type are "/geometry_msgs/Twist ".Setting Response result is labeled as " 1 ".Theme message type, the response result mark that second service checking assembly will be issued with subscribe to theme Note, calling service name and Message Opcode type are sent to the second message conversion module of cloud computing center.
2.2.7 the second message conversion module of cloud computing center receives Message Opcode type, calls service name, publication After marking with the theme message type and response result for subscribing to theme, construction calls service response format JSON message.Construction Call service actions response format JSON message it is as follows, and will call service response format JSON message be sent to WebSocket service module.
Calling the format of the JSON message of service response format is:
2.2.8 after the WebSocket service module of cloud computing center receives calling service response format JSON message, make The WebSocket connection established with step 2.1 will call service response format JSON message to be sent to turtlebot robot WebSocket link block.
2.2.9 the WebSocket link block of turtlebot robot, which receives, calls service response format JSON to disappear After breath, first message conversion module is sent it to.
2.2.10 the first message conversion module of turtlebot robot, which receives, calls service response format JSON to disappear After breath, the content of service response format JSON message is called in parsing, and discovery Message Opcode type is " call_service ", is obtained The theme message type and response result of the subject of cloud computing center mark, and by the theme message type of subject and response Result queue is sent to first service checking assembly.
The first service checking assembly of 2.3 turtlebot robots receives cloud computing center publication and subscribes to subject Corresponding theme message type and response result label, judge response result queue.Response result label is 1, is used Subject "/depth/image_rect " and "/cmd_vel " call the "/rosapi/ of turtlebot robot as parameter Topic_type " service obtains the corresponding theme message type of "/depth/image_rect " and "/cmd_vel " theme "/ Sensor_msgs/Image " and "/cmd_vel "."/the depth/image_rect " and "/cmd_ returned with cloud computing center The theme message type of vel " is compared.Theme message type is identical, then by subject "/depth/image_rect " and master Topic type of message "/sensor_msgs/Image " is sent to first message publication component, by subject "/cmd_vel " and theme Type of message "/cmd_vel " is sent to first message subscription component, executes third step.
The step of third step, turtlebot robot presses 3.2, is based on "/depth/image_rect " theme to cloud computing Issue ROS message in center;At the same time, turtlebot robot uses subject "/cmd_vel " theme to order by the step of 3.1 Read the ROS message of cloud computing center.Specific step is as follows:
"/cmd_vel " theme of cloud computing center publication is subscribed to by 3.1 turtlebot robots, the specific steps are as follows:
3.1.1 the first message subscription component of turtlebot robot receives subscription from first service checking assembly Subject "/cmd_vel ", corresponding theme message type are "/sensor_msgs/Image ", and Message Opcode type is arranged For " subscribe ", Message Opcode type, subscription subject and theme message type are sent to first message conversion module.
3.1.2 the first message conversion module of turtlebot robot, which receives, subscribes to subject, theme message type With Message Opcode type, Message Opcode type is judged for " subscribe ", the JSON message that construction subscribes to theme format is as follows, And the JSON message for subscribing to theme format is sent to WebSocket link block.
The format for subscribing to the JSON message of theme format is:
3.1.3 the WebSocket link block of turtlebot robot receives the JSON message for subscribing to theme format, The WebSocket connection established using step 2.1 is sent to the WebSocket service module of cloud computing center.It is lost if sent It loses then print error message and executes the 4th step, send and successfully then follow the steps 3.1.4.
3.1.4 the WebSocket connection that the WebSocket service module of cloud computing center is established by monitoring step 2.1 The JSON message for getting the subscription theme format of turtlebot robot transmission, transmits the message to cloud computing center Second message conversion module.
3.1.5 after the second message conversion module of cloud computing center receives the JSON message for subscribing to theme format, parsing The content of the JSON message of theme format is subscribed to, Message Opcode type is obtained, message action type is judged.Message Opcode Type is " subscribe ", obtains and subscribes to subject and theme message type, and will subscribe to subject and theme message type hair Give second message subscription component.
3.1.6 after the second message subscription component of cloud computing center receives subscription subject and theme message type, make "/cmd_vel " theme message is subscribed to ROS message mechanism.
3.1.7, second message subscription component receives "/cmd_vel " master of turtlebot_fllower software package publication After inscribing message, setting Message Opcode type is " publish ", and "/cmd_vel " theme message and Message Opcode type is sent out Give the second message conversion module of cloud computing center.
3.1.8 the second message conversion module of cloud computing center receives "/cmd_vel " theme message and Message Opcode class Type judges Message Opcode type for " publish ", and second message conversion module parses "/cmd_vel " theme message, obtains master Entitled "/cmd_vel " and theme message content, by theme message content transformation at JSON field.The issuing subject lattice of construction The JSON message of formula is as follows, and the JSON message of issuing subject format is sent to WebSocket service module.
The format of the JSON message of issuing subject format is:
{"op":"publish",
"topic":"/cmd_vel",
"msg":<json>
}
" msg " field is the data of JSON format, indicates the content of issuing subject message.
3.1.9 the WebSocket service module of cloud computing center receives the JSON message of issuing subject format, uses step The JSON message of issuing subject format is sent to turtlebot robot by the rapid 2.1 WebSocket connections established WebSocket link block.
3.1.10 the WebSocket link block of turtlebot robot is established by monitoring step 2.1 WebSocket connection receives JSON message, which is sent to first message conversion module.
3.1.11 after the first message conversion module of turtlebot robot receives JSON message, Message Opcode is obtained Type is " publish ", then obtains subject "/cmd_vel " and theme message content, and by subject "/cmd_vel " and Theme message content is sent to first message subscription component.
3.1.12 the first subscription message components of turtlebot robot receive subject "/cmd_vel " and theme disappears "/cmd_vel " theme is issued after ceasing content, robot software, which wraps turtlebot_bringup, can receive "/cmd_ ROS message on vel " theme.Execute step 3.1.7.
3.2 turtlebot robots are based on "/depth/image_rect " theme publication ROS to cloud computing center and disappear It ceases, ROS message subscribing person receives the ROS message on the theme in the turtlebot_fllower software package of cloud computing center.Tool Steps are as follows for body:
3.2.1 turtlebot robot first message issue component from first service checking assembly receive subject "/ Depth/image_rect " and corresponding theme message type "/sensor_msgs/Image ", are ordered using ROS message mechanism Read the ROS message on "/depth/image_rect " theme.
3.2.2 turtlebot robot runs freenect_launch software package, obtains depth camera Kinect and adopts The point cloud data of collection, and "/depth/image_rect " theme message is issued, first message publication component receives "/depth/image_rect " theme message of freenect_launch software package publication, sets Message Opcode type to " publish ", and "/depth/image_rect " theme message and Message Opcode type are sent to first message modulus of conversion Block.
3.2.3 the first message conversion module of turtlebot robot receives "/depth/image_rect " theme After message and Message Opcode type, Message Opcode type is judged for " publish ", first message conversion module passes through parsing ROS Message obtains subject "/depth/image_rect " and theme message content, by theme message content transformation at JSON word Section.According to the JSON message of the method construct issuing subject format of 3.1.8, i.e., " publish " is set by " op " field, it will " topic " field is set as the subject of ROS message, sets JSON field for " msg " field, and by issuing subject format JSON message is sent to WebSocket link block.
3.2.4 the WebSocket link block of turtlebot robot receives the JSON message of issuing subject format Afterwards, the JSON message of issuing subject format is sent to cloud computing center by the WebSocket connection established using step 2.1 WebSocket service module.Print error message and the 4th step of execution if WebSocket link block sends failure.Such as Fruit WebSocket link block is sent successfully, thens follow the steps 3.2.5.
3.2.5 the WebSocket connection that the WebSocket service module of cloud computing center is established by monitoring step 2.1 The message for receiving the JSON format that turtlebot robot is sent, the second message for transmitting the message to cloud computing center turn Change the mold block.
3.2.6 it after the second message conversion module of cloud computing center receives the JSON message of issuing subject format, obtains Message Opcode type.After judging Message Opcode type for " publish ", obtain subject "/depth/image_rect " and main Message content is inscribed, and subject "/depth/image_rect " and theme message content are sent to second message publication component.
3.2.7 after the second message publication component of cloud computing center receives subject and theme message content, based on "/ Depth/image_rect " theme issues ROS message.
3.2.8 cloud computing center turtlebot_fllower software package subscribes to "/depth/image_rect " theme, connects Receive the ROS message on "/depth/image_rect " theme.Turtlebot_fllower software package passes through the environment received Point cloud data calculates linear velocity and angular speed, and issues ROS message based on "/cmd_vel " theme.Execute step 3.2.2.
4th step terminates.

Claims (11)

1. a kind of method wrapped by cloud service protocol access robot software, it is characterised in that the following steps are included:
The first step builds cloud robot calculate node environment, it is made of m robot calculate node and 1 cloud computing center, M >=1, m are integers;Robot calculate node is can be with robot hardware's equipment of runs software program;Cloud computing center is fortune Row computation-intensive or data-intensive robot application simultaneously externally provide the calculating equipment of service;Between robot calculate node And cloud computing center is interconnected by the network equipment;
In addition to being equipped with operating system Ubuntu, robot middleware ROS, WebSocket association in each robot calculate node View is outer, is also equipped with the first ROS message execution module, first message conversion module and WebSocket link block;
First ROS message execution module issues component by first service checking assembly, first message subscription component and first message Composition;
The function of first service checking assembly is to compare robot calculate node and cloud computing center publication with subscription with identical Whether the theme message type of subject is consistent;First service checking assembly and first message conversion module, first message are issued Component, first message subscription component are connected with user;First service checking assembly receives publication from user and subscribes to subject, if It sets Message Opcode type, call service name, by Message Opcode type, service name and subject is called to be sent to first message Conversion module;First service checking assembly receives the publication and subscribe to theme that cloud computing center returns from first message conversion module The corresponding theme message type of name and response result mark, and publication is used to call affiliated machine as parameter with the subject subscribed to People's calculate node /the corresponding theme of affiliated these subjects of robot calculate node of rosapi/topic_type service acquisition Type of message, and theme message type corresponding with the subject obtained from cloud computing center is compared, if robot calculates The corresponding theme message type of the identical subject of node and cloud computing center is identical, then in robot calculate node and cloud computing The ROS robot software packet of the heart can be interacted by cloud service agreement, will subscribe to subject and theme message type is sent First message subscription component is given, issuing subject name and theme message type are sent to first message publication component;If theme disappears It is different to cease type, then cannot access;Message Opcode type is the variable for describing the mode of operation of ROS message transmission, it There are three types of values: issuing subject operation is publish, subscribes to theme operation i.e. subscribe, call service actions, that is, call_ service;
First message subscription component subscribes to the ROS message of cloud computing center using the subject of subscribing to having been verified by, and connects The subject and theme message content that cloud computing center returns are received, constructs and issue ROS message in affiliated robot calculate node; First message subscription component and ROS message in first service checking assembly, first message conversion module, ROS robot software packet Subscriber is connected;First, which subscribes to message components, receives subscription subject and theme message type from first service checking assembly, if Message Opcode type is set, subject, theme message type and Message Opcode type are sent to first message conversion module;First Message subscribing component obtains theme message content and subject from first message conversion module, by ROS message mechanism construction and ROS message is issued, ROS message subscribing person receives ROS message by ROS message mechanism in ROS robot software packet;
The function of first message publication component is ROS news release in the issuing subject name that will be had been verified by cloud computing Center;It is connected with ROS message issuer in first service checking assembly, first message revolving die block, ROS robot software packet; First message issues component and receives issuing subject name and theme message type from first service checking assembly, uses ROS message machine Work out the ROS message read on the theme;First message issues component and receives ROS message issuer in the master using ROS mechanism ROS message and Message Opcode type are sent to first message conversion module by the ROS message issued in topic;
First message conversion module and first message subscription component, first message publication component, first service checking assembly, WebSocket link block is connected, and has the function of constructing and parsing JSON message;
WebSocket link block is connected with first message conversion module, cloud computing center;WebSocket link block passes through URL, that is, uniform resource locator and port are established WebSocket with cloud computing center and are linked;The function of WebSocket link block Can send and receive JSON message;WebSocket link block receives JSON message from first message conversion module, uses JSON message is sent to cloud computing center by WebSocket link;WebSocket link block by WebSocket link from Cloud computing center receives JSON message, and JSON message is sent to first message conversion module;
In addition to equipped with operating system Ubuntu, other than robot middleware ROS, WebSocket agreement on cloud computing center, there are also the Two ROS message execution modules, second message conversion module and WebSocket service module;
The WebSocket link block phase of WebSocket service module and second message conversion module, robot calculate node Even;The function of WebSocket service module is that robot calculate node is built by URL and port with cloud computing center Vertical WebSocket link;WebSocket service module is received by monitoring WebSocket connection from WebSocket link block JSON message is sent to second message conversion module by JSON message;WebSocket service module is from second message conversion module JSON message is received, JSON message is sent to the WebSocket connection mould of robot calculate node using WebSocket connection Block;
Second message conversion module is connected with WebSocket service module, the first message of function and robot calculate node The function of conversion module is essentially identical, has the function of constructing and parsing JSON message;
2nd ROS message execution module issues component by second service checking assembly, second message subscription component and second message Composition;
The function of second service checking assembly is to obtain publication theme message type corresponding with subject is subscribed to;Second service is tested Card component is connected with second message conversion module, and second service checking assembly receives from second message conversion module and calls Service name Title and subject use subject to call as parameter and service, and obtain the corresponding theme message type of subject, and message is grasped Make type and theme message type is sent to second message conversion module;
Second message subscription component subscribes to ROS message using message subject name is subscribed to, and receives ROS message and calculates to robot and saves Point publication ROS message;It is connected with ROS message issuer in second message conversion module, ROS robot software packet;Second disappears It ceases subscription component and receives subscription message subject name and theme message type from second message conversion module, use ROS message mechanism Carry out ROS message subscribing;Second message subscription component receives ROS message issuer on a certain theme using ROS message mechanism ROS theme message content and Message Opcode type are sent to second message conversion module by the ROS message of publication;
Second message issues component and issues ROS message using ROS message mechanism;It and second message conversion module, ROS robot ROS message subscribing person is connected in software package;Second message issue component from second message conversion module receive message subject name and Theme message content is constructed and is issued ROS message using ROS message mechanism, and ROS message subscribing person passes through in robot software's packet ROS message mechanism receives ROS message;
Second step, robot calculate node and cloud computing center cooperate, and compare the issuing subject name of robot calculate node Whether corresponding theme message type is identical as the theme message type of the subscription subject of the same name on cloud computing center, compares simultaneously Compared with the theme message of the issuing subject name of the theme message type and cloud computing center of the subscription subject of robot calculate node Whether type is identical;Specific step is as follows:
The WebSocket link block of 2.1 robot calculate nodes is by using URL and port and cloud computing center WebSocket service module establishes WebSocket connection;Error information is shown if it can not connect, and executes the 4th step, correctly Connection thens follow the steps 2.2;
The first service checking assembly of 2.2 robot calculate nodes receives the publication that user specifies and subscribes to subject, uses master Autograph is used as parameter, obtains the corresponding theme message type of the same subject of cloud computing center by WebSocket link block; Specific step is as follows:
2.2.1 the first service checking assembly of robot calculate node receives the publication and subscribe to subject that user specifies, setting Calling service name is "/rosapi/topic_type " and Message Opcode type is " call_service ", which is specified Publication and subscribe to subject, service name and Message Opcode type called to be sent to first message conversion module;
2.2.2 the first message conversion module of robot calculate node receives publication and subscribes to subject, calls service name With Message Opcode type, message action type is judged;Message Opcode type is " call_service ", and construction calls clothes The JSON message of business request format, and the JSON message of service request format will be called to be sent to WebSocket link block;
2.2.3 after the WebSocket link block of robot calculate node receives the JSON message for calling service request format, Connecting to send to the WebSocket service module of cloud computing center using WebSocket calls the JSON of service request format to disappear Breath;Print error message and the 4th step of execution, send and successfully then follow the steps 2.2.4 if sending failure;
2.2.4 the WebSocket service module of cloud computing center obtains robot calculate node by monitoring WebSocket connection The JSON message of the calling service request format of transmission will call the JSON message of service request format to be sent to cloud computing center Second message conversion module;
2.2.5 after the second message conversion module of cloud computing center receives the JSON message for calling service request format, parsing The content of the JSON message of service request format is called, Message Opcode type is obtained;Message Opcode type is call_service, Service name and parameter are called in the parsing of second message conversion module, and service name and parameter will be called to be sent to cloud computing center Second service checking assembly;
2.2.6 the second service checking assembly of cloud computing center, which receives, calls service name and parameter, using publication and subscribes to Subject obtains theme message type as parameter operation service/rosapi/topic_type;If successfully obtaining theme to disappear Type is ceased, setting response result is labeled as " 1 ", indicates successfully to obtain result;Otherwise setting response result is labeled as " 0 ", theme Type of message is set to sky;Second service checking assembly will be issued and subscribe to the theme message type of theme, response result label, adjust The second message conversion module of cloud computing center is sent to service name and Message Opcode type;
2.2.7 the second message conversion module of cloud computing center receives Message Opcode type, calls service name, issues and order After readding theme message type and the response result label of theme, construction calls the JSON message of service response format, and will adjust WebSocket service module is sent to the JSON message of service response format;
2.2.8 it after the WebSocket service module of cloud computing center receives the JSON message for calling service response format, uses WebSocket connection will call the JSON message of service response format to be sent to the WebSocket connection of robot calculate node Module;
2.2.9 after the WebSocket link block of robot calculate node receives the JSON message for calling service response format, Send it to first message conversion module;
2.2.10 after the first message conversion module of robot calculate node receives the JSON message for calling service response format, The content of the JSON message of service response format is called in parsing, obtains Message Opcode type;Message Opcode type is call_ Service obtains cloud computing center publication and marks with the theme message type and response result for subscribing to theme, and by subject Theme message type and response result label are sent to first service checking assembly;
The first service checking assembly of 2.3 robot calculate nodes receives cloud computing center publication and disappears with the theme for subscribing to theme Type and response result label are ceased, response result queue is judged;If response result label is 0, illustrate not succeed Cloud computing center publication theme message type corresponding with subject is subscribed to is obtained, print error message simultaneously executes the 4th step;Such as Fruit response result label is 1, and cloud computing center publication is used to calculate with the subject subscribed to as robot belonging to parameter calling Node /rosapi/topic_type service, obtain affiliated robot calculate node publication theme corresponding with subject is subscribed to Type of message, by affiliated robot calculate node publication theme message type corresponding with the subject subscribed to and cloud computing center The corresponding theme message type of subject of the same name be compared;If the corresponding master of issuing subject name of robot calculate node The topic type of message subscription subject corresponding theme message type of the same name with cloud computing center is identical and robot node is ordered It is identical to read the corresponding theme message type of the subject issuing subject name corresponding theme message type of the same name with cloud computing center, Issuing subject name and theme message type are then sent to first message publication component, subject and theme message type will be subscribed to It is sent to first message subscription component, executes third step;Otherwise it shows error message and executes the 4th step;
The step of third step, robot calculate node presses 3.1, subscribes to the ROS of cloud computing center theme of the same name using subject is subscribed to Message;Meanwhile robot calculate node issues ROS message by issuing subject name to cloud computing center by the step of 3.2, it is specific to walk It is rapid as follows:
3.1 robot calculate nodes subscribe to the ROS message of cloud computing center theme of the same name using subject is subscribed to, and specific steps are such as Under:
3.1.1 the first message subscription component of robot calculate node receives from first service checking assembly and subscribes to subject and master Type of message is inscribed, sets " subscribe " for Message Opcode type, Message Opcode type, subscription subject and theme are disappeared Breath type is sent to first message conversion module;
3.1.2 the first message conversion module of robot calculate node, which receives, subscribes to subject, theme message type and message Action type judges Message Opcode type for " subscribe ", and construction subscribes to the JSON message of theme format, and leads subscribing to The JSON message of topic format is sent to WebSocket link block;
3.1.3 the WebSocket link block of robot calculate node receives the JSON message for subscribing to theme format, uses WebSocket connection is sent to the WebSocket service module of cloud computing center;If send failure if print error message simultaneously The 4th step is executed, sends and successfully thens follow the steps 3.1.4;
3.1.4 the WebSocket service module of cloud computing center is obtained by monitoring the WebSocket connection that step 2.1 is established The JSON message of the subscription theme format sent to robot calculate node, the JSON message of the subscription theme format is sent to The second message conversion module of cloud computing center;
3.1.5 after the second message conversion module of cloud computing center receives the JSON message for subscribing to theme format, parsing is subscribed to The content of the JSON message of theme format obtains Message Opcode type, judges message action type;Message Opcode type It is subscribe, obtains and subscribe to subject and theme message type, and will subscribes to subject and theme message type is sent to the Two message subscribing components;
3.1.6 the second message subscription component of cloud computing center, which receives, subscribes to subject and theme message type, with message Subject and theme message type subscribe to the message on the subject using ROS message mechanism as parameter;
3.1.7 second message subscription component receives ROS in the ROS robot software packet of cloud computing center by ROS message mechanism The ROS message that message issuer is issued based on the subject, setting Message Opcode type are " publish ", and by ROS message and Message Opcode type is sent to the second message conversion module of cloud computing center;
3.1.8 the second message conversion module of cloud computing center receives ROS message and Message Opcode type, judges Message Opcode Type is " publish ", and second message conversion module parses ROS message, obtains subject and theme message content, theme is disappeared Content transformation is ceased into JSON field;The JSON message of issuing subject format is constructed, and the JSON message of issuing subject format is sent out Give WebSocket service module;
3.1.9 the WebSocket service module of cloud computing center receives the JSON message of issuing subject format, uses The JSON message of issuing subject format is sent to the WebSocket link block of robot calculate node by WebSocket connection;
3.1.10 the WebSocket link block of robot calculate node receives publication master by monitoring WebSocket connection The JSON message for inscribing format, is sent to first message conversion module for the JSON message of issuing subject format;
3.1.11 the first message conversion module of robot calculate node receives the JSON message of issuing subject format, and acquisition disappears Cease action type;Judge Message Opcode type for " publish ", obtain subject and theme message content, and by subject and Theme message content is sent to first message subscription component;
3.1.12 the first of robot calculate node subscribes to message components and receives subject and theme message content, is disappeared by ROS Breath mechanism construction and publication ROS message, the ROS message subscribing person of robot software's packet receive ROS message by ROS mechanism, Go to step 3.1.7;
3.2 robot calculate nodes issue ROS message by issuing subject name to cloud computing center, the specific steps are as follows:
3.2.1 the first message of robot calculate node issues component and receives issuing subject name and master from first service checking assembly Type of message is inscribed, subscribes to the subject using ROS message mechanism;
3.2.2 the first message publication component of robot calculate node receives robot calculate node by ROS message mechanism The ROS message that ROS message issuer is issued based on the subject in robot software's packet, sets Message Opcode type to " publish ", and ROS message and Message Opcode type are sent to first message conversion module;
3.2.3 after the first message conversion module of robot calculate node receives ROS message and Message Opcode type, judgement disappears Ceasing action type is " publish ", and first message conversion module parses ROS message, obtains subject and theme message content, structure The JSON message of issuing subject format is made, and the JSON message of issuing subject format is sent to WebSocket link block;
3.2.4 it after the WebSocket link block of robot calculate node receives the JSON message of issuing subject format, uses The JSON message of issuing subject format is sent to the WebSocket service module of cloud computing center by WebSocket connection, if WebSocket link block sends failure then print error message and the 4th step of execution;If WebSocket link block is sent Success, thens follow the steps 3.2.5;
3.2.5 the WebSocket service module of cloud computing center receives robot calculate node by monitoring WebSocket connection The message of the JSON format of the issuing subject format of transmission transmits the message to the second message modulus of conversion of cloud computing center Block;
3.2.6 after the second message conversion module of cloud computing center receives the JSON message of issuing subject format, message is obtained Action type;Message Opcode type is judged for " publish ", obtains subject and theme message content, and by subject and master Topic message content is sent to second message publication component;
3.2.7 after the second message publication component of cloud computing center receives subject and theme message content, pass through ROS message Mechanism construction and publication ROS message;
3.2.8 ROS message subscribing person is led to using issuing subject name subscription ROS message in cloud computing center ROS robot software packet It crosses ROS message mechanism and receives ROS message, go to step 3.2.2;
4th step terminates.
2. a kind of method wrapped by cloud service protocol access robot software as described in claim 1, it is characterised in that institute State/rosapi/topic_type service provides by ROS, function is to obtain the corresponding theme message type of subject, i.e., by making Subject is used to service to obtain the corresponding theme message type of the subject as parameter calling/rosapi/topic_type, thus Obtain the format of corresponding theme message content.
3. a kind of method wrapped by cloud service protocol access robot software as described in claim 1, it is characterised in that institute State first message conversion module construction JSON message method be: if it is issuing subject operate, first message conversion module from First message issues component and receives ROS message and Message Opcode type, obtains the theme message content and subject of ROS message, By former ROS theme message content transformation at JSON field, the JSON message of issuing subject format is constructed, and by issuing subject format JSON message be sent to WebSocket link block;If it is theme operation is subscribed to, first message conversion module disappears from first It ceases subscription component and receives subscription subject, theme message type and Message Opcode type, the JSON that construction subscribes to theme format disappears Breath, and the JSON message for subscribing to theme format is sent to WebSocket link block;If it is call service actions, first Message conversion module receives Message Opcode type from first service checking assembly, calls service name and subject, and construction calls The JSON message of service request format, and the JSON message of service request format will be called to be sent to WebSocket link block.
4. a kind of method wrapped by cloud service protocol access robot software as described in claim 1, it is characterised in that institute The method for stating first message conversion module parsing JSON message is: first message conversion module connects from WebSocket link block JSON message is received, the Message Opcode type in JSON message is parsed, is operated if it is issuing subject, first message conversion module obtains Subject and theme message content are taken, subject and theme message content are sent to first message subscription component;If it is tune With service operations, first message conversion module obtains response result label and service returns results, that is, theme message type, will answer It answers result queue and service returns results is sent to first service checking assembly.
5. a kind of method wrapped by cloud service protocol access robot software as described in claim 1, it is characterised in that institute State second message conversion module construction JSON message method be: if it is issuing subject operate, second message conversion module from Second message subscription component receives ROS message and Message Opcode type, obtains the theme message content and subject of ROS message, By the theme message content transformation of ROS message at JSON field, the JSON message of issuing subject format is constructed, and by issuing subject The JSON message of format is sent to WebSocket service module;If it is call service actions, second message conversion module is from Two service verification components obtain Message Opcode type, service name, theme message type and response result label, construction are called to adjust WebSocket service mould is sent to the JSON message of service response format, and by the JSON message for calling service response format Block.
6. a kind of method wrapped by cloud service protocol access robot software as described in claim 1, it is characterised in that institute The method for stating second message conversion module parsing JSON message is: second message conversion module connects from WebSocket service module JSON message is received, the Message Opcode type in JSON message is parsed, is operated if it is issuing subject, subject is obtained and theme disappears Content is ceased, subject and theme message content are sent to second message publication component;If it is theme operation is subscribed to, acquisition is ordered The subject and theme message type read, are sent to second message subscription component for the subject of subscription and theme message type; It if it is call service actions, obtains and calls service name and parameter, service name and parameter will be called to be sent to second service Checking assembly.
7. a kind of method wrapped by cloud service protocol access robot software as described in claim 1, it is characterised in that 2.1 The WebSocket service module of the WebSocket link block and cloud computing center that walk the robot calculate node is established The port used when WebSocket connection is " ws: //<B_IP_Address>: Port ".
8. a kind of method wrapped by cloud service protocol access robot software as described in claim 1, it is characterised in that step Suddenly the format of the JSON message foundation of first message conversion module construction calling service request format described in 2.2.2 is
" op " field is string type, indicates the action type to ROS message;
" service " field is string type, indicates the title for calling service;
" args " field is made of JSON data list, indicate call service parameter, content of parameter with JSON formatted data come It indicates, this field is alternative field, that is, the service having does not need parameter;
The JSON message approach of first message conversion module construction calling service request format is: setting " op " field to " Call_service " sets " service " field to call service name "/rosapi/topic_type ", by " arg " word Section is set as publication and subscribes to subject i.e. "/TopicSubscribe/TopicPublish ".
9. a kind of method wrapped by cloud service protocol access robot software as described in claim 1, it is characterised in that step Second message conversion module construction described in rapid 2.2.7 calls the format of the JSON message foundation of service response format are as follows:
" op " field is string type, indicates the action type to ROS message;
" service " field is string type, indicates the title for calling service;
" result " field is bool type, indicates that service is called to have return value, 0 indicates that service is called not obtain successfully, 1 table Show that calling services successfully to obtain;
" value " field is made of the data list of JSON format, indicates the return value for calling service;
The method that second message conversion module construction calls service response format JSON message is: setting " op " field to " Call_service " sets " service " field to call service name "/rosapi/topic_type ", will " result " field is set as response result label, sets " value " field to the theme of the publication obtained with subscription theme Type of message.
10. a kind of method wrapped by cloud service protocol access robot software as described in claim 1, it is characterised in that step First message conversion module construction described in rapid 3.1.2 subscribes to the format of the JSON message foundation of theme format are as follows:
" op " field is string type, indicates the action type to ROS message;
" topic " field is string type, indicates the message name for subscribing to message;
" type " expression is string type, is an alternative field, indicates the theme message class for subscribing to ROS message Type;
The method for the JSON message that first message conversion module construction subscribes to theme format is: setting " op " field to " Subscribe " sets " topic " field to subscribe to subject, sets theme message type for " type " field.
11. a kind of method wrapped by cloud service protocol access robot software as described in claim 1, it is characterised in that step The format of the JSON message foundation of second message conversion module construction issuing subject format described in rapid 3.1.8 are as follows:
{"op":<string>,
"topic":<string>,
"msg":<json>
}
" op " field is string type, indicates the action type to ROS message;
" topic " field is string type, indicates the subject to give out information;
" msg " field is the data of JSON format, indicates the content of issuing subject message;
The method of the JSON message of second message conversion module construction issuing subject is: " publish " is set by " op " field, It sets " topic " field to the subject of ROS message, sets " msg " field to be converted into the theme message of JSON format Content.
CN201710284862.5A 2017-04-26 2017-04-26 A method of it is wrapped by cloud service protocol access robot software Active CN106936932B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710284862.5A CN106936932B (en) 2017-04-26 2017-04-26 A method of it is wrapped by cloud service protocol access robot software

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710284862.5A CN106936932B (en) 2017-04-26 2017-04-26 A method of it is wrapped by cloud service protocol access robot software

Publications (2)

Publication Number Publication Date
CN106936932A CN106936932A (en) 2017-07-07
CN106936932B true CN106936932B (en) 2019-07-26

Family

ID=59438086

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710284862.5A Active CN106936932B (en) 2017-04-26 2017-04-26 A method of it is wrapped by cloud service protocol access robot software

Country Status (1)

Country Link
CN (1) CN106936932B (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107943458B (en) * 2017-11-20 2020-07-24 上海木木聚枞机器人科技有限公司 Robot development system
CN108594670A (en) * 2018-01-10 2018-09-28 河海大学常州校区 A kind of robot Overpassing Platform by Using agreement and control method
CN108594810B (en) * 2018-04-08 2019-07-02 百度在线网络技术(北京)有限公司 Method, apparatus, storage medium, terminal device and the automatic driving vehicle of data processing
CN108406781B (en) * 2018-05-18 2021-12-28 顺丰科技有限公司 Remote robot control system and control method
CN109159125B (en) * 2018-09-28 2021-02-12 华东计算技术研究所(中国电子科技集团公司第三十二研究所) Cloud service system based on ROS system robot
CN111124700B (en) * 2018-10-31 2023-07-18 百度在线网络技术(北京)有限公司 Method and device for accessing simulation software model
CN109737975B (en) * 2018-12-21 2021-07-20 北京四维图新科技股份有限公司 Map data acquisition monitoring method, device and system
CN112039882B (en) * 2020-08-31 2023-04-07 广州鲁邦通物联网科技股份有限公司 Message transmission processing method, system, device and storage medium
CN113218383A (en) * 2021-05-10 2021-08-06 山东新一代信息产业技术研究院有限公司 Cloud robot map construction method and system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105429858A (en) * 2015-12-11 2016-03-23 中国人民解放军国防科学技术大学 Real-time message transmission method among multiple robots
CN105897509A (en) * 2016-04-08 2016-08-24 上海工程技术大学 Cloud computing-based robot software operation and simulation system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105429858A (en) * 2015-12-11 2016-03-23 中国人民解放军国防科学技术大学 Real-time message transmission method among multiple robots
CN105897509A (en) * 2016-04-08 2016-08-24 上海工程技术大学 Cloud computing-based robot software operation and simulation system

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于ROS的云机器人服务框架;陈贤等;《计算机系统应用》;20161231;第25卷(第10期);第73-79页
机器人中间件消息实时性保证机制的研究与实现;樊泽栋等;《国际IT传媒品牌》;20151231;第36卷(第10期);第21-25页

Also Published As

Publication number Publication date
CN106936932A (en) 2017-07-07

Similar Documents

Publication Publication Date Title
CN106936932B (en) A method of it is wrapped by cloud service protocol access robot software
CN112261080B (en) Edge internet of things proxy method applied to electric power internet of things
Medved et al. Opendaylight: Towards a model-driven sdn controller architecture
CN108322356A (en) A kind of industrial network gateway compatibility test method based on MQTT
CN110198247A (en) Interface test method and system
Fleurey et al. MDE to manage communications with and between resource-constrained systems
CN107113232A (en) The method and apparatus that NFV manages layout
CN104883266B (en) network configuration access method and device
JP2011503682A (en) Automation device with control program and method for programming the control program
CN107079057A (en) Data transmission method, device, system, electronic equipment and computer program product
CN107179951A (en) Remote procedure calling (PRC) method and device
CN107463453A (en) Method, apparatus, equipment and the storage medium to be communicated between same terminal different application
CN110166353A (en) LoRaWan gateway system and LoRaWan gateway
CN109840155A (en) A kind of method and device for realizing remote procedure call
CN111314371A (en) Edge device access system and method based on intelligent gateway technology
WO2021135496A1 (en) Extensible communication framework supporting multiple communication protocols and communication method
Alexakos et al. Iot integration for adaptive manufacturing
CN110489245B (en) Remote Procedure Call (RPC) -based fault injection method and system
Endeley et al. A smart gateway enabling opc ua and dds interoperability
TWI651667B (en) Interface system of virtual and physical integrated network with resources topology
Zhang et al. Integration of 5G and OPC UA for Smart Manufacturing of the Future
Marschall et al. Design and installation of an agent-controlled cyber-physical production system using the example of a beverage bottling plant
Pisarić et al. Towards a plug-and-play architecture in Industry 4.0
CN114205842B (en) Device cooperation synchronization method, system, device, terminal device and storage medium
Strufe et al. Design of a 5G Ready and Reliable Architecture for the Smart Factory of the Future

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant