Jump to content

Joe Tauser

MVP 2023
  • Posts

    2,835
  • Joined

  • Last visited

  • Days Won

    304

Everything posted by Joe Tauser

  1. Yes. I have four versions of Visilogic on my computer at any given time. You just need to keep track of which version is in which PLC. Joe T.
  2. I was contacted about how to connect the HSO outputs on a V130 to control a not-to-be-named brand of servo. If you're controlling a servo / stepper with the HSO outputs you're going to be giving it pulses and direction, so it's effectively a stepper. A servo controller has the added bonus of position feedback, but that's not important for this discussion. I tried to quickly find a post on the forum that covered properly connecting an HSO to the pulse input and I had a hard time finding what I really wanted with the forum search function. I decided it was a topic worth posting and pinning. Here's a pretty typical input to a servo / stepper control: The people who put these diagrams together assume you will be pushing the controller with a 5V line driver, which is why it's shown like this. The connection shown above tells us nothing about how to connect this to a PLC system. If you try to drive the PULS and SIGN input with 24V PLC signals you will blow this thing up. When you're connecting components together from different manufacturers, you have to have an understanding of basic electricity. There's no way around it. Ohm's Law combined with Kirkoff's Voltage Law (sum of voltage drops = 0) always wins. Let's dive in with some basic facts about optocouplers. This is the optocoupler part: It works by passing current through the LED which makes the LED light up. That turns on the transistor, which is made so that it's optically sensitive. Notice I said CURRENT. LEDs will start working after some forward bias voltage is applied and then get brighter as more current is supplied. The voltage drop will remain about the same, and eventually if you apply too much current the LED will burn out, just like a light bulb. A typical absolute maximum input current for an optocoupler is 50 mA. I always use a voltage drop of 1.2V and a supply current of 10 - 20 mA for optocouplers. Now let's look at the above circuit designed to run on a 5V pulse input with it's internal 150 ohm resistor and apply math: As you can see, the current going through the optocoupler i is 25 mA. Well within the specification. Moving on, the Unitronics HSO output is an open collector N-type Mosfet. "Open Collector" is manufacturer-speak for "we didn't connect one side of the device. That's up to you." They do this to get the speed needed to call it a High Speed Output. That's another discussion. Just think of an NPN / Open Collector / Sinking Output as a relay contact to 0V. You've got to provide the high side. Here's how the servo / stepper gets connected to the HSO Output: I've re-done the voltage equation to include the extra parts. For bonus points you can see if you can come up with the equations yourself. In addition to connecting the parts together correctly, an extremely important component in the circuit is the pull-up resistor. Let's say you're trying to hook this up and your boss and/or customer is riding your butt and you don't have a resistor. So you just connect your +24V to the (+) on the servo and connect the rest as shown. Let's do the math: i = (24 - 1.4) / (0 + 150) = 150 mA You will blow up the servo, the PLC, or both probably after about 10 pulses. Less if your output gets stuck on. If you've read my other posts on connecting stuff to open collector outputs you may remember that my go-to resistor I carry with me is a 2.2K (1/2W). Let's put a 2.2K resistor in for Rp: i = (24 -1.4) / (2200 + 150) = 9.6 mA Right in range. Yay! For the answers to these and other impossible questions remember that Google is your friend. Joe T.
  3. The project I'm working on now requires display of a LOT of REAL tags. They're typically 5 or 6 significant digits. For example, this is from my Scale display. We're talking to scales which will have a maximum of 5000 kg, and we want two decimal points. This is how it looks: I've sized the numeric boxes so they don't look ridiculously large with the displayed data, but the UniStream compiler chokes on this and I get all kinds of "warnings". It would be really nice if we could specify the number of digits on both sides of the decimal point like we can with INTs. Joe T.
  4. Make sure you're setting the panel IP address, not the CPU IP address. The PC communicates with the panel. You can check the addresses on the PLC itself using UniApps. Joe T.
  5. @Ravi - I generally don't write programs from scratch for people on the forum. My philosophy has always been you learn by doing. That said, I will generally help a user who's made an honest stab at making a program work by editing it for them. If you upload the program you're working on I and others on the forum will be happy to download it and have a look at your work. Make sure you tell us which version of Visilogic you're using. Joe T.
  6. Since the Great Hacking of 2023, Unitronics has decided that No or Default passwords are no longer permissible in their software. So anything released from here on out will require a password and to change any default passwords. Joe T.
  7. It could also be caused by transients from the contactor coils working their way into the I/O module backplane. Do you have RC snubbers across the coils? Joe T.
  8. @Cara Bereck Levy - can you allocate ORSO2001 some more space? Joe T.
  9. You can't add to the number of timers available but you can change the way you count time. What is the model of the PLC you have? Depending on the application, I often roll my own timers by incrementing an MI with a time pulse and using compare and reset numeric blocks on them. It takes up more program space, but you get a lot more control over what you do with the "timer" value. Joe T.
  10. Your picture shows a cable that should work, but I don't know for sure. You don't need to know the IP address for serial communication. Have a look at this topic. It shows the official Unitronics parts and what to do to set up serial communication. https://support.unitronics.com/index.php?/selfhelp/view-article/communicating-using-rs232-cable-using-visilogic-software Joe T.
  11. Take a close look at that port. The V350 has an RJ45 port on it labelled "Expansion Port". It's not an Ethernet port. The Ethernet port is an optional expansion port which will be on the side. The serial port is the RJ12 port on the side and it is an RS232 port. The RS232-CB1 physically converts the RJ12 to a DB9 connector. Joe T.
  12. I'm assuming you somehow know the PLC is still running. You can access the screen through the serial port using the Unitronics Utility Remote Operator. If you have an Ethernet port on the PLC and you know the IP address you can access it that way as well. You will need a serial cable - part number RS232-CB1. If your computer doesn't have a serial port you will also need a USB to serial converter part number MJ10-22-CS35. The V350 does not have an onboard USB port. You can't upload the project from the PLC unless upload was enabled by the original programmer. Usually it isn't. You will need the the original .vlp file to download to a new PLC. Joe T.
  13. You are correct about the ridiculously slow frequency on regular PNP transistor outputs. I discovered this the hard way on a stepper motor application many years ago. Here's a post covering the difference between PNP and NPN - You need a Vision model with real high speed NPN outputs to do what you're trying to do. There will be a "TR" in the part number if it has this. That capability is one of the things Unitronics removed from the Samba series to make it lower cost. The Vision version of the Samba you chose is a V350-J-TR20. This model has the high speed outputs. Joe T.
  14. It should have put a link on your Desktop to the old version. Otherwise, create your own shortcut to the old version directory to the Unitronics.Shell.UI.exe program. Joe T.
  15. Step 1 - clarify the exact protocol. Is it "Ethernet/IP" (Allen Bradley) or Modbus TCP? The SM70 can do Modbus TCP. It does not support Ethernet/IP - for that you'll need a protocol converter or upgrade to a UniStream. Joe T.
  16. Not too hard. You could increment a register with a one second pulse and write it to the SD card on a negative transition of the input. Then reset it and start counting again on the next positive transition of the input. Have you already started a program to try this? If so, please upload it so we can see what you're doing. Joe T.
  17. I intentionally used that word and I was actually ready for PC blowback, as PC is one of my highest irritations. I have whole rants on the words "appropriate" and "offensive". To your point, here's the definition for you that applies to this situation- The Modbus configuration on this device caused a delay in my progress. Good thing I didn't try to ask it it's pronouns. Joe T.
  18. @NoamM, @Cara Bereck Levy <rant> Daresay, there's an error in the Help on this block. And on the floating tooltip, too. 😪 The "Modbus" device I am reading data from is retarded and has the byte order backwards on regular old integers. I need to read a block of four holding registers and swap the bytes so the numbers make sense. My input block is an array of 4 UINT 16s. I just spent an hour trying to figure out why the output array contained all 0s. The Help on the Swap Bytes Extended block states Parameter "D" is "Sets the number of bytes to be swapped". I know what a byte is. So like a good little data type rule follower I set parameter D to 8. Four UINT 16s is 8 bytes. The correct and working answer is actually 4 for this application. It's not the number of bytes, it's the number of array elements. NoamM alludes to this in his above post when he says D is "size", but that's not specific enough. So once again, people, the correct word for Parameter D is "Elements". </rant> Joe T.
  19. The model is a USP-156-B10. We did it using a USB flash drive. We had other things to do so we let it keep flashing. The update took an hour, but it did finish. This was from version 1.32.98 to 1.34.195. Should we have done an interim update to 1.33? Joe T.
  20. When you update the OS on a Unistream the screen flashes but you have no idea as to the progress of the update. I've been watching it flash for 45 minutes and I don't know if I should wait a little longer or if the PLC has gone bye-bye. Is it possible to make the update screen more verbose with a progress bar and other status messages? Joe T.
  21. If there's no PLC I'm curious how you came to ask this question on a PLC support forum. Are you looking to select one with a counter input? Joe T.
  22. I am a distributor. Your supplier if they are also a distributor has the correction information. My source tells me that the parts supply is much better but Unitronics has a huge backlog they are working to fulfill. Lead time varies wildly depending on which part number you are looking for. Can you be more specific? Joe T.
  23. For starters, what model PLC are you working with? Joe T.
  24. Check the Help on "Special Functions". They're used by loading your parameters into SI 141..SI 147, and then executed by setting SI 140 to the function code. After you've triggered the Modbus function once it should work. Only trigger the Special functions as needed. They will execute the function and then be ready for the next call. In your code above you are continuously calling function 200 (Store Timer Preset). Do you really need to do that all the time? The Jazz is a very primitive controller compared to the Vision. Considering what you're trying to do I would seriously consider upgrading to a Samba, which would make these tasks much easier. Your time is valuable. Joe T.
  25. We drive the inputs of Invertek drives directly from the PLC transistor outputs all the time. All you need to do is connect the drive common to the 0V reference of the PLC. In these applications the VFD is in the same panel as the PLC, so distance isn't an issue. Joe T.
×
×
  • Create New...