在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

使用Arduino和藍牙的手機控制交流電的教程

科技觀察員 ? 來源:circuitdigest ? 作者:阿斯文斯·拉吉 ? 2022-11-24 17:53 ? 次閱讀

在當今的現代世界中,無論我們走到哪里,我們周圍都有很多電子設備。但是,總而言之,我們個人口袋里一直只有一臺設備。是的,這是我們的手機。現在手機已經不僅僅是一種用于通信的設備,它們是我們的相機,它們是我們的地圖,它們是我們的購物車,什么不是?

有了這種能力,使用遙控器來控制我們家庭中的任何電子應用程序(如電視、空調、家庭影院等)確實是一個無聊的想法。從舒適的床或沙發上拿起空調遙控器總是令人沮喪的。因此,在這個項目中,我們將建立一個小型設置,您可以使用它使用藍牙Arduino通過智能手機控制空調。聽起來很有趣吧!讓我們建立一個

所需材料:

阿杜伊諾超級 2560

TSOP (HS0038)

紅外

任何顏色 LED 和 1K 電阻器(可選)

HC-06

面包板

連接線

工作方法:

我們家中用于控制電視、家庭影院、空調等的所有遙控器都在紅外發射器的幫助下工作。紅外發射器只不過是一個紅外 LED,可以通過重復脈沖來沖擊信號;該信號將由電子設備中的接收器讀取。對于遙控器上的每個不同按鈕,將發出一個獨特的信號,該信號在接收器讀取后用于執行特定的預定義任務。如果我們能夠讀取從遙控器發出的信號,那么我們可以在需要執行該特定任務時使用紅外 LED 模擬相同的信號。我們之前已經為通用紅外遙控器和自動交流溫度控制制作了紅外發射器電路。

pYYBAGN_PxqARRLGAAAy_SSy1DU611.jpg

TSOP是一種紅外接收器,可用于解碼來自遙控器的信號。我們將使用此 TSOP 解碼來自遙控器的所有信息并將其存儲在 Arduino 上。然后使用該信息和紅外 LED,我們可以在需要時從我們的 Arduino 重新創建紅外信號。

poYBAGN_PxuAdg7PAABD7ERMK7g288.jpg

先決條件:

對于此Arduino藍牙控制AC項目,請確保您擁有ArduinoMega而不是任何其他版本的Arduino,因為代碼大小很重。使用此鏈接安裝 IR 遠程庫以使用 TSOP 和 IR 發射器。

交流遙控器的工作:

在我們進入項目之前,請花一些時間并注意您的交流遙控器的工作原理。與電視、DVD 紅外遙控器相比,交流遙控器的工作方式略有不同。遙控器上可能只有 10-12 個按鈕,但它們將能夠發送許多不同類型的信號。這意味著遙控器不會每次為同一按鈕發送相同的代碼。例如,當您使用向下按鈕降低溫度使其為 24°C(攝氏度)時,您將獲得帶有一組數據的信號,但是當您再次按下它以設置 25°C 時,您將不會獲得相同的數據,因為溫度現在是 25 而不是 24。同樣,25 的代碼也會因不同的風扇速度、睡眠設置等而異。因此,我們不要擺弄所有選項,而只是將溫度值與其他設置的恒定值集中在一起。

另一個問題是每次按下按鈕發送的數據量,普通遙控器發送 24 位或 48 位,但交流遙控器最多可以發送 228 位,因為每個信號都包含大量信息,如溫度、風扇速度、睡眠時間、擺動風格等。這就是為什么我們需要Arduino Mega以獲得更好的存儲選項的原因。

電路圖及說明:

幸運的是,這款手機控制空調的硬件設置非常簡單。您可以簡單地使用面包板并進行連接,如下所示。

pYYBAGN_PxyAGvykAAB2YFHn6pk760.png

下表還可用于驗證連接。

S.No: 元件引腳 阿杜伊諾引腳
1 TSOP – Vcc 5V
2 TSOP – Gnd 格德
3 TSOP - 信號 8
4 紅外發光二極管 – 陰極 格德
5 紅外發光二極管 – 陽極 9
6 HC-05 - 真空吸管 5V
7 HC05 – 釹
8 HC05 – 發射 10
9 HC05 – 接收 11

連接完成后,它應該如下所示。我使用面包板來整理東西,但您也可以直接將公對母線連接到所有組件

poYBAGN_Px-AemrLAADJEQo4M5c70.jpeg

解碼交流遠程信號:

