LA CAMPANA

C'è chi ha letto questa notizia prima di te.
Iscriviti per ricevere gli ultimi articoli.
E-mail
Nome
Cognome
Come vorresti leggere La campana
Niente spam

E anche altri rifiuti agricoli.

Si scopre che, come opzione, puoi ottenere elettricità gratuita dal motore di uno scanner non necessario. Parleremo di come realizzare un generatore eolico da un motore passo-passo in questo articolo.

Qui, la cosa più interessante è il modo in cui sono fatte le lame. Di seguito è riportata una guida che ti aiuterà a "riciclare" un vecchio scanner in un impressionante generatore di elettricità. Avremo bisogno:

  • Vecchio scanner;
  • Diodi raddrizzatori (nel progetto sono stati utilizzati 8 diodi 1N4007);
  • Condensatore 1000uF;
  • stabilizzatore LM7805;
  • Tubi di pvc;
  • Parti in plastica (vedi sotto);
  • Piastre in alluminio (puoi usarne altre).

Oltre al tubo fluorescente e componenti elettronici, lo scanner ha motore passo-passo, è esattamente ciò di cui abbiamo bisogno. La foto mostra un motore passo-passo a quattro fasi.

Ora che abbiamo tutti i componenti necessari, possiamo iniziare a montare il raddrizzatore.

Per ogni fase abbiamo bisogno di 2 diodi, cioè solo 8 diodi. La tensione di uscita sarà stabilizzata utilizzando l'IC LM7805 e un condensatore da 1000 uF.

Questo generatore può generare liberamente tensioni superiori a 5 volt, tuttavia, nell'ambito di questo progetto, per la ricarica dispositivi mobili, 5 volt erano sufficienti.

Per la ricarica di porta USB sono necessari due resistori da 15 kΩ su entrambi i bus dati. Vedere le specifiche del bus USB per i dettagli tecnici.


Collezionare lame.

È tutto!

Ora resta da aspettare una giornata ventosa e provare il dispositivo, come puoi vedere nella foto: il dispositivo genera una tensione stabile di 4,95 V.

Pertanto, ora puoi caricare gratuitamente il tuo lettore MP3 o telefono.


Un articolo su come realizzare una fotocamera fatta in casa da un vecchio scanner piano.

C'è un articolo su Wired.com che descrive come realizzare una fotocamera digitale da un normale scanner Canon a casa. Il ragazzo dice (e mostra il processo in foto) che dopo aver realizzato una macchina del genere alla fine non ha ottenuto proprio quello che si aspettava: un brutto bagliore di luce macchiato su uno sfondo nero, invece di una fotografia (nella foto sotto).

Brevi principi di fabbricazione e funzionamento di tale fotocamera.

Principio di funzionamento.

La fotocamera funziona come qualsiasi altra fotocamera. L'obiettivo proietta un'immagine su un elemento fotosensibile. Puoi trovare tantissime informazioni su questo argomento. A questa opzione una differenza: il ruolo di un elemento fotosensibile è svolto da uno scanner piano convenzionale. La fotocamera più semplice e super economica, come si è scoperto, è assemblata da un pannello di gommapiuma nera, un tubo di cartone, una lente di plastica e in realtà qualsiasi scanner.


Ma questa opzione non è l'ideale: presenta molti svantaggi espressi in un piccolo angolo di visione, messa a fuoco fissa, scarsa profondità di campo e tutti gli svantaggi associati a uno scanner non modificato (per buoni risultati, lo scanner deve essere modificato).

Scatto da una fotocamera così economica.

Come migliorare la qualità.

In alternativa, puoi acquistare e modificare un'antica fotocamera degli anni '30, trasformandola in un ibrido selvaggio di tecnologia antica e moderna.


Una tale fotocamera, come si suol dire, differisce nettamente nella sua qualità in meglio dalle opzioni più primitive.


"Fotocamera digitale" che non puoi mai acquistare in "Eldorado" :)


Un'immagine di un tale ibrido è molto meglio che da una versione primitiva.


Puoi ottenere queste fotocamere molto più facilmente della spazzatura degli anni '30. Le fotocamere non hanno quasi bisogno di essere modificate, sono le più in modo semplice trasformarsi in una fotocamera digitale :)


Girato da un tipo di fotocamera del genere "brownie".

Costruzione moderna di scanner-fotocamera.

Un video che mostra la creazione di una macchina fotografica fatta in casa.

Informazioni su come lo scanner vede il tempo.

Lo scanner piano non cattura immediatamente l'intera immagine della scena. Lo scanner riceve l'immagine leggendola riga per riga. Per scansionare una foto, di solito impieghi dai 15 secondi ai 5 minuti, questo tempo dipende dalla risoluzione selezionata. Ogni riga dell'immagine viene ottenuta dallo scanner in pochi millisecondi.

