CN117506936B - 机械臂控制方法及主从控制*** - Google Patents
机械臂控制方法及主从控制*** Download PDFInfo
- Publication number
- CN117506936B CN117506936B CN202410008522.XA CN202410008522A CN117506936B CN 117506936 B CN117506936 B CN 117506936B CN 202410008522 A CN202410008522 A CN 202410008522A CN 117506936 B CN117506936 B CN 117506936B
- Authority
- CN
- China
- Prior art keywords
- mechanical arm
- joint
- control
- module
- angle
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 54
- 230000001960 triggered effect Effects 0.000 claims abstract description 26
- 230000008859 change Effects 0.000 claims abstract description 14
- 230000004044 response Effects 0.000 claims abstract description 14
- 230000033001 locomotion Effects 0.000 claims description 30
- 230000009471 action Effects 0.000 claims description 17
- 230000010354 integration Effects 0.000 claims description 16
- 238000003860 storage Methods 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 14
- 238000004364 calculation method Methods 0.000 claims description 10
- 230000004048 modification Effects 0.000 claims description 8
- 238000012986 modification Methods 0.000 claims description 8
- 230000011664 signaling Effects 0.000 claims description 3
- 230000000694 effects Effects 0.000 abstract description 8
- 230000015654 memory Effects 0.000 description 10
- 230000008569 process Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 230000003068 static effect Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 238000010219 correlation analysis Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000005498 polishing Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 239000004566 building material Substances 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- JEIPFZHSYJVQDO-UHFFFAOYSA-N iron(III) oxide Inorganic materials O=[Fe]O[Fe]=O JEIPFZHSYJVQDO-UHFFFAOYSA-N 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 238000005507 spraying Methods 0.000 description 1
Classifications
-
- 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/1628—Programme controls characterised by the control loop
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
Abstract
本公开提供了一种机械臂控制方法及主从控制***,该方法包括:响应于外部触发的轨迹跟踪信号,获取第一机械臂的第一关节角度和第二机械臂的第二关节角度,确定所述第二关节角度相对于所述第一关节角度的角度误差;响应于所述角度误差大于预设误差,基于PID控制器中的比例模块和微分模块确定目标控制量;响应于所述角度误差小于等于所述预设误差,基于所述PID控制器中的比例模块、积分模块和微分模块确定目标控制量;基于所述目标控制量对所述第二机械臂进行控制以使所述第二机械臂跟随所述第一机械臂的角度变化。本公开提供的机械臂控制方法及主从控制***不仅提高了机械臂控制的便利性,而且提高了控制效果。
Description
技术领域
本公开属于机械臂技术领域,更具体地说,是涉及一种机械臂控制方法及主从控制***。
背景技术
机械臂在企业生产过程中已得到了广泛应用。在机械臂使用之前,需要采用手操器或触摸屏等操控终端,对机械臂的工作轨迹逐轴点动完成示教、编程,形成运行程序下载到机械臂控制器。这个工作对操控者本身技能要求较高,缺乏技术人员的生产企业难以进行操作及维护,而且示教用时较长,控制效果难以保证。
发明内容
本公开的目的在于提供一种机械臂控制方法及主从控制***,不仅提高了机械臂控制的便利性,而且提高了控制效果。
本公开实施例的第一方面,提供了一种机械臂控制方法,包括:
响应于外部触发的轨迹跟踪信号, 获取第一机械臂的第一关节角度和第二机械臂的第二关节角度,确定所述第二关节角度相对于所述第一关节角度的角度误差;
响应于所述角度误差大于预设误差,基于PID控制器中的比例模块和微分模块确定目标控制量;
响应于所述角度误差小于等于所述预设误差,基于所述PID控制器中的比例模块、积分模块和微分模块确定目标控制量;
基于所述目标控制量对所述第二机械臂进行控制以使所述第二机械臂跟随所述第一机械臂的角度变化。
本公开实施例的第二方面,提供了一种机械臂控制装置,包括:
数据获取单元,用于响应于外部触发的轨迹跟踪信号, 获取第一机械臂的第一关节角度和第二机械臂的第二关节角度,确定所述第二关节角度相对于所述第一关节角度的角度误差;
第一计算单元,用于响应于所述角度误差大于预设误差,基于PID控制器中的比例模块和微分模块确定目标控制量;
第二计算单元,用于响应于所述角度误差小于等于所述预设误差,基于所述PID控制器中的比例模块、积分模块和微分模块确定目标控制量;
跟踪控制单元,用于基于所述目标控制量对所述第二机械臂进行控制以使所述第二机械臂跟随所述第一机械臂的角度变化。
本公开实施例的第三方面,提供了一种主从控制***,包括:
运动控制器以及多组机械臂;
每组机械臂都包含第一机械臂和第二机械臂;
所述运动控制器中存储有计算机程序,所述运动控制器执行所述计算机程序时实现上述的机械臂控制方法的步骤。
本公开实施例的第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述的机械臂控制方法的步骤。
本公开实施例提供的机械臂控制方法及主从控制***的有益效果在于:
本公开实施例中,第一机械臂和第二机械臂的结构相同,且均由多个关节组成。第一机械臂可以由人工操控,当人工拖动第一机械臂运动时,首先检测第一机械臂的每个关节的关节角度,也即第一关节角度,然后基于PID控制器控制第二机械臂的对应关节运动,以使第二关节角度跟踪对应第一关节角度的变化。多个第一关节角度的变化数据也可以保存起来,后续根据第一关节角度的变化数据控制第二机械臂运行即可,这样,无需人工编程,通过人工拖动第一机械臂即可实现第二机械臂的控制,提高了机械臂控制的便利性。
同时,为了提高第二机械臂的动态性能,防止跟踪过程中的过冲,本公开实施例在第二关节角度和第一关节角度之间的角度误差大于预设误差时,仅基于比例模块和微分模块进行PID控制,反之,当第二关节角度和第一关节角度之间的角度误差小于等于预设误差时,加入积分模块。这样的控制方法既能保证跟踪的快速性,又能消除静态误差,保证***的稳定性,从而提高了机械臂的控制效果。
附图说明
为了更清楚地说明本公开实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本公开一实施例提供的机械臂控制方法的流程示意图;
图2为本公开一实施例提供的触摸屏界面示意图;
图3为本公开一实施例提供的机械臂控制装置的结构框图;
图4为本公开又一实施例提供的机械臂控制装置的结构框图;
图5为本公开一实施例提供的运动控制器的示意框图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定***结构、技术之类的具体细节,以便透彻理解本公开实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本公开。在其它情况中,省略对众所周知的***、装置、电路以及方法的详细说明,以免不必要的细节妨碍本公开的描述。
为使本公开的目的、技术方案和优点更加清楚,下面将结合附图通过具体实施例来进行说明。
请参考图1,图1为本公开一实施例提供的机械臂控制方法的流程示意图,该方法主要应用于主从控制***中的运动控制器,主从控制***包括第一机械臂、第二机械臂以及运动控制器,第一机械臂可以由人工操控,人工拖动第一机械臂运动时,运动控制器控制第二机械臂跟踪第一机械臂的运动,具体的控制方法包括:
S101:响应于外部触发的轨迹跟踪信号, 获取第一机械臂的第一关节角度和第二机械臂的第二关节角度,确定第二关节角度相对于第一关节角度的角度误差。
在本公开实施例中,外部触发信号可以通过按键、触摸屏等外部设备输入。第一机械臂和第二机械臂的结构相同,也即第一机械臂和第二机械臂的关节个数相同,每个关节的位置相同,且第一机械臂和第二机械臂的各关节上均设置有角度传感器,用于实时检测多个第一关节角度和多个第二关节角度。
其中,第一机械臂上没有设置动力机构,第二机械臂上设置有动力机构,运动控制器通过控制动力机构的动作实现第二机械臂的控制。当需要进行轨迹跟踪控制时,用户可以通过按键、触摸屏等外部设备输入轨迹跟踪信号,此时,人工拖动第一机械臂运动,在第一机械臂运动过程中,角度传感器实时检测第一机械臂中每个关节的关节角度,以及第二机械臂中每个关节的关节角度,得到多个第一关节角度和多个第二关节角度,并发送至运动控制器。对于第二机械臂上的任一关节,运动控制器将第一机械臂上相同(位置)关节的第一关节角度作为目标值,将该关节的第二关节角度作为实测值,计算实测值和目标值之间的角度误差,用于后续的跟踪控制。
S102:响应于角度误差大于预设误差,基于PID控制器中的比例模块和微分模块确定目标控制量。
在本公开实施例中,将第一关节角度和第二关节角度的角度误差输入对应的PID控制器,并基于PID控制器的输出指令控制第二机械臂上对应关节的运动,以实现第二关节角度跟踪对应第一关节角度的变化。为提高第二机械臂的动态性能,在第二关节角度和第一关节角度之间的角度误差大于预设误差时,仅基于比例模块和微分模块进行PID控制,避免加入积分模块造成的控制滞后,从而实现第二关节角度对第一关节角度的快速跟踪。
具体的,在角度误差大于预设误差时,PID控制器的计算公式为:
其中,为当前周期的序号,/>为当前周期的控制指令中携带的控制量,/>为控制周期,/>为当前周期的角度误差,/>为上一周期的角度误差,/>为比例模块中预设的比例系数,/>为微分模块中预设的微分系数。
S103:响应于角度误差小于等于预设误差,基于PID控制器中的比例模块、积分模块和微分模块确定目标控制量。
在本公开实施例中,在第二关节角度和第一关节角度之间的角度误差小于等于预设误差时,在PID控制器中加入积分模块,可以消除控制过程中的静态误差,保证***的稳定性。
具体的,在角度误差小于等于预设误差时,PID控制器的计算公式为:
其中,为当前周期的序号,/>为当前周期的控制指令中携带的控制量,/>为控制周期,/>为当前周期的角度误差,/>为上一周期的角度误差,/>为比例模块中预设的比例系数,/>为积分模块中预设的积分时间,/>表示将当前周期划分为/>个时间段(进行积分运算),每个时间段的角度误差为/>,/>,/>为微分模块中预设的微分系数。
本领域技术人员可以根据实际需要灵活设计预设误差的具体取值,例如1°、3°、5°等等。此外,在角度误差大于预设误差、以及角度误差小于等于预设误差两种情况下,可以采用相同的比例系数和微分系数,也可以根据实际需要调整,这里不做限定。
在此基础上,为了避免PID控制器的输出指令的变化过大、造成第二机械臂发生振荡,本公开实施例对PID控制器的输出指令进行限幅处理,将PID控制器的输出指令限制在预设的安全范围内,以实现第二机械臂的稳定运行。
S104:基于目标控制量对第二机械臂进行控制以使第二机械臂跟随第一机械臂的角度变化。
在本公开实施例中,按照步骤S101~S103的方法可以得到第二机械臂上每个关节的目标控制量,按照目标控制量进行对应关节的控制,最终实现第二机械臂跟随第一机械臂的角度变化。
由上可以得出,本公开实施例无需人工编程,通过人工拖动第一机械臂即可实现第二机械臂的控制,提高了机械臂控制的便利性。同时,为了提高第二机械臂的动态性能,防止跟踪过程中的过冲,本公开实施例在第二关节角度和第一关节角度之间的角度误差大于预设误差时,仅基于比例模块和微分模块进行PID控制,反之,当第二关节角度和第一关节角度之间的角度误差小于等于预设误差时,加入积分模块。这样的控制方法既能保证跟踪的快速性,又能消除静态误差,保证***的稳定性,从而提高了机械臂的控制效果。
在本公开的一种实施例中,机械臂控制方法还包括:
响应于外部触发的轨迹录制信号,将第一机械臂在最新动作周期内的多个第一关节角度按照时序排列得到第一关节轨迹,存储第一关节轨迹。
在本公开实施例中,可以进行多次轨迹跟踪操作,同时,可以通过外部触发的方式控制每次轨迹跟踪的开始时间和结束时间,开始时间和结束时间的差值称为一个动作周期。
每次轨迹跟踪时第一机械臂的各第一关节角度的变化数据构成第一关节轨迹,控制第二机械臂的各关节按照第一关节轨迹运行,即可实现第二机械臂对第一机械臂的跟踪控制。当某一个轨迹跟踪完成、想要保存对应的第一关节轨迹时,用户可以通过按键或触摸屏等外部触发的方式输入轨迹录制信号,运动控制器接收到轨迹录制信号后,保存上述第一关节轨迹。
可以预先保存多个不同的第一关节轨迹,如图2所示,可以将多个不同的第一关节轨迹对应保存在文件1、文件2和文件3中。这样,在实际使用时,可以根据搬运、喷涂、打磨、除锈等领域的不同需求,点击对应的按键,调用对应的文件,以按照对应的轨迹进行第二机械臂的控制。当不需要某个第一关节轨迹时,也可以点击“删除文件”按键,删除对应的文件。
在本公开的一种实施例中,机械臂控制方法还包括:
响应于外部触发的启动信号,基于预先选定的工作模式以及预先选定的第一关节轨迹控制第二机械臂运行。
如图2所示,在本公开实施例中,第二机械臂可以有多种工作模式,以适用多种工作场合的需要。多种工作模式包括单次回放、循环回放动作、跟踪动作等。其中,单次回放用于单个工序中,执行单个工序的动作,单个工序可以是单独的搬运、打磨等动作。循环回放动作用于多个相互配合的工序中,顺序执行各工序的动作,例如,依次执行放料、输送、取料等动作。跟踪动作用于在接收到外部触发的轨迹跟踪信号后,控制第二机械臂跟随第一机械臂的角度变化。
以跟踪动作的工作模式为例,如图2所示,当用户点击“跟踪动作”按键时,进入跟踪动作模式,再点击“运行”按键,一个新的动作周期开始,人工拖动第一机械臂,运动控制器控制第二机械臂跟随第一机械臂的运动。当人工拖动动作结束后,点击“停止”按键,结束本次轨迹跟踪。此时,如果用户点击“录制动作”按键,可以进行本次轨迹的录制(保存)。
在每种工作模式下,针对不同的领域,可以从预先录制的多个第一关节轨迹中选择适合的轨迹,以控制第二机械臂按照适合的轨迹运行。
启动信号、工作模式及第一关节轨迹的选定,均可通过按键或触摸屏等外部设备实现,这里不做具体限定。
在本公开的一种实施例中,机械臂控制方法还包括:
响应于外部触发的第一参数修改信号,基于用户输入的控制参数调整PID控制器当前使用的控制参数。
在本公开实施例中,PID控制器的控制参数也即上述的比例系数、积分时间/>和微分系数/>,用户可以通过按键或触摸屏等输入设备调整PID控制器的控制参数,以达到最优的控制效果。
在本公开的一种实施例中,机械臂控制方法还包括:
响应于外部触发的参数保存信号,将第一关节轨迹在进行轨迹跟踪时PID控制器所采用的控制参数设置为对应于第一关节轨迹的预设控制参数。
在本公开实施例中,在进行不同轨迹的跟踪控制时,可对PID控制器的控制参数进行调整,以实现对应轨迹下第二机械臂的稳定、精准运行。在此基础上,在保存第一关节轨迹时,可以将对应的PID控制参数一起保存,这样,当用户选定了某一个第一关节轨迹时,可以按照对应的预设控制参数进行控制,避免了反复调整参数的麻烦。
在本公开的一种实施例中,机械臂控制方法还包括:
响应于外部触发的参数选取信号,获取第一机械臂在一个动作周期内的多个第三关节角度,将多个第三关节角度确定为第二关节轨迹。
比对第二关节轨迹与预先存储的多个第一关节轨迹,将与第二关节轨迹匹配的第一关节轨迹对应的PID控制器的预设控制参数确定为PID控制器当前使用的控制参数。
在本公开实施例中,第一关节轨迹为出厂时预先保存的轨迹,第二关节轨迹为用户在实际的轨迹跟踪控制时得到的轨迹(也即当前使用的轨迹),通过比对第二关节轨迹与预先保存的多个第一关节轨迹,选择与第二关节轨迹相似度最高的第一关节轨迹,其对应的预设控制参数作为适配第二关节轨迹的控制参数,从而实现根据第二关节轨迹自动选择控制参数,有利于快速准确的确定PID控制器的控制参数。
其中,第二关节轨迹与预先存储的多个第一关节轨迹的比对可以通过灰色关联分析方法实现,灰色关联分析方法的基本思想是:任意两个轨迹的形状越接近,其关联度越大,反之就越小。因此,通过计算两个轨迹的关联度,可以得到其相似度的大小。
在本公开的一种实施例中,机械臂控制方法还包括:
响应于外部触发的第二参数修改信号,基于外部输入的偏好信息从多个预设的调整系数中选择对应的调整系数,根据选择的调整系数对PID控制器当前使用的控制参数进行调整。
在本公开实施例中,根据应用场合的不同,用户对第二机械臂的运行效果有不同的偏好,例如,在搬运建筑材料等耐摔的物品时,用户希望其搬运速度较快,但是对第二机械臂的控制精度没有太高的要求。此时,用户可以输入对搬运速度和搬运精度的第一偏好信息,根据该第一偏好信息对当前使用的PID控制参数中的比例系数和/或积分时间进行调整,以提高第二机械臂的搬运速度。又如,在搬运玻璃制品等易碎物品时,用户希望其搬运精度较高,但是对搬运速度没有太高的要求。此时,用户可以输入对搬运速度和搬运精度的第二偏好信息,根据该第二偏好信息对当前使用的PID控制参数中的比例系数和/或积分时间进行调整,以提高第二机械臂的搬运精度。
具体的,在调整方向上,若前述偏好信息显示用户更注重控制速度,则将比例模块的比例系数增加x倍,将积分模块的积分时间增加y倍。若前述偏好信息显示用户更注重控制精度,则将比例模块的比例系数减小p倍,将积分模块的积分时间减小q倍。其中,x、y、p、q均为预先设定的调整系数。
在具体进行调整时,可预先设定调整系数。比如,调整系数可以设置为0.1、0.2、0.3等,以调整系数等于0.1为例,当用户输入第一偏好信息时,在当前使用的PID控制参数的基础上,将比例模块的比例系数增加0.1倍,增强比例模块的快速调节作用,同时,将积分模块的积分时间增加0.1倍,减小积分模块的滞后作用,以满足用户对搬运速度的要求;当用户输入第二偏好信号时,在当前使用的PID控制参数的基础上,将比例模块的比例系数减小0.1倍,减小比例模块的调节作用,同时,将积分模块的积分时间减小0.1倍,增强积分模块的作用,进一步减小静态误差,以满足用户对搬运精度的要求。
在本实施例中,第一偏好信息可以为控制精度和/或控制速度的权重系数,该权重系数用于描述该第一偏好信息更侧重于控制精度还是控制速度。其中,控制精度对应的权重系数和控制速度对应的权重系数之和为1。在此基础上,将控制精度对应的权重系数记为第一权重系数,将控制速度对应的权重系数记为第二权重系数,前述调整系数可以基于第一权重系数与第二权重系数的比值确定。前述比值越大,调整系数越大。
在本公开的一种实施例中,机械臂控制方法还可以包括:
响应于外部触发的轨迹优化信号,对第一关节轨迹中的每相邻的两个第一关节角度进行线性插值处理,将线性插值处理后的第一关节轨迹确定为优化后的第一关节轨迹。
在本实施例中,用户通过第一机械臂进行示教时,可能会存在示教速度较快的情形,此时第二机械臂跟随第一机械臂的关节角度时就容易出现过控和抖动,为了解决此问题,本实施例可通过线性插值处理实现第一关节轨迹的延展,此时第一关节轨迹中相邻的第一关节角度的差值会变小,第二机械臂跟随第一关节轨迹时更容易实现平滑控制,进而达到更好的控制效果。
对应于上文实施例的机械臂控制方法,图3为本公开一实施例提供的机械臂控制装置的结构框图。为了便于说明,仅示出了与本公开实施例相关的部分。参考图3,该机械臂控制装置20包括:数据获取单元21、第一计算单元22、第二计算单元23和跟踪控制单元24。
其中,数据获取单元21,用于响应于外部触发的轨迹跟踪信号, 获取第一机械臂的第一关节角度和第二机械臂的第二关节角度,确定第二关节角度相对于第一关节角度的角度误差。
第一计算单元22,用于响应于角度误差大于预设误差,基于PID控制器中的比例模块和微分模块确定目标控制量。
第二计算单元23,用于响应于角度误差小于等于预设误差,基于PID控制器中的比例模块、积分模块和微分模块确定目标控制量。
跟踪控制单元24,用于基于目标控制量对第二机械臂进行控制以使第二机械臂跟随第一机械臂的角度变化。
在本公开的一种实施例中,跟踪控制单元24还用于:
响应于外部触发的轨迹录制信号,将第一机械臂在最新动作周期内的多个第一关节角度按照时序排列得到第一关节轨迹,存储第一关节轨迹。
在本公开的一种实施例中,跟踪控制单元24还用于:
响应于外部触发的启动信号,基于预先选定的工作模式以及预先选定的第一关节轨迹控制第二机械臂运行。
在本公开的一种实施例中,如图4所示,机械臂控制装置20还包括:
参数调整单元25,用于响应于外部触发的第一参数修改信号,基于用户输入的控制参数调整PID控制器当前使用的控制参数。
在本公开的一种实施例中,参数调整单元25还用于:
响应于外部触发的参数保存信号,将第一关节轨迹在进行轨迹跟踪时PID控制器所采用的控制参数设置为对应于第一关节轨迹的预设控制参数。
在本公开的一种实施例中,参数调整单元25还用于:
响应于外部触发的参数选取信号,获取第一机械臂在一个动作周期内的多个第三关节角度,将多个第三关节角度确定为第二关节轨迹。
比对第二关节轨迹与预先存储的多个第一关节轨迹,将与第二关节轨迹匹配的第一关节轨迹对应的PID控制器的预设控制参数确定为PID控制器当前使用的控制参数。
在本公开的一种实施例中,参数调整单元25还用于:
响应于外部触发的第二参数修改信号,基于外部输入的偏好信息从多个预设的调整系数中选择对应的调整系数,根据选择的调整系数对PID控制器当前使用的控制参数进行调整。
参见图5,图5为本公开一实施例提供的运动控制器的示意框图。如图5所示的本实施例中的运动控制器300可以包括:一个或多个处理器301、一个或多个输入设备302、一个或多个输出设备303及一个或多个存储器304。上述处理器301、输入设备302、输出设备303及存储器304通过通信总线305完成相互间的通信。存储器304用于存储计算机程序,计算机程序包括程序指令。处理器301用于执行存储器304存储的程序指令。其中,处理器301被配置用于调用程序指令执行上述各装置实施例中各模块/单元的功能,例如图3所示单元21至24的功能。
应当理解,在本公开实施例中,所称处理器301可以是中央处理单元 (CentralProcessing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器 (DigitalSignal Processor,DSP)、专用集成电路 (Application Specific Integrated Circuit,ASIC)、现成可编程门阵列 (Field-Programmable Gate Array,FPGA) 或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
输入设备302可以包括触控板、指纹采传感器(用于采集用户的指纹信息和指纹的方向信息)、麦克风等,输出设备303可以包括显示器(LCD等)、扬声器等。
该存储器304可以包括只读存储器和随机存取存储器,并向处理器301 提供指令和数据。存储器304的一部分还可以包括非易失性随机存取存储器。例如,存储器304还可以存储设备类型的信息。
具体实现中,本公开实施例中所描述的处理器301、输入设备302、输出设备303可执行本公开实施例提供的机械臂控制方法的第一实施例和第二实施例中所描述的实现方式,也可执行本公开实施例所描述的运动控制器的实现方式,在此不再赘述。
在本公开的另一实施例中提供一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序包括程序指令,程序指令被处理器执行时实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。
计算机可读存储介质可以是前述任一实施例的运动控制器的内部存储单元,例如运动控制器的硬盘或内存。计算机可读存储介质也可以是运动控制器的外部存储设备,例如运动控制器上配备的插接式硬盘,智能存储卡(Smart Media Card, SMC),安全数字(Secure Digital, SD)卡,闪存卡(Flash Card)等。进一步地,计算机可读存储介质还可以既包括运动控制器的内部存储单元也包括外部存储设备。计算机可读存储介质用于存储计算机程序及运动控制器所需的其他程序和数据。计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本公开的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的运动控制器和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的运动控制器和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本公开实施例方案的目的。
另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上,仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以权利要求的保护范围为准。
Claims (8)
1.一种机械臂控制方法,其特征在于,包括:
响应于外部触发的轨迹跟踪信号, 获取第一机械臂的第一关节角度和第二机械臂的第二关节角度,确定所述第二关节角度相对于所述第一关节角度的角度误差;
响应于所述角度误差大于预设误差,基于PID控制器中的比例模块和微分模块确定目标控制量;此时,PID控制器的计算公式为:
其中,为当前周期的序号,/>为当前周期的控制指令中携带的控制量,/>为控制周期,/>为当前周期的角度误差,/>为上一周期的角度误差,/>为比例模块中预设的比例系数,/>为微分模块中预设的微分系数;
响应于所述角度误差小于等于所述预设误差,基于所述PID控制器中的比例模块、积分模块和微分模块确定目标控制量;此时,PID控制器的计算公式为:
其中,为当前周期的序号,/>为当前周期的控制指令中携带的控制量,/>为控制周期,/>为当前周期的角度误差,/>为上一周期的角度误差,/>为比例模块中预设的比例系数,/>为积分模块中预设的积分时间,/>表示将当前周期划分为/>个时间段,每个时间段的角度误差为/>,/>,/>为微分模块中预设的微分系数;
基于所述目标控制量对所述第二机械臂进行控制以使所述第二机械臂跟随所述第一机械臂的角度变化。
2.如权利要求1所述的机械臂控制方法,其特征在于,还包括:
响应于外部触发的轨迹录制信号,将所述第一机械臂在最新动作周期内的多个第一关节角度按照时序排列得到第一关节轨迹,存储所述第一关节轨迹。
3.如权利要求2所述的机械臂控制方法,其特征在于,还包括:
响应于外部触发的启动信号,基于预先选定的工作模式以及预先选定的第一关节轨迹控制所述第二机械臂运行。
4.如权利要求1至3任一项所述的机械臂控制方法,其特征在于,还包括:
响应于外部触发的第一参数修改信号,基于用户输入的控制参数调整PID控制器当前使用的控制参数。
5.如权利要求2所述的机械臂控制方法,其特征在于,还包括:
响应于外部触发的参数保存信号,将所述第一关节轨迹在进行轨迹跟踪时PID控制器所采用的控制参数设置为对应于所述第一关节轨迹的预设控制参数。
6.如权利要求5所述的机械臂控制方法,其特征在于,还包括:
响应于外部触发的参数选取信号,获取所述第一机械臂在一个动作周期内的多个第三关节角度,将所述多个第三关节角度确定为第二关节轨迹;
比对所述第二关节轨迹与预先存储的多个第一关节轨迹,将与所述第二关节轨迹匹配的第一关节轨迹对应的PID控制器的预设控制参数确定为PID控制器当前使用的控制参数。
7.如权利要求5所述的机械臂控制方法,其特征在于,还包括:
响应于外部触发的第二参数修改信号,基于外部输入的偏好信息从多个预设的调整系数中选择对应的调整系数,根据选择的调整系数对PID控制器当前使用的控制参数进行调整。
8.一种主从控制***,其特征在于,包括:
运动控制器以及多组机械臂;
每组机械臂都包含第一机械臂和第二机械臂;
所述运动控制器中存储有计算机程序,所述运动控制器执行所述计算机程序时实现如权利要求1至7任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410008522.XA CN117506936B (zh) | 2024-01-04 | 2024-01-04 | 机械臂控制方法及主从控制*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410008522.XA CN117506936B (zh) | 2024-01-04 | 2024-01-04 | 机械臂控制方法及主从控制*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117506936A CN117506936A (zh) | 2024-02-06 |
CN117506936B true CN117506936B (zh) | 2024-03-08 |
Family
ID=89753416
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410008522.XA Active CN117506936B (zh) | 2024-01-04 | 2024-01-04 | 机械臂控制方法及主从控制*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117506936B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2384863A2 (en) * | 2010-01-21 | 2011-11-09 | Institutul de Mecanica Solidelor al Academiei Romane | Method and device for dynamic control of a walking robot |
CN105912007A (zh) * | 2016-06-02 | 2016-08-31 | 西北工业大学 | 空间机械臂抗干扰姿态稳定的微分几何非线性控制方法 |
CN106842905A (zh) * | 2017-03-31 | 2017-06-13 | 上海拓攻机器人有限公司 | Pid控制方法及装置 |
DE102016213999B3 (de) * | 2016-07-29 | 2017-07-27 | Deutsches Zentrum für Luft- und Raumfahrt e.V. | Verfahren zum Planen der Trajektorie eines Roboterarms |
CN115741692A (zh) * | 2022-11-17 | 2023-03-07 | 山东大学 | 一种基于数据驱动的液压机械臂高精度控制方法及*** |
CN116728404A (zh) * | 2023-05-23 | 2023-09-12 | 中国建筑第四工程局有限公司 | 一种基于量子鸽群优化的机械臂模糊pid控制方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230346135A1 (en) * | 2020-03-27 | 2023-11-02 | Jonathan K. MOUNTZ | Swing apparatus with magnetic drive and control |
-
2024
- 2024-01-04 CN CN202410008522.XA patent/CN117506936B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2384863A2 (en) * | 2010-01-21 | 2011-11-09 | Institutul de Mecanica Solidelor al Academiei Romane | Method and device for dynamic control of a walking robot |
CN105912007A (zh) * | 2016-06-02 | 2016-08-31 | 西北工业大学 | 空间机械臂抗干扰姿态稳定的微分几何非线性控制方法 |
DE102016213999B3 (de) * | 2016-07-29 | 2017-07-27 | Deutsches Zentrum für Luft- und Raumfahrt e.V. | Verfahren zum Planen der Trajektorie eines Roboterarms |
CN106842905A (zh) * | 2017-03-31 | 2017-06-13 | 上海拓攻机器人有限公司 | Pid控制方法及装置 |
CN115741692A (zh) * | 2022-11-17 | 2023-03-07 | 山东大学 | 一种基于数据驱动的液压机械臂高精度控制方法及*** |
CN116728404A (zh) * | 2023-05-23 | 2023-09-12 | 中国建筑第四工程局有限公司 | 一种基于量子鸽群优化的机械臂模糊pid控制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN117506936A (zh) | 2024-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108674922A (zh) | 一种用于机器人的传送带同步跟踪方法、装置及*** | |
WO2019184179A1 (zh) | 控制自主式移动机器移动的方法、装置、机器及存储介质 | |
JPS59111502A (ja) | ロボツト制御装置 | |
CN101402199A (zh) | 基于视觉的手眼式低伺服精度机器人移动目标抓取方法 | |
CN111687838B (zh) | 机械手轨迹跟随误差的在线补偿方法、***及存储介质 | |
CN111805547B (zh) | 一种轨迹动态跟踪实现方法 | |
CN111993411A (zh) | 一种机器人运动规划方法、装置、机器人及存储介质 | |
CN113342003A (zh) | 基于开闭环pid型迭代学习的机器人轨迹跟踪控制方法 | |
US20240009841A1 (en) | Dynamic target tracking method, robot and computer-readable storage medium | |
CN107065559B (zh) | 一种工业机器人增量自适应控制方法 | |
CN117506936B (zh) | 机械臂控制方法及主从控制*** | |
CN101318329A (zh) | 机器人控制装置 | |
JPH03289385A (ja) | モータ制御のゲイン調整方法 | |
CN113805610B (zh) | 一种轨迹跟踪控制方法、装置及存储介质 | |
CN113885317A (zh) | 一种路径跟踪控制方法、***及计算机可读存储介质 | |
CN117549316B (zh) | 多轴机械臂控制方法及主从控制*** | |
CN116466650A (zh) | 数控机床精度补偿方法及应用 | |
CN113156962B (zh) | 运动控制方法、装置、机器人及存储介质 | |
CN114440874B (zh) | 基于光流和光栅的融合定位方法和装置 | |
CN110231823B (zh) | 一种双轮机器人的直接控制方法 | |
CN113325698B (zh) | 抹光机控制方法、装置、计算机设备和存储介质 | |
CN111390905A (zh) | 机器人多任务控制方法、控制装置及终端设备 | |
CN111886556B (zh) | 控制***、控制方法以及计算机可读存储介质 | |
CN112518744A (zh) | 机器人轨迹规划方法、装置、机器人 | |
JP7020262B2 (ja) | 制御システム、制御方法およびプログラム |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |