WO2023243000A1 - ロボット制御装置 - Google Patents

ロボット制御装置 Download PDF

Info

Publication number
WO2023243000A1
WO2023243000A1 PCT/JP2022/023969 JP2022023969W WO2023243000A1 WO 2023243000 A1 WO2023243000 A1 WO 2023243000A1 JP 2022023969 W JP2022023969 W JP 2022023969W WO 2023243000 A1 WO2023243000 A1 WO 2023243000A1
Authority
WO
WIPO (PCT)
Prior art keywords
control device
robot control
ethernet
packet
processing
Prior art date
Application number
PCT/JP2022/023969
Other languages
English (en)
French (fr)
Inventor
恵典 長野
Original Assignee
ファナック株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ファナック株式会社 filed Critical ファナック株式会社
Priority to PCT/JP2022/023969 priority Critical patent/WO2023243000A1/ja
Priority to TW112118560A priority patent/TW202400377A/zh
Publication of WO2023243000A1 publication Critical patent/WO2023243000A1/ja

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators

Definitions

  • the present invention relates to a robot control device.
  • a known technique is that when a teaching pendant is operated, operation information is sent to a robot control device, and the operation information is processed by the robot control device.
  • the teaching pendant and the robot control device use Ethernet (registered trademark) communication, and send and receive data by dividing it into packets. If Ethernet communication between the teaching pendant and the robot control device is possible, the teaching pendant can be operated. For example, when the teaching screen displayed on the teaching pendant changes (transitions), teaching screen information is sequentially sent from the robot control device to the teaching pendant.
  • the robot control device is equipped with a plurality of Ethernet ports for communicating with devices such as a teaching pendant via Ethernet.
  • a robot control device uses one processor (for example, a CPU) to perform processing related to multiple Ethernet ports.
  • the processor has a function called interrupt processing, and uses the interrupt processing to stop the processing that was being performed up to that point and perform processing starting from the processing with the highest priority.
  • interrupt processing uses the interrupt processing to stop the processing that was being performed up to that point and perform processing starting from the processing with the highest priority.
  • the processor receives a large number of packets and performs interrupt processing many times, making it impossible to perform other processing.
  • One aspect of the robot control device of the present disclosure is a robot control device that can be connected to at least one device via Ethernet, and includes a control unit and a plurality of Ethernet ports, and the control unit is connected to the plurality of Ethernet ports.
  • a detection unit configured to detect a state of packet loss in at least one Ethernet port among the ports; and a detection unit configured to perform interrupt processing on a packet from at least one of the plurality of Ethernet ports, a transition unit that transitions the interrupt processing to polling processing when the interrupt processing exceeds a preset threshold.
  • interrupt processing of an Ethernet port where Ethernet communication congestion has occurred can execute processing of other Ethernet ports without being hindered.
  • FIG. 1 is a diagram of a functional block configuration of a robot control system according to an embodiment. It is a diagram of the functional block configuration of the teaching pendant. 3 is a flowchart illustrating migration processing of the robot control device.
  • FIG. 1 is a diagram of a functional block configuration of a robot control system according to an embodiment.
  • the robot control system SYS includes a robot control device 1, a teaching pendant 2, and network devices 3-1 to 3-2.
  • the robot control device 1, the teaching pendant 2, and the network devices 3-1 to 3-2 are connected to each other via a network (not shown) such as a LAN (Local Area Network) or the Internet, and perform Ethernet communication.
  • a network such as a LAN (Local Area Network) or the Internet
  • the robot control device 1, teaching pendant 2, and network devices 3-1 to 3-2 are equipped with a communication section (not shown) for mutually performing Ethernet communication through such connections.
  • FIG. 2 is a functional block diagram of the teaching pendant 2. As shown in FIG. As shown in FIG. 2, the teaching pendant 2 includes a control section 210 and a storage section 220. Further, the control section 210 includes a packet transmitting/receiving section 211.
  • the storage unit 220 is, for example, an SSD (Solid State Drive) or an HDD (Hard Disk Drive), and stores an OS and various software.
  • SSD Solid State Drive
  • HDD Hard Disk Drive
  • the Ethernet port 230 is connected to the robot control device 1, which will be described later, via a LAN cable, and transmits and receives Ethernet communication signals between the control unit 210 and the robot control device 1.
  • the control unit 210 includes a CPU, ROM, RAM, CMOS memory, etc., which are configured to be able to communicate with each other via a bus, which are well known to those skilled in the art.
  • the CPU is a processor that controls the teaching pendant 2 as a whole.
  • the CPU reads the system program and application program stored in the ROM via the bus, and controls the entire teaching pendant 2 according to the system program and application program.
  • the control section 210 is configured to realize the functions of the packet transmitting/receiving section 211.
  • Various data such as temporary calculation data and display data are stored in the RAM.
  • the CMOS memory is backed up by a battery (not shown) and is configured as a non-volatile memory that retains its stored state even when the teaching pendant 2 is powered off.
  • the packet transmitting/receiving unit 211 generates a packet storing data including operation information based on the Ethernet communication standard in order to perform Ethernet communication with the robot control device 1, which will be described later, and sends the generated packet to the robot control device. 1 and causes the robot control device 1 to execute interrupt processing. Further, the packet transmitting/receiving unit 211 receives a packet from the robot control device 1 and extracts data from the received packet. Note that when the packet transmitting/receiving unit 211 receives a notification that the robot control device 1 (to be described later) will perform a polling process, the packet transmitting/receiving unit 211 transmits a packet to the robot control device 1 every time it receives a polling process inquiry from the robot control device 1. Send.
  • the network devices 3-1 to 3-2 are, for example, servers, etc., and collect data indicating the operating status of the robot control device 1, a robot (not shown), etc., and robot programs and setting data executed by the robot control device 1. etc., etc. Note that the network devices 3-1 to 3-2 may have the same functions as the teaching pendant 2 in FIG.
  • the robot control device 1 is a robot control device known to those skilled in the art, and may be directly connected to a robot (not shown) via a connection interface (not shown). Further, the robot control device 1 may be connected to a robot (not shown) via a network (not shown) such as a LAN (Local Area Network) or the Internet.
  • the robot control device 1 generates commands based on a robot program created using, for example, the teaching pendant 2, and transmits the generated commands to a robot (not shown). Thereby, the robot control device 1 controls the operation of a robot (not shown).
  • the robot control device 1 includes a control section 10, a storage section 20, and three Ethernet ports 30-1 to 30-3. Further, the control unit 10 includes a detection unit 110 and a transition unit 120.
  • the storage unit 20 is, for example, an SSD (Solid State Drive) or an HDD (Hard Disk Drive), and stores an OS, various software, and various setting files.
  • the OS is, for example, an operating system (OS) or a system program executed by the robot control device 1.
  • the various types of software include, for example, application programs that implement various functions such as robot operation programs (not shown) and cache line control of the robot control device 1.
  • the various setting files are, for example, setting files for software stored in various software.
  • Ethernet ports 30-1 to 30-3 are connected to the teaching pendant 2 and the network devices 3-1 to 3-2, respectively, by LAN cables, and the control unit 10 and the teaching pendant 2, and transmits and receives Ethernet communication packets to and from each of the network devices 3-1 to 3-2.
  • the control unit 10 and the teaching pendant 2 transmits and receives Ethernet communication packets to and from each of the network devices 3-1 to 3-2.
  • Ethernet ports 30 when there is no need to distinguish each of the Ethernet ports 30-1 to 30-3 individually, these will also be collectively referred to as "Ethernet ports 30."
  • the robot control device 1 may have two or more Ethernet ports 30 other than three.
  • the control unit 10 includes a CPU, ROM, RAM, CMOS memory, etc., which are configured to be able to communicate with each other via a bus, which are well known to those skilled in the art.
  • the CPU is a processor that controls the robot control device 1 as a whole.
  • the CPU reads the system program and application program stored in the ROM via the bus, and controls the entire robot control device 1 according to the system program and application program.
  • the control unit 10 is configured to realize the functions of the detection unit 110 and the transition unit 120.
  • Various data such as temporary calculation data and display data are stored in the RAM.
  • the CMOS memory is backed up by a battery (not shown) and is configured as a non-volatile memory that maintains its storage state even when the power to the robot control device 1 is turned off. Note that when the CPU, which is the processor of the robot control device, receives packets of a predetermined value or more from the Ethernet port 30, it executes interrupt processing for the packets from the Ethernet port 30.
  • the detection unit 110 detects a packet loss situation in at least one Ethernet port 30 among the Ethernet ports 30-1 to 30-3. Specifically, the detection unit 110 detects, for example, the amount of packets lost at the Ethernet port 30 over a certain period of time (eg, 500 msec, 1 second, etc.). Note that the packet loss may also include packets that could not be received from the teaching pendant 2 or the network devices 3-1 to 3-2.
  • the transition unit 120 performs interrupt processing on a packet from at least one Ethernet port 30 among the Ethernet ports 30-1 to 30-3, and the loss of the packet detected by the detection unit 110 is set in advance. If the threshold is exceeded, interrupt processing is shifted to polling processing. Specifically, the transition unit 120, for example, transitions the processing for packets from the Ethernet port 30 in which packet loss exceeding a threshold has been detected from interrupt processing to polling processing, and transfers processing to the device connected to the Ethernet port 30. A notification signal to the effect that polling processing will be executed is transmitted to the host.
  • the transition unit 120 sets the polling cycle at the time of transition to a low cycle (for example, 100 msec, etc.) that is the first cycle so that a predetermined time (for example, 1 second, etc.) can be secured for processing the packet. do.
  • the transition unit 120 shortens the polling cycle from the first cycle (eg, 100 msec, etc.) to the second cycle (eg, 50 msec, etc.) after a predetermined period of time (eg, 1 second, etc.) has elapsed.
  • the transition unit 120 shortens the second cycle stepwise to an upper limit value (for example, 1 msec, etc.) every time a predetermined period of time passes.
  • the transition unit 120 returns from polling processing to interrupt processing.
  • the migration unit 120 may transmit a notification signal to the device connected to the Ethernet port 30 to indicate that the polling process is to be terminated.
  • the robot control device 1 does not interfere with the processing of other Ethernet ports 30 due to the reception interrupt processing of the Ethernet port 30 where Ethernet communication congestion has occurred, and the teaching pendant 2 and network equipment 3- Communication with 1 to 3-2 will never stop.
  • the robot control device 1 can receive the operation information of the teaching pendant 2, process it appropriately, and send it back to the teaching pendant 2, and the teaching pendant 2 can always be operated.
  • FIG. 3 is a flowchart illustrating the transition process of the robot control device 1. The flow shown here is executed every time a predetermined amount of packets are received from the Ethernet port 30 and interrupt processing is executed for the packets of the Ethernet port 30.
  • step S11 the detection unit 110 determines whether the packet loss detected at the Ethernet port 30 for a certain period of time (for example, 500 msec, 1 second, etc.) exceeds a preset threshold. If the packet loss exceeds the threshold, the process proceeds to step S12. On the other hand, if the packet loss is less than or equal to the threshold, the process waits in step S11.
  • a certain period of time for example, 500 msec, 1 second, etc.
  • step S12 the transition unit 120 transitions the processing for the Ethernet port 30 in which packet loss exceeding the threshold has been detected from interrupt processing to polling processing, and sets the polling cycle at the time of the transition to a first cycle (for example, 100 msec, etc.). Set to .
  • a first cycle for example, 100 msec, etc.
  • step S13 the transition unit 120 shortens the polling cycle every time a predetermined period of time (for example, 1 second, etc.) elapses. Note that when the polling cycle reaches the upper limit value (for example, 1 msec, etc.), the transition unit 120 leaves the polling cycle at the upper limit value.
  • a predetermined period of time for example, 1 second, etc.
  • step S14 the migration unit 120 determines whether the packet loss detected by the detection unit 110 has become equal to or less than a threshold value. If the packet loss is less than or equal to the threshold, the process proceeds to step S15. On the other hand, if the packet loss exceeds the threshold, the process returns to step S13.
  • step S15 the transition unit 120 transitions from polling processing to interrupt processing for the Ethernet port 30 whose packet loss is below the threshold value.
  • the robot control device 1 shifts the processing for the Ethernet port 30 where the detected packet loss exceeds a preset threshold from interrupt processing to polling processing. Thereby, the robot control device 1 can execute the processing of other Ethernet ports 30 without being hindered by the interrupt processing of the Ethernet port 30 where Ethernet communication congestion has occurred. In addition, the robot control device 1 does not interfere with the processing of other Ethernet ports 30 due to reception interruptions of the Ethernet port 30 where congestion has occurred, and the robot control device 1 can communicate with the teaching pendant 2 and the network devices 3-1 to 3-2. Communication will never stop. Thereby, the robot control device 1 can receive the operation information of the teaching pendant 2, process it appropriately, and send it back to the teaching pendant 2, and the teaching pendant 2 can be operated at all times.
  • the robot control device 1 is not limited to the above-described embodiment, and includes modifications, improvements, etc. within a range that can achieve the purpose.
  • each function included in the robot control device 1 in one embodiment can be realized by hardware, software, or a combination thereof.
  • being realized by software means being realized by a computer reading and executing a program.
  • Non-transitory computer-readable media include various types of tangible storage media. Examples of non-transitory computer-readable media are magnetic recording media (e.g., flexible disks, magnetic tapes, hard disk drives), magneto-optical recording media (e.g., magneto-optical disks), CD-ROMs (Read Only Memory), CD-ROMs, R, CD-R/W, semiconductor memory (for example, mask ROM, PROM (Programmable ROM), EPROM (Erasable PROM), flash ROM, RAM).
  • the program may also be provided to the computer on various types of transitory computer readable media. Examples of transitory computer-readable media include electrical signals, optical signals, and electromagnetic waves.
  • the temporary computer-readable medium can provide the program to the computer via wired communication channels such as electrical wires and optical fibers, or via wireless communication channels.
  • the step of writing a program to be recorded on a recording medium includes not only processes that are performed in chronological order, but also processes that are not necessarily performed in chronological order but are executed in parallel or individually. It also includes.
  • the robot control device of the present disclosure can take various embodiments having the following configurations.
  • the robot control device 1 of the present disclosure is a robot control device that can be connected to at least one device via Ethernet, and includes a control unit 10 and a plurality of Ethernet ports 30, and the control unit 10 has a plurality of A detection unit 110 detects a packet loss situation in at least one Ethernet port 30 among the plurality of Ethernet ports 30, and interrupt processing is performed on a packet from at least one Ethernet port 30 among the plurality of Ethernet ports 30. , and a transition unit 120 that transitions interrupt processing to polling processing when the packet loss exceeds a preset threshold. According to this robot control device 1, interrupt processing of an Ethernet port where Ethernet communication congestion has occurred can execute processing of other Ethernet ports without being hindered.
  • the transition unit 120 may transition the polling process to an interrupt process when the packet loss detected by the detection unit 110 becomes less than a threshold value.
  • control unit 10 may execute interrupt processing when receiving a predetermined amount of packets from the connected Ethernet port.
  • the polling process is executed in the first cycle for a predetermined time, and after the predetermined time has elapsed, the polling process is executed in the first cycle. It may be executed in a short second period.
  • the second period may be shortened in steps.
  • the packet loss may include a packet that could not be received from the device.
  • the device may be the teaching pendant 2.
  • Robot control device Teaching operation panel 3-1 to 3-2 Network equipment 10, 210 Control section 110 Detection section 120 Transition section 20, 220 Storage section 30-1 to 30-3, 230 Ethernet port SYS Robot control system

