基于全息模型库的数字样机运动机构交互式创建系统

2019-04-01 12:28刘宏新安晶玉王登宇
农业机械学报 2019年3期
关键词:鼠标名称界面

刘宏新 安晶玉 王登宇 苏 航

(东北农业大学工程学院, 哈尔滨 150030)

0 引言

机械设计是整个机械工程质量的重要保证,而传统机械设计已无法满足当下需求,机械设计智能化发展已成为必然趋势[1-2]。智能化设计在航空航天和汽车工程等领域已进行较多研究并得到了部分应用,但大多数专业装备领域的研究和应用还处于起步阶段[3-5]。在装备智能化设计过程中,需要建立一个包含模型库、知识库[6]、推理机[7]及智能装配[8]等多个功能模块的设计系统[9]。对于该系统模型库中具有运动属性的机构,其数字样机可以替代实物样机供设计者分析与运动相关的性能和参数,这就需要在智能化设计系统中增加运动仿真功能模块,用来检验模型库中机构的运动特性并获取其运动学参数。

目前,企业大多使用 CAD 软件的运动仿真模块或专业的运动仿真软件。对于部分 CAD 软件的运动仿真模块,在定义零件之间的运动副创建运动机构、编制运动规则、设置传感器、仿真、数据检测和分析等过程,存在定义运动副元素多、操作繁琐、专业性强等问题;对于专业的分析软件,除上述步骤外,模型跨平台转换费时,模型修改后需反复导入导出并重新创建机构,效率较低[10]。

国内外对运动仿真系统进行了相关研究[11-20],这些系统分别研究了机床加工时加工工具的运动过程、船舶航行的实时运动、水下航行器的水下动态等,系统专用性强,主要借助运动仿真辅助解决某项具体问题,不以提供通用的运动机构创建及仿真的方法和技术为研究目的。

近年来,本课题组一直致力于装备智能化设计系统的研究,提出了基于物元的数字模型全息标识体系[21-22];研究参数化建模方法,解决了模型快速变型的问题[23];基于物元标识,研究了一种智能虚拟装配技术[8];针对数字模型的标准化构建,利用模块聚类方法,实现了对模型库中模型的智能存储、组织管理与高效检索[24]等。以上成果为运动机构交互式创建系统的研究奠定了良好的基础。

本文在 CATIA DMU 环境下,基于农机装备智能化设计系统全息模型库[21],研究一种交互式运动机构创建系统。使用 Windows API 函数,实现对创建运动机构命令的封装,以弱化专业背景知识的限制。

1 技术选择与系统方案

1.1 技术对比

1.1.1CATIA 二次开发方式

CATIA软件为用户提供了多种二次开发接口,其中包括自动化对象编程(V5 Automation)和基于构件的应用程序接口(CAA)方式。具体来说,即为宏录制和组件应用架构(CAA-RADE)方式[25-27]。宏录制能录制较简单的 CATIA 操作过程并自动生成代码,但用其来录制运动仿真操作时,无法得到关键操作的代码;组件应用架构是专业的开发技术,其功能强大,但专业开发技能要求高且入门困难[28]。综上所述,通过以上两种开发方式实现该系统预设计的功能较为困难。

1.1.2Windows API函数

Windows API(Windows application programming interface,简称API)是针对Windows操作系统的应用程序接口。API是一系列函数、宏、数据类型等的集合,可使用Windows提供的接口来实现所需功能[29]。API函数能够扩展编程语言的功能,以VB为例,当VB本身提供的语句、函数和控件不便甚至无法实现的操作时,可以考虑使用API函数实现。同时,API函数具有涉及面广、数量众多及使用方便的特点,使程序的功能更加完善。

在VB中可以方便地使用API函数,只需先对其声明,即可同VB自身函数一样直接调用。声明API函数的作用是确定将要使用的API函数的名称、函数所在的文件、函数中使用的参数及其类型和数据传输方式及函数本身的函数类型。

声明API函数的语句格式如下:

[Public/Private] Declare Function API函数名 Lib “该函数所在的文件名” [Alias “该函数的别名”] [(变量名及变量类型说明)] As API函数类型说明调用API函数:

变量=API函数(函数参数)[30]。

1.2 总体方案与技术流程

1.2.1系统分析

为避免用户通过直接定义专业且繁琐的运动副来创建运动机构,作者预设计操作简便且具有通用性的运动机构创建系统。系统能够将具备专业知识的添加运动副过程自动化实现,且具有与 DMU 工作台创建运动机构同样的性能,可对任一产品创建运动机构,具有面向更广泛用户的通用性及普适性。规划设计运动机构交互式创建系统的功能模块,按功能及技术区域分别设置 CATIA 运用、人机交互及应用技术3部分及其子系统,系统模块如图1所示。

图1 系统模块Fig.1 System module

1.2.2系统设计

以 VB 6.0为编程环境,调用Windows API函数,结合 CATIA“搜索”命令,研究与 CATIA 软件自带 DMU 有相同创建运动机构功能的通用性系统,预设计系统实现操作流程如图2所示。

图2 系统操作流程Fig.2 Flow chart of system operation

2 模型预处理与运动机构分析

2.1 模型预处理

为使交互式运动机构创建系统实现智能化,需要对存入农机装备智能化设计系统的3D模型作预处理,即在各模型上创建运动副构建要素(运动副构建要素是指构建运动副时要点选的点、线、面及零件等元素)如图3所示。在 CATIA 中有16种运动接合方式,用以定义两零件间的运动接合形式,其中,低副为:旋转、棱形、圆柱、螺钉、球面和平面;高副为:点曲线、滑动曲线、滚动曲线和点曲面;关联运动副为:U 形接合、CV 接合、齿轮、齿轮齿条、电缆接合和刚性接合[31]。针对 DMU 工作台运动接合方式种类多、构建要素复杂的情况,将模型预处理分为以下3部分:

图3 运动副构建要素Fig.3 Construction elements of motion pairs

(1)低副:装备智能化设计系统模型需同时满足多个功能模块的需求。曾在开发智能虚拟装配模块时,运用CATIA的自动化对象编程(V5 Automation)开发方式,充分结合数字模型实体特征要素和部分创建要素,利用 HybridShapeFactory (混合形状)对象的AddNewPointCoord、AddNewLinePtPt、AddNewAxisLine、AddNewPlaneOffset、AddNewPlane1Curve和AddNew-PointOnSurface等方法,通过交互界面,以点为参考创建点、以线为参考创建线、以轴线为参考创建轴线、以平面为参考创建平面、以平面曲线为参考创建平面和以曲面为参考创建点[8,24],这些约束参考元素的创建是为了满足虚拟装配的需求。

因装配模型上存在的约束参考元素能适应低副构建要素的需求,所以,低副的构建要素可直接选用装配模型上已有的约束参考元素。

(2)高副:装配模型上已有的约束参考元素无法适应高副构建要素,因此,对于含有高副的模型需对其创建运动副构建要素。为提高模型预处理的效率,通过人机交互界面的方式辅助创建高副构建要素,其人机交互界面如图4所示。

图4 创建高副构建要素人机交互界面Fig.4 Human-computer interaction interface of creating construction elements of higher pairs

针对高副中的点、曲线和曲面构建要素,采用宏录制的开发方式,辅以人机交互界面可快速便捷的创建构建要素。

在图4左侧栏界面上可完成点要素的创建,创建点曲线和点曲面高副中的点要素时,将宏录制的程序修改后,其语法为

Set partDocument1=documents1.Item(Text1.Text)

其中,Text1.Text 为在“零件编号”中输入的默认后缀为 .CATPart 的零件编号,且应在后缀名前面输入。

Set hybridShapePointCoord1=

hybridShapeFactory1.AddNewPointCoord

(Text2.Text, Text3.Text, Text4.Text)

