-

开发者工作坊

发布区

five    发表于  2025-3-25 09:29:57 | 显示全部楼层 |阅读模式 105 0
勇艺达机器人 SDK - API 使用说明
适用机型:S1 pro系列
(详细说明、测试文件请联系开发联调)



1、导入 SDK 文件        ……………………………………1
1.1        Android Studio 环境        ……………………………………1
1.2        配置权限        ……………………………………2
2、YYDRobotSDK:初始化说明        ……………………………………2
2.1        初始化说明        ……………………………………2
2.2        初始化及销毁        ……………………………………2
3、YYDRobotSDK:运动 API 说明        ……………………………………3
3.1        运动参数设置        ……………………………………3
3.2        机器人运动接口        ……………………………………    3
3.3        运动回调        ……………………………………4
4、YYDRobotSDK:检测、感应、数据回调 API        ……………………………………4
4.1 检测、感应、数据回调        ……………………………………4
5、YYDRobotSDK:工模与防跌 API        ……………………………………5
5.1        打开工厂模式        ……………………………………5
5.2        防跌落开关        ……………………………………5
5.3        设置呼吸灯        ……………………………………5
6、其他接口        ……………………………………6
6.1        获取机器人唯一序列号        ……………………………………6
6.2        点亮屏幕        ……………………………………6
6.3        熄灭屏幕        ……………………………………6
6.4        关机        ……………………………………7
6.5        机器人表情接口        ……………………………………7
6.6        获取机器人名称        ……………………………………7
6.7        打开唤醒功能        ……………………………………8
6.8        关闭唤醒功能        ……………………………………8
6.9        关闭唤醒功能        ……………………………………8
6.10        唤醒(开始语音识别)        ……………………………………8
6.11        取消唤醒(关闭语音识别)        ……………………………………8
6.12        打开MIC录音        ……………………………………8
6.13        关闭MIC录音        ……………………………………8
6.14        发音功能        ……………………………………9



1、导入 SDK 文件
YYDRobotSDK 有两个 API : YYDRobotSDK(用于功能控制) , YYDRobotCode (常量)

1.1 Android Studio 环境 aar 文件拷贝到 Android 工程中的 libs 目录,如果没有这些目录,请新建目录。aar 包的名字以实际提供的 SDK 为准!)

图片1.png

配置权限在 AndroidManifest.xml 中配置以下权限:
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
2、YYDRobotSDK:初始化说明初始化说明由于 YongRobotSDK 采用 AIDL 接口方式提供服务,一定要先调用 YYDRobotSDK.init 方法,并确保回调成功。初始化及销毁
方法名
void init(Context context, InitCallback initCallback)
作用
初始化 SDK
参数
context: 全局上下文
initCallback: 初始化回调接口
返回值

说明
连接到远程服务,初始化资源
方法名
void destroy()
作用
销毁 SDK
参数

返回值

说明
断开远程服务,释放资源
3、YYDRobotSDK:运动 API 说明运动参数设置
方法名
void setDriveType(int type)
作用
设置当前马达当前驱动类型
参数
type
DRIVE_BY_TIME 按时间参数运动【毫秒】
DRIVE_BY_DISTANCE 按距离参数运动【厘米】
返回值

说明
可以设置按时间,还是按距离进行运动【使用运动接口前需设置】
方法名
void setSpeed(int speed)
作用
设置马达当前速度
参数
speed
马达运动速度[1, 100]
返回值

说明
1<=speed<=100【使用运动接口前需设置】
机器人运动接口
方法名
int robotForward(int time_distance)
作用
机器人向前移动
参数
time_distance:前进的时间或距离
返回值
返回大于 0:成功。-1:失败。-2:串口升级中。-3:远程服务绑定失败
说明

方法名
int robotBack(int time_distance)
作用
机器人向后移动
参数
time_distance:后退的时间或距离
返回值
返回大于 0:成功。-1:失败。-2:串口升级中。-3:远程服务绑定失败
说明

方法名
int robotTurnLeft(boolean isSingleWheel, int time_distance)
作用
机器人向左转
参数
isSingleWheel true 左电机静止,右电机前进
false 左电机后退,右电机前进
time_distance 左转的时间或距离


返回值
返回大于 0:成功。-1:失败。-2:串口升级中。-3:远程服务绑定失败
说明

