Programmable logic controller

The programmable logic controller addresses heat dissipation and installation flexibility by integrating a display and heat dissipation holes on the surface, effectively managing heat and display functionality.

JP2025127485APending Publication Date: 2025-09-02KEYENCE CORP
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024024150
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-02-21
Publication Date
2025-09-02

AI Technical Summary

Technical Problem

Existing programmable logic controllers (PLCs) require both a base unit for ladder programs and an expansion unit for motion programs, leading to heat dissipation issues when incorporated into control panels due to blocked heat dissipation holes, which can cause display malfunctions.

Method used

A programmable logic controller with a sequence program execution engine, motion control program execution engine, and a housing featuring a display and heat dissipation holes on the surface with the display, allowing efficient heat dissipation and improved installation flexibility.

Benefits of technology

Efficient heat dissipation through surface heat dissipation holes on the display side, ensuring proper functioning of the display and enhanced heat management in the PLC.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025127485000001_ABST
    Figure 2025127485000001_ABST
Patent Text Reader

Abstract

To provide a programmable logic controller (PLC) of which both of the degree of installation freedom and the heat radiation characteristic are improved by facilitating visual recognition of an operating state of the PLC in a basic unit allowing for sequence control and motion control.SOLUTION: A PLC 10 includes a sequence control unit 31, a memory unit 50, a motion control unit 32, and a housing 80. The sequence control unit 31 executes a sequence program 54. The memory unit 50 stores therein a device value 58. The motion control unit 32 executes a motion control program 55. The housing 80 receives the sequence control unit 31, the memory unit 50, and the motion control unit 32. The housing 80 comprises a display 41, a first port 71, and a front heat radiation hole 87. The display 41 displays an operating state of the PLC 10. The first port 71 is formed in a front surface 81 and has a conveyor 20 and a servo press 25 connected thereto. The front heat radiation hole 87 is formed in the front surface 81 to dissipate heat in the housing 80.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a programmable logic controller. [Background technology]

[0002] Programmable logic controllers (hereinafter referred to as PLCs) are widely used as sequence control devices in FA (Factory Automation) control systems. In FA control systems, PLCs are connected to input devices such as sensors or output devices such as motors, and control the output devices by executing ladder programs (an example of a "sequence program"). One example of a PLC is the PLC disclosed in Patent Document 1, which is composed of a basic unit (also called a CPU unit) that executes the ladder program and an expansion unit (also called a motion unit) that executes motion functions.

[0003] In the PLC of Patent Document 1, the expansion unit executes a motion program that can be edited by the user based on commands from the basic unit, and controls output devices (e.g., motors) by outputting various command values ​​to an amplifier (e.g., a motor amplifier) ​​connected to the expansion unit itself. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] Japanese Patent Application Laid-Open No. 2017-79008 Summary of the Invention [Problem to be solved by the invention]

[0005] In a PLC such as that shown in Patent Document 1, in order to control an output device, both a base unit that executes a ladder program and an expansion unit that executes a motion program must be prepared. Therefore, a user who wants to control an output device must have both a base unit and an expansion unit. Therefore, there is a demand for the development of a PLC that can execute both ladder programs and motion programs in the base unit.

[0006] In a PLC that can execute both ladder and motion programs, the base unit generates a lot of heat because both programs are executed in the base unit. For this reason, such a PLC requires the formation of heat dissipation holes on the top, bottom, or back of the base unit's housing to release the heat from inside the base unit to the outside.

[0007] However, when such a PLC is incorporated into a control panel, the heat dissipation holes formed on the top, bottom, and back of the basic unit's housing are blocked by the control panel, preventing the heat inside the basic unit from being sufficiently dissipated to the outside. This reduces the heat dissipation effect of the heat dissipation holes, and there is a risk that they will not function properly. In particular, if a display (e.g., an LCD display) that displays the PLC's operating status is provided on the front of the basic unit's housing to make it easier for users to see the PLC's operating status, there is a risk that the display will malfunction and not display properly due to the heat dissipation effect of the heat dissipation holes being insufficient.

[0008] The present invention has been made in consideration of the above-mentioned problems, and aims to provide a programmable logic controller that makes it easier to visually check the operating status of a programmable logic controller in a basic unit that is capable of both executing a sequence program (sequence control) and executing a motion control program (motion control), and that improves both the installation flexibility and heat dissipation characteristics of the programmable logic controller. [Means for solving the problem]

[0009] According to one aspect of the present invention, a programmable logic controller has a sequence program execution engine, a memory, a motion control program execution engine, and a housing. The sequence program execution engine repeatedly executes a sequence program according to a scan period. The memory stores variable values ​​referenced by the sequence program execution engine. The motion control program execution engine executes a motion control program based on commands from the sequence program execution engine. The housing stores the sequence program execution engine, the memory, and the motion control program execution engine. The housing also includes a display, a connector, and heat dissipation holes. The display displays the operating status of the sequence program execution engine and the motion control program execution engine. The connector is formed on the surface of the outer surface of the housing where the display is provided, and is connected to an output device that is to be controlled by the motion control program. The heat dissipation holes are formed on the surface where the display is provided, and dissipate heat from within the housing. [Effects of the Invention]

[0010] According to the programmable logic controller of the present invention, heat dissipation holes are formed on the surface on which the display is provided, so that heat inside the housing can be efficiently dissipated to the outside from the side of the housing on which the display is located. [Brief explanation of the drawings]

