Commit Graph

272 Commits

Author SHA1 Message Date
Noe 85b248dc6f update daily data aggregator 2023-12-18 16:09:43 +01:00
atef c36ebeeb6a Delete unused Jsonoption 2023-12-18 08:23:23 +01:00
atef 044cf24660 Correct task.delay from hours to from days 2023-12-18 08:23:03 +01:00
atef 56d75a3e6c space fixing and switch loop changed a little 2023-12-18 08:14:35 +01:00
Noe b13ff6efbe Updated aggregation service 2023-12-15 14:55:23 +01:00
atef bc9b3b95b9 Create the hourly Data class 2023-12-14 16:40:34 +01:00
atef 137e9711c2 Update Create Hour function 2023-12-14 16:39:27 +01:00
atef baa1b930d9 fix a type suppress instead of supress 2023-12-13 15:40:27 +01:00
atef 32a0fce3e7 Add exception display and surppress the await warning 2023-12-13 15:38:06 +01:00
atef 6ef765f92b Improved Aggregator file. 2023-12-13 15:36:41 +01:00
Noe 4f1f0b0844 Fixed small bug on aggregator 2023-12-13 14:43:32 +01:00
Noe a871693ba8 Removed complexity from program.cs, created classes for rabbitmq management and middleware communication 2023-12-13 11:12:43 +01:00
atef 907f8b66c6 Increase the max size of log file
Add comments
2023-12-12 14:21:42 +01:00
atef 9a60bdb4ae update createHourlyAvreage function 2023-12-11 18:03:01 +01:00
Noe 7bc70f49f6 Add Hourly-Data-Aggregation function 2023-12-11 17:15:26 +01:00
atef ecfac5ea94 Display Alarm of each battery 2023-12-06 14:54:38 +01:00
Noe 5d14b61d9c Added configuration control from front-end 2023-12-05 13:14:01 +01:00
atef 3a0c96fe23 Add the apply function to the local config file 2023-12-04 14:14:11 +01:00
atef 3b02b46b78 Merge remote-tracking branch 'origin/main' 2023-12-04 10:31:37 +01:00
Noe 980089d7e0 Rabbitmq on top of VPN network, add users and passwords to rabbitmq
Created skript for automatic update of all the installations
2023-11-29 21:28:11 +01:00
Noe 30e4991032 Separate websocket manager to rabbitmq consumer, fixed bug in creating user function 2023-11-27 16:43:42 +01:00
atef 5bd881ea8f Device topology added 2023-11-27 15:26:48 +01:00
atef 9840e0c9f8 Update InformMiddleware function 2023-11-27 15:21:45 +01:00
Noe e143a4be6e production test 2023-11-27 10:45:35 +01:00
Noe da7f75c55c Merge remote-tracking branch 'origin/main' 2023-11-27 10:34:44 +01:00
Noe 05d7f91ec5 test staging 2023-11-27 10:34:33 +01:00
atef 0f9a4ddc4e change the config to be set 2023-11-27 09:30:07 +01:00
atef 9cd85f1d31 format fixed 2023-11-27 09:29:44 +01:00
atef 825a6c87bd Add the new force calibration charge in the controller 2023-11-27 09:28:32 +01:00
atef 732274933b Add force calibration charge to the config 2023-11-27 09:28:07 +01:00
atef fce689d551 change the force calibration charge as enum instead of boolean 2023-11-27 09:27:27 +01:00
Noe bdad83995d Included heart-bit functionality, replaced static variable assignments with enums, implemented monitoring functionality for the backend to check for disconnected installations 2023-11-22 16:49:47 +01:00
atef 6301cf38a0 Update the statusMessage and edit the required changes in the informmiddleware function 2023-11-22 12:25:39 +01:00
atef 229321cd1c Edit the StatusMessage class 2023-11-22 11:55:11 +01:00
Noe 1204a28ab5 Persistent logging (erros and warning) 2023-11-22 09:35:29 +01:00
Noe ac8f874255 Fixed exoscale keys 2023-11-20 17:29:45 +01:00
Noe 6a18e56cf7 Created error table, provided error handling 2023-11-15 17:22:42 +01:00
atef dd19222728 small fixes in program Salimax 2023-11-14 10:48:16 +01:00
Noe 71b4a1d2bd Move watchdog to utils 2023-11-13 17:53:03 +01:00
Noe 511c3080a6 Put try-catch statement when trying to connect to the queue for the first time 2023-11-06 14:29:04 +01:00
Noe 30a3a05de0 Fixed websockets, updated Salimax controller code 2023-11-06 14:26:15 +01:00
Noe a2155ee086 Try RabbitMQ without VPN IP 2023-11-02 16:46:18 +01:00
atef 1d5578ad9a Update few code 2023-11-02 16:38:01 +01:00
atef 15d0eac3c5 Add a communication to the middelware 2023-11-02 16:03:08 +01:00
Noe 22ad7b3612 Add Middleware functionality, add middleware connection to the controller 2023-11-02 15:50:04 +01:00
atef 5714d9457b AcDcToDclink nullable 2023-11-02 13:43:07 +01:00
atef a59051dcc1 Change LedState to SalimaxAlarmState.
Create a GetSalimaxStateAlarm that return the salimax state alarm
2023-11-02 13:42:26 +01:00
atef 8d67bea146 Update the size of local csv file. 2023-10-30 16:27:15 +01:00
atef 48e766bdde Add acDctoDclink in status record and CreateAvg function WIP 2023-10-30 16:26:32 +01:00
atef 71fb914c41 Add an config input to display iundvidual batteries 2023-10-30 16:24:57 +01:00
atef 66f6fbb878 using date time instead of unixtime 2023-10-23 11:05:18 +02:00
atef 1654d6f4dd Using channel instead of tcp channel and create channel based on the device state. 2023-10-23 10:47:57 +02:00
atef 9b1dd755e2 Update PvonGrid and PvOnIsland type. (this is temporary) this is must be updated to AcPvstatus 2023-10-23 10:45:05 +02:00
atef 7b39e02bcd Update Topology data. 2023-10-23 10:43:42 +02:00
atef af0da881f3 update All states graph and Controller.cs All states are defined now 2023-10-23 10:36:09 +02:00
atef 171d3715b0 update config class, create salimax device and device state attribute for devices 2023-10-23 10:35:13 +02:00
atef 05926994b7 Update AcPower and Dc Power Devices under the folder devices 2023-10-23 10:03:00 +02:00
atef 358b1f0ec1 Add System Log to the statusRecord 2023-10-04 15:19:41 +02:00
atef 04bfbfc8b9 Add Log {Led and Message} for Salimax status and alarm 2023-10-04 15:17:43 +02:00
atef 7c7fdf1eae Update to unix time 2/2 2023-10-03 16:01:34 +02:00
atef 81ee127d62 Update to Unix time 2023-10-03 16:01:17 +02:00
atef 07e0e1f956 Add time stamp on console 2023-10-03 16:00:54 +02:00
atef ea5ce5617a add loginfo on the toCsv() 2023-10-03 16:00:28 +02:00
atef 1fb95cbb56 Update the S3 data in config file (in Debug mode) 2023-10-03 15:59:07 +02:00
ig b7cda31b58 minor 2023-10-02 15:10:01 +02:00
ig 3ce40b936a Remove UnixTime.csproj, use DateTimeUtils instead 2023-10-02 15:08:40 +02:00
atef 8f876a37bd Update to the battery power instead of Dc Dc power for the variable "l" 2023-10-02 14:50:10 +02:00
atef b1d553870e Change from control special error to Detect Alarm States
Add loginfo to toCsv()
2023-10-02 14:49:24 +02:00
atef 25d3ae9252 Adapt logfile to save .csv in local machine. 2023-09-27 14:37:11 +02:00
atef 0d400a0eea Add Control Special Error. 2023-09-15 09:38:21 +02:00
atef 3ae8a97d15 Delete to do log 2023-09-15 09:23:09 +02:00
atef 3b77c4a5b2 Added the feature of the forceCalibrationCharge in the config file. 2023-09-13 10:57:12 +02:00
ig b213d97537 resharper ignore "typo" 2023-09-11 11:33:12 +02:00
atef 93539bee0e Add max power control in Program.cs 2023-09-08 09:34:38 +02:00
atef e58b949160 Add max Dc Power in the config file 2023-09-08 09:33:29 +02:00
atef fd52a94d18 update control constants. 2023-09-07 17:41:42 +02:00
atef b39b512a12 Fix control constants, we assign the Dc bus Voltage info depends on the mode 2023-09-07 17:28:10 +02:00
atef f8b13a9814 Delete the hard coded value for Dc Bus Voltage 2023-09-07 17:25:56 +02:00
atef bcaab09190 Correct the name of the reference Dc Link Voltage 2023-09-07 17:24:56 +02:00
atef 9510d0b47e Add Dc Bus Voltage info in the Config.cs 2023-09-07 17:23:48 +02:00
atef 31ad48e77e Add DevicesConfig, AcDcConfig and DcDCConfig 2023-09-07 17:22:39 +02:00
ig 3b1a553be5 Limit DischargePower based on nb. of batteries that are actually connected to the DC bus, not nb. of batteries that communicate 2023-09-06 10:20:32 +02:00
atef b9098e3979 Delete unnecessary code and comment 2023-09-04 15:57:08 +02:00
atef 1ab369bff9 Change name flag to requested 2023-09-04 10:15:55 +02:00
ig 7ecb6e4607 Introduce VoltageRms and CurrentRms and use them where appropriate 2023-09-01 14:52:09 +02:00
ig 006ea0e1ee remove stale file 2023-09-01 14:36:50 +02:00
ig 7fc5f80e8c make BatteryStatus nullable 2023-09-01 14:36:50 +02:00
ig 851b936217 only write config file when contents have changed (memo) 2023-09-01 14:36:50 +02:00
atef b5436e64aa Use the Active power for display Ac Power 2023-09-01 14:15:31 +02:00
atef 26422284dd Change from falg to requested 2023-09-01 14:14:34 +02:00
atef 9bbccfd34b Add a Calibration Charge Flag based on the Time Since TOC. 2023-09-01 10:48:44 +02:00
ig 05f0a7e9f9 convert composite units to records 2023-09-01 09:18:44 +02:00
atef 6c2360f0ad Add time to TOC request 2023-08-31 15:16:27 +02:00
ig cc2ab03d01 split CalculateEnergyFlow into 3 functions 2023-08-31 13:19:48 +02:00
atef 5bcb46f841 Add Fi Warning and Error display 2023-08-31 12:58:37 +02:00
atef 9e03965d5b Add a CalculateEnergyflow function in program.cs
Moved the CalculateEnergyFlow to Toplogy.cs
2023-08-31 10:13:28 +02:00
ig 3c47089bcf make Power of virtual devices "required", ditch Null device 2023-08-30 15:12:41 +02:00
atef 9e31046f43 Update the energy flow calculation and add the ascii topology as a comment 2023-08-30 13:44:58 +02:00
atef 9edd875066 Display heating power in the battery and fix the K1/K2 open switch 2023-08-30 13:42:41 +02:00
atef c5cb31ac88 Delete a no needed display. 2023-08-30 13:40:53 +02:00
ig 41ccc63175 modify Topology.cs to properly display missing/unreachable devices (mayor rewrite) 2023-08-25 17:22:02 +02:00
ig 9a400d992d remove fake nullables from status record 2023-08-25 17:18:26 +02:00
ig 4907654841 add support for unknown/nullable flows 2023-08-25 17:17:41 +02:00
ig 27a4411ebf make AmptStatus nullable in StatusRecord.cs 2023-08-25 17:16:28 +02:00
ig 2ace3fad51 "Notify" the Watchdog 2023-08-24 10:03:20 +02:00
ig d4fdf92009 add visual representation of relay states to topology 2023-08-23 16:11:34 +02:00
ig 980b09ddb4 declutter Topology code some more 2023-08-23 13:37:59 +02:00
ig 664290c44b reorder Topology generation code 2023-08-23 09:23:50 +02:00
ig d731c12f64 add minor error handling in Texblock 2023-08-18 15:57:00 +02:00
ig 2047f25e4e Break off Topology related stuff into own class 2023-08-16 15:41:13 +02:00
ig 3d3a0375d2 Undo Default constructor. Compiler cannot deal with it yet. 2023-08-16 15:38:46 +02:00
ig df9de4c9ed Cleanup text based Topology 2023-08-16 15:15:45 +02:00
ig 9b4b947569 use primary constructor 2023-08-16 15:11:37 +02:00
ig 2d6c6b6140 reduce debug clutter 2023-08-16 10:36:31 +02:00
ig 0b8aa5a96e move Watchdog related code into its own class 2023-08-16 09:45:34 +02:00
ig d633564b93 fix Config.cs for debug mode 2023-08-15 15:45:43 +02:00
atef bfb1670d11 Update Display of the battery features
( A H = Heating Current
   A C/D = Charging/Discharging Current
   A T = Total Current)
