3364| 0
|
[入门教程] 【Mind+】小度“智控”台灯 |
一、【项目介绍】: 最近,家里的宝贝喜欢上了百度音响,每天宝贝对音响爱不释手。 百度音响除了儿童有声节目、天气查询闹钟等实用功能,还可以语音控制家中常用家电, 今天结合继电器模块和掌控板分享小度智控台灯项目。让宝贝了解其语音控制技术,对人工智能进行全面的剖析。 二、【功能介绍】: 在百度技能平台对小度音响进行训练,百度技能平台 访问TinyWebDB,达到智控LED灯开关效果。 当对小度音响说打开台灯,调用TinyWebDB微数据库数据light=1时,掌控板板显示on, 控制继电器打开台灯; 当对小度音响说关闭台灯,调用TinyWebDB微数据库数据light=0时,掌控板板显示off, 控制继电器关闭台灯。 三、【作品演示】: 四、【制作过程】: (一)搭建环境 1、硬件:1xGravity: 简易继电器模块 1x掌控板 1xmicro:bit掌控I/O扩展板 1x大号LED灯 1x充电宝 1x乐高积木若干 2、软件:Mind+ (二)TinyWebDB网络数据库配置 TinyWebDB网络数据库,支持APP Inventor网络微数据库的所有操作,并且每个用户可以申请一个甚至多个数据库地址。由于每一个地址都包含用户名和用户名的密钥,相互独立,互不影响,数据库的安全性比较高。除此以外,每个数据库都可以独立管理,支持使用API进行增删查改操作。 具体操作过程参考,掌控板tinywebdb网络服务使用https://mc.dfrobot.com.cn/thread-276573-1-1.html (三)百度dueros开放平台 2.在技能平台进入控制台,选择创建技能,创建自己与小度互动技能。 3.添加技能名称:掌控智能台灯;调用的名称:台灯 4.基础信息 5.配置服务 [mw_shl_code=python,false]#!/usr/bin/env python2 # -*- encoding=utf-8 -*- import sys from dueros.Bot import Bot from dueros.card.TextCard import TextCard import urllib2,json reload(sys) sys.setdefaultencoding('utf8') class DuerOSBot(Bot): def launch_request(self): """ 打开技能 """ response = urllib2.urlopen('http://tinywebdb.appinventor.space/api?user=rzegkly&secret=a46a5f05&action=update&tag=light&value=1') html = json.loads(response.read()) if(html['status']=='success'): self.wait_answer() card = TextCard('已为您开灯') return { 'card': card, 'outputSpeech': r'已为您开灯' } def ended_request(self): """ 关闭技能 """ response = urllib2.urlopen('http://tinywebdb.appinventor.space/api?user=rzegkly&secret=a46a5f05&action=update&tag=light&value=0') html = json.loads(response.read()) if(html['status']=='success'): self.wait_answer() return { 'outputSpeech': r'已为您关灯' } def __init__(self, request_data): super(DuerOSBot, self).__init__(request_data) self.add_launch_handler(self.launch_request) self.add_session_ended_handler(self.ended_request) self.add_intent_handler('light', self.light_intent) def light_intent(self): card = TextCard('这是意图light的处理函数') return { 'card': card, 'outputSpeech': r'这是意图light的处理函数' } def handler(event, context): bot = DuerOSBot(event) result = bot.run() return result PythonCopy[/mw_shl_code] 6.测试验证有两种模式,真机测试和模拟测试 (1).保证技能开发账号和设备登录账号一致 (2).开启“技能调试模式”功能 (3).对设备说“开启技能调试模式” (四)掌控板环境配置 1、通过串口数据线,将掌控板和电脑连接,在设备管理器中出现:(com9-CP210x); 2、主控板添加掌控板 3、网络服务中添加Wi-Fi,数据库TinyWebDB (五)、程序编写 五、知识拓展 Gravity: 简易继电器模块 采用标准Gravity传感器接口,支持3.3V-5.5V的宽电压输入,使其很容易同Arduino、掌控板等主控板相连接。满足您在机器人控制、灯光控制、智能家居、安防等控制类应用的需求。 特性: ● 3.3~5.0V工作电压,宽电压输入,同时兼容3.3V掌控板和5V主控板。 ● 拨动开关,随时切换NC/NO模式,LED指示灯显示输出状态。 ● DC2.1输入输出接口,配合附赠的转接头,即插即用,适用于大部分应用场景。 |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed