# KOI串口指令文档 这个串口文档指令主要个给针对开发者用户和发烧友看的,普通用户请略过。 ## 调试软件 ![](KOISerialCMD/02.png) 推荐调试工具:UartAssist.exe 优势:小,绿色版本 调试后续:串口调通后,你可以用任意带串口的板子去控制KOI(如Arduino、树莓派、EV3) ## 插上KOI ![](KOISerialCMD/04.png) 方式1:用电脑的USB连接KOI ![](KOISerialCMD/03.png) 方式2:用USB串口板子(如CH340或者CP2102灯)连接KOI的4P端子(注意tx和rx是交叉线连接) ## 串口设置 ![****](KOISerialCMD/01.png) 打开串口工具后,按照图上进行设置,串口波特率为115200,其他都是常规设置。 ## 发送指令注意事项 ![](KOISerialCMD/05.png) 输入指令后,必须加入换行符!! ## KOI 串口指令说明 ### 基本 * K0 显示版本号 (并且退出当前所有运行中模式) 》K0 返回:K0 KOI COMM 0.43 当前版本号为0.43 * K1 显示PNG图片 》K1 name.png 返回:屏幕显示name.png 3秒,自动关闭 * K2 name.png 执行截图 》K2 name.png 返回:截图当前屏幕,以name.png保存在内存卡中,屏幕出现字符串Save name.png。若无内存卡则提示保存失败。 * K4 屏幕打印字符串,注:打印字符串先设置坐标 》K4 x y 1000 HelloWorld 返回:在屏幕的(x,y)坐标显示HelloWorld,1000毫秒。(xy为字符串的左上方) * K6 设置屏幕方向,0为镜头前置模式,1位镜头后置模式 》K6 0 返回:无参数返回,0时图像为正,1时图像为倒立(参考系:正对屏幕,摄像头朝天) ### 视觉追踪 * K10 圆形追踪+阈值(值越大,识别难度越大,识别误差越小) 》K10 3000 返回:K10 x y r (x,y为圆心坐标,r为圆半径) * K11 矩形追踪+阈值(值越大,识别难度越大,识别误差越小) 》K11 返回:K11 x y w h (x,y为矩形坐标,wh为矩形的宽高) * K16 颜色块追踪,学习中心颜色 》K16 返回:屏幕中央出现绿框,请把识别的颜色放在绿框位置,识别颜色需要比绿框大。等待学习成功。K16一般为K12或者K15的前置操作。 * K12 线条追踪, 需要颜色校正 》K12 返回:K12 x1 y1 x2 y2 使用前请使用K16 * K15 颜色块追踪 》K15 返回:K15 x y w h(x,y为矩形坐标,wh为识别到色块的宽高) 使用前请使用K16 ### 扫码 * K20 QR code扫码 》K20 返回:二维码信息(尽量让二维码占满屏幕整个画面,且环境明亮,无阴影) * K22 条形码 》K22 返回:条形码信息(尽量让条形码占满屏幕整个画面,且环境明亮,无阴影) * K23 AprilTag 追踪 》K23 返回:K23 a x y(a为Apriltag的ID,x,y为Aprilt的中心坐标) ## 人脸识别 - K30 加载人脸模型 (启动kpu,加载yolo人脸模型) 》K30 返回:屏幕出现黄色字符“Load FACE model”,yolo人脸模型加载成功 - K31 加载人脸模型 (启动kpu,加载yolo人脸模型) 》K31 返回:K31 x y(识别到人脸后,人脸会以绿色框框圈出,x,y为人脸的中心坐标) ## 特征分类 - K40 初始化分类器 (kpu启动和预加载mobilenet) 》K40 返回:屏幕出现黄色字符“Reset all class”,特征分类器初始化成功 - K41 添加标签+a (a为1~20) 》K41 a 返回:屏幕出现黄色字符“Tag:1/100[a]”,特征分类标签添加成功。 - K42 分类判断 》K42 返回:K42 a 并且KOI屏幕出现黄色字符“class a”。特征分类会给出最相似的分类 - K43 保存当前模型和标签 》K43 xxx.bin 返回:KOI屏幕出现黄色字符“Save xxx.bin”。特征分类会给出最相似的分类 - K44 加载内存卡中模型和标签(即.bin文件) 》K44 xxx.bin 返回:cls 20。KOI屏幕出现黄色字符“Reset all class”。加载.bin文件前,KOI调用K40后,再加载.bin文件。 ## 录音播放 录音播放功能必须要先插好内存卡!再给KOI上电。 - K61 录音持续3**秒** 》K61 xxx.wav 返回:KOI屏幕出现黄色字符“Recording”。这时候就应该向麦克风说话。 - K62 录音持续3秒 》K62 xxx.wav 返回:无,KOI进行播放xxx.wav音频,音频不局限于录制的,可以是内存卡上的wav音频 ## IOT - K50 加入当前路由器网络(例如小喵办公室2.4G路由名称是Kittenbot,密码是1234578) 》K50 Kittenbot 12345678 返回:K50 192.168.0.XXX(这个IP是由路由器分配的,如果连接上)KOI屏幕出现黄色字符,你连上路由器,路由器给你分配的IP * K51 连接IOT服务器(可以用Kittenblock建立本地服务器 192.168.0.127) 》K51 192.168.0.127 KOI_CC 返回:无。但在服务器端中已经显示这个设备上线了。 Kittenblock建立本地服务器: ![](KOISerialCMD/06.png) - K52 订阅iot话题 +topic 》K52 topic 返回:无。但在服务器端中已经显示这个设备订阅的话题 - K53 广播话题内容+topic+data 》K53 topic data 返回:无。但在服务器端中这个话题内容已经更新了 - K55 读取话题内容+topic 》K55 topic 返回:K55 topic data - K54 显示IP 》K54 返回:K50 192.168.0.114(KOI屏幕出现黄色字符“IP:192.168.0.114”) - K51 设置MQTT的一些常用参数 》K51 host cid port user pass 或者 K51 host cid port @param host Mqtt host; eg: iot.kittenbot.cn @param cid Client ID; eg: clientid @param port Host Port; eg: 1883 @param user Username; eg: user @param pass Password; eg: pass 返回:无