樹莓派項目——基於樹莓派的WIFI網絡互傳系統設計


實驗原理

所需硬件:樹莓派3B,TP-LINK WiFi模塊,筆記本電腦,網線

所需軟件:Putty、遠程桌面鏈接、python、cmd界面

樹莓派3B是只有信用卡大小的微型電腦,其系統基於Linux。在WIFI網絡互傳測試實驗中作為服務器Server端,接收PC端的鏈接請求,並向其發射數據。

TP-LINK WiFi模塊搭建在樹莓派3B上為樹莓派3B鏈接無線網絡。

PC端作為客戶端向樹莓派3B發送鏈接請求,鏈接上后接收樹莓派3B發送的數據。

無線網絡為樹莓派和PC端提供同一個網絡信號。

網線首次連接樹莓派獲取IP。

實驗步驟

  1. 樹莓派安裝系統,搭建TP-LINK WiFi模塊,。
  2. Putty第一次鏈接樹莓派可以通過網線鏈接獲得一個IP地址,進入連接狀態輸入pi與密碼raspberry,可以利用遠程桌面連接工具連接到樹莓派的桌面進行操作,並且設置無線的靜態IP

設置靜態IP步驟:

1)sudo vim /etc/dhcpcd.conf

2)interface wlan1

 

static ip_address=192.168.1.133/24

static routers=192.168.1.1

static domain_name_servers=192.168.1.1

eth0是有線的配置  , wlan0是無線配置

ip_address就是靜態IP , 后面要接/24

routers是網關

static domain_name_servers是DNS

3)sudo reboot

  1. 樹莓派上利用python編寫server程序:
 1 import socket
 2 
 3 import time
 4 
 5 import sys
 6 
 7 HOST_IP = "192.168.1.133"
 8 
 9 HOST_PORT = 8888
10 
11 #創建Socket,SOCK_STREAM表示類型為TCP
12 
13 print("Starting socket: TCP...")
14 
15 socket_tcp = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
16 
17  #綁定IP和端口,並進行監聽
18 
19 #137.58.230.162為本機IP,端口為7654
20 
21 print("TCP server listen @ %s:%d!" %(HOST_IP, HOST_PORT) )
22 
23 host_addr = (HOST_IP, HOST_PORT)
24 
25 socket_tcp.bind(host_addr)
26 
27 socket_tcp.listen(1)
28 
29 #接受Client發出的連接請求,返回值包含了Client的IP和端口
30 
31 socket_con, (client_ip, client_port) = socket_tcp.accept()
32 
33 print("Connection accepted from %s." %client_ip)
34 
35 #向Clinet發送數據
36 
37 socket_con.send("Welcome to RPi TCP server!")
38 
39 socket_tcp.close()

 

運行結果:

1 Starting socket: TCP...
2 
3 TCP server listen @ 192.168.1.133:8888!
4 
5 Connection accepted from 192.168.1.111.

 

注意:

端口號為8888可以自己設置,范圍為0-65535,設置時不能占用已經使用的端口號。如Putty連接樹莓派用到了22這個端口,就不能再設置成22.

  1. PC 機上利用python編寫cline程序:
 1 import socket   
 2 
 3 import time
 4 
 5 import sys    
 6 
 7 SERVER_IP = "192.168.1.133"
 8 
 9 SERVER_PORT = 8888
10 
11 print("Starting socket: TCP...")
12 
13 socket_tcp = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
14 
15 print("Connecting to server @ %s:%d..." %(SERVER_IP, SERVER_PORT))
16 
17 server_addr = (SERVER_IP, SERVER_PORT)
18 
19 socket_tcp.connect(server_addr)  
20 
21 data = socket_tcp.recv(512)
22 
23 print("Server: %s" %data)
24 
25 socket_tcp.close()

 

 運行結果:

1 runfile('E:/socket_tcp_clinet1.py', wdir='E:')
2 
3 Starting socket: TCP...
4 
5 Connecting to server @ 192.168.1.133:8888...
6 
7 Server: Welcome to RPi TCP server!

 

命令大全

sudo raspi-config 進入樹莓派設置界面

hostname -I      樹莓派查IP

sudo apt-get install xrdp  下載xrdp服務包

cmd  arp  -a     電腦查IP

man              查詢命令

ls               查看文件夾里面的內容

cat  /boot/config.txt -n  顯示內容

mkdir            新建文件夾

cd /usr          進入目錄

sudo reboot      重啟樹莓派

vim              進入vim

:q!              退出vim

:wq              保存並退出vim

i a o            vim切換到輸入狀態

Esc              切換狀態

ipconfig         電腦查IP

ifconfig          樹莓派查IP

python test.py    運行python程序

netstat  -an      電腦查端口號

netstat  p        樹莓派查端口號


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM