資料介紹
描述
概述
該項目的目的是向您展示如何在互聯網上訪問您的一個 Arduino 輸入引腳中正在讀取的內容。
這是在您的 Arduino 上沒有任何網絡服務器但使用在線服務完成的。
在我們的項目中,我們使用的是 Arduino Nano 模型。使用另一種板模型沒有問題 - 因為 Nano 是資源較少的板 - 但您必須注意哪些是適合您的情況的引腳。
?
訪問網絡將使用 ESP8266 WIFI 模塊
?
我們將閱讀的是環境溫度。為了獲得測量結果,我們選擇了典型的 DHT11 傳感器。
?
最后,為了擺脫服務器端,我們將使用在線服務circusofthings.com ,我們可以將設備和應用程序與單個社交帳戶鏈接。
打開組件電源
請注意,這是一個原型教程,而不是一個完美的獨立產品。我的意思是,我將使用實驗室穩定電壓源來實現 ESP8266 所需的 3.3V,我并沒有發布從 5V、電池或電網中獲取此電壓所需的所有內容……只是為了讓它更容易。
...但是,如果您決定從其他來源獲得這些 3、3V,請考慮:
- ESP8266 非常細膩。3.6V以上的電壓會炸。網上有一些關于它是否可以代表更高電壓的討論,但這取決于其他引腳的連接方式或它來自哪個制造商。不要冒險,記住:低于3.6V。
- 沒有人告訴我并且可能會為您節省一天的事情是,您可能會看到您的模塊完全供電,帶有閃亮的 LED……但是連接網絡時經常出現問題。似乎低于標稱電壓的微小可能會導致可能影響射頻性能的功率不足。
- 請注意,ESP8266 可能會消耗高達 250mA 的電流。永遠不要嘗試從 Nano 的“3.3V”引腳獲取它,它無法獲取此電流。
同樣,為簡單起見,我不會使用外部 5Vdc 電源為 Nano 板供電,因為它會通過 USB 端口連接到 PC(正如您將在本教程中發現的那樣,USB 上的串行通信將被監控以獲取有趣的調試)。
...但是,如果您決定從其他來源獲得這些 5V,請考慮:
- 讓 Nano 不僅有 5V 的電壓,還有足夠的電流。您的電源應該能夠提供 1A 或更多電流。
- 將源極連接到 Nano 的“Vin”引腳,而不是“5V”引腳。第一個是正確的位置,因為它受到內部穩壓器的保護(不要害怕提供 6V)。第二個是可以為其他組件供電的輸出(對我們的 DHT11 傳感器來說很好)。
將 WiFi 模塊連接到電路板
在我們連接到板之前...
...您真的知道制造商或任何其他人在您的 ESP8266 模塊中設置的串行波特率嗎?如果是,請跳到下一點。
制造商通常將其設置為 9600 或 115200,但也可能是其他比率。
您可能想在編碼時遵循試錯法來了解它,只需嘗試不同的波特率,看看它是否有效。
或者您可能希望將您的 PC 連接到 ESP8266,通過 FTDI 模塊在兩者之間連接,以通過 ATT 命令詢問實際波特率。我推薦這種方式,因為它更具說明性,而且您可以確保您的模塊正常工作(而不是默默地燒毀或損壞)。為了實現它,我遵循了本教程,它非常好且清晰。
我建議將其設置為 9600 波特:對您的電子設備來說簡單而緩慢,對您的耐心來說足夠快。正確的命令是 AT+CIOBAUD=9600。
連接到電路板
現在我們知道了我們的 ESP8266 模塊的波特率,我們可以繼續。
我們不會使用 Nano 板的 RX/TX UART 端口連接到 ESP8266。這是因為我們想讓這個通道免費用于從我們的 PC 進行調試。
然后我們將使用兩個不同的數字引腳來擁有另一個串口,即所謂的“軟件串口”。假設 D2 將成為 TX,D3 將成為 RX 引腳。不要擔心如何實現這個新端口,您會在編碼部分發現使用庫處理它是多么容易。
那么,ESP8266 和 Nano 板之間的連接應該是這樣的。
?
?
請注意,ESP8266 上的 CHEN PIN 必須通過設置高狀態(3.3V)來啟用。放置一個10Kohm電阻進行保護。
另一個需要牢記的概念是 de TX/RX 在兩個設備中實現了不同的電壓電平。ESP8266 在 0 到 3.3V 之間工作,Nano 在 0 到 5V 之間工作。由于 Nano 能夠將 3.3V 檢測為高電平狀態,因此您可以將 Nano 上的 RX 直接連接到 ESP8266 上的 TX。但相反,建議使用分壓器來保護 RX 輸入,在高電平時使用合適的 3.3V 電壓。
...問題是我和許多其他人已經檢查過它在沒有張力分隔器的幾個月內工作正常,ESP8266 似乎得到了足夠的保護。但是不要相信我,做好。
設置溫度傳感器
我們看到的是它只有 3 個引腳。“+”是提供 5V 的地方,將其連接到 Nano 板的“5V”。“-”是與其余組件的共同點。并且“輸出”不是人們可能猜測的模擬或電阻輸出,實際上它是數字串行輸出,因為該傳感器配備了板載智能組件。
?
?
不用擔心這個協議,正如在下一節中看到的那樣,我們將很容易找到讓您零努力管理它的 Arduino 庫。由于缺少您感興趣的案例的信息(僅中文),因此似乎很難找到該協議的規范。
在我們的示例中,我們將在 PIN 5 上讀取此串行通信(是的,它可以是您電路板上的任何其他數字引腳,而您在編碼時請記住它)。
因此,連接如下:
?
整個小工具
所有這些都應該像這樣連接:
?
?
在在線服務上注冊您的密碼
如果您還沒有帳戶,請按照流程在circusofthings.com上注冊。它是免費的,正在尋找測試人員。
在您的儀表板中,創建一個“新信號”。請注意,它會顯示一個標識您的信號的鍵。記住它以進行下一步。
?
?
給它起個名字,然后隨意為您和/或社區編輯它的描述、參數、標簽等。
?
?
編碼和上傳軟件
在我們設置代碼之前,您必須獲取一些 Arduino 庫:
(您不需要 Wifi/ESP8266 的任何庫,因為它是由 CircusWifiLib 完成的)。
現在我們可以看一下代碼:
/*
WriteOneSignal.ino
This example code that shows how to feed a signal using the circusofthings.com API through its CircusWifiLib-2.0.0 library for Arduino.
With this code you can feed a signal taking the values read from a temperature sensor.
In this case, we assume we have a DHT11 sensor that is controlled by a propietary protocol implemented in its specific library.
A software serial port is used, so the onboard serial port is used to monitor the process. You have 3 degrees for monitor: DEBUG_NO,DEBUG_YES and DEBUG_DEEP.
There are no 3rd part libraries to use, beside SoftwareSerial and DHT Sensor Library Built in by Adafruit Version 1.3.0
Created by Jaume Miralles Isern, October 26, 2018.
*/
#include
// ------------------------------------------------
// These are the CircusWifiLib related declarations
// ------------------------------------------------
int TXPinForWifiModule = 2; // IO port in your arduino you will use as TX for serial communication with the wifi module
int RXPinForWifiModule = 3; // IO port in your arduino you will use as RX for serial communication with the wifi module
char ssid[] = "your_ssid_here"; // your wifi network SSID
char pass[] = "your_wifi_password_here"; // your wifi network password
int wifiSerialBaudRate = 9600; // Baud rate between your arduino and your wifi module. Did you check that your module actually uses this baud rate?
int debugSerialBaudRate = 9600; // Baud rate between your arduino and your computer
char token[] = "your_token_here"; // Your API token for Circus
char analogSignalTemperatureKey[] = "944668525"; // The key of the signal you have created at circusofthings.com
SoftwareSerial ss(RXPinForWifiModule,TXPinForWifiModule);
CircusWifiLib circus(Serial,&ss,ssid,pass,DEBUG_YES,KEEP_ALIVE);
// ------------------------------------------------
// These are the Example related declarations
// ------------------------------------------------
#define DHTPIN 5 // digital for serial propietary portocol of sensor DHT11
#define DHTTYPE DHT11 // exact model of temperature sensor DHT 11 for the general library
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(debugSerialBaudRate);
ss.begin(wifiSerialBaudRate);
dht.begin();
circus.begin();
}
void loop() {
float t = dht.readTemperature();
if (isnan(t)) {
t=-1; // if so, check the connection of your DHT11 sensor
}
delay(3000);
circus.write(analogSignalTemperatureKey,t,token);
}
把你的 WIFI 的 SSID 而不是 your_wifi_SSID_here。
把 WIFI 密碼代替 your_wifi_password_here。
將您的帳戶令牌而不是 your_user_token_here。
將您創建的信號的密鑰而不是 your_signal_key_here。
上面的代碼將每 3 秒獲取一次傳感器的值,并將其發布到您擁有的密鑰定義的信號中。
讓我們像往常一樣把草圖放在板上。
?
并打開 IDE 的串行監視器(注意在我們的例子中我們設置了 9600baud 來調試)。
?
它到達網絡了嗎?
做魔術
如果一切順利,您應該會在儀表板上看到顯示您房間內實際溫度的信號。
?
現在,在儀表板中編輯其可見性并將其設置為公開。
然后你有鏈接與那些沒有馬戲團帳戶的人分享
現在可以通過世界上的任何其他設備或應用程序訪問:
signal.circusofthings.com/944668525
任何遵循我們下一個教程的人都可以從云端獲取數據到您的 Arduino并從 Arduino 板讀取此信號。
希望這對你來說很有趣。感謝您的關注!
?
- 淺談物聯網技術在能源互聯網平臺的應用 1次下載
- 控制孩子在家中訪問互聯網的簡單方法
- 2021年中國互聯網醫療內容行業研究報告.zip
- 使用TTGO ESP32和Visuino從互聯網上獲取天氣數據
- 2021年中國互聯網醫療內容行業研究報告 24次下載
- 互聯網經濟對傳統會計的沖擊及思考 8次下載
- 未來網絡與工業互聯網發展綜述 28次下載
- 使用Arduino讀取MPU6050數據的程序免費下載 27次下載
- 2019年的互聯網趨勢互聯網女皇報告英文原版免費下載 0次下載
- 使用51單片機讀取引腳值的程序免費下載
- 如何將IoT與互聯網技術相結合
- 移動互聯網中SCTP協議的性能優化 22次下載
- 負載均衡技術在互聯網業務中的應用
- 下一代互聯網實名訪問機制研究
- VxWorks在高速數字電臺互聯網中的應用.
- WIFI已連接但無法訪問互聯網反反復復是什么原因 1.4w次閱讀
- 產業互聯網興起的三大因素是那些?有哪些主要應用模式 6711次閱讀
- 工業互聯網是什么?到底有什么用 1.7w次閱讀
- 海洋互聯網的主要應用和主要研究內容詳細資料說明 5805次閱讀
- 工業互聯網關鍵技術OPC UA TSN的詳細資料概述 9701次閱讀
- 工業互聯網體系架構2.0及工業互聯網體系架構的發展與展望資料說明 1.2w次閱讀
- 工業互聯網的詳細介紹和未來發展趨勢的詳細概述 1.3w次閱讀
- 互聯網主戰場將發生哪些改變 2776次閱讀
- 工業互聯網是什么?為什么要發展工業互聯網?怎么發展工業互聯網? 2.9w次閱讀
- 從數據看中國工業互聯網發展如何 5328次閱讀
- 如何解決IPv6帶來的互聯網流量擁塞問題? 4466次閱讀
- 能源互聯網上市公司匯總 1.5w次閱讀
- 移動互聯網是什么?移動互聯網現狀,發展趨勢及前景 3.8w次閱讀
- 移動互聯網有哪些應用?移動互聯網的發展趨勢及創業項目 2.9w次閱讀
- 互聯網汽車是什么意思_互聯網汽車有什么功能 1.8w次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數據手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537798次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191187次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多