Jump to content

JPG

Members
  • Posts

    5
  • Joined

  • Last visited

JPG's Achievements

Newbie

Newbie (1/4)

0

Reputation

  1. I'm posting what I've found here in case it is of future use to others After much time and effort, I've found a couple solutions. Take them with a grain of salt, I'm somewhat of a novice. First, it doesn't appear to be possible to write to the register that contains the encoder value so it can't be reset that way. Second, this may be obvious to experienced folks, but it took me a bit to figure it out. This can be used to get a value that follows the encoder but can be reset to zero; The current encoder value should be stored as a signed 32bit value. Probably an XL or an ML. Create an offset value by writing one time the current encoder value to another singed operand. Create a replacement encoder value in another singed operand. Always subtract the offset from the current encoder value to get the replacement encoder value. This will give you a value that always follows the encoder value but at a calculated offset. Anytime the offset is recalculated the result will be zero in the replacement encoder value. Hence a value that follows the encoder but can be reset to zero in logic. No it's not perfect, but it works pretty well. Third, another way that the encoder value can be reset is by changing it's config. Yes this is probably far from ideal, but could be useful by quickly changing config and changing back. I didn't fully explore which configs will result in a reset value, but it was repeatable. Good luck.
  2. How can the counter be reset on a URD-0200E? I would like to use a V700 with a URB-TCP and a URD-0200E to read a shaft encoder. I assumed I could write to the registers that contain the count and set the value to 0. Is this correct? If not, how do I reset the counter when the encoder type is 4x? If it's not possible to reset the counter, how could the encoder value be equated to zero in ladder logic?
  3. Thanks for helping Joe and Ausman. And thanks for posting those links. Lots of good information there, however they did not answer my question. The Remote IO adapter I'm using is the URB-TCP. I should also specify that this is a Visilogic project. I did figure out the answer and I'll mention it here for others. Maybe Joe and Ausman could comment as well for correction or further clarification. The answer is two parts: 1) Modbus read/write registers are not specific to IO modules as I had thought. For example the URD-1600 does not always use the same Modbus registers in every configuration. This is because the input and output registers change based on overall config (quantity, position and type of modules). So the example URD-1600 will use a certain register when it's the only module on the remote adapter but will use a different register when there is another IO module in position before it. 2) URB-TCP and URB-TCP2 Modbus registers are; inputs start at 0, outputs start at 2048 Bonus) Don't forget to factor in the -1 offset that is sometimes needed when reading/writing to registers in Modbus Hope I explained this well enough and it helps someone
  4. It can be done. I'm using multiple URB-TCP modules with one V700. Give each URB a unique IP address. Configure a socket for each URB module and set up a Modbus config block for each. Use a TCP/IP connect block to connect to the URB modules address. Of course there are other ways to do it but this is what has worked for me with a V700.
  5. Been lurking the forums for a while. First post! Any help is appreciated. 1) Can anyone point me towards the official Unitronics documentation that would tell me what ModbusIP registers are used when talking to a HSC (ie: URD-0200E)? Maybe it's just me but I can never seem to find official documentation that details information like this. 2) What registers contain the count? What registers do I write to for HSC config?
×
×
  • Create New...