国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于ESP8266的充電樁數(shù)據(jù)采集器設(shè)計(jì)*

2017-05-25 00:37:36朱浩翔郭為民
關(guān)鍵詞:框圖采集器電能表

朱浩翔,郭為民,楊 寧

(1.上海電力學(xué)院 自動(dòng)化工程學(xué)院,上海 200090;2.國(guó)網(wǎng)河南省電力公司電力科學(xué)研究院,河南 鄭州 450052)

基于ESP8266的充電樁數(shù)據(jù)采集器設(shè)計(jì)*

朱浩翔1,郭為民2,楊 寧1

(1.上海電力學(xué)院 自動(dòng)化工程學(xué)院,上海 200090;2.國(guó)網(wǎng)河南省電力公司電力科學(xué)研究院,河南 鄭州 450052)

充電樁通常采用工業(yè)總線與后臺(tái)通信。針對(duì)工業(yè)總線布網(wǎng)復(fù)雜、擴(kuò)展性差、易受干擾等缺點(diǎn),通過(guò)無(wú)線模塊設(shè)計(jì)了一個(gè)充電樁數(shù)據(jù)采集器,以ESP8266作為核心通信模塊,將充電樁的數(shù)據(jù)進(jìn)行采集并上傳到上位機(jī)。首先介紹了ESP8266硬件電路及其開發(fā)環(huán)境。接著根據(jù)采集數(shù)據(jù)的不同,提出了一種更高效率的采集方案。最后經(jīng)過(guò)實(shí)際應(yīng)用驗(yàn)證了該采集器的可行性。所設(shè)計(jì)的采集器具有一定的通用性,通過(guò)簡(jiǎn)單修改配置,可以將此采集器應(yīng)用于不同設(shè)備的數(shù)據(jù)采集。

充電樁;無(wú)線通信;ESP8266;采集方案

0 引言

據(jù)國(guó)家發(fā)改委公布的數(shù)據(jù),截止到2016年,我國(guó)充電樁的數(shù)量不到 5 萬(wàn)個(gè),遠(yuǎn)遠(yuǎn)不能滿足國(guó)內(nèi)電動(dòng)汽車發(fā)展的需要,明顯制約了電動(dòng)汽車的普及。在“十三五”的規(guī)劃指導(dǎo)下,越來(lái)越多的汽車制造商和電力企業(yè)投入了大量的資源開展充電樁等電動(dòng)汽車基礎(chǔ)設(shè)施的研究。但在積極推動(dòng)電動(dòng)汽車基礎(chǔ)設(shè)施建設(shè)的情況下,仍存在認(rèn)識(shí)不統(tǒng)一、配套政策不完善、協(xié)調(diào)推進(jìn)難度大、標(biāo)準(zhǔn)規(guī)范不健全等問(wèn)題。其中充電樁后臺(tái)檢測(cè)是充電樁快速推廣發(fā)展的關(guān)鍵,要在充電站實(shí)現(xiàn)通信系統(tǒng),通常需要布置各類工業(yè)總線(RS485、RS232、CAN總線),其優(yōu)點(diǎn)是數(shù)據(jù)傳輸可靠、設(shè)計(jì)簡(jiǎn)單[1];缺點(diǎn)是布網(wǎng)復(fù)雜、擴(kuò)展性差、施工成本高、靈活性差、通信容量低,并且在一般的電力環(huán)境中都會(huì)存在很大的電磁干擾[2],普通線纜布置的總線網(wǎng)絡(luò)常常會(huì)出現(xiàn)問(wèn)題,另外對(duì)于早期投入建設(shè)但無(wú)良好通信功能的充電樁來(lái)說(shuō),在現(xiàn)場(chǎng)地下重新布置工業(yè)總線既不經(jīng)濟(jì)也不現(xiàn)實(shí)。因此,本文基于無(wú)線通信模塊設(shè)計(jì)了一個(gè)充電樁數(shù)據(jù)采集器,該采集器的工作是將充電樁的數(shù)據(jù)上傳到上位機(jī),具有成本低、擴(kuò)展性好、靈活性好等優(yōu)點(diǎn)。

工業(yè)常用的無(wú)線通信模塊有NRF905、CC1101、CC3200、SIM900、ESP8266等,前兩者通常需要額外的單片機(jī)對(duì)其進(jìn)行控制和數(shù)據(jù)處理;ESP8266模塊自帶GPIO與SPI等接口,可以獨(dú)立作為產(chǎn)品不需要額外的單片機(jī);而CC3200和SIM900模塊功能強(qiáng)大且包含了MCU,但其價(jià)格昂貴、功耗較大[3-6]。ESP8266不僅價(jià)格低廉,還有如下優(yōu)點(diǎn):同類產(chǎn)品一般不帶Flash,ESP8266-12F的Flash為4 MB、內(nèi)存為80 KB;其兼容性非常好,支持AT指令、C、Python、Lua、Javascript、Arduino等開發(fā)語(yǔ)言。因此ESP8266是業(yè)界一款里程碑式的WiFi芯片。

1 原理設(shè)計(jì)

選擇ESP8266作為無(wú)線通信模塊,通過(guò)RS485串口與充電樁連接,將ESP8266連接到WiFi與上位機(jī)處在同一局域網(wǎng),實(shí)現(xiàn)局域網(wǎng)內(nèi)通信。上位機(jī)通過(guò)下發(fā)查詢報(bào)文采集充電樁的數(shù)據(jù)。充電樁只需轉(zhuǎn)發(fā)報(bào)文采集電能表數(shù)據(jù)。

1.1 通信協(xié)議選擇

系統(tǒng)總體框圖如圖1所示。

圖1 系統(tǒng)框圖

ESP8266內(nèi)置了完整的TCP/IP協(xié)議棧,可以作為TCP的客戶端。固件提供了接口函數(shù),用戶可以不管TCP/IP底層代碼的實(shí)現(xiàn)。為了確保數(shù)據(jù)傳輸?shù)目煽亢桶踩?,選擇MODBUS-TCP協(xié)議與上位機(jī)通信。其中上位機(jī)作為TCP服務(wù)器。

由于充電樁的數(shù)據(jù)由電能表提供,因此選擇電能表協(xié)議DLT645-2007與ESP8266通信。

1.2 硬件設(shè)計(jì)

由于ESP8266集成了射頻電路,內(nèi)置32位MCU,使得外圍電路設(shè)計(jì)十分容易。其硬件電路圖如圖2所示。

圖2 硬件電路圖

由圖2可以看出ESP8266的外圍電路非常簡(jiǎn)單,ESP8266對(duì)電源穩(wěn)定性要求非常高,因此只需幾個(gè)電容用于電源濾波。3.3 V的電壓可以直接用LiPo電池供電。本采集器使用的型號(hào)是ESP8266-12E,該型號(hào)是ESP8266系列中最穩(wěn)定、最成熟的模塊。

充電樁的核心控制板M287是飛思卡爾的一塊工控核心板,M287通過(guò)RS485串口與ESP8266連接。

1.3 軟件設(shè)計(jì)

1.3.1 ESP8266 SDK與ESP8266 IDE

Eclipse IDE:它是由安可信發(fā)布的一款用于ESP8266二次開發(fā)的軟件平臺(tái),由Eclipse集成了相關(guān)插件,相對(duì)于官方開發(fā)環(huán)境配置。Eclipse IDE簡(jiǎn)易、方便,最重要的是可以在Windows下直接運(yùn)行[7],編譯過(guò)后能夠直接生成bin文件,通過(guò)燒寫工具ESP8266Flasher將bin文件燒入ESP8266即可。

ESP8266 SDK(Software Development Kit):用戶根據(jù)自己的ESP8266型號(hào)在樂鑫官網(wǎng)上下載需要的SDK。SDK包含了所有驅(qū)動(dòng),為用戶提供了一個(gè)非常簡(jiǎn)單易用的平臺(tái),雖然其底層代碼對(duì)用戶不透明,但都提供了接口函數(shù),用戶根據(jù)編程手冊(cè)可以直接調(diào)用[3]。

