Hi Florian, Andy, Gregg and Bertho!

On 11/17/2013 10:29 PM, Florian Rist wrote:
> I'm not sure if it's a good idea, but I think you could do it by
> modifying the kinematic module.
>
> I once added a non-linear compensation to the trivkins kinematics to
> compensate for a deformed machine frame. It worked quit well and was
> easy to do, but unlike yours my compensation parameters were constants
> and just compiled into the new kinematic module.
>
> I stared from the simple skew compensation in 'millkins.c':

In fact, this is what I've done already. I made a new kins module (named 
tfkins), to which I can pass the nine elements of the transform matrix 
at module load time. It is in use for the mentioned machine with the 
misaligned joints. This works without question, but it's a rather ugly 
hack. Partly because it's a misuse of the kins and partly because it's a 
bit problematic: When switching from one set of parameters to another, 
this results in a step in the position command for the controller. This 
can cause bad behaviour, especially if the step is large.

On 11/17/2013 11:02 PM, andy pugh wrote:
> On 17 November 2013 20:42, Philipp Burch <[email protected]> wrote:
>
>> Please give me some advice about what I could or should do. I have no
>> problems with modifying the code if necessary, but I don't really know
>> where a good place for this would be.
>
> Without thinking too hard about the practicalities, it sounds like you
> want a version of millkins that uses an affine transform matrix as
> input rather than the simple skew number.
>

See above.

On 11/18/2013 08:09 AM, Gregg Eshelman wrote:
> On 11/17/2013 1:42 PM, Philipp Burch wrote:
>> Hello everyone,
>>
>> for some time now, I'm using LinuxCNC to control a dispenser to treat
>> PCB panels (applying glue or globtop to electronic dies). Because not
>> all of these panels are exactly aligned in the machine, a webcam sits on
>> the Z joint using which I can get the real positions of fiducial marks
>> on the panels. A python script then calculates a coordinate system
>> offset and rotation from those positions and applies it to one of the
>> G5x coordinate systems. This works OK.
>
> Could the vision system do realtime tracking and position error
> correction, continuously comparing the board to an accurate image?

This is not yet possible, the alignment must be done manually at the 
moment, using a crosshair in the camera image. Automatic alignment is 
quite hard to implement and would need a better (and probably faster) 
camera.

>
> 'Course the easiest fix would be to get the boards made to a higher
> standard and use a mechanical alignment jig so the system doesn't have
> to compensate for errors.

This would always be the easiest solution, but is not always possible ;)

On 11/18/2013 11:49 AM, Bertho Stultiens wrote:
> On 11/18/2013 08:09 AM, Gregg Eshelman wrote:
>> Could the vision system do realtime tracking and position error
>> correction, continuously comparing the board to an accurate image?
>
> That is how pick-and-place machines work. They adapt to what they "see".
>
> Integrating this into the g-code backend may prove to be difficult and
> it is probaby easier to create a feedback-loop in the generation of the
> movements/g-code.

Probably this is indeed the way to go. Creating a G-Code template for 
exactly one part in the panel and then letting the script generate the 
full program for the array.
Right now, I'm using AXIS as a GUI with a GladeVCP extension for the 
alignment. Can I feed a string directly to the interpreter without 
creating a temporary program file first?

Thanks,
Philipp



------------------------------------------------------------------------------
DreamFactory - Open Source REST & JSON Services for HTML5 & Native Apps
OAuth, Users, Roles, SQL, NoSQL, BLOB Storage and External API Access
Free app hosting. Or install the open source package on any LAMP server.
Sign up and see examples for AngularJS, jQuery, Sencha Touch and Native!
http://pubads.g.doubleclick.net/gampad/clk?id=63469471&iu=/4140/ostg.clktrk
_______________________________________________
Emc-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/emc-users

Reply via email to