控制交流電的第一步是使用 TSOP1738解碼交流遙控紅外代碼。按照電路圖中所示進行所有連接,并確保已安裝所有提到的庫。現在打開示例程序“IRrecvDumpV2”,可以在文件 -> 示例 -> IRremote -> IRrecvDumpV2 中找到。

int recvPin = 8; IRrecv irrecv(recvPin);

由于我們的 TSOP 連接到引腳 8,請將行號 9 更改為 int recPin=8,如上所示。然后將程序上傳到Arduino Mega并打開串行監視器。

將遙控器指向 TSOP 并按任意按鈕,對于您按下的每個按鈕,信號將由 TSOP1738 讀取,由 Arduino 解碼并顯示在串行監視器中。對于遙控器溫度的每次變化,您將獲得不同的數據。保存此數據,以便我們將在主程序中使用它。您的串行監視器將看起來像這樣,我還顯示了保存復制數據的Word文件。

pYYBAGN_PyKAbBIZAADn-5pIOjg174.png

屏幕截圖顯示了將我的交流遙控器的溫度設置為 26°C 的代碼。根據您的遙控器,您將獲得一組不同的代碼。同樣,復制所有不同溫度水平的代碼。您可以在本教程末尾給出的Arduino代碼中檢查所有空調遙控器IR代碼。

主要Arduino程序:

完整的Arduino主程序可以在此頁面的底部,但不能使用相同的程序。您必須更改我們剛剛從示例草圖中獲取的信號代碼值。打開Arduino IDE上的主程序,然后向下滾動到下面顯示的該區域,您必須將數組值替換為為遙控器獲得的值。

poYBAGN_PySAIa9nAADPFuRyUms727.png

請注意,我使用了 10 個陣列,其中兩個用于打開和關閉 AC,而其余 8 個用于設置不同的溫度。例如,Temp23 用于在 AC 上設置 23*C,因此請使用該數組中的相應代碼。完成后,您只需將代碼上傳到Arduino即可。

我們需要為這個項目導入兩個庫。一個是我們剛剛添加到Arduino的IRremote庫,另一個是內置的軟件串行庫,可幫助我們使用藍牙模塊。

#include //Lib for IT Blaster and TSOP #include // import the serial library

接下來,我們在引腳 10 和 11 上初始化藍牙模塊,然后使用名為 irsend 的對象訪問庫的所有 IR 功能.

SoftwareSerial BT_module(10, 11); // RX, TX IRsend irsend;

接下來是非常重要的代碼行。這是控制空調的信息所在的地方。下面顯示的那個是我的AC遙控器,您應該在上一步中獲得了您的。

pYYBAGN_PyWAPJ3AAACtux6aNyQ55.jpeg

接下來在 void 設置函數中,我們初始化兩個串行通信。一個是9600波特率的藍牙,另一個是57600波特率的串行監視器。

void setup()
{
BT_module.begin(9600); //BT works on 9600
Serial.begin(57600); //Serial Monitor work son 57600
}
在我們的空白循環中 (無限循環), 我們檢查藍牙模塊是否收到任何內容.如果收到任何內容,我們將該信息存儲在變量藍牙數據中。

while (BT_module.available()) //If data is coming
{
BluetoothData=BT_module.read(); //read it and save it
Serial.println(BluetoothData); //print it on serial for testing purpose
}

藍牙收到的信息將基于我們將在下一步中安裝的Android應用程序上按下的按鈕。收到信息后,我們只需要觸發相應的IR代碼,如下所示

if (BluetoothData == '2')
{
irsend.sendRaw(Temp23, sizeof(Temp23) / sizeof(Temp23[0]), khz); delay(2000);//Send signal to set Temperatue 23C
}

在這里,如果收到代碼“2”,我們必須將空調的溫度設置為 23°C。 同樣,我們有從 0 到 9 的代碼來執行 AC 的所有基本控制功能。您可以參考本頁末尾的完整 arduino 代碼。

安裝安卓應用程序:

智能手機控制空調的最后一步是安裝Android應用程序。此項目的 Android 應用程序是使用處理 Android 模式創建的。處理是為您的嵌入式項目創建.EXE文件或APK文件的絕佳工具。它是一個開源平臺,就像Arduino一樣,因此完全免費下載使用。

如果您不想太深入,只需從zip文件中下載APK文件并將其直接安裝在手機上即可。打開應用程序,您將看到如下所示的屏幕,之后您可以繼續下一步并享受使用該項目的樂趣。但是,如果您想調整應用程序的程序以使其適合您的需要,那么您可以進一步閱讀。

pYYBAGN_PlSAf6mXAAG_C9_N6mw522.png