[0011] [Figure 1] FIG. 1 is a schematic diagram illustrating an example of a conveyor controlled by a programmable logic controller. [Figure 2] FIG. 2 is a block diagram showing the configuration of a basic unit of a programmable logic controller. [Figure 3A] FIG. 1 is a schematic diagram showing control cycles of sequence control and motion control in a programmable logic controller. [Figure 3B]FIG. 10 is a schematic diagram showing another example of control cycles for sequence control and motion control in a programmable logic controller. [Figure 3C] FIG. 10 is a schematic diagram showing a data copy process from a motion control unit to a sequence control unit in a programmable logic controller. [Figure 4A] FIG. 1 is a top perspective view of a programmable logic controller. [Figure 4B] FIG. 2 is a bottom perspective view of the programmable logic controller. [Figure 5A] FIG. 2 is a front view of the programmable logic controller. [Figure 5B] 5B is a cross-sectional view taken along the line AA in FIG. 5A. [Figure 6A] FIG. 10 is a front view showing another embodiment of a programmable logic controller. [Figure 6B] FIG. 10 is a front view showing another embodiment of a programmable logic controller. [Figure 6C] FIG. 10 is a front view showing another embodiment of a programmable logic controller. DETAILED DESCRIPTION OF THE INVENTION

[0012] Hereinafter, embodiments of the present invention will be described with reference to the drawings. In the drawings, the same or equivalent parts are designated by the same reference numerals, and description thereof will not be repeated. In the following description, terms meaning positions or directions may be used. These terms are used for convenience to facilitate understanding of the embodiments, and unless otherwise clearly stated, they are not limited to positions or directions in the strict sense.

[0013] A PLC 10 according to an embodiment of the present invention will be described below with reference to FIGS. 1 to 5B.

[0014] First, the overall system of PLC 10 will be described with reference to Fig. 1 to Fig. 3C. PLC 10 shown in Fig. 1 comprehensively controls various control devices installed in, for example, a factory. More specifically, as shown in Fig. 1, PLC 10 controls conveyor 20 and servo press 25. PLC 10 is placed, for example, inside a control panel (not shown) that controls the entire conveyor 20 and servo press 25. PLC 10 is connected to conveyor 20, servo press 25, another PLC 90 (another PLC) other than PLC 10, and a higher-level system 91.

[0015] The PLC 10 in FIG. 1 is provided with a first port 71, a second port 72, and a third port 73 as ports for connection to other devices. The first port 71 is classified as a first connector to which an output device is connected. The second port 72 and the third port 73 are classified as second connectors used for communication with external devices. In FIG. 1, the conveyor 20 and the servo press 25 are connected to the first port 71 (first connector) as output devices. The other PLC 90 and the higher-level system 91 are connected to the second port 72 and the third port 73 (second connector), respectively.

[0016] The conveyor 20 is an output device that is controlled by the PLC 10. The conveyor 20 mainly includes a first servo amplifier 21, a second servo amplifier 22, a first motor 23, and a second motor 24.

[0017] The first servo amplifier 21 and the second servo amplifier 22 are connected to the PLC 10 by, for example, a twisted pair cable, a so-called LAN (Local Area Network) cable, and communicate with the PLC 10 according to the EtherCAT (Ethernet for Control Automation Technology, registered trademark, the same applies below) communication protocol.

[0018] The first servo amplifier 21 supplies power to the first motor 23. The power supplied by the first servo amplifier 21 to the first motor 23 is controlled by the PLC 10. The second servo amplifier 22 supplies power to the second motor 24. The power supplied by the second servo amplifier 22 to the second motor 24 is controlled by the PLC 10. The first motor 23 and the second motor 24 drive the conveyor 20. The conveyor 20 is driven by the first motor 23 and the second motor 24 to transport the workpiece W.

[0019] The servo press 25 is an output device that is controlled by the PLC 10. The servo press 25 includes a third servo amplifier 26. The third servo amplifier 26, together with the first servo amplifier 21 and the second servo amplifier 22, communicates with the PLC 10 according to the EtherCAT communication protocol. The third servo amplifier 26 supplies power to the servo press 25. The power supplied to the servo press 25 by the third servo amplifier 26 is controlled by the PLC 10. A sensor 27 detects the workpiece W, and the PLC 10 controls the third servo amplifier 26, causing the servo press 25 to perform press processing on the workpiece W.

[0020] The upper system 91 is an external device different from the PLC 10, and is, for example, an upper network such as an external computer or database. The upper system 91 is connected to the PLC 10 by, for example, a LAN cable, and communicates with the PLC 10 in accordance with the Ethernet (registered trademark, the same applies hereinafter) communication protocol.

[0021] The other PLC 90 is an external device different from the PLC 10, and for example, controls devices other than the conveyor 20 and servo press 25 controlled by the PLC 10. The other PLC 90 is connected to the PLC 10 by, for example, a LAN cable, and communicates with the PLC 10 in accordance with the Ethernet / IP (registered trademark, the same applies hereinafter) communication protocol.

[0022] As shown in FIG. 1, the PLC 10 includes a basic unit 11. An expansion unit 12 is connected to the side of the basic unit of the PLC 10. The expansion unit 12 is a unit for expanding the functions of the basic unit 11, and is, for example, an IO unit that performs external input and output for the PLC 10, an analog unit that exchanges analog data, a communication unit, etc. The expansion unit 12 is stored in a housing different from the housing 80 of the PLC 10 (basic unit 11). In other words, the expansion unit 12 is a unit separate from the basic unit 11. In this embodiment, a sensor 27 is connected to the expansion unit 12.

[0023] The sensor 27 is a sensor that detects the workpiece W being transported on the conveyor 20. When the sensor 27 detects the workpiece W, it transmits a detection signal to the expansion unit 12.

[0024] As shown in FIG. 2, the basic unit 11 includes a CPU (Central Processing Unit) 30, a display unit 40, a memory unit 50, an SD card unit 60, an expansion bus unit 65, a volatile memory unit 66, and a communication unit 70.

[0025] The CPU 30 of this embodiment is a processor (multi-core processor) including a first core 37 and a second core 38. As shown in Fig. 2, the CPU 30 has a sequence control unit 31, a motion control unit 32, a communication control unit 33, a memory management unit 34, an SD card control unit 35, and an expansion bus control unit 36.