2023-08-10 13:08:24 +02:00
atef 898ea3fcd8 Delete the intermediate state.
Update the state machine as defined in the excel sheet.

Commment the disable function of Dc/Dc, as we don't need to disable Dc/DC in the grid tie and island transition(I will delete the function in the future).
2023-08-10 13:06:42 +02:00
atef 8b159a6a2c Update the state number on Select Control mode function 2023-08-10 13:04:07 +02:00
atef f6699787dd Add Observable for the run task
Add few constant control
2023-08-02 11:08:40 +02:00
atef f9193f4624 Introduce constant (battery heating power = 200) 2023-08-02 11:05:26 +02:00
atef e6f1263e4b Change the max charge batteries limit when we are in heating mode 2023-08-02 11:04:33 +02:00
atef a10193592f clean code 2023-08-02 11:01:05 +02:00
atef a677c878e8 Add reference and Window Dc/Dc voltage to the config file 2023-07-24 10:50:41 +02:00
atef 4563103572 Add console display in island mode and replace loginfo instead console.writeline 2023-07-13 10:49:23 +02:00
atef 12b0c94d78 Update Config file and Inverter state 2023-07-13 09:53:44 +02:00
atef 486abbdf56 Switch few function from public to private 2023-07-13 09:53:13 +02:00
ig e400c11d3c Remove InvertersAreConnectedToAc enum. no longer used. 2023-07-11 14:07:42 +02:00
atef bd24a725c6 Add display fail reading error 2023-07-10 10:34:51 +02:00
atef 93d8936430 Add Console Writeline in Log 2023-07-10 10:22:09 +02:00
atef 4ee7aebf95 Add display messages, Battery alarms and warnings 2023-07-10 10:10:39 +02:00
ig 39262d1a46 Use IReadOnlyList for BatteryNodes 2023-07-06 15:19:06 +02:00
ig 146daed8d9 use ToDisplayString 2023-07-04 11:18:16 +02:00
ig c6fbb1d931 fix defaults for Salimax Release 2023-07-04 09:59:26 +02:00
ig dd33744612 centralize config 2023-07-03 17:30:01 +02:00
ig cc8621d632 Introduce Ip4Address class, standard IpAddress class is unwieldy... 2023-07-03 17:30:01 +02:00
ig d7cb9401da Centralize configs: DeviceConfig & SystemConfig 2023-07-03 17:30:01 +02:00
ig 6648d318ca Minor improvements for TextBlocks 2023-07-03 17:30:01 +02:00
atef 1c4e2dee2e Add to display string 2023-07-03 14:23:05 +02:00
atef c0c65c2bb8 Add Log Error and log Warning 2023-07-03 14:21:18 +02:00
atef 8fc2b8fe9d Create Individual Battery 2023-06-30 10:30:18 +02:00
atef 5dfd8e69b4 Change Dc link Window Voltage 2023-06-30 10:29:50 +02:00
atef da38aa7b83 rename the log to loginfo and create log debug 2023-06-30 10:27:14 +02:00
ig 5484aea6cb ToStringRounded => ToDisplayString, introduce scientific notation (mW, kW,...) for units 2023-06-27 17:02:56 +02:00
ig a761e46686 fix bugs introduced by 'required' changes 2023-06-27 17:01:40 +02:00
ig 7f97ab8e14 make use of "required" with "init" (.net 7) 2023-06-27 13:14:17 +02:00
atef a1f55afe6f Change the ip address to run as a service 2023-06-23 10:42:02 +02:00
atef 3a2050dcbc Update the Print Display 2023-06-23 10:41:20 +02:00
atef b5f025dc69 Add toStringRounded 2023-06-23 10:40:11 +02:00
ig f7ee9276a3 Add calculated powers (loads etc.), Dc Load is still broken 2023-06-22 10:17:06 +02:00