树莓派应用:无线扫描仪

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

测试环境

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

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

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

优势

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

无线扫描仪

安装删除服务

下载安装包java

安装:git

sudo dpkg -i dynamic_web_twain-arm-trial.deb

删除:github

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.htmlweb

 

源码

https://github.com/dynamsoftlabs/raspberrypi-document-scanning浏览器

相关文章
相关标签/搜索