传统的扫描仪都是需要通过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
代码示例
- 在Dynamic Web TWAIN中获取Resources资源目录。
- 创建工程目录。把Resources资源拷贝到工程根目录中,并创建一个index.html页面。
- 设置树莓派的IP地址。这里是我的:
var remoteIP = "192.168.8.51";
- 禁用AutoLoad属性:
Dynamsoft.WebTwainEnv.AutoLoad = false;
- 设置序列号。可以联系support@dynamsoft.com获取试用序列号。源码中已经包含试用序列号:
Dynamsoft.WebTwainEnv.ProductKey = "";
- 创建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); }); };
- 获取图像:
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); } }
- 把扫描仪连接到树莓派上。打开index.html就可以通过手机,平板或者PC远程扫描了。
视频
https://v.qq.com/x/page/r0341rlc3et.html
源码
https://github.com/dynamsoftlabs/raspberrypi-document-scanning
来源:oschina
链接:https://my.oschina.net/u/1187419/blog/787988