用于测量涡卷弹簧的形状的装置、方法以及程序与流程

文档序号:16595314发布日期:2019-01-14 19:34阅读:497来源:国知局
用于测量涡卷弹簧的形状的装置、方法以及程序与流程

本申请主张基于2016年3月11日申请的日本专利申请第2016-48994号的优先权。该申请的全部内容以参照的形式被引用到该说明书中。本说明书中公开的技术涉及一种用于测量涡卷弹簧的形状的装置、方法以及程序。这里所说的涡卷弹簧是指,在俯视观察时,从内周侧的前端(内钩)到外周侧的前端(外钩)成型为涡卷状的弹簧。



背景技术:

在涡卷弹簧等工业产品的质量检验工序中,检查产品的形状与设计图所规定的形状之间的差异,并检查产品是否按照设计图成型。将与设计图所规定的形状之间的偏差为容许误差的产品判定为良品(合格品),将与设计图所规定的形状的之间偏差超过容许误差的产品作为不良品(不合格品)而废弃。在涡卷弹簧的质量检验工序中,测量涡卷弹簧的特定部位的形状(例如,内钩长度、外钩长度、内径、自由角度),并检查这些特定部位的形状与设计图所规定的形状之间的差异(例如,日本特开2009-257950号公报)。



技术实现要素:

发明要解决的问题

在这种检查方法中,实际上,即使是不符合要求性能的涡卷弹簧也可能会被判定为良品。即,存在如下问题:即使在涡卷弹簧的线材(弹簧钢丝)发生变形等而不符合要求性能的情况下,如果特定部位的形状符合良品的判定标准,则也可能会被判定为良品。本说明书公开了一种能够恰当地测量涡卷弹簧的形状的技术,以恰当地进行涡卷弹簧的质量检验。

用于解决问题的手段

本说明书公开了一种对成型为涡卷状的涡卷弹簧的形状进行测量的形状测量装置。该形状测量装置具有输入单元和函数计算单元。输入单元输入拍摄涡卷弹簧而得到的拍摄图像或者测量涡卷弹簧的形状而得到的测量数据。函数计算单元使用输入的拍摄图像或者测量数据算出线间间隙函数、螺距函数或者线材厚度函数中的至少一者,其中,线间间隙函数表示涡卷弹簧的相邻的线材间的间隙,螺距函数表示涡卷弹簧的相邻的线材的芯线间的距离,线材厚度函数表示涡卷弹簧的线材的厚度。

在该形状测量装置中,函数计算单元算出线间间隙函数、螺距函数、或者线材厚度函数中的至少一者。由此,能够检查以往没有检查过的涡卷弹簧的相邻的线材间的间隙、涡卷弹簧的相邻的线材的芯线间的距离或者涡卷弹簧的线材的厚度中的至少一者。因此,能够恰当地测量涡卷弹簧的形状,结果,能够恰当地进行涡卷弹簧的质量检验。

另外,本说明书公开了一种对成型为涡卷状的涡卷弹簧的形状进行测量的新的形状测量方法。该形状测量方法在计算机中执行取得处理和函数算出处理。在取得处理中,取得拍摄涡卷弹簧而得到的拍摄图像或者测量涡卷弹簧的形状而得到的测量数据。在函数算出处理中,使用取得的拍摄图像或者测量数据,算出线间间隙函数、螺距函数或者线材厚度函数中的至少一者,其中,线间间隙函数表示涡卷弹簧的相邻的线材间的间隙,螺距函数表示涡卷弹簧的相邻的线材的芯线间的距离,线材厚度函数表示涡卷弹簧的线材的厚度。

根据该形状测量方法,能够恰当地测量涡卷弹簧的形状,结果,能够恰当地进行涡卷弹簧的质量检验。

进而,本说明书公开了一种用于对成型为涡卷状的涡卷弹簧的形状进行测量的新的程序。该程序在计算机中执行取得处理和函数算出处理。在取得处理中,取得拍摄涡卷弹簧而得到的拍摄图像或者测量涡卷弹簧的形状而得到的测量数据。在函数算出处理中,使用取得的拍摄图像或者测量数据算出线间间隙函数、螺距函数或者线材厚度函数中的至少一者,其中,线间间隙函数表示涡卷弹簧的相邻的线材间的间隙,螺距函数表示涡卷弹簧的相邻的线材的芯线间的距离,线材厚度函数表示涡卷弹簧的线材的厚度。

根据该程序,能够使用计算机恰当地测量涡卷弹簧的形状,结果,能够恰当地进行涡卷弹簧的质量检验。

附图说明

图1是示出第一实施例的形状测量装置的结构的图。

图2a是示出利用第一实施例的形状测量装置进行的涡卷弹簧的形状测量流程的流程图(第一部分)。

图2b是示出利用第一实施例的形状测量装置进行的涡卷弹簧的形状测量流程的流程图(第二部分)。

图2c是示出利用第一实施例的形状测量装置进行的涡卷弹簧的形状测量流程的流程图(第三部分)。

图2d是示出利用第一实施例的形状测量装置进行的涡卷弹簧的形状测量流程的流程图(第四部分)。

图3是示出涡卷弹簧的拍摄图像的图(第一类型)。

图4是示出第一类型的涡卷弹簧的极坐标图像的图。

图5是表示线间间隙函数的图表。

图6是表示线间间隙函数、下限阈值函数以及上限阈值函数的图表。

图7是示出相邻线材彼此接触的第一类型的涡卷弹簧的拍摄图像的图。

图8是示出图7的涡卷弹簧的极坐标图像的图。

图9是示出涡卷弹簧的拍摄图像的图(第二类型)。

图10是示出第二类型的涡卷弹簧的极坐标图像的图。

图11是用于说明第一实施例的第一变形例的良否判定方法的图表。

图12是示出利用第一实施例的第五变形例的形状测量装置进行的涡卷弹簧的形状测量流程的流程图。

图13是示出第一实施例的第五变形例的激光位移计的图。

图14是示出涡卷弹簧的剖面数据的图。

图15是示出由图14的剖面数据构成的涡卷弹簧的三维数据的图。

图16是示出图15的三维数据的极坐标数据的图。

图17是表示图16的极坐标数据的θ=60°时的剖面的图表。

图18是示出利用第二实施例的形状测量装置进行的涡卷弹簧的形状测量流程的流程图。

图19是示出第二类型的涡卷弹簧的芯线化图像的图。

图20是示出芯线序列的法向量的图。

图21是示出相邻线材的芯线间距的计算方法的图。

图22是示出利用第三实施例的形状测量装置进行的涡卷弹簧的形状测量流程的流程图。

图23是示出第二类型的涡卷弹簧的轮廓线图像的图。

图24是示出外侧轮廓线的坐标值组与内侧轮廓线的坐标值组的图。

图25是示出轮廓线序列的法向量的图。

图26是示出利用第三实施例的第一变形例的形状测量装置进行的涡卷弹簧的形状测量流程的流程图。

图27是示出具有不同线材厚度的涡卷弹簧的拍摄图像的图。

图28是示出图27的涡卷弹簧的轮廓线图像的图。

图29是示出外侧轮廓线的坐标值组与内侧轮廓线的坐标值组的图。

图30是示出轮廓线序列的从中间点的内侧下一点到起点为止的法向量的图。

图31是示出轮廓线序列的从中间点的外侧下一点到终点为止的法向量的图。

具体实施方式

以下,对本说明书中公开的实施例的一些技术特征进行描述。此外,以下所述事项各自单独地具有技术实用性。

本说明书所公开的形状测量装置也可以还具有:存储单元,以及评价单元或判定单元中的至少一者。存储单元也可以存储预先规定的基准函数或者基准参数中的至少一者。评价单元也可以使用由函数计算单元算出的线间间隙函数、螺距函数、或者线材厚度函数中的至少一者、以及存储单元中存储的基准函数或者基准参数中的至少一者,来定量地评价作为测量对象的涡卷弹簧的形状。判定单元也可以使用由函数计算单元算出的线间间隙函数、螺距函数、或者线材厚度函数中的至少一者、以及存储单元所存储的基准函数或者基准参数中的至少一者,来判定作为测量对象的涡卷弹簧的良否。根据该结构,能够定量地判定涡卷弹簧的质量。

本说明书所公开的形状测量装置还可以还具有图像转换单元,该图像转换单元用于创建将输入的拍摄图像或者测量数据进行极坐标转换而成的极坐标图像。函数计算单元也可以通过追踪极坐标图像的线材与背景的边界来计算线间间隙函数或者线材厚度函数中的至少一者。根据该结构,即使图像中包含某种程度的噪声,也能够正确地追踪线材与背景的边界。另外,能够在比较短的时间内算出线间间隙函数或者线材厚度函数。

在本说明书所公开的形状测量装置中,函数计算单元也可以通过追踪极坐标图像的线材的外侧的边界,来算出外侧边缘函数eo(θ),通过追踪极坐标图像的线材的内侧的边界,算出内侧边缘函数ei(θ),基于外侧边缘函数eo(θ)与内侧边缘函数ei(θ)之差,算出线间间隙函数或者线材厚度函数中的至少一者。

