Hello Guest it is April 29, 2024, 05:49:13 AM

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - jofriedl

Pages: « 1 2
11
CS-Lab / Problem with index homing
« on: August 31, 2015, 08:36:01 PM »
Almost done with the Matsuura MC500v retrofit and I'm running into an issue with index homing. When I attempt to reference all axis, the machine moves until it triggers each reference switch, but while its backing off the switch to find the index pulse sometimes  I get an error that reads "Index distance not within allowed limit'. I'm not sure what this is about. Using the CSMIO/IP-A plugin, Ive counted the index pulses per revolution (2k in the Z and 3K in the X and Y), so I know thats not it.  Even more perplexing is the fact that it doesn't always happen and it won't always happen on the same axis twice. Am I missing something? Thanks for any and all help.

Jonathon

 

12
CS-Lab / Servo tuning problem with IP-A
« on: July 28, 2015, 05:32:47 PM »
Hi

     I'm having trouble tuning the Z axis servo on my Matsuura MC500v retrofit. Ive read through the manual and done enough research to understand the PID loop. I've tuned the X and Y axis fairly well with the help of the auto tuning function and manual tweaking. Something just isn't right with the Z axis though. The servos are the same on all three axis, but the gearing between the servo and the ball screw is a little lower on the Z axis to allow for more torque. The encoders are built into the back of the servos before the gearing.  When I attempt to auto tune, I end up with a Proportional gain around 600 and an integral gain around 200 while the P gain on my x and y axis is around 20000. Also, the axis should be capable of around 400 inches per minute. The fastest I can get the thing to move is 40 inches per minute. If I attempt to set a max speed of 400, the machine will move at 40 inches per minute until a following error is triggered.

    My thoughts are that there is something wrong with the drive. If I unplug the tach input from the encoder to the servo drive ( yaskawa cpcr-mr-052-nb), the servo seems to break free and will oscillate closer to 400 inches per minute for a moment before a following error is triggered in mach.

This is my first time tuning a machine with servos rather than steppers, so any and all help would be appreciated. Thanks!

Jonathon

13
CS-Lab / Matsuura MC500v retrofit with CSMIP/IP-A
« on: December 29, 2014, 11:53:50 AM »
Hello there guys,

      Just like the title says, I'm working on a Matsuura retrofit that I'm pretty excited about. The machine is a 1979 Mc500v. The motion controller is a CSMIP/ip-a and an Automation DL06 will be running the tool changer. At this point, I'm well on the way to having the PLC programmed. I also finished ironing out the M6 macro last night.

     I could definitely use your guys' help with the ethernet controller integration though. When I initially concocted the retrofit, I planned on using a digital encoder and swapping out the servos. However, after reading about Hood's success with the analog version, I took the leap and bought the IP-A in the hopes that I could simply wire it to my existing yaskawa drives.

     I contacted Yaskawa hoping to obtain electrical prints for my servopacks. After bouncing from one department to the next, I was finally told by a Tech that all schematics are proprietary (never mind that they have other servopac prints available for download on their website ). It was suggested that I contact matsuura and obtain electrical prints for the machine. While Matsuura USA is more than willing to share their prints, they have been unable to locate the schematics for my machine. So my first question is, does anyone out there in Mach land have schematics for Yaskawa CPCR- MR 052 NB servo drives?

     As a side note, the DL06 is a pretty cool device! I highly recommend them for anyone implementing a tool changer.

Jonathon

14
Modbus / AddressingTCP Modbus registers in VB
« on: December 25, 2014, 08:01:24 PM »
Hi,

    This is the first of what I'm sure will be many questions about how to get an Automation Direct DL06 to run the tool changer and spindle on a machine retrofit I'm working on.
The tool changer is a 16 station carousel run by what I presume is a stepper motor (the ID plate is worn off and Matsuura USA is still trying to source the wiring diagram for the machine) and 4 pneumatic solenoids. Originally I planned to use the m6 start macro written by the guys over at Machmotion. (see bellow) The macro is designed with the DL06 in mind and also comes with a ladder program which can be downloaded and written strait to the dl06. However, the addresses listed in the macro for current tool and max tool were all wrong. The octal address in the DL06 for max tool is V1206 while the modbus address translates to 646. I confirmed this address in the mach3 modbus test window. The addresses listed in the Macro don't match up at all. But, even when I changed the addresses in the macro to the appropriate addresses, I still can't seem to get the M6 macro to communicate with the DL06. My question is this, what is the protocol for accessing and writing to modbus tcp locations in VB? I'm talking both discrete input contact locations and reading complete word data like analog input or current tool value.

    Ive spent the last few days reading all I can about modbus tcp in mach3, watching all the relevant videos on the artsoft tutorial page and reading forum posts pertaining to using DL06s. After seeing what some of you guys are doing with them, I'm pretty excited to learn all I can about them.  I'm an oil field welder by trade, so most of these concepts are fairly foreign to me. Thanks for any and all help!

This is the m6 start macro

Dim Num As Integer
Dim Number As Integer


Sub Main


TimeOut = 20 '20 Seconds


''''Inputs'''''
Finished = 1600
CurTool = 1605
MaxTool = 1606    


''''Outputs''''
StartVal = 1500
ComTool = 1505


CurrentTool = GetUserDRO(CurTool)

MaxToolNum = GetUserDRO(MaxTool) ''From PLC
CommandedTool = GetSelectedTool()  ''Get selected tool


If CurrentTool = CommandedTool Then ''current tool equals commanded tool
SetCurrentTool( CommandedTool )
End
End If


If CommandedTool <> Current_Tool Then ''The current tool must be different than commanded tool


   If CommandedTool > MaxToolNum Or CommandedTool < 1 Then ''Make sure the tool number is correct
      r = MsgBox("Incorrect Tool Number.",1, "ERROR")
      End
   End If



   Code("G00 G53 X " & GetOEMDRO(1200) & "Y" & GetOEMDRO(1201) & "Z" & GetOEMDRO(1202)) ''Move to correct location
   While IsMoving
      Sleep 10
   Wend

   SetUserDRO(ComTool, CommandedTool)   ''Send Commanded Tool to the PLC
   SetUserDRO(StartVal, (GetUserDRO(StartVal) + 32768)) ''Turn on
   Sleep 500
   SetUserDRO(StartVal, (GetUserDRO(StartVal) - 32767)) ''Turn off
   While (GetUserDRO(Finished) And 32768)
   Sleep 100
   i = i + 1
   If i > (TimeOut*10) Then ''Time out in 20 seconds
      r = MsgBox("Tool Change is not Complete.",1, "Timeout Error")
      Sleep 100
      End
   End If
   Wend

   
   CurrentTool = GetUserDRO(CurTool)
   
   If CurrentTool = CommandedTool Then ''Does the current tool from the PLC match the commanded tool?
      SetCurrentTool( CommandedTool ) ''If so, update tool number
   Else
      r = MsgBox("Tool Change Failure.",1, "Error") ''Else somethine went wrong
   End If
 
 

 
End If ''Tool commanded position is different than current position

End Sub

 
      

Pages: « 1 2