机器人力控原理及其性能分析

       在机器人的操作任务中,处理机器人和环境之间的物理接触是非常重要的。由于机器人系统的复杂性和不确定性,纯运动控制往往是不够的,因为即使是最精确的模型也无法完全准确地预测所有可能的情况。

        当机器人在与环境互动时,接触力是一个关键因素。如果这个接触力过大或过小,都可能导致不良的后果。过大的接触力可能会导致对环境的损害,而过小的接触力则可能导致任务失败。因此,对接触力的精确控制是至关重要的。

力反馈和力控制正是为了解决这个问题而提出的。通过力反馈,机器人可以实时感知它与环境之间的接触力,并根据这些信息调整其动作以适应环境。力控制则进一步利用这些信息来主动调整机器人与环境之间的相互作用,以确保接触力始终在可接受的范围内。

此外,力反馈和力控制还可以提高机器人的鲁棒性和通用性。通过感知并响应环境的变化,机器人可以在面对不同的任务和环境条件时更加灵活地行动。这不仅有助于提高机器人的操作效率,还可以使其在面对各种挑战时更加可靠和安全。

机器人的力控原理主要基于对驱动器输出力矩的控制。在机器人与外部环境接触时,安装在机器人末端执行器上的力觉传感器会检测到机器人施加在外部环境上的力,并将这些力信号转化为电信号传输到机器人的控制系统。控制系统根据机器人的运动参数和操作要求,计算出必要的力量和运动,以实现精确的操作。

机器人力控的性能指标主要包括:

  1. 控制精度:指机器人对外部环境的感知和反应的准确性。高精度的力控系统能够使机器人更好地适应不同的操作环境,提高操作效率和安全性。
  2. 响应速度:指机器人对外部环境变化作出反应的速度。快速的响应速度能够提高机器人的实时性能,使其能够更好地适应快速变化的环境。
  3. 稳定性:指机器人在操作过程中保持稳定的能力。高稳定性的力控系统能够使机器人在操作过程中保持良好的状态,提高操作的可靠性。
  4. 安全性:指机器人操作过程中对周围环境和人员的安全性保障。高安全性的力控系统能够减少机器人对周围环境和人员的损害,提高机器人使用的可靠性和安全性。

限制机器人力控性能的因素有很多,以下是一些主要的因素:

  1. 力觉传感器性能:力觉传感器是机器人力控系统的重要组成部分,其性能会直接影响机器人的操作精度和稳定性。力觉传感器的误差、响应速度和可靠性都会对机器人的力控性能产生影响。
  2. 控制系统性能:机器人的控制系统是实现力控的关键部分,控制系统的性能会直接影响机器人的操作精度、稳定性和响应速度。控制系统的误差、计算速度和可靠性都会对机器人的力控性能产生影响。

末端力控是指机器人的末端装有一个力传感器,通常是1-6维传感器。这个传感器能够检测机器人末端与外部环境接触时的相互作用力。通过测量这些力,机器人可以获取关于外部环境的信息,从而进行更精确的操作。这种力控方式通常应用在机器人与外部环境直接接触的场景,如抓取、搬运、打磨等。

关节力控是指机器人的每个关节都具备一个力/力矩传感器。这种传感器可以检测每个关节输出的力或扭矩,从而实现机器人的全局力控。通过对每个关节的精确控制,可以实现机器人在操作过程中的稳定性和精确性。这种力控方式通常应用在机器人需要精确控制每个关节输出的场合,如精密加工、装配、焊接等。

        力控带宽是机器人力控性能的一个重要指标!!!

力控带宽指的是机器人在控制过程中能够处理的频率范围。带宽越高,机器人能够处理的力控任务越复杂,反应也越快。

在机器人力控中,需要将末端执行器与外部环境之间的作用力精确地控制在一定的范围内。如果机器人的力控带宽较低,那么它可能无法快速响应或处理复杂的力控任务,这就会影响到机器人操作的准确性和稳定性。

因此,提高机器人力控带宽可以增强机器人的操作性能和适应性,使机器人能够更好地应对复杂的操作环境和任务需求。

一些先进的机器人技术和控制系统已经可以实现较高的力控带宽,例如采用快速响应的传感器、先进的信号处理算法和高性能的控制器等。这些技术可以提高机器人的操作精度和响应速度,从而提升机器人在复杂环境中的表现。

需要注意的是,提高力控带宽并不是唯一提高机器人力控性能的方法。同时,还需要考虑其他因素,如传感器的精度和可靠性、控制系统的稳定性和鲁棒性、执行器的精度和刚度等。这些因素都会直接影响到机器人的操作性能和适应性。