Ecco un esempio che lo rende ancora più facile da capire. Ad esempio, dobbiamo scansionare un'immagine che è un'immagine quadrata di 15.000 pixel di larghezza (rispettivamente, l'immagine contiene solo 225.000.000 di pixel). La scansione richiede 90 secondi. Ogni riga dell'immagine viene letta una dopo l'altra, di circa 6 millisecondi ciascuna. Ciò accade 15.000 volte mentre la testina dello scanner si sposta dall'inizio alla fine dell'immagine. Ma mentre lo scanner sta leggendo l'immagine, può muoversi. Pertanto, l'oggetto può muoversi e lo scanner, lasciando l'immagine dell'oggetto precedentemente catturata, continuerà a catturare la sua nuova posizione (inoltre, ogni 6 millisecondi).

L'immagine mostra come lo scanner vede la scena in ogni intervallo di tempo di scansione.


Ed ecco l'immagine che si ottiene al termine della scansione.

Un tale effetto è semplicemente impossibile da creare utilizzando strumenti tradizionali. In linea di principio, questo può essere fatto utilizzando una videocamera convenzionale (l'immagine sarà composta da circa 750 linee e sarà a bassa risoluzione), ma l'immagine non sarà nemmeno vicina ad essere "scansionata".

Che ne dici del colore?

La domanda principale che viene posta sull'argomento "fotocamera da uno scanner" è "dove sono finiti i colori e perché tutte le foto sono solo in bianco e nero?". La risposta a questa domanda è legata alla procedura stessa per acquisire un'immagine a colori da uno scanner. Per acquisire un'immagine a colori, lo scanner divide l'immagine in tre canali: rosso, verde e blu, questi canali si ottengono illuminando l'immagine con una lampada, lo scanner acquisisce ciascuna riga di ciascun canale separatamente utilizzando un sensore fotosensibile che percepisce solo sfumature di grigio e quindi combina questi tre canali in un'unica immagine a colori. La fotocamera assemblata dallo scanner non utilizza questa lampada, utilizza la luce proiettata dall'obiettivo, rispettivamente tutti e tre i canali sono identici e l'immagine finale è in bianco e nero (scala di grigi). C'è una vera eccezione quando la fotocamera esegue la scansione di una scena in cui i colori cambiano più velocemente di quanto si verifica la scansione, questo vale aggiornamento veloce schermo televisivo o sullo schermo del monitor, risulta una specie di macchia di colore su un'immagine in bianco e nero.


La raffica di colori in questa immagine è creata dall'elevata frequenza di aggiornamento dello schermo del monitor di un computer. Il display cambia i colori più velocemente di quanto lo scanner possa leggere la linea dell'immagine, quindi il monitor è increspato di colori.

Galleria fotografica.

Le immagini mostrate qui sono state scattate principalmente con una tale fotocamera scanner:

Questa fotocamera è basata sullo scanner Canon Lide 20 che utilizza un sensore CIS. La risoluzione massima di questa fotocamera è di 115.200.000 pixel per scatto, che equivale a 115,2 megapixel. :)


Qui Reanna Walker si è rivelata insolita, presta attenzione ai suoi occhi: ha sbattuto le palpebre durante il processo di scansione (ugh, fotografando :)).


Concerto dal punto di vista di una fotocamera scanner.

Christian Nold sbadiglia la maggior parte della foto :)

Auto che passano sulla strada dietro la fermata dell'autobus.


Notting Hill.

Scatto dal tetto del Royal College of Art, che mostra il movimento del traffico sottostante.

Una parte ingrandita dell'immagine che mostra come vengono distorte le auto in movimento.


Un'altra immagine dallo stesso tetto, le auto che viaggiano a una velocità maggiore sono più distorte nell'immagine.


L'autobus è il migliore nella foto :)


La telecamera ha conferito all'autobus a due piani una forma quasi architettonica.

Tre scatti dallo studio d'arte del college.


La ragazza nella foto si è rivelata con due facce. La foto è stata pre-diretta.

Lo scanner non funziona con l'ultima versione sistema operativo? Non correre al negozio per uno nuovo: CHIP offrirà un universale soluzione gratuita per qualsiasi dispositivo. CHIP ti mostrerà come utilizzare VueScan per utilizzare uno scanner obsoleto per lavorare con il nuovo sistema operativo I problemi con l'utilizzo di scanner obsoleti sono spesso associati alla mancanza delle ultime versioni dei driver appropriati sia in Windows che dai produttori. Tuttavia, nella maggior parte dei casi, la risoluzione e la qualità di tali dispositivi sono ancora abbastanza accettabili. Naturalmente, puoi creare un secondo sistema operativo virtuale ed eseguire scansioni da lì, ma VueScan offre una soluzione più pratica. La versione base gratuita di questo software con funzionalità limitate ti consente di rimettere in servizio il tuo vecchio scanner per utilizzarlo quando necessario. Allo stesso tempo, anche le versioni standard e professionale di questa utility, che costano rispettivamente circa 1200 e 2500 rubli, con funzionalità professionali aggiuntive, come la calibrazione, ti costeranno meno di un nuovo scanner di un noto marchio.

