测试已测试 | ✗ |
Lang语言 | SwiftSwift |
许可证 | MIT |
发布最后发布 | 2017年7月 |
SwiftSwift 版本 | 3.0 |
SPM支持 SPM | ✗ |
由 Joel Stewart 维护。
依赖项 | |
SwiftySensors | ~> 0.3 |
Signals | ~> 4.0 |
此 Swifty Sensors 插件为 Kinetic 传感器(inRide 和 Smart Control)添加服务和特征。它使用 Objective C Kinetic SDK(包含)来序列化和反序列化来自 Kinetic 传感器的消息。需要一个 API 键(在 Kinetic Dev Portal 创建账户后创建一个免费的 API 键)。
将 Sources
目录中所有 swift 文件复制到您的项目中。同时复制 Headers 和 Libraries 目录。根据您的项目包括适当的库(macOS 的 libKineticSDKCocoa.a)。您可能需要添加一些包含到 Bridging Header 的头文件中(如果您还没有创建一个的话)。
此库目前不支持 Swift 包管理器。它依赖于 Kinetic 的 Objective C SDK 库,而 Swift 包管理器目前不支持 Objective C 库。
配置您的传感器管理器时,只需将 Kinetic 服务添加到扫描列表中即可。
import SwiftySensors
import SwiftySensorsKinetic
// Launch the Kinetic SDK with your API Key
KineticSDK.launch("INSERT API KEY HERE")
// Customize what services you want to scan for
SensorManager.instance.setServicesToScanFor([
CyclingPowerService.self,
...
InRide2Service.self,
SmartControlService.self
])
Kinetic inRide2 许多方面都与 CyclingPowerService 类似,具有一些额外数据和功能(如校准)。
Kinetic Smart Control 服务提供了控制训练器的方法
// ERG Mode
let targetWatts: UInt16 = 150
smartControlService.setResistanceErg(targetWatts)
// Simulation Mode
let weight: Float = 85 // kgs
let rollingResistance: Float = 0.004 // asphault
let windResistance: Float = 0.6 // typical human
let grade: Float = 5 // ugh
let windSpeed: Float = 3 // meters / second headwind (negative for tail)
smartControlService.setSimulationMode(weight, rollingResistance: rollingResistance, windResistance: windResistance, grade: grade, windSpeed: windSpeed)
// Static Brake
let brakePercent: Float = 0.5 // 0 to 1
smartControlService.setResistanceBrake(brakePercent)
// Fluid Mode
let fluidMode: UInt8 = 2
smartControlService.setResistanceFluid(fluidMode)
无。
需要校准演示的 iOS 应用示例。