可以從此處下載用于處理代碼的完整程序文件。此 Zip 將具有應用程序工作所使用的代碼和圖像源。打開代碼后,您可以調整以下行以根據需要進行調整。

如前所述,處理類似于Arduino。因此,它還具有空隙設置和空隙循環(此處繪制)功能。在void設置功能中,我們將指示手機藍牙連接到Arduino的藍牙。我的設備名稱是“HC-05”,所以我的代碼行將是

bt.start(); //start listening for BT connections
bt.getPairedDeviceNames();
bt.connectToDeviceByName("HC-05"); //Connect to our HC-06 bluetooth module
接下來,在 load_buttons() 函數中,您可以根據需要繪制任意數量的按鈕。我已經繪制了10個按鈕,如應用程序上所示。其次,我們有 read_buttons() 函數,用于檢測您正在觸摸哪個按鈕。每個按鈕都有特定的顏色,因此當用戶觸摸屏幕時,我們會檢查他觸摸了哪種顏色,并確定他觸摸了哪個按鈕。創建按鈕并根據顏色選擇按鈕的示例代碼如下所示

fill(255,145,3);
rect(width/2-width/4,height/2,width/4,height/12); fill(255); text("25C",width/2-width/4,height/2); //button 5
if (color_val==-13589993)
{byte[] data = {'0'};
bt.broadcast(data);}

“byte[] data = {'0'};” 行是非常重要的一行。這是我們決定必須通過藍牙將哪些代碼發送到Arduino的地方。在這里,如果按下此按鈕,字符“0”將從藍牙發送到Arduino。同樣,我們可以為不同的按鈕發送不同的字符。然后可以在Arduino端比較這些字符,并可以采取相應的操作。

繼續擺弄代碼,如果您有任何疑問,請通過評論部分與我聯系,并會盡力幫助您。

手機控制交流電工作:

一旦你準備好你的硬件,Arduino代碼和Android應用程序,就該享受輸出了。將 Arduino 代碼上傳到您的硬件,并將其面向您的交流電。現在在手機上打開android應用程序,如果一切按預期工作,您應該看到“連接到:device_name(一些代碼)”,如下所示

poYBAGN_PyeAYd_2AAARVSUVCp828.jpeg

現在,只需按下Android應用程序上的任何按鈕,它就會觸發AC上的相應操作,就像您在使用遙控器一樣。您可以通過修改代碼來添加任意數量的按鈕,甚至可以根據您的室溫或狀態自動使用空調。

/*

*Bluetooth AC Temperature control using Arduino and TSOP

* Code by: Aswinth Raj B

* Dated: 25-11-2017

* Website: www.circuitdigest.com

*

S.No: Component Pin Arduino Pin

1 TSOP a€“ Vcc 5V

2 TSOP a€“ Gnd Gnd

3 TSOP - Signal 8

4 IR Led a€“ Cathode Gnd

5 IR Led a€“ Anode 9

6 HC-05 - Vcc 5V

7 HC05 a€“ Gnd Ground

8 HC05 a€“ Tx 10

9 HC05 a€“ Rx 11



*/


#include //Lib for IT Blaster and TSOP

#include // import the serial library


SoftwareSerial BT_module(10, 11); // RX, TX

IRsend irsend;


int khz = 38; // 38kHz carrier frequency for the NEC protocol

char BluetoothData; // the data read by Bluetooth Module

int PevData;


//Decoded Remote Signals For my AC ##CHANGE IT FOR YOUR REMOTE

unsigned int ACoff[] = {2950,1750, 400,1100, 450,1050, 450,400, 400,400, 400,400, 450,1100, 400,400, 400,400, 450,1100, 400,1100, 450,350, 450,1100, 400,400, 400,400, 450,1100, 400,1100, 450,400, 400,1100, 400,1100, 450,400, 400,400, 400,1100, 450,350, 450,400, 400,1100, 450,400, 400,400, 400,400, 450,350, 450,350, 450,400, 400,400, 450,350, 450,400, 400,400, 400,400, 450,350, 450,400, 400,400, 400,400, 450,400, 400,400, 400,400, 450,350, 450,350, 450,1100, 400,400, 450,400, 400,1100, 450,1050, 450,400, 400,400, 400,400, 450,350, 450,400, 400,400, 450,350, 450,400, 400,400, 400,1100, 450,350, 450,400, 400,400, 400,400, 450,400, 400,1100, 450,350, 450,400, 400,400, 400,400, 400,1100, 450,400, 400,400, 450,350, 450,400, 400,400, 400,400, 450,350, 450,350, 450,400, 400,400, 450,350, 450,400, 400,400, 400,400, 450,350, 450,400, 400,400, 450,350, 450,400, 400,400, 400,400, 450,350, 450,350, 450,400, 450,350, 450,350, 450,400, 450,350, 450,350, 450,350, 450,400, 450,350, 450,350, 450,400, 400,1100, 450,350, 450,350, 450,400, 450,350, 450,350, 450,1100, 450};