分别在Text2、Text3和Text4中输入X、Y、Z坐标,单击“点”按钮即可在对应零件上创建要素“点”。

图4右侧界面上可创建曲线要素,曲线要素是基于零件几何体下与构建要素轮廓一致的草图和草图对应的实体,利用创成式外形设计工作台的“投影”命令,投影生成曲线构建要素。

其语法为

Set partDocument1=documents1.Item(Text5.Text)

其中,Text5.Text为在“零件编号”中输入的默认后缀为 .CATPart的零件编号。

Set pad1=shapes1.Item(Text6.Text)

其中,Text6.Text为在“草图对应的实体”中输入对应的实体名称,如凸台.1。

当在“零件编号”和“草图对应的实体”中输入完成后,通过“曲线”按钮可完成创建曲线要素。此外,因点曲面中的曲面要素可直接选用实体,所以,无需对其创建构建要素。

(3)关联运动副:此类型运动副的构建要素主要为旋转副和棱形副及轴线,刚性接合的要素为零件。因模型上已存在此类运动副构建要素,故不需对模型作预处理。

2.2 运动机构分析

2.2.1标识运动副构建要素

低副构建要素选用模型上已存在的部分约束参考元素。通过图4交互界面,为机构中各高副创建构建要素。所需构建要素完善后按标识规则命名各构建要素,并将其标识在模型结构树上。在该实例中存在多个相同的零件,其运动副构建要素相同,因此,图5标识结果中只列出其中之一。

图5 割台运动副构建要素的创建与标识Fig.5 Creation and identification of construction elements of cutting table

从图5可看出,构建要素标识存在规律性,其一般规律如图6所示。E为构建要素英文的首字母,为了加以区别,部分构建要素用英文前两个字母表示。A是被标识构建要素所在的零件,B则为与A构成运动副的另一零件。此种方法具有普适性,同时能保证标识容易被记忆。分析割台各零件间的运动关系,可得其运动副及构建要素如表1所示。

图6 构建要素标识规则Fig.6 Identification rules of construction element

2.2.2导出标识信息

在数字模型结构树上已标识了运动副构建要素,为使系统程序自动获取标识信息,需将结构树上的标识信息导出。运用 CATIA 装配体工作台“发布”界面的“导出”命令,如图7所示,结合“搜索”命令,如图8所示,采用Windows API和宏录制技术编写程序,通过人机交互界面将标识信息导出成 .txt 格式并保存到指定位置,交互界面如图9所示。

表1 割台接合种类及其构建要素Tab.1 Types of joints and construction elements of cutting table

图7 “发布”界面上的“导出”命令Fig.7 “Export” command on “Publish” interface

图8 “搜索”界面Fig.8 “Search” interface

图9 导出标识信息交互界面Fig.9 Interaction interface of exporting identification information

通过程序实现直接点选结构树及三维模型上的信息较为困难。因此,本文结合CATIA“搜索”命令检索所需的信息,点击菜单栏中“编辑”下拉菜单中的“搜索”命令打开搜索界面,结合该界面中“名称”栏和“预突出显示”按钮即可搜索到对应名称的对象,界面如图8所示。

通过图9中交互界面可操作“搜索”命令,“搜索”命令检索出结构树上所有已标识的构建要素,并将标识信息添加到“发布”界面,再通过该界面上的“导出”命令即可将图5中标识信息导出成.txt文本。

为了简化“搜索”界面的操作并且可以导出标识信息,需将装配体各零件的“零件几何体”隐藏。为实现任一装配体各零件的隐藏功能,后台程序将自动读取模型结构树并将其信息输出,再从该信息中筛选出零件的“零件编号”,“零件编号”是实现隐藏“零件几何体”功能的关键信息。

利用ProductDocument对象的ExportData方法快速输出装配模型结构树,语句为[17]

