-- 电站表 CREATE TABLE IF NOT EXISTS station( id INTEGER PRIMARY KEY AUTOINCREMENT, --主键标识 name TEXT(100) NOT NULL, --电站名称 address TEXT(200) NOT NULL, --电站地址 lng REAL NOT NULL, --经度 lat REAL NOT NULL, --纬度 time_zone TEXT(50) NOT NULL, --时区 remark TEXT(1200), --备注 UNIQUE(name) -- 电站名称唯一 ); -- -- 模板表 CREATE TABLE IF NOT EXISTS template( id INTEGER PRIMARY KEY AUTOINCREMENT, --主键标识 type TINYINT NOT NULL, --模板类别(0设备配置, 1北向配置) protocol_type INTEGER NOT NULL, --协议类型 dev_type INTEGER, --设备类型 name TEXT(100) NOT NULL, --名称 remark TEXT(1200), --备注 UNIQUE(name) --模板名称唯一 ); -- -- 模板点位表 CREATE TABLE IF NOT EXISTS template_point( id INTEGER PRIMARY KEY AUTOINCREMENT, --主键标识 template_id INTEGER NOT NULL, --模版Id protocol_type INTEGER NOT NULL, --协议类型 dev_type INTEGER NOT NULL, --设备类型 group_type INTEGER NOT NULL, --分组类型 code INTEGER NOT NULL, --点位编号 name TEXT(100) NOT NULL, --点位名称 enname TEXT(100) NOT NULL, --点位英文名称 data_type INTEGER NOT NULL, --数据类型 attribute INTEGER NOT NULL, --点位属性 func INTEGER NOT NULL, --点位功能 reg_addr INTEGER NOT NULL, --点位地址 bit_pos INTEGER NOT NULL, --字节开始位 bit_num INTEGER NOT NULL, --字节数 endian INTEGER NOT NULL, --字节顺序 precision REAL NOT NULL, --精度 ratio REAL NOT NULL, --系数 offset REAL NOT NULL, --偏移量 is_persisted TINYINT NOT NULL, --是否持久化 storage_interval INTEGER NOT NULL, --存储周期 mutate_bound REAL, --突变范围 default_value REAL, --默认值 min_value REAL, --最小值 max_value REAL, --最大值 unit TEXT(20), --计量单位 is_show TINYINT NOT NULL --是否展示 ); -- 设备表 CREATE TABLE IF NOT EXISTS device( id INTEGER PRIMARY KEY AUTOINCREMENT, --主键标识 sn TEXT(50) NOT NULL, --设备sn type INTEGER NOT NULL, --设备类型 code INTEGER NOT NULL, --设备编号 name TEXT(100) NOT NULL, --设备名称 protocol_type INTEGER NOT NULL, --协议类型, 参考: 主站通讯协议类型枚举 template_id INTEGER NOT NULL, --模版Id sort_order INTEGER, --序号 remark TEXT(1200), --备注 status TINYINT, --状态 UNIQUE(name), -- 设备名称唯一 UNIQUE(type, code) -- 设备类型和设备编号唯一 ); -- 设备/北向配置协议表 CREATE TABLE IF NOT EXISTS protocol( id INTEGER PRIMARY KEY AUTOINCREMENT, --主键标识 related_id INTEGER NOT NULL, --关联Id template_type TINYINT NOT NULL, --模板类别(0设备配置, 1北向配置) type INTEGER NOT NULL, --协议类型 name TEXT(100) NOT NULL, --协议名称 content TEXT(1200) NOT NULL, --协议内容 remark TEXT(1200), --备注 UNIQUE(name) -- 协议名称唯一 ); -- 点位表 CREATE TABLE IF NOT EXISTS point( id INTEGER PRIMARY KEY AUTOINCREMENT, --主键标识 template_id INTEGER NOT NULL, --模版Id protocol_type INTEGER NOT NULL, --协议类型 dev_type INTEGER NOT NULL, --设备类型 group_type INTEGER NOT NULL, --分组类型 code INTEGER NOT NULL, --点位编号 name TEXT(100) NOT NULL, --点位名称 data_type INTEGER NOT NULL, --数据类型 attribute INTEGER NOT NULL, --点位属性 func INTEGER NOT NULL, --点位功能 reg_addr INTEGER NOT NULL, --点位地址 bit_pos INTEGER NOT NULL, --字节开始位 bit_num INTEGER NOT NULL, --字节数 endian INTEGER NOT NULL, --字节顺序 precision REAL NOT NULL, --精度 ratio REAL NOT NULL, --系数 offset REAL NOT NULL, --偏移量 is_persisted TINYINT NOT NULL, --是否持久化 storage_interval INTEGER NOT NULL, --存储周期 mutate_bound REAL, --突变范围 default_value REAL, --默认值 min_value REAL, --最小值 max_value REAL, --最大值 unit TEXT(20), --计量单位 is_show TINYINT NOT NULL --是否展示 ); -- 数据监视器 CREATE TABLE IF NOT EXISTS data_monitor ( id INTEGER PRIMARY KEY AUTOINCREMENT, -- 主键标识 dev_type INTEGER NOT NULL, -- 设备类型 dev_id INTEGER NOT NULL, -- 设备Id point_id INTEGER NOT NULL, -- 点位Id interval INTEGER NOT NULL, -- 处理周期 level TINYINT NOT NULL, -- 处理等级 handle_method TINYINT NOT NULL -- 处理方式 ); -- 拓扑结构表 CREATE TABLE IF NOT EXISTS topology( id INTEGER PRIMARY KEY AUTOINCREMENT, --主键标识 parent_id INTEGER, --父Id menu_tree TINYINT NOT NULL, --类型:0-虚拟节点,1-设备节点 name TEXT(100), --层级名称 dev_id INTEGER, --设备Id sort_order INTEGER NOT NULL, --序号 remark TEXT(1200) --备注 ); -- EMS设备配置表 CREATE TABLE IF NOT EXISTS ems_device_config( id INTEGER PRIMARY KEY AUTOINCREMENT, --主键标识 type INTEGER NOT NULL, --配置类型 name TEXT(100) NOT NULL, --配置名称 content TEXT(1200) NOT NULL, --配置内容 UNIQUE(name) -- 配置名称唯一 ); -- 北向配置表 CREATE TABLE IF NOT EXISTS north_config( id INTEGER PRIMARY KEY AUTOINCREMENT, -- 主键标识 name TEXT(100) NOT NULL, --配置名称 protocol_type INTEGER NOT NULL, --协议类型,参考: 从站通讯协议类型枚举 config_type TINYINT NOT NULL, --北向配置类型:0默认全部,1配置上传 template_id INTEGER, --模版Id remark TEXT(1200), -- 备注信息 UNIQUE(name) -- 配置名称唯一 ); -- 北向上报下发配置表 CREATE TABLE IF NOT EXISTS up_dis_dev( id INTEGER PRIMARY KEY AUTOINCREMENT, -- 主键标识 north_config_id INTEGER NOT NULL, -- 外键,关联北向配置表 up_dis_config_type INTEGER, --上报下发类型 dev_type INTEGER NOT NULL, --设备类型 UNIQUE(dev_type) --设备类型和设备编号唯一 ); -- 北向上报下发点位信息表 CREATE TABLE IF NOT EXISTS up_dis_point( id INTEGER PRIMARY KEY AUTOINCREMENT, -- 主键标识 up_dis_id INTEGER NOT NULL, -- 外键,上报设备信息表 cloud_code TEXT(50) NOT NULL, -- 云平台编号 cloud_name TEXT(100) NOT NULL, -- 云平台名称 point_code INTEGER NOT NULL, -- 点位编号 point_name TEXT(100) NOT NULL, -- 点位名称 remark TEXT(1200), -- 备注信息 UNIQUE(cloud_code) -- 云平台编号唯一 ); -- 削峰填谷日期配置表 CREATE TABLE IF NOT EXISTS pv_date_config( id INTEGER PRIMARY KEY AUTOINCREMENT, -- 主键标识 pv_time_config_id INTEGER NOT NULL, -- 外键,关联区间时间配置表 start_date TEXT(20) NOT NULL, -- 开始日期 end_date TEXT(20) NOT NULL, -- 结束日期 remark TEXT(1200) -- 备注信息 ); -- 削峰填谷时间配置表 CREATE TABLE IF NOT EXISTS pv_time_config( id INTEGER PRIMARY KEY AUTOINCREMENT, -- 主键标识 name TEXT(100) NOT NULL, -- 配置名称 remark TEXT(1200), -- 备注信息 UNIQUE(name) -- 配置名称唯一 ); -- 削峰填谷业务时间执行表 CREATE TABLE IF NOT EXISTS pv_time_exe( id INTEGER PRIMARY KEY AUTOINCREMENT, -- 主键标识 time_section_config_id INTEGER NOT NULL, -- 外键,关联区间时间配置表 start_time INTEGER NOT NULL, -- 当天云平台编号开始秒数 end_time INTEGER NOT NULL, -- 当天云平台编号结束秒数 power REAL NOT NULL, --执行功率 remark TEXT(1200) -- 备注信息 ); -- 保护算法表 CREATE TABLE IF NOT EXISTS protect_algorithm( id INTEGER PRIMARY KEY AUTOINCREMENT, --主键标识 transformer_capacity REAL NOT NULL, --变压器总容量(KW) ol_warn_limit_value REAL NOT NULL, --过载预警限流值(KW) ol_shutdown_value REAL NOT NULL, --过载关机值(KW) max_power REAL NOT NULL, --充放电功率上限 demand_switch TINYINT, --防需量开关 target_demand REAL, --目标需量(KW) de_warn_limit_value REAL, --需量预警限流值(KW) de_shutdown_value REAL, --需量关机值(KW) backflow_switch TINYINT, --防逆流开关 bf_warn_limit_value REAL, --防逆流预警限流值(KW) bf_shutdown_value REAL, --防逆流关机值(KW) soc_forbid_chg TINYINT, --禁充SOC [55%-100%] soc_forbid_dischg TINYINT, --禁放SOC [0%-45%] remark TEXT(1200) --备注 ); -- 调试模式算法表 CREATE TABLE IF NOT EXISTS debug_algorithm( id INTEGER PRIMARY KEY AUTOINCREMENT, --主键标识 active_power INTEGER NOT NULL, --目标有功功率(KW) reactive_power TINYINT NOT NULL, --目标无功功率(KW) pcs_switch TINYINT, --充放电开关 1 开 0 关 protect_switch TINYINT, --保护算法开关 remark TEXT(1200) --备注 ); -- 功率分配表 CREATE TABLE IF NOT EXISTS allocate_power( id INTEGER PRIMARY KEY AUTOINCREMENT, --主键标识 pcs_num INTEGER NOT NULL, --pcs数量 chg_direction TINYINT NOT NULL, --充放电方向 1(正放 负充) -1(正充 负放) allocate_mode TINYINT, --下发功率模式:总功率(0),分相功率(1) remark TEXT(1200) --备注 ); -- 工作模式设置表 CREATE TABLE IF NOT EXISTS work_mode_set( id INTEGER PRIMARY KEY AUTOINCREMENT, --主键标识 work_mode TINYINT NOT NULL, --工作模式:0关机模式、1待机模式、2调试模式、3削峰填谷模式、4需求响应模式、5负载跟踪模式 remark TEXT(1200) --备注 ); -- DIDO逻辑设置表 CREATE TABLE IF NOT EXISTS di_do_set( id INTEGER PRIMARY KEY AUTOINCREMENT, --主键标识 seq TINYINT NOT NULL, --DIDO序列号 type TINYINT NOT NULL, --DIDO类型: 0DI,1DO cabinet_code TINYINT NOT NULL, --柜子编号 strategy_seq TINYINT NOT NULL, --策略序号 remark TEXT(1200) --备注 ); -- 温控算法表 CREATE TABLE IF NOT EXISTS temp_ctrl_algorithm( id INTEGER PRIMARY KEY AUTOINCREMENT, --主键标识 mod INTEGER NOT NULL, --温度控制模式, 参考:温控模式 work_cool_trig_temp REAL NOT NULL, --制冷触发温度(0-60℃) work_cool_hys REAL NOT NULL, --制冷回差(1-10℃) work_heat_trig_temp REAL NOT NULL, --制热触发温度(0-30℃) work_heat_hys REAL NOT NULL, --制热回差(1-10℃) standby_cool_trig_temp REAL, --制冷触发温度(0-60℃) standby_cool_hys REAL, --制冷回差(1-10℃) standby_heat_trig_temp REAL, --制热触发温度(0-30℃) standby_heat_hys REAL, --制热回差(1-10℃) standby_max_limit REAL, --开启自循环高温(0-60℃) standby_min_limit REAL, --开启自循环低温(0-30℃) standby_maxback_limit REAL, --自循环高温回温(1-10℃) standby_minback_limit REAL, --自循环低温回温(1-10℃) temp_cmd_normal INTEGER NOT NULL, --循环控制字 temp_cmd_heat INTEGER NOT NULL, --制热控制字 temp_cmd_cold INTEGER NOT NULL, --制冷控制字 temp_cmd_open INTEGER NOT NULL, --开控制字 temp_cmd_close INTEGER NOT NULL, --关控制字 remark TEXT(1200) --备注 ); -- 高级设置 CREATE TABLE IF NOT EXISTS advanced_setting ( id INTEGER PRIMARY KEY AUTOINCREMENT, --主键标识 key TEXT NOT NULL, --设置项 value TEXT NOT NULL --设置值 ); -- 升级记录 CREATE TABLE IF NOT EXISTS upgrade_record( id INTEGER PRIMARY KEY AUTOINCREMENT, -- 主键标识 version TEXT NOT NULL, -- 升级版本号 path TEXT, -- 升级包位置 err_msg TEXT, -- 升级错误信息 status TINYINT NOT NULL DEFAULT 1, -- 升级状态 (0:待升级, 1: 升级成功, 2:升级失败) start_time TIMESTAMP, -- 升级开始时间 end_time TIMESTAMP -- 升级结束时间 ); -- -------------------------------------------------------------初始化数据------------------------------------------------------------------ -- ---------------------------- -- Records of ems_device_config -- ---------------------------- -- INSERT INTO "ems_device_config" VALUES (1, 0, '串口1', '{"uartId":1,"data":3,"stop":0,"baud":0,"parity":0,"address":"/dev/ttyS9"}'); --INSERT INTO "ems_device_config" VALUES (2, 0, '串口2', '{"uartId":2,"data":3,"stop":0,"baud":0,"parity":0,"address":"/dev/ttyS5"}'); --INSERT INTO "ems_device_config" VALUES (3, 0, '串口3', '{"uartId":3,"data":3,"stop":0,"baud":5,"parity":0,"address":"/dev/ttyS3"}'); --INSERT INTO "ems_device_config" VALUES (4, 0, '串口4', '{"uartId":4,"data":3,"stop":0,"baud":5,"parity":0,"address":"/dev/ttyS4"}'); --INSERT INTO "ems_device_config" VALUES (5, 0, '串口5', '{"uartId":5,"data":3,"stop":0,"baud":5,"parity":0,"address":"/dev/ttyS7"}'); --INSERT INTO "ems_device_config" VALUES (6, 0, '串口6', '{"uartId":6,"data":3,"stop":0,"baud":5,"parity":0,"address":"/dev/ttyS8"}'); --INSERT INTO "ems_device_config" VALUES (7, 0, '串口7', '{"uartId":7,"data":3,"stop":0,"baud":5,"parity":0,"address":"/dev/ttyS0"}'); --INSERT INTO "ems_device_config" VALUES (8, 0, '串口8', '{"uartId":8,"data":3,"stop":0,"baud":5,"parity":0,"address":"/dev/ttyXRUSB1"}'); --INSERT INTO "ems_device_config" VALUES (9, 0, '串口9', '{"uartId":9,"data":3,"stop":0,"baud":5,"parity":0,"address":"/dev/ttyXRUSB2"}'); --INSERT INTO "ems_device_config" VALUES (10, 1, '网口1', '{"netId":0,"isDHCP":0, "ip":"192.168.0.123", "mask":"255.255.255.0", "gateway":"", "address":""}'); --INSERT INTO "ems_device_config" VALUES (11, 1, '网口2', '{"netId":1,"isDHCP":0, "ip":"172.18.39.44", "mask":"255.255.255.0", "gateway":"", "address":""}'); --INSERT INTO "ems_device_config" VALUES (12, 1, '网口3', '{"netId":2,"isDHCP":0, "ip":"192.168.2.123", "mask":"255.255.255.0", "gateway":"", "address":""}'); --INSERT INTO "ems_device_config" VALUES (13, 1, '网口4', '{"netId":3,"isDHCP":0, "ip":"192.168.3.123", "mask":"255.255.255.0", "gateway":"", "address":""}'); --INSERT INTO "ems_device_config" VALUES (14, 4, 'Wifi配置', '{"wifiName": "company", "wifiPassword": "12345678", "enable": 0}'); --INSERT INTO "ems_device_config" VALUES (15, 5, '4G配置', '{"cmdContent": "quectel-CM &", "enable": 0}'); --INSERT INTO "ems_device_config" VALUES (16, 6, '对时配置', '{"isNtp": 0, "port": 0, "address": "", "manualTime": "2024/10/12 18:20:20"}');