unsigned int ACon[] = {2950,1700, 450,1100, 400,1100, 450,350, 450,350, 450,400, 450,1050, 450,350, 450,400, 450,1050, 450,1100, 400,400, 450,1050, 450,350, 450,400, 400,1100, 450,1100, 450,350, 450,1050, 450,1100, 450,350, 450,350, 450,1100, 450,350, 400,400, 450,1100, 450,350, 450,350, 450,400, 400,400, 450,350, 450,350, 450,400, 400,400, 450,350, 450,350, 450,400, 400,400, 450,350, 450,350, 450,400, 450,350, 450,350, 450,1100, 400,400, 450,350, 450,1100, 400,400, 450,350, 450,1100, 400,1100, 450,350, 450,400, 400,400, 450,350, 500,300, 450,400, 450,350, 400,400, 450,1100, 400,400, 450,350, 450,350, 450,400, 400,400, 450,350, 450,1100, 450,350, 400,400, 450,350, 450,400, 450,350, 400,400, 450,400, 450,350, 450,350, 450,350, 450,400, 400,400, 450,350, 450,400, 400,400, 400,400, 400,400, 450,350, 450,400, 450,350, 450,350, 450,400, 450,350, 450,350, 450,350, 450,400, 400,400, 400,400, 450,350, 450,400, 450,350, 400,400, 450,350, 450,400, 450,350, 450,350, 450,350, 450,400, 450,350, 450,1100, 400,400, 400,400, 450,350, 450,350, 450,1100, 400,400, 450};

unsigned int Temp23[] = {3000,1650, 550,950, 550,1000, 500,300, 550,250, 550,250, 550,1000, 500,300, 550,300, 500,1000, 550,950, 550,300, 550,950, 550,250, 550,300, 500,1000, 500,1050, 500,300, 500,1000, 550,1000, 500,300, 500,300, 550,1000, 450,350, 500,300, 500,1050, 450,350, 450,350, 450,350, 450,400, 450,350, 450,350, 450,400, 400,400, 450,350, 450,350, 450,350, 450,400, 400,400, 400,400, 450,400, 400,400, 400,400, 450,1100, 400,400, 400,400, 450,1050, 450,400, 400,400, 450,1100, 400,1100, 400,400, 450,350, 450,400, 400,400, 400,400, 450,400, 400,400, 400,400, 450,350, 450,1100, 400,400, 400,400, 450,350, 450,400, 400,400, 450,1100, 400,400, 400,1100, 450,1100, 400,1100, 450,350, 450,400, 400,400, 450,350, 450,350, 450,400, 400,400, 400,400, 450,350, 450,400, 400,400, 450,350, 450,400, 400,400, 400,400, 450,350, 450,400, 400,400, 450,350, 450,350, 450,400, 450,350, 400,400, 450,350, 450,400, 450,350, 450,350, 450,400, 450,350, 450,350, 450,350, 450,400, 400,400, 400,400, 450,350, 450,1100, 400,1100, 450,1100, 400,1100, 450,1100, 400,1100, 400,400, 450};

unsigned int Temp24[] = {3000,1650, 500,1050, 500,1000, 500,300, 500,300, 500,350, 500,1000, 500,300, 500,350, 500,1000, 500,1050, 500,300, 500,1000, 500,300, 500,350, 500,1000, 500,1050, 500,300, 500,1000, 500,1050, 500,300, 500,300, 500,1050, 500,300, 500,300, 500,1050, 500,300, 500,300, 500,350, 500,300, 500,300, 500,300, 500,350, 500,300, 500,300, 500,300, 500,350, 500,300, 500,300, 500,300, 500,350, 500,300, 500,300, 500,1050, 500,300, 500,300, 500,1050, 500,300, 500,300, 500,1050, 500,1000, 500,300, 500,350, 500,300, 500,300, 500,300, 500,350, 500,1000, 500,1050, 500,1000, 500,300, 500,350, 450,350, 500,300, 500,300, 500,350, 500,1000, 500,300, 500,1050, 500,1000, 500,1050, 500,300, 500,300, 500,350, 500,300, 500,300, 500,300, 500,300, 500,350, 500,300, 450,350, 500,350, 450,350, 450,350, 450,350, 450,400, 400,400, 400,400, 450,400, 400,400, 400,400, 400,400, 450,350, 450,400, 400,400, 450,350, 450,400, 450,350, 450,350, 450,350, 450,400, 450,350, 450,350, 450,350, 500,350, 450,1050, 500,300, 500,1050, 500,1000, 500,1050, 500,1000, 500,1000, 500,350, 550};

