- Estréllate y Arde - https://www.estrellateyarde.org -

Escáners en Linux

El procedimiento a seguir para escanear en Linux es el siguiente:

  1. Soporte en el kernel
  2. Cargar los módulos
  3. Comprobar el dispositivo /dev/scanner
  4. Configurar el driver Sane
  5. Escanear

Equivalencias en Windows: Software OEM.

Recursos

Soporte en el kernel

El kernel tiene que soportar el dispositivo que utilice nuestro escáner:

  1. Escáners puerto paralelo (HP ScanJet 3200C): puerto paralelo.
  2. Escáners USB (Epson Perfection 1650): soporte USB genérico y para nuestro puerto USB (en este caso, el módulo USB es usb-uhci).
  3. Escáners SCSI (Mustek ScanMagic 4830S): soporte SCSI genérico y para nuestra tarjeta SCSI (en este caso, el módulo para la tarjeta SCSI DTC-NCR5380 es g_NCR5380).

Cargar los módulos

Cargaremos los módulos con modconf para que se actualice el archivo /etc/modules y se carguen al iniciar.

  1. Escáners puerto paralelo (HP ScanJet 3200C): módulos parport.o, parport_pc.o, ppdev.o.
  2. Escáners USB (Epson Perfection 1650): módulos usbcore.o, scanner.o, usb-uhci.o.
  3. Escáners SCSI (Mustek ScanMagic 4830S): módulos scsi_mod, sg, g_NCR5380 (con los parámetros: ncr_addr=0x280 dtc_3181e=1).

Comprobar el dispositivo /dev/scanner

Comprobaremos que existe el dispositivo /dev/scanner y que apunta al dispositivo adecuado (si no existe, crearlo):

  1. Escáners puerto paralelo (HP ScanJet 3200C): debe apuntar a /dev/parport0:
    # ln -s /dev/parport0 /dev/scanner
  2. Escáners USB (Epson Perfection 1650): debe apuntar a /dev/usb/scanner0:
    # ln -s /dev/usb/scanner0 /dev/scanner
  3. Escáners SCSI (Mustek ScanMagic 4830S): debe apuntar a /dev/sg0:
    # ln -s /dev/sg0 /dev/scanner

Configurar el driver Sane

En Windows los escáners utilizan los drivers TWAIN, mientras que en Linux es Sane (Scanner Access Now Easy, sane-project.org, paquete sane) quien se encarga de proporcionarnos el driver del escáner junto con el manual correspondiente.

  1. Buscaremos el driver Sane:
    1. Escáners puerto paralelo (HP ScanJet 3200C):
      Model     Interface Status   Comment Backend   Manual page
      ScanJet   Parport   good     works   umax_pp   sane-umax_pp
      3200C     (EPP)              1220P   (v1)
    2. Escáners USB (Epson Perfection 1650):
      Model     Interface Status   Comment Backend   Manual page
      Perfecton USB       complete         epson     sane-epson
      1650                                 (v0.2.42)
    3. Escáners SCSI (Mustek ScanMagic 4830S):
      Model     Interface Status   Comment Backend   Manual page
      ScanMagic SCSI      untested VM3575  teco2     sane-teco2
      4830S                                (v2.09)
  2. Debemos añadir el nombre del driver Sane (Backend) de nuestro escáner al fichero /etc/sane.d/dll.conf. Por ejemplo, para un HP ScanJet 3200C en puerto paralelo cuyo driver Sane es umax_pp haremos:
    # echo umax_pp >> /etc/sane.d/dll.conf
  3. Comprobaremos que en el fichero de configuración del driver Sane se especifica el puerto al que debe apuntar /dev/scanner:
    1. Escáners puerto paralelo (HP ScanJet 3200C): en el fichero de configuración del driver /etc/sane.d/umax_pp.conf debemos incluir o descomentar la línea:
      /dev/parport0
    2. Escáners USB (Epson Perfection 1650): en el fichero de configuración del driver /etc/sane.d/epson.conf debemos incluir o descomentar la línea:
      usb /dev/usb/scanner0
    3. Escáners SCSI (Mustek ScanMagic 4830S): en el fichero de configuración del driver /etc/sane.d/teco2.conf debemos incluir o descomentar la línea:
      scsi FS /dev/scanner
  4. Le decimos a Sane que busque el escáner:
    # sane-find-scanner

    Si detecta el escáner veremos algo como:

    1. Escáners puerto paralelo (HP ScanJet 3200C):
      found scanner "HP 3200 C" at /dev/scanner
      found scanner "HP 3200 C" at /dev/parport0
    2. Escáners USB (Epson Perfection 1650):
      found USB scanner (product=0x0110) at /dev/scanner
      found USB scanner (product=0x0110) at /dev/usb/scanner0
    3. Escáners SCSI (Mustek ScanMagic 4830S):
      found SCSI scanner "Flatbed Scanner 1.03" at /dev/scanner
      found SCSI scanner "Flatbed Scanner 1.03" at /dev/sg0

    Y a continuación el mensaje:

    # Your scanner was detected. It may or not be supported by SANE
    # Try scanimage -L and read the backend's manpage.
  5. Para comprobar que Sane soporta el escáner, haremos:
    # scanadf -L

    Si lo soporta veremos algo similar a:

    device epson:/dev/usb/scanner0 is a Epson GT-8200 flatbed scanner
  6. En el fichero /etc/sane.d/saned.conf incluiremos las IPs de las máquinas a las que queramos dar acceso al escáner. En nuestro caso sólo daremos acceso al ordenador donde está conectado el escáner.
    # echo 192.168.0.3 >> /etc/sane.d/saned.conf

Escanear

En Linux el backend para escanear es Sane y los backend para OCR (Optical Character Recognition) son gOCR y GNU-Ocrad. Disponemos de varios frontales gráficos para estos programas:

  • Kooka (paquete kooka): frontal gráfico de KDE para Sane, gOCR y GNU-Ocrad.

    Kooka

  • Xsane (paquete xsane) + gOCR-Tk (paquete gocr-tk): Xsane es un frontal de Sane y gOCR-tk un frontal de gOCR. The GIMP permite adquirir imágenes mediante Xsane.

    Xsane


Article printed from Estréllate y Arde: https://www.estrellateyarde.org

URL to article: https://www.estrellateyarde.org/equiv/escaner-en-linux

Copyright © 2010 Estrellate y Arde