本发明涉及包括作业机械的系统、由计算机执行的方法、学习完成的位置推定模型的制造方法以及学习用数据。
背景技术:
关于液压挖掘机,在专利文献1中公开了如下技术:在动臂销安装有动臂角度传感器,在斗杆销安装有斗杆角度传感器,在铲斗连杆安装有铲斗角度传感器,基于由这些角度传感器检测出的值来计算铲斗的铲尖的位置。
在先技术文献
专利文献
专利文献1:日本特开2017-71982号公报
技术实现要素:
发明要解决的课题
在上述文献所记载的结构中,为了取得工作装置的姿态,需要在动臂、斗杆以及铲斗各自的轴安装角度传感器,部件数量增加。
在本发明中,提供一种用于求出工作装置的位置的、包括作业机械的系统、由计算机执行的方法、学习完成的位置推定模型的制造方法、以及学习用数据。
用于解决课题的手段
根据本发明的一个方案,提供一种包括作业机械的系统,其具备作业机械主体、安装于作业机械主体的工作装置、用于操作工作装置的操作构件、以及计算机。计算机具有用于求出工作装置中的作为推定位置的对象的部位的位置推定对象部的位置的学习完成位置推定模型。计算机取得通过操作构件的操作使工作装置进行动作的操作指令值,使用学习完成位置推定模型并根据操作指令值来推定位置推定对象部的距基准位置的位移量,并输出根据基准位置以及位移量推定出位置推定对象部的位置的第一推定位置。
根据本发明的一个方案,提供一种由计算机执行的方法。该方法包括以下的处理。在第一处理中,取得使设置于作业机械主体的工作装置进行动作的操作指令值。在第二处理中,使用用于求出工作装置的位置的学习完成位置推定模型求出根据操作指令值推定出工作装置的位置的推定位置。
根据本发明的一个方案,提供一种学习完成的位置推定模型的制造方法。制造方法包括以下的处理。在第一处理中,取得学习用数据。学习用数据包含使安装于作业机械主体的工作装置进行动作的操作指令值、以及检测到操作指令值时的工作装置的距基准位置的位移量。在第二处理中,通过学习用数据使位置推定模型进行学习。
根据本发明的一个方案,提供一种用于使求出工作装置的位置的位置推定模型进行学习的学习用数据。学习用数据具备使安装于作业机械主体的工作装置进行动作的操作指令值、以及检测到操作指令值时的工作装置的距基准位置的位移量。
根据本发明的一个方案,提供一种学习完成的位置推定模型的制造方法。制造方法包括以下的处理。在第一处理中,取得使安装于作业机械主体的工作装置进行动作的操作指令值。在第二处理中,使用学习完成的位置推定模型,求出根据操作指令值推定出工作装置的位置的推定位置。在第三处理中,通过包含操作指令值以及推定位置的学习用数据,使其他位置推定模型进行学习。
发明效果
根据本发明,能够高精度地取得工作装置的位置。
附图说明
图1是基于实施方式的液压挖掘机的外观图。
图2是对动臂角度、斗杆角度以及铲斗角度进行说明的工作装置的侧视图。
图3是图1所示的液压挖掘机的示意性俯视图。
图4是示出包括液压挖掘机的系统的概要结构的框图。
图5是示出计算机的结构的示意图。
图6是示出出厂前的计算机的内部结构的概要的功能框图。
图7是示出学习完成的第一位置推定模型的制造方法的流程图。
图8是示出用于使第一位置推定模型进行学习的处理的概要图。
图9是示出学习完成的第二位置推定模型的制造方法的流程图。
图10是示出用于使第二位置推定模型进行学习的处理的概要图。
图11是示出工厂出厂的计算机的内部结构的概要的功能框图。
图12是示出为了在工厂出厂后推定工作装置的相对位置而由计算机执行的处理的流程图。
图13是示出使用了学习完成的位置推定模型的、根据拍摄图像推定工作装置的相对位置的处理的示意图。
图14是示出使用了学习完成的位置推定模型的、根据拍摄图像以及操作指令值推定工作装置的相对位置的处理的示意图。
图15是示出与位置推定模型的学习相关的变形例的概要图。
图16是示出用于生成蒸馏模型的处理的流程图。
具体实施方式
以下,基于附图对实施方式进行说明。在以下的说明中,对于相同部件标注相同的附图标记。它们的名称以及功能均相同。因此,不重复对它们的详细说明。
在实施方式中,首先,对能够应用本发明的思想的作业机械的一例即液压挖掘机的结构进行说明。图1是基于实施方式的液压挖掘机100的外观图。
如图1所示,液压挖掘机100具有主体1以及在液压的作用下工作的工作装置2。主体1具有回转体3以及行驶装置5。行驶装置5具有一对履带5cr。液压挖掘机100能够通过履带5cr的旋转来进行行驶。需要说明的是,行驶装置5也可以具有车轮(轮胎)。
回转体3配置于行驶装置5上,并由行驶装置5支承。回转体3能够以回转轴rx为中心而相对于行驶装置5回转。回转体3具有驾驶室4。液压挖掘机100的乘员(操作员)搭乘于该驾驶室4以对液压挖掘机100进行操纵。在驾驶室4设置有供操作员就座的驾驶席4s。操作员能够在驾驶室4内操作液压挖掘机100。操作员在驾驶室4内,能够进行工作装置2的操作、能够进行回转体3相对于行驶装置5的回转操作、还能够进行基于行驶装置5的液压挖掘机100的行驶操作。
回转体3具有收容发动机的发动机室9、以及设置于回转体3的后部的配重。在发动机室9配置有未图示的发动机以及液压泵等。
在回转体3中,在发动机室9的前方设置有扶手29。在扶手29设置有天线21。天线21例如是gnss(globalnavigationsatellitesystems:全球导航卫星系统)用的天线。天线21具有以沿车宽方向彼此分开的方式设置于回转体3的第一天线21a以及第二天线21b。
工作装置2支承于回转体3。工作装置2具有动臂6、斗杆7、以及铲斗8。动臂6以能够转动的方式连结于回转体3。斗杆7以能够转动的方式连结于动臂6。铲斗8以能够转动的方式连结于斗杆7。铲斗8具有多个斗齿。将铲斗8的前端部称作铲尖8a。
动臂6的基端部经由动臂销13连结于回转体3。斗杆7的基端部经由斗杆销14连结于动臂6的前端部。铲斗8经由铲斗销15连结于斗杆7的前端部。铲斗8是以能够装卸的方式装配于工作装置2的前端的附属装置(attachment)的一例。根据作业的种类,附属装置替换为破碎机、抓钩或起重磁铁等。
需要说明的是,在本实施方式中,以工作装置2为基准来对液压挖掘机100的各部分的位置关系进行说明。
工作装置2的动臂6相对于回转体3以设置于动臂6的基端部的动臂销13为中心进行转动。相对于回转体3转动的动臂6的特定部分、例如动臂6的前端部移动的轨迹呈圆弧状。包含该圆弧的平面被确定为图1所示的动作平面p。在俯视观察液压挖掘机100的情况下,动作平面p作为直线来表示。该直线的延伸方向为液压挖掘机100的主体1的前后方向、或回转体3的前后方向,在以下的说明中也被简称为前后方向。液压挖掘机100的主体1的左右方向(车宽方向)、或回转体3的左右方向是俯视下与前后方向正交的方向,在以下的说明中也被简称为左右方向。
在前后方向上,工作装置2从液压挖掘机100的主体1突出的一侧为前方向,与前方向相反的方向为后方向。观察前方向时的左右方向的右侧、左侧分别为右方向、左方向。
前后方向是就座于驾驶室4内的驾驶席的操作员的前后方向。与就座于驾驶席的操作员正对的方向为前方向,就座于驾驶席的操作员的背后方向为后方向。左右方向是就座于驾驶席的操作员的左右方向。就座于驾驶席的操作员正对于正面时的右侧、左侧分别为右方向、左方向。
动臂6能够以动臂销13为中心进行转动。斗杆7能够以斗杆销14为中心进行转动。铲斗8能够以铲斗销15为中心进行转动。斗杆7以及铲斗8分别是能够在动臂6的前端侧移动的可动构件。动臂销13、斗杆销14以及铲斗销15沿与动作平面p正交的方向、即左右方向延伸。动作平面p与成为动臂6、斗杆7以及铲斗8各自的转动中心的轴线中的至少一个(实施方式的情况下全部为三个)正交。
如上所述,动臂6在动作平面p上相对于回转体3进行转动动作。同样地,斗杆7在动作平面p上相对于动臂6进行转动动作,铲斗8在动作平面p上相对于斗杆7进行转动动作。实施方式的工作装置2整体在动作平面p上进行动作。铲斗8的铲尖8a在动作平面p上移动。动作平面p是包含工作装置2的可动范围的垂直的平面。动作平面p与动臂6、斗杆7以及铲斗8分别交叉。动作平面p能够在动臂6、斗杆7以及铲斗8的左右方向的中心设定。
如图1所示,在本说明书中,将x轴设定于动作平面p上的水平方向,将y轴设定于动作平面p上的垂直朝上方向。x轴与y轴彼此正交。
工作装置2具有动臂缸10、斗杆缸11、以及铲斗缸12。动臂缸10驱动动臂6。斗杆缸11驱动斗杆7。铲斗缸12驱动铲斗8。动臂缸10、斗杆缸11、以及铲斗缸12分别是通过工作油驱动的液压缸。
工作装置2具有铲斗连杆。铲斗连杆具有第一连杆构件16及第二连杆构件17。第一连杆构件16的前端与第二连杆构件17的前端经由铲斗缸顶销19以能够相对旋转的方式连结。铲斗缸顶销19与铲斗缸12的前端连结。因此,第一连杆构件16以及第二连杆构件17与铲斗缸12销连结。
第一连杆构件16的基端在斗杆7的前端部的铲斗销15的附近经由第一连杆销18以能够旋转的方式与斗杆7连结。第一连杆构件16与斗杆7销连结。第二连杆构件17的基端经由第二连杆销20以能够旋转的方式与铲斗8的根部部分的托架连结。第二连杆构件17与铲斗8销连结。
液压挖掘机100具有拍摄装置50。实施方式的拍摄装置50是单眼相机。
拍摄装置50安装于回转体3。拍摄装置50安装于驾驶室4。拍摄装置50安装于驾驶室4的内部。拍摄装置50安装于驾驶室4的左前柱的上端附近。拍摄装置50配置于驾驶室4的内部空间中的、在左右方向上更远离工作装置2的位置即左前柱的附近。拍摄装置50以在左右方向上远离工作装置2的动作平面p的方式配置。拍摄装置50配置于比动作平面p靠左方的位置。
图2是针对动臂角度θb、斗杆角度θa、以及铲斗角度θk进行说明的工作装置2的侧视图。
如图2所示,将在侧视下通过动臂销13和斗杆销14的直线与沿上下方向延伸的直线所成的角度设为动臂角度θb。动臂角度θb表示动臂6相对于回转体3的角度。
将在侧视下通过动臂销13和斗杆销14的直线与通过斗杆销14和铲斗销15的直线所成的角度设为斗杆角度θa。斗杆角度θa表示斗杆7相对于动臂6的角度。
将在侧视下通过斗杆销14和铲斗销15的直线与通过铲斗销15和铲尖8a的直线所成的角度设为铲斗角度θk。铲斗角度θk表示铲斗8相对于斗杆7的角度。
动作平面p上的工作装置2的姿态由动臂角度θb、斗杆角度θa以及铲斗角度θk的组合确定。例如,斗杆7的前端部的第一连杆销18在动作平面p上的位置、即xy坐标由动臂角度θb以及斗杆角度θa的组合确定。追随铲斗8的动作而位移的铲斗缸顶销19在动作平面p上的位置、即xy坐标由动臂角度θb、斗杆角度θa以及铲斗角度θk的组合确定。
图3是图1所示的液压挖掘机100的示意性俯视图。在图3中示意地图示出了参照图1所说明过的工作装置2、回转体3、驾驶室4、以及拍摄装置50。动作平面p在图3中是沿图中的上下方向延伸的直线,由双点划线图示。图3中由单点划线图示的光轴ax是拍摄装置50的光轴。光轴ax的延伸方向与动作平面p的延伸方向不平行。光轴ax的延伸方向相对于动作平面p的延伸方向倾斜。光轴ax与动作平面p交叉。
拍摄装置50装配于从倾斜方向观察工作装置2的动作平面的位置。拍摄装置50以相对于动作平面p呈比0°大的角度对工作装置2进行拍摄。由于工作装置2和拍摄装置50双方安装于回转体3,因此即使液压挖掘机100行驶或者回转,拍摄装置50相对于动作平面p的位置关系也不会变化。拍摄装置50相对于动作平面p的安装位置根据液压挖掘机100的每种机型而预先决定。
拍摄装置50对工作装置2进行拍摄。拍摄装置50对工作装置2的动作平面p进行拍摄。拍摄装置50对在动作平面p上移动的工作装置2进行拍摄。由拍摄装置50拍摄而得的拍摄图像包含工作装置2的至少一部分。
图4是示出包括液压挖掘机100的系统的概要结构的框图。实施方式的系统是用于求出工作装置2相对于作业机械主体(主体1)的相对位置的系统。实施方式的系统包括作为参照图1~3所说明过的作业机械的一例的液压挖掘机100、以及图4所示的控制装置200。控制装置200可以搭载于液压挖掘机100。
控制装置200具有天线21、全局坐标运算部23、imu(inertialmeasurementunit)24、操作装置25、方向控制阀34、压力传感器36、以及计算机102a。
天线21将对应于所接收到的电波(gnss电波)的信号输出给全局坐标运算部23。全局坐标运算部23检测全局坐标系下的天线21的设置位置。全局坐标系是以设置于作业区域的基准位置为基础的三维坐标系。基准位置可以是设定于作业区域的基准桩的前端的位置。
imu24设置于回转体3。在本例中,imu24配置于驾驶室4的下部。在回转体3中,在驾驶室4的下部配置有高刚性的框架。imu24配置于该框架上。需要说明的是,imu24也可以配置于回转体3的回转轴rx的侧方(右侧或者左侧)。imu24计测前后方向、左右方向及上下方向上的回转体3的加速度、以及围绕前后方向、左右方向及上下方向的回转体3的角速度。
操作装置25配置于驾驶室4内。由操作员操作操作装置25。操作装置25接受驱动工作装置2的操作员操作。另外,操作装置25接受使回转体3回转的操作员操作。操作装置25输出对应于操作员操作的操作信号。在本例中,操作装置25是先导液压方式的操作装置。
控制装置200构成为,通过发动机31驱动液压泵33,从液压泵33排出的工作油对应于操作员进行的操作装置25的操作,经由方向控制阀34供给给各种液压致动器40。通过对向液压致动器40的液压的供给以及排出进行控制,从而对工作装置2的动作、回转体3的回转、以及行驶装置5的行驶动作进行控制。液压致动器40包括图1所示的动臂缸10、斗杆缸11、铲斗缸12以及未图示的回转马达。
发动机31是柴油发动机。通过计算机102a对向发动机31的燃料的喷射量进行控制,从而控制发动机31的输出。
液压泵33连结于发动机31。发动机31的旋转驱动力传递至液压泵33,由此驱动液压泵33。液压泵33是具有斜板、且通过变更斜板的倾转角来使排出容量变化的可变容量型的液压泵。从液压泵33排出的工作油被减压阀减压至恒定的压力,并向方向控制阀34供给。
方向控制阀34是使杆状的滑柱(spool)运动从而切换工作油流动的方向的滑柱方式的阀。通过滑柱沿轴向移动,从而调整针对液压致动器40的工作油的供给量。在方向控制阀34设置有检测滑柱的移动距离(滑柱行程)的滑柱行程传感器。
需要说明的是,在本例中,将为了使液压致动器40工作而向该液压致动器40供给的油称作工作油。另外,将为了使方向控制阀34工作而向该方向控制阀34供给的油称作先导油。另外,将先导油的压力称作先导液压。
液压泵33可以送出工作油和先导油这两方。例如,可以是,从液压泵33送出的工作油的一部分被减压阀减压,该减压后的工作油用作先导油。另外,液压泵33也可以分开地具有送出工作油的液压泵(主液压泵)、以及送出先导油的液压泵(先导液压泵)。
操作装置25具有第一操作杆25r、以及第二操作杆25l。第一操作杆25r例如配置于驾驶席4s的右侧。第二操作杆25l例如配置于驾驶席4s的左侧。对第一操作杆25r以及第二操作杆25l而言,前后左右的动作对应于两轴的动作。
通过第一操作杆25r操作动臂6以及铲斗8。第一操作杆25r的前后方向的操作对应于动臂6的操作,且与前后方向的操作相应地而执行动臂6上升的动作以及下降的动作。第一操作杆25r的左右方向的操作对应于铲斗8的操作,且与左右方向的操作相应地而执行铲斗8向上下方向的动作。
通过第二操作杆25l操作斗杆7以及回转体3。第二操作杆25l的前后方向的操作对应于斗杆7的操作,且与前后方向的操作相应地而执行斗杆7向上下方向的动作。第二操作杆25l的左右方向的操作对应于回转体3的回转,且与左右方向的操作相应地而执行回转体3的右回转动作以及左回转动作。
在本例中,将动臂6上升的动作也称作举起动作,将动臂6下降的动作也称作降下动作。另外,将斗杆7向上下方向的动作也分别称作卸料动作、挖掘动作。将铲斗8向上下方向的动作也分别称作卸料动作、挖掘动作。
需要说明的是,也可以是,第一操作杆25r的左右方向的操作对应于动臂6的操作,前后方向的操作对应于铲斗8的操作。需要说明的是,也可以是,第二操作杆25l的前后方向对应于回转体3的操作,左右方向的操作对应于斗杆7的操作。
第一操作杆25r以及第二操作杆25l相当于实施方式的操作构件。
从液压泵33送出且由减压阀减压后的先导油向操作装置25供给。
操作装置25与方向控制阀34经由先导油路450连接。基于操作装置25的操作内容而调整先导液压。在操作操作装置25时,对应于操作装置25的操作内容的先导液压经由先导油路450向方向控制阀34供给。由此,方向控制阀34被调整,从而调整向动臂缸10、斗杆缸11、以及铲斗缸12供给的工作油的流动方向以及流量,执行动臂6、斗杆7、铲斗8向上下方向的动作。
在先导油路450配置有压力传感器36。压力传感器36检测先导液压。压力传感器36的检测结果输出给计算机102a。通过操作装置25的操作而被调整、且由压力传感器36检测的先导液压(ppc压)相当于实施方式中的操作指令值。
在图4中,虽简化地进行图示,但对应于第一操作杆25r以及第二操作杆25l向前后左右各方向的操作的多个先导油路450设置为将操作装置25与方向控制阀34连接。在多个先导油路450分别配置有压力传感器36。在例如使铲斗8进行动作的情况下,使铲斗8进行卸料动作时检测先导液压的增加的压力传感器36、与使铲斗8进行挖掘动作时检测先导液压的增加的压力传感器36不同。先导液压的增加量根据使操作杆从中立位置倾倒的角度而不同。这样,能够根据各压力传感器36检测的先导液压的检测结果来判断操作装置25的操作内容。
图5是示出计算机102a的结构的示意图。计算机102a可以是专用于实施方式的系统而设计的计算机,或者也可以是通用的pc(personalcomputer)。计算机102a具有处理器103、存储装置104、通信接口105、以及i/o接口106。处理器103例如是cpu(centralprocessingunit)。
存储装置104包括将所存储的程序以及数据等信息以处理器103能够读取的方式进行存储的介质。存储装置104包括ram(randomaccessmemory)或rom(readonlymemory)等系统存储器、以及辅助存储装置。辅助存储装置例如可以是硬盘等磁记录介质、cd(compactdisc)、dvd(digitalversatiledisc)等光学记录介质、或者闪存存储器等半导体存储器。存储装置104可以内置于计算机102a。存储装置104也可以包括以能够装卸的方式连接于计算机102a的外部记录介质109。外部记录介质109可以是cd-rom。
通信接口105例如是有线lan(localareanetwork)模块或无线lan模块等,且是用于进行经由通信网络的通信的接口。i/o接口106例如是usb(universalserialbus)端口等,且是用于与外部装置连接的接口。
计算机102a经由i/o接口106与输入装置107以及输出装置108连接。输入装置107是用于由用户进行向计算机102a的输入的装置。输入装置107例如包括鼠标或轨迹球等指示设备。输入装置107也可以包括键盘等用于文字输入的装置。输出装置108例如包括显示器。
图6是示出出厂前的计算机102a的内部结构的概要的功能框图。图6所示的处理器103以及存储装置104构成图5所示的计算机102a的一部分结构。
处理器103具有图像处理部61、以及工作装置位置推定部65。
图像处理部61从拍摄装置(相机)50接受由拍摄装置50拍摄的拍摄图像的输入。图像处理部61对所输入的拍摄图像进行图像处理。
在存储装置104保存有学习完成的位置推定模型80a(第一位置推定模型)、以及学习完成的位置推定模型80b(第二位置推定模型)。位置推定模型80a、80b是用于求出工作装置2相对于主体1的相对位置的人工智能模型。计算机102a通过使用人工智能的位置推定模型来推定工作装置2的相对位置。位置推定模型80a、80b包括神经网络。位置推定模型80a、80b例如是卷积神经网络(cnn)等深度神经网络。
实施方式中的模型可以安装于硬件、能够在硬件上执行的软件、固件、或它们的组合。模型可以包括由处理器103执行的程序、算法、以及数据。模型的功能可以由单一的模块执行,或者也可以分散给多个模块来执行。模型可以分散地配置于多个计算机。
位置推定模型80a构成为根据拍摄图像来求出工作装置2的相对位置。工作装置位置推定部65使用位置推定模型80a求出根据拍摄图像推定工作装置2的相对位置而得的推定位置。更具体而言,工作装置位置推定部65从存储装置104读取位置推定模型80a,并向位置推定模型80a输入拍摄图像,由此得到动臂角度θb、斗杆角度θa以及铲斗角度θk的推定结果的输出。根据拍摄图像所得到的工作装置2的推定位置相当于实施方式中的第二推定位置。
工作装置位置推定部65还输出推定结果的精度,即只要基于拍摄图像,则能够以几%的概率来推定当前的动臂角度θb、斗杆角度θa以及铲斗角度θk。若拍摄图像清晰、及拍摄图像内清楚地显现出动臂6、斗杆7以及铲斗8,则推定结果的精度变高。在存在工作装置2的一部分被土掩盖、逆光下进行拍摄、或者驾驶室4的窗户受到污染等外部干扰、而拍摄图像内未清楚地显现出动臂6、斗杆7以及铲斗8之中的某个的情况下,该不清楚的部位的推定位置的精度降低。
处理器103还具有工作装置位移量推定部71、以及工作装置位置推定部75。
工作装置位移量推定部71从压力传感器36接受由压力传感器36检测出的先导液压的输入。位置推定模型80b构成为根据先导液压求出工作装置2的位移量。工作装置位移量推定部71使用位置推定模型80b,根据所输入的先导液压来求出操作装置25的操作内容。
更具体而言,工作装置位移量推定部71从存储装置104读取位置推定模型80b,并向位置推定模型80b输入先导液压,由此求出操作装置25的操作内容。工作装置位移量推定部71基于自上次执行了求出操作装置25的操作内容的处理时经过的经过时间、以及通过上次的处理以及这次的处理所求出的操作装置25的操作内容,得到推定出工作装置2的位移量的推定位移量的输出,该工作装置2的位移量表示从上次处理的时刻起到当前时刻为止该工作装置2移动了多少。
工作装置位置推定部75推定工作装置2的当前位置。具体地说,工作装置位置推定部75从存储装置104读取工作装置2的基准位置、以及推定为工作装置2位于基准位置的时刻。工作装置位置推定部75将由工作装置位移量推定部71输出的工作装置2的位移量的推定结果加上推定为工作装置2位于基准位置的时刻,由此推定工作装置2的距基准位置的位移量。接着,工作装置位置推定部75根据工作装置2的基准位置以及工作装置2的距基准位置的位移量,得到推定出工作装置2的当前位置的推定位置的输出。根据工作装置2的基准位置以及工作装置2的距基准位置的位移量所得到的工作装置2的推定位置相当于实施方式中的第一推定位置。
工作装置2的基准位置例如能够设为,使用位置推定模型80a根据拍摄图像求出工作装置2的推定位置的推定的精度即将比规定值低之前的由位置推定模型80a推定的工作装置2的推定位置。
将构成工作装置2的动臂6、斗杆7以及铲斗8之中、作为使用位置推定模型80b来推定位置的对象的部位称作位置推定对象部。在例如工作装置2正执行挖掘土砂的作业、铲斗8的铲尖8a被土砂遮掩而未包含于拍摄图像中时,计算机102a将铲斗8设定为位置推定对象部。
在位置推定对象部为铲斗8的情况下,工作装置位移量推定部71根据先导液压,求出为了使铲斗8进行卸料动作或者挖掘动作的第一操作杆25r从中立位置向右方向或者左方向的倾倒角度。工作装置位移量推定部71基于自上次执行求出第一操作杆25r的倾倒角度的处理时经过的经过时间、以及通过上次的处理及这次的处理所求出的第一操作杆25r的倾倒角度,得到从上次的处理的时刻起到当前时刻为止的铲斗角度θk的变化量的推定结果的输出。工作装置位置推定部75将自基准位置的铲斗角度θk起的铲斗角度θk的变化量加上基准位置的铲斗角度θk,由此输出推定出表示当前的铲斗8的位置的铲斗角度θk的推定位置。
在位置推定对象部为铲斗8的情况下,如果能够使用位置推定模型80a根据拍摄图像高精度地推定表示工作装置2中的位置推定对象部以外的部位的位置(在该情况下,动臂6以及斗杆7的位置)的动臂角度θb以及斗杆角度θa,则能够通过由位置推定模型80a推定出的动臂角度θb及斗杆θa、以及由位置推定模型80b推定出的铲斗角度θk来求出工作装置2的推定位置。
在位置推定对象部为铲斗8的情况下,也可以还使用位置推定模型80b推定表示工作装置2中的位置推定对象部以外的部位的位置(在该情况下,动臂6以及斗杆7的位置)的动臂角度θb以及斗杆角度θa。
出厂前的液压挖掘机100还具备编码器51。编码器51是安装于动臂销13的动臂角度传感器、安装于斗杆销的斗杆角度传感器以及安装于铲斗连杆的铲斗角度传感器的总称。也可以取代编码器51而在工作装置2装配电位计来计测角度。另外,也可以装配检测液压缸的行程的行程传感器,并将液压缸的移动量转换为角度。
处理器103具有角度转换部62。角度转换部62从编码器51接受电信号的输入,并将该电信号转换为动臂角度θb、斗杆角度θa以及铲斗角度θk。编码器51在拍摄装置50拍摄到拍摄图像的时刻取得电信号,并将该电信号向角度转换部62输出。角度转换部62与拍摄图像相关联地取得在拍摄装置50拍摄到拍摄图像的时刻所计测到的动臂角度θb、斗杆角度θa以及铲斗角度θk。
处理器103具有误差检测部66。误差检测部66对由工作装置位置推定部65推定出的动臂角度θb、斗杆角度θa以及铲斗角度θk的推定结果、与由角度转换部62取得的动臂角度θb、斗杆角度θa以及铲斗角度θk的计测结果进行比较。误差检测部66计算推定结果相对于动臂角度θb、斗杆角度θa以及铲斗角度θk的真值的误差。
处理器103具有位置推定模型更新部67。位置推定模型更新部67基于误差检测部66所计算出的动臂角度θb、斗杆角度θa以及铲斗角度θk的误差,对位置推定模型80a进行更新。这样,使位置推定模型80a进行学习。拍摄装置50拍摄到的工作装置2的拍摄图像、与由角度转换部62计算的拍摄到拍摄图像的时刻的动臂角度θb、斗杆角度θa以及铲斗角度θk构成用于使位置推定模型80a学习的学习用数据。位置推定模型80a的学习是在液压挖掘机100的出厂前在工厂中进行的。
处理器103具有角度变化量计算部72。角度变化量计算部72基于由角度转换部62取得的动臂角度θb、斗杆角度θa及铲斗角度θk、以及由角度转换部62取得到角度的时刻,取得动臂角度θb、斗杆角度θa以及铲斗角度θk的变化量。角度变化量计算部72根据工作装置2的基准位置的动臂角度θb、斗杆角度θa及铲斗角度θk、以及动臂角度θb、斗杆角度θa及铲斗角度θk的变化量,取得工作装置2的当前位置。
处理器103具有误差检测部76。误差检测部76对由工作装置位置推定部75推定出的工作装置2的位置的推定结果、与由角度变化量计算部72取得的工作装置2的当前位置进行比较。误差检测部76计算推定结果相对于动臂角度θb、斗杆角度θa以及铲斗角度θk的真值的误差。
处理器103具有位置推定模型更新部77。位置推定模型更新部77基于误差检测部66计算出的动臂角度θb、斗杆角度θa以及铲斗角度θk的误差,对位置推定模型80b进行更新。这样,使位置推定模型80b进行学习。代表由压力传感器36检测的先导液压的、基于操作装置25的操作使工作装置进行动作的操作指令值以及由角度变化量计算部72计算的、检测到操作指令值时的工作装置2的距基准位置的位移量,构成用于使位置推定模型80b进行学习的学习用数据。位置推定模型80b的学习是在液压挖掘机100的出厂前在工厂中进行的。
图7是示出学习完成的第一位置推定模型的制造方法的流程图。图8是示出用于使第一位置推定模型学习的处理的概略图。虽然一部分内容与针对图6所说明过的内容重复,但以下参照图7以及图8对用于使推定工作装置2相对于主体1的相对位置的位置推定模型80a(第一位置推定模型)学习的处理进行说明。
如图7所示,首先,在步骤s101中,取得拍摄图像。计算机102a、更详细而言图像处理部61从拍摄装置50取得由拍摄装置(相机)50拍摄而得的拍摄图像。在拍摄图像中标有时间戳,并设定为能够判别进行拍摄的时刻。图像处理部61可以实时地取得拍摄装置50拍摄到的拍摄图像。图像处理部61也可以在规定时刻或每隔规定时间从拍摄装置50取得拍摄图像。图像处理部61对拍摄图像进行图像处理并将其保存于存储装置104。
接下来,在步骤s102中,取得角度计测数据。计算机102a、更详细而言角度转换部62从编码器51取得由编码器51检测到的动臂角度θb、斗杆角度θa以及铲斗角度θk。这样取得的角度的数据被分配给拍摄图像。对在某一时刻拍摄到的拍摄图像,使在该时刻检测到的计测数据相关联(标注)。如图8所示,制作包含拍摄图像、以及拍摄到该拍摄图像的时刻的工作装置2的角度的学习用数据61a、61b、61c、…。学习用数据61a、61b、61c、…构成位置推定模型80a的学习用的学习用数据集。
学习用数据包含图8所示那样的工作装置2的姿态不同的多个拍摄图像。学习用数据也可以包含在例如正午、逆光时、夜晚等不同的环境下对相同的姿态的工作装置2拍摄而得的多个拍摄图像。
接下来,在步骤s103中,输出工作装置2的相对位置。计算机102a、更详细而言工作装置位置推定部65从存储装置104读取位置推定模型80a。位置推定模型80a包含图8所示的神经网络。神经网络包含输入层81a、中间层(隐藏层)82a、以及输出层83a。各层81a、82a、83a具有一个或多个神经元。各层81a、82a、83a的神经元的数量能够适当设定。
相互邻接的层的神经元彼此结合,并对各结合设定有权重(结合负载)。神经元的结合数可以适当设定。对各神经元设定有阈值,根据向各神经元输入的输入值与权重的积的和是否超过阈值来决定各神经元的输出值。
位置推定模型80a进行学习以使得根据拍摄图像求出工作装置2的相对位置。通过学习而得到的位置推定模型80a的参数存储于存储装置104。位置推定模型80a的参数例如包含神经网络的层数、各层中的神经元的个数、神经元彼此的结合关系、各神经元间的结合的权重、以及各神经元的阈值。
工作装置位置推定部65将拍摄装置50拍摄到的拍摄图像输入到输入层81a。从输出层83a输出工作装置2相对于主体1的相对位置、具体而言表示动臂角度θb、斗杆角度θa以及铲斗角度θk的输出值。例如,计算机102a将拍摄图像用作输入层81a的输入,并进行位置推定模型80a的神经网络的正向传播的运算处理。由此,计算机102a作为从神经网络的输出层83a输出的输出值而得到推定出工作装置2的相对位置的推定位置。
关于步骤s102的处理与步骤s103的处理,也可以不在步骤s102的处理之后进行步骤s103的处理。步骤s102的处理与步骤s103的处理可以同时进行,也可以在步骤s103的处理之后进行步骤s102的处理。
接下来,在步骤s104中,计算在步骤s103中输出的工作装置2的推定位置、与在步骤s102取得的工作装置2的角度的计测数据之差。计算机102a、更详细而言误差检测部66对从位置推定模型80a的输出层83a输出的根据拍摄图像推定出工作装置2的相对位置的推定位置、与由角度转换部62得到的工作装置2的相对位置的计测位置进行比较,从而计算工作装置2的相对位置的推定值相对于真值的误差。
计算机102a将拍摄图像作为输入数据,并将在拍摄到拍摄图像的时刻对工作装置2的相对位置进行计测而得的计测位置作为教学数据(teachingdata),进行位置推定模型80a的学习。计算机102a根据所计算出的输出值的误差,通过反向传播来计算各神经元间的结合的权重、以及各神经元的阈值各自的误差。
接下来,在步骤s105中,对位置推定模型80a进行更新。计算机102a、更详细而言位置推定模型更新部67基于由误差检测部66计算出的工作装置2的相对位置的推定值相对于真值的误差,对各神经元间的结合的权重、以及各神经元的阈值等位置推定模型80a的参数进行更新。并且,使得向输入层81a输入相同的拍摄图像的话则能够输出接近于真值的输出值。更新后的位置推定模型80a的参数存储于存储装置104。
在下次推定工作装置2的相对位置时,向更新后的位置推定模型80a输入拍摄图像,从而得到工作装置2的相对位置的推定结果的输出。计算机102a重复进行从步骤s101至步骤s105为止的处理,直至位置推定模型80a输出的工作装置2的相对位置的推定结果与计测工作装置2的相对位置而得的计测位置一致为止。这样,位置推定模型80a的参数最适当化,进行位置推定模型80a的学习。
在位置推定模型80a经过充分的学习而得到足够高精度的推定结果的输出时,计算机102a结束位置推定模型80a的学习。这样,制作学习完成的位置推定模型80a。接着,结束处理(结束)。
图9是示出学习完成的第二位置推定模型的制造方法的流程图。图10是示出用于使第二位置推定模型学习的处理的概要图。虽然一部分内容与针对图6所说明过的内容重复,但以下参照图9以及图10对用于使推定工作装置2相对于主体1的相对位置的位置推定模型80b(第二位置推定模型)学习的处理进行说明。
如图9所示,首先,在步骤s111中,设定工作装置2的基准位置。计算机102a在使用位置推定模型80a根据拍摄图像得到表示动臂角度θb、斗杆角度θa以及铲斗角度θk的输出值时,也得到推定结果的精度,即基于拍摄图像则能够以几%的概率推定当前的动臂角度θb、斗杆角度θa以及铲斗角度θk。工作装置2的基准位置例如能够设为使用位置推定模型80a根据拍摄图像求出工作装置2的推定位置的推定的精度即将比规定值低之前的、由位置推定模型80a推定的工作装置2的推定位置。
设定工作装置2的基准位置时的由位置推定模型80a进行的推定的精度的阈值能够设定为70%以上,例如75%以上、80%以上、85%以上、或者90%以上。
接下来,在步骤s112中,取得先导液压数据。计算机102a从压力传感器36取得由压力传感器36检测到的先导液压的检测值。计算机102a也可以实时地取得压力传感器36检测到的先导液压。计算机102a也可以在规定时刻或者每隔规定时间从压力传感器36取得先导液压。计算机102a将所取得的先导液压保存于存储装置104。
接下来,在步骤s113中,取得角度计测数据。计算机102a、更详细而言角度转换部62从编码器51取得由编码器51检测到的动臂角度θb、斗杆角度θa以及铲斗角度θk。这样取得的角度的数据被分配给先导液压。对在某一时刻所取得的先导液压,使在该时刻取得的角度计测数据相关联(标注)。
如图10所示,制作包含由压力传感器36检测到的工作装置2的动作的方向(例如,铲斗8的卸料动作或者挖掘动作)及先导液压、以及检测到先导液压的时刻的工作装置2的位置(例如,铲斗角度θk)的学习用数据71a、71b、71c、…。学习用数据71a、71b、71c、…构成位置推定模型80b的学习用的学习用数据集。
接下来,在步骤s114中,计算工作装置2的角度的变化量。计算机102a、更详细而言角度变化量计算部72根据在不同的时刻制作的2个学习用数据71a、71b、71c、…,计算工作装置2的位移量(例如,铲斗角度θk的变化量)。计算机102a还求出此时的先导液压的变动。
接下来,在步骤s115中,推定工作装置2的位移量。计算机102a、更详细而言工作装置位移量推定部71从存储装置104读取位置推定模型80b。位置推定模型80b包括图10所示的神经网络。神经网络包括输入层81b、中间层(隐藏层)82b、以及输出层83b。各层81b、82b、83b具有一个或多个神经元。各层81b、82b、83b的神经元的数量能够适当设定。
相互邻接的层的神经元彼此结合,并对各结合设定有权重(结合负载)。神经元的结合数可以适当设定。对各神经元设定有阈值,根据向各神经元输入的输入值与权重的积的和是否超过阈值来决定各神经元的输出值。
位置推定模型80b以根据先导液压求出工作装置2的位移量的方式进行学习。通过学习所得到的位置推定模型80b的参数存储于存储装置104。位置推定模型80b的参数例如包含神经网络的层数、各层中的神经元的个数、神经元彼此的结合关系、各神经元间的结合的权重、以及各神经元的阈值。
工作装置位移量推定部71将压力传感器36检测到的先导液压输入到输入层81b。从输出层83b输出表示工作装置2的位移量、具体而言铲斗角度θk的变化量的输出值。例如,计算机102a将先导液压用作输入层81b的输入,并进行位置推定模型80b的神经网络的正向传播的运算处理。由此,计算机102a作为从神经网络的输出层83b输出的输出值而得到推定出工作装置2的位移量的推定位移量。
除了检测铲斗8的卸料动作或者挖掘动作的先导液压之外,还可以将检测动臂6的举起动作或者降下动作的先导液压、以及检测斗杆7的卸料动作或者挖掘动作的先导液压向输入层81b输入。从输出层83b输出的输出值除了铲斗角度θk的变化量之外,还可以包含动臂角度θb以及斗杆角度θa的变化量。向输入层81b输入的数据除了先导液压之外,还可以包含发动机31的转数、液压泵33的容量等,通过这些追加的输入数据能够提高工作装置2的位移量的推定的精度。
接下来,在步骤s116中,推定工作装置2的位置。计算机102a、更详细而言工作装置位置推定部75将在步骤s111中设定的工作装置2的基准位置加上从设定了基准位置的时刻到当前时刻为止的工作装置2的位移量的推定结果,由此得到推定出工作装置2的当前位置的推定位置的输出。
关于步骤s113、s114的处理与步骤s115、s116的处理,也可以不在步骤s113、s114的处理之后执行步骤s115、s116的处理。步骤s113、s114的处理与步骤s115、s116的处理可以同时进行,也可以在s115、s116的处理之后执行步骤s113、s114的处理。
接下来,在步骤s117中,计算在步骤s114中计算出的工作装置2的位移量、与在步骤s115中输出的工作装置2的推定位移量的差。计算机102a、更详细而言误差检测部76对从位置推定模型80b的输出层83b输出的根据先导液压等推定出工作装置2的位移量的推定位移量、与由角度变化量计算部72得到的工作装置2的角度的变化量进行比较,从而计算工作装置2的位移量的推定值相对于真值的误差。
计算机102a将先导液压等作为输入数据,并将从设定了基准位置的时刻到检测到先导液压的时刻为止工作装置2的位置变化的位移量作为教学数据,来进行位置推定模型80b的学习。计算机102a根据所计算出的输出值的误差,通过反向传播来计算各神经元间的结合的权重、以及各神经元的阈值各自的误差。
接下来,在步骤s118中,对位置推定模型80b进行更新。计算机102a、更详细而言位置推定模型更新部77基于由误差检测部76计算出的推定值相对于工作装置2的位移量的真值的误差,对各神经元间的结合的权重、以及各神经元的阈值等位置推定模型80b的参数进行更新。并且,使得向输入层81b输入相同的拍摄图像的话则能够输出接近于真值的输出值。更新后的位置推定模型80b的参数存储于存储装置104。
在下次推定工作装置2的位移量时,向更新后的位置推定模型80b输入先导液压,从而得到工作装置2的位移量的推定结果的输出。计算机102a重复进行从步骤s111至步骤s118为止的处理,直至位置推定模型80b输出的工作装置2的位移量的推定结果与工作装置2的位移量的计测结果一致为止。这样,位置推定模型80b的参数最适当化,进行位置推定模型80b的学习。
在位置推定模型80b经过充分的学习而得到足够高精度的推定结果的输出时,计算机102a结束位置推定模型80b的学习。这样,制作学习完成的位置推定模型80b。接着,结束处理(结束)。
需要说明的是,位置推定模型80a、80b的各种的参数的初始值也可以通过模板来赋予。或者,参数的初始值也可以通过人类的输入而手动地赋予。在进行位置推定模型80a、80b的再学习时,计算机102a也可以基于作为进行再学习的对象的位置推定模型80a、80b的参数而存储于存储装置104的值,来准备参数的初始值。
图11是示出工厂出厂的计算机12b的内部结构的概要的框图。编码器51出于在出厂前使位置推定模型80a、80b进行学习的目的而临时安装于工作装置2,并在位置推定模型80a、80b的学习完成时从工作装置2拆下。工厂出厂的液压挖掘机100不具备编码器51。工厂出厂的液压挖掘机100仅具备图6所示的系统结构中的拍摄装置50、压力传感器60以及计算机102b(处理器103、以及存储装置104)。
图12是示出在工厂出厂后为了推定工作装置2的相对位置而由计算机102b执行的处理的流程图。图13是示出使用了以根据拍摄图像求出工作装置2的相对位置的方式学习完成的位置推定模型80a的、根据拍摄图像推定工作装置2的相对位置的处理的示意图。图14是示出使用了学习完成的位置推定模型80a、以及以根据先导液压求出工作装置2的相对位置的方式学习完成的位置推定模型80b的、根据拍摄图像以及操作指令值来推定工作装置2的相对位置的处理的示意图。以下,参照图11~14,对在工厂出厂后根据在作业现场取得的拍摄图像以及先导液压来推定工作装置2的相对位置的处理进行说明。
首先,在步骤s201中,取得拍摄图像。计算机102b、更详细而言图像处理部61从拍摄装置50取得由拍摄装置(相机)50拍摄而得的拍摄图像63(图13)。
接下来,在步骤s202中,输出工作装置2的相对位置。计算机102b、更详细而言工作装置位置推定部65从存储装置104读取位置推定模型80a以及学习完成的参数的最佳值,从而取得学习完成的位置推定模型80a。工作装置位置推定部65将拍摄装置50拍摄到的拍摄图像63用作向学习完成的位置推定模型80a输入的输入数据。工作装置位置推定部65将拍摄图像63向学习完成的位置推定模型80a的输入层81a所包含的各神经元输入。从学习完成的位置推定模型80a的输出层83a输出推定出工作装置2相对于主体1的相对位置的推定位置、具体而言表示动臂角度θb、斗杆角度θa以及铲斗角度θk的角度输出值78(图13)。
接下来,在步骤s203中,判断在步骤s202中输出的动臂角度θb、斗杆角度θa以及铲斗角度θk的精度是否为阈值以上。在判断为动臂角度θb、斗杆角度θa以及铲斗角度θk的精度均为阈值以上、从而高精度地推定出动臂角度θb、斗杆角度θa以及铲斗角度θk的全部的情况下,将在步骤s202中输出的动臂角度θb、斗杆角度θa以及铲斗角度θk决定为用于确定当前时刻的工作装置2相对于主体1的相对位置的参数。
在如图13的拍摄图像63所示那样、工作装置2中的动臂6、斗杆7以及铲斗8全部清楚地显现于拍摄图像63的情况下,使用位置推定模型80a能够得到精度较高的角度输出值78的输出。在该情况下,在步骤s203的判断中判断为是,前进至步骤s204,进行基准位置的更新。计算机102b将在步骤s202中输出的角度输出值78更新为后面的处理中使用的基准位置,并将更新后的基准位置、以及在步骤s202中输出角度输出值78的时刻存储于存储装置104。
另一方面,如图14所示,存在正使用工作装置2进行挖掘作业的情况等、铲斗8掩藏于土中而未清楚地显现于拍摄图像63的情况。如角度输出假定值78t那样,判断为高精度地推断出动臂角度θb以及斗杆角度θa,但另一方面,关于铲斗角度θk,存在精度较低而小于阈值的情况。在上述那样的情况下,将使用位置推定模型80a推定出的铲斗角度θk原样使用并不一定是合适的。
在图12的处理流程中,在从位置推定模型80a输出的动臂角度θb、斗杆角度θa以及铲斗角度θk中的一个以上的精度小于阈值的情况下,在步骤s203的判断中判断为否。在该情况下,前进至步骤s205,取得先导液压数据。计算机102b从压力传感器36取得由压力传感器36检测到的先导液压数据73(图14)。如图14所示,先导液压数据73包含位置推定对象部(本例的情况下,铲斗8)的动作方向、以及对应于动作方向的由压力传感器36检测到的先导液压。
接下来,在步骤s206中,推定工作装置2的位移量。计算机102b、更详细而言工作装置位移量推定部71从存储装置104读取位置推定模型80b以及学习完成的参数的最佳值,取得学习完成的位置推定模型80b。工作装置位移量推定部71将先导液压数据73输入到学习完成的位置推定模型80b的输入层81b所包含的各神经元。从学习完成的位置推定模型80b的输出层83b输出推定出工作装置2的位移量的推定位移量、具体而言作为位置推定对象部的铲斗8的角度的变化量(铲斗角度θk的变化量)。
接下来,在步骤s207中,推定工作装置2的位置。计算机102b、更详细而言工作装置位置推定部75从存储装置104读取工作装置2的基准位置。工作装置位置推定部75将工作装置2的基准位置加上自在步骤s204中更新了基准位置的时刻起的工作装置2的位移量,由此推定工作装置2的当前位置。这样,推定位置推定对象部(本例的情况下,铲斗8)的位置(铲斗角度θk)。接着,如图14所示,输出包含动臂角度θb、斗杆角度θa以及铲斗角度θk的角度输出值78。
最后,在步骤s208中,计算机102b生成包含工作装置2相对于主体1的相对位置的管理数据。计算机102b将管理数据记录于存储装置104。接着,结束处理(结束)。
如以上所说明那样,在实施方式的系统中,计算机102b具有用于求出位置推定对象部的位置的学习完成的位置推定模型80b。如图12、14所示,计算机102b作为基于第一操作杆25r以及第二操作杆25l的操作使工作装置2进行动作操作指令值而取得先导液压数据73。计算机102b使用学习完成的位置推定模型80b,根据先导液压数据73推定工作装置2的位移量。计算机102b还输出根据工作装置2的基准位置、以及自基准位置起的位移量而推定出位置推定对象部的位置的推定位置。
因此,能够利用适于工作装置2相对于主体1的相对位置的推定的人工智能的位置推定模型80b来推定工作装置2的姿态。由此,能够使用人工智能通过计算机102b容易且高精度地判断工作装置2的姿态。
由于能够根据先导液压数据73来推定工作装置2的姿态,因此能够不需要用于检测动臂角度θb、斗杆角度θa以及铲斗角度θk的传感器。角度传感器的耐久性也不会对液压挖掘机100的作业造成影响,因此,能够以简单、低价且可靠性高的结构与以往的液压挖掘机100同样地取得工作装置2的当前姿态。
图15是示出与位置推定模型80a、80b的学习相关的变形例的概要图。在图6~10的说明中,对在液压挖掘机100的工厂出厂前使位置推定模型80a、80b进行学习的例子进行了说明。用于使位置推定模型80a、80b进行学习的学习用数据可以从多个液压挖掘机100收集。
图15所示的第一液压挖掘机100(液压挖掘机100a)、第二液压挖掘机100(液压挖掘机100b)、第三液压挖掘机100(液压挖掘机100c)、以及第四液压挖掘机100(液压挖掘机100d)为相同的机型。液压挖掘机100a、100b、100c具备拍摄装置50和编码器51。液压挖掘机100a、100b、100c为工厂出厂后且处于作业现场。
计算机102a从各液压挖掘机100a、100b、100c取得拍摄装置50拍摄到的拍摄图像。另外,计算机102a从各液压挖掘机100a、100b、100c,将在拍摄到拍摄图像的时刻计测到的动臂角度θb、斗杆角度θa以及铲斗角度θk与拍摄图像建立关联而取得。计算机102a使位置推定模型80a如下那样进行学习:能够使用在同一时刻取得的拍摄图像和工作装置2的角度,求出根据拍摄图像推定出工作装置2的相对位置的推定位置。
计算机102a从各液压挖掘机100a、100b、100c取得压力传感器36检测到的先导液压。计算机102a还从各液压挖掘机100a、100b、100c,将在检测到先导液压的时刻所计测到的动臂角度θb、斗杆角度θa以及铲斗角度θk与先导液压建立关联而取得。计算机102a使位置推定模型80b如下那样进行学习:能够使用在该时刻取得的先导液压以及工作装置2的角度,求出根据先导液压推定出工作装置2的相对位置的推定位置。
计算机102a可以经由通信接口105(图5)从各液压挖掘机100a、100b、100c取得拍摄图像和工作装置2的角度的计测数据。或者,计算机102a也可以经由外部记录介质109从各液压挖掘机100a、100b、100c取得拍摄图像和工作装置2的角度的计测数据。
计算机102a可以配置于与液压挖掘机100a、100b、100c相同的作业现场。或者,计算机102a也可以配置于远离作业现场的远程位置、例如管理中心。液压挖掘机100a、100b、100c可以处于相同的作业现场,也可以处于不同的作业现场。
学习完成的位置推定模型80a、80b经由通信接口105或者外部记录介质109等向各液压挖掘机100a、100b、100c提供。这样,各液压挖掘机100a、100b、100c具备学习完成的位置推定模型80a、80b。
在各液压挖掘机100a、100b、100c中已保存有位置推定模型80a、80b的情况下,所保存的位置推定模型80a、80b被改写。也可以通过定期地执行上述的学习用数据的收集以及位置推定模型80a、80b的学习,来定期地进行位置推定模型80a、80b的改写。位置推定模型80a、80b的参数的最新的更新值在每次更新时存储于存储装置104。
学习完成的位置推定模型80a、80b也提供给液压挖掘机100d。向提供学习用数据的液压挖掘机100a、100b、100c与不提供学习用数据的液压挖掘机100d这两方提供位置推定模型80a、80b。液压挖掘机100d可以处于与液压挖掘机100a、100b、100c中的任一方相同的作业现场,也可以处于与液压挖掘机100a、100b、100c不同的作业现场。液压挖掘机100d也可以是工厂出厂前的状态。
上述的位置推定模型80a、80b不局限于使用学习用数据61a、61b、61c、…、以及学习用数据71a、71b、71c、…,通过机械学习进行学习而得的模型,也可以是利用该学习而得的模型而生成的模型。例如,位置推定模型80a、80b也可以是使学习完成模型以重复数据的输入输出而得的结果为基础进行学习而得的另一学习完成模型(蒸馏模型)。图16是示出用于生成蒸馏模型的处理的流程图。
如图16所示,首先,在步骤s301中,取得拍摄图像以及先导液压数据。计算机102a、更详细而言图像处理部61从拍摄装置50取得由拍摄装置(相机)50拍摄到的拍摄图像63(图13)。计算机102a从压力传感器36取得由压力传感器36检测出的先导液压数据73(图14)。
接着,在步骤s302中,计算机102a使用学习完成的位置推定模型80a、80b,求出推定出工作装置2相对于主体1的相对位置的推定位置。在步骤s303中,计算机102a输出所推定出的工作装置2的相对位置。
计算机102a、更详细而言工作装置位置推定部65从存储装置104读取学习完成的位置推定模型80a。工作装置位置推定部65将拍摄装置50拍摄到的拍摄图像63输入到学习完成的位置推定模型80a的输入层81a。从学习完成的位置推定模型80a的输出层83a,输出工作装置2相对于主体1的相对位置、具体而言表示动臂角度θb、斗杆角度θa以及铲斗角度θk的角度输出值78(图11)的推定结果。
计算机102a、更详细而言工作装置位移量推定部71从存储装置104读取学习完成的位置推定模型80b。工作装置位移量推定部71将压力传感器36检测到的先导液压输入到学习完成的位置推定模型80b的输入层81b。从学习完成的位置推定模型80b的输出层83b输出工作装置2的位移量、具体而言位置推定对象部(例如铲斗8)的位移量(例如铲斗角度θk的变化量)的推定结果。
接下来,在步骤s304中,计算机102a将在步骤s301中取得的拍摄图像及先导液压、以及在步骤s303中输出的工作装置2的相对位置的推定结果作为学习数据保存于存储装置104。
接下来,在步骤s305中,计算机102a通过学习模型进行其他位置推定模型的学习。计算机102a将拍摄图像及先导液压输入到该其他位置推定模型的输入层。计算机102a从该其他位置推定模型的输出层,输出工作装置2相对于主体1的相对位置、具体而言表示动臂角度θb、斗杆角度θa以及铲斗角度θk的推定结果的输出值。对从该其他位置推定模型输出的工作装置2的相对位置、与在步骤s303中输出的从学习完成的位置推定模型80a、80b输出的工作装置2的相对位置之差进行计算。基于该差值,计算机102a对该其他位置推定模型的参数进行更新。这样,进行该其他位置推定模型的学习。
最后,在步骤s306中,将更新后的其他位置推定模型的参数作为学习完成参数保存于存储装置104。接着,结束处理(结束)。
如上所述,将工作装置2的拍摄图像及先导液压以及使用学习完成的位置推定模型而推定出工作装置2的相对位置的推定位置作为学习用数据,使其他位置推定模型(蒸馏模型)进行学习,由此,计算机102a能够使用相比于学习完成的位置推定模型更简单的其他位置推定模型来推定工作装置2相对于主体1的相对位置。由此,能够减轻用于推定工作装置2的相对位置的计算机102a的负载。需要说明的是,计算机102a也可以通过由其他计算机生成的学习数据来进行其他位置推定模型的学习。
在上述实施方式中,位置推定模型80a、80b包含神经网络。并不局限于此,位置推定模型80a、80b也可以是例如支持向量机等、能够使用机械学习从工作装置2的拍摄图像高精度地推定工作装置2相对于主体1的相对位置的模型。
在上述实施方式中,对使用学习完成的位置推定模型80a根据拍摄图像推定动臂6以及斗杆7的位置、使用学习完成的位置推定模型80b根据先导液压推定铲斗8的位置的例子进行了说明。在推定铲斗8以外的附属装置的位置的情况下,也能够同样地应用学习完成的位置推定模型80b。铲斗8清楚地显现于拍摄图像中,从而能够根据拍摄图像高精度地推定铲斗8的位置,但在铲斗8以外的工作装置2的部位即动臂6或者斗杆7在拍摄图像中不清晰的情况下,可以根据先导液压来推定动臂6或者斗杆7的位置
工作装置2的距基准位置的位移量也可以在液压缸的行程末端被校正。在例如位置推定对象部为铲斗8的情况下,能够预先使存储装置104存储有铲斗缸12的行程长度最大时以及最小时的铲斗角度θk。在铲斗缸12移动至到达行程末端时,对推定的铲斗角度θk与存储于存储装置104的铲斗角度θk进行比较,由此能够通过对推定的铲斗角度θk进行校正从而提高工作装置2的位移量的推定的精度。
在上述实施方式中,对操作装置25为先导液压方式的操作装置的例子进行了说明,但操作装置25也可以是电气方式的操作装置。例如,操作装置25也可以具有电气杆那样的操作构件、以及电检测操作构件的倾倒量的电位计倾斜计那样的工作量传感器。工作量传感器的检测数据输出至计算机102a。设置有以不经由操作装置25将液压泵33与方向控制阀34连接的先导油路450,在先导油路450配置有用于控制先导液压的控制阀。计算机102a基于工作量传感器的检测数据,输出用于驱动该控制阀的控制信号。基于由控制阀调整过的先导液压来对方向控制阀34进行控制,由此调整针对液压致动器40的工作油的供给量。在该情况下,工作量传感器的检测数据相当于基于操作构件的操作使工作装置2进行动作的操作指令值。
能够应用本发明的思想的作业机械不局限于液压挖掘机,也可以是推土机、机动平地机、或轮式装载机等具有工作装置的作业机械。
本次公开的实施方式应当被认为在所有方面均为例示而不是限制性的。本发明的范围不由上述说明而是由技术方案来表示,且包含与技术方案均等的含义及范围内的所有变更。
附图标记说明:
1...主体;2...工作装置;3...回转体;4...驾驶室;4s...驾驶席;5...行驶装置;6...动臂;7...斗杆;8...铲斗;8a...铲尖;10...动臂缸;11...斗杆缸;12...铲斗缸;13...动臂销;14...斗杆销;15...铲斗销;16...第一连杆构件;17...第二连杆构件;18...第一连杆销;19...铲斗缸顶销;20...第二连杆销;21...天线;23...全局坐标运算部;25...操作装置;25l...第二操作杆;25r...第一操作杆;31...发动机;33...液压泵;34...方向控制阀;36...压力传感器;40...液压致动器;50...拍摄装置;51...编码器;61...图像处理部;61a、61b、61c、71a、71b、71c...学习用数据;62...角度转换部;63...拍摄图像;65、75...工作装置位置推定部;66、76...误差检测部;67、77...位置推定模型更新部;71...工作装置位移量推定部;72...角度变化量计算部;73...先导液压数据;78...角度输出值;78t...角度输出假定值;80a、80b...位置推定模型;81a、81b...输入层;82a、82b...中间层;83a、83b...输出层;100、100a、100b、100c、100d...液压挖掘机;102a、102b...计算机;103...处理器;104...存储装置;105...通信接口;106...i/o接口;107...输入装置;108...输出装置;109...外部记录介质;200...控制装置;450...先导油路。