[0026] The sequence control unit 31 is a sequence program execution engine that repeatedly executes a sequence program 54 in accordance with a scan period. In this embodiment, the first core 37 functions as the sequence control unit 31 by reading and executing the sequence program 54 stored in the memory unit 50. For example, when the sequence control unit 31 receives a detection signal from the sensor 27 via the expansion unit 12 (see FIG. 1), the sequence control unit 31 performs calculations based on the content of the detection signal and the sequence program 54 to determine the control content to be executed by the sequence control unit 31. The sequence control unit 31 then issues a command (a request to execute motion control) to the motion control unit 32 to control the drive of the first motor 23, the second motor 24, and the servo press 25.

[0027] The motion control unit 32 is a motion control program execution engine that executes the motion control program 55. In this embodiment, the second core 38 functions as the motion control unit 32 by reading and executing the motion control program 55 stored in the memory unit 50. The motion control unit 32 controls and performs calculations on the first motor 23, the second motor 24, and the servo press 25. Based on commands received from the sequence control unit 31, the motion control unit 32 controls the drive (movement) of the first motor 23, the second motor 24, and the servo press 25 by controlling the first servo amplifier 21, the second servo amplifier 22, and the third servo amplifier 26. As a specific example of control performed by the motion control unit 32, the motion control unit 32 calculates how to accelerate or decelerate the first motor 23, the second motor 24, and the servo press 25 in order to move the conveyor 20 and the servo press 25 in accordance with commands from the sequence control unit 31. The motion control unit 32 then controls the first servo amplifier 21, the second servo amplifier 22, and the third servo amplifier 26 according to the calculation results, thereby realizing the commands from the sequence control unit 31 regarding the conveyor 20 and the servo press 25.

[0028] The communication control unit 33 controls communication between the PLC 10 and external devices, such as Ethernet communication, Ethernet / IP communication, and EtherCAT communication, via the communication unit 70. The memory management unit 34 reads programs stored in the memory unit 50 and stores data or programs created outside the PLC 10. The SD card control unit 35 reads data or programs from an SD card inserted in the SD card unit 60. The expansion bus control unit 36 ​​controls communication with the expansion unit 12.

[0029] 1 and 2, the display unit 40 has a display 41, a display control unit 42, and an operation switch 43. The display 41 displays the operating status of the PLC 10 (the operating status of the sequence control unit 31 and the motion control unit 32). Specifically, the display 41 displays the current values ​​of specific variables used within the PLC 10 (values ​​referenced by the sequence control unit 31, device values ​​58 described below), error information that has occurred within the PLC 10, etc. The display control unit 42 controls the display on the display 41.

[0030] The operation switch 43 is a switch that the user operates to change the operating state of the PLC 10. The user can change the operating state of the PLC 10 by operating the operation switch 43 based on the content displayed on the display 41 and manipulating (switching) the displayed content. For example, the user operates the operation switch 43 to set or change the IP addresses assigned to each port (first port 71, second port 72, third port 73).

[0031] As shown in Fig. 2, the memory unit 50 is a memory that stores various programs and various data for controlling the conveyor 20 and the servo press 25 (output device). The memory unit 50 is configured with a non-volatile memory. The memory unit 50 has a program storage unit 51, a parameter storage unit 52, and a variable / device storage unit 53.

[0032] The program storage unit 51 stores various programs for controlling the conveyor 20 and the servo press 25. Specifically, the program storage unit 51 stores a sequence program 54, a motion control program 55, and a system program 56. The parameter storage unit 52 stores setting information 57 for controlling the conveyor 20 and the servo press 25. The variable / device storage unit 53 stores data indicating the operating status of the PLC 10. Specifically, the variable / device storage unit 53 stores device values ​​58 and variables 59.

[0033] The sequence program 54 is, for example, a ladder program, an SFC (Sequential Function Chart) program, an ST (Structured Text) program, or the like.

[0034] The device values ​​58 are variable values ​​and are the current values ​​of devices within the PLC 10. Here, "device" refers to a memory area provided for storing the device values ​​58. The device values ​​58 include, for example, information for issuing an instruction to start control (motion control) of the first motor 23, the second motor 24, and the servo press 25, input status from the sensor 27 (input device), output status to the first servo amplifier 21, the second servo amplifier 22, and the third servo amplifier 26 (output device), and information indicating the status of internal relays (auxiliary relays), timers, counters, and the like set in the user program. The device values ​​58 are values ​​referenced by the sequence control unit 31 (sequence program execution engine). The variables 59 are values ​​for executing the sequence program 54 in the sequence control unit 31 and values ​​for executing the motion control program 55 in the motion control unit 32.

[0035] The SD card unit 60 shown in FIG. 2 is a unit for installing an SD memory card. The SD memory card installed in the SD card unit 60 is used as an additional storage device to further expand the storage capacity of the storage device provided in the PLC 10. For example, the PLC 10 operation log may be written to the SD memory card. The volatile memory unit 66 is configured with volatile memory and is a unit for temporarily storing programs or data required in the CPU 30. Specifically, the volatile memory unit 66 stores sequence control variables 67 used by the sequence control unit 31 to execute sequence control, and motion control variables 68 used by the motion control unit 32 to execute motion control. The expansion bus unit 65 is a unit for connecting the expansion unit 12 to the PLC 10 (basic unit 11).

[0036] 1 and 2, the communication unit 70 is a part that connects the PLC 10 to output devices (conveyor 20, servo press 25) and external devices (host system 91, other PLCs 90) so that they can communicate with each other. The communication unit 70 has a first port 71 that is a first connector, a second port 72 and a third port 73 that are second connectors, and a status lamp 74.

