教材:《Introduction to Robotics: Analysis, Control, Applications – Solutions Manual》
第二章:空间描述与变换
关键概念与公式
- 单位向量: 幅值为1的向量。
- 从向量 \mathbf{v} = (v_x, v_y, v_z) 求解单位向量 \mathbf{\hat{u}} : \mathbf{\hat{u}} = \frac{\mathbf{v}}{||\mathbf{v}||} = \left( \frac{v_x}{\sqrt{v_x^2+v_y^2+v_z^2}}, \frac{v_y}{\sqrt{v_x^2+v_y^2+v_z^2}}, \frac{v_z}{\sqrt{v_x^2+v_y^2+v_z^2}} \right)
- 叉积: 用于求解与两个给定向量垂直的向量。对于 \mathbf{p} = p_x\mathbf{i} + p_y\mathbf{j} + p_z\mathbf{k} 和 \mathbf{q} = q_x\mathbf{i} + q_y\mathbf{j} + q_z\mathbf{k} : \mathbf{p} \times \mathbf{q} = \begin{vmatrix} \mathbf{i} & \mathbf{j} & \mathbf{k} \newline p_x & p_y & p_z \newline q_x & q_y & q_z \end{vmatrix} = (p_y q_z - p_z q_y)\mathbf{i} - (p_x q_z - p_z q_x)\mathbf{j} + (p_x q_y - p_y q_x)\mathbf{k}
- 坐标系表示: 一个 4 \times 4 的齐次变换矩阵:
F = \begin{bmatrix} n_x & o_x & a_x & p_x \newline n_y & o_y & a_y & p_y \newline n_z & o_z & a_z & p_z \newline 0 & 0 & 0 & 1 \end{bmatrix} = \begin{bmatrix} \mathbf{n} & \mathbf{o} & \mathbf{a} & \mathbf{p} \newline 0 & 0 & 0 & 1 \end{bmatrix}
其中 \mathbf{n}, \mathbf{o}, \mathbf{a} 是表示方向的相互正交的单位向量, \mathbf{p} 是位置向量。
- 约束条件: \mathbf{n} \cdot \mathbf{o} = 0 , \mathbf{n} \cdot \mathbf{a} = 0 , \mathbf{o} \cdot \mathbf{a} = 0 ; ||\mathbf{n}|| = ||\mathbf{o}|| = ||\mathbf{a}|| = 1 。并且 \mathbf{n} \times \mathbf{o} = \mathbf{a} 。
- 平移矩阵: Trans(d_x, d_y, d_z) = \begin{bmatrix} 1 & 0 & 0 & d_x \newline 0 & 1 & 0 & d_y \newline 0 & 0 & 1 & d_z \newline 0 & 0 & 0 & 1 \end{bmatrix}
- 旋转矩阵 (绕参考坐标轴):
- Rot(x, \theta) = \begin{bmatrix} 1 & 0 & 0 \newline 0 & \cos\theta & -\sin\theta \newline 0 & \sin\theta & \cos\theta \end{bmatrix}
- Rot(y, \theta) = \begin{bmatrix} \cos\theta & 0 & \sin\theta \newline 0 & 1 & 0 \newline -\sin\theta & 0 & \cos\theta \end{bmatrix}
- Rot(z, \theta) = \begin{bmatrix} \cos\theta & -\sin\theta & 0 \newline \sin\theta & \cos\theta & 0 \newline 0 & 0 & 1 \end{bmatrix}
- 旋转的齐次变换: 将 3 \times 3 旋转矩阵嵌入到一个 4 \times 4 矩阵中,其中 \mathbf{p} = (0,0,0)^T 。
- 齐次变换矩阵的逆: 对于酉旋转部分: T^{-1} = \begin{bmatrix} R^T & -R^T \mathbf{p} \newline 0 & 1 \end{bmatrix}
- Denavit-Hartenberg (D-H) 参数 ( A_i 矩阵): A_i = Rot(z, \theta_i) Trans(0,0,d_i) Trans(a_i,0,0) Rot(x, \alpha_i) A_i = \begin{bmatrix} \cos\theta_i & -\sin\theta_i\cos\alpha_i & \sin\theta_i\sin\alpha_i & a_i\cos\theta_i \newline \sin\theta_i & \cos\theta_i\cos\alpha_i & -\cos\theta_i\sin\alpha_i & a_i\sin\theta_i \newline 0 & \sin\alpha_i & \cos\alpha_i & d_i \newline 0 & 0 & 0 & 1 \end{bmatrix}
- 从 T = \begin{bmatrix} n_x & o_x & a_x & p_x \newline n_y & o_y & a_y & p_y \newline n_z & o_z & a_z & p_z \newline 0 & 0 & 0 & 1 \end{bmatrix} 计算 RPY 角 (\phi_a, \phi_o, \phi_n) :
- \phi_z = ATAN2(n_y, n_x)
- \phi_y = ATAN2(-n_z, n_x \cos\phi_z + n_y \sin\phi_z)
- \phi_x = ATAN2(a_x \sin\phi_z - a_y \cos\phi_z, o_y \cos\phi_z - o_x \sin\phi_z)
- 从 T 计算欧拉角 (\phi, \theta, \psi) :
- \phi = ATAN2(a_y, a_x)
- \theta = ATAN2(a_x \cos\phi + a_y \sin\phi, a_z)
- \psi = ATAN2(-n_z \sin\phi + o_z \cos\phi, -n_y \sin\phi + o_y \cos\phi)
例题类型
- 计算叉积的单位向量:
- 步骤:
- 计算叉积 \mathbf{r} = \mathbf{p} \times \mathbf{q} 。
- 计算幅值 ||\mathbf{r}|| = \sqrt{r_x^2 + r_y^2 + r_z^2} 。
- 单位向量 \mathbf{\hat{r}} = \mathbf{r} / ||\mathbf{r}|| 。
- 步骤:
- 求解未知向量分量 (给定单位向量):
- 步骤:如果 \mathbf{q}_{unit} = (q_x, q_y, q_z, 0)^T 并且 q_x, q_z 已知,则 q_y = \sqrt{1 - q_x^2 - q_z^2} (假设 q_w=0 )。
- 求解坐标系矩阵中的缺失元素:
- 步骤:使用正交条件 ( \mathbf{n} \cdot \mathbf{o} = 0 等) 和单位长度条件 ( ||\mathbf{n}||=1 等),以及 \mathbf{n} \times \mathbf{o} = \mathbf{a} (或其排列)。
- 例如:给定 \mathbf{n} 和 \mathbf{o} 的部分,求解 \mathbf{a} 。或者给定 \mathbf{n} 和 \mathbf{a} ,使用 \mathbf{o} = \mathbf{a} \times \mathbf{n} 求解 \mathbf{o} 。
- 对点应用变换:
- 步骤:对于点 P_{old} 和变换 T ,新点 P_{new} = T \cdot P_{old} 。记住对点使用齐次坐标 (x, y, z, 1)^T 。
- 对坐标系应用变换:
- 步骤:对于旧坐标系 F_{old} 和变换 T :
- 如果 T 是相对于参考坐标系的: F_{new} = T \cdot F_{old} 。
- 如果 T 是相对于当前坐标系的: F_{new} = F_{old} \cdot T 。
- 步骤:对于旧坐标系 F_{old} 和变换 T :
- 计算变换矩阵的逆:
- 步骤:使用公式 T^{-1} = \begin{bmatrix} R^T & -R^T \mathbf{p} \newline 0 & 1 \end{bmatrix} 。新的位置向量分量为 p'_{x} = -(n_x p_x + n_y p_y + n_z p_z) 等。
- 从位置求解球坐标参数 (r, \beta, \gamma) :
- 步骤:给定 P_{xyz} = (p_x, p_y, p_z) ,关联到球坐标方程:
- p_x = r \cos\gamma \sin\beta
- p_y = r \sin\gamma \sin\beta
- p_z = r \cos\beta
解这个方程组。例如, \gamma = ATAN2(p_y, p_x) (如果 \sin\beta > 0 )。然后 r = \sqrt{p_x^2 + p_y^2 + p_z^2} 。 \beta = ATAN2(\sqrt{p_x^2+p_y^2}, p_z) 。
- 步骤:给定 P_{xyz} = (p_x, p_y, p_z) ,关联到球坐标方程:
- 从给定的变换矩阵 T_{final} 求解 RPY 或欧拉角:
- 步骤:直接使用 ATAN2 公式,利用来自 T_{final} 的元素 n_x, n_y, n_z, o_x, ..., a_z 。注意多解问题。
- D-H 表示法:
- 步骤:
- 根据 D-H 约定正确分配坐标系。
- 填写 D-H 参数表 ( \theta_i, d_i, a_i, \alpha_i )。
- 使用 D-H 参数编写每个 A_i 矩阵。
- 总变换 ^{U}T_H = A_1 A_2 ... A_n 。
- 步骤:
- 逆运动学 (简单情况):
- 对于 2-DOF 平面机器人:
- p_x = l_1 C_1 + l_2 C_{12}
- p_y = l_1 S_1 + l_2 S_{12}
- 求解 \theta_1, \theta_2 。通常 C_2 = (p_x^2 + p_y^2 - l_1^2 - l_2^2) / (2 l_1 l_2) ,然后 \theta_2 = ATAN2(S_2, C_2) 。接着求解 \theta_1 。
- 对于更复杂但仍可通过直接代数/三角函数求解的情况的通用方法:
- 获得正向运动学矩阵 {}^0T_H = A_1 A_2 ... A_n = \begin{bmatrix} n_x & o_x & a_x & p_x \newline n_y & o_y & a_y & p_y \newline n_z & o_z & a_z & p_z \newline 0 & 0 & 0 & 1 \end{bmatrix} 。
- 使用 A_1^{-1} {}^0T_H = A_2 ... A_n 。令所得矩阵的元素相等。
- 寻找能够分离出单个关节变量或其简单函数的元素(例如,问题 2.39 中的 S_{1}a_{x}-C_{1}a_{y}=0\rightarrow\theta_{1}=tan^{-1}(\frac{a_{y}}{a_{x}}) )。
- 逐步求解。
- 对于 2-DOF 平面机器人:
第三章:操作臂运动学
关键概念与公式
- 微分算子 ( \Delta 或 {}^T\Delta ): \Delta = \begin{bmatrix} 0 & -\delta_z & \delta_y & d_x \newline \delta_z & 0 & -\delta_x & d_y \newline -\delta_y & \delta_x & 0 & d_z \newline 0 & 0 & 0 & 0 \end{bmatrix} 其中 d_x, d_y, d_z 是微分平移, \delta_x, \delta_y, \delta_z 是微分旋转。
- 坐标系变化 ( dT ):
- 相对于参考坐标系: dT = \Delta \cdot T_{old} 。
- 相对于当前坐标系 T : dT = T_{old} \cdot {}^T\Delta 。
- 新坐标系位置: T_{new} = T_{old} + dT 。
- 从 dT 和 T 求解 \Delta : \Delta = dT \cdot T^{-1} 。
- 从 dT 和 T 求解 {}^T\Delta : {}^T\Delta = T^{-1} \cdot dT 。
- 雅可比矩阵 (J) : 关联关节速度 \dot{\mathbf{q}} 与末端执行器线速度和角速度 \mathbf{v}_{hand} = (\dot{p}_x, \dot{p}_y, \dot{p}_z, \omega_x, \omega_y, \omega_z)^T 。
- \mathbf{v}_{hand} = J \dot{\mathbf{q}}
- 微分形式: D = J D_{\theta} ,其中 D = [dx, dy, dz, \delta x, \delta y, \delta z]^T , D_{\theta} = [dq_1, dq_2, ..., dq_n]^T 。
- 雅可比矩阵元素 (对于旋转关节,源自解决方案上下文):
- {}^T_6 J_{21} = (-o_x p_y + o_y p_x) 其中 o_x, o_y 来自 {}^0T_6 的 o-向量, p_x, p_y 来自 {}^0T_6 的 p-向量。
- {}^T_6 J_{16} = (-n_x p_y + n_y p_x) 其中 n_x, n_y, p_x, p_y 来自 {}^5T_6 = A_6 。
- 通用方法涉及 {}^0T_H 的位置和方向分量相对于关节变量的偏导数。
例题类型
- 根据 T_{old} 和微分变化计算 dT 和 T_{new} :
- 步骤:
- 根据给定的 dx, dy, dz, \delta x, \delta y, \delta z 构建 \Delta 矩阵。
- 计算 dT = \Delta \cdot T_{old} 。
- 计算 T_{new} = T_{old} + dT 。
- 步骤:
- 从 T, dT 求解微分变化 ( dx, ..., \delta z ):
- 步骤:
- 计算 \Delta = dT \cdot T^{-1} 。
- 通过观察从 \Delta 中提取 dx, ..., \delta z 。 (或者,对于 {}^T D :计算 {}^T\Delta = T^{-1} \cdot dT 并观察)。
- 步骤:
- 从 dT 和 J 计算关节微分运动 D_\theta :
- 步骤:
- 计算 \Delta = dT \cdot T_{old}^{-1} 以获得相对于参考坐标系的微分算子。
- 从 \Delta 中提取 D = [dx, dy, dz, \delta x, \delta y, \delta z]^T 。
- 求解 D_\theta = J^{-1} D 。(如果 J 是针对 {}^{T_1}D 的,则计算 {}^{T_1}\Delta = T_1^{-1} dT 并提取 {}^{T_1}D ,然后 D_\theta = ({}^{T_1}J)^{-1} {}^{T_1}D )。
- 步骤:
- 从关节速度计算末端执行器速度 (圆柱/球坐标):
- 步骤:
- 推导或使用给定的雅可比矩阵 J ,该矩阵关联 \dot{\mathbf{p}} = (\dot{p}_x, \dot{p}_y, \dot{p}_z)^T 与关节速度 \dot{\mathbf{q}} = (\dot{r}, \dot{\alpha}, \dot{l})^T (圆柱坐标) 或 (\dot{r}, \dot{\beta}, \dot{\gamma})^T (球坐标)。
- \begin{bmatrix} \dot{p}_x \newline \dot{p}_y \newline \dot{p}_z \end{bmatrix} = J \begin{bmatrix} \dot{q}_1 \newline \dot{q}_2 \newline \dot{q}_3 \end{bmatrix} 。
- 圆柱坐标雅可比矩阵: J = \begin{bmatrix} C\alpha & -rS\alpha & 0 \newline S\alpha & rC\alpha & 0 \newline 0 & 0 & 1 \end{bmatrix}
- 球坐标雅可比矩阵: J = \begin{bmatrix} S\beta C\gamma & rC\beta C\gamma & -rS\beta S\gamma \newline S\beta S\gamma & rC\beta S\gamma & rS\beta C\gamma \newline C\beta & -rS\beta & 0 \end{bmatrix}
- 步骤:
- 从末端执行器速度计算关节速度:
- 步骤:
- 使用适当的雅可比矩阵 J 。
- 求解 \begin{bmatrix} \dot{q}_1 \newline \dot{q}_2 \newline \dot{q}_3 \end{bmatrix} = J^{-1} \begin{bmatrix} \dot{p}_x \newline \dot{p}_y \newline \dot{p}_z \end{bmatrix} 。如果未直接计算 J^{-1} ,这可能涉及求解线性方程组。
- 步骤:
第四章:操作臂动力学
关键概念与公式
- 拉格朗日函数 ( L ): L = K - P ,其中 K 是总动能, P 是总势能。
- 拉格朗日运动方程: \frac{d}{dt}\left(\frac{\partial L}{\partial \dot{q}_i}\right) - \frac{\partial L}{\partial q_i} = \tau_i (对于第 i 个关节/广义坐标 q_i 和广义力/力矩 \tau_i )。
- 动能 (K):
- 对于刚体: K = \frac{1}{2} m v_C^2 + \frac{1}{2} I_C \omega^2 ,其中 v_C 是质心速度, I_C 是绕质心的转动惯量。
- 对于绕固定点 ‘O’ 旋转的连杆: K = \frac{1}{2} I_O \dot{\theta}^2 。
- 对于连杆 i : K_i = \frac{1}{2} m_i v_{Ci}^T v_{Ci} + \frac{1}{2} \omega_i^T I_{Ci} \omega_i 。
- 势能 (P): P = mgh ,其中 h 是质心的高度。
- 力/力矩变换: 给定参考坐标系中的力 \mathbf{f}_{ref} 和力矩 \mathbf{m}_{ref} ,以及附着在物体上,原点为 \mathbf{p}_B ,方向矩阵为 R_B = [\mathbf{n}, \mathbf{o}, \mathbf{a}] 的坐标系 B:
- {}^B\mathbf{f} = R_B^T \mathbf{f}_{ref}
- {}^B\mathbf{m} = R_B^T (\mathbf{m}_{ref} + \mathbf{p}_B \times \mathbf{f}_{ref}) (这是一个概念性总结。问题4.7和4.8使用 n \cdot f , o \cdot f , a \cdot f 计算力的分量,使用 n \cdot [(f \times p) + m] 等计算力矩的分量,这等效于 R^T 乘法)。
例题类型
- 使用拉格朗日力学推导运动方程:
- 步骤:
- 定义广义坐标 q_i 。
- 用 q_i 和 \dot{q}_i 表示动能 K 。
- 用 q_i 表示势能 P 。
- 构建拉格朗日函数 L = K - P 。
- 计算 \frac{\partial L}{\partial \dot{q}_i} ,然后计算 \frac{d}{dt}\left(\frac{\partial L}{\partial \dot{q}_i}\right) 。
- 计算 \frac{\partial L}{\partial q_i} 。
- 组合方程: \frac{d}{dt}\left(\frac{\partial L}{\partial \dot{q}_i}\right) - \frac{\partial L}{\partial q_i} = \tau_i 。
- 步骤:
- 计算连杆的总动能:
- 步骤:
- 求解连杆质心的速度 ( v_C )。这可能涉及相对速度: v_C = v_A + v_{C/A} = v_A + \omega \times r_{A \to C} 。
- 计算 v_C^2 。
- K = \frac{1}{2} m v_C^2 + \frac{1}{2} I_C \dot{\theta}^2 。
- 步骤:
- 将力和力矩变换到不同坐标系:
- 步骤:
- 确定 \mathbf{f}_{ref} , \mathbf{m}_{ref} ,以及变换矩阵 B = \begin{bmatrix} \mathbf{n} & \mathbf{o} & \mathbf{a} & \mathbf{p} \newline 0 & 0 & 0 & 1 \end{bmatrix} 。
- 计算坐标系 B 中的力分量: {}^B f_x = \mathbf{n} \cdot \mathbf{f}_{ref} , {}^B f_y = \mathbf{o} \cdot \mathbf{f}_{ref} , {}^B f_z = \mathbf{a} \cdot \mathbf{f}_{ref} 。
- 计算力关于 B 原点产生的力矩(如果 \mathbf{p} 是 B 在参考坐标系中的原点): \mathbf{m}_{f,B} = \mathbf{p} \times \mathbf{f}_{ref} 。
- 参考坐标系中,但关于 B 原点的总力矩: \mathbf{M}_B = \mathbf{m}_{ref} + \mathbf{m}_{f,B} 。
- 计算坐标系 B 中的力矩分量: {}^B m_x = \mathbf{n} \cdot \mathbf{M}_B , {}^B m_y = \mathbf{o} \cdot \mathbf{M}_B , {}^B m_z = \mathbf{a} \cdot \mathbf{M}_B 。
- 步骤:
第五章:轨迹生成
关键概念与公式
- 三次多项式轨迹: \theta(t) = c_0 + c_1 t + c_2 t^2 + c_3 t^3
- \dot{\theta}(t) = c_1 + 2c_2 t + 3c_3 t^2
- \ddot{\theta}(t) = 2c_2 + 6c_3 t
- 边界条件 (通常需要4个): \theta(0), \dot{\theta}(0), \theta(t_f), \dot{\theta}(t_f) 。
- 如果起止时均静止 ( \dot{\theta}(0)=0, \dot{\theta}(t_f)=0 ):
- c_0 = \theta(0)
- c_1 = 0
- c_2 = \frac{3}{t_f^2}(\theta(t_f) - \theta(0))
- c_3 = -\frac{2}{t_f^3}(\theta(t_f) - \theta(0))
- 五次多项式轨迹: \theta(t) = c_0 + c_1 t + c_2 t^2 + c_3 t^3 + c_4 t^4 + c_5 t^5
- \dot{\theta}(t) = c_1 + 2c_2 t + 3c_3 t^2 + 4c_4 t^3 + 5c_5 t^4
- \ddot{\theta}(t) = 2c_2 + 6c_3 t + 12c_4 t^2 + 20c_5 t^3
- 边界条件 (通常需要6个): \theta(0), \dot{\theta}(0), \ddot{\theta}(0), \theta(t_f), \dot{\theta}(t_f), \ddot{\theta}(t_f) 。
- 带抛物线过渡的线性段轨迹:
- 总时间 t_f 。巡航速度 \omega 。过渡时间 t_b 。
- t_b = \frac{\theta(0) - \theta(t_f) + \omega t_f}{\omega} (如果机器人起止时均静止)。
- 过渡期间的加速度: \ddot{\theta}_{blend} = \omega / t_b 。
- 各段方程:
- 加速段 ( 0 \le t \le t_b ): \theta(t) = \theta(0) + \frac{1}{2} \ddot{\theta}_{blend} t^2 = \theta(0) + \frac{\omega}{2t_b} t^2
- 匀速段 ( t_b < t \le t_f - t_b ): \theta(t) = \theta(t_b) + \omega (t - t_b)
- 减速段 ( t_f - t_b < t \le t_f ): \theta(t) = \theta(t_f) - \frac{1}{2} \ddot{\theta}_{blend} (t_f - t)^2 = \theta(t_f) - \frac{\omega}{2t_b} (t_f - t)^2
- 笛卡尔空间轨迹到关节空间:
- 定义笛卡尔路径 (例如直线)。
- 将路径离散化为中间笛卡尔点 (p_{xi}, p_{yi}, p_{zi}) 。
- 对于每个中间笛卡尔点,使用机器人的逆运动学计算相应的关节变量 (\theta_{1i}, \theta_{2i}, ..., \theta_{ni}) 。
例题类型
- 计算三次多项式的系数:
- 步骤:
- 使用 \theta(t) 和 \dot{\theta}(t) 以及4个边界条件 (例如 \theta(0)=\theta_i, \dot{\theta}(0)=\dot{\theta}_i, \theta(t_f)=\theta_f, \dot{\theta}(t_f)=\dot{\theta}_f ) 建立4个方程。
- 求解这4个线性方程组,得到 c_0, c_1, c_2, c_3 。
- 步骤:
- 计算五次多项式的系数:
- 步骤:与三次多项式类似,但使用 \theta(t), \dot{\theta}(t), \ddot{\theta}(t) 以及6个边界条件建立6个方程。求解 c_0, ..., c_5 。
- 计算带抛物线过渡的线性段轨迹的过渡时间:
- 步骤:使用公式 t_b = \frac{\theta_i - \theta_f + \omega t_f}{\omega} (对于起止均静止的情况)。
- 一旦求得 t_b ,计算 \ddot{\theta}_{blend} = \omega / t_b 。然后为每段写出 \theta(t), \dot{\theta}(t), \ddot{\theta}(t) 的方程。
- 将笛卡尔路径转换为关节角度:
- 步骤:
- 确定笛卡尔空间中直线的方程。
- 将直线分成若干段,得到中间点 (x_k, y_k) 。
- 对于每个 (x_k, y_k) ,使用机器人的逆运动学方程求解 (\theta_{1k}, \theta_{2k}) 。
- 步骤:
第六章:控制系统
关键概念与公式
- 使用部分分式展开求解拉普拉斯逆变换:
- 对于 F(s) = \frac{N(s)}{D(s)} :
- 如果存在不同的实数根 p_1, p_2, ... : F(s) = \frac{a_1}{s-p_1} + \frac{a_2}{s-p_2} + ... \Rightarrow f(t) = a_1 e^{p_1 t} + a_2 e^{p_2 t} + ...
- 留数 a_k = [(s-p_k)F(s)]_{s=p_k} 。
- 对于重实根 (s-p)^m : 包含项 \frac{b_m}{(s-p)^m} + \frac{b_{m-1}}{(s-p)^{m-1}} + ... + \frac{b_1}{s-p} 。
- b_m = [(s-p)^m F(s)]_{s=p} 。
- b_{m-1} = \frac{d}{ds}[(s-p)^m F(s)]_{s=p} 。
- b_{m-k} = \frac{1}{k!} \frac{d^k}{ds^k}[(s-p)^m F(s)]_{s=p} 。
- 常用变换对: \mathcal{L}^{-1}\left(\frac{1}{s+a}\right) = e^{-at} , \mathcal{L}^{-1}\left(\frac{1}{(s+a)^2}\right) = te^{-at} , \mathcal{L}^{-1}\left(\frac{n!}{(s+a)^{n+1}}\right) = t^n e^{-at} 。
- 对于 F(s) = \frac{N(s)}{D(s)} :
- 根轨迹分析:
- 特征方程: 1 + K GH(s) = 0 。
- 极点 ( p_i ) 是 D_{GH}(s)=0 的根。零点 ( z_i ) 是 N_{GH}(s)=0 的根。
- 相角条件: \angle KGH(s) = (2k+1)180^\circ 。从零点到轨迹上某点的向量与实轴正方向的夹角之和,减去从极点到该点的向量与实轴正方向的夹角之和。
- 幅值条件: |KGH(s)| = 1 \Rightarrow K = \frac{\prod |\text{从极点出发的向量幅值}|}{\prod |\text{从零点出发的向量幅值}|} 。
- 自然频率 ( \omega_n ) 和阻尼比 ( \zeta ):对于根 s_0 = -\sigma + j\omega_d = -\zeta\omega_n + j\omega_n\sqrt{1-\zeta^2} 。
- \omega_n = \sqrt{\sigma^2 + \omega_d^2} 。
- \zeta = \sigma / \omega_n = \cos(\text{从原点到 } s_0 \text{ 的向量与负实轴的夹角}) 。
例题类型
- 拉普拉斯逆变换:
- 步骤:
- 分解分母以找到根。
- 进行部分分式展开。
- 计算留数 ( a_k, b_k )。
- 使用标准拉普拉斯变换对找到 f(t) 。
- 步骤:
- 从根轨迹点求解系统增益, \zeta , \omega_n :
- 步骤:
- 给定根轨迹上的一个点 s_0 。
- 计算 K = \frac{\prod |s_0 - p_i|}{\prod |s_0 - z_i|} 。
- 如果 s_0 = -\sigma + j\omega_d : \omega_n = \sqrt{\sigma^2 + \omega_d^2} 。
- \zeta = \sigma / \omega_n 。
- 步骤:
第七章:执行器与驱动系统
关键概念与公式
- 折算到电机轴上的转动惯量: I_{reflected-load} = \frac{I_{load}}{N^2} ,其中 N 是齿轮比 (电机转数 / 负载转数)。
- 电机感受到的总转动惯量: I_{total} = I_{motor} + I_{gear1} + \frac{I_{gear2}}{N_{motor}^2} + \frac{I_{load}}{N_{total}^2} 。(通用形式,具体项取决于系统)
- 如果齿轮惯量可忽略或已合并,则简化形式为: I_{total} = I_{motor} + \frac{I_{load}}{N^2} 。
- 力矩与加速度: T_{motor} = I_{total} \ddot{\theta}_{motor} 。
例题类型
- 计算总转动惯量和最大角加速度:
- 步骤:
- 如果未给出 I_{load} ,则进行计算 (例如,对于操作臂)。对于质量为 m_{arm} ,长度为 L ,一端固定的均匀操作臂, I_{arm,pivot} = \frac{1}{3}m_{arm}L^2 。对于距离为 L 的点质量 m_{mass} , I_{mass} = m_{mass}L^2 。
- 计算 I_{total} = I_{motor} + \frac{I_{load}}{N^2} (如果适用且显著,则添加其他齿轮惯量)。
- 最大加速度 \ddot{\theta}_{motor_max} = \frac{T_{motor_max}}{I_{total}} 。
- 步骤:
- 转矩/惯量比: 简单除法: \frac{T}{I} 。
- 角加速度 \ddot{\theta} = \frac{\Delta \omega}{\Delta t} 。将 RPM 转换为 rad/s ( \text{RPM} \times \frac{2\pi}{60} ) 。