在本说明书所公开的形状测量装置中,在极坐标图像的线材的外侧的边界与内侧的边界接触时,函数计算单元也可以在该接触部位结束追踪。此处,“极坐标图像的线材的外侧的边界与内侧的边界接触”是指,涡卷弹簧的相邻的线材彼此接触(粘连)。根据上述的结构,在线材的外侧与内侧的边界存在接触部位时,函数计算单元在接触部位结束追踪,并且不进行进一步的追踪。因此,能够在短时间内检测出线材彼此接触,提高质量检验的作业效率。

本说明书所公开的形状测量装置也可以还具有图像转换单元,该图像转换单元用于创建将输入的拍摄图像或测量数据进行芯线化而成的芯线化图像。函数计算单元也可以基于相邻的芯线间的距离算出线间间隙函数或者螺距函数中的至少一者。

在本说明书所公开的形状测量装置中,芯线也可以通过芯线化图像的像素的坐标值组来表示。函数计算单元也可以使用构成第一芯线的坐标值组所包含的第一坐标值和构成第二芯线的坐标值组中的至少最接近所述第一坐标值的第二坐标值,来算出第一芯线与在第一芯线的外周侧与第一芯线相邻的第二芯线间之间的距离。根据该结构,能够正确地算出相邻的芯线间的距离。

本说明书所公开的形状测量装置也可以还具有图像转换单元,该图像转换单元用于创建在不进行极坐标转换的状态下从输入的拍摄图像或者测量数据提取轮廓线而成的轮廓线图像。函数计算单元也可以将轮廓线图像的轮廓线分离成线材的外周侧的外侧轮廓线和内周侧的内侧轮廓线,并基于相邻的外侧轮廓线与内侧轮廓线的距离,算出线间间隙函数或者线材厚度函数中的至少一者。

在本说明书所公开的形状测量装置中,线材的外侧轮廓线及内侧轮廓线也可以分别通过轮廓线图像的像素的坐标值组来表示。函数计算单元也可以使用构成该外侧轮廓线的坐标值组所包含的第三坐标值和构成该内侧轮廓线的坐标值组中的至少最接近所述第三坐标值的第四坐标值,来算出外侧轮廓线与在该外侧轮廓线的外周侧与该外侧轮廓线相邻的内侧轮廓线之间的距离,并基于该距离算出线间间隙函数。根据该结构,能够定量地算出相邻的线材间的距离。

在本说明书所公开的形状测量装置中,线材的外侧轮廓线及内侧轮廓线也可以分别通过轮廓线图像的像素的坐标值组来表示。函数计算单元也可以使用构成该内侧轮廓线的坐标值组所包含的第五坐标值和构成该外侧轮廓线的坐标值组中的至少最接近所述第五坐标值的第六坐标值,来算出内侧轮廓线与在该内侧轮廓线的外周侧与该内侧轮廓线相邻的外侧轮廓线之间的距离,并基于该距离算出线材厚度函数。根据该结构,能够定量地算出线材的厚度。

在本说明书所公开的形状测量装置中,存储单元也可以存储表示线间间隙的下限值的下限阈值函数或者表示线间间隙的上限值的上限阈值函数中的至少一者。在线间间隙函数低于下限阈值函数时或者超过上限阈值函数时,判定单元也可以判定为不良。根据该结构,通过控制存储单元所存储的阈值函数,能够将涡卷弹簧的线间间隙控制为所期望的形状,并能够提高涡卷弹簧的性能。

第一实施例

参照附图对第一实施例的形状测量装置10进行说明。如图1所示,形状测量装置10具有工作台12、配置在工作台12上的照明器14、固定在工作台12上的ccd相机16、经由通信线18而与ccd相机16连接的计算机22、与计算机22连接的显示器20。

照明器14为面光源,在其发光面上载置有涡卷弹簧30。ccd相机16配置在照明器14的上方,对载置在照明器14上的涡卷弹簧30进行拍摄。即,涡卷弹簧30从下方被照明器14照明,照明器14的透过光(涡卷弹簧30的影子)被ccd相机16拍摄。此外,照明器14不限定于本实施例那样的透过照明,也可以从上方对涡卷弹簧30进行照明。此时,优选使用多个照明器或环型的照明器从整个周向上均匀地对涡卷弹簧30进行照明。

ccd相机16所拍摄的图像数据经由通信线18输入至计算机22。在计算机22中,存储有用于执行后述的形状测量处理的程序。计算机22对ccd相机16所拍摄的拍摄图像的图像数据进行处理,并算出表示涡卷弹簧30的相邻的线材间的间隙的线间间隙函数。在计算机22的存储器中,存储有预先规定的阈值函数。计算机22将算出的线间间隙函数与阈值函数进行比较,从而判定涡卷弹簧30的良否,并将判定结果显示在显示器20上。

图2a~图2d是示出利用形状测量装置10进行的涡卷弹簧30的形状测量流程的流程图。形状测量装置10经过图2a~图2d所示的工序、处理,从而算出涡卷弹簧30的线间间隙函数,并判断涡卷弹簧30是否为良品。以下,按照图2a、图2b所示的流程图,对利用形状测量装置10进行的涡卷弹簧30的形状测量流程进行说明。

首先,在图2a的步骤s10中,通过ccd相机16拍摄涡卷弹簧30。由ccd相机16拍摄的拍摄图像被输入至计算机22。输入的拍摄图像例如可以是256灰度的图像,其中最黑的像素的亮度值为“0”,最白的像素的亮度值为“255”。在图3、图9中,例示出了两种涡卷弹簧30的拍摄图像。图3、图9所示的两种涡卷弹簧30均从内钩32到外钩34以涡卷状延伸。但是,这两种涡卷弹簧30在其内钩32的形状上有显著的差异。即,图3所示的涡卷弹簧30的内钩32与涡卷弹簧30的重心g重叠,但图9所示的涡卷弹簧30的内钩32没有与涡卷弹簧30的重心g重叠。在本说明书中,将图3所示的涡卷弹簧30称为第一类型,将图9所示的涡卷弹簧30称为第二类型。形状测量装置10能够进行第一类型和第二类型这两种涡卷弹簧30的形状测量。此外,尤其在没有区别说明的情况下,对第一类型和第二类型执行共通的处理。此外,拍摄图像为每个像素(x,y)都具有亮度值的亮度值图像。

接着,在步骤s12中,对步骤s10中拍摄的拍摄图像进行二值化。即,对于输入的拍摄图像的各像素(x,y),当亮度值在预先设定的设定值以上时,设为浓度值“0”(白像素);当亮度值小于预先设定的设定值时,设为浓度值“1”(黑像素)。由此,与涡卷弹簧30相对应的部分的像素组为浓度值“1”,其他像素组为浓度值“0”。此外,从该步骤s12至后述的步骤s36的处理由计算机22执行。

接着,在步骤s14中,对步骤s12中得到的二值化图像进行极坐标转换从而创建极坐标图像。图4中示出了第一类型的涡卷弹簧30(参照图3)的极坐标图像。图10中示出了第二类型的涡卷弹簧30(参照图9)的极坐标图像。根据二值化图像创建极坐标图像的处理可以使用公知的方法(例如,日本特开2009-257950)来进行。具体地,将涡卷弹簧30的重心g作为假定的中心求出之后,可以使用公知的转换式创建极坐标图像。

接着,在步骤s16中,基于步骤s14中创建出的极坐标图像来创建外侧边缘函数eo(θ)和内侧边缘函数ei(θ)。参照图2b对外侧/内侧边缘函数创建处理进行说明。

(外侧/内侧边缘函数创建处理)

如图2b所示,在该处理中,在步骤s30中,使用极坐标图像检测出坐标值p1、p2。如图4、图10所示,极坐标图像具有浓度值1的多个条纹状的像素组。以下,为了便于说明,对这些条纹状的像素组赋予附图标记以区分它们。在第一类型的涡卷弹簧30的极坐标图像中,如图4所示,将条纹状的像素组分别称为像素组40、像素组42、像素组44、像素组46、像素组48。在第二类型的涡卷弹簧30的极坐标图像中,如图10所示,将条纹状的像素组分别称为像素组40、像素组42、像素组44、像素组46。另外,将相当于内钩32的部分的像素组称为像素组a,将相当于外钩34的部分的像素组称为像素组b。在图4、图10中,为了与其他像素组区別,将包含像素组a、b的范围用虚线表示。在虚线内,浓度值1的像素组分别是像素组a、像素组b。像素组a、像素组b能够使用公知的方法(例如,日本特开2009-257950)来确定。无论在哪一种类型中,像素组40的上端都与相当于内钩32的部分的像素组a连续,像素组48的下端(第二类型的情况下,为像素组46的下端)都与相当于外钩34的部分的像素组b连续。此外,像素组40的边界的坐标值的θ分量的范围为0°~360°。以下,各像素组42、44、46、48的边界的坐标值的θ分量的范围分别为360°~720°、720°~1080°、1080°~1440°、1440°~1800°。

