JP6547260B2 - Image processing apparatus and robot system - Google Patents

Image processing apparatus and robot system Download PDF

Info

Publication number
JP6547260B2
JP6547260B2 JP2014188038A JP2014188038A JP6547260B2 JP 6547260 B2 JP6547260 B2 JP 6547260B2 JP 2014188038 A JP2014188038 A JP 2014188038A JP 2014188038 A JP2014188038 A JP 2014188038A JP 6547260 B2 JP6547260 B2 JP 6547260B2
Authority
JP
Japan
Prior art keywords
program
data
unit
update
image processing
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2014188038A
Other languages
Japanese (ja)
Other versions
JP2016059982A (en
Inventor
西谷 正信
正信 西谷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2014188038A priority Critical patent/JP6547260B2/en
Priority to CN201510578893.2A priority patent/CN105430255A/en
Priority to EP15185232.4A priority patent/EP2998079B1/en
Priority to US14/854,499 priority patent/US10127622B2/en
Publication of JP2016059982A publication Critical patent/JP2016059982A/en
Priority to US16/157,840 priority patent/US20190043150A1/en
Application granted granted Critical
Publication of JP6547260B2 publication Critical patent/JP6547260B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)
  • Stored Programmes (AREA)

Description

この発明は、画像処理装置、及びロボットシステムに関する。   The present invention relates to an image processing apparatus and a robot system.

撮像部により撮像された撮像画像に基づいて作業対象の位置及び姿勢を算出し、算出された位置及び姿勢に基づいてロボットに所定の作業を行わせる方法が研究・開発が行われている。   Research and development have been conducted on a method of calculating the position and orientation of a work target based on a captured image captured by an imaging unit and causing a robot to perform a predetermined task based on the calculated position and orientation.

これに関し、ロボットを制御する制御装置に接続され、撮像画像に基づく作業対象の位置及び姿勢の算出等の画像処理を行う制御装置とは別体の画像処理装置が知られている(非特許文献1参照)。   In this regard, an image processing apparatus is known that is separate from a control apparatus that is connected to a control device that controls a robot and performs image processing such as calculation of the position and orientation of a work object based on a captured image 1).

http://robots.epson.com/admin/uploads/product_catalog/files/EPSON_CV1_Vision%20(RevB).pdf 「Vision Guidance for Epson Robots」http://robots.epson.com/admin/uploads/product_catalog/files/EPSON_CV1_Vision%20 (Rev B). pdf "Vision Guidance for Epson Robots"