Abstract

イーサネット通信の混雑が発生したイーサネットポートの割込み処理によって、他のイーサネットポートの処理が妨げられることなく実行できること。 ロボット制御装置は、少なくとも1つの機器とイーサネットで接続可能なロボット制御装置であって、制御部と、複数のイーサネットポートと、を備え、前記制御部は、前記複数のイーサネットポートのうち少なくとも1つのイーサネットポートにおけるパケットのロスの状況を検知する検知部と、前記複数のイーサネットポートのうち少なくとも1つのイーサネットポートからのパケットに対して割込み処理が行われ、かつ前記パケットのロスが予め設定された閾値を超えている場合に、前記割込み処理をポーリング処理に移行させる移行部と、を備える。

Description

ロボット制御装置
 本発明は、ロボット制御装置に関する。
 教示操作盤を操作するとロボット制御装置に操作情報が送られ、ロボット制御装置で操作情報が処理される技術が知られている。例えば、特許文献1参照。
 教示操作盤とロボット制御装置とは、イーサネット(登録商標)通信が用いられており、パケットというデータ形式でデータを小分けして送受信を行っている。教示操作盤とロボット制御装置との間のイーサネット通信が可能であれば教示操作盤の操作が可能となる。例えば、教示操作盤に表示される教示画面が変更(遷移)する場合、ロボット制御装置から教示操作盤へ教示画面情報が順次送られる。