具体地,坐标值p1、p2以如下方式检测。首先,在极坐标图像的θ=360°的线上,从左向右追踪。然后,将像素的浓度值首先从0变化为1时的浓度值0的像素的坐标值作为p1检测出来,并将之后浓度值首先从1变化为0时的浓度值1的像素的坐标值作为p2检测出来。坐标值p1表示像素组40的左侧的边界,坐标值p2表示像素组40的右侧的边界。以下,将各像素组40~48的左侧的边界特别称为“内侧边缘”,将右侧的边界特别称为“外侧边缘”。另外,将内侧边缘的坐标值的r分量称为ri,将外侧边缘的坐标值的r分量称为ro。即,坐标值p1的r分量在θ=360°时为ri,坐标值p2的r分量在θ=360°时为ro。

接着,在步骤s31中,将坐标值p1的r分量ri作为ei(360)存储。同样地,将坐标值p2的r分量ro作为eo(360)存储。它们被保存在ram中。接着,在步骤s32中,在反方向上追踪像素组40的左侧及右侧的边界。此处,在反方向上追踪是指,朝向极坐标图像的纵轴θ的值减少的方向的追踪。参照图2c对反方向追踪处理进行说明。

(反方向追踪处理)

在该处理中,在θ=359°,358°,···0°的各线上以规定的范围从左向右追踪,从而检测出像素的浓度值最先从0变化为1时的浓度值0的像素的坐标值的r分量和之后浓度值最先从1变化为0时的浓度值1的像素的坐标值的r分量。以下,将坐标值(θ,r)的像素的浓度值表示为d(θ,r)。例如,d(θ1,r1)=0时,坐标值(θ1,r1)的像素为白像素,d(θ2,r2)=1时,坐标值(θ2,r2)的像素为黑像素。

对具体的处理进行说明。如图2c所示,首先,在步骤s50中,设定j=1,并进入步骤s51。在步骤s51中,检测出θ=θj(θj=360°-j(j=1°~360°))时的像素组40的内侧边缘的坐标值的r分量ri。用下述的r来定义ri,即,在θ=θj的线上的r分量在ei(θj+1)-δ≤r≤ei(θj+1)+δ的范围内,并且该r满足d(θj,r)=0且d(θj,r+1)=1。例如,j=1时,在θ1=359°的线上,将在ei(360)-δ≤r≤ei(360)+δ的范围内并且满足d(θ1,r)=0且d(θ1,r+1)=1的r,作为θ=θ1的内侧边缘的坐标值的ri检测出来。此处,ei(360)是步骤s31中存储的坐标值p1的r分量。根据该处理,仅在θ=θj的线上的规定范围内进行内侧边缘的坐标值的ri的检测。因此,能够提高处理速度。

接着,在步骤s52中,判断步骤s51中是否检测出了内侧边缘的坐标值的ri。存在满足上述条件的r时,则判断ri的检测成功了(步骤s52的“是”),并进入步骤s53。另一方面,不存在满足上述条件的r时,则判断ri的检测失败了(步骤s52的“否”),并进入步骤s59(后述)。此外,步骤s52中的“否”的情况是指这样的情况:在θ=θj的线上的上述r的范围内,相邻的2个像素的浓度值在右方向上没有从白像素变化为黑像素。即,具体而言,可认为是这样的情况等:θ=θj时的像素组40所相当的部分的线材,与内钩32接触,或者与其他部分的线材接触,或者其形状超出规格。

在步骤s53中,将步骤s51中检测出来的ri作为ei(θj)存储。例如,j=1时,将θ=359°时的内侧边缘的坐标值的ri作为ei(359)存储。ei(θj)被保存在ram中。

在步骤s54中,检测出θ=θj时的像素组40的外侧边缘的坐标值的r分量ro。用下述的r来定义ro,即,在θ=θj的线上的r分量在eo(θj+1)-δ≤r≤eo(θj+1)+δ的范围内,并且该r满足d(θj,r)=1且d(θj,r+1)=0。例如,j=1时,在θ1=359°的线上,将在eo(360)-δ≤r≤eo(360)+δ的范围内并且满足d(θ1,r)=1且d(θ1,r+1)=0的r作为θ=θ1的外侧边缘的坐标值的ro检测出来。此处,eo(360)为步骤s31中存储的坐标值p2的r分量。根据该处理,仅在θ=θj的线上的规定范围内进行外侧边缘的坐标值的ro的检测。因此,能够提高处理速度。

接着,在步骤s55中,判断在步骤s54中是否检测出了外侧边缘的坐标值的ro。存在满足上述条件的r时,则判断ro的检测成功了(步骤s55的“是”),并进入步骤s56。另一方面,不存在满足上述条件的r时,则判断ro的检测失败了(步骤s55的“否”),并进入步骤s59(后述)。此外,步骤s55中的“否”的情况是指如下情况:在θ=θj的线上的上述r的范围内,相邻的2个像素的浓度值在右方向上没有从黑像素变化为白像素。即,具体而言,可认为是如下情况等:θ=θj时的像素组40所相当的部分的线材与其他部分的线材接触,或其形状超出规格。

在步骤s56中,将步骤s54中检测出来的ro作为eo(θj)存储。例如,j=1时,将θ=359°时的外侧边缘的坐标值的ro作为eo(359)存储。eo(θj)被保存在ram中。

接着,在步骤s57中,判断是否j=360。当j不等于360时,在步骤s57中判断为“否”,并进入步骤s58中。在步骤s58中,将j增加1并返回至步骤s51,重复进行到步骤s57为止的处理。重复该处理直至在步骤s57中判断为“是”为止(即,直至判断为j=360为止)。由此,依次检测出θj=360°-j(=359°,358°,···0°)时的像素组40的内侧边缘及外侧边缘的坐标值的r分量ri、ro(反方向追踪),并能够将它们作为ei(θj)、eo(θj)存储在ram中。另一方面,j=360时,在步骤s57中判断为“是”,并进入步骤s59中(后述)。此外,步骤s57中的“是”的情况是指如下情况:将像素组40所相当的部分的线材反方向追踪了一圈的量。

在步骤s52中为“否”、步骤s55中为“否”以及步骤s57中为“是”的情况下,进入步骤s59。在步骤s59中,将直到完成了反方向追踪为止的像素组40的长度作为部分线材长度sr算出。具体而言,在步骤s52中判断为“否”或者在步骤s55中判断为“否”而进入步骤s59时,在步骤s51或者步骤s54中,θ=θj时的ri或者ro的检测失败。此时,将从θ=360°到θj为止的θ分量的长度即360°-θj作为部分线材长度sr算出。另外,在步骤s57中判断为“是”而进入步骤s59时,部分线材长度sr为360°(即,θ分量的一圈的量的长度)。若步骤s59的处理结束,则反方向追踪处理结束。此外,在上述的处理中,将在规定的范围内满足d(θ1,r)=0且d(θ1,r+1)=1的r,作为内侧边缘的ri而检测出来,但是条件式不限定于上述条件式。例如,也可以将满足d(θ1,r-2)=0、d(θ1,r-1)=0、d(θ1,r)=0、d(θ1,r+1)=1、d(θ1,r+2)=1、d(θ1,r+3)=1的全部条件式的r,作为内侧边缘的ri检测出来。即,也可以在像素的浓度值从左向右连续3个像素均为白像素之后,将连续3个像素均为黑像素时的最右侧的白像素的坐标值的r分量作为ri检测出来。根据该检测条件,能够抑制将突发的噪声错误地作为内侧边缘检测出来,并能够进一步提高ri的检测精度。该检测条件也可以用于外侧边缘的ro的检测。另外,也可以用于后述的正方向追踪处理。

返回图2b继续进行说明。若在步骤s32中反方向追踪结束,则进入步骤s33。在步骤s33中,将用步骤s32的反方向追踪处理算出的部分线材长度sr作为边缘函数长度l存储。即,若将通过步骤s31、s32的处理而存储的ei(θj)通过θ-r坐标系连接起来进行近似,则能够创建表示像素组40的内侧边缘的函数(内侧边缘函数)。同样地,若将eo(θj)通过θ-r坐标系连接起来进行近似,则能够创建表示像素组40的外侧边缘的函数(外侧边缘函数)。因此,部分线材长度sr表示像素组40的内侧及外侧边缘函数的长度。因此,在步骤s33中,将部分线材长度sr作为边缘函数长度l存储。边缘函数长度l被保存在ram中。

接着,在步骤s34中,将位置变量θp设定为360°,并进入步骤s35。在步骤s35中,将ei(360)作为gi(0)存储,并将eo(360)作为go(0)存储。此处,gi(0)是θ=0°时的像素组42的内侧边缘的坐标值的r分量ri,go(0)是θ=0°时的像素组42的外侧边缘的坐标值的r分量ro。像素组40所相当的部分的涡卷弹簧30与像素组42所相当的部分的涡卷弹簧连续。因此,θ=360°时的像素组40的内侧边缘的ri及外侧边缘的ro,与θ=0°时的像素组42的内侧边缘ri及外侧边缘ro分别相等。即,在步骤s35的处理中,利用像素组40的ri及ro算出像素组42的ri及ro,将它们分别作为gi(0)、go(0)存储。根据该处理,则对于像素组40以外的像素组,不需要进行步骤s30那样的处理,因而能够提高处理效率。