3)果实淀粉系数。苹果成熟过程中淀粉含量逐渐降低,淀粉遇到碘溶液时会呈现蓝色,所以把苹果切开,将其横断面浸入配制好的碘液中30秒,观察果肉变蓝的面积和程度,可反映果实的成熟度。不同品种的苹果成熟过程中淀粉含量的变化特性不同,可以制作不同品种苹果成熟过程中淀粉变蓝的图谱,判断成熟度很方便。根据图谱,做到苹果的适时采收。

oProductDocument.ExportData (fileName, format)

其中,fileName为输出保存的完整路径,format为输出格式类型。

利用所得到的结构树信息,可快速获取零部件编号信息。

隐藏各零件是在已知各零件“零件编号”的基础上,利用 Item 方法实现,其语句为

Set partDocument1=documents1.Item (PartName)

Set body1=bodies1.Item(“零件几何体”)

其中,PartName 为各零件的“零件编号”,隐藏的是各零件的“零件几何体”。

图9界面上所示的“打开模型”、“打开发布和搜索”、“添加到发布并导出”、“保存”、“退出”操作是应用 Windows API 技术,通过控制窗口句柄及在菜单中位置来实现的。具体调用的 API 函数有:FindWindow、FindWindowEx、GetMenu、GetSubMenu、GetMenuItemID、SendMessage、WM_COMMAND、WM_LBUTTONDOWN、WM_LBUTTONUP。其语句为

(1) 声明FindWindow:

Public Declare Function FindWindow Lib “user32” Alias “FindWindowA” (ByVal lp ClassName As String, ByVal lpWindowName As String) As Long

FindWindow 寻找 CATIA 的顶级窗口,装配体工作台顶级窗口句柄为“CATIA V5-[Product1]”、“搜索”命令的句柄为“搜索”、“发布”命令的句柄为“发布”。

(2) 声明GetMenu、GetSubMenu、GetMenuItemID:

Public Declare Function GetMenu Lib "user32" Alias "GetMenu" (ByVal hwnd As Long) As Long

Public Declare Function GetSubMenu Lib "user32" Alias "GetSubMenu" (ByVal hMenu As Long, ByVal nPos As Long) As Long

Public Declare Function GetMenuItemID Lib "user32.dll" (ByVal hMenu As Long, ByVal nPos As Integer) As Long

GetMenu、GetSubMenu 和 GetMenuItemID 函数配合锁定命令在菜单中的位置,用以上函数即可确定“搜索”和“发布”命令在 CATIA 菜单下的位置。

(3) 声明 FindWindowEx:

Public Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Integer, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long

FindWindowEx 寻找顶层窗口下的子窗口。“导出”命令是“发布”界面上的一个子窗口, FindWindowEx 函数可以通过“导出”的句柄找到“导出”按钮。

(4) 声明 SendMessage:

Declare Function SendMessage& Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any)

常量用来模拟鼠标动作,SendMessage 与常量配合将获取的菜单 ID 及“导出”消息发给 FindWindow 或 FindWindowEx 找到的窗口,等待消息处理完毕即可打开“搜索”和“发布”界面,并在该界面上完成相应操作。

3 关键技术

系统通过 API函数调用 DMU 工作台操作界面、模拟手动操作的方式创建运动机构,简洁的人机操作界面下封装着大量复杂的程序。

3.1 系统程序框图

以 VB 为开发语言,使用 CATIA 二次开发接口,调用 Windows API 函数,结合“搜索”命令,辅以人机交互界面,即可完成运动副构建要素的自动搜索和输入,并生成相应的运动副,快速、简单地实现运动机构创建。该系统完成创建运动机构的程序框图如图10所示。

3.2 技术节点

3.2.1CATIA的访问

通过编程访问CATIA的对象有很多不同的方法。对于其他程序或脚本来说,CATIA只是一个OLE(Object linking and embedding)自动化对象服务。任何能访问COM(Component object model)对象的程序或脚本都能访问CATIA的对象并对其进行操作。采用VB对CATIA进行进程外访问,脚本利用CreateObject方法访问CATIA[25]。代码如下

Set CATIA=CreateObject("CATIA.Application")

3.2.2打开 DMU 工作台