1.3.2 采集程序設(shè)計(jì)

用戶應(yīng)用的初始化功能在user_init()實(shí)現(xiàn),user_init()是程序的入口函數(shù), ESP8266開機(jī)從該函數(shù)開始執(zhí)行。ESP8266主程序流程框圖如圖3所示。

圖3 主程序流程圖

主程序user_init()部分代碼如下:

void user_init()

{

uart_init(BIT_RATE_115200,BIT_RATE_115200);

//串口初始化

user_set_station_config();

//esp8266 WiFi信息配置

}

void user_set_station_config()

{

struct station_config stationconfig;

os_memset(&stationconfig.ssid, 0, 32);

os_memset(&stationconfig.password, 0, 64);

os_memcpy(&stationconfig.ssid, "WIFINAME", 8);

//設(shè)定連接的WiFi

os_memcpy(&stationconfig.password, "passward.", 8);

//WiFi密碼

stationconfig.bssid_set=0;

wifi_station_set_config(&stationconfig);

os_timer_disarm(&test_timer);

os_timer_setfn(&test_timer,(os_timer_func_t*)user_check_ip, NULL);

os_timer_arm(&test_timer, 2000, 1);

}

最后配置TCP客戶端信息,這里需要注意連接TCP服務(wù)器時(shí)必須確保WiFi已成功連接,因此設(shè)定了一個(gè)定時(shí)器test_timer,該定時(shí)器的作用是通過(guò)WiFi狀態(tài)接口函數(shù)wifi_station_get_connect_status()循環(huán)檢測(cè)WiFi是否連接成功,當(dāng)WiFi連接成功后配置TCP客戶端信息。下面為建立TCP連接的程序:

user_check_ip()

{

tcpclient.type=ESPCONN_TCP;

//tcp連接方式

tcpclient.state = ESPCONN_NONE;

tcp_server_ip.addr = 0;

const char esp_server_ip[4] = {x,x,x,x};

os_memcpy(tcpclient.proto.tcp->remote_ip, esp_server_ip, 4);

//遠(yuǎn)程IP設(shè)定

tcpclient.proto.tcp->remote_port = 8888;

// 遠(yuǎn)程端口設(shè)定

tcpclient.proto.tcp->local_port = espconn_port();

//本地端口設(shè)定

espconn_connect(&tcpclient);

//連接tcp 服務(wù)器

}

remote_ip可以選擇自動(dòng)分配或固定IP,遠(yuǎn)程端口remote_port根據(jù)上位機(jī)選擇,通常選擇比較大的,小的端口通常被上位機(jī)一些系統(tǒng)服務(wù)占據(jù)。

2 數(shù)據(jù)采集方案

根據(jù)充電樁電能表協(xié)議,需要采集的數(shù)據(jù)有變量數(shù)據(jù)、電能量數(shù)據(jù)、最大需量及發(fā)生時(shí)間數(shù)據(jù)、時(shí)間記錄數(shù)據(jù)。

根據(jù)采集頻率和是否需要實(shí)時(shí)顯示,將數(shù)據(jù)分為兩類,分別采用不同的方案采集。

第一類數(shù)據(jù):電能量數(shù)據(jù)、最大需量及發(fā)生時(shí)間數(shù)據(jù)、時(shí)間記錄數(shù)據(jù),比如:A相電壓失壓總次數(shù)和時(shí)間。此類數(shù)據(jù)非常多,并且是不需要實(shí)時(shí)顯示的,采集頻率很低,采用方案A。

第二類數(shù)據(jù):變量數(shù)據(jù),比如:A、B、C三相電壓、電流、功率等,此類數(shù)據(jù)是需要實(shí)時(shí)顯示的,其采集頻率很高。采用方案B。

2.1 采集方案A

針對(duì)非實(shí)時(shí)更新數(shù)據(jù):比如事件記錄數(shù)據(jù)中的某條報(bào)文:A相失壓總次數(shù)和時(shí)間。上位機(jī)下發(fā)該條查詢報(bào)文,ESP8266解析該報(bào)文并下發(fā)給電能表,電能表響應(yīng)該報(bào)文并回復(fù)報(bào)文給ESP8266,ESP8266解析回復(fù)報(bào)文再上傳給上位機(jī)。采集方案A如圖4所示。具體程序流程圖如圖5所示。