[0037] The first port 71 is a port to which output devices to be controlled by the motion control program 55 are connected. The first port 71 is connected to the first servo amplifier 21, the second servo amplifier 22, and the third servo amplifier 26, which operate the conveyor 20 and the servo press 25, via LAN cables. Ethernet communication is performed between the PLC 10 and each servo amplifier (the first servo amplifier 21, the second servo amplifier 22, and the third servo amplifier 26). As shown in FIG. 1, the first servo amplifier 21, the second servo amplifier 22, and the third servo amplifier 26 are connected in a daisy chain to the first port 71 as output devices. In the Ethernet communication performed between the PLC 10 and each servo amplifier (the first servo amplifier 21, the second servo amplifier 22, and the third servo amplifier 26) as output devices, data (Ethernet frames) are sent in bulk from the PLC 10 to all of the daisy chained output devices. Data transmitted from the PLC 10 passes through each output device (after being read and written by each output device) and then returns (circulates) to the PLC 10. The data (Ethernet frame) passing through each output device has an area allocated to each output device. Each output device (first servo amplifier 21, second servo amplifier 22, third servo amplifier 26) reads data from its own area, writes data to its own area as necessary, and returns the data to the PLC 10. The PLC 10 can provide areas allocated to multiple output devices for data passing through each output device in EtherCAT communication. Therefore, by using EtherCAT communication, even if the PLC 10 has only one first port 71 as a first connector provided for communication with the output devices, it can control multiple output devices daisy-chained to the first port 71.

[0038] The second port 72 is a port through which the PLC 10 communicates with external devices via Ethernet / IP. Another PLC 90 is connected to the second port 72 via a LAN cable, and Ethernet / IP communication is performed between the PLC 10 and the other PLC 90.

[0039] The third port 73 is a port for performing Ethernet communication with an external device. A host system 91 is connected to the third port 73 via a LAN cable, and Ethernet communication is performed between the PLC 10 and the host system 91. The Ethernet communication between the PLC 10 and the host system 91 does not have to be industrial Ethernet communication such as Ethernet / IP communication. For example, communication via the third port 73 may be general-purpose Ethernet communication such as FTP (File Transfer Protocol) communication.

[0040] 1 is an indicator lamp that indicates the connection status of the first connector, the first port 71, and the second connectors, the second port 72 and the third port 73. That is, in the PLC 10, the indicator lamps that indicate the connection status of the first port 71, the second port 72, and the third port 73 are gathered together in the upper left part of the housing 80, away from the first port 71, the second port 72, and the third port 73. The status lamp 74 is made up of a plurality of LED lamps. The status lamp 74 indicates the status of Ethernet communication, Ethernet / IP communication, EtherCAT communication, the network, etc.

[0041] As shown in FIG. 2 , the CPU 30 includes a first core 37 and a second core 38 (multi-core). The first core 37 functions as the sequence control unit 31 by executing a sequence program 54. The second core 38 functions as the motion control unit 32 by executing a motion control program 55. In the CPU 30, each core (the first core 37 and the second core 38) executes each control (sequence control and motion control) while using or updating variables (sequence control variables 67 and motion control variables 68) stored in the volatile memory unit 66 at optimal timing. The CPU 30 runs the sequence control unit 31 and the motion control unit 32 on separate cores (the first core 37 and the second core 38), so that the sequence control and the motion control are executed independently. Therefore, the sequence control unit 31 can issue operation commands one after another without waiting for confirmation of the execution result of the motion control by the motion control unit 32 (without stopping the motion control). This allows the CPU 30 to control each control (sequence control and motion control) at the fastest scan cycle. Furthermore, the CPU 30 can perform both sequence control and motion control within a single CPU. Therefore, the PLC 10 does not need to have two units, one for sequence control and one for motion control, and can perform both sequence control and motion control in the space for a single unit (CPU 30), so the size of the housing 80 of the PLC 10 (see FIGS. 4A and 4B) can be minimized.

[0042] 2, 3A, and 3B, in CPU 30, each control (sequence control and motion control) is executed by separate cores (first core 37 and second core 38), and therefore each control (sequence control and motion control) is executed in a separate scan cycle. Specifically, first core 37 executes sequence control by repeatedly executing sequence program 54 as sequence control unit 31 in scan cycle a. Furthermore, second core 38 executes motion control by repeatedly executing motion control program 55 as motion control unit 32 in scan cycle b.

[0043] As shown in Figures 3A and 3B, the operation commands (operation command (1) and operation command (2)) from the sequence control unit 31 are temporarily placed in the command buffer (A) and then copied to the command buffer (B) at a specific timing. Meanwhile, the motion control unit 32 checks the command buffer (B) at the start of the scan period b and executes the operation commands (operation command (1) and operation command (2)) placed in the command buffer (B). It is preferable that the sequence control unit 31 and the motion control unit 32 each reserve a portion of the storage area of ​​the volatile memory unit 66 as storage area for the command buffer (A) and the command buffer (B). In addition, the operation commands from the sequence control unit 31 to the motion control unit 32 are executed based on control A in FIG. 3A or control B in FIG. 3B, depending on whether priority is given to simultaneously executing the operation commands for each output device (first servo amplifier 21, second servo amplifier 22, third servo amplifier 26) (simultaneity of operation commands) or whether priority is given to increasing the responsiveness of the operation commands for each output device (first servo amplifier 21, second servo amplifier 22, third servo amplifier 26).

[0044] For example, when the PLC 10 drives the first motor 23 and the second motor 24 simultaneously (when executing operation commands to the first servo amplifier 21 and the second servo amplifier 22 simultaneously), control A in FIG. 3A is executed. That is, when priority is given to the simultaneity of the operation commands, control A in FIG. 3A is performed. In control A, first, the sequence control unit 31 stores in the command buffer (A) an operation command (1) to start drive control of the first motor 23 during one scan period a, and then stores in the command buffer (A) an operation command (2) to start drive control of the second motor 24. Here, in control A, the operation command (1) and the operation command (2) stored in the command buffer (A) are not copied to the command buffer (B) until the next scan period b of the motion control unit 32 starts after the scan period a of the sequence control unit 31 is completed. Therefore, the command buffer (A) in control A continues to temporarily store the operation command (1) and the operation command (2) until the scan period a of the sequence control unit 31 that issued the operation command (1) and the operation command (2) is completed, and after the scan period a is completed, until the next scan period b of the motion control unit 32 is started. Then, the operation command (1) and the operation command (2) stored in the command buffer (A) are stored in the command buffer (B) at the timing when the scan period b that the motion control unit 32 was continuing is completed at the time when the scan period a of the sequence control unit 31 is completed and the next new scan period b is started.