访问CATIA后并未进入到DMU工作台。通过调用 API 函数FindWindow、GetMenu、GetSubMenu、GetMenuItemID和SendMessage打开DMU模块,其实现过程为:

声明FindWindow后,调用FindWindow寻找CATIA的顶级窗口,并得到该窗口句柄“CATIA V5”。

声明GetMenu、GetSubMenu、GetMenuItemID,使用GetMenu、GetSubMenu函数分别获取“开始”菜单及其弹出式菜单的句柄并通过GetMenuItemID返回位于菜单下指定位置处的菜单ID。

图10 系统程序框图Fig.10 Block diagram of system

声明SendMessage后,该函数将获取的菜单ID以消息的形式发给FindWindow找到的窗口,等待消息处理完毕即可打开DMU工作台。

3.2.3添加运动副构建要素

在手动操作中,通过在三维模型上点选相应的点、线、面添加运动副构建要素。而在该系统中,为避开添加运动副过程中专业知识的局限,提高创建运动机构的效率,调用API函数,结合CATIA“搜索”命令,实现将 DMU 工作台创建运动副过程的封装及构建要素的自动选取。

在CATIA软件中,因三维模型大小和位置的不确定性,运用程序实现在实体上选取构建要素较为困难。因此,本文利用“搜索”命令检索所需的构建要素,“搜索”界面中“名称”栏和“预突出显示”即可搜索到对应名称的构建要素。用程序实现在“名称”中输入搜索对象(构建要素)的过程可分为将搜索对象名称复制到剪切板和将对象名称添加到“名称”栏两步。

(1)将搜索对象名称复制到剪切板

后台程序控制在“名称”中输入搜索对象,且搜索对象可为子产品、零件以及零件上的点线面等,本文运用 clipboard(剪切板)方法,将待搜索的运动副构建要素名称复制到剪切板,其语法为

Str1 = RCombo1.Text

Clipboard.Clear

Clipboard.SetText str1

其中,Text 表示待搜索对象的名称;Clipboard.Clear 为清空剪切板;Clipboard.SetText str1 为获取 RCombo1.Text 的文本到剪切板上。在本文中,将待搜索对象的名称赋值给 str1,并将 str1 携带的信息复制在剪切板上,为粘贴操作做准备。

(2)将对象名称添加到“名称”栏

通过程序已将待搜索对象的名称复制到剪切板。在本文中,要将已复制好的名称添加到“搜索”界面的“名称”栏,还需通过程序获得“搜索”界面的绝对坐标位置、移动鼠标位置到“名称”栏、鼠标激活“名称”栏编辑框、复制对象名称到“名称”栏编辑框等步骤来完成。

① 获得“搜索”界面绝对坐标位置

“名称”栏在“搜索”界面上,为实现在“搜索”界面上完成操作,需要利用API 函数GetWindowRect 来获得图8界面的绝对坐标位置,其语法为

声明GetWindowRect:

Public Declare Function GetWindowRect Lib "user32" (ByVal hwnd As Long, lpRect As rect) As Long

A=GetWindowRect (hwnd, lpRect)

其中 GetWindowRect 的函数功能是获得整个窗口的范围矩形,等号右侧的值赋给左侧变量(本文中均用A表示)。Hwnd 为窗口句柄,本系统中为“搜索”界面的句柄,且以此来锁定此操作将应用在该界面上。lpRect 指向一个 RECT 结构的指针,该参数接收该窗口的左上角和右下角的屏幕坐标,以确定该窗口的绝对坐标位置,从而可以获得“搜索”界面绝对坐标位置。

② 移动鼠标位置到“名称”栏

确定了“搜索”界面的绝对坐标,再通过绝对坐标的调整将鼠标位置移动到“名称”栏。API 函数SetCursorPos 可实现程序控制此步操作,其语法为

声明SetCursorPos:

Public Declare Function SetCursorPos Lib "user32" (ByVal x As Long, ByVal y As Long) As Long