しかし、従来の装置は、OS(Operating System)を特別な知識を有さない者(例えば、ユーザー)に更新させることを考慮しておらず、OSを更新しなければならない場合、装置を分解して特別な知識を有する者(例えば、メーカーの技術者等)に送付し、OSを更新して貰わなければならず、手間と労力を費やす必要があった。   However, the conventional device does not consider updating the operating system (OS) to a person (for example, a user) who does not have special knowledge, and disassembles the device if the OS needs to be updated. It was necessary to send it to a person with special knowledge (for example, a manufacturer's engineer, etc.), update the OS, and spend time and effort.

そこで本発明は、上記従来技術の問題に鑑みてなされたものであり、プログラムを容易に更新することができる画像処理装置、及びロボットシステムを提供する。   SUMMARY OF THE INVENTION The present invention has been made in view of the above-described problems of the prior art, and provides an image processing apparatus and a robot system capable of easily updating a program.

本発明の一態様は、第1プログラムと第2プログラムとを記憶する記憶部と、撮像装置が撮像した撮像画像を処理する処理部と、を含み、前記第1プログラムは、外部記憶装置に記憶された第1データを用いて更新され、前記第2プログラムは、情報処理装置に記憶された第2データを用いて更新される、画像処理装置である。
この構成により、画像処理装置において、第1プログラムは、外部記憶装置に記憶された第1データを用いて更新され、第2プログラムは、情報処理装置に記憶された第2データを用いて更新される。これにより、画像処理装置は、プログラムを容易に更新することができる。
One aspect of the present invention includes a storage unit that stores a first program and a second program, and a processing unit that processes a captured image captured by an imaging device, and the first program is stored in an external storage device. The image processing apparatus is updated using the first data, and the second program is updated using the second data stored in the information processing apparatus.
With this configuration, in the image processing apparatus, the first program is updated using the first data stored in the external storage device, and the second program is updated using the second data stored in the information processing apparatus. Ru. Thus, the image processing apparatus can easily update the program.

また、本発明の他の態様は、画像処理装置において、前記第1プログラム及び前記第2プログラムとは異なる他のプログラムが実行されることで動作し、前記外部記憶装置に記憶された前記第1データを読み込み、読み込まれた前記第1データに基づいて前記第1プログラムを更新する第1更新部を備える、構成が用いられてもよい。
この構成により、画像処理装置は、第1プログラム及び第2プログラムとは異なる他のプログラムが実行されることで動作し、外部記憶装置に記憶された第1データを読み込み、読み込まれた第1データに基づいて第1プログラムを更新する。これにより、画像処理装置は、第1プログラムを実行することなく、第1プログラムを更新することができるため、第1プログラムの実行中に第1プログラムの更新を行うことによって第1プログラムが破損してしまうこと抑制することが出来る。
Further, according to another aspect of the present invention, in the image processing apparatus, the first program stored in the external storage device is operated by executing another program different from the first program and the second program. A configuration may be used that includes a first update unit that reads data and updates the first program based on the read first data.
With this configuration, the image processing apparatus operates by executing another program different from the first program and the second program, reads the first data stored in the external storage device, and reads the first data read. Update the first program based on. Thus, the image processing apparatus can update the first program without executing the first program. Therefore, the first program is damaged by updating the first program while the first program is being executed. It can be suppressed.

また、本発明の他の態様は、画像処理装置において、前記第1更新部は、前記外部記憶装置の記憶領域に更新前の前記第1プログラムをバックアップし、その後、前記第1データに基づいて前記第1プログラムを更新する、構成が用いられてもよい。
この構成により、画像処理装置は、外部記憶装置の記憶領域に更新前の第1プログラムをバックアップし、その後、第1データに基づいて第1プログラムを更新する。これにより、画像処理装置は、自装置の記憶領域にバックアップ用の記憶領域を確保する必要が無く、自装置の記憶領域の確保に係るコストを低減することができる。
Further, according to another aspect of the present invention, in the image processing apparatus, the first update unit backs up the first program before update in a storage area of the external storage device, and then based on the first data. A configuration may be used that updates the first program.
With this configuration, the image processing apparatus backs up the first program before update in the storage area of the external storage device, and then updates the first program based on the first data. As a result, the image processing apparatus does not have to secure a backup storage area in the storage area of its own apparatus, and the cost of securing the storage area of the own apparatus can be reduced.

また、本発明の他の態様は、画像処理装置において、前記外部記憶装置に前記第1データが記憶されているか否かを判定する確認部と、前記確認部により前記外部記憶装置に前記第1データが記憶されていないと判定された場合、エラーを示す情報を表示部に表示させる表示制御部と、を備え、前記第1更新部は、前記確認部により前記外部記憶装置に前記第1データが記憶されていると判定された場合、前記第1データに基づいて前記第1プログラムを更新する、構成が用いられてもよい。
この構成により、画像処理装置は、外部記憶装置に第1データが記憶されているか否かを判定し、外部記憶装置に第1データが記憶されていないと判定された場合、エラーを示す情報を表示部に表示させ、外部記憶装置に第1データが記憶されていると判定された場合、第1データに基づいて第1プログラムを更新する。これにより、画像処理装置は、外部記憶装置に第1データが記憶されていない状態で誤って第1プログラムの更新が継続されてしまうことを抑制することができる。
Further, according to another aspect of the present invention, in the image processing apparatus, a confirmation unit that determines whether the first data is stored in the external storage device; And a display control unit that causes the display unit to display information indicating an error when it is determined that the data is not stored, and the first update unit causes the confirmation unit to use the first data in the external storage device. May be used to update the first program based on the first data.
With this configuration, the image processing apparatus determines whether the first data is stored in the external storage device, and when it is determined that the first data is not stored in the external storage device, the information indicating the error is displayed. If it is determined that the first data is stored in the external storage device, the first program is updated based on the first data. Thus, the image processing apparatus can suppress the continuation of the update of the first program by mistake when the first data is not stored in the external storage device.

また、本発明の他の態様は、画像処理装置において、外部機器と通信する通信部と、前記第1プログラムが実行されることで動作し、前記通信部を介して前記情報処理装置から前記第2データを取得し、取得された前記第2データに基づいて前記第2プログラムを更新する第2更新部と、を備える、構成が用いられてもよい。
この構成により、画像処理装置は、第1プログラムが実行されることで動作し、通信部を介して情報処理装置から第2データを取得し、取得された第2データに基づいて第2プログラムを更新する。これにより、画像処理装置は、情報処理装置によって第2プログラムを容易に更新することができる。
Further, according to another aspect of the present invention, in the image processing apparatus, a communication unit that communicates with an external device, and the first program are executed to operate, and the information processing apparatus receives the information from the information processing apparatus via the communication unit. (2) A configuration may be used, including: a second update unit configured to acquire 2 data and update the second program based on the acquired second data.
With this configuration, the image processing apparatus operates by executing the first program, acquires the second data from the information processing apparatus via the communication unit, and generates the second program based on the acquired second data. Update. Thus, the image processing apparatus can easily update the second program by the information processing apparatus.

また、本発明の他の態様は、所定作業を行うロボットと、前記所定作業に係る範囲を撮像する撮像装置と、前記撮像装置が撮像した撮像画像を処理する画像処理装置と、前記画像処理装置が処理した結果に基づいて前記ロボットを制御する制御装置と、を含み、前記画像処理装置は、第1プログラムと第2プログラムとを記憶する記憶部と、前記撮像装置が撮像した撮像画像を処理する処理部と、を含み、前記第1プログラムは、外部記憶装置に記憶された第1データを用いて更新され、前記第2プログラムは、情報処理装置に記憶された第2データを用いて更新される、ロボットシステムである。
この構成により、ロボットシステムにおいて、第1プログラムは、外部記憶装置に記憶された第1データを用いて更新され、第2プログラムは、情報処理装置に記憶された第2データを用いて更新される。これにより、画像処理装置は、プログラムを容易に更新することができる。
また、本発明の他の態様は、外部記憶装置に記憶された第1データを用いて更新される第1プログラムと、情報処理装置に記憶された第2データを用いて更新される第2プログラムとを記憶する記憶部と、撮像装置が撮像した撮像画像を処理する処理部と、前記第1プログラム及び前記第2プログラムとは異なる第3プログラムが実行されることで動作し、前記外部記憶装置に記憶された前記第1データを読み込み、読み込まれた前記第1データに基づいて前記第1プログラムを更新する第1更新部と、前記第3プログラムが実行されることで動作し、前記外部記憶装置に前記第1データが記憶されているか否かを判定する確認部と、前記第3プログラムが実行されることで動作し、前記確認部により前記外部記憶装置に前記第1データが記憶されていないと判定された場合、エラーを示す情報を表示部に表示させる表示制御部と、を備え、前記第1プログラムは、通常時に起動される第1OSであり、前記第2プログラムは、前記第1OS上において動作し、画像処理を行うアプリケーションプログラムであり、前記第3プログラムは、前記第1OSが更新される場合に起動される第2OSであり、前記第1データは、前記第3プログラムが読み込み可能なフォーマットで記録された更新ファイルであり、前記確認部は、前記第1OSの更新を実行する操作を受け付けた場合、且つ、前記外部記憶装置が接続されている場合、予め決められた動作を行い、前記予め決められた動作は、前記外部記憶装置を参照して前記外部記憶装置に前記第1データが記憶されているか否かを判定する動作であり、前記第1更新部は、前記確認部により前記外部記憶装置に前記第1データが記憶されていると判定された場合において、前記第1データの所定のマウントポイントへのマウントを行い、前記第1データの前記マウントポイントへのマウントに失敗した場合、前記第1データが不正なデータであると判定し、前記第1データの前記マウントポイントへのマウントに成功した場合、前記第1データに基づいて前記第1プログラムを更新する、画像処理装置である。
また、本発明の他の態様は、所定作業を行うロボットと、前記所定作業に係る範囲を撮像する撮像装置と、前記撮像装置が撮像した撮像画像を処理する画像処理装置と、前記画像処理装置が処理した結果に基づいて前記ロボットを制御する制御装置と、を含み、前記画像処理装置は、外部記憶装置に記憶された第1データを用いて更新される第1プログラムと、情報処理装置に記憶された第2データを用いて更新される第2プログラムとを記憶する記憶部と、撮像装置が撮像した撮像画像を処理する処理部と、前記第1プログラム及び前記第2プログラムとは異なる第3プログラムが実行されることで動作し、前記外部記憶装置に記憶された前記第1データを読み込み、読み込まれた前記第1データに基づいて前記第1プログラムを更新する第1更新部と、前記第3プログラムが実行されることで動作し、前記外部記憶装置に前記第1データが記憶されているか否かを判定する確認部と、前記第3プログラムが実行されることで動作し、前記確認部により前記外部記憶装置に前記第1データが記憶されていないと判定された場合、エラーを示す情報を表示部に表示させる表示制御部と、を備え、前記第1プログラムは、通常時に起動される第1OSであり、前記第2プログラムは、前記第1OS上において動作し、画像処理を行うアプリケーションプログラムであり、前記第3プログラムは、前記第1OSが更新される場合に起動される第2OSであり、前記第1データは、前記第3プログラムが読み込み可能なフォーマットで記録された更新ファイルであり、前記確認部は、前記第1OSの更新を実行する操作を受け付けた場合、且つ、前記外部記憶装置が接続されている場合、予め決められた動作を行い、前記予め決められた動作は、前記外部記憶装置を参照して前記外部記憶装置に前記第1データが記憶されているか否かを判定する動作であり、前記第1更新部は、前記確認部により前記外部記憶装置に前記第1データが記憶されていると判定された場合において、前記第1データの所定のマウントポイントへのマウントを行い、前記第1データの前記マウントポイントへのマウントに失敗した場合、前記第1データが不正なデータであると判定し、前記第1データの前記マウントポイントへのマウントに成功した場合、前記第1データに基づいて前記第1プログラムを更新する、ロボットシステムである。
Further, according to another aspect of the present invention, there are provided a robot that performs a predetermined operation, an imaging device that images a range related to the predetermined operation, an image processing device that processes a captured image captured by the imaging device, and the image processing device And a controller configured to control the robot based on a result processed by the image processing device, the image processing device processing a storage unit storing a first program and a second program, and a captured image captured by the imaging device. Processing unit, the first program is updated using first data stored in the external storage device, and the second program is updated using second data stored in the information processing device. Is a robotic system.
With this configuration, in the robot system, the first program is updated using the first data stored in the external storage device, and the second program is updated using the second data stored in the information processing device. . Thus, the image processing apparatus can easily update the program.
Moreover, the other aspect of this invention is a 2nd program updated using the 1st program updated using the 1st data memorize | stored in the external storage device, and the 2nd data memorize | stored in the information processing apparatus. And a processing unit that processes a captured image captured by an imaging device, and a third program different from the first program and the second program is executed to operate the external storage device. And a first update unit that reads the first data stored in the memory and updates the first program based on the read first data; and the third program operates to operate the external storage and determining check unit whether the first data unit is stored, the third operating in the program is executed, the first data to the external storage device by the confirmation unit serial If it is determined not to be, and a display control unit for displaying on the display unit information indicating an error, the first program is a first 1OS is normally started when the second program, the It is an application program that operates on the first OS and performs image processing, and the third program is the second OS that is activated when the first OS is updated, and the first data is the third program. It is an update file recorded in a readable format, and the confirmation unit performs a predetermined operation when the operation to execute the update of the first OS is received and the external storage device is connected. And the predetermined operation determines whether or not the first data is stored in the external storage device with reference to the external storage device. That is an operation, the first updating unit, when the first data to the external storage device by the checking unit is determined to be stored, the mount to a predetermined mount point of the first data If the mounting of the first data to the mount point fails, the first data is determined to be invalid data, and if the mounting of the first data to the mount point succeeds, The image processing apparatus updates the first program based on one data.
Further, according to another aspect of the present invention, there are provided a robot that performs a predetermined operation, an imaging device that images a range related to the predetermined operation, an image processing device that processes a captured image captured by the imaging device, and the image processing device A control device for controlling the robot based on a result of processing by the image processing device, the image processing device comprising: a first program updated using first data stored in an external storage device; A storage unit that stores a second program that is updated using stored second data, a processing unit that processes a captured image captured by an imaging device, and a second that differs from the first program and the second program (3) Run by executing a program, read the first data stored in the external storage device, and update the first program based on the read first data 1 an update unit operates by the third program is executed, the fact that the said determining check unit whether the first data is stored in the external storage device, said third program is executed in work, if the first data to the external storage device by the checking unit is determined not to be stored, and a display control unit for displaying on the display unit information indicating an error, the first program Is a first OS which is started at normal times, the second program is an application program which operates on the first OS and performs image processing, and the third program is a case where the first OS is updated. an activated is the 2OS, the first data is updated file the third program is recorded in a readable format, the confirmation unit, the When an operation for updating the 1OS is accepted and the external storage device is connected, a predetermined operation is performed, and the predetermined operation refers to the external storage device with reference to the external storage device. It is an operation to determine whether or not the first data is stored in the external storage device, and the first update unit determines that the first data is stored in the external storage device by the confirmation unit. In this case, if the first data is mounted on a predetermined mount point and mounting of the first data on the mount point fails, it is determined that the first data is invalid data, The robot system updates the first program based on the first data when the first data is successfully mounted on the mount point.

以上により、画像処理装置、及びロボットシステムにおいて、第1プログラムは、外部記憶装置に記憶された第1データを用いて更新され、第2プログラムは、情報処理装置に記憶された第2データを用いて更新される。これにより、画像処理装置、及びロボットシステムは、プログラムを容易に更新することができる。   As described above, in the image processing apparatus and the robot system, the first program is updated using the first data stored in the external storage device, and the second program uses the second data stored in the information processing apparatus. Will be updated. Thus, the image processing apparatus and the robot system can easily update the program.

本実施形態に係るロボットシステム1の一例を示す構成図である。It is a block diagram showing an example of robot system 1 concerning this embodiment. 画像処理装置40のハードウェア構成の一例を示す図である。FIG. 2 is a diagram illustrating an example of a hardware configuration of an image processing apparatus 40. 外部ストレージ423に格納された複数のファイルを例示する図である。It is a figure which illustrates a plurality of files stored in external storage 423. 通常時起動OSが起動中の画像処理装置40の機能構成の一例を示す図である。FIG. 6 is a diagram showing an example of a functional configuration of the image processing apparatus 40 whose normal activation OS is activated. 障害時起動OSが起動中の画像処理装置40の機能構成の一例を示す図である。FIG. 6 is a diagram showing an example of a functional configuration of the image processing apparatus 40 during startup when a failure is activated. 制御部47−1が行うアプリ更新処理の流れの一例を示すフローチャートである。It is a flowchart which shows an example of the flow of the application update process which the control part 47-1 performs. 制御部47−2が行うOS更新処理の流れの一例を示すフローチャートである。It is a flowchart which shows an example of the flow of OS update process which the control part 47-2 performs. 障害時起動OSのメニューを表示するためのCUIの一例を示す図である。FIG. 6 is a view showing an example of a CUI for displaying a menu of an OS booted upon failure. 通常時起動OSの更新を実行した時に生じる事象への警告を表示するととともに、通常時起動OSの更新を実行するか否かの確認を行うCUIの一例を示す。An example of CUI which performs a warning to the event which arises when update of normal start OS is performed, and checks whether update of normal start OS is performed is shown. 通常時起動OSの更新の成功を示す情報を表示するCUIの一例を示す図である。It is a figure which shows an example of CUI which displays the information which shows the success of update of OS started normally.

<実施形態>
以下、本発明の実施形態について、図面を参照して説明する。図1は、本実施形態に係るロボットシステム1の一例を示す構成図である。ロボットシステム1は、情報処理装置5と、撮像装置10と、ロボット20と、制御装置30と、画像処理装置40を具備する。
Embodiment
Hereinafter, embodiments of the present invention will be described with reference to the drawings. FIG. 1 is a block diagram showing an example of a robot system 1 according to the present embodiment. The robot system 1 includes an information processing device 5, an imaging device 10, a robot 20, a control device 30, and an image processing device 40.

ロボットシステム1は、情報処理装置5によりユーザーからの操作を受け付け、受け付けられた操作に基づいてロボット20に所定の作業を行わせる。所定の作業とは、例えば、図1に示したように、作業台TBの上面に配置された作業対象Mを所定位置に再配置させる作業を示すが、他の作業であってもよい。作業台TBは、例えば、テーブル等の台であるが、これに代えて、作業対象Mを配置することが可能であれば、床面や壁面等であってもよい。作業対象Mは、ロボット20により把持可能な物体であり、例えば、ネジやボルト等の工業製品の部品であるが、他の物体であってもよい。図1において、作業対象Mは、直方体形状の物体として示す。   The robot system 1 receives an operation from the user by the information processing device 5 and causes the robot 20 to perform a predetermined operation based on the received operation. For example, as shown in FIG. 1, the predetermined work indicates the work of repositioning the work target M disposed on the upper surface of the work bench TB at a predetermined position, but may be another work. The workbench TB is, for example, a table or the like, but instead, if the work object M can be arranged, it may be a floor surface, a wall surface or the like. The work target M is an object that can be gripped by the robot 20, for example, a component of an industrial product such as a screw or a bolt, but may be another object. In FIG. 1, the work target M is shown as a rectangular solid object.

情報処理装置5は、例えば、ノートPC(Personal Computer)やデスクトップPC、タブレットPC、多機能携帯電話端末(スマートフォン)等、ロボット20を制御するためのアプリケーションプログラムをインストールすることが可能な装置であり、更にディスプレイを備えた装置である。このアプリケーションプログラムは、ロボット20を制御する制御プログラムを作成するためのGUI(Graphical User Interface)や、制御装置30や画像処理装置40それぞれの状態(例えば、各種のステータスや故障の有無等)を表示するためのGUI等、各種の機能を有するGUIを情報処理装置5のディスプレイに表示させる。   The information processing device 5 is, for example, a device capable of installing an application program for controlling the robot 20, such as a notebook PC (Personal Computer), a desktop PC, a tablet PC, a multifunctional mobile phone terminal (smart phone), etc. , And an apparatus further comprising a display. The application program displays a GUI (Graphical User Interface) for creating a control program for controlling the robot 20, and displays the state of each of the control device 30 and the image processing device 40 (for example, various statuses, presence or absence of failure, etc.) A GUI having various functions, such as a GUI for displaying, is displayed on the display of the information processing apparatus 5.

情報処理装置5は、ディスプレイに表示されたGUIを介してユーザーからの操作を受け付け、受け付けられた操作に基づいて前述の制御プログラムを作成し、それをコンパイルする。このコンパイルにより、制御プログラムは、制御装置30により実行可能な形式のオブジェクトコードに変換される。情報処理装置5は、ディスプレイに表示されたGUIを介してユーザーからの操作を受け付け、受け付けられた操作に基づいて、このオブジェクトコードを制御装置30に出力する。   The information processing device 5 receives an operation from the user via the GUI displayed on the display, creates the above-described control program based on the received operation, and compiles the control program. By this compilation, the control program is converted by the control device 30 into object code in an executable form. The information processing device 5 receives an operation from the user via the GUI displayed on the display, and outputs the object code to the control device 30 based on the received operation.

情報処理装置5は、ケーブルによって制御装置30と通信可能に接続されている。ケーブルを介した有線通信は、例えば、イーサネット(登録商標)やUSB(Universal Serial Bus)等の規格によって行われる。なお、情報処理装置5と制御装置30とは、Wi−Fi(登録商標)等の通信規格により行われる無線通信によって接続される構成であってもよい。   The information processing device 5 is communicably connected to the control device 30 by a cable. Wired communication via a cable is performed according to, for example, a standard such as Ethernet (registered trademark) or USB (Universal Serial Bus). The information processing device 5 and the control device 30 may be connected by wireless communication performed according to a communication standard such as Wi-Fi (registered trademark).

撮像装置10は、例えば、集光された光を電気信号に変換する撮像素子であるCCD(Charge Coupled Device)やCMOS(Complementary Metal Oxide Semiconductor)等を備えたカメラである。撮像装置10は、ケーブルによって画像処理装置40と通信可能に接続されている。ケーブルを介した有線通信は、例えば、イーサネット(登録商標)やUSB等の規格によって行われる。なお、撮像装置10と画像処理装置40とは、Wi−Fi(登録商標)等の通信規格により行われる無線通信によって接続される構成であってもよい。   The imaging device 10 is, for example, a camera provided with a charge coupled device (CCD), a complementary metal oxide semiconductor (CMOS), or the like that is an imaging element that converts collected light into an electrical signal. The imaging device 10 is communicably connected to the image processing device 40 by a cable. Wired communication via a cable is performed according to a standard such as Ethernet (registered trademark) or USB, for example. The imaging device 10 and the image processing device 40 may be connected by wireless communication performed according to a communication standard such as Wi-Fi (registered trademark).

撮像装置10は、作業対象Mを含む範囲を撮像画像として撮像可能な位置に設置される。撮像装置10は、静止画像を撮像画像として撮像する構成であるとするが、これに代えて、動画像を撮像画像として撮像する構成であってもよい。   The imaging device 10 is installed at a position where the range including the work target M can be captured as a captured image. The imaging device 10 is configured to capture a still image as a captured image, but may be configured to capture a moving image as a captured image instead.

ロボット20は、作業対象Mの位置及び姿勢に基づいた制御信号を制御装置30から取得し、取得した制御信号に基づいて所定の作業を行う。ロボット20は、例えば、物体(この一例では、作業対象M)を把持可能な爪部を備えるエンドエフェクターENDと、マニピュレーターMNPと、図示しない複数のアクチュエーターを備えた単腕のロボットである。単腕のロボットとは、エンドエフェクターENDとマニピュレーターMNP(又は、マニピュレーターMNPのみ)により構成される1本の腕を有するロボットを示す。   The robot 20 acquires, from the control device 30, a control signal based on the position and orientation of the work object M, and performs a predetermined operation based on the acquired control signal. The robot 20 is, for example, a single-arm robot including an end effector END including a claw portion capable of gripping an object (in this example, the work target M), a manipulator MNP, and a plurality of actuators (not shown). The single-arm robot refers to a robot having one arm constituted by the end effector END and the manipulator MNP (or only the manipulator MNP).

なお、ロボット20は、単腕のロボットである構成に代えて、スカラロボット(水平多関節ロボット)や双腕のロボット等であってもよい。スカラロボットとは、マニピュレーターが水平方向にのみ動き、マニピュレーターの先端のスライド軸のみが上下に動くロボットである。また、双腕のロボットとは、エンドエフェクターENDとマニピュレーターMNP(又は、マニピュレーターMNPのみ)によりそれぞれ構成される2本の腕を有するロボットを示す。   The robot 20 may be a SCARA robot (horizontal articulated robot), a double arm robot, or the like, instead of a single arm robot. The SCARA robot is a robot in which the manipulator moves only in the horizontal direction and only the slide axis at the tip of the manipulator moves up and down. Further, a double-armed robot refers to a robot having two arms each composed of an end effector END and a manipulator MNP (or only the manipulator MNP).

ロボット20の腕は、6軸垂直多関節型となっており、支持台とマニピュレーターMNPとエンドエフェクターENDとがアクチュエーターによる連携した動作よって6軸の自由度の動作を行うことができる。なお、ロボット20の腕は、5自由度(5軸)以下で動作するものであってもよく、7自由度(7軸)以上で動作するものであってもよい。   The arm of the robot 20 is of a six-axis vertical articulated type, and the support, the manipulator MNP, and the end effector END can perform six-axis freedom by the coordinated movement of the actuator. The arm of the robot 20 may operate with five degrees of freedom (five axes) or less, or may operate with seven degrees of freedom (seven axes) or more.

ロボット20は、例えばケーブルによって制御装置30と通信可能に接続されている。ケーブルを介した有線通信は、例えば、イーサネット(登録商標)やUSB等の規格によって行われる。なお、ロボット20と制御装置30とは、Wi−Fi(登録商標)等の通信規格により行われる無線通信によって接続されてもよい。なお、ロボット20は、図1に示したようにロボット20の外部に設置された制御装置30と接続される構成とするが、この構成に代えて、制御装置30がロボット20に内蔵される構成であってもよい。   The robot 20 is communicably connected to the control device 30 by, for example, a cable. Wired communication via a cable is performed according to a standard such as Ethernet (registered trademark) or USB, for example. The robot 20 and the control device 30 may be connected by wireless communication performed according to a communication standard such as Wi-Fi (registered trademark). The robot 20 is connected to the control device 30 installed outside the robot 20 as shown in FIG. 1, but instead of this structure, the control device 30 is built in the robot 20. It may be

制御装置30は、情報処理装置5からオブジェクトコードを取得し、取得されたオブジェクトコードに基づいて、所定の作業を行うようにロボット20を制御する。より具体的には、この一例において、制御装置30は、オブジェクトコードに基づいて画像処理装置40に対し、撮像装置10により作業対象Mを含む範囲が撮像された撮像画像を取得し、取得された撮像画像に基づいて作業対象Mの位置及び姿勢を算出する画像処理を行うように要求する。   The control device 30 acquires an object code from the information processing device 5, and controls the robot 20 to perform a predetermined operation based on the acquired object code. More specifically, in this example, the control device 30 acquires a captured image in which a range including the work target M is captured by the imaging device 10 with respect to the image processing device 40 based on the object code. It is requested to perform image processing to calculate the position and orientation of the work object M based on the captured image.

そして、制御装置30は、画像処理装置40による前述の画像処理が終了した後、作業対象Mの位置及び姿勢を示す情報を画像処理装置40から取得する。制御装置30は、取得された作業対象Mの位置及び姿勢に基づく制御信号を生成し、生成された制御信号をロボット20に出力することでロボット20が所定の作業を行うように制御する。   Then, after the above-described image processing by the image processing device 40 is completed, the control device 30 acquires, from the image processing device 40, information indicating the position and orientation of the work object M. The control device 30 generates a control signal based on the acquired position and orientation of the work object M, and outputs the generated control signal to the robot 20 to control the robot 20 to perform a predetermined work.

画像処理装置40は、オブジェクトコードに基づく制御装置30からの要求に応じて、撮像装置10から作業対象Mを含む範囲が撮像された撮像画像を取得する。そして、画像処理装置40は、撮像装置10から撮像画像を取得した後、取得された撮像画像に基づいて作業対象Mの位置及び姿勢を算出する画像処理を行う。画像処理装置40は、画像処理の結果として得られた作業対象Mの位置及び姿勢を示す情報を制御装置30に出力する。   The image processing device 40 acquires a captured image in which a range including the work target M is captured from the imaging device 10 in response to a request from the control device 30 based on the object code. Then, after acquiring the captured image from the imaging device 10, the image processing device 40 performs image processing for calculating the position and orientation of the work target M based on the acquired captured image. The image processing device 40 outputs, to the control device 30, information indicating the position and orientation of the work object M obtained as a result of the image processing.

なお、画像処理装置40は、オブジェクトコードに基づく制御装置30からの要求に応じてこれらの処理を行う構成に代えて、撮像装置10から周期的に撮像画像を取得し、撮像画像が取得される度に、取得された撮像画像に対して前述の画像処理を行うことで作業対象Mの位置及び姿勢を算出する構成であってもよい。この場合、画像処理装置40は、制御装置30から作業対象Mの位置及び姿勢を示す情報の取得の要求を取得するたびに、その時点で算出されている作業対象Mの位置及び姿勢を示す情報を制御装置30に出力する。   Note that the image processing apparatus 40 periodically acquires a captured image from the imaging device 10 and acquires a captured image instead of the configuration in which these processes are performed in response to a request from the control device 30 based on an object code. The position and orientation of the work target M may be calculated by performing the above-described image processing on the acquired captured image each time. In this case, each time the image processing apparatus 40 acquires a request for acquisition of information indicating the position and orientation of the work object M from the control device 30, information indicating the position and orientation of the work object M calculated at that time Are output to the control device 30.

以下では、このように構成されるロボットシステム1における画像処理装置40が有するプログラム更新機能について説明する。本実施形態において、画像処理装置40が有するプログラム更新機能とは、例えば、画像処理装置40のOSやアプリケーションソフトウェアを実現するための複数のプログラムのうちの一部又は全部を変更(例えば、書き換えによる変更や削除による変更等)を行う機能を示すが、1以上の他のプログラムを変更する機能であってもよい。以下では、説明の便宜上、プログラムを変更(例えば、書き換えによる変更や削除による変更等)することを、プログラムを更新すると称して説明する。なお、本実施形態において、ソフトウェアとは、プログラムを実行することで実現される機能の総称であるとして説明する。   Below, the program update function which the image processing apparatus 40 in the robot system 1 comprised in this way has is demonstrated. In the present embodiment, the program update function of the image processing apparatus 40 is, for example, changing a part or all of a plurality of programs for realizing the OS of the image processing apparatus 40 and application software (for example, by rewriting Although the function to perform change etc. by change or deletion) is shown, it may be a function to change one or more other programs. In the following, for convenience of explanation, changing a program (for example, changing by rewriting, changing by deleting, etc.) will be described as updating a program. In the present embodiment, software is described as a generic term of functions realized by executing a program.

次に、図2を参照して、画像処理装置40のハードウェア構成について説明する。図2は、画像処理装置40のハードウェア構成の一例を示す図である。画像処理装置40は、例えば、CPU(Central Processing Unit)41と、記憶部42と、入力受付部43と、通信部44と、表示部45と、検出部46を備え、通信部44を介して制御装置30や他の画像処理装置40、他の装置等と通信を行う。これらの構成要素は、バスBusを介して相互に通信可能に接続されている。CPU41は、記憶部42に格納された各種プログラムを実行する。   Next, the hardware configuration of the image processing apparatus 40 will be described with reference to FIG. FIG. 2 is a diagram showing an example of the hardware configuration of the image processing apparatus 40. As shown in FIG. The image processing apparatus 40 includes, for example, a central processing unit (CPU) 41, a storage unit 42, an input receiving unit 43, a communication unit 44, a display unit 45, and a detection unit 46. It communicates with the control device 30, another image processing device 40, other devices, and the like. These components are communicably connected to one another via a bus Bus. The CPU 41 executes various programs stored in the storage unit 42.

記憶部42は、メモリー421と、ストレージ422を備える。
メモリー421は、例えば、DRAM(Dynamic Random Access Memory)、SRAM(Static Random Access Memory)等を含み、画像処理装置40が備える機能部のうち主としてCPU41等のプロセッサーが直接アクセス可能な記憶装置である。
The storage unit 42 includes a memory 421 and a storage 422.
The memory 421 is a storage device that includes, for example, a dynamic random access memory (DRAM), a static random access memory (SRAM), and the like, and among the functional units of the image processing apparatus 40, the processor such as the CPU 41 can directly access.

ストレージ422は、例えば、HDD(Hard Disk Drive)やSSD(Solid State Drive)、EEPROM(Electrically Erasable Programmable Read−Only Memory)、ROM(Read−Only Memory)、RAM(Random Access Memory)などを含み、第1プログラム4221、第2プログラム4222、及び第3プログラムを含む各種のプログラム等や、画像処理装置40が処理する各種情報、画像処理装置40が処理する画像等を格納する。   The storage 422 includes, for example, an HDD (Hard Disk Drive), an SSD (Solid State Drive), an EEPROM (Electrically Erasable Programmable Read-Only Memory), a ROM (Read-Only Memory), a RAM (Random Access Memory), etc. It stores various programs including the 1 program 4221, the second program 4222, and the third program, various information processed by the image processing apparatus 40, an image processed by the image processing apparatus 40, and the like.

ストレージ422は、記憶領域がパーティションによって複数に分割されている。この一例において、第1プログラム4221及び第2プログラム4222が第1記憶領域、第3プログラム4223が第1記憶領域とは異なる第2記憶領域にそれぞれ格納されているとする。なお、メモリー421やストレージ422はそれぞれ、画像処理装置40に内蔵されるものに代えて、外部ストレージ423と同様に、USB等のデジタル入出力ポート等によって接続された外付け型の記憶装置でもよい。   A storage area of the storage 422 is divided into a plurality of partitions. In this example, it is assumed that the first program 4221 and the second program 4222 are stored in the first storage area, and the third program 4223 is stored in the second storage area different from the first storage area. Note that each of the memory 421 and the storage 422 may be an external storage device connected by a digital input / output port such as USB, as with the external storage 423, instead of the one incorporated in the image processing apparatus 40. .

第1プログラム4221は、CPU41により実行されることで第2プログラム4222及び第3プログラム4223とは異なるソフトウェアを実現するプログラムを示し、この一例において、CPU41により実行されることでOSを実現するプログラムを示すが、他のソフトウェアを実現するプログラムであってもよい。例えば、CPU41により第1プログラム4221が実行されることで実現するOSは、LINUX(登録商標)をベースに構築されるOSであるとするが、UNIX(登録商標)等の他のOSであってもよい。以下では、説明の便宜上、このOSを通常時起動OSと称して説明し、第1プログラム4221の更新を通常時起動OSの更新と称して説明する。   The first program 4221 indicates a program that realizes software different from the second program 4222 and the third program 4223 by being executed by the CPU 41, and in this example, a program that realizes the OS by being executed by the CPU 41. Although shown, it may be a program that implements other software. For example, the OS realized by the execution of the first program 4221 by the CPU 41 is assumed to be an OS built based on LINUX (registered trademark), but is another OS such as UNIX (registered trademark) It is also good. In the following, for convenience of explanation, this OS will be referred to as a normal start OS, and an update of the first program 4221 will be referred to as an update of the normal start OS.

第2プログラム4222は、CPU41により実行されることで第1プログラム4221及び第3プログラム4223とは異なるソフトウェアを実現するプログラムを示し、この一例において、通常時起動OS上で動作するアプリケーションソフトウェアを実現するための1以上のプログラムを示す。   The second program 4222 indicates a program that is executed by the CPU 41 to implement software different from the first program 4221 and the third program 4223, and in this example, implements application software that operates on a normal boot OS Indicates one or more programs.

第3プログラム4223は、CPU41により実行されることで第1プログラム4221及び第2プログラム4222とは異なるソフトウェアを実現するプログラムを示し、この一例において、CPU41により実行されることでOSを実現するプログラムを示すが、他のソフトウェアを実現するプログラムであってもよい。例えば、CPU41により第3プログラム4223が実行されることで実現するOSは、通常時起動OSが何らかの理由によって起動不可能な場合や、第1プログラム4221の一部又は全部を更新する場合等に起動されるOSである。また、CPU41により第3プログラム4223が実行されることで実現するOSは、LINUX(登録商標)をベースに構築されるOSであるとするが、他のOSであってもよい。以下では、説明の便宜上、このOSを障害時起動OSと称して説明する。   The third program 4223 indicates a program that realizes software different from the first program 4221 and the second program 4222 by being executed by the CPU 41, and in this example, a program that realizes the OS by being executed by the CPU 41. Although shown, it may be a program that implements other software. For example, the OS realized by the CPU 41 executing the third program 4223 is activated when the normal activation OS can not be activated for some reason, or when a part or all of the first program 4221 is updated, etc. It is an operating system. Further, an OS realized by the CPU 41 executing the third program 4223 is an OS built based on LINUX (registered trademark), but may be another OS. In the following, for convenience of explanation, this OS will be referred to as a failure start OS.

外部ストレージ423は、例えば、USB等のデジタル入出力ポート等によって接続された外付け型の記憶装置である。外部ストレージ423は、更新ファイル4231等を格納する。なお、外部ストレージ423は、外部記憶装置の一例である。   The external storage 423 is, for example, an external storage device connected by a digital input / output port such as USB. The external storage 423 stores the update file 4231 and the like. The external storage 423 is an example of an external storage device.

更新ファイル4231は、通常時起動OS(すなわち、第1プログラム4221)を更新するためのプログラムファイルである。この一例において、更新ファイル4231は、ext3(third extended file system)やiso9660等の規格に基づいたイメージファイルであり、インストーラーや、通常時起動OSの更新データを含む。   The update file 4231 is a program file for updating the normal start OS (that is, the first program 4221). In this example, the update file 4231 is an image file based on a standard such as ext3 (third extended file system) or iso 9660, and includes an installer and update data of the normal startup OS.

このインストーラーは、パスワード付きの圧縮ファイルであり、通常時起動OSを更新するための通常時起動OS更新プログラムを含む。インストーラーに含まれる通常時起動OSの更新プログラムは、障害時起動OSにより実行されることで、通常時起動OSの更新データを用いて通常時起動OSの更新を行う。なお、通常時起動OSの更新データの形式は、通常時起動OSの更新プログラムに応じた形式であれば如何なる形式でもよい。   This installer is a compressed file with a password, and includes a normal start OS update program for updating the normal start OS. The update program of the normal start OS included in the installer is executed by the failure start OS to update the normal start OS using the update data of the normal start OS. The format of the update data of the normal startup OS may be any format as long as it corresponds to the update program of the normal startup OS.

例えば、通常時起動OSの更新プログラムによる更新の内容が、シェルスクリプトによるコマンドでテキストを追記することであった場合、通常時起動OSの更新データは、外部ストレージ423に含まれていなくてもよい(存在しなくてもよい)。また、通常時起動OSの更新プログラムによる更新の内容が、特定のディレクトリに複数のデータファイルをコピーすることであった場合、通常時起動OSの更新データは、それら複数のデータファイルを含む。   For example, when the contents of the update by the update program of the normal start OS is to add text by a command by a shell script, the update data of the normal start OS may not be included in the external storage 423. (May not exist). Further, when the contents of the update by the update program of the normal start OS are to copy a plurality of data files to a specific directory, the update data of the normal start OS includes the plurality of data files.

ここで、図3を参照して、更新ファイル4231について説明する。図3は、外部ストレージ423に格納された複数のファイルを例示する図である。図3に示したように、外部ストレージ423には、更新ファイル4231が含まれる。また、この一例において、外部ストレージ423には、図3に示したように、更新ファイル4231に加えて、更新ファイル4231のチェックサムファイルや、リリースノートファイル、エンドユーザー使用許諾契約書(EULA、End User License Agreement)ファイルが含まれる構成であるとするが、これらの一部又は全部が含まれていない構成であってもよい。チェックサムファイルとは、障害時起動OSにより実行されることで更新ファイル4231が正常か否かを確認するプログラムファイルである。なお、更新ファイル4231は、第1データの一例である。   Here, the update file 4231 will be described with reference to FIG. FIG. 3 is a diagram exemplifying a plurality of files stored in the external storage 423. As shown in FIG. 3, the external storage 423 includes the update file 4231. Also, in this example, as shown in FIG. 3, in addition to the update file 4231, the external storage 423 includes a checksum file of the update file 4231, a release note file, an end user license agreement (EULA, End Although the configuration includes a (User License Agreement) file, it may be a configuration that does not include part or all of these. The checksum file is a program file that is executed by the failure activation OS to check whether the update file 4231 is normal or not. The update file 4231 is an example of first data.

入力受付部43は、例えば、内蔵型又は外付け型のキーボードやマウスであるが、これらに代えて、タッチパッドや、その他の入力装置であってもよい。タッチパッドの場合、入力受付部43は、タッチパネルとして表示部45と一体に構成されてもよい。この一例において、入力受付部43は、外付け型のキーボードであるとして説明する。   The input receiving unit 43 is, for example, a built-in type or external type keyboard or a mouse, but instead of these, a touch pad or another input device may be used. In the case of a touch pad, the input receiving unit 43 may be configured integrally with the display unit 45 as a touch panel. In this example, the input receiving unit 43 is described as an external keyboard.

通信部44は、外部通信部441と、第1撮像通信部442と、第2撮像通信部443を備える。
外部通信部441は、例えば、複数のイーサネット(登録商標)ポートや複数のUSB等のデジタル入出力ポート等を含んで構成される。この一例において、外部通信部441は、2個のイーサネット(登録商標)ポートを含む構成であるとして説明する。
The communication unit 44 includes an external communication unit 441, a first imaging communication unit 442, and a second imaging communication unit 443.
The external communication unit 441 includes, for example, a plurality of Ethernet (registered trademark) ports and a plurality of digital input / output ports such as a plurality of USBs. In this example, the external communication unit 441 is described as including two Ethernet (registered trademark) ports.

第1撮像通信部442は、複数のイーサネット(登録商標)ポートや複数のUSB等のデジタル入出力ポート等を含んで構成され、それらのポートは、撮像装置10と通信を行うための専用ポートである。なお、第1撮像通信部442は、音声を取得するための音声取得装置等の他の装置と通信を行うための専用ポートであってもよい。   The first imaging communication unit 442 is configured to include a plurality of Ethernet (registered trademark) ports, a plurality of digital input / output ports such as a plurality of USBs, and the like, and these ports are dedicated ports for communicating with the imaging device 10 is there. The first imaging communication unit 442 may be a dedicated port for communicating with another device such as an audio acquisition device for acquiring audio.

第2撮像通信部443は、複数のイーサネット(登録商標)ポートや複数のUSB等のデジタル入出力ポート等を含んで構成され、それらのポートは、撮像装置10と通信を行うための専用ポートである。なお、第2撮像通信部443は、音声を取得するための音声取得装置等の他の装置と通信を行うための専用ポートであってもよい。
第1撮像通信部442と第2撮像通信部443は、それぞれが備えるポートの通信規格が異なる。この一例において、第1撮像通信部442は、4つのイーサネット(登録商標)ポートを含んで構成され、第2撮像通信部443は、4つのUSBポートを含んで構成されるとする。
The second imaging communication unit 443 is configured to include a plurality of Ethernet (registered trademark) ports, a plurality of digital input / output ports such as a plurality of USB, and the like, and these ports are dedicated ports for communicating with the imaging device 10 is there. The second imaging communication unit 443 may be a dedicated port for communicating with another device such as an audio acquisition device for acquiring audio.
The first imaging communication unit 442 and the second imaging communication unit 443 have different communication standards of ports provided for each. In this example, the first imaging communication unit 442 is configured to include four Ethernet (registered trademark) ports, and the second imaging communication unit 443 is configured to include four USB ports.

表示部45は、例えば、外付け型の液晶ディスプレイパネル、あるいは、有機EL(ElectroLuminescence)ディスプレイパネルであるが、これに代えて、内蔵型の液晶ディスプレイパネルや有機ELディスプレイパネルであってもよい。   The display unit 45 is, for example, an external liquid crystal display panel or an organic EL (ElectroLuminescence) display panel, but may be a built-in liquid crystal display panel or an organic EL display panel instead.

検出部46は、画像処理装置40が備える複数のハードウェアそれぞれの状態を示す指標となる物理量を検出するための複数のセンサーである。この一例において、画像処理装置40が備える複数のハードウェアとは、図示しないCPU41の冷却ファン、図示しない画像処理装置40の筐体内部を冷却するシステムファン、CPU41、図示しない画像処理装置40に内蔵されるBIOS(Basic Input Output System)バックアップ用の電池等を示すが、他のハードウェアであってもよい。   The detection unit 46 is a plurality of sensors for detecting a physical quantity that is an index indicating the state of each of the plurality of hardware included in the image processing apparatus 40. In this example, the plurality of hardware included in the image processing apparatus 40 includes a cooling fan of the CPU 41 (not shown), a system fan for cooling the inside of the case of the image processing apparatus 40 (not shown), and the CPU 41. Although the battery etc. for BIOS (Basic Input Output System) backup are shown, it may be other hardware.

次に、図4を参照して、通常時起動OSが起動中の画像処理装置40の機能構成について説明する。図4は、通常時起動OSが起動中の画像処理装置40の機能構成の一例を示す図である。画像処理装置40は、記憶部42と、通信部44と、表示部45と、検出部46と、制御部47−1を備える。制御部47−1が備える機能部のうち一部又は全部は、例えば、CPU41が、記憶部42に記憶された第1プログラム4221及び第2プログラム4222を実行することで実現される。   Next, with reference to FIG. 4, the functional configuration of the image processing apparatus 40 whose normal start-up OS is starting will be described. FIG. 4 is a diagram showing an example of a functional configuration of the image processing apparatus 40 whose normal activation OS is activated. The image processing apparatus 40 includes a storage unit 42, a communication unit 44, a display unit 45, a detection unit 46, and a control unit 47-1. For example, part or all of the functional units included in the control unit 47-1 are realized by the CPU 41 executing the first program 4221 and the second program 4222 stored in the storage unit 42.

また、これらの機能部のうち一部は、LSI(Large Scale Integration)やASIC(Application Specific Integrated Circuit)等のハードウェア機能部であってもよい。なお、この一例において、撮像装置10は、第1撮像通信部442に接続されているとし、第2撮像通信部443には、撮像装置が接続されていないとして説明する。   Further, among these functional units, a part may be a hardware functional unit such as a large scale integration (LSI) or an application specific integrated circuit (ASIC). In this example, it is assumed that the imaging device 10 is connected to the first imaging communication unit 442, and the second imaging communication unit 443 is not connected to the imaging device.

制御部47−1は、画像処理装置40の全体を制御する。制御部47−1は、アプリ更新部470と、通信制御部471と、撮像制御部472と、画像取得部473と、画像処理部474を備える。
アプリ更新部470は、第2プログラム4222に含まれる1以上のプログラムのうちの一部又は全部がCPU41により実行されることで実現するアプリケーションソフトウェアの更新の要求を、外部通信部441を介して情報処理装置5から取得すると、その要求に応じて、第2プログラム4222に含まれる1以上のプログラムのうちの一部又は全部を更新するアプリ更新処理を行う。なお、アプリ更新部470は、第2更新部の一例である。
The control unit 47-1 controls the entire image processing apparatus 40. The control unit 47-1 includes an application updating unit 470, a communication control unit 471, an imaging control unit 472, an image acquisition unit 473, and an image processing unit 474.
The application updating unit 470 transmits, via the external communication unit 441, a request for updating application software that is realized by the CPU 41 executing part or all of one or more programs included in the second program 4222. When acquired from the processing device 5, in response to the request, application update processing is performed to update part or all of one or more programs included in the second program 4222. The application update unit 470 is an example of a second update unit.

通信制御部471は、画像処理部474により算出される作業対象Mの位置及び姿勢を示す情報を制御装置30に出力する。
撮像制御部472は、第1撮像通信部442を介して、作業対象Mを含む範囲を撮像するように撮像装置10を制御する。また、撮像制御部472は、第2撮像通信部443に何らかの撮像装置Zが接続されている場合、第2撮像通信部443を介して、撮像装置Zが撮像可能な範囲を撮像するように撮像装置Zを制御する。
The communication control unit 471 outputs, to the control device 30, information indicating the position and orientation of the work target M calculated by the image processing unit 474.
The imaging control unit 472 controls the imaging device 10 to image a range including the work target M via the first imaging communication unit 442. In addition, when an imaging device Z is connected to the second imaging communication unit 443, the imaging control unit 472 performs imaging so as to image a range in which the imaging device Z can image via the second imaging communication unit 443. Control device Z.

画像取得部473は、第1撮像通信部442を介して、撮像装置10から撮像画像を取得する。また、画像取得部473は、第2撮像通信部443に撮像装置Zが接続されている場合、第2撮像通信部443を介して、撮像装置Zから撮像画像を取得する。
画像処理部474は、画像取得部473により取得された撮像画像に基づいて、作業対象Mの位置及び姿勢を算出する画像処理を行う。なお、画像処理部474は、処理部の一例である。
The image acquisition unit 473 acquires a captured image from the imaging device 10 via the first imaging communication unit 442. Further, when the imaging device Z is connected to the second imaging communication unit 443, the image acquiring unit 473 acquires a captured image from the imaging device Z via the second imaging communication unit 443.
The image processing unit 474 performs image processing for calculating the position and orientation of the work target M based on the captured image acquired by the image acquisition unit 473. The image processing unit 474 is an example of a processing unit.

次に、図5を参照して、障害時起動OSが起動中の画像処理装置40の機能構成について説明する。図5は、障害時起動OSが起動中の画像処理装置40の機能構成の一例を示す図である。画像処理装置40は、記憶部42と、通信部44と、表示部45と、検出部46と、制御部47−2を備える。制御部47−2が備える機能部のうち一部又は全部は、例えば、CPU41が、記憶部42に記憶された第3プログラム4223を実行することで実現される。また、これらの機能部のうち一部は、LSIやASIC等のハードウェア機能部であってもよい。   Next, with reference to FIG. 5, the functional configuration of the image processing apparatus 40 in which the failure activation OS is activated will be described. FIG. 5 is a diagram showing an example of a functional configuration of the image processing apparatus 40 when the fault boot OS is running. The image processing apparatus 40 includes a storage unit 42, a communication unit 44, a display unit 45, a detection unit 46, and a control unit 47-2. For example, part or all of the functional units included in the control unit 47-2 are realized by the CPU 41 executing the third program 4223 stored in the storage unit 42. In addition, some of these functional units may be hardware functional units such as LSI and ASIC.

制御部47−2は、画像処理装置40の全体を制御する。制御部47−2は、ファイル確認部475と、OS更新部476と、表示制御部477を備える。
ファイル確認部475は、表示制御部477が表示部45に表示させるGUIを介して通常時起動OSを更新させるOS更新処理の実行がユーザーにより選択された場合、画像処理装置40に接続された外部ストレージ423に更新ファイル4231が格納されていることを確認する(格納されているか否かを判定する)。
The control unit 47-2 controls the entire image processing apparatus 40. The control unit 47-2 includes a file check unit 475, an OS update unit 476, and a display control unit 477.
The file confirmation unit 475 is an external device connected to the image processing apparatus 40 when execution of the OS update process for updating the normal start OS is selected by the user via the GUI that the display control unit 477 causes the display unit 45 to display. It is confirmed that the update file 4231 is stored in the storage 423 (it is determined whether it is stored).

OS更新部476は、ファイル確認部475により外部ストレージ423に更新ファイル4231が格納されていることが確認された(格納されていると判定された)場合、外部ストレージ423に格納された更新ファイル4231に基づいて第1プログラム4221を更新する(すなわち、OS更新処理を行う)。なお、OS更新部476は、第1更新部の一例である。
表示制御部477は、障害時起動OSの動作に係るCUI(Command User Interface)又はGUIを表示するように表示部45を制御する。この一例において、表示制御部477は、CUIを表示するように表示部45を制御するとして説明する。
When the file checking unit 475 confirms that the update file 4231 is stored in the external storage 423 (determines that the update file 4231 is stored), the OS updating unit 476 updates the update file 4231 stored in the external storage 423. The first program 4221 is updated based on (i.e., OS update processing is performed). The OS update unit 476 is an example of a first update unit.
The display control unit 477 controls the display unit 45 so as to display a CUI (Command User Interface) or a GUI related to the operation of the failure start OS. In this example, the display control unit 477 is described as controlling the display unit 45 to display the CUI.

以下、図6を参照して、制御部47−1が行うアプリ更新処理について説明する。図6は、制御部47−1が行うアプリ更新処理の流れの一例を示すフローチャートである。以下、第2プログラム4222に含まれる1以上のプログラムのうちの一部又は全部がCPU41により実行されることで実現するアプリケーションソフトウェアの更新の要求を、制御部47−1が外部通信部441を介して情報処理装置5から取得した後の処理について説明する。   Hereinafter, the application updating process performed by the control unit 47-1 will be described with reference to FIG. FIG. 6 is a flowchart showing an example of the flow of application update processing performed by the control unit 47-1. Thereafter, the control unit 47-1 requests the application software update to be realized by the CPU 41 executing one or more of the one or more programs included in the second program 4222 via the external communication unit 441. A process after acquisition from the information processing device 5 will be described.

まず、アプリ更新部470は、情報処理装置5から第2プログラム4222に含まれる1以上のプログラムのうちの一部又は全部を更新するために必要な更新用ファイルを取得する。以下では、説明の便宜上、この更新用ファイルをアプリ更新用ファイルと称して説明する。そして、アプリ更新部470は、取得されたアプリ更新用ファイルに基づいて、第2プログラム4222に含まれる1以上のプログラムのうちの一部又は全部の更新を行う(ステップS110)。以下では、説明の便宜上、第2プログラム4222に含まれる1以上のプログラムのうちの一部又は全部の更新を、単に第2プログラム4222の更新と称して説明する。なお、アプリ更新用ファイルは、第2データの一例である。   First, the application updating unit 470 acquires, from the information processing device 5, an update file required to update a part or all of one or more programs included in the second program 4222. In the following, for convenience of explanation, this update file is referred to as an application update file. Then, the application update unit 470 updates a part or all of the one or more programs included in the second program 4222 based on the acquired application update file (step S110). In the following, for convenience of explanation, updating of part or all of one or more programs included in the second program 4222 will be described simply as updating of the second program 4222. The application update file is an example of second data.

次に、アプリ更新部470は、ステップS110で行われた第2プログラム4222の更新が成功したか否かを判定する(ステップS120)。第2プログラム4222の更新が成功したと判定した場合(ステップS120−Yes)、通信制御部471は、外部通信部441を介して情報処理装置5に第2プログラム4222の更新の成功を示す情報を送信する(ステップS130)。一方、第2プログラム4222の更新が成功していないと判定した場合(ステップS120−No)、通信制御部471は、外部通信部441を介して情報処理装置5に第2プログラム4222の更新のエラーを示す情報を送信する(ステップS140)。   Next, the application update unit 470 determines whether the update of the second program 4222 performed in step S110 is successful (step S120). When it is determined that the update of the second program 4222 is successful (step S120: Yes), the communication control unit 471 causes the external communication unit 441 to cause the information processing device 5 to display information indicating the success of the update of the second program 4222. It transmits (step S130). On the other hand, when it is determined that the update of the second program 4222 is not successful (Step S120-No), the communication control unit 471 causes the information processing apparatus 5 to receive an error of the update of the second program 4222 via the external communication unit 441. Is transmitted (step S140).

以下、図7を参照して、制御部47−2が行うOS更新処理について説明する。図7は、制御部47−2が行うOS更新処理の流れの一例を示すフローチャートである。以下、画像処理装置40において障害時起動OSが起動された後の処理について説明する。まず、表示制御部477は、障害時起動OSのメニューを表示させるためのCUIを表示するように表示部45を制御する(ステップS210)。   The OS update process performed by the control unit 47-2 will be described below with reference to FIG. FIG. 7 is a flowchart illustrating an example of the flow of the OS update process performed by the control unit 47-2. Hereinafter, processing after the image processing apparatus 40 has started the failure start OS will be described. First, the display control unit 477 controls the display unit 45 to display a CUI for displaying a menu of the failure activation OS (step S210).

ここで、図8を参照して、障害時起動OSのメニューを表示するためのCUIについて説明する。図8は、障害時起動OSのメニューを表示するためのCUIの一例を示す図である。このCUIには、例えば、図8に示したように5つの選択可能な障害時起動OSの動作を示すメニューが表示される。この一例において、5つの選択可能な動作はそれぞれ、以下に示す動作である。なお、以下に示す5つの動作はそれぞれ、図8に示したCUIに表示された5つの動作を日本語に変換したものである。   Here, with reference to FIG. 8, a CUI for displaying a menu of the boot OS at the time of failure will be described. FIG. 8 is a view showing an example of a CUI for displaying a menu of the OS activated at the time of failure. On this CUI, for example, as shown in FIG. 8, a menu indicating the operation of five selectable failure activation OSs is displayed. In this example, each of the five selectable operations is the operation shown below. The following five operations are obtained by converting the five operations displayed on the CUI shown in FIG. 8 into Japanese.

1.xxxの設定のリセット(初期化)
2.yyyの設定のリセット(初期化)
3.通常時起動OSの更新
9.Shellの起動
0.障害時起動OSを終了し、通常時起動OSを再起動
1. Reset xxx settings (initialization)
2. Reset yyy setting (initialization)
3. Update the normal boot OS 9. Launch of Shell 0. Terminate the boot OS on failure and restart the boot OS normally

この一例において、「xxxの設定」は、画像処理部474が行う画像処理の設定を示すが、他の設定であってもよい。また、「yyyの設定」は、画像処理装置40の設定を示すが、他の設定であってもよい。画像処理装置40は、図8に示したCUIを介して、入力受付部43によりユーザーから所望の動作を示す数字(上記の1〜3、9、0のうちのいずれか)を受け付けることで、受け付けられた数字が示す動作を行う。図8には、上記の「3.通常時起動OSの更新」が選択された状態が示されている。   In this example, “setting of xxx” indicates the setting of the image processing performed by the image processing unit 474, but may be another setting. Also, “setting of yyy” indicates the setting of the image processing apparatus 40, but may be another setting. The image processing apparatus 40 receives a number (one of 1 to 3, 9 and 0 described above) indicating a desired operation from the user via the CUI shown in FIG. Perform the operation indicated by the accepted number. FIG. 8 shows a state in which the above-mentioned "3. Update of the normal start OS" is selected.

次に、制御部47−2は、ステップS210で表示されたCUIを介して、入力受付部43によりユーザーから所望の動作を示す数字を受け付ける(ステップS220)。以下では、ステップS220でユーザーが上記の「3.通常時起動OSの更新」を選択したとして説明する。ステップS220でユーザーが上記の「3.通常時起動OSの更新」を選択すると、表示制御部477は、図9に示したCUIを表示するように表示部45を制御する。   Next, the control unit 47-2 receives, from the user, a number indicating a desired operation from the user via the CUI displayed in step S210 (step S220). In the following description, it is assumed that the user selects the above-mentioned “3. When the user selects the above-mentioned "3. update of the normal activation OS" in step S220, the display control unit 477 controls the display unit 45 to display the CUI shown in FIG.

図9は、通常時起動OSの更新を実行した時に生じる事象への警告を表示するととともに、通常時起動OSの更新を実行するか否かの確認を行うCUIの一例を示す。この一例において、通常時起動OSの更新の実行は、図9に示した警告に表示されているように、すべてのデータを消してしまうという事象を起こすが、これに代えて、一部のデータを消してしまう構成等、他の事象を起こす構成であってもよい。以下では、制御部47−2がステップS220において、通常時起動OSの更新を実行することを了承する操作(この一例において、「yes」と入力する操作)を入力受付部43によりユーザーから受け付けたとして説明する。   FIG. 9 shows an example of a CUI that displays a warning to an event that occurs when the update of the normal start OS is executed, and confirms whether or not the update of the normal start OS is to be performed. In this example, the execution of the update of the normal startup OS causes an event of erasing all data as indicated by the warning shown in FIG. 9, but instead, some data May be configured to cause other events, such as a configuration that erases In the following, in step S220, the control unit 47-2 receives an operation (operation of inputting “yes” in this example) for accepting execution of updating of the normal boot OS from the user by the input reception unit 43. Explain as.

ステップS220で入力受付部43によりユーザーから通常時起動OSの更新を実行することを了承する操作を制御部47−2が受け付けた場合、ファイル確認部475は、画像処理装置40に接続された外部ストレージ423に更新ファイル4231が格納されているか否かを判定(確認)する(ステップS230)。外部ストレージ423に更新ファイル4231が格納されていないとファイル確認部475が判定した場合(ステップS230−No)、表示制御部477は、エラーを示す情報を表示するためのCUIを表示するように表示部45を制御する(ステップS250)。一方、外部ストレージ423に更新ファイル4231が格納されているとファイル確認部475が判定した場合(ステップS230−Yes)、OS更新部476は、通常時起動OSを更新するOS更新処理を行う(ステップS240)。   When the control unit 47-2 receives an operation for accepting from the user the execution of the update of the normal activation OS from the user by the input reception unit 43 in step S 220, the file confirmation unit 475 is connected to the external connected to the image processing apparatus 40. It is judged (confirmed) whether or not the update file 4231 is stored in the storage 423 (step S230). When the file confirmation unit 475 determines that the update file 4231 is not stored in the external storage 423 (No in step S230), the display control unit 477 displays a CUI for displaying information indicating an error. The unit 45 is controlled (step S250). On the other hand, when the file confirmation unit 475 determines that the update file 4231 is stored in the external storage 423 (Yes in step S230), the OS update unit 476 performs an OS update process for updating the normal start OS (step S240).

ここで、通常時起動OSを更新するOS更新処理について説明する。OS更新部476は、外部ストレージ423に格納されたチェックサムファイルを実行し、更新ファイル4231が正常か否かを判定(確認)する。チェックサムファイルによって更新ファイル4231が正常ではないと判定された場合、OS更新部476は、更新ファイル4231が不正な更新ファイルであるとし、ステップS260の判定で通常時起動OSの更新に失敗したと判定する。   Here, OS update processing for updating the normal startup OS will be described. The OS update unit 476 executes the checksum file stored in the external storage 423 and determines (confirms) whether the update file 4231 is normal. If it is determined by the checksum file that the update file 4231 is not normal, the OS update unit 476 determines that the update file 4231 is an invalid update file, and that the update of the normal start OS has failed in the determination of step S260. judge.

一方、OS更新部476は、チェックサムファイルによって更新ファイル4231が正常であると判定された場合、更新ファイル4231を、例えば、所定のマウントポイント(ディレクトリ)にマウントする。この際、更新ファイル4231がマウントポイントにマウントすることができなかった場合、OS更新部476は、更新ファイル4231が不正な更新ファイルであるとし、ステップS260の判定で通常時起動OSの更新に失敗したと判定する。   On the other hand, when the OS update unit 476 determines that the update file 4231 is normal by the checksum file, the OS update unit 476 mounts the update file 4231, for example, on a predetermined mount point (directory). At this time, if the update file 4231 can not be mounted on the mount point, the OS update unit 476 determines that the update file 4231 is an invalid update file, and the update of the normal start OS fails in the determination of step S260. It is determined that

一方、更新ファイル4231がマウントポイントにマウントされた場合、OS更新部476は、外部ストレージ423に格納された更新ファイル4231に含まれるインストーラーを、障害時起動OSに予め記憶されたパスワードを用いて外部ストレージ423に解凍する。この際、障害時起動OSに予め記憶されたパスワードを用いたインストーラーの解凍が失敗した場合、OS更新部476は、更新ファイル4231が不正な更新ファイルであるとし、ステップS260の判定で通常時起動OSの更新に失敗したと判定する。   On the other hand, when the update file 4231 is mounted on the mount point, the OS update unit 476 uses the password stored in advance in the failure start OS to externally install the installer included in the update file 4231 stored in the external storage 423. Unzip to storage 423. At this time, when the decompression of the installer using the password stored in advance in the failure start OS fails, the OS update unit 476 determines that the update file 4231 is an invalid update file, and the normal start is determined in step S260. It determines that the update of the OS has failed.

一方、障害時起動OSに予め記憶されたパスワードを用いたインストーラーの解凍が成功した場合、OS更新部476は、解凍された通常時起動OSの更新プログラムを実行し、通常時起動のOS更新データに基づいて通常時起動OSの更新を実行する。この通常時起動OSの更新を実行する際、OS更新部476は、更新前の通常時起動OSを、外部ストレージ423の記憶領域にバックアップする。これにより、OS更新部476は、通常時起動OSの更新の実行中に何らかの理由によって通常時起動OSが破損した場合、外部ストレージ423にバックアップされた通常時起動OSを用いて、ストレージ422に記憶された通常時起動OSを復旧させることができる。   On the other hand, when the decompression of the installer using the password stored in advance in the failure boot OS succeeds, the OS update unit 476 executes the updated program of the normal boot OS and extracts the OS update data of the normal boot. Perform a normal boot OS update based on. When executing the update of the normal start OS, the OS update unit 476 backs up the normal start OS before the update to the storage area of the external storage 423. Thus, the OS updating unit 476 stores the normal startup OS backed up in the external storage 423 in the storage 422 if the normal startup OS is damaged for some reason while the normal startup OS is being updated. The normal boot OS can be recovered.

次に、OS更新部476は、ステップS240で行われた通常時起動OSの更新が成功したか否かを判定する(ステップS260)。通常時起動OSの更新が成功していない(失敗した)と判定した場合、表示制御部477は、表示部45がエラーを示す情報を表示するように制御し(ステップS280)、処理を終了する。一方、通常時起動OSの更新が成功したと判定した場合、表示制御部477は、図10に示すように、表示部45が通常時起動OSの更新の成功を示す情報を表示するCUIを表示するように制御し(ステップS280)、処理を終了する。図10は、通常時起動OSの更新の成功を示す情報を表示するCUIの一例を示す図である。   Next, the OS update unit 476 determines whether the update of the normal start OS performed in step S240 is successful (step S260). If it is determined that the update of the normal startup OS has not succeeded (failed), the display control unit 477 controls the display unit 45 to display information indicating an error (step S280), and ends the process. . On the other hand, when it is determined that the update of the normal start OS is successful, as shown in FIG. 10, the display control unit 477 displays a CUI displaying information indicating the success of the update of the normal start OS. (Step S280), and the process ends. FIG. 10 is a diagram showing an example of a CUI that displays information indicating success in updating the normal start OS.

このように、画像処理装置40は、通常時起動OSの更新を外部ストレージ423を利用して行うため、ストレージ422の空き容量が少ない場合であっても、更新前の通常時起動OSを外部ストレージ423にバックアップする等、通常時起動OSの更新に係る処理をストレージ422の空き容量とは無関係に行うことができる。
また、画像処理装置40は、通常時起動OSの更新を外部ストレージ423を利用して行うため、例えば、工場内のような閉じられたネットワーク内に画像処理装置40が接続されている場合であっても、通常時起動OSの更新を容易に行うことができる。
また、画像処理装置40は、ここまで説明してきたように通常時起動OSの更新を容易に行うことができるため、通常時起動OSに起因する致命的な不具合や脆弱性に対する補完処置を迅速に行うことができるとともに、例えば、画像処理に係るアプリケーションソフトウェアの機能及び性能を向上させるためのアプリ更新処理を行うことができる。
As described above, since the image processing apparatus 40 updates the normal boot OS using the external storage 423, the normal boot OS before the update is stored in the external storage even if the storage 422 has a small free space. It is possible to perform processing relating to updating of the normal boot OS, such as backup to 423, regardless of the free space of the storage 422.
In addition, since the image processing apparatus 40 updates the normal boot OS using the external storage 423, for example, the image processing apparatus 40 is connected in a closed network such as in a factory. Even in the normal case, the boot OS can be easily updated.
In addition, since the image processing apparatus 40 can easily update the normal boot OS as described above, it is possible to quickly take a corrective action for a fatal defect or vulnerability caused by the normal boot OS. While being able to do, application update processing for improving the function and performance of application software concerning image processing, for example, can be performed.

以上説明したように、本実施形態におけるロボットシステム1が具備する画像処理装置40において、第1プログラム4221は、外部ストレージ423に記憶された更新ファイル4231を用いて更新され、第2プログラム4222は、情報処理装置5に記憶されたアプリ更新用ファイルを用いて更新される。これにより、画像処理装置40は、プログラムを容易に更新することができる。   As described above, in the image processing apparatus 40 included in the robot system 1 in the present embodiment, the first program 4221 is updated using the update file 4231 stored in the external storage 423, and the second program 4222 is The file is updated using the application update file stored in the information processing device 5. Thus, the image processing apparatus 40 can easily update the program.

また、画像処理装置40は、第1プログラム4221及び第2プログラム4222とは異なる第3プログラム4223が実行されることで動作し、外部ストレージ423に記憶された更新ファイル4231を読み込み、読み込まれた更新ファイル4231に基づいて第1プログラム4221を更新する。これにより、画像処理装置40は、第1プログラム4221を実行することなく、第1プログラム4221を更新することができるため、第1プログラム4221の実行中に第1プログラム4221の更新を行うことによって第1プログラム4221が破損してしまうこと抑制することが出来る。   Also, the image processing apparatus 40 operates by executing a third program 4223 different from the first program 4221 and the second program 4222, reads the update file 4231 stored in the external storage 423, and reads the update The first program 4221 is updated based on the file 4231. Thus, the image processing apparatus 40 can update the first program 4221 without executing the first program 4221. Therefore, the image processing apparatus 40 can update the first program 4221 while the first program 4221 is being executed. It can be suppressed that the 1 program 4221 is damaged.

また、画像処理装置40は、外部ストレージ423の記憶領域に更新前の第1プログラム4221をバックアップし、その後、更新ファイル4231に基づいて第1プログラム4221を更新する。これにより、画像処理装置40は、自装置の記憶領域にバックアップ用の記憶領域を確保する必要が無く、自装置の記憶領域の確保に係るコストを低減することができる。   In addition, the image processing apparatus 40 backs up the first program 4221 before update in the storage area of the external storage 423 and then updates the first program 4221 based on the update file 4231. As a result, the image processing apparatus 40 does not have to secure a backup storage area in the storage area of its own apparatus, and the cost of securing the storage area of its own apparatus can be reduced.

また、画像処理装置40は、外部ストレージ423に更新ファイル4231が記憶されているか否かを判定し、外部ストレージ423に更新ファイル4231が記憶されていないと判定された場合、エラーを示す情報を表示部45に表示させ、外部ストレージ423に更新ファイル4231が記憶されていると判定された場合、更新ファイル4231に基づいて第1プログラム4221を更新する。これにより、画像処理装置40は、外部ストレージ423に更新ファイル4231が記憶されていない状態で誤って第1プログラム4221の更新が継続されてしまうことを抑制することができる。   Further, the image processing apparatus 40 determines whether the update file 4231 is stored in the external storage 423. If it is determined that the update file 4231 is not stored in the external storage 423, information indicating an error is displayed. If it is determined that the update file 4231 is stored in the external storage 423, the first program 4221 is updated based on the update file 4231. As a result, the image processing apparatus 40 can prevent the update of the first program 4221 from being continued erroneously in a state where the update file 4231 is not stored in the external storage 423.

また、画像処理装置40は、第1プログラム4221が実行されることで動作し、外部通信部441を介して情報処理装置5からアプリ更新用ファイルを取得し、取得されたアプリ更新用ファイルに基づいて第2プログラム4222を更新する。これにより、画像処理装置40は、情報処理装置5によって第2プログラム4222を容易に更新することができる。   In addition, the image processing apparatus 40 operates by executing the first program 4221, acquires the application update file from the information processing apparatus 5 via the external communication unit 441, and based on the acquired application update file The second program 4222 is updated. Thus, the image processing apparatus 40 can easily update the second program 4222 by the information processing apparatus 5.

以上、この発明の実施形態を、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない限り、変更、置換、削除等されてもよい。   The embodiment of the present invention has been described in detail with reference to the drawings, but the specific configuration is not limited to this embodiment, and changes, replacements, deletions and the like can be made without departing from the scope of the present invention. It may be done.

また、以上に説明した装置(例えば、ロボットシステム1の画像処理装置40)における任意の構成部の機能を実現するためのプログラムを、コンピューター読み取り可能な記録媒体に記録し、そのプログラムをコンピューターシステムに読み込ませて実行するようにしてもよい。なお、ここでいう「コンピューターシステム」とは、OS(Operating System)や周辺機器等のハードウェアを含むものとする。また、「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM(Read Only Memory)、CD(Compact Disk)−ROM等の可搬媒体、コンピューターシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピューター読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバーやクライアントとなるコンピューターシステム内部の揮発性メモリー(RAM:Random Access Memory)のように、一定時間プログラムを保持しているものも含むものとする。   In addition, a program for realizing the function of an arbitrary component in the apparatus described above (for example, the image processing apparatus 40 of the robot system 1) is recorded in a computer readable recording medium, and the program is stored in the computer system. It may be read and executed. Note that the “computer system” referred to here includes hardware such as an operating system (OS) and peripheral devices. The term "computer-readable recording medium" means portable media such as flexible disks, magneto-optical disks, ROMs (Read Only Memory), CDs (Compact Disks) -ROMs, and storages such as hard disks incorporated in computer systems. It refers to the device. Furthermore, “computer-readable recording medium” refers to volatile memory (RAM: Random Access) in a computer system serving as a server or client when a program is transmitted via a network such as the Internet or a communication line such as a telephone line. It is assumed that the memory which holds the program for a fixed time such as Memory) is included.

また、上記のプログラムは、このプログラムを記憶装置等に格納したコンピューターシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピューターシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
また、上記のプログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、上記のプログラムは、前述した機能をコンピューターシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
In addition, the above program may be transmitted from a computer system in which the program is stored in a storage device or the like to another computer system via a transmission medium or by transmission waves in the transmission medium. Here, the “transmission medium” for transmitting the program is a medium having a function of transmitting information, such as a network (communication network) such as the Internet or a communication line (communication line) such as a telephone line.
In addition, the above program may be for realizing a part of the functions described above. Furthermore, the program described above may be a so-called difference file (difference program) that can realize the functions described above in combination with the program already recorded in the computer system.

1 ロボットシステム、5 情報処理装置、10 撮像装置、20 ロボット、30 制御装置、40 画像処理装置、41 CPU、42 記憶部、43 入力受付部、44 通信部、45 表示部、46 検出部、47−1、47−2 制御部、421 メモリー、422 ストレージ、423 外部ストレージ、441 外部通信部、442 第1撮像通信部、443 第2撮像通信部、470 アプリ更新部、471 通信制御部、472 撮像制御部、473 画像取得部、474 画像処理部、475 ファイル確認部、476 OS更新部、477 表示制御部、4221 第1プログラム、4222 第2プログラム、4223 第3プログラム、4231 更新ファイル Reference Signs List 1 robot system, 5 information processing device, 10 imaging device, 20 robot, 30 control device, 40 image processing device, 41 CPU, 42 storage unit, 43 input reception unit, 44 communication unit, 45 display unit, 46 detection unit, 47 -1, 47-2 control unit, 421 memory, 422 storage, 423 external storage, 441 external communication unit, 442 first imaging communication unit, 443 second imaging communication unit, 470 application update unit, 471 communication control unit, 472 imaging Control unit, 473 image acquisition unit, 474 image processing unit, 475 file confirmation unit, 476 OS update unit, 477 display control unit, 4221 first program, 4222 second program, 4223 third program, 4231 update file

Claims (4)

外部記憶装置に記憶された第1データを用いて更新される第1プログラムと、情報処理装置に記憶された第2データを用いて更新される第2プログラムとを記憶する記憶部と、
撮像装置が撮像した撮像画像を処理する処理部と、
前記第1プログラム及び前記第2プログラムとは異なる第3プログラムが実行されることで動作し、前記外部記憶装置に記憶された前記第1データを読み込み、読み込まれた前記第1データに基づいて前記第1プログラムを更新する第1更新部と、
前記第3プログラムが実行されることで動作し、前記外部記憶装置に前記第1データが記憶されているか否かを判定する確認部と、
前記第3プログラムが実行されることで動作し、前記確認部により前記外部記憶装置に前記第1データが記憶されていないと判定された場合、エラーを示す情報を表示部に表示させる表示制御部と、
を備え、
前記第1プログラムは、通常時に起動される第1OSであり、
前記第2プログラムは、前記第1OS上において動作し、画像処理を行うアプリケーションプログラムであり、
前記第3プログラムは、前記第1OSが更新される場合に起動される第2OSであり、
前記第1データは、前記第3プログラムが読み込み可能なフォーマットで記録された更新ファイルであり、
前記確認部は、前記第1OSの更新を実行する操作を受け付けた場合、且つ、前記外部記憶装置が接続されている場合、予め決められた動作を行い、
前記予め決められた動作は、前記外部記憶装置を参照して前記外部記憶装置に前記第1データが記憶されているか否かを判定する動作であり、
前記第1更新部は、前記確認部により前記外部記憶装置に前記第1データが記憶されていると判定された場合において、前記第1データの所定のマウントポイントへのマウントを行い、
前記第1データの前記マウントポイントへのマウントに失敗した場合、前記第1データが不正なデータであると判定し、前記第1データの前記マウントポイントへのマウントに成功した場合、前記第1データに基づいて前記第1プログラムを更新する、
画像処理装置。
A storage unit storing a first program updated using the first data stored in the external storage device, and a second program updated using the second data stored in the information processing apparatus;
A processing unit that processes a captured image captured by the imaging device;
The third program different from the first program and the second program is executed to operate, and the first data stored in the external storage device is read, and the first data is read based on the read first data. A first update unit that updates the first program;
A confirmation unit that operates by executing the third program and determines whether the first data is stored in the external storage device;
A display control unit that operates by executing the third program, and causes the display unit to display information indicating an error when it is determined by the confirmation unit that the first data is not stored in the external storage device When,
Equipped with
The first program is a first OS which is normally activated.
The second program is an application program that operates on the first OS and performs image processing,
The third program is a second OS activated when the first OS is updated,
The first data is an update file recorded in a format readable by the third program,
The confirmation unit performs a predetermined operation when an operation to execute the update of the first OS is received and the external storage device is connected.
The predetermined operation is an operation of determining whether the first data is stored in the external storage device by referring to the external storage device,
The first update unit mounts the first data to a predetermined mount point when it is determined by the confirmation unit that the first data is stored in the external storage device.
If mounting of the first data to the mount point fails, it is determined that the first data is invalid data, and if mounting of the first data to the mount point succeeds, the first data is determined Updating the first program based on
Image processing device.
請求項1に記載の画像処理装置であって、
前記第1更新部は、前記外部記憶装置の記憶領域に更新前の前記第1プログラムをバックアップし、その後、前記第1データに基づいて前記第1プログラムを更新する、
画像処理装置。
The image processing apparatus according to claim 1, wherein
The first update unit backs up the first program before update in a storage area of the external storage device, and then updates the first program based on the first data.
Image processing device.
請求項1又は2に記載の画像処理装置であって、
外部機器と通信する通信部と、
前記第1プログラムが実行されることで動作し、前記通信部を介して前記情報処理装置から前記第2データを取得し、取得された前記第2データに基づいて前記第2プログラムを更新する第2更新部と、
を備える画像処理装置。
The image processing apparatus according to claim 1 or 2, wherein
A communication unit that communicates with an external device;
The first program is executed to operate, and acquires the second data from the information processing apparatus via the communication unit, and updates the second program based on the acquired second data. 2 update section,
An image processing apparatus comprising:
所定作業を行うロボットと、
前記所定作業に係る範囲を撮像する撮像装置と、
前記撮像装置が撮像した撮像画像を処理する画像処理装置と、
前記画像処理装置が処理した結果に基づいて前記ロボットを制御する制御装置と、を含み、
前記画像処理装置は、
外部記憶装置に記憶された第1データを用いて更新される第1プログラムと、情報処理装置に記憶された第2データを用いて更新される第2プログラムとを記憶する記憶部と、
撮像装置が撮像した撮像画像を処理する処理部と、
前記第1プログラム及び前記第2プログラムとは異なる第3プログラムが実行されることで動作し、前記外部記憶装置に記憶された前記第1データを読み込み、読み込まれた前記第1データに基づいて前記第1プログラムを更新する第1更新部と、
前記第3プログラムが実行されることで動作し、前記外部記憶装置に前記第1データが記憶されているか否かを判定する確認部と、
前記第3プログラムが実行されることで動作し、前記確認部により前記外部記憶装置に前記第1データが記憶されていないと判定された場合、エラーを示す情報を表示部に表示させる表示制御部と、
を備え、
前記第1プログラムは、通常時に起動される第1OSであり、
前記第2プログラムは、前記第1OS上において動作し、画像処理を行うアプリケーションプログラムであり、
前記第3プログラムは、前記第1OSが更新される場合に起動される第2OSであり、
前記第1データは、前記第3プログラムが読み込み可能なフォーマットで記録された更新ファイルであり、
前記確認部は、前記第1OSの更新を実行する操作を受け付けた場合、且つ、前記外部記憶装置が接続されている場合、予め決められた動作を行い、
前記予め決められた動作は、前記外部記憶装置を参照して前記外部記憶装置に前記第1データが記憶されているか否かを判定する動作であり、
前記第1更新部は、前記確認部により前記外部記憶装置に前記第1データが記憶されていると判定された場合において、前記第1データの所定のマウントポイントへのマウントを行い、
前記第1データの前記マウントポイントへのマウントに失敗した場合、前記第1データが不正なデータであると判定し、前記第1データの前記マウントポイントへのマウントに成功した場合、前記第1データに基づいて前記第1プログラムを更新する、
ロボットシステム。
A robot that performs a predetermined operation,
An imaging device for imaging a range related to the predetermined work;
An image processing device that processes a captured image captured by the imaging device;
A control device that controls the robot based on a result processed by the image processing device;
The image processing apparatus is
A storage unit storing a first program updated using the first data stored in the external storage device, and a second program updated using the second data stored in the information processing apparatus;
A processing unit that processes a captured image captured by the imaging device;
The third program different from the first program and the second program is executed to operate, and the first data stored in the external storage device is read, and the first data is read based on the read first data. A first update unit that updates the first program;
A confirmation unit that operates by executing the third program and determines whether the first data is stored in the external storage device;
A display control unit that operates by executing the third program, and causes the display unit to display information indicating an error when it is determined by the confirmation unit that the first data is not stored in the external storage device When,
Equipped with
The first program is a first OS which is normally activated.
The second program is an application program that operates on the first OS and performs image processing,
The third program is a second OS activated when the first OS is updated,
The first data is an update file recorded in a format readable by the third program,
The confirmation unit performs a predetermined operation when an operation to execute the update of the first OS is received and the external storage device is connected.
The predetermined operation is an operation of determining whether the first data is stored in the external storage device by referring to the external storage device,
The first update unit mounts the first data to a predetermined mount point when it is determined by the confirmation unit that the first data is stored in the external storage device.
If mounting of the first data to the mount point fails, it is determined that the first data is invalid data, and if mounting of the first data to the mount point succeeds, the first data is determined Updating the first program based on
Robot system.
JP2014188038A 2014-09-16 2014-09-16 Image processing apparatus and robot system Active JP6547260B2 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2014188038A JP6547260B2 (en) 2014-09-16 2014-09-16 Image processing apparatus and robot system
CN201510578893.2A CN105430255A (en) 2014-09-16 2015-09-11 Image processing apparatus and robot system
EP15185232.4A EP2998079B1 (en) 2014-09-16 2015-09-15 Image processing apparatus, robot system and method for processing an image
US14/854,499 US10127622B2 (en) 2014-09-16 2015-09-15 Image processing apparatus and robot system
US16/157,840 US20190043150A1 (en) 2014-09-16 2018-10-11 Image Processing Apparatus And Robot System

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014188038A JP6547260B2 (en) 2014-09-16 2014-09-16 Image processing apparatus and robot system

Publications (2)

Publication Number Publication Date
JP2016059982A JP2016059982A (en) 2016-04-25
JP6547260B2 true JP6547260B2 (en) 2019-07-24

Family

ID=55796828

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014188038A Active JP6547260B2 (en) 2014-09-16 2014-09-16 Image processing apparatus and robot system

Country Status (1)

Country Link
JP (1) JP6547260B2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020025992A (en) * 2018-08-09 2020-02-20 株式会社東芝 Control device, control method, and program
TWI677413B (en) * 2018-11-20 2019-11-21 財團法人工業技術研究院 Calibration method and device for robotic arm system
JP7409852B2 (en) 2019-12-10 2024-01-09 ファナック株式会社 robot control device
JPWO2022014444A1 (en) * 2020-07-14 2022-01-20
WO2024089756A1 (en) * 2022-10-25 2024-05-02 ファナック株式会社 Robot teaching console and robot control system

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006039813A (en) * 2004-07-26 2006-02-09 Daikin Ind Ltd Updating system and updating method
JP2007310690A (en) * 2006-05-19 2007-11-29 Sharp Corp Update method of firmware, program, storage medium
JP2011197990A (en) * 2010-03-19 2011-10-06 Fuji Xerox Co Ltd Information processor and program
JP5679714B2 (en) * 2010-07-07 2015-03-04 キヤノン株式会社 Image forming apparatus
JP2014144516A (en) * 2013-01-30 2014-08-14 Seiko Epson Corp Robot control device, robot system, robot, control method and program

Also Published As

Publication number Publication date
JP2016059982A (en) 2016-04-25

Similar Documents

Publication Publication Date Title
JP6547260B2 (en) Image processing apparatus and robot system
US20190043150A1 (en) Image Processing Apparatus And Robot System
US8359492B2 (en) Method and apparatus for restoring system using virtualization
TWI601068B (en) Apparatus and method to access a network, and computer readable medium
JP4746455B2 (en) Computer apparatus, start control method, and start control program
US9600751B2 (en) Image forming apparatus and control method thereof with a determination whether an application relates to a dynamic update for reflecting change of the network setting without rebooting the apparatus
JP6341022B2 (en) Controller, information processing apparatus, and robot system
JP6515462B2 (en) INFORMATION PROCESSING DEVICE, SETTING METHOD FOR INFORMATION PROCESSING DEVICE, AND SETTING PROGRAM
JP6349733B2 (en) Information processing apparatus, recovery support method, recovery support program, recovery support system, and recovery support server
JP6191251B2 (en) Thin client terminal device and data backup control program
JP2017062537A (en) Information processing apparatus, control method of information processing apparatus, and program
JP5524148B2 (en) Computer equipment
TWI689867B (en) Operating system repairs via electronic devices
JP6285974B2 (en) Server system, client device, and program
JP6851836B2 (en) Information processing equipment, information processing methods and programs
JP6406223B2 (en) Information processing device
JP2015132973A (en) Information processor, recovery support method, recovery support program, recovery support system, and recovery support server
JP6428080B2 (en) Image processing apparatus and robot system
JP7315750B2 (en) Server system, client device and program
JP5617943B2 (en) Image reading device
JP7163453B2 (en) computer system and program
KR20140062241A (en) Apparatus, system and method for remote recovering personal computer
JP2013167971A (en) Portable terminal device, recovery support method and program
US9462140B2 (en) Scanner and non-transitory storage medium storing instructions executable by the scanner
JP6762452B1 (en) Information processing equipment, backup method, restore method and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170310

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180417

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180601

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20181026

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181106

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181227

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190528

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190610

R150 Certificate of patent or registration of utility model

Ref document number: 6547260

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150