In ogni caso vale la pena provare. Innanzitutto, assicurati che l'app VueScan supporti il ​​tuo modello di scanner. L'elenco dei dispositivi è disponibile sul sito Web del programma (link breve: b23.ru/hc4t). Pagina per modello specifico contiene informazioni sulle funzioni e caratteristiche supportate. Ha anche un link per il download. ultima versione programmi. Poiché spesso ci sono correzioni minori, ti consigliamo di scaricare VueScan direttamente da hamrick.com/#download. La differenza nelle versioni sarà evidente in seguito, a seconda che tu l'abbia chiave di licenza. È possibile acquistare il programma in qualsiasi momento, comunque tutto descritto di seguito
le azioni sono disponibili anche nella versione base.

VueScan riconoscerà automaticamente uno scanner in esecuzione e utilizzerà il driver fornito. Se il dispositivo non è ancora funzionante, premere la combinazione di tasti "Win + Pause" e avviare Gestione dispositivi. In esso, trova il tuo scanner nella categoria Dispositivi di imaging. Cliccaci sopra fare clic con il tasto destro mouse ed eseguire il comando "Aggiorna driver". Ora devi selezionare l'opzione "Cerca driver su questo computer". Impostare la posizione su "C: VueScan" e fare clic su "Avanti". Puoi anche sostituire il driver in questo modo: prima disinstalla quello vecchio, riavvia Windows e collega il driver VueScan.

Nelle fasi 2 e 3 in guida passo passo Di seguito vedrai quanto è facile e veloce scansionare in VueScan con una procedura personalizzata. I file creati di qualità decente non conterranno filigrane. Inoltre, il programma consentirà di selezionare la risoluzione dell'immagine scansionata, il tipo (estensione) del file salvato e anche di impostare in anticipo il bilanciamento del bianco. Puoi anche modificare manualmente i colori valutandoli in dettaglio sull'istogramma delle curve per migliorare immediatamente la riproduzione dei colori. Inoltre, in seguito puoi regolare la luminosità, il contrasto e i colori editore grafico.

Come farlo?

1 NUOVO CONDUCENTE VueScan funziona con migliaia di modelli di scanner anche obsoleti, utilizzando i propri driver se necessario, e consente di ottenere risultati in pochi clic grazie alle opzioni standard. L'interfaccia del programma è completamente localizzata.

2 AVVIO RAPIDO Selezionare "Scansione su file" nella voce "Attività", impostare il "Media" - ad esempio "Immagine" - e la qualità della scansione (i tipi "Per la modifica" e "Per l'archivio" hanno la migliore qualità). L'opzione "Per la stampa" produrrà file JPEG, mentre la qualità "Per la modifica" produrrà immagini TIFF.

3 TELAIO FLESSIBILE In modalità di visualizzazione, puoi impostare la scheda "Ritaglia" per la cornice modalità automatica utilizzando più formati predefiniti o manuale - "Installazione utente".

4 PERSONALIZZAZIONE AVANZATA Fare clic sul pulsante "Altro" nel menu in basso. Si aprirà prima di te caratteristiche aggiuntive impostazioni di scansione.

5 SCHEDA USCITA» Qui si seleziona la posizione di salvataggio, il tipo di file (come TIFF, PDF, testo OCR o RAW) e ulteriori opzioni di salvataggio. Il file OCR funziona anche nella versione base del programma.

6 REGOLAZIONE COLORE Nella scheda Colore, puoi modificare l'opzione Bilanciamento colore da Bilanciamento bianco a Incandescente o Fluorescente. Durante l'ottimizzazione, saranno utili le impostazioni di punto nero, punto bianco, curva e luminosità, che vedrai facendo clic sul pulsante "Altro".

7 LAVORARE CON LE CURVE Dal menu Immagine, selezionare Grafico immagine per visualizzare l'analisi dell'immagine e l'impatto delle modifiche apportate. Questo è molto utile per la messa a punto.

8 CONNESSIONE SENZA FILI Proprietari di scanner di rete che utilizzano App VueScan Il cellulare può scansionare le immagini direttamente sul proprio iPad o iPhone. Versione commerciale Il programma desktop offre ancora più opzioni per impostazioni e formati, oltre alla possibilità di inviare i risultati direttamente tramite e-mail.

Per iniziare, una piccola introduzione.

Una volta era il momento di pulire al lavoro, di ripulire le macerie di vecchie scatole da sotto monitor, stampanti, custodie, ecc. E risolvendo questi blocchi, due vecchi scanner UMAX 1200S e, secondo me, 600S, hanno attirato la mia attenzione.
Ed è giunto il momento di deriderli, come una volta deridevano me.