[0045] Meanwhile, the motion control unit 32 checks whether or not there are any operation commands in the command buffer (B) at the timing when a new scan cycle b starts. When the motion control unit 32 checks that the command buffer (B) contains the operation commands (1) and (2), it receives the operation commands (1) and (2) from the command buffer (B). The motion control unit 32 then executes the operation commands (1) and (2) simultaneously within the same scan cycle b, thereby simultaneously driving the first servo amplifier 21 and the second servo amplifier 22. As a result, the first motor 23 and the second motor 24 are simultaneously driven.

[0046] In this way, by performing control A in Figure 3A, the operation commands (operation command (1) and operation command (2)) that should be executed simultaneously to the first servo amplifier 21 and the second servo amplifier 22 are executed simultaneously within the same scan period b, and high synchronicity can be achieved in the simultaneous driving of the first motor 23 and the second motor 24.

[0047] On the other hand, for example, when the PLC 10 drives the servo press 25 independently of the first motor 23 (or the second motor 24), that is, when the PLC 10 executes operation commands separately for the first servo amplifier 21 (or the second servo amplifier 22) and the third servo amplifier 26, control B in FIG. 3B is executed. That is, when priority is given to improving the responsiveness of the operation commands to each output device, control B in FIG. 3B is performed. In control B, first, the sequence control unit 31 stores an operation command (3) in the command buffer (A) to start drive control of the first motor 23. In control B, the operation command (3) stored in the command buffer (A) is copied to the command buffer (B) at the start of a new scan cycle (b) of the motion control unit 32, without waiting for the completion of the scan cycle (a) of the sequence control unit 31. At the start of the new scan cycle (b), the motion control unit 32 confirms that the operation command (3) is present in the command buffer (B) and then receives the operation command (3) from the command buffer (B). Furthermore, the motion control unit 32 executes the operation command (3) to drive the first servo amplifier 21. As a result, the first motor 23 is driven in the closest scan cycle b of the motion control unit 32 after the sequence control unit 31 issues the operation command (3), without waiting for the completion of the scan cycle a of the sequence control unit 31.

[0048] Meanwhile, after storing the operation command (3) in the command buffer (A), the sequence control unit 31 stores in the command buffer (A) an operation command (4) indicating that drive control of the servo press 25 should be initiated within the same scan cycle a. In control B, the operation command (4) stored in the command buffer (A) is copied to the command buffer (B) at the start of a new scan cycle b of the motion control unit 32, without waiting for the completion of the scan cycle a of the sequence control unit 31. Therefore, after the scan cycle b in which the operation command (3) is executed is completed, the motion control unit 32 checks whether or not there is an operation command in the command buffer (B) at the start of the next scan cycle b, thereby receiving the operation command (4) stored in the command buffer (B). Upon receiving the operation command (4), the motion control unit 32 executes the operation command (4) to drive the third servo amplifier 26. As a result, the servo press 25 is driven in the scan cycle b of the motion control unit 32 that is closest to the scan cycle a of the sequence control unit 31, without waiting for the completion of the scan cycle a of the sequence control unit 31, after issuing the operation command (4).

[0049] In this way, by performing control B in Fig. 3B, the two operation commands (operation command (3) and operation command (4)) are executed in different scan cycles b in the motion control unit 32, but are executed in the scan cycle b that is closest to when the operation command is issued by the sequence control unit 31. Therefore, the time from when the operation command is issued to when it is executed is shortened, and high responsiveness can be obtained in the operation commands for each output device (first servo amplifier 21, second servo amplifier 22, third servo amplifier 26).

[0050] In order to achieve both simultaneity and responsiveness in the execution of operation commands, the sequence control unit 31 may store the operation commands in the command buffer (A) at the completion of the scan period a of the sequence control unit 31 (the operation commands issued in one scan period a are stored collectively in the command buffer (A) at the completion of the scan period a), thereby ensuring simultaneity, and copying from the command buffer (A) to the command buffer (B) may be performed every time the motion control unit 32 checks the command buffer (B), thereby ensuring responsiveness.

[0051] Next, a description will be given of a process for transferring data between the sequence control unit 31 and the motion control unit 32. As an example, a case where data is copied from the motion control unit 32 to the sequence control unit 31 will be described.

[0052] As shown in FIG. 3C, the sequence control unit 31 has a storage area A1 for receiving data (variable values, etc.) from the motion control unit 32. Meanwhile, the motion control unit 32 has a first storage area B1, a second storage area B2, and a third storage area B3 for transferring data to the sequence control unit 31. The sequence control unit 31 and the motion control unit 32 each reserve part of the storage area of ​​the volatile memory unit 66 (FIG. 2) as the storage area A1, the first storage area B1, the second storage area B2, and the third storage area B3 for data copy processing shown in FIG. 3C. The motion control unit 32 uses one of the three storage areas (the second storage area B2) for writing data itself, and the other storage area (the first storage area B1) for copying data to the storage area A1 of the sequence control unit 31. Furthermore, the remaining storage area (the third storage area B3) is reserved for next reference. Before writing data, the motion control unit 32 swaps the addresses of the second storage area B2 and the third storage area B3. Therefore, the latest data from the motion control unit 32 is written to the third storage area B3.

[0053] A part of the storage device of the motion control unit 32 is provided with a read target address storage unit B4 that indicates the address of the storage area (one of the first storage area B1, the second storage area B2, and the third storage area B3) from which the sequence control unit 31 should read. The read target address storage unit B4 may be part of the storage area of ​​the volatile memory unit 66 (FIG. 2). When the sequence control unit 31 attempts to receive data from the motion control unit 32, it first checks the address indicated by the read target address storage unit B4. It then receives the data stored at the address of the checked storage area. In the initial state, the read target address storage unit B4 displays the address of the first storage area B1.