A = SetCursorPos (x, y)

其中SetCursorPos 的函数功能是把光标移到屏幕的指定位置。x、y为指定光标的新的x、y坐标,本系统中用GetWindowRect的 lpRect 表示,其具体语法为

A=SetCursorPos(rect1.left+10, rect1.top+5)

其中left和top函数用来准确地定位光标位置,将光标位置移动到“名称”栏。

③ 模拟鼠标激活“名称”栏编辑框

用程序控制光标的位置以激活当前位置的编辑框,在鼠标位置移动到“名称”栏的基础上,通过程序模拟鼠标单击的方式激活“名称”栏编辑框,该鼠标模拟事件可用API 函数mouse_event 实现,其语句为

声明mouse_event:

Public Declare Sub mouse_event Lib "user32" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long )

A = mouse_event(dwFlags,dx,dy,cButtons, dwExtraInfo)

其中,mouse_event 可综合实现鼠标击键和鼠标动作。dwFlags 为指定点击按钮和鼠标动作,一些常用模拟鼠标动作的参数如表2所示,dx、dy 根据是否指定了鼠标绝对位置(MOUSEEVENTF _ABSOLUTE),指定水平和垂直方向的绝对位置或相对运动,cButtons和 dwExtraInfo 通常未使用。因此,若不指定鼠标绝对位置,则后4个参数通常指为0,本系统中的具体语法为

mouse_event &H2 Or &H4, 0, 0, 0, 0

声明常量 &H2 和 &H4:

Public Const MOUSEEVENTF_LEFTDOWN = &H2

Public Const MOUSEEVENTF_LEFTUP = &H4

通过模拟该鼠标操作即可激活“名称”栏编辑框。

④ 粘贴对象名称到“名称”栏编辑框

已将对象名称复制到剪切板、光标移动到“名称”栏编辑框处,为实现在“名称”栏输入待搜索对象名称以查找该对象,后台程序将自动把剪切板上的对象名称粘贴到“名称”栏编辑框处。

表2 鼠标动作虚拟键Tab.2 Mouse action virtual key

熟知的复制、粘贴操作方式有两种:单击鼠标右键操作和键盘操作(Ctrl+C、Ctrl+V),本文中,应用 API 函数keybd_event 来模拟复制、粘贴的键盘操作,语句为

声明keybd_event:

Public Declare Sub keybd_event Lib "user32" (ByVal bVk As Integer, ByVal bScan As Integer, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)

其中,函数keybd_event可以模拟键盘上的某个或某些键按下或抬起动作,且该函数无返回值,其4个参数含义见表3。

表3 参数含义Tab.3 Parameter list

参数dwFlags表示各种键盘动作,VB中它的两种取值为KEYEVENTF_KEYDOWN 和 KEYEVENTF_KEYUP,分别模拟某键的按下和抬起。通常情况下,bScan 和 dwExtraInfo 取值为0。bVk是一个 BYTE 类型值的宏,其取值范围为1~254,不同值可模拟不同按键。为实现粘贴操作,本系统需模拟Ctrl键和V键,其语句为

keybd_event17, 0, KEYEVENTF_KEYDOWN, 0

keybd_event86, 0, KEYEVENTF_KEYDOWN, 0

keybd_event86, 0, KEYEVENTF_KEYUP, 0

keybd_event17, 0, KEYEVENTF_KEYUP, 0

其中,17和86分别为 Ctrl 键和 V 键的十进制值,二键的代码组合即可模拟将对象名称粘贴到“名称”编辑框。

4 技术组装与实例分析

4.1 人机交互界面

在该数字样机运动机构创建系统中设置人机交互界面,以达到简便的创建运动机构的效果。良好的人机交互界面能起到智能化引导的作用,使功能模块化,操作简单化,适应更广泛的用户群体[32-33]。

