資源簡介 (共37張PPT)第四章 信息系統的搭建實例4.2 搭建信息系統學習目標掌握信息系統搭建的基本過程,主要包括硬件搭建和軟件模塊編寫兩方面。硬件搭建包括服務器、網絡設備、傳感設備、智能終端等。軟件開發一般包括數據管理設計、服務器端程序、客戶端程序幾個部分。開發 “意愿”切實可行的“規劃”需求分析可行性分析開發模式的選擇概要設計詳細設計經過前期準備,信息系統搭建好了嗎?意愿搭建信息系統前期準備規劃搭建信息系統實現從何入手?信息系統的搭建主要包括:________和________________兩方面。硬件:系統建立的基礎,其技術指標決定系統運行速度、可靠性、適用范圍、可維護性等。軟件:控制系統運行的中樞,主要包括________、____________和在這些系統基礎上開發出來的________。硬件搭建軟件模塊選擇或編寫操作系統數據庫管理系統應用軟件新課講授知識點4.2.1:硬件搭建硬件服務器為信息系統中的用戶提供各種服務,如應用程序的處理、訪問數據庫管理系統、打印服務等。網絡設備通過網絡來完成數據的傳遞。網絡設備主要包括:_______、_______、_____、________、______等。傳感設備即傳感器,是重要的輸入設備,負責檢測并將信息變換成電信號或其他形式信息輸出。智能終端智能終端大部分功能需要依靠傳感器實現,包括____、___、_____和_____四個部分。信息系統還可能有執行器、控制器等設備。交換機路由器網卡雙絞線光纜輸入處理存儲輸出名稱 功能描述TX( transmit) 發送端RX(receiver) 接收端GND(ground) 電源負極VCC(Volt Current Condenser) 電源正極IoT(Internet of Things,物聯網)模塊:可以用于自身不能聯網、但是有串口功能的智能硬件,原理是串口轉wifi物聯網。例1 小明設計了一款教室環境實時監測系統,通過實時采集教室內的溫濕度、CO2 含量來實現教室空氣質量監測,并根據監測情況及時做出預警,該系統的結構如下圖所示:根據閱讀材料,下列說法正確的是( )A.該系統至少要包含溫濕度傳感器、CO2傳感器和光敏傳感器B.為保證將數據傳輸到數據庫,智能終端必須用數據線連接到Web服務器C.可以通過修改溫濕度、CO2的標準閾值來調整系統預警的靈敏度D.溫度傳感器實現了溫度數據由數字信號轉換為模擬信號的功能C解析:A選項無需使用光敏傳感器;B選項終端和遠程服務器通過網絡連接,無需數據線直接連接;D選項溫度傳感器可以將溫度數據由模擬信號轉換為數字信號。例1變式訓練1 關于例1的系統架構的描述,正確的是 ( )A.該系統采用B/S模式搭建B.該系統架構不支持多個用戶同時訪問C.服務器處理的數據來源于智能終端,無法定位產生數據的傳感器D.該系統的服務端程序無需連接數據庫來獲取和保存數據A解析:采用遠程Web服務器;因此該系統采用B/S模式。例1變式訓練2 關于硬件搭建的說法,下列選項中不正確的是 ( )A.服務器為信息系統中的用戶提供各種服務,如應用程序的處理和打印服務等B.網絡設備主要包括交換機、路由器、網卡、雙絞線、光纜等C.傳感設備是信息系統中重要的輸入設備,主要負責檢測D.智能終端的功能不需要依靠傳感器來實現D解析:智能終端包括輸入、處理、存儲和輸出四個部分,其大部分功能需要依靠各種傳感器來實現。知識點4.2.2:軟件開發信息系統的軟件開發一般包括__________、_________、_______幾個部分。1.數據管理設計主要負責與具體數據管理系統相銜接,包括數據采集、傳輸、存儲、呈現等方面,為系統中需要長久存儲的數據對象提供數據存儲的方案。數據管理設計服務器端程序客戶端程序數據采集數據傳輸數據存儲有線無線數據呈現(1)數據采集數據采集是利用一種或多種裝置,從系統外部采集數據并輸入系統內部一個接口的過程。常見采集方法:鍵盤輸入、利用光電設備采集、多媒體輸入、網絡傳送、磁盤輸入等。在“室內環境實時監測系統”中,數據采集主要依靠各種傳感器來完成。(2)數據傳輸通過傳輸介質傳送到服務器進行加工處理和存儲。常見的傳輸介質:有線和無線兩種。有線介質包括雙絞線,同軸電纜和光纜;無線介質包括微波、衛星、超短波和短波信道等。在“室內環境實時監測系統”中,智能終端到Web客戶端可以采用USB線纜,也可以采用藍牙,Web客戶端則一般采用Wi-Fi,將數據傳送到Web服務器。(3)數據存儲常見方式:文件、數據庫、云存儲。文件使用較為簡單,方便程序自定義格式;數據庫性能優越,方便查詢,可以加、解密,以及跨平臺應用等;云存儲通過網絡把數據實時傳輸到數據處理中心進行存儲及處理。(4)數據呈現把分析結果用最容易理解和最美觀的方式展現出來。表格:比較簡便;圖形化:更好體現。常用數據圖類型:柱狀圖、條形圖、折線圖、餅圖、氣泡圖、漏斗圖、GIS地圖、詞云等。2.程序編寫軟件開發涉及服務器端程序和客戶端程序。B/S結構一般只寫服務器端程序,如網站,只需完成服務器端程序,瀏覽器就是客戶端程序,不用再寫,使得部署、更新更加容易;C/S結構服務器端程序和客戶端程序都要寫,類似QQ、網游等。例2 小王打算做一個家庭燃氣泄露報警裝置。他設想利用智能硬件連接傳感器,放在廚房來監測可燃氣體濃度,并每隔10秒鐘通過無線網絡上傳數據到服務器數據庫中。同時另一個智能硬件放在臥室,也通過無線網絡來讀取服務器數據庫中的最新數據,當數據大于設定閾值時智能硬件會發出報警聲音。請回答下列問題:(1)在該項目的前期規劃中,在完成需求分析后,需要進行的是____________(選填:可行性分析/概要設計/詳細設計)。(2)在該項目的硬件選擇中,最需要涉及的傳感器為:____________(選填:溫度傳感器/濕度傳感器/聲音傳感器/氣敏傳感器)。(3)小王采用SQLite數據庫來存儲數據,他在數據庫文件data.db中新建了gas_val數據表,該表結構如下表所示:可行性分析氣敏傳感器并利用flask編寫了如下服務器代碼:from flask import Flask,requestimport datetimeimport sqlite3app=Flask(_ _name_ _)@app.route("/submit",methods=['GET'])def submit():val=int(request.values.get('v'))dt=datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")db=sqlite3.connect("data.db")cur=db.cursor()cur.execute("INSERT INTO gas_val(val,dt)VALUES(%d,'%s') "%(val,dt))mit()db.close()return "ok"@app.route("/getdata",methods=['GET'])def getdata():db=sqlite3.connect("data.db")cur=db.cursor()cur.execute("SELECT val FROM gas_val order by dt DESC")字段名稱 字段類型 說明val INTEGER 存儲可燃氣體濃度值dt TEXT 存儲上報時間#查詢結果按dt字段降序排序val=cur.fetchone()[0]db.close()return str(val)if_ _name_ _=="_ _main_ _":app.run(" 192.168.1.100 " ,port=8080)某一時刻可燃氣體傳感器的濃度值為35的數據,可以推斷出該智能硬件上報數據時所需發起HTTP請求的包含協議名稱、IP地址、端口號和路徑的完整URL為:________________。http:∥192.168.1.100:8080/submit?v=35(4)放在臥室的智能硬件每隔10秒鐘會通過請求getdata接口來獲取最新的可燃氣體濃度數據,若該數值大于50則發出報警聲音。以下智能硬件相關代碼劃線處應填入:______________。from microbit import *import ObloqIP='192.168.1.100'PORT="8080"SSID="jf"PASSWORD="pkq88888"while Obloq.connectWifi(SSID,PASSWORD,10000)!=True:display.show(". ")Obloq.httpSet(IP,PORT)while True:erron,resp=Obloq.get(" getdata " ,10000)if ________________:music.play(music.DADADADUM)else:music.stop()sleep(10000)int(resp)>50例2變式訓練 小明搭建了一個“機房煙霧報警系統”,實現如下功能:當室內煙霧濃度達到設定的閾值時,將觸發蜂鳴器發出警報聲,并記錄報警時間,傳感器編號,煙霧濃度等數據。系統架構示意圖如圖所示。請回答下列問題:(1)根據該系統的功能要求,圖中①②兩處分別表示的設備名稱是:①__________,②__________(選填字母:A.防火墻,B.傳感器,C.執行器,D.路由器)CB(2)將煙霧傳感器連接智能終端后,獲取煙霧數據的部分代碼如下:while True:smoke=pin2.read_analog()sleep(1000*5)if smoke > 1000:pin0.write_digital(1)else:pin0.write_digital(0)從代碼看出,連接煙霧傳感器的引腳是________,連接蜂鳴器的引腳是________。p2(pin2) p0(pin0)(3)從圖中可以看出,該系統架構是模式________(選填字母:A.C/S,B.B/S)。(4)利用SQL數據庫進行煙霧數據的儲存,數據庫文件名為" test.db " ,需要實現打開、寫 入、關閉等功能,現有下列命令: ①db=sqlite3.connect(" test.db ") ②cu=db.cursor ③import sqlite3 ④cu.close()⑤db.close() ⑥cu.execute(" INSERT INTO sensorlog(sensorid,sensorvalue,updatetime) VALUES(%d,%f,'%s') "若實現上述功能,則上述語句執行的先后順序是________________。B ③①②⑥④⑤例3 小明為家庭小菜園搭建了環境溫濕度監測系統,該系統結構示意圖如圖所示。Web服務器端程序采用FlaskWeb框架開發。傳感器采集的數據由智能終端經IoT模塊發送到Web服務器,執行器用于實現溫濕度的控制。請回答下列問題:(1)下列選項標注了圖中虛線框內的智能終端與傳感器執行器之間的數據傳輸關系,其中合理的是________(單選,填字母)。A(2)該系統網絡應用軟件的實現架構是________(單選,填字母:A.B/S架構 /B.C/S架構)。(3)若傳感器的編號id為1,濕度值h為60提交數據到Web服務器的URL為http:∥192.168.1.6:5000/toserv?h=60&id=1,則服務器端應用實例app中與該URL關聯的路由設置語句是@app.route('________')。(4)菜園里的蔬菜適宜生長的空氣溫度范圍是tmin~tmax。現要求當溫度t正常、偏低、偏高時,將sta的值對應設為0、1、2。下列Python程序段中符合要求的有__________(多選,填字母)。(注:全部選對的得2分,選對但不全的得1分,不選或有選錯的得0分)A /toservBD(5)小明設定采集并上傳數據的時間間隔為1分鐘。他用瀏覽器查看溫濕度頁面,頁面動態顯示最新的溫度、濕度及其采集時間。系統正常工作一段時間后,他發現該頁面不再變化,刷新后仍不變。結合圖,簡要說明系統中可能造成上述問題的原因________(本系統中,傳感器損壞傳感器和智能終端連接異常,不會造成上述問題)。(注:回答2項,1項正確得1分)①連接物聯網模塊與Web服務器的無線路由器無法正常工作;②物聯網模塊損壞;③數據表對記錄數有數量限制,當記錄數達到一定程度時,數據表不再更新。④Web服務器中數據庫管理系統無法正常運行。 例3變式訓練 小李為某網吧做了一個網絡拓撲設計圖,如下圖所示,為了提高消防安全性,利用Micro:bit開發板設計了一個煙霧報警系統,每隔10秒將信號發送到服務器并存入數據庫,如果監測到煙霧值超標則打開報警裝置。管理員可以通過瀏覽器查詢所有記錄。(1)在網絡拓撲結構中①處的設備為________(單選,填字母:A.路由器/B.調制解調器/C.交換機) 。(2)為了讓智能終端能夠通過無線網絡傳遞數據,需要在智能終端中連接________(單選,填字母:A.Wi-Fi/B.IoT/C.LAN)模塊。(3)智能終端測量環境中的濕度和煙霧值的部分代碼如下:while True:s = pin1.read_analog()errno,resp = obloq.get("putval?sv="+str(s),10000)if errno == 200:pin8.write_digital( int(resp))else:display.show( str(resp))sleep(10*1000)根據代碼所示,報警裝置連接在智能終端的引腳是________。(4)服務器端的部分代碼如下,請在劃線①處填入合適的代碼。A B pin8 (5)變量t用來接收數據,請為加框處選擇合適的代碼填入其中________。(單選,填字母)A.request.args.get(" sv ")B.request.form.get(" sv ")C.request.args.get(" s ")D.request.form.get(" sv ")app = Flask(_ _name_ _)@app.route('/search')def search():#從數據庫中查詢相關記錄,并在網頁中展示,代碼略@app.route(①________,methods=['GET'])def putdata( ):t=#將收到的數據存入數據庫,并從中查詢報警的閾值,存入變量maxs,代碼略if int(t) > maxs :return 1else:return 0if _ _name_== '_ _main_ _ ':app.run( host='168.34.2.77',port=5000)(6)根據上述代碼,要查詢相關記錄,對應的URL為__________'/putval' A http:∥168.34.2.77:5000/search 課堂小結硬件搭建搭建信息系統軟件開發客戶端程序數據管理設計服務器端程序服務器網絡設備傳感設備和智能終端 展開更多...... 收起↑ 資源預覽 縮略圖、資源來源于二一教育資源庫