接着,在步骤s36中,将k设定为1,并进入步骤s37。在步骤s37中,在正方向上追踪像素组42的内侧边缘及外侧边缘。此处,在正方向上追踪是指,朝向极坐标图像的纵轴θ的值增加的方向进行的追踪。正方向追踪处理除了在追踪的方向为θ的增加方向这点以外,与反方向追踪处理相同。因此,关于与反方向追踪处理相同的处理,省略详细说明。

(正方向追踪处理)

如图2d所示,首先,在步骤s60中设定k=1,并进入步骤s61。在步骤s61中,检测出θ=θk(θk=k(k=1°~360°))时的像素组42的内侧边缘的坐标值的ri。用下述的r来定义ri,即,θ=θk的线上的r分量在gi(θk-1)-δ≤r≤gi(θk-1)+δ范围内,并且该r满足d(θk,r)=0且d(θk,r+1)=1。例如,k=1时,在θ1=1°的线上,将在gi(0)-δ≤r≤gi(0)+δ的范围内且满足d(θ1,r)=0且d(θ1,r+1)=1的r作为θ=θ1的内侧边缘的坐标值的ri检测出来。

接着,在步骤s62中,判断在步骤s61中是否检测出了内侧边缘的坐标值的ri。存在满足上述条件的r时(步骤s62的“是”),进入步骤s63,不存在满足上述条件的r时(步骤s62的“否”),进入步骤s69。此外,步骤s62中的“否”的情况是指如下情况:在θ=θk的线上的上述r的范围内,相邻的2个像素的浓度值没有在右方向上从白像素变化为黑像素。即,具体而言,可认为θ=θk时的像素组42所相当的部分的线材与其他部分的线材接触或者其形状超出规格的情况等。

在步骤s63中,将步骤s61中检测出来的ri作为gi(θk)存储。例如,k=1时,将θ=1°时的内侧边缘的坐标值的ri作为gi(1)存储。gi(θk)被保存在ram中。

在步骤s64中,检测出θ=θk时的像素组42的外侧边缘的坐标值的r分量ro。用下述的r来定义ro,在θ=θk的线上的r分量在go(θk-1)-δ≤r≤go(θk-1)+δ的范围内,并且该r满足d(θk,r)=1且d(θk,r+1)=0。例如,k=1时,在θ1=1°的线上,将在go(0)-δ≤r≤go(0)+δ范围内且满足d(θ1,r)=1且d(θ1,r+1)=0的r,作为θ=θ1的外侧边缘的坐标值的ro检测出来。

接着,在步骤s65中,判断在步骤s64中是否检测出了外侧边缘的坐标值的ro。存在满足上述条件的r时(步骤s65的“是”),进入步骤s66,不存在满足上述条件的r时(步骤s65的“否”),进入步骤s69。此外,步骤s65中的“否”的情况是指如下情况:在θ=θk的线上的上述r的范围内,相邻的2个像素的浓度值没有在右方向上从黑像素变化为白像素。即,具体的而言,可认为θ=θk时的像素组42所相当的部分的线材与外钩34接触,或与其他部分的线材接触,或其形状超出规格的情况等。

在步骤s66中,将步骤s64中检测出的ro作为go(θk)存储。例如,k=1时,将θ=1°时的外侧边缘的坐标值的ro作为go(1)存储。go(θk)被保存在ram中。

接着,在步骤s67中,判断是否k=360。k不等于360时,在步骤s67中判断为“否”,在步骤s68中将k增加1并返回至步骤s61,重复进行直到步骤s67为止的处理。重复进行该处理直到在步骤s67中判断为“是”为止。由此,依次检测出θk=k(=1°,2°,···360°)时的像素组42的内侧边缘及外侧边缘的坐标值的r分量ri、ro(正方向追踪),并能够将它们作为gi(θk)、go(θk)存储在ram中。另一方面,k=360时,在步骤s67判断为“是”,并进入步骤s69。此外,步骤s67中的“是”的情况是指如下情况:将与像素组42相当的部分的线材正方向追踪了一圈的量。

在步骤s69中,将完成了正方向追踪为止的像素组42的长度作为部分线材长度sf算出。具体地,在步骤s62中判断为“否”或者步骤s65中判断为“否”而进入步骤s69的情况下,在步骤s61或者步骤s64中θ=θk时的ri或者ro的检测失败。此时,将从θ=1°到θk为止的θ分量的长度即θk-0°作为部分线材长度sf算出。另外,在步骤s67中判断为“是”而进入步骤s69的情况下,部分线材长度sf为360°(即,θ分量的一圈的量的长度)。若步骤s69的处理结束,则正方向追踪处理结束。

返回图2b继续进行说明。若在步骤s37中正方向追踪结束,则进入步骤s38。在步骤s38中,将通过步骤s37的正方向追踪处理而存储的go(θk)作为eo(360×k+θk)存储,将gi(θk)作为ei(360×k+θk)存储。例如,k=1时,go(θk)作为eo(360+θk)存储,gi(θk)作为ei(360+θk)存储。

接着,在步骤s39中,将在步骤s33中存储的边缘函数长度l加上步骤s37中算出的部分线材长度sf而得的值,作为新的边缘函数长度l存储(更新)。步骤s37中算出的部分线材长度sf表示像素组42的内侧及外侧边缘函数的长度。因此,在步骤s39中,将步骤s33的边缘函数长度l+步骤s37的部分线材长度sf作为新的边缘函数长度l存储。新的边缘函数长度l被保存在ram中。

接着,在步骤s40中,将步骤s34中设定的位置变量θp加上步骤s37中算出的部分线材长度sf而得的值,作为新的位置变量θp存储(更新)。

接着,在步骤s41中,判断部分线材长度sf=360°是否成立。sf=360°成立是在k=360之时。换言之,是指将与像素组42相当的部分的线材正方向追踪了一圈的量时。此时,在步骤s41中判断为“是”,并进入步骤s42中。另一方面,sf=360°不成立时,在步骤s41中判断为“否”,并进入步骤s46(后述)。

在步骤s42中,将gi(360)更新为gi(0),并将go(360)更新为go(0)。此处,gi(360)是θ=360°时的像素组42的内侧边缘的坐标值的r分量ri,go(360)是θ=360°时的像素组42的外侧边缘的坐标值的r分量ro。像素组42所相当的部分的涡卷弹簧30,与像素组44所相当的部分的涡卷弹簧30连续。因此,θ=360°时的像素组42的内侧边缘的ri及外侧边缘的ro与θ=0°时的像素组44的内侧边缘ri及外侧边缘ro分别相等。即,在步骤s42的处理中,利用像素组42的ri及ro而算出像素组42的ri及ro,并分别将它们作为gi(0)、go(0)存储。

接着,在步骤s43中,判断k=kmax是否成立。此处,kmax为超过涡卷弹簧30的圈数的上限值的值,并且预先记录在计算机22中。上述等式成立时(步骤s43中的“是”),进入步骤s46(后述),不成立时(步骤s43中的“否”),进入步骤s44。

在步骤s44中,将k增加1,并返回步骤s37。例如,在k=1、kmax=8的情况下,在步骤s43中判断为“否”,在步骤s44中设定k=2,在步骤s37中再次进行正方向追踪处理。当k=2时,对像素组44进行上述步骤s60~步骤s69为止的处理。当步骤s37的处理结束时,对像素组44进行步骤s38~步骤s44为止的处理。在图4所示的例子中,此后,在步骤s44中在k每增加1时,就进行步骤s37~步骤s44为止的处理。并且,在步骤s44中将k增加1,从而设定为k=4时,在步骤s37中,对像素组48进行正方向追踪处理。此时,从图4可知,在步骤s65(参照图2d)中判断为“否”,并在步骤s69中算出部分线材长度sf。之后,经过步骤s38~s40的处理,在步骤s41中判断为“否”,并进入步骤s46。

在步骤s46中,创建外侧边缘函数eo(θ)和内侧边缘函数ei(θ)。外侧边缘函数eo(θ)通过以下方式创建,即,将步骤s56(参照图2c)中存储的坐标值组eo(θj)和步骤s38中存储的坐标值组eo(360×k+θk)通过θ-r坐标系连接起来进行近似来创建。同样地,内侧边缘函数ei(θ)通过以下方式创建,即,将步骤s53(参照图2c)中存储的坐标值组ei(θj)和步骤s38中存储的坐标值组ei(360×k+θk)通过θ-r坐标系连接起来进行近似而创建。当步骤s46的处理结束时,外侧/内侧边缘函数的创建处理结束。

