

Định nghĩa lớp
Lớp DifferentialDriveKinematics là một công cụ hữu ích để chuyển đổi giữa đối tượng vận tốc khung robot ChassisSpeeds và đối tượng vận tốc bánh xe DifferentialDriveWheelSpeeds, mà đối tượng này chứa vận tốc cho bánh trái và bánh phải của robot truyền động kiểu differential drive.
Tạo đối tượng Kinematics
Đối tượng DifferentialDriveKinematics được tạo bằng một tham số constructor bắt buộc, đó là:
trackwidth: khoảng cách giữa hai bánh trái và phải của robot differential drive.
Lưu ý:
trackwidth phải được cho bằng đơn vị mét (meters).
Chuyển ChassisSpeeds → Vận tốc bánh xe (DifferentialDriveWheelSpeeds)
Phương thức toWheelSpeeds(ChassisSpeeds speeds) được dùng để chuyển một đối tượng vận tốc khung robot (linear velocity + angular velocity) sang một đối tượng vận tốc bánh xe trái/phải.
Điều này hữu ích khi bạn có:
vxlà vận tốc tuyến tính (m/s),omegalà vận tốc góc (radian/s),
và cần tính ra:vận tốc trái và phải để điều khiển từng bánh.
Chuyển DifferentialDriveWheelSpeeds → ChassisSpeeds
Bạn cũng có thể dùng đối tượng kinematics để chuyển đổi ngược: từ vận tốc từng bánh sang vận tốc khung robot.
Phương thức toChassisSpeeds(DifferentialDriveWheelSpeeds speeds) giúp đạt điều này.
Giải thích nhanh thuật ngữ
Differential Drive: hệ truyền động với hai trục bánh motor, quay trái/phải để điều hướng.
Kinematics: các phép toán mô tả mối quan hệ giữa vận tốc robot và vận tốc từng bánh.
ChassisSpeeds: biểu diễn vận tốc tổng thể của robot (vx, vy = 0, omega).
DifferentialDriveWheelSpeeds: vận tốc trái/phải của robot differential.
Trackwidth: khoảng cách hai bánh trái — phải.

