Bladeren bron

2021-06-03 / Wendell

Actions
1. fix parallel relay control logic (for DK model)
2. modify default config logic (do not re-initial the value when model name and serial number are available)
3. use shell command to erase and write flash
4. add wiring information to record dispenser and connector message
5. fork led indication process to display power cabinet's status (for DK model)
6. status code that power cabinet send to ocpp in sync with status code display on screen
7. extend ac contactor recovery time when psu module is error
8. modify psu module recovery logic when psu error occur
9. add misc command: billing information, stop charging button
10.add led indication (for DK model)
11.add message log when dispenser request cabinet status code
12.add check factory setting (run default config when flash is unavailable)
13.modify firmware update logic for DX model
14.fix one dispenser can not charging after one of two dispenser system is disconnected (for DK model)
15.fix average charging can not change to max charging when using r-load
16.add test command
17.fix psu module recovery logic

Files
1. As follow commit history

Image version : D0.13.XX.XXXX.XX
Wendell 3 jaren geleden
bovenliggende
commit
ec9e5eab9a

+ 29 - 4
EVSE/Projects/DO360/Apps/Config.h

@@ -321,7 +321,8 @@ typedef union
     {
         unsigned int DisableBalance:1;              // 0: no effect,                1: disable announce balance
         unsigned int FastStandbyTime:1;             // 0: no effect,                1: enable fast standby time
-        unsigned int res:30;
+        unsigned int ChargingSimulation:1;          // 0: no effect,                1: enable charging simulation
+        unsigned int res:29;
     }bits;
 }TestControl;
 
@@ -334,6 +335,24 @@ typedef union
     }bits;
 }DebugControl;
 
+typedef union
+{
+    unsigned int CtrlValue;
+    struct
+    {
+        unsigned int EnableForceCharging:1;         // 0: disable,                  1: enable force charging
+        unsigned int StartForceCharging:1;          // 0: disable,                  1: start force charging
+        unsigned int res:30;
+    }bits;
+}ForceChargingControl;
+
+typedef struct
+{
+    ForceChargingControl    FCtrl;
+    unsigned short          FTargetVoltage;         // target voltage, unit: 0.1V
+    unsigned short          FTargetCurrent;         // target current, unit: 0.1A
+}ForceCharging;
+
 typedef union
 {
     unsigned int AuthFlag;
@@ -425,6 +444,7 @@ typedef struct
     FanControl      FanCtrl;
     LedFanControl   LedCtrl;
     PsuControl      PsuCtrl;
+    ForceCharging   FCharging[MAX_GROUP_QUANTITY];
 }SysControl;
 // ************************************************************************************************* //
 typedef struct
@@ -461,8 +481,8 @@ typedef enum
     _GROLE_WAIT_IDLE            = 13,           // wait a while to change to idle, open parallel relay at this state
     _GROLE_WAIT_SLAVE           = 14,           // wait a while to change to slave
     _GROLE_PREPARE_ATTACH_ON    = 20,           // raise voltage to master output voltage
-    _GROLE_SWITCH_TO_MASTER     = 21,           // close parallel relay
-    _GROLE_WAIT_MASTER          = 22,           // wait a while to master
+    _GROLE_PRECHARGE_READY      = 21,           // extend pre-charge ready
+    _GROLE_EXTEND_STOP          = 22,           // extend capability stop
     _GROLE_REQUEST_TO_CHARGING  = 30,
     _GROLE_TERMINATE            = 40,
     _GROLE_WAIT_TERMINATED      = 41,
@@ -498,7 +518,10 @@ typedef union
 
         // MasterCtrlValue
         unsigned int AlreadyInChargingMode:1;                   // 0: no effect,                1: system status ever enter charging mode
-        unsigned int MasterCtrlRes:31;
+        unsigned int ExtendAvailable:1;                         // 0: no effect,                1: extend capability is available
+        unsigned int NeedCurrentBalanceCheck:1;                 // 0: no effect,                1: need to current balance
+        unsigned int OutputCurrentStable:1;                     // 0: no effect,                1: output current is stable
+        unsigned int MasterCtrlRes:28;
 
         // StopChargingCtrlValue
         unsigned int StopChargingRequest:1;                     // 0: no effect,                1: master need to stop
@@ -558,12 +581,14 @@ typedef struct
     unsigned short          ReAssignAvailableCurrent;           // group available current when reassign, unit: 0.1A
     unsigned short          ParallelCheck;
     unsigned char           ParallelConfig[MAX_GROUP_QUANTITY]; // group parallel relay setting
+    unsigned short          GunLoading;                         // gun output loading, unit: 0.01%
 }PsuGroupCollectionData;
 
 typedef struct
 {
     unsigned short          GTargetVoltage;                     // group target voltage config, unit: 0.1V
     unsigned short          GTargetCurrent;                     // group target current config, unit: 0.1A
+    unsigned short          OutputLoading;                      // group output loading, unit: 0.01%
 }GroupOutputConfigInfo;
 
 typedef union

+ 1 - 1
EVSE/Projects/DO360/Apps/ReadCmdline.c

@@ -1464,7 +1464,7 @@ void AddGroupCollection(byte group, byte target)
         }
         if(ShmGroupCollection[group].Role != _GROLE_IDLE &&
             ShmGroupCollection[group].Role != _GROLE_WAIT_IDLE &&
-            ShmGroupCollection[group].Role != _GROLE_WAIT_MASTER)
+            ShmGroupCollection[group].Role != _GROLE_PRECHARGE_READY)
         {
             return;
         }

+ 1 - 2
EVSE/Projects/DO360/Apps/main.c

@@ -2823,8 +2823,7 @@ void ChkPsuStatus(void)
 
             for(int gunIndex = 0; gunIndex < ShmSysConfigAndInfo->SysConfig.TotalConnectorCount; gunIndex++)
             {
-                if(chargingInfo[gunIndex]->SystemStatus != S_FAULT ||
-                    (chargingInfo[gunIndex]->SystemStatus != S_ALARM && chargingInfo[gunIndex]->ConnectorPlugIn == NO))
+                if(chargingInfo[gunIndex]->SystemStatus != S_FAULT)
                 {
                     allFaultStatus = false;
                 }

BIN
EVSE/Projects/DO360/Images/ramdisk.gz


+ 2 - 1
EVSE/Projects/define.h

@@ -414,7 +414,8 @@ typedef union
         unsigned int NormalStop:1;                  // 0: no effect,    1: normal stop
         unsigned int AlarmStop:1;                   // 0: no effect,    1: alarm stop
         unsigned int BackendStop:1;                 // 0: no effect,    1: backend stop
-        unsigned int res:29;
+        unsigned int ManualStop:1;                  // 0: no effect,    1: manual stop
+        unsigned int res:28;
     }bits;
 }ChargingStop;
 

BIN
EVSE/rootfs/root/Module_Payment


BIN
EVSE/rootfs/root/OcppBackend20