返回图2a继续进行说明。在步骤s16中,外侧/内侧边缘函数的创建处理结束时,在步骤s18中,判断步骤s16中存储的边缘函数长度l(参照图2b的步骤s39)是否超过下限阈值。此处,下限阈值为涡卷弹簧30的圈数的下限值(单位为角度“°”),并且预先记录在计算机22中。当边缘函数长度l超过下限阈值时(步骤s18中的“是”),进入步骤s20。另一方面,在边缘函数长度l在下限阈值以下时(步骤s18中的“否”),进入步骤s28。此外,步骤s18中的“否”的情况是指,例如,可认为是涡卷弹簧30的圈数不足(第一情况)、或相邻的线材彼此接触(第二情况)、或相邻的线材之间夹有异物(第三情况)的情况等。

在步骤s18中判断为“否”之后的步骤s28中,将涡卷弹簧30判定为不良品,将不良部位反映在显示器20的涡卷弹簧图像上。具体地,在第二情况、第三情况下,步骤s40(参照图2b)中存储的位置变量θp表示接触部位或者有异物的部位。因此,在步骤s28中,对(θp,ei(θp))或者(θp,eo(θp))进行极坐标逆转换,从而算出xy平面上的接触部位或者有异物的部位,并将这些不良部位反映在显示器20的涡卷弹簧图像上。

接着,在步骤s20中,根据步骤s16中创建的外侧边缘函数eo(θ)和内侧边缘函数ei(θ),算出线间间隙函数ρ1(θ)。图5示出了线间间隙函数ρ1(θ)的一个例子。线间间隙函数ρ1(θ)通过下式被定义:ρ1(θ)=ei(θ+360°)-eo(θ)。线间间隙函数ρ1(θ)是表示涡卷弹簧30的相邻的线材间的间隙的函数。

接着,在步骤s22中,从存储器读出下限阈值函数ρ1min(θ),在作为检查对象的角度范围内判定线间间隙函数ρ1(θ)>下限阈值函数ρ1min(θ)是否成立。当上述不等式成立时(步骤s22中的“是”),进入步骤s24,不成立时(步骤s22中的“否”),在步骤s28中判定涡卷弹簧30为不良品(后述)。

在步骤s24中,从存储器读出上限阈值函数ρ1max(θ),在作为检查对象的角度范围内,判定线间间隙函数ρ1(θ)<上限阈值函数ρ1max(θ)是否成立。当上述不等式成立时(步骤s24中的“是”),进入步骤s26,不成立时(步骤s24中的“否”),在步骤s28中判定涡卷弹簧30为不良品(后述)。

在步骤s22、s24中判断为“否”之后的步骤s28中,将涡卷弹簧30判定为不良品,并将不良部位反映在显示器20的涡卷弹簧图像上。具体而言,将线间间隙函数ρ1(θ)为异常值时的θ作为θerr,确定与ρ1(θerr)对应的外侧/内侧边缘函数的坐标值(θerr,eo(θerr))、(θerr,ei(θerr))。然后,对该坐标值进行极坐标逆转换,从而算出xy平面上的不良部位,并将该不良部位反映在显示器20的涡卷弹簧图像上。

在步骤s26中,基于步骤s22、s24的判定结果,判定涡卷弹簧30为良品。图6中示出了线间间隙函数ρ1(θ)、下限阈值函数ρ1min(θ)、及上限阈值函数ρ1max(θ)的例子。在图6的例子中,在约120°<θ<约230°的范围内,ρ1(θ)<ρ1min(θ)。因此,在步骤s22中判断为“否”,并在步骤s28中判定为不良品。在本实施例中,涡卷弹簧30的良否判定基于ρ1min(θ)<ρ1(θ)<ρ1max(θ)是否成立而进行。根据该结构,通过控制预先存储在存储器中的下限阈值函数ρ1min(θ)及上限阈值函数ρ1max(θ),能够制造具有所期望的线间间隙形状的涡卷弹簧。由此,能够使涡卷弹簧的特性稳定化。

此外,下限阈值函数ρ1min(θ)及上限阈值函数ρ1max(θ)也可以根据设计图或者设计数据等决定,也可以根据设计数据的fem解析结果等决定。在作为检查对象的角度范围内,下限阈值函数ρ1min(θ)及上限阈值函数ρ1max(θ)也可以是恒定值。另外,也可以仅执行步骤s22及s24中的任一个处理。

另外,在上述的步骤s20中,算出了线间间隙函数ρ1(θ),但是也可以代替ρ1(θ)而算出线材厚度函数ρ2(θ)。线材厚度函数ρ2(θ)通过下式定义:ρ2(θ)=eo(θ)-ei(θ)。线材厚度函数ρ2(θ)是表示涡卷弹簧30的线材的厚度(线材的板厚)的函数。此时,也可以预先在存储器中存储线材厚度的下限阈值函数ρ2min(θ)及上限阈值函数ρ2max(θ),在步骤s22中,判定ρ2(θ)>ρ2min(θ)是否成立。也可以在步骤s24中,判定ρ2(θ)<ρ2max(θ)是否成立。

或者,也可以在步骤s20中,算出线间间隙函数ρ1(θ)和线材厚度函数ρ2(θ)两者,并在步骤s22、s24中,判定两者的函数是否满足上述不等式。

此处,对相邻的线材彼此接触的情况进行说明。图7中示出涡卷弹簧30的拍摄图像,该涡卷弹簧30的相邻的线材彼此在接触点ct接触,图8中示出该涡卷弹簧30的极坐标图像。从图7、图8可知,若相邻的线材彼此接触,则在极坐标图像上,相邻的条纹状的像素组彼此接触。在该例子中,由于像素组40与像素组42接触,因而计算机22在反方向追踪处理(参照图2c)的步骤s55中判断为“否”,在步骤s59中算出部分线材长度sr(反方向追踪在接触点ct结束)。并且,经过步骤s33~s36(参照图2b)的处理,开始正方向追踪处理(参照图2d)。然后,计算机22在步骤s62中判断为“否”,在步骤s69中算出部分线材长度sf(正方向追踪在接触点ct结束)。接着,经过步骤s38~s40(参照图2b)的处理,在步骤s41中判断为“否”,并创建直至追踪所到之处为止的外侧/内侧边缘函数。此时,边缘函数长度l=sr+sf。因此,计算机22在步骤s18(参照图2a)中判断为“否”,并在步骤s28中判定该涡卷弹簧30为不良品。此外,也可以代替上述的判定方法,采用以下的结构:设置用于确定像素组a的处理,从而在像素组40的反方向追踪中检测出构成像素组a的像素的坐标值时,结束反方向追踪。同样地,也可以采用以下的结构:设置用于确定像素组b的处理,从而在像素组48(图10中为像素组46)的正方向追踪中检测出构成像素组b的像素的坐标值时,结束正方向追踪。

对上述的形状测量装置10的效果进行说明。若相邻的线材间的间隙(以下,也称为线间间隙)为不自然的形状,则涡卷弹簧不能满足要求性能。例如,若线间间隙过窄,则存在线材彼此接触从而产生异音,或者滞后增大,或者产生破损的情况。另一方面,若线间间隙过宽,则存在难以确保规定的扭矩的情况。在以往的检查方法中,即使是这样的涡卷弹簧,如果特定部位的形状满足良品的判定标准也会被判定为良品,因而检查方法存在问题。对此,在本说明书所公开的形状测量装置10中,计算机22算出线间间隙函数ρ1(θ)。由此,能够检查以往没有检查过的线间间隙。因此,能够恰当地测量涡卷弹簧30的形状,结果能够恰当地进行涡卷弹簧的质量检验。

另外,在涡卷弹簧中,存在线材厚度不恒定的特殊的形状的涡卷弹簧(例如,如图27所示那样的仅内钩及外钩的线材厚度较大的涡卷弹簧)。为了恰当地测量这样的涡卷弹簧的形状,需要测量线材的厚度。在上述的形状测量装置10中,计算机22算出线材厚度函数ρ2(θ)。由此,能够检查以往没有检查过的线材厚度,并能够恰当地测量涡卷弹簧的形状。

另外,在上述的形状测量装置10中,基于预先存储在存储器中的阈值函数(ρ1min(θ)、ρ1max(θ)、ρ2min(θ)、ρ2max(θ))进行线间间隙形状及/或线材厚度的良否判定。因此,能够定量地判定涡卷弹簧30的质量。

另外,在上述的形状测量装置10中,计算机22通过对拍摄图像进行极坐标转换来创建极坐标图像。通过对极坐标图像的线材与背景的边界进行追踪,来算出线间间隙函数ρ1(θ)及/或线材厚度函数ρ2(θ)。追踪边界的算法能够克服图像的噪声,并能够比较简单地构建。因此,即使极坐标图像中包含一定程度的噪声,也能够正确地追踪边界。另外,能够在比较短的时间内算出线间间隙函数ρ1(θ)及/或线材厚度函数ρ2(θ)。因此,第一实施例那样的使用了极坐标图像的形状测量方法适于在线检查。

接着,在第一变形例~第四变形例中,对作为取代第一实施例的步骤s22、s24的处理的良否判定方法及定量评价方法进行说明。此外,在以下的变形例中存在使用相同的字符的情况。在每个变形例中,对字符有定义时遵从该定义,没有特别定义时遵从通用的定义。

