女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

聚豐項目 > 適用于辦公場所的語音控制物聯系統

適用于辦公場所的語音控制物聯系統

目前市場上的家居物聯、智能插座等產品,雖然功能很炫,但使用或應用對象不對,因此銷量較低,發展進入低潮。不適用高端人群,他們可以選擇高檔家居或有專門保姆、管家。不適用低層人群,居住環境小,電器少;中層或中高層是唯一有發展潛力的人群。但普通通過手機遙控的方式不是非常實用,方便程度不一定比傳統方式來的高端。 本項目在物聯系統的基礎上加入語音識別、控制功能。包括對智能插座、紅外設備(空調等)、功率可調設備(臺燈、加熱器、風扇等)等的控制以及實時資訊、天氣預報、通訊(手機、QQ、微信、郵件等)的自動在線顯示、轉接、控制等,非常適合于工程師、管理者等在辦公環境中使用,能夠大大提高使用者的工作效率和智能化程度。試想,當你使用此產品后,可以在手中工作不停下的同時,打開空調,接聽電話,打開電烙鐵,打開示波器,收聽即時消息,這樣的產品是不是非常適合辦公場合的應用呢? 項目中結合科大訊飛的語音識別模塊,并制作桌面接收/控制的硬件,完成所介紹的功能。

liqijian101 liqijian101

分享
3 喜歡這個項目
團隊介紹

liqijian101 liqijian101

團隊成員

李其建 助理工程師

趙丹丹

分享
項目簡介
目前市場上的家居物聯、智能插座等產品,雖然功能很炫,但使用或應用對象不對,因此銷量較低,發展進入低潮。不適用高端人群,他們可以選擇高檔家居或有專門保姆、管家。不適用低層人群,居住環境小,電器少;中層或中高層是唯一有發展潛力的人群。但普通通過手機遙控的方式不是非常實用,方便程度不一定比傳統方式來的高端。 本項目在物聯系統的基礎上加入語音識別、控制功能。包括對智能插座、紅外設備(空調等)、功率可調設備(臺燈、加熱器、風扇等)等的控制以及實時資訊、天氣預報、通訊(手機、QQ、微信、郵件等)的自動在線顯示、轉接、控制等,非常適合于工程師、管理者等在辦公環境中使用,能夠大大提高使用者的工作效率和智能化程度。試想,當你使用此產品后,可以在手中工作不停下的同時,打開空調,接聽電話,打開電烙鐵,打開示波器,收聽即時消息,這樣的產品是不是非常適合辦公場合的應用呢? 項目中結合科大訊飛的語音識別模塊,并制作桌面接收/控制的硬件,完成所介紹的功能。
硬件說明

一、演示硬件說明

  1. 1.    設計中語音識別功能使用科大訊飛的語音識別資源庫,利用易安卓編寫APP程序,使用安卓手機作為識別硬件。

  2. 2.    電燈、電烙鐵、智能插座、窗戶等使用繼電器控制,演示中使用5mm藍色LED代表,以電燈和窗戶作為演示示例。

  3. 3.    臺燈等功率可調設備利用PWM直接驅動LED演示。

  4. 4.    室內溫度采用DS18B20溫度傳感器檢測。

  5. 5.    無線WIFI采用EMW3080模塊。

  6. 6.    溫度等的顯示使用OLED顯示。

  7. 7.    控制器為STM32F401型號。

說明實際控制時電燈、電烙鐵、智能插座、窗戶、臺燈亮度等的控制,需要專用的驅動電路,或者需要無線組網控制,此處演示中使用基礎功能代替。

二、演示硬件功能框圖

QQ截圖20171126220330.png

說明:由于沒有空調設備,故演示中以OLED顯示解析后語音指令來說明可以實現紅外通信類的控制。

 


軟件說明

1.    語音識別程序

    運行平臺:安卓手機

    編程環境:易安卓

    原始代碼:語音識別E4A程序.ziphttp://www.asorrir.com/webapi/public/project/js/ueditor/dialogs/attachment/fileTypeImages/icon_rar.gif

        APP程序:語音識別APP.zip

        APP使用說明:需要先安裝訊飛語音+APP,并下載離線識別庫。  軟件啟動-->確定(無密碼)-->點擊訊飛語音識別進行中-->點擊右上角開始.

