Announcement

Collapse
No announcement yet.

Analog Speed Reference Example

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts


  • Analog Speed Reference Example

    My machinist approached me about creating an adjustable precision grinder for using specific grinding wheels (diamond, borazon, and stone) of varying diameters (4,5,6,7,8 inch). A specific diameter/material combination corresponds to an RPM. In addition, after you have selected the diameter and material, there are two speeds: One for dressing the grinding stone before using it and one for actually grinding with the grinding stone. We thought that an analog speed reference from a PLC would be the way to go on this. I bought a Click Koyo with an analog out, a GS2 AC Motor drive, and a C-More Micro to create the buttons that would allow the operator to select the combination of wheel diameter, material, and dress/grind. I've only done a small amount of programming with Click PLC's. However, I was able to get the C-More setup with some buttons and some code in the PLC to match the buttons. Everything I've created is all RPM based (info I've acquired from the machinist for the presets) and that is obviously relative to the motor your using. I'm fairly certain that I'm going to have to convert the RPM's into Hertz to control the motor. Is there a better way of setting up the drive than manually stopping at every RPM and somehow finding out what frequency I'm at? How would I scale that? Is there an example program that exists somewhere like this that I could take a look at?

    Am I only using the Send instruction to message the drive with the relevant RPM/frequency setting? Do I want any handshake back from the drive?

    There's some sample code in the GS2 manual but I don't know that it applies in this instance.

    Any info/input would be appreciated!!

    Thanks!


  • #2
    You need to figure out your scale in the VFD for what 0v equates to (hopefully 0rpm?) and what 10v equates to (probably motor base speed and 60hz?). Once you know that, you set up your scaling in the PLC so that you know what specific voltage will give you the RPM you want.

    So for instance with options selected you know you want 1000RPM, and if 10v = 1725rpm, then in your program you would output 5.8v(ish) to the analog output.
    It will be a bit more complicated to do all the instructions in Click than Productivity or Do-More, but still possible. Here is what it would look like in either of the two more advanced PLCs:

    Click image for larger version

Name:	Productivity_MotorRPM.png
Views:	168
Size:	20.3 KB
ID:	121273

    Click image for larger version

Name:	DoMore_MotorRPM.png
Views:	118
Size:	81.7 KB
ID:	121274



    So in Productivity you would simply write the RPM value you want to run at in the input tag. In Do-More, you would write the RPM value into N0 memory location, which you would probably have created a nickname for like "Motor_RPM". The input max would be the maximum RPM of your motor, and 65535 would be whatever the maximum counts are of your analog output. Yours may not be 65535.



    I dont know exactly what it would look like in Click, probably something more like the Do-More. Hopefully they have a scale instruction block for you, rather than having to do a bunch of manual instructions. That should give you a bit of an idea on it though.
    Last edited by MikeN; 03-14-2019, 09:58 AM.

    Comment



    • #3
      Mike,

      The plan was to use 4-20mA analog scaling but I guess I'm on the fence because I see you can send Hertz command by way of Modbus as well. I've used SCL instruction before in RSL500. I'm just wondering which is easier to setup, what kind of typical handshaking I should expect to set up from the drive, and if an example program existed to model after. Am I wrong in thinking that this type of application (controlling the speed of a motor to varying degrees with either analog reference or Hz preset) exists somewhere? I would think this would be pretty common.

      Comment



      • #4
        Personally I think modbus may be easier to set up, since you can buy a premade cable I believe. Then all you do is simply write out the RPM value to the one modbus address and thats it (or is it a hz value? IDK been a while). No fussing with filtering the analog to smooth it out. You could probably do a similar scale instruction to convert an RPM integer into a proper hz range for easy conversion.


        If you do go with analog, 4-20ma is the same as 0-10v in the program. You would just change your scaling a little bit.
        Last edited by MikeN; 03-14-2019, 10:05 AM.

        Comment



        • #5
          If you do go with analog, 4-20ma is the same as 0-10v in the program
          Yep, I get that it's the same. I just think that the 4-20 will be less likely to be affected by the motor voltage as far as accuracy.

          I have the pre-made cable. I had wired the analog already. Then read in the manual and realized that there were two ways to accomplish this. Having never programmed the Click or used Modbus before, I thought I'd ask. I didn't think an example would be so hard to find. I'm still looking.

          Comment



          • #6
            Originally posted by esp400 View Post

            Yep, I get that it's the same. I just think that the 4-20 will be less likely to be affected by the motor voltage as far as accuracy.

            I have the pre-made cable. I had wired the analog already. Then read in the manual and realized that there were two ways to accomplish this. Having never programmed the Click or used Modbus before, I thought I'd ask. I didn't think an example would be so hard to find. I'm still looking.
            While I haven't tried it with a GS series drive, and I'm not clear on if you have tried it or just planed to. But I have controlled a Mitsubishi drive with a CLICK and could not get the CLCIK's weird sinking current output to work, I ended up having to use voltage. In my case I didn't need high speed and the CLICK's 0-5V out (compared to the drives 0-10V in) wasn't a problem, but if one needs full speed one may need to mess with the scaling in the drive (or just use MODBUS)

            Generally a VFD is going to give frequency commanded frequency or directly proportional to the analog input if using voltage or current (well, after acceleration) I'd think there would be little need for feedback from a GS2, all it will tell you is a frequency the same as you "asked" for in the first place since as far as I know it has no feed back from the motor. Yes, they say it has "Automatic slip compensation" which presumably would change the frequency (I imagine based on current?), but since that is a "compensation" to try to maintain speed equivalent to the commanded frequency, I'd bet the commanded frequency is what it will report, which you already know.

            The CLICK has a cool automagical scaling for its analog i/o in the PLC i/o setup you can tell it (for example) that 0-3450 ((rpm), in the DF register assigned to the output) = 4-20mA (if mA works for you)


            Oh, now that I think of it, I do have a GS2 on my surface grinder, but I just use the front panel controls on the drive since they work well enough and I don't change speed enough to bother with anything fancy (I'm really only using it to get 3 phase at home)
            Last edited by Tinker; 03-15-2019, 11:51 PM. Reason: addition

            Comment

            Working...
            X