WO2023124286A1 - 桌面智能激光设备中的数据交互方法、装置和设备 - Google Patents

桌面智能激光设备中的数据交互方法、装置和设备 Download PDF

Info

Publication number
WO2023124286A1
WO2023124286A1 PCT/CN2022/120291 CN2022120291W WO2023124286A1 WO 2023124286 A1 WO2023124286 A1 WO 2023124286A1 CN 2022120291 W CN2022120291 W CN 2022120291W WO 2023124286 A1 WO2023124286 A1 WO 2023124286A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
communication port
external data
laser device
external
Prior art date
Application number
PCT/CN2022/120291
Other languages
English (en)
French (fr)
Inventor
董军华
Original Assignee
深圳市创客工场科技有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from CN202210331893.2A external-priority patent/CN116408553A/zh
Application filed by 深圳市创客工场科技有限公司 filed Critical 深圳市创客工场科技有限公司
Publication of WO2023124286A1 publication Critical patent/WO2023124286A1/zh

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23KSOLDERING OR UNSOLDERING; WELDING; CLADDING OR PLATING BY SOLDERING OR WELDING; CUTTING BY APPLYING HEAT LOCALLY, e.g. FLAME CUTTING; WORKING BY LASER BEAM
    • B23K26/00Working by laser beam, e.g. welding, cutting or boring
    • B23K26/36Removing material
    • B23K26/38Removing material by boring or cutting

