Tracker-v2.0.0

Script files are in code directory

Function definitions file is in docs directory

tracker 功能模块

该模块为具体tracker功能的集合, 内部封装实现的具体功能如下

  1. 与云端的数据交互功能, 主要包括设备数据信息的上报与云端数据下发控制;
  2. (GPS, 基站)定位位置信息的自动上报功能;
  3. 设备异常信息告警功能;
  4. 电池电量信息检测与提示功能;

alert 功能

该功能提供post_alert方法, 将定义好的报警编码与报警信息上报到云端。

报警编码与标识符

  • 20000: fault_alert
  • 30002: low_power_alert
  • 30003: over_speed_alert
  • 30004: sim_out_alert
  • 30005: disassemble_alert
  • 40000: drive_behavior_alert
  • 50001: sos_alert

fault_alert故障报警编码与标识符

  • 20001: net_error
  • 20002: gps_error
  • 20003: temp_sensor_error
  • 20004: light_sensor_error
  • 20005: move_sensor_error
  • 20006: mike_error

drive_behavior_alert驾驶行为异常报警编码与标识符

  • 40001: quick_start
  • 40002: quick_stop
  • 40003: quick_turn_left
  • 40004: quick_turn_right

例:

import utime
from usr.tracker import Tracker

tracker = Tracker()
alert_code = 20000
alert_info = {
    'fault_code': 20001,
    'local_time': utime.mktime(utime.localtime())
}
tracker.alert.post_alert(alert_code, alert_info)

battery 功能

改功能提供energy方法查询当前电池电量。

例:

from usr.tracker import Tracker

tracker = Tracker()
battery_energy = tracker.battery.energy()

location 功能

该功能提供了readtrigger两个方法, 定位模式, 定位方式, 定位信息上报模式在settings模块中配置, 亦可通过云端远程进行消息控制。

  • read方法用于查询当前发送云端的定位信息。
  • trigger方法用于立即向云端报告设备定位信息功能。

例:

from usr.tracker import Tracker

tracker = Tracker()
location_info = tracker.locator.read()
tracker.locator.trigger()

remote 功能

该功能提供了post_dataset_block_io方法向云端进行消息通信功能(目前暂时只支持移远云)。

  • post_data方法向云端进行消息发送功能。post_data发放支持阻塞和非阻塞两种消息发送模式, 默认为阻塞方式进行消息发送。
  • set_block_io方法可以设置消息发送的阻塞和非阻塞方式。
  • 移远云目前的消息有三种模式
    • DATA_NON_LOCA (非位置信息)
    • DATA_LOCA_NON_GPS (非GPS位置信息)
    • DATA_LOCA_GPS (GPS位置信息)
  • 移远云物模型功能定义标识符(具体详述见quec_cloud_module.json)
    • power_switch
    • energy
    • phone_num
    • loc_method
    • loc_mode
    • loc_cycle_period
    • local_time
    • low_power_alert_threshold
    • low_power_shutdown_threshold
    • sw_ota
    • sw_ota_auto_upgrade
    • sw_voice_listen
    • sw_voice_record
    • sw_fault_alert
    • sw_low_power_alert
    • sw_over_speed_alert
    • sw_sim_out_alert
    • sw_disassemble_alert
    • sw_drive_behavior_alert
    • drive_behavior_code
    • sos_alert
    • fault_alert
    • low_power_alert
    • sim_out_alert
    • drive_behavior_alert
    • disassemble_alert
    • power_restart
    • over_speed_threshold
    • over_speed_alert
    • fault_code
    • gps_mode

例:

import utime
from usr.tracker import Tracker

tracker = Tracker()
data = {
    'power_switch': True,
    'energy': tracker.battery.energy(),
    'local_time': utime.mktime(utime.localtime())
}
tracker.remote.post_data(tracker.remote.DATA_NON_LOCA, data)
tracker.locator.trigger()

tracker_timer 功能

该模块为tracker定时器模块, 该模块实现了三个定时任务

  1. 周期性循环发送设备位置信息(此处发送周期和是否周期发送可在settings模块中设置, 可以通过云端下发指令远程控制);
  2. 每60秒循环获取当前电池电量进行电量提示, 低电量报警, 地点了关机等检测;
  3. GPS位置信息循环获取, 此功能只针对内置GPS模块, 外置GPS模块该功能不启动。

machine_info_report 功能

该模块实现了机器信息的汇总上报功能, 会将机器的位置信息, 开机状态, 电池电量等相关设置信息全部实时上报云端。

例:

from usr.tracker import Tracker

tracker = Tracker()
tracker.machine_info_report()

machine_check 功能

该功能用于检测设备相关功能是否正常, 主要包括网络状态, GPS模组, 各类传感器, 麦克风是否正常工作(目前暂不支持各类传感器麦克风等外设检测)。 如异常会上报远端异常信息。 检查完毕后不论异常与否都会调用machine_info_report功能上报云端设备所有信息。

例:

from usr.tracker import Tracker

tracker = Tracker()
tracker.machine_check()

settings 功能模块

该模块为配置参数模块, 该模块主要有appsys两种类型的参数。并提供settings方法对app类型参数进行修改, 从而实现远程下发指令控制模块功能。

  • app为可修改控制相关参数;
  • sys为系统默认参数, 不可修改。
  • 配置参数都已集成到一个字典中, 可通过settings.get()方式获取到具体配置参数
  • app配置参数具体含义见quec_cloud_module.json(导入移远云产品功能定义中)
{
    "app": {
        "loc_cycle_period": 1,
        "phone_num": "",
        "loc_method": 1,
        "loc_mode": 0,
        "low_power_alert_threshold": 20,
        "low_power_shutdown_threshold": 5,
        "sw_over_speed_alert": true,
        "over_speed_threshold": 120,
        "sw_disassemble_alert": true,
        "sw_fault_alert": true,
        "sw_low_power_alert": true,
        "sw_voice_record": false,
        "sw_voice_listen": false,
        "sw_sim_out_alert": true,
        "gps_mode": 2,
        "sw_drive_behavior_alert": true,
        "sw_ota": true,
        "sw_ota_auto_upgrade": true
    },
    "sys": {
        "cloud": 1,
        "profile_idx": 1,
        "cloud_init_params": {
            "DK": "XXXXX",
            "DS": "XXXXX",
            "PK": "XXXXX",
            "PS": "XXXXX"
        },
        "locator_init_params": {
            "gps_cfg": {
                "parity": 0,
                "stopbits": 1,
                "flowctl": 0,
                "UARTn": 1,
                "buadrate": 115200,
                "databits": 8
            }
        }
    }
}
Description
No description provided
Readme 9.4 MiB
Languages
Python 100%