Jump to content

Joe Tauser

MVP 2023
  • Posts

    2,871
  • Joined

  • Last visited

  • Days Won

    309

Everything posted by Joe Tauser

  1. The probability of two failing due to faulty hardware is quite low. The first one shows "Illegal Operand address". Is your application doing data logging or a lot of SD card writing and you've overrun a memory location somewhere? Joe T.
  2. Yes, you are doing it right in the PLC if I read the documentation correctly. The most difficult thing with serial communication is making first contact. Since it's not working, you need to go outside the PLC to figure out why. This is why I almost always use a terminal program to work out the kinks - it's near impossible to troubleshoot low-level stuff with a Protocol block. Every time you want to change something slightly you have to download your program, and you don't have access to viewing a history of the serial buffer . Trust me on this. I've done it many times. Use the terminal program first before you beat your head on the PLC and get angry at it. One of these reasons is why it doesn't work: 1. The cable is wrong. You don't have TX and RX connected correctly or your handshake jumpers aren't there. 2. The baud rate and/or parity and/or handshaking isn't right. Once again, this is why you use a terminal. If there's anything coming through at all it will appear as garbage on the terminal. Unitronics will not display it unless the COM settings are perfect. Good luck. Joe T.
  3. You need an MJ10-22-CS25 cable for the M90. Joe T.
  4. What voltage and/or device are the PWM outputs connected to? You've got to pull them up to 24V to run them back into the high speed inputs, which may or may not be possible. Joe T.
  5. This is usually caused by noise spikes in the system feeding back into the PLC. Do you have any large contactors or VFDs in the system? Joe T.
  6. You didn't show it, but I'm assuming you're calling your COM INIT and Protocol config with a NO of SB 2. If you call them continually it won't work. Start by connecting a terminal program on a PC to your device to make sure your strings are right and you get the proper response from it. Then transfer what you've learned to the Protocol block. I like this one- https://sites.google.com/site/terminalbpp/ Joe T.
  7. Unfortunately, the documentation regarding using the .dll in LabView is non-existent. I looked through it and the closest thing I could find was in the VB6 example - you can see some of the methods there if you open Form1.frm in a text editor and scroll down to about line 500. But I do understand what you are saying - the methods are not listed in a formatted reference. I'd send a request to support@unitronics.com and see if you can get some help from one of the Creators. Joe T.
  8. It's hard to troubleshoot a program without all the information. What are the online values of MI 57, MI 58, ML 81, and ML 80? Joe T.
  9. The Alarm manager will do what you're asking - it's configured in the tree on the right in Visilogic. Read all the Help on Alarms before you dive into it. Photo 1 - you have the same register for Month and Day. These should be different. When you go online, what values do they contain? Photo 2 - a very nice screen but I have no idea what's under the hood Photo 3 - I don't see a timer. That logic will call a display once, as the coil triggering the transition is hanging on the power rail. Is the rail in a subroutine? Joe T.
  10. The UniStream's memory is different from the Vision's. DataXport doesn't work with it. I haven't tried it out yet, but the UniStream has much more powerful email capabilities than the Vision and you can probably send the data directly from it. Has anyone on the forum done this? Joe T.
  11. There is an example of the Unitronics alarm manager under Help->Examples->Version 900 -> Project examples -> ladder -> V1040 Alarm Example.vlp. The Unitronics alarm manager is a bit of a complicated beast for someone new to the product; you may be better off making your own alarm handler in logic depending on what your needs are. Can you describe what you want to do? Joe T.
  12. You need to attach your entire project. You describe calling multiple subroutines, but only attached an export of one. We have no idea if you are doing the calling correctly. Please post your code. Joe T.
  13. Sorry you feel that way. It is mostly run by volunteers such as myself, and sometimes it takes a bit of time to get questions answered. I haven't done much in UniStream. The Vision and U90 series are my thing, and I don't like to answer questions on something I don't have a lot of real world experience with. I opened UniLogic and was able to change the scaling, but I don't have a way to test it. So I don't really know for sure. If you've got a unit in hand I'd go try it and see if it works. I was able to create a PID config variable called PID 1. I dropped a numeric box and assigned the Numeric Value to PID 1.Set Point. So yes. You have to make your own counter with INC and DEC blocks and Compare blocks to operate with a preset value. Joe T.
  14. As you've gathered, there's more to this program that meets the eye and it's not simple. It's not just a cut-to-length application. It's a do multiple operations on the same part and keep track of the one behind it at the same time application. Your idea of connecting the encoder to all three HSC inputs in parallel may be the simplest solution. The -R34 will definitely support it. The idea I suggested before only used one encoder input, but the encoder must have at least 10X the precision of your 1 mm tolerance once all the mechanical connections are taken into consideration. You're trying to write a precise program without all the data, and that's why you've spent so long on it - you're trying to solve a problem that can't be solved yet. The encoder data sheet you posted is 100 ppr, which is not very precise as encoders go. Before you do anything else you need to verify this is true and get the RPM of the shaft the encoder is connected to. If the machine is as slow as you say, you may be able to increment a register in logic as you show in a previous post in an interrupt routine. If you put that in a 1.25 mS interrupt routine you can see a pulse train at 400 Hz or less. This translates to 4 rev/sec or 240 RPM or slower. Let us know what you find after you examine the machine. Joe T.
  15. Marko, Thanks for the picture and the explanation. If I understand you correctly, the machine is only working on one piece of metal at a time. I recommend you re-consider your approach - could you do calculations on your hole location dimensions to reference them all from a common point and go back to only considering a single encoder number? The distance between the tools looks fixed, so you should be able to do this. I would write a state machine sequence that had a separate step for each hole. I'm guessing you store all the hole locations in a data table based on the part number. Then you run it out to the cut and reset your encoder at that operation. Joe T.
  16. No, that won't be fast enough as the inputs are limited by the scan time if you use them this way. Post your code the the model of the PLC you're using and give us the details of the installation- Encoder make and full model number, especially pulses / revolution Max RPM of the input shaft of the encoder Scaling of the encoder pulses to length Desired precision of the lengths you are feeding Joe T.
  17. Send me a message with your contact information if you're in the US. Joe T.
  18. No repairs on V130s. Good idea on using Remote Access! Joe T.
  19. This is handled with PLC code. Unitronics has a password screen object which hashes the input value, but this limits you to one password only. I typically don't use the hashed input so I can have a backdoor password as well as a user-changeable password. Try your hand at HMI calls based on compare blocks in the PLC logic and post your code with what you've done so we can help. Joe T.
  20. You can only assign one MI to the encoder in the hardware configuration. Depending on the precision of the encoder and the precision needed of your feed operations, you may be able to have the encoder count to a small value (like 10) and generate a pulse in an interrupt subroutine that would increment other MIs that you could independently manipulate. Is this possible? Joe T.
  21. I don't know if you found it, but here's the link to the DLL and it's information - https://unitronicsplc.com/Download/SoftwareUtilities/ActiveX Communication Driver.zip You'll have to determine what strings to feed the DLL container in your LabView environment. It's not something Unitronics supports but it is possible. If anyone has done this feel free to chime in. Joe T.
  22. I'm afraid your display driver has gone bad. Unitronics PLCs have a two year warranty - how old is it? Joe T.
  23. The easiest way to get LabView to talk to Unitronics is to use the Modbus driver on NI's website. Set up the Unitronics unit as a Modbus slave, which is really easy. If you want to do testing before the PLC arrives, there are couple of free (but limited) Modbus slave programs you can find on the Internet. Search this forum and/or Google "Modbus simulator. Joe T.
  24. That is the correct (and only) card, and $25 for shipping is crazy talk. I'd call the Unitronics sales office at (866) 666-6033 and get the name of a distributor that covers your area. Joe T.
×
×
  • Create New...