Definitions

  • the present disclosure relates to the field of computer application technology, and in particular to a data interaction method and device in desktop intelligent laser equipment and desktop intelligent laser equipment.
  • One object of the present disclosure is to solve the technical problem of interaction between desktop smart laser equipment and external equipment.
  • a data interaction method in a desktop smart laser device includes an external data receiving step and a data sending step of directly transmitting data from the sending buffer to the corresponding communication port;
  • the external data receiving step includes:
  • the desktop intelligent laser device triggers an interruption of the reception of any communication port, and executes the external data reception of the communication port during the reception interruption;
  • the external data is stored and processed through the hierarchical cache corresponding to the communication port, and the external data is configured for the execution of engraving and/or cutting in the desktop intelligent laser device;
  • the data sending step of directly transferring data between the sending buffer area and the corresponding communication port includes:
  • the data sent by the desktop intelligent laser device adapted to each communication port is stored in the corresponding sending buffer area;
  • the data is directly sent to the external device through the channel constructed between the sending buffer area and the corresponding communication port.
  • the reception of any communication port by the desktop intelligent laser device triggers an interruption, and the external data reception of the communication port is executed during the reception interruption, including:
  • the desktop intelligent laser device receives external data triggered by any communication port, and interrupts the program execution process
  • the external data received by the communication port is fetched.
  • the reception of any communication port by the desktop smart laser device triggers an interruption, and after receiving the external data of the communication port during the reception interruption, the method further includes:
  • the desktop smart laser device After the external data to be retrieved is stored, the desktop smart laser device returns to continue executing the interrupted program execution process.
  • storing and processing the received external data through a hierarchical buffer corresponding to the communication port includes:
  • the external data For the external data stored in the corresponding first-level buffer area by each communication port, the external data is respectively obtained from the first-level buffer area according to the data receiving sequence;
  • Valid data is obtained by verifying the external data, and stored in the secondary ring buffer area corresponding to the communication port.
  • storing and processing the received external data through a hierarchical buffer corresponding to the communication port further includes:
  • the external data that has not passed the verification is processed.
  • the valid data includes instruction data, and storing and processing the received external data through a hierarchical cache corresponding to the communication port, further includes:
  • the control instruction is processed according to the corresponding instruction type, and the processing of the control instruction includes immediate execution and addition of the control instruction to an execution queue.
  • the sending the data directly to the external device through the channel constructed between the sending buffer and the corresponding communication port includes:
  • the data is directly sent to the external device through the channel constructed from the sending buffer area to the corresponding communication port.
  • the sending the data directly to the external device through the channel constructed between the sending buffer and the corresponding communication port includes:
  • the high-speed data transmission operation is interrupted and closed.
  • a data interaction device in a desktop smart laser device includes an external data receiver and a data transmitter that directly transmits data between the communication port corresponding to the sending buffer;
  • the external data receiver is configured to perform the following steps:
  • the desktop intelligent laser device triggers an interruption of the reception of any communication port, and executes the external data reception of the communication port during the reception interruption;
  • the external data is stored and processed through the hierarchical cache corresponding to the communication port, and the external data is configured for the execution of engraving and/or cutting in the desktop intelligent laser device;
  • the data transmitter is configured to perform the following steps:
  • the data sent by the desktop intelligent laser device adapted to each communication port is stored in the corresponding sending buffer area;
  • the data is directly sent to the external device through the channel constructed between the sending buffer area and the corresponding communication port.
  • a desktop smart laser device including:
  • the processor reads the computer-readable instructions stored in the memory to execute any one of the methods described above.
  • the reception of the desktop smart laser device to the communication port will trigger interruption and hierarchical buffering to achieve external data reception; on the other hand, the buffer area will communicate with the corresponding
  • the channel between the ports is constructed to directly send data out without the CPU intervention of the desktop smart laser device, so as to realize real-time data interaction for the desktop smart laser device and reduce the CPU usage during the communication process. Thereby, the communication efficiency of desktop intelligent laser equipment is improved.
  • FIG. 1 is a system architecture applied by an embodiment of the present disclosure.
  • Fig. 2 shows a flow chart of the steps of receiving external data in the data interaction of the desktop smart laser device according to an embodiment of the present disclosure.
  • Fig. 3 shows a flow chart of data sending steps in data interaction of a desktop smart laser device according to an embodiment of the present disclosure.
  • Fig. 4 shows a flow chart of the desktop intelligent laser device triggering an interruption of receiving any communication port according to an embodiment of the present disclosure, and executing the steps of receiving external data of the communication port during the receiving interruption.
  • Fig. 5 shows a flow chart of the steps of storing and processing the received external data through hierarchical buffers corresponding to communication ports according to an embodiment of the present disclosure.
  • Fig. 6 shows a flowchart of a data interaction method in a desktop smart laser device according to an embodiment of the present disclosure.
  • Fig. 7 shows a flow chart of the steps of directly sending data to an external device through a channel constructed between a sending buffer and a corresponding communication port according to an embodiment of the present disclosure.
  • Fig. 8 shows a hardware structure diagram of a smart laser device according to an embodiment of the present disclosure.
  • Example embodiments will now be described more fully with reference to the accompanying drawings.
  • Example embodiments may, however, be embodied in many forms and should not be construed as limited to the examples set forth herein; Fully conveyed to those skilled in the art.
  • the drawings are merely schematic illustrations of the present disclosure and are not necessarily drawn to scale.
  • the same reference numerals in the drawings denote the same or similar parts, and thus repeated descriptions thereof will be omitted.
  • FIG. 1 is an architecture applied by an embodiment of the present disclosure.
  • the architecture may include: at least one external device 11, such as a host computer, and a desktop intelligent laser device 12 facing each external device 11, so as to provide users with customized laser engraving or cutting functions. Among them, the interaction of data communication is realized between the external device 11 and the desktop intelligent laser device 12 through an adapted communication port.
  • the host computer After a processing task is generated by the host computer according to the hand-painted works, under this processing task, the host computer will generate executable files according to the curve trajectory presented in the hand-painted works, such as G code files, and split the executable files according to preset rules into Several frames of data.
  • executable files according to the curve trajectory presented in the hand-painted works, such as G code files, and split the executable files according to preset rules into Several frames of data.
  • the desktop intelligent laser device 12 receives several frames of data sequentially sent by the host computer through a specific communication port, such as a USB (Universal Serial Bus, Universal Serial Bus) port, or a serial communication port, and stores them in the buffer area.
  • a specific communication port such as a USB (Universal Serial Bus, Universal Serial Bus) port, or a serial communication port
  • the desktop smart laser device 12 will use the given data stored in the cache area to realize the curvilinear trajectory in the hand-painted works running at each trajectory point in the laser engraving or cutting, that is, to run at each trajectory point for laser cutting Or engraving execution mechanism, desktop intelligent laser equipment will control its movement, and finally cut and/or engrave the hand-painted graphics.
  • An embodiment of the present disclosure provides a method for a desktop intelligent laser device to realize data interaction with the outside.
  • the method includes an external data receiving part and a data sending part, wherein the data sending part is used to send the data in the sending buffer to the corresponding communication port direct transfer.
  • FIG. 2 shows a flow chart of the external data receiving step in the data interaction of desktop smart laser equipment according to an embodiment of the present disclosure; and refer to FIG. 3 in conjunction with FIG. 3. Flow chart of the data sending steps in the data interaction of the desktop smart laser device.
  • the external data receiving steps include:
  • step S210 the desktop smart laser device triggers an interruption of the reception of any communication port, and executes the external data reception of the communication port during the reception interruption.
  • Step S220 store and process the received external data through the hierarchical buffer corresponding to the communication port, and the external data is configured as engraving and/or cutting in the desktop smart laser device.
  • the data sending steps of directly transferring data from the sending buffer to the corresponding communication port include:
  • step S310 the desktop intelligent laser device adapts the data sent by each communication port to be stored in the corresponding sending buffer.
  • Step S320 sending data directly to the external device through the channel constructed between the sending buffer and the corresponding communication port.
  • the desktop intelligent laser device is configured with many communication ports, for example, USB (Universal Serial Bus, universal serial bus) port, serial communication port, debugging serial communication port, RGB board card serial communication port, etc.
  • USB Universal Serial Bus, universal serial bus
  • serial communication port serial communication port
  • debugging serial communication port RGB board card serial communication port
  • RGB board card serial communication port etc.
  • the desktop intelligent laser device realizes the interaction between itself and the outside through the communication port. It can be understood that each communication port, as a physical interface configured on the desktop smart laser device, will form each external channel of the desktop smart laser device.
  • Any communication port will receive external data.
  • any communication port of the desktop smart laser device is triggered to receive external data.
  • the desktop smart device executes a receiving interrupt on the communication port for the upcoming external data reception, so as to receive external data through this , so as to ensure the real-time performance of data transmission, the desktop intelligent laser equipment can receive external data in real time, and the communication efficiency and performance are improved.
  • the receiving interruption performed by the desktop smart laser device refers to interrupting the running of the current program, and prioritizing the receiving of external data currently triggered by the communication port.
  • the receiving interrupt operation of the external data receiving configuration by the desktop intelligent laser device will greatly enhance the real-time performance of data reception without being affected by the current operating status of the desktop intelligent laser device, so that the reliability of data reception will be enhanced accordingly.
  • FIG. 4 shows a flow chart of a desktop intelligent laser device triggering an interruption of reception of any communication port according to an embodiment of the present disclosure, and executing the steps of receiving external data of the communication port during the reception interruption.
  • the step S210 of receiving external data from the communication port during the reception interruption may include the following steps.
  • Step S211 the desktop smart laser device triggers any communication port to receive external data, and interrupts the program execution process.
  • Step S212 during the interruption of the program execution process, fetch the external data received by the communication port.
  • any communication port of the desktop smart laser device is receiving external data
  • the received external data may include debugging data for debugging the laser use process, for controlling the control actuator Data on sports and laser usage, etc., are not limited here.
  • the communication port of the desktop intelligent laser device When the communication port of the desktop intelligent laser device is triggered to receive external data, its CPU (central processing unit, central processing unit) will temporarily stop the operation of the current program, and give priority to the process of receiving external data.
  • its CPU central processing unit, central processing unit
  • step 212 is executed.
  • the CPU fetches external data from the communication port.
  • the external data reception of the communication port in the desktop intelligent laser device is completed.
  • the external data reception of the communication port has priority. After the external data reception is completed, the CPU returns to the program execution process.
  • the data interaction method in the desktop smart laser device further includes:
  • the desktop smart laser device After the external data to be retrieved is stored, the desktop smart laser device returns to continue the interrupted program execution process.
  • the CPU of the desktop intelligent laser device takes out the external data from the communication port, it executes the storage of the external data. Once the storage of the external data is completed, the CPU can return to continue the interrupted program execution process.
  • step S220 the CPU of the desktop intelligent laser device takes out the external data received by the communication port, stores and processes the external data through the hierarchical cache configured for the communication port, and then achieves an effective data cache, so that the effective data can be converted into the desktop intelligent laser device.
  • the hierarchical cache configured by the desktop smart laser device for the communication port is configured with a hierarchical cache strategy for the received external data, and the received external data and the valid data obtained by completing the verification pass through the two-level cache. Separation, on the one hand, ensures the real-time performance of external data reception, so that the CPU does not need to take up too much time to prioritize external data reception; on the other hand, because external data and effective data are separated independently, ensuring data reliability.
  • the implementation of hierarchical caching includes the execution process of the CPU of the desktop smart laser device storing the external data taken out of the communication port, and processing the stored external data, that is, the execution of integrity and accuracy verification process. Therefore, for the CPU of the desktop intelligent laser device, it can immediately return to continue the interrupted program execution process after completing the storage of external data, reducing the CPU occupation of the communication process.
  • the desktop smart laser device is equipped with a first-level cache area for each communication port, and a second-level cache area that is different from the first-level cache area.
  • the external data taken out by the CPU from the communication port and stored in the first-level buffer area is actually temporary data that needs to be verified for integrity and accuracy before it can be used for desktop smart laser devices. control.
  • the first-level buffer area reduces the immediacy requirements for the external data processing of the desktop smart laser device, and then for the CPU operation of the desktop smart laser device, it can simultaneously ensure the running of the currently executing program and the communication process.
  • a second-level cache is also configured to store valid data in the first-level cache.
  • the data is taken out from the first-level buffer area according to the order of data reception, and the valid data is obtained by verifying the data, and stored in the second-level buffer area corresponding to the communication port .
  • the secondary buffer may be a ring buffer.
  • the storage of valid data corresponding to the communication port in the secondary cache can be defined by different array subscripts for valid data from different communication terminals, so as to make the secondary cache It can correspond to each communication port, thereby facilitating access and improving subsequent processing efficiency.
  • a read pointer and a write pointer will be set.
  • the read pointer is used to point to the readable data in the secondary ring buffer
  • the write pointer is used to point to the writable data in the secondary ring buffer
  • the data in the secondary ring buffer is realized by moving the read pointer and the write pointer. reading and writing.
  • FIG. 5 shows a flow chart of steps of storing and processing external data received through hierarchical buffers corresponding to communication ports according to an embodiment of the present disclosure.
  • the embodiment of the present disclosure provides step S220 of storing and processing external data through hierarchical cache, which may include the following steps.
  • Step S221 storing the received external data in the first-level buffer area corresponding to the communication port.
  • Step S222 for the external data stored in the corresponding primary buffer for each communication port, obtain the external data from the primary buffer according to the order in which the data is received.
  • Step S223 verifying the external data to obtain valid data, and storing it in the secondary ring buffer area corresponding to the communication port.
  • step S221 the external data taken out by the CPU of the desktop smart laser device from the communication port is stored in the first-level buffer area corresponding to the communication port, so far, the CPU can return to continue its interrupted program execution process.
  • Any communication port has a unique corresponding first-level buffer area.
  • external data is temporary data received. Of course, it includes valid data, but it is not limited to this. It also includes errors that need to be retransmitted.
  • the data; and the received external data is also the data that will be quickly called immediately, so it is stored in the first-level buffer after receiving, which can reduce system overhead and improve efficiency.
  • step S222 the external data stored in the first-level buffer area are taken out according to the data receiving order, so as to process the received external data.
  • step S223 corresponding to the order of data reception, the external data fetched from the primary buffer area is verified, the verification includes data integrity and accuracy verification, and the external data that passes the verification is valid data, if If the verification fails, the external data that has not passed the verification needs to be processed according to the processing mechanism of the functional module to which the external data belongs.
  • the external data that has not passed the verification may be retransmitted, or discarded, or perform other processing, which is not limited here.
  • the external data in the first-level buffer area is, for example, stored sequentially in units of frames.
  • a frame of data carries the frame header, data, data length, data check value, and frame tail. Integrity The verification can confirm the integrity of the data according to the frame header and frame tail, and then intercept and obtain the complete data through the frame header and frame tail.
  • the secondary buffer area may be a circular buffer area.
  • the secondary circular buffer area is the aforementioned secondary buffer area.
  • the external data that has passed the verification will be stored in the secondary ring buffer. Specifically, the external data that has passed the verification is written under the action of the write pointer in the secondary ring buffer, and read through the read pointer.
  • FIG. 6 shows a flowchart of a data interaction method in a desktop smart laser device according to an embodiment of the present disclosure.
  • Valid data includes command data.
  • the data interaction method in the desktop intelligent laser device after the step S220 of storing and processing the received external data through the hierarchical cache corresponding to the communication port, the data interaction method in the desktop intelligent laser device also includes:
  • Step S410 extracting instruction data sequentially from the secondary ring buffer corresponding to each communication port.
  • Step S420 analyzing the command data to obtain the control command of the desktop smart laser device.
  • Step S430 process the control instruction according to the corresponding instruction type, the processing of the control instruction includes immediate execution of the control instruction and adding it to the execution queue.
  • step S410 as mentioned above, there is a corresponding relationship between each communication port and the second-level ring buffer. Based on this, the valid data stored in the second-level ring buffer will be processed sequentially.
  • the effective data is complete data for use by the desktop intelligent laser device, which includes instruction data, so that the external device can control the desktop intelligent laser device through the instruction data.
  • command data is data used to control the desktop smart laser device, for example, to control the movement of the actuator in the desktop smart laser device and the use of the laser.
  • step S420 for the complete command data extracted in sequence from the secondary ring buffer, it is parsed and converted into a control command through the execution of step S430, and the desktop intelligent laser device can realize the corresponding control.
  • the command data transmitted by the external device through the communication process of the desktop smart laser device is the command parameter, that is, the command parameter required to realize the command control of the desktop smart laser device.
  • step S430 different instruction types have different processing methods. For example, some control instructions need to be executed immediately, and some control instructions need to be executed sequentially. Therefore, for the control instructions obtained by parsing and converting, according to their The corresponding instruction type is used to process the control instruction, or execute it immediately, or add it to the execution queue, and execute it in the order of first in first out.
  • the external data received by the desktop smart laser device has been processed for use during the operation of the desktop smart laser device.
  • the received external data includes data used for motion control in desktop smart laser equipment, and the data carries instruction parameters for implementing motion control of actuators.
  • the The control command obtained by parsing and converting the data is the track point motion command for the motion control of the actuator in the desktop intelligent laser device.
  • the data used for motion control in the secondary ring buffer area is sequentially generated for the desktop intelligent laser device to perform laser engraving or cutting.
  • the curve pre-scan will be performed on the track point queue, Locate the first and last track points of the mapped curve; pre-calculate the movement of the covered track points according to the beginning and end of the mapped curve segment, obtain the instruction parameters of the running track point, and update the corresponding track point motion command in the track point queue.
  • the track point queue is finally traversed, and the desktop smart laser device is executed on the track point according to the traversed track point motion instructions , until the traversal ends.
  • the data used for motion control in the secondary ring buffer exists in units of frames. Therefore, according to the order of reception, the desktop smart laser device will take out a frame of data in order to generate a track point queue.
  • the queue elements in the track point queue all contain track point movement instructions, and the track point movement instructions carry several instruction parameters, for example, the position of the point on the corresponding curve track, point type, etc. It should be understood that the track point movement command contained in the queue element will be used to describe the track point for laser cutting or engraving on the one hand, and on the other hand to indicate the motion state of the actuator under the track point and its progress. laser use.
  • the generation of the track point queue is the process of continuously taking out the data used for motion control from the secondary ring buffer area and converting it into track point motion instructions, and then adding to the track point queue.
  • Trackpoint movement instructions constitute the data presence in the queue elements.
  • the second-level ring buffer area is continuously storing data, and is also continuously analyzing and converting data, so as to convert the data into track point movement instructions as much as possible.
  • the data for motion control stored in the secondary ring buffer will be continuously taken out for conversion of track point motion commands and addition of track point queues.
  • the traversal of the running track point queue will be started, that is, the generation of the track point queue will be executed, so as to ensure that the desktop smart laser device can once start engraving or cutting, can There are enough trajectory points available for operation, and it is also possible to avoid frequent start and stop of the machining process being performed.
  • the track point queue is full and “the buffer area is empty” are used as the conditions to start traversing the track point queue. If any condition is satisfied, the traversal of the track point queue will be allowed to be executed, thereby ensuring sufficient Multi-track point operation enhances the processing reliability of desktop intelligent laser equipment.
  • the generation of the executed track point queue is based on the first-in-first-out order of the track point queue, and the writing of the track point motion command to the track point queue is realized through the pointer defined in the track point queue.
  • the writing of the track point movement command to the track point queue is realized through the pointer defined in the queue.
  • the data carried by each queue element in the track point queue is the written track point movement command.
  • the track point queue describes and controls the processing content performed by the desktop intelligent laser device according to each track point.
  • the queue elements in the track point queue correspond to the track points, and the track point movement instructions carried by the queue elements will describe and control how the motors, cutter heads and other execution devices move under the corresponding track points, and then execute processing content.
  • the order of the data is guaranteed, thereby ensuring the reliability of the operation of the desktop smart laser device; on the other hand, the secondary cache buffer area and the track point queue are used as Tools, laser engraving and cutting performed by desktop intelligent laser equipment will be reduced, thereby greatly reducing the complexity and threshold. In order to break the traditional industrial laser cutting machine, it is only applicable to the industry and reduce the difficulty. It can be used by ordinary users with a low threshold. desktop devices.
  • the processing process of the desktop intelligent laser equipment is not executed immediately under the control of the track point queue, but the curve pre-scanning of the track point queue is skipped.
  • trajectory point queue is consistent with the mapping of the processing curve and the processing working state (laser use), wherein the processing curve referred to is the motor-driven cutter head and/or laser head and other tools that perform laser cutting and laser cutting. /or the movement curve of the engraving; the working status of the processing is the laser power, laser mode, etc. used in the processing process.
  • the processing curve includes several curve segments, and the processing process involved in different curve segments often has very large differences.
  • the processing process performed on different track points in the same curve segment is relatively stable. Therefore, the curve of the track point queue is Pre-scanning determines the beginning and end of each curve segment, thereby avoiding recalculation in the subsequent actual processing process, reducing the amount of calculation in the subsequent processing process, and improving processing efficiency.
  • the track point queue that the desktop smart laser device will start to traverse the corresponding track points form a processing curve.
  • different curve segments on the processing curve are also composed of track points.
  • a curve segment The range of is determined by its head track point and tail track point.
  • the first trajectory point and the tail trajectory point are positioned one by one for the mapped curve segment, thereby facilitating the execution of the motion pre-calculation of each included trajectory point under the clearly determined range of each curve segment.
  • a first-level pointer and a second-level pointer are defined in the track point queue.
  • the first-level pointer points to the head and tail of the track point queue, and the second-level pointer is used to point to the first track point and the end of the curve segment mapped by the track point queue.
  • the queue element corresponding to the track point.
  • the specific implementation process includes: initiating a scan of the track point queue, positioning the head of the track point queue or the next queue element corresponding to the track point at the end of the previous curve segment, Point the second-level head pointer of the curve segment to the queue element; continue to scan the track point queue through the second-level pointer used to point to the tail track point of the curve segment, and judge whether the queue element scanned by the second-level tail pointer corresponds to the tail track point of the curve segment , if yes, point the secondary tail pointer to the queue element, if not, continue to scan the track point queue until the queue element corresponding to the tail track point is scanned.
  • the head of the track point queue or the next queue corresponding to the track point at the end of the previous curve segment obtained by the curve pre-scan can be passed. element to locate the first track point of the current curve segment.
  • the first level pointer is used to point to the head and tail of all track points in the entire track point queue
  • the second level pointer is used to point to the currently scanned curve segment. head and tail.
  • the head of the queue pointed to by the first-level head pointer can be positioned as the head of the curve segment. track point.
  • the next queue element pointed to by the tail track point positioning of the previous curve segment is the first track point of the curve segment.
  • the second stage pointer points to the first locus point of positioning. Continue the curve pre-scanning of the track point queue to obtain the tail track point for this curve segment scan.
  • the second-level tail pointer will move forward step by step to the next queue element, and judge whether the queue element currently pointed to corresponds to the tail track point of the curve segment. If the queue element currently pointed to does not correspond to the tail track point, the second-level The tail pointer continues to move forward and will point to the next queue element for judgment.
  • the secondary tail pointer can be pointed to the queue element, so that the secondary tail pointer marks the cut-off point for the curve segment by pointing to the queue element.
  • the curve pre-scanning corresponding to a curve segment is completed, so that the motion pre-calculation of the curve segment is used to update the instruction parameters for the subsequent track point queue to be executed, thereby minimizing the amount of calculation during the traversal process .
  • the judgment of whether it corresponds to the track point at the end of the curve segment can be determined according to the command parameters carried in the track point movement command, such as the point type.
  • the point type will describe the corresponding track Attributes such as delay and state change that exist in the motion of the point.
  • the pre-calculated instruction parameters will more accurately describe and control the movement of the actuator in the desktop intelligent laser equipment. Therefore, the command parameters are updated in the corresponding queue elements in the track point queue.
  • the trajectory point motion command carrying more abundant and accurate command parameters will make the processing performed by desktop intelligent laser equipment more reliable and accurate.
  • the command parameters obtained through pre-calculation may include information such as position vectors of corresponding track points in three-dimensional space. For example, after the first and last track points of the currently scanned curve segment are determined, the length of the curve segment can be known, and then the position determination and speed planning of the track point can be pre-calculated according to the length, which is the track point motion command.
  • the command parameter carried by the extension may include information such as position vectors of corresponding track points in three-dimensional space.
  • the process includes: calculating the length of the mapped curve segment according to the first track point and the tail track point, and calculating the length of the curve segment according to the length of the curve segment and the track point queue
  • the command parameter carried by the corresponding track point operation command is used for extended calculation of other command parameters, and the command parameter obtained by the expanded calculation is updated to the corresponding track point movement command in the track point queue.
  • the length of the curve segment can be known from the first trajectory point and the tail trajectory point obtained by positioning.
  • the obtained length of the curve segment will be beneficial to realize motion pre-calculation processes such as speed planning for the trajectory points within the range of the curve segment, thereby facilitating the improvement of the accuracy of motion and processing on the curve segment.
  • the trajectory on the curve segment is determined by the pre-calculation performed
  • Points expand other instruction parameters to enhance the running accuracy of the curve segment, that is, the running accuracy of each track point on it.
  • the position vector of the corresponding trajectory point in the three-dimensional space can be pre-calculated from the length of the curve segment and its corresponding position on the processing content, that is, the position of the point;
  • the calculation process completes the speed planning, so that the speed can be changed through algorithm control.
  • the curve segment of the current motion pre-calculation determine its existing acceleration phase and deceleration phase, so as to facilitate the traversal of the track points, and can according to the speed, acceleration or deceleration indicated by the command parameters corresponding to each track point , to process its speed to adapt to the planned acceleration phase or deceleration phase.
  • the execution of the motion on the curve segment often plans the acceleration phase and/or the deceleration phase in terms of speed.
  • the distance traveled can be used to determine whether the acceleration time point is reached, and then the acceleration related to entering the acceleration phase can be set.
  • the deceleration time point is reached according to the remaining distance of the current curve segment, and then the deceleration rate for entering the deceleration phase is set.
  • the instruction parameters obtained by the extended calculation are updated to the queue elements of the track point queue according to the corresponding track point, and then used for subsequent execution of the track point queue traversal.
  • the pre-calculation of the required parameters can be performed during the traversal of the track point queue, so that the subsequent traversal does not need to calculate the parameters, which ensures the efficiency of the operation.
  • the desktop intelligent laser device Under the normal state of the desktop intelligent laser device, after completing the pre-computation of all curve segments, it initiates the traversal of the track point queue, so as to run the curve segments one by one, and the track points on the curve segment, and finally realize the desktop Intelligent laser equipment engraving or cutting on each track point.
  • the traversal of the track point queue is allowed to execute after confirming that the buffer area is empty or the track point queue is full.
  • each curve segment refers to the execution process of sending the corresponding trajectory operation command, and each curve segment must contain several trajectory points. Therefore, the operation of the curve segment is a number of trajectory points processes run separately.
  • the motion state of the desktop smart laser device includes a normal state and a pause state, traversing the track point queue, executing the operation of the desktop smart laser device at the track point according to the traversed track point movement instructions, until the end of the traversal.
  • the desktop smart laser device initiates the traversal of the track point queue in the normal state, obtains the traversed track point movement command, and then sends the track point movement command to the executive mechanism of the desktop smart laser device, and the track point movement command is used for the desktop smart laser device.
  • the actuator runs on the track point.
  • the motion state of the desktop smart laser device refers to the state of the actuator for laser engraving or cutting.
  • the actuator moves from one track point to the next track point, and executes exciting engraving or cutting.
  • the actuator When there is an interruption or other abnormality, it will enter the pause state.
  • the desktop smart laser device initiates the traversal of the track point queue, and extracts the track point movement instructions one by one for the queue elements in the track point queue, so as to initiate the movement and laser use on the corresponding track point.
  • the trajectory point movement command obtained by the current traversal will be sent to the corresponding actuator to complete the traversal and operation of the current trajectory point, and then access the next queue element to obtain the trajectory point movement command carried by the next queue element to complete The traversal and operation of the next queue elements until the traversal of the entire track point queue is completed.
  • the traversal of the track point queue triggers the operation of the corresponding actuator in the desktop smart laser device on each track point on the processing material and the engraving or cutting of the processing material on this track point.
  • the processing mechanism of the pause instruction is also configured. For example, after receiving the pause command, it does not stop the execution immediately, but continues to move along the set curve segment, and starts to decelerate according to the deceleration carried in the track point motion command until the speed drops to 0 and completes During the deceleration process, it enters the pause state, so as to avoid the impact caused by the immediate shutdown to the equipment, so that the processing track can be continued, so as to maintain the integrity of the processed products as much as possible and reduce the impact caused by the pause.
  • the motion control and laser use of the user-level desktop smart laser device at each track point are realized.
  • the trajectory point motion command used by each trajectory point sets the speed parameters and acceleration ranges for the motors of each axis of the actuator, so that under the action of the speed planning executed by the pre-calculation, according to the corresponding The position vector and direction of the track point in three-dimensional space and the distance from the inflection point control the speed change to an appropriate value, so as to ensure the smooth speed change and the overall operation efficiency in the specific execution process.
  • FIG. 7 shows a flow chart of the steps of directly sending data to an external device through a channel constructed between a sending buffer and a corresponding communication port according to an embodiment of the present disclosure.
  • the step S320 of directly sending data to the external device through the channel established between the sending buffer and the corresponding communication port may include the following steps.
  • Step S321 judging whether the sending buffer is empty, and if the sending buffer is not empty, perform a high-speed data transmission operation on the data in the sending buffer.
  • Step S322 under the execution of the high-speed data transmission operation, the data is directly sent to the external device through the channel constructed from the sending buffer to the corresponding communication port.
  • the step S320 of directly sending data to the external device through the channel constructed between the sending buffer and the corresponding communication port may further include:
  • step S321 the desktop smart laser device divides and configures a sending buffer area for its own data transmission, which is used to temporarily store the data that the desktop smart laser device needs to send.
  • the sending buffer area can be divided for each communication port, and the sending buffer area is preferably a ring buffer area, that is, a sending ring buffer area, so that in the execution of step S321, the desktop smart laser device first puts the data to be sent by each port into the corresponding in the sending ring buffer.
  • step S322 it is judged whether the sending ring buffer area corresponding to each communication port is empty, if not, the transmission is started, that is, step S322 is executed.
  • the high-speed data transmission operation performed is realized by turning on DMA (Direct Memory Access, direct memory access). Specifically, under the high-speed data transmission operation performed, it is allowed to directly read and write data between the external device and the memory, that is, the sending buffer area, without using the CPU to read data from the sending buffer area for the external device, thereby also No CPU intervention.
  • DMA Direct Memory Access, direct memory access
  • DMA Dynamic Multiple Access
  • Adapt to the desktop smart laser device and configure the computer terminal, which is used to provide processing patterns and other content for the engraving and cutting performed by the desktop smart laser device, so that the desktop laser device can use the laser to perform engraving on the specified material according to the processing pattern or cutting.
  • the computer terminal is used as the host computer to obtain the processing pattern hand-drawn by the user, or the processing pattern selected by the user, and generate the executable file of the desktop intelligent laser device according to the curve trajectory existing on the processing pattern.
  • the executable file can be a G code file.
  • the executable file is used to control the movement of the desktop intelligent laser device and the use of the laser, so as to engrave or cut the processing pattern on the specified material.
  • the computer side splits the executable file into several frames of data, and sends the data to the desktop smart laser device in units of frames.
  • the communication port of the desktop smart laser device triggers data reception.
  • the CPU interrupts the current program movement, prioritizes data reception, and stores it in the first-level buffer area corresponding to the communication port.
  • a frame of data is frame header + data + data length + data check value + frame tail
  • the first-level buffer area is cleared, and then the current data is received.
  • the first-level buffer will also be cleared. The cleared first-level buffer starts to receive data until the end of the frame is received.
  • Each communication port is configured with its own corresponding first-level buffer area, which is used for temporary storage of the data received by the communication port.
  • the verification of the data in the first-level buffer area is performed sequentially, and the valid data is stored in the second-level ring buffer area.
  • the data stored in the secondary ring buffer area can be retrieved to run the movement and laser of the curve segment and track point corresponding to the processing pattern.
  • the data is taken out from the secondary ring buffer area, analyzed and converted into track point motion instructions, and the track point motion commands obtained by sequential conversion are added to the track point queue in turn.
  • the secondary ring buffer area is empty, or the track point queue is full, This allows the traversal of the track point queue to be performed.
  • a first-level pointer and a second-level instruction are defined on it, so as to perform pre-computation for the traversal of the track point queue in advance, and reduce the amount of calculation in the actual traversal process.
  • both the first-level pointer and the second-level pointer include a head pointer and a tail pointer.
  • the first-level pointer is used to control the queue elements in the entire track point queue; the second-level pointer is used for a curve segment mapped to the track point queue. The pointing control of the corresponding queue element.
  • the curve pre-scan is performed on the track point queue, and the first track point and the last track point are determined for the currently pointed curve segment through the execution of the curve pre-scan, and then the length of the curve segment is obtained. , so as to perform motion pre-calculation on the curve segment to expand the command parameters of the track point motion command, and update it to the track point queue.
  • the desktop smart laser device If the desktop smart laser device is currently in a normal state, it will initiate a traversal of the track point queue, take out the track point motion command from the traversed queue elements, and send it, so that the actuator of the desktop smart laser device can drive itself according to the track point motion command
  • the operation and laser use on the corresponding track point, and so on, can complete the laser engraving or cutting of each track point.
  • a data interaction device in desktop intelligent laser equipment includes an external data receiver and a data transmitter for directly transmitting data between communication terminals corresponding to the sending buffer;
  • the external data receiver is configured to perform the following steps:
  • the desktop intelligent laser device triggers an interruption of the reception of any communication port, and executes the external data reception of the communication port during the reception interruption;
  • the external data is stored and processed through the hierarchical cache corresponding to the communication port, and the external data is configured for the execution of engraving and/or cutting in the desktop intelligent laser device;
  • the data transmitter is configured to perform the following steps:
  • the data sent by the desktop intelligent laser device adapted to each communication port is stored in the corresponding sending buffer area;
  • the data is directly sent to the external device through the channel constructed between the sending buffer area and the corresponding communication port.
  • the reception of any communication port by the desktop intelligent laser device is triggered to be interrupted, and the external data reception of the communication port is executed during the reception interruption, including:
  • the desktop intelligent laser device receives external data triggered by any communication port, and interrupts the program execution process
  • the external data received by the communication port is fetched.
  • the desktop smart laser device triggers an interruption of the reception of any communication port, and after receiving the external data of the communication port during the reception interruption, it further includes:
  • the desktop smart laser device After the external data to be retrieved is stored, the desktop smart laser device returns to continue executing the interrupted program execution process.
  • the received external data is stored and processed through a hierarchical cache corresponding to the communication port, including:
  • the external data For the external data stored in the corresponding first-level buffer area by each communication port, the external data is respectively obtained from the first-level buffer area according to the data receiving sequence;
  • Valid data is obtained by verifying the external data, and stored in the secondary ring buffer area corresponding to the communication port.
  • storing and processing the received external data through a hierarchical buffer corresponding to the communication port further includes:
  • the external data that has not passed the verification is processed.
  • the effective data includes instruction data, and storing and processing the received external data through a hierarchical cache corresponding to the communication port, further comprising:
  • the control instruction is processed according to the corresponding instruction type, and the processing of the control instruction includes immediate execution and addition of the control instruction to an execution queue.
  • the sending the data directly to the external device through the channel constructed between the sending buffer and the corresponding communication port includes:
  • the data is directly sent to the external device through the channel constructed from the sending buffer area to the corresponding communication port.
  • the sending the data directly to the external device through the channel constructed between the sending buffer and the corresponding communication port includes:
  • the high-speed data transmission operation is interrupted and closed.
  • the motion control method in the desktop smart laser device according to the embodiment of the present disclosure can be implemented by the desktop smart laser device in FIG. 8 .
  • the desktop smart laser device according to the embodiment of the present disclosure will be described below with reference to FIG. 8 .
  • the desktop smart laser device shown in FIG. 8 is only an example, and should not limit the functions and scope of use of the embodiments of the present disclosure.
  • the desktop smart laser device can be similar to a general-purpose computing device, and the components of the desktop smart laser device can include, but are not limited to: at least one processing unit 810, the above-mentioned at least one storage unit 820, connecting different system components (including the storage unit) 820 and the bus 830 of the processing unit 810), and the execution mechanism (not shown) that undertakes the task of laser processing.
  • the storage unit stores program codes, and the program codes can be executed by the processing unit 810, so that the processing unit 810 executes various exemplary methods according to the present disclosure described in the description part of the above-mentioned exemplary methods in this specification. Implementation steps.
  • the processing unit 810 may execute various steps as shown in FIG. 2 .
  • the storage unit 820 may include a readable medium in the form of a volatile storage unit, such as a random access storage unit (RAM) 8201 and/or a cache storage unit 8202 , and may also include a read-only storage unit (ROM) 8203 .
  • RAM random access storage unit
  • ROM read-only storage unit
  • Storage unit 820 may also include programs/utilities 8204 having a set (at least one) of program modules 8205, such program modules 8205 including but not limited to: an operating system, one or more application programs, other program modules, and program data, Implementations of networked environments may be included in each or some combination of these examples.
  • Bus 830 may represent one or more of several types of bus structures, including a memory cell bus or memory cell controller, a peripheral bus, an accelerated graphics port, a processing unit, or a local area using any of a variety of bus structures. bus.
  • the SDN controller can also communicate with one or more external devices 700 (eg, keyboards, pointing devices, Bluetooth devices, etc.). Such communication may occur through input/output (I/O) interface 850 .
  • the SDN controller can also communicate with one or more networks (such as a local area network (LAN), a wide area network (WAN) and/or a public network such as the Internet) through the network adapter 860 .
  • networks such as a local area network (LAN), a wide area network (WAN) and/or a public network such as the Internet
  • network adapter 860 communicates with other modules over bus 830 .
  • other hardware and/or software modules may be used in conjunction with the SDN controller, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives And data backup storage system, etc.
  • the example implementations described here can be implemented by software, or by combining software with necessary hardware. Therefore, the technical solutions according to the embodiments of the present disclosure can be embodied in the form of software products, and the software products can be stored in a non-volatile storage medium (which can be CD-ROM, U disk, mobile hard disk, etc.) or on the network , including several instructions to make a computing device (which may be a personal computer, a server, a terminal device, or a network device, etc.) execute the method according to the embodiments of the present disclosure.
  • a computing device which may be a personal computer, a server, a terminal device, or a network device, etc.
  • a computer program medium on which computer-readable instructions are stored, and when the computer-readable instructions are executed by a processor of a computer, the computer is made to execute the above method embodiments method described in section.
  • a program product for implementing the method in the above method embodiment, which may adopt a portable compact disk read-only memory (CD-ROM) and include program codes, and may be used in a terminal devices, such as personal computers.
  • CD-ROM portable compact disk read-only memory
  • the program product of the present disclosure is not limited thereto.
  • a readable storage medium may be any tangible medium containing or storing a program, and the program may be used by or in combination with an instruction execution system, apparatus or device.
  • the program product may reside on any combination of one or more readable media.
  • the readable medium may be a readable signal medium or a readable storage medium.
  • the readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or device, or any combination thereof. More specific examples (non-exhaustive list) of readable storage media include: electrical connection with one or more conductors, portable disk, hard disk, random access memory (RAM), read only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
  • a computer readable signal medium may include a data signal carrying readable program code in baseband or as part of a carrier wave. Such propagated data signals may take many forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the foregoing.
  • a readable signal medium may also be any readable medium other than a readable storage medium that can transmit, propagate, or transport a program for use by or in conjunction with an instruction execution system, apparatus, or device.
  • Program code embodied on a readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
  • Program code for performing the operations of the present disclosure may be written in any combination of one or more programming languages, including object-oriented programming languages—such as Java, C++, etc., as well as conventional procedural Programming language - such as "C" or a similar programming language.
  • the program code may execute entirely on the user's computing device, partly on the user's device, as a stand-alone software package, partly on the user's computing device and partly on a remote computing device, or entirely on the remote computing device or server to execute.
  • the remote computing device may be connected to the user computing device through any kind of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computing device (for example, using an Internet service provider). business to connect via the Internet).
  • LAN local area network
  • WAN wide area network
  • Internet service provider for example, using an Internet service provider
  • steps of the methods of the present disclosure are depicted in the drawings in a particular order, there is no requirement or implication that the steps must be performed in that particular order, or that all illustrated steps must be performed to achieve the desired result. Additionally or alternatively, certain steps may be omitted, multiple steps may be combined into one step for execution, and/or one step may be decomposed into multiple steps for execution, etc.
  • the technical solutions according to the embodiments of the present disclosure can be embodied in the form of software products, and the software products can be stored in a non-volatile storage medium (which can be CD-ROM, U disk, mobile hard disk, etc.) or on the network , including several instructions to make a computing device (which may be a personal computer, a server, a mobile terminal, or a network device, etc.) execute the method according to the embodiments of the present disclosure.
  • a non-volatile storage medium which can be CD-ROM, U disk, mobile hard disk, etc.
  • a computing device which may be a personal computer, a server, a mobile terminal, or a network device, etc.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Optics & Photonics (AREA)
  • Plasma & Fusion (AREA)
  • Mechanical Engineering (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本公开提供了桌面智能激光设备中的数据交互方法、装置和桌面智能激光设备,其中该方法包括外部数据接收步骤和发送缓存区向所对应通讯端口之间直接传输数据的数据发送步骤;外部数据接收步骤包括:桌面智能激光设备对通讯端口的接收触发中断,在接收中断中执行通讯端口的外部数据接收;通过对应于通讯端口的分级缓存来存放和处理外部数据;发送缓存区向所对应通讯端口之间直接传输数据的数据发送步骤包括:桌面智能激光设备适配各通讯端口发送的数据被存放于相应发送缓存区;通过发送缓存区和所对应通讯端口之间构建的通道直接向外部设备发送数据,进而最终实现高效数据交互。

Description

桌面智能激光设备中的数据交互方法、装置和设备
交叉引用
本公开要求于2022年3月31日提交的申请号为2022103318932名称为“桌面智能激光设备中的数据交互方法、装置和设备”的中国专利申请的优先权,该中国专利申请的全部内容通过引用全部并入本文。
技术领域
本公开涉及计算机应用技术领域,具体涉及一种桌面智能激光设备中的数据交互方法、装置和桌面智能激光设备。
背景技术
随着计算机等先进技术的发展,以及高自由度创造的进行,传统工业激光切割机被先进技术进行了革命性优化,成为用户级的桌面智能硬件产品。
但是,用户级的桌面智能激光设备与传统工业激光切割设备有所不同,桌面智能激光设备如何实现自身与外部设备的数据交互,是当前亟待解决的问题。
公开内容
本公开的一个目的旨在解决桌面智能激光设备与外部设备交互的技术问题。
根据本公开实施例的一方面,公开了一种桌面智能激光设备中的数据交互方法,所述方法包括外部数据接收步骤和发送缓存区向所对应通讯端口之间直接传输数据的数据发送步骤;
所述外部数据接收步骤包括:
所述桌面智能激光设备对任意一通讯端口的接收触发中断,在接收中断中执行所述通讯端口的外部数据接收;
对接收的所述外部数据,通过对应于所述通讯端口的分级缓存来存放和处理所述外部数据,所述外部数据配置为所述桌面智能激光设备中雕刻和/或切割的执行;
所述发送缓存区向所对应通讯端口之间直接传输数据的数据发送步骤包括:
所述桌面智能激光设备适配各通讯端口发送的数据被存放于相应发送缓存区;
通过所述发送缓存区和所对应通讯端口之间构建的通道直接向外部设备发送所述数据。
根据本公开实施例的一方面,所述桌面智能激光设备对任意一通讯端口的接收触发中断,在接收中断中执行所述通讯端口的外部数据接收,包括:
所述桌面智能激光设备对任意一通讯端口触发进行的外部数据接收,中断程序执行过程;
在所述程序执行过程的中断中,取出所述通讯端口接收的外部数据。
根据本公开实施例的一方面,所述桌面智能激光设备对任意一通讯端口的接收触发中断,在接收中断中执行所述通讯端口的外部数据接收之后,所述方法还包括:
待取出的所述外部数据被存储之后,所述桌面智能激光设备返回继续执行被中断的所述程序执行过程。
根据本公开实施例的一方面,所述对接收的所述外部数据,通过对应于所述通讯端口的分级缓存来存放和处理所述外部数据,包括:
将接收的所述外部数据存放于所述通讯端口对应的一级缓存区;
对各通讯端口存放于所对应一级缓存区的外部数据,按照数据接收顺序分别从所述一级缓存区获取外部数据;
校验所述外部数据获得有效数据,并存放于所述通讯端口对应的二级环形缓存区。
根据本公开实施例的一方面,所述对接收的所述外部数据,通过对应于所述通讯端口的分级缓存来存放和处理所述外部数据,还包括:
根据外部数据所归属功能模块的处理机制,处理未校验通过的所述外部数据。
根据本公开实施例的一方面,所述有效数据包括指令数据,所述对接收的所述外部数据,通过对应于所述通讯端口的分级缓存来存放和处理所述外部数据,还包括:
从各通讯端口对应的二级环形缓存区顺序提取指令数据;
解析所述指令数据获得所述桌面智能激光设备的控制指令;
根据对应的指令类型处理所述控制指令,所述控制指令的处理包括所述控制指令的立即执行和加入执行队列。
根据本公开实施例的一方面,所述通过所述发送缓存区和所对应通讯端口之间构建的通道直接向外部设备发送所述数据,包括:
判断所述发送缓存区是否为空,若所述发送缓存区不为空,则对所述发送缓存区的数据执行高速数据传输操作;
在所述高速数据传输操作的执行下,所述数据通过所述发送缓存区向对应通讯端口构建的通道,直接向外部设备发送。
根据本公开实施例的一方面,所述通过所述发送缓存区和所对应通讯端口之间构建的通道直接向外部设备发送所述数据,包括:
待所述数据发送结束,中断所述高速数据传输操作并关闭。
根据本公开实施例的一方面,公开了一种桌面智能激光设备中的数据交互装置,所述装置包括外部数据接收器和发送缓存区所对应通讯端口之间直接传输数据的数据发送器;
所述外部数据接收器配置为执行以下步骤:
所述桌面智能激光设备对任意一通讯端口的接收触发中断,在接收中断中执行所述通讯端口的外部数据接收;
对接收的所述外部数据,通过对应于所述通讯端口的分级缓存来存放和处理所述外部数据,所述外部数据配置为所述桌面智能激光设备中雕刻和/或切割的执行;
所述数据发送器配置为执行以下步骤:
所述桌面智能激光设备适配各通讯端口发送的数据被存放于相应发送缓存区;
通过所述发送缓存区和所对应通讯端口之间构建的通道直接向外部设备发送所述数据。
根据本公开实施例的一方面,公开了一种桌面智能激光设备,包括:
存储器,存储有计算机可读指令;
处理器,读取存储器存储的计算机可读指令,以执行如上所述的任意一个所述的方法。
本公开实施例中,对于桌面智能激光设备与外部的数据交互,一方面将通过桌面智能激光设备对通讯端口的接收触发中断和分级缓存来实现外部数据接收,另一方面通过缓存区与对应通讯端口之间通道的构建来直接进行数据的向外发送,而不再需要桌面智能激光设备的CPU干预,以此来为桌面智能激光设备实现实时且能够降低通讯过程对CPU的占用的数据交互,进而提高桌面智能激光设备的通讯效率。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本公开。
附图说明
通过参照附图详细描述其示例实施例,本公开的上述和其它目标、特征及优点将变得更加显而易见。
图1是本公开实施例所应用的一种体系架构。
图2示出了根据本公开一个实施例的桌面智能激光设备的数据交互中外部数据接收步骤的流程图。
图3示出了根据本公开一个实施例的桌面智能激光设备的数据交互中数据发送步骤的流程图。
图4示出了根据本公开一个实施例的桌面智能激光设备对任意一通讯端口的接收触发中断,在接收中断中执行通讯端口的外部数据接收步骤的流程图。
图5示出了根据本公开一个实施例的对接收的外部数据,通过对应于通讯端口的分级缓存来存放和处理外部数据步骤的流程图。
图6示出了根据本公开一个实施例的桌面智能激光设备中的数据交互方法的流程图。
图7示出了根据本公开一个实施例的通过发送缓存区和所对应通讯端口之间构建的通道直接向外部设备发送数据步骤的流程图。
图8示出了根据本公开一个实施例的智能激光设备的硬件结构图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些示例实施方式使得本公开的描述将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多示例实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的示例实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、步骤等。在其它情况下,不详细示出或描述公知结构、方法、实现或者操作以避免喧宾夺主而使得本公开的各方面变得模糊。
附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
请参阅图1,图1是本公开实施例所应用的一种体系架构。该体系架构可以包括:至少一个外部设备11,如一上位机,以及面向各外部设备11的桌面智能激光设备12,以此来为用户构成能够自定义进行激光雕刻或切割的功能。其中,外部设备11与桌面智能激光设备12之间通过适配的通讯端口实现数据通信的交互。
一加工任务于上位机根据手绘作品生成之后,在该加工任务下,上位机将按照手绘作品中呈现的曲线轨迹生成可执行文件,如G代码文件,按照预设定规则拆分可执行文件为若干帧数据。
若干帧数据通过上位机发送给桌面智能激光设备12。桌面智能激光设备12通过特定通讯端口,如USB(Universal Serial Bus,通用串行总线)端口,或者串行通讯端口接收上位机顺序发送的若干帧数据,并存储于缓存区。
桌面智能激光设备12将通过缓存区中存储的给定数据来实现手绘作品中曲线轨迹在所运行激光雕刻或切割中的每一轨迹点运行,即在每一轨迹点下运行用以进行激光切割或雕刻的执行机制,桌面智能激光设备将控制其运动,并最终切割和/或雕刻出手绘的图形。
应当理解,图1中的外部设备11的数目仅仅是示意性的。根据实现需要,可以具有任意数目的外部设备11。
本公开实施例的一些技术方案可以基于如图1所示的体系架构或者其变形架构来具体实施。
本公开实施例提供了一种桌面智能激光设备对外部实现数据交互的方法,该方法包括外部数据接收部分和数据发送部分,其中,数据发送部分用以将发送缓存区的数据向所对应通讯端口直接传输。
参阅图2,图2示出了根据本公开一个实施例的桌面智能激光设备的数据交互中外部数据接收步骤的流程图;并结合参阅图3,图3示出了根据本公开一个实施例的桌面智能激光设备的数据交互中数据发送步骤的流程图。
桌面智能激光设备中的数据交互方法中,外部数据接收步骤包括:
步骤S210,桌面智能激光设备对任意一通讯端口的接收触发中断,在接收中断中执行通讯端口的外部数据接收。
步骤S220,对接收的外部数据通过对应于通讯端口的分级缓存来存放和处理外部数据,外部数据配置为桌面智能激光设备中雕刻和/或切割的执行。
桌面智能激光设备中的数据交互方法中,发送缓存区向所对应通讯端口之间直接传输数据的数据发送步骤包括:
步骤S310,桌面智能激光设备适配各通讯端口发送的数据被存放于相应发送缓存区。
步骤S320,通过发送缓存区和所对应通讯端口之间构建的通道直接向外部设备发送数据。
下面对这些步骤进行详细描述。
在步骤S210中,桌面智能激光设备为实现与外部的交互,配置了众多通讯端口,例如,USB(Universal Serial Bus,通用串行总线)端口、串行通讯端口、调试串行通讯端口、RGB板卡串行通讯端口等。桌面智能激光设备通过通讯端口实现自身与外部的交互。可以理解的,各通讯端口作为桌面智能激光设备上配置的物理接口,将形成桌面智能激光设备的各个外部通道。
任意一通讯端口,都将进行着外部数据的接收。具体的,桌面智能激光设备的任意一通讯端口都被触发进行外部数据的接收,此时,桌面智能设备对于所即将发生的外部数据接收,对通讯端口执行接收中断,以通过此来接收外部数据,从而保证数据传输的实时性,桌面智能激光设备能够实时接收到外部数据,通讯效率和性能得到提升。
应当说明的,桌面智能激光设备所执行的接收中断,是指中断运行当前程序,优先处理通讯端口当前所触发的外部数据接收。通过桌面智能激光设备对外部数据接收配置的接收中断操作,将极大增强数据接收的实时性,而不会受到桌面智能激光设备当前运行状况的影响,从而数据接收的可靠性得到相应增强。
参阅图4,图4示出了根据本公开一个实施例的桌面智能激光设备对任意一通讯端口的接收触发中断,在接收中断中执行通讯端口的外部数据接收步骤的流程图。本公开 实施例中,在桌面智能激光设备对任意一通讯端口的接收触发中断,在接收中断中执行通讯端口的外部数据接收的步骤S210,可以包括以下步骤。
步骤S211,桌面智能激光设备对任意一通讯端口触发进行的外部数据接收,中断程序执行过程。
步骤S212,在程序执行过程的中断中,取出通讯端口接收的外部数据。
下面对这二个步骤进行详细描述。
在步骤S211中,正如前述所指出的,桌面智能激光设备任意一通讯端口都进行着外部数据的接收,所接收的外部数据可以包括用于调试激光使用过程的调试数据、用于控制控制执行机构运动和激光使用的数据等,在此不进行限定。
桌面智能激光设备的通讯端口触发进行外部数据的接收时,其CPU(central processing unit,中央处理器)将暂时停止当前程序的运行,优先执行外部数据的接收过程。
具体的,暂时停止当前程序的运行,执行步骤212,在程序执行过程的中断中,CPU从通讯端口取出外部数据。
以此来完成桌面智能激光设备中通讯端口的外部数据接收,对于中断程序执行过程的CPU而言,通讯端口的外部数据接收具备优先性,待处理完成外部数据的接收之后,CPU才返回程序执行过程。
在另一个示例性实施例中,步骤S212之后,桌面智能激光设备中的数据交互方法还包括:
待取出的外部数据被存储之后,桌面智能激光设备返回继续执行被中断的程序执行过程。
桌面智能激光设备的CPU从通讯端口取出外部数据之后,执行外部数据的存放,一旦完成外部数据的存放CPU即可返回继续执行被中断的程序执行过程。
在步骤S220中,桌面智能激光设备的CPU取出通讯端口接收的外部数据,通过为通讯端口配置的分级缓存来存放和处理外部数据,进而达成有效数据缓存,才能转换有效数据为桌面智能激光设备能够使用的控制指令,从而最终通过外部通道传递的外部数据来达成外部设备对桌面智能激光设备的控制。
首先应当说明的,桌面智能激光设备为通讯端口配置的分级缓存,是为所接收的外部数据配置了分级缓存策略,将所接收的外部数据,与完成校验所得的有效数据通过两级缓存的进行分隔开来,一方面保证了外部数据接收的实时性,使得CPU不需要占用过多的时间来优先外部数据接收,另一方面也由于外部数据与有效数据各自独立分隔开来,保证了数据的可靠性。
具体而言,分级缓存的进行,包括了桌面智能激光设备的CPU对通讯端口取出的外部数据予以存放的执行过程,以及对所存放的外部数据予以处理,即完整性和准确性校验的执行过程。由此对于桌面智能激光设备的CPU,能够在完成外部数据的存放之 后立即返回继续其中断的程序执行过程,降低通讯过程对CPU的占用。
与此相匹配的,为实现分级缓存,桌面智能激光设备为各通讯端口相应配置了一级缓存区,以及区别于一级缓存区的二级缓存区。一级缓存区唯一对应的通讯端口,CPU从通讯端口取出并存入一级缓存区的外部数据,实际上是临时数据,需要经过完整性和准确性校验之后方能够用于桌面智能激光设备的控制。
一级缓存区作为临时缓存区,为桌面智能激光设备的外部数据处理降低了即时性的要求,进而对于桌面智能激光设备的CPU运行而言,能够同时保证当前所执行的程序运行以及通讯过程。
分级缓存的进行中,相对于一级缓存区,还配置了二级缓存区,以用于存储一级缓存区中的有效数据。对各通讯端口存放于所对应一级缓存区的外部数据,按照数据接收顺序分别从一级缓存区取出数据,校验数据得到有效数据,并对应于通讯端口进行其在二级缓存区的存储。示例性,该二级缓存区可以为环形缓存区。
应当详细说明的是,所指的对应于通讯端口进行有效数据在二级缓存区的存储,可通过为来自不同通讯端品的有效数据定义不同的数组下标,以此来使得二级缓存区能够对应于各通讯端口,进而便于取用,提高后续的处理效率。
对于二级缓存区,将设置一读指针和一写指针。其中,读指针用于指向二级环形缓存区中可读的数据,写指针用于指向二级环形缓存区中可写的数据,通过移动读指针和写指针来实现二级环形缓存区中数据的读取和写入。
参阅图5,图5示出了根据本公开一个实施例的对接收的外部数据,通过对应于通讯端口的分级缓存来存放和处理外部数据步骤的流程图。本公开实施例提供了通过分级缓存来存放和处理外部数据的步骤S220,可以包括以下步骤。
步骤S221,将接收的外部数据存放于通讯端口对应的一级缓存区。
步骤S222,对各通讯端口存放于所对应一级缓存区的外部数据,按照数据接收顺序分别从一级缓存区获取外部数据。
步骤S223,校验外部数据获得有效数据,并存放于通讯端口对应的二级环形缓存区。
下面对这些步骤进行详细描述。
在步骤S221中,如前所述的,对于桌面智能激光设备的CPU从通讯端口取出的外部数据,将其存放到通讯端口对应的一级缓存区,至此,CPU方可返回继续其被中断的程序执行过程。
任意一通讯端口都有唯一对应的一级缓存区,外部数据对于桌面智能激光设备而言,是接收的临时数据,其当然包括了有效数据,但并不限于此,还包括了出错需要重传的数据;并且接收的外部数据也是马上会被快速调用的数据,因此接收后存储于一级缓存区,能够减少系统开销,提高效率。
在步骤S222中,对于存放于一级缓存区的外部数据,按照数据接收顺序分别取出, 以进行所接收外部数据的处理。
在步骤S223中,对应于数据接收顺序,对一级缓存区取出的外部数据进行校验,该校验包括数据的完整性以及准确性校验,校验通过的外部数据即为有效数据,如果校验未通过,则需要根据外部数据所归属功能模块的处理机制,处理未校验通过的外部数据。
根据预配置的不同处理机制,对于未校验通过的外部数据,或重传,或丢弃,或执行其它的处理,在此不进行限定。
一级缓存区的外部数据,示例性的,是以帧为单位进行顺序存储的,在数据结构上,一帧数据携带了帧头、数据、数据长度、数据校验值以及帧尾,完整性校验便可根据帧头和帧尾来确认数据的完整性,进而通过帧头和帧尾来截取得到完整的数据。
对于二级缓存区,即如前所述的,其可为环形缓存区,换而言之,二级环形缓存区即为前述所指的二级缓存区。二级环形缓存区将存入通过校验的外部数据。具体而言,通过校验的外部数据,在二级环形缓存区内写指针的作用下写入,并通过读指针读取。
参阅图6,图6示出了根据本公开一个实施例的桌面智能激光设备中的数据交互方法的流程图。有效数据包括指令数据,本开实施例在对接收的外部数据,通过对应于通讯端口的分级缓存来存放和处理外部数据的步骤S220之后,桌面智能激光设备中的数据交互方法还包括:
步骤S410,从各通讯端口对应的二级环形缓存区顺序提取指令数据。
步骤S420,解析指令数据获得桌面智能激光设备的控制指令。
步骤S430,根据对应的指令类型处理控制指令,控制指令的处理包括控制指令的立即执行和加入执行队列。
下面分别对这些步骤进行详细描述。
在步骤S410中,如前所述的,各通讯端口与二级环形缓存区存在着相互之间的对应关系,基于此,对于二级环形缓存区所存放的有效数据,将按顺序进行处理。
具体的,有效数据是供桌面智能激光设备使用的完整数据,其包括指令数据,以通过指令数据来实现外部设备对桌面智能激光设备的控制。
应当理解的,指令数据是用于控制桌面智能激光设备的数据,例如,控制桌面智能激光设备中执行机构的运动,以及激光使用。
在步骤S420中,对于从二级环形缓存区按顺序提取得到的完整的指令数据,进行解析并通过步骤S430的执行适配其指令类型转换为控制指令,桌面智能激光设备能够通过控制指令实现相应控制。
具体的,为实现对桌面智能激光设备的指令控制,外部设备通过桌面智能激光设备的通讯过程传送的指令数据,为指令参数,即实现桌面智能激光设备指令控制所需要的指令参数。
在步骤S430中,不同的指令类型有着不同的处理方式,例如,有的控制指令是需 要立即执行的,有的控制指令则需要按序执行,因此,对于解析转换所获得的控制指令,根据其对应的指令类型来处理控制指令,或将其立即执行,或加入执行队列,按照先进先出的顺序分别执行。
至此,通过如上所述步骤执行,对桌面智能激光设备接收的外部数据进行了处理,以供桌面智能激光设备运行中取用。
示例性的,正如前述指出的,接收的外部数据包括了用于桌面智能激光设备中运动控制的数据,该数据中携带于用于实现执行机构运动控制的指令参数,与之相对应的,对该数据进行解析和转换而获得的控制指令即为面向于桌面智能激光设备中执行机构实现运动控制的轨迹点运动指令。
通过上述步骤S410至步骤S430,对二级环形缓存区中用于运动控制的数据顺序生成桌面智能激光设备执行激光雕刻或切割的轨迹点队列,此时,将对轨迹点队列执行曲线预扫描,定位所映射曲线的首尾轨迹点;根据所映射曲线段的首尾进行所覆盖轨迹点的运动预计算,获得运行轨迹点的指令参数,并更新至轨迹点队列中对应的轨迹点运动指令。
完成轨迹点队列中所有曲线段的曲线预扫描以及曲线段所覆盖轨迹点的运动预计算之后,最终遍历轨迹点队列,根据所遍历到的轨迹点运动指令执行桌面智能激光设备在轨迹点的运行,直至遍历结束。
对于二级环形缓存区中用于运动控制的数据,是以帧为单位存在的,因此,按照接收顺序,桌面智能激光设备将取出一帧帧的数据顺序生成轨迹点队列。轨迹点队列中的队列元素都包含了轨迹点运动指令,轨迹点运动指令携带了若干指令参数,例如,所对应曲线轨迹上点的位置,点类型等。应当理解的,队列元素所包含的轨迹点运动指令,一方面将用于描述所进行激光切割或雕刻的轨迹点,另一方面则用于指示该轨迹点下执行机构的运动状态以及其所进行的激光使用。
轨迹点队列的生成,是不断从二级环形缓存区取出用于运动控制的数据转换为轨迹点运动指令,进而加入轨迹点队列的过程。轨迹点运动指令构成了队列元素中的数据存在。
二级环形缓存区不断进行着数据的存入,也不断进行着数据的解析和转换,从而尽可能将数据转换为轨迹点运动指令,与之相对应的,将使得桌面智能激光设备所执行的激光雕刻或切割能够在更多的轨迹点之下运行,获得更为细致准确的加工实现。
在另一个示例性实施例中,对二级环形缓存区中用于运动控制的数据顺序生成桌面智能激光设备执行激光雕刻或切割的轨迹点队列之后,还将执行以下过程:
判断二级环形缓存区是否为空,若缓存区为空,则允许启动运行轨迹点队列的遍历,若二级环形缓存区不为空,则继续对二级环形缓存区中用于运动控制的数据执行轨迹点队列生成,即继续执行轨迹点队列的生成,以待二级环形缓存区被清空。
基于将尽可能多的数据转换为轨迹点运动指令的原则,将不断对存入二级环形缓存 区的用于运动控制的数据,取出进行轨迹点运动指令的转换,以及轨迹点队列的加入,直至二级环形缓存区被清空,或者轨迹点队列已满,才会启动运行轨迹点队列的遍历,即执行轨迹点队列的生成,以此来保障桌面智能激光设备能够一旦启动雕刻或切割,能够有足够多的轨迹点可供运行,也避免所执行加工过程被频繁启动和停止。
在另一个示例性实施例,对二级环形缓存区中用于运动控制的数据顺序生成桌面智能激光设备执行激光雕刻或切割的轨迹点队列之后,还将执行以下过程:
判断轨迹点队列是否已满,若轨迹点队列已满,则允许启动运行轨迹点队列的遍历,若轨迹点队列未满,则继续对缓存区中用于运动控制的数据执行轨迹点队列生成,直至轨迹点队列都已满,或者缓存区已空。
示例性的,将“轨迹点队列已满”和“缓存区为空”作为是否能够开始遍历轨迹点队列的条件,满足任意一条件,都将允许执行轨迹点队列的遍历,进而保障能够有足够多的轨迹点运行,增强桌面智能激光设备的加工可靠性。
具体的,对于所执行的轨迹点队列生成,是基于轨迹点队列先进先出的顺序,通过轨迹点队列中定义的指针来实现轨迹点运动指令向轨迹点队列的写入。通过队列中定义的指针来实现轨迹点运动指令向轨迹点队列的写入。此时轨迹点队列中的每一队列元素,其所携带的数据即为写入的轨迹点运动指令。
应当理解的,轨迹点队列按每一轨迹点描述和控制了桌面智能激光设备所执行的加工内容。与之相对应的,轨迹点队列中的队列元素是对应于轨迹点的,队列元素所携带的轨迹点运动指令将描述和控制了所对应轨迹点下电机、刀头等执行设备如何运动,进而执行加工内容。
在二级环形缓存区以及轨迹点队列的作用下,一方面保证了数据的有序性,进而保障桌面智能激光设备运行的可靠性;另一方面,以二级缓存缓存区和轨迹点队列为工具,桌面智能激光设备所执行的激光雕刻和切割将得以减化,从而极大的降低复杂度和门槛,为打破传统工业激光切割机仅应于工业降低了难度,成为普通用户能够低门槛使用的桌面设备。
对于所生成的轨迹点队列,即便条件允许,也未即时在轨迹点队列的控制下执行桌面智能激光设备的加工过程,而跳转执行轨迹点队列的曲线预扫描。
应当详细说明的是,轨迹点队列是与加工曲线、加工工作状态(激光使用)相映射一致的,其中,所指的加工曲线,即为电机驱动刀头和/或激光头等工具执行激光切割和/或雕刻的运动曲线;加工工作状态即为加工过程所使用的激光功率、激光模式等。
加工曲线,包含了若干曲线段,不同的曲线段其所涉及的加工过程往往存在着非常大的差异,同一曲线段中对不同轨迹点执行的加工过程相对平稳,因此,对轨迹点队列进行曲线预扫描,确定每一曲线段的首尾,进而避免后续的实际加工过程再进行计算,降低后续加工过程的计算量,提高加工效率。
桌面智能激光设备所即将启动遍历的轨迹点队列,其所对应的若干轨迹点形成了加 工曲线,以此相对应的,加工曲线之上不同曲线段,也是由轨迹点所构成的,一曲线段的范围则是由其首轨迹点和尾轨迹点所确定的。
因此,通过曲线预扫描的执行,对所映射曲线段逐一定位首轨迹点和尾轨迹点,进而便于在明确确定每一曲线段的范围之下执行所包含每一轨迹点的运动预计算。
示例性的,轨迹点队列中定义一级指针和二级指针,一级指针指向轨迹点队列的队首和队尾,二级指针用于指向轨迹点队列所映射曲线段上首轨迹点和尾轨迹点所对应的队列元素。
与此相对应的,对于所进行的轨迹点队列预扫描,其具体实现过程包括:发起扫描轨迹点队列,定位轨迹点队列的队首或上一曲线段尾轨迹点对应的下一队列元素,将曲线段的二级头指针指向队列元素;通过用于指向曲线段尾轨迹点的二级指针继续扫描轨迹点队列,判断二级尾指针扫描到的队列元素是否对应于曲线段的尾轨迹点,如果是,则将二级尾指针指向该队列元素,如果否则继续进行轨迹点队列的扫描,直至扫描到对应于尾轨迹点的队列元素。
具体的,对轨迹点队列发起的曲线预扫描,在所执行的曲线预扫描过程中,能够通过轨迹点队列的队首,或者曲线预扫描得到的上一曲线段尾轨迹点对应的下一队列元素,来定位得到当前曲线段的首轨迹点。
具体的,在轨迹点队列中分别定义了两级指针,一级指针用于指向整个轨迹点队列中所有轨迹点对应的头部和尾部,二级指针用于指向当前所扫描到的曲线段的头部和尾部。在发起的轨迹点队列扫描中,对于当前所扫描到的曲线段,若该曲线段为轨迹点队列映射的首个曲线段,则能够定位一级头指针向的队首为该曲线段的首轨迹点。
若该曲线段并非轨迹点队列映射的首个曲线段,则根据上一曲线段的尾轨迹点定位所指向的下一队列元素为该曲线段的首轨迹点。
二级头指针指向定位的首轨迹点。继续进行轨迹点队列的曲线预扫描,以为该曲线段扫描得到尾轨迹点。
二级尾指针将逐步向前,移向下一队列元素,判断当前指向的队列元素是否对应于曲线段的尾轨迹点,在当前所指向队列元素未对应于尾轨迹点的情况下,二级尾指针继续向前移动,将指向下一队列元素进行判断。
以此类推,直至判断到所指向的队列元素对应于曲线段的尾轨迹点,即可将二级尾指针指向该队列元素,使得二级尾指针通过指向该队列元素为曲线段标示截止点。
由此,便完成了一曲线段所对应的曲线预扫描,从而将通过该曲线段的运动预计算,为后续即将执行的轨迹点队列更新指令参数,进而最大程度地降低遍历过程中的计算量。
在此应当补充说明的是,对于是否对应于曲线段尾轨迹点的判断,可以根据轨迹点运动指令中携带的指令参数,如点类型来确定,示例性的,点类型将描述了所对应轨迹点上运动所存在的延时、状态改变等属性。
预计算所得到的指令参数,将更加准确描述和控制桌面智能激光设备中执行机构的 运动。因此,将指令参数更新于轨迹点队列中相应的队列元素中。携带了更为丰富且准确的指令参数的轨迹点运动指令将使得桌面智能激光设备所进行的加工更为可靠和精准。
示意性的,预计算得到的指令参数可包括所对应轨迹点在三维空间中的位置向量等信息。例如,在确定得到当前所扫描曲线段的首尾轨迹点之后,就能够获知该曲线段的长度,进而根据长度就能够对轨迹点的运行实施位置确定和速度规划等预计算,为轨迹点运动指令扩展所携带的指令参数。
示例性的,对于面向于曲线段上轨迹点执行的运动预计算,其过程包括:根据首轨迹点和尾轨迹点计算所映射曲线段的长度,根据曲线段的长度和曲线段在轨迹点队列所对应轨迹点运行指令携带的指令参数,进行其它指令参数的扩展计算,更新扩展计算所获得指令参数至轨迹点队列中对应的轨迹点运动指令。
具体的,由所定位得到的首轨迹点和尾轨迹点,即可获知本曲线段的长度。通过所获知的曲线段长度将有利于为曲线段范围内的轨迹点实现速度规划等运动预计算过程,进而便于提高该曲线段上运动和加工的准确性。
在对当前曲线预扫描所得曲线段进行的运动预计算中,以该曲线段的长度,以及该曲线段所已知的指令参数为依据,通过所执行的预计算来为该曲线段上的轨迹点扩展其他指令参数,以此来增强该曲线段运行,即其上每一轨迹点运行的准确性。
举例说明的,由曲线段长度及其在加工内容上对应的位置,即点的位置即可预计算得到对应轨迹点在三维空间中的位置向量;此外,根据曲线段长度也能够通过执行的预计算过程完成速度规划,从而通过算法控制来速度的变化。具体的,对于当前所执行运动预计算的曲线段,确定其所存在的加速阶段以及减速阶段,从而便于在轨迹点的遍历,能够根据各轨迹点所对应指令参数指示的速度、加速度或减速度,来处理其速度,以适配所规划的加速阶段或者减速阶段。
对于所执行的速度规划,可以理解的,曲线段上运动的执行,在速度上往往会规划加速阶段和/或减速阶段,对于每一轨迹点上的运动而言,需要根据其在曲线段当前已经走过的距离判断是否达到加速时点,进而设定其进入加速阶段所相关的加速度。
与之相类似的,对于规划的减速阶段,根据当前曲线段所剩余的距离判断是否到达减速时点,进而设定其进入减速阶段的减速度。
对所扩展计算得到的指令参数,根据所对应的轨迹点更新到轨迹点队列的队列元素中,进而用于后续所执行的轨迹点队列遍历。
由此,即可在轨迹点队列遍历之间进行所需要参数的预计算,使得后续执行的遍历不需要再进行参数的计算,保证了运行的效率。
桌面智能激光设备的正常状态之下,在完成了所有曲线段的预计算之后,即发起轨迹点队列的遍历,以此来逐一运行曲线段,以及曲线段之上的轨迹点,进而最终实现桌面智能激光设备在每一轨迹点上的雕刻或切割。
示例性的,正如前述所指出的,轨迹点队列的遍历,在确认缓存区为空,或者轨迹 点队列已满的情况下方允许执行。
应当说明的是,对于每一曲线段的运行,指的是发送相应轨迹运行指令的执行过程,并且每一曲线段必不可少的包含若干轨迹点,因此,曲线段的运行即为若干轨迹点分别运行的过程。
示例性的,桌面智能激光设备的运动状态包括正常状态和暂停状态,遍历轨迹点队列,根据所遍历到的轨迹点运动指令执行桌面智能激光设备在轨迹点的运行,直至遍历结束的具体执行过程包括:
桌面智能激光设备于正常状态发起执行轨迹点队列的遍历,获取遍历到的轨迹点运动指令,然后向桌面智能激光设备的执行机构发送轨迹点运动指令,轨迹点运动指令用于桌面智能激光设备的执行机构在轨迹点上运行。
最后,待轨迹点运动指令发送完成,继续遍历轨迹点队列下一队列元素中的轨迹点运动指令,直至轨迹点队列全部遍历结束。
具体的,应当进行补充说明的是,桌面智能激光设备的运动状态,指的是用以实现激光雕刻或切割的执行机构的状态。正常状态下,执行机构由一轨迹点向下一轨迹点运动,且执行激将雕刻或切割,出现中断等异常时,将进入暂停状态。
正常状态下桌面智能激光设备发起执行轨迹点队列的遍历,针对于轨迹点队列中的队列元素,逐一从中提取轨迹点运动指令,以便发起所对应轨迹点上的运动和激光使用。
当前遍历所得到的轨迹点运动指令,将向相应的执行机构发送,以此来完成当前轨迹点的遍历和运行,进而访问下一队列元素,获取下一队列元素携带的轨迹点运动指令,完成下一队列元素的遍历和运行,直至整个轨迹点队列全部遍历结束。
由此,通过轨迹点队列所进行的遍历,触发进行了桌面智能激光设备中相应执行机构在加工材料之上每一轨迹点的运行以及在此轨迹点之上对加工材料执行的雕刻或切割。
此外,在所执行的轨迹点队列遍历中,还配置了暂停指令的处理机制。示例性的,在接收到暂停指令后,并不立即停止执行,而是继续沿着设定的曲线段运动,并按照轨迹点运动指令中携带的减速度开始减速运行,直至速度降到0完成减速过程,进入暂停状态,从而能够避免立即停机给设备造成的冲击,使得加工轨迹能够得到延续,以尽可以保持加工作中品的完整性,降低暂停所造成的影响。
通过如上所述的示例性实施例,能够明确,通过如上所述的实现过程,克服了传统工业激光切割机体积庞大、安装复杂、使用门槛高以及安全性不足的局限,为用户提供稳定可靠准确的激光使用体验,进而大大降低了激光使用难度,使得任意用户都能够使用激光,用户级的桌面智能激光设备将得以广泛应用于家庭、学校等诸多场景。
通过如上所述的示例性实施例,实现了用户级的桌面智能激光设备在每一轨迹点的运动控制和激光使用。可以理解的,每一轨迹点所使用的轨迹点运动指令都为执行机构的各轴电机设定了速度参数,以及加速度范围等,从而能够在预计算所执行的速度规划 作用下,根据所对应轨迹点在三维空间的位置向量、方向以及相对拐点的距离控制速度变化至合适数值,以此来在所具体执行的过程中保证速度变化的平稳和整体运行的效率。
参阅图7,图7示出了根据本公开一个实施例的通过发送缓存区和所对应通讯端口之间构建的通道直接向外部设备发送数据步骤的流程图。本公开实施例通过发送缓存区和所对应通讯端口之间构建的通道直接向外部设备发送数据的步骤S320,可以包括以下步骤。
步骤S321,判断发送缓存区是否为空,若发送缓存区不为空,则对发送缓存区的数据执行高速数据传输操作。
步骤S322,在高速数据传输操作的执行下,数据通过发送缓存区向对应通讯端口构建的通道,直接向外部设备发送。
示例性的,在本公开的另一个实施例中,通过发送缓存区和所对应通讯端口之间构建的通道直接向外部设备发送数据的步骤S320,还可以包括:
待数据发送结束,中断高速数据传输操作并关闭。
下面对这些步骤进行详细阐述。
在步骤S321中,桌面智能激光设备为自身进行的数据发送划分和配置了发送缓存区,用于临时存储桌面智能激光设备需要发送的数据。
可为各通讯端口划分发送缓存区,该发送缓存区优选为环形缓存区,即发送环形缓存区,从而在步骤S321的执行中,桌面智能激光设备首先将各端口需要发送的数据放入到相应的发送环形缓存区中。
再判断各通讯端口所对应的发送环形缓存区是否为空,如果不为空,则开始传输熂,即执行步骤S322。
在步骤S322的执行中,所进行的高速数据传输操作,是开启DMA(Direct Memory Access,直接存储器访问)来实现的。具体而言,在所执行的高速数据传输操作下,允许外部设备和存储器,即发送缓存区之间直接读写数据,而不通过CPU来为外部设备从发送缓存区中读取数据,从而也不要CPU干预。
在高速数据传输操作的执行下,使用DMA自动完成数据的发送,由于不需要CPU参与,发送缓存区和通讯端口之间,即存储器与外部设备之间开辟一条直接传输数据的通道,进而传送数据。
最后,在发送环形缓存区为空的情况下,数据传输完成,响应DMA中断,关闭DMA,不再执行高速数据传输操作。
下面以用户对桌面智能激光设备的具体使用过程为例,来说明本公开所涉及的具体实现。
适配桌面智能激光设备,配置了电脑端,该电脑端用于为桌面智能激光设备执行的雕刻和切割提供加工图案等内容,从而使得桌面激光设备能够按照加工图案在指定材料上使用激光执行雕刻或切割。
具体的,电脑端作为上位机,获取用户手绘的加工图案,或者用户选择的加工图案,根据加工图案上存在的曲线轨迹生成桌面智能激光设备的可执行文件,可执行文件可以为G代码文件,可执行文件用于控制桌面智能激光设备运动以及对激光的使用,从而将加工图案雕刻或切割于指定材料上。
电脑端对拆分可执行文件为若干帧数据,以帧为单位向桌面智能激光设备发送数据。
桌面智能激光设备的通讯端口触发进行数据的接收。此时CPU中断当前的程序运动,优先处理数据接收,并存放于通讯端口对应的一级缓存区。
另一方面,由于一帧数据为帧头+数据+数据长度+数据校验值+帧尾,因此对于一级缓存区,在接收到帧头时清零一级缓存区,再开始接收当前所传送的一帧数据。当然,若一级缓存区已满,无法接收到帧头,也将清零一级缓存区。清零的一级缓存区开始接收数据,直至收到帧尾。
不同通讯端口都配置了自身所对应的一级缓存区,用于该通讯端口所接收数据的临时存放。顺序进行一级缓存区中数据的校验,获得有效数据存入二级环形缓存区。
对于校验未通过的数据,根据设定的处理机制,可重传可丢弃,在此不进行限定。
至此,存在于二级环形缓存区中的数据,可供取用以运行加工图案所对应曲线段以及轨迹点的运动和激光使用。
从二级环形缓存区取出数据,进行解析并转换为轨迹点运动指令,将顺序转换得到的轨迹点运动指令依次加入轨迹点队列,待二级环形缓存区为空,或者轨迹点队列已满,即可允许执行轨迹点队列的遍历。
对于生成的轨迹点队列,其上定义一级指针和二级指令,以便于为轨迹点队列的遍历先行执行预计算,降低实际遍历过程中的计算量。
具体而言,一级指针和二级指针都包括了头指针和尾指针,一级指针用于整个轨迹点队列中队列元素的控制;二级指针则针对于轨迹点队列映射的一曲线段执行所对应队列元素的指向控制。
在一级指针和二级指针的作用下,对轨迹点队列执行曲线预扫描,通过曲线预扫描的执行为当前所指向的曲线段确定首轨迹点和尾轨迹点,进而获得该曲线段的长度,从而对该曲线段执行运动预计算为轨迹点运动指令扩展指令参数,并更新到轨迹点队列中。
以此类推,便完成轨迹点队列中所有曲线段的扫描以及预计算。
若桌面智能激光设备当前处于正常状态,则发起遍历轨迹点队列,从遍历到的队列元素中取出轨迹点运动指令,并发送,以使得桌面智能激光设备的执行机构能够根据轨迹点运动指令驱动自身在相应轨迹点上的运行和激光使用,以此类推即可完成每一轨迹点的激光雕刻或切割。
根据本公开的一个实施例,提供了一种桌面智能激光设备中的数据交互装置,该交互装置包括外部数据接收器和发送缓存区所对应通讯端之间直接传输数据的数据发送器;
所述外部数据接收器配置为执行以下步骤:
所述桌面智能激光设备对任意一通讯端口的接收触发中断,在接收中断中执行所述通讯端口的外部数据接收;
对接收的所述外部数据,通过对应于所述通讯端口的分级缓存来存放和处理所述外部数据,所述外部数据配置为所述桌面智能激光设备中雕刻和/或切割的执行;
所述数据发送器配置为执行以下步骤:
所述桌面智能激光设备适配各通讯端口发送的数据被存放于相应发送缓存区;
通过所述发送缓存区和所对应通讯端口之间构建的通道直接向外部设备发送所述数据。
在一个实施例中,对所述桌面智能激光设备对任意一通讯端口的接收触发中断,在接收中断中执行所述通讯端口的外部数据接收,包括:
所述桌面智能激光设备对任意一通讯端口触发进行的外部数据接收,中断程序执行过程;
在所述程序执行过程的中断中,取出所述通讯端口接收的外部数据。
在一个实施例中,所述桌面智能激光设备对任意一通讯端口的接收触发中断,在接收中断中执行所述通讯端口的外部数据接收之后,还包括:
待取出的所述外部数据被存储之后,所述桌面智能激光设备返回继续执行被中断的所述程序执行过程。
在一个实施例中,所述对接收的所述外部数据,通过对应于所述通讯端口的分级缓存来存放和处理所述外部数据,包括:
将接收的所述外部数据存放于所述通讯端口对应的一级缓存区;
对各通讯端口存放于所对应一级缓存区的外部数据,按照数据接收顺序分别从所述一级缓存区获取外部数据;
校验所述外部数据获得有效数据,并存放于所述通讯端口对应的二级环形缓存区。
在一个实施例中,所述对接收的所述外部数据,通过对应于所述通讯端口的分级缓存来存放和处理所述外部数据,还包括:
根据外部数据所归属功能模块的处理机制,处理未校验通过的所述外部数据。
在一个实施例中,所述有效数据包括指令数据,所述对接收的所述外部数据,通过对应于所述通讯端口的分级缓存来存放和处理所述外部数据,还包括:
从各通讯端口对应的二级环形缓存区顺序提取指令数据;
解析所述指令数据获得所述桌面智能激光设备的控制指令;
根据对应的指令类型处理所述控制指令,所述控制指令的处理包括所述控制指令的立即执行和加入执行队列。
在一个实施例中,所述通过所述发送缓存区和所对应通讯端口之间构建的通道直接向外部设备发送所述数据,包括:
判断所述发送缓存区是否为空,若所述发送缓存区不为空,则对所述发送缓存区的 数据执行高速数据传输操作;
在所述高速数据传输操作的执行下,所述数据通过所述发送缓存区向对应通讯端口构建的通道,直接向外部设备发送。
在一个实施例中,所述通过所述发送缓存区和所对应通讯端口之间构建的通道直接向外部设备发送所述数据,包括:
待所述数据发送结束,中断所述高速数据传输操作并关闭。
根据本公开实施例的桌面智能激光设备中的运动控制方法,可以由图8的桌面智能激光设备来实现。下面参阅图8来描述根据本公开实施例的桌面智能激光设备。图8显示的桌面智能激光设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图8所示,桌面智能激光设备可以类似于通用计算设备,桌面智能激光设备的组件可以包括但不限于:至少一个处理单元810、上述至少一个存储单元820、连接不同系统组件(包括存储单元820和处理单元810)的总线830、承担激光加工任务的执行机构(图未示)。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元810执行,使得所述处理单元810执行本说明书上述示例性方法的描述部分中描述的根据本公开各种示例性实施方式的步骤。例如,所述处理单元810可以执行如图2中所示的各个步骤。
存储单元820可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)8201和/或高速缓存存储单元8202,还可以包括只读存储单元(ROM)8203。
存储单元820还可以包括具有一组(至少一个)程序模块8205的程序/实用工具8204,这样的程序模块8205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线830可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
SDN控制器也可以与一个或多个外部设备700(例如键盘、指向设备、蓝牙设备等)通信。这种通信可以通过输入/输出(I/O)接口850进行。并且,SDN控制器还可以通过网络适配器860与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器860通过总线830与其它模块通信。应当明白,尽管图中未示出,可以结合SDN控制器使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方 式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施方式的方法。
在本公开的示例性实施例中,还提供了一种计算机程序介质,其上存储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使计算机执行上述方法实施例部分描述的方法。
根据本公开的一个实施例,还提供了一种用于实现上述方法实施例中的方法的程序产品,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能也可以划分为由多个模块或者单元来具体化。
此外,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本公开实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由所附的权利要求指出。

