單相插座程序修改筆記

2018.4.25於306修改:函數

程序功能:手機發送測量參考值spa

實現功能:手機發送新的電壓、電流、功率參考值,設置內部從新會修改電壓、電流、功率參考值,0.01度電量脈衝參考值3d

修改位置:TIM6_Process()函數code

函數部分以下blog

void TIM6_Process(void)
{
//УÕýģʽ
    if (U8_CURR_WorkMode == D_CAL_START_MODE)
    {
        U32_Cal_Times++;//УÕýʱ¼ä36S£¬1000W¸ºÔØ36Sʱ¼äÏûºÄ0.01¶Èµç
        if (U32_Cal_Times == D_TIME6_CAL_TIME) //0.01¶ÈУÕýʱ¼äµ½
        {
            U8_CURR_WorkMode = D_CAL_END_MODE;        
                        U32_Cal_Times=0;                    
            U16_REF_001_E_Pluse_CNT = U16_E_Pluse_CNT;        //¼Ç¼36Sʱ¼äÄÚµÄÂö³åÊý£¬´ËÂö³åÊý±íʾ0.01¶ÈÓõçÁ¿
                          atk_8266_send_cmd("AT+CIPSEND=0,8","OK",20);
                        delay_ms(10);
                        atk_8266_send_data("УÕý½áÊø","ok",20);//1000WÉ豸УÕýÒª36s  ¶ÔÓ¦0.01¡ãµç
                        Reset_RX_STA(1);
        }
    }

上述加粗語句修改成:cmd

U16_REF_001_E_Pluse_CNT = 3600000/U16_P_REF_Data; //
U16_REF_001_E_Pluse_CNT=U16_REF_001_E_Pluse_CNT*100000/U32_P_REF_PLUSEWIDTH_TIME;class

            U16_REF_001_E_Pluse_CNT = 3600000/U16_P_REF_Data;       
                        U16_REF_001_E_Pluse_CNT=U16_REF_001_E_Pluse_CNT*100000/U32_P_REF_PLUSEWIDTH_TIME;

當心大數值乘除致使的乘法溢出或者影響精度。cli

單相校準方法:  在插座上使用標準負載,如1000W,220V供電電壓,4.545A電流,而後手機鏈接插座發出的無線,做爲TCP client 鏈接192.168.4.1 端口8011,發送指令reference=10000,2200,4545便可。程序

   

 

單相插座設備測量模式:方法

(1)單週期測量模式

(2)計數脈衝測量模式

 

 

綜上所述,0.01度電的脈衝數計算公式:

U16_REF_001_E_Pluse_CNT=0.01/ECF=0.01*1000*3600/(U16_P_REF_Data*10^-1*U32_P_REF_PLUSEWIDTH_TIME*10^-6)=36*10^10/(U16_P_REF_Data*U32_P_REF_PLUSEWIDTH_TIME)

程序裏U32_P_REF_PLUSEWIDTH_TIME的單位是us因此要乘10的負六次方,U16_P_REF_Data單位不是W,U16_P_REF_Data/10纔是W。

相關文章
相關標籤/搜索