4.2 信息系统搭建(教学课件)信息技术浙教版2019必修2

2025-10-30
| 40页
| 1227人阅读
| 7人下载
精品

资源信息

学段 高中
学科 信息技术
教材版本 高中信息技术浙教版必修2 信息系统与社会
年级 高二
章节 4.2 搭建信息系统
类型 课件
知识点 -
使用场景 同步教学-新授课
学年 2025-2026
地区(省份) 全国
地区(市) -
地区(区县) -
文件格式 PPTX
文件大小 7.29 MB
发布时间 2025-10-30
更新时间 2024-10-11
作者 xkw_072556811
品牌系列 上好课·上好课
审核时间 2024-10-11
下载链接 https://m.zxxk.com/soft/47877386.html
价格 4.00储值(1储值=1元)
来源 学科网

内容正文:

第四章 Chapter 4 信息系统的搭建实例 1 目录 1 2 搭建信息系统的前期准备 搭建信息系统 3 完善信息系统 复习回顾 开发“意愿” 切实可行的“规划” 分析、论证、清晰化的过程 需求分析 可行性分析 开发模式的选择 概要设计 详细设计 做什么 是否有必要做,是否可行 大概怎么做 具体怎么做 B/S架构 C/S架构 想法 搭建信息系统前期准备 胸有成竹 搭建信息系统 现实 搭建信息系统 从何入手? 先搭硬件,再写软件 搭建信息系统 硬件 服务器 为信息系统中的用户提供各种服务,如应用程序的处理、访问数据库管理系统、打印服务等。 网络设备 通过网络来完成数据的传递。 网络设备主要包括:交换机、路由器、双绞线、光缆。 传感设备和智能终端 传感设备,即传感器,是重要的输入设备,负责检测并将信息变换成电信号或其他形式信息输出。 智能终端大部分功能依靠传感器实现,包括输入、处理、存储、输出四个部分。 硬件 搭建信息系统 硬件搭建 Micro:bit主板 Micro:bit掌控IO扩展板 LM35温度传感器 IOT(物联网)模块 服务器(普通pc) 搭建信息系统 考虑运营成本和数据存储和网络交互要求较低,可用普通PC机代替专用服务器。数据库选择python自带的嵌入式开源数据库SQLite 服务器 服务器(普通pc代替) 硬件搭建——服务器 搭建信息系统 硬件搭建——网络设备 IoT(Internet of Things,物联网)模块:可以用于自身不能联网、但是有串口功能的智能硬件,原理是串口转wifi物联网。 IOT四个针脚:Vcc、Gnd、TX和RX 搭建信息系统 硬件搭建——网络设备 名称 功能描述 TX 发送端 RX 接收端 GND 电源负极 VCC 电源正极 颜色 状态 红色 没有正常运行 蓝色 正在连接WIFI 绿色 正常工作状态 紫色 Mqtt连接断开 搭建信息系统 硬件搭建——智能终端 Micro:bit 既支持传感器的采集,也支持对LED、蜂鸣器之类的执行模块的控制。 本例我们利用扩展板连接IoT模块和温度传感器。 搭建信息系统 硬件搭建 搭建信息系统 小马设计了“校园噪音检测信息系统”,下列设备可用于采集该系统声音数据的是( ) A.蜂鸣器 B.湿度传感器 C.网络交换机 D.声音传感器 课堂练习 D 小马搭建“校园噪音检测信息系统”,要求使用数据库存储每日温度数据,则该系统搭建服务器时下列软件中无须安装的是 ( ) A.数据库管理系统 B.传感器驱动程序 C.操作系统 D.网卡驱动程序 课堂练习 B 搭建“教室温度湿度监测系统”,实现登录系统实时查看教室的温度和湿度,该系统使用的硬件配置方案中不可缺少的设备是( ) A.智能终端、温度传感器、交换机 B.温度传感器、湿度传感器、图像传感器 C.温度传感器、图像传感器、计算机 D.智能终端、温度传感器、湿度传感器 课堂练习 D 课堂练习 服务器 智能终端 搭建信息系统 软件开发 软件开发 主要负责与具体数据管理系统衔接,为系统中需要长久存储的数据对象提供数据存储的方案。 数据管理设计 程序编写 客户端程序 服务器端程序 B/S结构不需要编写,浏览器就是客户端程序。 C/S结构需要编写。 B/S和C/S结构都需要编写。 数据加工处理 数据采集 数据传输 数据存储 数据呈现 搭建信息系统 软件开发——数据管理设计 服务器端可以保存特定传感器的所有记录以供后期分析。数据传输格式采用JSON,基于HTTP传送。 JSON是一种轻量级的数据交换格式,它采用完全独立于语言的文本格式,易于阅读和编写,同时也易于机器解析和生成。它能轻松地在服务器浏览器之间传输,并用作任何编程语言的数据格式。 { "sensorid":"1", "value":[ { "sensorvalue":"29.0", "updatetime":"2017-05-27 23:00:34" } ] } 温度数据保存格式样例 搭建信息系统 软件开发——数据管理设计 搭建信息系统 软件开发——智能终端功能 连接网络 串口初始化 等待WiFi连接成功 显示设备IP地址 传感器采集信息 读取温度模拟值转换为实际温度 LED点阵显示实际温度 提交请求 POST请求提交实时温度 GET请求提交阈值并返回警报状态值 终端输出控制 根据获取的Web端数据控制蜂鸣器高温警报 搭建信息系统 软件开发——智能终端 from microbit import * import Obloq #导入OBLOQ IoT模块 SSID=“YingHuaJY" #Wi-Fi名称,英文字符 PASSWORD=“83320999" #Wi-Fi密码,英文字符 uart.init(baudrate=9600, bits=8, parity=None, stop=1, tx=pin2, rx=pin1) #串口设置,波特率,数据位,奇偶校验,停止位数值,引脚设置 Obloq.connectWifi(SSID,PASSWORD,10000) #连接WiFi display.scroll(Obloq.ifconfig()) #返回IP地址 连网 搭建信息系统 软件开发——智能终端 发送端 接收端 IoT模块接口: “+”:连接扩展板正极 “-”:连接扩展板负极 TX:连接扩展板的Pin1 RX:连接扩展板的Pin2 搭建信息系统 软件开发——智能终端 Obloq.connectWifi(SSID,PASSWORD,TIME)函数 函数功能 配置obloq模块,接入对应的无线网络 参数 SSID 需要接入WiFi名称 PASSWORD WiFi密码 TIME 连接超时时间:在时间内一直尝试连接,单位:毫秒 函数返回值 连接成功,返回True;否则返回False 搭建信息系统 软件开发——智能终端 Obloq.ifconfig()函数 函数功能 接入对应的无线网络 函数返回值 连接成功,返回IP地址;连接失败或中断,返回””(空字符) 搭建信息系统 软件开发——智能终端 from microbit import * import Obloq IP="192.168.0.104" #Web服务器的IP地址 PORT="8080" #Web服务器的端口号 SSID="Tenda_435C78" #要连接Wi-Fi的SSID PASSWORD="83320999" #要连接Wi-Fi的密码 uart.init(baudrate=9600, bits=8, parity=None, stop=1, tx=pin2, rx=pin1) while Obloq.connectWifi(SSID,PASSWORD,20000) != True: #等待IoT模块成功接入Wi-Fi display.show(".") display.scroll(Obloq.ifconfig()) #显示IoT模块接入Wi-Fi网络相关信息 Obloq.httpConfig(IP,PORT) #HTTP配置,Web服务器IP地址和端口号 连服务器 搭建信息系统 软件开发——智能终端 Obloq.httpConfig(IP,PORT) 函数功能 配置http,设置被访问服务器的 IP 地址和端口号 (终端与服务器通过HTTP协议进行数据传输) 参数 IP 服务器IP地址 PORT 服务器端口号 函数返回值 连接成功,返回True;否则返回False 搭建信息系统 软件开发——智能终端 发送请求 errno,resp=Obloq.post("input","{\"Real_val\":"+str(temp)+"}",120000) #通过post请求发送的数据需采用JSON格式,如:{"Real_val":"30"} Obloq.post(URL,DATA,TIME) 函数功能 post请求,将数据以 JSON格式进行提交 参数 URL 提交的目标地址 DATA 需要提交的数据,JSON格式 TIME 连接超时时间,在该时间内一直尝试连接,单位毫秒 函数返回值 errno:请求状态码 200连接成功 400错误请求 404未找到 408请求超时 resp:请求返回的数据 搭建信息系统 软件开发——智能终端 什么是JSON(JavaScript Object Notation)? 是一种轻量级的数据交换格式 纯文本格式,可被任何编程语言作为数据来读取和使用 用于服务器浏览器之间的数据传输,提升网络传输效率 格式(“名称”:”值”):{"Real_val":"30"},{"name":"Bill Gates" ,...} 说明: 名称必须是字符串,双引号包围; 值的数据类型可以是字符串、数字、数组、对象、布尔、Null; 搭建信息系统 软件开发——智能终端 发送请求 errno,resp= Obloq.get("output?CP_val="+threshold,120000) #通过 get 请求发送高温警报阈值,并从 Web 端获取高温警报状态值 Obloq.get(URL_DATA,TIME) 函数功能 get请求,将数据拼接在 URL中进行提交 参数 URL_DATA 提交的目标地址,包含提交的数据在内 格式:url ? val1=num1&val2=num2…… TIME 连接的超时时间,该时间内会一直尝试连接,单位毫秒 函数返回值 errno:请求状态码 200:连接成功 400错误请求 404未找到 408请求超时 resp:请求返回的数据 搭建信息系统 软件开发——智能终端 输出控制 if errno==200: #errno=200代表get请求响应成功 display.show(resp) #LED点阵显示高温警报状态值 if resp == "1": #根据获取值判断蜂鸣器是否发出高温警报 pin8.write_digital(1) else: pin8.write_digital(0) 搭建信息系统 软件开发——服务器端功能 服务器主页http://192.168.0.156:8080 子页面1 /input 提交实时温度 响应终端POST请求(JSON数据格式),获取实时温度 子页面2 /output 提交高温警报阈值返回高温警报状态 响应终端GET请求(警报阈值),返回根据实时温度处理得到的高温警报状态值 子页面3 /get 网页显示实时温度 响应浏览器提交的GET请求,返回显示当前实时温度 搭建信息系统 软件开发——服务器端 @app.route('/input',methods=['POST']) #响应终端的post请求,获取实时温度 @app.route('/output',methods=['GET']) #响应终端的get请求,返回警报状态值 @app.route('/get',methods=['GET']) #响应网页的get请求,返回实时温度 搭建信息系统 软件开发——服务器端 data=str(request.json[' Real_val ']) #处理JSON格式数据的post请求 CP_Temp=request.args.get('CP_val') #处理get请求 request.json['key'] 函数功能 将 JSON数据转换成 Python类型 key 需要获取值的关键字 返回值 返回关键字key对应的值  request.args.get('key') 函数功能 获取 get请求中指定关键字中的值 key 需要获取值的关键字 返回值 返回关键字key对应的值 搭建信息系统 软件开发——服务器端 /input @app.route('/input',methods=['POST']) #响应终端的post请求,获取实时温度 def collect_data(): global data #全局变量声明 data=str(request.json['Real_val']) #获取JSON格式数据中指定关键字的值 print("Real_Temp:",data) return data 搭建信息系统 软件开发——服务器端 /output @app.route('/output',methods=['GET']) #响应终端的get请求,返回高温警报状态值 def dispose_data(): global data #全局变量声明 CP_Temp=request.args.get('CP_val’) #获取get请求中指定关键字中的值 print("CP_Temp:",CP_Temp) if float(data)>float(CP_Temp): #请求返回高温警报状态值 return "1" else: return "0" 搭建信息系统 软件开发——服务器端 /get @app.route('/get',methods=['GET']) #响应网页的get请求,返回实时温度 def get_data(): global data #全局变量声明 return "传感器获取温度为:"+data+"℃ " SQLite数据库 sql命令 创建表 create table 表名(字段名 字段类型,字段名 字段类型,……)) 例 create table temp(time TEXT,data TEXT)) 插入数据 insert into 表名(字段名1,字段名2)values(对应值1,值2) 例 insert into temp(time,data) VALUES(1022,22) 查询 select * from 表名 [where 条件] 例select * from temp 更新 update 表名 set 字段名=值 [where 条件] 例update temp set data=20 删除 delete from 表名 [where 条件] 例delete from temp where data=32 SQL语句字符不区分大小写 SQLite数据库 sqlites3 sqlite3数据库API con=sqlite3.connect("data.db") 连接数据库(如果存在会直接打开,否则会自动创建) cur=con.cursor() 创建游标(指针) cur.execute() 执行SQL语句(可用问号为占位符) cur.fetchall() 查询所有行,返回列表; con.commit() 提交修改操作(增删改都需要提交) cur.close()/con.close() 关闭游标/关闭数据库连接 搭建信息系统 聆 听 谢 谢 40 $$

资源预览图

4.2 信息系统搭建(教学课件)信息技术浙教版2019必修2
1
4.2 信息系统搭建(教学课件)信息技术浙教版2019必修2
2
4.2 信息系统搭建(教学课件)信息技术浙教版2019必修2
3
4.2 信息系统搭建(教学课件)信息技术浙教版2019必修2
4
4.2 信息系统搭建(教学课件)信息技术浙教版2019必修2
5
4.2 信息系统搭建(教学课件)信息技术浙教版2019必修2
6
所属专辑
相关资源
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。