方法名
int robotTurnRight(boolean isSingleWheel, int time_distance)
作用
机器人向右转
参数
isSingleWheel true 右电机静止,左电机前进
false 右电机后退,左电机前进time_distance 右转的时间或距离
返回值
返回大于 0:成功。-1:失败。-2:串口升级中。-3:远程服务绑定失败
说明

方法名
int robotMoveStop()
作用
机器人停止运动
参数

返回值
返回大于 0:成功。-1:失败。-2:串口升级中。-3:远程服务绑定失败
说明

运动回调
方法名
void setMoveCallback(YYDRobotSDK.MoveCallback moveCallback)
作用
获取运动结束回调
参数
moveCallback

void onMoveStop();


返回值

说明

4、YYDRobotSDK:检测、感应、数据回调 API4.1 检测、感应、数据回调
方法名
void setSDKCallback(YYDRobotSDK.SDKCallback sdkCallback)
作用
获取检测、感应及各种数据回调
参数
sdkCallback

void onAudio(byte[] audio, int audioLen);
audio: 原 始 音 频 数 据
audiolen: 原始音频数据长度



void onReceive(int cmd, String msg); cmdmsg 对应值如下:
// 触摸唤醒
RECV_SENSOR_WAKE_UP = 0; 无 msg
// 触摸左肩
RECV_SENSOR_LEFT_ARM = 1; 无 msg
// 触摸右肩
RECV_SENSOR_RIGHT_ARM = 2; 无 msg
// 触 摸 双 肩RECV_SENSOR_LEFT_RIGHT_ARM = 4; 无 msg
// 唤醒结果的回调
RECV_VOICE_WAKE_UP = 6; msg 为 :
{"angle":15,"beam":0,"id":0,"score":18} Angle 为角度
Score 为识别度
// 紧急按钮
RECV_SENSOR_SOS = 7; 无 msg
//语音识别结果
RECV_NLP_ASR_RESULT = 127; msg为识别到的文字结果
//AIUI进入休眠(监听结束)
RECV_AIUI_SLEEP = 50
//检测到后端点(监听结束)
RECV_STOP_VAD = 20


返回值

说明

5、YYDRobotSDK:工模与防跌 API打开工厂模式
方法名
void startFactory()
作用
打开工厂模式
参数

返回值

说明

防跌落开关
方法名
void setFallOn(boolean isFallOn)
作用
打开或关闭防跌落开关
参数
isFallOn
true 打开防跌落开关false 关闭防跌落开关
返回值

说明

设置呼吸灯
方法名
void setLedLight(boolean isOnOff, String desc, int color, int frequency)

作用
设置呼吸灯
参数
isOnOff
true 打开呼吸灯false 关闭呼吸灯
desc 打开呼吸灯的功能描述,不能为空,且要和关闭的描述一致
color 设置的颜色,可选值如下:
LED_COLOR_RED = 1; // 红 色LED_COLOR_GREEN = 2; // 绿 色LED_COLOR_BLUE = 3; // 蓝 色
frequency
LED_TWINKLE = 2; // 闪 烁
LED_ALWAYS_ON = 4; // 常亮
返回值

说明

6、其他接口获取机器人唯一序列号
方法名
String getRobotID()
作用
获取机器人唯一序列号
参数

返回值
机器人唯一序列号
说明
组成为:机器人型号 + 机器人 ID 号 + 机器人 SID 号
点亮屏幕
方法名
void turnScreenOn()
作用
点亮屏幕
参数

返回值

说明

熄灭屏幕
方法名
void turnScreenOff()
作用
熄灭屏幕
参数

返回值

说明

关机
方法名
void shutdown()
作用
关机
参数

返回值

说明

机器人表情接口
方法名
void startOnceExpression(String expression, boolean isQuitExpression)

作用
开始单次表情

参数
expression:表情常量【具体取值参见 FacePresenter
isQuitExpression:结束是否退出表情,true 退出,false 恢复到初始表情
返回值

说明

方法名
void startLoopExpression(String expression, long durationTime, boolean isQuitExpression)

作用
开始循环表情

参数
expression:表情常量【具体取值参见 FacePresenter
durationTime
isQuitExpression:结束是否退出表情,true 退出,false 恢复到初始表情
返回值

说明

