Abstract:
Provided is a motor control system of a numerical controller that can instruct a plurality of motors and display data on a display device by means of a single serial bus. An amplifier which controls the motor drives the motor based on a motor command received from the numerical controller via the serial bus. The display device display data on a screen based on display data received from the numerical controller via the serial bus.

Description:
BACKGROUND OF THE INVENTION 
       [0001]    1. Field of the Invention 
         [0002]    The present invention relates to a motor control system which uses a numerical controller that performs both control of a motor and control of a display device. 
         [0003]    2. Description of the Related Art 
         [0004]    When a numerical controller of a machine tool transmits commands to a plurality of motors to control each of the motors, the motors are driven by a plurality of amplifiers depending on the number and the types of motors. In Japanese Patent Application Laid-Open No. 2008-242728, regarding such a numerical controller, a first mode in which the same number of serial bus control circuits as the number of amplifiers are provided and the amplifiers and the serial bus control circuits are connected by serial buses such as optical cables so that each of motors is separately controlled by the corresponding amplifier, and a second mode in which a single serial bus control circuit is provided, the serial bus control circuit and amplifiers are connected in series, and a numerical controller and the amplifiers are connected by serial buses are disclosed. 
         [0005]    In addition, a technique is also known in which a display device which displays various types of information of a numerical controller is provided separately from the body of the numerical controller, and display data to be displayed on the display device is transmitted by a different serial communication channel from serial buses for motor control to display the display data on the display device. Furthermore, a technique is also known in which an external input/output interface such as a keyboard or a USB for operating a numerical controller is provided in a display device, and data from the external input/output interface is subjected to data communication by the same serial communication channel as that for display data. 
         [0006]      FIG. 5  is a schematic view illustrating a connection state of the numerical controller, the motors, and the display device in the related art. 
         [0007]    In a numerical controller  110 , a serial bus control circuit  112  and a display device serial communication channel control circuit  116  are provided. A display device  120  is connected to the display device serial communication channel control circuit  116  by a serial bus  160 . In addition, a first amplifier  131  is connected to the serial bus control circuit  112  by a serial bus  150 . A first motor  141  is connected to the first amplifier  131  so that the first motor  141  is controlled by the first amplifier  131 . The first amplifier  131  and a second amplifier  132  are connected to each other also by the serial bus  150 . A second motor  142  is connected to the second amplifier  132  so that the second motor  142  is controlled by the second amplifier  132 . 
         [0008]    Although the data amount of a motor command transmitted to each of the amplifiers  131  and  132  by the numerical controller  110  is small, in order to realize the highly accurate control at high speed, communication needs to be performed at a high frequency at a constant interval. 
         [0009]      FIG. 6  is a view illustrating the data configuration of the motor command in the related art. 
         [0010]    The data of the motor command initially includes a start code which indicates the start of the data and subsequently includes a command for each of the motors such as a first motor command, a second motor command, . . . , an N-th motor command. Each of the amplifiers which receive the data extracts the command for the motor connected to the corresponding amplifier from the received data, and thereafter transmits the received data to the amplifier in the next stage (subsequent stage). In the same manner, the amplifier in the next stage also extracts the command for the motor connected to the corresponding amplifier from the received data, and thereafter transmits the received data to the amplifier in the next stage. Although not illustrated in  FIG. 6 , a point where the motor is not present has empty data as the data of the motor command. 
         [0011]      FIG. 7  is a view illustrating the configuration of communication data of position information from each of the amplifiers to the numerical controller in the related art. 
         [0012]    The communication data from each of the amplifiers initially includes a start code which indicates the start of the data and subsequently includes position information from each of the motors such as first motor position information, second motor position information, . . . , N-th motor position information. Each of the amplifiers which receive the data adds the position information of the motor connected thereto to the data and transmits the resultant data to the amplifier in the next stage (preceding stage). In the same manner, the amplifier in the next stage also adds the position information of the motor connected thereto to the data and transmits the resultant data to the amplifier in the further next stage (preceding stage). 
         [0013]      FIG. 8  is a view illustrating the configuration of communication data for the display device in the related art. 
         [0014]    The communication data initially includes SYNC data for communication synchronization and subsequently includes the display data. In a case where there is no communicating data, the SYNC data for communication synchronization is transmitted. In addition to the display data, input/output data (I/O data) is also transmitted. 
         [0015]    Although not illustrated, the input/output data or data (HMI data) of a key input or the like from a keyboard is transmitted from the display device to the numerical controller. 
         [0016]    In the above-described technique disclosed in Japanese Patent Application Laid-Open No. 2008-242728, the technique of connecting the numerical controller and the amplifiers of the motors by the serial buses is disclosed, but a technique related to the display device is not disclosed. 
         [0017]    In the related art illustrated in  FIG. 5 , the technique related to the communication data for the display device  120  is also disclosed. However, the display data for the display device  120  is transmitted by using a serial bus in a different protocol from that of the serial bus for the motor control. Therefore, the number of serial buses and the number of serial bus control circuits  112  are increased, and thus the technique may become complex and cost may also increase. 
       SUMMARY OF THE INVENTION 
       [0018]    An object of the invention is to provide a motor control system of a numerical controller capable of reducing the cost of serial bus control circuits, the accompanying connectors, and serial buses in the motor control system of the numerical controller. 
         [0019]    A motor control system according to the invention includes: a numerical controller; at least one amplifier which drives a motor based on a motor command from the numerical controller; at least one display device which carries out screen display based on display data; and a single serial bus which connects the numerical controller, the at least one amplifier, and the at least one display device. The numerical controller includes a first transmission buffer, a second transmission buffer, and a serial bus control circuit. The numerical controller calculates the motor command for motor control, stores the calculated motor command in the first transmission buffer, and stores the display data in the second transmission buffer. The serial bus control circuit outputs the data stored in the first transmission buffer or the second transmission buffer to the serial bus, depending on the amplifier or the display device connected to the serial bus. The amplifier drives the motor based on the motor command received from the numerical controller via the serial bus. Further, the display device carries out screen display based on the display data received from the numerical controller via the serial bus. 
         [0020]    According to the motor control system of the invention, the numerical controller, the amplifier which drives the motor, and the display device are connected by the single serial bus. Therefore, serial bus control circuits, the accompanying connectors, and serial buses are reduced in number, and thus the cost thereof can be reduced. In addition, the motor command for driving the motor and the display data for displaying on the display device are stored in the different transmission buffers so that data is output from any of the transmission buffers to the serial bus, depending on the amplifier or the display device connected to the serial bus. Therefore, the buffer storing the motor command and the buffer storing the display data are clearly separated from each other, and thus both types of data cannot be confused with each other. Even in a case where a plurality of amplifiers or a plurality of display devices are connected, control of each of the amplifiers or the display devices can be performed by separating the motor command and the display data from each other. 
         [0021]    The numerical controller may divide the display data for the display device and outputs those divided pieces of output data, and the display device may include a buffer that receives and accumulates the divided pieces of display data which are transmitted and combines those divided pieces of display data into a single piece of data. 
         [0022]    In this embodiment, the display data for the display device is divided and transmitted, and the divided pieces of display data which are transmitted are received and accumulated and combined into the single piece of data. Therefore, even in a case of display data which generally has a higher data amount than the data amount of the motor command, the display data can be sent and received by dividing and combining the data without interruption. 
         [0023]    The display data for the display device may include external output data from the display device, in addition to the data used for carrying out screen display. 
         [0024]    In this embodiment, the external output data from the display device is included as the display data in addition to the data used for carrying out screen display. Therefore, data from a keyboard or the like for operating the numerical controller can be subjected to data communication on the same serial communication channel as that of the display data along with the data used for carrying screen display. 
         [0025]    A data length of the motor command per motor output from the numerical controller may be fixed, and a data length of the display data transmitted to the display device may be an integer multiple of the data length of the motor command. 
         [0026]    In this embodiment, since the data length of the motor command is fixed and the data length of the display data is an integer multiple of the data length of the motor command when these types of data are transmitted, the data length of any of the data which is transmitted from the serial bus control circuit is the same as the fixed data length of the motor command or an integer multiple thereof. Therefore, there is no need to cope with data having various data lengths, and control of data transmission in the serial bus control circuit is facilitated. 
         [0027]    The amplifier may output position information data of a motor connected thereto to the serial bus, the display device may output display device output data to the serial bus, and the numerical controller may receive the position information data and the display device output data which are output to the serial bus. 
         [0028]    In this embodiment, the position information data of the motor from the amplifier and the display device output data from the display device are transmitted to the numerical controller via the serial bus. Therefore, the numerical controller can receive the position information of the motor and the display device output data of the display device by the single serial bus, and thus the cost can be reduced. 
         [0029]    The display device may divide the display device output data and outputs those pieces of divided output data to the serial bus, and the numerical controller may include a buffer that receives and accumulates those divided pieces of output data which are output to the serial bus and combines those divided pieces of output data into a single piece of data. 
         [0030]    In this embodiment, the display device output data from the display device is divided and transmitted, and the divided pieces of display data which are transmitted are received and accumulated in the numerical controller and combined into the single piece of data. Therefore, even in a case of display device output data which generally has a higher data amount than the data amount of the motor command, the display device output data can be sent and received by dividing and combining the data without interruption. 
         [0031]    A data length of the position information data per motor output to the serial bus from the amplifier may be fixed, and a data length of the display device output data output to the serial bus from the display device may be an integer multiple of the data length of the position information data. 
         [0032]    In this embodiment, since the data length of the position information data output from the amplifier is fixed and the data length of the display device output data output from the display device is an integer multiple of the data length of the position information data when these types of data are transmitted, the data length of any of the data is the same as the fixed data length of the position information data or an integer multiple thereof. Therefore, there is no need to cope with data having various data lengths, and control of data reception in the serial bus control circuit is facilitated. 
         [0033]    According to the invention, the motor control system of the numerical controller capable of reducing the cost of the serial bus control circuit, the accompanying connectors, and the serial bus in the motor control system of the numerical controller can be provided. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0034]    The above and other objects and features of the invention will be more apparent from the following detailed description taken in conjunction with the accompanying drawings in which: 
           [0035]      FIG. 1  is a schematic view illustrating a connection state of a numerical controller, amplifiers, and a display device which are included in a motor control system according to the invention; 
           [0036]      FIG. 2  is a view illustrating an example of the data configuration of a motor command output from the numerical controller of  FIG. 1 ; 
           [0037]      FIG. 3  is a view illustrating an example of the configuration of communication data of position information from each of the amplifiers, which is input to the numerical controller of  FIG. 1 ; 
           [0038]      FIG. 4  is a view illustrating a modification example of the data configuration of the motor command, which is output from the numerical controller of  FIG. 1 ; 
           [0039]      FIG. 5  is a schematic view illustrating a connection state of a numerical controller, motors, and a display device in the related art; 
           [0040]      FIG. 6  is a view illustrating the data configuration of a motor command in the related art; 
           [0041]      FIG. 7  is a view illustrating the configuration of communication data of position information from each of amplifiers to the numerical controller in the related art; and 
           [0042]      FIG. 8  is a view illustrating the configuration of communication data for the display device in the related art. 
       
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
       [0043]    A data amount for communication between a numerical controller and a display device is larger than the data amount of a motor command. However, communication does not require such a high degree of real-time properties as in the case of a motor. Therefore, in this embodiment, the display device is connected to a serial bus which is used for a motor command transmitted to an amplifier or position information transmitted from the amplifier. 
         [0044]      FIG. 1  is a schematic view illustrating a connection state of the numerical controller, the amplifiers, and the display device which are included in a motor control system according to the invention. 
         [0045]    In a numerical controller  10 , a serial bus control circuit  12 , an amplifier transmission buffer  14 , an amplifier reception buffer  15 , a display device transmission buffer  17 , and a display device reception buffer  18  are included. 
         [0046]    A first amplifier  31  is connected to the serial bus control circuit  12  by a serial bus  50 . A first motor  41  is connected to the first amplifier  31  so that the first motor  41  is controlled by the first amplifier  31 . Furthermore, a display device  20  is connected to the first amplifier  31  by the serial bus  50 . A reception buffer  22  is included in the display device  20 . In addition, a second amplifier  32  is connected to the display device  20  by the serial bus  50 . A second motor  42  is connected to the second amplifier  32  so that the second motor  42  is controlled by the second amplifier  32 . 
         [0047]    To the serial bus control circuit  12  of the numerical controller  10 , a motor command for motor control and display data for the display device are input from a data generating unit (not illustrated). Among the motor command and the display data input to the serial bus control circuit  12 , the motor command is input to the amplifier transmission buffer  14 , and the display data is divided into pieces having the same data length as the motor command to be input to the display device transmission buffer  17 . In addition, the serial bus control circuit  12  generates, from the motor command and the display data stored in the amplifier transmission buffer  14  or the display device transmission buffer  17 , data to be output to the serial bus  50 , depending on the amplifiers  31 ,  32 , . . . , or the display device  20  connected to the serial bus  50 , and transmits the generated data to the serial bus  50 . 
         [0048]      FIG. 2  is a view illustrating an example of the data configuration of the motor command which is output from the numerical controller of  FIG. 1 . 
         [0049]    The data of the motor command initially includes a start code which indicates the start of the data and subsequently includes a first motor command, a second motor command, . . . , an N-th motor command and the divided pieces of data for the display device. Each of the amplifiers which receive the data extracts the command for the motor connected thereto, and thereafter transmits the received data to the amplifier in the next stage or the display device  20 . When the display device  20  receives the data from the amplifier in the preceding stage, the divided pieces of data for the display device are temporarily accumulated in the reception buffer  22  in the display device  20 . The divided pieces of data for the display device in the reception buffer  22  are combined to be used as the display data for the display device  20 . 
         [0050]      FIG. 3  is a view illustrating an example of the configuration of communication data of the position information from each of the amplifiers, which is input to the numerical controller of  FIG. 1 . 
         [0051]    The communication data initially includes a start code which indicates the start of the data and subsequently includes first motor position information, second motor position information, . . . , N-th motor position information and the divided pieces of data output from the display device  20 . Each of the amplifiers which receive the data adds to the data the position information of the motor connected thereto and transmits the resultant data to the amplifier in the next stage (preceding stage). In the same manner, the amplifier in the next stage also adds the position information of the motor connected thereto to the data and transmits the resultant data to the amplifier in the stage after next (preceding stage). The numerical controller  10  which receives the data stores the motor position information from the motor  41 ,  42 , . . . in the amplifier reception buffer  15 , temporarily accumulates the divided pieces of output data from the display device  20  in the display device reception buffer  18 , and combines the pieces of data in the display device reception buffer  18  to be used as the output data from the display device. 
         [0052]      FIG. 4  is a view illustrating a modification example of the data configuration of the motor command output from the numerical controller of  FIG. 1 . 
         [0053]    In a case where the number of amplifiers is small and there is a storage space available in the communication data or the like, the data configuration of the motor command illustrated in  FIG. 4  is used. That is, a plurality of divided pieces of data for the display device (first divided piece of data for the display device and second divided piece of data for the display device) are arranged between the first motor command and the second motor command. Accordingly, data can be prepared within a short time. 
         [0054]    In this embodiment, the data for the display device or the data output from the display device is divided into pieces of data each having the data length that is an integer multiple of the data length of the motor command or the motor position information so as to be sent and received. However, the data length is not limited thereto. Even though a burden on the serial bus control circuit  12  and the like is slightly increased, the data length of the data for the display device or the data output from the display device may be a length that is not an integer multiple of the data length of the motor command.