特開2006-142480号公報
 ところで、ロボット制御装置は、教示操作盤等の装置とイーサネット通信するための複数のイーサネットポートを備えている。ロボット制御装置は、複数のイーサネットポートに関わる処理を1つのプロセッサ(例えば、CPU)で行っている。このため、プロセッサは、割込み処理という機能を有し、割込み処理によりそれまで行っていた処理を止めて優先度の高い処理から行う。
 イーサネット通信が混雑しているとき、プロセッサは、大量のパケットを受信し割り込み処理が幾度も行うことにより、他の処理ができなくなってしまうという問題がある。
 そこで、イーサネット通信の混雑が発生したイーサネットポートの割込み処理によって、他のイーサネットポートの処理が妨げられることなく実行できることが望まれている。
 本開示のロボット制御装置の一態様は、少なくとも1つの機器とイーサネットで接続可能なロボット制御装置であって、制御部と、複数のイーサネットポートと、を備え、前記制御部は、前記複数のイーサネットポートのうち少なくとも1つのイーサネットポートにおけるパケットのロスの状況を検知する検知部と、前記複数のイーサネットポートのうち少なくとも1つのイーサネットポートからのパケットに対して割込み処理が行われ、かつ前記パケットのロスが予め設定された閾値を超えている場合に、前記割込み処理をポーリング処理に移行させる移行部と、を備える。
 一態様によれば、イーサネット通信の混雑が発生したイーサネットポートの割込み処理によって、他のイーサネットポートの処理が妨げられることなく実行できる。