间接力控制是通过运动控制来实现力控制,并没有明确关闭力反馈回路。在这种方法中,机器人通过控制其运动轨迹和姿态来间接地控制与外部环境之间的接触力。这种控制策略通常基于机器人的动力学模型,通过优化运动轨迹和姿态来使接触力达到期望值。然而,由于接触力并没有直接测量和反馈,因此这种方法可能存在一定的误差和不确定性。

直接力控制则提供了将接触力和力矩通过力反馈回路的闭合控制到期望值的可能性。在这种方法中,机器人在与外部环境接触的部分安装有力和力矩传感器,可以实时感知和测量接触力和力矩。这些传感器将测量值反馈到控制系统中,控制系统根据这些反馈值调整机器人的动作和姿态,以使接触力和力矩达到期望值。由于接触力和力矩得到了直接测量和反馈,这种方法可以更加精确地控制机器人与外部环境之间的相互作用。

引入高度柔顺的力传感元件可以改善机器人的力控制性能。通过降低力传感器的刚度,可以减小外部环境对机器人操作的影响,提高机器人的稳定性和可靠性。

此外,高度柔顺的力传感元件还可以提高机器人在操作过程中的安全性。在人机交互中,机器人的操作需要精确的力控制,以避免对人类造成伤害。使用高度柔顺的力传感元件可以增加机器人的感知能力,使其更好地适应不同的操作环境和任务需求,提高机器人在人机交互中的安全性和可靠性。

通过降低力传感器的刚度,可以增加机器人的柔性和适应性,这有助于提高机器人的响应速度和鲁棒性。

首先,降低力传感器的刚度可以使机器人对外界环境的变化更加敏感。这意味着机器人可以更好地感知和理解外部环境的变化,从而更好地适应不同的操作环境和任务需求。这种更高的感知能力可以使机器人在面对不同的操作挑战时更加灵活和稳健。

其次,降低力传感器的刚度可以减小机器人的惯性和阻力,使其更容易受到控制和调节。这对于机器人的力控制和运动控制来说是非常重要的。惯性的减小可以使机器人的反应更加迅速和准确,从而提高了机器人的操作精度和响应速度。

此外,降低力传感器的刚度还可以增加机器人的阻抗带宽。阻抗带宽是指机器人能够承受的阻抗范围,包括力和扭矩等。带宽的增加可以使机器人在面对不同的操作挑战时更加稳定和可靠,从而降低了操作难度和风险。

力控机器人关键技术之一就是受限于力矩传感器的性能!!!

机器人力矩传感器原理:

       在扭矩传感器中,通常会使用一种称为应变片的元件来检测弹性变形。

应变片是一种电阻应变敏感元件,它的电阻值会随着所受应力的大小而改变。当内外圈相对受扭力时,传感器会发生弹性变形,这个变形会被应变片感知并转换为电阻变化。

这个电阻变化可以通过一个电桥电路转换为电压信号。电桥电路的两端接收到应变片产生的电阻变化,当桥路平衡时,没有电压输出;但当桥路不平衡时,会产生一个电压差,这个电压差就是应变片电阻变化的直接输出。

最后,这个电压信号就可以通过电缆或无线方式传输给其他设备,例如控制单元或数据采集器,以进一步处理或显示。

力矩传感器非线性度:

        力传感器除了要有高精度的“温漂”外,需要考察的性能远不止这些,非线性是重要的性能指标之一。传感器输出信号具有很大的非线性,将直接影响变送器的性能和测量精度。力传感器除了要有高精度的“温漂”外,需要考察的性能远不止这些,非线性是重要的性能指标之一。传感器输出信号具有很大的非线性,将直接影响变送器的性能和测量精度。

非线性度是一个描述传感器输出与输入之间的关系曲线偏离直线的程度的量度。在机器人关节力矩传感器的情况下,非线性度指的是实际输出曲线(即测得的关节力矩)与理论输出曲线(理想的、线性的)之间的偏差程度。这种偏差可能在制造过程中由于各种工艺因素(如老化、压力冲击和焊接等)的影响而产生,也可能是由于实际应用中环境因素(如温度、湿度等)的改变而导致的。

这种偏差的存在会影响到机器人的运动精度和稳定性,因此对于高精度的机器人系统来说,保持传感器的线性度是非常重要的。一般来说,每个传感器在制造过程中都采用了一些特殊的工艺和技术来最小化这种偏差,例如在生产过程中保持恒定的环境条件、采用精确的校准技术等。

