文档章节

树莓派应用:无线扫描仪

yushulx
 yushulx
发布于 2016/11/15 11:13
字数 579
阅读 430
收藏 3

传统的扫描仪都是需要通过USB连接到PC上使用的。如果多人共用扫描仪,比如办公室里,需要经常插拔,更换PC,安装驱动,非常麻烦。现在搭载Android系统的智能扫描仪已经出现了,用户可以很方便的通过网络无线扫描。那么有什么办法让旧的扫描仪也智能化?使用35刀的树莓派可以提供一种廉价的解决方案 - 把扫描仪连接到树莓派上,通过树莓派控制扫描仪,并通过网络传输数据。这样就不需要花很多钱去购买新的扫描仪了。

测试环境

  • 设备: Raspberry Pi 2
  • 系统: RASPBIAN JESSIE 

传统扫描仪智能化解决方案

这是一套使用Dynamic Web TWAIN树莓派版本的解决方案。

优点

  • 扫描仪不需要通过USB接口连接到PC。
  • 在浏览器中操作扫描仪,不需要安装任何插件。
  • 树莓派即插即用。自动建立扫描以及网络连接服务。

无线扫描仪

安装删除服务

下载安装包

安装:

sudo dpkg -i dynamic_web_twain-arm-trial.deb

删除:

sudo dpkg -r dynamsoft-webtwain-service

代码示例

  1. Dynamic Web TWAIN中获取Resources资源目录。
  2. 创建工程目录。把Resources资源拷贝到工程根目录中,并创建一个index.html页面。
  3. 设置树莓派的IP地址。这里是我的:
    var remoteIP = "192.168.8.51";
  4. 禁用AutoLoad属性:
    Dynamsoft.WebTwainEnv.AutoLoad = false;
  5. 设置序列号。可以联系support@dynamsoft.com获取试用序列号。源码中已经包含试用序列号:
    Dynamsoft.WebTwainEnv.ProductKey = "";
  6. 创建Dynamic Web TWAIN对象:
    var HTTP_PORT = 18618;
            var HTTPS_PORT = 18619;
            window.onload = function() {
                Dynamsoft.WebTwainEnv.CreateDWTObject('dwtObjectContainer', remoteIP, HTTP_PORT, HTTPS_PORT, function(obj) {
                    DWObject = obj;
                    DWObject.Width = 270;
                    DWObject.Height = 350;
                    console.log('DWTObject created.');
                    if (DWObject) {
                        var count = DWObject.SourceCount;
                        if (count == 0 && Dynamsoft.Lib.env.bMac) {
                            DWObject.CloseSourceManager();
                            DWObject.ImageCaptureDriverType = 0;
                            DWObject.OpenSourceManager();
                            count = DWObject.SourceCount;
                        }
                        for (var i = 0; i < count; i++)
                            document.getElementById("source").options.add(new Option(DWObject.GetSourceNameItems(i), i)); // Get Data Source names from Data Source Manager and put them in a drop-down box
                    }
                }, function(es) {
                    console.log(es);
                });
            };
  7. 获取图像:
    function AcquireImage() {
                if (DWObject) {
                    var OnAcquireImageSuccess, OnAcquireImageFailure;
                    OnAcquireImageSuccess = OnAcquireImageFailure = function() {
                        DWObject.CloseSource();
                    };
     
                    DWObject.SelectSourceByIndex(document.getElementById("source").selectedIndex); //Use method SelectSourceByIndex to avoid the 'Select Source' dialog
                    DWObject.OpenSource();
                    DWObject.IfDisableSourceAfterAcquire = true; // Scanner source will be disabled/closed automatically after the scan.
                    DWObject.AcquireImage(OnAcquireImageSuccess, OnAcquireImageFailure);
                }
            }
  8. 把扫描仪连接到树莓派上。打开index.html就可以通过手机,平板或者PC远程扫描了。

视频

https://v.qq.com/x/page/r0341rlc3et.html

 

源码

https://github.com/dynamsoftlabs/raspberrypi-document-scanning

 

© 著作权归作者所有

yushulx
粉丝 29
博文 109
码字总数 61815
作品 0
杭州
私信 提问
第1讲:树莓派购买指南【子豪兄的零基础树莓派教程】

本文介绍了树莓派主板及其外接设备的购买指南。 帮助新手用最少的钱实现全部功能并快速上手。 Bilibili视频教程 文字版、源代码、更新、勘误,请看本教程Github代码仓库: https://github.c...

子豪兄
2018/10/20
0
0
新手教程:如何 SSH 进入树莓派

在这篇树莓派文章中,你将学到如何在树莓派中启用 SSH 以及之后如何通过 SSH 进入树莓派。 在你可以用树莓派做的所有事情中,将其作为一个家庭网络的服务器是十分流行的做法。小体积与低功耗...

作者: Chinmay
05/23
0
0
搭载Wi-Fi和蓝牙的树莓派三代,仅售229软妹币

别看树莓派小,这家伙的粉丝可一点都不少,日前树莓派推出了新款的树莓派3,换装了全新的处理器,此外,它还顺应民意搭载了Wi-Fi和蓝牙,售价依然走亲民路线,仅售35美元(约合人民币229元)...

大壮旅
2016/03/01
0
0
网线直连树莓派及其利用笔记本共享上网的步骤

1.无线网络连接设置为 IP:192.168.0.58 子网掩码:255.255.255.0 默认网关:192.168.0.10(路由器地址) 本地连接属性设置为: IP:192.168.0.1(貌似要结尾是.1树莓派才能上网) 子网掩码:...

Okimbin
2014/02/14
459
0
树莓派 3B + 发布,支持 5GHz Wi-Fi 和蓝牙 4.2

树莓派在两年前发布了 Raspberry Pi 3 Model B,这是树莓派首款 64 位产品,也是首款具备集成无线连接功能的产品。至今,已经售出了超过 900 万个 Raspberry Pi 3 units(共销售了1900万 Ra...

周其
2018/03/15
10K
18

没有更多内容

加载失败,请刷新页面

加载更多

java通过ServerSocket与Socket实现通信

首先说一下ServerSocket与Socket. 1.ServerSocket ServerSocket是用来监听客户端Socket连接的类,如果没有连接会一直处于等待状态. ServetSocket有三个构造方法: (1) ServerSocket(int port);...

Blueeeeeee
今天
6
0
用 Sphinx 搭建博客时,如何自定义插件?

之前有不少同学看过我的个人博客(http://python-online.cn),也根据我写的教程完成了自己个人站点的搭建。 点此:使用 Python 30分钟 教你快速搭建一个博客 为防有的同学不清楚 Sphinx ,这...

王炳明
昨天
5
0
黑客之道-40本书籍助你快速入门黑客技术免费下载

场景 黑客是一个中文词语,皆源自英文hacker,随着灰鸽子的出现,灰鸽子成为了很多假借黑客名义控制他人电脑的黑客技术,于是出现了“骇客”与"黑客"分家。2012年电影频道节目中心出品的电影...

badaoliumang
昨天
14
0
很遗憾,没有一篇文章能讲清楚线程的生命周期!

(手机横屏看源码更方便) 注:java源码分析部分如无特殊说明均基于 java8 版本。 简介 大家都知道线程是有生命周期,但是彤哥可以认真负责地告诉你网上几乎没有一篇文章讲得是完全正确的。 ...

彤哥读源码
昨天
15
0
jquery--DOM操作基础

本文转载于:专业的前端网站➭jquery--DOM操作基础 元素的访问 元素属性操作 获取:attr(name);$("#my").attr("src"); 设置:attr(name,value);$("#myImg").attr("src","images/1.jpg"); ......

前端老手
昨天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部