(第一变形例)

在本变形例中,首先,在登记工序中,准备n个用任意的方法判定为良品的涡卷弹簧(例如,n=300),进行第一实施例的步骤s10~s20的处理,算出各自的线间间隙函数ρ1n(θ)(n=1~n)。并且,算出这些线间间隙函数ρ1n(θ)的平均值μ(θ)及标准偏差σ(θ),并用它们创建以下的式1、式2的判别函数,将该判别函数登记到计算机22的存储器中。此处,以下的算式中的θi(i:0~m、m:整数)表示每隔s°间隔的角度(即,θi=θ0+i·s),k表示任意设定的常数。

[式1]

[式2]

并且,在涡卷弹簧检查工序或者制造工序中,算出作为测量对象的涡卷弹簧30的线间间隙函数ρ1(θ),使用存储在存储器中的判别函数,算出该函数ρ1(θ)的ds。ds=1时,判定为良品(步骤s26),ds=0时判定为不良品(步骤s28)。图11示出表示线间间隙函数ρ1(θ)与平均值μ(θi)及标准偏差σ(θi)之间的关系的图表。在图11的图表中,设定θ0=10°、s=45°、k=5.0。在图11的图表中,由于各θi的d(θi)都为1,因而ds=1,测量对象的涡卷弹簧30被判定为良品。s及k的值越小,良否判定的判定标准越严格。此外,平均值μ(θ)及标准偏差σ(θ)也可以根据设计图或者设计数据决定,也可以根据设计数据的fem解析结果等决定。

进而,能够使用以下的式3所示的加变形度tr+(θi)及式4所示的减变形度tr-(θi),定量地评价涡卷弹簧30的线间间隙与良品相比变形了多少。加变形度tr+(θi)是将角度θi的涡卷弹簧30的线间间隙“与良品相比大多少”定量化的尺度。式4所示的减变形度tr-(θi)是用于定量地评价角度θi的涡卷弹簧30的线间间隙“与良品相比小多少”的尺度。

[式3]

[式4]

计算机22使用式3、式4算出加变形度tr+(θi)、减变形度tr-(θi),将“在涡卷弹簧30的哪个部分发生了多少变形”显示在显示器20上。涡卷弹簧制造工序的工作人员通过确认显示器20上显示的涡卷弹簧的变形度tr+(θi)、tr-(θi),修正涡卷弹簧成形装置的成型参数,能够改善涡卷弹簧产品的质量。

(第二变形例)

在本变形例中,使用公知的方法即马氏田口法判定涡卷弹簧30的良否。具体而言,首先,在登记工序中,准备n个用任意的方法判定为良品的涡卷弹簧(例如,n=300),并算出各自的线间间隙函数ρ1n(θ)(n=1~n)。然后,使用以下的式5算出θ=θi(i:0~m,m:整数)中的n个线间间隙ρ1n(θi)的平均值μ(θi)及方差{σ(θi)}2。此处,θi表示每隔s°间隔的角度(即,θi=θ0+i·s)。在登记涡卷弹簧的良品形状的工序中,质量管理者操作“涡卷弹簧形状登记软件”,将对每个编号的涡卷弹簧算出的平均值μ(θi)及标准偏差σ(θi)存储在计算机22的存储器中。

[式5]

接着,使用以下的式6算出n个线间间隙函数ρ1n(θ)的各自的标准化平均间隙xi,n。

[式6]

接着,使用以下的式7~式9算出相关矩阵r。此处,k表示θi的个数(即,k=m+1)。另外,p、q表示n=1~k中的任意的数。

[式7]

[式8]

rp,p=1

[式9]

接着,使用以下的式10算出相关矩阵r的逆矩阵a。在登记涡卷弹簧的良品形状的工序中,质量管理者操作“涡卷弹簧形状登记软件”,将对每个编号的涡卷弹簧算出的逆矩阵a存储在计算机22的存储器中。

[式10]

接着,对涡卷弹簧的检查工序(或者制造工序)的处理进行说明。在计算机22的存储器中预先存储有以下的式11、式12的算式。在涡卷弹簧的检查工序(制造工序)中,算出作为测量对象的涡卷弹簧30的线间间隙函数ρ1(θ),并使用以下的式11算出线间间隙ρ1(θi)的标准化平均间隙xi。接着,在式12的算式中,代入标准化平均间隙xi及存储器中存储的逆矩阵a,算出马氏距离d。

[式11]

[式12]

在计算机22的存储器中,预先存储有马氏距离d的阈值。在使用式12算出马氏距离d之后,将其与存储器中存储的阈值相比较。如果d≤阈值,则判定为良品(步骤s26),若d>阈值,则判定为不良品(步骤s28)。根据本变形例的判定方法,即使在难以设定不良品的判定标准的情况下也能够恰当地进行良否判定。

此处,马氏距离d可以看做是用于定量地评价涡卷弹簧30的变形度的尺度。计算机22也可以构成为将变形度d显示在显示器20上。此时,涡卷弹簧30的制造工序的工作人员通过确认显示在显示器20上的变形度d,来修正涡卷弹簧成形装置的成型参数,从而能够改善涡卷弹簧产品的质量。该结构也适用于第三变形例。

(第三变形例)

在本变形例中,也是首先准备n个用任意的方法判定为良品的涡卷弹簧(例如,n=300),并算出各自的线间间隙函数ρ1n(θ)(n=1~n)。接着,算出各线间间隙函数ρ1n(θ)的fft频谱fn(i)(i:1~m),并使用以下的式13算出n个fft频谱fn(i)的平均值μ(i)及方差{σ(i)}2。质量管理者操作“涡卷弹簧形状登记软件”,将对各编号的涡卷弹簧算出的平均值μ(i)及标准偏差σ(i)预先存储在计算机22的存储器中。

[式13]

接着,使用以下的式14算出n个线间间隙函数ρ1n(θ)的各自的标准化平均间隙xi,n。

[式14]

接着,使用第二变形例的式7~式9算出相关矩阵r,并使用第二变形例的式10算出相关矩阵r的逆矩阵a。质量管理者操作“涡卷弹簧形状登记软件”,将对各编号的涡卷弹簧算出的逆矩阵a预先存储在计算机22的存储器中。

在计算机22的存储器中,存储有以下的式15及与第二变形例的式12相同的算式。在涡卷弹簧的检查工序(或者制造工序)中,算出作为测量对象的涡卷弹簧30的线间间隙函数ρ1(θ),求出其fft频谱f(i),并使用以下的式15算出该fft频谱f(i)的标准化平均间隙xi。此处,涡卷弹簧30发生变形时,fft频谱f(i)的低频分量(i=m1~m2、1≤m1、m2<m)中会出现变形的特征。因此,在本变形例中,算出了i=m1~m2的范围内的标准化平均间隙xi。算出标准化平均间隙xi之后,在式12的算式中代入xi及存储器中存储的逆矩阵a,从而算出马氏距离d。

[式15]

在计算机22的存储器中预先存储有马氏距离d的阈值。使用式12算出马氏距离d之后,将其与存储器中存储的阈值相比较。如果d≤阈值则判定为良品(步骤s26),如果d>阈值则判定为不良品(步骤s28)。

(第四变形例)

在本变形例中,通过与第三变形例相同的方法算出n个良品的涡卷弹簧的各线间间隙函数ρ1n(θ)的fft频谱fn(i)(i:1~m)。在登记涡卷弹簧的良品形状的工序中,使用以下的式16、式17算出fft频谱fn(i)的低频分量的低频功率pn的平均值μ和方差σ2。质量管理者操作“涡卷弹簧形状登记软件”,将对每个编号的涡卷弹簧算出的平均值u及标准偏差σ预先存储在算机22的存储器中。

[式16]

[式17]

接着,在检查工序(或者制造工序)中,算出作为测量对象的涡卷弹簧30的线间间隙函数ρ1(θ),求出其fft频谱f(i),并使用以下的式18算出低频功率p。

[式18]

在计算机22的存储器中,预先存储有以下的式19的不等式。此处,k为任意设定的常数。使用式18算出低频功率之后,代入以下的不等式,并判定不等式是否成立。不等式成立时判定为良品(步骤s26),不成立时判定为不良品(步骤s28)。

[式19]

μ-kσ≤p≤μ+kσ

(第五变形例)

在第一实施例中,通过对由ccd相机16拍摄的拍摄图像(的二值化图像)进行图像转换而创建了极坐标图像,但是图像转换的对象不限定于拍摄图像,也可以是例如由激光位移计等测量的测量数据。在本变形例中,对使用由激光位移计测量涡卷弹簧30时的测量数据来算出线间间隙函数ρ1(θ)及线材厚度函数ρ2(θ)的两种方法进行说明。

(方法1)