圖4 方案A框圖

2.2 采集方案B

針對(duì)實(shí)時(shí)更新數(shù)據(jù):比如瞬時(shí)電壓、電流、功率。由ESP8266向電能表循環(huán)發(fā)送N條報(bào)文,電能表響應(yīng)每一條報(bào)文,ESP8066解析N條報(bào)文,得到數(shù)據(jù)存入自身內(nèi)存。上位機(jī)向ESP8266循環(huán)下發(fā)N條查詢報(bào)文,ESP8266取出內(nèi)存中的數(shù)據(jù)回復(fù)上位機(jī)。采集方案B如圖6所示。具體程序流程圖如圖7所示。

2.3 采集方案比較

對(duì)比分析方案A和方案B,由于方案B中的ESP8266與上位機(jī)和充電樁的通信是相互獨(dú)立的,因此在程序上更容易實(shí)現(xiàn)。并且由于方案B相互間的通信是同時(shí)進(jìn)行的,需要實(shí)時(shí)更新的數(shù)據(jù)已經(jīng)被采集并存放在ESP8266內(nèi)

圖5 方案A程序流程圖

存中,上位機(jī)在下發(fā)查詢報(bào)文時(shí),ESP8266只需取出內(nèi)存中的數(shù)據(jù)直接回復(fù)即可,無(wú)需將MODBUS-TCP報(bào)文格式轉(zhuǎn)化為DLT645-2007報(bào)文格式,再下發(fā)到充電樁,最后才將充電樁回復(fù)的數(shù)據(jù)上傳到上位機(jī)。綜上所述,方案B的采集效率更高,因此數(shù)據(jù)的實(shí)時(shí)性也得到了提高。

兩套流程交替運(yùn)行,如果上位機(jī)準(zhǔn)備查詢的是非實(shí)時(shí)數(shù)據(jù),此時(shí)ESP8266通過(guò)判斷上位機(jī)下發(fā)的查詢報(bào)文,停止A方案,開始B方案。由于非實(shí)時(shí)數(shù)據(jù)采集頻率通常非常低,所以待一條非實(shí)時(shí)數(shù)據(jù)的報(bào)文得到正常響應(yīng)后,重新開始A方案,停止B方案。

圖6 方案B框圖

圖7 方案B程序流程圖

3 結(jié)論

本文基于ESP8266設(shè)計(jì)的無(wú)線數(shù)據(jù)采集器,成功地實(shí)現(xiàn)了充電樁的數(shù)據(jù)采集,針對(duì)不同數(shù)據(jù)類型使用不同采集方案提高了充電樁的數(shù)據(jù)采集效率。與傳統(tǒng)的充電樁有線數(shù)據(jù)采集器相比,該采集器具有方便安裝、易于維護(hù)、靈活擴(kuò)展等特點(diǎn)。該采集器具有一定的通用性,通過(guò)修改配置文件并增加所需通信協(xié)議,即可以作為通用的數(shù)據(jù)采集產(chǎn)品。

[1] 周春喜.電動(dòng)汽車充電站遠(yuǎn)程監(jiān)管網(wǎng)絡(luò)系統(tǒng)研究[D].杭州:浙江大學(xué), 2012.

[2] 劉嘉慧.我國(guó)可插電式電動(dòng)汽車充電設(shè)備行業(yè)研究報(bào)告[D].成都:西南財(cái)經(jīng)大學(xué), 2014.

[3] 霍濤, 賈振堂. 基于STM32和SIM900A的無(wú)線通信模塊設(shè)計(jì)與實(shí)現(xiàn)[J]. 電子設(shè)計(jì)工程, 2014, 22(17):106-110.

[4] 李美蓮. 基于SIM900B家用電器遠(yuǎn)程監(jiān)控系統(tǒng)的研究[J]. 微型機(jī)與應(yīng)用, 2013,32(24):31-33.

