WO2019003276A1 - 対基板作業機用制御装置 - Google Patents

対基板作業機用制御装置 Download PDF

Info

Publication number
WO2019003276A1
WO2019003276A1 PCT/JP2017/023408 JP2017023408W WO2019003276A1 WO 2019003276 A1 WO2019003276 A1 WO 2019003276A1 JP 2017023408 W JP2017023408 W JP 2017023408W WO 2019003276 A1 WO2019003276 A1 WO 2019003276A1
Authority
WO
WIPO (PCT)
Prior art keywords
trace data
trace
substrate
output
data
Prior art date
Application number
PCT/JP2017/023408
Other languages
English (en)
French (fr)
Inventor
陽祐 寺西
Original Assignee
株式会社Fuji
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社Fuji filed Critical 株式会社Fuji
Priority to JP2019526411A priority Critical patent/JP6689463B2/ja
Priority to PCT/JP2017/023408 priority patent/WO2019003276A1/ja
Priority to US16/620,641 priority patent/US10990493B2/en
Priority to EP17915756.5A priority patent/EP3647957B1/en
Priority to CN201780092529.2A priority patent/CN110799950B/zh
Publication of WO2019003276A1 publication Critical patent/WO2019003276A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/348Circuit details, i.e. tracer hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/28Error detection; Error correction; Monitoring by checking the correct order of processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • G06F11/3072Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
    • G06F11/3075Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting the data filtering being achieved in order to maintain consistency among the monitored data, e.g. ensuring that the monitored data belong to the same timeframe, to the same system or component
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3636Software debugging by tracing the execution of the program
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3648Software debugging using additional hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • HELECTRICITY
    • H05ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
    • H05KPRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS
    • H05K13/00Apparatus or processes specially adapted for manufacturing or adjusting assemblages of electric components

