Setting multiple channels at once.

Forum Home Forums Understanding the Software Using Formulas Setting multiple channels at once.

Viewing 2 posts - 1 through 2 (of 2 total)
  • Author
    Posts
  • #17874
    oley
    Participant

    Hi,

    I have an object with 34 devices.
    In RapidSCADA, I have a communication line with 34 modbus devices, each with addresses 1 through 34. I need to control the power, and for each device this involves setting a percentage value in a specific register and then acknowledging it in another register.

    Two questions: Will RapidSCADA work with broadcast address 0?
    I tried with a device at address 0, but I’m getting connection errors.

    The second approach is a calculated channel. I tried with the following script:

    
    public double SetPowerAll()
    {
        double value = Val;
    
        // Inverter loop 801–834
        for (int dev = 801; dev <= 834; dev++)
        {
            int cnlEnable  = dev * 1000 + 205; // xxx205
            int cnlPercent = dev * 1000 + 204; // xxx204
    
            // 1. Reset
            SetVal(cnlEnable, 0);
    
            // 2. Set percent
            SetVal(cnlPercent, value);
    
            // 3. Ack
            SetVal(cnlEnable, 1);
        }
    
        return value;
    }
    

    This doesn’t work either: I expected the same value on all channels.
    Do I need to set some delays here?

    #17875
    manjey73
    Participant

    Scripts can’t transfer data to devices. It is only possible to transfer to the device via the AutoControl Module, which can be configured to work in channels.

    I can’t tell you about the broadcast address, probably not than yes. This should be built into the driver and is not so easy to implement (I did this on one device, but not Modbus)

Viewing 2 posts - 1 through 2 (of 2 total)
  • You must be logged in to reply to this topic.