本系统中的人机交互主要实现两个功能:运动副的构建和引导创建运动机构。该系统的主界面如图11所示,通过该界面可进入运动机构创建界面如图12所示,该界面上可以打开数字模型、添加固定件以及选择运动接合方式。点击运动接合按钮可切换到运动副构建界面,以旋转运动副为例,人机交互界面如图13所示,在该界面上可构建旋转副。

图11 系统主界面Fig.11 System main interface

图12 运动机构创建界面Fig.12 Interface of creating motion mechanism

4.2 实例分析

4.2.1运动机构构建

通过系统主界面进入到运动机构创建界面。在运动机构创建界面中,通过“选择运动接合方式”和“添加固定件”即可创建运动机构。以“旋转接合”为例,在“选择运动接合方式”中选择“旋转接合”命令,进入旋转接合构建界面,如图13所示。根据机构需要,通过选择“是否新建机制”、“设置构建要素”及“是否驱动角度”构建旋转运动副。根据表1中割台各零件间的运动副形式,依次构建模型的其他运动副,割台的运动机构创建结果如图14所示。

图13 创建旋转副人机交互界面Fig.13 Human-computer interaction interface of creating revolute join

图14 联合收获机割台运动机构Fig.14 Motion mechanism of cutting table and auger of combine harvester

4.2.2运动机构应用

以谷神GK100 型小麦联合收获机结构及作业参数为例,进行数字样机分析。该型机相关参数为:割幅B=4 570 mm;拨禾轮直径D=1 076 mm,转速n为18.5~51.5 r/min;机器作业速度vm为2.5~6.9 km/h;拨禾轮转速与机器作业速度比λ为1.53~1.72。取vm=3.5 km/h,当λ=1.6时[31],n=27 r/min。

(1)拨齿相对运动轨迹

在同一拨齿上标记两点,使用轨迹绘制功能输出两点轨迹。用直线将同一时刻对应的两点连接,获取拨齿的空间运动状态,如图15所示。可见拨齿满足拨禾过程保持竖直状态,从而更好地起到梳理推送作用的设计要求。

(2)拨齿合成运动轨迹

当vm=3.5 km/h,n=27 r/min时,绘制拨齿合成运动轨迹。按相对运动轨迹中方法标记同一拨齿上同一时刻两点,用直线将同一时刻对应的两点连接,如图16所示,能够形成理想的余摆线作业轨迹。

图15 拨齿相对运动轨迹Fig.15 Relative motion trajectory of reel teeth

图16 拨齿合成运动轨迹Fig.16 Synthetic motion trajectory of reel teeth

(3)拨齿端线速度

在合成运动工作条件下,于拨齿端放置传感器,检测拨齿端线速度。不同时刻拨齿端线速度如图17所示,最大拨齿端线速度约为2.5 m/s,未超过上限值3 m/s[34],减少了拨齿对作物冲击过大造成的落粒损失。

5 结论

(1)采用Windows API函数第三方控制DMU工作台的界面操作,对比于CATIA的其他二次开发技术,可以完全模拟手动操作过程,且为研究的运动机构创建系统提供人机交互式模式。

图17 拨齿端线速度Fig.17 Linear velocity at end of reel teeth

(2)为了自动准确捕捉运动副构建要素,对机构作预处理,即完善构建要素并在结构树上按标识规则将其重命名,结合CATIA“搜索”命令,即可在结构树上检索到所需的运动副构建要素,从而保证了搜索到的构建要素的精确性。

(3)基于人机交互平台选择或输入各构建要素名称,结合Windows系统的粘贴板功能,系统可自动搜索构建要素并完成相应运动副的构建。构建要素的自动搜索和运动副的自动构建是交互式创建运动机构系统有效性和可行性的基础。

猜你喜欢
鼠标名称界面
微重力下两相控温型储液器内气液界面仿真分析
国企党委前置研究的“四个界面”
一种可用于潮湿界面碳纤维加固配套用底胶的研究
扁平化设计在手机界面中的发展趋势
沪港通一周成交概况
沪港通一周成交概况
沪港通一周成交概况
沪港通一周成交概况
鼠标折叠笔
45岁的鼠标