unsigned int Temp25[] = {3050,1650, 500,1000, 550,950, 550,300, 500,300, 500,300, 550,1000, 500,300, 500,300, 550,1000, 550,950, 550,250, 550,1000, 500,300, 550,250, 550,1000, 500,1000, 550,300, 550,950, 550,950, 550,300, 500,300, 500,1000, 550,250, 550,300, 550,950, 550,300, 500,300, 500,300, 550,250, 550,300, 500,300, 550,250, 550,250, 600,250, 500,300, 550,250, 550,250, 550,300, 550,250, 500,300, 550,300, 500,300, 500,1000, 550,250, 550,300, 500,1000, 550,250, 550,300, 500,1000, 550,1000, 500,300, 500,300, 550,250, 550,300, 500,300, 500,300, 550,300, 500,1000, 550,950, 550,300, 500,300, 500,300, 550,250, 550,300, 500,300, 550,950, 550,300, 500,1000, 550,1000, 500,1000, 500,300, 550,300, 500,300, 500,300, 550,250, 550,300, 500,300, 500,300, 550,250, 550,300, 500,300, 550,250, 550,250, 550,300, 500,300, 500,300, 550,250, 550,300, 500,300, 550,250, 550,300, 500,300, 500,300, 550,250, 550,250, 550,300, 550,250, 550,250, 550,300, 500,300, 500,300, 550,250, 550,300, 500,300, 500,300, 500,350, 500,1000, 500,1000, 500,1050, 500,1000, 500,1050, 500,300, 550};

unsigned int Temp26[] = {3000,1650, 500,1000, 500,1050, 500,300, 500,300, 500,350, 500,1000, 500,300, 500,350, 500,1000, 500,1050, 450,350, 500,1000, 500,300, 500,350, 500,1000, 500,1050, 500,300, 500,1000, 500,1050, 500,300, 500,300, 500,1050, 500,300, 500,300, 500,1050, 500,300, 500,300, 500,300, 500,350, 500,300, 500,300, 500,350, 500,300, 500,300, 500,300, 500,350, 500,300, 500,300, 500,300, 500,350, 500,300, 500,300, 500,1050, 500,300, 500,300, 500,1050, 450,350, 500,300, 500,1050, 500,1000, 500,300, 500,350, 500,300, 500,300, 500,300, 500,350, 500,1000, 500,300, 500,1050, 500,300, 500,300, 500,300, 500,350, 500,300, 500,300, 500,1050, 500,300, 500,1050, 450,1050, 500,1000, 500,350, 500,300, 500,300, 500,350, 450,350, 500,300, 500,300, 500,300, 500,350, 500,300, 500,300, 500,350, 500,300, 500,300, 500,300, 500,350, 450,350, 500,300, 500,350, 450,350, 500,300, 500,300, 500,300, 500,350, 500,300, 500,300, 500,350, 500,300, 500,300, 500,300, 500,350, 500,300, 500,300, 500,350, 450,1050, 500,1000, 500,350, 500,1000, 500,1000, 500,1050, 500,1000, 500,350, 500};

unsigned int Temp27[] = {3050,1600, 550,1000, 500,1000, 550,300, 500,300, 550,250, 550,1000, 500,300, 550,300, 500,1000, 550,1000, 500,300, 550,1000, 550,250, 500,300, 550,1000, 500,1050, 500,300, 500,1000, 550,1000, 500,300, 550,250, 550,1000, 550,250, 550,300, 500,1000, 550,300, 500,300, 550,250, 550,300, 500,300, 500,300, 550,300, 500,300, 550,250, 550,300, 500,300, 500,300, 550,300, 500,300, 500,300, 550,300, 500,300, 500,1000, 550,300, 500,300, 550,1000, 500,300, 500,300, 550,1000, 550,1000, 500,300, 500,300, 550,250, 550,300, 500,300, 550,300, 500,300, 500,300, 550,1000, 500,300, 550,250, 550,300, 500,300, 500,300, 500,350, 500,300, 550,250, 550,1000, 500,1000, 550,1000, 500,300, 550,300, 500,300, 550,250, 550,300, 500,300, 500,300, 550,300, 500,300, 500,300, 550,300, 500,300, 550,250, 550,300, 500,300, 500,300, 500,300, 550,300, 550,250, 550,300, 500,300, 500,300, 550,300, 500,300, 500,300, 550,300, 500,300, 500,300, 550,300, 500,300, 500,300, 500,300, 500,350, 500,300, 500,350, 500,300, 500,300, 500,1050, 500,1000, 500,1050, 500,1000, 500,350, 500}; // PANASONIC C4D3:64800024