Dopo aver smontato velocemente il primo 1200, ho tirato fuori da lì tutto ciò che più o meno utile, ovvero: un perno rovente lungo il quale viaggiava il complesso di scanner con una lampada, un microcircuito e lo stesso sensore di scansione con un sistema di specchi. Dopo aver tolto tutte le frattaglie, ho deciso di capire cosa c'era di prezioso lì. Non conosco le tecnologie di quegli anni, ma il sensore di scansione si è rivelato dorato sia all'esterno che all'interno. L'oro non mi ha sedotto, l'analisi dello scanner è continuata.
Oltre ai sistemi di specchi nella parte mobile principale dello scanner e dell'obiettivo, c'era una lampada molto simile a una lampada fluorescente, ma spessa solo un paio di millimetri.

Alla lampada era collegato un circuito di alimentazione, da cui partivano due fili sul connettore, il che mi ha fortemente tentato di collegarlo a una sorta di fonte corrente continua. Fortunatamente, nella scatola precedente c'erano diversi alimentatori da interruttori, monitor e FIG sa cos'altro.

Dopo aver sistemato tutta la spazzatura e buttato via l'eccesso, ho proceduto alle prove.

Per cominciare, è stato selezionato un alimentatore da 5 volt e 2 ampere. Quando ho collegato la lampada, ho visto che ha preso fuoco, ma non completamente. Alcuni cm all'estremità più lontana della lampada erano scuri. È il momento di un alimentatore da 9 volt con 2,2 ampere. (quello sopra)
Allo stesso tempo, la lampada si è illuminata in modo abbastanza luminoso e completo.

Sapendo che lo scanner funzionava con un alimentatore 12v 2a e conoscendo la natura calda della lampada, nonché il fatto che non è destinato al funzionamento permanente, non ho selezionato un bp. più potenza, soprattutto perché mi bastava la luminosità.

E così, tornato a casa, ho trovato un uso per queste lampade: per illuminare lo spazio sotto il tavolo.

Per molto tempo sono stato infastidito dal fatto che sotto il tavolo, strisciando verso il computer, dovevo prendere una torcia e allo stesso tempo c'erano diversi problemi sia con le batterie, sia con il fatto che una mano è occupato e ho bisogno di essere distratto, guardando dove brilla la torcia. Si decise di appendere la lampada sotto il tavolo, segnare il luogo e disporre gli attrezzi.

Si è rivelato molto conveniente che il normale riflettore della lampada dello scanner fosse rimovibile e con il proprio supporto.

È giunto il momento di creare una scatola per il circuito di alimentazione della lampada, in modo da non rimanere nuda e brutta. Per fare questo, abbiamo preso il poster di plastica bianca di 6 mm di spessore e lo spazio vuoto inferiore da una bobina con spazi vuoti.

Dagli strumenti che ci sono voluti: Dremel con un disco da taglio, una lima tonda, due piccoli trapani (nel mio caso un esagono), un tagliacarte con lame intercambiabili, un saldatore e cacciaviti.

Tra quelli disponibili c'era: un connettore per l'alimentazione desiderata, nastro biadesivo, due viti piccole e una vite lunga con un dado.
Tagliare con cura due pezzi di plastica approssimativamente identici con un coltello e incollarli con un piccolo pezzo di nastro biadesivo per allinearli con il Dremel.

Non dimenticare di indossare occhiali e preferibilmente un respiratore, mettiamoci al lavoro.

Divagherò un po', gli occhiali sono chiari per cosa, ma spiegherò un po' lo scopo del respiratore. Il fatto è che Dremel funziona con una rotazione fino a 33 mila giri al minuto e la polvere derivante dal lavoro è abbastanza fine. E per non inalare non è chiaro in cosa consista la polvere, è necessario un respiratore

Ho indovinato tutto bene posto di lavoro e dopo aver fatto uguali due pezzi di plastica, si procede a praticare con un coltello e una matita un foro per il connettore di alimentazione.
Abbastanza scarabocchiato a matita parte superiore connettore di alimentazione e fissaggio nel posto giusto sulla plastica: otteniamo uno stencil approssimativo per il taglio.
Dopo aver ritagliato, applichiamo entrambe le plastiche al circuito, inserendo preventivamente il connettore di alimentazione. Successivamente, osserviamo come la vite di fissaggio principale passa attraverso l'intera struttura, tracciamo prima il foro su un lato e, dopo averlo inserito nel foro già praticato, tracciamo e realizziamo il secondo foro.
Quindi, prendi il secondo piatto, dove sarà il dado. Infiliamo e stringiamo la vite con il dado su di essa. Quindi, con un piccolo sforzo, usando un saldatore caldo, premiamo il dado nella plastica finché non smette di sporgere. Raffreddare e svitare la vite.
Prendiamo entrambi i coperchi della nostra scatola e dall'interno realizziamo piccole cinghie di circa un millimetro per millimetro, lì verranno inserite delle nervature di irrigidimento, che sono anche spine decorative che coprono i bordi del circuito di alimentazione.
In generale, quasi tutto è pronto, resta solo da realizzare i supporti per la lampada stessa.

