一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

控制程序生成装置、控制程序生成方法、程序与流程

2022-09-08 07:11:06 来源:中国专利 TAG:


1.本发明涉及一种用于生成具备多个致动器的自动制造机械的控制程序的技术。


背景技术:

2.现今,遍及所有的行业均强烈要求工厂等制造现场的省力化,设想这一趋势在今后也会日益增强。为了推动制造现场的省力化,必须有效利用自动地进行如下动作的自动制造机械:把持要加工或制造的对象物、搬送对象物、或者针对对象物实施各种加工或加热。
3.因此,根据要加工或制造的对象物、加工的内容(例如切削加工、弯曲加工)、在食品的情况下加热的程度等,开发了各种类型的自动制造机械(例如专利文献1、专利文献2)。
4.另外,加工或制造的对象物的大小、形状、材质等在每个制造现场是不同的,并且,加工的内容、加热的程度等也根据制造现场而不同。因此,在将自动制造机械导入制造现场时,难以沿用其它制造现场中所使用的自动制造机械,一般必须针对每个制造现场新开发专用的自动制造机械。
5.现有技术文献
6.专利文献
7.专利文献1:日本特开2011-245602号公报
8.专利文献2:日本特开2018-192570号公报


技术实现要素:

9.发明要解决的问题
10.但是,存在以下的问题:开发新的自动制造机械还需要新制作用于控制该自动制造机械的控制程序,这一情况成为在向制造现场导入新的自动制造机械时的巨大阻碍。其理由如下。
11.在开发新的自动制造机械时,首先,机械设计技术人员在理解了自动制造机械所要求的各种功能后,制作能够实现所要求的功能的自动制造机械的设计图。接着,具有用于制作程序的技术的技术人员(所谓的程序设计员)需要理解设计图中记载的各种致动器、机械部件的动作,之后制作通过使各种致动器协调地进行动作来实现所要求的功能的控制程序。
12.像这样,具有专门的技能的程序设计员需要在自动制造机械的设计结束之后着手制作控制程序,因此着手制作控制程序的时期延迟。此外,程序设计员也需要时间理解各种致动器、机械部件的动作。其结果是,从着手自动制造机械的开发到交货至制造现场为止需要长的时间,这一情况成为向制造现场导入新的自动制造机械时的巨大阻碍。
13.本发明是为了解决现有技术所具有的上述问题而完成的,其目的在于提供一种能够通过自动地生成自动制造机械的控制程序来大幅地缩短开发新的自动制造机械所需要的时间的技术。
14.用于解决问题的方案
15.为了解决上述问题,本发明的控制程序生成装置采用了下面的结构。即,
16.一种控制程序生成装置(100a、110),生成具备多个致动器(10~20)的自动制造机械(1)的控制程序,所述控制程序生成装置的特征在于,具备:
17.基本动作存储部(102),其将表示所述致动器的每个自由度的动作的基本动作(206)与实现所述基本动作的程序组件相对应地进行存储;
18.动作图读取部(103),其读取动作图(200),在所述动作图中,将从所述自动制造机械开始动作起至结束动作为止的动作期间分割为多个部分期间,将所述自动制造机械的动作分解为多个所述基本动作,并且将所述基本动作分配于从所述多个部分期间中针对每个所述基本动作选择出的任一个所述部分期间,由此描述有所述自动制造机械的动作;以及
19.控制程序生成部(105),其通过按照所述动作图上的所述部分期间的顺序将所述动作图上的分配于多个所述部分期间的多个所述基本动作的所述程序组件进行结合,来生成用于使所述自动制造机械动作的所述控制程序。
20.另外,与上述的控制程序生成装置对应的本发明的控制程序生成方法采用了下面的结构。即,
21.一种控制程序生成方法,用于通过计算机来生成具备多个致动器(10~20)的自动制造机械(1)的控制程序,所述控制程序生成方法的特征在于,包括以下工序:
22.动作图读取工序(步骤1),读取动作图(200),在所述动作图中,将从所述自动制造机械开始动作起至结束动作为止的动作期间分割为多个部分期间,将所述自动制造机械的动作分解为表示所述致动器的每个自由度的动作的多个基本动作(206),并且将所述基本动作分配于从所述多个部分期间中针对每个所述基本动作选择出的任一个所述部分期间,由此描述有所述自动制造机械的动作;
23.动作图解析工序(步骤2),通过解析所述动作图,来提取所述动作图中包含的多个所述基本动作以及分配有多个所述基本动作的所述部分期间;以及
24.控制程序生成工序(步骤3),通过参照将所述基本动作与用于实现所述基本动作的程序组件相对应地存储的对应关系,来将所述动作图中记载的所述基本动作变换为所述程序组件,并且通过按照所述部分期间的顺序将所述程序组件进行结合,来生成用于使所述自动制造机械动作的所述控制程序。
25.在所涉及的本发明的控制程序生成装置和控制程序生成方法中,预先将搭载于自动制造机械的多个致动器的基本动作与用于实现基本动作的程序组件相对应地进行存储。另外,通过如下的动作图预先描述自动制造机械的动作。即,将从自动制造机械开始动作起至结束动作为止的动作期间分割为多个部分期间,将自动制造机械的动作分解为多个基本动作。然后,预先制作通过将这些基本动作分配于多个部分期间中的任一个部分期间由此描述有自动制造机械的动作的动作图。然后,在生成自动制造机械的控制程序时,读取描述有自动制造机械的动作的动作图,将动作图中记载的基本动作变换为程序组件,并且按照部分期间的顺序将这些程序组件进行结合,由此生成控制程序。
26.由于致动器的基本动作为简单的动作,因此能够预先制作用于使致动器进行基本动作的程序组件。另外,机械设计技术人员在设计自动制造机械时,通过将致动器的基本动作进行组合来实现自动制造机械的动作,因此若是设计出自动制造机械的机械设计技术人
员、对自动制造机械的结构具有足够知识的技术人员,则能够容易地制作描述有自动制造机械的动作的动作图。因而,若读取动作图,将动作图中的基本动作变换为程序组件,并按照动作图将程序组件进行结合,则能够自动地生成用于控制自动制造机械的动作的控制程序。
27.另外,在上述的本发明的控制程序生成装置中,也可以使用如下的动作图来描述自动制造机械的动作。即,将动作图设为如下的表形式的动作图,在该表形式的动作图中,多个部分期间并排地配置于横向及纵向中的任一方,并且,多个致动器并排地分配于横向及纵向中的另一方。而且,也可以通过在表形式的动作图上在对应的坐标位置记入基本动作,来描述自动制造机械的动作。
28.如此,能够用动作图上的坐标位置来确定进行基本动作的致动器,因此不需要将基本动作设为致动器所固有的动作。因此,能够将相同的基本动作分配给不同的致动器,因此能够减少程序组件的种类。另外,在动作图中,能够容易地识别存在未被分配基本动作的部分期间、存在未被分配基本动作的致动器,因此即使在动作图中存在记入错误的情况下,也能够注意到该情况而进行修正,由此生成适当的控制程序。
29.另外,在上述的本发明的控制程序生成装置中,也可以是,在描述自动制造机械的动作的动作图中,将计时器的计时动作和计数器的计数动作中的至少一方作为依照基本动作的动作进行描述。
30.如此,能够在动作图中描述例如使动作的开始延迟直到经过一定时间、或使动作的开始延迟直到规定的按钮被按下的次数达到规定次数的动作。
31.另外,在上述的本发明的控制程序生成装置中,也可以是,在描述自动制造机械的动作的动作图中,将通过监视开关的状态来探测开关切换的情况的开关探测动作作为依照基本动作的动作进行描述。
32.如此,能够在动作图中描述例如若没有确认到部件已通过则不使致动器动作的动作。
33.另外,在上述的本发明的控制程序生成装置中,也可以是,在描述自动制造机械的动作的动作图中,将扬声器的声音输出动作和灯的发光动作中的至少一方作为依照基本动作的动作进行描述。
34.如此,能够在动作图中描述例如在从扬声器输出效果音等声音之后使致动器动作、或者在使灯点亮或闪烁后使致动器动作的自动制造机械的动作。
35.另外,在上述的本发明的控制程序生成装置中,也可以是,在描述自动制造机械的动作的动作图中,将加热器的加热动作作为依照基本动作的动作进行描述。
36.如此,能够在动作图中描述例如对金属材料进行热处理的自动制造机械的动作、对食材进行加热烹调的动作。
37.另外,上述的本发明的控制程序生成方法也能够理解为用于使用计算机实现控制程序生成方法的程序。即,本发明的程序用于使用计算机实现用于生成具备多个致动器(10~20)的自动制造机械(1)的控制程序的方法,所述程序的特征在于,使用计算机实现以下功能:
38.动作图读取功能(步骤1),读取动作图(200),在所述动作图中,将从所述自动制造机械开始动作起至结束动作为止的动作期间分割为多个部分期间,将所述自动制造机械的
动作分解为表示所述致动器的每个自由度的动作的多个基本动作(206),并且将所述基本动作分配于从所述多个部分期间中针对每个所述基本动作选择出的任一个所述部分期间,由此描述有所述自动制造机械的动作;
39.动作图解析功能(步骤2),通过解析所述动作图,来提取所述动作图中包含的多个所述基本动作以及分配有多个所述基本动作的所述部分期间;以及
40.控制程序生成功能(步骤3),通过参照将所述基本动作与用于实现所述基本动作的程序组件相对应地存储的对应关系,来将所述动作图中记载的所述基本动作变换为所述程序组件,并且通过按照所述部分期间的顺序将所述程序组件进行结合,来生成用于使所述自动制造机械动作的所述控制程序。
41.若使计算机读取并执行这种程序,则能够根据动作图自动地生成用于控制自动制造机械的动作的控制程序。
附图说明
42.图1是示出由本实施例的自动制造机械控制装置100控制的自动制造机械1的外观形状的说明图。
43.图2是概念性地示出自动制造机械控制装置100对搭载于自动制造机械1的各种致动器10~20的动作进行控制的情形的框图。
44.图3是概念性地示出用于开发新的自动制造机械1的大致的工序的说明图。
45.图4是关于本实施例的自动制造机械控制装置100使自动制造机械1根据动作图(yogo图)自动地生成自动制造机械1的控制程序的基本原理的说明图。
46.图5是例示本实施例的自动制造机械控制装置100读取的自动制造机械1的动作图(yogo图)的一部分的说明图。
47.图6是例示具有重复动作、条件分支动作的动作图(yogo图)的说明图。
48.图7是例示动作图(yogo图)上能够与基本动作同样地处理的动作的说明图。
49.图8是示出本实施例的自动制造机械控制装置100所具备的功能的说明图。
50.图9是例示本实施例的基本动作存储部102中存储的对应关系的说明图。
51.图10是本实施例的自动制造机械控制装置100根据动作图(yogo图)生成控制程序的控制程序生成处理的流程图。
52.图11是在控制程序生成处理中执行的yogo图解析处理的流程图。
53.图12是例示通过yogo图解析处理生成的中间数据的说明图。
54.图13是例示通过对中间数据进行变换而生成的控制程序的说明图。
55.图14是本实施例的自动制造机械控制装置100基于控制程序数据来对各致动器的动作进行控制的动作控制处理的流程图。
56.图15是关于控制程序生成部105和控制执行部106参照不同的存储部的变形例的自动制造机械控制装置100的说明图。
57.图16是关于自动制造机械控制装置100由yogo图处理装置100a和控制执行装置100b形成的变形例的说明图。
具体实施方式
58.a.装置结构:
59.图1是示出本实施例的自动制造机械1的大致的外观形状的说明图。本实施例的自动制造机械1是通过对长尺寸的管材自动地实施弯曲加工来加工成期望形状的机床(所谓的弯管机)。当然,本实施例的自动制造机械1只要能够搭载多个致动器、并针对对象物自动地执行把持、搬送、加工、加热等多个动作,也可以为弯管机以外的制造机械。例如,也可以为用于自动地制造食品的制造机械。或者,也可以为将具有多个关节的机械臂机器人与搬送装置组合而成的制造系统。
60.如图1所示,本实施例的自动制造机械1大致具有横长的长方体的外观形状,在长方体的顶面侧沿长边方向架设2条轨道2,在轨道2上的一端侧(图1中为左侧)搭载有把持并搬送作为加工对象的未图示的管材的搬送单元3。另外,在与搭载有搬送单元3的侧相反的一侧搭载有对未图示的管材实施弯曲等加工的加工单元4。在搬送单元3,突出设置有圆柱形状的把持轴3a,在把持轴3a的前端安装有把持未图示的管材的夹头3b。因此,能够通过在由夹头3b把持管材的状态下使搬送单元3在轨道2上移动,来将管材供给至加工单元4,并由加工单元4对该管材实施弯曲加工等。
61.本实施例的自动制造机械1能够利用搬送单元3的移动量来控制管材的送出量,因此能够自由地控制对管材实施弯曲加工等的位置。另外,也能够通过使安装有夹头3b的把持轴3a绕轴旋动(所谓的扭转动作),来将管材向期望的方向弯曲。为了实现此情况,在搬送单元3的内部,搭载有用于使夹头3b打开和关闭的致动器10、用于使把持轴3a绕轴旋动的致动器11、用于使把持轴3a沿轴向进退移动的致动器12、用于使搬送单元3在轨道2上进退移动的致动器13等。在本实施例的自动制造机械1中,这些致动器10~13均使用通过交流电源而动作的伺服马达,但能够根据致动器所要求的性能而采用其它驱动方式的致动器(例如液压缸、螺线管、步进马达等)。此外,在搬送单元3中,也搭载有用于检测把持轴3a的旋转位置或搬送单元3的移动位置的编码器、限位开关等传感器类,但为了避免附图变得繁杂,在图1中省略了图示。
62.在加工单元4的内部搭载有用于将管材弯曲的致动器17、用于在将管材弯曲时使对管材施加力的位置移动的致动器18、用于使加工单元4整体在上下方向上移动的致动器19、用于针对管材形成称为凸缘的平端面或形成称为凸起的环状的凸部的致动器20等。此外,在加工单元4也搭载有编码器、或触点开关等开关/传感器类,但为了避免附图变得繁杂,省略了关于它们的图示。
63.另外,在加工单元4的内部搭载有用于驱动上述各种致动器10~13、17~20的多个驱动电路(省略图示)。在此,驱动电路是指具有如下功能的电气部件。为了使致动器10~13、17~20进行期望的动作,需要向致动器10~13、17~20供给适当的波形的驱动电流。但是,应向致动器10~13、17~20供给的驱动电流根据致动器10~13、17~20的驱动方式而不同,并且,即使是相同方式的致动器,驱动电流的电流值也根据致动器的不同而不同。因此,针对致动器10~13、17~20准备了称为驱动电路的专用的电气部件,当自动制造机械控制装置100对驱动电路指定驱动量时,驱动电路对致动器10~13、17~20输出适当的驱动电流,其结果是,致动器10~13、17~20被驱动。
64.并且,如图1所示,在2条轨道2的下方空间也搭载有各种机械部件,该空间为布线
有用于从搭载于加工单元4内的多个驱动电路(省略图示)向搬送单元3内的各种致动器10~13供给驱动电流的电力线缆(省略图示)、用于将来自搭载于搬送单元3的各种开关/传感器类的信号传递至加工单元4的信号线缆(省略图示)等的空间。当随着搬送单元3在轨道2上进退移动的动作而这些电力线缆、信号线缆在空间内移动时,担心互相缠绕或卡在某物上。因此,为了避免此种情况的发生,在轨道2的下方的空间也搭载有致动器14~16,致动器14~16用于在电力线缆、信号线缆存在无用的余裕的情况下通过拉回线缆来消除无用的余裕,并在电力线缆或信号线缆被强力拉紧的情况下、通过将拉回的线缆送出来使线缆具有适度的余裕。在本实施例的自动制造机械1中,采用气缸作为致动器14~16,这些气缸的动作也由自动制造机械控制装置100通过未图示的驱动电路来控制。
65.如以上说明的那样,在自动制造机械1中搭载有大量的致动器10~20。而且,为了将要加工的对象物(在此为管材)自动地加工为目标的形状,需要使这些致动器10~20在适当的定时适当地动作。驱动这些致动器10~20的是各个致动器10~20的驱动电路,驱动电路驱动各个致动器10~20的动作是由后述的自动制造机械控制装置100按照预先读取的控制程序来控制的。
66.图2是概念性地示出本实施例的自动制造机械控制装置100控制搭载于自动制造机械1的致动器10~20的动作的情形的框图。此外,在图2中,还省略了控制所需要的开关/传感器类的图示。如图所示,在自动制造机械控制装置100与致动器10之间设置有致动器10的驱动用的驱动电路10d,自动制造机械控制装置100直接控制驱动电路10d的动作。对于致动器11~20也是同样地,在自动制造机械控制装置100与致动器11~20之间设置有用于驱动致动器11~20的驱动电路11d~20d,自动制造机械控制装置100通过驱动电路11d~20d来间接地控制致动器10~20。
67.另外,如前面使用图1所记述的那样,在本实施例的自动制造机械1中,在致动器10~13、17~20中采用了伺服马达,在致动器14~16中采用了气缸。在此,伺服马达是指进行伺服控制的马达,代表性的是对流过马达的电流值进行反馈控制以使位置(或角度、速度等)成为目标值的马达。另外,气缸是利用空气压力使可动部直线移动的致动器,通过将与压缩空气的供给源连接的端口打开和关闭来进行动作。另外,对于端口的打开和关闭,使用了顺序控制。
68.像这样,在本实施例的自动制造机械控制装置100连接有进行伺服控制的致动器10~13、17~20以及进行顺序控制的致动器14~16。在图中,自动制造机械控制装置100与致动器10~13、17~20用实线连接表示这些致动器10~13、17~20进行伺服控制。另外,自动制造机械控制装置100与致动器14~16用虚线连接表示这些致动器14~16进行顺序控制。当然,也能够将以伺服控制、顺序控制以外的方式来控制的致动器与自动制造机械控制装置100连接。
69.自动制造机械控制装置100按照控制程序、通过驱动电路10d~20d来控制致动器10~20,该控制程序需要预先制作并使自动制造机械控制装置100读取。在此,制作用于使如图2所示的大量的致动器10~20在适当的定时适当地动作的控制程序并不容易。尤其是,在如伺服控制、顺序控制那样不同的控制方式的致动器混合存在的情况下,控制程序的制作需要长时间。因此,现状是控制程序的制作耗费了新的自动制造机械1的开发期间中的一半以上的期间。
70.b.控制程序的制作方法:
71.b-1.概要:
72.图3是概念性地示出用于开发新的自动制造机械1的大致的工序的说明图。在图3的(a)中示出了从以往以来就在进行的开发工序。另外,在图3的(b)中示出了本技术的发明人所提出的新的开发工序。
73.在以往的开发工序中,如图3的(a)所示,首先,机械设计技术人员在理解了自动制造机械1所要求的各种功能后,制作嵌入有用于实现这些功能的机构的自动制造机械1的设计图。在制作设计图时,机械设计技术人员要一个一个地探讨并决定需要什么样的可动部分、这些可动部分必须进行什么样的动作、为了进行该动作而需要在何处需要多少具有何种程度的扭矩、可动量、精度的致动器这样的内容。然后,在决定实际要搭载的致动器、并且还考虑致动器的搭载性及维护性后,最终完成设计图。
74.如此完成自动制造机械1的机械设计后,接下来着手制作用于控制该自动制造机械1的控制程序。在控制程序的制作中,需要与软件有关的专业技术,因此必须由具有该专业技术的技术人员(即,程序设计员)进行制作。因此,机械技术人员在结束机械设计时,制作自己思考出的表现自动制造机械1的动作的流程图,之后与程序设计员讨论并说明自动制造机械1的动作。至此即为机械设计技术人员所进行的作业。
75.另一方面,与机械设计技术人员讨论的程序设计员在通过熟读机械设计技术人员制作出的流程图、根据需要熟读设计图、或熟读其它资料而理解了自动制造机械1的动作后,开始制作用于控制搭载于自动制造机械1的各种致动器的动作的控制程序。程序设计员一般使用能够由人解读的高级程序语言来制作控制程序,但计算机无法直接以高级程序语言执行控制程序。因此,程序设计员通过在完成控制程序后,将利用高级程序语言描述的控制程序变换为计算机能够执行的机器语言的控制程序,最终完成控制程序。此外,将高级程序语言的控制程序变换为计算机能够执行的程序的作业被称为编译,该作业通过使用被称为编译器的专用程序来进行从而在短时间内结束。
76.如图3的(a)所例示的那样,在从以往以来就在进行的开发工序中,控制程序的制作通常花费机械设计所需要的期间的1.5倍~2.5倍左右的期间。并且,在机械设计和控制程序的制作中,难以使大部分的工序同时进行,因此导致自动制造机械1的开发期间变长。此外,需要确保机械设计技术人员及程序设计员这种具有不同技术的专家,这也成为开发新的自动制造机械1时的巨大阻碍。
77.另一方面,在图3的(b)中示出了使用本技术的发明人提出的新方法来开发自动制造机械1的工序。在使用新方法的情况下,机械设计本身也与以往的方法相同。即,机械设计技术人员在理解了自动制造机械1所要求的各种功能后,制作嵌入有用于实现这些功能的机构的自动制造机械1的设计图。此时,探讨实现功能所需要的可动部分、可动部分的动作内容、用于启动可动部分的致动器的性能等,决定致动器,并且之后还考虑致动器的搭载性及维护性等,最终完成设计图。
78.当完成设计图时,在新的开发工序中,机械设计技术人员制作动作图来取代流程图(参照图3的(b))。该动作图是以图的形式来描述机械设计技术人员在机械设计时所考虑的各致动器的动作,之后将详细地进行说明。该动作图是本技术的发明人独自想出的,并且是世上所不存在的图,因此命名为“yogo图”。因此下面将该新的动作图表述为“yogo图”。因
而,本实施例的yogo图与本发明中的“动作图”对应。
79.如后述的那样,yogo图不过是将机械设计技术人员在机械设计时所考虑的各致动器的动作如所想的那样表现出来的图。因此,若是进行过机械设计的机械设计技术人员,则能够以制作流程图的期间的一半左右的期间制作出(参照图3的(b))。此外,yogo图能够以专用的程序读取,由此变换为计算机的cpu能够执行的控制程序。能够将yogo图变换为控制程序的理由也在后面记述。如果像这样将自动制造机械1的动作描述于yogo图,则能够根据yogo图生成机器语言的控制程序,因此如图3所示那样相比于以往的方法而能够将新的自动制造机械1的开发期间缩短为至少一半以下(代表性地为1/3左右)。此外,yogo图能够由机械设计技术人员简单地制作,从而也不需要事先确保程序设计员。因此,几乎能够完全消除开发新的自动制造机械1时成为巨大阻碍的各种情况。此外,即使在变更自动制造机械1的动作的情况、向自动制造机械1追加新的致动器的情况下,也能够通过改写yogo图并用专用的程序读取来立即生成控制程序。下面,说明这种情况能够实现的理由。
80.b-2.根据yogo图自动地生成控制程序的原理:
81.图4是关于根据动作图(yogo图)自动地生成自动制造机械1的控制程序的原理的说明图。在图4的(a)中示出了实施各种改良之前的原始的yogo图。后述的本实施例的yogo图为发展图4的(a)所示的原始的yogo图并进行了改良的图,但自动地生成控制程序的原理与原始的yogo图相同。因此,为了容易理解,使用图4的(a)所示的原始的yogo图来说明根据yogo图自动地生成控制程序的原理。另外,为了避免说明复杂化,设为搭载于自动制造机械1的致动器仅为两个马达a、b以及两个缸(cylinder)a、b。
82.如图4的(a)所示,在yogo图中,通过将这些致动器(在此为马达a、b以及缸a、b)的基本的动作进行组合,来表现自动制造机械1的动作。在此,致动器的基本的动作是指致动器向所具有的自由度方向的动作(下面称为基本动作)。例如,若是如马达那样进行旋转的致动器,则旋转动作为基本动作,若是如缸那样进行进退移动的致动器,则进退移动的动作为基本动作。另外,通过由马达使滚珠丝杠旋转来使与滚珠丝杠啮合的构件进行进退移动那样的致动器的情况下,马达的旋转动作以及构件进行进退移动的动作中的任一动作为基本动作。像这样,致动器的基本动作为致动器以所指定的动作量向致动器的自由度方向进行动作的简单动作。
83.另外,在yogo图中,将从自动制造机械1开始动作起至结束动作为止的动作期间分割为多个部分期间,将各个致动器的基本动作分配于这些多个部分期间中的任一个部分期间。在图4的(a)所示的例子中,将自动制造机械1的动作期间分割为5个部分期间1~5,在部分期间1分配有缸a以动作量(a)进行进退移动的动作。另外,在部分期间2分配有马达a以动作量(b)进行旋转的动作。也能够在部分期间分配多个动作。即,在部分期间3分配有马达b以动作量(c)进行旋转的动作、以及缸b以动作量(d)进行进退移动的动作这两个动作,在部分期间4分配有马达a以动作量(-b)进行旋转的动作、马达b以动作量(-c)进行旋转的动作、以及缸b以动作量(-d)进行进退移动的动作这三个动作。而且,在最后的部分期间5分配有缸a以动作量(-a)进行进退移动的动作。
84.通过像这样在部分期间分配致动器的基本动作,能够描述自动制造机械1执行的如下面那样的动作。首先,使缸a以动作量(a)进行进退移动,在缸a的动作结束后,使马达a以动作量(b)进行旋转。然后,在马达a的动作结束后,使马达b以动作量(c)进行旋转,并且
使缸b以动作量(d)进行进退移动。在马达b和缸b的动作结束后,使马达a和马达b分别以动作量(-a)和动作量(-c)进行旋转,并且使缸b以动作量(-d)进行进退移动。然后,在马达a、马达b以及缸b的全部的动作结束后,最后使缸a以动作量(-a)进行进退移动,从而结束全部的动作。像这样,如果将搭载于自动制造机械1的致动器的基本动作分配于任一个部分期间,则能够描述自动制造机械1的动作。
85.此外,如从以上的说明清楚得知,部分期间表示所分配的致动器进行动作的期间,而并非表示时间的长度。例如,部分期间1的时间的长度为缸a进行动作所需要的时间,部分期间2的时间的长度为马达a进行动作所需要的时间,部分期间3的时间的长度为马达b进行动作所需要的时间以及缸b进行动作所需要的时间中的较长一方的时间。因而,一般而言各个部分期间的时间的长度是互不相同的。
86.另外,分配于部分期间的致动器的基本动作例如是使马达以一定量进行旋转、或者使缸以一定量进行进退移动的简单动作。因而,能够预先制作用于使致动器进行基本动作的小型的程序(下面称为程序组件)。在此,搭载于自动制造机械1的致动器设为缸a、b以及马达a、b这四个,因此如图4的(b)所示,能够预先制作用于使马达a进行动作的程序组件prog1、用于使马达b进行动作的程序组件prog2、用于使缸a进行动作的程序组件prog3、以及用于使缸b进行动作的程序组件prog4。
87.因此,如果将这些程序组件按照图4的(a)所示的原始的yogo图中描述的那样连结,则能够自动地生成用于使自动制造机械1进行动作的控制程序。即,如图4的(c)所示,首先启动程序组件prog3,在程序组件prog3结束后,启动程序组件prog1,在程序组件prog1结束后,启动程序组件prog2和程序组件prog4。程序组件prog3、程序组件prog1、程序组件prog2、程序组件prog4的动作量按照yogo图上的指定分别使用(a)、(b)、(c)、(d)。并且,在程序组件prog2和程序组件prog4均结束后,此次启动程序组件prog1、程序组件prog2以及程序组件prog4。此时的动作量按照yogo图上的指定分别使用(-b)、(-c)、(-d)。在这些程序组件prog1、prog2、prog4均结束后,最后启动程序组件prog3。此时的动作量按照yogo图上的指定使用(-a)。然后,在程序组件prog3结束后,图4的(a)的yogo图中所描述的自动制造机械1的动作结束。
88.如以上说明的那样,只要事先将自动制造机械1的动作以图4的(a)所示的yogo图的方式进行描述,就能够生成图4的(c)所示的控制程序并使自动制造机械1进行动作。然而,为了使自动制造机械1如所期望地那样进行动作,需要正确地制作yogo图。从这样的观点出发,下面说明的本实施例的yogo图是作为对图4的(a)所例示的原始的yogo图加以各种改良的结果所得到的。
89.b-3.yogo图:
90.图5是用于说明本实施例的yogo图200的概要的说明图。此外,若为了显示yogo图200的整体而缩小尺寸,则导致破坏显示而无法辨认,因此在图5中显示了yogo图200的一部分(左上角部分)。如图5所示,yogo图200是多条横线与多条竖线交叉而成的大的表格那样的形状。下面,将相交叉的多条线中的横线称为“分隔线”201,将竖线称为“触发线”202。
91.对触发线202赋予了从1号开始的连续编号。在图5所示的例子中,在yogo图200的上端的栏内记载有其下方的触发线202的连续编号。另外,彼此相邻的触发线202之间的区域为使用图4在前面记述了的部分期间,对部分期间也赋予了从1号开始的连续编号(下面
称为部分期间编号)。此外,在图5所例示的yogo图200中,触发线202纵向地引出,因而,夹在触发线202与触发线202之间的部分期间横向并排。但是,触发线202也可以横向地引出,在该情况下,多个部分期间纵向并排。
92.另外,本实施例的yogo图200被多个分隔线201分割为多个横长的区域,对这些横长的区域赋予了从1号开始的连续编号(下面称为致动器编号)。将搭载于自动制造机械1的致动器分配于任一个区域。在图5所示的例子中,在致动器编号为1号的区域分配有致动器10(参照图2),在致动器编号为2号的区域分配有致动器11(参照图2),在致动器编号为3号的区域分配有致动器12(参照图2),在致动器编号为4号的区域分配有致动器13(参照图2)。在本实施例的自动制造机械1中搭载有致动器10~20这11个致动器,因此像这样针对这些全部的致动器逐个地分配了横长的区域。
93.然后,将致动器10~20的基本动作记载于分配有该致动器10~20的横长的区域上的适当的位置。例如,若使致动器10在部分期间4进行基本动作,则在yogo图200上,在致动器编号为1号的横长的区域上,在以部分期间编号为4号所确定的方格状的坐标位置记载希望使致动器10进行的基本动作206。另外,若在部分期间4和部分期间8使致动器10进行基本动作,则在致动器编号为1号的横长的区域上的部分期间编号为4号的方格状的坐标位置以及相同的横长的区域上的部分期间编号为8号的坐标位置记载希望使致动器10进行的基本动作206。像这样,如将致动器10的基本动作206记载于yogo图200上致动器编号为1号的横长的区域上、将致动器11的基本动作206记载于致动器编号为2号的横长的区域上那样地,将致动器10~20的基本动作206记载于yogo图200上分配有该致动器10~20的区域上。本实施例的yogo图200通过这样记载基本动作的理由如下。
94.首先,说明图4的(a)所例示的原始的yogo图,在原始的yogo图中,多个致动器的动作混在一起进行了描述,例如,难以立即识别在部分期间1进行了动作的缸a接下来将在哪个动作期间进行动作。因此,难以想象各个致动器进行动作的情形,并且,也难以判读各致动器的动作次数。其结果是,例如,有可能未察觉到存在未返回到原来位置的致动器、或者未察觉到存在忘记描述动作的致动器。
95.相对于此,本实施例的yogo图200如图5所示那样将针对每个致动器描述动作的区域分开,因此能够在视觉上容易地掌握哪个致动器在哪个部分期间进行动作,并能够容易地识别各致动器的动作次数。因此,即使在存在未返回到原来位置的致动器、或者存在忘记描述动作的致动器的情况下,也能够容易地识别该情况。其结果是,能够容易地制作使自动制造机械1按照期望的那样进行动作的yogo图200。
96.此外,如后述的那样在yogo图200中也能够描述致动器以外的设备的动作,针对这些设备也逐个地分配横长的区域。
97.另外,在本实施例的yogo图200中,如下面那样记载基本动作。作为一例,说明图5的yogo图200中最初进行动作的致动器13的基本动作206。由于进行动作的致动器为致动器13,因此对应的致动器编号为4号,并且由于是最初进行动作,因此对应的部分期间编号为1号。因而,yogo图200上记载基本动作206的位置为致动器编号为4号且部分期间编号为1号的方格状的坐标位置。与部分期间编号为1号的坐标位置对应的方格是夹在左侧存在的1号的触发线202与右侧存在的2号的触发线202之间的方格,因此从1号的触发线202朝向2号的触发线202记入表示致动器的动作的动作线203。而且,在动作线203的左端(因而为1号的触
发线202上)记入表示动作的开始的起点204,在动作线203的右端(因而为2号的触发线202上)记入表示动作的结束的终点205。在图5所示的例子中,动作线203用粗实线表示,起点204用空心的圆形记号表示,终点205用黑色的圆形记号表示。
98.并且,在动作线203的上方记入要使致动器进行的基本动作206。在图5所示的例子中,在致动器编号为4号且部分期间编号为1号的基本动作中记入了“ω-aa”这一基本动作206。如后所述,基本动作206与用于使致动器进行基本动作的能够由计算机执行的程序组件相对应。因而,能够通过在动作线203的上方记入基本动作206,来确定计算机能够执行的程序组件。并且,能够根据记入有动作线203和基本动作206的坐标位置的致动器编号来确定使用程序组件进行动作的致动器。而且,能够根据坐标位置的部分期间编号来确定使致动器进行动作的部分期间。
99.另外,对于基本动作,通过指定旋转速度或移动速度、动作时间等参数,能够指定更详细的动作。在图5所示的例子中,在致动器编号为4号且部分期间编号为1号的坐标位置记载在“ω-aa”这一基本动作206的下方的“a-100”这一标示表示针对“ω-aa”这一基本动作206指定的参数。当然,也能够通过针对基本动作指定多个参数来更进一步详细地指定动作。例如,在致动器为马达的情况下,可以指定旋转速度和旋转角度,在致动器为线性马达的情况下,可以指定移动速度和移动距离。考虑到像这样指定多个种类的参数的情况,在参数的开头记载表示参数的种类的字母。此外,通过参数指定的内容不限于表示速度、位置等的数值,也可以指定例如马达的加速及减速的程度、表示加减速的方式的驱动模式等。
100.另外,在致动器例如为气缸那样进行前进或后退直到冲程极限的这种简单动作的致动器的情况下,通过程序组件所实现的基本动作为只进行前进或后退的动作直到经过一定时间为止、或者进行前进或后退的动作直到触点开关接通(on)为止。如果是这种简单的动作则不需要参数,因此在动作线203的上方记入不带参数的基本动作206。
101.在图5所例示的yogo图上,针对第二个进行动作的致动器11的基本动作206也同样地记载。下面简单地进行说明,该基本动作206是致动器11在第二个部分期间执行的动作,因此记载基本动作206的位置是致动器编号为2号且部分期间编号为2号的坐标位置。因此,在从左侧存在的2号的触发线202到右侧存在的3号的触发线202之间引出动作线203,在动作线203的左端记入起点204,在动作线203的右端记入终点205。而且,在动作线203的上方记入希望使致动器11进行的基本动作206(在此为ω-ab),在基本动作206的下方的位置记入参数(在此为a-10)。其结果是,在第二个部分期间,针对致动器11记载指定“a-10”这一参数并进行“ω-ab”这一基本动作206的内容。
102.上面是使用yogo图200来描述自动制造机械1的动作的基本的方法,但以更进一步地容易地进行动作的描述为目的,在yogo图200中,准备有各种描述方法。
103.例如,在图6所示的yogo图中,相对于上述的图5的yogo图,将5号的触发线202和7号的触发线202变更为虚线的触发线202。这表示重复进行被分配于夹在5号~7号的触发线202之间的部分期间(即,部分期间编号为5号和6号的部分期间)的动作。在这两条触发线202中的率先出现的5号的触发线202的下方,在虚线的矩形208中记入有重复条件。在图6所示的例子中,重复执行分配于从5号的触发线202到7号的触发线202的部分期间的动作直到变量vc的值变为0为止。而且,当在5号的触发线202的下方记入的重复条件(在此为变量vc=0)成立时,开始在9号的触发线202上记入有起点204的动作(即,分配于部分期间编号为9
号的部分期间的动作)。
104.另外,在图6所示的yogo图中,相对于上述的图5的yogo图,将9号的触发线202和13号的触发线202变更为一点划线的触发线202。它们表示条件分支。另外,在9号的触发线202的下方和13号的触发线202的下方分别显示有一点划线的矩形208,它们表示分支条件。在图6所示的例子中,在9号的触发线202的下方的矩形208中记入了“a》b”,在13号的触发线202的下方的矩形208中记入了“else(否则)”,它们表示:如果“a》b”的条件成立则开始在9号的触发线202上记入有起点204的动作(即,分配于部分期间编号为9号的部分期间的动作),在“a》b”的条件不成立的情况(else的情况)下,开始在13号的触发线202上记入有起点204的动作(即,分配于部分期间编号为13号的部分期间的动作)。
105.另外,在自动制造机械1中,有时会在致动器的动作开始前空出一定时间的间隔、或者例如在确认出供给了一定个数的部件后使致动器进行动作。并且,有时会在致动器的动作开始前输出声音(包含效果音)来促使周围的作业者注意、或者使灯在一定时间点亮或闪烁。像这样使用计时器来计时一定时间的动作、使用计数器计数一定数的动作、从扬声器输出声音的动作以及使灯发光来点亮或闪烁的动作虽然不是通过致动器进行的动作,但能够作为依照其的动作而与基本动作同样地处理。在yogo图200中,也能够描述虽然不是通过致动器进行的动作但能够与基本动作同样地处理的动作。
106.图7是例示在yogo图200上描述能够与基本动作同样地处理的动作的方式的说明图。在图7的(a)中描述了对规定时间的经过的情况进行计时的动作(计时动作)。在yogo图200中,计时器的计时动作也是通过在左端具有起点204且在右端具有终点205的动作线203的上方记入表示计时器进行的计时的基本动作206(在此为ω-tm1)来进行描述的。由计时器计时的经过时间能够使用参数来指定。
107.在图7的(b)中描述了计数规定个数(或规定次数)的动作(计数动作)。计数器的计数动作也是通过在左端具有起点204且在右端具有终点205的动作线203的上方记入表示计数器的计数动作的基本动作206(在此为ω-ct1)来进行描述的。由计数器计数的计数值能够使用参数来指定。
108.在图7的(c)中描述了在规定时间期间监视开关的状态来探测开关切换的情况的动作(开关探测动作)。在此,开关可以是操作按钮那样的开关,可以是接近开关,也可以是光耦合器那样的光学式开关。这样的开关探测动作也是通过在左端具有起点204且在右端具有终点205的动作线203的上方记入表示开关探测动作的基本动作206(在此为ω-sw1)来进行描述的。监视开关的状态的时间能够使用参数来指定。
109.在图7的(d)中描述了从扬声器输出声音的动作(声音输出动作)。在yogo图200中,扬声器的声音输出动作也是通过在左端具有起点204且在右端具有终点205的动作线203的上方记入表示扬声器的驱动的基本动作206(在此为ω-sp1)来进行描述的。从扬声器输出的声音数据能够使用参数来指定。
110.在图7的(e)中描述了使灯发光的发光动作。灯的发光动作也是通过在左端具有起点204且在右端具有终点205的动作线203的上方记入表示灯的发光动作的基本动作206(在此为ω-ll1)来进行描述的。使灯发光的方式(例如,点亮或闪烁的方式)能够使用参数来指定。
111.在图7的(f)中描述了使用加热器来对对象物进行加热、或者对食材进行加热烹调
的加热动作。加热器的加热动作也是通过在左端具有起点204且在右端具有终点205的动作线203的上方记入表示加热器的加热动作的基本动作206(在此为ω-ht1)来进行描述的。加热温度、加热时间能够使用参数来指定。
112.如以上那样,在本实施例的yogo图中,在由致动器编号和部分期间编号确定的方格状的坐标位置记入动作线203、起点204、终点205、基本动作206、以及需要时的参数。然后,通过将搭载于自动制造机械1的全部的致动器10~20的基本动作像这样记载在yogo图上,来描述自动制造机械1的动作。然后,自动制造机械控制装置100根据这样的yogo图生成控制程序来控制自动制造机械1的动作。
113.c.本实施例的自动制造机械控制装置100:
114.图8是示出本实施例的自动制造机械控制装置100所具备的功能的说明图。如图8所示,本实施例的自动制造机械控制装置100具备yogo图制作部101、基本动作存储部102、yogo图读取部103、yogo图解析部104、控制程序生成部105以及控制执行部106等。此外,这些“部”是表示自动制造机械控制装置100应事先具备的多个功能以使用自动制造机械控制装置100制作yogo图200并根据该yogo图200生成控制程序来控制自动制造机械1的动作的抽象概念。因而,并非表示自动制造机械控制装置100是通过将相当于这些“部”的部件进行组合而形成的。实际上,这些“部”也能够以由cpu执行的程序的方式来实现,也能够以将ic芯片及lsi等组合得到的电子电路的方式来实现,还能够以这些方式混合存在的方式等各种方式来实现。
115.yogo图制作部101与监视器画面100m以及操作输入按钮100s等连接,对自动制造机械1具有足够知识的机械技术人员等通过一边观看监视器画面100m一边对操作输入按钮100s进行操作,来制作如图5所例示的yogo图200。如上所述,yogo图200是将搭载于自动制造机械1的多个致动器的基本动作分配于任一个部分期间来描述自动制造机械1的动作的图。在机械设计时,机械设计技术人员为了实现自动制造机械1的动作而充分地探讨了如何将多个致动器的基本动作进行组合为佳,因此若是进行了机械设计的机械设计技术人员,则能够简单地制作描述有自动制造机械1的动作的yogo图200。当然,若是对自动制造机械1的结构和动作具有足够知识的机械技术人员,即使不是设计出自动制造机械1的技术人员,则也能够简单地制作yogo图200。
116.另外,如前面使用图5~图7所记述的那样,在yogo图200中,需要记入基本动作206(或依照基本动作的动作)。因此,在基本动作存储部102中,将致动器(或扬声器、灯、开关等)的名称与能够由该致动器等执行的基本动作206相关联地进行存储。
117.图9是示出将致动器等的名称与基本动作206进行对应的情形的说明图。将这样的对应关系存储于基本动作存储部102。如图所示,以与致动器等对应的状态存储有能够由该致动器等执行的基本动作206(还包含计时动作等依照基本动作的动作)。对于能够执行多种基本动作的致动器等,存储能够执行的各个基本动作206。并且,还针对各个基本动作206存储有程序组件编号以及保存有程序组件的开头地址值。程序组件编号是指确定用于实现基本动作(或者依照基本动作的动作)的程序组件的编号。另外,程序组件以cpu能够执行的形式保存于存储器中,并且还将存储器上保存有程序组件的地址的开头的地址值相对应地存储于基本动作存储部102中。
118.如图8所示,yogo图制作部101与基本动作存储部102连接。因此,机械设计技术人
员(或机械技术人员)能够在制作yogo图200时参照存储于基本动作存储部102的图9的数据。而且,若是对自动制造机械1具有足够知识的机械技术人员,则充分了解使何种致动器如何动作,因此能够从致动器等的名称确定基本动作206。并且,也能够容易地决定参数所指定的内容。因此,能够简单地制作yogo图200。
119.yogo图读取部103读取由yogo图制作部101制作出的yogo图200,并输出至yogo图解析部104。此外,在本实施例中,设为由自动制造机械控制装置100制作yogo图200,与此对应地,yogo图读取部103从yogo图制作部101读取yogo图200。相对于此,也可以由与自动制造机械控制装置100分开设置的计算机50事先制作yogo图200,并由yogo图读取部103读取该yogo图。
120.yogo图解析部104通过对从yogo图读取部103接收到的yogo图200进行解析来生成中间数据,之后将中间数据输出到控制程序生成部105。关于根据yogo图生成中间数据的处理,在后面详细地说明。
121.控制程序生成部105当接收到中间数据时,通过参照基本动作存储部102中所存储的对应关系,来根据中间数据生成控制程序。关于根据中间数据生成控制程序的方法,在后面详细地说明。然后,将所得到的控制程序输出到控制执行部106。
122.控制执行部106当从控制程序生成部105接收到控制程序时,从基本动作存储部102获取与控制程序中的程序组件编号对应地存储的程序组件。即,如前面使用图9所述的那样,在基本动作存储部102中,与程序组件编号相对应地存储保存有程序组件的开头地址值,因此能够读取与程序组件编号对应的程序组件。然后,通过执行所读取的程序组件,来通过驱动电路10d~20d控制致动器10~20。通过这样,自动制造机械1按照yogo图中所记载的那样进行动作。
123.此外,本实施例的yogo图读取部103与本发明的“动作图读取部”对应。另外,关于前面使用图8所述的yogo图读取部103、yogo图解析部104以及控制程序生成部105,它们以一体的形式实现根据yogo图200生成控制程序的功能。因而,在本实施例的自动制造机械控制装置100中,yogo图读取部103、yogo图解析部104及控制程序生成部105与本发明的“控制程序生成装置110”对应。
124.d.控制程序生成处理:
125.图10是示出本实施例的自动制造机械控制装置100中与控制程序生成装置110对应的部分执行的控制程序生成处理的概要的流程图。如图示的那样,在控制程序生成处理中,首先,读取yogo图(步骤1)。在本实施例中,自动制造机械控制装置100制作了yogo图,因此读取所制作出的yogo图的数据。当然,也可以读取由其它的计算机50制作出的yogo图的数据。
126.接着,解析所读取的yogo图并输出中间数据(步骤2)。图11是本实施例的自动制造机械控制装置100解析yogo图并输出中间数据的处理(yogo图解析处理)的流程图。该处理是图8中所示的yogo图解析部104执行的处理。
127.如图11所示,当开始yogo图解析处理时,首先,将部分期间编号n和致动器编号m初始化为“1”(步骤10)。接着,判断在yogo图200上的坐标(n,m)的位置是否记入有基本动作(步骤11)。在此,yogo图200上的坐标(n,m)表示在yogo图200上由部分期间编号n与致动器编号m的组合确定的方格状的坐标位置。紧接着步骤10中将部分期间编号n和致动器编号m
初始化之后,n和m均为“1”,因此判断在yogo图200上的坐标(1,1)的位置是否记入有基本动作。
128.在图5所例示的yogo图200的情况下,在坐标(1,1)处没有记入基本动作,因此在步骤11中判断为“否(no)”,并判断致动器编号m是否达到了最终值(步骤14)。在本实施例的自动制造机械1中搭载有11个致动器10~20,因此致动器编号m的最终值为11。因而,在确认出坐标(1,1)的基本动作的有无之后的步骤14的判断中,由于判断为“否”,因此使致动器编号m增加1(步骤15)。然后,使用增加后的致动器编号m,再次判断在坐标位置(n,m)是否记入有基本动作(步骤11)。
129.像这样,在部分期间编号n维持为“1”的状态下,一边使致动器编号m每次增加1一边判断在坐标(1,m)处是否记入有基本动作。然后,当到达记入有基本动作的坐标(1,m)时,在步骤11中判断为“是(yes)”。
130.然后,在步骤11中判断为“是”的情况下,读取在该坐标处记入的基本动作206、以及在记入有参数的情况下的参数(步骤12)。在图5所例示的yogo图200中,在到达了坐标(1,4)时,在步骤11中判断为“是”,读取“ω-aa”这一基本动作206和“a-100”这一参数。
131.接着,将(n,m,基本动作,参数)这一中间数据存储到存储器中(步骤13)。如果是图5所例示的yogo图200的坐标(1,4)的情况,则将(1,4,ω-aa,a-100)这一中间数据存储到存储器中。因而,该中间数据表示:在yogo图200上,在部分期间编号为1号且致动器编号m为4号的位置记入有“ω-aa”这一基本动作,并针对该基本动作设定有“a-100”这一参数。
132.通过这样,在将从yogo图200读取的中间数据存储到存储器中之后(步骤13),判断致动器编号m是否达到了最终值(在此为11)(步骤14)。其结果是,在未达到最终值的情况下(步骤14:否),使致动器编号m增加1(步骤15),之后返回到步骤11,再次判断在yogo图200上的坐标(n,m)处是否记入有基本动作。
133.与此相对,在致动器编号m达到了最终值的情况下(步骤14:是),本次判断部分期间编号n是否达到了最终值(步骤16)。例如,在yogo图200上,如果使用100个部分期间来描述自动制造机械1的动作,则部分期间编号n的最终值为100。
134.其结果是,在部分期间编号n未达到最终值的情况下(步骤16:否),使部分期间编号n增加1(步骤17),并且将致动器编号m初始化为“1”(步骤18),之后返回到步骤11,再次判断在yogo图200上的坐标(n,m)处是否记入有基本动作。即,在yogo图200上(参照图5),对部分期间编号n为1号的部分期间自上而下按顺序确认,确认到最下方后,本次对部分期间编号n为2号的部分期间自上而下按顺序确认,对2号的部分期间确认结束后是部分期间编号n为3号的部分期间,像这样从部分期间编号n较小的部分期间向较大的部分期间按顺序读取yogo图200中所记入的基本动作和参数,并将中间数据存储到存储器中。
135.然后,重复进行这样的操作,当最终判断为部分期间编号n达到了最终值(步骤16:是)时,则读取了记入在yogo图200中的全部的基本动作。因此,读出存储器中已存储的中间数据并输出到控制程序生成部105(步骤19)。在图12中例示了在解析图5所例示的yogo图200的情况下得到的中间数据。输出这样的中间数据后,结束图11的yogo图解析处理,返回到图10的控制程序生成处理。
136.在图10的控制程序生成处理中,基于通过这样得到的中间数据来生成控制程序(步骤3)。在图13中示出了根据图12所例示的中间数据生成的控制程序。若将图12的中间数
据与图13的控制程序进行比较则可清楚地得知,在控制程序中,中间数据的基本动作206和参数被置换成了数值。即,控制程序是通过将中间数据的基本动作206置换为实现该基本动作的程序组件编号并且将中间数据的参数置换为该参数所表示的具体的数值而生成的。
137.将中间数据的基本动作206和参数置换为数值的操作通过图8中的控制程序生成部105参照基本动作存储部102来执行。即,在基本动作存储部102中,如前面使用图9所述的那样将基本动作与实现该基本动作的程序组件编号相对应地进行了存储。另外,关于参数,也是在基本动作存储部102中存储有将参数与具体的数值相对应的未图示的对应关系。因此,控制程序生成部105通过将中间数据中所记载的基本动作206和参数置换为程序组件编号和具体的数值,来变换为控制执行部106能够执行的控制程序。
138.像这样,在本实施例的自动制造机械控制装置100中,设为参照基本动作存储部102来将基本动作206和参数置换为程序组件编号和具体的数值,因此yogo图中记入的基本动作206和参数能够设为人所容易理解的表述。因此,能够防止在yogo图记入错误的基本动作206和参数从而导致自动制造机械1进行了不期望的动作的事态。
139.通过如上面那样,根据中间数据生成控制程序(图10的步骤3),之后将所生成的控制程序输出到控制执行部106(步骤4),结束图10的控制程序生成处理。
140.此外,如图13所示,本实施例的控制程序是将部分期间编号n、致动器编号m、程序组件编号、参数值按该顺序排列所得的一组数据(下面称为“数据组”)进行了集合的控制程序。因此,在数据组中,将表示部分期间编号n的第1个数据称为“第1要素”,将表示致动器编号m的第2个数据称为“第2要素”,将表示程序组件编号的第3个数据称为“第3要素”。
141.e.动作控制处理:
142.通过上述的控制程序生成处理生成的控制程序如图13所例示的那样只是多个数据组接连的数据。但是,自动制造机械控制装置100的控制执行部106基于这样的控制程序,来如下面那样控制自动制造机械控制装置100的致动器10~20的动作。
143.图14是自动制造机械控制装置100的控制执行部106按照控制程序对自动制造机械1的动作进行控制的动作控制处理的流程图。如图14所示,当开始动作控制处理时,首先,将部分期间编号n初始化为“1”(步骤50)。接着,从控制程序中获取第1要素为n的数据组(步骤51)。如果是在紧接着开始动作控制处理之后,则由于部分期间编号n被设定为“1”,因此从图13所例示的控制程序中读取(1,4,1,120)这一数据组。
144.接着,基于所读取的数据组的第2要素的值,来确定成为控制对象的致动器(步骤52)。如果将在步骤51中读取的数据组设为(1,4,1,120),则由于第2要素的值为“4”,因此致动器编号m为“4”的致动器成为作为控制对象的致动器。另外,在步骤51中读取了多个数据组的情况下,基于各个数据组的第2要素的值来确定成为控制对象的各个致动器。
145.并且,基于所读取的数据组的第3要素的值,来获取用于使致动器进行基本动作的程序组件(步骤53)。如果将在步骤51中所读取的数据组设为(1,4,1,120),则由于第3要素的值为“1”,因此用于进行基本动作的程序组件为程序组件编号为“1”号的程序组件。因此,通过参照基本动作存储部102中所存储的对应关系(参照图9)来获取与程序组件编号对应的开头地址值,由此读取cpu能够执行的程序组件。当然,在步骤51中读取了多个数据组的情况下,基于各个数据组的第3要素的值来读取各个程序组件。
146.另外,在数据组中存在除第1要素~第3要素以外的要素的情况下,该要素(或这些
要素)为程序组件中指定的参数,因此读取该要素(或这些要素),并将该要素(或这些要素)作为自变量设定于程序组件(步骤54)。
147.通过进行上面的步骤51~步骤54的操作,做好了使各个致动器进行yogo图200上的某个部分期间(紧接着开始动作控制处理之后的是部分期间编号n为“1”号的部分期间)中所记入的基本动作的准备。即,确定了成为控制对象的致动器(步骤52),获取了控制中使用的程序组件(步骤53),并对程序组件设定了自变量(步骤54),因此执行该程序组件(步骤55)。例如,在致动器为伺服马达且基本动作的内容是使马达正向旋转180度这样的内容的情况下,执行如下程序组件:一边检测马达的旋转角度一边以规定的控制周期重复进行驱动马达的动作直到旋转角度成为180度为止。另外,在存在多个程序组件的情况下,并行地执行这些程序组件。
148.接着,判断全部的程序组件的执行是否结束(步骤56)。即,在步骤55中执行多个程序组件的情况下,这些程序组件的执行未必同时结束,因此判断全部的程序组件的执行是否结束。当然,在步骤55中仅执行1个程序组件的情况下,判断该程序组件的执行是否结束。
149.其结果是,在剩余有正在执行的程序组件的情况下,在步骤56中判断为“否”,再次重复进行相同的判断(步骤56)。由此,在全部的程序组件的执行结束之前为待机状态。然后,在全部的程序组件的执行结束(步骤56:是)后,判断部分期间编号n是否达到了最终值(步骤57)。例如,在yogo图200上为了描述自动制造机械1的动作而使用了100个部分期间的情况下,判断部分期间编号n是否达到了“100”。
150.其结果是,在部分期间编号n尚未达到最终值的情况下(步骤57:否),使部分期间编号n增加1(步骤58)。然后,返回到步骤51,在从控制程序中读取第1要素与新的部分期间编号n一致的数据组之后,对所读取的数据组进行上述的步骤52~步骤55的操作。由此,从之前执行了基本动作的部分期间前进1个部分期间,并执行新的部分期间中所记入的全部的基本动作。然后,在新的部分期间的全部的基本动作结束并在步骤56中判断为“是”后,判断该部分期间的部分期间编号n是否达到了最终值(步骤57)。其结果是,在部分期间编号n未达到最终值的情况下(步骤57:否),使部分期间编号n增加1(步骤58),之后返回到步骤51,针对新的部分期间编号n重复进行上述的步骤51~步骤57的操作。
151.像这样,在图14的动作控制处理中,重复进行如下的动作:从yogo图200的开头的部分期间(即,部分期间编号n为1号的部分期间)向最后的部分期间(部分期间编号n为最终值的部分期间),逐个选择部分期间,并执行该部分期间所记载的基本动作。然后,在最后的部分期间的基本动作结束后,在步骤57中判断为“是”,结束动作控制处理。
152.如上面详细说明的那样,在本实施例的自动制造机械控制装置100中,通过在yogo图200中描述自动制造机械1的动作,能够根据该yogo图200自动地生成控制程序来使自动制造机械控制装置100进行动作。另外,如果已知自动制造机械1的构造和动作,则即使不具有程序相关的知识,也能够简单地制作yogo图200,因此不需要程序设计员来制作控制程序。因此,能够将为了开发新的自动制造机械1所需要的时间大幅地缩短(至少缩短为一半以下),此外也不需要事先确保程序设计员。其结果是,向制造现场导入新的自动制造机械变得容易,并能够充分地应对业界对省力化的要求。
153.上面说明了本实施例的自动制造机械控制装置100,但是本发明不限于上述的实施例,在不脱离其要旨的范围内能够以各种方式实施。
154.例如,关于上述的实施例的自动制造机械控制装置100,以设为如图8所示那样控制程序生成部105和控制执行部106均参照基本动作存储部102的装置的方式进行了说明。这是因为,控制程序生成部105生成控制程序时参照的对应关系(即,基本动作206(和参数)与程序组件编号(和具体的数值)的对应关系)、以及控制执行部106执行控制程序时参照的对应关系(即,程序组件编号与保存有程序组件的开头地址值的对应关系)均存储于基本动作存储部102中。因而,也可以是,将基本动作存储部102中所存储的对应关系分割为控制程序生成部105参照的对应关系和控制执行部106参照的对应关系,并将控制执行部106参照的对应关系存储于与基本动作存储部102不同的存储部中。
155.图15是关于通过如下方式所得到的变形例的自动制造机械控制装置100的说明图:通过分割为控制程序生成部105参照的对应关系和控制执行部106参照的对应关系、从而控制程序生成部105和控制执行部106参照不同的存储部。图15所示的变形例的自动制造机械控制装置100相对于前面使用图8所述的本实施例的自动制造机械控制装置100的不同点在于,控制执行部106参照程序组件存储部107而不是基本动作存储部102。在该程序组件存储部107中,存储有前面使用图9所述的对应关系中的将程序组件编号与保存有程序组件的开头地址值相对应的部分。另外,伴随于此,从变形例的基本动作存储部102中所存储的对应关系中去除将程序组件编号与开头地址值相对应的部分。在这样的变形例的自动制造机械控制装置100中,在控制执行部106执行控制程序时,执行参照程序组件存储部107所读取的程序组件。
156.此外,关于上述的变形例的基本动作存储部102所存储的对应关系,事先补充说明以避免导致疑义。在上述的本实施例的自动制造机械控制装置100中,如图9所例示的那样,将保存有程序组件的开头地址值与基本动作206的对应关系存储于基本动作存储部102。与此相对,在上述的变形例中,在基本动作存储部102中相对应地存储的只是基本动作206与程序组件编号的对应关系,而并非存储基本动作206与程序组件的开头地址值的对应关系。因而,即使参照变形例的基本动作存储部102,也并非立即读取实现基本动作的程序组件。但是,只要确定程序组件编号就确定了程序组件。由此,变形例的基本动作存储部102所存储的对应关系实质上也相当于将基本动作206与程序组件相对应的对应关系。
157.另外,以将上述的本实施例的自动制造机械控制装置100设为除了具备制作yogo图200并根据该yogo图200生成控制程序的功能(与图8的yogo图制作部101、基本动作存储部102、yogo图读取部103、yogo图解析部104、控制程序生成部105对应)以外还具备按照控制程序来执行控制的功能(与图8的控制执行部106对应)的装置的方式进行了说明。但是,也可以通过将搭载有这些多个功能的一部分的多个装置进行组合,作为整体而形成自动制造机械控制装置100。
158.例如,也可以如图16所例示的那样将自动制造机械控制装置100分割为yogo图处理装置100a和控制执行装置100b。而且,在自动制造机械控制装置100中搭载从yogo图200的制作至控制程序的生成为止的一系列功能(即,yogo图制作部101、基本动作存储部102、yogo图读取部103、yogo图解析部104、控制程序生成部105)。另外,也可以在控制执行装置100b中搭载按照控制程序来执行程序组件的功能(即,控制执行部106、程序组件存储部107)。
159.如此,能够通过由事先设置于办公室的yogo图处理装置100a进行制作yogo图200、
生成控制程序的作业,并使事先设置于自动制造机械1附近的控制执行装置100b读取所生成的控制程序,来使自动制造机械1进行动作。此外,在图16所示的例子中,yogo图处理装置100a与本发明中的“控制程序生成装置”对应。
160.另外,在上述的本实施例中,以将yogo图200中记入的动作设为基本动作(或者未依照基本动作的动作)的方式进行了说明。但是,也存在通过购入进行多自由度的复杂动作的部件并使该部件进行规定的动作从而作为自动制造机械1的致动器来利用的情况。在这样的情况下,也可以将使该部件进行的规定的动作作为基本动作206来处理并记入于yogo图200。在这样的情况下也是,若预先制作与基本动作206对应的程序组件,则能够使用自动制造机械控制装置100自动地生成控制程序。
161.附图标记说明
162.1:自动制造机械;2:轨道;3:搬送单元;3a:把持轴;3b:夹头;4:加工单元;10~20:致动器;10d~20d:驱动电路;50:计算机;100:自动制造机械控制装置;100a:yogo图处理装置;100b:控制执行装置;100m:监视器画面;100s:操作输入按钮;102:基本动作存储部;105:控制程序生成部;106:控制执行部;107:程序组件存储部;110:控制程序生成装置;201:分隔线;202:触发线;203:动作线;204:起点;205:终点;206:基本动作。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献