资源简介 (共33张PPT)4.2 搭建信息系统新课导入信息系统的搭建主要包括硬件搭建和软件模块选择或编写两方面。硬件是信息系统建立的基础,它的技术指标决定了信息系统的运行速度、可靠性、适用范围、可维护性等。软件是控制信息系统运行的中枢,主要包括操作系统、数据库管理系统和在这些系统基础上开发出来的应用软件。知识讲述4.2.1 硬件搭建一个信息系统,其硬件组成主要包括服务器、网络设备、传感设备、智能终端等。4.2.1 硬件搭建1.服务器服务器为信息系统中的用户提供各种服务,如应用程序的处理、访问数据库管理系统、打印服务等。2.网络设备网络设备主要包括交换机、路由器、网卡、双绞线、光缆等。3.传感设备和智能终端传感设备是信息系统中重要的输入设备,也称传感器,主要负责检测,将感受到的信息,按一定规律变换为电信号或其他所需形式的信息输出。智能终端包括输入、处理、存储和输出四个部分。智能终端的大部分功能需要依靠各种传感器来实现。“室内环境实时监测系统”硬件清单“室内环境实时监测系统”硬件选择智能终端设备:micro:bit主板,连接温度传感器、蜂鸣器模块、IoT(物联网)模块。为了方便连接模块须接扩展板。智能终端的引脚分配情况引脚,英文Pin,是集成电路(芯片)内部电路引出与外围电路的接线,所有的引脚就构成了这块芯片的接口。模块名称 引脚IoT模块 Pin1、Pin2蜂鸣器 Pin8温度传感器 Pin0“室内环境实时监测系统”硬件选择网络设备:IoT(物联网)模块全名“UART OBLOQ-IoT”模块,可以用于自身不能联网、但是有串口功能的智能硬件,原理是串口转wifi物联网。IoT模块有四个针脚,分别如下:名称 功能描述Vcc 电源正极Gnd 电源负极TX 串口发送端RX 串口接收端“室内环境实时监测系统”硬件选择网络设备:IoT(物联网)模块IoT模块的TX和RX可以连在micro:bit的Pin0~Pin2任何两个口,但是要在micro:bit的代码中进行定义,例如:uart.init(baudrate=9600,bits=8,parity=None,stop=1,tx=pin2,rx=pin1)表示TX接到Pin2口,RX接到Pin1口,串口波特率是9600。“室内环境实时监测系统”硬件选择服务器选择:服务器要存储各种传感器收集的数据,处理服务需求,要求不高,可用普通PC机。数据库选择Python自带的嵌入式开源数据库SQLite。4.2.2 软件开发信息系统的软件开发一般包括:数据管理设计服务器端程序客户端程序1.数据管理设计数据管理设计主要负责与具体数据管理系统相衔接,包括数据采集、传输、存储、呈现等方面,为系统中需要长久存储的数据对象提供数据存储的方案。(1)数据采集数据采集是利用一种或多种装置,从系统外部采集数据并输入系统内部一个接口的过程。常见的数据采集方法有:键盘输入、利用光电设备采集数据、多媒体输入、网络传送、磁盘输入等。在“室内环境实时监测系统”中,数据采集主要依靠各种传感器来完成。1.数据管理设计(2)数据传输数据采集好后,通过传输介质传送到服务器进行加工处理和存储。常见的传输介质分为有线和无线两种。有线介质包括双绞线、同轴电缆和光缆;无线介质包括微波、卫星、超短波和短波信道等。“室内环境实时监测系统”中,智能终端到Web客户端可以采用USB线缆,也可以采用蓝牙,web客户端则一般采用Wi-Fi,将数据传送到Web服务器。1.数据管理设计(3)数据存储文件使用较为简单,方便程序自定义格式。数据库性能优越,方便查询,可以加、解密,以及跨平台应用等。通过网络可以把采集到的数据实时传输到数据处理中心进行存储及处理,比如云存储。1.数据管理设计(4)数据呈现数据呈现是把分析结果用最容易理解和最美观的方式展现出来。用表格形式来呈现数据是一种比较简便的方式,但是,为了更好地体现数据价值,人们经常用图形化的方式来呈现数据。通常情况下,人们用到的数据图类型有以下几种:柱状图、条形图、折线图、饼图、气泡图、漏斗图、GIS地图、词云等。气泡图GIS地图漏斗图词云数据呈现图2.程序编写信息系统中的软件开发涉及服务器端程序和客户端程序。一个服务器端程序,往往面向众多客户端提供数据服务。具体程序要看架构模式。B/S结构一般只写服务器端程序,如网站,只需完成服务器端程序,浏览器就是客户端程序,不用再写,使得部署、更新更加容易。C/S结构服务器端程序和客户端程序都要写,类似QQ、网游等。“室内环境实时监测系统”的程序编写三部分Web服务器端程序Web模板文件代码智能终端程序Web服务器端程序# coding= UTF-8import sqlite3import datetimefrom flask import Flask,render_template,requestDATABASE = 'data/data.db'app = Flask(__name__)@app.route("/")def hello():db = sqlite3.connect(DATABASE)cur = db.cursor()cur.execute("SELECT * FROM sensorlog WHERE sensorid =1")data = cur.fetchall()cur.close()db.close()temp1 = data[len(data) - 1]temp=temp1[2]return render_template('vews.html', data=data,temp=temp)Web服务器端程序#Adding data@app.route("/input",methods=['POST','GET'])def add_data():if request.method == 'POST':sensorid = int(request.form.get('id'))sensorvalue = float(request.form.get('val'))else:sensorid = int(request.args.get('id'))sensorvalue = float(request.args.get('val'))nowtime = datetime.datetime.now()nowtime = nowtime.strftime('%Y-%m-%d %H:%M:%S')db = sqlite3.connect(DATABASE)cur = db.cursor()cur.execute("INSERT INTO sensorlog(sensorid,sensorvalue,updatetime) VALUES(%d,%f,'%s')" %(sensorid,sensorvalue,nowtime) )mit()Web服务器端程序cur.execute("SELECT * FROM sensorlist where sensorid = %d"% sensorid)rv = cur.fetchall()cur.close()db.close()maxrv = rv[0][2]minrv = rv[0][3]if sensorvalue > maxrv or sensorvalue < minrv:return '1'else:return '0'Web模板文件代码室内环境实时监测系统室内环境实时监测系统当前室内温度:`temp` 刷新历史数据列表{% for i in data[::-1] %}时间:{{i[3]}} 温度值:{{i[2]}}℃{% endfor %}智能终端程序from microbit import *import Obloq#温度传感器(LM35)接在pin0,蜂鸣器接在pin8IP=“*.*.*.*" #Web服务器IPPORT="8080" #Web服务器端口SSID=“********" #Wi-Fi的SSIDPASSWORD=“********" #Wi-Fi的密码uart.init(baudrate=9600,bits=8,parity=None,stop=1,tx=pin2,rx=pin1)while Obloq.connectWifi(SSID,PASSWORD,10000) !=True:display.show(".")display.scroll(Obloq.ifconfig())Obloq.httpConfig(IP,PORT)智能终端程序while True:val=pin0.read_analog()temp=round(val/1024*3000/10.24,1)display.scroll(temp)errno,resp=Obloq.get("input id=1&val="+str(temp),10000)if errno==200:display.show(str(resp))if resp=="1":pin8.write_digital(1)else:pin8.write_digital(0)else:display.show(str(errno))sleep(5000)3.调试及运行将代码写入智能终端后,观察智能终端LED矩阵的显示,了解传感器数据的采集和数据的传输情况。并尝试解决调试过程中遇到的问题。序号 错误状态 错误原因 如何修复错误1234课堂随练1.下列关于信息系统软件开发的说法,正确的是( )A.软件开发一般包括数据管理设计、服务器端程序、客户端程序几个部分B.信息系统中一般不需要为长久存储的数据对象提供数据存储方案C.B/S结构一般只写客户端程序,无须开发服务器程序D.C/S结构服务器端程序和客户端程序都要写,如网站A课堂随练2.下列选项中,不能实现采集数据的硬件设备是( )A.温度传感器B.湿度传感器C.蜂鸣器D.烟雾传感器C课堂随练3.Python自带的开源数据库是( )A.OracleB.SQLiteC.AccessD.MySQLB课堂随练4.在B/S开发模式中,必须要搭建的服务器是( )A.邮件服务器B.高端服务器C.Web服务器D.FTP服务器C课堂随练AMicro:bit 代码from micribit importwhile True:if pin0.read_analog()<100pin12.write digital(1)else:pin12. write digital(0)sleep(10000)(1)本套模拟系统中的micro:bit 属于信息系统组成中的哪部分( )A.硬件 B.软件 C.通信网络 D.用户课堂随练AMicro:bit 代码from micribit importwhile True:if pin0.read_analog()<100pin12.write digital(1)else:pin12. write digital(0)sleep(10000)(2)系统中控制源的选择即光线传感器的选择,属于信息系统详细设计中的( )A.代码设计 B.人机界面 C.输出设计 D.输入设计D谢谢欣赏2022.4.26 展开更多...... 收起↑ 资源预览