4.2-搭建信息系统课件-2021-2022学年浙教版(2019)高中信息技术必修2(23张PPT)

文档属性

名称 4.2-搭建信息系统课件-2021-2022学年浙教版(2019)高中信息技术必修2(23张PPT)
格式 pptx
文件大小 15.0MB
资源类型 教案
版本资源 浙教版(2019)
科目 信息技术(信息科技)
更新时间 2022-03-25 07:19:13

图片预览

文档简介

(共23张PPT)
第四章 信息系统的搭建实例
必修2 信息系统与社会
4.2 搭建信息系统
前言
信息系统的搭建主要包括硬件搭建和软件模块选择或编写。
硬件是信息系统建立的基础。
软件是控制信息系统运行的中枢。
1.硬件搭建
信息系统硬件包括服务器、网络设备、传感设备、智能终端等,决定了系统的运行速度、可靠性、适用范围、可维护性等。
1.硬件搭建
(1)服务器
为信息系统中的用户提供各种服务,如应用程序的处理、访问数据库管理系统、打印服务等。
(2)网络设备
通过网络来完成数据的传递。
网络设备主要包括:交换机、路由器、双绞线、光缆
1.硬件搭建
(3)传感设备和智能终端
传感设备,即传感器,是重要的输入设备,负责检测并将信息变换成电信号或其他形式信息输出。
智能终端大部分功能依靠传感器实现,包括输入、处理、存储、输出四个部分。
“室内环境实时监测系统”硬件清单
“室内环境实时监测系统”硬件选择
智能终端设备:
micro:bit主板,连接温度传感器、蜂鸣器模块、IoT(物联网)模块。
为了方便连接模块须接扩展板。
“室内环境实时监测系统”硬件选择
智能终端的引脚分配情况
模块名称 引脚
IoT模块 Pin1、Pin2
蜂鸣器 Pin8
温度传感器 Pin0
引脚,英文Pin,是集成电路(芯片)内部电路引出与外围电路的接线,所有的引脚就构成了这块芯片的接口。
“室内环境实时监测系统”硬件选择
网络设备:
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。
“室内环境实时监测系统”硬件连接
2.软件开发
信息系统的软件开发一般包括:
数据管理设计
服务器端程序
客户端程序
2.软件开发
主要负责与具体数据管理系统相衔接,包括数据采集、传输、存储、呈现等方面,为系统中需要长久存储的数据对象提供数据存储的方案。
1)数据管理设计
2.软件开发
1)数据管理设计
(1)数据采集
数据采集是利用一种或多种装置,从系统外部采集数据并输入系统内部一个接口的过程。
常见数据采集方法:键盘输入、利用光电设备采集数据、多媒体输入、网络传送、磁盘输入等。
2.软件开发
1)数据管理设计
(2)数据传输
通过传输介质传送到服务器进行加工处理和存储。常见的传输介质分为有线和无线两种。
有线介质包括双绞线、同轴电缆和光缆;
无线介质包括微波、卫星、超短波和短波信道等。
2.软件开发
1)数据管理设计
(3)数据存储
文件、数据库、云存储是数据存储的常见方式。文件使用较为简单,方便程序自定义格式;数据库性能优越,方便查询,可以加、解密,以及跨平台应用等;通过网络可以把采集到的数据实时传输到数据处理中心进行存储及处理。
2.软件开发
1)数据管理设计
(4)数据呈现
把分析结果用最容易理解和最美观的方式展现出来。
人们用到的数据图类型有以下几种:柱状图、条形图、折线图、饼图、气泡图、漏斗图、GIS地图、词云等。
2.软件开发
2)程序编写
信息系统中的软件开发涉及服务器端程序和客户端程序。
“室内环境实时监测系统”的程序编写三部分:
Web服务器端程序
Web模板文件代码
智能终端程序
Web服务器端程序
from flask import Flask,request,render_template
import sqlite3,datetime
app=Flask(__name__)
@app.route("/input",methods=["POST"])
def collect_data():
data=str(request.json["Real_val"])
now_time=datetime.datetime.now()
now_time=now_time.strftime("%Y-%m-%d %H:%M:%S")
con=sqlite3.connect("data.db")
cur=con.cursor()
cur.execute("CREATE TABLE IF NOT EXISTS temp(time TEXT,data TEXT)")
cur.execute("INSERT INTO temp(time,data) VALUES( , )",(now_time,data))
con.commit()
con.close()
print("获取时间:%s;温度值:%s"%(now_time,data))
return data
@app.route("/get",methods=["GET"])
def get_data():
show=""
con=sqlite3.connect("data.db")
cur=con.cursor()
cur.execute("select * from temp")
data=cur.fetchall()
con.commit()
con.close()
t_min=float(data[0][1])
t_max=float(data[0][1])
for i in range(len(data)):
if t_maxt_max=float(data[i][1])
if t_min>float(data[i][1]):
t_min=float(data[i][1])
return render_template("show.html",Tdata=data,Tmax=t_max,Tmin=t_min)
if __name__=="__main__":
app.run(host="0.0.0.0",port=8080)
Web模板文件代码




温度情况查看


温度传感器获取情况


当前最大值:`Tmax`℃ 当前最小值:`Tmin`℃


{% for i in Tdata[::-1] %}
获取时间:{{i[0]}} 获取温度值:{{i[1]}}℃

{% endfor %}


智能终端程序
from microbit import *
#write your program:
import Obloq
ip=“*.*.*.*” #Web服务器IP地址,其中*用实际值替换
port=“8080“ #Web服务器端口号
ssid=“********“ #Wi-Fi的SSID,其中*用实际值替换
password=“********“ #Wi-Fi的密码,其中*用实际值替换
uart.init(baudrate=9600,bits=8,parity=None,stop=1,tx=pin2,rx=pin1)
while Obloq.connectWifi(ssid,password,20000) !=True:
display.show(".")
display.scroll(Obloq.ifconfig())
Obloq.httpConfig(ip,port)
while True:
val=pin0.read_analog()
temp=round(val*330/1024,1)
display.scroll(temp)
errno,resp=Obloq.post("input","{\"Real_val\":"+str(temp)+"}",120000)
sleep(500)
3.调试及运行
将代码写入智能终端后,观察智能终端LED矩阵的显示,了解传感器数据的采集和数据的传输情况。并尝试解决调试过程中遇到的问题。
序号 错误状态 错误原因 如何修复错误
1
2
3
4