Hello, I am Tom Powderly from Elgin IL
I knew of PumpStationOne, but it wasn't close ( or free ;)
anyway, lets simplify a complex problem a bit

1) try to find an original yourkins.c or reconstruct it ( gotta be done 
anyway)

rest of comments are interspersed inline



On 06/22/2013 07:19 PM, Bart Dring wrote:> Hi,
 >
 > I am working with a group of CNC builders at the Chicago HackerSpace
 > Pumping Station One. We are building a "simple" 2D drawing machine. The
 > machine uses 2 belt driven carriages on a single linear bearing.  You can
 > see the details of the machine at this link.

interesting machine, Hr. (Dr?) Till Franitza built similar at a school 
( i remember the scissors action and it being a plotter )
i can only find a newer version (X with a polar swing arm Y ) as a video

 >
 > http://pumpingstationone.org/2013/06/cnc-gonzo-build-2-recap/
 >
 > We are having trouble getting it to work in EMC. When we turn on the
 > machine in EMC, both carriages immediately race at full speed towards the
 > home switches. They trigger the switches, but keep trying to go. We 
looked
 > at the switches in HalScope and they appear to be functioning 
properly. If
 > we use F2 to quickly turn the machine on then off before the carriages
 > crash, we can turn it back on and the carriages do not move spontaneously
 > anymore.

heehee  'anymore' an american euphemism that is hard to understand
and impossible to translate

but i get it that it used to but not now..
ok
   need a youkins.c still
   then it can be debugged

 >
 > Using the MDI tab with G code commands we are able to get X motion at the
 > pen. That is pretty simple because for X, both carriages always run 
at the

i see how the 2 joint Y travels along X, and worried at the limitations 
it has near X limits,(just to say i get the mechanical side of it )

 > same speed and direction as the pen. We can command the pen to move in Y,
 > but only at very low speeds.

ok, this infers the X is ok at high>er< speeds. true?
and does the motion seem correct?
  (speed correct, expected size of motion correct?)

 > If we try to go fast EMC gives us all sorts of
 > joint speed and position errors.

ok, unexpected to you, i agree, but they indicate the problem
you HAVE TO record the errors, its trying to help you solve the problem.

 >
 > There is a link to our kinemantics file at the link above.  (We just
 > modified trivkins.c). At this point I think it has been hacked beyond our
 > initial successes, to completely broken.
 >

yep, you need a new .c file, (AKAC  always keep a copy)

 > 1. For this type of machine, what do we return for kinematicsType()?
 >

copied from  include/kinematics.h
     KINEMATICS_FORWARD_ONLY,   /* forward but no inverse */
     KINEMATICS_INVERSE_ONLY,   /* inverse but no forward */
     KINEMATICS_BOTH            /* forward and inverse both */
if this is the Q, well you wrote , and have the answer
( country, western, or allkinds ;)

do you mean for the INI file entry?
  if so its the name of your .c file without extant
  eg: jumpylinekins  ( compiled from jumpylinekins.c  )

  the name is set up in yourkins.c like this stanza in gantrykins.c
  ...
int rtapi_app_main(void) {
     int result, i;
     comp_id = hal_init("gantrykins");
...


 > 2. What do I want to do in kinematicsHome(). When is this function called
 > and how often?

i'd say youd want to call it after you were AT home,
  and in it, solve the known 'axis' positions into 'joint' positions
  ( this means something like, i know i'm at the home switches for each
joint, and i know this should be a specific XY position,
but i have to solve for where the Ya and Yb are now. (Inv Kins tells us)

reading other src files is often helpful in Linuxcnc
heres what is said in genhexkins.c
"""
/*
   kinematicsHome() is implemented by taking the desired world coordinates,
   which are passed as an arg, and running the inverse kinematics to get
   the resulting joints. The flags are set to zero.
*/
"""

how often?
  well at least do it before you want your work to be measured from a 
known position.

once after the machine does not know where the reference ( home 
position) is located ( after loss of power, on start up, after steps are 
lost )

short answer:
  use the name of the id you setup in your blahkins.c , tell THAT to the 
.ini file

  home once after power up


 >
 > 3. Why does the machine starting running immediately.?
 >

i'd have to see the code and thinkabit
  the machine shouldnt immediately move, period
   it has to be told to move ( well a servo can run away, but i saw 
steppers )
   your physical ( copper ) and logical ( hal net ) wiring should not 
allow this to happen


 > 4. Can everything be done in the mykin.c file or do I need to modify 
other
 > areas of the HAL.

everything  is hard to imagine, you'd best begin simpler
and work thru intial problems
rather than do anything that uses 'everything' in the description

quick simplistic answer: yes, the kins is sortakinda isolated
 >

I will try to vist
hours?
where can i park a car?

regards
TomP tjtr33

------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:

Build for Windows Store.

http://p.sf.net/sfu/windows-dev2dev
_______________________________________________
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users

Reply via email to