[0054] On the other hand, when data is updated in the third storage area B3, the motion control unit 32 copies the contents of the third storage area B3 to the first storage area B1, or rewrites the address of the storage area indicated by the read target address storage unit B4 to the address of the third storage area B3.

[0055] Through the above procedure, the contents of the data copied to the memory area A1 read by the sequence control unit 31 will be the latest state in the motion control unit 32. Furthermore, the sequence control unit 31 and the motion control unit 32 will not read the same memory area at the same time. Therefore, while one of the sequence control unit 31 and the motion control unit 32 is accessing a memory area, the other does not need to wait for the access to be completed, and the sequence control unit 31 and the motion control unit 32 can operate independently at high speed.

[0056] Next, the external appearance of the PLC 10 will be described with reference to FIGS. 4A, 4B, 5A, and 5B. As shown in FIGS. 4A and 4B, the PLC 10 has a main body formed by a substantially rectangular parallelepiped housing 80. The housing 80 has six outer surfaces: a front surface 81, a rear surface 82, a right side surface 83, a left side surface 84, a top surface 85, and a bottom surface 86. Here, the front surface 81 of the housing 80 refers to the surface facing the front of a control panel (not shown) that controls the conveyor 20 and the servo press 25 as a whole when the PLC 10 is disposed in the control panel. The rear surface 82 of the housing 80 is the surface behind the front surface 81, the right side surface 83 of the housing 80 is the surface to the right of the front surface 81, the left side surface 84 of the housing 80 is the surface to the left of the front surface 81, the top surface 85 of the housing 80 is the surface above the front surface 81, and the bottom surface 86 of the housing 80 is the surface below the front surface 81.

[0057] A connector for the expansion bus unit 65 may be provided on the right side surface 83 for connection to the expansion unit 12. For example, an openable cover may be provided on a part of the right side surface 83 so that the connector for the expansion bus unit 65 is exposed when the cover is opened.

[0058] The housing 80 houses the basic unit 11. That is, the housing 80 constitutes the housing of the basic unit 11, and houses therein a sequence control unit 31 (sequence program execution engine), a memory unit 50 (memory), and a motion control unit 32 (motion control program execution engine).

[0059] The housing 80 has a front surface 81 of its outer surface provided with a display 41, a first port 71 (first connector), a second port 72 (second connector), a third port 73 (second connector), a front heat dissipation hole 87, a status lamp 74, an operation switch 43, an SD card unit 60, a battery insertion portion 95, a USB connector 96, and an execution state changeover switch 97. That is, the surface of the outer surface of the housing 80 on which the display 41 is provided has the first port 71, the second port 72, the third port 73, a front heat dissipation hole 87, the status lamp 74, an operation switch 43, an SD card unit 60, a battery insertion portion 95, a USB connector 96, and an execution state changeover switch 97 formed thereon.

[0060] The housing 80 has an upper surface 85 of its outer surfaces formed with upper surface heat dissipation holes 88. The housing 80 has a lower surface 86 of its outer surfaces formed with lower surface heat dissipation holes 89. An SD card can be attached to the SD card section 60. A battery can be inserted into the battery insertion section 95. The battery supplies power to retain data (clock data, etc.) that should be maintained even when the PLC 10 is not operating. The battery may also supply power to operate the PLC 10 when no power is being supplied to the PLC 10 from an external source.

[0061] An external computer or the like is connected to the USB connector 96 via a USB cable (not shown). The external computer or the like connected to the USB connector 96 transfers program data and the like to the PLC 10, monitors the operating status of the PLC 10, and rewrites operating parameters of the PLC 10 via the USB cable. The execution state selector switch 97 switches the PLC 10 between a state in which a program is being executed (running state) and a state in which the program is stopped (stopped state). When the execution state selector switch 97 switches the program between the running state and the stopped state, it is preferable that the color of the display 41 change. For example, in the running state, the background color of the display 41 should be blue. In the stopped state, the background color of the display 41 should be red. Changing the color of the display 41 when switching between the running state and the stopped state makes it easy for the user to visually understand the state of the program. Furthermore, when the program of the PLC 10 needs to be rewritten, it is preferable that the program be rewritten while it is stopped in order to prevent program malfunction or runaway.

[0062] As shown in FIGS. 4A and 4B, the display 41 is formed on the front surface 81 of the housing 80 so that the display surface 41a that displays information and the like faces the same direction as the front surface 81 of the housing 80.

[0063] 4A and 4B, the first port 71, the second port 72, and the third port 73 are formed on the left side of the front surface 81 of the housing 80. The first port 71, the second port 72, and the third port 73 are arranged in a line in the up-down direction of the housing 80. More specifically, the first port 71, the second port 72, and the third port 73 are arranged in a line from the bottom end to the top end of the housing 80 in the order of the first port 71, the second port 72, and the third port 73.

[0064] The first port 71, the second port 72, and the third port 73 are provided in an inclined position with respect to the front surface 81 of the housing 80. That is, the first port 71, the second port 72, and the third port 73 are provided in an inclined position with respect to the display surface 41a of the display 41. More specifically, the first port 71, the second port 72, and the third port 73 are formed in an inclined downward direction with respect to the display surface 41a of the display 41 and downward toward the front with respect to the front-to-rear direction of the housing 80, so that their openings (opening 71a of the first port 71, opening 72a of the second port 72, opening 73a of the third port 73) face diagonally downward.

[0065] 4A and 4B, the front surface heat dissipation holes 87, the upper surface heat dissipation holes 88, and the lower surface heat dissipation holes 89 are holes for dissipating heat inside the housing 80. The front surface heat dissipation holes 87, the upper surface heat dissipation holes 88, and the lower surface heat dissipation holes 89 are each composed of a plurality of elongated holes.

