Jump to content

Joe Tauser

MVP 2023
  • Posts

    2,863
  • Joined

  • Last visited

  • Days Won

    308

Everything posted by Joe Tauser

  1. I just submitted an application note to Unitronics on this very topic. We're using the PTO function with Automation Direct servos (I know - ) in stepper emulation mode. As long as you don't have to do circular interpolation, it works great. Post the model number of the Fanuc drives and I may be able to track something down. Joe T.
  2. Nice one, Jas. Covered the basics well. Joe T.
  3. You have to specify in the Remote Operator software communication configuration table that you want to use port 20257. Otherwise it will default to 20256. Joe T.
  4. I've got a fair amount of experience counting bottles. Before you dive into this, consider the following questions: 1. Do the dimensions of the bottle you're counting ever change? 2. Where on the bottle are you sensing it? 3. What kind of sensor are you using? 4. Are the bottles spaced apart or right next to each other as they move down the line? 5. Is it possible for the sensor to give more than one pulse per bottle? 6. How long is the pulse length? How short will it get when the line is cranked up? 7. What is the bottle material and/or color? As you can probably guess, these questions came about from implementing an application that took several revisions to get working right. If you're using a photoeye, don't believe the vendor when they assure you that it will work. Bottles can be a pain in the butt to count unless they're always the same size and they're made out of opaque plastic. Even then sensor alignment can get critical. This is one of the applications where an oscilloscope on the sensor output can be extremely handy. Answer the above questions and we can get started. Joe T.
  5. The Unitronics inputs are signed 14 bit. To get 0.1 degree regulation, you need 0.01 degree precision. I've used a third party external universal analog 16 bit Modbus slave module with a Unitronics PLC. In temperature mode, the ranges are predefined for each sensor and the span is typically 1000 degrees C, and it is signed. So what you're really dealing with is 15 bit analog. You'll get your best accuracy with an RTD, because there is an additional error introduced by the cold junction compensator in the thermocouple circuit, typically 0.2% of span. In the case of an RTD on this module, the span is -200 to 850, or 1050 degrees C. Divide this by 2^15 (32,768) and you get 0.032 degrees per count. This may be enough to work. The next step up is a 20 or 24 bit module, and now you're talking about some money. NI 9219 24 bit module Google "20 bit analog module" or "24 bit analog module" to see what's out there. As long as your customer understands that this won't be the cheapest thing in the world, you can combine a basic Unitronics controller using Modbus with a high-end I/O module to produce a very cost-effective solution. My opinion is that you won't be able to do it with the onboard inputs. Joe T.
  6. Have you watched the Modbus Webinars featured on the main page of the forum? If you haven't, take 45 minutes to give them a look and see if you can answer your own question. My opinion is doing any kind of serial communication with a PLC is not a beginner-level project. You have to write your own port handler using the functions available, and you have to understand the timing and the back and forth one-block-at-a-time nature of a serial port. I've seen lots of instances where someone sets up Modbus polling logic and then can't figure out why their write blocks don't work. It's almost always caused by not turning the polling off. A program using the serial port can be compared to a large ballroom dance; you've got to structure your code so all the dancers keep moving but don't crash into each other. Putting together a program flowchart before you start is invaluable. Generally, you don't keep a master-slave setup "alive" - you check for read/write errors on the master side. If you find that it's possible for the slave to go into some kind of brain-dead mode where it won't communicate, then you set up a heartbeat bit in the slave that the master turns on and off on some periodic basis. You then write logic in the slave to monitor the change of this bit, and write more logic to handle the situation if the heartbeat stops. Joe T.
  7. Fabios, You mentioned the specs for a DI16 module - this implies that you are connecting your prox to an expansion module. If this is the case, then all bets are off. You can only use Immediate Inputs on a Snap I/O module on the large PLCs or on the built-in inputs on the small PLCs (they're all considered snap I/O). There is a bit of delay associated with expansion I/O which is why the response time on a DI16 is 10 ms. You will not be able to sense a faster pulse on an expansion module with any amount of programming. I did a similar project awhile ago and the solution was to run the high speed inputs all the way back to the PLC and connect them to Snap inputs. Then I put Immediate Inputs in a interrupt routine to get the response time I needed. You'll have to pick the input used based on your shortest possible pulse time. You also mentioned a V280, so you could use a V200-18-E1B module. The HSC inputs are rated at 10 kHz so you can sense a 0.1 ms pulse, but the V280 only supports the 2.5 ms interrupt routine so the best you'll get from the other inputs is a 2.5 ms response. Anything shorter may or may not be sensed depending on the input state at the beginning of the interrupt routine. What is the total time duration at high speed? You mentioned a 0.1 ms pulse, but how long is the off time? You may be able to go old school and add a resistor and capacitor across the input to stretch the pulse, but you have to be careful not to stretch it too long and interfere with the next pulse. Joe T.
  8. Ditto to Simon's response on replacing the relays with Unitronics' blessing. They are soldered in. I have been known to replace internal relays myself, but this totally voids the factory warranty. You also need a soldering iron with a vacuum tip and a fair amount of experience to get something out of a double-sided board. Don't try it on the only unit you have - it's easier to re-program the PLC to use a different output. The way I prefer to design a system is to start with a PLC that has transistor outputs and drive small external relays. There is no limit on the number of times a transistor output can switch- think about a solid-state audio amplifier switching thousands of times a second. It adds a few bucks and some more rail space to the project, but if a relay wears out or you blow it up you easily replace a single part. Use relays with indicator lights to give your project that sci-fi look. Joe T.
  9. The V130-33-RA22 doesn't have any digital transistor outputs, so you're stuck with using the relay. Here's an article on relay contact life with more information that you can possibly need- Relay Contact Life The relay in this unit is a Tyco PCN-124D3MHZ, which is rated for twenty million mechanical cycles. Since you're switching a resistive load, there won't be any appreciable arcing so you don't have to worry about contact pitting. An inductive load such as a solenoid, contactor, or even another relay will cause arcing and pitting which is what destroys relay contacts. An RC snubber across the load significantly reduces this, as the capacitor absorbs the voltage spike created when and inductor is disconnected and effectively eliminates the arc. With a two second cycle time, you will reach twenty million cycles in 463 days of continuous operation. You will have to decide if this is acceptable. Joe T.
  10. I've always used MI's for strings. What is the reason for ML's? Jeo T.
  11. Try hooking one side of the RTD to the CM terminal and the other side to both the PT terminals jumpered together. According to the drawing, the PT terminals compensate for lead resistance. Joe T.
  12. Damian- The Jersey comment was a friendly dig - my in-laws live there and I am compelled to visit north Jersey twice a year, come hell, high water, or the Holiday Blizzard of 2010. If you weren't so far north in NY I would love to track you down sometime. I'm sure it's contagious - I used to be a sweet cuddly teddy bear. Now I can blend in with the New York City attitude when I go there. I even drive like them, which is really scary to others on the streets of St. Louis. Joe T.
  13. A PLC scan can not be stopped by design. That's the reason for the watchdog, and the main difference between a PLC program and a computer program. Here's how the scan works: 1. Read inputs 2. Solve logic, read/write internal memory as needed 3. Write outputs 4. Service COM port and do general housekeeping 5. Repeat As you can see, if the input wasn't on when the logic started and you try to use an input to hold the return, the inputs won't be scanned again and your program will barf. Not having seen the program, I don't know what you're trying to do. You may want to put the logic that depends on this input into a subroutine and call that subroutine from the main on a positive transition of the input. Joe T.
  14. I had a gut feeling that this was a Windows problem and not PLC hardware specific, so I had the customer send me his program, and I tried it on my computer. Of course, the problem didn't appear. I asked about his desktop settings - Display Properties->Appearance tab. He is running XP SP3 and had the following settings: Windows and buttons: Windows XP style Color scheme: Silver Font Size: Normal I set up my computer with the same settings and was now able to view the problem on a Variable:List of Texts object. I determined that the problem only appears with the Silver color. Being an old curmudgeon, I set all my computers' styles to Windows Classic where silver is not even an option. Anyway, this is what I found. See if you can duplicate it. Joe T.
  15. In answer to your last question, a PC-based Modbus simulator is invaluable for tracking down Modbus problems. None of the good ones are free, however. I've had good luck with this one- Calta Modbus Simulator (The MDBUS product) For $180 US, it works great as a master and slave for both serial and TCP/IP. No, I don't get a commission. The demo they offer may be enough to answer your questions. Joe T.
  16. It would probably be easiest to use Citect's Modbus or ModbusIP driver. Set up the Unitronics unit as a Modbus slave and you can read everything easily - see the Help on Modbus for examples. Joe T.
  17. First, you'll need the RS232 module for the Jazz. Then download this document and read up on the PCOM protocol- PCOM Joe T.
  18. Just as a shot in the dark, try running a Windows update and make sure you've got all the .NET service packs - they're up to version 4. Joe T.
  19. Har dee har har, Damian. Are you sure you're not from New Jersey? Joe T.
  20. We just upgraded to 9.0.1. Now the window where you edit your text is black. How do we change the background back to white so we can see what we're doing? Joe T.
  21. The program is looking for a NC of SB 344 in front of the write block so you don't try to write to the SD while it's busy. Joe T.
  22. These little buggers- Data Line Protectors You have to break the wires out and run them through them - easy enough to do when the com cable is flat. I bought 100 feet of six conductor flat phone wire, some six conductor RJ12 plugs, and the tool to put them on. You have to do this for an RS485 connection, and if the run is RS232 and short you can just cut the programming cable that comes with the PLC. Like anything else, some experimentation is required to determine a good configuration. You didn't state exactly how the ESD test is being done, but I'm guessing they're probing the com cable or port as part of the test. Joe T.
  23. Dumb question- did you move the jumpers inside? Joe T.
  24. My experience is that Unitronics doesn't have transient noise filtering circuitry built into the PLC. I usually add snubbers or diodes to the outputs and signal conditioners to the COM ports to clamp the noise down. These guys make a good device specific to the various communication hardware types: Citel Joe T.
×
×
  • Create New...