本变形例的形状测量装置具有图13所示的激光位移计50,来代替图1的ccd相机16。如图13所示,激光位移计50具有用于照射出激光的照射部52,以及接收由对象物(涡卷弹簧30)反射的反射光的光接收面54。激光位移计50能够在x方向上移动。涡卷弹簧30被配置于在xy平面上具有载置面的工作台(省略图示)上。工作台能够在y方向上移动。激光位移计50配置在涡卷弹簧30的正上方,其照射部52朝向下方(z方向)照射激光。

图12是示出利用本变形例的形状测量装置进行的涡卷弹簧30的形状测量流程的流程图。首先,在步骤s70中,通过激光位移计50进行涡卷弹簧30的形状测量。具体而言,在固定了工作台的状态下使激光位移计50在x方向上移动,从涡卷弹簧30的x方向上的一端向另一端,对涡卷弹簧30照射激光。一边使工作台在y方向上移动一边重复该处理,对整个涡卷弹簧30照射激光。

接着,在步骤s72中,基于步骤s70中测量的测量数据创建三维数据。具体而言,根据固定工作台而照射了激光时的测量数据,创建如图14所示的涡卷弹簧30的剖面数据。沿y方向创建多个该剖面数据。对这些剖面数据进行重建,从而创建如图15所示的三维数据。此外,从该步骤s72到后述的步骤s86为止的处理通过计算机22执行。

接着,在步骤s74中,对步骤s72中创建的三维数据进行极坐标转换,从而创建如图16所示的三维极坐标数据。具体而言,根据三维数据算出中心轴(例如重心)(参照图15的虚线),并将中心轴作为中心,对三维数据进行极坐标转换。

接着,在步骤s76中,每隔规定的角度,在rz平面(半径-高度平面)上将步骤s74中创建的三维极坐标数据切断,从而创建如图17所示的rz剖面的图表。图17是θ=60°时的rz剖面的图表。接着,在步骤s78中,根据步骤s76中创建的rz剖面的图表,算出线间间隙,并算出线间间隙函数ρ1(θ)。例如,根据图17的图表,算出θ=60°、420°、780°时的线间间隙ρ1(60°)、ρ1(420°)、ρ1(780°)。对各rz剖面的图表进行该处理,并将得到的线间间隙连接起来进行近似,从而算出线间间隙函数ρ1(θ)。接着,在步骤s80~s86中,进行涡卷弹簧30的良否判定。这些处理与第一实施例的步骤s22~s28的处理(参照图2b)相同。

此外,在步骤s78中,也可以取代线间间隙函数ρ1(θ),而算出表示相邻的线材的芯线间的距离(螺距)的螺距函数ρ3(θ)。具体而言,也可以从步骤s76的rz剖面的图表中提取芯线(通过线材的宽度方向中央的线),从而算出芯线间的距离,由此算出螺距函数ρ3(θ)。在普通的涡卷弹簧30中,线材厚度从内钩32到外钩34大致恒定。由于螺距=线间间隙+线材厚度,因而如果线材厚度大致恒定,则线间间隙函数ρ1(θ)与螺距函数ρ3(θ)的动态大致相同。因此,基于螺距函数ρ3(θ)进行良否判定的方法也是有用的。

(方法2)

在该方法中,到步骤s72为止进行与上述方法1相同的处理。然后,将步骤s72中创建的三维数据转换为二维图像。具体而言,将三维数据的z轴的值转换为图像的浓淡。即,z轴的值比阈值小的坐标值转换为浓度值0,z轴的值为阈值以上的坐标值转换为浓度值1。由此,创建二值化的极坐标图像。之后的处理与第一实施例的步骤s16之后的处理(参照图2a、图2b)相同。

此外,在第五变形例中对使用激光位移计50进行形状测量的方法进行了说明,但是位移计的种类不限定于此。例如,也可以使用图案投影式传感器、使用了波长共焦方式的光学传感器、脉冲激光型的3d-tof相机、搭载了平行光led的位移传感器。即,照射光不限定于激光,也可以是包含微波、毫米波、太赫兹波等电波(电磁波)的全体光。

另外,第一~四变形例的良否判定方法或者定量评价方法也能够适用于第五变形例的形状测量方法。另外,也能适用于后述的第二实施例、第三实施例及它们的变形例。

第二实施例

接着,参照图18~20对第二实施例的形状测量装置进行说明。以下,仅对与第一实施例不同的点进行说明,对于与第一实施例相同的结构省略其详细说明。第三实施例也是同样。此外,在第二实施例、第三实施例中,是以第二类型的涡卷弹簧30为例进行说明的,但是第一类型的涡卷弹簧30也能够适用同样的测量方法。

图18是示出利用本实施例的形状测量装置进行的涡卷弹簧30的形状测量流程的流程图。本实施例中测量的涡卷弹簧30以线材厚度(线材的厚度)大致恒定为前提。首先,在步骤s90中,通过进行与第一实施例的步骤s10(参照图2a)相同的处理来拍摄涡卷弹簧30。接着,在步骤s91中,从步骤s90中拍摄的拍摄图像中提取芯线(进行芯线化)从而创建芯线化图像。在步骤s92中,判断芯线化图像的创建是否成功。创建芯线化图像的处理可以使用公知的方法(例如,日本特开2013-19845)来进行。此处,在相邻的线材彼此接触的涡卷弹簧(参照图7)中,芯线在接触点ct分支,芯线一般无法确定。此时,判断芯线化图像的创建失败(步骤s92中的“否”),并进入步骤s106。另一方面,如图19所示,当能够从涡卷弹簧30的内钩32到外钩34提取到芯线时,则判断芯线化图像的创建成功(步骤s92中的“是”),并进入步骤s94。此外,从该步骤s91到后述的步骤s106为止的处理通过计算机22执行。

通过步骤s91的处理而提取的芯线由芯线化图像的像素的坐标值组表示。在步骤s94中,追踪这些坐标值组从而赋予编号。具体的而言,从内钩32的前端点向外钩34的前端点,依次对各像素的坐标值赋予(x0,y0)、(x1,y1)···(xn-1,yn-1)这样的编号。也可以对构成芯线化图像的所有像素进行该处理,也可以对位于等间隔的像素进行该处理。以下,也将赋予了编号的坐标值组称为芯线序列。

接着,在步骤s96中,如图20所示,算出芯线序列上的各坐标值(xi,yi)(i=0~n-1)的法向量。例如,求坐标值(xk,yk)的法向量时,对坐标值(xk,yk)及其附近的坐标值组进行直线近似,将与该直线正交的向外的向量作为坐标值(xk,yk)的法向量而算出。法向量的起点是坐标值(xk,yk)。此外,“向外的向量”是表示向远离涡卷弹簧30的中心(省略图示)的方向延伸的向量。

接着,在步骤s98中,使用步骤s96中算出的n个法向量算出n个线间间隙ρ1(θi),并基于此算出线间间隙函数ρ1(θ)。具体而言,首先,选择坐标值(xl1,yl1),该坐标值(xl1,yl1)是构成与坐标值(xk,yk)的法向量最先相交的芯线(即,与包含坐标值(xk,yk)的芯线在其外周侧相邻的芯线)的坐标值组中的与坐标值(xk,yk)最近的坐标值(参照图20)。接着,将从坐标值(xk,yk)与坐标值(xl1,yl1)之间的距离中减去线材厚度d而得到的值,作为i=k时的线间间隙ρ1(θk)而算出(即,ρ1(θk)={(xk-xl1)2+(yk-yl1)2}1/2-d)。通过将这样算出的n个线间间隙ρ1(θi)连接起来进行近似,从而算出线间间隙函数ρ1(θ)。

接着,在步骤s100~s106中,进行涡卷弹簧30的良否判定。这些处理与第一实施例的步骤s22~s28的处理(参照图2b)相同。

根据第二实施例的结构也能够获得与第一实施例相同的效果。另外,在本实施例中,算出芯线序列的各坐标值的法向量,由此算出芯线间的距离。因此,能够正确地算出线间间隙(或者螺距),并能够提高涡卷弹簧30的线间间隙形状的质量检验精度。使用了第二实施例那样的芯线化图像的形状测量方法,例如适用于设计时的fem解析等的要求高精度的用途。

此外,在本实施例中,由于涡卷弹簧30的线材厚度d大致恒定,因而也可以取代线间间隙ρ1(θi)而算出螺距ρ3(θi),并基于此算出螺距函数ρ3(θ)。此时,i=k时的螺距ρ3(θk)以下式定义:ρ3(θk)={(xk-xl1)2+(yk-yl1)2}1/2

此外,在本实施例中也能够使用与第一实施例的第五变形例的方法2相同的方法。即,也可以将根据由激光位移计50(参照图13)测量的测量数据创建的三维数据转换为二维图像,并对该二维图像进行步骤s91之后的处理。

(第一变形例)