[0066] 2, in the PLC 10, the sequence control unit 31 and the motion control unit 32 function as separate cores (a first core 37 and a second core 38) of the CPU 30 provided in the same basic unit 11. The sequence control unit 31 and the motion control unit 32 execute control A shown in FIG. 3A or control B shown in FIG. 3B within the same basic unit 11. In other words, both the sequence program 54 and the motion control program 55 are executed within the same basic unit 11. Furthermore, while one of the sequence control unit 31 and the motion control unit 32 is accessing a storage area, the other performs a data copy process from the motion control unit 32 to the sequence control unit 31 without waiting for the access to be completed.

[0067] For the reasons described above, in the basic unit 11, multiple controls are performed in parallel at a high frequency compared to when the sequence control unit 31 and the motion control unit 32 are provided in different units (for example, when the sequence control unit 31 is provided in the basic unit and the motion control unit 32 is provided in a motion unit separate from the basic unit), which increases the load on the CPU 30 for calculation processing and increases heat generation. Therefore, in the PLC 10, an upper surface 85 of the housing 80 is provided with upper surface heat dissipation holes 88, and a lower surface 86 of the housing 80 is provided with lower surface heat dissipation holes 89.

[0068] However, simply providing the upper surface heat dissipation holes 88 and the lower surface heat dissipation holes 89 in the housing 80 of the PLC 10 is not enough to sufficiently dissipate the heat inside the basic unit 11 to the outside. In particular, when the PLC 10 is placed on a control panel, the upper surface 85 and the lower surface 86 of the housing 80 may be blocked by the control panel, making it difficult to dissipate the heat inside the basic unit 11 to the outside through the upper surface heat dissipation holes 88 and the lower surface heat dissipation holes 89. Therefore, when the display 41 is provided on the front surface 81 of the housing 80, as in the case of the PLC 10, there is a risk that the heat inside the basic unit 11 will cause a malfunction of the display 41.

[0069] Therefore, as shown in Figures 4A and 4B, in the PLC 10 of this embodiment, a front heat dissipation hole 87 for efficiently dissipating heat from within the basic unit 11 to the outside is formed on the front surface 81 of the housing 80 in which the display 41 is provided.

[0070] 5B, a first board 15, a second board 16, and a heat sink 17 are arranged inside the housing 80. The first board 15 is the main board of the PLC 10 and is arranged on the right side inside the housing 80. The second board 16 is arranged on the left side inside the housing 80. Electronic components 18 that constitute a sequence control unit 31, a motion control unit 32, a display control unit 42, etc. are attached to the first board 15 and the second board 16. The heat sink 17 is a cooling component that dissipates heat generated by the electronic components 18. In the PLC 10, the first board 15 and the second board 16 are provided on both the left and right sides inside the housing 80 to ensure a large cooling area for the heat sink 17 inside the housing 80.

[0071] As described above, the PLC 10 generates a lot of heat because it executes both the sequence program 54 and the motion control program 55 within the same basic unit 11. For this reason, the heat sink 17 is provided near the first board 15 and the second board 16 to dissipate heat from the electronic components 18, which are heat sources, to the outside.

[0072] However, simply providing the front surface heat dissipation holes 87, the top surface heat dissipation holes 88, and the bottom surface heat dissipation holes 89 in the housing 80 does not allow the heat emitted from the heat sink 17 to be efficiently dissipated to the outside of the housing 80, which may result in a decrease in the heat dissipation performance of the heat sink 17. Therefore, in the PLC 10, the front surface heat dissipation holes 87 are formed in the center in the left-right direction on the front surface 81 of the housing 80, thereby enabling the heat emitted from the heat sink 17 to be efficiently dissipated and enabling the heat sink 17 to be cooled by outside air blown in through the front surface heat dissipation holes 87, thereby improving the heat dissipation performance of the heat sink 17.

[0073] 4A, 4B, and 5A, front heat dissipation hole 87 has a plurality of holes 87a extending in the left-right direction of housing 80, which are arranged in the center of front surface 81 of housing 80 and are arranged parallel to the up-down direction of housing 80. By forming front heat dissipation hole 87 with a plurality of holes 87a, a frame-shaped member of housing 80 is present between the plurality of holes 87a, and the strength of housing 80 can be increased compared to when front heat dissipation hole 87 is formed with one large hole.

[0074] An inclined surface is formed in each hole 87a of the front heat dissipation holes 87. The inclined surface of the hole 87a is provided at an angle relative to the front surface 81 of the housing 80 (the display surface 41a of the display 41). More specifically, the inclined surface of the hole 87a is formed at an angle downward relative to the front surface 81 of the housing 80 and downward relative to the front-to-rear direction of the housing 80 so that the hole 87a faces diagonally downward. Forming the hole 87a in this manner prevents dust, dirt, and the like from entering the housing 80 through the hole 87a.

[0075] The front heat dissipation holes 87 are provided below the operation switch 43 and to the sides of the first port 71 (first connector) and the second port 72 (second connector). More specifically, the front heat dissipation holes 87 are formed below the operation switch 43 located in the center of the housing 80, and the holes 87a of the front heat dissipation holes 87 are arranged side by side in the up-down direction of the housing 80 (the direction in which the first port 71 (first connector) and the second port 72 (second connector) are arranged side by side). Because the first connector and the second connector are used to connect to other devices, even when the PLC 10 is installed in a control panel, the first connector and the second connector are arranged so as to be exposed to the outside. Therefore, by providing the front heat dissipation holes 87 on the same front surface 81 as the first connector and the second connector, the front heat dissipation holes 87 are reliably exposed to the outside, and therefore heat can be efficiently dissipated to the outside.

[0076] 4A, 4B, and 5A, the status lamp 74 is provided on the front surface 81 on which the display 41 is provided, at a position away from the first port 71 (first connector), the second port 72, and the third port 73 (second connector). Specifically, the status lamp 74 is provided on the left side of the display 41 and above the third port 73.