unsigned int Temp28[] = {3100,1600, 550,950, 550,1000, 550,250, 550,250, 550,250, 550,1000, 500,300, 500,300, 550,1000, 500,1000, 550,250, 550,1000, 500,300, 550,250, 550,1000, 550,950, 550,300, 500,1000, 550,950, 550,300, 550,250, 500,1000, 550,300, 500,300, 550,950, 550,300, 500,300, 500,300, 550,250, 550,300, 550,250, 500,300, 550,300, 500,300, 500,300, 550,250, 550,250, 600,250, 500,300, 500,300, 550,300, 500,300, 500,1000, 550,300, 500,300, 500,1000, 550,250, 550,300, 500,1000, 550,1000, 550,250, 550,250, 550,250, 550,300, 500,300, 550,250, 550,1000, 500,1000, 550,250, 550,300, 500,300, 500,300, 550,250, 550,300, 500,300, 550,1000, 500,300, 500,1000, 550,1000, 500,1000, 550,250, 550,300, 500,300, 550,250, 550,250, 550,300, 500,300, 500,300, 550,250, 550,300, 500,300, 550,250, 550,300, 550,250, 500,300, 550,250, 550,250, 550,300, 550,250, 550,250, 550,300, 500,300, 500,300, 550,250, 550,300, 500,300, 550,250, 550,300, 500,300, 500,300, 550,250, 550,250, 550,300, 500,300, 550,1000, 500,300, 500,300, 550,950, 550,1000, 500,1000, 550,1000, 500,300, 550};

unsigned int Temp29[] = {3100,1550, 600,950, 500,1000, 550,300, 500,300, 500,300, 550,950, 550,300, 550,250, 550,1000, 500,1000, 550,250, 550,1000, 500,300, 550,250, 550,950, 600,950, 550,250, 550,1000, 500,1000, 550,250, 600,250, 550,950, 550,250, 550,300, 550,950, 550,250, 550,300, 550,250, 550,250, 550,250, 550,300, 550,250, 550,250, 550,300, 500,300, 550,250, 550,250, 550,300, 500,300, 550,250, 550,250, 600,250, 550,950, 550,250, 550,300, 500,1000, 550,250, 550,300, 550,950, 550,1000, 500,300, 500,300, 550,250, 550,250, 550,300, 500,300, 550,250, 550,1000, 500,300, 550,250, 550,300, 500,300, 550,250, 550,250, 550,300, 500,1000, 550,250, 550,1000, 500,1000, 550,1000, 500,300, 500,300, 550,300, 500,300, 500,300, 550,250, 550,250, 550,300, 500,300, 500,300, 550,300, 500,300, 500,300, 550,250, 550,300, 500,300, 500,300, 550,300, 500,300, 500,300, 550,250, 550,250, 550,300, 500,300, 500,300, 550,300, 500,300, 500,300, 550,250, 550,300, 500,300, 500,300, 550,250, 550,300, 500,300, 550,250, 550,250, 550,1000, 500,1000, 550,1000, 500,1000, 550,300, 500};

unsigned int Temp30[] = {3000,1650, 500,1000, 550,1000, 500,300, 500,300, 550,250, 550,1000, 500,300, 500,300, 550,1000, 550,950, 550,250, 550,1000, 550,250, 550,250, 550,1000, 550,950, 550,300, 500,1000, 550,950, 550,300, 500,300, 550,950, 550,300, 550,250, 550,1000, 500,300, 500,300, 550,250, 550,250, 550,300, 500,300, 550,250, 550,300, 500,300, 500,300, 550,250, 550,300, 500,300, 500,300, 550,300, 500,300, 500,300, 550,950, 550,300, 500,300, 500,1000, 550,250, 550,300, 550,950, 550,1000, 500,300, 550,250, 550,250, 600,250, 500,300, 550,250, 550,1000, 500,300, 550,250, 550,300, 500,300, 500,300, 550,250, 550,300, 500,300, 550,950, 550,300, 500,1000, 550,950, 550,1000, 500,300, 550,300, 500,300, 500,300, 550,250, 550,300, 500,300, 500,300, 550,250, 550,300, 500,300, 500,300, 550,250, 550,300, 500,300, 500,300, 550,250, 550,300, 500,300, 550,250, 550,300, 500,300, 500,300, 550,250, 550,250, 550,300, 500,300, 550,250, 550,300, 500,300, 500,300, 550,250, 550,300, 500,300, 550,950, 500,1050, 500,1000, 500,350, 500,1000, 500,1000, 500,1050, 500,300, 500};

