如何将 USB Joystick Gamepad 数据输出转换为角度
How to convert USB Joystick Gamepad data output to angle
我目前正在与 raspberry pi 3 和 Python 一起从事家庭自动化项目。我的目标是通过 Thrustmaster T16000M USB 操纵杆控制电机伺服系统,但我坚持将操纵杆值“转换”为以度为单位的角度。
例如,X 轴从 0 到 16383。但我想将其转换为从 0° 到 180°。我的问题是以度为单位的角度值与操纵杆值之间的映射。我的印象是我必须使用带有“光标”的列表,例如确定:Joytick 为 0° = 0,Joytick 为 90° = 8192,Joystick 为 180° = 16383.
我能理解其中的逻辑,但实现起来比较复杂,因为我不知道这是否是正确的方法,尤其是如果可能的话。
我也看了vector,matrices之类的,搞了一天,逻辑能看懂了,但是实现起来比较复杂,不知道方法对不对,特别是如果可能的话。我对如何去做有点困惑。
如果我没有误解你的问题,这应该很简单。
x_max = 16383
output_max = 180
# Assume x is an arbitrary value between 0 and x_max
output = x / x_max * output_max
就是这样。输出将是 0 到 16383 之间的 x 值映射到 0 到 180 的比例。
我目前正在与 raspberry pi 3 和 Python 一起从事家庭自动化项目。我的目标是通过 Thrustmaster T16000M USB 操纵杆控制电机伺服系统,但我坚持将操纵杆值“转换”为以度为单位的角度。
例如,X 轴从 0 到 16383。但我想将其转换为从 0° 到 180°。我的问题是以度为单位的角度值与操纵杆值之间的映射。我的印象是我必须使用带有“光标”的列表,例如确定:Joytick 为 0° = 0,Joytick 为 90° = 8192,Joystick 为 180° = 16383.
我能理解其中的逻辑,但实现起来比较复杂,因为我不知道这是否是正确的方法,尤其是如果可能的话。
我也看了vector,matrices之类的,搞了一天,逻辑能看懂了,但是实现起来比较复杂,不知道方法对不对,特别是如果可能的话。我对如何去做有点困惑。
如果我没有误解你的问题,这应该很简单。
x_max = 16383
output_max = 180
# Assume x is an arbitrary value between 0 and x_max
output = x / x_max * output_max
就是这样。输出将是 0 到 16383 之间的 x 值映射到 0 到 180 的比例。