1.05k likes | 1.06k Views
05 Wi-Fi 無線 通訊技術. 5-1 認識 電腦網路 5-2 認識 ESP8266 模組. 5-1 認識 電腦網路. 5-1-1 區域網路. 所謂電腦網路( computer network )是指電腦與電腦之間利用纜線連結,以 達到 資料傳輸 及 資源共享 的目的。依網路連結的方式可以分為 有線電腦網路 及 無線 電腦網路 。
E N D
05 Wi-Fi 無線通訊技術 5-1 認識電腦網路 5-2 認識ESP8266 模組
5-1 認識電腦網路 5-1-1 區域網路 所謂電腦網路(computer network)是指電腦與電腦之間利用纜線連結,以達到資料傳輸及資源共享的目的。依網路連結的方式可以分為有線電腦網路及無線電腦網路。 如圖5-1 所示區域網路(Local Area Network,簡記LAN),使用寬頻分享器或集線器(Hub)將家庭或公司的內部裝置連結起來,再由寬頻分享器或集線器自動為網內的每部電腦配置一個私用(private)的IP 位址。
5-1-2 廣域網路 如圖5-2 所示廣域網路WAN,是由全世界各地的LAN 網路互相連接而成,WAN網路必須向網際網路服務商(Internet Service Provider,簡記ISP)租用長距離纜線,再由ISP 服務商配置一個固定IP 位址或浮動IP 位址給用戶端,使用者才能連上網際網路。
5-1-3 無線區域網路 所謂無線區域網路(Wireless Local Area Network,簡記WLAN)是指由無線基地台(Access Point,簡記AP)連結電信服務商的數據機(modem)發射無線電波訊號,再由使用者電腦所裝設的無線網卡來接收訊號。
5-1-4 何謂IP? 常見的IP 位址可以分為IPv4 及IPv6 兩大類,其中IPv4 是由四個8 位元所組成的32 位元二進位陣列, 彼此之間再以點符號"." 做為區隔, 表示成xxxxxxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx形式,其中x 代表0 或1 的1 位元二進位數。 如表5-2 所示為IPv4 位址的分類及規模,可分為A、B、C、D、E 五大類。其中A 類是政府、研究機構及大型企業使用,B 類是中型企業使用,C 類是ISP 服務商及小型企業使用,D 類是多點廣播(Multicast)用途,而E 類保留作為研究用途。
5-1-5 建立可以連上網際網路的私用IP 第一步是在Microsoft IE 或Google Chrome 瀏覽器中輸入網址192.168.0.1 進入如圖5-4 所示『網路管理頁面』。第二步是在該頁面中找到『虛擬伺服器規則』頁面,設定應用程式名稱為『HTTP』、電腦名稱為Wi-Fi 模組所使用的私用IP 位址『192.168.0.170』(依實際配置的IP 位址設定),並指定公用服務埠為80(或其它埠)及私人服務埠。為80(或其它埠)。
5-1-6 取得自己的公用IP 位址 要由網際網路遠端控制區域網路中的物聯網設備時,只要輸入家中寬頻分享器的公用IP 位址,並且在後面加上冒號":"後,緊接著再輸入虛擬伺服器的公用服務埠號碼即可連線,以筆者所使用的電腦為例,輸入格式如下:
5-2 認識ESP8266 模組 如圖5-6 所示ESP8266 ESP-01 模組(本文簡稱ESP8266 模組),由深圳安信可(Ai-Thinker)科技所生產製造,是最受歡迎的ESP8266 模組,價格不到百元。
ESP8266 模組是一個體積小、功能強、價位低的Wi-Fi 模組,工作電壓3.3V,內部沒有穩壓IC,所以不可以直接連接5V,以免燒毀ESP8266 晶片。在睡眠模式下的消耗電流小於10A,在工作模式下平均消耗電流80mA,最大消耗電流300mA。ESP8266 模組使用2.4GHz 工作頻段,內建TCP/IP 協定套件,在空曠地方傳輸距離可達400 公尺。支援802.11b/g/n 無線網路協定及WPA/WPA2 加密模式,可以設定為無線網路基地台(Access Point,簡記AP),或是直接連線到無線網路(Wi-Fi Direct,簡記P2P)。
5-2-1 ESP8266 模組常用AT 指令 我們可以使用AT 指令來設定ESP8266 模組的參數。AT 指令沒有大、小寫之分,在使用AT 指令設定ESP8266 模組參數前,須先設定與ESP8266 模組相同的序列埠鮑率(baudrate),舊版為57600bps,新版為9600bps 或115200bps。 在AT 指令的結尾必須加上換行(newline,簡記NL)及歸位(carriage return,簡記CR)兩個字符作為結束,模組才會有所回應,一般是按下 鍵來產生結束字符"\r\n"。
動手做:ESP8266 模組參數設定電路 • 功能說明 如圖5-7 所示ESP8266 模組參數設定電路接線圖,將ESP8266 模組CH_PD 腳連接至3.3V,致能ESP8266 工作。上傳ch5-1.ino 檔案至Arduino 控制板,打開『序列埠監控視窗』,即可開始執行AT 指令來設定ESP8266 模組的參數。ESP8266 模組在一般工作模式時,GPIO0 接腳必須接至高電位或空接,使用Arduino 板上的3.3V電源即可提供足夠電流。如果是要進行韌體更新時,GPIO0 接腳必須接地才能進入韌體更新模式,最大工作電流可達200~300mA,因此必須使用獨立3.3V 電源,才能確保模組的工作正常。 • 電路接線圖
一、ESP8266 模組測試 • 開啟並上傳ch5-1.ino。 • ESP8266 模組出廠預設UART鮑率為9600bps 或是115200bps,如果9600bps 沒有反應,則改為115200bps。 • 開啟『序列埠監控視窗』。 • 設定Arduino 控制板的序列埠傳輸速率為9600bps。 • 結尾符號必須為【NL&CR】,才能執行AT 指令。 • 在傳送欄位中輸入AT 指令測試ESP8266 模組,如果連線正確,模組回應OK。如果沒有回應,表示所設定的模組鮑率不正確。 • 在傳送欄位中輸入AT+GMR指令,查詢韌體版本及序號。
二、設定UART 參數 • 在傳送欄位中輸入AT+UART_DEF=9600,8,1,0,0 指令,將模組鮑率改為9600bps,8 個資料位元,1 個停止位元,無同位元。必須同時更改ch5-1.ino 程式中指令ESP8266.begin(9600)括號內的傳輸速率。 • 設定成功,模組回應OK。
三、加入AP • 輸入AT+CWMODE 指令,並且按下 鈕,將模組設定為STA 模式。 • 輸入AT+CWLAP 指令,列出目前可用的AP。 • 輸入AT+CWJAP 指令,加入AP
四、遠端連線 • 輸入AT+CIFSR 指令,取得本地IP 位址。 • 輸入AT+CIPMUX=1 指令,設定為多路連線模式。 • 輸入AT+CIPSERVER 指令,開啟server,並且設定通訊埠為8000。
安裝並開啟telnet/SSH 伺服器連線工具PuTTY進入Configuration 視窗。 • 在主機(Host Name)欄位中輸入IP 位址192.168.0.104。 • 在埠號(Port) 欄位中輸入8000。 • 選擇連線方式(Connectiontype)為Telnet。 • 按下 開啟遠端連線。
如果在『序列埠監控視窗』中出現0,CONNECT, 表示與server 連線成功。 • 在PuTTY終端機視窗中輸入hello 字串傳送給ESP8266 模組。 • 模組正確收到數據後,模組串口輸出+IPD,0,5:hello,表示在通道0 收到5 個字元”hello”。 • 關閉PuTTY程式,結束遠端連線,序列埠出現0,CLOSED,表示與server 斷線。
動手做:Wi-Fi 燈光控制電路(使用序列埠視窗顯示IP 位址) • 功能說明 如圖5-9 所示Wi-Fi 燈光控制電路(使用序列埠視窗顯示IP 位址)接線圖,利用Wi-Fi 模組加入家用AP,並且設為伺服器角色,所取得的私用IP 位址會顯示在圖5-8 所示『序列埠監控視窗』中。當系統重置時,Wi-Fi 連線指示燈L5 快閃三下,成功與Wi-Fi 建立連線後,DHCP 伺服器會配置一個私用IP 位址給ESP8266 模組,同時點亮L5。成功連線後,用戶端開啟手機App 程式APP/ch5/WiFiled.aia,輸入所取得的IP 位址後即可遠端控制燈光的開(ON)與關(OFF)。
動手做:Wi-Fi 燈光控制電路(使用LCD 顯示IP 位址) • 功能說明 如圖5-11 所示Wi-Fi 燈光控制電路(使用LCD 顯示IP 位址)接線圖,利用ESP8266 模組加入家用AP,並且將ESP8266 模組設定為伺服器角色,取得私用IP位址顯示於LCD 中。連線成功後,用戶端再開啟App 程式APP/ch5/WiFiled.aia,輸入伺服器的IP 位址後,就可以遠端控制LED 燈的開(ON)與關(OFF)。 • 電路接線圖