一実施形態に係るロボット制御システムの機能ブロック構成の図である。 教示操作盤の機能ブロック構成の図である。 ロボット制御装置の移行処理について説明するフローチャートである。
 以下、一実施形態に係るロボット制御装置ついて、図を参照しながら詳細に説明する。
<一実施形態>
 図1は、一実施形態に係るロボット制御システムの機能ブロック構成の図である。
 図1に示すように、ロボット制御システムSYSは、ロボット制御装置1、教示操作盤2、及びネットワーク機器3-1~3-2を有する。
 ロボット制御装置1、教示操作盤2、及びネットワーク機器3-1~3-2は、LAN(Local Area Network)やインターネット等の図示しないネットワークを介して相互に接続され、イーサネット通信を行っている。この場合、ロボット制御装置1、教示操作盤2、及びネットワーク機器3-1~3-2は、かかる接続によって相互にイーサネット通信を行うための図示しない通信部を備えている。
<教示操作盤2>
 教示操作盤2は、ロボット制御装置1と接続され、ユーザによって図示しないロボットを操作し、ロボットプログラムを作成するようにしてもよい。
 図2は、教示操作盤2の機能ブロック構成の図である。
 図2に示すように、教示操作盤2は、制御部210、及び記憶部220を有する。また、制御部210は、パケット送受信部211を有する。
 記憶部220は、例えば、SSD(Solid State Drive)やHDD(Hard Disk Drive)等であり、OS、各種ソフトウェアを記憶する。
 イーサネットポート230は、後述するロボット制御装置1とLANケーブルで繋げられ、制御部210とロボット制御装置1との間でイーサネット通信の信号を送受信する。
 制御部210は、CPU、ROM、RAM、CMOSメモリ等を有し、これらはバスを介して相互に通信可能に構成される、当業者にとって公知のものである。
 CPUは教示操作盤2を全体的に制御するプロセッサである。CPUは、ROMに格納されたシステムプログラム及びアプリケーションプログラムを、バスを介して読み出し、システムプログラム及びアプリケーションプログラムに従って教示操作盤2全体を制御する。これにより、図2に示すように、制御部210は、パケット送受信部211の機能を実現するように構成される。RAMには一時的な計算データや表示データ等の各種データが格納される。CMOSメモリは図示しないバッテリでバックアップされ、教示操作盤2の電源がオフされても記憶状態が保持される不揮発性メモリとして構成される。
 パケット送受信部211は、後述するロボット制御装置1との間でイーサネット通信を行うために、イーサネット通信の規格に基づいて操作情報を含むデータを格納したパケットを生成し、生成したパケットをロボット制御装置1に送信し、ロボット制御装置1に割込み処理を実行させる。また、パケット送受信部211は、ロボット制御装置1からパケットを受信し、受信したパケットからデータを取り出す。
 なお、パケット送受信部211は、後述するロボット制御装置1がポーリング処理を実行する旨の通知を受信した場合、ロボット制御装置1からポーリング処理の問い合わせを受信する毎に、パケットをロボット制御装置1に送信する。
