色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

您好,歡迎來電子發燒友網! ,新用戶?[免費注冊]

您的位置:電子發燒友網>電子百科>電腦硬件>服務器>

基于OpenWrt的物聯網服務器設計

2017年12月27日 14:27 電子發燒友整理 作者: 用戶評論(0

本文提出了一種基于OpenWrt操作系統智能服務器,它可用于廚房電器的無線互聯和智能化改造。通過利用本智能廚電服務器,實現了對微波爐的智能化改造,并將智能手機通過WiFi網絡連接到服務器成功對微波爐進行了遠程控制。

本設計可以作為智能廚電的基礎物聯網平臺,可以對該平臺進行合理的擴展,使智能家居成為可能。

OpenWrt的編譯

OpenWrt是基于Linux系統,為編譯OpenWrt需要搭建Linux平臺。利用VMwareWorkstation裝載Ubuntu14.04虛擬機搭建Linux編譯環境。Ubuntu14.04系統安裝完成,連接上網絡,以非root用戶登錄,打開“應用程序—附件—終端”,在終端下利用sudoapt-getinstall命令語句,加載如下的軟件包:gccg++binutilspatchbzip2flexbisonmakeautoconfgettexttexinfounzipsharutilssubversionlibncurses5-devzlib1g-dev,利用sudoapt-getupdate命令語句更新以上軟件包。獲取OpenWrt源代碼和安裝包。在終端中輸入命令語句svncheckoutsvn://svn.openwrt.org/openwrt/trunk,將會在OpenWrt代碼托管網站上下載OpenWrt最新工程文件。

feeds是OpenWrt環境所需要的軟件包套件。通過feeds.conf.default文件檢查需要包含在環境中的軟件包。下載所需要的軟件包,使用[openwrt@localhosttrunk]$./scripts/feedsupdate-a./scripts/feedsinstall-a更新feeds的配置文件,添加新的軟件包用于生成系統。使用交叉編譯,生成的SDK以及image等文件的類型取決于開發環境、應用硬件及源碼版本。這需要對開發環境進行了解,才能進行正確的配置。使用makedefconfigmakeprereqmakemenuconfig進入配置界面(menu-config),如下圖所示。

基于OpenWrt的物聯網服務器設計

OpenWrt編譯配置界面

在TargetSystem和TargetProfile下選擇合適的目標即可。本文設計選擇TP-LINKTL-WR703N作為目標。選擇BuildtheOpenWrtImageBuilder和BuildtheOpenWrtSDK即可在編譯中產生相關二進制和SDK文件。

保存好選項,退出配置界面返回終端,利用[openwrt@localhosttrunk]$makepackage/cups/compileV=99語句進行OpenWrt的編譯。編譯過程中會自動從OpenWrt源碼托管網站下載相關的系統文件。等待編譯結束后,產生相應的Image和SDK文件。在SDK中添加自己的packages進行智能服務器系統開發。

對于新建的package,可以作為一個可選軟件包,利用SDK環境來單獨編譯,編譯生成一個ipk的文件包,最后在OpenWrt系統下安裝即可。

在本文設計中利用了socket接口通信協議和ser2net服務。實現方法如下:

com_init();//端口初始化

//設置一個socket地址結構

structsockaddr_inserver_addr;

bzero(&server_addr,sizeof(server_addr));

server_addr.sin_family=AF_INET;//服務器IP

server_addr.sin_addr.s_addr=htons(INADDR_ANY);

server_addr.sin_port=htons(SERVER_PORT);//控制端口//數據發送

voidsend_cmd(unsignedcharcmd){

intlen;

intn=0;

charwrite_buf[50];

n=0;

len=3;

bzero(write_buf,sizeof(write_buf));

write_buf[0]=0xfe;

write_buf[1]=0x00;

write_buf[2]=cmd;

n=write(fd,write_buf,len);

printf(“writedchars\n”,n);

}

本文采用的服務器IP為192.168.1.1,端口為2001。

編寫的makefile文件如下:

#buildopenwrt-serverexecutablewhenuserex-

ecutes“make”

openwrt-server:openwrt-server.o

$(CC)$(LDFLAGS)openwrt-server.o-o

openwrt-server

openwrt - server. o: openwrt - server. c

$ ( CC) $ ( CFLAGS) - c openwrt - server. c

# remove object files and executable when user executes “ make clean”

clean:

rm * .o openwrt - server

執行 make 生成 openwrt - server. ipk 文件,將文件 上 傳 到 路 由 器。利 用 opkg install 安 裝 ser2net. ipk 和 openwrt - server. ipk。

至此,OpenWrt 智能服務器系統編譯完成。

TP - Link Wr70n改造

本設計選擇 TP - Link Wr70n 作為中繼服務器,負責智能手機與廚房電器之間的通信。TP - Link Wr703n 是一款基于 ARM 構架的無線路由器。本文利用 TP - Link Wr703n 的串口與廚房電器進行通信,該款路由器默認未將串口引出。對 TP - Link Wr703n 的改造,讓 OpenWrt 系統成功與其適配也是該設計的重點。Wr703n 路由器的版圖如下圖所示。

Wr703n 電路版圖

圖中 A 部分是 Wr703n 的控制 AR9331 的位置, B 部分是 Flash 所在位置。通過對 Wr703n 的電路改造引出 TTL 串口。

取下原有的 4 MB Flash 芯片,將芯片更換為Hynix HY27UF084G2B 64 MB Flash 芯片。通過原理圖找到 Wr703n 處理器的串口引腳,利用跳線引出串口到 USB 接口上,路由器改造完成。

非常好我支持^.^

(0) 0%

不好我反對

(5) 100%

( 發表人:李建兵 )

      發表評論

      用戶評論
      評價:好評中評差評

      發表評論,獲取積分! 請遵守相關規定!

      ?
      主站蜘蛛池模板: 日本欧美久久久久免费播放网| 国产精选视频在线观看| qvod电影在线观看| 久久精品国产亚洲AV未满十八| 天美麻豆成人AV精品视频| 99影视久久电影网久久看影院| 久久亚洲国产成人影院| 亚洲热在线视频| 国产真实女人一级毛片| 午夜深情在线观看免费| 国产电影无码午夜在线播放| 日操夜操天天操| 超碰在线视频97| 日本女人bb| 达达兔午夜一级毛片| 日本粉嫩学生毛绒绒| 不卡一区二区高清观看视频| 琪琪SEE色原网色原网站18| free乌克兰性xxxxhd| 人妻满熟妇AV无码区国产| 边做边爱BD免费看片| 欧美 亚洲 日韩 中文2019| 99久久精品国产高清一区二区| 男人的天堂黄色片| 超大号黑吊magnet| 色婷婷99综合久久久精品| 国产成人在线视频免费观看| 午夜国产福利| 精品国产原创在线观看视频| 影音先锋电影资源av| 美丽的姑娘BD在线观看| FREESEXVIDEO 性老少配| 日日干夜夜爱| 国产在线精品亚洲另类| 友田真希息与子中文字幕| 久久精品视频15人人爱在线直播| 中文字幕在线播放| 全部免费特黄特色大片看片| 国产精品美女久久久久浪潮AV| 亚洲日韩有码无线免费| 男女夜晚在爽视频免费观看|