freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于嵌入式linux電表采集終端抄表模塊設(shè)計(jì)與實(shí)現(xiàn)論文-資料下載頁(yè)

2024-11-17 21:28本頁(yè)面

【導(dǎo)讀】人或集體已經(jīng)發(fā)表或撰寫的成果作品。對(duì)本文的研究做出重要貢獻(xiàn)的個(gè)人和集。體,均已在文中以明確方式標(biāo)明。本人完全意識(shí)到本聲明的法律后果由本人承。并向國(guó)家有關(guān)部門或機(jī)構(gòu)送交論文的復(fù)印件和電子版,允許論文被查閱和借閱。本人授權(quán)湖南大學(xué)可以將本論文的全部或部分內(nèi)容編入有關(guān)數(shù)據(jù)庫(kù)進(jìn)行檢索,可以采用影印、縮印或掃描等復(fù)制手段保存和匯編本論文。電能是使用最為廣泛的一種能源,涉及國(guó)民經(jīng)濟(jì)所有領(lǐng)域和人民生活的方方面面。大量地出現(xiàn)在人們的生活中。變得很大,傳統(tǒng)的抄錄模式已很難滿足社會(huì)發(fā)展的要求?,嵉氖止趧?dòng),而且為提供更多優(yōu)質(zhì)服務(wù)奠定了技術(shù)基礎(chǔ)。表通訊進(jìn)行數(shù)據(jù)的采集,實(shí)現(xiàn)了一個(gè)自動(dòng)電表的數(shù)據(jù)采集終端。流、電壓、異常記錄等數(shù)據(jù),并定時(shí)保存數(shù)據(jù)至文件。GSM短信方式發(fā)送到定制手機(jī)上面,實(shí)現(xiàn)短信報(bào)警。

  

