最近疫情解封了,好多人都發(fā)燒請病假,單位也放假了,我到一直沒事兒,在家空閑時間很多,自己做了一個4G邊緣網(wǎng)關(guān)連接云平臺,折騰了半個月,連接聯(lián)通的燕飛格物云平臺成功,現(xiàn)將過程和一些注意事項分享給大家,國內(nèi)云服務(wù)商很多,阿里,騰訊,移動,聯(lián)通都有,之所以選聯(lián)通是因為聯(lián)通的平臺免費,當(dāng)然 ONENET也免費,但根據(jù)我實際使用下來感覺ONENET不太穩(wěn)定,技術(shù)支持也不到位,而且如果展示數(shù)據(jù)用VIEW也要付費,聯(lián)通的平臺數(shù)據(jù)有記錄和曲線顯示,適合入門,最關(guān)鍵免費,所以作為入門首先,
我的4G網(wǎng)關(guān)是用單片機(jī)做的,下面就說一下單片機(jī)怎么整,在此選用國產(chǎn)STC 的單片機(jī),1是便宜,2是串口多,我選的STC15W4K56S4,有4個串口,速度最高115200,完全能滿足要求,下面是硬件設(shè)計,有兩個485串口,3路DI輸入,都能計數(shù),兩路ADC輸入,板載繼電器(10A250V)
模組電源AC220v,用的金升陽AC/DC品質(zhì)可靠,也可以之流5V供電,在野外調(diào)試設(shè)備如果沒有電,可以弄個手機(jī)充電寶供電,先調(diào)試起來。到達(dá)現(xiàn)場立馬就可以投運。
4G模組用的有人7S1 ,
WIFI模組用的成都億百特,
RS485模組用周立功的,致遠(yuǎn)電子
硬件設(shè)計使用的PROTEL99SE,設(shè)計電路和PCB
單片機(jī)開發(fā)用KEIL4,完成單片機(jī)開發(fā)調(diào)試 ,使用C語言
MQTT調(diào)試用MQTTX調(diào)試工具,比以前我用的MQTTFX好用的多,而且支持中文
報文捕獲用Wireshark,大家用的時候端口過濾一下1883,就可以了
報文整理用Notepad3搞定,因為Wireshark抓的包,單片機(jī)C語言不能直接處理
哈希256加密軟件網(wǎng)上很多,找一個在線的就可以,聯(lián)通的設(shè)備接入必須要解決哈西256加密算法
4G模組參數(shù)設(shè)定,?7S1模組設(shè)置軟件用USR-TCP232,需設(shè)定波特率,運營商 GPS ,NTP
WIFI模組設(shè)定用E103-W01,設(shè)置WIFI模組的 ID,IP,PORT,Password,
邏輯分析軟件用Saleae Logic,調(diào)試報文的時候用邏輯分析儀撲獲硬件串口數(shù)據(jù)
地圖定位用7S1模組自帶的 LBS基站定位參數(shù),基站地位精度差,不過室內(nèi)可以用 ,GPS只能在室外,精度高但是覆蓋面太小,
全部報文調(diào)試好以后還需要加載13位時間戳,否則格物平臺無法正常記錄數(shù)據(jù),這對單片機(jī)來說有點麻煩,PC上很容易獲取日期參數(shù),我這里的解決方案是,通過7S1模組先讀取UTC-8北京時間
然后轉(zhuǎn)換成格林尼治時間,最后計算出13位時間戳,下面是我用C寫的單片機(jī)時間戳轉(zhuǎn)換程序,實戰(zhàn)OK,用單片機(jī)也能搞定13位時間戳。
注意格物平臺設(shè)備單個上傳和批量上傳用的TOPIC不一樣,要記住切換?。?/span>
上述這些軟件都很容易獲得,我這也有下載好的,大家也可以聯(lián)系(我17717361475)要,免費送軟件,買現(xiàn)成的4G模組也可以,自己學(xué)習(xí)或者控制設(shè)備都可以,模組自帶溫度采集傳感器,有硬件學(xué)習(xí)調(diào)試比較方便,物聯(lián)網(wǎng)一定要實戰(zhàn)才行,軟件模擬能過的東西,硬件不一定行
模組購買網(wǎng)店鏈接?https://m.tb.cn/h.UjFcy5I?tk=qgb7d45gUwl CZ3457
歡迎同行多交流,相互促進(jìn),相互學(xué)習(xí)!
下面是北京時間UTC-8 轉(zhuǎn)13位時間戳,并且在OLED屏幕能看到變化?,
????????????
?????????????rYear=2000+((Rec_Buf1[17]-0x30)*10)+(Rec_Buf1[18]-0x30);//年
?????????????rMon=(Rec_Buf1[20]-0x30)*10+(Rec_Buf1[21]-0x30);//
?????????????rDay=(Rec_Buf1[23]-0x30)*10+(Rec_Buf1[24]-0x30);//
????????????
???????????? rSHI=(Rec_Buf1[26]-0x30)*10+(Rec_Buf1[27]-0x30);//
?????????????rFEN=(Rec_Buf1[29]-0x30)*10+(Rec_Buf1[30]-0x30);//
????????????rMIAO=(Rec_Buf1[32]-0x30)*10+(Rec_Buf1[33]-0x30);//
??????? ? ? ? ?Cyear=0;//注意這個寄存器使用前一定要清零,否則下面數(shù)是隨機(jī)的,會出錯
?????????????for(i2 = 1970; i2 < rYear; i2++)//計算從1970年到現(xiàn)在總共有多少天,包括平年和閏年識別
???????????????{
????????????????if(((i2%4==0) && (i2%100!=0)) || (i2%400==0))??Cyear++;
??????? ? ? ? ?}
??????????? ? ??
?????????????????Count_Day = Cyear * 366 + (rYear-1970-Cyear) * 365;
??????? ? ? ? ? all_day=Count_Day+Mon_P[rMon]+rDay;//平年時2月按正常28天算
???? ? ? ? ?if (rYear==2024||rYear==2028||rYear==2032||rYear==2036||rYear==2040||rYear==2044) //識別出閏年2月底多+1天??????????
????????????{???if (rMon>=3)
??????????????{
????????????????all_day=Count_Day+Mon_P[rMon]+rDay+1;//統(tǒng)計從1970年1月1日到今天總共天數(shù),每個閏年 2月多算一天
??????????????}
????????????}
????????????all_day=(all_day*86400)-28800;//年月日轉(zhuǎn)換成秒數(shù),并減去北京時區(qū)差,8小時(2880秒)
????????????all_time=((rSHI*60*60)+(rFEN*60)+rMIAO);//統(tǒng)計當(dāng)前衛(wèi)星時鐘 時。分。秒。的總秒數(shù)
????????????all_second=(all_day+all_time);//算出當(dāng)前 格林尼治時間,年.月.日.時.分.秒.全部累計秒數(shù),精確到秒級,不考后3位慮毫秒
???????????????
???????????? OLED_ShowNum(10 ,3,all_time,8,12);//仿真
?????????
???????????????????????????//下面就是獲取的10位格林尼治時間,時間戳,OLED能顯示觀察
?????????????UTC_13time[0]=all_second/1000000000;//取高位值
??????????????Device_DT[135]=?????????UTC_13time[0]+0x30;//格林尼治時間戳導(dǎo)入報文--日期 1
?????????????Device_temperature[129]=UTC_13time[0]+0x30;//? ?
????????????????all_second=all_second%1000000000;//取余數(shù)
????????????
?????????????UTC_13time[1]=all_second/100000000;//
??????????????Device_DT[136]=?????????UTC_13time[1]+0x30;//格林尼治時間戳導(dǎo)入報文--日期 2
?????????????Device_temperature[130]=UTC_13time[1]+0x30;//
????????????????all_second=all_second%100000000;//取余數(shù)
????????????
?????????????UTC_13time[2]=all_second/10000000;//
?????????????Device_DT[137]=??????????UTC_13time[2]+0x30;//v格林尼治時間戳導(dǎo)入報文--日期 3
?????????????Device_temperature[131]=UTC_13time[2]+0x30;//? ??
????????????????all_second=all_second%10000000;//取余數(shù)
????????
?????????????UTC_13time[3]=all_second/1000000;//
??????????????Device_DT[138]=?????????UTC_13time[3]+0x30;//格林尼治時間戳導(dǎo)入報文--日期 4
?????????????Device_temperature[132]=UTC_13time[3]+0x30;//
????????????????all_second=all_second%1000000;//取余數(shù)
????????????????????
?????????????UTC_13time[4]=all_second/100000;//
??????????????Device_DT[139]=?????????UTC_13time[4]+0x30;//格林尼治時間戳導(dǎo)入報文--日期 5
?????????????Device_temperature[133]=UTC_13time[4]+0x30;//
????????????????all_second=all_second%100000;//取余數(shù)
????????????
??????????????UTC_13time[5]=all_second/10000;//
??????????????Device_DT[140]=?????????UTC_13time[5]+0x30;//格林尼治時間戳導(dǎo)入報文--日期 6
???????????????Device_temperature[134]=UTC_13time[5]+0x30;//? ??
????????????????all_second=all_second%10000;//取余數(shù)
????????????
?????????????UTC_13time[6]=all_second/1000;//
??????????????Device_DT[141]=?????????UTC_13time[6]+0x30;//格林尼治時間戳導(dǎo)入報文--日期 7
?????????????Device_temperature[135]=UTC_13time[6]+0x30;//? ??
????????????????all_second=all_second%1000;//取余數(shù)
????????????
?????????????UTC_13time[7]=all_second/100;//
??????????????Device_DT[142]=?????????UTC_13time[7]+0x30;//格林尼治時間戳導(dǎo)入報文--日期 8
?????????????Device_temperature[136]=UTC_13time[7]+0x30;//
????????????????all_second=all_second%100;//取余數(shù)
????????????
?????????????UTC_13time[8]=all_second/10;//
??????????????Device_DT[143]=?????????UTC_13time[8]+0x30;//格林尼治時間戳導(dǎo)入報文--日期 9
?????????????Device_temperature[137]=UTC_13time[8]+0x30;//??
????????????????all_second=all_second%10;//取余數(shù)
????????????
?????????????UTC_13time[9]=all_second;//
??????????????Device_DT[144]=?????????UTC_13time[9]+0x30;//格林尼治時間戳導(dǎo)入報文--日期 10??
?????????????Device_temperature[138]=UTC_13time[9]+0x30;//?????????}
//--------------------------------------------
?
文章來源:http://www.zghlxwxcb.cn/news/detail-415045.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-415045.html
到了這里,關(guān)于聯(lián)通雁飛格物云平臺,單片機(jī)連接MQTT服務(wù)器的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!