Jump to content

pascal

Members
  • Posts

    98
  • Joined

  • Last visited

  • Days Won

    14

Posts posted by pascal

  1. Meldaw,

    I had the same "issue"

    I control 40 heaters with a pid, so I made 1 subroutine that i called 40 times with different parameters.....

    DIDN'T work !!!!!

    For each process, you have to use a different PID ! PID is running in background of PLC -> so you can't use 1 PID with different IO's....

  2. hi,

    about your subroutine question

    I have a univison type uSP-104-B10 (B10 stands for type  of CPU, is TOPmodel😁😁) and in one of my programs I have already 9 modules and more than 100 "subroutines" without significant scan time (+- 48ms) -> I do have a lot of communication (modbus, opc UA, MQTT,Rest API,ethernet/IP) and over 40 PID's

    The only thing to watch is the depth of calling subroutines -> max 8 levels !

    • Like 1
  3. I have several PLC's running to control a building (because I can only use 8 URB adapters on 1 PLC 😒😒😒)

    On 1 PLC, I communicate with my lighting system (HELVARNET - DALI) to ask the status of my lights.

    Because it's a huge building,  it takes a while for scanning all lightsgroups.

    For every group, I have the status in a data table. But now I want to make this data table is also available for my other PLC's (so they don't have to ask my lighting system what's the state of the lights)

    I've tried to update the status with MQTT, publishing and subscribing all status of all lightgroups, but this is to slowly for me.....

    What's the easiest way to "send" my data table to the different PLC's ? any suggestions ?

    my data table is built with a structure of+- 15 elements (integers, bit arrays, string,...) -> size is 13200 bytes

    I need something that can be run in the background, because my scantime is already high.... -> +-50000 µs (so I could have problems with my 100ms timer....)

     

  4. On 4/12/2023 at 5:24 PM, Joe Tauser said:

    Not sure what you mean by "switch case".  Could you expand on this?

    Joe T.

    Joe,

    you call this routine with 1 operator, and according the value you do something.....

     you can find this on the solution explorer

    image.png.60eb103cc19ab031a58e1edb5aabacee.png

     

  5. I want to export my switch case, because I need this in another PLC.....

    And also it should be pretty if we could import the switch case into excel, to reorder the lines ?

    (or maybe we could reorder the lines in unilogic ?)

  6. let's describe the system I want to communicate with :

    In my electrical cabinet, I have several Schneider Compact NSX circuit brakers (industrial fuse 😁)

    these are equipped with a micrologic that can be read by  a device, where you can set the adress of. (IFM modbus interface module)

    all these IFM modules are coupled with an IFE ( modbus TCP interface for compact NSX).

    this IFE has an IP adress, where you can communicate with modbus TCP/IP

    to collect the data I have to adress this IFE with the slave nr. of the IFM module....

    the problem is that you can connect 1 NSX directly to the IFE module, standard with adress 255 (can not be changed). Altough maybe I should find some documentation about this device, it's very hard to find...

    I reprogrammed the unilogic software, without slaves on adress 255 -> worked all night without problem !

    now I have 14 slaves, without problems....

    image.thumb.png.f61117fc9db1f8f9126e0747215ebbae.png

    image.thumb.png.4838c09230dd95249b06065cabdb417f.png

  7. The easiest way -> webserver ! doesn't need to program it, just export the HMI page to the webserver

    I'm controlling an office 30000m², a production facility 65000m² and a garden 30000m² with several HMI panels(+-20 simple android tablets+ several smartphones) that are accessing just the built in webserver......

    Not just with one PLC but with 10 unilogic PLC's and +- 40 URB-TCP adapters, all communicating with each other via ethernet/IP, modbus and OPCUA

  8. Maybe in unilogic this is correct, but (I'm not 100% sure) if you do program like this in visilogic, the result could be inpredictive ?

    the things I learned, thanks to this forum, is to keep the rungs as short and clean as possible

    Now i can't think of any problems I had before, but sometimes when you program and you think it's correct, the PLC isn't executing the way you programmed it...

    Maybe I'm to scared to program like this, but I'd rather be sure than guessing 😉😉

  9. another thing to mention -> you are not using correct ladder....

    block 55 -> you should place the increment functions one after the other....

    if [counter] ------ inc [counter 1]-------inc [counter2]

    and I hope [counter] only rises once.....😁😁

     

  10. I'm a little bit confused .....

    today, friday 28 jan 2022 -> looking in the system.rtc date.day of week variable -> value is "6"

    why is in the structure schedule friday == bit 5 ?????

    so, I'm wondering.... what value stands for the  system.rtc date.day of week......

    if Friday==6 then I assume that

    monday==2 - tuesday==3 - wednesday==4 - thursday==5 - saturday ==7 and sunday==1 ?

    different programmers at Unitronics ?😬😬

     

×
×
  • Create New...