Definitions

  • the present specification relates to a control device for a substrate work machine.
  • the substrate-to-substrate work machine includes a substrate transfer device for transferring a substrate, a component supply device for supplying components, and a component transfer device for transferring components onto the substrate.
  • the substrate working machine performs substrate production through a number of steps such as substrate transfer, component supply, and component transfer. Further, the substrate working machine can cope with the production of various kinds of substrates of different types and sizes.
  • the CPU writes trace data to a predetermined storage area via the memory controller.
  • the CPU and the memory controller are built in an IC chip.
  • the predetermined storage area is built in a DRAM attachable to and detachable from the IC chip.
  • the trace data written to the storage area is read by the read circuit according to the detection timing of the control signal from the memory controller to the DRAM, and is used for real time trace. Applying this real-time trace to the above-described substrate-to-substrate work machine is important for performing debugging and failure analysis to properly execute substrate production.
  • trace output is unnecessary during normal operation of the device, and is necessary only for debugging and failure analysis, and it is sufficient if only a part of trace data necessary for specific analysis can be output Therefore, if all the trace data stored in the storage area is read out and output is always performed, unnecessary processing occurs in the normal operation on the device side, and the processing load on the entire device increases. Resulting in.
  • This specification aims at providing a control device for a substrate work machine capable of appropriately performing execution of real-time trace while reducing processing load.
  • the present specification includes a processor that controls a substrate work machine, and a trace data output device that outputs trace data output from the processor to the outside, and the trace data output device is output from the processor
  • An output control unit which thins out the trace data written in the ring buffer and outputs it in real time, a trace register in which the trace data is temporarily stored, a ring buffer in which the trace data temporarily stored in the trace register is written, and And a control device for a substrate handling machine.
  • the trace data generated and output by the processor is temporarily stored in the trace register of the trace data output device and then written to the ring buffer, the trace data is thinned and output in real time. Ru. Therefore, according to the controller for substrate work machine, the processor does not always output all the trace data stored in the ring buffer of the trace data output device to the outside, so unnecessary output processing of unnecessary trace data Can be avoided. Therefore, the processing load in outputting the trace data can be reduced, whereby the execution of the real-time trace can be appropriately performed while reducing the processing load.
  • the configuration of the control device 10 for a substrate working machine according to the present embodiment will be described with reference to FIG. 1 to FIG.
  • the control apparatus for substrate work machine according to the present embodiment is a control apparatus mounted on the work substrate 1 for mounting components on a board such as a circuit board.
  • the work-to-substrate work machine 1 includes a substrate transfer device 20, a component supply device 30, and a component transfer device 40 as a component mounting device.
  • the substrate working machine 1 is, for example, various processing devices mounted in place of the parts feeder of the component supply device 30 (for example, a supply device for supplying flux to be transferred to the components, a recovery device for recovering waste components, mounting
  • the cleaning device may be provided to clean the nozzle of the head.
  • the substrate transfer apparatus 20 is an apparatus for transferring the substrate 2.
  • the substrate transfer apparatus 20 includes a pair of guide rails 21 and 22 and a substrate holding unit 23.
  • the substrate transport apparatus 20 transports the substrate 2 guided in the transport direction X by a pair of guide rails 21 and 22 placed on the substrate holding unit 23 and arranged in parallel with each other at an interval, by rotating the conveyor belt. Transport in direction X When the substrate 2 is transported by the substrate transport apparatus 20 to a predetermined component mounting position, the substrate 2 is positioned by the clamp device.
  • the guide rails 21 and 22 of the substrate transfer device 20, the substrate holding unit 23, and the clamp device may be replaced as appropriate depending on the type, size, shape, and the like of the substrate 2.
  • the component supply device 30 is a device that supplies components to be mounted on the substrate 2 to a predetermined supply position L.
  • the parts supply device 30 has a parts feeder 31.
  • the parts feeder 31 is detachably and exchangeably held in a slot provided on the main body side of the substrate working machine 1.
  • the parts feeder 31 detachably and rotatably holds a reel 32 on which a carrier tape containing a plurality of parts is wound.
  • the reels 32 are provided for each type of part.
  • the parts feeder 31 causes the carrier tape wound on the reel 32 to travel toward the predetermined supply position L by rotation of the electric motor.
  • the component transfer device 40 is a device for transferring a component supplied to a predetermined supply position L toward the substrate 2 positioned at the predetermined component mounting position.
  • the component transfer device 40 has a Y-axis slider 41, an X-axis slider 42, and a mounting head 43.
  • the Y-axis slider 41 is a device movable by a Y-axis servomotor along a guide rail extending in a direction (hereinafter, referred to as an orthogonal direction Y) orthogonal to the transport direction X of the substrate 2.
  • the X-axis slider 42 is attached to the Y-axis slider 41 so as to be movable in the transport direction X.
  • the X-axis slider 42 is integrally moved in the orthogonal direction Y integrally with the Y-axis slider 41 with the movement of the Y-axis slider 41 in the orthogonal direction Y, and the transport direction X of the substrate 2 by the X-axis servomotor.
  • the device is moved to the
  • the mounting head 43 is attached to the X-axis slider 42.
  • the mounting head 43 moves in the transport direction X as the X-axis slider 42 moves in the transport direction X, and moves in the orthogonal direction Y as the Y-axis slider 41 moves in the orthogonal direction Y.
  • the mounting head 43 is provided with a rotary head so as to be rotatable.
  • a spindle is provided to be able to move up and down on the rotary head.
  • a suction nozzle or a gripping chuck (hereinafter referred to as a nozzle or the like 44) is detachably attached to the tip of the spindle.
  • the nozzle or the like 44 is a member that holds the component that has reached the predetermined supply position L by suction or gripping.
  • the mounting head 43 can hold a plurality of nozzles 44 and the like.
  • the mounting head 43 and the nozzles 44 can be appropriately changed in accordance with the type, size, shape and the like of the target part
  • the nozzle or the like 44 can move in the vertical direction Z perpendicular to both the transport direction X and the orthogonal direction Y with respect to the rotary head of the mounting head 43.
  • the nozzle or the like 44 sucks and holds the component which has reached the predetermined supply position L of the component feeding device 30 using a negative pressure or the like, and releases the suctioned and held component to mount the predetermined component by the substrate conveyance device 20 It is placed on the substrate 2 positioned at the position.
  • the work-to-substrate work machine 1 includes the above-described work-to-board work machine control device 10 (hereinafter simply referred to as the control device 10).
  • the control device 10 is attached to the main body side of the substrate work machine 1 and is provided on a control substrate 1 a mounted on the substrate work machine 1.
  • the control device 10 is mainly configured of a computer, and can execute control processing by being supplied with power from a power supply. As shown in FIG. 2, the control device 10 includes a central processing unit (CPU) 11 and a main memory 12.
  • CPU central processing unit
  • the CPU 11 is communicably connected to a management server 50 provided in a factory where the substrate working machine 1 is installed.
  • the CPU 11 is also configured to operate the working parts of the apparatuses 20, 30, 40 (for example, the part feeder 31 to be used among the plurality of held part feeders 31, the plurality of nozzles 44 mounted on the mounting head 43, etc. Are connected to the nozzle etc. 44 to be used.
  • the CPU 11 communicates with those control devices instead of the CPU 11 being directly connected to the moving parts. It should be done.
  • the CPU 11 downloads a production job from the management server 50 and produces the substrate 2 in accordance with the production job. Specifically, according to the relationship between the production job stored in advance and the used devices and used parts, the working parts of each of the devices 20, 30, 40 to be used are selected from a plurality of them, and the working parts are mounted. Identify the mounting position and issue an operation command to the moving part.
  • the processing by the CPU 11 is executed based on a control program.
  • the CPU 11 transports the substrate 2 placed on the substrate holding unit 23 in the transport direction X by the substrate transport apparatus 20 according to the control program, and parts to be mounted on the substrate 2 are produced.
  • the component supply device 30 supplies the component to a predetermined supply position L, and the component transfer device 40 suctions and holds the component to transfer the component onto the substrate 2.
  • the CPU 11 controls the nozzle based on signals and image signals output from various sensors provided on the mounting head 43 and the like.
  • the control amount of 44 is calculated, and a control command is issued to the nozzle 44 or the like. As a result, the position, suction and the like of the nozzle 44 and the like are controlled.
  • the CPU 11 is connected to the main memory 12 via a bus 13 configured by an address bus and a data bus.
  • the main memory 12 has a control data area 12a as shown in FIG.
  • the control data area 12a is a memory area where control data used in a control program executed by the CPU 11 is written and read.
  • the control data area 12a can store a plurality of m pieces of control data.
  • the CPU 11 transmits control data used in the control program described above directly to the main memory 12 via the bus 13 and writes the control data in the control data area 12 a of the main memory 12. Control data is written and stored in the control data area 12a. In addition, the CPU 11 appropriately reads control data stored in the control data area 12a and uses it in a control program.
  • the CPU 11 also generates trace data necessary for tracing during debugging and failure analysis.
  • the trace data generated by the CPU 11 includes a trace data body and identifier information.
  • the trace data body is an instruction of each step executed by the CPU 11, a data value, a data address, a value of a register such as a program counter, or the like.
  • the identifier information is type data indicating the type of trace data main body in the trace data, and, for example, moving parts (for example, the mounting head 43 and the part feeder 31 etc.) used for And identification information of the type of software executed by the CPU 11 (for example, system software used in the OS layer, application software used in the application layer, etc.).
  • the identifier information is preferably stored in the header portion of the trace data.
  • the main memory 12 has a trace data area 12b separately from the control data area 12a.
  • the trace data area 12 b is a memory area in which trace data generated by execution of the CPU 11 is written.
  • the trace data area 12 b can store a plurality (n ⁇ m) pieces of trace data, and is configured in a ring buffer shape. The trace data generated by the CPU 11 is written and stored in the trace data area 12 b of the main memory 12 in the procedure described in detail later.
  • the control device 10 also includes a real time trace chip (hereinafter referred to as RTC) 14.
  • RTC 14 is a trace data output device that controls the output of trace data generated by the CPU 11 and output from the CPU 11 to the outside.
  • the RTC 14 is connected to the CPU 11 via the bus 13 and is connected to the CPU 11 in parallel with the main memory 12.
  • the RTC 14 includes a trace register 100, a ring buffer 110, a direct memory access (DMA) controller 120, an output control unit 130, and a first in first out (FIFO) 140, as shown in FIG. Have.
  • DMA direct memory access
  • FIFO first in first out
  • the CPU 11 writes the generated trace data into the trace register 100 of the RTC 14 via the bus 13.
  • the trace register 100 can temporarily store trace data for one frame.
  • the trace register 100 is connected to the ring buffer 110.
  • the trace data temporarily stored in the trace register 100 is transferred to the ring buffer 110 and written.
  • the ring buffer 110 is configured in a ring buffer shape.
  • the ring buffer 110 is divided into a plurality of predetermined areas, and can store a plurality of trace data simultaneously.
  • the ring buffer 110 is connected to the DMA controller 120.
  • the DMA controller 120 is a part that periodically performs DMA transfer to write the trace data stored in the ring buffer 110 into the trace data area 12 b of the main memory 12 via the bus 13.
  • the DMA controller 120 has a write counter register 121, a DMA address register 122, a timer 123, a DMA start register 124, and a DMA register 125.
  • the write counter register 121 is a register that counts the number of times of writing trace data from the trace register 100 to the ring buffer 110. The count value of the write counter register 121 is incremented by one each time trace data is written from the trace register 100 to the ring buffer 110 once.
  • the DMA address register 122 is a register that designates an address for DMA transfer of trace data by the DMA register 125 described later. The DMA address register 122 updates the address range of trace data that needs to be sent in the next DMA transfer based on the count value of the write counter register 121, and indicates the address range to the DMA register 125.
  • the timer 123 counts time since the last DMA transfer of trace data by the DMA register 125 was performed.
  • the count time of the timer 123 and the count value of the write counter register 121 are output to the DMA start register 124, respectively.
  • the DMA start register 124 is a register that instructs the DMA register 125 to start DMA transfer of trace data from the ring buffer 110 based on the count time of the timer 123 and the count value of the write counter register 121.
  • the DMA transfer instruction by the DMA start register 124 is issued when the ring buffer 110 becomes full in a predetermined cycle determined in advance or within the predetermined cycle. That is, when the count time of the timer 123, ie, the time from the previous DMA transfer, reaches a predetermined cycle, the DMA start register 124 detects the count of the write counter register 121 even if the count time has not reached that predetermined cycle. When the count value reaches a predetermined number at which the ring buffer 110 becomes full, the DMA register 125 is instructed to start DMA transfer.
  • the DMA transfer instruction from the DMA start register 124 is supplied to the write counter register 121.
  • the count value of the write counter register 121 is reset when the DMA transfer instruction from the DMA start register 124 is supplied. Thereafter, the count value of the write counter register 121 is incremented by one each time trace data is written to the ring buffer 110 from zero.
  • the DMA register 125 DMA-transfers the trace data stored in the ring buffer 110 to the main memory 12 and writes the trace data in the trace data area 12b.
  • the DMA transfer by the DMA register 125 is performed in accordance with the DMA transfer start instruction from the DMA start register 124. Then, the DMA transfer is to read the trace data of the address range instructed from the DMA address register 122 from the ring buffer 110 and write it in the trace data area 12 b of the main memory 12.
  • the ring buffer 110 is also connected to the output control unit 130.
  • the output control unit 130 controls the external output of trace data transferred from the trace register 100 to the ring buffer 110 and written.
  • the output control unit 130 can thin out and output trace data written to the ring buffer 110.
  • the thinning output of the trace data by the output control unit 130 is to output only the trace data of the target type set in advance at the output time among all the trace data written in the ring buffer 110.
  • the output control unit 130 may be able to control not to output the trace data written to the ring buffer 110 at all, and to output all the trace data written to the ring buffer 110. It may be controllable.
  • the target type of the above output trace data can be appropriately selected manually by the operator who handles the trace data. For example, when the operator desires real-time tracing on the mounting head 43, the target type is set to trace data on the mounting head 43. Also, when the worker desires real-time tracing on application software, this target type is set to trace data on the application software.
  • the output control unit 130 determines whether the written trace data is trace data of a target type set in advance at that time Determine if it is not. This determination is performed based on the identifier information included in the trace data. If the output control unit 130 determines that the trace data written in the ring buffer 110 is not of the target type, the output control unit 130 does not output the trace data. On the other hand, when the output control unit 130 determines that the trace data written in the ring buffer 110 is of the target type, the output control unit 130 outputs the trace data.
  • the output control unit 130 is connected to the FIFO 140.
  • the trace data output by the output control unit 130 is input to the FIFO 140.
  • the FIFO 140 can store trace data in a queue.
  • the FIFO 140 outputs the trace data input from the output control unit 130 to the outside in the order of the input. When a plurality of pieces of trace data are stored simultaneously, the trace data is output in the order of the oldest timings input to the FIFO 140.
  • the trace data output from the FIFO 140 is input to the external device 60 via the interface 15 for external output.
  • the external device 60 is a display device that can be viewed by the operator, a large-capacity external storage device that can store trace data, and the like.
  • the external device 60 is connected to the external output interface 15 of the control device 10 in a wireless or wired manner.
  • the external device 60 may be arranged outside the substrate working machine 1 as shown in FIG. 2 or may be arranged inside the substrate working machine 1. .
  • step S100 the CPU 11 generates trace data necessary for tracing
  • step S110 the CPU 11 sends the generated trace data to the bus 13 so as to be written to the trace register 100 of the RTC 14
  • Trace data sent from the CPU 11 to the bus 13 is written to the trace register 100 of the RTC 14.
  • step S120 the trace data is transferred to the ring buffer 110 and written (step S120).
  • step S120 the count value of the write counter register 121 of the DMA controller 120 is incremented by "1".
  • the writing of trace data to the trace register 100 by the CPU 11, the transfer of trace data from the trace register 100 to the ring buffer 110, and the increment of the count value by the write counter register 121 are performed every time trace data is generated by the CPU 11. To be repeated.
  • the DMA address register 122 updates the address range of trace data that needs to be sent in the next DMA transfer based on the count value of the write counter register 121, and indicates the address range to the DMA register 125. Also, the DMA start register 124 instructs the DMA register 125 to start the DMA transfer of the trace data from the ring buffer 110 based on the count time of the timer 123 and the count value of the write counter register 121. In this DMA transfer instruction, for example, when the time from the previous DMA transfer reaches a predetermined cycle, or even if the time does not reach that predetermined cycle, the count value of the write counter register 121 indicates that the ring buffer 110 It is executed when it reaches a predetermined number which becomes full.
  • DMA register 125 When DMA register 125 receives an instruction to start DMA transfer of trace data from DMA start register 124, DMA register 125 reads trace data in the address range designated from DMA address register 122 from ring buffer 110, and then reads the main memory 12. The DMA function transfers and writes to the trace data area 12b (step S130).
  • the CPU 11 in order to write the trace data generated by the CPU 11 into the main memory 12, the CPU 11 only needs to execute the process of writing the trace data into the trace register 100 of the RTC 14.
  • the trace data is DMA-transferred from the trace register 100 via the ring buffer 110 by the DMA register 125 of the DMA controller 120 and written to the main memory 12. .
  • Writing of trace data to the main memory 12 is not performed directly from the CPU 11 to the main memory 12.
  • Writing from the CPU 11 to the trace register 100 of the RTC 14 is performed, and the writing is performed indirectly via the ring buffer 110 after the writing.
  • the main memory 12 If the data writing by the CPU 11 is performed to the trace register 100, the data writing is performed at high speed as compared to the one to be performed to the main memory 12. Therefore, according to the control device 10, it is possible to appropriately store the trace data generated by the CPU 11 in the main memory 12, and to reduce the time required for writing the trace data by the CPU 11 for realizing the storage.
  • the output control unit 130 when trace data is written from the trace register 100 of the RTC 14 to the ring buffer 110, the output control unit 130 traces the trace data of the output target type based on the identifier information included in the trace data. It is determined whether it is data (step S140). When the output control unit 130 determines that the trace data is trace data of the output target type, the output control unit 130 outputs the trace data to the FIFO 140. The FIFO 140 outputs the trace data input from the output control unit 130 to the external device 60 via the external output interface 15 in the order of the input (step S150).
  • the trace data generated by the CPU 11 is written in the trace register 100 of the RTC 14 to output the trace data to the external device 60 in real time via the ring buffer 110 and the FIFO 140. be able to. Therefore, according to the control device 10, in order to output trace data to the external device 60 in real time, the CPU 11 only needs to perform processing for writing trace data in the trace register 100 of the RTC 14, thus increasing the processing load on the CPU 11. Real-time output of trace data can be realized without.
  • the CPU 11 performs a process of writing trace data in the trace register 100 of the RTC 14 to automatically transfer the trace data from the trace register 100 to the ring buffer 110.
  • Both writing to the memory 12 (specifically, the trace data area 12b) and real-time output of the trace data can be realized. Therefore, it is possible to avoid that writing to the main memory 12 and real-time output are started by separate triggers, respectively, and processing load can be reduced or processing can be simplified.
  • control device 10 thins out trace data generated by the CPU 11 and outputs the thinned data to the external device 60. That is, the trace data output from the control device 10 to the external device 60 is of an object type set in advance among all the trace data written from the CPU 11 to the trace register 100 of the RTC 14. Therefore, by appropriately setting the target type of trace data to be output, unnecessary trace data is excluded from all the trace data generated by the CPU 11, and only necessary trace data is external device 60. It can be output to
  • the trace data on the parts feeder 31 is set as the trace data of the output target type, so that the parts feeder among all the trace data generated by the CPU 11 Only trace data relating to 31 is output from the control device 10 to the external device 60 in real time.
  • trace data related to the system software is set as trace data of the output target type, so that all trace data generated by the CPU 11 Only trace data related to system software is output from the control device 10 to the external device 60 in real time.
  • the control device 10 includes the CPU 11 that controls the substrate working machine 1 and the RTC 14 that outputs trace data output from the CPU 11 to the outside.
  • the RTC 14 thins out the trace data written in the ring buffer 110, the trace register 100 in which the trace data output from the CPU 11 is temporarily stored, the trace data temporarily stored in the trace register 100, and the ring buffer 110.
  • an output control unit 130 for outputting in real time.
  • control device 10 further includes a main memory 12.
  • the main memory 12 includes a control data area 12a in which control data used by the CPU 11 is written by the CPU 11 and a trace data area 12b in which all trace data written in the ring buffer 110 are periodically transferred by the DMA function and written. Have.
  • an area to which control data is written in the main memory is divided into an area to which trace data is written. Therefore, it is possible to prevent the control data used by the CPU 11 and the trace data generated by the CPU 11 from being mixed in the main memory. Also, only by the CPU 11 performing processing of writing trace data in the trace register 100 of the RTC 14, after transfer of trace data from the trace register 100 to the ring buffer 110, writing of the trace data in the trace data area 12 b of the main memory 12 And both real-time output of the trace data are realized. Therefore, the processing load can be reduced or the processing can be simplified. Furthermore, since the data writing by the CPU 11 is performed in the trace register 100, the data writing is performed at a high speed as compared with the one performed in the main memory 12. Therefore, while the trace data generated by the CPU 11 is appropriately stored in the main memory 12, the time required for writing the trace data by the CPU 11 for realizing the storage can be reduced.
  • trace data includes a trace data body and identifier information indicating the type of the trace data body.
  • the output control unit 130 thins out and outputs trace data according to the type data of the trace data written to the ring buffer 110. Further, the output control unit 130 outputs trace data related to a preselected type of trace data written to the ring buffer 110.
  • the external output of the trace data by the output control unit 130 is thinned out according to the type of the trace data. Therefore, trace data output in real time can be limited to a specific type of data.
  • the substrate working machine 1 has a plurality of moving parts of the devices 20, 30, 40 used for the substrate working.
  • the above-mentioned type data of trace data is set according to each of the plurality of moving parts. Then, the output control unit 130 outputs, among the plurality of moving parts among the trace data written in the ring buffer 110, the trace data related to the moving parts determined in advance. Further, the above-described type data of trace data is set according to the type of software including system software and application software. Then, the output control unit 130 outputs, among the trace data written in the ring buffer 110, trace data regarding predetermined software.
  • control device 10 is provided on a control board 1 a mounted on the substrate working machine 1. According to this configuration, real-time trace output and trace data storage to the main memory 12 can be executed by the control device 10 provided on the side of the substrate work machine 1.
  • Board-to-board work machine 2 Board: 10: Board-to-board work machine control device 11: CPU (processor) 12: Main memory 13: Bus 14: RTC (real-time trace chip) 20: Board transfer Device 30: Component supply device 40: Component transfer device 50: Management server 60: External device 100: Trace register 110: Ring buffer 120: DMA controller 130: Output controller 140: FIFO.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Manufacturing & Machinery (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Debugging And Monitoring (AREA)
  • Supply And Installment Of Electrical Components (AREA)

Abstract

対基板作業機用制御装置は、リアルタイムトレースの実行を処理負荷を軽減しつつ適切に行うべく、対基板作業機を制御するプロセッサと、プロセッサから出力されるトレースデータを外部へ出力するトレースデータ出力装置と、を備え、トレースデータ出力装置は、プロセッサから出力されるトレースデータが一時記憶されるトレースレジスタと、トレースレジスタに一時記憶されたトレースデータが書き込まれるリングバッファと、リングバッファに書き込まれたトレースデータを間引いてリアルタイムで出力する出力制御部と、を有する。

Description

対基板作業機用制御装置
 本明細書は、対基板作業機用制御装置に関する。
 電子部品などの部品を基板に装着する対基板作業機がある。対基板作業機は、基板を搬送する基板搬送装置と、部品を供給する部品供給装置と、部品を基板に移載する部品移載装置と、を備えている。対基板作業機は、基板の搬送、部品の供給、及び部品の移載などの多数の工程を経て基板生産を行う。また、対基板作業機は、種類やサイズの異なる多品種の基板の生産に対応することができる。
 ところで、リアルタイムトレースを実行可能なシステムが知られている(例えば特許文献1参照)。このシステムにおいて、CPUは、トレースデータをメモリコントローラを介して所定の記憶領域に書き込む。CPU及びメモリコントローラは、ICチップに内蔵されている。所定の記憶領域は、ICチップに着脱可能なDRAMに内蔵されている。記憶領域に書き込まれたトレースデータは、読み出し回路によりメモリコントローラからDRAMへの制御信号の検出タイミングに従って読み出され、リアルタイムトレースに用いられる。このリアルタイムトレースを上記の対基板作業機に適用することは、デバッグや不具合解析を行って基板生産を適切に実行させるうえで重要である。
特開2016-91277号公報
 上記のトレースシステムでは、リアルタイムトレースを実現するのに、CPUによる記憶領域へのトレースデータの書き込みと、読み出し回路による記憶領域からのトレースデータの読み出し出力と、をそれぞれ行うことが必要である。しかしながら、トレース出力は、装置の通常動作時には不要であり、デバッグ時や不具合解析時にのみ必要であると共に、また、特定の解析等のために必要な一部のトレースデータのみを出力できれば十分であるので、記憶領域に記憶されているトレースデータのすべてが読み出し出力されかつその読み出し出力が常時行われるものとすると、装置側で通常動作時に無駄な処理が発生して装置全体での処理負荷が増大してしまう。
 本明細書は、リアルタイムトレースの実行を処理負荷を軽減しつつ適切に行うことが可能な対基板作業機用制御装置を提供することを目的とする。
 本明細書は、対基板作業機を制御するプロセッサと、前記プロセッサから出力されるトレースデータを外部へ出力するトレースデータ出力装置と、を備え、前記トレースデータ出力装置は、前記プロセッサから出力される前記トレースデータが一時記憶されるトレースレジスタと、前記トレースレジスタに一時記憶された前記トレースデータが書き込まれるリングバッファと、前記リングバッファに書き込まれた前記トレースデータを間引いてリアルタイムで出力する出力制御部と、を有する、対基板作業機用制御装置を開示する。
 本開示によれば、プロセッサが生成して出力したトレースデータが、トレースデータ出力装置のトレースレジスタに一時記憶され、その後にリングバッファに書き込まれると、そのトレースデータは間引かれてリアルタイムで出力される。従って、対基板作業機用制御装置によれば、プロセッサからトレースデータ出力装置のリングバッファに記憶されたトレースデータのすべてを外部へ常時出力するものではないので、不要なトレースデータの無駄な出力処理が発生するのを回避することができる。このため、トレースデータを出力するうえでの処理負荷を軽減することができ、これにより、リアルタイムトレースの実行を処理負荷を軽減しつつ適切に行うことができる。
一実施形態に係る対基板作業機用制御装置が搭載される対基板作業機の構成図である。 本実施形態の対基板作業機を備えるシステムの構成図、及び、対基板作業機用制御装置のブロック図である。 本実施形態のメインメモリの内部構成図、及び、データ領域ごとのデータの構造図である。 本実施形態の対基板作業機用制御装置のブロック図である。 本実施形態の対基板作業機用制御装置において実行される処理の一例のフローチャートである。
 1.対基板作業機用制御装置の構成
 本実施形態に係る対基板作業機用制御装置10の構成について、図1~図5を参照して説明する。本実施形態の対基板作業機用制御装置10は、回路基板などの基板に対して部品を装着する対基板作業機1に搭載される制御装置である。対基板作業機1は、図1に示す如く、部品装着機として、基板搬送装置20と、部品供給装置30と、部品移載装置40と、を備えている。尚、対基板作業機1は、例えば部品供給装置30のパーツフィーダに替えて搭載される各種の処理装置(例えば、部品へ転写するフラックスを供給する供給装置や廃棄部品を回収する回収装置,装着ヘッドのノズルを清掃する清掃装置)を備えるものであってよい。
 基板搬送装置20は、基板2を搬送する装置である。基板搬送装置20は、一対のガイドレール21,22と、基板保持部23と、を有している。基板搬送装置20は、基板保持部23に載置され、間隔を空けて互いに平行に配置された一対のガイドレール21,22により搬送方向Xに案内される基板2を、コンベアベルトの輪転により搬送方向Xに向けて搬送する。基板2は、基板搬送装置20により所定の部品装着位置まで搬送されると、クランプ装置により位置決めされる。基板搬送装置20のガイドレール21,22や基板保持部23,クランプ装置は、基板2の種類やサイズ,形状等に応じて適宜交換可能であってよい。
 部品供給装置30は、基板2に装着する部品を所定の供給位置Lまで供給する装置である。部品供給装置30は、パーツフィーダ31を有している。パーツフィーダ31は、対基板作業機1の本体側に設けられたスロットに着脱可能かつ交換可能に保持される。パーツフィーダ31は、部品を複数個収容したキャリアテープが巻回されるリール32を着脱可能かつ回転可能に保持している。リール32は、部品の種類ごとに設けられている。パーツフィーダ31は、リール32に巻回されているキャリアテープを電動モータの回転により部品が所定の供給位置Lへ向けて走行させる。
 部品移載装置40は、所定の供給位置Lまで供給された部品を、所定の部品装着位置に位置決めされている基板2に向けて移載する装置である。部品移載装置40は、Y軸スライダ41と、X軸スライダ42と、装着ヘッド43と、を有している。
 Y軸スライダ41は、Y軸サーボモータにより、基板2の搬送方向Xに直交する方向(以下、直交方向Yと称す。)に延びるガイドレールに沿って移動可能な装置である。X軸スライダ42は、Y軸スライダ41に搬送方向Xへ向けて移動可能に取り付けられている。X軸スライダ42は、Y軸スライダ41の直交方向Yへの移動に伴ってそのY軸スライダ41に一体でその直交方向Yへ位置移動されると共に、X軸サーボモータにより基板2の搬送方向Xへ位置移動される装置である。
 装着ヘッド43は、X軸スライダ42に取り付けられている。装着ヘッド43は、X軸スライダ42の搬送方向Xへの移動に伴って搬送方向Xに移動すると共に、Y軸スライダ41の直交方向Yへの移動に伴って直交方向Yに移動する。装着ヘッド43には、ロータリヘッドが回転可能に設けられている。このロータリヘッドには、スピンドルが上下動可能に設けられている。このスピンドルの先端には、吸着ノズル又は把持チャック(以下、ノズル等44と称す。)が着脱可能に取り付けられている。ノズル等44は、所定の供給位置Lに到達した部品を吸着或いは把持により保持する部材である。装着ヘッド43には、複数のノズル等44が保持可能である。装着ヘッド43やノズル等44は、対象部品の種類やサイズ,形状等に応じて適宜変更可能である。
 ノズル等44は、装着ヘッド43のロータリヘッドに対して、搬送方向X及び直交方向Yの双方に直交する上下方向Zに位置移動可能である。ノズル等44は、部品供給装置30の所定の供給位置Lに到達した部品を負圧などを用いて吸着把持すると共に、その吸着把持した部品をその解除により、基板搬送装置20により所定の部品装着位置に位置決めされた基板2上に載置する。
 対基板作業機1は、上記の対基板作業機用制御装置10(以下、単に、制御装置10と称す。)を備えている。制御装置10は、対基板作業機1の本体側に取り付けられており、対基板作業機1に搭載される制御基板1a上に設けられている。制御装置10は、コンピュータを主体に構成されており、電源から電力供給されることにより制御処理を実行することが可能である。制御装置10は、図2に示す如く、CPU(Central Processing Unit)11と、メインメモリ12と、を備えている。
 CPU11は、対基板作業機1が設置される工場内などに設けられた管理サーバ50に通信接続されている。CPU11は、また、装置20,30,40の各稼働部品(例えば、複数保持されたパーツフィーダ31のうちから使用すべきパーツフィーダ31や、装着ヘッド43に装着された複数のノズル等44のうちから使用すべきノズル等44)に接続されている。尚、各装置20,30,40それぞれが自己の稼働部品を制御する制御装置を有する場合は、CPU11が各稼働部品に直接に接続されることに代えて、CPU11がそれらの制御装置に通信接続されていればよい。
 CPU11は、管理サーバ50から生産ジョブをダウンロードし、その生産ジョブに従って基板2の生産を行う。具体的には、予め記憶している生産ジョブと使用装置や使用部品との関係に従って、使用すべき各装置20,30,40の稼働部品を複数のうちから選択し、その稼働部品が装着された装着位置を特定し、その稼働部品に対して作動指令を行う。
 このCPU11による処理は、制御プログラムに基づいて実行される。CPU11は、一枚の基板2を生産するうえで、制御プログラムに従って、基板保持部23に載置された基板2を基板搬送装置20で搬送方向Xに搬送し、その基板2に装着する部品を部品供給装置30で所定の供給位置Lまで供給し、その部品を部品移載装置40で吸着把持して基板2に移載する処理を実行する。CPU11は、例えば、装着ヘッド43の位置やノズル等44の吸着や把持等の動作を制御する場合、制御プログラムに従って、装着ヘッド43などに設けられる各種センサの出力する信号や画像信号に基づいてノズル等44の制御量を演算し、そのノズル等44に対して制御指令を行う。これにより、ノズル等44の位置や吸着等が制御される。
 CPU11は、アドレスバス及びデータバスによって構成されたバス13を介してメインメモリ12に接続されている。メインメモリ12は、図3に示す如く、制御データ領域12aを有している。制御データ領域12aは、CPU11の実行する制御プログラムにおいて使用する制御データが書き込まれかつ読み出されるメモリ領域である。制御データ領域12aは、複数m個の制御データを記憶することが可能である。
 CPU11は、上記した制御プログラムにおいて使用する制御データを、バス13を介して直接にメインメモリ12へ送信して、メインメモリ12の制御データ領域12aに書き込む。制御データは、制御データ領域12aに書き込まれて記憶される。また、CPU11は、制御データ領域12aに記憶されている制御データを適宜読み出して制御プログラムにおいて使用する。
 CPU11は、また、デバッグ時や不具合解析時のトレースに必要なトレースデータを生成する。CPU11の生成するトレースデータは、トレースデータ本体と、識別子情報と、を含む。トレースデータ本体は、CPU11で実行される各ステップの命令、データ値、データアドレス、プログラムカウンタなどのレジスタの値などである。また、識別子情報は、そのトレースデータ内のトレースデータ本体の種類を示す種類データであって、例えば、対基板作業機1による対基板作業に用いる稼働部品(例えば、装着ヘッド43やパーツフィーダ31など)の識別情報や、CPU11が実行したソフトウェアの種類(例えば、OS層で利用されるシステムソフトウェアやアプリ層で利用されるアプリケーションソフトウェアなど)の情報などを含む。尚、識別子情報は、トレースデータのヘッダ部に格納されるのがよい。
 メインメモリ12は、図3に示す如く、上記の制御データ領域12aとは別に、トレースデータ領域12bを有している。トレースデータ領域12bは、CPU11の実行により生成されたトレースデータが書き込まれるメモリ領域である。トレースデータ領域12bは、複数(n-m)個のトレースデータを記憶可能であり、リングバッファ状に構成されている。CPU11の生成したトレースデータは、後に詳述する手順で、メインメモリ12のトレースデータ領域12bに書き込まれて記憶される。
 制御装置10は、また、リアルタイムトレースチップ(以下、RTCと称す。)14を備えている。RTC14は、CPU11が生成してCPU11から出力されたトレースデータの外部への出力を制御するトレースデータ出力装置である。RTC14は、バス13を介してCPU11に接続されており、メインメモリ12と並列でCPU11に接続されている。RTC14は、図4に示す如く、トレースレジスタ100と、リングバッファ110と、DMA(Direct Memory Access;ダイレクトメモリアクセス)コントローラ120と、出力制御部130と、FIFO(First In First Out)140と、を有している。
 CPU11は、上記の生成したトレースデータをバス13を介してRTC14のトレースレジスタ100に書き込む。トレースレジスタ100は、一フレーム分のトレースデータを一時記憶することが可能である。トレースレジスタ100は、リングバッファ110に接続されている。トレースレジスタ100に一時記憶されたトレースデータは、リングバッファ110に転送されて書き込まれる。リングバッファ110は、リングバッファ状に構成されている。リングバッファ110は、所定複数個の領域に区分けされており、複数個のトレースデータを同時に記憶することが可能である。
 リングバッファ110は、DMAコントローラ120に接続されている。DMAコントローラ120は、リングバッファ110に記憶されているトレースデータをバス13を介してメインメモリ12のトレースデータ領域12bに書き込むDMA転送を定期的に行う部位である。DMAコントローラ120は、書込カウンタレジスタ121と、DMA用アドレスレジスタ122と、タイマ123と、DMA開始レジスタ124と、DMAレジスタ125と、を有している。
 書込カウンタレジスタ121は、トレースレジスタ100からリングバッファ110へのトレースデータの書き込み回数をカウントするレジスタである。書込カウンタレジスタ121のカウント値は、トレースレジスタ100からリングバッファ110へトレースデータが一回書き込まれるごとに一カウントずつインクリメントされる。DMA用アドレスレジスタ122は、後述のDMAレジスタ125によるトレースデータのDMA転送のためのアドレスを指示するレジスタである。DMA用アドレスレジスタ122は、書込カウンタレジスタ121のカウント値に基づいて、次のDMA転送で送る必要のあるトレースデータのアドレス範囲を更新し、そのアドレス範囲をDMAレジスタ125に対して指示する。
 タイマ123は、前回、DMAレジスタ125によるトレースデータのDMA転送が行われた時点からの時間を計数する。タイマ123の計数時間及び書込カウンタレジスタ121のカウント値はそれぞれ、DMA開始レジスタ124に出力される。DMA開始レジスタ124は、タイマ123の計数時間及び書込カウンタレジスタ121のカウント値に基づいて、DMAレジスタ125に対してリングバッファ110からのトレースデータのDMA転送の開始を指示するレジスタである。
 DMA開始レジスタ124によるDMA転送指示は、予め定められた所定周期で或いはその所定周期内においてリングバッファ110が満杯になった際に行われる。すなわち、DMA開始レジスタ124は、タイマ123の計数時間すなわち前回DMA転送からの時間が所定周期に達した場合、或いは、その計数時間がその所定周期に達していなくても、書込カウンタレジスタ121のカウント値がリングバッファ110が満杯になる所定数に達した場合に、DMAレジスタ125に対してDMA転送の開始を指示する。
 DMA開始レジスタ124によるDMA転送指示は、書込カウンタレジスタ121に供給される。書込カウンタレジスタ121のカウント値は、DMA開始レジスタ124によるDMA転送指示が供給された場合にリセットされる。以後、書込カウンタレジスタ121のカウント値は、ゼロからリングバッファ110へのトレースデータの書き込みごとに一カウントずつインクリメントされる。
 DMAレジスタ125は、リングバッファ110に記憶されているトレースデータを、メインメモリ12にDMA転送してそのトレースデータ領域12bに書き込む。DMAレジスタ125によるDMA転送は、DMA開始レジスタ124からのDMA転送の開始指示に従って行われる。そして、そのDMA転送は、DMA用アドレスレジスタ122から指示されたアドレス範囲のトレースデータをリングバッファ110から読み出してメインメモリ12のトレースデータ領域12bへ書き込むものである。
 リングバッファ110は、また、出力制御部130に接続されている。出力制御部130は、トレースレジスタ100からリングバッファ110に転送されて書き込まれたトレースデータの外部出力を制御する部位である。出力制御部130は、リングバッファ110に書き込まれたトレースデータを間引いて出力することができる。出力制御部130によるトレースデータの間引き出力は、リングバッファ110に書き込まれたすべてのトレースデータのうち、予めその出力時点で設定められている対象種類のトレースデータのみを出力するものである。尚、出力制御部130は、リングバッファ110に書き込まれたトレースデータを全く出力しないように制御できるものであってもよく、また、リングバッファ110に書き込まれたすべてのトレースデータを出力するように制御できるものであってもよい。
 上記の出力されるトレースデータの対象種類は、トレースデータを扱う作業者による手作業で適宜選択可能である。例えば、作業者が装着ヘッド43に関するリアルタイムトレースを希望する場合は、この対象種類は、装着ヘッド43に関するトレースデータに設定される。また、作業者がアプリケーションソフトウェアに関するリアルタイムトレースを希望する場合は、この対象種類は、そのアプリケーションソフトウェアに関するトレースデータに設定される。
 出力制御部130は、トレースレジスタ100からリングバッファ110にトレースデータが転送されて書き込まれた場合に、その書き込まれたトレースデータが予めその時点で設定められている対象種類のトレースデータであるか否かを判別する。この判別は、トレースデータに含まれる識別子情報に基づいて行われる。出力制御部130は、リングバッファ110に書き込まれたトレースデータが対象種類のものでないと判別した場合は、そのトレースデータの出力を行わない。一方、出力制御部130は、リングバッファ110に書き込まれたトレースデータが対象種類のものであると判別した場合は、そのトレースデータを出力する。
 出力制御部130は、FIFO140に接続されている。出力制御部130が出力したトレースデータは、FIFO140に入力される。FIFO140は、トレースデータをキューに格納することが可能である。FIFO140は、出力制御部130から入力したトレースデータをその入力順に外部へ出力する。複数個のトレースデータが同時に格納されたときは、そのFIFO140に入力したタイミングの古い順にトレースデータが出力される。FIFO140の出力したトレースデータは、外部出力用インタフェース15を介して外部装置60に入力される。
 外部装置60は、作業者が視認可能な表示装置やトレースデータを記憶可能な大容量の外部記憶装置などである。外部装置60は、制御装置10の外部出力用インタフェース15に無線又は有線で通信接続される。尚、外部装置60は、図2に示す如く対基板作業機1の外部に配置されるものであってもよいし、また、対基板作業機1の内部に配置されるものであってもよい。
 2.トレースデータの処理
 次に、制御装置10におけるトレースデータの処理について説明する。
 制御装置10において、CPU11は、トレースに必要なトレースデータを生成する(図5におけるステップS100)。そして、CPU11は、生成したトレースデータを、RTC14のトレースレジスタ100に書き込まれるようにバス13へ送出する(ステップS110)。CPU11からバス13へ送出されたトレースデータは、RTC14のトレースレジスタ100に書き込まれる。トレースレジスタ100にトレースデータが書き込まれると、そのトレースデータは、リングバッファ110に転送されて書き込まれる(ステップS120)。トレースレジスタ100からリングバッファ110にトレースデータが書き込まれると、DMAコントローラ120の書込カウンタレジスタ121のカウント値が"1"だけインクリメントされる。
 上記したCPU11によるトレースレジスタ100へのトレースデータの書き込み、トレースレジスタ100からリングバッファ110へのトレースデータの転送、及び書込カウンタレジスタ121によるカウント値のインクリメントは、CPU11でトレースデータが生成されるごとに繰り返し行われる。
 DMA用アドレスレジスタ122は、書込カウンタレジスタ121のカウント値に基づいて、次のDMA転送で送る必要のあるトレースデータのアドレス範囲を更新し、そのアドレス範囲をDMAレジスタ125に対して指示する。また、DMA開始レジスタ124は、タイマ123の計数時間及び書込カウンタレジスタ121のカウント値に基づいて、DMAレジスタ125に対してリングバッファ110からのトレースデータのDMA転送の開始を指示する。このDMA転送指示は、例えば、前回DMA転送からの時間が所定周期に達した場合、或いは、その時間がその所定周期に達していなくても、書込カウンタレジスタ121のカウント値がリングバッファ110が満杯になる所定数に達した場合に、実行される。
 DMAレジスタ125は、DMA開始レジスタ124からトレースデータのDMA転送の開始指示を受けると、DMA用アドレスレジスタ122から指示されたアドレス範囲のトレースデータを、リングバッファ110から読み出したうえでメインメモリ12のトレースデータ領域12bへDMA機能により転送して書き込む(ステップS130)。
 このように、制御装置10においては、CPU11の生成したトレースデータをメインメモリ12に書き込むうえで、CPU11はそのトレースデータをRTC14のトレースレジスタ100に書き込む処理を行うのみでよい。CPU11がトレースデータをRTC14のトレースレジスタ100に書き込むと、そのトレースデータは、そのトレースレジスタ100からリングバッファ110を経由して、DMAコントローラ120のDMAレジスタ125によりDMA転送されてメインメモリ12に書き込まれる。
 トレースデータのメインメモリ12への書き込みは、CPU11からメインメモリ12に直接に行われるものではなく、まずCPU11からRTC14のトレースレジスタ100への書き込みが行われ、その書き込み後にリングバッファ110を介して間接的にメインメモリ12に行われるものである。CPU11によるデータ書込みがトレースレジスタ100に行われるものであれば、メインメモリ12に行われるものに比してそのデータ書込みが高速に行われる。従って、制御装置10によれば、CPU11の生成したトレースデータをメインメモリ12に適切に記憶させつつ、その記憶実現のためのCPU11によるトレースデータの書き込みに要する時間を減らすことができる。
 また、制御装置10において、トレースデータがRTC14のトレースレジスタ100からリングバッファ110に書き込まれると、出力制御部130は、そのトレースデータに含まれる識別子情報に基づいてそのトレースデータが出力対象種類のトレースデータであるか否かを判別する(ステップS140)。そして、出力制御部130は、そのトレースデータが出力対象種類のトレースデータであると判別した場合に、そのトレースデータをFIFO140へ出力する。FIFO140は、出力制御部130から入力したトレースデータをその入力順に外部出力用インタフェース15を介して外部装置60へ向けて出力する(ステップS150)。
 このように、制御装置10においては、CPU11が生成したトレースデータをRTC14のトレースレジスタ100に書き込む処理を行うことで、そのトレースデータをリングバッファ110及びFIFO140を介して外部装置60へリアルタイムで出力することができる。従って、制御装置10によれば、トレースデータを外部装置60へリアルタイムで出力するうえで、CPU11がトレースデータをRTC14のトレースレジスタ100に書き込む処理を行うだけでよいので、CPU11での処理負荷を増やすことなくトレースデータのリアルタイム出力を実現することができる。
 これらにより、制御装置10によれば、CPU11がトレースデータをRTC14のトレースレジスタ100に書き込む処理を行うことで、そのトレースレジスタ100からリングバッファ110へのトレースデータの自動転送後に、そのトレースデータのメインメモリ12(具体的には、トレースデータ領域12b)への書き込みと、そのトレースデータのリアルタイム出力と、の双方を実現することができる。このため、そのメインメモリ12への書き込みとリアルタイム出力とがそれぞれ別々のトリガで開始されるのを回避することができ、処理負荷の低減ないし処理の簡素化を図ることができる。
 また、制御装置10は、CPU11が生成したトレースデータを間引いて外部装置60へ出力する。すなわち、制御装置10から外部装置60へ出力されるトレースデータは、CPU11からRTC14のトレースレジスタ100に書き込まれたすべてのトレースデータのうち予め設定された対象種類のものである。このため、出力すべきトレースデータの対象種類を適切に設定することで、CPU11が生成したすべてのトレースデータのうち不要な種類のトレースデータを除外して必要な種類のトレースデータのみを外部装置60へ出力することができる。
 例えば、作業者がパーツフィーダ31に関するリアルタイムトレースを希望する場合は、出力対象種類のトレースデータとしてパーツフィーダ31に関するトレースデータが設定されることで、CPU11が生成したすべてのトレースデータのうちそのパーツフィーダ31に関するトレースデータのみが制御装置10から外部装置60へリアルタイム出力される。また、作業者がシステムソフトウェア(OS層)に関するリアルタイムトレースを希望する場合は、出力対象種類のトレースデータとしてシステムソフトウェアに関するトレースデータが設定されることで、CPU11が生成したすべてのトレースデータのうちそのシステムソフトウェアに関するトレースデータのみが制御装置10から外部装置60へリアルタイム出力される。
 従って、制御装置10によれば、CPU11からRTC14側に記憶されたトレースデータのすべてを外部装置60へ常時出力するものではなく、不要な種類のトレースデータの無駄な出力処理が発生するのを回避することができる。このため、トレースデータを出力するうえでの処理負荷を軽減することができ、これにより、リアルタイムトレースの実行を処理負荷を軽減しつつ適切に行うことができ、デバッグや不具合解析の効率を向上させることができる。
 以上、説明したことから明らかなように、本実施形態の制御装置10は、対基板作業機1を制御するCPU11と、CPU11から出力されるトレースデータを外部へ出力するRTC14と、を備える。RTC14は、CPU11から出力されるトレースデータが一時記憶されるトレースレジスタ100と、トレースレジスタ100に一時記憶されたトレースデータが書き込まれるリングバッファ110と、リングバッファ110に書き込まれたトレースデータを間引いてリアルタイムで出力する出力制御部130と、を有する。
 この構成によれば、CPU11が生成して出力したトレースデータが、RTC14のトレースレジスタ100に一時記憶され、その後にリングバッファ110に書き込まれると、そのトレースデータは間引かれてリアルタイムで出力される。従って、制御装置10によれば、CPU11からRTC14のリングバッファ110に記憶されたトレースデータのすべてを外部(具体的には、外部装置60)へ常時出力するものではないので、不要なトレースデータの無駄な出力処理が発生するのを回避することができる。このため、トレースデータを出力するうえでの処理負荷を軽減することができ、これにより、リアルタイムトレースの実行を処理負荷を軽減しつつ適切に行うことができる。
 制御装置10において、制御装置10は、更に、メインメモリ12を備える。メインメモリ12は、CPU11によりCPU11が用いる制御データが書き込まれる制御データ領域12aと、リングバッファ110に書き込まれた全てのトレースデータがDMA機能により定期的に転送されて書き込まれるトレースデータ領域12bと、を有する。
 この構成によれば、メインメモリでの制御データが書き込まれる領域とトレースデータが書き込まれる領域とが分かれる。このため、メインメモリ内でCPU11が用いる制御データとCPU11が生成したトレースデータとが混在するのを防止することができる。また、CPU11がRTC14のトレースレジスタ100にトレースデータを書き込む処理を行うだけで、トレースレジスタ100からリングバッファ110へのトレースデータの転送後、そのトレースデータのメインメモリ12のトレースデータ領域12bへの書き込みと、そのトレースデータのリアルタイム出力と、の双方が実現される。このため、処理負荷の低減ないし処理の簡素化を図ることができる。更に、CPU11によるデータ書込みがトレースレジスタ100に行われるので、メインメモリ12に行われるものに比してそのデータ書込みが高速に行われる。このため、CPU11の生成したトレースデータをメインメモリ12に適切に記憶させつつ、その記憶実現のためのCPU11によるトレースデータの書き込みに要する時間を減らすことができる。
 制御装置10において、トレースデータは、トレースデータ本体と、そのトレースデータ本体の種類を示す識別子情報と、を含む。出力制御部130は、リングバッファ110に書き込まれたトレースデータの種類データに従ってトレースデータを間引いて出力する。また、出力制御部130は、リングバッファ110に書き込まれたトレースデータのうち、予め選択された種類に関するトレースデータを出力する。
 この構成によれば、出力制御部130によるトレースデータの外部出力が、そのトレースデータの種類に従って間引いて行われる。このため、リアルタイム出力されるトレースデータを特定種類のデータに限定することができる。
 具体的には、対基板作業機1は、対基板作業に用いる装置20,30,40の複数の稼働部品を有する。上記のトレースデータの種類データは、それら複数の稼働部品それぞれに応じて設定されている。そして、出力制御部130は、リングバッファ110に書き込まれたトレースデータのうち、それら複数の稼働部品のうち予め定めた稼働部品に関するトレースデータを出力する。また、上記のトレースデータの種類データは、システムソフトウェア及びアプリケーションソフトウェアを含むソフトウェアの種類に応じて設定されている。そして、出力制御部130は、リングバッファ110に書き込まれたトレースデータのうち、予め定めたソフトウェアに関するトレースデータを出力する。
 更に、制御装置10は、対基板作業機1に搭載される制御基板1aに設けられている。この構成によれば、対基板作業機1側に設けられた制御装置10でリアルタイムトレース出力及びメインメモリ12へのトレースデータ記憶等を実行することができる。
 尚、本発明は、上述した実施形態や変形例に限定されるものではなく、本発明の趣旨を逸脱しない範囲で種々の変更を施すことが可能である。
 1:対基板作業機、2:基板、10:対基板作業機用制御装置、11:CPU(プロセッサ)、12:メインメモリ、13:バス、14:RTC(リアルタイムトレースチップ)、20:基板搬送装置、30:部品供給装置、40:部品移載装置、50:管理サーバ、60:外部装置、100:トレースレジスタ、110:リングバッファ、120:DMAコントローラ、130:出力制御部、140:FIFO。

Claims (7)

  1.  対基板作業機を制御するプロセッサと、
     前記プロセッサから出力されるトレースデータを外部へ出力するトレースデータ出力装置と、
     を備え、
     前記トレースデータ出力装置は、
     前記プロセッサから出力される前記トレースデータが一時記憶されるトレースレジスタと、
     前記トレースレジスタに一時記憶された前記トレースデータが書き込まれるリングバッファと、
     前記リングバッファに書き込まれた前記トレースデータを間引いてリアルタイムで出力する出力制御部と、
     を有する、対基板作業機用制御装置。
  2.  前記対基板作業機用制御装置は、更に、メインメモリを備え、
     前記メインメモリは、
     前記プロセッサにより前記プロセッサが用いる制御データが書き込まれる制御データ領域と、
     前記リングバッファに書き込まれた全ての前記トレースデータがダイレクトメモリアクセス機能により定期的に転送されて書き込まれるトレースデータ領域と、
     を有する、請求項1に記載の対基板作業機用制御装置。
  3.  前記トレースデータは、トレースデータ本体と、前記トレースデータ本体の種類を示す種類データと、を含み、
     前記出力制御部は、前記リングバッファに書き込まれた前記トレースデータの前記種類データに従って該トレースデータを間引いて出力する、請求項1又は2に記載の対基板作業機用制御装置。
  4.  前記出力制御部は、前記リングバッファに書き込まれた前記トレースデータのうち、予め選択された種類に関する前記トレースデータを出力する、請求項3に記載の対基板作業機用制御装置。
  5.  前記対基板作業機は、対基板作業に用いる複数の稼働部品を有し、
     前記種類データは、前記複数の稼働部品それぞれに応じて設定されており、
     前記出力制御部は、前記リングバッファに書き込まれた前記トレースデータのうち、前記複数の稼働部品のうち予め定めた稼働部品に関する前記トレースデータを出力する、請求項4に記載の対基板作業機用制御装置。
  6.  前記種類データは、システムソフトウェア及びアプリケーションソフトウェアを含むソフトウェアの種類に応じて設定されており、
     前記出力制御部は、前記リングバッファに書き込まれた前記トレースデータのうち、予め定めたソフトウェアに関する前記トレースデータを出力する、請求項4に記載の対基板作業機用制御装置。
  7.  前記対基板作業機用制御装置は、前記対基板作業機に搭載される制御基板に設けられている、請求項1乃至6の何れか一項に記載の対基板作業機用制御装置。
PCT/JP2017/023408 2017-06-26 2017-06-26 対基板作業機用制御装置 WO2019003276A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2019526411A JP6689463B2 (ja) 2017-06-26 2017-06-26 対基板作業機用制御装置
PCT/JP2017/023408 WO2019003276A1 (ja) 2017-06-26 2017-06-26 対基板作業機用制御装置
US16/620,641 US10990493B2 (en) 2017-06-26 2017-06-26 Substrate-related operation machine control device
EP17915756.5A EP3647957B1 (en) 2017-06-26 2017-06-26 Substrate-related operation machine control device
CN201780092529.2A CN110799950B (zh) 2017-06-26 2017-06-26 对基板作业机用控制装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2017/023408 WO2019003276A1 (ja) 2017-06-26 2017-06-26 対基板作業機用制御装置

Publications (1)

Publication Number Publication Date
WO2019003276A1 true WO2019003276A1 (ja) 2019-01-03

Family

ID=64741983

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2017/023408 WO2019003276A1 (ja) 2017-06-26 2017-06-26 対基板作業機用制御装置

Country Status (5)

Country Link
US (1) US10990493B2 (ja)
EP (1) EP3647957B1 (ja)
JP (1) JP6689463B2 (ja)
CN (1) CN110799950B (ja)
WO (1) WO2019003276A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011054619A (ja) * 2009-08-31 2011-03-17 Hitachi Kokusai Electric Inc 基板処理装置
JP2016091277A (ja) 2014-11-04 2016-05-23 京セラドキュメントソリューションズ株式会社 トレースシステムおよびicチップ

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7146473B1 (en) * 2003-11-14 2006-12-05 Sun Microsystems, Inc. Mechanism for ring buffering in an arbitrary-action tracing framework
CN100518482C (zh) * 2004-07-26 2009-07-22 株式会社日立制作所 部件追踪管理装置、管理方法及管理程序
US9164868B2 (en) * 2012-12-27 2015-10-20 Infineon Technologies Ag Multi-tier trace

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011054619A (ja) * 2009-08-31 2011-03-17 Hitachi Kokusai Electric Inc 基板処理装置
JP2016091277A (ja) 2014-11-04 2016-05-23 京セラドキュメントソリューションズ株式会社 トレースシステムおよびicチップ

Also Published As

Publication number Publication date
US10990493B2 (en) 2021-04-27
EP3647957A4 (en) 2020-05-06
CN110799950A (zh) 2020-02-14
US20200142797A1 (en) 2020-05-07
JPWO2019003276A1 (ja) 2020-02-27
JP6689463B2 (ja) 2020-04-28
CN110799950B (zh) 2023-08-15
EP3647957A1 (en) 2020-05-06
EP3647957B1 (en) 2022-10-19

Similar Documents

Publication Publication Date Title
JP2007012929A (ja) 表面実装機の干渉チェック方法、干渉チェック装置、同装置を備えた表面実装機、及び実装システム
JP6294891B2 (ja) 搭載位置最適化プログラム
JP6053572B2 (ja) 実装装置及び実装方法
JP2009238873A (ja) 部品実装方法
JP4676302B2 (ja) 表面実装機および表面実装機の制御方法
WO2014141427A1 (ja) 実装設定方法及び実装設定装置
WO2019003276A1 (ja) 対基板作業機用制御装置
EP3128825B1 (en) Electronic component mounting device
JP6746788B2 (ja) 部品装着機用ヘッド
WO2016181439A1 (ja) 実装装置及び実装方法
US11553633B2 (en) Mounting device, information processing device, mounting method, and information processing method
JP6424236B2 (ja) 対基板作業管理装置
JP6472805B2 (ja) 対基板作業装置
JP6236307B2 (ja) 部品実装機
JP6139948B2 (ja) 部品実装装置
WO2019097671A1 (ja) 演算装置
WO2017138089A1 (ja) 作業処理支援方法
WO2017037865A1 (ja) 要求精度設定装置
JP6349546B2 (ja) 部品実装方法
JP7277603B2 (ja) 稼働状況表示装置および稼働状況表示方法
JP7110318B2 (ja) 部品実装システム及び、部品保持方法
WO2024084703A1 (ja) 部品装着作業機及び装着ライン
WO2022254704A1 (ja) 基板生産管理装置、基板生産管理方法、基板生産管理プログラムおよび記録媒体
JP2024001769A (ja) 基板作業機及び基板作業方法
JP2022065172A (ja) 要求精度設定装置

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: 17915756

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2019526411

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2017915756

Country of ref document: EP

Effective date: 20200127