Per fare questo, prendiamo la stessa plastica bianca e ritagliamo due piccoli rettangoli, facciamo dei fori con i trapani, prima piccoli, poi più grandi, ma i fori non dovrebbero essere esattamente al centro. quindi i supporti non permetteranno alla lampada di girare, devono essere realizzati con un leggero spostamento verso il basso. Successivamente, giriamo con le viti e incolliamo il nastro biadesivo sulla base esterna dei piani di montaggio risultanti.

Inseriamo il connettore della lampada nel suo circuito di alimentazione e il circuito nella nostra scatola fatta da noi e lo giriamo lentamente, ma non completamente.
Ora iniziamo a realizzare le pareti laterali. Per fare ciò, delineiamo il punto di taglio nella "guarnizione vuota" già preparata e ritagliamo un po 'il muro in anticipo taglia più grande. Lo mettiamo sulla scatola e vediamo come si adatta. Quando ti piacciono le dimensioni, puoi creare un secondo muro.
Dopo aver attaccato il primo muro finito come modello, regoliamo le dimensioni del secondo.
Quando tutto è pronto e tutte le sbavature sono state rimosse, si procede al montaggio.
Prendiamo il circuito di alimentazione, tagliamo il connettore per connessione esterna alimentazione e saldare il nostro connettore per l'alimentazione ad esso. Rimontiamo l'intera scatola, avendo preventivamente isolato tutti i contatti scoperti e pulito ogni traccia di confusione. Giriamo e, alla fine, inseriamo rinforzi, dopodiché giriamo in uno stato tale che la scatola non si sfaldi. Se non tutto tiene bene, puoi incollare le nervature di irrigidimento lungo i bordi con una supercolla aggiuntiva in modo che non si sfaldi, né da una caduta, né dalle mani.


Non tutto è andato bene per me, ovvero: la vite era fuori dal coperchio, quindi doveva essere tagliata.

Quindi, sul lato del dado, incolliamo quattro piccoli pezzi di nastro biadesivo, in modo che in seguito possa essere rimosso rapidamente e facilmente. Inoltre non ho trovato un pulsante di commutazione, sarà saldato al cavo bp. dopo.

Se qualcuno non vuole scherzare in questo modo (dovevo solo capire il lavoro di Dremel con materiali diversi), può trovare qualsiasi scatola adatta e sistemarvi lo schema.

Chi volesse avere una retroilluminazione nella custodia, posso consigliarvi di collegarvi a qualsiasi linea 12v con la giusta resistenza.

Puoi anche provare a usare la lampada senza il suo riflettore (inoltre, non è proprio un riflettore, ma piuttosto un assorbitore, perché non è speculare, ma bianco-nero). Ma per questo devi essere estremamente attento alle estremità della lampada, poiché i fili saldati nel vetro sono abbastanza spessi e possono essere rotti, oppure il vetro potrebbe rompersi in questi punti. Ci sono supporti speciali gommati sui bordi della lampada, consiglierei di dotarli di alcuni dei miei dispositivi di fissaggio. La lampada ha funzionato per circa 40 minuti con il mio b.p. praticamente non si è riscaldato, né il riflettore, né gli elastici ai lati di esso. Se la tensione fornita alla lampada è superiore a 9 V, è molto probabile che la lampada si surriscaldi e potrebbe guastarsi. Se decidi di usarlo senza riflettore, anche se illuminerà tutto intorno, brillerà anche negli occhi, che in qualche modo non mi sembravano abbastanza.

Voglio anche avvisarti del trasformatore nel circuito di alimentazione della lampada. Non so che corrente emetta e cosa sia, ma se avvicini un dito o un'altra parte del corpo ai suoi contatti, si verifica un arco elettrico che, ad esempio, ha bruciato un motivo sul mio dito. In questo caso, la distanza dai contatti può arrivare fino a due millimetri.
La corrente, ovviamente, non ucciderà, ma puoi ottenere una piccola bruciatura.

Quindi ecco la versione finita..

Come utilizzare il vecchio scanner insieme a un server Debian per eseguire la scansione con un clic di un pulsante e anche con l'ordinamento automatico.
Perché è necessario?
Questo è adatto a chi non è soddisfatto dei mucchi di carta sul posto di lavoro. Per esempio:
  • Scolari e studenti, coloro che hanno un argomento rilevante di pile di dispense accumulate a scuola, all'università o all'università.
  • Impiegati in ufficio che hanno un gran numero di carte e lettere uguali
  • Persone comuni - per scansionare tutte le lettere, le fatture e gli assegni in arrivo (come sai, gli assegni tendono a svanire, questo è esattamente il mio problema - dovrai scansionare un gran numero di assegni e questo non è molto conveniente)
Come lo immagino?
Sì, molto semplice. Ho messo la carta nello scanner, ho premuto il pulsante, ho aspettato segnale sonoro verso la fine della scansione e dell'elaborazione, ha estratto un pezzo di carta, se necessario - GOTO 10.
E cosa ho ottenuto?
Un sistema funzionante ininterrottamente che consente anche la scansione batch e l'ordinamento automatico in cartelle, la registrazione e altri problemi: quello che scrivi nello script sarà.

