CN112298995A - 程序转移***以及机器人*** - Google Patents
程序转移***以及机器人*** Download PDFInfo
- Publication number
- CN112298995A CN112298995A CN202010732557.XA CN202010732557A CN112298995A CN 112298995 A CN112298995 A CN 112298995A CN 202010732557 A CN202010732557 A CN 202010732557A CN 112298995 A CN112298995 A CN 112298995A
- Authority
- CN
- China
- Prior art keywords
- robot
- program
- job
- unit
- work
- 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.)
- Pending
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B65—CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
- B65G—TRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
- B65G47/00—Article or material-handling devices associated with conveyors; Methods employing such devices
- B65G47/74—Feeding, transfer, or discharging devices of particular kinds or types
- B65G47/90—Devices for picking-up and depositing articles or materials
- B65G47/905—Control arrangements
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1658—Programme controls characterised by programming, planning systems for manipulators characterised by programming language
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1661—Programme controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40053—Pick 3-D object from pile of objects
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Mechanical Engineering (AREA)
- Computer Security & Cryptography (AREA)
- Robotics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Computational Linguistics (AREA)
- Manipulator (AREA)
- General Factory Administration (AREA)
Abstract
本发明提供程序转移***以及机器人***,其中,更新作业容易且能够导入适当的控制程序。程序转移***具有:通信部,与机器人进行通信并输出通信结果;判断部,根据所述通信结果确认所述机器人具有的作业程序,并判断是否导入与所述作业程序不同的对象作业程序;程序导入部,在所述判断部判断为导入时,将所述对象作业程序导入所述机器人;收集部,从所述机器人收集作业完毕的作业数据;以及程序更新部,使用所述收集部收集到的所述作业数据进行机器学习,并根据所述机器学习的结果更新所述对象作业程序。
Description
技术领域
本发明涉及程序转移***以及机器人***。
背景技术
在专利文献1中公开了一种工业用机器人,其在用途发生变更时或者控制程序的版本发生变更时自动判断并导入控制程序的必要部分。
专利文献1:日本专利特开平11-110027号公报
然而,若机器人的作业多样化,则控制程序的种类、数据量增加。因此,存在上述那样的更新作业繁琐、导入的控制程序不适当的情况。
发明内容
本发明的程序转移***其特征在于,具有:通信部,与机器人进行通信并输出通信结果;判断部,根据所述通信结果确认所述机器人具有的作业程序,并判断是否导入与所述作业程序不同的对象作业程序;程序导入部,在所述判断部判断为导入时,将所述对象作业程序导入所述机器人;收集部,从所述机器人收集作业完毕的作业数据;以及程序更新部,使用所述收集部收集到的所述作业数据进行机器学习,并根据所述机器学习的结果更新所述对象作业程序。
本发明的机器人***其特征在于具有机器人以及上述程序转移***。
附图说明
图1是示出第一实施方式涉及的机器人***的整体结构的图。
图2是示出机器人的一例的立体图。
图3是示出作业管理控制器的结构的框图。
图4是说明作业管理控制器的处理的流程图。
图5是说明作业程序的更新作业的流程图。
图6是说明机器人的动作的流程图。
图7是说明机器人对部件的把持作业的流程图。
图8是示出第二实施方式涉及的机器人***的结构的框图。
附图标记说明
1…机器人***;100…工厂;110A、110B、110C…盒子;120…作业台;190…架子;200、200A、200B、200C、200D…机器人;200A’…主机器人;200A”…从机器人;210…基台;211…载置台;220…机械臂;221…第一臂;222…第二臂;223…第三臂;224…第四臂;225…第五臂;226…第六臂;227…手爪;228…基部;229a、229b…爪部;230…移动机构;231…前轮;232…后轮;240…机器人控制装置;250…相机;400A、400B、400C…作业管理控制器;410…通信部;420…判断部;430…机器人数量判断部;440…释放部;450…程序导入部;460…作业状态确认部;470…收集部;480…程序更新部;A、B、C…部件;PA、PB、PC、PD…作业程序;PAA…更新作业程序;S101~S119、S201~S205、S301~S312、S401~S407…步骤;SV…服务器;T…备件托盘。
具体实施方式
下面,基于附图所示的实施方式对本发明的程序转移***以及机器人***进行详细说明。
第一实施方式
图1是示出第一实施方式涉及的机器人***的整体结构的图。图2是示出机器人的一例的立体图。图3是示出作业管理控制器的结构的框图。图4是说明作业管理控制器的处理的流程图。图5是说明作业程序的更新作业的流程图。图6是说明机器人的动作的流程图。图7是说明机器人对部件的把持作业的流程图。
图1所示的机器人***1例如在工厂100中被使用。在工厂100内的架子190上例如排列有随意收纳部件A的盒子110A、随意收纳部件B的盒子110B、随意收纳部件C的盒子110C。需要指出,在工厂100内的作业区域中,从盒子110A抓取部件A并输送至作业台120的多个机器人200A、从盒子110B抓取部件B并输送至作业台120的多个机器人200B、从盒子110C抓取部件C并输送至作业台120的多个机器人200C分别自主进行作业。
进而,在工厂100内,多个机器人200D在作业区域的外侧打转,或者在规定的位置待机,如果有积压的作业,就能够使用机器人200D支援该作业。也就是说,机器人200D是辅助机器人200A~200C的预备机器人,如果部件A的输送拖延,则加入机器人200A而支援部件A的输送,若部件B的输送拖延,则加入机器人200B而支援部件B的输送,若部件C的输送拖延,则加入机器人200C而支援部件C的输送。机器人200D在结束其任务时再次在工厂100内的作业区域的外侧打转,或者在规定的位置待机。
不过,作为应用机器人***1的场所、工厂内的机器人进行的作业并没有特别限定。例如,机器人进行的作业也可以是部件A、B、C的组装、清洗、检查、测试等作业。
机器人200A~200D均为能够自主行走的机器人,作为其结构并没有特别限定,能够采用适合部件的输送、其它作业的结构。需要指出,在本实施方式中,由于机器人200A~200D的结构彼此相同,所以在以下的说明中,以机器人200A的结构为代表进行说明,对于其它机器人200B~200D则省略其说明。
如图2所示,机器人200A具有:基台210,其具有载置台211;机械臂220,设置于基台210;移动机构230,设置于基台210;以及机器人控制装置240,控制机械臂220以及移动机构230的驱动。
机器人200A在载置台211上载置备件托盘T,机器人200A反复进行利用移动机构230移动至盒子110A,用机械臂220从盒子110A拾取部件A,将拾取的部件A配件于载置在载置台211的备件托盘T上,又利用移动机构230移动至作业台120,用机械臂220拾取载置于载置台211的部件A,将拾取的部件A连同托盘T一起载置于作业台120的作业。
在移动机构230中应用自动行驶***,机器人200A沿着事先指定的路径自动行驶。移动机构230具有设置于基台210的掌舵用的一对前轮231以及驱动用的一对后轮232。另外,虽未图示,但移动机构230具有检测移动时机器人200受到的加速度的加速度传感器、检测作为通道的标识的标记的标记传感器等各种传感器。然后,机器人控制装置240使用所述传感器的检测结果进行机器人200的行驶控制。不过,作为移动机构230的结构并没有特别限定。
机械臂220是六轴多关节臂。也就是,机械臂220具有:第一臂221,旋转自如地连结于基台210;第二臂222,旋转自如地连结于第一臂221;第三臂223,旋转自如地连结于第二臂222;第四臂224,旋转自如地连结于第三臂223;第五臂225,旋转自如地连结于第四臂224;第六臂226,旋转自如地连结于第五臂225;以及手爪227,连接于第六臂226。
手爪227的结构只要能把持部件A,就没有特别限定。本实施方式的手爪227具有:基部228,装配于第六臂226;以及一对爪部229a、229b,设置于基部228,手爪227能够用爪部229a、229b夹着部件A进行把持。除此之外,例如也可以是用四个爪部夹入部件A的结构、通过空气卡盘、静电卡盘等把持部件A的结构等。
另外,在第五臂225上设置有用于对部件A进行图像识别的相机250。于是,构成为,基于相机250取得的图像,检测随意收纳于盒子110A内的部件A的位置及姿势,并由手爪227基于该结果来把持部件A。
上面,对机器人200A进行了说明。在本实施方式中,如前所述,机器人200A~200D的结构彼此相同,但不限定于此。即、也可以是机器人200A~200D中的至少一个机器人与其它机器人不同的结构。特别是,机器人200A、200B、200C的手爪227的结构能够根据部件A、B、C的重量、形状、材质而适当变更。另外,例如机器人200A彼此也可以是不同的结构。对于机器人200B~200D也是同样的。作为其它结构的机器人200A~200D,例如既可以是机械臂220为水平多关节臂但装备有多个机械臂220的机器人等,也可以是不具有机械臂220的AGV(无人搬运车),还可以是不具有移动机构230而不能自主移动的固定型或者可动型的机器人。
返回图1,机器人***1设置于工厂100内,具有:作业管理控制器400A,用于管理机器人200A的作业;作业管理控制器400B,用于管理机器人200B的作业;以及作业管理控制器400C,用于管理机器人200C的作业。另外,作业管理控制器400A设置为至少能够与机器人200A、200D通信,作业管理控制器400B设置为至少能够与机器人200B、200D通信,作业管理控制器400C设置为至少能够与机器人200C、200D通信。在本实施方式中,作业管理控制器400A、400B、400C分别设置为能够与全部的机器人200A~200D通信。
需要指出,由于这些作业管理控制器400A~400C的结构彼此相同,所以在以下的说明中,为了便于说明,以作业管理控制器400A为代表进行说明,对于其它的作业管理控制器400B、400C则省略其说明。另外,下面也将机器人200A~200D单纯地统称为“机器人200”。
作业管理控制器400A例如由计算机构成,具有:处理器(CPU),处理信息;存储器,可通信地连接于处理器;以及外部接口。另外,在存储器中保存有能够由处理器执行的各种程序,处理器能够读入并执行存储于存储器的各种程序等。
如图3所示,作业管理控制器400A构成程序转移***,具有:通信部410、判断部420、机器人数量判断部430、释放部440、程序导入部450、作业状态确认部460、收集部470以及程序更新部480。
通信部410具有与机器人200以及其它作业管理控制器400B、400C通信的功能。通信部410搜索可通信的机器人200,与该机器人200进行通信,并输出通信结果。通信部410可与进行部件A的输送作业的机器人200A通信自不必说,其也可以与机器人200B~200D通信。作为通信方式并没有特别限定,例如可以使用Wi-Fi、Bluetooth(注册商标)等无线通信***。不过,通信部410除了可与机器人200A通信以外,至少可以与机器人200D通信即可。另外,在通信部410的通信范围限于工厂100内的局部的情况下,也可以不能总是与机器人200通信,例如在机器人200通过可通信的范围内时能够临时通信即可。
判断部420对于经由通信部410与作业管理控制器400A连接的各机器人200D分别确认按照哪种作业程序进行作业。在本实施方式中,各机器人200D按照进行部件A的输送作业的作业程序PA、进行部件B的输送作业的作业程序PB、进行部件C的输送作业的作业程序PC以及使其在工厂100内打转或者待机的作业程序PD中的任一种作业程序进行作业。因此,判断部420确认通信对象的各机器人200D在按照作业程序PA、PB、PC、PD中的哪种作业程序进行作业,进而,也对其作业程序的版本信息进行确认。由此,能够容易地确认通信对象的机器人200D的作业状态。
判断部420对于经由通信部410进行了通信的各机器人200D判断是否有导入作业程序PA的必要,即判断是否有将当前的作业程序改写为作业程序PA的必要。也就是说,根据从通信部410输出的与机器人200D的通信结果,判断是否有必要使基于作业程序PA以外的作业程序PB、PC、PD进行作业的机器人200D作为基于作业程序PA进行作业的机器人200A发挥作用。
具体地进行说明,判断部420首先将作为作业管理控制器400A的管理对象的部件A的输送作业状况与从未图示的主计算机接收到的作业计划进行比较,判断部件A的输送作业是按预定进行,还是进行得比预定快,抑或是进行得比预定慢。在输送作业状况相对于作业计划符合预定的情况以及进行得比预定快的情况下,不需要在此之上增加机器人200A。因而,在该情况下,判断部420判断没必要将作业程序PA导入机器人200D。另一方面,在输送作业状况相对于作业计划延迟的情况下,需要增加机器人200A的数量来提高作业速度。因而,在该情况下,判断部420判断需要将作业程序PA导入至少一个机器人200D,以用机器人200D来辅助部件A的输送作业。
另外,判断部420在确认了的作业程序为作业程序PA的情况下,确认其版本信息,判断版本是否为最新。
机器人数量判断部430基于判断部420的判断结果判断进行部件A的输送作业的机器人200A的数量的过量与不足。具体而言,如果判断部420判断为部件A的输送作业状况按计划进行,则机器人数量判断部430判断机器人200A的数量是适当的,没有使其增减的必要。另一方面,如果判断部420判断为部件A的输送作业状况进行得比计划快,则机器人数量判断部430判断机器人200A的数量过多,有必要减少机器人200A的数量,进而求出机器人200A减少多少台就恢复为按照作业计划。相反,如果判断部420判断为部件A的输送作业状况比计划延迟,则机器人数量判断部430判断机器人200A的数量不足,有必要增加机器人200A的数量,进而求出机器人200A增加多少台就恢复为按照作业计划。由于具有这样的机器人数量判断部430,从而能够明确地判断机器人200A的过量与不足。
在如前所述,机器人数量判断部430判断为机器人200A的数量过多的情况下,释放部440从部件A的输送作业中释放至少一个机器人200A。也就是说,释放作业程序PA所占的机器人200A的存储区。需要指出,从部件A的输送作业释放的机器人200A的数量基于机器人数量判断部430的判断结果。具体而言,释放部440将作业程序PD导入多出的全部机器人200A,即、将作业程序PA改写为作业程序PD而将这些所有的机器人200A变更为机器人200D。由此,能够使从部件A的输送作业中释放出的机器人200D去辅助其它延迟的作业,能够实现作业整体的高效化。
不过,并不限定于此,例如也可以在通过与作业管理控制器400B的通信清楚了部件B的输送作业比作业计划延迟的情况下,释放部440将作业程序PB导入多出的机器人200A中的至少一个机器人200A,将该机器人200A变更为机器人200B。同样地,也可以在通过与作业管理控制器400C的通信清楚了部件C的输送作业比作业计划延迟的情况下,释放部440将作业程序PC导入多出的机器人200A中的至少一个机器人200A,将该机器人200A变更为机器人200C。由此,能够减少部件B、C的输送作业的延迟。
程序导入部450具有与释放部440相反的功能。也就是,如前所述,在机器人数量判断部430判断为机器人200A的数量不足的情况下,程序导入部450使至少一个机器人200D成为从事部件A的输送作业的新的机器人200A。需要指出,新从事部件A的输送作业的机器人200D的数量基于机器人数量判断部430的判断结果。具体而言,程序导入部450将作业程序PA导入补充少出的量的所有机器人200D,即、将作业程序PD改写为作业程序PA来将这些所有的机器人200D变更为机器人200A。假设在机器人200D的数量不足以补充机器人200A少出的量的情况下,程序导入部450将全部机器人200D变更为机器人200A即可。
不过,并不限定于此,例如也可以在通过与作业管理控制器400B的通信清楚了部件B的输送作业进行得比作业计划快的情况下,程序导入部450将作业程序PA导入多出的机器人200B中的至少一个机器人200B,将该机器人200B变更为机器人200A。同样地,在通过与作业管理控制器400C的通信清楚了部件C的输送作业进行得比作业计划快的情况下,程序导入部450将作业程序PA导入多出的机器人200C中的至少一个机器人200C,将该机器人200C变更为机器人200A。由此,例如在如前所述机器人200D的数量不足的情况下,能够用机器人200B、200C来补充该不足的量。
作业状态确认部460确认机器人200D当前的状态。具体而言,作业状态确认部460对于各机器人200D确认当前是作为机器人200A从事部件A的输送作业吗,该情况下是正在作业中还是作业完成,是作为机器人200B从事部件B的输送作业吗,该情况下是正在作业中还是作业完成,是作为机器人200C从事部件C的输送作业吗,该情况下是正在作业中还是作业完成,或者是这些作业都没有从事。由此,能够掌握各机器人200D的作业状况,例如释放部440、程序导入部450的处理将变得容易。
收集部470经由通信部410从各机器人200A以及从事部件A的输送作业的各机器人200D收集作业完毕的作业数据。该作业数据中包括能够按照指示进行作业时的信息即作业成功信息和不能按照指示进行作业时的信息即作业失败信息。作为作业失败信息,并无特别限定,根据作业内容而不同,在本实施方式的情况下,例如可列举通过相机250拍摄到的部件A的拍摄图像、通过图像处理识别出的特征量、部件A的位置以及姿势的误识别、部件A从拾取过程中的手爪227掉落、移动中脱离指定路径、移动中的部件A掉落等信息。
另外,收集部470能够经由通信部410对各机器人200A以及从事部件A的输送作业的各机器人200D发送删除委托,该删除委托指示删除收集完毕的作业数据,收到该委托的机器人200A以及从事部件A的输送作业的各机器人200D删除发送完毕的作业数据。由此,能够抑制机器人200D所需的存储容量,并且能够抑制重复收集相同的作业数据。另外,能够降低作业数据的泄露风险。
程序更新部480基于收集部470收集到的作业数据,生成减少失败作业那样的、优选消除失败作业那样的更新作业程序PAA。作为更新作业程序PAA的生成方法,没有特别限定,优选采用机器学习。即、优选程序更新部480将大量收集到的作业成功信息以及作业失败信息作为样本数据输入并进行解析,从该数据提取用于减少作业失败的有用的规则、判断基准等,发展作业程序PA的算法来生成更新作业程序PAA。
如前所述,判断部420确认各机器人200A以及从事部件A的输送作业的各机器人200D所保持着的作业程序PA的版本信息。因此,程序导入部450经由通信部410向判断部420判断为所保持的作业程序PA不是最新的程序的机器人200A以及从事部件A的输送作业的机器人200D转移更新作业程序PAA。也就是说,程序更新部480将更新作业程序PAA改写为最新的作业程序。由此,机器人200A以及从事部件A的输送作业的机器人200D的失败作业减少,能够提高部件A的输送作业的效率、产出。
在机器人***1中,定期地重复通过收集部470收集作业数据以及通过程序更新部480生成和改写更新作业程序PAA。由此,能够将各机器人200A以及从事部件A的输送作业的各机器人200D维持为最新的作业程序PA,提高各机器人200A以及从事部件A的输送作业的各机器人200D的作业效率。
需要指出,程序更新部480既可以对所有的机器人200A以及从事部件A的输送作业的所有的机器人200D生成共同的更新作业程序PAA,也可以按各个机器人200A以及从事部件A的输送作业的机器人200D生成单独的更新作业程序PAA。由于即使结构相同,各个机器人200A以及从事部件A的输送作业的机器人200D有时也会在特性上有些微差异,因此通过按各个机器人200A以及从事部件A的输送作业的机器人200D生成单独的更新作业程序PAA,并对各个机器人200A以及从事部件A的输送作业的机器人200D导入单独的更新作业程序PAA,从而能够更有效地减少失败作业。
在按各个机器人200A以及从事部件A的输送作业的机器人200D生成单独的更新作业程序PAA的情况下,也可以仅基于从对应的机器人200D收集到的作业数据来生成更新作业程序PAA。这样,通过仅使用从对应的机器人200D收集到的作业数据来生成更新作业程序PAA,从而能够对该机器人200D生成专门的更新作业程序PAA。相反,也可以在从对应的机器人200D收集到的作业数据之外,还使用从其它机器人200(200A、200D)收集到的作业数据来生成更新作业程序PAA。这样,通过使用从包含对应的机器人200D在内的多个机器人200收集到的作业数据来生成更新作业程序PAA,从而能够在短时间的期间大量收集作业数据。因此,学习量多,相应地,能够生成更高精度的更新作业程序PAA,且也能够缩短更新作业程序PAA的更新周期。
上面,对作业管理控制器400A的结构进行了说明。根据由这样的作业管理控制器400A构成的程序转移***,由于使用从机器人200D自身收集到的作业数据进行机器学习,并根据该机器学习的结果更新作业程序PA,因此更新作业容易,且能够将适当的作业程序PA导入机器人200D。
进而,机器人200D能够接收来自作业管理控制器400A、400B、400C的委托,在必要时切换并执行部件A的输送作业、部件B的输送作业、部件C的输送作业。因此,能够用机器人200D辅助积压的作业,能够使该作业恢复为按照作业计划。因而,机器人***1的作业效率提高。另外,能够使许多的机器人200D容易地从事部件A的输送作业、部件B的输送作业以及部件C的输送作业。
接着,基于图4所示的流程图说明该作业管理控制器400A的处理的一例。
首先,作为步骤S101,作业管理控制器400A搜索机器人200D。接着,作为步骤S102,作业管理控制器400A开始与搜索到的机器人200D通信。接着,作为步骤S103、S104,作业管理控制器400A确认开始了通信的机器人200D所保持的作业程序的有无以及内容。
在机器人200D保持有作业程序PA的情况下,即、在机器人200D正从事部件A的输送作业以辅助机器人200A的情况下,作为步骤S105、S106,作业管理控制器400A确认该机器人200D的作业数据的保持状况。然后,在机器人200D保持有作业数据的情况下,作为步骤S107,作业管理控制器400A从该机器人200D收集并积累作业数据。接着,作为步骤S108,作业管理控制器400A对机器人200D委托删除收集完毕的作业数据。
接着,作为步骤S109、S110,作业管理控制器400A确认机器人200D(正在进行部件A的输送作业的机器人200D)的作业状况,具体而言,确认正在进行作业还是已完成作业。然后,在正在进行作业的情况下,作为步骤S111、S112,作业管理控制器400A确认有无作业程序PA,在有作业程序PA的情况下,确认其版本信息。
在作业程序PA的版本不是最新的情况下,作为步骤S113、S114,作业管理控制器400A将更新作业程序PAA导入从事部件A的输送作业的机器人200D,向机器人200D委托继续部件A的输送作业。然后,作为步骤S115,作业管理控制器400A结束与机器人200D的通信,并在结束后返回步骤S101。
返回到前述的步骤S104,在开始了通信的机器人200D保持有作业程序PB、PC的情况下,即、在机器人200D与机器人200B、200C一起从事部件B、C的输送作业的情况下,作为步骤S115,作业管理控制器400A结束与该机器人200D的通信。
另一方面,在步骤S104中,开始了通信的机器人200D保持有作业程序PD的情况下,即、在机器人200D未从事任何作业的情况下,或者在步骤S110中,机器人200D的作为机器人200A的作业已经完成的情况下,作为步骤S116、S117,作业管理控制器400A确认作业计划,确认是否需要用机器人200D辅助部件A的输送作业。也就是,确认向机器人200D的部件A的输送作业委托的有无。
在需要辅助部件A的输送作业的情况下,作为步骤S118,作业管理控制器400A将部件A的输送作业委托给机器人200D。具体而言,将作业程序PA导入机器人200D。当该步骤S118完成时,进入前述的步骤S111。另一方面,在不需要辅助部件A的输送作业的情况下,作为步骤S119,作业管理控制器400A委托机器人200D删除作业程序PA。由此,机器人200D返回到初始状态,基于作业程序PD进行动作。当该步骤S119完成时,作为步骤S115,作业管理控制器400A结束与机器人200D的通信。
接着,基于图5所示的流程图说明更新作业程序PAA的更新处理的一例。
首先,作为步骤S201、S202,作业管理控制器400A确认作为机器人200A进行动作的机器人200D保持的作业数据的增加量是否超过阈值。即、确认未收集的作业数据的增加量是否超过阈值。在作业数据的增加量为阈值以上的情况下,作为步骤S203,作业管理控制器400A收集增加部分的作业数据,并基于收集到的作业数据生成更新作业程序PAA。
然后,作为步骤S204,作业管理控制器400A将生成的更新作业程序PAA导入机器人200D。即、将作业程序PA改写为最新版本。当步骤S204完成时,或者在前述的步骤S202中判断为作业数据的增加量小于阈值的情况下,作为步骤S205,作业管理控制器400A将更新作业程序PAA的更新处理停止一定时间,直到机器人200D中作业数据积累规定量为止。
上面,对作业管理控制器400A的处理的一例进行了说明。接着,基于图6所示的流程图说明使机器人200D从事部件A的输送作业时的处理的一例。
首先,作为步骤S301,机器人200D从作业管理控制器400A导入作业程序PA,开始执行作业程序PA。具体而言,首先,作为步骤S302,机器人200D移动至备件托盘T的存放处。接着,作为步骤S303,机器人200D用机械臂220拾取空的备件托盘T,将该备件托盘T载置于载置台211。接着,作为步骤S304,机器人200D向收纳有部件A的盒子110A移动。接着,作为步骤S305,机器人200D从盒子110A拾取部件A,并将该部件A备件于备件托盘T上。另外,机器人200D积累此时的作业数据。反复进行该步骤S305,直到将规定数量的部件A备件于备件托盘T上为止。
接着,作为步骤S306,机器人200D移动至作业台120。接着,作为步骤S307,机器人200D用机械臂220将部件A连同备件托盘T一起加以拾取,将该备件托盘T载置于作业台120上。
通过反复进行以上的步骤S302~S307直到输送完规定数量的备件托盘T,从而结束部件A的输送作业。接着,作为步骤S308,机器人200D接收来自作业管理控制器400A的委托,将积累的作业数据发送至作业管理控制器400A。需要指出,此时,机器人200D也可以移动至能够与作业管理控制器400A进行通信的区域。接着,作为步骤S309,机器人200D接收来自作业管理控制器400A的委托,删除发送完毕的作业数据。
接着,作为步骤S310、S311,机器人200D向作业管理控制器400A询问有无追加委托。即、询问是继续执行部件A的输送,还是结束部件A的输送。如果有追加委托,则机器人200D返回至步骤S301,重复S301~S310。相反,如果没有追加委托,则作为步骤S312,机器人200D接收来自作业管理控制器400A的委托而删除作业程序PA。
接着,基于图7所示的流程图对步骤S305进行更详细的说明。
首先,作为步骤S401,机器人200D对盒子110A内的部件A进行图像识别。接着,作为步骤S402,机器人200D基于图像识别结果确定用手爪227把持的一个部件A,制定其把持计划。接着,作为步骤S403,机器人200D基于制定的把持计划,用手爪227把持盒子110A内的部件A。接着,作为步骤S404,机器人200D确认部件A的把持状态。接着,作为步骤S405,机器人200D对载置台211上的备件托盘T进行图像识别。接着,作为步骤S406,机器人200D基于图像识别的结果,将用手爪227把持的部件A备件于备件托盘T的规定位置。接着,作为步骤S407,机器人200D保存步骤S401~S406为止的作业数据。机器人200A反复进行以上的步骤S401~S407直到将规定数量的部件A备件于备件托盘T上。上面,对步骤S305进行了详细说明。
如上所述,由作业管理控制器400A构成的程序转移***具有:通信部410,与机器人200D进行通信并输出通信结果;判断部420,根据通信结果确认机器人200D具有的作业程序,并判断是否导入与该作业程序不同的作为对象作业程序的作业程序PA;程序导入部450,在判断部420判断为将作业程序PA导入机器人200D时,程序导入部450将作业程序PA导入机器人200D;收集部470,从机器人200D收集作业完毕的作业数据;以及程序更新部480,使用收集部470收集到的作业数据进行机器学习,并根据该机器学习的结果更新作业程序PA。根据这样的程序转移***,由于使用从机器人200D自身收集到的作业数据进行机器学习,并根据该机器学习的结果更新作业程序PA,因此更新作业容易,且能够将更新后的更适当的更新作业程序PAA导入机器人200D。
另外,如前所述,程序更新部480使用从机器人200D收集到的作业数据和从与机器人200D不同的机器人200收集到的作业数据进行机器学习,并基于该机器学习的结果将作业程序PA更新为更新作业程序PAA。由此,学习量增多,相应地,能够生成更高精度的更新作业程序PAA,且还能够缩短更新作业程序PAA的更新周期。
另外,如前所述,通过收集部470收集作业数据以及通过程序更新部480更新作业程序PA被反复进行。由此,能够将从事着部件A的输送作业的机器人200D维持为最新的作业程序PA,提高该机器人200D的作业效率。
另外,如前所述,程序转移***具有释放部440,该释放部440释放作业程序PA所占(留有)的机器人200D的存储区。由此,能够使从部件A的输送作业中释放出的机器人200D去辅助其它延迟的作业,能够实现作业整体的高效化。
另外,如前所述,程序转移***具有机器人数量判断部430,该机器人数量判断部430判断为了按作业计划进行与作业程序PA对应的作业所需的机器人200A的数量的过量与不足。由于具有这样的机器人数量判断部430,从而能够明确地判断机器人200A的过量与不足。
另外,如前所述,在机器人数量判断部430判断为机器人200A的数量不足的情况下,程序导入部450将作业程序PA导入机器人200D。由此,能够通过机器人200D来辅助部件A的输送作业,能够提高该作业的效率。另外,能够防止尽管机器人200A的数量足够但却用机器人200D来辅助部件A的输送作业,能够使更多的机器人200D待机以辅助其它的作业。
另外,如前所述,程序转移***具有作业状态确认部460,该作业状态确认部460确认机器人200D的作业状态。由此,容易进行机器人200D的控制。
另外,如前所述,机器人***1具有机器人200D和上述的程序转移***。也就是,机器人***1具有:机器人200D;通信部410,与机器人200D进行通信并输出通信结果;判断部420,根据通信结果确认机器人200D具有的作业程序,并判断是否导入与该作业程序不同的作为对象作业程序的作业程序PA;程序导入部450,在判断部420判断为将作业程序PA导入机器人200D时,程序导入部450将作业程序PA导入机器人200D;收集部470,从机器人200D收集作业完毕的作业数据;以及程序更新部480,使用收集部470收集到的作业数据进行机器学习,并根据该机器学习的结果更新作业程序PA。根据这样的机器人***1,通过对从机器人200D自身收集到的作业数据进行机器学习而更新作业程序PA,因此更新作业容易,且能够将适当的作业程序PA导入机器人200D。
第二实施方式
图8是示出第二实施方式涉及的机器人***的结构的框图。
除了作业管理控制器400A~400C的配置不同以外,本实施方式与前述的第一实施方式是同样的。在以下的说明中,关于本实施方式,围绕与前述实施方式的不同点进行说明,至于同样的事项则省略其说明。另外,在图8中,对与前述的实施方式同样的结构标注同一附图标记。由于作业管理控制器400A~400C是彼此同样的结构,所以下面为了便于说明,以作业管理控制器400A为代表进行说明,对于作业管理控制器400B、400C则省略其说明。
如图8所示,在本实施方式的机器人***1中,进行部件A的输送作业的多个机器人200A中的一个机器人200A作为主机器人200A’发挥作用,其它机器人200A作为能够与主机器人200A’通信的从机器人200A”发挥作用。此外,该主机器人200A’具有作业管理控制器400A。
具体而言,在构成作业管理控制器400A的各部中,主机器人200A’具有通信部410、判断部420、机器人数量判断部430、释放部440、程序导入部450、作业状态确认部460以及收集部470,这些各部搭载于主机器人200A’。另一方面,构成作业管理控制器400A的各部中的剩下的程序更新部480未设置于主机器人200A’,而是设置于例如工厂100外的远程位置,由能够经由因特网、LAN(局域网)等与主机器人200A’通信的服务器SV所具有。服务器SV由计算机构成,例如能够使用云服务器、雾服务器等。
如上所述,通过将作业管理控制器400A搭载于主机器人200A’,从而能够使作业管理控制器400A在工厂100内与主机器人200A’一起移动。因此,例如在与目前为止改变作业场所来进行作业时,仅使主机器人200A’移动也能够与从机器人200A”、机器人200D一起执行该作业。另外,程序更新部480由于处理大量的数据,所以装置结构易于大型化。因此,对于程序更新部480,不将其搭载于主机器人200A’而是由服务器SV所具有,从而能够有效地抑制主机器人200A’的大型化以及重量的增加。另外,通过服务器SV,设计自由度高,能够简单地提高处理能力。
如上所述,在由作业管理控制器400A构成的程序转移***中,通信部410、判断部420以及收集部470由与被导入作业程序PA的机器人200D不同的机器人即主机器人200A’所具有。由此,能够使作业管理控制器400A在工厂100内与主机器人200A’一起移动。因此,例如在与目前为止改变作业场所来进行作业时,仅使主机器人200A’移动也能够与从机器人200A”、机器人200D一起执行该作业。
另外,如前所述,程序更新部480由能够与通信部410通信的服务器SV所具有。程序更新部480由于处理大量的数据,所以装置结构易于大型化。因此,对于程序更新部480,不将其搭载于主机器人200A’而是由服务器SV所具有,从而能够有效地抑制主机器人200A’的大型化以及重量的增加。另外,通过服务器SV,设计自由度高,能够简单地提高处理能力。
根据这样的第二实施方式,也能够发挥与前述的第一实施方式同样的效果。
上面,基于图示的实施方式说明了本发明的程序转移***以及机器人***,但本发明并不限定于此,各部的结构能够置换为具有同样功能的任意的结构。另外,也可以附加其它任意的结构物。另外,本发明也可以组合前述各实施方式中的任意两个以上的结构。
Claims (10)
1.一种程序转移***,其特征在于,具有:
通信部,与机器人进行通信并输出通信结果;
判断部,根据所述通信结果确认所述机器人具有的作业程序,并判断是否导入与所述作业程序不同的对象作业程序;
程序导入部,在所述判断部判断为导入时,将所述对象作业程序导入所述机器人;
收集部,从所述机器人收集作业完毕的作业数据;以及
程序更新部,使用所述收集部收集到的所述作业数据进行机器学习,并根据所述机器学习的结果更新所述对象作业程序。
2.根据权利要求1所述的程序转移***,其特征在于,
所述通信部、所述判断部以及所述收集部由与被导入所述对象作业程序的所述机器人不同的机器人所具有。
3.根据权利要求1或2所述的程序转移***,其特征在于,
所述程序更新部由能够与所述通信部通信的服务器所具有。
4.根据权利要求1或2所述的程序转移***,其特征在于,
所述程序更新部使用从所述机器人收集到的所述作业数据和从与所述机器人不同的机器人收集到的所述作业数据来进行所述机器学习。
5.根据权利要求1或2所述的程序转移***,其特征在于,
通过所述收集部收集所述作业数据以及通过所述程序更新部更新所述对象作业程序被反复进行。
6.根据权利要求1或2所述的程序转移***,其特征在于,
所述程序转移***具有释放部,所述释放部释放所述对象作业程序留有的所述机器人的存储区。
7.根据权利要求1或2所述的程序转移***,其特征在于,
所述程序转移***具有机器人数量判断部,所述机器人数量判断部判断为了按作业计划进行与所述对象作业程序对应的作业所需的机器人的数量的过量与不足。
8.根据权利要求7所述的程序转移***,其特征在于,
在所述机器人数量判断部判断为所述机器人的数量不足的情况下,所述程序导入部将所述对象作业程序导入所述机器人。
9.根据权利要求1或2所述的程序转移***,其特征在于,
所述程序转移***具有作业状态确认部,所述作业状态确认部确认所述机器人的作业状态。
10.一种机器人***,其特征在于,具有:
机器人;以及
权利要求1至9中任一项所述的程序转移***。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019-138615 | 2019-07-29 | ||
JP2019138615A JP7415356B2 (ja) | 2019-07-29 | 2019-07-29 | プログラム移送システムおよびロボットシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112298995A true CN112298995A (zh) | 2021-02-02 |
Family
ID=74258699
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010732557.XA Pending CN112298995A (zh) | 2019-07-29 | 2020-07-27 | 程序转移***以及机器人*** |
Country Status (3)
Country | Link |
---|---|
US (1) | US11237819B2 (zh) |
JP (1) | JP7415356B2 (zh) |
CN (1) | CN112298995A (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113742992B (zh) * | 2021-04-19 | 2024-03-01 | 广东工业大学 | 基于深度学习的主从控制方法及应用 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6463360B1 (en) * | 1999-10-26 | 2002-10-08 | Denso Corporation | Mobile robot, automated production system, and mobile robot system |
CN101970185A (zh) * | 2009-05-22 | 2011-02-09 | 关东自动车工业株式会社 | 作业辅助机器人*** |
CN108401423A (zh) * | 2017-09-05 | 2018-08-14 | 深圳蓝胖子机器人有限公司 | 自动输送包裹的方法、***、机器人及存储装置 |
CN108693851A (zh) * | 2017-03-31 | 2018-10-23 | 发那科株式会社 | 行为信息学习装置、机器人控制***及行为信息学习方法 |
CN108698228A (zh) * | 2016-01-26 | 2018-10-23 | 株式会社富士 | 任务创建装置及作业***以及作业机器人的控制装置 |
CN208494999U (zh) * | 2018-06-28 | 2019-02-15 | 北京京东尚科信息技术有限公司 | 货物分拣装置和货物分拣*** |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08174356A (ja) | 1994-12-28 | 1996-07-09 | Nissan Motor Co Ltd | 部品組立装置 |
JP3196704B2 (ja) | 1997-09-30 | 2001-08-06 | 松下電器産業株式会社 | 産業用ロボット |
JP2005246543A (ja) | 2004-03-04 | 2005-09-15 | Yaskawa Electric Corp | ロボットシステム |
US8584120B2 (en) * | 2009-11-23 | 2013-11-12 | Julian Michael Urbach | Stream-based software application delivery and launching system |
US8813076B2 (en) * | 2011-11-17 | 2014-08-19 | International Business Machines Corporation | Virtual machine updates |
DE102016009030B4 (de) * | 2015-07-31 | 2019-05-09 | Fanuc Corporation | Vorrichtung für maschinelles Lernen, Robotersystem und maschinelles Lernsystem zum Lernen eines Werkstückaufnahmevorgangs |
JP6522488B2 (ja) * | 2015-07-31 | 2019-05-29 | ファナック株式会社 | ワークの取り出し動作を学習する機械学習装置、ロボットシステムおよび機械学習方法 |
JP6140262B1 (ja) * | 2015-12-25 | 2017-05-31 | ファナック株式会社 | 製造セルの作業の遅れを修正する製造管理装置 |
JP2017199077A (ja) * | 2016-04-25 | 2017-11-02 | ファナック株式会社 | 複数台の産業機械を有する生産システムの動作を最適化するセルコントローラ |
JP6514166B2 (ja) * | 2016-09-16 | 2019-05-15 | ファナック株式会社 | ロボットの動作プログラムを学習する機械学習装置,ロボットシステムおよび機械学習方法 |
KR102212352B1 (ko) * | 2018-10-08 | 2021-02-04 | 국방과학연구소 | 로봇 제어 방법 및 장치 |
US20200167687A1 (en) * | 2018-11-27 | 2020-05-28 | Amazon Technologies, Inc. | Simulation modeling exchange |
CN114603559A (zh) * | 2019-01-04 | 2022-06-10 | 上海阿科伯特机器人有限公司 | 移动机器人的控制方法、装置、移动机器人及存储介质 |
-
2019
- 2019-07-29 JP JP2019138615A patent/JP7415356B2/ja active Active
-
2020
- 2020-07-27 CN CN202010732557.XA patent/CN112298995A/zh active Pending
- 2020-07-28 US US16/940,467 patent/US11237819B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6463360B1 (en) * | 1999-10-26 | 2002-10-08 | Denso Corporation | Mobile robot, automated production system, and mobile robot system |
CN101970185A (zh) * | 2009-05-22 | 2011-02-09 | 关东自动车工业株式会社 | 作业辅助机器人*** |
CN108698228A (zh) * | 2016-01-26 | 2018-10-23 | 株式会社富士 | 任务创建装置及作业***以及作业机器人的控制装置 |
CN108693851A (zh) * | 2017-03-31 | 2018-10-23 | 发那科株式会社 | 行为信息学习装置、机器人控制***及行为信息学习方法 |
CN108401423A (zh) * | 2017-09-05 | 2018-08-14 | 深圳蓝胖子机器人有限公司 | 自动输送包裹的方法、***、机器人及存储装置 |
CN208494999U (zh) * | 2018-06-28 | 2019-02-15 | 北京京东尚科信息技术有限公司 | 货物分拣装置和货物分拣*** |
Also Published As
Publication number | Publication date |
---|---|
JP7415356B2 (ja) | 2024-01-17 |
US11237819B2 (en) | 2022-02-01 |
JP2021022187A (ja) | 2021-02-18 |
US20210034353A1 (en) | 2021-02-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111730603B (zh) | 机器人***的控制装置以及控制方法 | |
CN109279252B (zh) | 货物拣选***和方法 | |
WO2018096902A1 (ja) | ピッキングシステム及びその制御方法 | |
JP2020111467A (ja) | ロボットシステムの制御装置及び制御方法 | |
CN112008713A (zh) | 机器人***的控制装置以及控制方法 | |
JP2006035397A (ja) | 搬送ロボットシステム | |
CN107871218B (zh) | 一种跨仓储搬运控制方法、装置及*** | |
CN113924172B (zh) | 分选***、移动机器人、用于操作分选***的方法、计算机程序产品和计算机可读介质 | |
JP2015507244A (ja) | 製造プラントの運転方法 | |
US20230150137A1 (en) | Controlling multiple robots to cooperatively unload a truck or other container | |
US20230158676A1 (en) | Controlling multiple robots to cooperatively pick and place items | |
JP2023168562A (ja) | ハンドリングシステム | |
CN112298995A (zh) | 程序转移***以及机器人*** | |
WO2022098706A1 (en) | Robotic tools and methods for operating same | |
US20210116923A1 (en) | Autonomous mobile vehicle | |
JP2020040798A (ja) | 搬送システム | |
CN111421546B (zh) | 机器人***的控制装置以及控制方法 | |
US11729959B2 (en) | Mounting substrate manufacturing system, component mounting system, and housing body transfer method | |
US20210116928A1 (en) | Autonomous mobile vehicle and method of operating the autonomous mobile vehicle | |
JP7318713B2 (ja) | 搬送システム、制御装置、搬送方法及びプログラム | |
JP7494433B2 (ja) | 生産システム | |
JP6958534B2 (ja) | 搬送車システム | |
WO2023281702A1 (ja) | 工場管理システム | |
JP2001236107A (ja) | 自動搬送装置および方法 | |
US20220100198A1 (en) | Autonomous product picking system and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210202 |