51mee - AI智能招聘平台Logo
模拟面试题目大全招聘中心会员专区

描述一个你参与过的智慧城市项目,其中涉及物联网设备接入与数据采集,请说明设备连接方式(如5G/LoRaWAN)、数据传输协议(如MQTT)、以及数据清洗与预处理流程。

佳都科技集团股份有限公司解决方案工程师/售前工程师等难度:中等

答案

1) 【一句话结论】我参与过智慧城市“城市环境监测”项目,通过LoRaWAN连接分布在城区的空气质量、噪音传感器,采用MQTT协议传输数据,数据清洗后存储至时序数据库,用于实时环境态势分析。

2) 【原理/概念讲解】老师会解释关键概念:

  • 设备连接方式:5G/4G适合高带宽、低延迟、高密度的设备(如智能摄像头、交通信号灯),因网络覆盖广、传输速率高;LoRaWAN适合低功耗、广域覆盖的设备(如环境传感器、路灯状态监测),因通信距离远、功耗低,适合城市大范围部署。
  • 数据传输协议:MQTT是轻量级发布-订阅协议,基于TCP/IP,适合资源受限的物联网设备,支持消息QoS级别(0/1/2)确保可靠传输;而HTTP/HTTPS适合需要高交互性的设备(如Web端设备)。
  • 数据清洗与预处理:流程包括数据校验(检查设备ID、数据包完整性)、缺失值处理(均值/中位数填充或标记缺失)、异常值检测(Z-score方法识别离群值)、数据格式转换(统一时间戳、单位标准化),目的是保证数据质量,为后续分析提供可靠输入。

3) 【对比与适用场景】

设备连接方式定义特性使用场景注意点
5G/4G蜂窝网络无线通信技术高带宽、低延迟、高密度连接交通信号灯监控、智能摄像头、应急设备成本较高,功耗较大
LoRaWAN低功耗广域网技术低功耗、远距离(数公里)、低速率环境传感器、路灯状态监测、燃气泄漏报警传输速率较低,不适合高带宽需求
数据传输协议定义特性使用场景注意点
MQTT轻量级发布-订阅协议资源受限设备友好、支持QoS、低开销物联网设备(传感器、智能设备)需Broker(消息代理)支持,消息可靠性依赖QoS
HTTP/HTTPS标准Web协议高交互性、支持RESTful APIWeb端设备、复杂交互场景开销较大,不适合低功耗设备

4) 【示例】
假设项目中的环境传感器(如PM2.5监测设备)通过LoRaWAN连接,设备上报数据格式为JSON,包含设备ID、时间戳、PM2.5浓度值。数据清洗预处理流程伪代码如下:

# 设备上报数据示例
raw_data = {
    "device_id": "Lora_001",
    "timestamp": "2023-10-27T10:30:00Z",
    "value": 45  # 单位:μg/m³
}

def preprocess_data(raw_data):
    # 1. 数据校验:检查设备ID是否合法
    if not validate_device_id(raw_data["device_id"]):
        return None
    
    # 2. 时间戳处理:转换为统一格式(如Unix时间戳)
    processed_data = {
        "device_id": raw_data["device_id"],
        "timestamp": convert_to_timestamp(raw_data["timestamp"])
    }
    
    # 3. 数据类型转换:确保数值类型正确
    try:
        processed_data["value"] = float(raw_data["value"])
    except ValueError:
        return None
    
    # 4. 缺失值处理:用历史均值填充
    if processed_data["value"] is None:
        processed_data["value"] = get_mean_value(raw_data["device_id"])
    
    # 5. 异常值检测:Z-score方法
    z_score = calculate_z_score(processed_data["value"], raw_data["device_id"])
    if abs(z_score) > 3:
        return None
    
    return processed_data

cleaned_data = preprocess_data(raw_data)
if cleaned_data:
    store_to_database(cleaned_data)  # 存储到InfluxDB

5) 【面试口播版答案】
我参与过智慧城市“城市环境监测”项目,通过LoRaWAN连接分布在城区的空气质量、噪音传感器,采用MQTT协议传输数据,数据清洗后存储至时序数据库,用于实时环境态势分析。具体来说,设备连接方式选择LoRaWAN是因为环境传感器属于低功耗、广域覆盖场景,而数据传输协议选MQTT是因为其轻量级特性适合资源受限的传感器设备。数据清洗流程包括数据校验(检查设备ID和数值有效性)、缺失值处理(用历史均值填充)、异常值检测(Z-score方法识别离群值),确保数据质量后存储到InfluxDB用于分析。

6) 【追问清单】

  • 项目中设备数量大概有多少?
    回答要点:约500个LoRaWAN传感器,分布在城区主要街道和公园。
  • 数据清洗过程中如何处理缺失值?
    回答要点:对于短期缺失,用历史均值填充;长期缺失则标记为无效数据。
  • 为什么选择MQTT而不是HTTP协议?
    回答要点:MQTT轻量级,适合低功耗设备,而HTTP开销大,不适合频繁上报的传感器。
  • 数据预处理后存储到什么数据库?
    回答要点:InfluxDB(时序数据库),因适合存储时间序列数据,支持高效查询。
  • 项目中遇到的最大挑战是什么?
    回答要点:设备部署时的网络覆盖问题,通过增加LoRaWAN网关解决。

7) 【常见坑/雷区】

  • 连接方式选错:用5G连接低功耗环境传感器,忽略高功耗和成本问题。
  • 协议不匹配:用HTTP传输高频数据,导致设备资源耗尽。
  • 数据清洗流程不完整:只提到清洗,未说明具体步骤(如校验、异常检测)。
  • 忽略场景限制:未说明选LoRaWAN的原因,仅说“低功耗”。
  • 数据存储方式错误:用关系型数据库存储时序数据,导致查询效率低。
51mee.com致力于为招聘者提供最新、最全的招聘信息。AI智能解析岗位要求,聚合全网优质机会。
产品招聘中心面经会员专区简历解析Resume API
联系我们南京浅度求索科技有限公司admin@51mee.com
联系客服
51mee客服微信二维码 - 扫码添加客服获取帮助
© 2025 南京浅度求索科技有限公司. All rights reserved.
公安备案图标苏公网安备32010602012192号苏ICP备2025178433号-1