力矩传感器迟滞误差

       当同一输入条件下,传感器正行程输出和反行程输出的不一致性。简单来说,就是当关节受力并向着某一方向移动时,然后改变方向,传感器需要一段时间才能恢复到原来的读数,这就是迟滞误差。

在同一个负载下,加载和卸载时的信号输出在相等加载点上的最大偏差除以满量程的百分比可以理解为一种评估传感器性能的指标,即重复性误差。

重复性误差通常用来衡量传感器在相同的条件(如相同的负载或输入)下,多次测量结果的一致性或重复性的好坏。这个误差是用在相同条件下加载和卸载时测得的信号的最大偏差除以满量程的百分比来表示的。

如果这个百分比值越小,说明传感器在加载和卸载过程中的重复性越好,测得的信号更稳定,传感器的性能也就越好。反之,如果这个值较大,说明传感器在加载和卸载过程中的重复性较差,测得的信号可能会有较大的波动,传感器的性能也就较差。

力矩传感器分辨力

       机器人关节力矩传感器的分辨力是指其输出信号能够区分的最小力矩值。

一般来说,分辨力越高的传感器能够感知和测量的力矩越小,输出的信号也越细腻。这对于需要精确控制机器人关节力矩的应用来说非常重要。

一些机器人关节力矩传感器具有非线性输出特性,这意味着它们的输出信号与输入的力矩值不成比例。在这种情况下,分辨力可以用作描述传感器输出信号与输入信号之间的非线性关系的指标。

一些高精度的机器人关节力矩传感器可以通过数字信号处理技术(如滤波、差分放大等)来提高分辨力,以更好地适应不同的应用需求。

以一个例子来说明扭矩传感器性能参数:

  1. Capacity (Nm):这是扭矩传感器的测量范围,以牛顿米(Nm)为单位。在这个例子中,传感器的测量范围是-180 Nm至0 Nm。
  2. Zero Offset (V):这是指在零扭矩时传感器的输出电压。本例中,零扭矩时的输出电压为0.0122伏特。
  3. Nonlinearity (%FS):非线性度是描述传感器输出曲线与理想直线之间的偏差程度的指标。在这个例子中,非线性度为-0.06%,这意味着输出曲线与理想直线之间存在一定程度的偏差,但这个偏差相对较小。
  4. Hysteresis (%FS):滞后性是指当扭矩在增加和减少之间切换时,传感器输出值的变化量。本例中,滞后性为-0.08%,说明在加、卸载过程中,传感器输出值的变化相对较小。
  5. Output @ Capacity (V):这是指在扭矩达到测量范围的上限(即-180 Nm)时传感器的输出电压。本例中,输出电压为-2.0858伏特。
  6. Sensitivity Change (%V/EU):这是指传感器输出电压相对于每单位百分比变化的灵敏度。本例中,灵敏度为1.1588E-02,这意味着每单位百分比变化将导致传感器输出电压发生一定比例的变化。
  7. Zero Change (%V):这是指传感器在零点校准后,零点的变化量。本例中,零点变化为0.00%,说明零点非常稳定,没有发生明显的变化。

根据所提供的数据,我们可以得到以下电压和实际扭矩传感器扭矩读数之间的变换关系:

在实际扭矩为0 Nm时,传感器输出电压为0.0122伏特。当扭矩增加到测量范围的上限-180 Nm时,传感器输出电压为-2.0858伏特。

因此,我们可以得到以下线性关系:

电压(伏特)= 0.0122 + (-2.0858 - 0.0122)× 实际扭矩(牛顿米)/ -180(牛顿米)

化简后,得到以下变换关系:

电压(伏特)= 0.0122 - 0.033× 实际扭矩(牛顿米)/ -180(牛顿米)

因此,可以根据实际扭矩计算得到传感器输出电压。

一般来说,扭矩传感器的读数可以通过采样转换为模拟量和数字量,然后再通过变换转换为扭矩物理量。

模拟量采样是将传感器的输出信号采样为连续的模拟信号。通常情况下,模拟采样率较低,但可以较为真实地反映出传感器的输出信号。对于扭矩传感器的模拟量采样,一般采用电压信号进行采样,将传感器的输出电压转换为模拟量信号。

数字量采样是将模拟量采样信号转换为数字量信号。通过AD转换器(模数转换器),将模拟量信号转换为数字量信号。数字量采样具有较高的采样率和精度,可以对传感器的输出信号进行更为细致的测量。

