添加代码生成样本;
- 光伏逆变器 - 参数管理模块
This commit is contained in:
@@ -0,0 +1,107 @@
|
|||||||
|
/*
|
||||||
|
* =====================================================================================
|
||||||
|
*
|
||||||
|
* Filename: param_comm.c
|
||||||
|
*
|
||||||
|
* Description:
|
||||||
|
*
|
||||||
|
* Version: 1.0
|
||||||
|
* Created: 26/10/2024 17:20:06
|
||||||
|
* Revision: none
|
||||||
|
* Compiler: gcc
|
||||||
|
*
|
||||||
|
* Author: Autogenerated
|
||||||
|
* Organization: Topscomm
|
||||||
|
*
|
||||||
|
* =====================================================================================
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <stddef.h>
|
||||||
|
|
||||||
|
#include "plm_type_def.h"
|
||||||
|
#include "../param_export.h"
|
||||||
|
|
||||||
|
#include "./param_comm.h"
|
||||||
|
|
||||||
|
|
||||||
|
#if ENABLE_PARAM_IN_RAM
|
||||||
|
#if ENABLE_PARAM_PRESET
|
||||||
|
update_comm_param_t g_update_comm_param_info; /*预存参数数据缓冲区 */
|
||||||
|
#endif
|
||||||
|
|
||||||
|
comm_param_t g_comm_param_in_ram; /*参数ram缓冲区*/
|
||||||
|
uint16_t g_check_comm_param_crc[COMM_PARAM_NUM]; /*用于记录参数的校验crc结果*/
|
||||||
|
#endif
|
||||||
|
|
||||||
|
PARAM_CHANGE_FLAG_E g_comm_param_change_flag[COMM_PARAM_NUM]; /*用于记录参数的修改标记*/
|
||||||
|
|
||||||
|
const comm_param_t COMM_PARAM_DEFAULT_VALUE_TABLE =
|
||||||
|
{
|
||||||
|
.remote_ip = {219, 147, 26, 62}, //主站IP
|
||||||
|
.remote_port = 5223, //主站端口号
|
||||||
|
.interactive_cycle_4g = 10, //4G交互周期
|
||||||
|
.gprs_com_over_time = 600, //4G通信超时阈值
|
||||||
|
.can_enable = 0, //CAN使能
|
||||||
|
.can_dev_id = 0, //CAN并机ID
|
||||||
|
.can_parallel_num = 0, //CAN并机数量
|
||||||
|
.com_over_time = 180, //通信故障判定时间
|
||||||
|
.log_level = 0, //日志级别
|
||||||
|
.log_output = 0, //日志输出模式
|
||||||
|
.log_channel = 0, //日志监控通道
|
||||||
|
.log_file_size = 4096, //日志文件大小
|
||||||
|
.log_file_cnt = 16, //日志文件数量
|
||||||
|
.log_udp_port = 1234, //日志网络端口
|
||||||
|
.log_udp_eth_ip = {127, 0, 0, 1}, //日志网络地址
|
||||||
|
.plc_check_comm_period = 1440, //载波通信超时判断周期
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
const param_info_t COMM_PARAM_INDEX_TABLE[COMM_PARAM_NUM] =
|
||||||
|
{
|
||||||
|
{.idx=PARA_IDX_REMOTE_IP, .identity=0x00000001, .store_type=PARAM_ARRAY, .local_type=PARAM_ARRAY, .size=COMM_PARAM_REMOTE_IP_SIZE, .offset=offsetof(comm_param_t, remote_ip), .ratio=1, .min=0, .max=0, .check_func=ip_check, .update_func=remote_ip_callback,}, //主站IP
|
||||||
|
{.idx=PARA_IDX_REMOTE_PORT, .identity=0x00000002, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=COMM_PARAM_REMOTE_PORT_SIZE, .offset=offsetof(comm_param_t, remote_port), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=remote_port_callback,}, //主站端口号
|
||||||
|
{.idx=PARA_IDX_INTERACTIVE_CYCLE_4G, .identity=0x00000003, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=COMM_PARAM_INTERACTIVE_CYCLE_4G_SIZE, .offset=offsetof(comm_param_t, interactive_cycle_4g), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=interactive_cycle_4g_callback,}, //4G交互周期
|
||||||
|
{.idx=PARA_IDX_GPRS_COM_OVER_TIME, .identity=0x00000004, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=COMM_PARAM_GPRS_COM_OVER_TIME_SIZE, .offset=offsetof(comm_param_t, gprs_com_over_time), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=gprs_com_over_time_callback,}, //4G通信超时阈值
|
||||||
|
{.idx=PARA_IDX_CAN_ENABLE, .identity=0x00000005, .store_type=PARAM_UINT8, .local_type=PARAM_UINT8, .size=COMM_PARAM_CAN_ENABLE_SIZE, .offset=offsetof(comm_param_t, can_enable), .ratio=1, .min=0, .max=1, .check_func=NULL, .update_func=can_enable_callback,}, //CAN使能
|
||||||
|
{.idx=PARA_IDX_CAN_DEV_ID, .identity=0x00000006, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=COMM_PARAM_CAN_DEV_ID_SIZE, .offset=offsetof(comm_param_t, can_dev_id), .ratio=1, .min=0, .max=5, .check_func=NULL, .update_func=can_dev_id_callback,}, //CAN并机ID
|
||||||
|
{.idx=PARA_IDX_CAN_PARALLEL_NUM, .identity=0x00000007, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=COMM_PARAM_CAN_PARALLEL_NUM_SIZE, .offset=offsetof(comm_param_t, can_parallel_num), .ratio=1, .min=0, .max=5, .check_func=NULL, .update_func=can_parallel_num_callback,}, //CAN并机数量
|
||||||
|
{.idx=PARA_IDX_COM_OVER_TIME, .identity=0x00000008, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=COMM_PARAM_COM_OVER_TIME_SIZE, .offset=offsetof(comm_param_t, com_over_time), .ratio=1, .min=0, .max=3600, .check_func=NULL, .update_func=com_over_time_callback,}, //通信故障判定时间
|
||||||
|
{.idx=PARA_IDX_LOG_LEVEL, .identity=0x00000009, .store_type=PARAM_UINT8, .local_type=PARAM_UINT8, .size=COMM_PARAM_LOG_LEVEL_SIZE, .offset=offsetof(comm_param_t, log_level), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=log_level_callback,}, //日志级别
|
||||||
|
{.idx=PARA_IDX_LOG_OUTPUT, .identity=0x0000000A, .store_type=PARAM_UINT8, .local_type=PARAM_UINT8, .size=COMM_PARAM_LOG_OUTPUT_SIZE, .offset=offsetof(comm_param_t, log_output), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=log_output_callback,}, //日志输出模式
|
||||||
|
{.idx=PARA_IDX_LOG_CHANNEL, .identity=0x0000000B, .store_type=PARAM_UINT8, .local_type=PARAM_UINT8, .size=COMM_PARAM_LOG_CHANNEL_SIZE, .offset=offsetof(comm_param_t, log_channel), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=log_channel_callback,}, //日志监控通道
|
||||||
|
{.idx=PARA_IDX_LOG_FILE_SIZE, .identity=0x0000000C, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=COMM_PARAM_LOG_FILE_SIZE_SIZE, .offset=offsetof(comm_param_t, log_file_size), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=log_file_size_callback,}, //日志文件大小
|
||||||
|
{.idx=PARA_IDX_LOG_FILE_CNT, .identity=0x0000000D, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=COMM_PARAM_LOG_FILE_CNT_SIZE, .offset=offsetof(comm_param_t, log_file_cnt), .ratio=1, .min=0, .max=32, .check_func=NULL, .update_func=log_file_cnt_callback,}, //日志文件数量
|
||||||
|
{.idx=PARA_IDX_LOG_UDP_PORT, .identity=0x0000000E, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=COMM_PARAM_LOG_UDP_PORT_SIZE, .offset=offsetof(comm_param_t, log_udp_port), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=log_udp_port_callback,}, //日志网络端口
|
||||||
|
{.idx=PARA_IDX_LOG_UDP_ETH_IP, .identity=0x0000000F, .store_type=PARAM_ARRAY, .local_type=PARAM_ARRAY, .size=COMM_PARAM_LOG_UDP_ETH_IP_SIZE, .offset=offsetof(comm_param_t, log_udp_eth_ip), .ratio=1, .min=0, .max=0, .check_func=ip_check, .update_func=log_udp_eth_ip_callback,}, //日志网络地址
|
||||||
|
{.idx=PARA_IDX_PLC_CHECK_COMM_PERIOD, .identity=0x00000010, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=COMM_PARAM_PLC_CHECK_COMM_PERIOD_SIZE, .offset=offsetof(comm_param_t, plc_check_comm_period), .ratio=1, .min=1, .max=65535, .check_func=NULL, .update_func=plc_check_comm_period_callback,}, //载波通信超时判断周期
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
param_info_table_t COMM_PARAM_INFO =
|
||||||
|
{
|
||||||
|
#if ENABLE_PARAM_MUTEX
|
||||||
|
.ptr_mutex = &g_param_resouce.param_mutex,
|
||||||
|
#endif
|
||||||
|
.ptr_category_name = COMM_REGION_NAME,
|
||||||
|
.ptr_default_value_table = (void*)&COMM_PARAM_DEFAULT_VALUE_TABLE, //默认参数值
|
||||||
|
.ptr_index_table = (void*)COMM_PARAM_INDEX_TABLE, //参数索引表
|
||||||
|
.param_num = COMM_PARAM_NUM, //参数个数
|
||||||
|
.param_data_size = COMM_PARAM_STORAGE_SIZE, //数据长度
|
||||||
|
.param_base_addr = COMM_PARAM_STORE_ADDR, //参数存储页地址
|
||||||
|
#if ENABLE_PARAM_IN_RAM
|
||||||
|
#if ENABLE_PARAM_PRESET
|
||||||
|
.ptr_preset_dataset = (void*)&g_update_comm_param_info.preset_table,//预设参数表
|
||||||
|
#endif
|
||||||
|
.ptr_param_in_ram = (void*)&g_comm_param_in_ram, //参数ram缓冲区
|
||||||
|
.ptr_crc_in_ram = g_check_comm_param_crc, //参数crc校验值
|
||||||
|
#endif
|
||||||
|
.ptr_change_flag = g_comm_param_change_flag, //参数变更标记
|
||||||
|
.backup_offset = 1024, //备份之间的偏移
|
||||||
|
.idx_min = PARA_IDX_REMOTE_IP, //参数索引最小值
|
||||||
|
.idx_max = PARA_IDX_PLC_CHECK_COMM_PERIOD, //参数索引最大值
|
||||||
|
.ptr_exchange_unit = &g_param_resouce.ptr_param_unit_buff, //参数写入缓冲区
|
||||||
|
.exchange_size = 1024, //按页写入的缓冲区的大小
|
||||||
|
};
|
||||||
|
|
||||||
@@ -0,0 +1,63 @@
|
|||||||
|
/*
|
||||||
|
* =====================================================================================
|
||||||
|
*
|
||||||
|
* Filename: param_comm.h
|
||||||
|
*
|
||||||
|
* Description:
|
||||||
|
*
|
||||||
|
* Version: 1.0
|
||||||
|
* Created: 26/10/2024 17:20:06
|
||||||
|
* Revision: none
|
||||||
|
* Compiler: gcc
|
||||||
|
*
|
||||||
|
* Author: Autogenerated
|
||||||
|
* Organization: Topscomm
|
||||||
|
*
|
||||||
|
* =====================================================================================
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef __PARAM_COMM_H__
|
||||||
|
#define __PARAM_COMM_H__
|
||||||
|
|
||||||
|
#include <stdint.h>
|
||||||
|
|
||||||
|
#include "./param_config.h"
|
||||||
|
#include "../param_functional/param_block.h"
|
||||||
|
#include "./param_comm_defination.h"
|
||||||
|
|
||||||
|
#define COMM_PARAM_STORE_ADDR (4096)
|
||||||
|
|
||||||
|
|
||||||
|
#define COMM_PARAM_REMOTE_IP_OFFSET 0
|
||||||
|
#define COMM_PARAM_REMOTE_PORT_OFFSET (COMM_PARAM_REMOTE_IP_OFFSET + COMM_PARAM_REMOTE_IP_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define COMM_PARAM_INTERACTIVE_CYCLE_4G_OFFSET (COMM_PARAM_REMOTE_PORT_OFFSET + COMM_PARAM_REMOTE_PORT_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define COMM_PARAM_GPRS_COM_OVER_TIME_OFFSET (COMM_PARAM_INTERACTIVE_CYCLE_4G_OFFSET + COMM_PARAM_INTERACTIVE_CYCLE_4G_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define COMM_PARAM_CAN_ENABLE_OFFSET (COMM_PARAM_GPRS_COM_OVER_TIME_OFFSET + COMM_PARAM_GPRS_COM_OVER_TIME_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define COMM_PARAM_CAN_DEV_ID_OFFSET (COMM_PARAM_CAN_ENABLE_OFFSET + COMM_PARAM_CAN_ENABLE_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define COMM_PARAM_CAN_PARALLEL_NUM_OFFSET (COMM_PARAM_CAN_DEV_ID_OFFSET + COMM_PARAM_CAN_DEV_ID_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define COMM_PARAM_COM_OVER_TIME_OFFSET (COMM_PARAM_CAN_PARALLEL_NUM_OFFSET + COMM_PARAM_CAN_PARALLEL_NUM_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define COMM_PARAM_LOG_LEVEL_OFFSET (COMM_PARAM_COM_OVER_TIME_OFFSET + COMM_PARAM_COM_OVER_TIME_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define COMM_PARAM_LOG_OUTPUT_OFFSET (COMM_PARAM_LOG_LEVEL_OFFSET + COMM_PARAM_LOG_LEVEL_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define COMM_PARAM_LOG_CHANNEL_OFFSET (COMM_PARAM_LOG_OUTPUT_OFFSET + COMM_PARAM_LOG_OUTPUT_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define COMM_PARAM_LOG_FILE_SIZE_OFFSET (COMM_PARAM_LOG_CHANNEL_OFFSET + COMM_PARAM_LOG_CHANNEL_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define COMM_PARAM_LOG_FILE_CNT_OFFSET (COMM_PARAM_LOG_FILE_SIZE_OFFSET + COMM_PARAM_LOG_FILE_SIZE_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define COMM_PARAM_LOG_UDP_PORT_OFFSET (COMM_PARAM_LOG_FILE_CNT_OFFSET + COMM_PARAM_LOG_FILE_CNT_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define COMM_PARAM_LOG_UDP_ETH_IP_OFFSET (COMM_PARAM_LOG_UDP_PORT_OFFSET + COMM_PARAM_LOG_UDP_PORT_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define COMM_PARAM_PLC_CHECK_COMM_PERIOD_OFFSET (COMM_PARAM_LOG_UDP_ETH_IP_OFFSET + COMM_PARAM_LOG_UDP_ETH_IP_SIZE + PARAM_INFO_SIZE)
|
||||||
|
|
||||||
|
#define COMM_PARAM_STORAGE_SIZE (COMM_PARAM_PLC_CHECK_COMM_PERIOD_OFFSET + COMM_PARAM_PLC_CHECK_COMM_PERIOD_SIZE + PARAM_INFO_SIZE)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#if ENABLE_PARAM_IN_RAM
|
||||||
|
#if ENABLE_PARAM_PRESET
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
comm_param_t preset_table;
|
||||||
|
} update_comm_param_t;
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
extern param_info_table_t COMM_PARAM_INFO;
|
||||||
|
|
||||||
|
#endif /* ----- #ifndef __PARAM_COMM_H__ ----- */
|
||||||
@@ -0,0 +1,68 @@
|
|||||||
|
/*
|
||||||
|
* =====================================================================================
|
||||||
|
*
|
||||||
|
* Filename: param_comm_defination.h
|
||||||
|
*
|
||||||
|
* Description:
|
||||||
|
*
|
||||||
|
* Version: 1.0
|
||||||
|
* Created: 26/10/2024 17:20:06
|
||||||
|
* Revision: none
|
||||||
|
* Compiler: gcc
|
||||||
|
*
|
||||||
|
* Author: Autogenerated
|
||||||
|
* Organization: Topscomm
|
||||||
|
*
|
||||||
|
* =====================================================================================
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef __PARAM_COMM_DEFINATION_H__
|
||||||
|
#define __PARAM_COMM_DEFINATION_H__
|
||||||
|
|
||||||
|
#include <stdint.h>
|
||||||
|
#include <stddef.h>
|
||||||
|
|
||||||
|
|
||||||
|
#define COMM_PARAM_NUM (16)
|
||||||
|
|
||||||
|
|
||||||
|
#define COMM_PARAM_REMOTE_IP_SIZE (4)
|
||||||
|
#define COMM_PARAM_REMOTE_PORT_SIZE (sizeof(uint16_t))
|
||||||
|
#define COMM_PARAM_INTERACTIVE_CYCLE_4G_SIZE (sizeof(uint16_t))
|
||||||
|
#define COMM_PARAM_GPRS_COM_OVER_TIME_SIZE (sizeof(uint16_t))
|
||||||
|
#define COMM_PARAM_CAN_ENABLE_SIZE (sizeof(uint8_t))
|
||||||
|
#define COMM_PARAM_CAN_DEV_ID_SIZE (sizeof(uint16_t))
|
||||||
|
#define COMM_PARAM_CAN_PARALLEL_NUM_SIZE (sizeof(uint16_t))
|
||||||
|
#define COMM_PARAM_COM_OVER_TIME_SIZE (sizeof(uint16_t))
|
||||||
|
#define COMM_PARAM_LOG_LEVEL_SIZE (sizeof(uint8_t))
|
||||||
|
#define COMM_PARAM_LOG_OUTPUT_SIZE (sizeof(uint8_t))
|
||||||
|
#define COMM_PARAM_LOG_CHANNEL_SIZE (sizeof(uint8_t))
|
||||||
|
#define COMM_PARAM_LOG_FILE_SIZE_SIZE (sizeof(uint16_t))
|
||||||
|
#define COMM_PARAM_LOG_FILE_CNT_SIZE (sizeof(uint16_t))
|
||||||
|
#define COMM_PARAM_LOG_UDP_PORT_SIZE (sizeof(uint16_t))
|
||||||
|
#define COMM_PARAM_LOG_UDP_ETH_IP_SIZE (4)
|
||||||
|
#define COMM_PARAM_PLC_CHECK_COMM_PERIOD_SIZE (sizeof(uint16_t))
|
||||||
|
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
uint8_t remote_ip[COMM_PARAM_REMOTE_IP_SIZE]; /* 主站IP */
|
||||||
|
uint16_t remote_port; /* 主站端口号 */
|
||||||
|
uint16_t interactive_cycle_4g; /* 4G交互周期 */
|
||||||
|
uint16_t gprs_com_over_time; /* 4G通信超时阈值 */
|
||||||
|
uint8_t can_enable; /* CAN使能 */
|
||||||
|
uint16_t can_dev_id; /* CAN并机ID */
|
||||||
|
uint16_t can_parallel_num; /* CAN并机数量 */
|
||||||
|
uint16_t com_over_time; /* 通信故障判定时间 */
|
||||||
|
uint8_t log_level; /* 日志级别 */
|
||||||
|
uint8_t log_output; /* 日志输出模式 */
|
||||||
|
uint8_t log_channel; /* 日志监控通道 */
|
||||||
|
uint16_t log_file_size; /* 日志文件大小 */
|
||||||
|
uint16_t log_file_cnt; /* 日志文件数量 */
|
||||||
|
uint16_t log_udp_port; /* 日志网络端口 */
|
||||||
|
uint8_t log_udp_eth_ip[COMM_PARAM_LOG_UDP_ETH_IP_SIZE]; /* 日志网络地址 */
|
||||||
|
uint16_t plc_check_comm_period; /* 载波通信超时判断周期 */
|
||||||
|
} comm_param_t;
|
||||||
|
|
||||||
|
|
||||||
|
#endif /* ----- #ifndef __PARAM_COMM_DEFINATION_H__ ----- */
|
||||||
@@ -0,0 +1,164 @@
|
|||||||
|
/*
|
||||||
|
* =====================================================================================
|
||||||
|
*
|
||||||
|
* Filename: param_defination.h
|
||||||
|
*
|
||||||
|
* Description:
|
||||||
|
*
|
||||||
|
* Version: 1.0
|
||||||
|
* Created: 26/10/2024 17:20:06
|
||||||
|
* Revision: none
|
||||||
|
* Compiler: gcc
|
||||||
|
*
|
||||||
|
* Author: Autogenerated
|
||||||
|
* Organization: Topscomm
|
||||||
|
*
|
||||||
|
* =====================================================================================
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef __PARAM_DEFINATION_H__
|
||||||
|
#define __PARAM_DEFINATION_H__
|
||||||
|
|
||||||
|
#include <stdint.h>
|
||||||
|
|
||||||
|
/* ##### LOCAL INCLUDES #################################################### */
|
||||||
|
#include "param_defination/param_stable_defination.h" /* STABLE参数个数及参数数据域大小 */
|
||||||
|
#include "param_defination/param_comm_defination.h" /* COMM参数个数及参数数据域大小 */
|
||||||
|
#include "param_defination/param_produce_defination.h" /* PRODUCE参数个数及参数数据域大小 */
|
||||||
|
|
||||||
|
/* ##### EXPORTED MACROS ######################################################## */
|
||||||
|
#define STABLE_REGION_NAME "param_stable" /* STABLE存储区域名 */
|
||||||
|
#define COMM_REGION_NAME "param_comm" /* COMM存储区域名 */
|
||||||
|
#define PRODUCE_REGION_NAME "param_produce" /* PRODUCE存储区域名 */
|
||||||
|
|
||||||
|
|
||||||
|
/* ##### EXPORTED DATA TYPES #################################################### */
|
||||||
|
|
||||||
|
typedef enum
|
||||||
|
{
|
||||||
|
STABLE_PARAM, /*STABLE*/
|
||||||
|
COMM_PARAM, /*COMM*/
|
||||||
|
PRODUCE_PARAM, /*PRODUCE*/
|
||||||
|
|
||||||
|
PARAM_CATEGORY_MAX, /*参数表个数*/
|
||||||
|
}PARAM_CATEGORY_E; /* ---------- end of enum PARAM_CATEGORY_E ---------- */
|
||||||
|
|
||||||
|
|
||||||
|
typedef enum
|
||||||
|
{
|
||||||
|
|
||||||
|
/* STABLE */
|
||||||
|
PARA_IDX_WORK_MODE_SVGC, //工作模式
|
||||||
|
PARA_IDX_WORK_MODE_SVG, //补偿模式选择
|
||||||
|
PARA_IDX_POWERON_MODE, //开机模式
|
||||||
|
PARA_IDX_POWER_ON_DELAY, //自动开机延时
|
||||||
|
PARA_IDX_POWER_ON_TIME_EN, //定时开关机使能
|
||||||
|
PARA_IDX_POWER_ON_TIME, //定时开机时间
|
||||||
|
PARA_IDX_POWER_OFF_TIME, //定时关机时间
|
||||||
|
PARA_IDX_LOW_POWER_JUDGE_DELAY, //低功耗判断延时
|
||||||
|
PARA_IDX_LOW_POWER_JUDGE_DELAY_QUIT, //退出低功耗判断延时
|
||||||
|
PARA_IDX_AUTO_RESET_DELAY, //自动复位延时
|
||||||
|
PARA_IDX_DSP_WD_ENABLE, //DSP看门狗复位使能
|
||||||
|
PARA_IDX_FREEZE_SAVE_PERIOD, //分钟冻结周期
|
||||||
|
PARA_IDX_RECORD_FRAME_EN, //报文记录使能
|
||||||
|
PARA_IDX_RECORD_FRAME_DIR, //报文记录方向
|
||||||
|
PARA_IDX_RECORD_FRAME_PORT, //报文记录端口
|
||||||
|
PARA_IDX_RECORD_ERR_LOG_EN, //错误打印记录使能
|
||||||
|
PARA_IDX_IMPD_DETE_EN, //绝缘阻值检测使能
|
||||||
|
PARA_IDX_FAN_CTR_MODE, //风扇控制模式
|
||||||
|
PARA_IDX_LEAK_CURRENT_MODE, //漏电流模式
|
||||||
|
PARA_IDX_SYS_DISCHARGE_START_PWR, //放电起始功率
|
||||||
|
PARA_IDX_ANTI_PID_EN, //抗PID使能
|
||||||
|
PARA_IDX_ANTI_PID_TIME, //抗PID启动时间
|
||||||
|
PARA_IDX_AUTO_RESTORE_DELAY, //自动清除故障模式
|
||||||
|
PARA_IDX_PLC_ENABLE, //交流载波使能
|
||||||
|
PARA_IDX_CONTROL_ENABLE_SHANXI, //逆变器控制使能
|
||||||
|
PARA_IDX_FAN_AUTO_CTRL_FACTOR, //风扇自动控制因素
|
||||||
|
PARA_IDX_MANUAL_FAN_PWM, //手动风扇占空比
|
||||||
|
PARA_IDX_FAN_PWM_START, //风扇启动占空比
|
||||||
|
PARA_IDX_FAN_PWM_MAX, //风扇最大占空比
|
||||||
|
PARA_IDX_FAN_START_TEMP, //风扇启动温度
|
||||||
|
PARA_IDX_FAN_MAX_TEMP, //风扇满速温度
|
||||||
|
PARA_IDX_FAN_START_POWER, //风扇启动功率(额定值%)
|
||||||
|
PARA_IDX_FAN_MAX_POWER, //风扇满速功率(额定值%)
|
||||||
|
PARA_IDX_RESERVE_PARAM9_2, //幅值参考预留2
|
||||||
|
PARA_IDX_RESERVE_PARAM9_3, //幅值参考预留3
|
||||||
|
PARA_IDX_RESERVE_PARAM9_4, //幅值参考预留4
|
||||||
|
PARA_IDX_RESERVE_PARAM9_5, //幅值参考预留5
|
||||||
|
PARA_IDX_RESERVE_PARAM9_6, //幅值参考预留6
|
||||||
|
PARA_IDX_RESERVE_PARAM9_7, //幅值参考预留7
|
||||||
|
PARA_IDX_IMPD_FAULT_THRD, //绝缘阻值故障阈值
|
||||||
|
PARA_IDX_IMPD_DETECT_CLOSE_TIME, //绝缘检测闭合时间
|
||||||
|
PARA_IDX_IMPD_DETECT_OPEN_TIME, //绝缘检测断开时间
|
||||||
|
PARA_IDX_FAN_SPEED_FAULT_THRD, //风扇故障转速阈值
|
||||||
|
PARA_IDX_LEAK_CUR_FAULT_THRD, //漏电流故障阈值
|
||||||
|
PARA_IDX_RESERVE_PARAM1_1, //阈值参考预留1
|
||||||
|
PARA_IDX_OVER_TEMP_TIME, //过温判定时间
|
||||||
|
PARA_IDX_SELF_CHECK_TIME, //自检超时判定时间
|
||||||
|
PARA_IDX_INSU_BUS_VOLT_THD, //绝缘检测母线电压阈值
|
||||||
|
PARA_IDX_INSU_RLY_VOLT_THD, //绝缘检测继电器电压阈值
|
||||||
|
PARA_IDX_LEAK_CURRENT_L3_MUTATION_THRESHOLD_MA, //漏电流3级突变触发阈值
|
||||||
|
PARA_IDX_LEAK_CURRENT_SLOW_THRESHOLD_MA, //漏电流缓变动作阈值
|
||||||
|
PARA_IDX_LEAK_CURRENT_SLOW_TIME_MS, //漏电流缓变时间阈值
|
||||||
|
PARA_IDX_LEAK_CURRENT_L1_MUTATION_THRESHOLD_MA, //漏电流1级突变触发阈值
|
||||||
|
PARA_IDX_LEAK_CURRENT_L2_MUTATION_THRESHOLD_MA, //漏电流2级突变触发阈值
|
||||||
|
PARA_IDX_LONGI_DEVICE_SN, //设备ID(用于隆基主站上报)
|
||||||
|
PARA_IDX_LONGI_PRODUCT_ID, //产品ID(用于隆基主站上报)
|
||||||
|
PARA_IDX_SHANXI_CAPACITY, //光伏板装机容量(陕西)
|
||||||
|
PARA_IDX_SHANXI_LONGITUDE, //设备经度(陕西)
|
||||||
|
PARA_IDX_SHANXI_LATITUDE, //设备纬度(陕西)
|
||||||
|
|
||||||
|
/* COMM */
|
||||||
|
PARA_IDX_REMOTE_IP, //主站IP
|
||||||
|
PARA_IDX_REMOTE_PORT, //主站端口号
|
||||||
|
PARA_IDX_INTERACTIVE_CYCLE_4G, //4G交互周期
|
||||||
|
PARA_IDX_GPRS_COM_OVER_TIME, //4G通信超时阈值
|
||||||
|
PARA_IDX_CAN_ENABLE, //CAN使能
|
||||||
|
PARA_IDX_CAN_DEV_ID, //CAN并机ID
|
||||||
|
PARA_IDX_CAN_PARALLEL_NUM, //CAN并机数量
|
||||||
|
PARA_IDX_COM_OVER_TIME, //通信故障判定时间
|
||||||
|
PARA_IDX_LOG_LEVEL, //日志级别
|
||||||
|
PARA_IDX_LOG_OUTPUT, //日志输出模式
|
||||||
|
PARA_IDX_LOG_CHANNEL, //日志监控通道
|
||||||
|
PARA_IDX_LOG_FILE_SIZE, //日志文件大小
|
||||||
|
PARA_IDX_LOG_FILE_CNT, //日志文件数量
|
||||||
|
PARA_IDX_LOG_UDP_PORT, //日志网络端口
|
||||||
|
PARA_IDX_LOG_UDP_ETH_IP, //日志网络地址
|
||||||
|
PARA_IDX_PLC_CHECK_COMM_PERIOD, //载波通信超时判断周期
|
||||||
|
|
||||||
|
/* PRODUCE */
|
||||||
|
PARA_IDX_MES_CODE, //设备MES码
|
||||||
|
PARA_IDX_PRODUCT_ID, //12位出厂编号
|
||||||
|
PARA_IDX_HB_TEST_RESULT, //板级生产检测结果
|
||||||
|
PARA_IDX_SYS_TEST_RESULT, //工厂整机测试结果
|
||||||
|
PARA_IDX_HW_CMPNT_NUM, //硬件组件号
|
||||||
|
PARA_IDX_REGION_CODE, //行政区域码
|
||||||
|
PARA_IDX_TERM_ADDR, //终端地址
|
||||||
|
PARA_IDX_SCI_BAUDRATE, //对外串口波特率
|
||||||
|
PARA_IDX_AC_PROTO_TYPE, //载波协议类型
|
||||||
|
PARA_IDX_PROT645_TYPE, //645协议版本
|
||||||
|
PARA_IDX_LEVEL_0_CIPHER, //0级密码
|
||||||
|
PARA_IDX_LEVEL_1_CIPHER, //1级密码
|
||||||
|
PARA_IDX_LEVEL_2_CIPHER, //2级密码
|
||||||
|
PARA_IDX_ACCOUNT_NUM, //户号
|
||||||
|
PARA_IDX_VIRTUAL_PLANT_NUM, //虚拟电厂编号
|
||||||
|
PARA_IDX_LEAK_CURRENT_FACTOR, //漏电流校准系数
|
||||||
|
PARA_IDX_LEAK_CURRENT_DC_ESTIMATE, //漏电流直流偏置AD值
|
||||||
|
PARA_IDX_STATE_GRID_ADDR, //国网地址
|
||||||
|
PARA_IDX_METER_CODE_NUM, //表号(ESAM用)
|
||||||
|
PARA_IDX_LEAK_CURRENT_INTER_REFER_MA, //漏电流内部参考值
|
||||||
|
PARA_IDX_INVERTER_MODEL, //逆变器型号
|
||||||
|
PARA_IDX_INVERTER_MANUFACTURER, //逆变器制造厂商
|
||||||
|
PARA_IDX_SHANXI_HEIGHT, //设备海拔高度(陕西)
|
||||||
|
PARA_IDX_RATE_ACTIVE_POWER, //额定有功功率
|
||||||
|
PARA_IDX_RATE_REACTIVE_POWER, //额定无功功率
|
||||||
|
PARA_IDX_MINUTE_FREEZE_RELATED_COLUMNS, //分钟冻结关联列
|
||||||
|
|
||||||
|
PARA_IDX_MAX, /*参数索引总个数*/
|
||||||
|
}PARAM_IDX_E; /* ---------- end of enum PARAM_IDX_E ---------- */
|
||||||
|
|
||||||
|
|
||||||
|
#endif /* ----- #ifndef __PARAM_DEFINATION_H__ ----- */
|
||||||
|
|
||||||
|
|
||||||
@@ -0,0 +1,127 @@
|
|||||||
|
/*
|
||||||
|
* =====================================================================================
|
||||||
|
*
|
||||||
|
* Filename: param_produce.c
|
||||||
|
*
|
||||||
|
* Description:
|
||||||
|
*
|
||||||
|
* Version: 1.0
|
||||||
|
* Created: 26/10/2024 17:20:06
|
||||||
|
* Revision: none
|
||||||
|
* Compiler: gcc
|
||||||
|
*
|
||||||
|
* Author: Autogenerated
|
||||||
|
* Organization: Topscomm
|
||||||
|
*
|
||||||
|
* =====================================================================================
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <stddef.h>
|
||||||
|
|
||||||
|
#include "plm_type_def.h"
|
||||||
|
#include "../param_export.h"
|
||||||
|
|
||||||
|
#include "./param_produce.h"
|
||||||
|
|
||||||
|
|
||||||
|
#if ENABLE_PARAM_IN_RAM
|
||||||
|
#if ENABLE_PARAM_PRESET
|
||||||
|
update_produce_param_t g_update_produce_param_info; /*预存参数数据缓冲区 */
|
||||||
|
#endif
|
||||||
|
|
||||||
|
produce_param_t g_produce_param_in_ram; /*参数ram缓冲区*/
|
||||||
|
uint16_t g_check_produce_param_crc[PRODUCE_PARAM_NUM]; /*用于记录参数的校验crc结果*/
|
||||||
|
#endif
|
||||||
|
|
||||||
|
PARAM_CHANGE_FLAG_E g_produce_param_change_flag[PRODUCE_PARAM_NUM]; /*用于记录参数的修改标记*/
|
||||||
|
|
||||||
|
const produce_param_t PRODUCE_PARAM_DEFAULT_VALUE_TABLE =
|
||||||
|
{
|
||||||
|
.mes_code = {0}, //设备MES码
|
||||||
|
.product_id = {0, 0, 0, 0, 1, 0}, //12位出厂编号
|
||||||
|
.hb_test_result = 0, //板级生产检测结果
|
||||||
|
.sys_test_result = 0, //工厂整机测试结果
|
||||||
|
.hw_cmpnt_num = {0}, //硬件组件号
|
||||||
|
.region_code = {0}, //行政区域码
|
||||||
|
.term_addr = {0}, //终端地址
|
||||||
|
.sci_baudrate = 0, //对外串口波特率
|
||||||
|
.ac_proto_type = 0, //载波协议类型
|
||||||
|
.prot645_type = 0, //645协议版本
|
||||||
|
.level_0_cipher = {0}, //0级密码
|
||||||
|
.level_1_cipher = {0}, //1级密码
|
||||||
|
.level_2_cipher = {0}, //2级密码
|
||||||
|
.account_num = {0}, //户号
|
||||||
|
.virtual_plant_num = {0}, //虚拟电厂编号
|
||||||
|
.leak_current_factor = 2028, //漏电流校准系数
|
||||||
|
.leak_current_dc_estimate = 6250, //漏电流直流偏置AD值
|
||||||
|
.state_grid_addr = {0}, //国网地址
|
||||||
|
.meter_code_num = {0}, //表号(ESAM用)
|
||||||
|
.leak_current_inter_refer_mA = 0xFFFF, //漏电流内部参考值
|
||||||
|
.inverter_model = {0}, //逆变器型号
|
||||||
|
.inverter_manufacturer = {0}, //逆变器制造厂商
|
||||||
|
.shanxi_height = {0}, //设备海拔高度(陕西)
|
||||||
|
.rate_active_power = 0, //额定有功功率
|
||||||
|
.rate_reactive_power = 0, //额定无功功率
|
||||||
|
.minute_freeze_related_columns = {0}, //分钟冻结关联列
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
const param_info_t PRODUCE_PARAM_INDEX_TABLE[PRODUCE_PARAM_NUM] =
|
||||||
|
{
|
||||||
|
{.idx=PARA_IDX_MES_CODE, .identity=0x00000001, .store_type=PARAM_ARRAY, .local_type=PARAM_ARRAY, .size=PRODUCE_PARAM_MES_CODE_SIZE, .offset=offsetof(produce_param_t, mes_code), .ratio=1, .min=0, .max=0, .check_func=bcd_check, .update_func=mes_code_callback,}, //设备MES码
|
||||||
|
{.idx=PARA_IDX_PRODUCT_ID, .identity=0x00000002, .store_type=PARAM_ARRAY, .local_type=PARAM_ARRAY, .size=PRODUCE_PARAM_PRODUCT_ID_SIZE, .offset=offsetof(produce_param_t, product_id), .ratio=1, .min=0, .max=0, .check_func=bcd_check, .update_func=product_id_callback,}, //12位出厂编号
|
||||||
|
{.idx=PARA_IDX_HB_TEST_RESULT, .identity=0x00000003, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=PRODUCE_PARAM_HB_TEST_RESULT_SIZE, .offset=offsetof(produce_param_t, hb_test_result), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=hb_test_result_callback,}, //板级生产检测结果
|
||||||
|
{.idx=PARA_IDX_SYS_TEST_RESULT, .identity=0x00000004, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=PRODUCE_PARAM_SYS_TEST_RESULT_SIZE, .offset=offsetof(produce_param_t, sys_test_result), .ratio=1, .min=0, .max=1, .check_func=NULL, .update_func=sys_test_result_callback,}, //工厂整机测试结果
|
||||||
|
{.idx=PARA_IDX_HW_CMPNT_NUM, .identity=0x00000005, .store_type=PARAM_ARRAY, .local_type=PARAM_ARRAY, .size=PRODUCE_PARAM_HW_CMPNT_NUM_SIZE, .offset=offsetof(produce_param_t, hw_cmpnt_num), .ratio=1, .min=0, .max=0, .check_func=bcd_check, .update_func=hw_cmpnt_num_callback,}, //硬件组件号
|
||||||
|
{.idx=PARA_IDX_REGION_CODE, .identity=0x00000006, .store_type=PARAM_ARRAY, .local_type=PARAM_ARRAY, .size=PRODUCE_PARAM_REGION_CODE_SIZE, .offset=offsetof(produce_param_t, region_code), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=region_code_callback,}, //行政区域码
|
||||||
|
{.idx=PARA_IDX_TERM_ADDR, .identity=0x00000007, .store_type=PARAM_ARRAY, .local_type=PARAM_ARRAY, .size=PRODUCE_PARAM_TERM_ADDR_SIZE, .offset=offsetof(produce_param_t, term_addr), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=term_addr_callback,}, //终端地址
|
||||||
|
{.idx=PARA_IDX_SCI_BAUDRATE, .identity=0x00000008, .store_type=PARAM_UINT8, .local_type=PARAM_UINT8, .size=PRODUCE_PARAM_SCI_BAUDRATE_SIZE, .offset=offsetof(produce_param_t, sci_baudrate), .ratio=1, .min=0, .max=3, .check_func=NULL, .update_func=sci_baudrate_callback,}, //对外串口波特率
|
||||||
|
{.idx=PARA_IDX_AC_PROTO_TYPE, .identity=0x00000009, .store_type=PARAM_UINT8, .local_type=PARAM_UINT8, .size=PRODUCE_PARAM_AC_PROTO_TYPE_SIZE, .offset=offsetof(produce_param_t, ac_proto_type), .ratio=1, .min=0, .max=1, .check_func=NULL, .update_func=ac_proto_type_callback,}, //载波协议类型
|
||||||
|
{.idx=PARA_IDX_PROT645_TYPE, .identity=0x0000000A, .store_type=PARAM_UINT8, .local_type=PARAM_UINT8, .size=PRODUCE_PARAM_PROT645_TYPE_SIZE, .offset=offsetof(produce_param_t, prot645_type), .ratio=1, .min=0, .max=1, .check_func=NULL, .update_func=prot645_type_callback,}, //645协议版本
|
||||||
|
{.idx=PARA_IDX_LEVEL_0_CIPHER, .identity=0x0000000B, .store_type=PARAM_ARRAY, .local_type=PARAM_ARRAY, .size=PRODUCE_PARAM_LEVEL_0_CIPHER_SIZE, .offset=offsetof(produce_param_t, level_0_cipher), .ratio=1, .min=0, .max=0, .check_func=bcd_check, .update_func=level_0_cipher_callback,}, //0级密码
|
||||||
|
{.idx=PARA_IDX_LEVEL_1_CIPHER, .identity=0x0000000C, .store_type=PARAM_ARRAY, .local_type=PARAM_ARRAY, .size=PRODUCE_PARAM_LEVEL_1_CIPHER_SIZE, .offset=offsetof(produce_param_t, level_1_cipher), .ratio=1, .min=0, .max=0, .check_func=bcd_check, .update_func=level_1_cipher_callback,}, //1级密码
|
||||||
|
{.idx=PARA_IDX_LEVEL_2_CIPHER, .identity=0x0000000D, .store_type=PARAM_ARRAY, .local_type=PARAM_ARRAY, .size=PRODUCE_PARAM_LEVEL_2_CIPHER_SIZE, .offset=offsetof(produce_param_t, level_2_cipher), .ratio=1, .min=0, .max=0, .check_func=bcd_check, .update_func=level_2_cipher_callback,}, //2级密码
|
||||||
|
{.idx=PARA_IDX_ACCOUNT_NUM, .identity=0x0000000E, .store_type=PARAM_ARRAY, .local_type=PARAM_ARRAY, .size=PRODUCE_PARAM_ACCOUNT_NUM_SIZE, .offset=offsetof(produce_param_t, account_num), .ratio=1, .min=0, .max=0, .check_func=bcd_check, .update_func=account_num_callback,}, //户号
|
||||||
|
{.idx=PARA_IDX_VIRTUAL_PLANT_NUM, .identity=0x0000000F, .store_type=PARAM_ARRAY, .local_type=PARAM_ARRAY, .size=PRODUCE_PARAM_VIRTUAL_PLANT_NUM_SIZE, .offset=offsetof(produce_param_t, virtual_plant_num), .ratio=1, .min=0, .max=0, .check_func=bcd_check, .update_func=virtual_plant_num_callback,}, //虚拟电厂编号
|
||||||
|
{.idx=PARA_IDX_LEAK_CURRENT_FACTOR, .identity=0x00000010, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=PRODUCE_PARAM_LEAK_CURRENT_FACTOR_SIZE, .offset=offsetof(produce_param_t, leak_current_factor), .ratio=1, .min=1, .max=65535, .check_func=NULL, .update_func=leak_current_factor_callback,}, //漏电流校准系数
|
||||||
|
{.idx=PARA_IDX_LEAK_CURRENT_DC_ESTIMATE, .identity=0x00000011, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=PRODUCE_PARAM_LEAK_CURRENT_DC_ESTIMATE_SIZE, .offset=offsetof(produce_param_t, leak_current_dc_estimate), .ratio=1, .min=1800, .max=2200, .check_func=NULL, .update_func=leak_current_dc_estimate_callback,}, //漏电流直流偏置AD值
|
||||||
|
{.idx=PARA_IDX_STATE_GRID_ADDR, .identity=0x00000012, .store_type=PARAM_ARRAY, .local_type=PARAM_ARRAY, .size=PRODUCE_PARAM_STATE_GRID_ADDR_SIZE, .offset=offsetof(produce_param_t, state_grid_addr), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=state_grid_addr_callback,}, //国网地址
|
||||||
|
{.idx=PARA_IDX_METER_CODE_NUM, .identity=0x00000013, .store_type=PARAM_ARRAY, .local_type=PARAM_ARRAY, .size=PRODUCE_PARAM_METER_CODE_NUM_SIZE, .offset=offsetof(produce_param_t, meter_code_num), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=meter_code_num_callback,}, //表号(ESAM用)
|
||||||
|
{.idx=PARA_IDX_LEAK_CURRENT_INTER_REFER_MA, .identity=0x00000014, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=PRODUCE_PARAM_LEAK_CURRENT_INTER_REFER_MA_SIZE, .offset=offsetof(produce_param_t, leak_current_inter_refer_mA), .ratio=1, .min=0, .max=300, .check_func=NULL, .update_func=leak_current_inter_refer_mA_callback,}, //漏电流内部参考值
|
||||||
|
{.idx=PARA_IDX_INVERTER_MODEL, .identity=0x00000015, .store_type=PARAM_ARRAY, .local_type=PARAM_ARRAY, .size=PRODUCE_PARAM_INVERTER_MODEL_SIZE, .offset=offsetof(produce_param_t, inverter_model), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=inverter_model_callback,}, //逆变器型号
|
||||||
|
{.idx=PARA_IDX_INVERTER_MANUFACTURER, .identity=0x00000016, .store_type=PARAM_ARRAY, .local_type=PARAM_ARRAY, .size=PRODUCE_PARAM_INVERTER_MANUFACTURER_SIZE, .offset=offsetof(produce_param_t, inverter_manufacturer), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=inverter_manufacturer_callback,}, //逆变器制造厂商
|
||||||
|
{.idx=PARA_IDX_SHANXI_HEIGHT, .identity=0x00000017, .store_type=PARAM_ARRAY, .local_type=PARAM_ARRAY, .size=PRODUCE_PARAM_SHANXI_HEIGHT_SIZE, .offset=offsetof(produce_param_t, shanxi_height), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=shanxi_height_callback,}, //设备海拔高度(陕西)
|
||||||
|
{.idx=PARA_IDX_RATE_ACTIVE_POWER, .identity=0x00000018, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=PRODUCE_PARAM_RATE_ACTIVE_POWER_SIZE, .offset=offsetof(produce_param_t, rate_active_power), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=rate_active_power_callback,}, //额定有功功率
|
||||||
|
{.idx=PARA_IDX_RATE_REACTIVE_POWER, .identity=0x00000019, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=PRODUCE_PARAM_RATE_REACTIVE_POWER_SIZE, .offset=offsetof(produce_param_t, rate_reactive_power), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=rate_reactive_power_callback,}, //额定无功功率
|
||||||
|
{.idx=PARA_IDX_MINUTE_FREEZE_RELATED_COLUMNS, .identity=0x0000001A, .store_type=PARAM_ARRAY, .local_type=PARAM_ARRAY, .size=PRODUCE_PARAM_MINUTE_FREEZE_RELATED_COLUMNS_SIZE, .offset=offsetof(produce_param_t, minute_freeze_related_columns), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=minute_freeze_related_columns_callback,}, //分钟冻结关联列
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
param_info_table_t PRODUCE_PARAM_INFO =
|
||||||
|
{
|
||||||
|
#if ENABLE_PARAM_MUTEX
|
||||||
|
.ptr_mutex = &g_param_resouce.param_mutex,
|
||||||
|
#endif
|
||||||
|
.ptr_category_name = PRODUCE_REGION_NAME,
|
||||||
|
.ptr_default_value_table = (void*)&PRODUCE_PARAM_DEFAULT_VALUE_TABLE, //默认参数值
|
||||||
|
.ptr_index_table = (void*)PRODUCE_PARAM_INDEX_TABLE, //参数索引表
|
||||||
|
.param_num = PRODUCE_PARAM_NUM, //参数个数
|
||||||
|
.param_data_size = PRODUCE_PARAM_STORAGE_SIZE, //数据长度
|
||||||
|
.param_base_addr = PRODUCE_PARAM_STORE_ADDR, //参数存储页地址
|
||||||
|
#if ENABLE_PARAM_IN_RAM
|
||||||
|
#if ENABLE_PARAM_PRESET
|
||||||
|
.ptr_preset_dataset = (void*)&g_update_produce_param_info.preset_table,//预设参数表
|
||||||
|
#endif
|
||||||
|
.ptr_param_in_ram = (void*)&g_produce_param_in_ram, //参数ram缓冲区
|
||||||
|
.ptr_crc_in_ram = g_check_produce_param_crc, //参数crc校验值
|
||||||
|
#endif
|
||||||
|
.ptr_change_flag = g_produce_param_change_flag, //参数变更标记
|
||||||
|
.backup_offset = 1024, //备份之间的偏移
|
||||||
|
.idx_min = PARA_IDX_MES_CODE, //参数索引最小值
|
||||||
|
.idx_max = PARA_IDX_MINUTE_FREEZE_RELATED_COLUMNS, //参数索引最大值
|
||||||
|
.ptr_exchange_unit = &g_param_resouce.ptr_param_unit_buff, //参数写入缓冲区
|
||||||
|
.exchange_size = 1024, //按页写入的缓冲区的大小
|
||||||
|
};
|
||||||
|
|
||||||
@@ -0,0 +1,73 @@
|
|||||||
|
/*
|
||||||
|
* =====================================================================================
|
||||||
|
*
|
||||||
|
* Filename: param_produce.h
|
||||||
|
*
|
||||||
|
* Description:
|
||||||
|
*
|
||||||
|
* Version: 1.0
|
||||||
|
* Created: 26/10/2024 17:20:06
|
||||||
|
* Revision: none
|
||||||
|
* Compiler: gcc
|
||||||
|
*
|
||||||
|
* Author: Autogenerated
|
||||||
|
* Organization: Topscomm
|
||||||
|
*
|
||||||
|
* =====================================================================================
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef __PARAM_PRODUCE_H__
|
||||||
|
#define __PARAM_PRODUCE_H__
|
||||||
|
|
||||||
|
#include <stdint.h>
|
||||||
|
|
||||||
|
#include "./param_config.h"
|
||||||
|
#include "../param_functional/param_block.h"
|
||||||
|
#include "./param_produce_defination.h"
|
||||||
|
|
||||||
|
#define PRODUCE_PARAM_STORE_ADDR (8192)
|
||||||
|
|
||||||
|
|
||||||
|
#define PRODUCE_PARAM_MES_CODE_OFFSET 0
|
||||||
|
#define PRODUCE_PARAM_PRODUCT_ID_OFFSET (PRODUCE_PARAM_MES_CODE_OFFSET + PRODUCE_PARAM_MES_CODE_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define PRODUCE_PARAM_HB_TEST_RESULT_OFFSET (PRODUCE_PARAM_PRODUCT_ID_OFFSET + PRODUCE_PARAM_PRODUCT_ID_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define PRODUCE_PARAM_SYS_TEST_RESULT_OFFSET (PRODUCE_PARAM_HB_TEST_RESULT_OFFSET + PRODUCE_PARAM_HB_TEST_RESULT_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define PRODUCE_PARAM_HW_CMPNT_NUM_OFFSET (PRODUCE_PARAM_SYS_TEST_RESULT_OFFSET + PRODUCE_PARAM_SYS_TEST_RESULT_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define PRODUCE_PARAM_REGION_CODE_OFFSET (PRODUCE_PARAM_HW_CMPNT_NUM_OFFSET + PRODUCE_PARAM_HW_CMPNT_NUM_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define PRODUCE_PARAM_TERM_ADDR_OFFSET (PRODUCE_PARAM_REGION_CODE_OFFSET + PRODUCE_PARAM_REGION_CODE_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define PRODUCE_PARAM_SCI_BAUDRATE_OFFSET (PRODUCE_PARAM_TERM_ADDR_OFFSET + PRODUCE_PARAM_TERM_ADDR_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define PRODUCE_PARAM_AC_PROTO_TYPE_OFFSET (PRODUCE_PARAM_SCI_BAUDRATE_OFFSET + PRODUCE_PARAM_SCI_BAUDRATE_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define PRODUCE_PARAM_PROT645_TYPE_OFFSET (PRODUCE_PARAM_AC_PROTO_TYPE_OFFSET + PRODUCE_PARAM_AC_PROTO_TYPE_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define PRODUCE_PARAM_LEVEL_0_CIPHER_OFFSET (PRODUCE_PARAM_PROT645_TYPE_OFFSET + PRODUCE_PARAM_PROT645_TYPE_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define PRODUCE_PARAM_LEVEL_1_CIPHER_OFFSET (PRODUCE_PARAM_LEVEL_0_CIPHER_OFFSET + PRODUCE_PARAM_LEVEL_0_CIPHER_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define PRODUCE_PARAM_LEVEL_2_CIPHER_OFFSET (PRODUCE_PARAM_LEVEL_1_CIPHER_OFFSET + PRODUCE_PARAM_LEVEL_1_CIPHER_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define PRODUCE_PARAM_ACCOUNT_NUM_OFFSET (PRODUCE_PARAM_LEVEL_2_CIPHER_OFFSET + PRODUCE_PARAM_LEVEL_2_CIPHER_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define PRODUCE_PARAM_VIRTUAL_PLANT_NUM_OFFSET (PRODUCE_PARAM_ACCOUNT_NUM_OFFSET + PRODUCE_PARAM_ACCOUNT_NUM_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define PRODUCE_PARAM_LEAK_CURRENT_FACTOR_OFFSET (PRODUCE_PARAM_VIRTUAL_PLANT_NUM_OFFSET + PRODUCE_PARAM_VIRTUAL_PLANT_NUM_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define PRODUCE_PARAM_LEAK_CURRENT_DC_ESTIMATE_OFFSET (PRODUCE_PARAM_LEAK_CURRENT_FACTOR_OFFSET + PRODUCE_PARAM_LEAK_CURRENT_FACTOR_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define PRODUCE_PARAM_STATE_GRID_ADDR_OFFSET (PRODUCE_PARAM_LEAK_CURRENT_DC_ESTIMATE_OFFSET + PRODUCE_PARAM_LEAK_CURRENT_DC_ESTIMATE_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define PRODUCE_PARAM_METER_CODE_NUM_OFFSET (PRODUCE_PARAM_STATE_GRID_ADDR_OFFSET + PRODUCE_PARAM_STATE_GRID_ADDR_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define PRODUCE_PARAM_LEAK_CURRENT_INTER_REFER_MA_OFFSET (PRODUCE_PARAM_METER_CODE_NUM_OFFSET + PRODUCE_PARAM_METER_CODE_NUM_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define PRODUCE_PARAM_INVERTER_MODEL_OFFSET (PRODUCE_PARAM_LEAK_CURRENT_INTER_REFER_MA_OFFSET + PRODUCE_PARAM_LEAK_CURRENT_INTER_REFER_MA_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define PRODUCE_PARAM_INVERTER_MANUFACTURER_OFFSET (PRODUCE_PARAM_INVERTER_MODEL_OFFSET + PRODUCE_PARAM_INVERTER_MODEL_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define PRODUCE_PARAM_SHANXI_HEIGHT_OFFSET (PRODUCE_PARAM_INVERTER_MANUFACTURER_OFFSET + PRODUCE_PARAM_INVERTER_MANUFACTURER_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define PRODUCE_PARAM_RATE_ACTIVE_POWER_OFFSET (PRODUCE_PARAM_SHANXI_HEIGHT_OFFSET + PRODUCE_PARAM_SHANXI_HEIGHT_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define PRODUCE_PARAM_RATE_REACTIVE_POWER_OFFSET (PRODUCE_PARAM_RATE_ACTIVE_POWER_OFFSET + PRODUCE_PARAM_RATE_ACTIVE_POWER_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define PRODUCE_PARAM_MINUTE_FREEZE_RELATED_COLUMNS_OFFSET (PRODUCE_PARAM_RATE_REACTIVE_POWER_OFFSET + PRODUCE_PARAM_RATE_REACTIVE_POWER_SIZE + PARAM_INFO_SIZE)
|
||||||
|
|
||||||
|
#define PRODUCE_PARAM_STORAGE_SIZE (PRODUCE_PARAM_MINUTE_FREEZE_RELATED_COLUMNS_OFFSET + PRODUCE_PARAM_MINUTE_FREEZE_RELATED_COLUMNS_SIZE + PARAM_INFO_SIZE)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#if ENABLE_PARAM_IN_RAM
|
||||||
|
#if ENABLE_PARAM_PRESET
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
produce_param_t preset_table;
|
||||||
|
} update_produce_param_t;
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
extern param_info_table_t PRODUCE_PARAM_INFO;
|
||||||
|
|
||||||
|
#endif /* ----- #ifndef __PARAM_PRODUCE_H__ ----- */
|
||||||
@@ -0,0 +1,88 @@
|
|||||||
|
/*
|
||||||
|
* =====================================================================================
|
||||||
|
*
|
||||||
|
* Filename: param_produce_defination.h
|
||||||
|
*
|
||||||
|
* Description:
|
||||||
|
*
|
||||||
|
* Version: 1.0
|
||||||
|
* Created: 26/10/2024 17:20:06
|
||||||
|
* Revision: none
|
||||||
|
* Compiler: gcc
|
||||||
|
*
|
||||||
|
* Author: Autogenerated
|
||||||
|
* Organization: Topscomm
|
||||||
|
*
|
||||||
|
* =====================================================================================
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef __PARAM_PRODUCE_DEFINATION_H__
|
||||||
|
#define __PARAM_PRODUCE_DEFINATION_H__
|
||||||
|
|
||||||
|
#include <stdint.h>
|
||||||
|
#include <stddef.h>
|
||||||
|
|
||||||
|
|
||||||
|
#define PRODUCE_PARAM_NUM (26)
|
||||||
|
|
||||||
|
|
||||||
|
#define PRODUCE_PARAM_MES_CODE_SIZE (8)
|
||||||
|
#define PRODUCE_PARAM_PRODUCT_ID_SIZE (6)
|
||||||
|
#define PRODUCE_PARAM_HB_TEST_RESULT_SIZE (sizeof(uint16_t))
|
||||||
|
#define PRODUCE_PARAM_SYS_TEST_RESULT_SIZE (sizeof(uint16_t))
|
||||||
|
#define PRODUCE_PARAM_HW_CMPNT_NUM_SIZE (6)
|
||||||
|
#define PRODUCE_PARAM_REGION_CODE_SIZE (2)
|
||||||
|
#define PRODUCE_PARAM_TERM_ADDR_SIZE (2)
|
||||||
|
#define PRODUCE_PARAM_SCI_BAUDRATE_SIZE (sizeof(uint8_t))
|
||||||
|
#define PRODUCE_PARAM_AC_PROTO_TYPE_SIZE (sizeof(uint8_t))
|
||||||
|
#define PRODUCE_PARAM_PROT645_TYPE_SIZE (sizeof(uint8_t))
|
||||||
|
#define PRODUCE_PARAM_LEVEL_0_CIPHER_SIZE (4)
|
||||||
|
#define PRODUCE_PARAM_LEVEL_1_CIPHER_SIZE (4)
|
||||||
|
#define PRODUCE_PARAM_LEVEL_2_CIPHER_SIZE (4)
|
||||||
|
#define PRODUCE_PARAM_ACCOUNT_NUM_SIZE (6)
|
||||||
|
#define PRODUCE_PARAM_VIRTUAL_PLANT_NUM_SIZE (6)
|
||||||
|
#define PRODUCE_PARAM_LEAK_CURRENT_FACTOR_SIZE (sizeof(uint16_t))
|
||||||
|
#define PRODUCE_PARAM_LEAK_CURRENT_DC_ESTIMATE_SIZE (sizeof(uint16_t))
|
||||||
|
#define PRODUCE_PARAM_STATE_GRID_ADDR_SIZE (12)
|
||||||
|
#define PRODUCE_PARAM_METER_CODE_NUM_SIZE (12)
|
||||||
|
#define PRODUCE_PARAM_LEAK_CURRENT_INTER_REFER_MA_SIZE (sizeof(uint16_t))
|
||||||
|
#define PRODUCE_PARAM_INVERTER_MODEL_SIZE (32)
|
||||||
|
#define PRODUCE_PARAM_INVERTER_MANUFACTURER_SIZE (32)
|
||||||
|
#define PRODUCE_PARAM_SHANXI_HEIGHT_SIZE (6)
|
||||||
|
#define PRODUCE_PARAM_RATE_ACTIVE_POWER_SIZE (sizeof(uint16_t))
|
||||||
|
#define PRODUCE_PARAM_RATE_REACTIVE_POWER_SIZE (sizeof(uint16_t))
|
||||||
|
#define PRODUCE_PARAM_MINUTE_FREEZE_RELATED_COLUMNS_SIZE (32)
|
||||||
|
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
uint8_t mes_code[PRODUCE_PARAM_MES_CODE_SIZE]; /* 设备MES码 */
|
||||||
|
uint8_t product_id[PRODUCE_PARAM_PRODUCT_ID_SIZE]; /* 12位出厂编号 */
|
||||||
|
uint16_t hb_test_result; /* 板级生产检测结果 */
|
||||||
|
uint16_t sys_test_result; /* 工厂整机测试结果 */
|
||||||
|
uint8_t hw_cmpnt_num[PRODUCE_PARAM_HW_CMPNT_NUM_SIZE]; /* 硬件组件号 */
|
||||||
|
uint8_t region_code[PRODUCE_PARAM_REGION_CODE_SIZE]; /* 行政区域码 */
|
||||||
|
uint8_t term_addr[PRODUCE_PARAM_TERM_ADDR_SIZE]; /* 终端地址 */
|
||||||
|
uint8_t sci_baudrate; /* 对外串口波特率 */
|
||||||
|
uint8_t ac_proto_type; /* 载波协议类型 */
|
||||||
|
uint8_t prot645_type; /* 645协议版本 */
|
||||||
|
uint8_t level_0_cipher[PRODUCE_PARAM_LEVEL_0_CIPHER_SIZE]; /* 0级密码 */
|
||||||
|
uint8_t level_1_cipher[PRODUCE_PARAM_LEVEL_1_CIPHER_SIZE]; /* 1级密码 */
|
||||||
|
uint8_t level_2_cipher[PRODUCE_PARAM_LEVEL_2_CIPHER_SIZE]; /* 2级密码 */
|
||||||
|
uint8_t account_num[PRODUCE_PARAM_ACCOUNT_NUM_SIZE]; /* 户号 */
|
||||||
|
uint8_t virtual_plant_num[PRODUCE_PARAM_VIRTUAL_PLANT_NUM_SIZE]; /* 虚拟电厂编号 */
|
||||||
|
uint16_t leak_current_factor; /* 漏电流校准系数 */
|
||||||
|
uint16_t leak_current_dc_estimate; /* 漏电流直流偏置AD值 */
|
||||||
|
uint8_t state_grid_addr[PRODUCE_PARAM_STATE_GRID_ADDR_SIZE]; /* 国网地址 */
|
||||||
|
uint8_t meter_code_num[PRODUCE_PARAM_METER_CODE_NUM_SIZE]; /* 表号(ESAM用) */
|
||||||
|
uint16_t leak_current_inter_refer_mA; /* 漏电流内部参考值 */
|
||||||
|
uint8_t inverter_model[PRODUCE_PARAM_INVERTER_MODEL_SIZE]; /* 逆变器型号 */
|
||||||
|
uint8_t inverter_manufacturer[PRODUCE_PARAM_INVERTER_MANUFACTURER_SIZE]; /* 逆变器制造厂商 */
|
||||||
|
uint8_t shanxi_height[PRODUCE_PARAM_SHANXI_HEIGHT_SIZE]; /* 设备海拔高度(陕西) */
|
||||||
|
uint16_t rate_active_power; /* 额定有功功率 */
|
||||||
|
uint16_t rate_reactive_power; /* 额定无功功率 */
|
||||||
|
uint8_t minute_freeze_related_columns[PRODUCE_PARAM_MINUTE_FREEZE_RELATED_COLUMNS_SIZE]; /* 分钟冻结关联列 */
|
||||||
|
} produce_param_t;
|
||||||
|
|
||||||
|
|
||||||
|
#endif /* ----- #ifndef __PARAM_PRODUCE_DEFINATION_H__ ----- */
|
||||||
@@ -0,0 +1,193 @@
|
|||||||
|
/*
|
||||||
|
* =====================================================================================
|
||||||
|
*
|
||||||
|
* Filename: param_stable.c
|
||||||
|
*
|
||||||
|
* Description:
|
||||||
|
*
|
||||||
|
* Version: 1.0
|
||||||
|
* Created: 26/10/2024 17:20:06
|
||||||
|
* Revision: none
|
||||||
|
* Compiler: gcc
|
||||||
|
*
|
||||||
|
* Author: Autogenerated
|
||||||
|
* Organization: Topscomm
|
||||||
|
*
|
||||||
|
* =====================================================================================
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <stddef.h>
|
||||||
|
|
||||||
|
#include "plm_type_def.h"
|
||||||
|
#include "../param_export.h"
|
||||||
|
|
||||||
|
#include "./param_stable.h"
|
||||||
|
|
||||||
|
|
||||||
|
#if ENABLE_PARAM_IN_RAM
|
||||||
|
#if ENABLE_PARAM_PRESET
|
||||||
|
update_stable_param_t g_update_stable_param_info; /*预存参数数据缓冲区 */
|
||||||
|
#endif
|
||||||
|
|
||||||
|
stable_param_t g_stable_param_in_ram; /*参数ram缓冲区*/
|
||||||
|
uint16_t g_check_stable_param_crc[STABLE_PARAM_NUM]; /*用于记录参数的校验crc结果*/
|
||||||
|
#endif
|
||||||
|
|
||||||
|
PARAM_CHANGE_FLAG_E g_stable_param_change_flag[STABLE_PARAM_NUM]; /*用于记录参数的修改标记*/
|
||||||
|
|
||||||
|
const stable_param_t STABLE_PARAM_DEFAULT_VALUE_TABLE =
|
||||||
|
{
|
||||||
|
.work_mode_svgc = 0, //工作模式
|
||||||
|
.work_mode_svg = 0, //补偿模式选择
|
||||||
|
.poweron_mode = 1, //开机模式
|
||||||
|
.power_on_delay = 15, //自动开机延时
|
||||||
|
.power_on_time_en = 0, //定时开关机使能
|
||||||
|
.power_on_time = {0}, //定时开机时间
|
||||||
|
.power_off_time = {0}, //定时关机时间
|
||||||
|
.low_power_judge_delay = 300, //低功耗判断延时
|
||||||
|
.low_power_judge_delay_quit = 10, //退出低功耗判断延时
|
||||||
|
.auto_reset_delay = 180, //自动复位延时
|
||||||
|
.dsp_wd_enable = 0, //DSP看门狗复位使能
|
||||||
|
.freeze_save_period = 5, //分钟冻结周期
|
||||||
|
.record_frame_en = 0, //报文记录使能
|
||||||
|
.record_frame_dir = 0, //报文记录方向
|
||||||
|
.record_frame_port = 0, //报文记录端口
|
||||||
|
.record_err_log_en = 0, //错误打印记录使能
|
||||||
|
.impd_dete_en = 1, //绝缘阻值检测使能
|
||||||
|
.fan_ctr_mode = 0, //风扇控制模式
|
||||||
|
.leak_current_mode = 3, //漏电流模式
|
||||||
|
.sys_discharge_start_pwr = 20, //放电起始功率
|
||||||
|
.anti_pid_en = 0, //抗PID使能
|
||||||
|
.anti_pid_time = 120, //抗PID启动时间
|
||||||
|
.auto_restore_delay = 15, //自动清除故障模式
|
||||||
|
.plc_enable = 0, //交流载波使能
|
||||||
|
.control_enable_shanxi = 0, //逆变器控制使能
|
||||||
|
.fan_auto_ctrl_factor = 0, //风扇自动控制因素
|
||||||
|
.manual_fan_pwm = 95, //手动风扇占空比
|
||||||
|
.fan_pwm_start = 35, //风扇启动占空比
|
||||||
|
.fan_pwm_max = 100, //风扇最大占空比
|
||||||
|
.fan_start_temp = 45, //风扇启动温度
|
||||||
|
.fan_max_temp = 55, //风扇满速温度
|
||||||
|
.fan_start_power = 33, //风扇启动功率(额定值%)
|
||||||
|
.fan_max_power = 67, //风扇满速功率(额定值%)
|
||||||
|
.reserve_param9_2 = 0, //幅值参考预留2
|
||||||
|
.reserve_param9_3 = 0, //幅值参考预留3
|
||||||
|
.reserve_param9_4 = 0, //幅值参考预留4
|
||||||
|
.reserve_param9_5 = 0, //幅值参考预留5
|
||||||
|
.reserve_param9_6 = 0, //幅值参考预留6
|
||||||
|
.reserve_param9_7 = 0, //幅值参考预留7
|
||||||
|
.impd_fault_thrd = 180, //绝缘阻值故障阈值
|
||||||
|
.impd_detect_close_time = 1500, //绝缘检测闭合时间
|
||||||
|
.impd_detect_open_time = 5000, //绝缘检测断开时间
|
||||||
|
.fan_speed_fault_thrd = 2000, //风扇故障转速阈值
|
||||||
|
.leak_cur_fault_thrd = 200, //漏电流故障阈值
|
||||||
|
.reserve_param1_1 = 110, //阈值参考预留1
|
||||||
|
.over_temp_time = 10, //过温判定时间
|
||||||
|
.self_check_time = 60, //自检超时判定时间
|
||||||
|
.insu_bus_volt_thd = 400, //绝缘检测母线电压阈值
|
||||||
|
.insu_rly_volt_thd = 5, //绝缘检测继电器电压阈值
|
||||||
|
.leak_current_L3_mutation_threshold_mA = 150, //漏电流3级突变触发阈值
|
||||||
|
.leak_current_slow_threshold_mA = 0xFFFF, //漏电流缓变动作阈值
|
||||||
|
.leak_current_slow_time_ms = 10, //漏电流缓变时间阈值
|
||||||
|
.leak_current_L1_mutation_threshold_mA = 60, //漏电流1级突变触发阈值
|
||||||
|
.leak_current_L2_mutation_threshold_mA = 60, //漏电流2级突变触发阈值
|
||||||
|
.longi_device_sn = {0}, //设备ID(用于隆基主站上报)
|
||||||
|
.longi_product_id = {0}, //产品ID(用于隆基主站上报)
|
||||||
|
.shanxi_capacity = {0}, //光伏板装机容量(陕西)
|
||||||
|
.shanxi_longitude = {0}, //设备经度(陕西)
|
||||||
|
.shanxi_latitude = {0}, //设备纬度(陕西)
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
const param_info_t STABLE_PARAM_INDEX_TABLE[STABLE_PARAM_NUM] =
|
||||||
|
{
|
||||||
|
{.idx=PARA_IDX_WORK_MODE_SVGC, .identity=0x00000001, .store_type=PARAM_UINT8, .local_type=PARAM_UINT8, .size=STABLE_PARAM_WORK_MODE_SVGC_SIZE, .offset=offsetof(stable_param_t, work_mode_svgc), .ratio=1, .min=0, .max=2, .check_func=NULL, .update_func=work_mode_svgc_callback,}, //工作模式
|
||||||
|
{.idx=PARA_IDX_WORK_MODE_SVG, .identity=0x00000002, .store_type=PARAM_UINT8, .local_type=PARAM_UINT8, .size=STABLE_PARAM_WORK_MODE_SVG_SIZE, .offset=offsetof(stable_param_t, work_mode_svg), .ratio=1, .min=0, .max=1, .check_func=NULL, .update_func=work_mode_svg_callback,}, //补偿模式选择
|
||||||
|
{.idx=PARA_IDX_POWERON_MODE, .identity=0x00000003, .store_type=PARAM_UINT8, .local_type=PARAM_UINT8, .size=STABLE_PARAM_POWERON_MODE_SIZE, .offset=offsetof(stable_param_t, poweron_mode), .ratio=1, .min=0, .max=1, .check_func=NULL, .update_func=poweron_mode_callback,}, //开机模式
|
||||||
|
{.idx=PARA_IDX_POWER_ON_DELAY, .identity=0x00000004, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_POWER_ON_DELAY_SIZE, .offset=offsetof(stable_param_t, power_on_delay), .ratio=1, .min=0, .max=3600, .check_func=NULL, .update_func=power_on_delay_callback,}, //自动开机延时
|
||||||
|
{.idx=PARA_IDX_POWER_ON_TIME_EN, .identity=0x00000005, .store_type=PARAM_UINT8, .local_type=PARAM_UINT8, .size=STABLE_PARAM_POWER_ON_TIME_EN_SIZE, .offset=offsetof(stable_param_t, power_on_time_en), .ratio=1, .min=0, .max=1, .check_func=NULL, .update_func=power_on_time_en_callback,}, //定时开关机使能
|
||||||
|
{.idx=PARA_IDX_POWER_ON_TIME, .identity=0x00000006, .store_type=PARAM_ARRAY, .local_type=PARAM_ARRAY, .size=STABLE_PARAM_POWER_ON_TIME_SIZE, .offset=offsetof(stable_param_t, power_on_time), .ratio=1, .min=0, .max=0, .check_func=time_check, .update_func=power_on_time_callback,}, //定时开机时间
|
||||||
|
{.idx=PARA_IDX_POWER_OFF_TIME, .identity=0x00000007, .store_type=PARAM_ARRAY, .local_type=PARAM_ARRAY, .size=STABLE_PARAM_POWER_OFF_TIME_SIZE, .offset=offsetof(stable_param_t, power_off_time), .ratio=1, .min=0, .max=0, .check_func=time_check, .update_func=power_off_time_callback,}, //定时关机时间
|
||||||
|
{.idx=PARA_IDX_LOW_POWER_JUDGE_DELAY, .identity=0x00000008, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_LOW_POWER_JUDGE_DELAY_SIZE, .offset=offsetof(stable_param_t, low_power_judge_delay), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=low_power_judge_delay_callback,}, //低功耗判断延时
|
||||||
|
{.idx=PARA_IDX_LOW_POWER_JUDGE_DELAY_QUIT, .identity=0x00000009, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_LOW_POWER_JUDGE_DELAY_QUIT_SIZE, .offset=offsetof(stable_param_t, low_power_judge_delay_quit), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=low_power_judge_delay_quit_callback,}, //退出低功耗判断延时
|
||||||
|
{.idx=PARA_IDX_AUTO_RESET_DELAY, .identity=0x0000000A, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_AUTO_RESET_DELAY_SIZE, .offset=offsetof(stable_param_t, auto_reset_delay), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=auto_reset_delay_callback,}, //自动复位延时
|
||||||
|
{.idx=PARA_IDX_DSP_WD_ENABLE, .identity=0x0000000B, .store_type=PARAM_UINT8, .local_type=PARAM_UINT8, .size=STABLE_PARAM_DSP_WD_ENABLE_SIZE, .offset=offsetof(stable_param_t, dsp_wd_enable), .ratio=1, .min=0, .max=1, .check_func=NULL, .update_func=dsp_wd_enable_callback,}, //DSP看门狗复位使能
|
||||||
|
{.idx=PARA_IDX_FREEZE_SAVE_PERIOD, .identity=0x0000000C, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_FREEZE_SAVE_PERIOD_SIZE, .offset=offsetof(stable_param_t, freeze_save_period), .ratio=1, .min=1, .max=15, .check_func=NULL, .update_func=freeze_save_period_callback,}, //分钟冻结周期
|
||||||
|
{.idx=PARA_IDX_RECORD_FRAME_EN, .identity=0x0000000D, .store_type=PARAM_UINT8, .local_type=PARAM_UINT8, .size=STABLE_PARAM_RECORD_FRAME_EN_SIZE, .offset=offsetof(stable_param_t, record_frame_en), .ratio=1, .min=0, .max=3, .check_func=NULL, .update_func=record_frame_en_callback,}, //报文记录使能
|
||||||
|
{.idx=PARA_IDX_RECORD_FRAME_DIR, .identity=0x0000000E, .store_type=PARAM_UINT8, .local_type=PARAM_UINT8, .size=STABLE_PARAM_RECORD_FRAME_DIR_SIZE, .offset=offsetof(stable_param_t, record_frame_dir), .ratio=1, .min=0, .max=2, .check_func=NULL, .update_func=record_frame_dir_callback,}, //报文记录方向
|
||||||
|
{.idx=PARA_IDX_RECORD_FRAME_PORT, .identity=0x0000000F, .store_type=PARAM_UINT8, .local_type=PARAM_UINT8, .size=STABLE_PARAM_RECORD_FRAME_PORT_SIZE, .offset=offsetof(stable_param_t, record_frame_port), .ratio=1, .min=0, .max=11, .check_func=NULL, .update_func=record_frame_port_callback,}, //报文记录端口
|
||||||
|
{.idx=PARA_IDX_RECORD_ERR_LOG_EN, .identity=0x00000010, .store_type=PARAM_UINT8, .local_type=PARAM_UINT8, .size=STABLE_PARAM_RECORD_ERR_LOG_EN_SIZE, .offset=offsetof(stable_param_t, record_err_log_en), .ratio=1, .min=0, .max=1, .check_func=NULL, .update_func=record_err_log_en_callback,}, //错误打印记录使能
|
||||||
|
{.idx=PARA_IDX_IMPD_DETE_EN, .identity=0x00000011, .store_type=PARAM_UINT8, .local_type=PARAM_UINT8, .size=STABLE_PARAM_IMPD_DETE_EN_SIZE, .offset=offsetof(stable_param_t, impd_dete_en), .ratio=1, .min=0, .max=1, .check_func=NULL, .update_func=impd_dete_en_callback,}, //绝缘阻值检测使能
|
||||||
|
{.idx=PARA_IDX_FAN_CTR_MODE, .identity=0x00000012, .store_type=PARAM_UINT8, .local_type=PARAM_UINT8, .size=STABLE_PARAM_FAN_CTR_MODE_SIZE, .offset=offsetof(stable_param_t, fan_ctr_mode), .ratio=1, .min=0, .max=1, .check_func=NULL, .update_func=fan_ctr_mode_callback,}, //风扇控制模式
|
||||||
|
{.idx=PARA_IDX_LEAK_CURRENT_MODE, .identity=0x00000013, .store_type=PARAM_UINT8, .local_type=PARAM_UINT8, .size=STABLE_PARAM_LEAK_CURRENT_MODE_SIZE, .offset=offsetof(stable_param_t, leak_current_mode), .ratio=1, .min=0, .max=3, .check_func=NULL, .update_func=leak_current_mode_callback,}, //漏电流模式
|
||||||
|
{.idx=PARA_IDX_SYS_DISCHARGE_START_PWR, .identity=0x00000014, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_SYS_DISCHARGE_START_PWR_SIZE, .offset=offsetof(stable_param_t, sys_discharge_start_pwr), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=sys_discharge_start_pwr_callback,}, //放电起始功率
|
||||||
|
{.idx=PARA_IDX_ANTI_PID_EN, .identity=0x00000015, .store_type=PARAM_UINT8, .local_type=PARAM_UINT8, .size=STABLE_PARAM_ANTI_PID_EN_SIZE, .offset=offsetof(stable_param_t, anti_pid_en), .ratio=1, .min=0, .max=1, .check_func=NULL, .update_func=anti_pid_en_callback,}, //抗PID使能
|
||||||
|
{.idx=PARA_IDX_ANTI_PID_TIME, .identity=0x00000016, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_ANTI_PID_TIME_SIZE, .offset=offsetof(stable_param_t, anti_pid_time), .ratio=1, .min=30, .max=1200, .check_func=NULL, .update_func=anti_pid_time_callback,}, //抗PID启动时间
|
||||||
|
{.idx=PARA_IDX_AUTO_RESTORE_DELAY, .identity=0x00000017, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_AUTO_RESTORE_DELAY_SIZE, .offset=offsetof(stable_param_t, auto_restore_delay), .ratio=1, .min=0, .max=15, .check_func=NULL, .update_func=auto_restore_delay_callback,}, //自动清除故障模式
|
||||||
|
{.idx=PARA_IDX_PLC_ENABLE, .identity=0x00000018, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_PLC_ENABLE_SIZE, .offset=offsetof(stable_param_t, plc_enable), .ratio=1, .min=0, .max=1, .check_func=NULL, .update_func=plc_enable_callback,}, //交流载波使能
|
||||||
|
{.idx=PARA_IDX_CONTROL_ENABLE_SHANXI, .identity=0x00000019, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_CONTROL_ENABLE_SHANXI_SIZE, .offset=offsetof(stable_param_t, control_enable_shanxi), .ratio=1, .min=0, .max=1, .check_func=NULL, .update_func=control_enable_shanxi_callback,}, //逆变器控制使能
|
||||||
|
{.idx=PARA_IDX_FAN_AUTO_CTRL_FACTOR, .identity=0x0000001A, .store_type=PARAM_UINT8, .local_type=PARAM_UINT8, .size=STABLE_PARAM_FAN_AUTO_CTRL_FACTOR_SIZE, .offset=offsetof(stable_param_t, fan_auto_ctrl_factor), .ratio=1, .min=0, .max=2, .check_func=NULL, .update_func=fan_auto_ctrl_factor_callback,}, //风扇自动控制因素
|
||||||
|
{.idx=PARA_IDX_MANUAL_FAN_PWM, .identity=0x0000001B, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_MANUAL_FAN_PWM_SIZE, .offset=offsetof(stable_param_t, manual_fan_pwm), .ratio=1, .min=0, .max=100, .check_func=NULL, .update_func=manual_fan_pwm_callback,}, //手动风扇占空比
|
||||||
|
{.idx=PARA_IDX_FAN_PWM_START, .identity=0x0000001C, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_FAN_PWM_START_SIZE, .offset=offsetof(stable_param_t, fan_pwm_start), .ratio=1, .min=10, .max=50, .check_func=NULL, .update_func=fan_pwm_start_callback,}, //风扇启动占空比
|
||||||
|
{.idx=PARA_IDX_FAN_PWM_MAX, .identity=0x0000001D, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_FAN_PWM_MAX_SIZE, .offset=offsetof(stable_param_t, fan_pwm_max), .ratio=1, .min=51, .max=100, .check_func=NULL, .update_func=fan_pwm_max_callback,}, //风扇最大占空比
|
||||||
|
{.idx=PARA_IDX_FAN_START_TEMP, .identity=0x0000001E, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_FAN_START_TEMP_SIZE, .offset=offsetof(stable_param_t, fan_start_temp), .ratio=1, .min=10, .max=150, .check_func=NULL, .update_func=fan_start_temp_callback,}, //风扇启动温度
|
||||||
|
{.idx=PARA_IDX_FAN_MAX_TEMP, .identity=0x0000001F, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_FAN_MAX_TEMP_SIZE, .offset=offsetof(stable_param_t, fan_max_temp), .ratio=1, .min=30, .max=150, .check_func=NULL, .update_func=fan_max_temp_callback,}, //风扇满速温度
|
||||||
|
{.idx=PARA_IDX_FAN_START_POWER, .identity=0x00000020, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_FAN_START_POWER_SIZE, .offset=offsetof(stable_param_t, fan_start_power), .ratio=1, .min=0, .max=100, .check_func=NULL, .update_func=fan_start_power_callback,}, //风扇启动功率(额定值%)
|
||||||
|
{.idx=PARA_IDX_FAN_MAX_POWER, .identity=0x00000021, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_FAN_MAX_POWER_SIZE, .offset=offsetof(stable_param_t, fan_max_power), .ratio=1, .min=0, .max=100, .check_func=NULL, .update_func=fan_max_power_callback,}, //风扇满速功率(额定值%)
|
||||||
|
{.idx=PARA_IDX_RESERVE_PARAM9_2, .identity=0x00000022, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_RESERVE_PARAM9_2_SIZE, .offset=offsetof(stable_param_t, reserve_param9_2), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=reserve_param9_2_callback,}, //幅值参考预留2
|
||||||
|
{.idx=PARA_IDX_RESERVE_PARAM9_3, .identity=0x00000023, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_RESERVE_PARAM9_3_SIZE, .offset=offsetof(stable_param_t, reserve_param9_3), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=reserve_param9_3_callback,}, //幅值参考预留3
|
||||||
|
{.idx=PARA_IDX_RESERVE_PARAM9_4, .identity=0x00000024, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_RESERVE_PARAM9_4_SIZE, .offset=offsetof(stable_param_t, reserve_param9_4), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=reserve_param9_4_callback,}, //幅值参考预留4
|
||||||
|
{.idx=PARA_IDX_RESERVE_PARAM9_5, .identity=0x00000025, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_RESERVE_PARAM9_5_SIZE, .offset=offsetof(stable_param_t, reserve_param9_5), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=reserve_param9_5_callback,}, //幅值参考预留5
|
||||||
|
{.idx=PARA_IDX_RESERVE_PARAM9_6, .identity=0x00000026, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_RESERVE_PARAM9_6_SIZE, .offset=offsetof(stable_param_t, reserve_param9_6), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=reserve_param9_6_callback,}, //幅值参考预留6
|
||||||
|
{.idx=PARA_IDX_RESERVE_PARAM9_7, .identity=0x00000027, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_RESERVE_PARAM9_7_SIZE, .offset=offsetof(stable_param_t, reserve_param9_7), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=reserve_param9_7_callback,}, //幅值参考预留7
|
||||||
|
{.idx=PARA_IDX_IMPD_FAULT_THRD, .identity=0x00000028, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_IMPD_FAULT_THRD_SIZE, .offset=offsetof(stable_param_t, impd_fault_thrd), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=impd_fault_thrd_callback,}, //绝缘阻值故障阈值
|
||||||
|
{.idx=PARA_IDX_IMPD_DETECT_CLOSE_TIME, .identity=0x00000029, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_IMPD_DETECT_CLOSE_TIME_SIZE, .offset=offsetof(stable_param_t, impd_detect_close_time), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=impd_detect_close_time_callback,}, //绝缘检测闭合时间
|
||||||
|
{.idx=PARA_IDX_IMPD_DETECT_OPEN_TIME, .identity=0x0000002A, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_IMPD_DETECT_OPEN_TIME_SIZE, .offset=offsetof(stable_param_t, impd_detect_open_time), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=impd_detect_open_time_callback,}, //绝缘检测断开时间
|
||||||
|
{.idx=PARA_IDX_FAN_SPEED_FAULT_THRD, .identity=0x0000002B, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_FAN_SPEED_FAULT_THRD_SIZE, .offset=offsetof(stable_param_t, fan_speed_fault_thrd), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=fan_speed_fault_thrd_callback,}, //风扇故障转速阈值
|
||||||
|
{.idx=PARA_IDX_LEAK_CUR_FAULT_THRD, .identity=0x0000002C, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_LEAK_CUR_FAULT_THRD_SIZE, .offset=offsetof(stable_param_t, leak_cur_fault_thrd), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=leak_cur_fault_thrd_callback,}, //漏电流故障阈值
|
||||||
|
{.idx=PARA_IDX_RESERVE_PARAM1_1, .identity=0x0000002D, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_RESERVE_PARAM1_1_SIZE, .offset=offsetof(stable_param_t, reserve_param1_1), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=reserve_param1_1_callback,}, //阈值参考预留1
|
||||||
|
{.idx=PARA_IDX_OVER_TEMP_TIME, .identity=0x0000002E, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_OVER_TEMP_TIME_SIZE, .offset=offsetof(stable_param_t, over_temp_time), .ratio=1, .min=0, .max=3600, .check_func=NULL, .update_func=over_temp_time_callback,}, //过温判定时间
|
||||||
|
{.idx=PARA_IDX_SELF_CHECK_TIME, .identity=0x0000002F, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_SELF_CHECK_TIME_SIZE, .offset=offsetof(stable_param_t, self_check_time), .ratio=1, .min=0, .max=3600, .check_func=NULL, .update_func=self_check_time_callback,}, //自检超时判定时间
|
||||||
|
{.idx=PARA_IDX_INSU_BUS_VOLT_THD, .identity=0x00000030, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_INSU_BUS_VOLT_THD_SIZE, .offset=offsetof(stable_param_t, insu_bus_volt_thd), .ratio=1, .min=0, .max=1200, .check_func=NULL, .update_func=insu_bus_volt_thd_callback,}, //绝缘检测母线电压阈值
|
||||||
|
{.idx=PARA_IDX_INSU_RLY_VOLT_THD, .identity=0x00000031, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_INSU_RLY_VOLT_THD_SIZE, .offset=offsetof(stable_param_t, insu_rly_volt_thd), .ratio=1, .min=0, .max=1200, .check_func=NULL, .update_func=insu_rly_volt_thd_callback,}, //绝缘检测继电器电压阈值
|
||||||
|
{.idx=PARA_IDX_LEAK_CURRENT_L3_MUTATION_THRESHOLD_MA, .identity=0x00000032, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_LEAK_CURRENT_L3_MUTATION_THRESHOLD_MA_SIZE, .offset=offsetof(stable_param_t, leak_current_L3_mutation_threshold_mA), .ratio=1, .min=30, .max=300, .check_func=NULL, .update_func=leak_current_L3_mutation_threshold_mA_callback,}, //漏电流3级突变触发阈值
|
||||||
|
{.idx=PARA_IDX_LEAK_CURRENT_SLOW_THRESHOLD_MA, .identity=0x00000033, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_LEAK_CURRENT_SLOW_THRESHOLD_MA_SIZE, .offset=offsetof(stable_param_t, leak_current_slow_threshold_mA), .ratio=1, .min=30, .max=700, .check_func=NULL, .update_func=leak_current_slow_threshold_mA_callback,}, //漏电流缓变动作阈值
|
||||||
|
{.idx=PARA_IDX_LEAK_CURRENT_SLOW_TIME_MS, .identity=0x00000034, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_LEAK_CURRENT_SLOW_TIME_MS_SIZE, .offset=offsetof(stable_param_t, leak_current_slow_time_ms), .ratio=1, .min=0, .max=100, .check_func=NULL, .update_func=leak_current_slow_time_ms_callback,}, //漏电流缓变时间阈值
|
||||||
|
{.idx=PARA_IDX_LEAK_CURRENT_L1_MUTATION_THRESHOLD_MA, .identity=0x00000035, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_LEAK_CURRENT_L1_MUTATION_THRESHOLD_MA_SIZE, .offset=offsetof(stable_param_t, leak_current_L1_mutation_threshold_mA), .ratio=1, .min=20, .max=300, .check_func=NULL, .update_func=leak_current_L1_mutation_threshold_mA_callback,}, //漏电流1级突变触发阈值
|
||||||
|
{.idx=PARA_IDX_LEAK_CURRENT_L2_MUTATION_THRESHOLD_MA, .identity=0x00000036, .store_type=PARAM_UINT16, .local_type=PARAM_UINT16, .size=STABLE_PARAM_LEAK_CURRENT_L2_MUTATION_THRESHOLD_MA_SIZE, .offset=offsetof(stable_param_t, leak_current_L2_mutation_threshold_mA), .ratio=1, .min=20, .max=300, .check_func=NULL, .update_func=leak_current_L2_mutation_threshold_mA_callback,}, //漏电流2级突变触发阈值
|
||||||
|
{.idx=PARA_IDX_LONGI_DEVICE_SN, .identity=0x00000037, .store_type=PARAM_ARRAY, .local_type=PARAM_ARRAY, .size=STABLE_PARAM_LONGI_DEVICE_SN_SIZE, .offset=offsetof(stable_param_t, longi_device_sn), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=longi_device_sn_callback,}, //设备ID(用于隆基主站上报)
|
||||||
|
{.idx=PARA_IDX_LONGI_PRODUCT_ID, .identity=0x00000038, .store_type=PARAM_ARRAY, .local_type=PARAM_ARRAY, .size=STABLE_PARAM_LONGI_PRODUCT_ID_SIZE, .offset=offsetof(stable_param_t, longi_product_id), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=longi_product_id_callback,}, //产品ID(用于隆基主站上报)
|
||||||
|
{.idx=PARA_IDX_SHANXI_CAPACITY, .identity=0x00000039, .store_type=PARAM_ARRAY, .local_type=PARAM_ARRAY, .size=STABLE_PARAM_SHANXI_CAPACITY_SIZE, .offset=offsetof(stable_param_t, shanxi_capacity), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=shanxi_capacity_callback,}, //光伏板装机容量(陕西)
|
||||||
|
{.idx=PARA_IDX_SHANXI_LONGITUDE, .identity=0x0000003A, .store_type=PARAM_ARRAY, .local_type=PARAM_ARRAY, .size=STABLE_PARAM_SHANXI_LONGITUDE_SIZE, .offset=offsetof(stable_param_t, shanxi_longitude), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=shanxi_longitude_callback,}, //设备经度(陕西)
|
||||||
|
{.idx=PARA_IDX_SHANXI_LATITUDE, .identity=0x0000003B, .store_type=PARAM_ARRAY, .local_type=PARAM_ARRAY, .size=STABLE_PARAM_SHANXI_LATITUDE_SIZE, .offset=offsetof(stable_param_t, shanxi_latitude), .ratio=1, .min=0, .max=0, .check_func=NULL, .update_func=shanxi_latitude_callback,}, //设备纬度(陕西)
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
param_info_table_t STABLE_PARAM_INFO =
|
||||||
|
{
|
||||||
|
#if ENABLE_PARAM_MUTEX
|
||||||
|
.ptr_mutex = &g_param_resouce.param_mutex,
|
||||||
|
#endif
|
||||||
|
.ptr_category_name = STABLE_REGION_NAME,
|
||||||
|
.ptr_default_value_table = (void*)&STABLE_PARAM_DEFAULT_VALUE_TABLE, //默认参数值
|
||||||
|
.ptr_index_table = (void*)STABLE_PARAM_INDEX_TABLE, //参数索引表
|
||||||
|
.param_num = STABLE_PARAM_NUM, //参数个数
|
||||||
|
.param_data_size = STABLE_PARAM_STORAGE_SIZE, //数据长度
|
||||||
|
.param_base_addr = STABLE_PARAM_STORE_ADDR, //参数存储页地址
|
||||||
|
#if ENABLE_PARAM_IN_RAM
|
||||||
|
#if ENABLE_PARAM_PRESET
|
||||||
|
.ptr_preset_dataset = (void*)&g_update_stable_param_info.preset_table,//预设参数表
|
||||||
|
#endif
|
||||||
|
.ptr_param_in_ram = (void*)&g_stable_param_in_ram, //参数ram缓冲区
|
||||||
|
.ptr_crc_in_ram = g_check_stable_param_crc, //参数crc校验值
|
||||||
|
#endif
|
||||||
|
.ptr_change_flag = g_stable_param_change_flag, //参数变更标记
|
||||||
|
.backup_offset = 1024, //备份之间的偏移
|
||||||
|
.idx_min = PARA_IDX_WORK_MODE_SVGC, //参数索引最小值
|
||||||
|
.idx_max = PARA_IDX_SHANXI_LATITUDE, //参数索引最大值
|
||||||
|
.ptr_exchange_unit = &g_param_resouce.ptr_param_unit_buff, //参数写入缓冲区
|
||||||
|
.exchange_size = 1024, //按页写入的缓冲区的大小
|
||||||
|
};
|
||||||
|
|
||||||
@@ -0,0 +1,106 @@
|
|||||||
|
/*
|
||||||
|
* =====================================================================================
|
||||||
|
*
|
||||||
|
* Filename: param_stable.h
|
||||||
|
*
|
||||||
|
* Description:
|
||||||
|
*
|
||||||
|
* Version: 1.0
|
||||||
|
* Created: 26/10/2024 17:20:06
|
||||||
|
* Revision: none
|
||||||
|
* Compiler: gcc
|
||||||
|
*
|
||||||
|
* Author: Autogenerated
|
||||||
|
* Organization: Topscomm
|
||||||
|
*
|
||||||
|
* =====================================================================================
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef __PARAM_STABLE_H__
|
||||||
|
#define __PARAM_STABLE_H__
|
||||||
|
|
||||||
|
#include <stdint.h>
|
||||||
|
|
||||||
|
#include "./param_config.h"
|
||||||
|
#include "../param_functional/param_block.h"
|
||||||
|
#include "./param_stable_defination.h"
|
||||||
|
|
||||||
|
#define STABLE_PARAM_STORE_ADDR (0)
|
||||||
|
|
||||||
|
|
||||||
|
#define STABLE_PARAM_WORK_MODE_SVGC_OFFSET 0
|
||||||
|
#define STABLE_PARAM_WORK_MODE_SVG_OFFSET (STABLE_PARAM_WORK_MODE_SVGC_OFFSET + STABLE_PARAM_WORK_MODE_SVGC_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_POWERON_MODE_OFFSET (STABLE_PARAM_WORK_MODE_SVG_OFFSET + STABLE_PARAM_WORK_MODE_SVG_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_POWER_ON_DELAY_OFFSET (STABLE_PARAM_POWERON_MODE_OFFSET + STABLE_PARAM_POWERON_MODE_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_POWER_ON_TIME_EN_OFFSET (STABLE_PARAM_POWER_ON_DELAY_OFFSET + STABLE_PARAM_POWER_ON_DELAY_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_POWER_ON_TIME_OFFSET (STABLE_PARAM_POWER_ON_TIME_EN_OFFSET + STABLE_PARAM_POWER_ON_TIME_EN_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_POWER_OFF_TIME_OFFSET (STABLE_PARAM_POWER_ON_TIME_OFFSET + STABLE_PARAM_POWER_ON_TIME_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_LOW_POWER_JUDGE_DELAY_OFFSET (STABLE_PARAM_POWER_OFF_TIME_OFFSET + STABLE_PARAM_POWER_OFF_TIME_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_LOW_POWER_JUDGE_DELAY_QUIT_OFFSET (STABLE_PARAM_LOW_POWER_JUDGE_DELAY_OFFSET + STABLE_PARAM_LOW_POWER_JUDGE_DELAY_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_AUTO_RESET_DELAY_OFFSET (STABLE_PARAM_LOW_POWER_JUDGE_DELAY_QUIT_OFFSET + STABLE_PARAM_LOW_POWER_JUDGE_DELAY_QUIT_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_DSP_WD_ENABLE_OFFSET (STABLE_PARAM_AUTO_RESET_DELAY_OFFSET + STABLE_PARAM_AUTO_RESET_DELAY_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_FREEZE_SAVE_PERIOD_OFFSET (STABLE_PARAM_DSP_WD_ENABLE_OFFSET + STABLE_PARAM_DSP_WD_ENABLE_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_RECORD_FRAME_EN_OFFSET (STABLE_PARAM_FREEZE_SAVE_PERIOD_OFFSET + STABLE_PARAM_FREEZE_SAVE_PERIOD_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_RECORD_FRAME_DIR_OFFSET (STABLE_PARAM_RECORD_FRAME_EN_OFFSET + STABLE_PARAM_RECORD_FRAME_EN_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_RECORD_FRAME_PORT_OFFSET (STABLE_PARAM_RECORD_FRAME_DIR_OFFSET + STABLE_PARAM_RECORD_FRAME_DIR_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_RECORD_ERR_LOG_EN_OFFSET (STABLE_PARAM_RECORD_FRAME_PORT_OFFSET + STABLE_PARAM_RECORD_FRAME_PORT_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_IMPD_DETE_EN_OFFSET (STABLE_PARAM_RECORD_ERR_LOG_EN_OFFSET + STABLE_PARAM_RECORD_ERR_LOG_EN_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_FAN_CTR_MODE_OFFSET (STABLE_PARAM_IMPD_DETE_EN_OFFSET + STABLE_PARAM_IMPD_DETE_EN_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_LEAK_CURRENT_MODE_OFFSET (STABLE_PARAM_FAN_CTR_MODE_OFFSET + STABLE_PARAM_FAN_CTR_MODE_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_SYS_DISCHARGE_START_PWR_OFFSET (STABLE_PARAM_LEAK_CURRENT_MODE_OFFSET + STABLE_PARAM_LEAK_CURRENT_MODE_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_ANTI_PID_EN_OFFSET (STABLE_PARAM_SYS_DISCHARGE_START_PWR_OFFSET + STABLE_PARAM_SYS_DISCHARGE_START_PWR_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_ANTI_PID_TIME_OFFSET (STABLE_PARAM_ANTI_PID_EN_OFFSET + STABLE_PARAM_ANTI_PID_EN_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_AUTO_RESTORE_DELAY_OFFSET (STABLE_PARAM_ANTI_PID_TIME_OFFSET + STABLE_PARAM_ANTI_PID_TIME_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_PLC_ENABLE_OFFSET (STABLE_PARAM_AUTO_RESTORE_DELAY_OFFSET + STABLE_PARAM_AUTO_RESTORE_DELAY_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_CONTROL_ENABLE_SHANXI_OFFSET (STABLE_PARAM_PLC_ENABLE_OFFSET + STABLE_PARAM_PLC_ENABLE_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_FAN_AUTO_CTRL_FACTOR_OFFSET (STABLE_PARAM_CONTROL_ENABLE_SHANXI_OFFSET + STABLE_PARAM_CONTROL_ENABLE_SHANXI_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_MANUAL_FAN_PWM_OFFSET (STABLE_PARAM_FAN_AUTO_CTRL_FACTOR_OFFSET + STABLE_PARAM_FAN_AUTO_CTRL_FACTOR_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_FAN_PWM_START_OFFSET (STABLE_PARAM_MANUAL_FAN_PWM_OFFSET + STABLE_PARAM_MANUAL_FAN_PWM_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_FAN_PWM_MAX_OFFSET (STABLE_PARAM_FAN_PWM_START_OFFSET + STABLE_PARAM_FAN_PWM_START_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_FAN_START_TEMP_OFFSET (STABLE_PARAM_FAN_PWM_MAX_OFFSET + STABLE_PARAM_FAN_PWM_MAX_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_FAN_MAX_TEMP_OFFSET (STABLE_PARAM_FAN_START_TEMP_OFFSET + STABLE_PARAM_FAN_START_TEMP_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_FAN_START_POWER_OFFSET (STABLE_PARAM_FAN_MAX_TEMP_OFFSET + STABLE_PARAM_FAN_MAX_TEMP_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_FAN_MAX_POWER_OFFSET (STABLE_PARAM_FAN_START_POWER_OFFSET + STABLE_PARAM_FAN_START_POWER_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_RESERVE_PARAM9_2_OFFSET (STABLE_PARAM_FAN_MAX_POWER_OFFSET + STABLE_PARAM_FAN_MAX_POWER_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_RESERVE_PARAM9_3_OFFSET (STABLE_PARAM_RESERVE_PARAM9_2_OFFSET + STABLE_PARAM_RESERVE_PARAM9_2_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_RESERVE_PARAM9_4_OFFSET (STABLE_PARAM_RESERVE_PARAM9_3_OFFSET + STABLE_PARAM_RESERVE_PARAM9_3_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_RESERVE_PARAM9_5_OFFSET (STABLE_PARAM_RESERVE_PARAM9_4_OFFSET + STABLE_PARAM_RESERVE_PARAM9_4_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_RESERVE_PARAM9_6_OFFSET (STABLE_PARAM_RESERVE_PARAM9_5_OFFSET + STABLE_PARAM_RESERVE_PARAM9_5_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_RESERVE_PARAM9_7_OFFSET (STABLE_PARAM_RESERVE_PARAM9_6_OFFSET + STABLE_PARAM_RESERVE_PARAM9_6_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_IMPD_FAULT_THRD_OFFSET (STABLE_PARAM_RESERVE_PARAM9_7_OFFSET + STABLE_PARAM_RESERVE_PARAM9_7_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_IMPD_DETECT_CLOSE_TIME_OFFSET (STABLE_PARAM_IMPD_FAULT_THRD_OFFSET + STABLE_PARAM_IMPD_FAULT_THRD_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_IMPD_DETECT_OPEN_TIME_OFFSET (STABLE_PARAM_IMPD_DETECT_CLOSE_TIME_OFFSET + STABLE_PARAM_IMPD_DETECT_CLOSE_TIME_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_FAN_SPEED_FAULT_THRD_OFFSET (STABLE_PARAM_IMPD_DETECT_OPEN_TIME_OFFSET + STABLE_PARAM_IMPD_DETECT_OPEN_TIME_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_LEAK_CUR_FAULT_THRD_OFFSET (STABLE_PARAM_FAN_SPEED_FAULT_THRD_OFFSET + STABLE_PARAM_FAN_SPEED_FAULT_THRD_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_RESERVE_PARAM1_1_OFFSET (STABLE_PARAM_LEAK_CUR_FAULT_THRD_OFFSET + STABLE_PARAM_LEAK_CUR_FAULT_THRD_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_OVER_TEMP_TIME_OFFSET (STABLE_PARAM_RESERVE_PARAM1_1_OFFSET + STABLE_PARAM_RESERVE_PARAM1_1_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_SELF_CHECK_TIME_OFFSET (STABLE_PARAM_OVER_TEMP_TIME_OFFSET + STABLE_PARAM_OVER_TEMP_TIME_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_INSU_BUS_VOLT_THD_OFFSET (STABLE_PARAM_SELF_CHECK_TIME_OFFSET + STABLE_PARAM_SELF_CHECK_TIME_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_INSU_RLY_VOLT_THD_OFFSET (STABLE_PARAM_INSU_BUS_VOLT_THD_OFFSET + STABLE_PARAM_INSU_BUS_VOLT_THD_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_LEAK_CURRENT_L3_MUTATION_THRESHOLD_MA_OFFSET (STABLE_PARAM_INSU_RLY_VOLT_THD_OFFSET + STABLE_PARAM_INSU_RLY_VOLT_THD_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_LEAK_CURRENT_SLOW_THRESHOLD_MA_OFFSET (STABLE_PARAM_LEAK_CURRENT_L3_MUTATION_THRESHOLD_MA_OFFSET + STABLE_PARAM_LEAK_CURRENT_L3_MUTATION_THRESHOLD_MA_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_LEAK_CURRENT_SLOW_TIME_MS_OFFSET (STABLE_PARAM_LEAK_CURRENT_SLOW_THRESHOLD_MA_OFFSET + STABLE_PARAM_LEAK_CURRENT_SLOW_THRESHOLD_MA_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_LEAK_CURRENT_L1_MUTATION_THRESHOLD_MA_OFFSET (STABLE_PARAM_LEAK_CURRENT_SLOW_TIME_MS_OFFSET + STABLE_PARAM_LEAK_CURRENT_SLOW_TIME_MS_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_LEAK_CURRENT_L2_MUTATION_THRESHOLD_MA_OFFSET (STABLE_PARAM_LEAK_CURRENT_L1_MUTATION_THRESHOLD_MA_OFFSET + STABLE_PARAM_LEAK_CURRENT_L1_MUTATION_THRESHOLD_MA_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_LONGI_DEVICE_SN_OFFSET (STABLE_PARAM_LEAK_CURRENT_L2_MUTATION_THRESHOLD_MA_OFFSET + STABLE_PARAM_LEAK_CURRENT_L2_MUTATION_THRESHOLD_MA_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_LONGI_PRODUCT_ID_OFFSET (STABLE_PARAM_LONGI_DEVICE_SN_OFFSET + STABLE_PARAM_LONGI_DEVICE_SN_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_SHANXI_CAPACITY_OFFSET (STABLE_PARAM_LONGI_PRODUCT_ID_OFFSET + STABLE_PARAM_LONGI_PRODUCT_ID_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_SHANXI_LONGITUDE_OFFSET (STABLE_PARAM_SHANXI_CAPACITY_OFFSET + STABLE_PARAM_SHANXI_CAPACITY_SIZE + PARAM_INFO_SIZE)
|
||||||
|
#define STABLE_PARAM_SHANXI_LATITUDE_OFFSET (STABLE_PARAM_SHANXI_LONGITUDE_OFFSET + STABLE_PARAM_SHANXI_LONGITUDE_SIZE + PARAM_INFO_SIZE)
|
||||||
|
|
||||||
|
#define STABLE_PARAM_STORAGE_SIZE (STABLE_PARAM_SHANXI_LATITUDE_OFFSET + STABLE_PARAM_SHANXI_LATITUDE_SIZE + PARAM_INFO_SIZE)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#if ENABLE_PARAM_IN_RAM
|
||||||
|
#if ENABLE_PARAM_PRESET
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
stable_param_t preset_table;
|
||||||
|
} update_stable_param_t;
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
extern param_info_table_t STABLE_PARAM_INFO;
|
||||||
|
|
||||||
|
#endif /* ----- #ifndef __PARAM_STABLE_H__ ----- */
|
||||||
@@ -0,0 +1,154 @@
|
|||||||
|
/*
|
||||||
|
* =====================================================================================
|
||||||
|
*
|
||||||
|
* Filename: param_stable_defination.h
|
||||||
|
*
|
||||||
|
* Description:
|
||||||
|
*
|
||||||
|
* Version: 1.0
|
||||||
|
* Created: 26/10/2024 17:20:06
|
||||||
|
* Revision: none
|
||||||
|
* Compiler: gcc
|
||||||
|
*
|
||||||
|
* Author: Autogenerated
|
||||||
|
* Organization: Topscomm
|
||||||
|
*
|
||||||
|
* =====================================================================================
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef __PARAM_STABLE_DEFINATION_H__
|
||||||
|
#define __PARAM_STABLE_DEFINATION_H__
|
||||||
|
|
||||||
|
#include <stdint.h>
|
||||||
|
#include <stddef.h>
|
||||||
|
|
||||||
|
|
||||||
|
#define STABLE_PARAM_NUM (59)
|
||||||
|
|
||||||
|
|
||||||
|
#define STABLE_PARAM_WORK_MODE_SVGC_SIZE (sizeof(uint8_t))
|
||||||
|
#define STABLE_PARAM_WORK_MODE_SVG_SIZE (sizeof(uint8_t))
|
||||||
|
#define STABLE_PARAM_POWERON_MODE_SIZE (sizeof(uint8_t))
|
||||||
|
#define STABLE_PARAM_POWER_ON_DELAY_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_POWER_ON_TIME_EN_SIZE (sizeof(uint8_t))
|
||||||
|
#define STABLE_PARAM_POWER_ON_TIME_SIZE (6)
|
||||||
|
#define STABLE_PARAM_POWER_OFF_TIME_SIZE (6)
|
||||||
|
#define STABLE_PARAM_LOW_POWER_JUDGE_DELAY_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_LOW_POWER_JUDGE_DELAY_QUIT_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_AUTO_RESET_DELAY_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_DSP_WD_ENABLE_SIZE (sizeof(uint8_t))
|
||||||
|
#define STABLE_PARAM_FREEZE_SAVE_PERIOD_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_RECORD_FRAME_EN_SIZE (sizeof(uint8_t))
|
||||||
|
#define STABLE_PARAM_RECORD_FRAME_DIR_SIZE (sizeof(uint8_t))
|
||||||
|
#define STABLE_PARAM_RECORD_FRAME_PORT_SIZE (sizeof(uint8_t))
|
||||||
|
#define STABLE_PARAM_RECORD_ERR_LOG_EN_SIZE (sizeof(uint8_t))
|
||||||
|
#define STABLE_PARAM_IMPD_DETE_EN_SIZE (sizeof(uint8_t))
|
||||||
|
#define STABLE_PARAM_FAN_CTR_MODE_SIZE (sizeof(uint8_t))
|
||||||
|
#define STABLE_PARAM_LEAK_CURRENT_MODE_SIZE (sizeof(uint8_t))
|
||||||
|
#define STABLE_PARAM_SYS_DISCHARGE_START_PWR_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_ANTI_PID_EN_SIZE (sizeof(uint8_t))
|
||||||
|
#define STABLE_PARAM_ANTI_PID_TIME_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_AUTO_RESTORE_DELAY_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_PLC_ENABLE_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_CONTROL_ENABLE_SHANXI_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_FAN_AUTO_CTRL_FACTOR_SIZE (sizeof(uint8_t))
|
||||||
|
#define STABLE_PARAM_MANUAL_FAN_PWM_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_FAN_PWM_START_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_FAN_PWM_MAX_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_FAN_START_TEMP_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_FAN_MAX_TEMP_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_FAN_START_POWER_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_FAN_MAX_POWER_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_RESERVE_PARAM9_2_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_RESERVE_PARAM9_3_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_RESERVE_PARAM9_4_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_RESERVE_PARAM9_5_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_RESERVE_PARAM9_6_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_RESERVE_PARAM9_7_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_IMPD_FAULT_THRD_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_IMPD_DETECT_CLOSE_TIME_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_IMPD_DETECT_OPEN_TIME_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_FAN_SPEED_FAULT_THRD_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_LEAK_CUR_FAULT_THRD_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_RESERVE_PARAM1_1_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_OVER_TEMP_TIME_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_SELF_CHECK_TIME_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_INSU_BUS_VOLT_THD_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_INSU_RLY_VOLT_THD_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_LEAK_CURRENT_L3_MUTATION_THRESHOLD_MA_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_LEAK_CURRENT_SLOW_THRESHOLD_MA_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_LEAK_CURRENT_SLOW_TIME_MS_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_LEAK_CURRENT_L1_MUTATION_THRESHOLD_MA_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_LEAK_CURRENT_L2_MUTATION_THRESHOLD_MA_SIZE (sizeof(uint16_t))
|
||||||
|
#define STABLE_PARAM_LONGI_DEVICE_SN_SIZE (64)
|
||||||
|
#define STABLE_PARAM_LONGI_PRODUCT_ID_SIZE (64)
|
||||||
|
#define STABLE_PARAM_SHANXI_CAPACITY_SIZE (4)
|
||||||
|
#define STABLE_PARAM_SHANXI_LONGITUDE_SIZE (10)
|
||||||
|
#define STABLE_PARAM_SHANXI_LATITUDE_SIZE (8)
|
||||||
|
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
uint8_t work_mode_svgc; /* 工作模式 */
|
||||||
|
uint8_t work_mode_svg; /* 补偿模式选择 */
|
||||||
|
uint8_t poweron_mode; /* 开机模式 */
|
||||||
|
uint16_t power_on_delay; /* 自动开机延时 */
|
||||||
|
uint8_t power_on_time_en; /* 定时开关机使能 */
|
||||||
|
uint8_t power_on_time[STABLE_PARAM_POWER_ON_TIME_SIZE]; /* 定时开机时间 */
|
||||||
|
uint8_t power_off_time[STABLE_PARAM_POWER_OFF_TIME_SIZE]; /* 定时关机时间 */
|
||||||
|
uint16_t low_power_judge_delay; /* 低功耗判断延时 */
|
||||||
|
uint16_t low_power_judge_delay_quit; /* 退出低功耗判断延时 */
|
||||||
|
uint16_t auto_reset_delay; /* 自动复位延时 */
|
||||||
|
uint8_t dsp_wd_enable; /* DSP看门狗复位使能 */
|
||||||
|
uint16_t freeze_save_period; /* 分钟冻结周期 */
|
||||||
|
uint8_t record_frame_en; /* 报文记录使能 */
|
||||||
|
uint8_t record_frame_dir; /* 报文记录方向 */
|
||||||
|
uint8_t record_frame_port; /* 报文记录端口 */
|
||||||
|
uint8_t record_err_log_en; /* 错误打印记录使能 */
|
||||||
|
uint8_t impd_dete_en; /* 绝缘阻值检测使能 */
|
||||||
|
uint8_t fan_ctr_mode; /* 风扇控制模式 */
|
||||||
|
uint8_t leak_current_mode; /* 漏电流模式 */
|
||||||
|
uint16_t sys_discharge_start_pwr; /* 放电起始功率 */
|
||||||
|
uint8_t anti_pid_en; /* 抗PID使能 */
|
||||||
|
uint16_t anti_pid_time; /* 抗PID启动时间 */
|
||||||
|
uint16_t auto_restore_delay; /* 自动清除故障模式 */
|
||||||
|
uint16_t plc_enable; /* 交流载波使能 */
|
||||||
|
uint16_t control_enable_shanxi; /* 逆变器控制使能 */
|
||||||
|
uint8_t fan_auto_ctrl_factor; /* 风扇自动控制因素 */
|
||||||
|
uint16_t manual_fan_pwm; /* 手动风扇占空比 */
|
||||||
|
uint16_t fan_pwm_start; /* 风扇启动占空比 */
|
||||||
|
uint16_t fan_pwm_max; /* 风扇最大占空比 */
|
||||||
|
uint16_t fan_start_temp; /* 风扇启动温度 */
|
||||||
|
uint16_t fan_max_temp; /* 风扇满速温度 */
|
||||||
|
uint16_t fan_start_power; /* 风扇启动功率(额定值%) */
|
||||||
|
uint16_t fan_max_power; /* 风扇满速功率(额定值%) */
|
||||||
|
uint16_t reserve_param9_2; /* 幅值参考预留2 */
|
||||||
|
uint16_t reserve_param9_3; /* 幅值参考预留3 */
|
||||||
|
uint16_t reserve_param9_4; /* 幅值参考预留4 */
|
||||||
|
uint16_t reserve_param9_5; /* 幅值参考预留5 */
|
||||||
|
uint16_t reserve_param9_6; /* 幅值参考预留6 */
|
||||||
|
uint16_t reserve_param9_7; /* 幅值参考预留7 */
|
||||||
|
uint16_t impd_fault_thrd; /* 绝缘阻值故障阈值 */
|
||||||
|
uint16_t impd_detect_close_time; /* 绝缘检测闭合时间 */
|
||||||
|
uint16_t impd_detect_open_time; /* 绝缘检测断开时间 */
|
||||||
|
uint16_t fan_speed_fault_thrd; /* 风扇故障转速阈值 */
|
||||||
|
uint16_t leak_cur_fault_thrd; /* 漏电流故障阈值 */
|
||||||
|
uint16_t reserve_param1_1; /* 阈值参考预留1 */
|
||||||
|
uint16_t over_temp_time; /* 过温判定时间 */
|
||||||
|
uint16_t self_check_time; /* 自检超时判定时间 */
|
||||||
|
uint16_t insu_bus_volt_thd; /* 绝缘检测母线电压阈值 */
|
||||||
|
uint16_t insu_rly_volt_thd; /* 绝缘检测继电器电压阈值 */
|
||||||
|
uint16_t leak_current_L3_mutation_threshold_mA; /* 漏电流3级突变触发阈值 */
|
||||||
|
uint16_t leak_current_slow_threshold_mA; /* 漏电流缓变动作阈值 */
|
||||||
|
uint16_t leak_current_slow_time_ms; /* 漏电流缓变时间阈值 */
|
||||||
|
uint16_t leak_current_L1_mutation_threshold_mA; /* 漏电流1级突变触发阈值 */
|
||||||
|
uint16_t leak_current_L2_mutation_threshold_mA; /* 漏电流2级突变触发阈值 */
|
||||||
|
uint8_t longi_device_sn[STABLE_PARAM_LONGI_DEVICE_SN_SIZE]; /* 设备ID(用于隆基主站上报) */
|
||||||
|
uint8_t longi_product_id[STABLE_PARAM_LONGI_PRODUCT_ID_SIZE]; /* 产品ID(用于隆基主站上报) */
|
||||||
|
uint8_t shanxi_capacity[STABLE_PARAM_SHANXI_CAPACITY_SIZE]; /* 光伏板装机容量(陕西) */
|
||||||
|
uint8_t shanxi_longitude[STABLE_PARAM_SHANXI_LONGITUDE_SIZE]; /* 设备经度(陕西) */
|
||||||
|
uint8_t shanxi_latitude[STABLE_PARAM_SHANXI_LATITUDE_SIZE]; /* 设备纬度(陕西) */
|
||||||
|
} stable_param_t;
|
||||||
|
|
||||||
|
|
||||||
|
#endif /* ----- #ifndef __PARAM_STABLE_DEFINATION_H__ ----- */
|
||||||
@@ -0,0 +1,100 @@
|
|||||||
|
/*
|
||||||
|
* =====================================================================================
|
||||||
|
*
|
||||||
|
* Filename: param_storage_config.c
|
||||||
|
*
|
||||||
|
* Description:
|
||||||
|
*
|
||||||
|
* Version: 1.0
|
||||||
|
* Created: 26/10/2024 17:20:06
|
||||||
|
* Revision: none
|
||||||
|
* Compiler: gcc
|
||||||
|
*
|
||||||
|
* Author: Autogenerated
|
||||||
|
* Organization: Topscomm
|
||||||
|
*
|
||||||
|
* =====================================================================================
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "../param_storage/norflash_operation.h"
|
||||||
|
#include "../param_storage/eeprom_operation.h"
|
||||||
|
#include "../param_storage/file_system_operation.h"
|
||||||
|
#include "../param_storage/param_storage.h"
|
||||||
|
|
||||||
|
#if FILE_SYSTEM_EXIST
|
||||||
|
const char g_param_file_path_prefix[FILE_NAME_MAX_LEN]="None"; /*存放参数文件的路径前缀*/
|
||||||
|
|
||||||
|
#define FILE_MAX_LEN (1024*3) /*文件最大长度*/
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* ##### VARIABLES - LOCAL TO THIS SOURCE FILE ################################ */
|
||||||
|
|
||||||
|
|
||||||
|
static const storage_info_t all_storage_info_table[PARAM_CATEGORY_MAX] =
|
||||||
|
{
|
||||||
|
/* STABLE */
|
||||||
|
{
|
||||||
|
.ptr_name = STABLE_REGION_NAME,
|
||||||
|
.region = STABLE_PARAM,
|
||||||
|
#if FILE_SYSTEM_EXIST
|
||||||
|
.max_addr = 0+FILE_MAX_LEN - 1,
|
||||||
|
.min_addr = 0,
|
||||||
|
#else
|
||||||
|
.max_addr = 0+1024*3 - 1,
|
||||||
|
.min_addr = 0,
|
||||||
|
#endif
|
||||||
|
|
||||||
|
.storage_read = norflash_read,
|
||||||
|
.storage_write = norflash_write,
|
||||||
|
.storage_clean = norflash_clean,
|
||||||
|
},
|
||||||
|
/* COMM */
|
||||||
|
{
|
||||||
|
.ptr_name = COMM_REGION_NAME,
|
||||||
|
.region = COMM_PARAM,
|
||||||
|
#if FILE_SYSTEM_EXIST
|
||||||
|
.max_addr = 0+FILE_MAX_LEN - 1,
|
||||||
|
.min_addr = 0,
|
||||||
|
#else
|
||||||
|
.max_addr = 4096+1024*3 - 1,
|
||||||
|
.min_addr = 4096,
|
||||||
|
#endif
|
||||||
|
|
||||||
|
.storage_read = norflash_read,
|
||||||
|
.storage_write = norflash_write,
|
||||||
|
.storage_clean = norflash_clean,
|
||||||
|
},
|
||||||
|
/* PRODUCE */
|
||||||
|
{
|
||||||
|
.ptr_name = PRODUCE_REGION_NAME,
|
||||||
|
.region = PRODUCE_PARAM,
|
||||||
|
#if FILE_SYSTEM_EXIST
|
||||||
|
.max_addr = 0+FILE_MAX_LEN - 1,
|
||||||
|
.min_addr = 0,
|
||||||
|
#else
|
||||||
|
.max_addr = 8192+1024*3 - 1,
|
||||||
|
.min_addr = 8192,
|
||||||
|
#endif
|
||||||
|
|
||||||
|
.storage_read = norflash_read,
|
||||||
|
.storage_write = norflash_write,
|
||||||
|
.storage_clean = norflash_clean,
|
||||||
|
},
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
/* ##### FUNCTION DEFINITIONS - EXPORTED FUNCTIONS ############################ */
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* === FUNCTION ======================================================================
|
||||||
|
* Name: param_storage_get_info_table
|
||||||
|
* Description: 获取所有存储区域的汇总表,用于对存储区域进行检索
|
||||||
|
* =====================================================================================
|
||||||
|
*/
|
||||||
|
const storage_info_t* param_storage_get_info_table()
|
||||||
|
{
|
||||||
|
return &all_storage_info_table[0];
|
||||||
|
} /* ----- end of function param_storage_get_info_table ----- */
|
||||||
|
|
||||||
BIN
test/CBB_Param/param_input.xlsx
Normal file
BIN
test/CBB_Param/param_input.xlsx
Normal file
Binary file not shown.
264
test/PV_Inverter/arm/mw_param_manager_arm_struct.c
Normal file
264
test/PV_Inverter/arm/mw_param_manager_arm_struct.c
Normal file
@@ -0,0 +1,264 @@
|
|||||||
|
#include <limits.h>
|
||||||
|
#include "project.h"
|
||||||
|
#include "mw_param_manager_arm_struct.h"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
const modbus_param_value_info_t s_ast_param_range[MAX_VALID_PARAM_ADDRESS + 1] =
|
||||||
|
{
|
||||||
|
/*address, datatype, default_value, min_value, max_value*/
|
||||||
|
{0, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{1, DATATYPE_UINT16_T, 0, 0, 65535, }, /*设备MES码*/
|
||||||
|
{2, DATATYPE_UINT16_T, 0, 0, 65535, }, /*设备MES码*/
|
||||||
|
{3, DATATYPE_UINT16_T, 0, 0, 65535, }, /*设备MES码*/
|
||||||
|
{4, DATATYPE_UINT16_T, 0, 0, 65535, }, /*设备MES码*/
|
||||||
|
{5, DATATYPE_UINT16_T, 0, 0, 65535, }, /*12位出厂编号*/
|
||||||
|
{6, DATATYPE_UINT16_T, 0, 0, 65535, }, /*12位出厂编号*/
|
||||||
|
{7, DATATYPE_UINT16_T, 1, 0, 65535, }, /*12位出厂编号*/
|
||||||
|
{8, DATATYPE_UINT16_T, 0, 0, 65535, }, /*板级生产检测结果*/
|
||||||
|
{9, DATATYPE_UINT16_T, 0, 0, 1, }, /*工厂整机测试结果*/
|
||||||
|
{10, DATATYPE_UINT16_T, 0, 0, 65535, }, /*硬件组件号*/
|
||||||
|
{11, DATATYPE_UINT16_T, 0, 0, 65535, }, /*硬件组件号*/
|
||||||
|
{12, DATATYPE_UINT16_T, 0, 0, 65535, }, /*硬件组件号*/
|
||||||
|
{13, DATATYPE_UINT16_T, 0, 0, 65535, }, /*行政区域码*/
|
||||||
|
{14, DATATYPE_UINT16_T, 0, 0, 65535, }, /*终端地址*/
|
||||||
|
{15, DATATYPE_UINT16_T, 0, 0, 3, }, /*对外串口波特率*/
|
||||||
|
{16, DATATYPE_UINT16_T, 0, 0, 1, }, /*载波协议类型*/
|
||||||
|
{17, DATATYPE_UINT16_T, 0, 0, 1, }, /*645协议版本*/
|
||||||
|
{18, DATATYPE_UINT16_T, 0, 0, 65535, }, /*0级密码*/
|
||||||
|
{19, DATATYPE_UINT16_T, 0, 0, 65535, }, /*0级密码*/
|
||||||
|
{20, DATATYPE_UINT16_T, 0, 0, 65535, }, /*1级密码*/
|
||||||
|
{21, DATATYPE_UINT16_T, 0, 0, 65535, }, /*1级密码*/
|
||||||
|
{22, DATATYPE_UINT16_T, 0, 0, 65535, }, /*2级密码*/
|
||||||
|
{23, DATATYPE_UINT16_T, 0, 0, 65535, }, /*2级密码*/
|
||||||
|
{24, DATATYPE_UINT16_T, 0, 0, 65535, }, /*户号*/
|
||||||
|
{25, DATATYPE_UINT16_T, 0, 0, 65535, }, /*户号*/
|
||||||
|
{26, DATATYPE_UINT16_T, 0, 0, 65535, }, /*户号*/
|
||||||
|
{27, DATATYPE_UINT16_T, 0, 0, 65535, }, /*虚拟电厂编号*/
|
||||||
|
{28, DATATYPE_UINT16_T, 0, 0, 65535, }, /*虚拟电厂编号*/
|
||||||
|
{29, DATATYPE_UINT16_T, 0, 0, 65535, }, /*虚拟电厂编号*/
|
||||||
|
{30, DATATYPE_UINT16_T, 2028, 1800, 2200, }, /*漏电流直流偏置AD值*/
|
||||||
|
{31, DATATYPE_UINT16_T, 6250, 1, 65535, }, /*漏电流校准系数*/
|
||||||
|
{32, DATATYPE_UINT16_T, 0, 0, 65535, }, /*国网地址*/
|
||||||
|
{33, DATATYPE_UINT16_T, 0, 0, 65535, }, /*国网地址*/
|
||||||
|
{34, DATATYPE_UINT16_T, 0, 0, 65535, }, /*国网地址*/
|
||||||
|
{35, DATATYPE_UINT16_T, 0, 0, 65535, }, /*国网地址*/
|
||||||
|
{36, DATATYPE_UINT16_T, 0, 0, 65535, }, /*国网地址*/
|
||||||
|
{37, DATATYPE_UINT16_T, 0, 0, 65535, }, /*国网地址*/
|
||||||
|
{38, DATATYPE_UINT16_T, 0, 0, 65535, }, /*表号(ESAM用)*/
|
||||||
|
{39, DATATYPE_UINT16_T, 0, 0, 65535, }, /*表号(ESAM用)*/
|
||||||
|
{40, DATATYPE_UINT16_T, 0, 0, 65535, }, /*表号(ESAM用)*/
|
||||||
|
{41, DATATYPE_UINT16_T, 0, 0, 65535, }, /*表号(ESAM用)*/
|
||||||
|
{42, DATATYPE_UINT16_T, 0, 0, 65535, }, /*表号(ESAM用)*/
|
||||||
|
{43, DATATYPE_UINT16_T, 0, 0, 65535, }, /*表号(ESAM用)*/
|
||||||
|
#if defined(PV_INV30)
|
||||||
|
{44, DATATYPE_UINT16_T, 50, 0, 300, }, /*漏电流内部参考值*/
|
||||||
|
#elif defined(PV_INV40)
|
||||||
|
{44, DATATYPE_UINT16_T, 65, 0, 300, }, /*漏电流内部参考值*/
|
||||||
|
#elif defined(PV_INV50)
|
||||||
|
{44, DATATYPE_UINT16_T, 65, 0, 300, }, /*漏电流内部参考值*/
|
||||||
|
#else
|
||||||
|
{44, DATATYPE_UINT16_T, 0, 0, 0 }, /*漏电流内部参考值*/
|
||||||
|
#endif
|
||||||
|
{45, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{46, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{47, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{48, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{49, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{50, DATATYPE_UINT16_T, 0, 0, 1, }, /*设备开机*/
|
||||||
|
{51, DATATYPE_UINT16_T, 0, 0, 1, }, /*设备关机*/
|
||||||
|
{52, DATATYPE_UINT16_T, 0, 0, 1, }, /*故障复位*/
|
||||||
|
{53, DATATYPE_UINT16_T, 0, 0, 1, }, /*解锁特殊操作*/
|
||||||
|
{54, DATATYPE_UINT16_T, 0, 0, 1, }, /*设备重启*/
|
||||||
|
{55, DATATYPE_UINT16_T, 0, 0, 1, }, /*功率单元自检(调试)*/
|
||||||
|
{56, DATATYPE_UINT16_T, 0, 0, 1, }, /*功率单元重启*/
|
||||||
|
{57, DATATYPE_UINT16_T, 0, 0, 1, }, /*功率单元强制复位*/
|
||||||
|
{58, DATATYPE_UINT16_T, 0, 0, 1, }, /*参数还原*/
|
||||||
|
{59, DATATYPE_UINT16_T, 0, 0, 1, }, /*复位4G*/
|
||||||
|
{60, DATATYPE_UINT16_T, 0, 0, 1, }, /*直流载波复位*/
|
||||||
|
{61, DATATYPE_UINT16_T, 0, 0, 1, }, /*交流载波复位*/
|
||||||
|
{62, DATATYPE_UINT16_T, 0, 0, 1, }, /*手动录波*/
|
||||||
|
{63, DATATYPE_UINT16_T, 0, 0, 1, }, /*所有记录数据擦除*/
|
||||||
|
{64, DATATYPE_UINT16_T, 0, 0, 1, }, /*录波擦除*/
|
||||||
|
{65, DATATYPE_UINT16_T, 0, 0, 1, }, /*事件擦除*/
|
||||||
|
{66, DATATYPE_UINT16_T, 0, 0, 1, }, /*日志记录擦除*/
|
||||||
|
{67, DATATYPE_UINT16_T, 0, 0, 1, }, /*分钟冻结数据擦除*/
|
||||||
|
{68, DATATYPE_UINT16_T, 0, 0, 1, }, /*日冻结数据擦除*/
|
||||||
|
{69, DATATYPE_UINT16_T, 0, 0, 1, }, /*月冻结数据擦除*/
|
||||||
|
{70, DATATYPE_UINT16_T, 0, 0, 1, }, /*年冻结数据擦除*/
|
||||||
|
{71, DATATYPE_UINT16_T, 0, 0, 1, }, /*报文记录数据擦除*/
|
||||||
|
{72, DATATYPE_UINT16_T, 0, 0, 1, }, /*操作记录数据擦除*/
|
||||||
|
{73, DATATYPE_UINT16_T, 0, 0, 1, }, /*电量记录数据擦除*/
|
||||||
|
{74, DATATYPE_UINT16_T, 0, 0, 1, }, /*打印开关*/
|
||||||
|
{75, DATATYPE_UINT16_T, 0, 0, 1, }, /*漏电流校准直流量(按钮)*/
|
||||||
|
{76, DATATYPE_UINT16_T, 0, 0, 1, }, /*漏电流校准系数(按钮)*/
|
||||||
|
{77, DATATYPE_UINT16_T, 0, 0, 1, }, /*漏电流自检(按钮)*/
|
||||||
|
{78, DATATYPE_UINT16_T, 0, 0, 1, }, /*恢复出厂设置*/
|
||||||
|
{79, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{80, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{81, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{82, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{83, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{84, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{85, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{86, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{87, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{88, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{89, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{90, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{91, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{92, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{93, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{94, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{95, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{96, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{97, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{98, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{99, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{100, DATATYPE_UINT16_T, 0, 0, 2, }, /*工作模式*/
|
||||||
|
{101, DATATYPE_UINT16_T, 0, 0, 1, }, /*补偿模式选择*/
|
||||||
|
{102, DATATYPE_UINT16_T, 0, 0, 1, }, /*开机模式*/
|
||||||
|
{103, DATATYPE_UINT16_T, 15, 0, 3600, }, /*自动开机延时*/
|
||||||
|
{104, DATATYPE_UINT16_T, 0, 0, 1, }, /*定时开关机使能*/
|
||||||
|
{105, DATATYPE_UINT16_T, 0, 0, 23, }, /*定时开机时间*/
|
||||||
|
{106, DATATYPE_UINT16_T, 0, 0, 59, }, /*定时开机时间*/
|
||||||
|
{107, DATATYPE_UINT16_T, 0, 0, 59, }, /*定时开机时间*/
|
||||||
|
{108, DATATYPE_UINT16_T, 0, 0, 23, }, /*定时关机时间*/
|
||||||
|
{109, DATATYPE_UINT16_T, 0, 0, 59, }, /*定时关机时间*/
|
||||||
|
{110, DATATYPE_UINT16_T, 0, 0, 59, }, /*定时关机时间*/
|
||||||
|
{111, DATATYPE_UINT16_T, 300, 0, 65535, }, /*低功耗判断延时*/
|
||||||
|
{112, DATATYPE_UINT16_T, 10, 0, 65535, }, /*退出低功耗判断延时*/
|
||||||
|
{113, DATATYPE_UINT16_T, 180, 0, 65535, }, /*自动复位延时*/
|
||||||
|
{114, DATATYPE_UINT16_T, 0, 0, 65535, }, /*DSP看门狗复位使能*/
|
||||||
|
{115, DATATYPE_UINT16_T, 5, 1, 15, }, /*分钟冻结周期*/
|
||||||
|
{116, DATATYPE_UINT16_T, 0, 0, 3, }, /*报文记录使能*/
|
||||||
|
{117, DATATYPE_UINT16_T, 0, 0, 2, }, /*报文记录方向*/
|
||||||
|
{118, DATATYPE_UINT16_T, 0, 0, 11, }, /*报文记录端口*/
|
||||||
|
{119, DATATYPE_UINT16_T, 0, 0, 1, }, /*错误打印记录使能*/
|
||||||
|
{120, DATATYPE_UINT16_T, 1, 0, 1, }, /*绝缘阻值检测使能*/
|
||||||
|
{121, DATATYPE_UINT16_T, 0, 0, 1, }, /*风扇控制模式*/
|
||||||
|
{122, DATATYPE_UINT16_T, 3, 0, 3, }, /*漏电流模式*/
|
||||||
|
{123, DATATYPE_UINT16_T, 20, 0, 65535, }, /*放电起始功率*/
|
||||||
|
{124, DATATYPE_UINT16_T, 0, 0, 1, }, /*抗PID使能*/
|
||||||
|
{125, DATATYPE_UINT16_T, 120, 30, 1200, }, /*抗PID启动时间*/
|
||||||
|
{126, DATATYPE_UINT16_T, 15, 0, 15, }, /*自动清除故障模式*/
|
||||||
|
{127, DATATYPE_UINT16_T, 0, 0, 1, }, /*交流载波使能*/
|
||||||
|
{128, DATATYPE_UINT16_T, 0, 0, 1, }, /*逆变器控制使能*/
|
||||||
|
{129, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{130, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{131, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{132, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{133, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{134, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{135, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{136, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{137, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{138, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{139, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{140, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{141, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{142, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{143, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{144, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{145, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{146, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{147, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{148, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{149, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{150, DATATYPE_UINT16_T, 37851, 0, 65535, }, /*主站IP*/
|
||||||
|
{151, DATATYPE_UINT16_T, 15898, 0, 65535, }, /*主站IP*/
|
||||||
|
{152, DATATYPE_UINT16_T, 5223, 0, 65535, }, /*主站端口号*/
|
||||||
|
{153, DATATYPE_UINT16_T, 10, 0, 65535, }, /*4G交互周期*/
|
||||||
|
{154, DATATYPE_UINT16_T, 600, 0, 65535, }, /*4G通信超时阈值*/
|
||||||
|
{155, DATATYPE_UINT16_T, 0, 0, 1, }, /*CAN使能*/
|
||||||
|
{156, DATATYPE_UINT16_T, 0, 0, 5, }, /*CAN并机ID*/
|
||||||
|
{157, DATATYPE_UINT16_T, 0, 0, 5, }, /*CAN并机数量*/
|
||||||
|
{158, DATATYPE_UINT16_T, 180, 0, 3600, }, /*通信故障判定时间*/
|
||||||
|
{159, DATATYPE_UINT16_T, 1440, 1, 65535, }, /*载波通信超时判断周期*/
|
||||||
|
{160, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{161, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{162, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{163, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{164, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{165, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{166, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{167, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{168, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{169, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{170, DATATYPE_UINT16_T, 0, 0, 2, }, /*风扇自动控制因素*/
|
||||||
|
{171, DATATYPE_UINT16_T, 95, 0, 100, }, /*手动风扇占空比*/
|
||||||
|
{172, DATATYPE_UINT16_T, 35, 10, 50, }, /*风扇启动占空比*/
|
||||||
|
{173, DATATYPE_UINT16_T, 100, 51, 100, }, /*风扇最大占空比*/
|
||||||
|
{174, DATATYPE_UINT16_T, 45, 10, 150, }, /*风扇启动温度*/
|
||||||
|
{175, DATATYPE_UINT16_T, 55, 30, 150, }, /*风扇满速温度*/
|
||||||
|
{176, DATATYPE_UINT16_T, 33, 0, 100, }, /*风扇启动功率(额定值%)*/
|
||||||
|
{177, DATATYPE_UINT16_T, 67, 0, 100, }, /*风扇满速功率(额定值%)*/
|
||||||
|
{178, DATATYPE_UINT16_T, 42016, 1, 65535, }, /*幅值参考预留1*/
|
||||||
|
{179, DATATYPE_UINT16_T, 0, 0, 65535, }, /*幅值参考预留2*/
|
||||||
|
{180, DATATYPE_UINT16_T, 0, 0, 65535, }, /*幅值参考预留3*/
|
||||||
|
{181, DATATYPE_UINT16_T, 0, 0, 65535, }, /*幅值参考预留4*/
|
||||||
|
{182, DATATYPE_UINT16_T, 0, 0, 65535, }, /*幅值参考预留5*/
|
||||||
|
{183, DATATYPE_UINT16_T, 0, 0, 65535, }, /*幅值参考预留6*/
|
||||||
|
{184, DATATYPE_UINT16_T, 0, 0, 65535, }, /*幅值参考预留7*/
|
||||||
|
{185, DATATYPE_UINT16_T, 180, 0, 65535, }, /*绝缘阻值故障阈值*/
|
||||||
|
{186, DATATYPE_UINT16_T, 1500, 0, 65535, }, /*绝缘检测闭合时间*/
|
||||||
|
{187, DATATYPE_UINT16_T, 5000, 0, 65535, }, /*绝缘检测断开时间*/
|
||||||
|
{188, DATATYPE_UINT16_T, 2000, 0, 65535, }, /*风扇故障转速阈值*/
|
||||||
|
{189, DATATYPE_UINT16_T, 200, 0, 65535, }, /*漏电流故障阈值*/
|
||||||
|
{190, DATATYPE_UINT16_T, 110, 0, 65535, }, /*阈值参考预留1*/
|
||||||
|
{191, DATATYPE_UINT16_T, 10, 0, 3600, }, /*过温判定时间*/
|
||||||
|
{192, DATATYPE_UINT16_T, 60, 0, 3600, }, /*自检超时判定时间*/
|
||||||
|
{193, DATATYPE_UINT16_T, 400, 0, 1200, }, /*绝缘检测母线电压阈值*/
|
||||||
|
{194, DATATYPE_UINT16_T, 5, 0, 1200, }, /*绝缘检测继电器电压阈值*/
|
||||||
|
{195, DATATYPE_UINT16_T, 150, 20, 300, }, /*漏电流3级突变触发阈值*/
|
||||||
|
#if defined(PV_INV30)
|
||||||
|
{196, DATATYPE_UINT16_T, 300, 30, 700, }, /*漏电流缓变动作阈值*/
|
||||||
|
#elif defined(PV_INV40)
|
||||||
|
{196, DATATYPE_UINT16_T, 400, 30, 700, }, /*漏电流缓变动作阈值*/
|
||||||
|
#elif defined(PV_INV50)
|
||||||
|
{196, DATATYPE_UINT16_T, 500, 30, 700, }, /*漏电流缓变动作阈值*/
|
||||||
|
#else
|
||||||
|
{196, DATATYPE_UINT16_T, 0, 0, 0 }, /*漏电流缓变动作阈值*/
|
||||||
|
#endif
|
||||||
|
{197, DATATYPE_UINT16_T, 10, 0, 100, }, /*漏电流缓变时间阈值*/
|
||||||
|
{198, DATATYPE_UINT16_T, 60, 20, 300, }, /*漏电流1级突变触发阈值*/
|
||||||
|
{199, DATATYPE_UINT16_T, 60, 20, 300, }, /*漏电流2级突变触发阈值*/
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
bool_t mw_protocol_modbus_check_param_out_of_range(uint16_t us_address, uint16_t us_value)
|
||||||
|
{
|
||||||
|
if(us_address > MAX_VALID_PARAM_ADDRESS)
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (DATATYPE_UINT16_T == s_ast_param_range[us_address].datatype)
|
||||||
|
{
|
||||||
|
if ((us_value < s_ast_param_range[us_address].min_value) || (us_value > s_ast_param_range[us_address].max_value))
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (DATATYPE_INT16_T == s_ast_param_range[us_address].datatype)
|
||||||
|
{
|
||||||
|
if (((int16_t)us_value < s_ast_param_range[us_address].min_value) || ((int16_t)us_value > s_ast_param_range[us_address].max_value))
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
uint16_t mw_protocol_modbus_get_param_default_value(uint16_t us_address)
|
||||||
|
{
|
||||||
|
if(us_address > MAX_VALID_PARAM_ADDRESS)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
502
test/PV_Inverter/arm/mw_param_manager_arm_struct.h
Normal file
502
test/PV_Inverter/arm/mw_param_manager_arm_struct.h
Normal file
@@ -0,0 +1,502 @@
|
|||||||
|
/**************************************************************************
|
||||||
|
* @copyright Copyright (C), 2022, Qingdao Topscomm Communication Co. Ltd.
|
||||||
|
* @file mw_param_manager_arm_struct.h
|
||||||
|
* @brief arm参数表
|
||||||
|
* @author
|
||||||
|
* @date 2024-10-26 16:34:50
|
||||||
|
* @version
|
||||||
|
* @details
|
||||||
|
**************************************************************************/
|
||||||
|
#ifndef __MW_PARAM_MANAGER_ARM_STRUCT_H__
|
||||||
|
#define __MW_PARAM_MANAGER_ARM_STRUCT_H__
|
||||||
|
#include "comm_datatype.h"
|
||||||
|
|
||||||
|
#define APP_TABLE_VERSION 33 //地址表版本
|
||||||
|
|
||||||
|
typedef struct tag_arm_unrecovery_param_t
|
||||||
|
{
|
||||||
|
uint16_t us_reserve1; /*0 预留*/
|
||||||
|
uint16_t aus_mes_code[4]; /*1 设备MES码*/
|
||||||
|
uint16_t aus_product_id[3]; /*5 12位出厂编号*/
|
||||||
|
uint16_t us_hb_test_result; /*8 板级生产检测结果*/
|
||||||
|
uint16_t us_sys_test_result; /*9 工厂整机测试结果*/
|
||||||
|
uint16_t aus_hw_cmpnt_num[3]; /*10 硬件组件号*/
|
||||||
|
uint16_t us_region_code; /*13 行政区域码*/
|
||||||
|
uint16_t us_term_addr; /*14 终端地址*/
|
||||||
|
uint16_t us_sci_baudrate; /*15 对外串口波特率*/
|
||||||
|
uint16_t us_ac_proto_type; /*16 载波协议类型*/
|
||||||
|
uint16_t us_prot645_type; /*17 645协议版本*/
|
||||||
|
uint16_t aus_level_0_cipher[2]; /*18 0级密码*/
|
||||||
|
uint16_t aus_level_1_cipher[2]; /*20 1级密码*/
|
||||||
|
uint16_t aus_level_2_cipher[2]; /*22 2级密码*/
|
||||||
|
uint16_t aus_account_num[3]; /*24 户号*/
|
||||||
|
uint16_t aus_virtual_plant_num[3]; /*27 虚拟电厂编号*/
|
||||||
|
uint16_t us_leak_current_dc_estimate; /*30 漏电流直流偏置AD值*/
|
||||||
|
uint16_t us_leak_current_factor; /*31 漏电流校准系数*/
|
||||||
|
uint16_t aus_state_grid_addr[6]; /*32 国网地址*/
|
||||||
|
uint16_t aus_meter_code_num[6]; /*38 表号(ESAM用)*/
|
||||||
|
uint16_t us_leak_current_inter_refer_mA; /*44 漏电流内部参考值*/
|
||||||
|
uint16_t aus_reserve2[5]; /*45 预留*/
|
||||||
|
}arm_unrecovery_param_t;
|
||||||
|
|
||||||
|
typedef struct tag_arm_comm_cmd_t
|
||||||
|
{
|
||||||
|
uint16_t us_start; /*50 设备开机*/
|
||||||
|
uint16_t us_stop; /*51 设备关机*/
|
||||||
|
uint16_t us_fault_rst; /*52 故障复位*/
|
||||||
|
uint16_t us_unlock_set; /*53 解锁特殊操作*/
|
||||||
|
uint16_t us_device_rst; /*54 设备重启*/
|
||||||
|
uint16_t us_dsp_selfcheck; /*55 功率单元自检(调试)*/
|
||||||
|
uint16_t us_dsp_rst_by_comm; /*56 功率单元重启*/
|
||||||
|
uint16_t us_dsp_reboot; /*57 功率单元强制复位*/
|
||||||
|
uint16_t us_resume_config; /*58 参数还原*/
|
||||||
|
uint16_t us_4g_rst; /*59 复位4G*/
|
||||||
|
uint16_t us_dc_carrier_rst; /*60 直流载波复位*/
|
||||||
|
uint16_t us_ac_carrier_rst; /*61 交流载波复位*/
|
||||||
|
uint16_t us_fault_record_manual; /*62 手动录波*/
|
||||||
|
uint16_t us_data_restore_all; /*63 所有记录数据擦除*/
|
||||||
|
uint16_t us_wave_record_restore; /*64 录波擦除*/
|
||||||
|
uint16_t us_event_restore; /*65 事件擦除*/
|
||||||
|
uint16_t us_error_log_restore; /*66 日志记录擦除*/
|
||||||
|
uint16_t us_freeze_min_restore; /*67 分钟冻结数据擦除*/
|
||||||
|
uint16_t us_freeze_day_restore; /*68 日冻结数据擦除*/
|
||||||
|
uint16_t us_freeze_month_restore; /*69 月冻结数据擦除*/
|
||||||
|
uint16_t us_freeze_year_restore; /*70 年冻结数据擦除*/
|
||||||
|
uint16_t us_comm_frame_restore; /*71 报文记录数据擦除*/
|
||||||
|
uint16_t us_operation_restore; /*72 操作记录数据擦除*/
|
||||||
|
uint16_t us_power_gen_restore; /*73 电量记录数据擦除*/
|
||||||
|
uint16_t elog_print_switch; /*74 打印开关*/
|
||||||
|
uint16_t us_leak_current_dc_en; /*75 漏电流校准直流量(按钮)*/
|
||||||
|
uint16_t us_leak_current_factor_en; /*76 漏电流校准系数(按钮)*/
|
||||||
|
uint16_t us_leak_current_selfcheck_en; /*77 漏电流自检(按钮)*/
|
||||||
|
uint16_t us_system_recover; /*78 恢复出厂设置*/
|
||||||
|
uint16_t aus_reserve3[21]; /*79 预留*/
|
||||||
|
}arm_comm_cmd_t;
|
||||||
|
|
||||||
|
typedef struct tag_arm_devices_set_t
|
||||||
|
{
|
||||||
|
uint16_t us_work_mode_svgc; /*100 工作模式*/
|
||||||
|
uint16_t us_work_mode_svg; /*101 补偿模式选择*/
|
||||||
|
uint16_t us_poweron_mode; /*102 开机模式*/
|
||||||
|
uint16_t us_power_on_delay; /*103 自动开机延时*/
|
||||||
|
uint16_t us_power_on_time_en; /*104 定时开关机使能*/
|
||||||
|
uint16_t aus_power_on_time[3]; /*105 定时开机时间*/
|
||||||
|
uint16_t aus_power_off_time[3]; /*108 定时关机时间*/
|
||||||
|
uint16_t us_low_power_judge_delay; /*111 低功耗判断延时*/
|
||||||
|
uint16_t us_low_power_judge_delay_quit; /*112 退出低功耗判断延时*/
|
||||||
|
uint16_t us_auto_reset_delay; /*113 自动复位延时*/
|
||||||
|
uint16_t us_dsp_wd_enable; /*114 DSP看门狗复位使能*/
|
||||||
|
uint16_t us_freeze_save_period; /*115 分钟冻结周期*/
|
||||||
|
uint16_t us_record_frame_en; /*116 报文记录使能*/
|
||||||
|
uint16_t us_record_frame_dir; /*117 报文记录方向*/
|
||||||
|
uint16_t us_record_frame_port; /*118 报文记录端口*/
|
||||||
|
uint16_t us_record_err_log_en; /*119 错误打印记录使能*/
|
||||||
|
uint16_t us_impd_dete_en; /*120 绝缘阻值检测使能*/
|
||||||
|
uint16_t us_fan_ctr_mode; /*121 风扇控制模式*/
|
||||||
|
uint16_t leak_current_mode; /*122 漏电流模式*/
|
||||||
|
uint16_t us_sys_discharge_start_pwr; /*123 放电起始功率*/
|
||||||
|
uint16_t us_anti_pid_en; /*124 抗PID使能*/
|
||||||
|
uint16_t us_anti_pid_time; /*125 抗PID启动时间*/
|
||||||
|
uint16_t us_auto_restore_delay_value; /*126 自动清除故障模式*/
|
||||||
|
uint16_t us_plc_enable; /*127 交流载波使能*/
|
||||||
|
uint16_t us_control_enable_shanxi; /*128 逆变器控制使能*/
|
||||||
|
uint16_t aus_reserve4[21]; /*129 预留*/
|
||||||
|
}arm_devices_set_t;
|
||||||
|
|
||||||
|
typedef struct tag_arm_comm_t
|
||||||
|
{
|
||||||
|
uint16_t aus_remote_ip[2]; /*150 主站IP*/
|
||||||
|
uint16_t us_remote_port; /*152 主站端口号*/
|
||||||
|
uint16_t us_interactive_cycle_4g; /*153 4G交互周期*/
|
||||||
|
uint16_t us_gprs_com_over_time; /*154 4G通信超时阈值*/
|
||||||
|
uint16_t us_can_enable; /*155 CAN使能*/
|
||||||
|
uint16_t us_can_dev_id; /*156 CAN并机ID*/
|
||||||
|
uint16_t us_can_parallel_num; /*157 CAN并机数量*/
|
||||||
|
uint16_t us_com_over_time; /*158 通信故障判定时间*/
|
||||||
|
uint16_t us_plc_check_comm_period_t; /*159 载波通信超时判断周期*/
|
||||||
|
uint16_t aus_reserve5[10]; /*160 预留*/
|
||||||
|
}arm_comm_t;
|
||||||
|
|
||||||
|
typedef struct tag_arm_devices_limit_param_t
|
||||||
|
{
|
||||||
|
uint16_t us_fan_auto_ctrl_factor; /*170 风扇自动控制因素*/
|
||||||
|
uint16_t us_manual_fan_pwm; /*171 手动风扇占空比*/
|
||||||
|
uint16_t us_fan_pwm_start; /*172 风扇启动占空比*/
|
||||||
|
uint16_t us_fan_pwm_max; /*173 风扇最大占空比*/
|
||||||
|
uint16_t us_fan_start_temp; /*174 风扇启动温度*/
|
||||||
|
uint16_t us_fan_max_temp; /*175 风扇满速温度*/
|
||||||
|
uint16_t us_fan_start_power; /*176 风扇启动功率(额定值%)*/
|
||||||
|
uint16_t us_fan_max_power; /*177 风扇满速功率(额定值%)*/
|
||||||
|
uint16_t us_reserve_param9_1; /*178 幅值参考预留1*/
|
||||||
|
uint16_t us_reserve_param9_2; /*179 幅值参考预留2*/
|
||||||
|
uint16_t us_reserve_param9_3; /*180 幅值参考预留3*/
|
||||||
|
uint16_t us_reserve_param9_4; /*181 幅值参考预留4*/
|
||||||
|
uint16_t us_reserve_param9_5; /*182 幅值参考预留5*/
|
||||||
|
uint16_t us_reserve_param9_6; /*183 幅值参考预留6*/
|
||||||
|
uint16_t us_reserve_param9_7; /*184 幅值参考预留7*/
|
||||||
|
}arm_devices_limit_param_t;
|
||||||
|
|
||||||
|
typedef struct tag_arm_devices_threshold_t
|
||||||
|
{
|
||||||
|
uint16_t us_impd_fault_thrd; /*185 绝缘阻值故障阈值*/
|
||||||
|
uint16_t us_impd_detect_close_time; /*186 绝缘检测闭合时间*/
|
||||||
|
uint16_t us_impd_detect_open_time; /*187 绝缘检测断开时间*/
|
||||||
|
uint16_t us_fan_speed_fault_thrd; /*188 风扇故障转速阈值*/
|
||||||
|
uint16_t us_leak_cur_fault_thrd; /*189 漏电流故障阈值*/
|
||||||
|
uint16_t us_reserve_param1_1; /*190 阈值参考预留1*/
|
||||||
|
uint16_t us_over_temp_time; /*191 过温判定时间*/
|
||||||
|
uint16_t us_self_check_time; /*192 自检超时判定时间*/
|
||||||
|
uint16_t us_insu_bus_volt_thd; /*193 绝缘检测母线电压阈值*/
|
||||||
|
uint16_t us_insu_rly_volt_thd; /*194 绝缘检测继电器电压阈值*/
|
||||||
|
uint16_t us_leak_current_L3_mutation_threshold_mA; /*195 漏电流3级突变触发阈值*/
|
||||||
|
uint16_t us_leak_current_slow_threshold_mA; /*196 漏电流缓变动作阈值*/
|
||||||
|
uint16_t us_leak_current_slow_time_ms; /*197 漏电流缓变时间阈值*/
|
||||||
|
uint16_t us_leak_current_L1_mutation_threshold_mA; /*198 漏电流1级突变触发阈值*/
|
||||||
|
uint16_t us_leak_current_L2_mutation_threshold_mA; /*199 漏电流2级突变触发阈值*/
|
||||||
|
}arm_devices_threshold_t;
|
||||||
|
|
||||||
|
typedef struct tag_arm_devices_data_file_t
|
||||||
|
{
|
||||||
|
uint16_t aus_system_time[6]; /*200 系统时间*/
|
||||||
|
uint16_t us_device_type; /*206 设备类型*/
|
||||||
|
uint16_t us_device_capacity; /*207 设备容量*/
|
||||||
|
uint16_t us_system_run_status; /*208 设备状态*/
|
||||||
|
uint16_t us_arm_protocol_version; /*209 ARM地址表协议版本号*/
|
||||||
|
uint16_t us_can_comm_status; /*210 CAN并机状态*/
|
||||||
|
uint16_t us_can_detection_num; /*211 CAN并机检测数量*/
|
||||||
|
uint16_t aus_main_version[2]; /*212 主控程序版本*/
|
||||||
|
uint16_t aus_main_boot_version[2]; /*214 主控底层程序版本*/
|
||||||
|
uint16_t aus_main_cmpnt_num[3]; /*216 主控程序组件号*/
|
||||||
|
uint16_t amain_version_new[16]; /*219 主控程序版本新格式*/
|
||||||
|
uint16_t aus_reserve6[15]; /*235 预留*/
|
||||||
|
}arm_devices_data_file_t;
|
||||||
|
|
||||||
|
typedef struct tag_arm_comm_ex_device_t
|
||||||
|
{
|
||||||
|
uint16_t aus_ac_carrier_version[3]; /*250 交流载波芯片版本号(年月日版本)*/
|
||||||
|
uint16_t aus_dc_carrier_version[3]; /*253 直流载波芯片版本号(年月日版本)*/
|
||||||
|
uint16_t aus_reserve7[34]; /*256 预留*/
|
||||||
|
}arm_comm_ex_device_t;
|
||||||
|
|
||||||
|
typedef struct tag_arm_fault_code_t
|
||||||
|
{
|
||||||
|
uint16_t us_arm_fault_code1; /*290 ARM故障1*/
|
||||||
|
uint16_t us_arm_fault_code2; /*291 ARM故障2*/
|
||||||
|
uint16_t us_arm_fault_code3; /*292 ARM故障3*/
|
||||||
|
uint16_t us_arm_alarm_code1; /*293 ARM告警1*/
|
||||||
|
uint16_t us_arm_alarm_code2; /*294 ARM告警2*/
|
||||||
|
uint16_t aus_reserve8[5]; /*295 预留*/
|
||||||
|
}arm_fault_code_t;
|
||||||
|
|
||||||
|
typedef struct tag_arm_data_hardware_t
|
||||||
|
{
|
||||||
|
int16_t sh_temp1; /*300 腔体1温度*/
|
||||||
|
int16_t sh_temp2; /*301 腔体2温度*/
|
||||||
|
int16_t sh_temp3; /*302 散热片温度*/
|
||||||
|
int16_t sh_temp_reserve1; /*303 预留测温1*/
|
||||||
|
uint16_t us_inside_fan1_spd; /*304 内部风扇转速1*/
|
||||||
|
uint16_t us_outside_fan1_spd; /*305 外部风扇转速1*/
|
||||||
|
uint16_t us_outside_fan2_spd; /*306 外部风扇转速2*/
|
||||||
|
uint16_t us_impd_val_on; /*307 绝缘继电器闭合电压*/
|
||||||
|
uint16_t us_impd_val_off; /*308 绝缘继电器断开电压*/
|
||||||
|
int16_t us_impd_res_val; /*309 绝缘检测阻值*/
|
||||||
|
uint16_t us_ac_leak_cur_rms; /*310 交流漏电流有效值*/
|
||||||
|
uint16_t us_pid_relay_stat; /*311 PID继电器状态*/
|
||||||
|
int16_t us_impd_res_val_2; /*312 绝缘检测阻值2*/
|
||||||
|
uint16_t us_leak_cur_ad; /*313 漏电流AD值*/
|
||||||
|
int16_t us_prevent_inv_curr_a; /*314 防逆变电流A相*/
|
||||||
|
int16_t us_prevent_inv_curr_b; /*315 防逆变电流B相*/
|
||||||
|
int16_t us_prevent_inv_curr_c; /*316 防逆变电流C相*/
|
||||||
|
uint16_t us_inside_fan2_spd; /*317 内部风扇转速2*/
|
||||||
|
uint16_t us_outside_fan3_spd; /*318 外部风扇转速3*/
|
||||||
|
uint16_t us_out_leak_cur_rms; /*319 外部漏电流有效值*/
|
||||||
|
uint16_t aus_reserve9[10]; /*320 预留*/
|
||||||
|
}arm_data_hardware_t;
|
||||||
|
|
||||||
|
typedef struct tag_arm_thd_data_t
|
||||||
|
{
|
||||||
|
uint16_t us_THD_grid_voltage_a; /*330 网侧电压THD_A*/
|
||||||
|
uint16_t us_THD_grid_voltage_b; /*331 网侧电压THD_B*/
|
||||||
|
uint16_t us_THD_grid_voltage_c; /*332 网侧电压THD_C*/
|
||||||
|
uint16_t us_THD_grid_current_a; /*333 网侧电流THD_A*/
|
||||||
|
uint16_t us_THD_grid_current_b; /*334 网侧电流THD_B*/
|
||||||
|
uint16_t us_THD_grid_current_c; /*335 网侧电流THD_C*/
|
||||||
|
uint16_t us_THD_load_current_a; /*336 负载电流THD_A*/
|
||||||
|
uint16_t us_THD_load_current_b; /*337 负载电流THD_B*/
|
||||||
|
uint16_t us_THD_load_current_c; /*338 负载电流THD_C*/
|
||||||
|
uint16_t aus_THD_harm_grid_voltage_a[50]; /*339 网侧电压谐波THD A相*/
|
||||||
|
uint16_t aus_THD_harm_grid_voltage_b[50]; /*389 网侧电压谐波THD B相*/
|
||||||
|
uint16_t aus_THD_harm_grid_voltage_c[50]; /*439 网侧电压谐波THD C相*/
|
||||||
|
uint16_t aus_THD_harm_device_current_a[50]; /*489 交流电流谐波THD A相*/
|
||||||
|
uint16_t aus_THD_harm_device_current_b[50]; /*539 交流电流谐波THD B相*/
|
||||||
|
uint16_t aus_THD_harm_device_current_c[50]; /*589 交流电流谐波THD C相*/
|
||||||
|
uint16_t aus_reserve10[61]; /*639 预留*/
|
||||||
|
}arm_thd_data_t;
|
||||||
|
|
||||||
|
typedef struct tag_arm_devices_state_data_t
|
||||||
|
{
|
||||||
|
uint16_t us_arm_logic_label; /*700 ARM逻辑状态*/
|
||||||
|
uint16_t us_arm_run_state; /*701 ARM运行状态*/
|
||||||
|
uint16_t us_dsp_run_state; /*702 DSP运行状态*/
|
||||||
|
uint16_t us_data_reserve2; /*703 预留数据1_2*/
|
||||||
|
uint16_t us_data_reserve3; /*704 预留数据1_3*/
|
||||||
|
uint16_t aus_reserve11[5]; /*705 预留*/
|
||||||
|
}arm_devices_state_data_t;
|
||||||
|
|
||||||
|
typedef struct tag_arm_record_data_t
|
||||||
|
{
|
||||||
|
uint16_t aus_power_gen_total[2]; /*710 累计发电量*/
|
||||||
|
uint16_t aus_power_cons_total[2]; /*712 累计耗电量*/
|
||||||
|
uint16_t aus_power_gen_year[2]; /*714 年发电量*/
|
||||||
|
uint16_t aus_power_cons_year[2]; /*716 年耗电量*/
|
||||||
|
uint16_t aus_power_gen_month[2]; /*718 月发电量*/
|
||||||
|
uint16_t aus_power_cons_month[2]; /*720 月耗电量*/
|
||||||
|
uint16_t aus_power_gen_day[2]; /*722 日发电量*/
|
||||||
|
uint16_t aus_power_cons_day[2]; /*724 日耗电量*/
|
||||||
|
uint16_t aus_runtime_total[2]; /*726 总并网运行时间*/
|
||||||
|
uint16_t aus_reserve12[2]; /*728 预留*/
|
||||||
|
}arm_record_data_t;
|
||||||
|
|
||||||
|
|
||||||
|
typedef struct tag_arm_config_param_t
|
||||||
|
{
|
||||||
|
arm_devices_set_t st_arm_devices_set;
|
||||||
|
arm_comm_t st_arm_comm;
|
||||||
|
arm_devices_limit_param_t st_arm_devices_limit_param;
|
||||||
|
arm_devices_threshold_t st_arm_devices_threshold;
|
||||||
|
}arm_config_param_t;
|
||||||
|
|
||||||
|
typedef struct tag_arm_monitor_params_t
|
||||||
|
{
|
||||||
|
arm_devices_data_file_t st_arm_devices_data_file;
|
||||||
|
arm_comm_ex_device_t st_arm_comm_ex_device;
|
||||||
|
arm_fault_code_t st_arm_fault_code;
|
||||||
|
arm_data_hardware_t st_arm_data_hardware;
|
||||||
|
arm_thd_data_t st_arm_thd_data;
|
||||||
|
arm_devices_state_data_t st_arm_devices_state_data;
|
||||||
|
arm_record_data_t st_arm_record_data;
|
||||||
|
}arm_monitor_params_t;
|
||||||
|
|
||||||
|
typedef struct tag_arm_comm_params_t
|
||||||
|
{
|
||||||
|
arm_unrecovery_param_t st_arm_unrecovery_param;
|
||||||
|
arm_comm_cmd_t st_arm_cmd;
|
||||||
|
arm_config_param_t st_config_param;
|
||||||
|
arm_monitor_params_t st_monitor_params;
|
||||||
|
}arm_comm_params_t;
|
||||||
|
|
||||||
|
/*参数地址宏定义*/
|
||||||
|
//arm_unrecovery_param_t
|
||||||
|
#define ARM_MES_CODE_PARAM_ADDR 1 /*设备MES码*/
|
||||||
|
#define ARM_PRODUCT_ID_PARAM_ADDR 5 /*12位出厂编号*/
|
||||||
|
#define ARM_HB_TEST_RESULT_PARAM_ADDR 8 /*板级生产检测结果*/
|
||||||
|
#define ARM_SYS_TEST_RESULT_PARAM_ADDR 9 /*工厂整机测试结果*/
|
||||||
|
#define ARM_HW_CMPNT_NUM_PARAM_ADDR 10 /*硬件组件号*/
|
||||||
|
#define ARM_REGION_CODE_PARAM_ADDR 13 /*行政区域码*/
|
||||||
|
#define ARM_TERM_ADDR_PARAM_ADDR 14 /*终端地址*/
|
||||||
|
#define ARM_SCI_BAUDRATE_PARAM_ADDR 15 /*对外串口波特率*/
|
||||||
|
#define ARM_AC_PROTO_TYPE_PARAM_ADDR 16 /*载波协议类型*/
|
||||||
|
#define ARM_PROT645_TYPE_PARAM_ADDR 17 /*645协议版本*/
|
||||||
|
#define ARM_LEVEL_0_CIPHER_PARAM_ADDR 18 /*0级密码*/
|
||||||
|
#define ARM_LEVEL_1_CIPHER_PARAM_ADDR 20 /*1级密码*/
|
||||||
|
#define ARM_LEVEL_2_CIPHER_PARAM_ADDR 22 /*2级密码*/
|
||||||
|
#define ARM_ACCOUNT_NUM_PARAM_ADDR 24 /*户号*/
|
||||||
|
#define ARM_VIRTUAL_PLANT_NUM_PARAM_ADDR 27 /*虚拟电厂编号*/
|
||||||
|
#define ARM_LEAK_CURRENT_DC_ESTIMATE_PARAM_ADDR 30 /*漏电流直流偏置AD值*/
|
||||||
|
#define ARM_LEAK_CURRENT_FACTOR_PARAM_ADDR 31 /*漏电流校准系数*/
|
||||||
|
#define ARM_STATE_GRID_ADDR_PARAM_ADDR 32 /*国网地址*/
|
||||||
|
#define ARM_METER_CODE_NUM_PARAM_ADDR 38 /*表号(ESAM用)*/
|
||||||
|
#define ARM_LEAK_CURRENT_INTER_REFER_MA_PARAM_ADDR 44 /*漏电流内部参考值*/
|
||||||
|
//arm_comm_cmd_t
|
||||||
|
#define ARM_START_PARAM_ADDR 50 /*设备开机*/
|
||||||
|
#define ARM_STOP_PARAM_ADDR 51 /*设备关机*/
|
||||||
|
#define ARM_FAULT_RST_PARAM_ADDR 52 /*故障复位*/
|
||||||
|
#define ARM_UNLOCK_SET_PARAM_ADDR 53 /*解锁特殊操作*/
|
||||||
|
#define ARM_DEVICE_RST_PARAM_ADDR 54 /*设备重启*/
|
||||||
|
#define ARM_DSP_SELFCHECK_PARAM_ADDR 55 /*功率单元自检(调试)*/
|
||||||
|
#define ARM_DSP_RST_BY_COMM_PARAM_ADDR 56 /*功率单元重启*/
|
||||||
|
#define ARM_DSP_REBOOT_PARAM_ADDR 57 /*功率单元强制复位*/
|
||||||
|
#define ARM_RESUME_CONFIG_PARAM_ADDR 58 /*参数还原*/
|
||||||
|
#define ARM_4G_RST_PARAM_ADDR 59 /*复位4G*/
|
||||||
|
#define ARM_DC_CARRIER_RST_PARAM_ADDR 60 /*直流载波复位*/
|
||||||
|
#define ARM_AC_CARRIER_RST_PARAM_ADDR 61 /*交流载波复位*/
|
||||||
|
#define ARM_FAULT_RECORD_MANUAL_PARAM_ADDR 62 /*手动录波*/
|
||||||
|
#define ARM_DATA_RESTORE_ALL_PARAM_ADDR 63 /*所有记录数据擦除*/
|
||||||
|
#define ARM_WAVE_RECORD_RESTORE_PARAM_ADDR 64 /*录波擦除*/
|
||||||
|
#define ARM_EVENT_RESTORE_PARAM_ADDR 65 /*事件擦除*/
|
||||||
|
#define ARM_ERROR_LOG_RESTORE_PARAM_ADDR 66 /*日志记录擦除*/
|
||||||
|
#define ARM_FREEZE_MIN_RESTORE_PARAM_ADDR 67 /*分钟冻结数据擦除*/
|
||||||
|
#define ARM_FREEZE_DAY_RESTORE_PARAM_ADDR 68 /*日冻结数据擦除*/
|
||||||
|
#define ARM_FREEZE_MONTH_RESTORE_PARAM_ADDR 69 /*月冻结数据擦除*/
|
||||||
|
#define ARM_FREEZE_YEAR_RESTORE_PARAM_ADDR 70 /*年冻结数据擦除*/
|
||||||
|
#define ARM_COMM_FRAME_RESTORE_PARAM_ADDR 71 /*报文记录数据擦除*/
|
||||||
|
#define ARM_OPERATION_RESTORE_PARAM_ADDR 72 /*操作记录数据擦除*/
|
||||||
|
#define ARM_POWER_GEN_RESTORE_PARAM_ADDR 73 /*电量记录数据擦除*/
|
||||||
|
#define ARM_G_PRINT_SWITCH_PARAM_ADDR 74 /*打印开关*/
|
||||||
|
#define ARM_LEAK_CURRENT_DC_EN_PARAM_ADDR 75 /*漏电流校准直流量(按钮)*/
|
||||||
|
#define ARM_LEAK_CURRENT_FACTOR_EN_PARAM_ADDR 76 /*漏电流校准系数(按钮)*/
|
||||||
|
#define ARM_LEAK_CURRENT_SELFCHECK_EN_PARAM_ADDR 77 /*漏电流自检(按钮)*/
|
||||||
|
#define ARM_SYSTEM_RECOVER_PARAM_ADDR 78 /*恢复出厂设置*/
|
||||||
|
//arm_devices_set_t
|
||||||
|
#define ARM_WORK_MODE_SVGC_PARAM_ADDR 100 /*工作模式*/
|
||||||
|
#define ARM_WORK_MODE_SVG_PARAM_ADDR 101 /*补偿模式选择*/
|
||||||
|
#define ARM_POWERON_MODE_PARAM_ADDR 102 /*开机模式*/
|
||||||
|
#define ARM_POWER_ON_DELAY_PARAM_ADDR 103 /*自动开机延时*/
|
||||||
|
#define ARM_POWER_ON_TIME_EN_PARAM_ADDR 104 /*定时开关机使能*/
|
||||||
|
#define ARM_POWER_ON_TIME_PARAM_ADDR 105 /*定时开机时间*/
|
||||||
|
#define ARM_POWER_OFF_TIME_PARAM_ADDR 108 /*定时关机时间*/
|
||||||
|
#define ARM_LOW_POWER_JUDGE_DELAY_PARAM_ADDR 111 /*低功耗判断延时*/
|
||||||
|
#define ARM_LOW_POWER_JUDGE_DELAY_QUIT_PARAM_ADDR 112 /*退出低功耗判断延时*/
|
||||||
|
#define ARM_AUTO_RESET_DELAY_PARAM_ADDR 113 /*自动复位延时*/
|
||||||
|
#define ARM_DSP_WD_ENABLE_PARAM_ADDR 114 /*DSP看门狗复位使能*/
|
||||||
|
#define ARM_FREEZE_SAVE_PERIOD_PARAM_ADDR 115 /*分钟冻结周期*/
|
||||||
|
#define ARM_RECORD_FRAME_EN_PARAM_ADDR 116 /*报文记录使能*/
|
||||||
|
#define ARM_RECORD_FRAME_DIR_PARAM_ADDR 117 /*报文记录方向*/
|
||||||
|
#define ARM_RECORD_FRAME_PORT_PARAM_ADDR 118 /*报文记录端口*/
|
||||||
|
#define ARM_RECORD_ERR_LOG_EN_PARAM_ADDR 119 /*错误打印记录使能*/
|
||||||
|
#define ARM_IMPD_DETE_EN_PARAM_ADDR 120 /*绝缘阻值检测使能*/
|
||||||
|
#define ARM_FAN_CTR_MODE_PARAM_ADDR 121 /*风扇控制模式*/
|
||||||
|
#define ARM_K_CURRENT_MODE_PARAM_ADDR 122 /*漏电流模式*/
|
||||||
|
#define ARM_SYS_DISCHARGE_START_PWR_PARAM_ADDR 123 /*放电起始功率*/
|
||||||
|
#define ARM_ANTI_PID_EN_PARAM_ADDR 124 /*抗PID使能*/
|
||||||
|
#define ARM_ANTI_PID_TIME_PARAM_ADDR 125 /*抗PID启动时间*/
|
||||||
|
#define ARM_AUTO_RESTORE_DELAY_VALUE_PARAM_ADDR 126 /*自动清除故障模式*/
|
||||||
|
#define ARM_PLC_ENABLE_PARAM_ADDR 127 /*交流载波使能*/
|
||||||
|
#define ARM_CONTROL_ENABLE_SHANXI_PARAM_ADDR 128 /*逆变器控制使能*/
|
||||||
|
//arm_comm_t
|
||||||
|
#define ARM_REMOTE_IP_PARAM_ADDR 150 /*主站IP*/
|
||||||
|
#define ARM_REMOTE_PORT_PARAM_ADDR 152 /*主站端口号*/
|
||||||
|
#define ARM_INTERACTIVE_CYCLE_4G_PARAM_ADDR 153 /*4G交互周期*/
|
||||||
|
#define ARM_GPRS_COM_OVER_TIME_PARAM_ADDR 154 /*4G通信超时阈值*/
|
||||||
|
#define ARM_CAN_ENABLE_PARAM_ADDR 155 /*CAN使能*/
|
||||||
|
#define ARM_CAN_DEV_ID_PARAM_ADDR 156 /*CAN并机ID*/
|
||||||
|
#define ARM_CAN_PARALLEL_NUM_PARAM_ADDR 157 /*CAN并机数量*/
|
||||||
|
#define ARM_COM_OVER_TIME_PARAM_ADDR 158 /*通信故障判定时间*/
|
||||||
|
#define ARM_PLC_CHECK_COMM_PERIOD_T_PARAM_ADDR 159 /*载波通信超时判断周期*/
|
||||||
|
//arm_devices_limit_param_t
|
||||||
|
#define ARM_FAN_AUTO_CTRL_FACTOR_PARAM_ADDR 170 /*风扇自动控制因素*/
|
||||||
|
#define ARM_MANUAL_FAN_PWM_PARAM_ADDR 171 /*手动风扇占空比*/
|
||||||
|
#define ARM_FAN_PWM_START_PARAM_ADDR 172 /*风扇启动占空比*/
|
||||||
|
#define ARM_FAN_PWM_MAX_PARAM_ADDR 173 /*风扇最大占空比*/
|
||||||
|
#define ARM_FAN_START_TEMP_PARAM_ADDR 174 /*风扇启动温度*/
|
||||||
|
#define ARM_FAN_MAX_TEMP_PARAM_ADDR 175 /*风扇满速温度*/
|
||||||
|
#define ARM_FAN_START_POWER_PARAM_ADDR 176 /*风扇启动功率(额定值%)*/
|
||||||
|
#define ARM_FAN_MAX_POWER_PARAM_ADDR 177 /*风扇满速功率(额定值%)*/
|
||||||
|
#define ARM_RESERVE_PARAM9_1_PARAM_ADDR 178 /*幅值参考预留1*/
|
||||||
|
#define ARM_RESERVE_PARAM9_2_PARAM_ADDR 179 /*幅值参考预留2*/
|
||||||
|
#define ARM_RESERVE_PARAM9_3_PARAM_ADDR 180 /*幅值参考预留3*/
|
||||||
|
#define ARM_RESERVE_PARAM9_4_PARAM_ADDR 181 /*幅值参考预留4*/
|
||||||
|
#define ARM_RESERVE_PARAM9_5_PARAM_ADDR 182 /*幅值参考预留5*/
|
||||||
|
#define ARM_RESERVE_PARAM9_6_PARAM_ADDR 183 /*幅值参考预留6*/
|
||||||
|
#define ARM_RESERVE_PARAM9_7_PARAM_ADDR 184 /*幅值参考预留7*/
|
||||||
|
//arm_devices_threshold_t
|
||||||
|
#define ARM_IMPD_FAULT_THRD_PARAM_ADDR 185 /*绝缘阻值故障阈值*/
|
||||||
|
#define ARM_IMPD_DETECT_CLOSE_TIME_PARAM_ADDR 186 /*绝缘检测闭合时间*/
|
||||||
|
#define ARM_IMPD_DETECT_OPEN_TIME_PARAM_ADDR 187 /*绝缘检测断开时间*/
|
||||||
|
#define ARM_FAN_SPEED_FAULT_THRD_PARAM_ADDR 188 /*风扇故障转速阈值*/
|
||||||
|
#define ARM_LEAK_CUR_FAULT_THRD_PARAM_ADDR 189 /*漏电流故障阈值*/
|
||||||
|
#define ARM_RESERVE_PARAM1_1_PARAM_ADDR 190 /*阈值参考预留1*/
|
||||||
|
#define ARM_OVER_TEMP_TIME_PARAM_ADDR 191 /*过温判定时间*/
|
||||||
|
#define ARM_SELF_CHECK_TIME_PARAM_ADDR 192 /*自检超时判定时间*/
|
||||||
|
#define ARM_INSU_BUS_VOLT_THD_PARAM_ADDR 193 /*绝缘检测母线电压阈值*/
|
||||||
|
#define ARM_INSU_RLY_VOLT_THD_PARAM_ADDR 194 /*绝缘检测继电器电压阈值*/
|
||||||
|
#define ARM_LEAK_CURRENT_L3_MUTATION_THRESHOLD_MA_PARAM_ADDR 195 /*漏电流3级突变触发阈值*/
|
||||||
|
#define ARM_LEAK_CURRENT_SLOW_THRESHOLD_MA_PARAM_ADDR 196 /*漏电流缓变动作阈值*/
|
||||||
|
#define ARM_LEAK_CURRENT_SLOW_TIME_MS_PARAM_ADDR 197 /*漏电流缓变时间阈值*/
|
||||||
|
#define ARM_LEAK_CURRENT_L1_MUTATION_THRESHOLD_MA_PARAM_ADDR 198 /*漏电流1级突变触发阈值*/
|
||||||
|
#define ARM_LEAK_CURRENT_L2_MUTATION_THRESHOLD_MA_PARAM_ADDR 199 /*漏电流2级突变触发阈值*/
|
||||||
|
//arm_devices_data_file_t
|
||||||
|
#define ARM_SYSTEM_TIME_PARAM_ADDR 200 /*系统时间*/
|
||||||
|
#define ARM_DEVICE_TYPE_PARAM_ADDR 206 /*设备类型*/
|
||||||
|
#define ARM_DEVICE_CAPACITY_PARAM_ADDR 207 /*设备容量*/
|
||||||
|
#define ARM_SYSTEM_RUN_STATUS_PARAM_ADDR 208 /*设备状态*/
|
||||||
|
#define ARM_ARM_PROTOCOL_VERSION_PARAM_ADDR 209 /*ARM地址表协议版本号*/
|
||||||
|
#define ARM_CAN_COMM_STATUS_PARAM_ADDR 210 /*CAN并机状态*/
|
||||||
|
#define ARM_CAN_DETECTION_NUM_PARAM_ADDR 211 /*CAN并机检测数量*/
|
||||||
|
#define ARM_MAIN_VERSION_PARAM_ADDR 212 /*主控程序版本*/
|
||||||
|
#define ARM_MAIN_BOOT_VERSION_PARAM_ADDR 214 /*主控底层程序版本*/
|
||||||
|
#define ARM_MAIN_CMPNT_NUM_PARAM_ADDR 216 /*主控程序组件号*/
|
||||||
|
#define ARM_N_VERSION_NEW_PARAM_ADDR 219 /*主控程序版本新格式*/
|
||||||
|
//arm_comm_ex_device_t
|
||||||
|
#define ARM_AC_CARRIER_VERSION_PARAM_ADDR 250 /*交流载波芯片版本号(年月日版本)*/
|
||||||
|
#define ARM_DC_CARRIER_VERSION_PARAM_ADDR 253 /*直流载波芯片版本号(年月日版本)*/
|
||||||
|
//arm_fault_code_t
|
||||||
|
#define ARM_ARM_FAULT_CODE1_PARAM_ADDR 290 /*ARM故障1*/
|
||||||
|
#define ARM_ARM_FAULT_CODE2_PARAM_ADDR 291 /*ARM故障2*/
|
||||||
|
#define ARM_ARM_FAULT_CODE3_PARAM_ADDR 292 /*ARM故障3*/
|
||||||
|
#define ARM_ARM_ALARM_CODE1_PARAM_ADDR 293 /*ARM告警1*/
|
||||||
|
#define ARM_ARM_ALARM_CODE2_PARAM_ADDR 294 /*ARM告警2*/
|
||||||
|
//arm_data_hardware_t
|
||||||
|
#define ARM_TEMP1_PARAM_ADDR 300 /*腔体1温度*/
|
||||||
|
#define ARM_TEMP2_PARAM_ADDR 301 /*腔体2温度*/
|
||||||
|
#define ARM_TEMP3_PARAM_ADDR 302 /*散热片温度*/
|
||||||
|
#define ARM_TEMP_RESERVE1_PARAM_ADDR 303 /*预留测温1*/
|
||||||
|
#define ARM_INSIDE_FAN1_SPD_PARAM_ADDR 304 /*内部风扇转速1*/
|
||||||
|
#define ARM_OUTSIDE_FAN1_SPD_PARAM_ADDR 305 /*外部风扇转速1*/
|
||||||
|
#define ARM_OUTSIDE_FAN2_SPD_PARAM_ADDR 306 /*外部风扇转速2*/
|
||||||
|
#define ARM_IMPD_VAL_ON_PARAM_ADDR 307 /*绝缘继电器闭合电压*/
|
||||||
|
#define ARM_IMPD_VAL_OFF_PARAM_ADDR 308 /*绝缘继电器断开电压*/
|
||||||
|
#define ARM_IMPD_RES_VAL_PARAM_ADDR 309 /*绝缘检测阻值*/
|
||||||
|
#define ARM_AC_LEAK_CUR_RMS_PARAM_ADDR 310 /*交流漏电流有效值*/
|
||||||
|
#define ARM_PID_RELAY_STAT_PARAM_ADDR 311 /*PID继电器状态*/
|
||||||
|
#define ARM_IMPD_RES_VAL_2_PARAM_ADDR 312 /*绝缘检测阻值2*/
|
||||||
|
#define ARM_LEAK_CUR_AD_PARAM_ADDR 313 /*漏电流AD值*/
|
||||||
|
#define ARM_PREVENT_INV_CURR_A_PARAM_ADDR 314 /*防逆变电流A相*/
|
||||||
|
#define ARM_PREVENT_INV_CURR_B_PARAM_ADDR 315 /*防逆变电流B相*/
|
||||||
|
#define ARM_PREVENT_INV_CURR_C_PARAM_ADDR 316 /*防逆变电流C相*/
|
||||||
|
#define ARM_INSIDE_FAN2_SPD_PARAM_ADDR 317 /*内部风扇转速2*/
|
||||||
|
#define ARM_OUTSIDE_FAN3_SPD_PARAM_ADDR 318 /*外部风扇转速3*/
|
||||||
|
#define ARM_OUT_LEAK_CUR_RMS_PARAM_ADDR 319 /*外部漏电流有效值*/
|
||||||
|
//arm_thd_data_t
|
||||||
|
#define ARM_THD_GRID_VOLTAGE_A_PARAM_ADDR 330 /*网侧电压THD_A*/
|
||||||
|
#define ARM_THD_GRID_VOLTAGE_B_PARAM_ADDR 331 /*网侧电压THD_B*/
|
||||||
|
#define ARM_THD_GRID_VOLTAGE_C_PARAM_ADDR 332 /*网侧电压THD_C*/
|
||||||
|
#define ARM_THD_GRID_CURRENT_A_PARAM_ADDR 333 /*网侧电流THD_A*/
|
||||||
|
#define ARM_THD_GRID_CURRENT_B_PARAM_ADDR 334 /*网侧电流THD_B*/
|
||||||
|
#define ARM_THD_GRID_CURRENT_C_PARAM_ADDR 335 /*网侧电流THD_C*/
|
||||||
|
#define ARM_THD_LOAD_CURRENT_A_PARAM_ADDR 336 /*负载电流THD_A*/
|
||||||
|
#define ARM_THD_LOAD_CURRENT_B_PARAM_ADDR 337 /*负载电流THD_B*/
|
||||||
|
#define ARM_THD_LOAD_CURRENT_C_PARAM_ADDR 338 /*负载电流THD_C*/
|
||||||
|
#define ARM_THD_HARM_GRID_VOLTAGE_A_PARAM_ADDR 339 /*网侧电压谐波THD A相*/
|
||||||
|
#define ARM_THD_HARM_GRID_VOLTAGE_B_PARAM_ADDR 389 /*网侧电压谐波THD B相*/
|
||||||
|
#define ARM_THD_HARM_GRID_VOLTAGE_C_PARAM_ADDR 439 /*网侧电压谐波THD C相*/
|
||||||
|
#define ARM_THD_HARM_DEVICE_CURRENT_A_PARAM_ADDR 489 /*交流电流谐波THD A相*/
|
||||||
|
#define ARM_THD_HARM_DEVICE_CURRENT_B_PARAM_ADDR 539 /*交流电流谐波THD B相*/
|
||||||
|
#define ARM_THD_HARM_DEVICE_CURRENT_C_PARAM_ADDR 589 /*交流电流谐波THD C相*/
|
||||||
|
//arm_devices_state_data_t
|
||||||
|
#define ARM_ARM_LOGIC_LABEL_PARAM_ADDR 700 /*ARM逻辑状态*/
|
||||||
|
#define ARM_ARM_RUN_STATE_PARAM_ADDR 701 /*ARM运行状态*/
|
||||||
|
#define ARM_DSP_RUN_STATE_PARAM_ADDR 702 /*DSP运行状态*/
|
||||||
|
#define ARM_DATA_RESERVE2_PARAM_ADDR 703 /*预留数据1_2*/
|
||||||
|
#define ARM_DATA_RESERVE3_PARAM_ADDR 704 /*预留数据1_3*/
|
||||||
|
//arm_record_data_t
|
||||||
|
#define ARM_POWER_GEN_TOTAL_PARAM_ADDR 710 /*累计发电量*/
|
||||||
|
#define ARM_POWER_CONS_TOTAL_PARAM_ADDR 712 /*累计耗电量*/
|
||||||
|
#define ARM_POWER_GEN_YEAR_PARAM_ADDR 714 /*年发电量*/
|
||||||
|
#define ARM_POWER_CONS_YEAR_PARAM_ADDR 716 /*年耗电量*/
|
||||||
|
#define ARM_POWER_GEN_MONTH_PARAM_ADDR 718 /*月发电量*/
|
||||||
|
#define ARM_POWER_CONS_MONTH_PARAM_ADDR 720 /*月耗电量*/
|
||||||
|
#define ARM_POWER_GEN_DAY_PARAM_ADDR 722 /*日发电量*/
|
||||||
|
#define ARM_POWER_CONS_DAY_PARAM_ADDR 724 /*日耗电量*/
|
||||||
|
#define ARM_RUNTIME_TOTAL_PARAM_ADDR 726 /*总并网运行时间*/
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
typedef struct tag_modbus_param_value_info_t
|
||||||
|
{
|
||||||
|
uint16_t address;
|
||||||
|
uint16_t datatype; /*0:uint16_t 1:int16_t*/
|
||||||
|
int32_t default_value;
|
||||||
|
int32_t min_value;
|
||||||
|
int32_t max_value;
|
||||||
|
}modbus_param_value_info_t;
|
||||||
|
|
||||||
|
|
||||||
|
#define MAX_VALID_PARAM_ADDRESS 199
|
||||||
|
#define DATATYPE_UINT16_T 0
|
||||||
|
#define DATATYPE_INT16_T 1
|
||||||
|
|
||||||
|
bool_t mw_protocol_modbus_check_param_out_of_range(uint16_t us_address, uint16_t us_value);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
1105
test/PV_Inverter/arm/mw_param_manager_dsp_struct.h
Normal file
1105
test/PV_Inverter/arm/mw_param_manager_dsp_struct.h
Normal file
File diff suppressed because it is too large
Load Diff
684
test/PV_Inverter/dsp/mw_param_manager_dsp_struct.c
Normal file
684
test/PV_Inverter/dsp/mw_param_manager_dsp_struct.c
Normal file
@@ -0,0 +1,684 @@
|
|||||||
|
#include <limits.h>
|
||||||
|
#include "project.h"
|
||||||
|
#include "mw_param_manager_dsp_struct.h"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
const modbus_param_value_info_t s_ast_param_range[MAX_VALID_PARAM_ADDRESS + 1] =
|
||||||
|
{
|
||||||
|
/*address, datatype, default_value, min_value, max_value*/
|
||||||
|
{0, DATATYPE_UINT16_T, 10000, 7000, 13000, }, /*A相采样校准a(网侧交流电压采样)*/
|
||||||
|
{1, DATATYPE_INT16_T, 0, -32768, 32767, }, /*A相采样校准b(网侧交流电压采样)*/
|
||||||
|
{2, DATATYPE_UINT16_T, 10000, 7000, 13000, }, /*B相采样校准a(网侧交流电压采样)*/
|
||||||
|
{3, DATATYPE_INT16_T, 0, -32768, 32767, }, /*B相采样校准b(网侧交流电压采样)*/
|
||||||
|
{4, DATATYPE_UINT16_T, 10000, 7000, 13000, }, /*C相采样校准a(网侧交流电压采样)*/
|
||||||
|
{5, DATATYPE_INT16_T, 0, -32768, 32767, }, /*C相采样校准b(网侧交流电压采样)*/
|
||||||
|
{6, DATATYPE_UINT16_T, 10000, 7000, 13000, }, /*A相采样校准a(逆变侧电感电流)*/
|
||||||
|
{7, DATATYPE_INT16_T, 0, -32768, 32767, }, /*A相采样校准b(逆变侧电感电流)*/
|
||||||
|
{8, DATATYPE_INT16_T, 0, -32768, 32767, }, /*A相逆变电流相位偏移量*/
|
||||||
|
{9, DATATYPE_UINT16_T, 10000, 7000, 13000, }, /*B相采样校准a(逆变侧电感电流)*/
|
||||||
|
{10, DATATYPE_INT16_T, 0, -32768, 32767, }, /*B相采样校准b(逆变侧电感电流)*/
|
||||||
|
{11, DATATYPE_INT16_T, 0, -32768, 32767, }, /*B相逆变电流相位偏移量*/
|
||||||
|
{12, DATATYPE_UINT16_T, 10000, 7000, 13000, }, /*C相采样校准a(逆变侧电感电流)*/
|
||||||
|
{13, DATATYPE_INT16_T, 0, -32768, 32767, }, /*C相采样校准b(逆变侧电感电流)*/
|
||||||
|
{14, DATATYPE_INT16_T, 0, -32768, 32767, }, /*C相逆变电流相位偏移量*/
|
||||||
|
{15, DATATYPE_UINT16_T, 10000, 7000, 13000, }, /*A相LCL电容电流系数*/
|
||||||
|
{16, DATATYPE_INT16_T, 0, -32768, 32767, }, /*A相LCL电容电流相位偏移量*/
|
||||||
|
{17, DATATYPE_UINT16_T, 10000, 7000, 13000, }, /*B相LCL电容电流系数*/
|
||||||
|
{18, DATATYPE_INT16_T, 0, -32768, 32767, }, /*B相LCL电容电流相位偏移量*/
|
||||||
|
{19, DATATYPE_UINT16_T, 10000, 7000, 13000, }, /*C相LCL电容电流系数*/
|
||||||
|
{20, DATATYPE_INT16_T, 0, -32768, 32767, }, /*C相LCL电容电流相位偏移量*/
|
||||||
|
{21, DATATYPE_UINT16_T, 10000, 7000, 13000, }, /*采样校准a(BOOST1电感电流)*/
|
||||||
|
{22, DATATYPE_INT16_T, 0, -32768, 32767, }, /*采样校准b(BOOST1电感电流)*/
|
||||||
|
{23, DATATYPE_UINT16_T, 10000, 7000, 13000, }, /*采样校准a(BOOST2电感电流)*/
|
||||||
|
{24, DATATYPE_INT16_T, 0, -32768, 32767, }, /*采样校准b(BOOST2电感电流)*/
|
||||||
|
{25, DATATYPE_UINT16_T, 10000, 7000, 13000, }, /*采样校准a(BOOST3电感电流)*/
|
||||||
|
{26, DATATYPE_INT16_T, 0, -32768, 32767, }, /*采样校准b(BOOST3电感电流)*/
|
||||||
|
{27, DATATYPE_UINT16_T, 10000, 7000, 13000, }, /*采样校准a(BOOST4电感电流)*/
|
||||||
|
{28, DATATYPE_INT16_T, 0, -32768, 32767, }, /*采样校准b(BOOST4电感电流)*/
|
||||||
|
{29, DATATYPE_UINT16_T, 10000, 7000, 13000, }, /*采样校准a支路1(输入电压)*/
|
||||||
|
{30, DATATYPE_INT16_T, 0, -32768, 32767, }, /*采样校准b支路1(输入电压)*/
|
||||||
|
{31, DATATYPE_UINT16_T, 10000, 7000, 13000, }, /*采样校准a支路2(输入电压)*/
|
||||||
|
{32, DATATYPE_INT16_T, 0, -32768, 32767, }, /*采样校准b支路2(输入电压)*/
|
||||||
|
{33, DATATYPE_UINT16_T, 10000, 7000, 13000, }, /*采样校准a支路3(输入电压)*/
|
||||||
|
{34, DATATYPE_INT16_T, 0, -32768, 32767, }, /*采样校准b支路3(输入电压)*/
|
||||||
|
{35, DATATYPE_UINT16_T, 10000, 7000, 13000, }, /*采样校准a支路4(输入电压)*/
|
||||||
|
{36, DATATYPE_INT16_T, 0, -32768, 32767, }, /*采样校准b支路4(输入电压)*/
|
||||||
|
{37, DATATYPE_UINT16_T, 10000, 7000, 13000, }, /*采样校准a(温度补偿)*/
|
||||||
|
{38, DATATYPE_INT16_T, 0, -32768, 32767, }, /*采样校准b(温度补偿)*/
|
||||||
|
{39, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{40, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{41, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{42, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{43, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{44, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{45, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{46, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{47, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{48, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{49, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{50, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{51, DATATYPE_UINT16_T, 0, 0, 1, }, /*开机*/
|
||||||
|
{52, DATATYPE_UINT16_T, 0, 0, 1, }, /*关机*/
|
||||||
|
{53, DATATYPE_UINT16_T, 0, 0, 1, }, /*故障复位*/
|
||||||
|
{54, DATATYPE_UINT16_T, 0, 0, 1, }, /*芯片复位重启*/
|
||||||
|
{55, DATATYPE_UINT16_T, 0, 0, 1, }, /*功率单元自检(调试)*/
|
||||||
|
{56, DATATYPE_UINT16_T, 0, 0, 1, }, /*参数还原*/
|
||||||
|
{57, DATATYPE_UINT16_T, 0, 0, 1, }, /*过温限功率标志*/
|
||||||
|
{58, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{59, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{60, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{61, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{62, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{63, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{64, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{65, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{66, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{67, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{68, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{69, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{70, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{71, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{72, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{73, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{74, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{75, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{76, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{77, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{78, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{79, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{80, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{81, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{82, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{83, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{84, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{85, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{86, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{87, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{88, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{89, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{90, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{91, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{92, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{93, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{94, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{95, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{96, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{97, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{98, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{99, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{100, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{101, DATATYPE_UINT16_T, 1, 0, 1, }, /*工作使能*/
|
||||||
|
{102, DATATYPE_UINT16_T, 1, 0, 1, }, /*孤岛检测使能*/
|
||||||
|
{103, DATATYPE_UINT16_T, 0, 0, 1, }, /*LVRT使能*/
|
||||||
|
{104, DATATYPE_UINT16_T, 0, 0, 1, }, /*HVRT使能*/
|
||||||
|
{105, DATATYPE_UINT16_T, 1, 0, 1, }, /*MPPT使能*/
|
||||||
|
{106, DATATYPE_UINT16_T, 0, 0, 1, }, /*老化测试使能*/
|
||||||
|
{107, DATATYPE_UINT16_T, 1, 0, 1, }, /*相序异常运行使能*/
|
||||||
|
{108, DATATYPE_UINT16_T, 1, 0, 1, }, /*预留参数1_3*/
|
||||||
|
{109, DATATYPE_UINT16_T, 1800, 1000, 3000, }, /*直流输入电压开机阈值*/
|
||||||
|
{110, DATATYPE_UINT16_T, 1600, 0, 2000, }, /*直流输入电压关机阈值*/
|
||||||
|
#if defined(PV_INV30)
|
||||||
|
{111, DATATYPE_UINT16_T, 330, 0, 600, }, /*最大输出功率限值*/
|
||||||
|
#elif defined(PV_INV40)
|
||||||
|
{111, DATATYPE_UINT16_T, 440, 0, 600, }, /*最大输出功率限值*/
|
||||||
|
#elif defined(PV_INV50)
|
||||||
|
{111, DATATYPE_UINT16_T, 550, 0, 600, }, /*最大输出功率限值*/
|
||||||
|
#else
|
||||||
|
{111, DATATYPE_UINT16_T, 0, 0, 0 }, /*最大输出功率限值*/
|
||||||
|
#endif
|
||||||
|
{112, DATATYPE_UINT16_T, 100, 0, 65535, }, /*功率变化率上限*/
|
||||||
|
{113, DATATYPE_UINT16_T, 0, 0, 3, }, /*无功生成模式*/
|
||||||
|
{114, DATATYPE_INT16_T, 0, -32768, 32767, }, /*恒无功控制给定所需的无功功率*/
|
||||||
|
{115, DATATYPE_INT16_T, 1000, -32768, 32767, }, /*恒功率因数控制给定所需的功率因数*/
|
||||||
|
{116, DATATYPE_UINT16_T, 2200, 2100, 2300, }, /*恒电网电压控制给定目标电网电压*/
|
||||||
|
{117, DATATYPE_UINT16_T, 2, 0, 2, }, /*预留参数1_5*/
|
||||||
|
{118, DATATYPE_UINT16_T, 2, 0, 2, }, /*预留参数1_6*/
|
||||||
|
{119, DATATYPE_UINT16_T, 0, 0, 2, }, /*预留参数1_7*/
|
||||||
|
{120, DATATYPE_UINT16_T, 0, 0, 2, }, /*预留参数1_8*/
|
||||||
|
{121, DATATYPE_UINT16_T, 0, 0, 1, }, /*多峰扫描使能*/
|
||||||
|
{122, DATATYPE_UINT16_T, 5, 1, 10, }, /*多峰扫描时间间隔*/
|
||||||
|
{123, DATATYPE_UINT16_T, 400, 300, 400, }, /*频率-有功控制斜率*/
|
||||||
|
{124, DATATYPE_UINT16_T, 1, 0, 2, }, /*电网恢复等待时间*/
|
||||||
|
{125, DATATYPE_UINT16_T, 200, 100, 300, }, /*孤岛响应时间上限*/
|
||||||
|
{126, DATATYPE_UINT16_T, 200, 150, 200, }, /*预留参数1_9*/
|
||||||
|
{127, DATATYPE_UINT16_T, 30, 10, 40, }, /*MPPT最小扰动步长*/
|
||||||
|
{128, DATATYPE_UINT16_T, 1, 0, 1, }, /*待机母线均压使能*/
|
||||||
|
{129, DATATYPE_UINT16_T, 180, 160, 200, }, /*关机上限时间*/
|
||||||
|
{130, DATATYPE_UINT16_T, 9000, 8500, 10000, }, /*开机电压上限*/
|
||||||
|
{131, DATATYPE_UINT16_T, 10000, 5000, 11000, }, /*追踪电压上限*/
|
||||||
|
{132, DATATYPE_UINT16_T, 0, 0, 1, }, /*低压降额使能*/
|
||||||
|
{133, DATATYPE_UINT16_T, 0, 0, 1, }, /*过压降额使能*/
|
||||||
|
{134, DATATYPE_UINT16_T, 0, 0, 1, }, /*共用一路输入模式*/
|
||||||
|
{135, DATATYPE_UINT16_T, 0, 0, 1, }, /*故障模式*/
|
||||||
|
{136, DATATYPE_UINT16_T, 1, 0, 1, }, /*预留参数1_10*/
|
||||||
|
{137, DATATYPE_UINT16_T, 0, 0, 5, }, /*PV1连接关系*/
|
||||||
|
{138, DATATYPE_UINT16_T, 0, 0, 5, }, /*PV2连接关系*/
|
||||||
|
{139, DATATYPE_UINT16_T, 0, 0, 5, }, /*PV3连接关系*/
|
||||||
|
{140, DATATYPE_UINT16_T, 0, 0, 5, }, /*PV4连接关系*/
|
||||||
|
{141, DATATYPE_UINT16_T, 1, 0, 1, }, /*MPPT波动处理逻辑使能*/
|
||||||
|
{142, DATATYPE_UINT16_T, 1, 0, 1, }, /*有功功率自动调整*/
|
||||||
|
{143, DATATYPE_INT16_T, -3, -32768, 32767, }, /*无功补偿量*/
|
||||||
|
{144, DATATYPE_UINT16_T, 1, 0, 1, }, /*无功闭环补偿使能*/
|
||||||
|
{145, DATATYPE_UINT16_T, 1, 0, 1, }, /*逆变电流补偿使能*/
|
||||||
|
{146, DATATYPE_UINT16_T, 1000, 0, 65535, }, /*逆变电流补偿系数*/
|
||||||
|
{147, DATATYPE_INT16_T, 47, -32768, 32767, }, /*逆变电路延迟角度*/
|
||||||
|
{148, DATATYPE_INT16_T, -50, -32768, 32767, }, /*电容电流延迟角度*/
|
||||||
|
{149, DATATYPE_UINT16_T, 1200, 0, 65535, }, /*电容电流比例系数*/
|
||||||
|
{150, DATATYPE_UINT16_T, 2, 0, 65535, }, /*PV电流比例校准系数*/
|
||||||
|
{151, DATATYPE_UINT16_T, 0, 0, 2, }, /*PV输入校准标志*/
|
||||||
|
{152, DATATYPE_UINT16_T, 15, 0, 65535, }, /*直流功率补偿*/
|
||||||
|
{153, DATATYPE_UINT16_T, 0, 0, 4, }, /*BOOST运行模式*/
|
||||||
|
{154, DATATYPE_UINT16_T, 1, 0, 1, }, /*第1路BOOST使能*/
|
||||||
|
{155, DATATYPE_UINT16_T, 1, 0, 1, }, /*第2路BOOST使能*/
|
||||||
|
{156, DATATYPE_UINT16_T, 1, 0, 1, }, /*第3路BOOST使能*/
|
||||||
|
{157, DATATYPE_UINT16_T, 1, 0, 1, }, /*第4路BOOST使能*/
|
||||||
|
{158, DATATYPE_UINT16_T, 0, 0, 1, }, /*分段保护使能*/
|
||||||
|
{159, DATATYPE_UINT16_T, 1, 0, 1, }, /*PV反接检测使能*/
|
||||||
|
{160, DATATYPE_UINT16_T, 0, 0, 1, }, /*PV回灌检测使能*/
|
||||||
|
{161, DATATYPE_UINT16_T, 1, 0, 1, }, /*孤岛保护兼容频率适应性*/
|
||||||
|
{162, DATATYPE_UINT16_T, 1, 0, 1, }, /*功率控制时无功优先使能*/
|
||||||
|
{163, DATATYPE_UINT16_T, 1, 0, 1, }, /*母线欠压检测使能*/
|
||||||
|
{164, DATATYPE_UINT16_T, 0, 0, 1, }, /*高低穿模式切换*/
|
||||||
|
{165, DATATYPE_UINT16_T, 0, 0, 1, }, /*预留参数1_4*/
|
||||||
|
{166, DATATYPE_UINT16_T, 1, 0, 1, }, /*电压无功控制模式*/
|
||||||
|
{167, DATATYPE_UINT16_T, 1, 0, 1, }, /*精度判断模式*/
|
||||||
|
{168, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{169, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{170, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{171, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{172, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{173, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{174, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{175, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{176, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{177, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{178, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{179, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{180, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{181, DATATYPE_UINT16_T, 5, 0, 65535, }, /*外环PI控制:Kp*/
|
||||||
|
{182, DATATYPE_UINT16_T, 200, 0, 65535, }, /*外环PI控制:Ki*/
|
||||||
|
#if defined(PV_INV30)
|
||||||
|
{183, DATATYPE_UINT16_T, 780, 0, 65535, }, /*外环PI控制:OutLimit*/
|
||||||
|
#elif defined(PV_INV40)
|
||||||
|
{183, DATATYPE_UINT16_T, 1010, 0, 65535, }, /*外环PI控制:OutLimit*/
|
||||||
|
#elif defined(PV_INV50)
|
||||||
|
{183, DATATYPE_UINT16_T, 1250, 0, 65535, }, /*外环PI控制:OutLimit*/
|
||||||
|
#else
|
||||||
|
{183, DATATYPE_UINT16_T, 0, 0, 0 }, /*外环PI控制:OutLimit*/
|
||||||
|
#endif
|
||||||
|
{184, DATATYPE_UINT16_T, 1, 0, 65535, }, /*均压环PI控制:Kp*/
|
||||||
|
{185, DATATYPE_UINT16_T, 0, 0, 65535, }, /*均压环PI控制:Ki*/
|
||||||
|
{186, DATATYPE_UINT16_T, 100, 0, 65535, }, /*均压环PI控制:OutLimit*/
|
||||||
|
{187, DATATYPE_UINT16_T, 10, 0, 65535, }, /*电流环Kp */
|
||||||
|
{188, DATATYPE_UINT16_T, 0, 0, 65535, }, /*有源阻尼Kp*/
|
||||||
|
{189, DATATYPE_UINT16_T, 5, 0, 65535, }, /*无功稳压控制Kp*/
|
||||||
|
{190, DATATYPE_UINT16_T, 10, 0, 65535, }, /*无功稳压控制Ki*/
|
||||||
|
{191, DATATYPE_UINT16_T, 100, 0, 65535, }, /*电流环q轴PI控制:Ki*/
|
||||||
|
{192, DATATYPE_UINT16_T, 2250, 0, 65535, }, /*电流环q轴PI控制:OutLimit*/
|
||||||
|
{193, DATATYPE_UINT16_T, 10, 0, 65535, }, /*零序电流PI控制:Kp*/
|
||||||
|
{194, DATATYPE_UINT16_T, 1000, 0, 65535, }, /*零序电流PI控制:Ki*/
|
||||||
|
{195, DATATYPE_UINT16_T, 2250, 0, 65535, }, /*零序电流PI控制:OutLimit*/
|
||||||
|
{196, DATATYPE_UINT16_T, 500, 0, 65535, }, /*1次谐振增益*/
|
||||||
|
{197, DATATYPE_UINT16_T, 200, 0, 65535, }, /*2次谐振增益*/
|
||||||
|
{198, DATATYPE_UINT16_T, 300, 0, 65535, }, /*3次谐振增益*/
|
||||||
|
{199, DATATYPE_UINT16_T, 200, 0, 65535, }, /*4次谐振增益*/
|
||||||
|
{200, DATATYPE_UINT16_T, 300, 0, 65535, }, /*5次谐振增益*/
|
||||||
|
{201, DATATYPE_UINT16_T, 200, 0, 65535, }, /*6次谐振增益*/
|
||||||
|
{202, DATATYPE_UINT16_T, 400, 0, 65535, }, /*7次谐振增益*/
|
||||||
|
{203, DATATYPE_UINT16_T, 200, 0, 65535, }, /*8次谐振增益*/
|
||||||
|
{204, DATATYPE_UINT16_T, 300, 0, 65535, }, /*9次谐振增益*/
|
||||||
|
{205, DATATYPE_UINT16_T, 200, 0, 65535, }, /*10次谐振增益*/
|
||||||
|
{206, DATATYPE_UINT16_T, 200, 0, 65535, }, /*11次谐振增益*/
|
||||||
|
{207, DATATYPE_UINT16_T, 200, 0, 65535, }, /*12次谐振增益*/
|
||||||
|
{208, DATATYPE_UINT16_T, 200, 0, 65535, }, /*13次谐振增益*/
|
||||||
|
{209, DATATYPE_UINT16_T, 200, 0, 65535, }, /*boost电压环Kp*/
|
||||||
|
{210, DATATYPE_UINT16_T, 1000, 0, 65535, }, /*boost电压环Ki*/
|
||||||
|
{211, DATATYPE_UINT16_T, 2, 0, 65535, }, /*boost电流环Kp*/
|
||||||
|
{212, DATATYPE_UINT16_T, 500, 0, 65535, }, /*boost电流环Ki*/
|
||||||
|
{213, DATATYPE_UINT16_T, 150, 0, 65535, }, /*低电压穿越系数*/
|
||||||
|
{214, DATATYPE_UINT16_T, 150, 0, 65535, }, /*高电压穿越系数*/
|
||||||
|
#if defined(PV_INV30)
|
||||||
|
{215, DATATYPE_UINT16_T, 3, 0, 10, }, /*调制方式*/
|
||||||
|
#elif defined(PV_INV40)
|
||||||
|
{215, DATATYPE_UINT16_T, 3, 0, 10, }, /*调制方式*/
|
||||||
|
#elif defined(PV_INV50)
|
||||||
|
{215, DATATYPE_UINT16_T, 3, 0, 10, }, /*调制方式*/
|
||||||
|
#else
|
||||||
|
{215, DATATYPE_UINT16_T, 0, 0, 0 }, /*调制方式*/
|
||||||
|
#endif
|
||||||
|
{216, DATATYPE_UINT16_T, 1, 0, 65535, }, /*电压前馈方式*/
|
||||||
|
{217, DATATYPE_UINT16_T, 5850, 0, 65535, }, /*母线电压参考值下限*/
|
||||||
|
{218, DATATYPE_UINT16_T, 8, 0, 65535, }, /*零序分量控制kp参数*/
|
||||||
|
{219, DATATYPE_UINT16_T, 7, 0, 65535, }, /*加权前馈的占比系数*/
|
||||||
|
{220, DATATYPE_UINT16_T, 0, 0, 65535, }, /*限功率模式使能*/
|
||||||
|
{221, DATATYPE_UINT16_T, 200, 0, 65535, }, /*孤岛保护Kp*/
|
||||||
|
{222, DATATYPE_UINT16_T, 864, 0, 65535, }, /*进入CPWM调制度阈值*/
|
||||||
|
{223, DATATYPE_UINT16_T, 888, 0, 65535, }, /*进入DPWM调制度阈值*/
|
||||||
|
#if defined(PV_INV30)
|
||||||
|
{224, DATATYPE_UINT16_T, 5350, 0, 11000, }, /*进入CPWM母线电压阈值*/
|
||||||
|
#elif defined(PV_INV40)
|
||||||
|
{224, DATATYPE_UINT16_T, 7200, 0, 11000, }, /*进入CPWM母线电压阈值*/
|
||||||
|
#elif defined(PV_INV50)
|
||||||
|
{224, DATATYPE_UINT16_T, 7200, 0, 11000, }, /*进入CPWM母线电压阈值*/
|
||||||
|
#else
|
||||||
|
{224, DATATYPE_UINT16_T, 0, 0, 0 }, /*进入CPWM母线电压阈值*/
|
||||||
|
#endif
|
||||||
|
#if defined(PV_INV30)
|
||||||
|
{225, DATATYPE_UINT16_T, 5450, 0, 11000, }, /*进入DPWM母线电压阈值*/
|
||||||
|
#elif defined(PV_INV40)
|
||||||
|
{225, DATATYPE_UINT16_T, 7000, 0, 11000, }, /*进入DPWM母线电压阈值*/
|
||||||
|
#elif defined(PV_INV50)
|
||||||
|
{225, DATATYPE_UINT16_T, 7000, 0, 11000, }, /*进入DPWM母线电压阈值*/
|
||||||
|
#else
|
||||||
|
{225, DATATYPE_UINT16_T, 0, 0, 0 }, /*进入DPWM母线电压阈值*/
|
||||||
|
#endif
|
||||||
|
{226, DATATYPE_UINT16_T, 7500, 0, 65535, }, /*直流电压参考*/
|
||||||
|
{227, DATATYPE_UINT16_T, 3200, 0, 65535, }, /*交流电压参考*/
|
||||||
|
{228, DATATYPE_INT16_T, 0, -32768, 32767, }, /*无功电流参考*/
|
||||||
|
{229, DATATYPE_UINT16_T, 0, 0, 50, }, /*boost1电流参考值*/
|
||||||
|
{230, DATATYPE_UINT16_T, 0, 0, 50, }, /*boost2电流参考值*/
|
||||||
|
{231, DATATYPE_UINT16_T, 0, 0, 50, }, /*boost3电流参考值*/
|
||||||
|
{232, DATATYPE_UINT16_T, 0, 0, 50, }, /*boost4电流参考值*/
|
||||||
|
{233, DATATYPE_INT16_T, 0, -32768, 32767, }, /*有功电流参考*/
|
||||||
|
{234, DATATYPE_UINT16_T, 200, 0, 10000, }, /*无功调压系数*/
|
||||||
|
{235, DATATYPE_UINT16_T, 400, 0, 2000, }, /*共模电流幅值阈值*/
|
||||||
|
{236, DATATYPE_UINT16_T, 12, 0, 20000, }, /*CPWM共模电流次数*/
|
||||||
|
{237, DATATYPE_UINT16_T, 6, 0, 20000, }, /*DPWM共模电流次数*/
|
||||||
|
{238, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{239, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{240, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{241, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{242, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{243, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{244, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{245, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{246, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{247, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{248, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{249, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{250, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{251, DATATYPE_UINT16_T, 10200, 10000, 12000, }, /*开路电压过高阈值*/
|
||||||
|
{252, DATATYPE_UINT16_T, 10500, 10000, 12000, }, /*直流输入过压阈值*/
|
||||||
|
{253, DATATYPE_UINT16_T, 5250, 0, 6000, }, /*直流母线过压阈值*/
|
||||||
|
{254, DATATYPE_UINT16_T, 2000, 0, 5500, }, /*直流母线欠压阈值*/
|
||||||
|
#if defined(PV_INV30)
|
||||||
|
{255, DATATYPE_UINT16_T, 1000, 0, 2000, }, /*逆变电流保护瞬时值*/
|
||||||
|
#elif defined(PV_INV40)
|
||||||
|
{255, DATATYPE_UINT16_T, 1270, 0, 2000, }, /*逆变电流保护瞬时值*/
|
||||||
|
#elif defined(PV_INV50)
|
||||||
|
{255, DATATYPE_UINT16_T, 1450, 0, 2000, }, /*逆变电流保护瞬时值*/
|
||||||
|
#else
|
||||||
|
{255, DATATYPE_UINT16_T, 0, 0, 0 }, /*逆变电流保护瞬时值*/
|
||||||
|
#endif
|
||||||
|
#if defined(PV_INV30)
|
||||||
|
{256, DATATYPE_UINT16_T, 550, 500, 550, }, /*逆变电流保护有效值*/
|
||||||
|
#elif defined(PV_INV40)
|
||||||
|
{256, DATATYPE_UINT16_T, 700, 500, 800, }, /*逆变电流保护有效值*/
|
||||||
|
#elif defined(PV_INV50)
|
||||||
|
{256, DATATYPE_UINT16_T, 900, 500, 1000, }, /*逆变电流保护有效值*/
|
||||||
|
#else
|
||||||
|
{256, DATATYPE_UINT16_T, 0, 0, 0 }, /*逆变电流保护有效值*/
|
||||||
|
#endif
|
||||||
|
#if defined(PV_INV30)
|
||||||
|
{257, DATATYPE_UINT16_T, 900, 0, 1500, }, /*逆变电流逐波限流封锁阈值*/
|
||||||
|
#elif defined(PV_INV40)
|
||||||
|
{257, DATATYPE_UINT16_T, 900, 0, 1500, }, /*逆变电流逐波限流封锁阈值*/
|
||||||
|
#elif defined(PV_INV50)
|
||||||
|
{257, DATATYPE_UINT16_T, 900, 0, 1500, }, /*逆变电流逐波限流封锁阈值*/
|
||||||
|
#else
|
||||||
|
{257, DATATYPE_UINT16_T, 0, 0, 0 }, /*逆变电流逐波限流封锁阈值*/
|
||||||
|
#endif
|
||||||
|
#if defined(PV_INV30)
|
||||||
|
{258, DATATYPE_UINT16_T, 750, 700, 1000, }, /*逆变电流逐波限流解封阈值*/
|
||||||
|
#elif defined(PV_INV40)
|
||||||
|
{258, DATATYPE_UINT16_T, 750, 700, 1000, }, /*逆变电流逐波限流解封阈值*/
|
||||||
|
#elif defined(PV_INV50)
|
||||||
|
{258, DATATYPE_UINT16_T, 750, 700, 1000, }, /*逆变电流逐波限流解封阈值*/
|
||||||
|
#else
|
||||||
|
{258, DATATYPE_UINT16_T, 0, 0, 0 }, /*逆变电流逐波限流解封阈值*/
|
||||||
|
#endif
|
||||||
|
#if defined(PV_INV30)
|
||||||
|
{259, DATATYPE_UINT16_T, 840, 450, 1000, }, /*Boost1过流软件保护阈值*/
|
||||||
|
#elif defined(PV_INV40)
|
||||||
|
{259, DATATYPE_UINT16_T, 840, 450, 1000, }, /*Boost1过流软件保护阈值*/
|
||||||
|
#elif defined(PV_INV50)
|
||||||
|
{259, DATATYPE_UINT16_T, 840, 450, 1000, }, /*Boost1过流软件保护阈值*/
|
||||||
|
#else
|
||||||
|
{259, DATATYPE_UINT16_T, 0, 0, 0 }, /*Boost1过流软件保护阈值*/
|
||||||
|
#endif
|
||||||
|
#if defined(PV_INV30)
|
||||||
|
{260, DATATYPE_UINT16_T, 840, 450, 1000, }, /*Boost2过流软件保护阈值*/
|
||||||
|
#elif defined(PV_INV40)
|
||||||
|
{260, DATATYPE_UINT16_T, 840, 450, 1000, }, /*Boost2过流软件保护阈值*/
|
||||||
|
#elif defined(PV_INV50)
|
||||||
|
{260, DATATYPE_UINT16_T, 840, 450, 1000, }, /*Boost2过流软件保护阈值*/
|
||||||
|
#else
|
||||||
|
{260, DATATYPE_UINT16_T, 0, 0, 0 }, /*Boost2过流软件保护阈值*/
|
||||||
|
#endif
|
||||||
|
{261, DATATYPE_UINT16_T, 750, 450, 1000, }, /*Boost3过流软件保护阈值*/
|
||||||
|
{262, DATATYPE_UINT16_T, 750, 450, 1000, }, /*Boost4过流软件保护阈值*/
|
||||||
|
{263, DATATYPE_UINT16_T, 1000, 0, 1100, }, /*MPPT短路电压阈值*/
|
||||||
|
{264, DATATYPE_UINT16_T, 20, 0, 50, }, /*MPPT短路电流阈值*/
|
||||||
|
{265, DATATYPE_UINT16_T, 2200, 2100, 2400, }, /*额定电网保护电压*/
|
||||||
|
{266, DATATYPE_UINT16_T, 2860, 2000, 3000, }, /*电网过压阈值*/
|
||||||
|
{267, DATATYPE_UINT16_T, 1540, 1200, 2600, }, /*电网欠压阈值*/
|
||||||
|
{268, DATATYPE_UINT16_T, 1100, 1000, 1200, }, /*电网欠压二级保护阈值*/
|
||||||
|
{269, DATATYPE_UINT16_T, 1870, 1770, 1970, }, /*电网欠压一级保护阈值*/
|
||||||
|
{270, DATATYPE_UINT16_T, 2420, 2100, 2630, }, /*电网过压一级保护阈值*/
|
||||||
|
{271, DATATYPE_UINT16_T, 2970, 2900, 3000, }, /*电网过压二级保护阈值*/
|
||||||
|
{272, DATATYPE_UINT16_T, 2600, 2550, 2650, }, /*过压降额阈值*/
|
||||||
|
{273, DATATYPE_UINT16_T, 505, 450, 550, }, /*电网频率上限*/
|
||||||
|
{274, DATATYPE_UINT16_T, 480, 450, 550, }, /*电网频率下限*/
|
||||||
|
{275, DATATYPE_UINT16_T, 4650, 4600, 4700, }, /*电网欠频五级保护阈值*/
|
||||||
|
{276, DATATYPE_UINT16_T, 4700, 4650, 4750, }, /*电网欠频四级保护阈值*/
|
||||||
|
{277, DATATYPE_UINT16_T, 4750, 4700, 4800, }, /*电网欠频三级保护阈值*/
|
||||||
|
{278, DATATYPE_UINT16_T, 4800, 4750, 4850, }, /*电网欠频二级保护阈值*/
|
||||||
|
{279, DATATYPE_UINT16_T, 4850, 4800, 4900, }, /*电网欠频一级保护阈值*/
|
||||||
|
{280, DATATYPE_UINT16_T, 5050, 5000, 5100, }, /*电网过频一级保护阈值*/
|
||||||
|
{281, DATATYPE_UINT16_T, 5100, 5050, 5150, }, /*电网过频二级保护阈值*/
|
||||||
|
{282, DATATYPE_UINT16_T, 5150, 5100, 5200, }, /*电网过频三级保护阈值*/
|
||||||
|
{283, DATATYPE_UINT16_T, 5003, 5000, 5010, }, /*过频降额阈值*/
|
||||||
|
{284, DATATYPE_UINT16_T, 120, 50, 200, }, /*滤波电容过流保护阈值*/
|
||||||
|
{285, DATATYPE_UINT16_T, 3300, 2000, 3500, }, /*滤波电容过压保护阈值*/
|
||||||
|
{286, DATATYPE_UINT16_T, 700, 300, 1000, }, /*绝缘阻抗检测阈值*/
|
||||||
|
{287, DATATYPE_UINT16_T, 0, 0, 1, }, /*电网故障屏蔽内部故障*/
|
||||||
|
{288, DATATYPE_UINT16_T, 10, 5, 20, }, /*主动反孤岛阈值*/
|
||||||
|
{289, DATATYPE_UINT16_T, 20, 10, 30, }, /*反孤岛无功电流余量*/
|
||||||
|
{290, DATATYPE_UINT16_T, 0, 0, 65535, }, /*PV接线检测(未启用)*/
|
||||||
|
{291, DATATYPE_UINT16_T, 200, 40, 500, }, /*PV反接电压阈值*/
|
||||||
|
{292, DATATYPE_UINT16_T, 10, 0, 90, }, /*PV反接电感电流阈值*/
|
||||||
|
{293, DATATYPE_UINT16_T, 0, 0, 65535, }, /*PV回灌电压阈值*/
|
||||||
|
{294, DATATYPE_UINT16_T, 0, 0, 65535, }, /*支路输入电流阈值*/
|
||||||
|
{295, DATATYPE_INT16_T, -10, -50, 0, }, /*支路输入电流阈值1*/
|
||||||
|
{296, DATATYPE_UINT16_T, 10, 0, 50, }, /*支路输入电流阈值2*/
|
||||||
|
{297, DATATYPE_UINT16_T, 200, 0, 65535, }, /*节能告警阈值1*/
|
||||||
|
{298, DATATYPE_UINT16_T, 300, 0, 65535, }, /*节能告警阈值2*/
|
||||||
|
{299, DATATYPE_UINT16_T, 85, 10, 1000, }, /*腔体过温阈值*/
|
||||||
|
{300, DATATYPE_UINT16_T, 110, 10, 1000, }, /*腔体2过温阈值*/
|
||||||
|
{301, DATATYPE_UINT16_T, 85, 10, 1000, }, /*散热片过温阈值*/
|
||||||
|
{302, DATATYPE_UINT16_T, 90, 0, 65535, }, /*Q-U低压系数阈值*/
|
||||||
|
{303, DATATYPE_UINT16_T, 110, 0, 65535, }, /*Q-U高压系数阈值*/
|
||||||
|
{304, DATATYPE_UINT16_T, 90, 0, 65535, }, /*低穿穿越边界*/
|
||||||
|
{305, DATATYPE_UINT16_T, 110, 0, 65535, }, /*高穿穿越边界*/
|
||||||
|
{306, DATATYPE_UINT16_T, 100, 0, 10000, }, /*滤波电容过流保护时间*/
|
||||||
|
{307, DATATYPE_UINT16_T, 100, 0, 10000, }, /*逆变过流保护时间*/
|
||||||
|
{308, DATATYPE_UINT16_T, 100, 0, 30000, }, /*电网过压L0保护时间*/
|
||||||
|
{309, DATATYPE_UINT16_T, 1000, 0, 30000, }, /*电网过压L1保护时间*/
|
||||||
|
{310, DATATYPE_UINT16_T, 100, 0, 30000, }, /*电网过压L2保护时间*/
|
||||||
|
{311, DATATYPE_UINT16_T, 100, 0, 30000, }, /*电网欠压L0保护时间*/
|
||||||
|
{312, DATATYPE_UINT16_T, 1000, 0, 30000, }, /*电网欠压L1保护时间*/
|
||||||
|
{313, DATATYPE_UINT16_T, 100, 0, 30000, }, /*电网欠压L2保护时间*/
|
||||||
|
{314, DATATYPE_UINT16_T, 100, 0, 30000, }, /*电网过频L0保护时间*/
|
||||||
|
{315, DATATYPE_UINT16_T, 190, 0, 10000, }, /*电网过频L1保护时间*/
|
||||||
|
{316, DATATYPE_UINT16_T, 40, 0, 10000, }, /*电网过频L2保护时间*/
|
||||||
|
{317, DATATYPE_UINT16_T, 200, 0, 30000, }, /*电网过频L3保护时间*/
|
||||||
|
{318, DATATYPE_UINT16_T, 100, 0, 30000, }, /*电网欠频L0保护时间*/
|
||||||
|
{319, DATATYPE_UINT16_T, 310, 0, 10000, }, /*电网欠频L1保护时间*/
|
||||||
|
{320, DATATYPE_UINT16_T, 70, 0, 10000, }, /*电网欠频L2保护时间*/
|
||||||
|
{321, DATATYPE_UINT16_T, 30, 0, 10000, }, /*电网欠频L3保护时间*/
|
||||||
|
{322, DATATYPE_UINT16_T, 15, 0, 10000, }, /*电网欠频L4保护时间*/
|
||||||
|
{323, DATATYPE_UINT16_T, 200, 0, 30000, }, /*电网欠频L5保护时间*/
|
||||||
|
{324, DATATYPE_UINT16_T, 1000, 0, 30000, }, /*母线欠压保护时间*/
|
||||||
|
{325, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{326, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{327, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{328, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{329, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{330, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
#if defined(PV_INV30)
|
||||||
|
{331, DATATYPE_UINT16_T, 455, 0, 7000, }, /*高低穿无功电流限幅值*/
|
||||||
|
#elif defined(PV_INV40)
|
||||||
|
{331, DATATYPE_UINT16_T, 610, 0, 7000, }, /*高低穿无功电流限幅值*/
|
||||||
|
#elif defined(PV_INV50)
|
||||||
|
{331, DATATYPE_UINT16_T, 760, 0, 7000, }, /*高低穿无功电流限幅值*/
|
||||||
|
#else
|
||||||
|
{331, DATATYPE_UINT16_T, 0, 0, 0 }, /*高低穿无功电流限幅值*/
|
||||||
|
#endif
|
||||||
|
#if defined(PV_INV30)
|
||||||
|
{332, DATATYPE_UINT16_T, 520, 0, 7500, }, /*逆变总电流限幅值*/
|
||||||
|
#elif defined(PV_INV40)
|
||||||
|
{332, DATATYPE_UINT16_T, 690, 0, 7500, }, /*逆变总电流限幅值*/
|
||||||
|
#elif defined(PV_INV50)
|
||||||
|
{332, DATATYPE_UINT16_T, 860, 0, 7500, }, /*逆变总电流限幅值*/
|
||||||
|
#else
|
||||||
|
{332, DATATYPE_UINT16_T, 0, 0, 0 }, /*逆变总电流限幅值*/
|
||||||
|
#endif
|
||||||
|
#if defined(PV_INV30)
|
||||||
|
{333, DATATYPE_UINT16_T, 520, 0, 7500, }, /*逆变有功电流限幅值*/
|
||||||
|
#elif defined(PV_INV40)
|
||||||
|
{333, DATATYPE_UINT16_T, 690, 0, 7500, }, /*逆变有功电流限幅值*/
|
||||||
|
#elif defined(PV_INV50)
|
||||||
|
{333, DATATYPE_UINT16_T, 860, 0, 7500, }, /*逆变有功电流限幅值*/
|
||||||
|
#else
|
||||||
|
{333, DATATYPE_UINT16_T, 0, 0, 0 }, /*逆变有功电流限幅值*/
|
||||||
|
#endif
|
||||||
|
#if defined(PV_INV30)
|
||||||
|
{334, DATATYPE_UINT16_T, 320, 0, 5000, }, /*逆变无功电流限幅值*/
|
||||||
|
#elif defined(PV_INV40)
|
||||||
|
{334, DATATYPE_UINT16_T, 420, 0, 5000, }, /*逆变无功电流限幅值*/
|
||||||
|
#elif defined(PV_INV50)
|
||||||
|
{334, DATATYPE_UINT16_T, 520, 0, 5000, }, /*逆变无功电流限幅值*/
|
||||||
|
#else
|
||||||
|
{334, DATATYPE_UINT16_T, 0, 0, 0 }, /*逆变无功电流限幅值*/
|
||||||
|
#endif
|
||||||
|
{335, DATATYPE_UINT16_T, 400, 0, 1000, }, /*Boost1单路电流限幅值*/
|
||||||
|
{336, DATATYPE_UINT16_T, 300, 0, 1000, }, /*Boost2单路电流限幅值*/
|
||||||
|
{337, DATATYPE_UINT16_T, 300, 0, 1000, }, /*Boost3单路电流限幅值*/
|
||||||
|
{338, DATATYPE_UINT16_T, 300, 0, 1000, }, /*Boost4单路电流限幅值*/
|
||||||
|
{339, DATATYPE_UINT16_T, 0, 0, 65535, }, /*5次谐波电流限幅值*/
|
||||||
|
{340, DATATYPE_UINT16_T, 0, 0, 65535, }, /*7次谐波电流限幅值*/
|
||||||
|
{341, DATATYPE_UINT16_T, 0, 0, 65535, }, /*11次谐波电流限幅值*/
|
||||||
|
{342, DATATYPE_UINT16_T, 0, 0, 65535, }, /*13次谐波电流限幅值*/
|
||||||
|
{343, DATATYPE_UINT16_T, 0, 0, 65535, }, /*17次谐波电流限幅值*/
|
||||||
|
{344, DATATYPE_UINT16_T, 0, 0, 65535, }, /*19次谐波电流限幅值*/
|
||||||
|
{345, DATATYPE_UINT16_T, 0, 0, 65535, }, /*2次谐波电流限幅值*/
|
||||||
|
{346, DATATYPE_UINT16_T, 0, 0, 65535, }, /*4次谐波电流限幅值*/
|
||||||
|
{347, DATATYPE_UINT16_T, 0, 0, 65535, }, /*6次谐波电流限幅值*/
|
||||||
|
{348, DATATYPE_UINT16_T, 0, 0, 65535, }, /*8次谐波电流限幅值*/
|
||||||
|
{349, DATATYPE_UINT16_T, 0, 0, 65535, }, /*10次谐波电流限幅值*/
|
||||||
|
{350, DATATYPE_UINT16_T, 0, 0, 65535, }, /*14次谐波电流限幅值*/
|
||||||
|
{351, DATATYPE_UINT16_T, 0, 0, 65535, }, /*16次谐波电流限幅值*/
|
||||||
|
{352, DATATYPE_UINT16_T, 0, 0, 65535, }, /*20次谐波电流限幅值*/
|
||||||
|
#if defined(PV_INV30)
|
||||||
|
{353, DATATYPE_UINT16_T, 8000, 0, 65535, }, /*进入DPWM视在功率阈值*/
|
||||||
|
#elif defined(PV_INV40)
|
||||||
|
{353, DATATYPE_UINT16_T, 5000, 0, 65535, }, /*进入DPWM视在功率阈值*/
|
||||||
|
#elif defined(PV_INV50)
|
||||||
|
{353, DATATYPE_UINT16_T, 5000, 0, 65535, }, /*进入DPWM视在功率阈值*/
|
||||||
|
#else
|
||||||
|
{353, DATATYPE_UINT16_T, 0, 0, 0 }, /*进入DPWM视在功率阈值*/
|
||||||
|
#endif
|
||||||
|
#if defined(PV_INV30)
|
||||||
|
{354, DATATYPE_UINT16_T, 8900, 0, 65535, }, /*进入CPWM视在功率阈值*/
|
||||||
|
#elif defined(PV_INV40)
|
||||||
|
{354, DATATYPE_UINT16_T, 6000, 0, 65535, }, /*进入CPWM视在功率阈值*/
|
||||||
|
#elif defined(PV_INV50)
|
||||||
|
{354, DATATYPE_UINT16_T, 6000, 0, 65535, }, /*进入CPWM视在功率阈值*/
|
||||||
|
#else
|
||||||
|
{354, DATATYPE_UINT16_T, 0, 0, 0 }, /*进入CPWM视在功率阈值*/
|
||||||
|
#endif
|
||||||
|
{355, DATATYPE_UINT16_T, 60, 0, 1000, }, /*零序超前补偿kp*/
|
||||||
|
{356, DATATYPE_UINT16_T, 800, 0, 65535, }, /*散热片过温降功率阈值*/
|
||||||
|
{357, DATATYPE_UINT16_T, 800, 0, 65535, }, /*腔体过温降功率阈值*/
|
||||||
|
{358, DATATYPE_UINT16_T, 1050, 0, 65535, }, /*腔体2过温降功率阈值*/
|
||||||
|
{359, DATATYPE_UINT16_T, 100, 0, 65535, }, /*过温降额功率下限*/
|
||||||
|
{360, DATATYPE_UINT16_T, 100, 0, 65535, }, /*风扇故障降额功率下限*/
|
||||||
|
{361, DATATYPE_UINT16_T, 100, 0, 65535, }, /*过温降额功率上限*/
|
||||||
|
{362, DATATYPE_UINT16_T, 100, 0, 65535, }, /*过温降额功率变化率上限*/
|
||||||
|
{363, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{364, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{365, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{366, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{367, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{368, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{369, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{370, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{371, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{372, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{373, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{374, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{375, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{376, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{377, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{378, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{379, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{380, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{381, DATATYPE_UINT16_T, 0, 0, 1, }, /*预留参数5_0*/
|
||||||
|
{382, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数5_1*/
|
||||||
|
{383, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数5_2*/
|
||||||
|
{384, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数5_3*/
|
||||||
|
{385, DATATYPE_UINT16_T, 0, 0, 65535, }, /*整机状态*/
|
||||||
|
{386, DATATYPE_UINT16_T, 0, 0, 65535, }, /*逆变状态*/
|
||||||
|
{387, DATATYPE_UINT16_T, 0, 0, 65535, }, /*MPPT1状态(debug)*/
|
||||||
|
{388, DATATYPE_UINT16_T, 0, 0, 65535, }, /*MPPT2状态(debug)*/
|
||||||
|
{389, DATATYPE_UINT16_T, 0, 0, 65535, }, /*MPPT3状态(debug)*/
|
||||||
|
{390, DATATYPE_UINT16_T, 0, 0, 65535, }, /*MPPT4状态(debug)*/
|
||||||
|
{391, DATATYPE_UINT16_T, 0, 0, 65535, }, /*功率不足标志*/
|
||||||
|
{392, DATATYPE_UINT16_T, 0, 0, 1, }, /*MPPT手动参考标志位*/
|
||||||
|
{393, DATATYPE_UINT16_T, 600, 0, 1000, }, /*MPPT手动参考值*/
|
||||||
|
{394, DATATYPE_UINT16_T, 500, 0, 65535, }, /*母线均压开启阈值*/
|
||||||
|
{395, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数5_4*/
|
||||||
|
{396, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数5_5*/
|
||||||
|
{397, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{398, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{399, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{400, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{401, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{402, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{403, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{404, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{405, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{406, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{407, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{408, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{409, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{410, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{411, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{412, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{413, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{414, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{415, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{416, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{417, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{418, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{419, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{420, DATATYPE_UINT16_T, 1, 0, 100, }, /*自动化校准使能*/
|
||||||
|
{421, DATATYPE_UINT16_T, 0, 0, 1, }, /*自动化校准状态*/
|
||||||
|
{422, DATATYPE_UINT16_T, 0, 0, 1, }, /*自动化校准指令*/
|
||||||
|
{423, DATATYPE_UINT16_T, 0, 0, 1, }, /*自动化校准结果*/
|
||||||
|
{424, DATATYPE_UINT16_T, 0, 0, 65535, }, /*自动化校准刷新标志*/
|
||||||
|
{425, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_6*/
|
||||||
|
{426, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_7*/
|
||||||
|
{427, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_8*/
|
||||||
|
{428, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_9*/
|
||||||
|
{429, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_10*/
|
||||||
|
{430, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_11*/
|
||||||
|
{431, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_12*/
|
||||||
|
{432, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_13*/
|
||||||
|
{433, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_14*/
|
||||||
|
{434, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_15*/
|
||||||
|
{435, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_16*/
|
||||||
|
{436, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_17*/
|
||||||
|
{437, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_18*/
|
||||||
|
{438, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_19*/
|
||||||
|
{439, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_20*/
|
||||||
|
{440, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_21*/
|
||||||
|
{441, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_22*/
|
||||||
|
{442, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_23*/
|
||||||
|
{443, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_24*/
|
||||||
|
{444, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_25*/
|
||||||
|
{445, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_26*/
|
||||||
|
{446, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_27*/
|
||||||
|
{447, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_28*/
|
||||||
|
{448, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_29*/
|
||||||
|
{449, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_30*/
|
||||||
|
{450, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_31*/
|
||||||
|
{451, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_32*/
|
||||||
|
{452, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_33*/
|
||||||
|
{453, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_34*/
|
||||||
|
{454, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_35*/
|
||||||
|
{455, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_36*/
|
||||||
|
{456, DATATYPE_UINT16_T, 0, 0, 65535, }, /*预留参数6_37*/
|
||||||
|
{457, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{458, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{459, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{460, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{461, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{462, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{463, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{464, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{465, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{466, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{467, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{468, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{469, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{470, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{471, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{472, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{473, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{474, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{475, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{476, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{477, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{478, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{479, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{480, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{481, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{482, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{483, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{484, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{485, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{486, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{487, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{488, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{489, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{490, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{491, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{492, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{493, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{494, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{495, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{496, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{497, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{498, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
{499, DATATYPE_UINT16_T, 0, 0, USHRT_MAX }, /*预留*/
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
bool_t mw_protocol_modbus_check_param_out_of_range(uint16_t us_address, uint16_t us_value)
|
||||||
|
{
|
||||||
|
if(us_address > MAX_VALID_PARAM_ADDRESS)
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (DATATYPE_UINT16_T == s_ast_param_range[us_address].datatype)
|
||||||
|
{
|
||||||
|
if ((us_value < s_ast_param_range[us_address].min_value) || (us_value > s_ast_param_range[us_address].max_value))
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (DATATYPE_INT16_T == s_ast_param_range[us_address].datatype)
|
||||||
|
{
|
||||||
|
if (((int16_t)us_value < s_ast_param_range[us_address].min_value) || ((int16_t)us_value > s_ast_param_range[us_address].max_value))
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
uint16_t mw_protocol_modbus_get_param_default_value(uint16_t us_address)
|
||||||
|
{
|
||||||
|
if(us_address > MAX_VALID_PARAM_ADDRESS)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
1114
test/PV_Inverter/dsp/mw_param_manager_dsp_struct.h
Normal file
1114
test/PV_Inverter/dsp/mw_param_manager_dsp_struct.h
Normal file
File diff suppressed because it is too large
Load Diff
BIN
test/PV_Inverter/光伏逆变器2.1_通信地址表_V01.xlsx
Normal file
BIN
test/PV_Inverter/光伏逆变器2.1_通信地址表_V01.xlsx
Normal file
Binary file not shown.
BIN
test/PV_Inverter/光伏逆变器2.1_通信地址表_V33.xlsx
Normal file
BIN
test/PV_Inverter/光伏逆变器2.1_通信地址表_V33.xlsx
Normal file
Binary file not shown.
BIN
test/PV_Inverter/新平台-光伏逆变器2.1_ARM通信地址表_V01.xlsx
Normal file
BIN
test/PV_Inverter/新平台-光伏逆变器2.1_ARM通信地址表_V01.xlsx
Normal file
Binary file not shown.
Reference in New Issue
Block a user