免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營的一線實(shí)戰(zhàn)洞察。

python的機(jī)器人基礎(chǔ)原理工業(yè)場景模擬第九十五篇:離線仿真,將齊次變換矩陣拆解,分別提取平移向量,旋轉(zhuǎn)子矩陣,完成矩陣元素解析輸出。

python的機(jī)器人基礎(chǔ)原理工業(yè)場景模擬第九十五篇:離線仿真,將齊次變換矩陣拆解,分別提取平移向量,旋轉(zhuǎn)子矩陣,完成矩陣元素解析輸出。 《Python機(jī)器人基礎(chǔ)原理》第九十五篇離線仿真——齊次變換矩陣拆解與矩陣元素解析輸出聲明本篇全部為課程離線仿真代碼不能直接用于真實(shí)機(jī)器人控制器規(guī)避工程誤導(dǎo)風(fēng)險(xiǎn)。1. 實(shí)際工業(yè)應(yīng)用場景周二上午汽車焊裝車間的離線編程工位。上位機(jī)工程師小趙正在把一條新路徑規(guī)劃結(jié)果下發(fā)到虛擬控制器做投產(chǎn)前的最后校驗(yàn)。路徑由200個(gè)關(guān)鍵點(diǎn)組成每個(gè)點(diǎn)都附帶一個(gè)4×4齊次變換矩陣——末端執(zhí)行器相對于基座標(biāo)系的位姿。小趙把矩陣打印出來掃了一眼這堆16個(gè)數(shù)字堆在一起我怎么確認(rèn)末端姿態(tài)是不是我想要的他指著屏幕上密密麻麻的浮點(diǎn)數(shù)我只看到四個(gè)行向量看不出平移了多少、轉(zhuǎn)了多大角度、繞哪個(gè)軸轉(zhuǎn)的。旁邊的資深工程師老鄭端著咖啡走過來你需要把矩陣拆開。平移向量就是末端在基座標(biāo)系下的X/Y/Z坐標(biāo)直接讀最后那列前三個(gè)數(shù)就行。旋轉(zhuǎn)子矩陣是左上角3×3那塊——它告訴你末端相對于基座的朝向。你把它進(jìn)一步分解成RPY歐拉角就能直觀看到滾轉(zhuǎn)、俯仰、偏航各轉(zhuǎn)了多少度。但拆解之前先做正交性校驗(yàn)——如果行列式偏離1超過閾值說明數(shù)值有問題得標(biāo)紅報(bào)警。小趙那如果數(shù)值積分跑飛了det(R)飄到1.001你的校驗(yàn)?zāi)茏サ絾崂相嵞?。正交性校?yàn)工具必須有過負(fù)例驗(yàn)證——故意注入漂移看它能不能報(bào)警。不然等于沒驗(yàn)證過它能報(bào)警。構(gòu)型約定本篇采用3-DOF平面搬運(yùn)機(jī)械臂2R1R腕轉(zhuǎn)基座J1回轉(zhuǎn)大臂J2俯仰腕部J3旋轉(zhuǎn)。DH參數(shù)連桿1 a0.25 m, α0°連桿2 a0.30 m, α0°連桿3 a0.0 m, d0.0 m, α0°。正運(yùn)動學(xué)輸出4×4齊次變換矩陣本篇核心任務(wù)是對該矩陣進(jìn)行結(jié)構(gòu)化拆解提取平移向量、旋轉(zhuǎn)子矩陣、正交性校驗(yàn)、歐拉角分解完成矩陣元素解析輸出。技術(shù)棧限定numpy matplotlib。?? 聲明本篇全部代碼為課程離線仿真運(yùn)行在普通PC上用于齊次變換矩陣解析驗(yàn)證。代碼中不包含任何真實(shí)機(jī)器人控制器實(shí)時(shí)運(yùn)算或安全邏輯。不可直接用于產(chǎn)線設(shè)備。2. 痛點(diǎn)分析課程模塊 本篇對應(yīng)的工程痛點(diǎn)第2章 位姿描述與坐標(biāo)變換 → 2.2 旋轉(zhuǎn)矩陣 3×3旋轉(zhuǎn)子矩陣的正交性校驗(yàn)與物理含義理解第2章 → 2.3 齊次變換矩陣 4×4矩陣的塊結(jié)構(gòu)拆解平移向量與旋轉(zhuǎn)子矩陣分離第3章 連桿參數(shù)及運(yùn)動學(xué)求解 → 3.3 正運(yùn)動學(xué) 正運(yùn)動學(xué)輸出的T矩陣逐元素解析與可視化第9章 仿真實(shí)驗(yàn) → 離線驗(yàn)證 上位機(jī)離線校驗(yàn)位姿矩陣的數(shù)值合法性本篇代碼解決 L2 離線仿真校核層。輸入一組關(guān)節(jié)角配置3-DOF通過正運(yùn)動學(xué)得到4×4齊次變換矩陣。處理①塊結(jié)構(gòu)拆解平移向量、旋轉(zhuǎn)子矩陣、透視行②旋轉(zhuǎn)子矩陣正交性校驗(yàn)R?R ≈ Idet(R) ≈ 1③歐拉角分解ZYX順序RPY角含萬向鎖檢測④人為注入漂移演示校驗(yàn)報(bào)警⑤矩陣元素逐行逐列解析輸出為結(jié)構(gòu)化報(bào)告。輸出4張分析圖表 CSV數(shù)據(jù)文件。不覆蓋逆運(yùn)動學(xué)、動力學(xué)、力控制、實(shí)時(shí)控制、多臂協(xié)同。3. 核心邏輯講解物理直覺齊次變換矩陣是一個(gè)4×4的數(shù)字方陣但它不是一堆亂碼——它有嚴(yán)格的塊結(jié)構(gòu)含義┌ ┐│ R11 R12 R13 │ Tx ││ R21 R22 R23 │ Ty │ 左上3×3 旋轉(zhuǎn)子矩陣R│ R31 R32 R33 │ Tz │ 右上3×1 平移向量T├──────────────┼─────┤│ 0 0 0 │ 1 │ 底行固定為[0,0,0,1]└ ┘平移向量T就是末端相對于基座標(biāo)系的坐標(biāo)X, Y, Z單位是米。旋轉(zhuǎn)子矩陣R的每一列分別是末端坐標(biāo)系的X軸、Y軸、Z軸在基座標(biāo)系下的方向余弦。因?yàn)閯傮w不會變形這三個(gè)軸必須互相垂直且長度都為1——這就是正交性。如果數(shù)值計(jì)算有漂移這三個(gè)軸會歪掉行列式就不等于1了。歐拉角分解就是把R翻譯成人能讀懂的轉(zhuǎn)角先繞Z轉(zhuǎn)偏航Y(jié)aw再繞新Y轉(zhuǎn)俯仰Pitch最后繞新X轉(zhuǎn)滾轉(zhuǎn)Roll。當(dāng)Pitch接近±90°時(shí)觸發(fā)萬向鎖——Yaw和Roll退化為一個(gè)自由度此時(shí)atan2分解會丟失信息代碼必須檢測并警告。業(yè)務(wù)邏輯 → 代碼映射輸入關(guān)節(jié)角 q [θ1, θ2, θ3]↓【步驟1正運(yùn)動學(xué)】鏈?zhǔn)紻H乘法 → 4×4齊次變換矩陣 T↓【步驟2塊結(jié)構(gòu)拆解】T[0:3, 3] → 平移向量 [Tx, Ty, Tz]T[0:3, 0:3] → 旋轉(zhuǎn)子矩陣 RT[3, :] → 透視行 [0,0,0,1]↓【步驟3正交性校驗(yàn)】det(R) 應(yīng) ≈ 1容差按數(shù)值來源調(diào)整解析1e-10積分1e-6R?R 應(yīng) ≈ I最大偏差 容差→ 通過/警告↓【步驟4歐拉角分解 萬向鎖檢測】ZYX順序yaw atan2(R21, R11)pitch atan2(-R31, √(R112R212))若 √(R112R212) 1e-6 → 萬向鎖警告roll atan2(R32, R33)→ 弧度轉(zhuǎn)角度↓【步驟5人為注入漂移演示】對正常R乘1.005縮放 → 校驗(yàn)應(yīng)報(bào)警↓【步驟6解析輸出】逐元素打印 CSV導(dǎo)出 4張圖表關(guān)鍵公式文字翻譯平移提取T [T[0,3], T[1,3], T[2,3]]。直接讀第4列前三個(gè)數(shù)就是末端在基座標(biāo)系下的X/Y/Z坐標(biāo)。單位米。旋轉(zhuǎn)子矩陣提取R T[0:3, 0:3]。左上角3×3子塊。每一列是末端坐標(biāo)軸在基座標(biāo)系中的方向余弦。例如第1列[R11, R21, R31]是末端X軸的方向——如果它是[1,0,0]說明末端X軸和基座X軸平行同向。行列式校驗(yàn)det(R) 1。剛體旋轉(zhuǎn)不改變體積所以旋轉(zhuǎn)矩陣的行列式嚴(yán)格等于1。如果數(shù)值計(jì)算導(dǎo)致det(R)0.9999999還在容差內(nèi)如果det(R)0.87說明矩陣已經(jīng)歪了數(shù)值有問題。ZYX歐拉角- 偏航Y(jié)aw atan2(R21, R11)末端繞基座Z軸轉(zhuǎn)了多少度- 俯仰Pitch atan2(-R31, √(R112R212))末端低頭的程度- 滾轉(zhuǎn)Roll atan2(R32, R33)末端繞自身X軸滾了多少度萬向鎖檢測當(dāng)√(R112R212) 1e-6時(shí)Pitch≈±90°Yaw和Roll退化為一個(gè)自由度分解結(jié)果不可信必須發(fā)出警告。4. OOP代碼實(shí)現(xiàn)技術(shù)棧限定numpy, matplotlib。不引入pybullet、roboticstoolbox等任何第三方重型庫。全部自實(shí)現(xiàn)。項(xiàng)目結(jié)構(gòu)樹transform_decompose/├── run_transform_decompose.py├── requirements.txt├── robot/│ ├── __init__.py│ ├── models.py│ ├── dh_kinematics.py│ ├── transform_decomposer.py│ └── visualize.py├── tests/│ ├── __init__.py│ └── test_transform_decompose.py├── results/└── output/核心源碼robot/models.py — 數(shù)據(jù)模型數(shù)據(jù)模型DH參數(shù)、機(jī)器人配置全部參數(shù)內(nèi)置自包含可復(fù)現(xiàn)import mathfrom dataclasses import dataclass, fieldfrom typing import Listdataclassclass DHTwistParams:DH參數(shù)集標(biāo)準(zhǔn)DHtheta_offset: theta偏移 (rad)d: 連桿偏距 (m)a: 連桿長度 (m)alpha: 扭角 (rad)name: 連桿名稱theta_offset: floatd: floata: floatalpha: floatname: str def __post_init__(self):for name, val in [(theta, self.theta_offset),(d, self.d), (a, self.a),(alpha, self.alpha)]:if not math.isfinite(val):raise ValueError(f{self.name} {name}必須為有限數(shù)值)dataclassclass RobotConfig:3-DOF平面搬運(yùn)機(jī)械臂配置2R1R腕轉(zhuǎn)連桿1: J1回轉(zhuǎn), a0.25m, alpha0deg連桿2: J2俯仰, a0.30m, alpha0deg連桿3: J3腕轉(zhuǎn), a0.0m, d0.0m, alpha0degdh_params: List[DHTwistParams] field(default_factorylist)def __post_init__(self):if not self.dh_params:self.dh_params [DHTwistParams(0.0, 0.0, 0.25, 0.0, L1_J1),DHTwistParams(0.0, 0.0, 0.30, 0.0, L2_J2),DHTwistParams(0.0, 0.0, 0.0, 0.0, L3_J3),]propertydef l1(self) - float:return self.dh_params[0].apropertydef l2(self) - float:return self.dh_params[1].arobot/dh_kinematics.py — 正運(yùn)動學(xué)標(biāo)準(zhǔn)DH正運(yùn)動學(xué)3-DOF平面搬運(yùn)臂輸出4x4齊次變換矩陣import numpy as npimport mathfrom robot.models import RobotConfigclass DHKinematics:def __init__(self, config: RobotConfig):self.config configdef dh_transform(self, theta, d, a, alpha):單個(gè)連桿的標(biāo)準(zhǔn)DH齊次變換矩陣 (4x4)為什么用4x4齊次坐標(biāo)把旋轉(zhuǎn)和平移合并到一個(gè)矩陣?yán)镞@樣連續(xù)變換只需矩陣乘法c_t, s_t math.cos(theta), math.sin(theta)c_a, s_a math.cos(alpha), math.sin(alpha)return np.array([[c_t, -s_t * c_a, s_t * s_a, a * c_t],[s_t, c_t * c_a, -c_t * s_a, a * s_t],[0, s_a, c_a, d],[0, 0, 0, 1]], dtypefloat)def forward_kinematics(self, joint_angles: list):正運(yùn)動學(xué)鏈?zhǔn)匠朔╦oint_angles: [theta1, theta2, theta3]if len(joint_angles) ! 3:raise ValueError(需要3個(gè)關(guān)節(jié)角[theta1, theta2, theta3])T_total np.eye(4)for i, dh in enumerate(self.config.dh_params):theta joint_angles[i] dh.theta_offsetT_i self.dh_transform(theta, dh.d, dh.a, dh.alpha)T_total T_total T_ireturn T_totaldef get_end_position(self, joint_angles: list):返回末端位置 [x, y, z]T self.forward_kinematics(joint_angles)return np.array([T[0, 3], T[1, 3], T[2, 3]], dtypefloat)robot/transform_decomposer.py — 齊次變換矩陣拆解器齊次變換矩陣拆解器功能提取平移向量、旋轉(zhuǎn)子矩陣、透視行正交性校驗(yàn)歐拉角分解import numpy as npimport mathfrom dataclasses import dataclass, field# 全局正交性容差常量解析計(jì)算用1e-10數(shù)值積分場景建議1e-6~1e-8ORTHO_TOL 1e-10# 萬向鎖檢測閾值GIMBAL_THRESH 1e-6dataclassclass DecomposeResult:矩陣拆解結(jié)果joint_angles_deg: list field(default_factorylist)translation: np.ndarray Nonerotation_matrix: np.ndarray Noneperspective_row: np.ndarray Nonedet_r: float 0.0orthogonality_error: float 0.0yaw_deg: float 0.0pitch_deg: float 0.0roll_deg: float 0.0is_valid: bool Truegimbal_lock: bool Falseelement_report: str class TransformDecomposer:def __init__(self, ortho_toleranceORTHO_TOL):ortho_tolerance: 正交性校驗(yàn)容差為什么需要容差浮點(diǎn)運(yùn)算會引入微小誤差det(R)不可能嚴(yán)格等于1允許1e-10量級偏差。注意閾值需按數(shù)值來源調(diào)整——解析計(jì)算用1e-10長時(shí)間數(shù)值積分累積漂移場景建議1e-6~1e-8self.ortho_tol ortho_tolerancedef decompose(self, T: np.ndarray, joint_anglesNone):拆解4x4齊次變換矩陣T: 4x4 numpy arrayif T.shape ! (4, 4):raise ValueError(f矩陣必須是4x4得到{T.shape})result DecomposeResult()# 1. 提取平移向量第4列前3行result.translation T[0:3, 3].copy()# 2. 提取旋轉(zhuǎn)子矩陣左上3x3result.rotation_matrix T[0:3, 0:3].copy()# 3. 透視行第4行result.perspective_row T[3, :].copy()# 4. 正交性校驗(yàn)R result.rotation_matrixdet_r float(np.linalg.det(R))RtR R.T RI np.eye(3)ortho_err float(np.linalg.norm(RtR - I, ordfro))result.det_r det_rresult.orthogonality_error ortho_errresult.is_valid (abs(det_r - 1.0) self.ortho_toland ortho_err self.ortho_tol)# 5. 歐拉角分解ZYX順序 / Roll-Pitch-Yaw# yaw atan2(R21, R11)yaw math.atan2(R[1, 0], R[0, 0])# pitch atan2(-R31, sqrt(R11^2R21^2))denom math.hypot(R[0, 0], R[1, 0])if denom GIMBAL_THRESH:# 萬向鎖Pitch接近-90degYaw和Roll退化為一個(gè)自由度result.gimbal_lock Truepitch math.copysign(math.pi / 2, -R[2, 0])# 萬向鎖時(shí)roll無法從矩陣唯一確定設(shè)為0roll 0.0else:pitch math.atan2(-R[2, 0], denom)# roll atan2(R32, R33)roll math.atan2(R[2, 1], R[2, 2])result.yaw_deg math.degrees(yaw)result.pitch_deg math.degrees(pitch)result.roll_deg math.degrees(roll)# 6. 保存關(guān)節(jié)角if joint_angles is not None:result.joint_angles_deg [math.degrees(q) for q in joint_angles]# 7. 生成逐元素解析報(bào)告result.element_report self._generate_report(result)return resultdef _generate_report(self, result: DecomposeResult):生成矩陣元素逐行逐列解析文本lines []lines.append( * 60)lines.append(Homogeneous Transform Matrix T (4x4) Element Report)lines.append( * 60)if result.joint_angles_deg:lines.append(fJoint Angles: ftheta1{result.joint_angles_deg[0]:.2f}deg, ftheta2{result.joint_angles_deg[1]:.2f}deg, ftheta3{result.joint_angles_deg[2]:.2f}deg)# 對本構(gòu)型theta3不改變末端位姿加注說明lines.append(NOTE: theta3 has NO effect on end-effector pose for this config (a30, d30, alpha30))lines.append()lines.append([Translation Vector T] (unit: m))lines.append(f Tx {result.translation[0]:.6f} m)lines.append(f Ty {result.translation[1]:.6f} m)lines.append(f Tz {result.translation[2]:.6f} m)lines.append()lines.append([Rotation Sub-matrix R] (3x3, unitless, direction cosines))R result.rotation_matrixfor i in range(3):lines.append(f Row{i1}: fR{i1}1{R[i,0]:.6f} fR{i1}2{R[i,1]:.6f} fR{i1}3{R[i,2]:.6f})lines.append( Col1EE X-axis dir, Col2EE Y-axis dir, Col3EE Z-axis dir)lines.append()lines.append([Orthogonality Check])lines.append(f det(R) {result.det_r:.12f} f(expected 1.000000000000))lines.append(f ||R^T R - I||_F {result.orthogonality_error:.2e})if result.is_valid:lines.append( Result: [PASS])else:lines.append( Result: [FAIL])lines.append()lines.append([Euler Angles ZYX] (unit: deg))lines.append(f Yaw {result.yaw_deg:.4f} deg)lines.append(f Pitch {result.pitch_deg:.4f} deg)lines.append(f Roll {result.roll_deg:.4f} deg)if result.gimbal_lock:lines.append( WARNING: Gimbal lock detected! (Pitch approx /-90deg, Yaw/Roll degenerate))lines.append()lines.append([Perspective Row])pr result.perspective_rowlines.append(f [{pr[0]:.0f}, {pr[1]:.0f}, {pr[2]:.0f}, {pr[3]:.0f}])if not np.allclose(pr, [0, 0, 0, 1], atol1e-12):lines.append( WARNING: Perspective row ! [0,0,0,1], input matrix is NOT a valid homogeneous transform!)return \n.join(lines)robot/visualize.py — 可視化Homogeneous transform matrix decomposition visualization: 4 charts1. Translation vector bar chart2. Rotation sub-matrix heatmap (all configs)3. Orthogonality check dual chart4. Euler angles bar chartimport osimport numpy as npimport matplotlib.pyplot as pltplt.rcParams[font.sans-serif] [SimHei, DejaVu Sans,Noto Sans CJK SC]plt.rcParams[axes.unicode_minus] Falseclass TransformVisualizer:def __init__(self, results_dirresults):self.results_dir results_diros.makedirs(results_dir, exist_okTrue)def plot_translation_bar(self, translations, labels):1. Translation vector bar chartfig, ax plt.subplots(figsize(8, 5))translations np.array(translations)x np.arange(len(labels))width 0.25ax.bar(x - width, translations[:, 0], width,labelTx (m), color#2196F3)ax.bar(x, translations[:, 1], width,labelTy (m), color#4CAF50)ax.bar(x width, translations[:, 2], width,labelTz (m), color#FF9800)ax.set_xlabel(Joint Config Index)ax.set_ylabel(Translation (m))ax.set_title(End-Effector Translation Vectors)ax.set_xticks(x)ax.set_xticklabels(labels, rotation45, haright)ax.legend()ax.grid(True, alpha0.3)plt.tight_layout()path os.path.join(self.results_dir,01_translation_bar.png)plt.savefig(path, dpi150)plt.close()return pathdef plot_rotation_heatmaps(self, results, labels):2. Rotation sub-matrix heatmaps for ALL configsReturns list of saved pathssaved_paths []n len(results)# arrange in a grid: 2 rows, ceil(n/2) colsncols min(n, 3)nrows (n ncols - 1) // ncolsfig, axes plt.subplots(nrows, ncols,figsize(5 * ncols, 4 * nrows))if n 1:axes [axes]else:axes axes.flatten()for idx, (result, label) in enumerate(zip(results, labels)):ax axes[idx]R result.rotation_matrixim ax.imshow(R, cmapRdBu_r, vmin-1, vmax1)for i in range(3):for j in range(3):ax.text(j, i, f{R[i, j]:.2f},hacenter, vacenter,colorblack, fontsize9,fontweightbold)ax.set_title(fR ({label}))ax.set_xticks([0, 1, 2])ax.set_yticks([0, 1, 2])ax.set_xticklabels([X, Y, Z])ax.set_yticklabels([1, 2, 3])# hide unused subplotsfor idx in range(n, len(axes)):axes[idx].set_visible(False)# add colorbar to the right of the last visible subplotcbar_ax fig.add_axes([0.92, 0.15, 0.02, 0.7])fig.colorbar(im, caxcbar_ax)plt.suptitle(Rotation Sub-matrix Heatmaps (All Configs),fontsize14)plt.subplots_adjust(left0.05, right0.90,bottom0.05, top0.92,wspace0.3, hspace0.3)path os.path.join(self.results_dir,02_rotation_heatmaps_all.png)plt.savefig(path, dpi150)plt.close()saved_paths.append(path)return saved_pathsdef plot_orthogonality_check(self, results, labels):3. Orthogonality check dual chartfig, (ax1, ax2) plt.subplots(1, 2, figsize(12, 5))dets [r.det_r for r in results]ortho_errs [r.orthogonality_error for r in results]# Left: determinantcolors_det [green if abs(d - 1.0) ORTHO_TOL else redfor d in dets]ax1.bar(labels, dets, colorcolors_det, alpha0.7)ax1.axhline(y1.0, colorblack, linestyle--,linewidth1.5, labelIdeal 1.0)ax1.set_ylabel(det(R))ax1.set_title(Rotation Matrix Determinant (should approx 1.0))ax1.legend()ax1.grid(True, alpha0.3)# Right: orthogonality errorax2.bar(labels, ortho_errs, colorsteelblue, alpha0.7)ax2.axhline(yORTHO_TOL, colorred, linestyle--,linewidth1.5, labelfTolerance {ORTHO_TOL})ax2.set_ylabel(||R^T R - I||_F)ax2.set_title(Orthogonality Error (Frobenius Norm))ax2.legend()ax2.grid(True, alpha0.3)ax2.set_yscale(log)plt.tight_layout()path os.path.join(self.results_dir,03_orthogonality_check.png)plt.savefig(path, dpi150)plt.close()return pathdef plot_euler_angles(self, results, labels):4. Euler angles bar chartfig, ax plt.subplots(figsize(10, 5))yaws [r.yaw_deg for r in results]pitches [r.pitch_deg for r in results]rolls [r.roll_deg for r in results]x np.arange(len(labels))width 0.25ax.bar(x - width, yaws, width, labelYaw (deg),color#E91E63)ax.bar(x, pitches, width, labelPitch (deg),color#9C27B0)ax.bar(x width, rolls, width, labelRoll (deg),color#00BCD4)ax.set_xlabel(Joint Config Index)ax.set_ylabel(Angle (deg))ax.set_title(Euler Angles Decomposition (ZYX Order))ax.set_xticks(x)ax.set_xticklabels(labels, rotation45, haright)ax.legend()ax.grid(True, alpha0.3)plt.tight_layout()path os.path.join(self.results_dir,04_euler_angles.png)plt.savefig(path, dpi150)plt.close()return path5. 可視化要求序號 圖表文件 服務(wù)結(jié)論①01_translation_bar.png 各關(guān)節(jié)角配置下末端平移量對比直觀讀取X/Y/Z坐標(biāo)②02_rotation_heatmaps_all.png 所有配置的旋轉(zhuǎn)子矩陣熱力圖對比方向余弦分布③03_orthogonality_check.png 行列式與正交性誤差雙圖確認(rèn)數(shù)值合法性④04_euler_angles.png 歐拉角分解結(jié)果將旋轉(zhuǎn)矩陣翻譯為可讀的Yaw/Pitch/Roll6. README使用說明 核心知識點(diǎn)卡片快速開始pip install -r requirements.txtpython -m pytest tests/test_transform_decompose.py -vpython run_transform_decompose.py數(shù)據(jù)格式說明# 修改關(guān)節(jié)角配置編輯 run_transform_decompose.py 中 JOINT_CONFIGS# 修改臂長編輯 RobotConfig.dh_params 中的 a 值# 修改正交性容差編輯 ORTHO_TOL 常量解析用1e-10積分用1e-6參數(shù) 修改位置 說明L1臂長dh_params[0].a mL2臂長dh_params[1].a m關(guān)節(jié)角配置JOINT_CONFIGS列表 rad正交容差ORTHO_TOL 無單位知識點(diǎn)卡片齊次變換矩陣拆解對應(yīng)課本第2章2.3節(jié)- 塊結(jié)構(gòu)4×4矩陣左上3×3是旋轉(zhuǎn)子矩陣R右上3×1是平移向量T底行固定[0,0,0,1]- 平移提取直接讀T[0:3, 3]單位m即末端在基座標(biāo)系下的坐標(biāo)- 旋轉(zhuǎn)提取T[0:3, 0:3]每列是末端坐標(biāo)軸在基座標(biāo)系中的方向余弦- 正交性校驗(yàn)det(R)1且R?RI偏離則數(shù)值有誤浮點(diǎn)容差需按數(shù)值來源調(diào)整- 歐拉角ZYX分解Yawatan2(R21,R11)Pitchatan2(-R31,√(R112R212))Rollatan2(R32,R33)- 萬向鎖Pitch≈±90°時(shí)Yaw/Roll退化需檢測并警告- 工程鐵律任何位姿矩陣在使用前必須經(jīng)過正交性校驗(yàn)否則下游控制會出錯(cuò)7. 總結(jié)與工程師思考工業(yè)落地難處一、數(shù)值積分漂移導(dǎo)致旋轉(zhuǎn)矩陣不正交。 在長時(shí)間仿真中四元數(shù)→旋轉(zhuǎn)矩陣的轉(zhuǎn)換如果精度不足或連續(xù)乘法累積舍入誤差R的行列式會逐漸偏離1。離線仿真階段必須逐幀校驗(yàn)發(fā)現(xiàn)漂移超過閾值就做Gram-Schmidt正交化修正。正交容差需按數(shù)值來源選取解析計(jì)算用1e-10數(shù)值積分累積場景建議1e-6~1e-8。二、歐拉角萬向鎖問題。 當(dāng)Pitch±90°時(shí)Yaw和Roll退化為一個(gè)自由度atan2分解丟失一個(gè)旋轉(zhuǎn)信息。工業(yè)現(xiàn)場通常用四元數(shù)避免此問題但上位機(jī)調(diào)試時(shí)仍需歐拉角做人工判讀——代碼必須檢測并警告。三、坐標(biāo)系約定不統(tǒng)一。 不同廠商的機(jī)器人控制器使用不同的歐拉角約定ZYX、XYZ、ZYZ等同一個(gè)旋轉(zhuǎn)矩陣用不同約定分解得到完全不同的角度值。離線仿真工具必須明確標(biāo)注使用的約定順序。工程師心得小趙看著終端輸出的逐元素解析報(bào)告Tx0.4532 m, Ty0.0871 m, Tz0.0000 m——和CAD里的標(biāo)注對上了。旋轉(zhuǎn)矩陣行列式1.000000000000正交性誤差2.3e-16完美。老鄭指著熱力圖你看R的第3列是[0,0,1]——末端Z軸和基座Z軸平行。注意theta3對本構(gòu)型末端位姿無影響因?yàn)閍30、d30、alpha30。正交性校驗(yàn)?zāi)菑垐D挺好用小趙說而且你加了注入漂移的演示——det(R)飄到1.005校驗(yàn)立刻報(bào)[FAIL]。這下我知道工具真能報(bào)警了。對。校驗(yàn)工具必須過負(fù)例驗(yàn)證不然等于沒驗(yàn)證。下一篇該做帶關(guān)節(jié)限位的逆解了對。但那是下一篇的事了。8. 寫作與風(fēng)格限制本篇全部代碼為課程離線仿真運(yùn)行在普通PC上用于齊次變換矩陣解析驗(yàn)證。代碼中不包含任何真實(shí)機(jī)器人控制器實(shí)時(shí)運(yùn)算或安全邏輯。完全去營銷中立客觀。拒絕論文式生硬開頭保持故事敘事感。全部物理量標(biāo)注完整單位。9. 文末附錄環(huán)境配置pip install numpy1.24.0 matplotlib3.7.0requirements.txtnumpy1.24.0matplotlib3.7.0運(yùn)行說明cd transform_decomposepip install -r requirements.txtpython -m pytest tests/ -vpython run_transform_decompose.py參數(shù)修改指南想改什么 改哪里 示例L1臂長dh_params[0].a 改0.25→0.30L2臂長dh_params[1].a 改0.30→0.35關(guān)節(jié)角配置JOINT_CONFIGS利用AI解決實(shí)際問題如果你覺得這個(gè)工具好用歡迎關(guān)注長安牧笛
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
激情网五月天| 99∨VTV| 97色啪| 超碰在线成人| 亚洲操B| 婷婷五月激情四月综合| 激情视频综合| 丁香婷婷婷| 色五月丁香五月| 五月色天情| 丁香婷婷久久| 日本婷久久| 99在线资源视频| 激情综合色| 综合五月婷婷| 婷婷涩涩五月天| 九九99在线观看视频| 91九色PORNY中文啦| 一本色道久久综合狠狠躁小说| 伍月婷婷六月丁香| 亭亭五月天黑人2014| 91狠狠色色丁香婷婷综合久久| 成人午夜天| 26uuu欧美| 天天噪夜夜爽| 色婷婷五月天激情综合| 日韩狠狠色婷婷| 日本久久高清| 综合AV在线| 热久久婷婷| 国产真人做爰视频免费| www.婷婷| 无码人妻精品一区二区蜜桃色欲| 国产毛片精品一区二区色欲黄A片| 伊人玖玖婷婷| 99热在线精品播放| 久久伊人9| 五月婷婷六月丁香在线视频| 深爱激情综合网| 激情五月婷婷欧美极品 | 激情久久五月天| 羞羞嫩草视频| 强奸幻女毛片| 伊人久久大香蕉网| 狠狠色婷婷| 九洲一级A片| 91互操| www色综合亚洲92| 69热91天堂| 国产欧美日韩综合精品一区二区| 五月天丁香婷婷网| 久久青青日本视频| 婷婷色丁香五月| 91成人视频| 亚洲无码成人网| 超碰人人操| 99狠狠操一| 婷婷丁香五月天色色| 精品自拍97| Caoub青青超碰 | 婷婷久久爱| 色婷婷五月综合色婷婷| 日本三级中国三级99| www.色9| 8区视频在线| 欧美视频五区| 激情都市五月天| 五月天婷婷中文字幕在线播放| 五月天,激情四射,婷婷频道| 婷婷色中文字幕| 99九九视频| 99免费在线| 99爱视频在线观看| 丁香五月综合激情久久潮喷| 欧美日韩成人| 久久66成人网站| 逼里香不卡| 色色色色网| 丁香色五月 97干| 久热伊人| 日韩伊人大香蕉| 亚洲av午夜精品一区二区| www.91九色| 婷婷激情小说网| 337p午夜影院| 成人在线精品| 日韩aⅴ视频| 99婷婷五月天激情| 天天橾日日橾夜夜橾17| 26uuu精品一区二区| 久久综合激情| 精品九九网| 九九热中文| 六月色色综合| VA色婷婷| 1区2区视频| 婷婷五月四狠狠| 播五月丁香六月| 99碰超| 久99婷婷色综合| 久久婷视频| 天天综合干| 天天干一干| www.久久99| 色九月丁香婷婷蜜桃在线观看| 成人婷婷| 五月丁香综合中文| AV网址大全在| 伍月婷丁香花全集| 欧类av怡春院| av大香蕉| 午夜成人网站在线观看| 亚洲99一级无嗎特制在线| 丁香六月久久| 92久久| 亚洲国产精品VA在线看黑人| 人人草成人视频| 亚洲狠狠干| 综合色色色| a片在线免费观看一区| 轮奸综合网| 五月婷婷亚洲| 五月情涩综合婷婷| 五月婷婷69| 中国女人做爰A片| 91大神操美女| 丁香婷婷激情| 国产精品色婷婷久久久精品| 超碰在线综合| 综合99久久天天综合| 高清无码中文字幕aVDV| 天天久综合网永久入口18| 99网址在线看| 久操福利| 大香蕉手机视频| 婷婷五月天小说网| 97成人超碰免| 激情av在线| 日日撸日日操| 日本久久久97| 另类五月激情| 99热欲| 狠狠搞综合色| 激情五月婷婷综合秋霞| va婷婷| 成人无码精品1区2区3区免费看| 99久久久99久久91熟女| 九九视频在线观看视频6 | 天天射影| 精品一二三区久久AAA片| 九九精品热| 欧美日韩99| 国产精品汇聚精彩第二页 - 高清完整版在线 - 青蛙AV | 91艹人| 亚洲第一第二网站| 99热久只有| 婷婷丁香18| 9久久精品| 99在线观看视频| 五月天综合久久丁香91| 97操视频| 亚洲舔观看| 色婷婷成人做爰A片免费看网站 | 天天狠狠夜夜狠狠2023| 激情婷婷综合| 操b视频在线观看一区二区| 99热99热99热99热| 69色婷婷| 伊人网碰碰| 婷婷射丁香| 伊人狠狠丁香婷婷综合尤物| 亚洲综合五月天| 思思99精品视频在线观看| 五月天激情图片| 五月丁香激情综合啪| 丁香五月在线观看| 99热这里只有精品 搜| 91欧美日韩| 青青草激情网| 99亚洲精品视频在线观看| 99久久婷婷国产综合| 亚州激情在线视频| 日韩无码乱轮| 九九久久精品| 色五月天电影| 国产婷婷五月中文字幕高清| 五月天婷婷色色首页| 九色视频91疯狂| 婷婷五月天美女| 少妇搡BBBB搡BBB搡毛茸茸| 五月婷婷丁香色播网| 日本在线观看91| 日本久热| 婷婷五月天免费视频在线观看| 九月丁香欧美综合| 国产精品18久久久| 婷婷色九月| 丁香五月另类小说在线阅读| 欧美性爱一区| 人碰人人人玩91| 99玖玖免费视频| WWW五月天| 婷婷综合九月| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 91疯狂操操操操| 婷婷在线视频| 久久久精品人妻| 九九热这里只有精品7| 大地9中文在线观看免费高清 | Av大香蕉| 99这里只有精品视频| 91日韩在线| 色狠狠婷婷| 激情五月色婷婷| 五月综合激情图片| 成人超碰AV| www.久9| 欧美性爱五月天| 天天爽综合网| 天天日婷婷| 五月天大香蕉| 久久激情五月婷婷| 99日逼视频| 少妇搡BBBB搡BBB搡毛茸茸| 秋霞成人毛片一级A片| 这里只有精品久| 久久这里只有精品5| 97人人操人人拍| 婷婷色婷婷| 操逼巨乳91| 开心五月色婷| 激情亚洲婷婷六月| 色五月av伊人| 久久五月丁香综合17C| 91久久精品无码一区二区三区| 色99综合色88| 另类婷婷五月天啪帕帕| 夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂亚洲亚洲亚洲亚洲亚洲亚洲亚洲亚洲色 | 婷婷五点亚洲| 婷婷五月天综合色| 天天爽天天日天天舔| 五月丁香少妇A| 五月婷在线观看| 婷婷五月丁香色播| 国产无人区大片| 美女伊人久久| www久久久久| 97久久婷婷色| 国内久久婷婷| 超级碰碰视频无码| 狠狠色丁香婷婷久久综合| 亚洲成人av在线观看| AⅤ网站在线看| 99精品视频在线观看| 六月丁香深深爱综合网| 97操碰视频| 色色九区| 精品人人操| 97香蕉久久超级碰碰高清版| 五月天大香蕉| 思思久久精品视频| 四色女婷婷| 久久久er热| 丁香六月AV| 欧美激情五月天婷婷| 色噜噜狠狠色综合无码久久欧美| 天天综合亚洲综合网天天αⅴ| 六月色色| 襙逼网| 色情激情五月| 五月天婷综合| 综合色播| 99惹 精品在线| www.99色在线| 五月综合激情| 天堂爱爱| 色五月天成人| www.婷婷六月天| 天天爽天天爽| 婷婷亚州综合| 九九热这里只有精品首页| 激情视频婷婷五月花| 色婷婷丁香五月高清在线| 五月丁香六月婷婷综合网| 5月婷婷性视频| 婷婷视频在线| 欧美成人A片AAA片在线播放| 亚洲精品一二三| 精品九九网| 日本色婷婷| 婷婷六月丁香开心深深爱| 五月丁香激情综合六月涩涩爱| 午夜精品人妻无码一区二区三区| 色很久综合| 色5月婷婷色| 26uuu国自产精品| www.五月激情.com| 久久婷婷五月综合啪| 激情五月丁香五月| 精品一区二区三区三区| 337久久| 国产亚洲色婷婷久久99精品91| 精品人妻伦一二三区久久| 国av网| 亚洲AV无码成人精品区电影网| 超碰成人免费| 99超级碰碰| 色色狼人综合| 婷婷五月天天天日日夜夜| 啪啪啪大香蕉| 日本特黄aaaaa| 桃色激情婷婷伊人网| 久久五月天合网| 色五月在线| 五月夜丁香| 五月天激情婷婷小说| 婷婷六月花| 五月丁香偷拍| 久久久久久久人妻| 久久久久久久久久久-久五月天婷婷| 精品香蕉99久久久久网站 | 丁香网站| 任你干线上免费视频有3吗| 激情淫乱男女| 丁香六月开心| 久色国产| 久久99久久99久久99人受| 欧美日韩aaa| 天天爱天天做天天爽| 日日夜夜噜噜爽爽| 丁香五月婷婷色情综合| 被强行糟蹋的女人A片| 亚洲av另类在线观看| 婷婷色五月天色| 级情九色| 深夜激情网| 91人人操.COM| 新激情五月天| 五月天堂婷婷| 亚洲激情综合免费| 九九在线精点品| 四季8848精品成人免费网站| 超碰二区| 狠狠干五码| 久色大| 天天操天天插| 在线91日韩| 亚洲成人网站在线观看| 九九亚洲视频| 亚洲成人在线播放| 五月婷免费视频| 精品国产va久久久久| av中文网站| 成人在线视频网| 人人人操 超碰| 日韩另类在线观看| 亚洲色综合性| 婷婷五月色| 野外99热| 久久机热这里只有| 色五月网址| 久久久精品婷婷五月天| 精品国产va久久久久| 婷婷六月久久综合导航| 成人精品视频99在线观看免费| 日本三日本三级少妇三级66| 五月天五月色| 色九九综合| 色综合色婷色基地| 丁香五月天激情网| 熟妇无码乱子成人精品| 婷婷操逼| 六月婷婷视频| 日本英国美国欧美亚洲国产精亚洲日韩精品在线观看 | 成人丁香| 99综合| 99热在线只有精品| 综合久久十三| 五月丁香六月婷婷不卡免费无码 | 亚洲亚洲人成综合网络| 日日噜人人人做人| 五月婷精品| 狠狠干狠狠操狠狠爱| 色五月丁香一区在线| 亚洲愉拍99热成人精品| 久久综合色五月| 五月丁香六月欧美| 日韩久久成人| 我爱宗和色| 这里只有精品免费视频| 欧洲毛片基地c区| 天天操婷婷| 影音先锋男人站,影音先锋男人色资源网,影音先锋AV最新资源站,影音先锋AV资源 | 成人视屏在线观看| 婷婷激情在线| 激情九色| 色五月色图| 九九热内射| 五月成人网天天| 五月大香蕉| 久久99久久99精品免视看婷| 色哟哟www| xxxx五月天色色| 色操b| 99精品偷自拍| 综合逼五月激情婷婷| 五月天激情婷婷| 色欲色天天香综合| 成人视频一区| 色婷婷黄色网络| 五月天婷婷色色| 久九色| 99在线播放视频| 日韩高清久久| 五月丁香综合激情| 色婷婷基地| 亚洲精品电影| 99热精品在这里| 新97人人上人人| 91大神操美女| 日本熟女视频一区二区| 亚洲无码99| 五月丁香六月日逼| 99五月香婷婷丁香在线视频| www.深爱激情| 色婷婷久久天天性爱| 日韩av在线免费观看| 日韩在线成人电影| 色婷婷久久综合| 97碰啪啪| 欧美内射AAAAAAXXXXX| 五月丁综合在线观看| 思思9久久| 99惹精品视频| 久久aaaaa| 日日夜夜干| 99热碰碰热| 99视频| 天天噜天天爱| 色五月综合网站| 激情五月婷婷开心网| 婷婷色基地在线看| 丁香色五月 97干| 五五月丁香花激情综合网| 午夜精品久久久久久久爽| 狠狠色综合五月| 色婷婷文字幕| 久久99网| 精品51XX| 欧美在线97| 任你草| wwwC0maV五月花| 久久午夜丁香| 99激情视频| 国际国外精品欧洲南美洲专区无码不卡| 蒲京久久无码视频| 人妻操逼视频| 丁香六月无码播放| 丁香六月婷婷久久综合八月| 久久99免费视频网站| 九九久久99精品免费观看www| 五月婷婷干干干| 无码激情AAAAA片-区区| 人人草人人爱| 第二色AⅤ| 婷婷九九色| 色婷婷亚洲| 婷婷四色五月| 国产操碰| 操碰99在线视频观看| 99免费综合网| 五月天啪啪网| 操骚货在线| 色情五月天婷婷| 婷婷丁香激情综合色情| 久热99视频在线观看| 狠狠久久婷五月| 一本道综合网| 亚韩在线视频| 色婷婷精| 国产毛片欧美毛片久久久| 五月婷在线观看| 五月丁香激情片| 激情超碰网| 直接看的av| 99r这里| 欧美噜噜噜草| 天堂五月婷婷| 激情综合视频| 无码AV免费精品一区二区三区 | 久久er九九| 3p久久| 日韩一级一片内射视频4K| 日本一毛片| 天天操天天谢| 日本va欧美va精品发布视频| 日韩综合网络男女香蕉a片| 婷婷丁香激情五月天色色色| 大香蕉AV在线| 激情五月丁香五月| 另类激情五月| 另类激情中文| 99乱视频| 一级操逼内射在线视频| 色色婷婷综合网| 青草网在线观看| 一级二级色大片| 96丁香婷婷九月蜜桃综合久久| 在线99热| 日本va欧美va国产激情| 婷婷丁香五月麻豆| 性色婷婷| 欧美乱码国产一级A片| 婷婷五月天六月| 激情五月综合免费| 五月激情网五月综合网| 婷婷激情丁香五月婷婷激情丁香五月婷婷 | 婷婷五月电影| 亚州操操| 伊人玖玖综合| 冬月かえでAV无码播放| 六月丁香成人| www,色综合| 丁香六月激情国产| 亚洲天堂九九九| 成人婷婷色综合| 免费看欧美成人A片无码| 国产成人网| 夜夜骑夜夜撸| 97av在线视频| 一本大道嫩草AV无码专区| 综合色99| 国产日韩精品SUV| 欧美精品999| www,天天干| www.久久爱| 综合久久综合| 亚洲久热| 婷婷五月天成人| 日韩成人免费电影| 色色色网站| 九九综合久久| 激情五月婷婷| 99青青草99| 影音先锋五月天婷婷丁香在线观看| av操B网站| 国产av第一专区| 久久综合55| 岛国资源站| 久久九九re热| 99精品热视频| 久久五月六月| 亚洲、热| 停婷丁五月在线| AV成人在线播放| 天天射综合网站| 久热免费| 色色三级视频| 丁香色五月AV在线| 成人视频一区| 激情综合五月色在线| 精品人妻久久久| 丁香六月亚洲综合| 亚洲综合另类| 青青草青青草五月天| 97干干干丁香| 丁香五月综合无码趴趴| 超碰国产在线| 99色视频在线观看| 五月丁香色婷婷| 丁香花五月天激情| 国产SUV精品一区二区6| 五月花激情网| 久热久色| 99热这里只有在线| 秋霞成人毛片一级A片| 五月天偷拍| 午夜伊人大香蕉| 激情啪啪五月| 久99视频在线观看| 日日夜夜久| 丁香伊人网| 99色色网| 国内久久久精品99| 久久黄色网扯| 久久久精品人妻| 天天综合色| 日本wwww在线| 五月婷婷综合激情| 激情开心五月天婷婷基地丁香社区| 97干在线播放| 国产午夜精品一区二区三区嫩草| 免费V片在线| 大香蕉九九| 久久久久久丁香五月| 97久久草草超级碰碰碰| 三级av在线| 一月婷婷色色| 中文字幕性爱丰满| 色色激情五月天| 色婷婷8| 色婷婷www| 五月丁香婷婷啪啪综合网| 五月丁香无码| 一级视频网址| 五月丁香激情五月天| 直接看的AV| 久久久久9| 天天se在线视频| 五月天a婷婷伊人| 六月婷婷综合激情| 97婷婷五月丁香| 天天做天天爱天天日| 欧美这里只有精品| 丁香五月婷婷啪啪视频| 五月丁香网视频| 99热这里有精品| 99噜噜噜在线播放| 97成人丁香婷婷| 婷婷八月丁香激情综合| 国产99久| 五月婷成人网| 天天爽夜爽| 91视频五月丁香| 在热视频精品| 国产肥白大熟妇BBBB视频| 综合啪啪| 色婷婷a v| 大香蕉久久久久久久久| 青草热视频这里只有精品| 天天骑天天操| 久草 天堂| 五月天激情婷婷| 九九爱精品网站| 国产精品噜噜在线视频| 久久99网站| 大香蕉五月丁香| 99在线免费视频| 精品无码片| 台湾佬天天日丁香婷婷五月天| 99久久9| 中文字幕在线日亚州9| 色婷婷丁香五月| 五月伊人婷婷999| 3www激情| 婷婷五月丁香四射| 日本激情五月天‘| 北条麻妃伊人 | 被强行糟蹋的女人A片| 久去色色| 欧美精品999| 九九日本视频| 色情五月综合婷婷| 玖玖伦理电影| 欧美经典片免费观看大全| 婷婷五月天改成什么了| 91狠狠色丁香婷婷综合久久精品| 国产噜一噜天天噜| 色婷五月| 五月天激情Av| 亚洲va久久久噜噜噜久久天堂| 亚洲另类久久| 亚州第一黄网| 99激情视频| 丁香九月激情久久| 婷婷综合97| 婷婷伊人综合中文字幕| 俺去也五月天婷婷| 噜噜噜噜噜久| 青草视频在线观看视频| 精品一区久热| 婷婷夜夜操| 亚洲AV永久无码影院黑人| 六月婷婷中文字幕| 96精品久久久久久久久| 九九人人操| 色狠狠五月天| 人妻熟人中文字幕一区二区| 激情五月视频| 大香蕉人人网| 色人久久| 五月丁香六月日逼| 欧美久久久中文字幕| 激情六月丁| 操操天堂| 国产成人精品一区二三区熟女在线| 艹| 六月丁香啪| 九九热啪啪| 久久九九怡红院| 青草青草视频2免费观看| 五月丁香六月婷婷综合网缴情| 日本一级大片| 色播五月网| 色99综合视频| 99日精品视频| 五月天激情小说网| 色婷婷色五月天| 大香蕉久久草| 99国产精品白浆在线观看免费| 99热精品在线免费观看| 九九Av| 激情久久伊人| 玖玖爱资源站| 色色婷婷综合网| 99久久精品国产色欲| 97福利视频| 久久五月天色| 激情美女五月天| 综合激情九月婷婷,激情综合婷婷中文字| 婷婷久久五月天丁香| 女人天堂av| 免费看片操逼| 亚洲视频在线观看| 停停五月色宗合| 亚洲天堂AV免费片| 久久9999| 亚洲网站观看视频| 久久久久久9| av在线色五月丁香婷区久| 五月天婷婷免费| www免费在线视频| 99re热在线视频| 色吊丝99| 亚洲五月天婷婷| 婷婷操婷婷干婷婷射| 亚州激情网| 97五月久久丁香婷婷| 又大又粗九一在线| 亚洲精品午夜国产va久久成人| www色中色综合| 欧美在线视频99| 婷婷六月色情| www.wuyuetian啪啪| 天天操天天操天天操天天操天天操 | 91视屏在线观看com.wwwvv| 六月丁香中文字幕| 香蕉曰比| 中字幕视频在线永久在线观看免费| 日韩在线99| 五月婷婷久草在线视频综合| 99热6这里之有精品| 五月丁香啪啪综合网| 色婷婷AV久久| 婷婷不干网| 99激情视频| 五月色丁香| 色视频五月天| 开心五月色婷| 激情的五月| 激情五月综合| 久久婷婷网| 人妻操日日| 超碰免费人人肏| 亚洲乱码精品久久久久..| 超碰免费人人| 成人精品人妻| 噜噜在线| 丁香桃色网| 伍月婷丁香花全集| 色五月天网| 久久视频婷婷视频| 激情精品久久| 久鲁鲁色网| 色婷婷XXXXX| 97干在线视频| 激情综合网五月丁香| 狠狠se| 亚洲成片在线观看| 一操久久| 亚洲超级碰| 蜜桃婷婷狠狠久久综合| 潮汕成人AV片在线| 婷婷五月激情视频网| 99热最新国内| 九色成人AV在线| 嫩草极品| 婷婷五月丁香基| 香蕉影院色| 5月丁香综合图区| 色噜综| 26UUU精品一区二区Com| 丁香婷婷啪啪啪| 人妻尝试久久久久久久久久久久| 五月婷深深爱激情网| 五月婷婷天天色| 91人人妻人人操| 婷婷五月天AV在线| 亚洲综合在线播放| 久久色五月| 91精品久久久久久久| 久操无码| 亚洲中文无码成人| 精品色情一区二区三区四区| 久久在这里有精品| hd五月婷婷在线| 五月激情综合深爱| 五月婷婷官网色| 中文AV网站| 久久色9| 婷婷色五月激情强奸四射| 久久综合五月天| 亚洲超碰在线| 久久精彩视频| 超PEN精品在线| 色婷婷色综合| 大香蕉九九热| 色情婷婷| 天天肏天天插| 婷婷五月天激情免费在线观看| 五月婷婷自拍视频| 丁香五月婷婷日本| 九九青青草成人| 久久婷婷亚洲| 色综啪啪网| 久久久人人操A V| 婷婷丁香花五月天| 久久视这里只有精品| 米奇影视资源婷婷狠狠色激情欧美五月丁香 | 五月婷婷黄| 99操碰| 狠狠色丁香99| 婷婷五月婷| www.yw尤物| 精品夜夜澡人妻无码AV| 婷婷色一二三区波多野结衣| 久久女人九九| 狠狠干婷婷| 五月天电影网| 超碰资源在线| 777影视理论片大全在线观看| 这里只有精品96| 日韩欧美一道四区中文字幕| www。五月天激情| 国产色五月| 丁香六月婷| 99色色| 中文字幕婷婷在线| 五月丁香综合啪啪啪啪啪| 五区毛片七区毛片| 激情99热| 91精选国| 婷婷五月亚洲综合| 天天爽天天摸| 国产精品久久..4399| 91干婷婷| 婷婷综合五月天| 久久99色色| 九九热九九| 婷婷丁香色五月天| 99在线精品观看99| 国产精品成人av在线观看春天| 成人丁香五月| 天天成人综合视频| 丁香婷婷色五月| 5月丁香综合图区| www久| 五月天婷婷影院影院观看| 亚洲中文乱字字幕在线永久| 国产探花一片区| 婷婷久久午夜网| 丁香五月婷婷五月| 一点色成人网| 亚洲中文字幕av| 婷婷色无码| 久99热| 五月天婷婷综合| 涩五月婷婷| 成人资源在线| 99日精品视频| 五月综合精品| 婷婷综合视频| 九热视频在线精品15| 思思久热6| 婷婷大香蕉| 操人视频91| 狠狠狠激情网| 天天综合网在线| 五夜丁香| 天天射色五月天| 欧美成人AAA片一区国产精品| 99riAV国产精品视频| 五月天影院| 国产成人精品一区二三区熟女在线 | 色五月丁香伊人五月| 丁香五月AV| 欧美综合123区| 狠狠插日日干撸| 影音先锋91网站在线观看| 九九热99视频| 日本九九视频| 色婷婷色丁香色欲av| www.人人操人人看人人想人人摸 人人人人操,COM | 狠狠狠夜夜夜| 欧美十二区| 99热日韩这里只有精品| 五月天桃色深爱网| 丁香五月网址| 久久婷婷内射| WWW,五月| 五月婷婷官网色| 九月婷婷激情久久| 丁香五月六月欧美| 五月婷三级片| 五月天a婷婷伊人| 99视频只有精品| 一区二区中文字幕| 思思热在线精品视频| 久久婷婷网| 色婷婷无吗| 九九亚洲视频| 五月婷婷久久网| 丁香婷婷成人在线播放| 欧美天堂婷婷日韩| 久色中文| 波多婷婷久久| 成人狠狠成人狠狠成人狠狠成人狠狠 | 少妇人妻丰满做爰XXX| 亚洲AV激情五月综合网| 99亚洲精品视频| 天天操天天日天天爱| 五月天综合| 天天爽爽日日做做| 91欧美| 亚洲精品操一操、噜一噜、摸一摸、爽 | 97欧美在线| 婷婷久久五月天| 久热99热| 夜夜爱伊人| 狠狠色综合网| 久久五月丁香| 激情精品久久| 九九婷婷五月天| 色情五月天A片| 婷婷五月天性爱视频| 婷婷五月天视频免费在线观看| 久久九精品| 久9视频| 丁香六月婷婷综情欧美| 五月天色色色| AAA亚洲AV| 婷婷五月天性爱视频| 玖玖午夜视频| 五月婷色色| AA片在线观看视频在线播放| 激情综合色| 色月丁| 色色五月天婷婷| 激情图片亚洲| 日韩人妻AV在线| 亚洲成人五月| 综合另类视频| 国产精品99久久久久久久女警| 天天操夜夜玩!| 美女91一起草| 五月天天天色| 婷婷五月天xxx| 99视频综合网| 国产97色在线| www.五月激情.com| 婷婷五月激情综合啪啪| 国产精品久久..4399| 五月社区丁香| 另类国产欧美视频| 大香网伊人久久综合| 天天综合色综合| 婷综合六月| 五月综合久久| 狠狠操在线视频| 久久精品五月天| 国产在线aaa片一区二区99| 深夜A片| 色9999日韩国产| 九九99精品视品| 色色综合激情| 中文字幕日韩无码制服诱或| 亚洲精品另类| 这里只有精品2| 婷婷草| 丁香久久| 五月婷婷久久爱| 久久五月激情| 婷婷丁香成人网址| 丁香五月首页| 五月丁香六月| 色婷婷综合视频| 五月婷婷综合热| 97人人操人人拍| www.超碰在线| 97久人人| 免费做A爰片77777| 婷婷色操| 日本熟女一区二区| 久热婷婷| 五月婷综合激情| 五月丁香六月激情综合| 91se在线观看| 色婷婷色五月综合| 丁香五月婷婷啪啪啪| 激情综合丁香| 五月激情小说| 涩婷婷五月天在线精品视频| 99综合99| 香蕉综合在线| 影音先锋91资源站| 婷婷丁香日韩五月| 操操啪| WWW.桔色成人.COM| 色综合综合网| 99热只有精品在线播放| 综合色网站| 精品成人在线| www.色婷婷| 色婷婷导航| 久久只有18视频| 丁香五月天欧美| 少妇丁香婷婷 | 五月丁香激情在线| 综合久久丁香婷婷,五月婷婷六月丁香,开心激情综合网,六月丁香在线观看,婷婷丁 | 亚洲在线视频321| 国产免费性爱| 天天干天天做| 操人91| 99视频九九热| 欧美色色色色色| 99热精品一区| 成人色站,在线视频,看片-SS1AV| 91一起艹| 亚州综合色| 一区二区传媒视频| 久婷狼色诱惑在线| 蜜桃成语时李时珍 免费| 久久怡红院| 91日韩在线| 99视频九九热| 久久999久久999久久999久久| 五月天激情站| 人人人操Av| 五月丁香影院| 色婷婷五月在线| 国产视频福利| 99热丁香五月| 亚州色综合| 色五月综合97| 六月婷婷AV| 91丨九色丨国产打屁股网站| 激情婷婷五月丁香啪啪啪| 99年操人人爽| 最近中文字幕大全免费版在线| 色婷婷五月天| 丁香五月手机在线| 色丁香久久| 五月丁香六月激情欧美综合| 日本色色视频| 五月天啪啪| 婷婷婷婷婷开心无码播放| 五月激情网站| 99在这里有精品| 激情综合激情五月一起草| 天天干天天叉| 狠狠色综合网站久久久久| 婷婷五月花西瓜| 激情婷婷网| 久色欧美| 99热网址| 97黑人精品区| 综合大香蕉| 五月丁香六月综合情在线观看| 成人午夜无码视频| 五月丁香婷婷福利| 亚洲五月天天| 色婷婷伦理| 五月六月激情| 五月天婷婷色综合| 99久久这里只有精品| 99在线免费视频| 六月丁香综合| 国产成人99久久亚洲综合精品| 五月丁香色色网| 超pen个人视频97| 伊人高清无码| 欧美日本99| 肏屄色播伊人97婷婷| 色色五月天网站| 婷婷成人网五月天| 伊人久久婷婷五月天激情四射| 啪啪啪五月天| 99网| 九九碰九九爱97超碰| 亚洲激情五月| 五月天丁香婷婷网| 五月亭亭色| av在线中文| 五月天六月天| 99re热免费观看视频精品| 99热这里只有精品4| 99久热在线精品| 激情婷婷五月天| 97干在线免费| 色色色综合色| 欧美99热| 日本高清综合网五月丁香| 欧美日韩成人一区二区| 99色在线视频| 丁香五夜激情四射夜夜夜| 五月天婷婷基地综合网| 亚洲色情免费网| 日韩1区2区| 午夜成人AV在线| 久久久99精品免费观看| 色综合久久综合| 99黄色性生活| 久久婷婷五月综合啪| 99精品热视频| 色综合色色| 热久免费视频9| 五月婷色| 99久久玖玖| 欧美精品999| 99欧美精品99日本精品| AV在线大香蕉| 翔田千里无码| 久月婷婷| 婷婷9月天| 99自拍视频网站| 六月婷色六月| 色~性~乱~伦~噜| 99久久精品免费精品国产_国产精品久久久久久_国产在线|日韩_久久国产精品电影 | 亚洲第一黄网| 人妻操在线看| 99婷婷| 色激情网| 丁香五月在线人妻| 色综合久久五月天| 国产亚洲精品AAAAAAA片 | 久久99婷婷| www.深爱激情| 五月天婷婷小说| 伊人久久大香天蕉亚洲特级| 黄涩毛片| 超碰狠狠操| 中文字幕av网站| 亚洲久久视频| 99色热视频| 五月丁小婷婷激情四射| 五月天激情四射| 99久在线精品99re8| 久久xxxx| 99婷婷国产最新视频| 色婷五月天激情| 无码少妇高潮喷水A片免费| 中文字幕,综合,91| 在线可以看的av网址| 久久精彩视频| 婷婷射综合| 深爱五月激情| 九月丁香久久网| 婷婷五月天另类视频| 9久热在线视频精品| 婷婷五月天大香蕉在线视频观看| 婷婷免费成人视频| 亚洲激情视频在线观看| 9热在线视频| 伊人大香蕉毛片| 99人人操人人操人人精| 婷婷视频在线| 欧美日本韩国亚洲| 色之综合网| 色私五月婷婷| a网站免费观看| 婷婷五月色情| 潮汕成人AV片在线| 欧美一区二区三区不卡影视| 丁香五月Av| 五月综合激情| 丁香五月成人网| 嫩模草| 精品综合久久久久久五月天| 91性高潮久久久久久久久| 五月丁香啪啪综合| 九九99热久久精品66中文字幕| 色爱爱综合网| 久久66成人网站| 国产一级片色色| 激情五月六月婷婷综合啪啪| 97干在线| 轮奸综合网| 婷香五月激情视频| 99热在线观看| 玖玖色综合| AV在线观看网站| 九九热中文| 嫩模aV在线| 大香蕉五月天婷婷| 铁牛TV人妻| 无码髙清| 婷婷五月香蕉| 五月丁香色婷婷色| 色综合中文色综合网| 97性视频| 丁香六月色婷婷| 五月婷婷三级| 99久re热视频精品98| 五月天婷婷丁香| 五月婷婷与六月丁香图片激情| 九月婷婷| 丁香五月六月久久综合 | 五月天丁香成人社| 五月天激情开心网| 免费在线观看av网站| 婷婷丁香综合成人| 婷婷五月天最新网址| 俺也高清无码高清视频| 久久99jiu9| 丁香五月天婷婷中文字幕| 在线你懂的亚洲欧| 五月丁香成人| 欧美天天草人人草| 依人大香蕉| 国产精品久久久久久五月天加勒比| 风流少妇A片一区二区蜜桃| 欧美日本一区二区三区| 久久综合综合综合| www.色婷婷.com| 激情婷婷在线中文字幕| 激情第四色| 色婷婷五月综合在线| 天天综合网色欲香| 五月丁香成人网| 色V狠狠的干| www久久久| 五月丁香六月婷婷婷婷| 激情五月狠狠喔| 免费黄色AV| www久久五月com| 亚洲第一成人AV| 欧美VA在线| 五月色丁香| 色五月婷婷在线| 丁香六月五月婷婷| 五月丁了香蕉综合| 91碰碰碰| 天天干天天玩天天夜天天射天天操天天日蜜臀少妇 | 99久久a线观| 人与禽A片啪啪| 婷婷五月综合激情免费| 九九综合九九| 97在线观视频免费观看| 俺五月| 91人人妻人人操| 欧美精品18| 天天夜夜操| 丁香花成人区| 色情综合| 色色亚卅| xxxx久| 日韩av一区二区在线/日产精品久久久| 亚洲人妻五月丁香婷婷| 97干视频在线| 国产SUV精品一区二区6| 五月天婷婷在线视频| 9 1超碰九色| 91人妻九色大屁股| 激情五月婷婷综合| 久热精品视频| 99无码超碰|