树莓派应用:无线扫描仪

传统的扫描仪都是需要通过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

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值