//Change it for your remote





void setup()

{

BT_module.begin(9600); //BT works on 9600

Serial.begin(57600); //Serial Monitor work son 57600

}


void loop()

{

while (BT_module.available()) //If data is coming

{

BluetoothData=BT_module.read(); //read it and save it

Serial.println(BluetoothData); //print it on serial for testing purpose

}


if (BluetoothData != PevData)

{



if (BluetoothData == '0')

{

irsend.sendRaw(ACon, sizeof(ACon) / sizeof(ACon[0]), khz); delay(2000);//Send signal to Turn On the AC

}


if (BluetoothData == '1')

{

irsend.sendRaw(ACoff, sizeof(ACoff) / sizeof(ACoff[0]), khz); delay(2000);//Send signal to Turn on the AC

}


if (BluetoothData == '2')

{

irsend.sendRaw(Temp23, sizeof(Temp23) / sizeof(Temp23[0]), khz); delay(2000);//Send signal to set Temperatue 23C

}


if (BluetoothData == '3')

{

irsend.sendRaw(Temp24, sizeof(Temp24) / sizeof(Temp24[0]), khz); delay(2000);//Send signal to set Temperatue 24C

}


if (BluetoothData == '4')

{

irsend.sendRaw(Temp25, sizeof(Temp25) / sizeof(Temp25[0]), khz); delay(2000);//Send signal to set Temperatue 25C

}


if (BluetoothData == '5')

{

irsend.sendRaw(Temp26, sizeof(Temp23) / sizeof(Temp26[0]), khz); delay(2000);//Send signal to set Temperatue 26C

}


if (BluetoothData == '6')

{

irsend.sendRaw(Temp27, sizeof(Temp27) / sizeof(Temp27[0]), khz); delay(2000);//Send signal to set Temperatue 27C

}


if (BluetoothData == '7')

{

irsend.sendRaw(Temp28, sizeof(Temp28) / sizeof(Temp28[0]), khz); delay(2000);//Send signal to set Temperatue 28C

}


if (BluetoothData == '8')

{

irsend.sendRaw(Temp29, sizeof(Temp29) / sizeof(Temp29[0]), khz); delay(2000);//Send signal to set Temperatue 29C

}


if (BluetoothData == '9')

{

irsend.sendRaw(Temp30, sizeof(Temp30) / sizeof(Temp30[0]), khz); delay(2000);//Send signal to set Temperatue 30C

}



}


PevData = BluetoothData;



delay(100);// prepare for next data ...

}

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 智能手機
    +關注

    關注

    66

    文章

    18543

    瀏覽量

    180892
  • 藍牙
    +關注

    關注

    114

    文章

    5866

    瀏覽量

    171051
  • 遙控器
    +關注

    關注

    18

    文章

    840

    瀏覽量

    66507
  • Arduino
    +關注

    關注

    188

    文章

    6477

    瀏覽量

    187692
