Jump to content


  • Posts

  • Joined

  • Last visited

Xeall's Achievements


Newbie (1/4)



  1. Thanks Joe, I think I will have to map the outputs to MBs manually as suggested. A bit of a pain, but it will have to do for now. Thanks for the input.
  2. SB 172 is definitely the correct system bit to set to copy inputs to an MI. Below is the relevant section of the documentation: SB 172 is used to copy inputs to a register which is what I have used for the input part of my program. What I want is to copy outputs to a register. I cannot use SB 173 as this provides the opposite functionality (copy MI to outputs) to what I want (copy outputs to MI).
  3. What I am trying to achieve is having one screen to display the state of all inputs and one screen to display the state of all outputs. I have achieved what I want with the inputs. but have not been able to achieve the same thing with outputs. For the inputs, I have a screen that looks like the following: Input: 05 OFF Air pressure low The up and down arrows increase/decrease the input number. The selected input number is used with the "Input vector to MI" function to copy the state of the specified input to a MI which is then displayed on the screen as ON/OFF. The text on the 2nd line is just a list linked to the selected input number. Specifically: #2 (The address of the register used to display ON/OFF) into SI170 MI3 (The register containing the current input number) into SI171 #1 (only want to copy the value of a single input) into SI172 Set SB172 (to copy input to MI) This setup for inputs is functioning exactly as expected, however I would like to replicate this screen with another that does the same thing with outputs. The problem is that the special function for outputs only copies a value to the outputs and I cannot find a way to copy the value of an output to a register. As stated in my previous message, I could use a bunch of contacts and coils to link the relevant outputs to MIs and then use "Copy vector of MBs" special function to copy the currently selected output value to a register to be displayed on screen. This does not seem as tidy as what I have achieved for the inputs. I really just want to know if there is some equivalent to the "Copy Input vector to MI" function for outputs such as "Copy Output vector to MI". Thanks
  4. Hi there, I would like to know if there is a special function similar to the "Copy vector of inputs to a register" for use with outputs. I would like to be able to copy the current state of outputs to a MI register. An alternative would be to use a bunch of contacts and coils to link the outputs to MBs then use the "convert MB to MI" special function. However this does not seem like the tidiest solution. What I am aiming to achieve is having a screen to display the current state of all inputs and outputs. The user will be able to navigate up and down the list of outputs and see their current state. The aim is to achieve this using a single display in the UI. I have already achieved what I want for the inputs. Using the "Copy vector of inputs to a register" function, I can copy the selected Input value to an MI and display that on the screen. It appears that there is only a "Copy MI to output vector" for outputs which is the opposite of what I would like. I would really appreciate any suggestions.
  5. Hi there, After trying to compile a project I have been working on it suddenly came up with 600+ errors. All of the errors were of the form "'element name' can not have both 'Touch' and 'Hide' linked to the same operand". After looking at a few of the elements affected it was clear that every single element in my project had all of its empty links set to MB 524. Up until a couple of days ago, my project compiled and downloaded successfully. Now there are 3306 instances of MB 524 in my project. For example: The "Links" section on a binary text variable. Before After Link: MB 1069 MB 1069 Hide: MB 524 Disable view: MB 524 Marking view: MB 524 Legal entry: MB 524 Touch: MB 524 I am using VisiLogic Version 9.5.0 Build 0 I am not sure if this is a bug I have found or something I could have caused. Either way, I would appreciate any help figuring out how to remove MB 524 from every link so I can compile my project. (I would prefer not to have to manually remove all 3306 instances) Please let me know if there is any additional information I could provide in resolving this issue.
  6. Thanks, I didn't realise that there was that limitation on non-fixed length variables. Would you be able to point me to where this is documented for future reference. I was unable to find documentation of this limitation after looking through the manuals related to TCP/IP Scan function blocks and messages.
  7. Hi there, I am having some trouble reading variable length numbers in a "Protocol TCP/IP Scan" block. We are receiving a message of the form "-9999999999.999 [Counts16Bit]". Messages can be positive or negative and can contain a variable number of digits, so "9.999 [Counts16Bit]" is also a valid message. I am able to successfully use the scan block with fixed length messages. If I construct a message like "111 [Counts16Bit]0A" where the numeric variable is "Decimal ASCII: Fixed Length", Vector Length = 1, Length = 3, "No Prefix", I can receive any 3 digit number successfully. If I change the numeric variable to "Negative Only (-)", I can only receive messages with a "-" sign. I would expect to be able to receive 3 digit messages with or without a "-" sign. If I construct a message like "1 [Counts16Bit]0A" where the numeric variable is "Decimal ASCII: No Fixed Length", "No Prefix", I do not receive any messages, even ones with a single digit. Is there something I am missing. I would really appreciate any suggestions.
  • Create New...