2.  STM32程序

1)主程序:    完整程序Nucleo_work_iar_nucleo_f401re.ziphttp://www.asorrir.com/webapi/public/project/js/ueditor/dialogs/attachment/fileTypeImages/icon_rar.gif

#include "mbed.h"
#include "Adafruit_SSD1306.h"
#include "DS18B20.h"
#define READBUFFERSIZE (16)

#define ON 0
#define OFF 1


Serial pc(SERIAL_TX, SERIAL_RX,115200);
Serial wifi_serial(D8, D2,115200);  //wifi;
//DigitalOut myled(LED1);

PwmOut mypwm(LED1);

DigitalOut mylight(PC_5,1);
DigitalOut window(PC_6,1);

DigitalInOut sensor(PC_11);     // sensor connected to pin 5

// an SPI sub-class that provides a constructed default
class SPIPreInit : public SPI
{
public:
    SPIPreInit(PinName mosi, PinName miso, PinName clk) : SPI(mosi,miso,clk) {
        format(8,3);
        frequency(2000000);
    };
};
SPIPreInit gSpi(PB_5,NC,PB_3);//SPI_SCK= PB_13, SPI_MOSI= PB_15,
Adafruit_SSD1306_Spi gOled1(gSpi,PB_1,PB_14,PB_2);//spi  DC(PB_1)   RST(PB_14)   CS(PB_2)<--->


float gHome_Temperature;
void Serial_Receive_Callback()
{
    char buffer[32];
    wifi_serial.gets(buffer,13);
    pc.printf("I heard %s\n",buffer);

    if(buffer[0]=='F' && buffer[1]=='F') {
        if(buffer[3]=='1') {
            if(buffer[5]=='1') {
                gOled1.setTextCursor(38,32);
                gOled1.printf("Light ON       ");
                mylight=ON;
            } else {
                gOled1.setTextCursor(38,32);
                gOled1.printf("Light OFF      ");
                mylight=OFF;
            }
        }
        if(buffer[3]=='2') {
            if(buffer[5]=='1') {
                gOled1.setTextCursor(38,32);
                gOled1.printf("Window ON      ");
                window=ON;
            } else {
                window=OFF;
                gOled1.setTextCursor(38,32);
                gOled1.printf("Window OFF     ");
            }
        }
        if(buffer[3]=='6') {
            if(buffer[5]=='1') {
                gOled1.setTextCursor(38,32);
                gOled1.printf("Desk Lamp %d   %",buffer[6]);
                mypwm.pulsewidth_us(buffer[6]*10);
            } else {
                gOled1.setTextCursor(38,32);
                gOled1.printf("Desk Lamp OFF  ");
                mypwm.pulsewidth_us(0);
            }
        }
        if(buffer[3]=='7') {
            if(buffer[5]=='1') {
                gOled1.setTextCursor(38,32);
                gOled1.printf("Conditioner %dC",buffer[6]);
            } else
                gOled1.printf("Conditioner OFF" );
        }

    }
    gOled1.display();
}
int main()
{
    int i = 1;

    wifi_serial.attach(&Serial_Receive_Callback);
    mypwm.period_ms(1);
    mypwm.pulsewidth_us(0);

    gOled1.setTextSize(1);
    gOled1.printf(" Voice Control System");
    gOled1.drawLine(0, 10, 128,10, 1);
    gOled1.setTextCursor(2,16);
    gOled1.printf("Temp:");
    gOled1.setTextCursor(2,32);
    gOled1.printf("Order:");
    gOled1.display();

    sensor.mode(PullUp);

    while(1) {
        wait(1);
        gHome_Temperature=DS18B20_Temperature();
        gOled1.setTextCursor(36,16);
        gOled1.printf("%2.1fC",gHome_Temperature);

        gOled1.display();
    }
}

 


演示效果

演示效果.jpg

評論區(0 )