Forum

Welcome Guest 

Show/Hide Header

Welcome Guest, posting in this forum requires registration.





Pages: [1]
Author Topic: VHS Tapes As Spools and Auto Calibration with Eureqa
RussellSpr-
outs2
Newbie
Posts: 3
Permalink
Post VHS Tapes As Spools and Auto Calibration with Eureqa
on: June 28, 2012, 21:38
Quote

I was reading a lot about the difference between beaded cord and sprockets, which have a constant radius, and spooled thread, which is cheaper, when I had the idea to use a tape which winds up to a predictable radius each time. So, I mounted a couple of VHS tapes to the board, and used the gears from a VHS rewinder to let the motor shafts turn the VHS. So far it has worked pretty well, but I am writing my own firmware right now because each side has a different amount of tape on the spool. Also, the drawing area I can use is really small.

The only hiccup right now is that I think one of the locks which protects the VHS from unwinding outside of the VCR is partly engaged. I need to re-glue the lock open because it catches slightly each time the right motor lets out tape.

Rather than figure out the math for kinematics and such, I am planning on using Eureqa Formulize (http://creativemachines.cornell.edu/eureqa/) to generate the formulas for me. I will have the robot draw a pre-defined pattern in native polar coordinates, then find the cartesian coordinates that result.

Soon I will post pictures of my robot and the process and let you all know how my experiments are working.

sandy
Administrator
Posts: 1317
Permalink
sandy
Post Re: VHS Tapes As Spools and Auto Calibration with Eureqa
on: June 28, 2012, 22:09
Quote

Look forward to seeing it Russell - sounds interesting. I decided against using thread and spools when I was using very small spools (little sewing machine bobbins), but using even slightly larger ones seems to make the precision problems fade pretty quick. Tape seems like a good idea because like you say, the diameter change is pretty negligable. I was thinking of steel tape measures because of the spring-loadedness of them.

The maths is actually dead easy. The routines I use boil down to this to convert a cartesian to a native coordinate:

float getMachineA(float cX, float cY)
{
float a = sqrt(sq(cX)+sq(cY));
return a;
}
float getMachineB(float cX, float cY)
{
float b = sqrt(sq((pageWidth)-cX)+sq(cY));
return b;
}

and this to convert from native back to cartesian:

int getCartesianX(float aPos, float bPos)
{
int calcX = int((pow(pageWidth, 2) - pow(bPos, 2) + pow(aPos, 2)) / (pageWidth*2));
return calcX;
}
int getCartesianY(int cX, float aPos) {
int calcX = cX;
int calcY = int(sqrt(pow(aPos,2)-pow(calcX,2)));
return calcY;
}

cheers!
sandy noble

sandy
Administrator
Posts: 1317
Permalink
sandy
Post Re: VHS Tapes As Spools and Auto Calibration with Eureqa
on: June 29, 2012, 09:37
Quote

Russell I just realised I think I missed the point of your post - you're going to calibrate using the machine. I'm dead curious about this - So you'll draw a fiducial of some sort, a specific pattern, then analyse the shape and size and position of the pattern?

sn

Pages: [1]
Mingle Forum by cartpauj
Version: 1.0.34 ; Page loaded in: 0.026 seconds.