所有分类
主题 主题
平台 平台
我的工作台
userHead
注册时间 [[userInfo.create_time]]
创造力 [[userInfo.creativity]]
[[userInfo.remark]]
[[d.project_title]]
articleThumb
[[d.material_name]]
timelineThumb
进入工作台
折叠
所有分类 我的工作台
展开
【Mind+】小度“智控”台灯
rzegkly rzegkly 2020-10-23 16:06:17
9
0
简单
projectImage

一、【项目介绍】:

最近,家里的宝贝喜欢上了百度音响,每天宝贝对音响爱不释手。

百度音响除了儿童有声节目、天气查询闹钟等实用功能,还可以语音控制家中常用家电,

今天结合继电器模块和掌控板分享小度智控台灯项目。让宝贝了解其语音控制技术,对人工智能进行全面的剖析。

projectImage

二、【功能介绍】:

在百度技能平台对小度音响进行训练,百度技能平台 访问TinyWebDB,达到智控LED灯开关效果。

当对小度音响说打开台灯,调用TinyWebDB微数据库数据light=1时,掌控板板显示on, 控制继电器打开台灯;

当对小度音响说关闭台灯,调用TinyWebDB微数据库数据light=0时,掌控板板显示off, 控制继电器关闭台灯。

三、【作品演示】:

四、【制作过程】:

(一)搭建环境


 1、硬件:掌控板

2、软件:Mind+

材料清单 材料清单
1x
Gravity: 简易继电器模块
1x
掌控板
1x
micro:bit掌控I/O扩展板
1x
大号LED灯
1x
充电宝
1x
乐高积木若干
projectImage

(二)百度dueros开放平台
 1.登陆https://dueros.baidu.com/dbp

2.在技能平台进入控制台,选择创建技能,创建自己与小度互动技能。

 

projectImage

3.添加技能名称:掌控智能台灯;调用的名称:台灯

 

projectImage

4.基础信息

projectImage

5.配置服务

projectImage
代码 代码
	                    					#!/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
	                    				

6.测试验证有两种模式,真机测试和模拟测试

(1).保证技能开发账号和设备登录账号一致

(2).开启“技能调试模式”功能

(3).对设备说“开启技能调试模式”

projectImage

(三)TinyWebDB网络数据库配置

TinyWebDB网络数据库,支持APP Inventor网络微数据库的所有操作,并且每个用户可以申请一个甚至多个数据库地址。由于每一个地址都包含用户名和用户名的密钥,相互独立,互不影响,数据库的安全性比较高。除此以外,每个数据库都可以独立管理,支持使用API进行增删查改操作。

具体操作过程参考,掌控板tinywebdb网络服务使用https://mc.dfrobot.com.cn/thread-276573-1-1.html

projectImage
projectImage
projectImage

(四)掌控板环境配置
 

1、通过串口数据线,将掌控板和电脑连接,在设备管理器中出现:(com9-CP210x);

2、主控板添加掌控板

3、网络服务中添加Wi-Fi,数据库TinyWebDB

projectImage
projectImage
projectImage

(五)、程序编写

projectImage
projectImage

五、知识拓展

Gravity: 简易继电器模块 

采用标准Gravity传感器接口,支持3.3V-5.5V的宽电压输入,使其很容易同Arduino、掌控板等主控板相连接。满足您在机器人控制、灯光控制、智能家居、安防等控制类应用的需求。 

特性:
● 3.3~5.0V工作电压,宽电压输入,同时兼容3.3V掌控板和5V主控板。 

● 拨动开关,随时切换NC/NO模式,LED指示灯显示输出状态。 

● DC2.1输入输出接口,配合附赠的转接头,即插即用,适用于大部分应用场景。

projectImage
Makelog作者原创文章,未经授权禁止转载。
9
0
评论
[[c.user_name]] [[c.create_time]]
[[c.parent_comment.count]]
[[c.comment_content]]