Claims (10)

  1. 一种桌面智能激光设备中的数据交互方法,所述方法包括外部数据接收步骤和发送缓存区向所对应通讯端口之间直接传输数据的数据发送步骤;
    所述外部数据接收步骤包括:
    所述桌面智能激光设备对任意一通讯端口的接收触发中断,在接收中断中执行所述通讯端口的外部数据接收;
    对接收的所述外部数据,通过对应于所述通讯端口的分级缓存来存放和处理所述外部数据,所述外部数据配置为所述桌面智能激光设备中雕刻和/或切割的执行;
    所述发送缓存区向所对应通讯端口之间直接传输数据的数据发送步骤包括:
    所述桌面智能激光设备适配各通讯端口发送的数据被存放于相应发送缓存区;
    通过所述发送缓存区和所对应通讯端口之间构建的通道直接向外部设备发送所述数据。
  2. 根据权利要求1所述的方法,其中,所述桌面智能激光设备对任意一通讯端口的接收触发中断,在接收中断中执行所述通讯端口的外部数据接收,包括:
    所述桌面智能激光设备对任意一通讯端口触发进行的外部数据接收,中断程序执行过程;
    在所述程序执行过程的中断中,取出所述通讯端口接收的外部数据。
  3. 根据权利要求2所述的方法,其中,所述桌面智能激光设备对任意一通讯端口的接收触发中断,在接收中断中执行所述通讯端口的外部数据接收之后,所述方法还包括:
    待取出的所述外部数据被存储之后,所述桌面智能激光设备返回继续执行被中断的所述程序执行过程。
  4. 根据权利要求1所述的方法,其中,所述对接收的所述外部数据,通过对应于所述通讯端口的分级缓存来存放和处理所述外部数据,包括:
    将接收的所述外部数据存放于所述通讯端口对应的一级缓存区;
    对各通讯端口存放于所对应一级缓存区的外部数据,按照数据接收顺序分别从所述一级缓存区获取外部数据;
    校验所述外部数据获得有效数据,并存放于所述通讯端口对应的二级环形缓存区。
  5. 根据权利要求4所述的方法,其中,所述对接收的所述外部数据,通过对应于所述通讯端口的分级缓存来存放和处理所述外部数据,还包括:
    根据外部数据所归属功能模块的处理机制,处理未校验通过的所述外部数据。
  6. 根据权利要求4所述的方法,其中,所述有效数据包括指令数据,所述对接收的所述外部数据,通过对应于所述通讯端口的分级缓存来存放和处理所述外部数据,还包括:
    从各通讯端口对应的二级环形缓存区顺序提取指令数据;
    解析所述指令数据获得所述桌面智能激光设备的控制指令;
    根据对应的指令类型处理所述控制指令,所述控制指令的处理包括所述控制指令的立即执行和加入执行队列。
  7. 根据权利要求1所述的方法,其中,所述通过所述发送缓存区和所对应通讯端口之间构建的通道直接向外部设备发送所述数据,包括:
    判断所述发送缓存区是否为空,若所述发送缓存区不为空,则对所述发送缓存区的数据执行高速数据传输操作;
    在所述高速数据传输操作的执行下,所述数据通过所述发送缓存区向对应通讯端口构建的通道,直接向外部设备发送。
  8. 根据权利要求7所述的方法,其中,所述通过所述发送缓存区和所对应通讯端口之间构建的通道直接向外部设备发送所述数据,包括:
    待所述数据发送结束,中断所述高速数据传输操作并关闭。
  9. 一种桌面智能激光设备中的数据交互装置,所述装置包括外部数据接收器和发送缓存区所对应通讯端口之间直接传输数据的数据发送器;
    所述外部数据接收器配置为执行以下步骤:
    所述桌面智能激光设备对任意一通讯端口的接收触发中断,在接收中断中执行所述通讯端口的外部数据接收;
    对接收的所述外部数据,通过对应于所述通讯端口的分级缓存来存放和处理所述外部数据,所述外部数据配置为所述桌面智能激光设备中雕刻和/或切割的执行;
    所述数据发送器配置为执行以下步骤:
    所述桌面智能激光设备适配各通讯端口发送的数据被存放于相应发送缓存区;
    通过所述发送缓存区和所对应通讯端口之间构建的通道直接向外部设备发送所述数据。
  10. 一种桌面智能激光设备,包括:
    存储器,存储有计算机可读指令;
    处理器,读取存储器存储的计算机可读指令,以执行权利要求1-8中的任意一个所述的方法。
PCT/CN2022/120291 2021-12-30 2022-09-21 桌面智能激光设备中的数据交互方法、装置和设备 WO2023124286A1 (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN202111661020 2021-12-30
CN202111661020.X 2021-12-30
CN202210331893.2 2022-03-31
CN202210331893.2A CN116408553A (zh) 2021-12-30 2022-03-31 桌面智能激光设备中的数据交互方法、装置和设备

Publications (1)

Publication Number Publication Date
WO2023124286A1 true WO2023124286A1 (zh) 2023-07-06

Family

ID=86997406

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/120291 WO2023124286A1 (zh) 2021-12-30 2022-09-21 桌面智能激光设备中的数据交互方法、装置和设备

Country Status (1)

Country Link
WO (1) WO2023124286A1 (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103095703A (zh) * 2013-01-11 2013-05-08 瑞斯康达科技发展股份有限公司 一种实现网络与串口数据交互的方法、设备及系统
CN104785922A (zh) * 2015-03-27 2015-07-22 大族激光科技产业集团股份有限公司 实现双重式控制的激光切割机系统和方法
CN106112271A (zh) * 2016-08-22 2016-11-16 首都师范大学 一种多功能激光雕刻机系统及雕刻方法
CN109064725A (zh) * 2018-07-19 2018-12-21 大族激光科技产业集团股份有限公司 激光切割设备管理方法、装置、系统、介质和计算机设备
US20200122274A1 (en) * 2018-03-14 2020-04-23 Amada Holdings Co., Ltd. Laser processing machine and laser processing method
CN112131153A (zh) * 2020-09-15 2020-12-25 北京自动化控制设备研究所 一种使用arm处理器串口进行实时通讯的方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103095703A (zh) * 2013-01-11 2013-05-08 瑞斯康达科技发展股份有限公司 一种实现网络与串口数据交互的方法、设备及系统
CN104785922A (zh) * 2015-03-27 2015-07-22 大族激光科技产业集团股份有限公司 实现双重式控制的激光切割机系统和方法
CN106112271A (zh) * 2016-08-22 2016-11-16 首都师范大学 一种多功能激光雕刻机系统及雕刻方法
US20200122274A1 (en) * 2018-03-14 2020-04-23 Amada Holdings Co., Ltd. Laser processing machine and laser processing method
CN109064725A (zh) * 2018-07-19 2018-12-21 大族激光科技产业集团股份有限公司 激光切割设备管理方法、装置、系统、介质和计算机设备
CN112131153A (zh) * 2020-09-15 2020-12-25 北京自动化控制设备研究所 一种使用arm处理器串口进行实时通讯的方法

Similar Documents

Publication Publication Date Title
US11480971B2 (en) Systems and methods for generating instructions for navigating intersections with autonomous vehicles
KR102245247B1 (ko) 트리거된 동작을 이용하는 gpu 원격 통신
KR20220013422A (ko) 차량 주행 제어 방법 및 장치
CN109347884B (zh) 一种实时以太网到现场总线的转换方法及装置、存储介质
US11654899B2 (en) Method and apparatus for avoidance control of vehicle, electronic device and storage medium
JPH06266495A (ja) 対話手段によりマン・マシン対話システムに与えられたメッセージのメッセージ解析方法及び装置
US11416683B2 (en) Natural language generating apparatus, vehicle having the same and natural language generating method
CN106945044B (zh) 机器人暂停运动控制方法和系统
JP2001142534A (ja) 無人運搬車システムの制御方法
WO2023124286A1 (zh) 桌面智能激光设备中的数据交互方法、装置和设备
WO2022002885A1 (en) An edge computing based path planning system for agv with intelligent deviation correction algorithm
CN106945045B (zh) 基于ros和orocos的机器人控制的通信方法和系统
WO2023124288A1 (zh) 桌面智能激光设备中的运动控制方法、装置和设备
CN112131170B (zh) 一种基于rs485串口通信的拧紧机可视化方法及系统
US9581991B2 (en) DNC operation system
CN116408553A (zh) 桌面智能激光设备中的数据交互方法、装置和设备
JP4806295B2 (ja) 通信インターフェース装置及び通信方法
JP2016051290A (ja) 数値制御装置、工作機械制御システム、数値制御方法、及び、数値制御プログラム
CN112039850B (zh) 一种智能显示控制终端测试设备的通信协议配置方法
WO2022217621A1 (zh) 语音交互的方法和装置
JPH0743607B2 (ja) 複数ロボツトの協調制御方法
CN113778455A (zh) 一种代码转换方法、装置、电子设备及存储介质
CN114509993B (zh) 一种基于国产cpu的自主可控数控系统构建方法
CN113721618B (zh) 一种平面确定方法、装置、设备和存储介质
WO2024108883A1 (zh) 一种基于设备状态和用户行为的智能语音引导方法

Legal Events

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

Ref document number: 22913551

Country of ref document: EP

Kind code of ref document: A1