<ネットワーク機器3-1~3-2>
 ネットワーク機器3-1~3-2は、例えば、サーバ等であり、ロボット制御装置1や図示しないロボット等の動作状態を示すデータを収集したり、ロボット制御装置1が実行するロボットプログラムや設定データ等を記憶したりする。
 なお、ネットワーク機器3-1~3-2は、図2の教示操作盤2と同様の機能を有してもよい。
<ロボット制御装置1>
 ロボット制御装置1は、当業者にとって公知のロボット制御装置であり、図示しない接続インタフェースを介して図示しないロボットと直接接続されてもよい。また、ロボット制御装置1は、LAN(Local Area Network)やインターネット等の図示しないネットワークを介して図示しないロボットと接続されていてもよい。
 ロボット制御装置1は、例えば、教示操作盤2等を用いて作成されたロボットプログラムに基づいて指令を生成し、生成した指令をロボット(図示しない)に送信する。これにより、ロボット制御装置1は、図示しないロボットの動作を制御する。
 図1に示すように、ロボット制御装置1は、制御部10と、記憶部20と、3つのイーサネットポート30-1~30-3と、を有する。また、制御部10は、検知部110と、移行部120と、を有する。
 記憶部20は、例えば、SSD(Solid State Drive)やHDD(Hard Disk Drive)等であり、OS、各種ソフトウェア、各種設定用ファイルを記憶する。
 OSは、例えば、ロボット制御装置1で実行されるオペレーティングシステム(OS)やシステムプログラムである。
 各種ソフトウェアは、例えば、図示しないロボットの動作プログラムやロボット制御装置1のキャッシュラインの制御等の各種機能を実現するアプリケーションプログラム等のソフトウェアである。
 各種設定用ファイルは、例えば、各種ソフトウェアに格納されるソフトウェアに対する設定ファイル等である。
 イーサネットポート30-1~30-3は、図1に示すように、教示操作盤2、及びネットワーク機器3-1~3-2それぞれとLANケーブルで繋げられ、制御部10と教示操作盤2、及びネットワーク機器3-1~3-2それぞれとの間でイーサネット通信のパケットを送受信する。
 なお、以下、イーサネットポート30-1~30-3それぞれを個々に区別する必要がない場合、これらをまとめて「イーサネットポート30」ともいう。
 また、ロボット制御装置1は、3つ以外の2以上の複数のイーサネットポート30を有してもよい。
 制御部10は、CPU、ROM、RAM、CMOSメモリ等を有し、これらはバスを介して相互に通信可能に構成される、当業者にとって公知のものである。
 CPUはロボット制御装置1を全体的に制御するプロセッサである。CPUは、ROMに格納されたシステムプログラム及びアプリケーションプログラムを、バスを介して読み出し、システムプログラム及びアプリケーションプログラムに従ってロボット制御装置1全体を制御する。これにより、図1に示すように、制御部10は、検知部110、及び移行部120の機能を実現するように構成される。RAMには一時的な計算データや表示データ等の各種データが格納される。CMOSメモリは図示しないバッテリでバックアップされ、ロボット制御装置1の電源がオフされても記憶状態が保持される不揮発性メモリとして構成される。
 なお、ロボット制御装置のプロセッサであるCPUは、イーサネットポート30から予め設定された所定値以上のパケットを受信すると、当該イーサネットポート30からのパケットに対して割込み処理を実行する。
 検知部110は、イーサネットポート30-1~30-3のうち少なくとも1つのイーサネットポート30におけるパケットのロスの状況を検知する。
 具体的には、検知部110は、例えば、イーサネットポート30において一定の時間(例えば、500msecや1秒等)でロスしたパケットの量を検知する。なお、パケットのロスは、教示操作盤2又はネットワーク機器3-1~3-2から受信できなかったパケットも含まれてもよい。
 移行部120は、イーサネットポート30-1~30-3のうち少なくとも1つのイーサネットポート30からのパケットに対して割込み処理が行われ、かつ検知部110により検知されたパケットのロスが予め設定された閾値を超えている場合に、割込み処理をポーリング処理に移行させる。
 具体的には、移行部120は、例えば、閾値を超えるパケットのロスが検知されたイーサネットポート30からのパケットに対する処理を割込み処理からポーリング処理に移行させ、当該イーサネットポート30に接続された機器に対してポーリング処理を実行する旨の通知の信号を送信する。そして、移行部120は、パケットを処理する時間を所定の時間(例えば、1秒等)確保できるように、移行時のポーリング周期を第1の周期である低周期(例えば、100msec等)に設定する。移行部120は、所定の時間(例えば、1秒等)経過すると、ポーリング周期を第1の周期(例えば、100msec等)から第2の周期(例えば、50msec等)と短くする。そして、移行部120は、所定の時間経過毎に第2の周期を上限値(例えば、1msec等)まで段階的に短くする。その後、移行部120は、ポーリング処理に移行したイーサネットポート30のパケットのロスが閾値以下になった場合、ポーリング処理から割込み処理に戻す。この場合、移行部120は、当該イーサネットポート30に接続された機器に対してポーリング処理を終了する旨の通知の信号を送信するようにしてもよい。
 そうすることで、ロボット制御装置1は、イーサネット通信の混雑が発生したイーサネットポート30の受信の割込み処理によって、他のイーサネットポート30の処理を妨げることがなくなり、教示操作盤2やネットワーク機器3-1~3-2との通信が止まることがなくなる。これにより、ロボット制御装置1は、教示操作盤2の操作情報を受信し、適切に処理して教示操作盤2へ返送することが可能となり、常に教示操作盤2の操作が可能になる。