在本变形例中,参照图21,对步骤s98中的线间间隙函数ρ1(θ)的其他计算方法进行说明。首先,如图21所示,选择坐标值(xla,yla)以及坐标值(xlb,ylb),该坐标值(xla,yla)和该坐标值(xlb,ylb)分别是构成与坐标值(xk,yk)的法向量最先相交的芯线的坐标值组中的与坐标值(xk,yk)最近的坐标值以及第二近的坐标值。接着,算出通过坐标值(xla,yla)和坐标值(xlb,ylb)的直线l(参照图21的虚线)的计算式。然后,将从坐标值(xk,yk)与直线l之间的距离中减去线材厚度d而得到的值,作为i=k时的线间间隙ρ1(θk)而算出。也可以根据这样算出的n个线间间隙ρ1(θi),来算出线间间隙函数ρ1(θ)。此外,也可以取代对2个坐标值进行线性近似的方法,而用样条曲线或者二次曲线进行插值。用二次曲线进行插值时,除了选择上述2个坐标值外,还选择第三近的坐标值,使用这3个坐标值进行近似。此外,也可以在不减去线材厚度d的情况下算出螺距ρ3(θk),从而算出螺距函数ρ3(θ)。

第三实施例

接着,参照图22~图25对第三实施例的形状测量装置进行说明。图22是示出利用本实施例的形状测量装置进行的涡卷弹簧30的形状测量流程的流程图。首先,在步骤s110中,通过进行与第一实施例的步骤s10(参照图2a)相同的处理来拍摄涡卷弹簧30。接着,在步骤s111中,对步骤s110中拍摄的拍摄图像不进行极坐标转换,而是从该拍摄图像中提取轮廓线从而创建轮廓线图像。可以使用公知的方法进行创建轮廓线图像的处理(例如,日本特开2009-257950或日本特开2013-19845)。通过步骤s111的处理而提取的轮廓线,由轮廓线图像的像素的坐标值组表示。在步骤s112中,如图24所示,对通过步骤s111的处理而提取的轮廓线的坐标值组进行追踪从而赋予编号。具体而言,以从轮廓线的内钩端点到外钩端点绕一圈的方式,依次对各像素的坐标值赋予(x0,y0)、(x1,y1)···(x2n-1,y2n-1)这样的编号。也可以对构成轮廓线图像的所有像素进行该处理,也可以对位于等间隔的像素进行该处理。此外,从该步骤s111到后述的步骤s128为止的处理通过计算机22执行。

在步骤s114中,如图24所示,将这些赋予了编号的坐标值组,分离为构成外侧轮廓线的坐标值组(参照虚线)和构成内侧轮廓线的坐标值组(参照实线)。该处理可以通过例如用公知的方法确定2个内钩端点(由内钩的前端面和侧面构成的2个部位的角部)及2个外钩端点(由外钩的前端面和侧面构成的2个部位的角部)来进行。以下,将构成外侧轮廓线的赋予了编号的坐标值组,也特别称为外侧轮廓线序列。接着,在步骤s116中,判断步骤s114中是否已经将赋予了编号的坐标值组分离为构成外侧轮廓线的坐标值组和构成内侧轮廓线的坐标值组。此处,在相邻的线材彼此接触的涡卷弹簧(图7参照)中,由于存在接触点ct,因而不能将构成外侧轮廓线的坐标值组和构成内侧轮廓线的坐标值组分离。此时,判断轮廓线的分离失败(步骤s116中的“否”),并进入步骤s128。另一方面,已经将坐标值组分离为构成外侧轮廓线的坐标值组和构成内侧轮廓线的坐标值组时,判断轮廓线的分离成功(步骤s116中的“是”),并进入步骤s118。

接着,在步骤s118中,如图25所示,算出轮廓线序列上的各坐标值(xi,yi)(i=0~n-1)的法向量。该处理与第二实施例的步骤s96的处理相同。

接着,在步骤s120中,使用步骤s118中算出的n个法向量,算出n个线间间隙ρ1(θi),并据此算出线间间隙函数ρ1(θ)。具体而言,首先,选择坐标值(xl2,yl2),该坐标值(xl2,yl2)是构成与坐标值(xk,yk)的法向量最先相交的内侧轮廓线(即,与包含坐标值(xk,yk)的外侧轮廓线在其外周侧相邻的内侧轮廓线)的坐标值组中的与坐标值(xk,yk)最近的坐标值(参照图25)。将坐标值(xk,yk)与坐标值(xl2,yl2)之间的距离,作为i=k时的线间间隙ρ1(θk)而算出(即,ρ1(θk)={(xk-xl2)2+(yk-yl2)2}1/2)。通过将这样算出的n个线间间隙ρ1(θi)连接起来进行近似,算出线间间隙函数ρ1(θ)。

接着,在步骤s122~s128中,进行涡卷弹簧30的良否判定。这些处理与第一实施例的步骤s22~s28的处理(参照图2b)相同。

根据第三实施例的结构也能够获得与第一实施例相同的效果。

此外,同样在本实施例中,在步骤s120中,可以使用与第二实施例的第一变形例相同的方法算出线间间隙函数ρ1(θ)。

(第一变形例)

在本变形例中,参照图26~图31,对取代线间间隙函数ρ1(θ)而算出线材厚度函数ρ2(θ)的方法进行说明。图26是示出利用本变形例的形状测量装置进行的涡卷弹簧30的形状测量流程的流程图。图26的步骤s130~步骤s136的处理与第三实施例的步骤s110~步骤s116的处理相同。图27示出步骤s130中拍摄的涡卷弹簧30的拍摄图像。从图27可知,本变形例中作为测量对象的涡卷弹簧30的线材厚度不恒定。图28示出步骤s131中创建的轮廓线图像,图29示出步骤s136中轮廓线的分离成功了的情况下(步骤s136中的“是”)的外侧轮廓线的坐标值组(参照虚线)与内侧轮廓线的坐标值组(参照实线)。以下,将构成内侧轮廓线的赋予了编号的坐标值组特别地称为内侧轮廓线序列。

接着,在步骤s138中,如图30所示,算出内侧轮廓线序列的中间的坐标值的法向量。法向量的计算方法与第三实施例的步骤s118相同。即,步骤s138中算出的法向量为向外的向量(向远离涡卷弹簧30的中心的方向延伸的向量)。

接着,在步骤s140中,如图30所示,算出从中间坐标(x(n+1)/2,y(n+1)/2)的相邻的坐标(x(n+1)/2-1,y(n+1)/2-1),到内侧轮廓线序列的起点为止的各坐标值(xi,yi)(i=(n+1)/2-1~0)的法向量。此外,在以坐标值(xi,yi)为起点的法向量中,存在“向外的法向量”和“向内的法向量(即,向接近涡卷弹簧30的中心的方向延伸的向量)”这2种法向量。在该步骤中,选择这2种法向量中的“与用前一个坐标值算出的法向量具有较小角度的法向量”。

接着,在步骤s142中,如图31所示,算出从与内侧轮廓线序列的中间坐标值在其外侧相邻的坐标值到终点为止的各坐标值(xi,yi)(i=(n+1)/2+1~n-1)的法向量。在该步骤中,也与步骤s140同样地,选择“与用前一个坐标值算出的法向量具有较小角度的法向量”。

接着,在步骤s144中,使用步骤s138~s142中算出的n个法向量,算出n个线材厚度ρ2(θi),并据此算出线材厚度函数ρ2(θ)。具体而言,首先,选择坐标值(xl3,yl3),该坐标值(xl3,yl3)是构成与坐标值(xk,yk)的法向量最先相交的外侧轮廓线(即,与包含坐标值(xk,yk)的内侧轮廓线在其外周侧相邻的外侧轮廓线)的坐标值组中的与坐标值(xk,yk)最近的坐标值(参照图30)。将坐标值(xk,yk)与坐标值(xl3,yl3)之间的距离,作为i=k时的线材厚度ρ2(θk)而算出(即,ρ2(θk)={(xk-xl3)2+(yk-yl3)2}1/2)。通过将这样算出的n个线材厚度ρ2(θi)连接起来进行近似,来算出线材厚度函数ρ2(θ)。步骤s146~s152的处理与第一实施例的步骤s22~s28的处理相同。

此外,同样在本变形例中,在步骤s144中,可以使用与第二实施例的第一变形例相同的方法算出线材厚度函数ρ2(θ)。

另外,在第三实施例及其第一变形例中也可以使用与第一实施例的第五变形例的方法2相同的方法。即,也可以将根据由激光位移计50(参照图13)测量的测量数据创建的三维数据转换为二维图像,也可以对该二维图像进行步骤s111之后的处理或者步骤s132之后的处理。

以上,对本发明的具体例进行了详细说明,但是这些只是举例说明,并非限定权利要求书。在权利要求书所记载的技术中,包含对以上举例说明的具体例进行的各种变形和变更。

例如,在上述的实施例中,作为进行极坐标转换时的原点,使用了涡卷弹簧30的重心g,但是本发明不限定于这种实施方式。例如,进行极坐标转换时的原点也可以不设定在涡卷弹簧30的内侧,而设定在涡卷弹簧30的外侧。

另外,本说明书或者附图所说明的技术要素通过独立存在或者以各种组合来发挥技术实用性,不限定于申请时的权利要求中记载的组合。另外,本说明书或者附图所举例说明的技术同时达成多个目的,并通过达成其中一个目的而使自身具有技术实用性。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1