蓝牙Mesh模型技术概述

需积分: 10 1 下载量 58 浏览量 更新于2024-07-16 收藏 666KB PDF 举报
"蓝牙Mesh模型概述" 这篇文档是关于蓝牙Mesh模型的详细技术介绍,由Martin Woolley撰写,版本1.0,修订日期为2019年3月27日。蓝牙技术是一种全球通用的无线标准,确保不同制造商的设备之间具有互操作性。同样的理念也被应用到蓝牙Mesh网络中,使得灯具、传感器、开关等智能建筑设备在安装后能无缝协同工作,确保了互操作性。 蓝牙Mesh网络的互操作性源于通信栈每一层的标准,从底层处理无线电的物理层到顶层产品可能展示的用户行为。蓝牙Mesh规范通过定义称为模型的细粒度标准构建块来描述这些产品行为。这份白皮书提供了一个对蓝牙Mesh模型的引导式介绍。 1.0 什么是Mesh模型? - **状态**: 模型是描述设备在Mesh网络中的状态和功能的软件实体。 - **模型分类**: 模型分为基础模型、通用模型、照明模型、传感器、场景和时间模型等类别,以满足不同类型的设备需求。 - **模型通信与行为**: 模型之间的通信是基于特定的协议,它们可以发送和接收消息,执行特定的操作,并根据接收到的信息改变其状态。 1.1 基础模型 这部分引导读者了解蓝牙Mesh网络中的基础模型,包括配置模型、网络模型和访问模型等,这些模型负责网络的建立、维护和数据传输。 1.2 通用模型 通用模型是跨多个设备类型都可以使用的模型,如设置模型,允许设备配置参数,或者消息传递模型,用于在Mesh网络内发送和接收消息。 1.3 照明模型 照明模型专注于智能照明系统的操作,涵盖亮度控制、色温调整、色彩空间转换等功能,确保智能灯光设备的高效协调。 1.4 传感器、场景和时间模型 传感器模型处理来自各种环境传感器的数据,如温度、湿度或光照水平;场景模型允许预设和恢复特定的设备状态组合;时间模型则涉及定时任务和事件调度,如定时开关或周期性数据报告。 白皮书详细介绍了每个模型的结构、交互方式以及如何在实际应用中集成这些模型,为开发人员提供了深入理解蓝牙Mesh网络的基础。通过这种标准化的方法,蓝牙Mesh模型确保了不同设备在复杂智能环境中的可靠互操作性和可扩展性。

请以最详细的方式解释这段代码with a01 as( select sm_id, isname, case when isname in ('冰箱', '冷柜') then '制冷' when isname = '商空' then '楼宇' when isname = '家空' then '空调' else isname end as cyx, factory_code, mtname, curstatus, model_code, model_name, start_time, --'保养起始时间' expire_time, --'保养到期时间' substring(start_time, 1, 7) byqsny, substring(expire_time, 1, 7) byjssj, case when stype = '2' then '二保' when stype = '3' then '三保' else stype end as bylx, case when mm_type = '2' then '二保' when mm_type = '3' then '三保' when mm_type = '4' then '三保带二保' else mm_type end as mmtype, --实际保养类型 upper_time, --上次保养时间 mm_time, --实际保养时间 scustcode, -- 实供应商编码 scustname, --实供应商名称 mould_status, --模具维保状态 mm_status, --实际是否保养 smould_status --模具实际维保状态 from dwd_mm_staymaintain_all a where by_status <> '无需保养' and length(factory_code) = 4 and curstatus not in ('报废中', '已报废', '冻结数据', '垃圾数据') and isname in ('冰箱', '冷柜', '家空', '商空', '洗涤', '厨电', '热水器') and substring(expire_time, 1, 10) <= from_unixtime(unix_timestamp(), 'yyyy-MM-dd') and expire_time is not null and expire_time <> '' ), b01 as( select cyx, byjssj, count(sm_id) by_ying from a01 group by cyx, byjssj ), b02 as( select cyx, byjssj, count(sm_id) by_shi from a01 where mm_status = '已保养' group by cyx, byjssj ),c01 as( select from_unixtime(unix_timestamp(), 'yyyy-MM') months, t1.cyx industry, t1.byjssj byjsyf, cast(t1.by_ying as string) by_ying, cast(t2.by_shi as string) by_shi, cast(t2.by_shi/t1.by_ying as decimal(8,5)) bywcl from b01 t1 left join b02 t2 on t1.cyx = t2.cyx and t1.byjssj = t2.byjssj) insert overwrite table dh_yf.tt_mould_asset_maintenance_overview select months, industry, byjsyf, by_ying, by_shi, cast(bywcl as string) bywcl, from_unixtime(unix_timestamp(), 'yyyy-MM-dd') etl_date, '%' unit from c01

2023-05-30 上传

#!/bin/sh # WARNING: This file is created by the Configuration Wizard. # Any changes to this script may be lost when adding extensions to this configuration. # --- Start Functions --- usage() { echo "You must have a value for SERVER_NAME either set as an environment variable or the first parameter on the command-line." echo "ADMIN_URL defaults to t3://iZbp13mxkrdvorojwpi2c9Z:7001 if not set as an environment variable or the second command-line parameter." echo "USER_NAME and PASSWORD are required for shutting the server down when running in production mode:" echo "Usage: $1 {SERVER_NAME} {ADMIN_URL} {USER_NAME} {PASSWORD}" echo "for example:" echo "$1 managedserver1 t3://iZbp13mxkrdvorojwpi2c9Z:7001 weblogic weblogic" } # --- End Functions --- # ************************************************************************* # This script is used to stop a managed WebLogic Server for the domain in # the current working directory. This script reads in the SERVER_NAME and # ADMIN_URL as positional parameters, sets the SERVER_NAME variable, then # calls the startWLS.cmd script under ${WL_HOME}/server/bin. # # Other variables that startWLS takes are: # # WLS_USER - cleartext user for server startup # WLS_PW - cleartext password for server startup # JAVA_OPTIONS - Java command-line options for running the server. (These # will be tagged on to the end of the JAVA_VM) # JAVA_VM - The java arg specifying the VM to run. (i.e. -server, # -hotspot, etc.) # # For additional information, refer to "Managing Server Startup and Shutdown for Oracle WebLogic Server" # # (http://download.oracle.com/docs/cd/E23943_01/web.1111/e13708/overview.htm) # # ************************************************************************* # Set SERVER_NAME and ADMIN_URL, they must by specified before starting # a managed server, detailed information can be found at # http://download.oracle.com/docs/cd/E23943_01/web.1111/e13708/overview.htm if [ "$1" = "" ] ; then if [ "${SERVER_NAME}" = "" ] ; then usage $0 exit fi else SERVER_NAME="$1" export SERVER_NAME shift fi if [ "$1" = "" ] ; then if [ "${ADMIN_URL}" = "" ] ; then ADMIN_URL="t3://iZbp13mxkrdvorojwpi2c9Z:7001" export ADMIN_URL fi else ADMIN_URL="$1" export ADMIN_URL shift fi DOMAIN_HOME="/home/weblogic/Oracle/Middleware/user_projects/domains/base_domain" ${DOMAIN_HOME}/bin/stopWebLogic.sh $1 $2

2023-06-03 上传