MicroLogix 1200 question

tvlodek

Member
Join Date
Jul 2004
Posts
7
I'm very new to PLC's, in fact, I've never used one and don't know anything about them. I have a project that I'm working on, the closed-loop position control of a servo-valve/actuator with the feedback provided by a RVT. The current system runs a program that I'm told, has a scan time of ~ 100 mS. My questions are,

1) Does anyone know what the scan time for a uLogix 1200 is, is it simply the cumulative instruction execution time? Can you write subroutines to minimize the scan time?
2) Also, it doesn't appear this PLC can calculate sine, cosine, etc. Does it allow for the use of look-up tables?

TIA
 
Welcome aboard

First, if you are new to PLCs, you should take a tour of the online tutorial Phil provides here on this site. It is very good!
Second, you need to go to this site for all things AB. The ML 1200 is described in literature you can download here if you have patience or a good T1 or DSL line. Most of the manuals are 2 meg+ in size so you have to have a fast connection or lots of other things to do while your dial up link pokes along like mine does. As for your need to do the math, well I am not sure of the instruction set for the ML1200 but I am sure someone here is and will be able to help you with your questions on doing sine and the like. But, sounds like you are in for some fun for your first PLC project, makes you crazy at times but it is worth the effort. Hang in there.
 
Do you really want to use a PLC for this?

Why not buy a hydraulic motion controller that can do this already?
By the time you get done you will have spent a lot of time re-inventing the wheel and you will not be happy with the results.
Some hydraulic motion controllers come with the sinusoidal motion/force generator that is required for testing. The updates are much faster than PLC scans and much more deterministic. In addition the motion profile can be plotted with 1 millsecond time resolution.

I just got through helping a distributor that is putting together a hydraulic test system. What are you really trying to do?
What is the desired frequency and amplitude of the test system?
 
ML1200 is not a runner but 100ms sounds excessive to me
(how do they get it so high..?). You are right about scan
time being cummulative time of all processed instructions
plus someoverhead. And yes you can have subroutines.
Even without them you can still jump around or skip some
logic.
 
STI?

You could use the Selectable Timed Interrupt (STI) to run a subroutine that only handles the logic for your valve. Set the execution frequency to be faster than your 100 ms scan time. But, your interrupt function needs to execute faster than this rate. This could improve the response of your logic to the system dynamics. The "MicroLogix 1200 Instruction Set Reference Manual" (Publication 1762-RM001E-EN-P) has a Knowledgebase Quick Start for using the STI.

I used a SLC 5/04 to position a large hydraulic cylinder. However, past experience using an actual servo controller with this type of hydraulic system lead to a machine redesign so we did not need closed-loop servo control of the cylinder. We have a setup routine that sets tooling at a specific location (+/- 0.005 inch target zone). This setup is not time critical. Then when the machine cycles, we open the target zone to a single sided limit (we just need to get past a target position) to gain cycle time.

I set up a 10 millisecond STI to do this. The fuction performs an Immediate Input on the feedback device, calculates an output command signal based on position error, then adjusts the signal if the cylinder is in the acceleration or deceleration portion of the profile and then uses the Immediate Output instruction to send the command signal to the valve. We used a proportional valve and so included logic to account for the spool flats.

We got this to work very well and we are happy with it. But we had to change the machine design to allow for this type of control. Depending upon your hydraulic system and the performance you need, I agree that you probably ought to look at hydraulic controller. Answers to Peter's questions would be helpful. I would be interested in hearing what you come up with!
 
Sorry for the delay in responding. The frequency response was not specified; I don't have to track an input per se, I'm simply looking to design a loop for steady-state position so the frequencey response can be pretty low. Valves of this type, I've heard, can have f.r. of up to 300 Hz, but as I've said, I only want to maintain a position of ~ 0.005". The people I'm doing the project for are very tight with the money so I doubt they would go for anything such as a dedicated motion controller. Do you know if the uLogix 1200 supports look-up tables? I have to modify the existing tester to test 2 new actuators, one with an LVDT output, the other with a RVT output. The one w/ the LVDT is straight forward. I plan to correct the output of the RVT w/ a look-up table. If I can't implement one with the 1200, I was going to program one into a PIC16 and gin up my own signal conditioning module, then use the 1200 PID functions. Does this sound plausible?
 
We used the SLC PID instruction with a rotary hydraulic actuator and a hydraulic cylinder. We had problems with oscillations near the target. We had a hard time setting the PID parameters to minimize overshoot and yet not cause the deceleration profile to be excessively long (half the stroke). We also had problems when the load changed between setups. The PID would have to be re-tuned; fine for us, but unacceptable to our customers. We ended up with two PID instructions; one for the traverse and then switching to the second as the target was approached. I ended up writing logic to account for deadband. It worked better than the PID deadband parameters. It helped not only with settling, but also with initiating motion.

For feedback, on short cylinders (< 12 inches) I have used LVDTs and an analog input card. On long stroke cylinders (> 50 inches) and rotary actuators I have used encoders and high speed counter cards. Then I didn't need to worry about rollover.

Regarding your RVT, look-up table, and PIC16, someone else will have to help you on that.

We did our hydraulic positioning with a SLC rather than a motion controller to "save money". So, yeah it works, but I ended up removing the PID on later machines and using my own proportional logic. I'm not sure the SLC PID is appropriate for motion control. But, go ahead and try and let us know what happens. It may not be as good as a motion controller, but you should get something to work.
 
Thanks Imi'ike,
I think you've given me enough information to get this project started. My understanding is the 1200 performance is superior to the SLC, additionally, I think I can update the control loop frequently enough to obtain acceptable performance. Thanks again.
 

Similar Topics

I have no offline files, and i need to copy a program from a working micrologix 1200 to a new micrologix 1200. We typically don't turn this...
Replies
3
Views
3,302
Hi, What would stop an OSR from outputting? I had the attached program running for weeks without a problem, now the OSR won't output when the rung...
Replies
4
Views
1,670
Hello everyone! I've been loaned a Micrologix 1200 (1762-L24BWAR) and Panelview 550 Keypad model (2711-B5A16) with the goal of using my free time...
Replies
3
Views
4,668
Hi I've got a AB Micrologix 1200 and 6" C600 Panelview. I'm wondering if I have a tag on the touchscreen setup to set N7:0 to "1" and in my main...
Replies
1
Views
1,892
Question about HSC in Micrologix 1200. I am trying to program a HSC in a Micrologix 1200. I can set it up in the function file and see the...
Replies
3
Views
3,461
Back
Top Bottom