<ロボット制御装置1の移行処理>
 次に、図3を参照しながら、ロボット制御装置1の移行処理の流れを説明する。
 図3は、ロボット制御装置1の移行処理について説明するフローチャートである。ここで示すフローは、イーサネットポート30から所定量のパケットが受信され、当該イーサネットポート30のパケットに対して割込み処理が実行される度に実行される。
 ステップS11において、検知部110は、イーサネットポート30において一定の時間(例えば、500msecや1秒等)で検知したパケットのロスが予め設定された閾値を超過したか否かを判定する。パケットのロスが閾値を超過した場合、処理はステップS12に進む。一方、パケットのロスが閾値以下の場合、処理はステップS11に待機する。
 ステップS12において、移行部120は、閾値を超えるパケットのロスが検知されたイーサネットポート30に対する処理を割込み処理からポーリング処理に移行し、移行時のポーリング周期を第1の周期(例えば、100msec等)に設定する。
 ステップS13において、移行部120は、所定の時間(例えば、1秒等)経過毎に、ポーリング周期を短くする。なお、移行部120は、ポーリング周期が上限値(例えば、1msec等)に達した場合、上限値のままにする。
 ステップS14において、移行部120は、検知部110により検知されたパケットのロスが閾値以下となったか否かを判定する。パケットのロスが閾値以下となった場合、処理はステップS15に進む。一方、パケットのロスが閾値を超過している場合、処理はステップS13に戻る。
 ステップS15において、移行部120は、パケットのロスが閾値以下となったイーサネットポート30に対してポーリング処理から割込み処理に移行する。
 以上により、一実施形態に係るロボット制御装置1は、検知したパケットのロスが予め設定された閾値を超えるイーサネットポート30に対する処理を割込み処理からポーリング処理に移行する。これにより、ロボット制御装置1は、イーサネット通信の混雑が発生したイーサネットポート30の割込み処理によって、他のイーサネットポート30の処理が妨げられることなく実行できる。
 また、ロボット制御装置1は、混雑が発生したイーサネットポート30の受信の割り込みによって、他のイーサネットポート30の処理を妨げることがなくなり、教示操作盤2やネットワーク機器3-1~3-2との通信が止まることはなくなる。これにより、ロボット制御装置1は、教示操作盤2の操作情報を受信し、適切に処理して教示操作盤2へ返送することが可能となり、常に教示操作盤2の操作が可能になる。
 以上、一実施形態について説明したが、ロボット制御装置1は、上述の実施形態に限定されるものではなく、目的を達成できる範囲での変形、改良等を含む。
 なお、一実施形態における、ロボット制御装置1に含まれる各機能は、ハードウェア、ソフトウェア又はこれらの組み合わせによりそれぞれ実現することができる。ここで、ソフトウェアによって実現されるとは、コンピュータがプログラムを読み込んで実行することにより実現されることを意味する。
 プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(Non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(Tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば、光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM)を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(Transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は、無線通信路を介して、プログラムをコンピュータに供給できる。
 なお、記録媒体に記録されるプログラムを記述するステップは、その順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
 以上を換言すると、本開示のロボット制御装置は、次のような構成を有する各種各様の実施形態を取ることができる。
 (1)本開示のロボット制御装置1は、少なくとも1つの機器とイーサネットで接続可能なロボット制御装置であって、制御部10と、複数のイーサネットポート30と、を備え、制御部10は、複数のイーサネットポート30のうち少なくとも1つのイーサネットポート30におけるパケットのロスの状況を検知する検知部110と、複数のイーサネットポート30のうち少なくとも1つのイーサネットポート30からのパケットに対して割込み処理が行われ、かつパケットのロスが予め設定された閾値を超えている場合に、割込み処理をポーリング処理に移行させる移行部120と、を備える。
 このロボット制御装置1によれば、イーサネット通信の混雑が発生したイーサネットポートの割込み処理によって、他のイーサネットポートの処理が妨げられることなく実行できる。
 (2) (1)に記載のロボット制御装置1において、移行部120は、検知部110により検知されたパケットのロスが閾値以下になった場合に、ポーリング処理を割込み処理に移行させてもよい。
 (3) (1)又は(2)に記載のロボット制御装置1において、制御部10は、接続されたイーサネットポートから所定量のパケットを受信すると、割込み処理を実行してもよい。
 (4) (1)から(3)いずれかに記載のロボット制御装置1において、ポーリング処理は、所定の時間の間、第1の周期で実行され、所定の時間経過後に、第1の周期より短い第2の周期で実行されてもよい。
 (5) (4)に記載のロボット制御装置1において、第2の周期は、段階的に短くしてもよい。
 (6) (1)から(5)のいずれかに記載のロボット制御装置1において、パケットのロスは、機器から受信できなかったパケットを含んでもよい。
 (7) (1)から(6)いずれかに記載のロボット制御装置1において、機器は、教示操作盤2であってもよい。
 1 ロボット制御装置
 2 教示操作盤
 3-1~3-2 ネットワーク機器
 10、210 制御部
 110 検知部
 120 移行部
 20、220 記憶部
 30-1~30-3、230 イーサネットポート
 SYS ロボット制御システム

Claims (7)

  1.  少なくとも1つの機器とイーサネットで接続可能なロボット制御装置であって、
     制御部と、
     複数のイーサネットポートと、を備え、
     前記制御部は、
      前記複数のイーサネットポートのうち少なくとも1つのイーサネットポートにおけるパケットのロスの状況を検知する検知部と、
      前記複数のイーサネットポートのうち少なくとも1つのイーサネットポートからのパケットに対して割込み処理が行われ、かつ前記パケットのロスが予め設定された閾値を超えている場合に、前記割込み処理をポーリング処理に移行させる移行部と、を備える
     ロボット制御装置。
  2.  前記移行部は、前記検知部により検知された前記パケットのロスが前記閾値以下になった場合に、前記ポーリング処理を前記割込み処理に移行させる、請求項1に記載のロボット制御装置。
  3.  前記制御部は、接続されたイーサネットポートから所定量のパケットを受信すると、割込み処理を実行する、請求項1又は2に記載のロボット制御装置。
  4.  前記ポーリング処理は、所定の時間の間、第1の周期で実行され、前記所定の時間経過後に、前記第1の周期より短い第2の周期で実行される、請求項1乃至3の何れか1項に記載のロボット制御装置。
  5.  前記第2の周期は、段階的に短くする、請求項4に記載のロボット制御装置。
  6.  前記パケットのロスは、前記機器から受信できなかったパケットを含む、請求項1乃至5の何れか1項に記載のロボット制御装置。
  7.  前記機器は、教示操作盤である、請求項1乃至6の何れか1項に記載のロボット制御装置。
PCT/JP2022/023969 2022-06-15 2022-06-15 ロボット制御装置 WO2023243000A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/JP2022/023969 WO2023243000A1 (ja) 2022-06-15 2022-06-15 ロボット制御装置
TW112118560A TW202400377A (zh) 2022-06-15 2023-05-18 機器人控制裝置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/023969 WO2023243000A1 (ja) 2022-06-15 2022-06-15 ロボット制御装置

Publications (1)

Publication Number Publication Date
WO2023243000A1 true WO2023243000A1 (ja) 2023-12-21

Family

ID=89192433

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/023969 WO2023243000A1 (ja) 2022-06-15 2022-06-15 ロボット制御装置

Country Status (2)

Country Link
TW (1) TW202400377A (ja)
WO (1) WO2023243000A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07146797A (ja) * 1992-12-11 1995-06-06 Internatl Business Mach Corp <Ibm> データ・プロセッサに接続された周辺装置からのサービス要求を管理するためのシステム
JP2001216170A (ja) * 2000-01-31 2001-08-10 Mitsubishi Electric Corp 専用ポーリング処理組み込みオペレーティング方法及び専用ポーリング処理組み込みオペレーティングシステム
WO2009060530A1 (ja) * 2007-11-09 2009-05-14 Fujitsu Limited ネットワーク処理制御装置,プログラムおよび方法
JP2016062177A (ja) * 2014-09-16 2016-04-25 セイコーエプソン株式会社 コントローラー、情報処理装置、及びロボットシステム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07146797A (ja) * 1992-12-11 1995-06-06 Internatl Business Mach Corp <Ibm> データ・プロセッサに接続された周辺装置からのサービス要求を管理するためのシステム
JP2001216170A (ja) * 2000-01-31 2001-08-10 Mitsubishi Electric Corp 専用ポーリング処理組み込みオペレーティング方法及び専用ポーリング処理組み込みオペレーティングシステム
WO2009060530A1 (ja) * 2007-11-09 2009-05-14 Fujitsu Limited ネットワーク処理制御装置,プログラムおよび方法
JP2016062177A (ja) * 2014-09-16 2016-04-25 セイコーエプソン株式会社 コントローラー、情報処理装置、及びロボットシステム

Also Published As

Publication number Publication date
TW202400377A (zh) 2024-01-01

Similar Documents

Publication Publication Date Title
US8560878B2 (en) System and method for failure detection by a storage expander preceding an expander experiencing a failure
US8312312B2 (en) Data storage system using multiple communication protocols
EP2453364B1 (en) A method for deterministic SAS discovery and configuration
US20080010530A1 (en) Fault-isolating sas expander
JP4283792B2 (ja) 帯域制御方法及び伝送装置
US9129064B2 (en) USB 3.0 link layer timer adjustment to extend distance
TW201727506A (zh) 用以切換多個電腦裝置介面之系統及其方法及用以切換 多個快速周邊組件互連(PCIe)匯流排之系統
EP3512160B1 (en) Power supplying method, device and system
US20190306084A1 (en) Computer-readable recording medium recording port switching program and port switching method
EP3343853B1 (en) Network device
US10275373B2 (en) Hot swappable device and method
TWI676890B (zh) 機箱監控系統及機箱監控方法
US9304960B2 (en) Delayed physical link activation in serial attached small computer system interface devices that utilize smart cabling
JP2011164777A (ja) スイッチ装置、スイッチ制御方法、及びストレージシステム
US9582369B2 (en) Monitoring method, monitoring device, and information processing system
US8959233B2 (en) Network bottlenecks
US20160156518A1 (en) Server for automatically switching sharing-network
WO2023243000A1 (ja) ロボット制御装置
CN107911372B (zh) 一种基于逻辑器件实现串口设备接入以太网的方法和装置
US10075330B1 (en) Systems and methods for statuses of communication links
US8745448B2 (en) Storage system, storage control apparatus and method for failure recovery
KR101601680B1 (ko) 클라우드 컴퓨팅 방법, 이를 수행하는 클라우드 컴퓨팅 서버 및 이를 저장하는 기록매체
US10135254B2 (en) High reliability power over ethernet
US20080256385A1 (en) Optimization of port link recovery
JP2009296293A (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: 22946819

Country of ref document: EP

Kind code of ref document: A1