Jump to content

Saragani

Members
  • Posts

    1,196
  • Joined

  • Last visited

  • Days Won

    116

Everything posted by Saragani

  1. You can also type the name of the timer in the watch window (and not just use the "Add to watch" context menu option).
  2. Please talk to out support for a remote session. They can probably solve it without calling the R&D.
  3. Please explain why you can't. It is basically the same thing.
  4. The recent solutions list hides files that no longer exist. I'm thinking more on the option that a database file was left in a "Restore" mode, even thought it should have been closed, or the database was closed, but the files were not deleted from the DB work directory, so when UniLogic tries to re-open the project, the DB Server fails to restore the DB from the files. Did the computer crash, or was there a power down? A remote session might be needed in this case in order to see what is the exact problem and fix it.
  5. Have you tried: http://www.unitronics.com/support/downloads ? You can find tools for developers in there. The exact link is: http://www.unitronics.com/Downloads/Support/Communication%20and%20Development/Unitronics%20Data%20Table.rar
  6. Currently, this kind of information is not available.
  7. Hi, when the PLC is behind a router, ping would fails (So UniLogic fails with the connection test). You can however disable the ping using the configuration: Project -> Options -> Uncheck the "Use Ping on Discovery" Please update me if it works for you. Thanks.
  8. This is not always possible (since the result might exceed the limit of INT16, for example: Int16-1: 123 Int16-2: 456 You will get 123456, while the limit of Int16 is 32787 (and uint16 is 65535). As for the math, count the number of digits in the right number (the lowest part), if it has 2 digits, then it means that you need to multiply the higher number by 10^2 (which is 100), so you get: 34 * 100 + 56 If you need it as a string, then you can use the message builder.
  9. Off course there is no memory for local tags... they are local. Consider the pseudo code (assume that variables that are declared have a value of 0 and not an 'Undefined' value) public int Add(int a, int { int c; c = a + b; return c; } Now, you first call it with: Add (2, 3); the first time you call Add, c would have the value of 0, and then it gets the value of 2+3 ==> 5 Now you call it again, like Add(3, 5); Do you expect that 'c' would still contain the value of 3? It is being re-declared and it has the value of 0 again (and then it gets the value of 3 + 5 ==> 8) The variable 'c' is being declared on the stack, since it is a local variable. Once you go out of the function, it is gone (this is why it is local... It leaves within the scope of the function. And if Add would have a recursion (meaning it calls itself again and again, until a certain condition is true), then each call of the function will have it's own 'c' variable. Because of the fact that local variables are lost when you leave the function, you can't also have a positive or negative transition on the bits. The reason why you can't do a positive or negative transition on Function-In/Function-Out bits is because on each call you can pass a different bit (so you can't correctly detect a Rise or Fall). If you do want to latch a bit inside a UDFB, then it must be passed by Ref, meaning, it must a be a global bit which is passed by either as Function-Out, or Array of Bits / Strcut that contains a bit that is passed as Function-In (And with this way, you can pass a different bit on each time), or just work with a global bit.
  10. Hi, about the long time formatting: Which version of SD Card Suite are you using? The format tool is using a Windows API that was working fast on XP, but from Vista and onwards the format became very slow. At some point (in mid 2013), I've changed one of the flags sent to the API, which should make the format fast (tested here few times). However, if you still suffer a slow format, then you can use the option to "format drive using Windows", which should load Windows format dialog, and after it finishes formatting, the SD Card formatter would create the relevant directories.
  11. Hi, we have successfully managed to get the driver work on Windows 10. Please open the device manager (while the PLC is disconnected from the computer). Expand both "Network Adapters" and "Ports (COM & LPT)" Now, connect the PLC. Was the PLC added to the "Network Adapters" as "Unitronics Unistream USB Ethernet/RNDIS Gadget", or was a Serial Com Port added to the Ports? Windows 10 might recognize the PLC as a serial port, which in this case, the driver should be browsed specifically, while the signed drivers enforcement is turned off.
  12. Hi, in order to fix this issue, I will need the udt file, since this problem doesn't happen on the files I've checked. Thanks
  13. Hi, The Arrays in UniLogic works in a way that you can give a name to items inside an array. Given that, assume the following situation: Array_Int with Member: Hello // index 0 World // Index 1 Now, the lexer let you access a cell in the array by either: Array_Int[0] or Array_Int[Hello] UniLogic prevents the existance of 2 tags with the same name, on the same scope (You can have 2 local tags, each on a different function with the same name, but having a global tag with that name would create a conflict, because the compilier will not know to which tag you actually refer). Now, consider the following scenario: I also have a tag called Hello.... So if I write Array_Int[Hello], then I want to access index 0, or the index with the value of the Hello Tag? This is one of the resons why we don't allow indirect access to array cells in the way ou have mentioned. About the error you got. The Compiler/Lexer looks for a member called Integer_Tag (or what ever your tag is named), but since it can't find any array member with that name, then it gives you that error (which is in this case, not clear and not accurate). So wait, that means that you can't access an array cell indirectly?? Well, you can, but not in the way you've tried. Try using "Load from Array" for getting a value indirectly from an array, and "Store in Array" for setting a value indirectly to an array. :-)
  14. Hi, On the next version (1.15), it is planned to have a tag that contains: * An array of 32 bits (one per group * An array of 1025 Bits ( 1 spare bit + 1 bit per alarm) * A bit that indicates that 1 or more alarms are active * An interger with the total number of active alarms So I'm guessing it fits your request.
  15. Please explain why do you need to access the alarms in Ladder?
  16. Hi, as I said, currently, Alarms texts does not appear in the Texts grid (but however, it is still translatable, just like the HMI was translatable before the translation grid existed). Translations can be made within the element/alarm itself. Please note, that you should enter the texts/elements/alarms while the default language is active. The reason is that, if for example, German (which is not the default) is set, and you add an Alarm, then the alarm was added with the default display name: "Alarm 1" (for example), so now if you translate the German text to Temperatur zu hoch ist, the english text is still left untouched (and remains as "Alarm 1"). You need to also remember to translate the english text. We will add an "on grid", or through Excel translation feature in the future.
  17. Hi, the Alarm Group display name, the Alarm display name, the descriptions and the countermeasures are all translatale. Current, when you change the active language, UniLogic would load the translated text. (For example, in English, which is for example, the default language, you've set the description to be "Hello World". Now if you change the active language in UniLogic, if the description was not translated, then it will show "Hello World". However, if you now re-enter the text, it will translate the description in the active language). We intend to add a translate on grid or through Excel, just like in the HMI, in the future.
  18. Just a regular spam attack
  19. Hi, there is a known issue with the Firmware manager. It will not find firmwares (and the application might also crash) if the current user name on the computer has non-English characters. This issue was already addressed and the fix will be avialable on the upcoming UniLogic 1.14 version. If you can't wait for version 1.14, then please contact our support on how to extract the firmware update to your USB Stick.
  20. Hi, Yes, this issue might be addressed in the future.
  21. A download All would also re-download the project
  22. What is the OS version that the PLC has? Which UniLogic version are you using?
  23. No, this is how Remote Access is desinged (to hide the keys on zoom). You can use Remote Operator though... it can give you what you want, plus more...
  24. Hi, were you able to solve the problem?
×
×
  • Create New...