- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
基于硬件协议栈的以太网远程数据传输系统
3系统应用
目前,通过本文开发的基于W5100的远程数据采集与传输系统已经成功应用在辽宁省建筑能耗监测平台、太原理工大学节约型校园监管平台、大连市公共机构能耗监管平台等多个能耗监测项目当中。其中,辽宁省项目覆盖范围最广,涉及到省内14个地级市共50栋建筑的能耗采集与传输工作。调试期间,因能耗采集周期和上传周期均一致,并且各客户端的时间信息通过服务器进行同步,导致所有的客户端均在同一个时刻向数据中心发起连接或者发送能耗信息数据,如图6所示(上传周期为5 min),第1分钟的C1~Cn表示各地的数据采集器在同一时刻向服务器发起连接请求,第5 min的C1~Cn表示各数据采集器在同一时刻向服务器发送能耗数据信息,从而造成服务器偶尔因连接负载过多造成采集软件死机等情况发生。
解决该问题的方法其实很简单,设置各客户端分时发送数据即可,但如果对不同的客户端下载不同版本的程序,从而达到分时的目的,实际操作过程中很不方便,而且造成程序版本不唯一,容易出现问题。经过进一步分析发现,各客户端的网络通信质量不一,与服务器成功建立连接的时间不同,通过下面的方法巧妙地将该问题解决,如图7所示。
通过在程序中加入下面两行代码:Write_W5100(W5100_S0_CR,S_CR_SEND KEEP);//监测网络状态ssr0_state=Read_W5100(W5100_S0_SSR);//读取当前网络状态对当前的网络进行监测,客户端与服务器成功建立连接之后,寄存器ssr0_state变为0x17,记录从发起连接到建立连接之间的时间差△T,发送数据时顺延△T时刻再发送,从而零成本解决了负载过大的难题。辽宁省项目自2010年7月开始运行,至今已经连续运行2年多时间,结果表明该系统能够准确地将数据上传,工作稳定可靠。
结语
本文以STM32F103VET6为核心处理器,通过单片网络控制芯片W5100建立了以太网远程数据传输系统,该系统具有高集成度、低成本、开发周期短等优势。针对建筑能耗监测系统多个客户端同时发起连接和上传数据造成的服务器压力过大问题,文中通过监测客户端与服务器之间的连接时间点,在发送数据时顺延时间差△T,巧妙地解决了该问题。实际项目运行结果表明,该系统运行可靠稳定,应用前景良好。
闂傚倸鍊风粈浣虹礊婵犲倴缂氱憸鏃堛€侀弽顓炲耿婵$偟绮弫鐘绘⒑闁偛鑻晶顔姐亜椤撶偞鍋ョ€规洜鎳撻埥澶娾枎閹邦喖绲块梻鍌欑劍閹爼宕愰弴鐏诲綊鎮滈挊澶岊唵闁诲函缍嗛崰鏍不閺屻儲鐓欏ù鐓庣摠濞懷囨煙椤旇崵绐旀慨濠呮閸栨牠寮撮悢鍝ュ絿婵$偑鍊戦崹褰掓晝椤忓牄鈧礁鈻庨幘宕囶槹濡炪倖鐗楃喊宥夋倵椤掆偓閳规垿鎮欓崣澶樻!闂佹悶鍔庨崰鏍ь嚕婵犳碍鏅搁柨鐕傛嫹 | More...
闂傚倸鍊风粈浣虹礊婵犲倴缂氱憸鏃堛€侀弽顓炲耿婵$偟绮弫鐘绘⒑闁偛鑻晶顔姐亜椤撶偞鍋ョ€规洜鎳撻埥澶娾枎閹邦喖绲块梻鍌欑劍閹爼宕愰弴鐏诲綊鎮滈挊澶岊唵闁诲函缍嗛崰鏍不閺屻儲鐓欏ù鐓庣摠濞懷囨煙椤旇崵绐旀慨濠呮閸栨牠寮撮悢鍝ュ絿婵$偑鍊戦崹褰掓晝椤忓牄鈧礁鈻庨幘宕囶槹濡炪倖鎸鹃崰搴ㄦ偟娴煎瓨鈷戦柛娑橈攻鐎垫瑩鏌嶈閸撶喎顕f繝姘櫢闁跨噦鎷�
闂傚倸鍊风粈渚€骞夐敓鐘冲亱闁哄洨濮风粈濠傗攽閻樺弶鎼愰柛灞诲姂閺屾洟宕煎┑鎰ч梺绋款儍閸斿矂婀侀梺鎸庣箓閹冲酣寮抽悢鍏肩厽闁哄倹瀵ч崵鍥煙椤旀娼愰柟宄版嚇閹兘骞嶉鍛炲┑锛勫亼閸婃牠骞愭繝姘畺闁稿本姘ㄩ弳锕傛煣韫囨凹娼愰柛蹇旂矒閺屾稑饪伴埀顒傜矆娓氣偓瀵偊骞庨懞銉у幗闂佺粯锚瀵爼骞栭幇顒夌唵鐟滃瞼鍒掑▎鎾虫槬闁靛繈鍊栭弲鎼佹煥閻曞倹瀚�
闂傚倸鍊风粈浣虹礊婵犲倴缂氱憸鏃堛€侀弽顓炲耿婵$偟绮弫鐘绘⒑闁偛鑻晶顔姐亜椤撶偞鍋ョ€规洜鎳撻埥澶娾枎閹邦喖绲块梻鍌欑劍閹爼宕愰弴鐏诲綊鎮滈挊澶岊唵闁诲函缍嗛崰鏍不閺屻儲鐓欏ù鐓庣摠濞懷囨煙椤旇崵绐旀慨濠呮閸栨牠寮撮悢鍝ュ絿婵$偑鍊戦崹褰掓晝椤忓牄鈧礁鈻庨幘宕囶槹濡炪倖甯掗崐鍨瀶椤斿皷鏀介幒鎶藉磹閺囩姭鍋撳顒€妲婚摶鐐烘煥閻曞倹瀚�
闂傚倷娴囬褏鎹㈤幇顔藉床闁归偊鍠掗崑鎾愁潩椤愩垹绁梺闈涙閸婂骞戦崟顒傜懝妞ゆ牗纰嶅▍濠囨⒒娓氣偓濞佳囨晬韫囨稑鐒垫い鎺戝閽冪喖鏌曢崼婵愭Ч闁稿鍔嶉妵鍕冀閵婏妇娈ゆ繝鈷€鍕闁哄矉缍侀獮妯兼喆閸曨厹鈧﹪姊洪悷鏉挎Щ妞ゆ垵顦甸妴浣割潨閳ь剟骞冨⿰鍫濆耿婵妫楅弫褰掓⒒娴h棄鍚归柛鐘茬Ф濞嗐垽濡舵径濠勵唵闂佽法鍣﹂幏锟