Menu

Error 485 with storagecontroller2

Help
2020-06-08
2020-06-10
  • Charitha Buddhika Heendeniya

    Dear OpenDSS community,
    I came across an error 485 max. iterations exceeded error when running a daily simulation (static mode) with storagecontroller2. Attached is the event log. Could you please help me to understand what is going wrong here?

    Best regards
    Buddi

     
    • Davis Montenegro

      Hello,

      You mean max. control iterations? If so, that means that the settings of your controller are probably too tight or the set point is out of reach, so the controller could be oscillating or fighting against other standalone controls deployed across the system.
      One test you can do is to try to relax the controller reporting the issue, this can be done by opening the control gap or working with a bigger tolerance.
      Then, once you have everything running, coordinate with the other controllers so you can be more demanding to the "problematic" study.
      Most of the times, this message tells the analyst that the control settings need to be reviewed because probably, the goals are too demanding for a simple problem.

      Best regards

      Davis

       
      • Charitha Buddhika Heendeniya

        Thank you David. Yes, you are right.
        Btw after fixing that bug, now I'm trying to store all the power system data in a database format and automatically generate the script to generate the network topology using python COM interface.

        For example, I import the load data as a pandas dataframe and the iterate over each row. At each iteration, I use the following command (I remove some of the indexing from the code to make it more readable).

        self.DSSText.Command = 'New Loadshape.{0} npts={1} interval=1 mult=({2})'.format(loadshape_id,len(loadshape),','.join(map(str, loadshape)))
        

        self.DSSText.Command = 'New Load.{0} Bus1={1} phases={2} kW={3} pf=0.95 kv=0.4 vminpu=0.95 vmaxpu=1.05 daily={4}' .format(load_id,bus_id,phases,kW,loadshape_id)

        I managed to do this successfully for loadshapes, but when I try to do the same with load objects, I get error 303, access violation (attached image). Do you know how I can avoid this? I checked other cases regarding error 303 and they all seem to refer to reading from files. But in my case I have the data I need (e.g., loadshapes) in my workspace + I successfully create the loadshape objects. The method fails when I try to create the load objects.

         
        • Davis Montenegro

          Hello,

          Sometimes it is due to the order in which the parameters are sent, try the following order and see iif it makes any change:

          phases
          bus1
          kv
          kw
          pf
          ...the others

          Best regards

          Davis

           
          • Charitha Buddhika Heendeniya

            Unfortunately that didn't work out. I still get the same error.

             
            • Davis Montenegro

              Send me a script to reproduce the issue locally.

              Best regards

              Davis

               
              • Charitha Buddhika Heendeniya

                Hi Davis, Thanks. I just figured out the problem.
                It was because there was conflict of line execution order, because I had some redirected commands referring to .DSS files
                The linecode commands, in this case, came after the load command and this was what caused the error.

                 

Log in to post a comment.