[5] 齊華, 王秋娟, 劉軍. 基于CC2430的無(wú)線條碼數(shù)據(jù)采集器的設(shè)計(jì)[J]. 電子技術(shù)應(yīng)用, 2011, 37(2):120-122.

[6] 李春杰,劉瑞霞.基于一種新型嵌入式系統(tǒng)級(jí)芯片的無(wú)線數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)[J].現(xiàn)代電子技術(shù), 2006, 29(3):36-38.

[7] 范興隆. ESP8266在智能家居監(jiān)控系統(tǒng)中的應(yīng)用[J]. 單片機(jī)與嵌入式系統(tǒng)應(yīng)用, 2016, 16(9):52-56.

Design of data collector for charging piles based on ESP8266

Zhu Haoxiang1,Guo Weimin2,Yang Ning1

(1.School of Automation Engineering, Shanghai University of Electric Power, Shanghai 200090, China;2.Electric Power Research Institute of State Grid Henan Electric Power Company, Zhengzhou 450052, China)

Charging pile usually adopts industrial bus for background communications. According to industrial bus complex, poor extension, vulnerable to jamming and other problems, this paper designed a charging pile data collector using ESP8266 as the core module. Collecting the data of charging piles and uploading to the host computer . Firstly, the development and application of ESP8266 and its hardware circuit are introduced. Secondly,according to the difference of the collected data, the paper puts forward a more efficient collection scheme. Finally, the feasibility of the collector is verified by practical application. In this paper, the design of the data collector has a certain commonality that can apply to the data collector for different equipment through a simple modification of the configuration.

charging pile; wireless communication; ESP8266; collection method

國(guó)家自然科學(xué)基金青年基金項(xiàng)目(21607111)

TP23

A

10.19358/j.issn.1674- 7720.2017.09.027

朱浩翔,郭為民,楊寧.基于ESP8266的充電樁數(shù)據(jù)采集器設(shè)計(jì)[J].微型機(jī)與應(yīng)用,2017,36(9):92-94,99.

2016-12-07)

朱浩翔(1992-),男,碩士研究生,主要研究方向:充電樁數(shù)據(jù)通信,開關(guān)電源控制策略。

郭為民(1971-),男,學(xué)士,高級(jí)工程師,主要研究方向:源網(wǎng)協(xié)調(diào)及電力系統(tǒng)分析與控制。

楊寧(1976-),男,博士,教授,主要研究方向:電網(wǎng)運(yùn)行中設(shè)備測(cè)量與控制、車輛導(dǎo)航與調(diào)度和智能算法研究。

猜你喜歡
框圖采集器電能表
巧數(shù)電能表
COVID-19大便標(biāo)本采集器的設(shè)計(jì)及應(yīng)用
捷豹I-PACE純電動(dòng)汽車高壓蓄電池充電系統(tǒng)(三)
認(rèn)識(shí)電能表
電路圖2017年凱迪拉克XT5
基于ZigBee的大型公共建筑能耗采集器設(shè)計(jì)
基于LabVIEW的多數(shù)據(jù)采集器自動(dòng)監(jiān)控軟件設(shè)計(jì)與開發(fā)
算法框圖的補(bǔ)全
基于圖表法構(gòu)建《萬(wàn)有引力定律與航天》知識(shí)網(wǎng)絡(luò)
電能表自動(dòng)化檢定機(jī)器人可靠掛卸表方案設(shè)計(jì)與實(shí)現(xiàn)
石嘴山市| 丰城市| 柞水县| 井陉县| 浏阳市| 民和| 开原市| 娄底市| 遵义县| 井陉县| 陈巴尔虎旗| 拉萨市| 武川县| 山阴县| 安远县| 太和县| 龙江县| 集安市| 分宜县| 蒙阴县| 阳高县| 玉门市| 乃东县| 余干县| 伊宁县| 江陵县| 上饶县| 邮箱| 岚皋县| 北安市| 利川市| 奎屯市| 五河县| 若尔盖县| 突泉县| 湘潭县| 合阳县| 贺兰县| 廊坊市| 双辽市| 广德县|