收藏 人收藏

    評論

    相關推薦

    如何使用Arduino制作一個交流電壓測量設備

    在這個項目中,我們將使用Arduino制作一個交流電壓測量設備, 該設備將測量我們家中交流電源的電壓。我們將在Arduino IDE的串行監視器上打印該電壓,并在萬用表上顯示。
    發表于 01-25 17:41 ?6388次閱讀
    如何使用<b class='flag-5'>Arduino</b>制作一個<b class='flag-5'>交流電</b>壓測量設備

    交流電Arduino與TRIAC和Optotriac

    描述交流電Arduino與TRIAC和Optotriac
    發表于 08-29 06:01

    交流電動機傳動調壓調速控制

    交流電動機傳動調壓調速控制3.1交流電動機傳動開環調壓調速控制3.2交流電動機傳動轉速閉環調壓調速控制
    發表于 12-05 17:01 ?12次下載
    <b class='flag-5'>交流電</b>動機傳動調壓調速<b class='flag-5'>控制</b>

    交流電動機傳動調壓調速控制

    交流電動機傳動調壓調速控制3.1交流電動機傳動開環調壓調速控制3.2交流電動機傳動轉速閉環調壓調速控制
    發表于 12-05 17:01 ?22次下載
    <b class='flag-5'>交流電</b>動機傳動調壓調速<b class='flag-5'>控制</b>

    交流電機直接轉矩控制

    交流電機直接轉矩控制
    發表于 01-21 11:54 ?1次下載

    交流電如何控制電流

    通常在我們生活中所說的交流電也就是工頻交流電,也就是50HZ的交流電。但實際上,我們交流電的頻率很多時候不僅僅只有50HZ,有時候還有1000HZ.不管是50HZ還是1000HZ,最終
    的頭像 發表于 08-22 10:10 ?1.2w次閱讀

    交流電機矢量控制

    交流電機矢量控制說明。
    發表于 05-19 10:28 ?13次下載

    交流及正弦交流電

    交流及正弦交流電(深圳市核達中遠通電源技術有限公司電話多少)-交流及正弦交流電...........................
    發表于 09-24 13:16 ?11次下載
    <b class='flag-5'>交流</b>及正弦<b class='flag-5'>交流電</b>

    交流電機調速器

    交流電機調速器(電源技術是什么期刊)-?交流電機調速器,可以設置交流電機轉速,可以控制轉速,轉速誤差10轉
    發表于 09-28 11:46 ?72次下載
    <b class='flag-5'>交流電</b>機調速器

    一文詳解交流電交流電路基本知識

    本文通過圖文,分享交流電和分類、常見交流電源、交流發電機基本工作原理、交流電路等交流電交流電
    的頭像 發表于 01-30 16:33 ?9039次閱讀
    一文詳解<b class='flag-5'>交流電</b>與<b class='flag-5'>交流電</b>路基本知識

    什么是交流電控制

    交流電控制是指控制交流電機的運轉,使其達到設計要求的動力輸出、電功率等性能參數,涉及到控制理論、傳感器技術、驅動器技術等多個方面。其基本方
    發表于 03-26 22:20 ?925次閱讀

    使用Arduino控制220VAC通用交流電

    電子發燒友網站提供《使用Arduino控制220VAC通用交流電機.zip》資料免費下載
    發表于 06-12 10:40 ?1次下載
    使用<b class='flag-5'>Arduino</b><b class='flag-5'>控制</b>220VAC通用<b class='flag-5'>交流電</b>機

    基于Arduino通用交流電機速度控制

    電子發燒友網站提供《基于Arduino通用交流電機速度控制器.zip》資料免費下載
    發表于 06-25 11:28 ?2次下載
    基于<b class='flag-5'>Arduino</b>通用<b class='flag-5'>交流電</b>機速度<b class='flag-5'>控制</b>器

    交流電機是什么意思

    交流電機簡介 交流電機是用于實現機械能和交流電能相互轉換的機械。由于交流電力系統的巨大發展,交流電機已成為最常用的電機。
    發表于 07-05 13:38 ?1652次閱讀

    什么是交流電什么是正弦交流電

    交流電(Alternating Current, AC)是指電流方向周期性地變化的電流。在交流電中,電流的大小和方向隨時間連續變化,在一個周期內會從正向到反向再到正向,這個過程不斷重復。交流電
    的頭像 發表于 01-16 09:34 ?2012次閱讀
    主站蜘蛛池模板: 欧美不卡视频在线 | 亚洲开心激情网 | a级毛片毛片免费很很综合 a级男女性高爱潮高清试 | 可以免费看黄色的网站 | 欧美午夜精品 | 免费观看做网站爱 | 日本免费黄色大片 | 亚洲我射| 香蕉久久高清国产精品免费 | 亚洲人成亚洲人成在线观看 | 欧美成人精品一级高清片 | 日韩欧美卡一卡二卡新区 | 中文字幕一区在线观看视频 | 国产91丝袜在线播放九色 | 欧美日本视频一区 | 狼人射综合 | 18视频免费网址在线观看 | 波多野结衣在线视频免费观看 | 黄色的视频网站在线观看 | 四虎影院成人 | 乱人伦的小说 | 男女做性无遮挡免费视频 | 清朝荒淫牲艳史在线播放 | 欧美色亚洲图 | h网站在线 | 综合天天 | 亚洲国产高清精品线久久 | 免费在线不卡视频 | 欧美高清另类 | 久久精品操 | 手机看片日韩高清1024 | 色屋网| 午夜在线免费观看视频 | 久久久夜色精品国产噜噜 | bt 电影天堂 | 看黄视频免费 | 人人搞人人爱 | 曰韩高清一级毛片 | 97射射| 欧美一区二区三区综合色视频 | 亚洲 欧美 日韩 在线 中文字幕 |