将数字量采样信号转换为扭矩物理量,需要根据传感器输出的数学模型进行转换。一般来说,传感器输出的数学模型可以表示为电压和扭矩之间的线性关系。根据这个模型,将数字量采样信号转换为扭矩物理量的公式为:

实际扭矩(牛顿米)= (数字量采样信号 - 数字量零点)/ 数字量灵敏度

其中,数字量零点是数字量采样信号在零扭矩时的值,数字量灵敏度是数字量采样信号每单位百分比变化对应的扭矩变化量。

需要注意的是,在实际应用中,可能需要对传感器进行校准和补偿,以确保转换关系的准确性和可靠性。

将扭矩传感器的模拟量转换为16位的数字量输出需要使用模数转换器(ADC)进行采样和量化。具体的步骤如下:

  1. 采样:使用一个高精度的ADC对扭矩传感器的模拟量输出信号进行采样,将其转换为数字量。一般来说,采样率越高,采样结果的精度和可靠性就越好。
  2. 量化:将采样的模拟量转换为数字量,可以使用不同的量化方法,例如使用恒定的电压或者恒定的百分比进行量化。在这个过程中,需要选择一个合适的参考电压或者参考电流,以便于将模拟量正确地映射到数字量上。
  3. 数据处理:对于采样和量化后的数字量,可能需要进行一些数据处理,例如去除噪声、进行数字滤波、计算数字量的平均值或者标准差等。这些处理可以帮助减少噪声和提高数据的可靠性。
  4. 数据输出:将处理后的数字量输出到外部设备或者控制系统上,以便于后续的使用和进一步的处理。

电压和力矩之间的线性关系:

电压(伏特)= K × 力矩(牛顿米)+ VOFFSET

其中,K是灵敏度,VOFFSET是零点电压。

已知满量程输出电压为2.0858V,输出力矩为180Nm,可以计算出:

K = (2.0858V - VOFFSET)/180Nm = (2.0858V - 0.0122V)/180Nm = 0.0115 V/Nm

VOFFSET = 0V

因此,可以根据以下公式将数字量转换为力矩值:

力矩(牛顿米)= (数字量 - 数字量零点) × K/1000

其中,数字量零点是数字量在零力矩时的值,K是灵敏度,1000是一个常数,用于将数字量转换为牛顿米。

模拟量转转化为16位的数字量输出指的是将模拟信号转换为16位二进制数字信号的过程。在这个过程中,模拟信号的连续变化值被离散化为一组固定的数字量,每个数字量用16位二进制数表示。

模拟量输入端子模块将这个模拟信号转换为16位的数字量输出。这种转换通常由ADC(模数转换器)完成,ADC将模拟信号转换为数字信号。

转换后的数字量可以被计算机或微处理器处理,进行数据分析和处理、控制算法的应用等。16位的数字量可以表示从0到65535的整数值,这意味着模拟量被离散化为这个范围内的数字量。

满量程模拟输入为±10V,那么它的数字输出与模拟输入之间的关系可以表示为:

数字量 = (模拟量 / 满量程) × 最大数字量

其中,模拟量为力矩传感器的输出电压,满量程为EL3102模块的输入范围(±10V),最大数字量为16位数字量中的最大值(即65535)。

现在,假设力矩传感器的满量程输出电压为2.0858V,那么数字量与力矩值之间的关系可以表示为:

力矩值 = (数字量 / 最大数字量) × 满量程 × K / 1000

其中,数字量为EL3102模块输出的16位数字量,最大数字量为65535,满量程为力矩传感器的测量范围(±180Nm),K为灵敏度(单位为V/Nm),即每牛顿米对应的电压变化。

根据以上的信息,可以计算出:

K = (2.0858V - 0.0122V) / 180Nm = 0.0115V/Nm

因此,将数字量转换为力矩值的公式为:

力矩值 = (数字量 / 最大数字量) × 满量程 × K / 1000
= (数字量 / 65535) × 180 × 0.0115 / 1000

参考文献:

【1】https://baike.baidu.com/item/%E5%8A%9B%E6%8E%A7%E6%9C%BA%E5%99%A8%E4%BA%BA/55623439?fr=ge_ala

【2】Human Robot Interaction and Collaboration - HRII - IIT

【3】Haptics in Human-Robot Interaction - GRASP Lab (upenn.edu)

【4】A unified approach for motion and force control of robot manipulators: The operational space formulation

【5】Dynamic hybrid position/Force control of robot manipulators--Controller design and experiment

【6】Compliance and Force Control for Computer Controlled Manipulators