Commit Graph

253 Commits

Author SHA1 Message Date
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
ig 5976ce3a8c remove stray ControllerPConstant from config 2023-06-22 10:09:15 +02:00
atef f1c03ad333 Create an apply Default settings for dc 2023-06-22 10:00:44 +02:00
atef 8455bb64e3 Add the print Topology 2023-06-22 10:00:01 +02:00
atef b8b908e7f8 Clean up controller 2023-06-22 09:55:57 +02:00
atef 75f1f42252 Reduce the default height of vertical flow 2023-06-22 09:52:17 +02:00
atef 1201fd1c2f Change grid set point to 0 2023-06-22 09:50:50 +02:00
atef 8feee5db43 Introduce ClampMin and ClampMax 2023-06-20 15:34:04 +02:00
atef 789780791f throw exception if min is bigger than max in Clamp 2023-06-20 15:27:53 +02:00
ig c78451d4cf new implementation of TextBlock 2023-06-20 14:26:48 +02:00
ig dcc4bfa78a implement circular current prevention 2023-06-20 10:23:44 +02:00
ig d88fc677b5 add virtual devices 2023-06-20 10:23:44 +02:00
ig dbfb1b3707 add Dc side config for inverters 2023-06-20 10:23:44 +02:00
ig 075c54d179 rename SystemState => StateMachine 2023-06-20 10:23:44 +02:00
ig 5a3da7434b Trumpf V2 2023-06-20 10:23:43 +02:00
ig eeaefb0f54 Salimax V2 2023-06-20 10:23:43 +02:00
atef cb5bd91e55 Update the Topology display and the AsciiArt 2023-04-20 13:21:41 +02:00
atef 8631ada267 Delete Log and Salimax Utils(it has only Round3) function 2023-04-20 13:20:26 +02:00
atef 7635a8175e Add EocReached and Total Current and correct naming 2023-04-20 13:19:33 +02:00
atef bf1c869cba Update AsciiArt.cs and Topology 2023-04-18 10:04:30 +02:00