【正文】 A5:地址域由 6 個(gè)字節(jié)構(gòu)成,可以為表號(hào) 、資產(chǎn)號(hào)、用戶號(hào)、設(shè)備號(hào)等。具體使用可由用戶自行決定。當(dāng)使用的地址碼長(zhǎng)度不足 6 字節(jié)時(shí),用十六進(jìn)制 AAH 補(bǔ)足 6 字節(jié)。低地址位在先,高地址位在后。當(dāng)?shù)刂窞?999999999999H 時(shí),為廣播地址。 控制碼 C:控制碼的格式如下所示。 表 控制碼格式 D7=0 由主站發(fā)出的命令幀 D7=1 由從站發(fā)出的應(yīng)答幀 D6=0 從站對(duì)異常信息的應(yīng)答 D5=0 無(wú)后續(xù)數(shù)據(jù)幀 D4~ D0 請(qǐng)求及應(yīng)答功能碼 00000 保留 00001 讀數(shù)據(jù) 00011 重讀數(shù)據(jù) 00100 寫數(shù)據(jù) 01000 廣播校時(shí) 01010 寫設(shè)備地址 01100 更改通信速率 10000 最大需量清零 數(shù)據(jù)長(zhǎng)度 L: L 為數(shù)據(jù)域的字節(jié)數(shù)。讀數(shù)據(jù)時(shí) L≤200,寫數(shù)據(jù)時(shí) L≤50, L=0 表示無(wú)數(shù)據(jù)域。 數(shù)據(jù)域 DATA:數(shù)據(jù)域包括數(shù)據(jù)標(biāo)識(shí)和數(shù)據(jù)、密碼等,其結(jié)構(gòu)隨控制碼的功能而改變。傳輸時(shí)發(fā)送方按字節(jié)進(jìn)行加 33H 處理,接收方按字節(jié)進(jìn)行減 33H 處理。 校驗(yàn)碼 CS:從幀起始符開(kāi)始到校驗(yàn)碼之前的所有各字節(jié)的模 256 的和,即各字節(jié)二進(jìn)制算術(shù)和,不計(jì)超過(guò) 256 的溢出值。 結(jié)束符 16H:標(biāo)識(shí)一幀信息的結(jié)束,其值為 16H=00010110B。 核心實(shí)現(xiàn)代碼 以下是實(shí)現(xiàn)本系統(tǒng)的核心代碼,其中: int CMeterProtocolGB645::FormReadDataFrame(int amp。meterno, unsigned char *buff, unsigned short item, unsigned char num )函數(shù)用于構(gòu)造數(shù)據(jù)讀取幀,該幀中包含了所要采集的電表邏輯地址和數(shù)據(jù)項(xiàng)。 畢業(yè)設(shè)計(jì)(論文) 第 24 頁(yè) int CMeterProtocolGB645 ::ProcHeadFrame(unsigned char *buff, int len)函數(shù)用于在解析響應(yīng)幀之前分析該幀的頭部信息和校驗(yàn)值,判斷該幀是否合法,并作出相應(yīng)的處理。 int CMeterProtocolGB645 ::ProcFullFrame( unsigned char *buff, unsigned char *pValue, int amp。valueLen)函數(shù)用于根據(jù)幀的控制碼判斷該幀類型,并按照該類型的處理方式對(duì)幀數(shù)據(jù)進(jìn)行轉(zhuǎn)換處理。 void GSM_Send_Message(int fd)用于 發(fā)送 GSM 短信告警。 以下為構(gòu)造請(qǐng)求幀和解析響應(yīng)幀的核心代碼 : /************************************************* 構(gòu)造讀取數(shù)據(jù)請(qǐng)求幀 *************************************************/ int CMeterProtocolGB645::FormReadDataFrame(int amp。meterno, unsigned char *buff, unsigned short item, unsigned char num ){ buff[0] = 0xfe。 buff[1] = 0x68。//起始碼 buff[2] = AddressTable[meterno].address[0]。//6 個(gè)字節(jié)的地址 buff[3] = AddressTable[meterno].address[1]。 buff[4] = AddressTable[meterno].address[2]。 buff[5] = AddressTable[meterno].address[3]。 buff[6] = AddressTable[meterno].address[4]。 buff[7] = AddressTable[meterno].address[5]。 buff[8] = 0x68。//起始碼 buff[9] = 0x01。//控制碼 buff[10] = 0x02。//數(shù)據(jù)長(zhǎng)度 buff[11] = ( item amp。 0xFF ) + 0x33。//2 個(gè)字節(jié)的數(shù)據(jù)項(xiàng) buff[12] = ( (item 8) amp。 0xFF ) + 0x33。 buff[13] = GetCheckSum( buff + 1, 12)。//校驗(yàn)和 buff[14] = 0x16。//結(jié)束碼 畢業(yè)設(shè)計(jì)(論文) 第 25 頁(yè) buff[15] = 0。 return 16。//數(shù)據(jù)幀長(zhǎng)度 } /************************************************* 驗(yàn)證響應(yīng)幀頭部信息 ,判斷是否為合法幀 *************************************************/ int CMeterProtocolGB645 ::ProcHeadFrame(unsigned char *buff, int len) { int i =0。 int frmlen = len 10 2。 while( i = frmlen) { if( buff[i] == 0x68 amp。amp。 buff[i + 7] == 0x68)//找到數(shù)據(jù)幀頭部 { break。 } i++。 } if(i frmlen)//在有效數(shù)據(jù)長(zhǎng)度內(nèi)沒(méi)有找到同步字 { return 1。//數(shù)據(jù)長(zhǎng)度不正確 } frmlen = buff[ i + 9 ] + 10 + 2。 if(frmlen len i) { return 1。 } if(buff[frmlen + i 1] != 0x16) { return 1。//沒(méi)有結(jié)束標(biāo)志 畢業(yè)設(shè)計(jì)(論文) 第 26 頁(yè) } if( (unsigned char)GetCheckSum( amp。buff[ i ], frmlen 2) != buff[frmlen + i 2]) { return 1。 //校驗(yàn)和不對(duì) } return i。 } /************************************************* 根據(jù)響應(yīng)幀控制碼處理完整的數(shù)據(jù)返回幀 *************************************************/ int CMeterProtocolGB645 ::ProcFullFrame( unsigned char *buff, unsigned char *pValue, int amp。valueLen) { int j。 switch(buff[ 8 ]) //對(duì)控制碼的判斷 { case 0x81://讀數(shù)據(jù)返回,無(wú)后續(xù)數(shù)據(jù) case 0xA1://讀數(shù)據(jù)返回,有后續(xù)數(shù)據(jù) case 0x82://請(qǐng)求后續(xù)數(shù)據(jù)返回,無(wú)后續(xù)數(shù)據(jù) case 0xA2://請(qǐng)求后續(xù)數(shù)據(jù)返回,有后續(xù)數(shù)據(jù) case 0x83://重讀數(shù)據(jù),無(wú)后續(xù) case 0xA4://重讀數(shù)據(jù),有后續(xù) buff[9] = 2。 for(j = 0。 j buff[9]。 j ++) { buff[12 + j] = 0x33。//數(shù)據(jù)域 0x33 } for( j = 0。 j buff[9]。 j++ ) {//跨數(shù)據(jù)塊后,下一個(gè)數(shù)據(jù)塊的數(shù)據(jù)不用 畢業(yè)設(shè)計(jì)(論文) 第 27 頁(yè) if(buff[ 12 + j ] == 0xAA) { buff[9] = j。 break。 } } valueLen = buff[9]。 memcpy( (void *)pValue, (void *)amp。buff[ 12 ], valueLen)。 break。 case 0xC1://讀數(shù)據(jù)返回異常 case 0xC2://讀后續(xù)數(shù)據(jù)返回異常 case 0xC3://重讀數(shù)據(jù)返回異常 case 0xC4://寫數(shù)據(jù),異常應(yīng)答 buff[10] = 0x33。 if( buff[ 10] amp。 0x03 ) return 0x600。 return buff[ 10 ]。 //電表返回錯(cuò)誤碼 case 0x84://寫數(shù) 據(jù),從站正常應(yīng)答 break。 case 0x8C: break。//更改通訊速率,正常應(yīng)答 default: return 0x0700。//無(wú)效的控制字符 } return 0。 } 畢業(yè)設(shè)計(jì)(論文) 第 28 頁(yè) 5. 總結(jié) S3C2410 抄表系統(tǒng)分析 本文介紹的基于 S3C2410的抄表系統(tǒng)適應(yīng)于不同的場(chǎng)合,既包含了網(wǎng)絡(luò)抄表,也具有成熟電話抄表和 GPRS無(wú)線抄表的功能。而且這些功能的實(shí)現(xiàn)大多以模塊的形式獨(dú)立出來(lái),這使得它適用廣泛,組建系統(tǒng)簡(jiǎn)單。 系統(tǒng)采用了高性能的 32位 ARM9處理器 S3C2410作為抄表控制器的核心芯片,大大提高了抄表系統(tǒng)的數(shù)據(jù)處理能力。這是目前大多數(shù)抄表系統(tǒng) 8位、 16位單片機(jī)所不能比的。 本抄表控制器,可以通過(guò)串口、以太網(wǎng)、 GPRS與抄表中心通訊,接收抄表中心發(fā)來(lái)的各種控制命令信號(hào)。并且該抄表控制器己經(jīng)移植了嵌入式 Linux操作系統(tǒng),能夠?qū)崟r(shí)地處理多任務(wù),大幅提高系統(tǒng)的管理能力,這也是傳統(tǒng)前后臺(tái)系統(tǒng)所不能比擬的。移植了 Linux操作系統(tǒng)后,抄表系統(tǒng)應(yīng)用軟件的開(kāi)發(fā)、維護(hù)變的更容易。 S3C2410的數(shù)據(jù)處理能力及豐富的外圍接口,可以很容易的使用 LCD顯示屏替代傳統(tǒng)的數(shù)碼管。 盡管如此,本系統(tǒng)仍然有一些不足的地方。由于 S3C2410芯片為商業(yè)級(jí)別,本系統(tǒng)只能作為商用,不能適應(yīng)工業(yè)場(chǎng)合 。本系統(tǒng)實(shí)現(xiàn)的功能較多,系統(tǒng)的整合工作非常關(guān)鍵,整合的好壞直接關(guān)系到該抄表系統(tǒng)的性能。 結(jié)果分析 開(kāi)發(fā)難點(diǎn)及相關(guān)策略 1.開(kāi)發(fā)環(huán)境與工具方面 進(jìn)行嵌入式開(kāi)發(fā)的重點(diǎn)和難點(diǎn)關(guān)鍵在操作系統(tǒng),如果沒(méi)有掌握操作系統(tǒng),就很難把握一個(gè)嵌入式系統(tǒng)。本次畢業(yè)設(shè)計(jì)是基于嵌入式 Linux操作系統(tǒng)的,由于以前接觸Linux系統(tǒng)不多,也從沒(méi)在這個(gè)系統(tǒng)下進(jìn)行應(yīng)用程序開(kāi)發(fā),所以剛開(kāi)始 的時(shí)候,在操作上感覺(jué)相當(dāng)吃力。因此在前期,專門抽出幾天時(shí)間,用于熟悉開(kāi)發(fā)環(huán)境,邊看指導(dǎo)書(shū)邊自己進(jìn)行反復(fù)練習(xí),很快地掌握了常用的命令和操作,對(duì)內(nèi)核方面也有了一定的了解,這些為后面的開(kāi)發(fā)工作提供了便利。 在交叉環(huán)境配置方面,也遇到了不少的問(wèn)題。因?yàn)橹笇?dǎo)書(shū)上講的與實(shí)際的開(kāi)發(fā)環(huán) 畢業(yè)設(shè)計(jì)(論文) 第 29 頁(yè) 境有些地方不一致,所以給配置工作帶來(lái)了很大的麻煩。通過(guò)自己的摸索,向老師和熟悉的同學(xué)請(qǐng)教,以及上網(wǎng)查詢,終于配置好了環(huán)境,并掌握了其中的技術(shù)要點(diǎn)。 2.算法方面 本次設(shè)計(jì)主要涉及鏈路層的傳輸,實(shí)現(xiàn)的最大難題就是按照協(xié)議來(lái)構(gòu)造和解析幀,需要進(jìn)行 大量的位操作與進(jìn)制轉(zhuǎn)換,對(duì)數(shù)學(xué)方面的要求比較高。因?yàn)樯蠈W(xué)期的考研數(shù)學(xué)復(fù)習(xí),基礎(chǔ)知識(shí)比較牢固,通過(guò)廣泛的查閱資料,較好地設(shè)計(jì)出相關(guān)的算法,實(shí)現(xiàn)對(duì)各種幀的構(gòu)造和解析功能。 創(chuàng)新思想 1.共享內(nèi)存的使用 數(shù)據(jù)采集終端首先將采集到的數(shù)據(jù)存儲(chǔ)至共享內(nèi)存,以供顯示模塊顯示, 因?yàn)檫M(jìn)程可以直接讀寫內(nèi)存,而不需要任何數(shù)據(jù)的拷貝,只需要一次存儲(chǔ)工作,就可以在各進(jìn)程中共享數(shù)據(jù),因此可以很好的提高效率。 2.?dāng)?shù)據(jù)保存 本課題中,數(shù)據(jù)的保存通過(guò)調(diào)用 TinyXml開(kāi)發(fā)包以 Xml文檔形式保存,適用于不同平臺(tái)下解析查看,文檔以保 存時(shí)間命名,便于后期的查詢統(tǒng)計(jì)工作。 開(kāi)發(fā)過(guò)程總結(jié) 本課題從電力負(fù)荷管理系統(tǒng)中提取需求,可以說(shuō)是現(xiàn)代化電力系統(tǒng)精華部分的濃縮,具有相當(dāng)?shù)膶?shí)際意義和研究?jī)r(jià)值。 本設(shè)計(jì)項(xiàng)目構(gòu)建了一個(gè) 自動(dòng) 電表數(shù)據(jù)采集終端 , 采用的是多進(jìn)程下的多線程編程,可以很好的實(shí)現(xiàn)各項(xiàng)任務(wù)的并行性。 其中 一個(gè)進(jìn)程 基于 DLT/645 規(guī)約,定時(shí)地 以 輪詢的方式采集各個(gè)電表相關(guān)數(shù)據(jù),并將數(shù)據(jù)存入共享內(nèi)存中,供顯示模塊使用。如果在采集過(guò)程中 發(fā) 生了異常,則將告警信息發(fā)送至消息隊(duì)列,向定制的手機(jī)發(fā)送 GSM 短信報(bào)警。另外開(kāi)一個(gè)進(jìn)程,定時(shí)地將共享內(nèi)存中的數(shù)據(jù) 存儲(chǔ)為 Xml 文檔,以備以后查詢統(tǒng)計(jì)。 在項(xiàng)目開(kāi)發(fā)過(guò)程中, 對(duì)系統(tǒng)從需求分析、系統(tǒng)設(shè)計(jì)、系統(tǒng)實(shí)現(xiàn)到系統(tǒng)測(cè)試的整個(gè)流程都進(jìn)行了嚴(yán)整的規(guī)劃,充分貫徹軟件工程思想,達(dá)到了理論與實(shí)際開(kāi)
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1