Mi hanno dato uno scanner Epson Perfection 1200U. Un semplice scanner collegato tramite USB è piuttosto vecchio, ma con buona risoluzione. Volevo collegarlo al mio computer - e poi un'imboscata, è progettato per 110 volt. Ok, dopo ho tirato fuori il trasformatore, l'ho collegato. Funziona, ma solo con Windows XP: non ci sono driver per Windows 7 e non sono previsti. Al lavoro Computer Windows 7 x64 - ed eccomi qui, come un pazzo, a eseguire una macchina virtuale ogni volta che avevo bisogno di scansionare qualcosa e non c'erano altri scanner nelle vicinanze.
*Un luogo per amari rimpianti per produttori senza scrupoli*

Col passare del tempo, il computer funzionante è cambiato per volere di una tazza di tè negligente, madre per la gamba. Decisi nuovo computer metti Debian, perché è più familiare. E poi di nuovo è arrivato il momento in cui è stato necessario scansionare qualcosa, e con urgenza. Collego lo scanner e funziona, anche se una sorta di tensione con i profili ICM. A quanto pare, qualcuno era avido di donarli per l'open source, oppure mi bastava trovarli e installarli - non capivo, ero troppo assonnato. Ancora più importante, è diventato possibile scansionare comodamente qualsiasi cosa. Aspetta, cosa succede se ti connetti a un server senza una GUI ed esegui scanimage? Mah, funziona. Classe!

Quindi, c'è un pulsante sulla custodia dello scanner. Non ha mai saputo usare Windows, zero emozioni. Anche qui, però, anche. Una ricerca su Google ha trovato due progetti, scanbuttond e scanbd. Il primo è vecchio, l'ultimo commit risale al 2006, ma è stato subito trovato nei repository. Ho deciso di lasciare il secondo per dopo, il motivo è semplice: durante la compilazione sono emersi costantemente alcuni problemi di vario tipo e, sebbene ognuno di essi sia stato risolto in un paio di righe nella console, c'erano molti loro, quindi ho segnato, e volevo dormire. Userò scanbuttond, ma se è rilevante, penso che tutti gli script non siano un problema per finire leggermente sotto scanbd. La domanda, ovviamente, è come non sia un problema ... Ma per ora - scanbuttond.

Iniziare con scanbuttond
Installo scanbuttond dai repository, eseguo scanbuttond, guardo in /var/log/daemon.log, premo il pulsante, sleepbuttond notifica felicemente che il pulsante viene premuto e quindi rilasciato. Freddo!
E poi cosa? Inoltre tutto è semplice. Prima di tutto, modifica /etc/default/scanbuttond e abilita l'avvio del demone con il sistema, quindi avvialo con il comando service scanbuttond start. Quali script verranno chiamati?
Il primo è initscanner.sh.example (rinominiamoci cittadini, sentiti libero di rimuovere this.example), viene chiamato ogni volta che uno scanner è connesso e fondamentalmente (per quanto ne so) è un'interfaccia per connettere vari stampelle, bene e talvolta - notifiche e registrazione.
Il secondo script è più interessante, viene già chiamato direttamente quando si preme il pulsante. Si chiama buttonpressed.sh.example e l'ultima parte del nome è di nuovo ridondante qui. Questo script viene chiamato ogni volta che si fa clic sul pulsante. È in esso che devi inserire tutti questi diversi comandi di scansione e così via.
Bene, ho creato due script per elaborare il clic del pulsante. Il primo è in BASH. Quando viene premuto un pulsante, scanbuttond passa il controllo a questo script, specificando il numero del pulsante e il nome dello scanner come $1 e $2. C'è solo uno scanner, un pulsante: posso ignorare gli argomenti (voglio ancora dormire), ma me lo sono ricordato per dopo. Il primo script - buttonpressed.sh - chiama scanimage con anticipo parametri dati, trasferisce l'immagine TIFF finita in una cartella nella directory home, converte il tiff in jpg e quindi chiama il secondo script. Il secondo script Python sceglie un nome per l'immagine in base ai nomi presi.

Primo script: buttonpressed.sh

