【文章內(nèi)容簡(jiǎn)介】
需重新標(biāo)定。 ?、?、其它注意事項(xiàng) 濕度傳感器是非密封性的,為保護(hù)測(cè)量的準(zhǔn)確度和穩(wěn)定性,應(yīng)盡量避免在酸性、堿性及含有機(jī)溶劑的氣氛中使用。也避免在粉塵較大的環(huán)境中使用。為正確反映欲測(cè)空間的濕度,還應(yīng)避免將傳感器安放在離墻壁太近或空氣不流通的死角處。如果被測(cè)的房間太大,就應(yīng)放置多個(gè)傳感器。有的濕度傳感器對(duì)供電電源要求比較高,否則將影響測(cè)量精度?;蛘邆鞲衅髦g相互干擾,甚至無(wú)法工作。使用時(shí)應(yīng)按照技術(shù)要求提供合適的、符合精度要求的供電電源。傳感器需要進(jìn)行遠(yuǎn)距離信號(hào)傳輸時(shí),要注意信號(hào)的衰減問(wèn)題。當(dāng)傳輸距離超過(guò)200m以上時(shí),建議選用頻率輸出信號(hào)的濕度傳感器。第3章 課程設(shè)計(jì)實(shí)現(xiàn)方案一、開(kāi)發(fā)環(huán)境(詳細(xì)介紹所涉及硬件的詳細(xì)內(nèi)容)Pc機(jī)、溫濕度傳感器、傳感器實(shí)驗(yàn)箱、連接所需的各種線(xiàn)。(詳細(xì)介紹所涉及軟件的詳細(xì)內(nèi)容) MDK414(arm平臺(tái)編譯燒錄代碼軟件)、KeilC51v750a_Full(C51平臺(tái)編譯軟件)、STC手動(dòng)下載(C51燒錄代碼軟件)、R340(串口線(xiàn)連接USB驅(qū)動(dòng))、ubuntu操作系統(tǒng)、linux操作系統(tǒng)。二、開(kāi)發(fā)內(nèi)容(包括傳感器的配置、傳感器燒錄、數(shù)據(jù)的實(shí)時(shí)收集、實(shí)時(shí)數(shù)據(jù)的存儲(chǔ)、實(shí)時(shí)數(shù)據(jù)的傳輸、實(shí)時(shí)數(shù)據(jù)在服務(wù)器端的接受及存儲(chǔ)TCPServer及MySql、數(shù)據(jù)庫(kù)及Web服務(wù)器安裝、利用JSP曲線(xiàn)動(dòng)態(tài)顯示實(shí)時(shí)數(shù)據(jù))首先燒錄整合好的溫濕度傳感器的代碼。接著連接傳感器取得數(shù)據(jù)。然后在ubuntu中編譯并運(yùn)行Com_Sensor程序獲取傳感器實(shí)驗(yàn)箱的數(shù)據(jù)。最后將接收到的數(shù)據(jù)通過(guò)Linuxweb服務(wù)器以jsp曲線(xiàn)動(dòng)態(tài)顯示實(shí)時(shí)數(shù)據(jù)。(包括傳感器、網(wǎng)關(guān)、傳輸網(wǎng)絡(luò)、TCPServer服務(wù)器、數(shù)據(jù)庫(kù)服務(wù)器、靜態(tài)及動(dòng)態(tài)Web服務(wù)器、Web服務(wù)器客戶(hù)端;并詳細(xì)標(biāo)注設(shè)備名稱(chēng)及IP地址等詳細(xì)信息;并詳細(xì)敘述網(wǎng)絡(luò)拓?fù)鋱D流程) 三、技術(shù)路線(xiàn)1. 實(shí)時(shí)數(shù)據(jù)收集環(huán)境(畫(huà)出詳細(xì)的傳感器、C51或ARM板、傳感器實(shí)驗(yàn)箱嵌入式電腦及Ubuntu網(wǎng)關(guān)間的連接示意圖,并詳細(xì)介紹各部分的主要功能)溫濕度傳感器:檢測(cè)環(huán)境的溫濕度。C51平臺(tái):通過(guò)平臺(tái)里面燒錄的代碼對(duì)傳感器取得的數(shù)據(jù)進(jìn)行解析并轉(zhuǎn)換為數(shù)值。顯示器:顯示測(cè)的的溫濕度的具體數(shù)值。Sqlite3數(shù)據(jù)庫(kù):存儲(chǔ)溫濕度的數(shù)值。2. 實(shí)時(shí)數(shù)據(jù)收集編程實(shí)現(xiàn)(給出從傳感器實(shí)驗(yàn)箱獲取實(shí)時(shí)數(shù)據(jù)的所有源代碼,給出啟動(dòng)程序收集數(shù)據(jù)的步驟、遇到的問(wèn)題及采取的措施)include include include include sys/include include include include include //include include includetypedef struct{ int fd。} PAR。void thread_( void * param ) { PAR * local = param。 char buff[1024]。//sqlite3 int retval。 sqlite3 *handle。 retval = sqlite3_open(,amp。handle)。 if(retval) { printf(Database connection failed\n)。 return 1。 } printf(Connection successful\n)。 printf(Connection successful\n)。 char *sql。 sql = CREATE TABLE IF NOT EXISTS Sdata (id int,datetime datetime ,Temperature float,Humidity float,flag int default 0)。 sqlite3_exec(handle,sql,0,0,0)。//sqlite3 while ( 1 ) { memset( b