Forskjell mellom versjoner av «CNC Modela fres»

Fra Bitraf
Hopp til navigering Hopp til søk
Linje 1: Linje 1:
[[http://mlab.taik.fi/paja/wp-content/uploads/2011/01/MDX-20_partnames.jpg|frame|none|alt=Alt text|Caption text]]
+
[[http://mlab.taik.fi/paja/wp-content/uploads/2011/01/MDX-20_partnames.jpg]]
  
 
== PCB borring ==
 
== PCB borring ==

Revisjonen fra 3. mar. 2013 kl. 10:33

[[1]]

PCB borring

  1. Generer fil
  2. Kalibrer (juster høyde på borr)
  3. Send fil til CNC
  4. Smil og tenk på Trygve

generere borr fil

Kjør Bitraf_drill i EAGLE (Takk til Trygve)

Den eksporterer en fil med koordinater til din prosjek mappe "ditprosjekt".drill.txt


kalibrering

Føre du starter, fest kortet i holderen og juster høyden. Hurtig senking stykk og hold inne "tool Down" noen millimeter over slep knappen og trykk den ned sakte. 1 trykk er 0,02mm så det går ikke raskt Hvis du borrer lit i hjørnet på kortet hev borret litt den borrer 100 mil ned fra den positionen. hvis det ikke virker kan du editere *.drill.txt !PZ-100,50; -100 er hvor dypt den borrer fra der stedet du kalibrerer den på

prøv først på ett papir med

Send fil

Den sendes i comandprompten til com1

eksempel naviger til 'dit prosjekt' skriv

type test.drill.txt > com1

då borrer den


ULP

Borr genererings filen under konstruktion



#usage "en: <b>Export Roland Modela Drill file</b>\n"
           "<p>"
           "Genererer en borr fil til roland modela CNC maskin"
           " version 0.2."
           "<p>"
           "<author>Author: Trygvis og Karl </author><br>"

// THIS PROGRAM IS PROVIDED AS IS AND WITHOUT WARRANTY OF ANY KIND, EXPRESSED OR IMPLIED



real pen_down_speed = 1;
real pen_up_speed = 10;
real kor_x = 1.013;//korektionsfaktor
real kor_y = 1.013;//korektionsfaktor
void drill(int x, int y) {
//  printf("M % 5.0f,% 5.0f; \r\n", u2mil(x)*(kor_x), u2mil(y)*(kor_y));
  printf("PU % 5.0f ,% 5.0f ; \r\n", u2mil(x)*(kor_x), u2mil(y)*(kor_y));
  printf("VS%.0f;\r\n", pen_down_speed);
  printf("PD % 5.0f,% 5.0f; \r\n", u2mil(x)*(kor_x), u2mil(y)*(kor_y));
  printf("VS%.0f;\r\n", pen_up_speed);
  printf("PU % 5.0f,% 5.0f; \r\n", u2mil(x)*(kor_x), u2mil(y)*(kor_y));
}

board(B) {
  string fn = filesetext(B.name, ".drillv2.txt");

  output(fn) {
//    printf("IN;\r\n");
//    printf("DF;\r\n");
    printf("PA;\r\n");
//    printf("!DW 100;\r\n"); // dwell, pause mellom hver bevegelse i x- eller y-planet
    printf("VS10;\r\n");

    // Horisontal hastighet
    printf("!VZ2;\r\n");

    printf("!PZ-100,50;\r\n");

//    printf("!MC1;\r\n");
    printf("PU;\r\n");
/*
*/
    B.holes(h) {
      drill(h.x, h.y);
    }

    printf("\r\n");
    printf("\r\n");

    B.elements(E) {
//      printf("Element: %s, (%d %d), Package=%s\n", E.name, E.x, E.y, E.package.name);
      E.package.holes(H) {
//        printf("package.hole: ");
        drill(H.x, H.y);
      }
      E.package.contacts(H) {
//       printf("package.contacts: ");
//        drill(H.x, H.y);
      }
    }

    printf("H\r\n");
/*
    for (int i = 0; i < 10; i++) {
      printf("!MC0;");
      printf("\r\n");
    }
    printf("\r\n");
*/
  }
}

/*
    B.signals(S) {
printf("signal\r\n");
      S.vias(v) {
printf("via\r\n");
        drill(v.x, v.y);
      }
    }
    B.elements(E) {
      printf("Element: %s, (%d %d), Package=%s\n", E.name, E.x, E.y, E.package.name);
    }
*/