#!/bin/sh #La maggior parte dello script è stata rubata impudentemente a qualcuno #Tuttavia, sul tamburo, # nome del demone DAEMON=scanbuttond # crea in modo sicuro un file temporaneo per evitare attacchi race condition e dormire un po' TMPFILE=`mktemp / tmp/$DAEMON.XXXXXX` # file di blocco LOCKFILE="/tmp/$DAEMON.lock" # destinazione del file di immagine finale (modifica in base alla tua configurazione) DESTFOLDER="/home/user/Scans/" DESTINATION=$ DESFOLDER "image.tiff" # rimuove il file temporaneo su abort trap "rm -f $TMPFILE" 0 1 15 # funzione: crea file di blocco con il PID di scanbuttond mk_lock() ( pidof $DAEMON > $LOCKFILE ) # funzione: rimuove temporaneo e file di blocco clean_up () ( test -e $LOCKFILE && rm -f $LOCKFILE rm -f $TMPFILE ) # funzione: controlla se il file di blocco esiste e stampa un messaggio di errore usando il logger chk_lock() ( if [ -e $LOCKFILE ] ; quindi #Un'altra operazione di scansione in corso logger "scanbuttond: tentativo di avviare l'operazione di scansione mentre un'altra è in corso" exit 1 fi ) # funzione: il comando di scansione effettivo (modifica in modo che corrisponda al tuo sleep) scan() ( I #parametri per la scansione sono selezionati da me per il mio scanner digitando per scansionare meglio i documenti in bianco e nero scanimage --format=tiff --resolution 300 --mode Grey --gamma-correction "Alto contrasto stampa " > $DESTINAZIONE convert $DESTINAZIONE $DESTFOLDER"image.jpg" logger "Nome file: " `python /etc/scanbuttond/convert_scan.py` rm $DESTINAZIONE ) chk_lock mk_lock scan clean_up


Il secondo script è convert_scan.py

import os filename = "image.jpg" directory = "/home/user/Scans" os.chdir(directory) try: filenames = eccetto KeyError: filenames = counter = 1 new_filename = "scan_000.jpg" while new_filename in filenames: new_filename = "scan_"+str(counter).zfill(3)+".jpg" counter += 1 print new_filename os.rename(filename, new_filename)


Per usarlo, cambiamo la variabile DESTFOLDER nel primo script e la directory nel secondo.
Ha iniziato a eseguire tutto. L'avvio manuale del primo script si completa con il botto. Ma se il pulsante - allora i fichi con l'olio. Non mi sono reso subito conto con la mia testa assonnata che era una questione di permessi, a quanto pare il fatto è che l'output degli script non veniva mostrato da nessuna parte, e ho immaginato di eseguire scanbuttond in primo piano e vedere l'output solo di 5 la mattina. In breve, il problema è che in modalità demone, tutti gli script vengono eseguiti come utente sanificato, proprio come il demone stesso, in generale. Quali passi devono essere presi?
Supponiamo che scanbuttond venga eseguito mentre l'utente ha sanificato, che la cartella per la memorizzazione delle foto sia /home/user/Scans e che l'utente debba, tra le altre cose, avere accesso alla cartella.
usermod -aG saned user #aggiungi utente a un gruppo esistente saned chown -R user:saned /home/user/Scans #Assegna il proprietario della cartella al saned group chmod -R 770 /home/user/Scans# Imposta il necessario autorizzazioni sulla cartella
Il risultato: lo scanner funziona sul pulsante, inserisce tutte le foto nella home directory, ma ciò che doveva essere scansionato non è stato scansionato. Insomma, come sempre, invece di risolvere il problema, ho scritto uno strumento di soluzione automatica. Come sempre, voglio dormire.
Ma vuoi qualcosa di più!

Vale a dire:
Ordinamento automatico delle scansioni per directory. Come lo immagino?

>pybssort elenco predefinito /home/utente/Scansioni/ >pybssort aggiungi matematica Math >pybssort elenco predefinito /home/utente/Scansioni/math /home/utente/Scansioni/Matematica/ >pybssort set math La directory di scansione predefinita è ora /home/utente /Scans/Math/ >pybssort dir /home/user/scans/Math/ >pybssort add phys Physics La directory di scansione predefinita è ora /home/user/Scans/Physics/ >pybssort set phys La directory di scansione predefinita è ora /home/user/ Scansioni/Fisica/ >directory pybssort /home/utente/Scansioni/Fisica/ >elenco pybssort predefinito /home/utente/Scansioni/math /home/utente/Scansioni/Matematica/ fisico /home/utente/Scansioni/Fisica/ >pybssort sleep OK, ti lascio dormire... No, aspetta, finisci il tuo articolo! >pybssort della matematica OK >pybssort elenco predefinito /home/utente/Scansioni/ fisico /home/utente/Scansioni/Fisica/

I comandi list, add, del, set servono per cambiare la cartella di scansione. Il comando dir serve per visualizzare una cartella, usata direttamente negli script.

Qual e il punto?
In qualsiasi momento è possibile modificare la cartella per la scansione con un solo comando nella console. Inoltre, qualsiasi utente può farlo: se ciò non è desiderabile, devi solo modificare i permessi sulla cartella del database. Puoi creare contesti, visualizzarli e tutto con un comando.
  • Per prima cosa, abbiamo ordinato le carte in pile sul pavimento per argomento, prendiamo archivi con registrazioni di fisica.
  • Nella console digitiamo pybssort add phys Physics.
  • Mettiamo un pezzo di carta, premiamo il pulsante, aspettiamo la fine della scansione, buttiamo via il pezzo di carta scansionato e mettiamo quello successivo.
  • Tutte le scansioni si trovano nella cartella /home/user/Scans/Physics.
  • Arriviamo ai record matematici, digitiamo pybssort add math Math, scan ulteriore - e tutte le scansioni successive in /home/user/Scans/Math.
  • Abbiamo trovato un altro volantino con un record sulla fisica, scriviamo pybssort set phys - e di nuovo tutto vola su /home/user/Scans/Physics.

