项目介绍:

本项目使用su-03t语音模块进行语音识别,将识别到的结果发送给香橙派,再由香橙派对语音模块发送的结果进行解析,最后发送指令对手机进行控制。

硬件介绍:

①:香橙派作为主控

②:语音识别模块,进行语音识别

③:一台安卓手机(鸿蒙系统也可)

su03t语音模块

1.SU-03T简介

SU-03T 是一款低成本、低功耗、小体积的离线语音识别模组,能快速应用于智能家居,各类智能小家电,86 盒,玩具,灯具等需要语音操控的产品。通过串口通信,可以实现SU-03T模块和开发板的交互,如:OrangePi PC+、STM32等。从而控制OrangePi PC+的外设(如果将我们的手机连接到OrangePi,也可以实现对手机的控制)

基本套餐应包括喇叭+模块主板+咪头(就是喇叭)+电源线,大概20元左右。(不需要拍300+的烧录器套餐。另外,买回来的模块并没有焊好针脚,需要自己焊接针脚。自备焊烙铁、锡丝等)

语音模块配置

①:登录智能公元平台(智能公元/AIOT快速产品化平台)并注册。

②: 创建产品,选择“快速智能化及创建产品”

已选产品选择“纯离线方案”

已选模组选择“SU-03T”

产品名称:灯

选择语言:中文

命令配置:

2. 记录下相关指令以及上图的识别词条,方便固件烧写后的调试。通过识别到的语音指令来控制语音模块向香橙派发送十六进制数(字符转换Ascall码)让香橙派进行指令判断来对手机进行操控。

3.设置完成之后等待生成和下载SDK

4.固件烧写

方法:使用CH340模块连接电脑,先电机烧录再上电即可进行烧录

香橙派配置:

什么是ADB

安卓调试桥(ADB - Android Debug Brige)是一个客户端-服务器的(CS)端程序。其中客户端是用来操作电脑的,服务端是Android设备。

ADB延时Android SDK中的一个工具,可以直接操作管理Android模拟器或者真实的Android设备,也就是Android程序的debug工具。

ADB安装以及udev热插拔

  1. 先安装adb(安卓调试桥)用于控制安卓手机。安装命令:sudo apt-get install adb
  2. dmseg能查看到手机接入的信息,但是输入 adb devices会出现提醒dinsufficient permissions for device: user in plugdev group; are your udevrules wrong?
  3. 配置文件,以支持USB设备的热插拔,支出UDEV的机制在/etc/udev/rules.d 文件夹下创建规则文件cd /etc/udev/rules.d/sudo vim 51-android.rules
  4. 在文件中添加内容 SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", MODE="0666"
  5. 设备完成之后输入:adb shell进入adb

  1. 在开发者选项中,打开USB调试,重新热插拔手机
  2. 手机弹出调试提醒,电机确认手机调试模式

用shell指令来操作手机屏幕,模拟手动滑动屏幕

  1. adb shell input swipe 540 1300 540 500 100 向下滑动540是水平的,1300是竖直方向,下 是500
  2. adb shell input swipe 540 500 540 1300 100 向上滑动
  3. adb shell "seq 3 | while read i;do input tap 350 1050 & input tap 350 1050 &sleep 0.01;done;" 点赞
  4. adb shell input keyevent 26 锁屏

#include <stdio.h>
#include <string.h>
#include <errno.h>
#include <pthread.h>
#include <wiringPi.h>
#include <wiringSerial.h>
#include <stdlib.h>int fd;//定义全局变量文件索引,linux下一切皆文件void *sendxiancheng()//发送线程
{char *sendbuff;//发送缓冲区sendbuff = (char *)malloc(32);//为缓冲区开辟空间while(1){memset(sendbuff, '\0', 32);scanf("%s", sendbuff);while(*sendbuff){serialPutchar (fd, *sendbuff) ;//发送字符sendbuff++;//位置偏移}}}void *receivexiancheng()//接收进线程
{char a;while(1){while (serialDataAvail (fd))//判断是否接收到数据{a = serialGetchar(fd);switch(a){case 'N':printf("下一个\n");system("adb shell input swipe 540 1300 540 400 100");break;case 'P':printf("上一个\n");system("adb shell input swipe 540 400 540 1300 100");break;case 'Z':printf("点赞\n");system(" adb shell \"seq 4 | while read i;do input tap 350 1050 & input tap 350 1050 & sleep 0.01;done;\"");break;case 'Q':printf("退出,并锁屏\n");system("adb shell input keyevent 26");break;}}}}int main ()
{int count ;pthread_t sendfd;//进程标识pthread_t recfd;pthread_create(&sendfd, NULL, (void *)sendxiancheng, NULL);//创建线程pthread_create(&recfd, NULL, (void *)receivexiancheng, NULL);if ((fd = serialOpen ("/dev/ttyS5", 115200)) < 0)//判断串口设备是否打开,使用串口5所以是tty5{fprintf (stderr, "Unable to open serial device: %s\n", strerror (errno)) ;return 1 ;}while(1){}printf ("\n") ;return 0;
}

最终效果:

使用语音指令可以对手机进行操作。

香橙派借助语音模块实现语音刷抖音相关推荐

  1. 【Orangepi Zero2 全志H616】语音刷抖音 / 手机连接Linux热拔插相关

    目录 一.手机连接Linux步骤 二.adb控制指令 三.基于Linux串口实现语音刷抖音 1.语音模块控制详情 2.代码实现 一.手机连接Linux步骤 1.把手机接入开发板 2.安装adb工具,在 ...

  2. 树莓派开发——语音控制adb刷抖音

    1.综述 利用语音模块,adb 控制刷抖音小项目,增长了相关方面认知(无什么实际作用) 2.语音模块 这里使用的语音模块为 YS-LDV7语音识别模块 通过阅读官方代码,修改所需识别的词条: (1)增 ...

  3. 疫情当下,你是在家里躺着刷抖音?还是在做这些?

    2020年本来可以是很开心的一年 没想到一开头就给了我们一个重重的一击 疫情的出现让我们非常的恐慌 新型病毒肺炎让我们无处可躲 原来热闹的新年因为疫情让我们逼不得已只能待在家里 走亲访友更是不可能的 ...

  4. Win11承诺的支持安卓App终于更新了!大神教你如何在国区使用,上班刷抖音不是梦...

    晓查 发自 凹非寺 量子位 | 公众号 QbitAI 今天可能是操作系统历史上最神奇的一天,因为Windows和Android在同一天实现了互相套娃. 微软承诺的"Windows 11支持A ...

  5. 刷抖音对手机有什么要求_6频段全面5G手机 nova6 5G成新年换机最佳之选

    随着2020年的到来, 5G这趟高速列车将会"全面发车",5G网络也将会为我们带来全新的生活方式.对于追赶潮流的年轻消费者们来说,自然也想尽早坐上这趟5G列车,尝试一番5G网络.因 ...

  6. python刷抖音_用Python生成抖音字符视频!

    抖音字符视频在去年火过一段时间. 反正我是始终忘不了那段极乐净土的音乐... 这一次自己也来实现一波,做一个字符视频出来. 主要用到的库有cv2,pillow库. 原视频如下,直接抖音下载的,妥妥的水 ...

  7. 刷抖音看到 Python 工程师的工资条后,我沉默了...

    戳蓝字"CSDN云计算"关注我们哦! 最近无意中刷抖音 刷到了一个Python工程师的工资条 然后我默默的打开看了 然后我默默的关闭了 emmm..... 后悔为什么我当时没有坚持 ...

  8. Redis如何实现刷抖音不重复-布隆过滤器(Bloom Filter)

    刷抖音的时候是否曾想过,我们刷过的视频很难在重复刷到那么它到底是如何实现的呢? 如果说我们每刷一个视频并且把视频id和用户的id组合成一条数据保存到数据库中每次推荐视频的时候都去数据检测是否已经刷过了 ...

  9. 如何在Linux系统上刷抖音

    自从抖音出了网页版 很多小伙伴,上班刷起来了 今天,写一篇教大家如何使用linux刷抖音 抖音入驻PC端之后,其实就是一个终端的网站页面 看看我们如何在Linux端, 完成搜索.截图.访问网页等等功能 ...

  10. Python骚操作—自动刷抖音

    python骚操作之电脑自动刷抖音 上篇文章发完之后,有朋友在后台留言给我,说手机自动化控制很炫酷,但是appium的安装和使用很复杂,想让我写一篇详细文章介绍一下,下面我就以自动刷抖音为例简单介绍一 ...

最新文章

  1. C++的多个有序链表合并
  2. 【组队学习】【27期】李宏毅机器学习
  3. 安装 SharePoint 2013
  4. access找不到输入表或者dual_数据表dual表的用途是什么?
  5. c语言万年历查询程序代码,C语言 万年历程序(示例代码)
  6. 复杂分组统计---表在文件中
  7. linux提示符目录变为~,Linux终端提示符路径长度的修改方法
  8. const的用法(C语言)
  9. 3-docker 架构和底层技术简介
  10. 数据分析应用统计学之分散性与变异性的测量【极差、四分位差、偏态系数、峰态系数、统计指标】
  11. 查看数值类型python_Python数据科学实践 | 数据类型
  12. C语言自学笔记(16)
  13. 光环《全脑思维下的敏捷产品构建》总结
  14. 定积分的基本性质2 乘积可积性
  15. Err.number错误号和错误说明
  16. 中国战队Newbee夺DOTA2世界冠军
  17. p标签不换行,超出部分用...替代
  18. 如何快速生成icns格式的Mac图标
  19. 对synchronized(this)的一些理解
  20. 护照办理(荆州官网)

热门文章

  1. 【Altium Designer 19使用教程】Part1 工程及原理图的创建
  2. 如何把PDF文件转换成其他格式或者转换成可编辑的PDF格式
  3. 直播回顾 |「星轨巡讲」技术分享会亮点速递
  4. TSRC挑战赛:WAF之SQL注入绕过挑战实录
  5. SIM800C AT指令编程
  6. 【考研】22上海大学计算机上岸记录
  7. 如何用易语言做锁机软件
  8. 闲置手机不要换锅换盆,你会后悔的
  9. phalapi-进阶篇6(解决大量数据存储数据库分表分库拓展)
  10. 知道一个公司的网站地址,怎么快速获取邮箱。