Laserkaiverrin
(→Plot-skripti ja muu säätö) |
|||
| (Näytettyjen versioiden välissä on 4 versiota, jotka ovat yhden käyttäjän tekemiä.) | |||
| Rivi 29: | Rivi 29: | ||
Käytä "Yzwin" ohjelmistoa. | Käytä "Yzwin" ohjelmistoa. | ||
| − | |||
| − | |||
== CUPS-tulostus kaivertimelle== | == CUPS-tulostus kaivertimelle== | ||
| − | Kaivertimeen on kytketty kaiverrustulostuspalvelin. Kyseinen läppärinraato sijaitsee kaivertimen päällä ja on kytketty erilliseen näyttöön, näppäimistöön ja verkkoon. Läppäri käynnistetään läppärin alkuperäisestä virtakytkimestä, joka sijaitsee lähes irrallisella piirilevyllä läppärin päällä. Nappi on kauimmainen nappi yhdistävästä liittimestä katsottuna. Viereen pitäisi syttyä sininen led. | + | Kaivertimeen on kytketty kaiverrustulostuspalvelin. Kyseinen läppärinraato sijaitsee kaivertimen päällä ja on kytketty erilliseen näyttöön, näppäimistöön ja verkkoon. Läppäri käynnistyy automaattisesti kytkettäessä päävirta laserkaiverrin-jatkojohdosta. |
| + | |||
| + | Mikäli läppäri ei jostain syystä käynnisty, käynnistetään läppärin alkuperäisestä virtakytkimestä, joka sijaitsee lähes irrallisella piirilevyllä läppärin päällä. Nappi on kauimmainen nappi yhdistävästä liittimestä katsottuna. Viereen pitäisi syttyä sininen led. | ||
Koneen ollessa käynnissä laserkaivertimelle voi tulostaa Generic Postscriptiä ainakin Mircosoft Publisher (imaging) jotain ajurilla. | Koneen ollessa käynnissä laserkaivertimelle voi tulostaa Generic Postscriptiä ainakin Mircosoft Publisher (imaging) jotain ajurilla. | ||
| Rivi 53: | Rivi 53: | ||
Tulostuspalvelimella postscript-tiedosto käsitellään /usr/lib/cups/backend/plot -skriptillä, joka tällä hetkellä kääntää kuvan, kohdistaa kuvan ja muuntaa ps:n hpgl-komennoiksi. | Tulostuspalvelimella postscript-tiedosto käsitellään /usr/lib/cups/backend/plot -skriptillä, joka tällä hetkellä kääntää kuvan, kohdistaa kuvan ja muuntaa ps:n hpgl-komennoiksi. | ||
| + | |||
| + | === Ongelmanratkaisua === | ||
| + | |||
| + | '''Kaiverrin junnaa nurkassa pienellä alueella''' | ||
| + | |||
| + | Mikäli tulostus tuntuu muuten toimivan hyvin, mutta kaiverrin liikuttaa työstökappaletta ainoastaan muutaman millin liikealueella jossain nurkassa ja kuvittelee kaivertavansa ihan oikein on tulostimelle mennyt out of range eli siis työstöalueen ulkopuolisiin koordinaatteihin viittaava hpgl-tiedosto. | ||
| + | * Työasemassa määritelty paperikoko väärin. Parhaiten toimii custom kokoisella 120mm * 70mm paperilla, joka on samalla työstöalueen koko | ||
| + | * Työaseman ps-tulostinajuri ei tarjoa plot-skriptin tarjoamaa postscriptiä, kokeile vaihtoehtoista ps-ajuria | ||
| + | |||
| + | Periaatteessa kaiverruspalvelimen asetuksissakin voi olla jotain vialla, mutta tuo ei varsinaisesti sisällä mitään säädettäviä muuttujia. | ||
=== Tulostus komentoriviltä === | === Tulostus komentoriviltä === | ||
| Rivi 59: | Rivi 69: | ||
lpr -H 192.168.42.33 -P Laser tiedosto.hpgl | lpr -H 192.168.42.33 -P Laser tiedosto.hpgl | ||
| + | |||
| + | === Plot-skripti ja muu säätö === | ||
| + | |||
| + | <nowiki> | ||
| + | #!/bin/bash | ||
| + | # | ||
| + | # /usr/lib/cups/backend/plot | ||
| + | # | ||
| + | # (c) D. Czechowski 2010 | ||
| + | # | ||
| + | # Based on email dated June 2003 to printing.cups.devel | ||
| + | # (c) Kurt Pfeifle, Danka Deutschland GmbH | ||
| + | # [ this is not really a copyright ; - ) Use and modify freely as you like, | ||
| + | # but don't complain to me...] | ||
| + | # | ||
| + | # 2012 kengu | ||
| + | # mods for 5wlaser | ||
| + | |||
| + | |||
| + | JOBID=$1 | ||
| + | USER=$2 | ||
| + | TITLE=$3 | ||
| + | COPIES=$4 | ||
| + | OPTIONS=$5 | ||
| + | PID=$$ | ||
| + | FILE=$6 | ||
| + | |||
| + | # if there are no arguments: print the accepted URI | ||
| + | if [ $# -eq 0 ]; then | ||
| + | echo "direct plot "Unknown" "Send print job as HPGL to port specified in device- | ||
| + | URI"" | ||
| + | exit 0 | ||
| + | fi | ||
| + | # in case of wrong number of arguments: print usage hint | ||
| + | if [ $# -ne 5 -a $# -ne 6 ]; then | ||
| + | echo "" | ||
| + | echo "Usage: plot job-id user title copies options [file]" | ||
| + | echo " example for device-URI: 'plot:/dev/port'" | ||
| + | echo "(this converts the printfile to HPGL then sends outputs it to specified device file)" | ||
| + | echo "" | ||
| + | echo "Install a printqueue with 'lpadmin -p -v plot:/ -E" | ||
| + | echo "" | ||
| + | exit 1 | ||
| + | fi | ||
| + | |||
| + | # get location of plotter port from device URI | ||
| + | # establish temp file for converting | ||
| + | PLOTTER=${DEVICE_URI#plot:} | ||
| + | TMPFILE="/tmp/plot-"`date +%Y%m%d%H%M%S` | ||
| + | |||
| + | # but check "accepting" status first... | ||
| + | GREPSTRING="not accepting" ; | ||
| + | if lpstat -a $PLOTTER | grep "$GREPSTRING" &> /dev/null ; then | ||
| + | echo "ERROR: printer $PLOTTER not accepting jobs" | ||
| + | exit 1 | ||
| + | fi | ||
| + | |||
| + | # check temp file status second... | ||
| + | GREPSTRING="not accepting" ; | ||
| + | if lpstat -a $TMPFILE | grep "$GREPSTRING" &> /dev/null ; then | ||
| + | echo "ERROR: printer $TMPFILE not accepting jobs" | ||
| + | exit 1 | ||
| + | fi | ||
| + | |||
| + | # output the postscript data | ||
| + | cat $FILE > $TMPFILE".ps" | ||
| + | |||
| + | #sed -e 's/Orientation: Landscape/Orientation: Portrait/' $TMPFILE".ps2" | sed -e 's/ViewingOrientation: 0 1 -1 0/ViewingOrientation: 1 0 0 1/' > $TMPFILE".ps" | ||
| + | |||
| + | # convert postscript file to hpgl and distill it | ||
| + | |||
| + | /usr/bin/pstoedit -rotate 270 -xshift -250 -yshift 30 -xscale 1.42 -yscale 1.42 -f "hpgl" $TMPFILE".ps" $TMPFILE".hpgl" | ||
| + | #/usr/bin/pstoedit -f hpgl $TMPFILE".ps" $TMPFILE".hpgl" | ||
| + | /usr/local/bin/hpgl-distiller -i $TMPFILE".hpgl" -o $TMPFILE".hpgl2" | ||
| + | |||
| + | # output HPGL file | ||
| + | echo "VS1" > $PLOTTER | ||
| + | cat $TMPFILE".hpgl2" > $PLOTTER | ||
| + | |||
| + | # remove temp files | ||
| + | #rm $TMPFILE".ps" $TMPFILE".hpgl" $TMPFILE".hpgl2" | ||
| + | |||
| + | exit 0</nowiki> | ||
| + | |||
| + | '''/etc/cups/printers.conf''': | ||
| + | <nowiki> | ||
| + | # Printer configuration file for CUPS v1.4.4 | ||
| + | # Written by cupsd | ||
| + | # DO NOT EDIT THIS FILE WHEN CUPSD IS RUNNING | ||
| + | <Printer Laser> | ||
| + | Info Laser | ||
| + | MakeModel Foo 5w Laserkaiverrin, 1.0 | ||
| + | DeviceURI plot:/dev/lp0 | ||
| + | State Idle | ||
| + | StateTime 1353803245 | ||
| + | Type 8392772 | ||
| + | Filter application/vnd.cups-raw 0 - | ||
| + | Filter application/vnd.cups-command 0 commandtops | ||
| + | Filter application/vnd.cups-postscript 0 - | ||
| + | Accepting Yes | ||
| + | Shared Yes | ||
| + | JobSheets none none | ||
| + | QuotaPeriod 0 | ||
| + | PageLimit 0 | ||
| + | KLimit 0 | ||
| + | OpPolicy default | ||
| + | ErrorPolicy stop-printer | ||
| + | </Printer> | ||
| + | </nowiki> | ||
Nykyinen versio 10. toukokuuta 2013 kello 15.21
| Lasekaiverrin | |
| Aloitettu: | 2011 |
|---|---|
| Tyyppi: | Työkalu |
| Tekijät: | kengu |
| Tila | Toimii |
Sisällysluettelo |
[muokkaa] Esivalmistelut
Varmista ennen käyttöä että:
1. Pumppu käy ja vesi kiertää (päälle jakorasian katkaisimesta kaivertimen oikealla puolella)
2. Poistoilmatuuletin pyörii.
3. Ettei leikattava materiaali ole "kiellettyjen listalla", mm. vinyyli, pvc, hiilikuitu tai mikään missä on klooria.
[muokkaa] Muuta huomioitavaa
Älä katso sädettä, käytä laserissa olevaa kameraa työn seuraamista varten.
Laita laserin virta pois päältä - "Enable Laser" nappi ylhäällä aina kun pidät suojaa auki.
Kiinnittäessäsi/irrottaessasi kappaletta kaivertimen telineestä purista pidin auki. "kahvasta" ei saa vetää koska kelkan liukurullat vahingoittuvat.
[muokkaa] Bittikarttojen kaiverrus
Käytä "Yzwin" ohjelmistoa.
[muokkaa] CUPS-tulostus kaivertimelle
Kaivertimeen on kytketty kaiverrustulostuspalvelin. Kyseinen läppärinraato sijaitsee kaivertimen päällä ja on kytketty erilliseen näyttöön, näppäimistöön ja verkkoon. Läppäri käynnistyy automaattisesti kytkettäessä päävirta laserkaiverrin-jatkojohdosta.
Mikäli läppäri ei jostain syystä käynnisty, käynnistetään läppärin alkuperäisestä virtakytkimestä, joka sijaitsee lähes irrallisella piirilevyllä läppärin päällä. Nappi on kauimmainen nappi yhdistävästä liittimestä katsottuna. Viereen pitäisi syttyä sininen led.
Koneen ollessa käynnissä laserkaivertimelle voi tulostaa Generic Postscriptiä ainakin Mircosoft Publisher (imaging) jotain ajurilla.
Tulostin löytyy tällä hetkellä osoitteesta https://192.168.42.33:631/printers/Laser
Tulostettaessa kaivertimelle kannattaa ilmeisesti käyttää custom-paperikokoa ja määritellä kooksi 120x70mm
Ainakin Inkscapen kanssa on hieman ongelmia, kun inkscape havaitsee paperin olevan leveämpi kuin korkea ja määrittelee paperin Landscapeksi. Tulostaessa tuo sitten kääntyy 90 astetta. Tällä hetkellä ongelma on korjattu tulostinpalvelimelta kiertämällä kuvaa vielä 270 astetta lisää. Tuo vaatii vielä lisää perehtymistä, koska lienee jossain määrin ohjelma- tai käyttöjärjestelmäkohtaista.
Tuloste osuu parin millin tarkkuudella työstöalueelle tällä hetkellä.
Tulostettavien tiedostojen on oltava viivamuotoisia vektoritiedostoja. Tekstit eivät tulostu, ellei niitä ole ensin muunnettu poluiksi (Object to path).
Jos alat tulostamaan etänä jotain infernaalista kuten testisivua, etkä saa tulostustoimintaa loppumaan, niin loggaa roottina sisään ja tapa prosessi: cat /tmp/plot-xxxxxxxx.hpgl2
[muokkaa] CUPS-säätö
Tulostuspalvelimella postscript-tiedosto käsitellään /usr/lib/cups/backend/plot -skriptillä, joka tällä hetkellä kääntää kuvan, kohdistaa kuvan ja muuntaa ps:n hpgl-komennoiksi.
[muokkaa] Ongelmanratkaisua
Kaiverrin junnaa nurkassa pienellä alueella
Mikäli tulostus tuntuu muuten toimivan hyvin, mutta kaiverrin liikuttaa työstökappaletta ainoastaan muutaman millin liikealueella jossain nurkassa ja kuvittelee kaivertavansa ihan oikein on tulostimelle mennyt out of range eli siis työstöalueen ulkopuolisiin koordinaatteihin viittaava hpgl-tiedosto.
- Työasemassa määritelty paperikoko väärin. Parhaiten toimii custom kokoisella 120mm * 70mm paperilla, joka on samalla työstöalueen koko
- Työaseman ps-tulostinajuri ei tarjoa plot-skriptin tarjoamaa postscriptiä, kokeile vaihtoehtoista ps-ajuria
Periaatteessa kaiverruspalvelimen asetuksissakin voi olla jotain vialla, mutta tuo ei varsinaisesti sisällä mitään säädettäviä muuttujia.
[muokkaa] Tulostus komentoriviltä
Kun olet lisännyt tulostimen koneeseen (onnistuu ihan kivasti normityökaluilla), voit tulostaa mitä tahansa kaivertimelle sanomalla:
lpr -H 192.168.42.33 -P Laser tiedosto.hpgl
[muokkaa] Plot-skripti ja muu säätö
#!/bin/bash
#
# /usr/lib/cups/backend/plot
#
# (c) D. Czechowski 2010
#
# Based on email dated June 2003 to printing.cups.devel
# (c) Kurt Pfeifle, Danka Deutschland GmbH
# [ this is not really a copyright ; - ) Use and modify freely as you like,
# but don't complain to me...]
#
# 2012 kengu
# mods for 5wlaser
JOBID=$1
USER=$2
TITLE=$3
COPIES=$4
OPTIONS=$5
PID=$$
FILE=$6
# if there are no arguments: print the accepted URI
if [ $# -eq 0 ]; then
echo "direct plot "Unknown" "Send print job as HPGL to port specified in device-
URI""
exit 0
fi
# in case of wrong number of arguments: print usage hint
if [ $# -ne 5 -a $# -ne 6 ]; then
echo ""
echo "Usage: plot job-id user title copies options [file]"
echo " example for device-URI: 'plot:/dev/port'"
echo "(this converts the printfile to HPGL then sends outputs it to specified device file)"
echo ""
echo "Install a printqueue with 'lpadmin -p -v plot:/ -E"
echo ""
exit 1
fi
# get location of plotter port from device URI
# establish temp file for converting
PLOTTER=${DEVICE_URI#plot:}
TMPFILE="/tmp/plot-"`date +%Y%m%d%H%M%S`
# but check "accepting" status first...
GREPSTRING="not accepting" ;
if lpstat -a $PLOTTER | grep "$GREPSTRING" &> /dev/null ; then
echo "ERROR: printer $PLOTTER not accepting jobs"
exit 1
fi
# check temp file status second...
GREPSTRING="not accepting" ;
if lpstat -a $TMPFILE | grep "$GREPSTRING" &> /dev/null ; then
echo "ERROR: printer $TMPFILE not accepting jobs"
exit 1
fi
# output the postscript data
cat $FILE > $TMPFILE".ps"
#sed -e 's/Orientation: Landscape/Orientation: Portrait/' $TMPFILE".ps2" | sed -e 's/ViewingOrientation: 0 1 -1 0/ViewingOrientation: 1 0 0 1/' > $TMPFILE".ps"
# convert postscript file to hpgl and distill it
/usr/bin/pstoedit -rotate 270 -xshift -250 -yshift 30 -xscale 1.42 -yscale 1.42 -f "hpgl" $TMPFILE".ps" $TMPFILE".hpgl"
#/usr/bin/pstoedit -f hpgl $TMPFILE".ps" $TMPFILE".hpgl"
/usr/local/bin/hpgl-distiller -i $TMPFILE".hpgl" -o $TMPFILE".hpgl2"
# output HPGL file
echo "VS1" > $PLOTTER
cat $TMPFILE".hpgl2" > $PLOTTER
# remove temp files
#rm $TMPFILE".ps" $TMPFILE".hpgl" $TMPFILE".hpgl2"
exit 0
/etc/cups/printers.conf:
# Printer configuration file for CUPS v1.4.4 # Written by cupsd # DO NOT EDIT THIS FILE WHEN CUPSD IS RUNNING <Printer Laser> Info Laser MakeModel Foo 5w Laserkaiverrin, 1.0 DeviceURI plot:/dev/lp0 State Idle StateTime 1353803245 Type 8392772 Filter application/vnd.cups-raw 0 - Filter application/vnd.cups-command 0 commandtops Filter application/vnd.cups-postscript 0 - Accepting Yes Shared Yes JobSheets none none QuotaPeriod 0 PageLimit 0 KLimit 0 OpPolicy default ErrorPolicy stop-printer </Printer>