Hmm, come chiamare tutte queste impostazioni predefinite, fisica, matematica? Ho deciso di chiamarli contesti, perché la scansione lavoro di controllo in algebra, ha senso solo in una cartella chiamata Math, gli articoli sul sonno sano sono meglio dormire nel contesto della cartella Sleep e così via.

Cosa è successo alla fine?

Un semplice programma Python. La linea di fondo è che tutti i contesti sono archiviati database SQLite, vengono prelevati da lì se necessario dal programma. Attivo in questo momento il contesto è generalmente archiviato in un file separato in testo normale, è stato in qualche modo stupido, secondo me, creare una tabella con una colonna e scherzare con essa. C'è insieme di base funzioni per lavorare con questi contesti, una funzione per iniziare il lavoro da zero (crea una tabella e cartelle), puoi derubare le mucche ... puoi finalmente dormire ... prendo le funzioni per lavorare con il database dal web.py framework, su cui sviluppo i miei piccoli progetti.
Perché non utilizzare il modulo sleeplite3 integrato in sqlite3? Perché sto prendendo un intero framework web solo per prendere solo web.database da esso? La risposta è semplice: è una pigrizia banale. Sto scrivendo un programma incentrato sull'essenziale e non voglio approfondire le query SQLite e scrivere inserimenti nei valori dei contesti (nome, cartella); concatenazione, voglio db.insert("contexts", name=name, folder=folder) e dormire. Sì, ecco perché il mio programma richiede python-webpy, se qualcuno può suggerire qualcosa di così facile da usare (sto parlando di lavorare con i database), gli sarò grato.

Cosa è necessario fare per installare?
wget https://gist.github.com/CRImier/7330722/raw/pybssort.py #Cambia la directory iniziale per la scansione di nano pybssort.py chmod +x pybssort.py mv pybssort.py /usr/local/bin/pybssort

Prendo atto: deve essere eseguito come root la prima volta, poiché ciò è necessario per creare cartelle in /var/lib per archiviare lì il database. Dopo il primo avvio, il root non è richiesto. Puoi modificare il percorso della cartella all'inizio dello script, ma fai attenzione ai permessi: un povero sano di mente piangerà lacrime amare per non essere in grado di accedere alla tua cartella. Non vuoi sconvolgerlo, vero?

E come collegarlo con script già esistenti? Sì, solo nel primo script è necessario inserire "pybssort dir" invece dell'hardcoded DESTINATION e passare la stessa variabile come argomento della riga di comando al secondo script.
Qualcosa come questo:

Primo copione

... # destinazione del file immagine finale (modifica in base alla tua configurazione) DESTFOLDER=`pybssort dir` DESTINATION=$DESTFOLDER"image.tiff" ... # funzione: il comando di scansione effettivo (modifica in base alla tua configurazione) scan () ( scanimage --format=tiff --resolution 300 --mode Gray --gamma-correction "Stampa ad alto contrasto" > $DESTINATION convert $DESTINATION $DESFOLDER"image.jpg" logger "Filename: " `python /etc/ scanbuttond/convert_scan.py $DESTFOLDER` rm $DESTINATION ) ...


Secondo copione

import os import sys #necessario per ottenere l'argomento... directory = sys.argv

Per eseguire il debug dei tuoi script, ti consiglio di eseguire la seguente sequenza di comandi nell'ambiente di lavoro: service scanbuttond stop sudo -u saned scanbuttond -f & tail -f /var/log/messages & tail -f /var/log/ demone.log &
E usa negli script echo, logger e print (per Python).

Le critiche su tutti e tre gli script, l'esecuzione, la bellezza del codice, il rientro, l'ortografia, la progettazione degli argomenti, le cattive pratiche nel codice e nella logica, la pertinenza della soluzione, le possibili aggiunte, l'adeguatezza dell'autore e altre cose sono benvenute.

Dopo qualche tempo, questo script BASH mi ha messo nell'ordine: non potevo in alcun modo entrare nella normale gestione degli errori. Sputa, riscrivi lo script in Python. Funziona ancora meglio alla fine. Tra i vantaggi: gestione degli errori + registri normali, avvisi audio e una sorta di bel codice =) Disponibile Il readme contiene informazioni sull'installazione. Tutto funziona senza intoppi per me ... Bene, se qualcosa non funziona, per favore fatemelo sapere =)

LA CAMPANA

C'è chi ha letto questa notizia prima di te.
Iscriviti per ricevere gli ultimi articoli.
E-mail
Nome
Cognome
Come vorresti leggere La campana
Niente spam