网上有人将大疆的遥控器模拟成了xbox手柄。他们将大疆N1这种遥控器连接电脑后,通过端口(com口)读取到了他们操控信息。项目地址:https://github.com/IvanYaky/DJI_RC-N1_SIMULATOR_FLY_DCL?tab=readme-ov-file
ios18以后,苹果支持有线的方式连接使用xbox手柄。所以有没有办法在苹果手机上把大疆的手柄模拟成xbox手柄以获取大疆遥控器的控制信息。
大疆官方虽然提供了一个移动设备的sdk用于读取大疆无人机遥控器的信息,但是无法上架应用市场。所以我们在寻找方案怎么才又能接入大疆的遥控器,又能上架应用市场呢?如果哪位可以提供方案,必有酬谢。
苹果手机不使用大疆sdk怎么获取遥控器控制信息或如何接入大疆sdk并且成功上架sdk
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
29条回答 默认 最新
阿里嘎多学长 2024-11-14 22:03关注获得0.40元问题酬金 阿里嘎多学长整理AIGC生成,因移动端显示问题导致当前答案未能完全显示,请使用PC端查看更加详细的解答过程
大疆遥控器控制信息获取方法
问题分析
用户想知道如何在不使用大疆 SDK的情况下获取遥控器控制信息,并且将其与苹果手机集成。
解决方案
根据用户提供的内容,我们可以看到有人已经成功将大疆 N1 遥控器模拟成了 Xbox 手柄,并通过端口(COM口)读取到了控制信息。为了实现这个目标,我们可以参考以下步骤:
- 收到遥控器信号:使用串口通信库(例如 Arduino 的 Serial communication 或 iOS 的 Core Serial)读取遥控器发送的信号。
- 解析遥控器信号:使用编程语言(例如 C++ 或 Swift)解析读取到的信号,以获取控制信息(例如加速度、方向、按钮状态等)。
- 实际控制 drone:使用 iOS 的 CoreMotion 或其他库来控制 drone 的移动。
代码示例( Swift )
import CoreMotion class Verifier : NSObject { let motionManager = CMMotionManager() func startVerifying() { motionManager.startAccelerometerUpdates(to: .main) { [weak self] (data, error) in if let data = data { // 解析加速度、方向等控制信息 print("Acceleration: \(data.acceleration)") print("Direction: \(data.direction)") } } } }需要注意的是,这只是一个简单的示例代码,实际实现中可能需要更多的逻辑和处理。
结论
本文提供了一个简单的解决方案,以便在不使用大疆 SDK的情况下获取遥控器控制信息,并将其与苹果手机集成。然而,具体实现仍然需要您自己编写代码来解析遥控器信号和控制 drone。
参考资源
- https://github.com/IvanYaky/DJI_RC
- Apple Developer Documentation: Core Motion Framework
Tag: [ios]
解决 无用评论 打赏 举报