Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


Posts posted by Swervomotor

  1. You can use the built in functions to send a CSV file:

    HMI button sets a bit-->

    "Store DTI to File"  Make sure to set "F" to 1 so it saves a CSV file  onto the SD card-->

    Then when the "H" status finishes (1-->0) you can use the built in "FTP Send" to send that CSV file you named in the "Store DTI to File"

    Then go find it and open in Excel (import as CSV).


    Now if you want to import it back into the PLC after you make changes to the file you need to reverse  this process:

    save as CSV (on computer)

    "FTP Receive"

    "Convert CSV to UDTF"

    "Load DTI from File"



    • Like 1

  2. Good day everyone,

    I have a project with 20 Ethernet/IP scanners running on a unistream 15.6".  The machine network is separate from the plant network and goes through a layer 3 switch with VLAN port.  I also have 6 Modbus TCP devices running on the machine network.  I noticed when debugging the program I was having some bugs from what I assumed was network clogging with cyclic communication.  By lengthening the RPI on some nodes I was able to resolve most issues. I also have a lot of disconnecting issues when trying to monitor in Online mode.   I notice in the Help file under the Scanner Node Struct there is a Uint16 for the RPI. 

    1st Question: Am I able to Write a value to this "on the fly" and not have to reset the plc?  Not everything on the machine needs to run at the same time so I would love to be able to transfer higher RPI to nodes when not in use and lower RPI to those nodes in use. 

    2nd Question:  Am I able to use the "Enable Node Bit" (in the same struct) in the same fashion on the fly? if so, does the device stay connected and you would be able to turn on or off cyclic communication in one ladder scan?  Or would there be a delay (greater than the RPI) after the node was Enabled before communication would begin?



  3. I decided to use Internal Control Bit Arrays 2 x(255) on this  large project to keep the global tag list manageable. 

    I need to reset all these bits with an HMI button. Is there a way to reset an entire bit array? I get compile errors when attempting to use the reset coil.  I really really don't want to have to put reset coils in for 500+ bits


    Thanks in advance

  4. 7 hours ago, Isakovic said:

    Read value and add to sum, then increment a counter to read next value and so on. Shouldn't be a massive code.

    You can use "Jump to Region" to loop it so it is done in a single scan.

    This ^^

    I think this could be done in less than 10 rungs. One idea of process flow is:


    Function In: Last Row to read

    Local Variable: Value1

    variable SumTotal = 0;

    RowIndex = 0

    Do until RowIndex = last row to read

    Get Value from current row index (built in function block)  and move it to local variable (store)

    sum (SumTotal + Value1)

    Index RowIndex


    SumTotal = Function Out.






  5. Lifo table, you could pretty easy build a UDFB that took as a "function in" the # of rows that you wanted to SUM the specified data, then with the help of an increment run through each row and sum to a temp local variable, then move that to function out and reset the increment. You could then just change the # of rows (which would be at a fixed sample rate) to get your 24h, 7d, 1M Function Outs.

  6. My suggestion would be a Data Table Index to store you data.

    Then use a combo Box  and give each "index" a title 0-50. (or however many you need)

    Use the selected index # in a "read row from DTI"  and use the index # as the row number (parameter B).

    I would use the "tag selected" bit in the combo Box configuration to pass power to the "read row from DTI" then  add the reset to the end.

    You can always add a data table to the HMI to view the raw data. 


    If your program gets more sophisticated and you need to do some automatic table searching you can use the other DTI  functions like "Find DTI Column Value" to get the row index #

  7. On 4/6/2019 at 6:24 PM, Ausman said:

    But they constantly change their code to try to foil this, such that even the latest hack might not work on a new unit.

    I have a few lying around used as paperweights!  But I wouldn't even want them sending anything out at all.  If you can hack so that they work directly within your network simply via the router, that is ok, and is possible.

    We'll see these things controlling major supply generators soon, for management's convenience!  Without the Hack.  🙄

    cheers, Aus


    What I mean by hacking the firmware is just using their hardware but taking their server and software out of the equation off the device. Basically loading your own ESP8266 type firmware and running it off  your own app/P2P/Mqtt backbone.  I can't build a relay with ESP8266 for what I can buy one of these for.   I have not tried it yet but it may come into play in future projects. Right now the work doesn't justify the end. As security is not really a concern on my light switches haha.  If I was going to integrate these across more security sensitive applications I wouldn't as it stands.

  8. I use these around the house for lights and ceiling fans: https://www.itead.cc/sonoff-wifi-wireless-switch.html

    They can be had for less than $5/each,  if you trim the ends off they fit in a US standard box and I wire them at the light switch in parallel so in the event they go offline I can still operate the lights via the switch. They work with alexa/google (through the vendors server) and the wife loves them.  It's basically a 10a wifi relay. 

    Would I trust them in an industrial machine? no. To turn on my light? yep.   They are "hackable" in terms of loading your own firmware aswell. 

    Seems like the IIot makes sense with one caveat. Only on a local network.  With a central Server that hosts the control.  I can see data being able to exit but control not being able to enter. 



    On 10/26/2018 at 7:40 PM, Joe Tauser said:

    BTW, I bought an IoT light control for my bedroom to turn on in the morning to help get my night-owl butt out of bed-


    It talks to my wireless router, and I set up the schedule with an app on my phone.  

    It works properly 99% of the time.  I THOUGHT it kept the schedule inside itself, but one morning when my Internet was down I learned that was not true.  If it couldn't talk to the Levition Master in the Cloud, it just sat there.  In other words, my light didn't go on that morning.  I couldn't trigger it with my phone app, either.


    Anyone who tells you their Internet is up 100% of the time is lying.  When Hurricane Sandy hit the east coast of the US, I could not communicate with my vendors in the New York / New Jersey area for over a week, because they couldn't get email and they had drank the Kool-Aid and converted their phone systems over to VoIP.  Those who had copper land lines could still be reached.

    Anything connected to the Internet can be hacked, too.

      Joe T.


  9. 24 minutes ago, Joe Tauser said:

    This feature has been asked for recently.

    +1 on its handiness.

    All posts need to be approved by a moderator until Cara decides you are worthy and mature enough to approve your own posts.

    Joe T.

    Hopefully it will come in the next release fingers crossed.

    I understand, I was a Mod for a long time on a couple forums and usually we had a minimum # of approved posts to deter spam accounts. Seems like stuff around here gets approved pretty quickly so not really a big deal just wondering when my orange bar of shame would be lifted. 

  10. This may seem trivial but is there a way to define the zoom setting in ladder editor so when you open it it starts at say 70% instead of 100%? I did not find anything in the Project-Options but was hoping it's somewhere else?

    I have 18 "modules" that I need to open and close regularly and when I re-open it, boom Gigantic. 

    Additionally, to the mods: How many posts do you need before your comments and posts need to be approved? 


  11. Thanks for the responses, the ole Copy-Paste-Delete all rungs was the only way I could get it done. I was hoping the labels were stored in a table somewhere that I could just re-order or drag-n-drop in ladder editor would be awesome.  I will be more diligent with my planning next time. This project has ~ 50 regions so far.


  12. Not sure but I get a Red X, when I tried to change it to C : it went away but I was connected to the drive as shown in the picture below.

    I ended up running into all kinds of problems trying to update the firmware. "identifying hardware" death loop when trying to connect over USB, "failed Update" when updating via DOC formatted to FAT32.


    I ended up giving up with trying to update and just downloaded the old version of the software then uploading, making the changes, and re-downloading.

    I just don't understand how you cannot even connect to a PLC with older firmware to grab the program off it.  Using any of the connection methods PC-PLC communication etc.


  13. Why does Unilogic force me to update the firmware on the PLC even to just upload from the PLC?  

    I'm trying to make a small change (ethernet IP scanner IP addresses) and when I try to open older version of unilogic it won't let me create a blank program to be able to go "online" and upload.

    So I go to newer version of Unilogic and create a blank program try to go "online" an it tells me I need to update the firmware on the PLC.

    So now I have to:

    1. download the latest version of Unilogic onto a laptop

    2. go find the PLC on the factory floor


    4. Connect USB drive or cable

    5. Update Firmware

    6. Hope the firmware update doesn't wipe the existing "upload" file


    Has anyone ever considered backwards compatibility??? This program was created less than 7 months ago.

  14. Unilogic on PC ----> PLC 

    Setup "Panel Ethernet"

    Make sure PC is on same Subnet. example: PC IP     PLC:, both same subnet

    You can do this from the PLC Uniapps screen or download from unilogic with USB cable.

    Connect ethernet cable from pc--->PLC either directly or through a switch.

    Then click "Online" put in the PLC Panel Ethernet IP address and click "Online"


    Unistream ---> sick

    Ethernet IP communication is through "CPU Ethernet" you need to set up device IP, Subnet, making sure both devices are on the same subnet.

    Connect ethernet cable from SICK--->PLC either directly or through a switch.

    You need to setup PLC Communications-->Protocols-->Ethernet-->Scanner---> add a scanner with the manufactures provided assemblies. You will have to build the input and output assemblies I recommend building structs then creating a global tag as "type" struct.


    If you want to access PLC screen from PC 

    You can use a VNC viewer

    Or build webserver screens and access from any internet browser on the network. 





  • Create New...