方法名
void stopExpression()

作用
结束当前表情

参数

返回值

说明

获取机器人名称
方法名
String getRobotName()
作用
获取机器人的名称
参数

返回值
机器人的名称
说明
组成为:机器人名称
打开唤醒功能
方法名
void enableWakeup()
作用
打开唤醒功能
参数

返回值

说明

关闭唤醒功能
方法名
void disableWakeup()
作用
关闭唤醒功能
参数

返回值

说明

关闭唤醒功能
方法名
void disableWakeup()
作用
关闭唤醒功能
参数

返回值

说明

唤醒(开始语音识别)
方法
YYDRobotSDK.sendCommand(35, null);
作用
开始语音识别,识别结果见【语音识别结果】
参数

返回值

说明
备注:实现持续监听可利用当前给出的接口及回调,自行实现,如利用【监听结束,监听结束1】时,进行【唤醒】
取消唤醒(关闭语音识别)
方法
YYDRobotSDK.sendCommand(506, null);
作用
关闭语音识别
参数

返回值

说明

打开MIC录音
方法
YYDRobotSDK.sendCommand(25, "true");
作用
关闭语音识别
参数

返回值

说明

关闭MIC录音
方法
YYDRobotSDK.sendCommand(25, "false");
作用
关闭语音识别
参数

返回值

说明

发音功能
方法名
void startTTS(String text)
void startTTS(String text, SynthesizerCallback callback)
作用
机器人的发音功能
参数
text 要发音文字
callback 发音的回调
返回值

说明
SynthesizerCallback{ void OnBegin() void OnPause() void OnResume()
void OnComplete(Throwable e, String tag)
void OnSpeakProgress(int percent, int beginPos, int endPos)
}
其中,percent 是当前播放的百分比,beginPos 是当前播放的开始索引,endPos 是当前
播放的结束索引
7、常量 YYDRobotCode
以下常量是 YYDRobotCode 的静态成员,直接用类名 YYDRobotCode 调用
类型
常量
作用
String
DRIVE_BY_TIME
马达运动驱动类型:运动时间
String
DRIVE_BY_DISTANCE
马达运动驱动类型:运动距离
int
RECV_SENSOR_WAKE_UP
触摸感应位置:肚子
int
RECV _SENSOR_LEFT_ARM
触摸感应位置:左肩
int
RECV _SENSOR_RIGHT_ARM
触摸感应位置:右肩
int
RECV _SENSOR_LEFT_RIGHT_ARM
触摸感应位置:双肩
int
RECV _VOICE_WAKE_UP
唤醒后的数据回调
int
LED_COLOR_RED
呼吸灯为红色
int
LED_COLOR_GREEN
呼吸灯为绿色
int
LED_COLOR_BLUE
呼吸灯为蓝色
int
LED_TWINKLE
呼吸灯为闪烁
int
LED_ALWAYS_ON
呼吸灯为常亮
8、常量 FacePresenter
以下常量是 FacePresenter 的静态成员,直接用类名 FacePresenter 调用
类型
常量
作用
String
FACE_ACTION_INIT
初始化
String
FACE_ACTION_AFRAID
害怕
String
FACE_ACTION_ANGRY
愤怒
String
FACE_ACTION_CRY
哭泣
String
FACE_ACTION_FIGHT
加油
String
FACE_ACTION_COOL

String
FACE_ACTION_LAUGH

String
FACE_ACTION_LEARN
学习
String
FACE_ACTION_MENG
卖萌
String
FACE_ACTION_KISS
亲亲
String
FACE_ACTION_SLEEP
睡觉



String
FACE_ACTION_HUNGRY
饥饿
String
FACE_ACTION_INNOCENT
无辜
9SDK 版本说明
作者
勇艺达
SDK 版本
YYDSDK_V1.3.0
勇艺达机器人 SDK - API 使用说明

您需要登录后才可以回帖 登录 | 立即注册

Archiver|手机版|小黑屋|关于我们

Copyright © 2001-2021, Tencent Cloud.    Powered by ElderAsk! X3.5( 粤ICP备15106925号-4 )

合作电话:13808831717 合作邮箱:service@robo1024.com

GMT+8, 2025-4-29 01:40 , Processed in 0.107707 second(s), 36 queries .

 
 
微信客服

添加微信客服