ML1100 Motor Position control using PID

gimmephone

Member
Join Date
Mar 2005
Location
Windsor, Ontario
Posts
34
I have a ML1100 PLC and a DC motor with a potentiometer mounted to its shaft. I want to demonstrate positional control using a PID loop(no load).

The ML has 2 analog inputs 0-10 Volts so I connected resistances in series with the potentiometer and using a 10V power supply, I obtained a voltage range of 5-8.5V between the two extreme positions. I do not want a great resolution, anything close to demonstrating my point will do. My plan is to use one analog input to input the reference analog voltage input (i am guessing this should also be in the range 5-8.5V) the user wishes to track and the second to get the actual voltage from my shaft mount potentiometer setup.

I havent ever used PID loops with a PLC so I need some help in setting this up. Can anyone please provide any ladder logic that they have used or any ideas how I can do this. I am just not able to understant how my output from the PLC will make the motor stop at the exact position that I desire.

Thanks a lot for your help
 
What have you used PID loops with ? How are you going to control the motor - off/on, analogue output to a speed controller ? How do you intend to adjust the PID parameters (via more pots or HMI or just editing the plc's data) which plc will you be using.....
 
What have you used PID loops with ?
I have studied the theory behind PID loops but have never actually implemented one...that is why I think I am stuck on the application part as to how this setup would work

How are you going to control the motor - off/on, analogue output to a speed controller ?
I do not care about the motor speed....as long as the desired position is achieved to within a reasonable accuracy, which too is very broad say to within +-10degrees, I would be happy as this is just a demonstration for practical PID based loops as a university project. I was planning to connect my DC motor directly to the PLC's output, as it is 24V 0.3 amps...the spped might be a concern though as it might spin too fast and overshoot the position where it should stop. Any suggestions in this regard would be welcome...I was thinking in lines of using an NPN transistor with a secondary voltage that is really low , say 2V so that the motor spins really slow.

How do you intend to adjust the PID parameters (via more pots or HMI or just editing the plc's data)
I thought that the PID block inside the PLC simulates the functionality of the proportional, Integral and Differential gains so I was just planning to edit the PLC's PID parameters

which plc will you be using.....
I will be using the Allen Bradley Micrologix1100 standalone PLC (without any added I/O cards)

Thanks for your help
 
This sounds like a challenging project.

You must be able to vary the speed of the motor or you will
not be able to change its behaviour with the PID parameters. If the motor speed is fixed, it will approach your position demand
at a fixed speed (the proportional term will not affect anything) and you will then turn off the motor when the positonal error falls below your tolerance level. Whilst this functional, it does not demonstrate what happens when you change PID parameters.

As you have a simple on/off interface to the motor, one way of changing the speed is to pulse the output to the motor at varying duty cycles (this is called PWM). For example, on all the time gives 100% speed, on for 500ms then off for 500ms will give an average speed of 50% and the quicker you switch, the smoother the speed will be. I'm not familiar with your PLC but some plc's provide PWM outputs - this would be ideal, however it is possible to do this using the PLC program but will have speed limitations, it all depends on what features are available in your plc.

Changing the duty cycle will give you some form of speed control, you must get this working first.

I'm sure some others will chime in with some other ideas.
 

Similar Topics

Does anyone have schematics (and PLC program) for connecting a stepper motor to a ML1100 (or any of the Micrologix line). I haven't found any A-B...
Replies
6
Views
2,338
I'm looking to implement a low-cost, efficient method of communicating some integer values to an R30iB robot from a Rockwell 1100 PLC. I am not...
Replies
8
Views
1,730
Hello all, I am trying to setup my MicroLogix 1100 as a modbus RTU master for a modbus network containing multiple modbus RTU slaves. I currently...
Replies
7
Views
3,943
We have a machine that keeps losing its program at random intervals; sometimes 2x-3x in a shift, sometimes will go over 1wk without issue. I had a...
Replies
9
Views
2,945
Just asking for clarification here, but from my research all I need is a 500 ohm resistor across the AI and the common? Heres my schematic. I...
Replies
5
Views
2,586
Back
Top Bottom