[0077] 4A, 4B, and 5A, the operation switch 43 is provided below the display 41 and to the side of the first port 71 (first connector), the second port 72, and the third port 73 (second connector). Specifically, the operation switch 43 is provided below the display 41 and to the right of the first port 71, the second port 72, and the third port 73.

[0078] As described above, according to PLC 10, front heat dissipation holes 87 are formed on the front surface 81 of housing 80 (the surface on which display 41 is provided), and therefore heat inside housing 80 can be efficiently dissipated from the side of housing 80 on which display 41 is arranged (the front side of housing 80) to the outside of housing 80. Therefore, display 41 is efficiently cooled, and malfunction of display 41 is prevented.

[0079] In the PLC 10, the connector (first connector) of the first servo amplifier 21, the second servo amplifier 22, and the third servo amplifier 26 is the first port 71 only, but this is not limited to this, and a connector (port) may be provided for each servo amplifier (the first servo amplifier 21, the second servo amplifier 22, and the third servo amplifier 26) (the first connector may have multiple ports).

[0080] Furthermore, in PLC 10, front heat dissipation holes 87 are provided on the front surface 81 of housing 80, but this is not limited to this, and it is sufficient if heat dissipation holes equivalent to front heat dissipation holes 87 are provided on the surface of housing 80 on which display 41 is provided. In other words, the surface on which heat dissipation holes equivalent to front heat dissipation holes 87 and display 41 are provided is not limited to a surface facing a particular direction.

[0081] Furthermore, as shown in Figures 6A, 6B, and 6C, in order to improve the heat dissipation efficiency within the housing 80 and to make it easier to take in the cool outside air around the housing 80 into the housing 80, front heat dissipation holes 87 may be provided as in PLC10A, PLC10B, and PLC10C (another embodiment of PLC10).

[0082] 6A and 6B, a front heat dissipation hole 87A may be provided below the display 41 and operation switches 43, which are arranged in the center of the housing 80 in the left-right direction. Here, the front heat dissipation hole 87A is formed by a plurality of elongated holes 87b, each having a length approximately equal to the left-right width of the display 41, arranged in the up-down direction of the housing 80. In this case, if the first port 71 and the second port 72 are configured to be on either side of the front heat dissipation hole 87A, the first port 71, the second port 72, and the third port 73 may be arranged side by side in the up-down direction on the left side of the front heat dissipation hole 87A, as in PCL 10A in FIG. 6A. Alternatively, the first port 71, the second port 72, and the third port 73 may be arranged separately on both the left and right sides of the front heat dissipation hole 87A, as in PCL 10B in FIG. 6B.

[0083] 6C, a front heat dissipation hole 87A may be provided below the display 41 and operation switches 43 arranged on the right side of the housing 80. When an expansion unit 12 or the like is connected to the right side of the PLC 10, it is preferable to arrange the display 41 and operation switches 43 on the right side of the housing 80. [Industrial Applicability]

[0084] The present invention provides a programmable logic controller and has industrial applicability. [Explanation of symbols]

[0085] 10 PLC (Programmable Logic Controller) 20 Conveyor (output equipment) 25 Servo press (output device) 31 Sequence control unit (sequence program execution engine) 32 Motion control unit (motion control program execution engine) 41 Display 50 Memory section (memory) 54 Sequence Program 55 Motion Control Program 58 Device Value (Variable Value) 71 First port (connector) 80 cabinets 81 Front (the surface where the display is installed) 87 Front heat radiation hole (heat radiation hole)

Claims

1. a sequence program execution engine that repeatedly executes a sequence program according to a scan period; a memory for storing variable values ​​referenced by the sequence program execution engine; a motion control program execution engine that executes a motion control program based on a command from the sequence program execution engine; a housing that houses the sequence program execution engine, the memory, and the motion control program execution engine; and The housing includes: a display that displays the operating states of the sequence program execution engine and the motion control program execution engine; a connector formed on the surface of the outer surface of the housing where the display is provided, the connector being connected to an output device that is to be controlled by the motion control program; a heat dissipation hole formed on a surface on which the display is provided, for dissipating heat within the housing; To be prepared A programmable logic controller characterized by:

2. The connector comprises: a first connector to which the output device is connected; a second connector for communicating with an external device; and The first connector and the second connector are arranged in a line on the surface on which the display is provided.

2. The programmable logic controller according to claim 1,

3. the first connector includes a first port to which the output device is connected; the second connector includes a second port for Ethernet (registered trademark) communication with an external device and a third port for Ethernet / IP (registered trademark) communication with the external device; The first port, the second port, and the third port are arranged in a line on the surface on which the display is provided.

3. The programmable logic controller according to claim 2.

4. The first connector and the second connector are provided in an inclined position with respect to the display surface of the display.

4. The programmable logic controller according to claim 2 or 3, wherein:

5. An indicator light that indicates the connection state of the first connector and the second connector is provided at a position away from the first connector and the second connector on the surface on which the display is provided.

4. The programmable logic controller according to claim 2 or 3, wherein:

6. The heat dissipation hole is provided on the side of the connector.

2. The programmable logic controller according to claim 1,

7. the heat dissipation hole is composed of a plurality of holes for dissipating heat from within the housing, The holes are formed side by side in a direction in which the first connector and the second connector are arranged side by side.

4. The programmable logic controller according to claim 2 or 3, wherein:

8. the housing includes an operation switch for performing an operation to change the operating states of the sequence program execution engine and the motion control program execution engine, The operation switch is provided below the display and to the side of the connector.

2. The programmable logic controller according to claim 1,

9. The heat radiation hole is provided below the operation switch and to the side of the connector.

9. The programmable logic controller of claim 8.

10. a basic unit including the sequence program execution engine, the memory, and the motion control program execution engine; an expansion unit connected to the base unit to expand the functionality of the base unit; and The housing stores the basic unit.

2. The programmable logic controller according to claim 1,

Citation Information

Patent Citations

  • Programmable logic controller and control method

    JP2017079008A