分享在Raspberry Pi项目中添加Siri控制的方案设计

本教程旨在教您如何使用siricontrol开源python框架在raspberrypi项目中添加siri功能和控制功能。
2.概述
在本教程中,我将介绍如何设置和使用siricontrol python框架。我将利用siricontrol模块和raspberry pi 3来点亮和熄灭一个led。学完本教程之后,您将能够使用siricontrol将siri语音命令添加到任何raspberry pi项目中。开始学习之前,请确保您拥有以下设备和材料,并确保已经安装raspberrypi且软件能够正常运行。
3.设备
1.raspberry pi 3–raspberry pi链接
2.hdmi线–hdmi线链接
3.led–led的adafruit链接
4.鼠标+键盘–键盘/鼠标的amazon链接
5.显示器/tv– 任何带hdmi接口的tv或显示器
6.跳线–跳线的amazon链接
7.micro usb电缆–micro usb 电缆的amazon链接
8.面包板–面包板的amazon链接
4.目录
1. 为siricontrol创建一个gmail帐户
2. ios设备设置
3. siricontrol
1. 设置siricontrol
2. 创建自己的模块
4. 电路接线
5. 上传并运行程序
程 序
1.0 为siricontrol创建一个gmail帐户
siricontrol模块需要一个gmail帐户才能工作。我创建了一个新的gmail帐户,仅供siricontrol使用。我建议您也这样做。这是一个好主意,因为python脚本可以包含该帐户的用户名和密码。
创建帐户后,我们需要允许不太安全的应用程序访问gmail。这是因为gmail服务器将python脚本视为不太安全的应用程序。我们可以在sign-in & security(登录和安全)部分进行设置。
图1:应用程序访问(关闭)
图2:应用程序访问(开启)
设置gmail帐户的最后一步是启用imap协议。设置路径如下:gmail->settings->gear part->settings->forwarding and pop/imap->imap access。
图3:imap(禁用)
图4:imap(启用)
2.0 ios设备设置
将ios设备上的“notes”连至已经设置好与siricontrol配合使用的gmail帐户。选择settings->accounts & passwords->add account(设置->帐户和密码->添加帐户),添加刚才设置好的gmail帐户。添加该帐户后,选择它并启用notes(图6:gmail帐户下的notes)。接下来,选择settings->notes,并启用“on my iphone” account(我iphone上的帐户)。然后,将default account(默认帐户)改为gmail帐户。现在,我的ios设备设置完毕。
图5:帐户和密码
图6:gmail帐户下的notes
图7:默认帐户-notes
3.0 siri控制
3.1 设置siricontrol
要使用siricontrol,我们需要将模块的资源库克隆到raspberrypi。要做到这一点,请打开终端窗口并输入以下命令:
1. sudo apt-get update
2. sudo apt-get install git-core
3. git clone https://github.com/theraspberryguy/siricontrol-system
图8:克隆资源库
克隆资源库之后,打开脚本siricontrol.py。在脚本中输入gmail帐户的用户名和密码,然后保存脚本。
3.2 创建自己的模块
siricontrol.py运行时,会从模块(modules)文件夹中加载模块脚本。执行不同的任务时,按照模板编写新的模块脚本很重要。因为我想控制一个led,所以我写了一个脚本来打开led(led_on.py)和一个脚本来关闭led(led_off.py)。
要制作自己的模块,请在模板脚本中执行以下步骤:
1.在“modulename”中命名该模块
2.为模块提供“commandwords”,以便让siri执行命令。
3.在execute(command) 函数下写入想要执行的功能。
4.确保将脚本保存在模块文件夹中。
4.0 连接电路
为了让siricontrol执行命令,我搭建了一个简单的led电路。我总是喜欢用fritzing绘制接线图。fritzing是一款开源原理图设计和pcb布线软件。fritzing的下载地址(可选)如下:http://fritzing.org/home/
图9:raspberry pi led原理图
led和电阻应串联在引脚11(gpio17)和引脚25(地)之间。电阻的作用是限制流过led的电流,并应根据您的led进行相应调整,以防止电流过大将led烧坏。请记住,led较长的引线是正极,应连接到引脚11。
5.0 上传并运行程序
完成上述步骤后,我使用以下命令运行siricontrol脚本:
python siricontrol.py
该脚本开始运行,并使用模块文件夹中的所有模块进行初始化。
图10:执行led点亮
图11:执行led熄灭
现在我命令siri,“note: turn on led(注意:打开led)”,led灯亮起,同时脚本会告诉我它执行了我的命令并且正在倾听另一个命令。我现在说,“note: turn off led(注意:关闭led)”,led熄灭。只要符合以下条件,该脚本就会执行我(不管在任何地方)对siri发出的命令:
1.raspberry pi正在运行该脚本。
2.raspberry pi已连至互联网,以便可以轮询gmail帐户。
现在,您可以为任意raspberry pi项目添加任何siricontrol控制模块。虽然我在这个项目中使用了pi,但是该教程在安装了python的其他linux开发板上同样可以工作。
6.0 附件:脚本

华为模拟电路手册
奥来德科创板IPO实现国产OLED材料替代
Vishay推出新型高精度、高分辨率的位置传感器——RAMK060
国产性价比之王?拆解北斗小辣椒双核智能机
C8051F021在远程诊断与急救支援系统中的应用
分享在Raspberry Pi项目中添加Siri控制的方案设计
一体成型电感需要进行哪些品质检测
关于FPGA SelectIO信号设计
中科院团队先进光源技术研发与测试平台近日验收
CHAMP-AV IV具有四个高性能处理器 能以48GFLOP的峰值计算能力运行
高通:中国有65%的手机支持5G网络
SANDISK推出19纳米存储制造工艺单块芯片
三星5G智能手机全球市占率高达53.9% 全球出货量突破670万支
小米蓝牙耳机air冲不进去电的原因?
关于CES冲击波的分析和介绍以及应用
无人机进水怎么办,无人机防水解决方案的介绍
太阳能路灯安装的八大误区详解
先进的热控制可确保LED使用寿命
今日看点丨蔚来首颗自研芯片“杨戬”宣布 10 月量产;高通骁龙 8 Gen 3 for Galaxy 处理器最新多核跑分曝光
如何能让一款MCU拥有自己的个性