Jump to content


Members More Space
  • Content Count

  • Joined

  • Last visited

  • Days Won


Isakovic last won the day on March 12

Isakovic had the most liked content!

Community Reputation

15 Good

1 Follower

About Isakovic

  • Rank
    Advanced Member

Profile Information

  • Gender
    Not Telling

Recent Profile Visitors

1,310 profile views
  1. Isakovic

    4-20ma to digital input

    I had a similar situation but with outputs. Each output controlled two valves, but one valve was getting negative from supply from NC contact of reley, and other one was getting it from NO contact, so that relay altered which group will be activated. So I got 14 valves from 8 outputs. Crude and patchy solution, but it was some pneumatic cleaner so nothing critical.
  2. You ain't using "Function in Progress" bit before Modbus command. I can't see the rest of the logic, maybe you took it into account. But if you didn't, that may be the reason why it drops messages when you go faster.
  3. Idea was something like this. Maybe SB80 needs to be in a separate net, I'm not sure, can't test it.
  4. You should filter the value a little bit before displaying it, analog input jumps a little bit up and down, it's normal, I guess if you display it immediately lcd will look blurry. Maybe take a couple of readings in short time and display the average, or update register that shows value every 2-3 seconds. I reckon value doesn't change drastically in time since it's level.
  5. I always touch left rail two times when doing OR for two bits.
  6. Credits to staff at Unitronics who wrote it.
  7. I got this UDFB from support when asking about NTP. Maybe you need to modify it to suit you. It works. It was easier in VisiLogic. UniStream_070_RFC_1305_UDFB.ulpr
  8. Are you using RFC-1305 function for updating time. If it fails in reading network time it will just write 0? Or you accidental write to system registers for time? You said it's a bulky code.
  9. I've seen this once. Connection was breaking because there was a card reader on the network with the same IP address. What does "socket state 34" mean in your picture, I can't find it in help files? If you already tried with keep alive registers, maybe try the next sequence: When SB148 goes down (or some other condition that recognizes Ethernet problem) call socket close block, then delay, than initialize socket to UDP, then delay, then initialize it back to TCP. This resurrects blocked socket in my experience, maybe (probably) there's a more elegant solution. Are there any other client applications besides you accessing via VisiLogic?
  10. Isakovic


    "Jazz generation 3" I don't know if Unitronics plans this, but there are applications where having 230V voltage for logic is convenient.
  11. Bundle all bits and registers into couple of consecutive registers with struct command, so you can send them all with one Modbus command. Of course, you have to unpack it on the other side.
  12. Usual workaround is to put an MI for user input and mask it to 1 decimal place. Then divide it with 10 in ladder to convert to float.
  13. True. I wasn't paying attention. I can confirm that Modbus functions can be called one after another without delay (with "Modbus in progress" bit as condition) and it works without problems. As soon as one function is called "Modbus in progress" bit is set in the next rung blocking second function from being called before first one is finished. Maybe if you called subroutine with CAN write functions after each of those rungs in the picture you first posted, it could work without timers. Although, I don't know if it would make any difference.
  14. It seems to me that this happened: Rung 6 gets executed because stage index in 3, at the end of the rung index is incremented to 4 so the next rung 7 also gets executed. When you say some messages are ignored, is it that only the last message gets through?